summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/beamer
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/beamer
Initial commit
Diffstat (limited to 'macros/latex/contrib/beamer')
-rw-r--r--macros/latex/contrib/beamer/AUTHORS.md37
-rw-r--r--macros/latex/contrib/beamer/CHANGELOG.md79
-rw-r--r--macros/latex/contrib/beamer/LICENSE.md36
-rw-r--r--macros/latex/contrib/beamer/README.md23
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps620
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdfbin0 -> 2958 bytes
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonarticle.eps734
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonarticle.pdfbin0 -> 2936 bytes
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonarticle.tex115
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonbook.20.eps537
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonbook.20.pdfbin0 -> 2734 bytes
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonbook.eps512
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonbook.pdfbin0 -> 2667 bytes
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericonbook.tex106
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericononline.20.eps545
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericononline.20.pdfbin0 -> 24451 bytes
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericononline.eps800
-rw-r--r--macros/latex/contrib/beamer/base/art/beamericononline.pdfbin0 -> 24611 bytes
-rw-r--r--macros/latex/contrib/beamer/base/beamer.cls369
-rw-r--r--macros/latex/contrib/beamer/base/beamerarticle.sty43
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasearticle.sty97
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty835
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseboxes.sty248
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasecolor.sty409
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasecompatibility.sty546
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasedecode.sty300
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasefont.sty335
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseframe.sty809
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty385
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseframesize.sty273
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty567
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasemisc.sty246
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasemodes.sty251
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasenavigation.sty900
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasenotes.sty223
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseoptions.sty57
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseoverlay.sty854
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaserequires.sty73
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasesection.sty398
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasetemplates.sty130
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasethemes.sty41
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasetheorems.sty154
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasetitle.sty285
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasetoc.sty219
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasetranslator.sty24
-rw-r--r--macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty59
-rw-r--r--macros/latex/contrib/beamer/base/beamerbaseverbatim.sty167
-rw-r--r--macros/latex/contrib/beamer/base/emulation/beamerfoils.sty59
-rw-r--r--macros/latex/contrib/beamer/base/emulation/beamerprosper.sty174
-rw-r--r--macros/latex/contrib/beamer/base/emulation/beamerseminar.sty79
-rw-r--r--macros/latex/contrib/beamer/base/emulation/beamertexpower.sty33
-rw-r--r--macros/latex/contrib/beamer/base/multimedia/multimedia.sty323
-rw-r--r--macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty40
-rw-r--r--macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty177
-rw-r--r--macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty87
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty55
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty37
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty47
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty43
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty183
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty31
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty57
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty43
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty22
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty65
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty21
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty21
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty59
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty30
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty23
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty38
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty30
-rw-r--r--macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty35
-rw-r--r--macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty127
-rw-r--r--macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty12
-rw-r--r--macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty31
-rw-r--r--macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty29
-rw-r--r--macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty29
-rw-r--r--macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty30
-rw-r--r--macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty17
-rw-r--r--macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty450
-rw-r--r--macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty129
-rw-r--r--macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty16
-rw-r--r--macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty25
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty237
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty56
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty123
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty83
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty176
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty117
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty95
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty78
-rw-r--r--macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty61
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty19
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty19
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty31
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty23
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty38
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty19
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty21
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty21
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty21
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty31
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty34
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty23
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty21
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty26
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty18
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty39
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty16
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty29
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty17
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty24
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty41
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty20
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty118
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty18
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty19
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty19
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty30
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty64
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty19
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty23
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty51
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty18
-rw-r--r--macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty22
-rw-r--r--macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex63
-rw-r--r--macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdfbin0 -> 148813 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdfbin0 -> 353423 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdfbin0 -> 324225 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex21
-rw-r--r--macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex29
-rw-r--r--macros/latex/contrib/beamer/doc/beamerlogo.pdfbin0 -> 2089 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex21
-rw-r--r--macros/latex/contrib/beamer/doc/beamerthemeexample.tex21
-rw-r--r--macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex53
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-animations.tex518
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-color.tex548
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-compatibility.tex242
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-elements.tex489
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-emulation.tex721
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-fonts.tex251
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-frames.tex1191
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex747
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-graphics.tex110
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-guidelines.tex423
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-installation.tex134
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-interaction.tex333
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-introduction.tex170
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-license.tex345
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-localstructure.tex1167
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-macros.tex342
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex399
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-notes.tex215
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-overlays.tex778
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-solutions.tex64
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-themes.tex341
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-transparencies.tex66
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-tricks.tex195
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-tutorial.tex404
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex118
-rw-r--r--macros/latex/contrib/beamer/doc/beamerug-workflow.tex225
-rw-r--r--macros/latex/contrib/beamer/doc/beameruserguide.pdfbin0 -> 1601872 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/beameruserguide.tex213
-rw-r--r--macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex53
-rw-r--r--macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex80
-rw-r--r--macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex331
-rw-r--r--macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex271
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex744
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex13
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex587
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdfbin0 -> 32823 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpgbin0 -> 36833 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpgbin0 -> 4290 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpgbin0 -> 40020 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpgbin0 -> 27790 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpgbin0 -> 49011 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpgbin0 -> 27779 bytes
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex14
-rw-r--r--macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex233
-rw-r--r--macros/latex/contrib/beamer/doc/licenses/fdl.txt451
-rw-r--r--macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt339
-rw-r--r--macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt416
-rw-r--r--macros/latex/contrib/beamer/doc/licenses/manifest-code.txt163
-rw-r--r--macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt92
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex293
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex285
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex297
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex226
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex216
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex221
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex106
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex102
-rw-r--r--macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex102
200 files changed, 34838 insertions, 0 deletions
diff --git a/macros/latex/contrib/beamer/AUTHORS.md b/macros/latex/contrib/beamer/AUTHORS.md
new file mode 100644
index 0000000000..25368a8c61
--- /dev/null
+++ b/macros/latex/contrib/beamer/AUTHORS.md
@@ -0,0 +1,37 @@
+# Main development
+
+## Current
+
+- Louis Stuart <louisstuart96@gmail.com>
+- Joseph Wright <joseph.wright@morningstar2.co.uk>
+
+## Former
+
+- Till Tantau <tantau@users.sourceforge.net>
+- Vedran Mileti\'c <vmiletic@inf.uniri.hr>
+
+# Patch contributions
+
+- Daniel Arteaga <http://bitbucket.org/darteaga> (documentation fixes)
+- Tim Bell <bhat@users.sourceforge.net> (documentation fixes)
+- Karl Berry <karl@freefriends.org> (fix for geometry 5.0)
+- Kanru Chen <koster@debian.org.tw> (fix for subfig)
+- Sergiu Dotenco <sergiu.dotenco@googlemail.com> (fix for pdfpagelabels option)
+- Nicolas Dudebout <nicolas.dudebout@gatech.edu> (customization of the note page)
+- Enrico Joerns <e.joerns@tu-bs.de> (spacing in footer)
+- Ivan Kokan <ivan.kokan@gmail.com> (spaces in captions)
+- Leo Liu <leoliu.pku@gmail.com> (colour issue in enumerate)
+- Vladimir Lomov <lomov.vl@gmail.com> (original fix for geometry 5.0)
+- Alan Munn <amunn@msu.edu> (bibliography handling)
+- Heiko Oberdiek <heiko.oberdiek@googlemail.com> (fix for hyperref (sub)section*)
+- Martin Quinson <martin.quinson@loria.fr> (add option to style subsubsection)
+- Andreas Scherer <andreas_coder@freenet.de> (documentation fixes)
+- Juergen Spitzmueller <spitzmueller@ds.uzh.ch> (diabel auto-loading amssymb)
+- Gustav Tiger <gustav@tiger.name> (typos in manual)
+
+# Theme contributors
+
+- Manuel Carro <mcarro@fi.upm.es> (Madrid theme)
+- Paul Gomme <paul-gomme@uiowa.edu> (compress option for beamerthemesplit)
+- Alan Munn <amunn@msu.edu> (EastLansing theme)
+
diff --git a/macros/latex/contrib/beamer/CHANGELOG.md b/macros/latex/contrib/beamer/CHANGELOG.md
new file mode 100644
index 0000000000..d18dfe19aa
--- /dev/null
+++ b/macros/latex/contrib/beamer/CHANGELOG.md
@@ -0,0 +1,79 @@
+# Changelog
+All notable changes to this project since v3.50 will be documented in this
+file.
+
+The format is based on [Keep a
+Changelog](https://keepachangelog.com/en/1.0.0/), version strings comprise
+a major and minor version only.
+
+## [Unreleased]
+
+## [v3.56]
+
+### Changed
+
+- Improved parser for overlays
+
+### Fixed
+
+- Add missing commands with overlay specification (see #525)
+- Replace fixed text width in `inmargin` theme (see #529)
+- Treatment of `+` and `.` overlay specifiations (see #538)
+
+## [v3.55]
+
+### Fixed
+
+- Inner behaviors for shaded ToC
+- Fix optional arguments of `\frame` in `beamerarticle` (see #509)
+- Compact glue settings for lists
+- Turn off font substitution for `unicode-math` package (see #508)
+
+## [v3.54]
+
+### Changed
+
+- Add the instructions of `proof begin` and `proof end` template
+- Patch for `paralist` package
+
+### Fixed
+
+- Wrong frame number by `noframenumbering` option (see #450)
+- Missing `nokeywords` option in the article mode
+- Vertical glues by `allowframebreak` option (see #325)
+- Typos and bad boxes in the documentation (see #491, #504 and #505)
+- Revert the addition of `\input` and `\include`
+
+## [v3.53]
+
+### Fixed
+
+- Behavior of `bg` key
+
+## [v3.52]
+
+### Fixed
+- Behaviour of `\inst` (see #489)
+- Incorrect shadows when using DVI routes (see #492)
+
+## [v3.51]
+
+### Changed
+- Add `\include` and `\input` to commands respected in 'skipping' mode
+- Dynamically calculate note page size (see #487)
+
+### Fixed
+- Properly set space in rounded boxes
+- Enable transparency in shadows (see #466)
+- Restore `\secname` in `\sectionentry`
+- Apply color correctly to page number (see #468)
+- Support for `noxcolor` with `beamerarticle` (see #483)
+- Treatment of mixed overlay/alert specifications
+
+[Unreleased]: https://github.com/josephwright/beamer/compare/v3.56...HEAD
+[v3.55]: https://github.com/josephwright/beamer/compare/v3.54...v3.55
+[v3.55]: https://github.com/josephwright/beamer/compare/v3.55...v3.56
+[v3.54]: https://github.com/josephwright/beamer/compare/v3.53...v3.54
+[v3.53]: https://github.com/josephwright/beamer/compare/v3.52...v3.53
+[v3.52]: https://github.com/josephwright/beamer/compare/v3.51...v3.52
+[v3.51]: https://github.com/josephwright/beamer/compare/v3.50...v3.51
diff --git a/macros/latex/contrib/beamer/LICENSE.md b/macros/latex/contrib/beamer/LICENSE.md
new file mode 100644
index 0000000000..aa5781dd17
--- /dev/null
+++ b/macros/latex/contrib/beamer/LICENSE.md
@@ -0,0 +1,36 @@
+Licenses for the Beamer class
+=============================
+
+Different parts of the Beamer class package are distributed under different
+licenses:
+
+1. The code of the package is dual-license. This means that you can decide which
+ license you wish to use when using the beamer package. The two options are:
+
+ 1. You can use the GNU General Public License, Version 2 or any later version
+ published by the Free Software Foundation.
+ 2. You can use the LaTeX Project Public License, version 1.3c or (at your
+ option) any later version.
+
+2. The documentation of the package is also dual-license. Again, you can choose
+ between two options:
+
+ 1. You can use the GNU Free Documentation License, Version 1.3 or any later
+ version published by the Free Software Foundation.
+ 2. You can use the LaTeX Project Public License, version 1.3c or (at your
+ option) any later version.
+
+The 'documentation of the package' refers to all files in the subdirectory
+doc of the beamer package. A detailed listing can be found in the file
+
+ doc/licenses/manifest-documentation.txt
+
+All files in other directories are part of the 'code of the package.'
+A detailed listing can be found in the file
+
+ doc/licenses/manifest-code.txt
+
+You will find the licenses in the manual and also as plain text versions in the
+directory
+
+ doc/licenses
diff --git a/macros/latex/contrib/beamer/README.md b/macros/latex/contrib/beamer/README.md
new file mode 100644
index 0000000000..29bac8c6e3
--- /dev/null
+++ b/macros/latex/contrib/beamer/README.md
@@ -0,0 +1,23 @@
+# Beamer - A LaTeX class for producing presentations
+
+## Overview
+
+The `beamer` class is focussed on producing (on-screen) presentations, along
+with support material such as handouts and speaker notes. Content is created
+in a `frame` environment, each of which can be divided up into a number of
+slides (actual output pages). A simple 'action' notation is used to specify
+which material appears on each slide within a frame. The class supports a
+range of environments to enable complex slide relationships to be constructed.
+
+The appearance of slides is controlled by a template system. Many of the
+elements of slides can be adjusted by setting simple key-based values in
+the preamble. More complex changes can be implemented by altering specific,
+targeted definitions without needing to re-write entire blocks of code. This
+allows a variety of visual appearances to be selected for the same content
+source.
+
+## License
+
+The `beamer` class is made available under the LaTeX Project Public License
+(LPPL) and the GNU Public License (GPL). See the information in
+[LICENSE](LICENSE.md) for information on licensing.
diff --git a/macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps b/macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps
new file mode 100644
index 0000000000..e75fbe61cf
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps
@@ -0,0 +1,620 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: GIMP PostScript file plugin V 1.12 by Peter Kirchgessner
+%%Title: /n/mappazza/home4/algo/tantau/texmf/tex/latex/classes/latex-beamer/beamericonarticle.20.eps
+%%CreationDate: Wed Oct 29 13:57:41 2003
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 14 14 26 29
+%%EndComments
+%%BeginProlog
+% Use own dictionary to avoid conflicts
+10 dict begin
+%%EndProlog
+%%Page: 1 1
+% Translate for offset
+14.173228 14.173228 translate
+% Translate to begin of first scanline
+0.000000 13.968000 translate
+10.944000 -13.968000 scale
+% Image geometry
+152 194 8
+% Transformation matrix
+[ 152 0 0 194 0 0 ]
+% Strings to hold RGB-samples per scanline
+/rstr 152 string def
+/gstr 152 string def
+/bstr 152 string def
+{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
+true 3
+%%BeginData: 16008 ASCII Bytes
+colorimage
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+pA_/:!8Ym!J,~>
+pA_/:!8Ym!J,~>
+pA_/:!8Ym!J,~>
+pA_,9!8Yp"J,~>
+pA_,9!8Yp"J,~>
+pA_,9!8Yp"J,~>
+pA_)8!8Ys#J,~>
+pA_)8!8Ys#J,~>
+pA_)8!8Ys#J,~>
+pA_&7!8Z!$J,~>
+pA_&7!8Z!$J,~>
+pA_&7!8Z!$J,~>
+pA_#6!8Z$%J,~>
+pA_#6!8Z$%J,~>
+pA_#6!8Z$%J,~>
+pA^u5!8Z'&J,~>
+pA^u5!8Z'&J,~>
+pA^u5!8Z'&J,~>
+pAb$6k5O<;nGN%)!8Z*'J,~>
+pAb$6k5O<;nGN%)!8Z*'J,~>
+pAb$6k5=06nFu\$!8Z*'J,~>
+pAb$6kPjE<n,2n'!8Z-(J,~>
+pAb$6kPjE<n,2n'!8Z-(J,~>
+pAb$6kPX97n+ZP"!8Z-(J,~>
+pAb$6kl0N=melb%!8Z0)J,~>
+pAb$6kl0N=melb%!8Z0)J,~>
+pAb$6kksB8me?Cu!8Z0)J,~>
+pAb$6l2KW>mJQV#!8Z3*J,~>
+pAb$6l2KW>mJQV#!8Z3*J,~>
+pAb$6l29K9mJ$7s!8Z3*J,~>
+pAb$6lMf`?m/6J!!8Z6+J,~>
+pAb$6lMf`?m/6J!!8Z6+J,~>
+pAb$6lMTT:m.^+q!8Z6+J,~>
+pAb$6li,i@lhpY(!9Et"!8Z9,J,~>
+pAb$6li,i@lhpY(!9Et"!8Z9,J,~>
+pAb$6lho];lhC;#!8dOq!8Z9,J,~>
+pAb$6m/GrAlMUP'!V#1GbQ-JOs*t~>
+pAb$6m/GrAlMUP'!V#1GbQ-JOs*t~>
+pAb$6m/5f<lM(2"!Tr87bQ-JOs*t~>
+pAb$6mJc&Bl2:G&s6p$Lq9/ipg&HR~>
+pAb$6mJc&Bl2:G&s6p$Lq9/ipg&HR~>
+pAb$6mJPo=l1b)!s5j=<q9/ipg&HR~>
+pAb$6mf)/Ckkt>%rpBdHq9/ipgAc[~>
+pAb$6mf)/Ckkt>%rpBdHq9/ipgAc[~>
+pAb$6mel#>kkFturo!k2q9/ipgAc[~>
+pAb$6n,D8DkPY5$rU'[Gq9/ipg])d~>
+pAb$6n,D8DkPY5$rU'[Gq9/ipg])d~>
+pAb$6n,2,?kP+ktrS[b1q9/ipg])d~>
+pAb$6nG_AEk5>,#r9aRFq9/iph#Dm~>
+pAb$6nG_AEk5>,#r9aRFq9/iph#Dm~>
+pAb$6nGM5@k4ebsr8@Y0q9/iph#Dm~>
+pAb$6nc%JFjo##"qs4=Bq9/iph>`!~>
+pAb$6nc%JFjo##"qs4=Bq9/iph>`!~>
+pAb$6nbh>AjnJYrqqM2'q9/iph>`!~>
+pAb$6o)@SGjS\o!qWn4Aq9/iphZ&*~>
+pAb$6o)@SGjS\o!qWn4Aq9/iphZ&*~>
+pAb$6o).GBjS/PqqV2)&q9/iphZ&*~>
+pAb$6oD[\Hj8Aeuq<S+@q9/iphuA3~>
+pAb$6oD[\Hj8Aeuq<S+@q9/iphuA3~>
+pAb$6oDIPCj7iGpq:ku%q9/iphuA3~>
+pAb$6o`!eIir&\tq!8"?q9/ipi;\<~>
+pAb$6o`!eIir&\tq!8"?q9/ipi;\<~>
+pAb$6o_dYDiqN>optPl$q9/ipi;\<~>
+pAb$6p\k0\^ZPF;pZ_b:q9/ipiW"E~>
+pAb$6p\k0\^ZPF;pZ_b:q9/ipiW"E~>
+pAb$6p\Y$Z^ZPF;pX]Dpq9/ipiW"E~>
+pAb$6p\k0\^ZPF;p?DY9q9/ipir=N~>
+pAb$6p\k0\^ZPF;p?DY9q9/ipir=N~>
+pAb$6p\Y$Z^ZPF;p=B;oq9/ipir=N~>
+pAb$6p\k0\^ZPF;p$)P8q9/ipj8XW~>
+pAb$6p\k0\^ZPF;p$)P8q9/ipj8XW~>
+pAb$6p\Y$Y^ZPF;p"'2nq9/ipj8XW~>
+pAb$6q#1<mm_@o]bk1-"i;(Rsh;nTd~>
+pAb$6q#1<mm_@o]bk1-"i;(Rsh;nTd~>
+pAb$6q"t0hmD%f\bk0BbdeV)eh;nTd~>
+pAb$6q>UEm!:IVaqonZr!9![s!8Zc:J,~>
+pAb$6q>UEm!:IVaqonZr!9![s!8Zc:J,~>
+pAb$6q>C9h!:@P`qonZ]!7L\e!8Zc:J,~>
+pAb$6qYpKm!:IVaqonWp!8mUr!8Zf;J,~>
+pAb$6qYpKm!:IVaqonWp!8mUr!8Zf;J,~>
+pAb$6qY^?h!:@P`qonWY!7:Pc!8Zf;J,~>
+pAb$6qu5OPi;ENMqonTo!8mUr!8Zi<J,~>
+pAb$6qu5OPi;ENMqonTo!8mUr!8Zi<J,~>
+pAb$6qu#CKi:m0AqonTX!7:Pc!8Zi<J,~>
+pAb$6r;PXQi;EKLiQM;Xkl6/~>
+pAb$6r;PXQi;EKLiQM;Xkl6/~>
+pAb$6r;>LLi:m-@iQM;Xkl6/~>
+pAb$6rVkaRi;EHKi622Wl2Q8~>
+pAb$6rVkaRi;EHKi622Wl2Q8~>
+pAb$6rVYUMi:m*?i622Wl2Q8~>
+pAb$6rr1jSi;EEJi622Wl2Q8~>
+pAb$6rr1jSi;EEJi622Wl2Q8~>
+pAb$6rqt^Ni:m'>i622Wl2Q8~>
+pAb$6s8LsTi;EBIi622Wl2Q8~>
+pAb$6s8LsTi;EBIi622Wl2Q8~>
+pAb$6s8:gOi:m$=i622Wl2Q8~>
+pAb$6!<1pTi;E?Hi622Wl2Q8~>
+pAb$6!<1pTi;E?Hi622Wl2Q8~>
+pAb$6!;tdOi:m!<i622Wl2Q8~>
+pAb$6i;MU3pA<dl!8Zo>J,~>
+pAb$6i;MU3pA<dl!8Zo>J,~>
+pAb$6i;2C+p@R:e!8Zo>J,~>
+pAb$6iVh^4i;<EJ!8RLr!8Zo>J,~>
+pAb$6iVh^4i;<EJ!8RLr!8Zo>J,~>
+pAb$6iVML,i:Qp:!87:o!8Zo>J,~>
+pAb$6ir.g5i;<BI!8RLr!8Zo>J,~>
+pAb$6ir.g5i;<BI!8RLr!8Zo>J,~>
+pAb$6iqhU-i:Qm9!87:o!8Zo>J,~>
+pAb$6j8Ip6i;<?H!8RLr!8Zo>J,~>
+pAb$6j8Ip6i;<?H!8RLr!8Zo>J,~>
+pAb$6j8.^.i:Qj8!87:o!8Zo>J,~>
+pAb$6jSe$7i;<<G!8RLr!8Zo>J,~>
+pAb$6jSe$7i;<<G!8RLr!8Zo>J,~>
+pAb$6jSIg/i:Qg7!87:o!8Zo>J,~>
+pAb$6jo+-8i;<9F!8RLr!8Zo>J,~>
+pAb$6jo+-8i;<9F!8RLr!8Zo>J,~>
+pAb$6jndp0i:Qd6!87:o!8Zo>J,~>
+pAb$6k5F69i;<6E!8RLr!8Zo>J,~>
+pAb$6k5F69i;<6E!8RLr!8Zo>J,~>
+pAb$6k5+$1i:Qa5!87:o!8Zo>J,~>
+pAb$6kPa?:i;<3D!8RLr!8Zo>J,~>
+pAb$6kPa?:i;<3D!8RLr!8Zo>J,~>
+pAb$6kPF-2i:Q^4!87:o!8Zo>J,~>
+pAb$6l2:VVb453&o_JRCr6,/sl2Q8~>
+pAb$6l2:VVb453&o_JRCr6,/sl2Q8~>
+pAb$6l1tDQi:$""p@S"I!87:o!8Zo>J,~>
+pAb$6l2:VPb3Sg!oD/IBr6,/sl2Q8~>
+pAb$6l2:VPb3Sg!oD/IBr6,/sl2Q8~>
+pAb$6l1tDKb3SfooC2h6r6,/sl2Q8~>
+pAb$6lMUb]n]L1mqssR`h#,@rh<Fri~>
+pAb$6lMUb]n]L1mqssR`h#,@rh<Fri~>
+pAb$6lM:PUn&jtko^_MPg&0%oh<Fri~>
+pAb$6li$k]!:e4tq>9^Y!8RLr!8Zo>J,~>
+pAb$6li$k]!:e4tq>9^Y!8RLr!8Zo>J,~>
+pAb$6lh^YU!:S(rq=O4I!87:o!8Zo>J,~>
+pAb$6m/?q]!:e4tqYTdY!8RLr!8Zo>J,~>
+pAb$6m/?q]!:e4tqYTdY!8RLr!8Zo>J,~>
+pAb$6m/$_U!:S(rqXj:I!87:o!8Zo>J,~>
+pAb$6mJ["]!:e4tqtojY!8RLr!8Zo>J,~>
+pAb$6mJ["]!:e4tqtojY!8RLr!8Zo>J,~>
+pAb$6mJ?eU!:S(rqt0@I!87:o!8Zo>J,~>
+pAb$6mf!(]!;FY+r;5pY!8RLr!8Zo>J,~>
+pAb$6mf!(]!;FY+r;5pY!8RLr!8Zo>J,~>
+pAb$6meZkU!;#@AjmN'=mdU;1r6,/sl2Q8~>
+pAb$6n,;2Bi;;p<!8RLr!8Zo>J,~>
+pAb$6n,;2Bi;;p<!8RLr!8Zo>J,~>
+pAb$6n+tu:i:QF,!87:o!8Zo>J,~>
+pAb$6nGV;Ci;;m;!8RLr!8Zo>J,~>
+pAb$6nGV;Ci;;m;!8RLr!8Zo>J,~>
+pAb$6nG;);i:QC+!87:o!8Zo>J,~>
+pAb$6nbqDDi;;j:!8RLr!8Zo>J,~>
+pAb$6nbqDDi;;j:!8RLr!8Zo>J,~>
+pAb$6nbV2<i:Q@*!87:o!8Zo>J,~>
+pAb$6o)7MEi;;g9!8RLr!8Zo>J,~>
+pAb$6o)7MEi;;g9!8RLr!8Zo>J,~>
+pAb$6o(q;=i:Q=)!87:o!8Zo>J,~>
+pAb$6oDRVFi;;d8!8RLr!8Zo>J,~>
+pAb$6oDRVFi;;d8!8RLr!8Zo>J,~>
+pAb$6oD7D>i:Q:(!87:o!8Zo>J,~>
+pAb$6o_m_Gi;;a7!8RLr!8Zo>J,~>
+pAb$6o_m_Gi;;a7!8RLr!8Zo>J,~>
+pAb$6o_RM?i:Q7'!87:o!8Zo>J,~>
+pAb$6p&3hHi;;^6!8RLr!8Zo>J,~>
+pAb$6p&3hHi;;^6!8RLr!8Zo>J,~>
+pAb$6p%mV@i:Q4&!87:o!8Zo>J,~>
+pAb$6pAOX]!;Fb.rp]1K!8RLr!8Zo>J,~>
+pAb$6pAOX]!;Fb.rp]1K!8RLr!8Zo>J,~>
+pAb$6pA4FU!;#XIi9pU3l1"c,r6,/sl2Q8~>
+pAb$6p\j^]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6p\j^]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6p\OLU!:S(rl1"c,r6,/sl2Q8~>
+pAb$6q#0d]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6q#0d]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6q"jRU!:S(rl1"c,r6,/sl2Q8~>
+pAb$6q>Kj]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6q>Kj]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6q>0XU!:S(rl1"c,r6,/sl2Q8~>
+pAb$6qYfp]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6qYfp]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6qYK^U!:S(rl1"c,r6,/sl2Q8~>
+pAb$6qu-!]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6qu-!]!:e4tl1tD8r6,/sl2Q8~>
+pAb$6qtfdU!:S(rl1"c,r6,/sl2Q8~>
+pAb$6r;H']!;Ft4q!dPE!8IFq!8Zo>J,~>
+pAb$6r;H']!;Ft4q!dPE!8IFq!8Zo>J,~>
+pAb$6r;,jU!;#jOi9pC-l1"c+r6,/sl2Q8~>
+pAb$6rVb[Pi;;I/!VkFIbQ-J`s*t~>
+pAb$6rVb[Pi;;I/!VkFIbQ-J`s*t~>
+pAb$6rVGIHi:Pst!UeV<bQ-J`s*t~>
+pAb$6rr(dQi;;I/s7cTKr6,/sl2Q8~>
+pAb$6rr(dQi;;I/s7cTKr6,/sl2Q8~>
+pAb$6rqbRIi:Psts6]m>r6,/sl2Q8~>
+pAb$6s8CmRi;;I/rqHKJr6,/sl2Q8~>
+pAb$6s8CmRi;;I/rqHKJr6,/sl2Q8~>
+pAb$6s8([Ji:PstrpBd=r6,/sl2Q8~>
+pAb$6!<(jRi;;I/rV-BIr6,/sl2Q8~>
+pAb$6!<(jRi;;I/rV-BIr6,/sl2Q8~>
+pAb$6!;bXJi:PstrU'[<r6,/sl2Q8~>
+pAb$6i;DO1i;3BH!8IFq!8Zo>J,~>
+pAb$6i;DO1i;3BH!8IFq!8Zo>J,~>
+pAb$6i:l1%i:6a5!8.4n!8Zo>J,~>
+pAb$6iV_X2i;3?G!8IFq!8Zo>J,~>
+pAb$6iV_X2i;3?G!8IFq!8Zo>J,~>
+pAb$6iV2:&i:6^4!8.4n!8Zo>J,~>
+pAb$6ir%a3i;3<F!8IFq!8Zo>J,~>
+pAb$6ir%a3i;3<F!8IFq!8Zo>J,~>
+pAb$6iqMC'i:6[3!8.4n!8Zo>J,~>
+pAb$6j8@j4i;39E!8IFq!8Zo>J,~>
+pAb$6j8@j4i;39E!8IFq!8Zo>J,~>
+pAb$6j7hL(i:6X2!8.4n!8Zo>J,~>
+pAb$6jS[s5i;36D!8IFq!8Zo>J,~>
+pAb$6jS[s5i;36D!8IFq!8Zo>J,~>
+pAb$6jS.U)i:6U1!8.4n!8Zo>J,~>
+pAb$6jo"'6i;33C!8IFq!8Zo>J,~>
+pAb$6jo"'6i;33C!8IFq!8Zo>J,~>
+pAb$6jnI^*i:6R0!8.4n!8Zo>J,~>
+pAb$6k5=07i;30B!8IFq!8Zo>J,~>
+pAb$6k5=07i;30B!8IFq!8Zo>J,~>
+pAb$6k4dg+i:6O/!8.4n!8Zo>J,~>
+pAb$6kPX98i;3-A!8IFq!8Zo>J,~>
+pAb$6kPX98i;3-A!8IFq!8Zo>J,~>
+pAb$6kP*p,i:6L.!8.4n!8Zo>J,~>
+pAb$6kksB9i;3*@!8IFq!8Zo>J,~>
+pAb$6kksB9i;3*@!8IFq!8Zo>J,~>
+pAb$6kkF$-i:6I-!8.4n!8Zo>J,~>
+pAb$6l29K:s8(U-p\4aCr6,/sl2Q8~>
+pAb$6l29K:s8(U*p\4aCr6,/sl2Q8~>
+pAb$6l1a-.s7+t8p[/%6r6,/sl2Q8~>
+pAb$6p\Y$`hs^X<p\XsdhV@l#!8IFq!8Zo>J,~>
+pAb$6p\Y$`hs^X<p\XsdhV%Yu!8IFq!8Zo>J,~>
+pAb$6p\+[Zhs^X:p[nIThXL:-!8.4n!8Zo>J,~>
+pAb$6p\Y$`hs^X<q"t$dhV@l#!8IFq!8Zo>J,~>
+pAb$6p\Y$`hs^X<q"t$dhV%Yu!8IFq!8Zo>J,~>
+pAb$6p\+[Zhs^X:q"4OThXL:-!8.4n!8Zo>J,~>
+pAb$6p\Y$`hs^X<q>:*dhV@l#!8IFq!8Zo>J,~>
+pAb$6p\Y$`hs^X<q>:*dhV%Yu!8IFq!8Zo>J,~>
+pAb$6p\+[Zhs^X:q=OUThXL:-!8.4n!8Zo>J,~>
+pAb$6p\Y$`hs^X<qYU0dhV\)&!8IFq!8Zo>J,~>
+pAb$6p\Y$`hs^X<qYU0dhV%Yu!8IFq!8Zo>J,~>
+pAb$6p\+[Zhs^X:qXj[ThX1(*!8.4n!8Zo>J,~>
+pAb$6p\Y$`hs^X<qtp6dhV\)&!8IFq!8Zo>J,~>
+pAb$6p\Y$`hs^X<qtp6dhV%Yu!8IFq!8Zo>J,~>
+pAb$6p\+[Zhs^X:qt0aThX1(*!8.4n!8Zo>J,~>
+pAb$6p\Y$`hs^X<r;6<dhV\)&!8IFq!8Zo>J,~>
+pAb$6p\Y$`hs^X<r;6<dhV%Yu!8IFq!8Zo>J,~>
+pAb$6p\+[Zhs^X:r:KgThX1(*!8.4n!8Zo>J,~>
+pAb$6nGM5Aq"ik,p\4aCr6,/sl2Q8~>
+pAb$6nGM5Aq"ik#p\4aCr6,/sl2Q8~>
+pAb$6nFtl5q!m5+p[/%6r6,/sl2Q8~>
+pAb$6nbh>Bp\Nb+p\4aCr6,/sl2Q8~>
+pAb$6nbh>Bp\Nb"p\4aCr6,/sl2Q8~>
+pAb$6nb:u6p[R,*p[/%6r6,/sl2Q8~>
+pAb$6o).GCpA3Y*p\4aCr6,/sl2Q8~>
+pAb$6o).GCpA3Y!p\4aCr6,/sl2Q8~>
+pAb$6o(V)7p@7#)p[/%6r6,/sl2Q8~>
+pAb$6oDIPDp%mP+p\4aCr6,/sl2Q8~>
+pAb$6oDIPDp%mOup\4aCr6,/sl2Q8~>
+pAb$6oCq28p$po&p[/%6r6,/sl2Q8~>
+pAb$6o_dYEo_RG*p\4aCr6,/sl2Q8~>
+pAb$6o_dYEo_RFtp\4aCr6,/sl2Q8~>
+pAb$6o_7;9o^Uf%p[/%6r6,/sl2Q8~>
+pAb$6p&*bFoD7>)p\4aCr6,/sl2Q8~>
+pAb$6p&*bFoD7=sp\4aCr6,/sl2Q8~>
+pAb$6p%RD:oC:]$p[/%6r6,/sl2Q8~>
+pAb$6pAEkGo(q5+p\4aCr6,/sl2Q8~>
+pAb$6pAEkGo(q4rp\4aCr6,/sl2Q8~>
+pAb$6p@mM;o'tSup[/%6r6,/sl2Q8~>
+pAb$6p\`tHnbV,*p\4aCr6,/sl2Q8~>
+pAb$6p\`tHnbV+qp\4aCr6,/sl2Q8~>
+pAb$6p\3V<naYJtp[/%6r6,/sl2Q8~>
+pAb$6q"t0io\]-<o^r":kP+`Og\f7qh<Fri~>
+pAb$6q"t0io\]-<o^r":g%Y7Ag\f7qh<Fri~>
+pAb$6q"Fg]o&&s.n_WC%mJto;bQ-J`s*t~>
+pAb$6q>C9i!;,1<!;,p[hWjk1!8IFq!8Zo>J,~>
+pAb$6q>C9i!;,1<!;,p[hV%Yu!8IFq!8Zo>J,~>
+pAb$6q=jp]!:o%:oC:\sp[/%6r6,/sl2Q8~>
+pAb$6qY^?i!;,1<!;,p[hWjk1!8IFq!8Zo>J,~>
+pAb$6qY^?i!;,1<!;,p[hV%Yu!8IFq!8Zo>J,~>
+pAb$6qY1!]!:o%:oC:\sp[/%6r6,/sl2Q8~>
+pAb$6qu$Ei!;,1<!;,p[hWjk1!8IFq!8Zo>J,~>
+pAb$6qu$Ei!;,1<!;,p[hV%Yu!8IFq!8Zo>J,~>
+pAb$6qtL']!:o%:oC:\sp[/%6r6,/sl2Q8~>
+pAb$6r;?Ki!;,1<!;,p[hX1(4!8IFq!8Zo>J,~>
+pAb$6r;?Ki!;,1<!;,p[hV%Yu!8IFq!8Zo>J,~>
+pAb$6r:g-]!:o%:oC:\pp[/%5r6,/sl2Q8~>
+pAb$6rVZQi!;,1<!;,p[hX1+5!Vb@HbQ-J`s*t~>
+pAb$6rVZQi!;,1<!;,p[hV%]!!Vb@HbQ-J`s*t~>
+pAb$6rV-3]!:o%:oC:\pq!J1KfDNhmh<Fri~>
+pAb$6rqt^OlMBB)q=t!a!8IFq!8Zo>J,~>
+pAb$6rqt^OlMBAjq=t!a!8IFq!8Zo>J,~>
+pAb$6rqG@ClLE`gq<n:K!8%.m!8Zo>J,~>
+pAb$6s8:gPl2'9*qY:'a!8IFq!8Zo>J,~>
+pAb$6s8:gPl2'8iqY:'a!8IFq!8Zo>J,~>
+pAb$6s7bIDl1*WcqX4@K!8%.m!8Zo>J,~>
+pAb$6!;tdPkka0)qtU-a!8IFq!8Zo>J,~>
+pAb$6!;tdPkka/hqtU-a!8IFq!8Zo>J,~>
+pAb$6!;GFDkjdNbqsOFK!8%.m!8Zo>J,~>
+pAb$6i;;^6hXCC;r:^3Gr6,/sl2Q8~>
+pAb$6i;;^6hV%i%r:^3Gr6,/sl2Q8~>
+pAb$6i:Q4&hVA%sr9F@7r6,/sl2Q8~>
+pAb$6iVVd6hXLL=qtC*Fr6,/sl2Q8~>
+pAb$6iVVd6hVA))qtC*Fr6,/sl2Q8~>
+pAb$6iUl:&hV%kqqs+76r6,/sl2Q8~>
+pAb$6iqqj6hXLO>qY(!Er6,/sl2Q8~>
+pAb$6iqqj6hVA,*qY(!Er6,/sl2Q8~>
+pAb$6iq2@&hV%nrqWe.5r6,/sl2Q8~>
+pAb$6j87p6hXLR?q=amDr6,/sl2Q8~>
+pAb$6j87p6hVA/+q=amDr6,/sl2Q8~>
+pAb$6j7MF&hV%qsq<J%4r6,/sl2Q8~>
+pAb$6jSS!6hXCO?q"FdCr6,/sl2Q8~>
+pAb$6jSS!6hV8,+q"FdCr6,/sl2Q8~>
+pAb$6jRhL&hUqnsq!.q3r6,/sl2Q8~>
+pAb$6p\Os_hs^X<o_RG6p\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X<o_RG"p\+[Br6,/sl2Q8~>
+pAb$6p[eIVhsg7-hV%Yh!8%.m!8Zo>J,~>
+pAb$6p\Os_hs^X<o_RG6p\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X<o_RG"p\+[Br6,/sl2Q8~>
+pAb$6p[eIVhsg7-hV%Yh!8%.m!8Zo>J,~>
+pAb$6p\Os_hs^X<o_RG6p\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X<o_RG"p\+[Br6,/sl2Q8~>
+pAb$6p[eIVhsg7-hV%Yh!8%.m!8Zo>J,~>
+pAb$6p\Os_hs^X<p%e[`hX("2!8IFq!8Zo>J,~>
+pAb$6p\Os_hs^X<p%e[`hVe/&!8IFq!8Zo>J,~>
+pAb$6p[eIVhsg:.!:J^spZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^X<pA4gahX("2!8IFq!8Zo>J,~>
+pAb$6p\Os_hs^X<pA4gahVe/&!8IFq!8Zo>J,~>
+pAb$6p[eIVhsg=/s6easpZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^X<p\OmahX("2!8IFq!8Zo>J,~>
+pAb$6p\Os_hs^X<p\OmahVe/&!8IFq!8Zo>J,~>
+pAb$6p[eIVhsg@0rpJXrpZhh2r6,/sl2Q8~>
+pAb$6lhfW:rV575p\+[Br6,/sl2Q8~>
+pAb$6lhfW:rV571p\+[Br6,/sl2Q8~>
+pAb$6lh'-*rU/OqpZhh2r6,/sl2Q8~>
+pAb$6m/,`;r:o.4p\+[Br6,/sl2Q8~>
+pAb$6m/,`;r:o.0p\+[Br6,/sl2Q8~>
+pAb$6m.B6+r9iFppZhh2r6,/sl2Q8~>
+pAb$6mJGi<qtT%3p\+[Br6,/sl2Q8~>
+pAb$6mJGi<qtT%/p\+[Br6,/sl2Q8~>
+pAb$6mI]?,qsN=opZhh2r6,/sl2Q8~>
+pAb$6mebr=qY8q.p\+[Br6,/sl2Q8~>
+pAb$6mebr=qY8q2p\+[Br6,/sl2Q8~>
+pAb$6me#H-qX34npZhh2r6,/sl2Q8~>
+pAb$6n,)&>q=rh-p\+[Br6,/sl2Q8~>
+pAb$6n,)&>q=rh1p\+[Br6,/sl2Q8~>
+pAb$6n+>Q.q<m+mpZhh2r6,/sl2Q8~>
+pAb$6nGD/?q"W_,p\+[Br6,/sl2Q8~>
+pAb$6nGD/?q"W_0p\+[Br6,/sl2Q8~>
+pAb$6nFYZ/q!R"lpZhh2r6,/sl2Q8~>
+pAb$6nb_8@p\<V(p\+[Br6,/sl2Q8~>
+pAb$6nb_8@p\<V2p\+[Br6,/sl2Q8~>
+pAb$6natc0p[6nkpZhh2r6,/sl2Q8~>
+pAb$6p\Oscht.!EqYKp\hVn5'!8IFq!8Zo>J,~>
+pAb$6p\Oscht.!EqYKp\hWsq1!8IFq!8Zo>J,~>
+pAb$6p[eIWrUSn:p?pejpZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^[=qXsX?iV3'Hg\f7qh<Fri~>
+pAb$6p\Os_hs^[=qXsX?lhC,Rg\f7qh<Fri~>
+pAb$6p[eIVhsg[9p$U\ipZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^X<o_@;!p\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X<o_@;3p\+[Br6,/sl2Q8~>
+pAb$6p[eIVhs^X9o^:ShpZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^X;o_@;!p\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X;o_@;3p\+[Br6,/sl2Q8~>
+pAb$6p[eIVhs^X7o^:ShpZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^X;o_@;!p\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X;o_@;3p\+[Br6,/sl2Q8~>
+pAb$6p[eIVhs^X7o^:ShpZhh2r6,/sl2Q8~>
+pAb$6p\Os_hs^X;o_@:rp\+[Br6,/sl2Q8~>
+pAb$6p\Os_hs^X;o_@;7p\+[Br6,/sl2Q8~>
+pAb$6p[eIUhs^X7o^:ShpZhh2r6,/sl2Q8~>
+pAb$6q"k*gpYtiEo)SLVptj]upAitGbQ-J`s*t~>
+pAb$6q"k*gpYtiEo)SLVptkW:pAitGbQ-J`s*t~>
+pAb$6q"3M7rpTIHhV%Yh!8%.m!8Zo>J,~>
+pAb$6q>9+Hn+bbmp\+[Br6,/sl2Q8~>
+pAb$6q>9+Hn+bc2p\+[Br6,/sl2Q8~>
+pAb$6q=NV8n*]&cpZhh2r6,/sl2Q8~>
+pAb$6qYT4Ii:u=+!8IFq!8Zo>J,~>
+pAb$6qYT4Ii:u=+!8IFq!8Zo>J,~>
+pAb$6qXi_9i9oUj!8%.m!8Zo>J,~>
+pAb$6qto=Ji:u:*!8IFq!8Zo>J,~>
+pAb$6qto=Ji:u:*!8IFq!8Zo>J,~>
+pAb$6qt/h:i9oRi!8%.m!8Zo>J,~>
+pAb$6r;5FKi:u7)!8@@p!8Zo>J,~>
+pAb$6r;5FKi:u7)!8@@p!8Zo>J,~>
+pAb$6r:Jq;i9oOh!7q(l!8Zo>J,~>
+pAb$6rVPOLi:u7)!VY7FbQ-J`s*t~>
+pAb$6rVPOLi:u7)!VY7FbQ-J`s*t~>
+pAb$6rUf%<i9oOh!U/,4bQ-J`s*t~>
+pAb$6rqkXMi:u7)s7QHHr6,/sl2Q8~>
+pAb$6rqkXMi:u7)s7QHHr6,/sl2Q8~>
+pAb$6rq,.=i9oOhs6'I6r6,/sl2Q8~>
+pAb$6s81aNi:u7)rq6?Gr6,/sl2Q8~>
+pAb$6s81aNi:u7)rq6?Gr6,/sl2Q8~>
+pAb$6s7G7>i9oOhroa@5r6,/sl2Q8~>
+pAb$6!;lQf!;GdNp@A:Xo_@;7qtL'_!8@@p!8Zo>J,~>
+pAb$6!;lQf!;GdNp@A:Xo_@;7qtL'_!8@@p!8Zo>J,~>
+pAb$6!;,4>p@%V@q=!J6qs44E!7q(l!8Zo>J,~>
+pAb$6p\Fm^hs^X;o_@;4r:g-_!8@@p!8Zo>J,~>
+pAb$6p\Fm^hs^X;o_@;4r:g-_!8@@p!8Zo>J,~>
+pAb$6p@7&0!:TRJhXLI/r9+.3r6,/sl2Q8~>
+pAb$6p\Fm^hs^X;o_@;4rV-3_!8@@p!8Zo>J,~>
+pAb$6p\Fm^hs^X;o_@;4rV-3_!8@@p!8Zo>J,~>
+pAb$6p@7&0!:TRJhXLL0qre%2r6,/sl2Q8~>
+pAb$6p\Fm^hs^X;o_@;4rqH9_!8@@p!8Zo>J,~>
+pAb$6p\Fm^hs^X;o_@;4rqH9_!8@@p!8Zo>J,~>
+pAb$6p@7&0!:TRJhXLO1qWIq1r6,/sl2Q8~>
+pAb$6p\Fm^hs^X;o_@;4s7c?_!8@@p!8Zo>J,~>
+pAb$6p\Fm^hs^X;o_@;4s7c?_!8@@p!8Zo>J,~>
+pAb$6p@7&0!:TRJhXLR2q<.h0r6,/sl2Q8~>
+pAb$6p\Fm^hs^X;o_@;4!;H9^!8@@p!8Zo>J,~>
+pAb$6p\Fm^hs^X;o_@;4!;H9^!8@@p!8Zo>J,~>
+pAb$6p@7&0!:TRJhXCO2puh_/r6,/sl2Q8~>
+pAb$6p\FmanFZ5A!;?'[hXgL8!8@@p!8Zo>J,~>
+pAb$6p\FmanFZ5A!;?'[hXgL8!8@@p!8Zo>J,~>
+pAb$6jmhj/oBuYIi9p@'!7q(l!8Zo>J,~>
+pAb$6k5+$2i:ls=!8@@p!8Zo>J,~>
+pAb$6k5+$2i:ls=!8@@p!8Zo>J,~>
+pAb$6k4.Bti9U+#!7q(l!8Zo>J,~>
+pAb$6kPF-3i:lp<!8@@p!8Zo>J,~>
+pAb$6kPF-3i:lp<!8@@p!8Zo>J,~>
+pAb$6kOIKui9U("!7q(l!8Zo>J,~>
+pAb$6kka64i:lm;!8@@p!8Zo>J,~>
+pAb$6kka64i:lm;!8@@p!8Zo>J,~>
+pAb$6kjdU!i9U%!!7q(l!8Zo>J,~>
+pAb$6l2'?5i:lj:!8@@p!8Zo>J,~>
+pAb$6l2'?5i:lj:!8@@p!8Zo>J,~>
+pAb$6l1*^"i9U!u!7q(l!8Zo>J,~>
+pAb$6lMBH6i:lg9!8@@p!8Zo>J,~>
+pAb$6lMBH6i:lg9!8@@p!8Zo>J,~>
+pAb$6lLEg#i9Tst!7q(l!8Zo>J,~>
+pAb$6lh]Q7i:ld8!8@@p!8Zo>J,~>
+pAb$6lh]Q7i:ld8!8@@p!8Zo>J,~>
+pAb$6lg`p$i9Tps!7q(l!8Zo>J,~>
+pAb$6m/#Z8i:la7!8@@p!8Zo>J,~>
+pAb$6m/#Z8i:la7!8@@p!8Zo>J,~>
+pAb$6m.'$%i9Tmr!7q(l!8Zo>J,~>
+pAb$6mJ>c9i:l^6!8@@p!8Zo>J,~>
+pAb$6mJ>c9i:l^6!8@@p!8Zo>J,~>
+pAb$6mIB-&i9Tjq!7q(l!8Zo>J,~>
+pAb$6meYl:i:l[5!8@@p!8Zo>J,~>
+pAb$6meYl:i:l[5!8@@p!8Zo>J,~>
+pAb$6md]6'i9Tgp!7q(l!8Zo>J,~>
+pAb$6n+tu;i:lX4!8@@p!8Zo>J,~>
+pAb$6n+tu;i:lX4!8@@p!8Zo>J,~>
+pAb$6n+#?(i9Tdo!7q(l!8Zo>J,~>
+pAb$6nG;)<i:lU3!8@@p!8Zo>J,~>
+pAb$6nG;)<i:lU3!8@@p!8Zo>J,~>
+pAb$6nF>H)i9Tan!7q(l!8Zo>J,~>
+pAb$6nbV2=i:lR2!8@@p!8Zo>J,~>
+pAb$6nbV2=i:lR2!8@@p!8Zo>J,~>
+pAb$6naYQ*i9T^m!7q(l!8Zo>J,~>
+pAb$6o(q;>i:lO1!8@@p!8Zo>J,~>
+pAb$6o(q;>i:lO1!8@@p!8Zo>J,~>
+pAb$6o'tZ+i9T[l!7q(l!8Zo>J,~>
+pAb$6oD7D?i:lL0!8@@p!8Zo>J,~>
+pAb$6oD7D?i:lL0!8@@p!8Zo>J,~>
+pAb$6oC:c,i9TXk!7q(l!8Zo>J,~>
+pAb$6o\@49kM#jX!8Zo>J,~>
+pAb$6o\@49kM#jX!8Zo>J,~>
+pAb$6o\&0Ti7I/Cr6,/sl2Q8~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^,r!8Zo>J,~>
+pA^-.!:K+OJ,~>
+pA^-.!:K+OJ,~>
+pA^-.!:K+OJ,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+JcG!7J,~>
+%%EndData
+showpage
+%%Trailer
+end
+%%EOF
diff --git a/macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf b/macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf
new file mode 100644
index 0000000000..e241e031db
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/base/art/beamericonarticle.eps b/macros/latex/contrib/beamer/base/art/beamericonarticle.eps
new file mode 100644
index 0000000000..a87f092204
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonarticle.eps
@@ -0,0 +1,734 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: GIMP PostScript file plugin V 1.12 by Peter Kirchgessner
+%%Title: /n/mappazza/home4/algo/tantau/texmf/tex/latex/classes/latex-beamer/beamericonarticle.eps
+%%CreationDate: Thu Oct 16 20:42:27 2003
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 14 14 26 29
+%%EndComments
+%%BeginProlog
+% Use own dictionary to avoid conflicts
+10 dict begin
+%%EndProlog
+%%Page: 1 1
+% Translate for offset
+14.173228 14.173228 translate
+% Translate to begin of first scanline
+0.000000 13.920000 translate
+10.980000 -13.920000 scale
+% Image geometry
+183 232 8
+% Transformation matrix
+[ 183 0 0 232 0 0 ]
+% Strings to hold RGB-samples per scanline
+/rstr 183 string def
+/gstr 183 string def
+/bstr 183 string def
+{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
+true 3
+%%BeginData: 25534 ASCII Bytes
+colorimage
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+o`(:Y_#Jo~>
+o`(:Y_#Jo~>
+o`(:Y_#Jo~>
+o`(9Y!*-l8J,~>
+o`(9Y!*-l8J,~>
+o`(9Y!*-l8J,~>
+o`(6X!*-o9J,~>
+o`(6X!*-o9J,~>
+o`(6X!*-o9J,~>
+o`(3W!*-r:J,~>
+o`(3W!*-r:J,~>
+o`(3W!*-r:J,~>
+o`(0V!*-u;J,~>
+o`(0V!*-u;J,~>
+o`(0V!*-u;J,~>
+o`(-U!*.#<J,~>
+o`(-U!*.#<J,~>
+o`(-U!*.#<J,~>
+o`(*T!*.&=J,~>
+o`(*T!*.&=J,~>
+o`(*T!*.&=J,~>
+o`+afr`/>bm8N%CmSNs'p&G(ma8^Y~>
+o`+afr`/>bm8N%CmSNs'p&G(ma8^Y~>
+o`+afr`&VjpJU`^pJ:NYpJ(BUpIb3P!#bJ1!*.)>J,~>
+o`+afs8Mcjp\X^\p\=LVp\":Qp[\(K!)W=g!*.,?J,~>
+o`+afs8Mcjp\X^\p\=LVp\":Qp[\(K!)W=g!*.,?J,~>
+o`+afs82Qbp[n4Lp[%Y=pZ;//pYPYu!(cb_!*.,?J,~>
+o`+af!<2`jp\X^\p\=LVp\":Qp[\(K!UikW!!$$@s*t~>
+o`+af!<2`jp\X^\p\=LVp\":Qp[\(K!UikW!!$$@s*t~>
+o`+af!;lNbp[n4Lp[%Y=pZ;//pYPYu!S9m7!!$$@s*t~>
+o`+afp\ad_p\FRYp\+@Sp[n4Np[S:P!)W7e!*.2AJ,~>
+o`+afp\ad_p\FRYp\+@Sp[n4Np[S:P!)W7e!*.2AJ,~>
+o`+afp\4FSp[IqDpZ_G6pYtr(pY,Z!!(c\]!*.2AJ,~>
+o`+afq#'m`p\FRYp\+@Sp[n4Np[S7O!)W4d!*.5BJ,~>
+o`+afq#'m`p\FRYp\+@Sp[n4Np[S7O!)W4d!*.5BJ,~>
+o`+afq"OOTp[IqDpZ_G6pYtr(pY,Vu!(cY\!*.5BJ,~>
+o`+afq>C!ap\FRYp\+@Sp[n4Np[S4N!)WOm!#>8/!*.8CJ,~>
+o`+afq>C!ap\FRYp\+@Sp[n4Np[S4N!)WOm!#>8/!*.8CJ,~>
+o`+afq=jXUp[IqDpZ_G6pYtr(pY,St!(cte!"nu+!*.8CJ,~>
+o`+afqY^*bp\FRYp\+@Sp[n4Np[S1M!)WOms#p,W!*.;DJ,~>
+o`+afqY^*bp\FRYp\+@Sp[n4Np[S1M!)WOms#p,W!*.;DJ,~>
+o`+afqY0aVp[IqDpZ_G6pYtr(pY,Ps!(ctes"X9K!*.;DJ,~>
+o`+afqu$3cp\FRYp\+@Sp[n4Np[S.L!)WOm!^*hPp](:ocMrC~>
+o`+afqu$3cp\FRYp\+@Sp[n4Np[S.L!)WOm!^*hPp](:ocMrC~>
+o`+afqtKjWp[IqDpZ_G6pYtr(pY,Mr!(cte!\]Kcp](:ocMrC~>
+o`+afr;?<dp\FRYp\+@Sp[n4Np[S+K!)WOm"$Eor4SSmV<R:\q~>
+o`+afr;?<dp\FRYp\+@Sp[n4Np[S+K!)WOm"$Eor4SSmV<R:\q~>
+o`+afr:fsXp[IqDpZ_G6pYtr(pY,Jq!(cte""oFe0),DH<R:\q~>
+o`+afrVZEep\FRYp\+@Sp[n4Np[S(J!)WOm!'C1b!'BrU!*.DGJ,~>
+o`+afrVZEep\FRYp\+@Sp[n4Np[S(J!)WOm!'C1b!'BrU!*.DGJ,~>
+o`+afrV-'Yp[IqDpZ_G6pYtr(pY,Gp!(cte!%e,%!%dmF!*.DGJ,~>
+o`+afrquNfp\FRYp\+@Sp[n4Np[S%I!)WOm!':(]!'9lT!*.GHJ,~>
+o`+afrquNfp\FRYp\+@Sp[n4Np[S%I!)WOm!':(]!'9lT!*.GHJ,~>
+o`+afrqH0Zp[IqDpZ_G6pYtr(pY,Do!(Znd!%Rqp!%RaD!*.GHJ,~>
+o`+afs8;Wgp\FRYp\+@Sp[n4Np[S%I!U`e]!!#(XX8k<V!!$$Is*t~>
+o`+afs8;Wgp\FRYp\+@Sp[n4Np[S%I!U`e]!!#(XX8k<V!!$$Is*t~>
+o`+afs7c9[p[IqDpZ_G6pYtr(pY,Do!RjR9!!"GFFoWrc!!$$Is*t~>
+o`+af!;uTgp\FRYp\+@Sp[n4Np[S%Is6]k`qZ$UVql0WVp](:oe,Op~>
+o`+af!;uTgp\FRYp\+@Sp[n4Np[S%Is6]k`qZ$UVql0WVp](:oe,Op~>
+o`+af!;H6[p[IqDpZ_G6pYtr(pY,Dos3gs<qZ$UCqeuN^p](:oe,Op~>
+o`+afp\X^\p\=LVp\":Qp[\(Kq!\4M!)WOm!''hQ!''`R!*.PKJ,~>
+o`+afp\X^\p\=LVp\":Qp[\(Kq!\4M!)WOm!''hQ!''`R!*.PKJ,~>
+o`+afp[n4Lp[%Y=pZ;//pYPYupt,Mo!(Znd!$h>S!$h7=!*.PKJ,~>
+o`+afq"sg]p\=LVp\":Qp[\(Kq!\1L!)WOm!&s_M!&sZQ!*.SLJ,~>
+o`+afq"sg]p\=LVp\":Qp[\(Kq!\1L!)WOm!&s_M!&sZQ!*.SLJ,~>
+o`+afq"4=Mp[%Y=pZ;//pYPYupt,Jn!(Znd!$V/J!$V+;!*.SLJ,~>
+o`+afq>9p^p\=LVp\":Qp[\(Kq!\.K!)WOm!&jVH!&jTP!*.VMJ,~>
+o`+afq>9p^p\=LVp\":Qp[\(Kq!\.K!)WOm!&jVH!&jTP!*.VMJ,~>
+o`+afq=OFNp[%Y=pZ;//pYPYupt,Gm!(Znd!$Cu@!$Ct9!*.VMJ,~>
+o`+afqYU$_p\=LVp\":Qp[\(Kq!\+J!)WOm!&jSE!&jTP!*.YNJ,~>
+o`+afqYU$_p\=LVp\":Qp[\(Kq!\+J!)WOm!&jSE!&jTP!*.YNJ,~>
+o`+afqXjOOp[%Y=pZ;//pYPYupt,Dl!(Znd!$1f7!$1h7!*.YNJ,~>
+o`+afqtp-`p\=LVp\":Qp[\(Kq!\(I!)WOm!&aJ@!&aNO!*.\OJ,~>
+o`+afqtp-`p\=LVp\":Qp[\(Kq!\(I!)WOm!&aJ@!&aNO!*.\OJ,~>
+o`+afqt0XPp[%Y=pZ;//pYPYupt,Ak!(Znd!#tW.!#t\5!*.\OJ,~>
+o`+afr;6<cor.8UmAB<Jq4n!LqZ$UQopYq<p](:og&HR~>
+o`+afr;6<cor.8UmAB<Jq4n!LqZ$UQopYq<p](:og&HR~>
+o`+afr:KgSs/#IcpS7JVpRq8QpR_/Nq3q@@qZ$U6ogo-$p](:og&HR~>
+o`+afrVQBcZ@;j)qZ$UPoU,\8p](:ogAc[~>
+o`+afrVQBcZ@;j)qZ$UPoU,\8p](:ogAc[~>
+o`+afrUfmSZ@;j)qZ$U4oKrTpp](:ogAc[~>
+o`+afrqlHcZ@;j)qZ$UOo9KA3p](:og])d~>
+o`+afrqlHcZ@;j)qZ$UOo9KA3p](:og])d~>
+o`+afrq,sSZ@;j)qZ$U1o/m!ep](:og])d~>
+o`+afs82Qd!;NjL!%[pH!&F,1!&F<L!*.hSJ,~>
+o`+afs82Qd!;NjL!%[pH!&F,1!&F<L!*.hSJ,~>
+o`+afs7H'T!:7"@!%[pH!#+o`!#,,-!*.hSJ,~>
+o`+af!;lNds7imL!%[pH!&=#-!&=6K!*.kTJ,~>
+o`+af!;lNds7imL!%[pH!&=#-!&=6K!*.kTJ,~>
+o`+af!;-$Ts6R%@!%[pH!"n`W!"nu+!*.kTJ,~>
+o`+afp\Fg`Z@;j)qZ$UMn;mW(p](:ohZ&*~>
+o`+afp\Fg`Z@;j)qZ$UMn;mW(p](:ohZ&*~>
+o`+afp[J1KZ@;j)qZ$U,n14PMp](:ohZ&*~>
+o`+afq"am`Z@;j)qZ$UMmu@B%p](:ohuA3~>
+o`+afq"am`Z@;j)qZ$UMmu@B%p](:ohuA3~>
+o`+afq!e7KZ@;j)qZ$U*mj8#Dp](:ohuA3~>
+o`+afq>'s`r2B"\mAB<JntZ7EqZ$ULmYh-!p](:oi;\<~>
+o`+afq>'s`r2B"\mAB<JntZ7EqZ$ULmYh-!p](:oi;\<~>
+o`+afq=+=Kr1s(^pS%>SpRh2Opmq/Kr0dUBqZ$U(mN2E:p](:oi;\<~>
+o`+afqYBm\p\+@Sp[n4Np[S%Ip[7qF!)NIl!&!Yq!&"$H!*/"XJ,~>
+o`+afqYBm\p\+@Sp[n4Np[S%Ip[7qF!)NIl!&!Yq!&"$H!*/"XJ,~>
+o`+afqXF7GpZ_G6pYtr(pY,DopXB#d!(Qhc!"&$1!"&E#!*/"XJ,~>
+o`+afqt^!]p\+@Sp[n4Np[S%Ip[7nE!)M>L!*/%YJ,~>
+o`+afqt^!]p\+@Sp[n4Np[S%Ip[7nE!)M>L!*/%YJ,~>
+o`+afqsa@HpZ_G6pYtr(pY,DopXAuc!(P]C!*/%YJ,~>
+o`+afr;$*^p\+@Sp[n4Np[S%Ip[7kD!)M;K!*/(ZJ,~>
+o`+afr;$*^p\+@Sp[n4Np[S%Ip[7kD!)M;K!*/(ZJ,~>
+o`+afr:'IIpZ_G6pYtr(pY,DopXArb!(PZB!*/(ZJ,~>
+o`+afrV?3_p\+@Sp[n4Np[S%Ip[7hC!)M8Jj8XW~>
+o`+afrV?3_p\+@Sp[n4Np[S%Ip[7hC!)M8Jj8XW~>
+o`+afrUBRJpZ_G6pYtr(pY,DopXAoa!(PWAj8XW~>
+o`+afrqZ<`p\+@Sp[n4Np[S%Ip[7eB!)M8Jj8XW~>
+o`+afrqZ<`p\+@Sp[n4Np[S%Ip[7eB!)M8Jj8XW~>
+o`+afrp][KpZ_G6pYtr(pY,DopXAl`!(>K?j8XW~>
+o`+afs7uEap\+@Sp[n4Np[S%Ip[7eB!UEP7!9=*0~>
+o`+afs7uEap\+@Sp[n4Np[S%Ip[7eB!UEP7!9=*0~>
+o`+afs7#dLpZ_G6pYtr(pY,DopXAl`!R*sb!9=*0~>
+o`+af!;ZBap\+@Sp[n4Np[S%Ip[7eBs6BY\f`:(4J,~>
+o`+af!;ZBap\+@Sp[n4Np[S%Ip[7eBs6BY\f`:(4J,~>
+o`+af!:]aLpZ_G6pYtr(pY,DopXAl`s3(I2f`:(4J,~>
+o`+afp\=LVp\":Qp[\(Kq![tFp[%nF!)M8Jj8XW~>
+o`+afp\=LVp\":Qp[\(Kq![tFp[%nF!)M8Jj8XW~>
+o`+afp[%Y=pZ;//pYPYupt,8hpX&o`!(>K?j8XW~>
+o`+afq"XUWp\":Qp[\(Kq![tFp[%Y?pZ_G9q<.SSj8XW~>
+o`+afq"XUWp\":Qp[\(Kq![tFp[%Y?pZ_G9q<.SSj8XW~>
+o`+afq!@b>pZ;//pYPYupt,8hpX&ZYpW3*Jq8)n-j8XW~>
+o`+afq=s^Xp\":Qp[\(Kq![tFp[%Y?pZ_G9puhJRj8XW~>
+o`+afq=s^Xp\":Qp[\(Kq![tFp[%Y?pZ_G9puhJRj8XW~>
+o`+afq<[k?pZ;//pYPYupt,8hpX&ZYpW3*Jpqce,j8XW~>
+o`+afqY9gYp\":Qp[\(Kq![tFp[%Y?pZ_G9pZMAQj8XW~>
+o`+afqY9gYp\":Qp[\(Kq![tFp[%Y?pZ_G9pZMAQj8XW~>
+o`+afqX!t@pZ;//pYPYupt,8hpX&ZYpW3*JpVH\+j8XW~>
+o`+afqtTpZp\":Qp[\(Kq![tFp[%Y?pZ_G9pZDP<q>fRUJ,~>
+o`+afqtTpZp\":Qp[\(Kq![tFp[%Y?pZ_G9pZDP<q>fRUJ,~>
+o`+afqs=(ApZ;//pYPYupt,8hpX&ZYpW3*JpV?jDq>fRUJ,~>
+o`+afr:p$[p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMS<q>fRUJ,~>
+o`+afr:p$[p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMS<q>fRUJ,~>
+o`+afr9X1BpZ;//pYPYupt,8hpX&ZYpW3*JpVHmDq>fRUJ,~>
+o`+afrV6-\p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMP;q>fRUJ,~>
+o`+afrV6-\p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMP;q>fRUJ,~>
+o`+afrTs:CpZ;//pYPYupt,8hpX&ZYpW3*JpVHjCq>fRUJ,~>
+o`+afrqQ6]p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMM:q>fRUJ,~>
+o`+afrqQ6]p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMM:q>fRUJ,~>
+o`+afrp9CDpZ;//pYPYupt,8hpX&ZYpW3*JpVHgBq>fRUJ,~>
+o`+afs7l?^p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMJ9q>fRUJ,~>
+o`+afs7l?^p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMJ9q>fRUJ,~>
+o`+afs6TLEpZ;//pYPYupt,8hpX&ZYpW3*JpVHdAq>fRUJ,~>
+o`+af!;Q<^p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMG8q>fRUJ,~>
+o`+af!;Q<^p\":Qp[\(Kq![tFp[%Y?pZ_G9pZMG8q>fRUJ,~>
+o`+af!:9IEpZ;//pYPYupt,8hpX&ZYpW3*JpVHa@q>fRUJ,~>
+o`+afp\+@Sq"+R;mC2MlmBuet!mg,qpZVA7qW7PRj8XW~>
+o`+afp\+@Sq"+R;mC2MlmBuet!mg,qpZVA7qW7PRj8XW~>
+o`+afpZ_G6pu2:rpTXCqpoa@npT4+hqPaP,aN4+ppVH^?q>fRUJ,~>
+o`+afq"FITp[eHp^R5,0l1aE9kP=69!9=*0~>
+o`+afq"FITp[eHp^R5,0l1aE9kP=69!9=*0~>
+o`+afq!%P7pYl1W^R5,%aS3[J_>1hA!9=*0~>
+o`+afq=aRUp[eLW\%e=2[.ieYkP408!9=*0~>
+o`+afq=aRUp[eLW\%e=2[.ieYkP408!9=*0~>
+o`+afq<@Y8pYl51YeQS+WV=C+_>(b@!9=*0~>
+o`+afqY'[Vp[nLV!4T_2!4;ObpZM;4q>fRUJ,~>
+o`+afqY'[Vp[nLV!4T_2!4;ObpZM;4q>fRUJ,~>
+o`+afqW[b9pYu50!3j5+!3#\3pVHU<q>fRUJ,~>
+o`+afqtBdWp[nIU!4T_2!4;RcpZM;4!9EtVj8XW~>
+o`+afqtBdWp[nIU!4T_2!4;RcpZM;4!9EtVj8XW~>
+o`+afqs!k:pYu2/!3j5+!3#_4pVHU<!4r",j8XW~>
+o`+afr:]mXp[nFT!4T_2!4;UdpZM;4s5a"Vj8XW~>
+o`+afr:]mXp[nFT!4T_2!4;UdpZM;4s5a"Vj8XW~>
+o`+afr9<t;pYu/.!3j5+!3#b5pVHU<s18%,j8XW~>
+o`+afrV$!Yp[nCS!4T_2!4;XepZM;4roEnUj8XW~>
+o`+afrV$!Yp[nCS!4T_2!4;XepZM;4roEnUj8XW~>
+o`+afrTX(<pYu,-!3j5+!3#e6pVHU<rjqq+j8XW~>
+o`+afrq?*Zp[n@R!7g_Nm^DMjo<\MCr93n<pZ;A7q>fRUJ,~>
+o`+afrq?*Zp[n@R!7g_Nm^DMjo<\MCr93n<pZ;A7q>fRUJ,~>
+o`+afros1=pYu),!6>)CpTO@ppT=1kpT!terMT_*r5JEHpV-U;q>fRUJ,~>
+o`+afs7Z3[p[n4Np[S%Ip[7eBpZqS<pZVA7pZ;>6q>fRUJ,~>
+o`+afs7Z3[p[n4Np[S%Ip[7eBpZqS<pZVA7pZ;>6q>fRUJ,~>
+o`+afs69:>pYtr(pY,DopXAl`pWWBQpVlmCpV-R:q>fRUJ,~>
+o`+af!;?0[p[n4Np[S%Ip[7eBpZqS<pZVA7pZ;;5q>fRUJ,~>
+o`+af!;?0[p[n4Np[S%Ip[7eBpZqS<pZVA7pZ;;5q>fRUJ,~>
+o`+af!9s7>pYtr(pY,DopXAl`pWWBQpVlmCpV-O9q>fRUJ,~>
+o`+afp\":Qp[\(Kq![tFp[%Y?pZ_G9pZM;4qW.JQj8XW~>
+o`+afp\":Qp[\(Kq![tFp[%Y?pZ_G9pZM;4qW.JQj8XW~>
+o`+afpZ;//pYPYupt,8hpX&ZYpW3*JpVHU<qRZM'j8XW~>
+o`+afq"=CRp[\(Kq![tFp[%Y?pZ_G9pZM;4q;hAPj8XW~>
+o`+afq"=CRp[\(Kq![tFp[%Y?pZ_G9pZM;4q;hAPj8XW~>
+o`+afpuV80pYPYupt,8hpX&ZYpW3*JpVHU<q7?D&j8XW~>
+o`+afq=XLSp[\(Kq![tFp[%Y?pZ_G9pZM;4puM8Oj8XW~>
+o`+afq=XLSp[\(Kq![tFp[%Y?pZ_G9pZM;4puM8Oj8XW~>
+o`+afq;qA1pYPYupt,8hpX&ZYpW3*JpVHU<pq$;%j8XW~>
+o`+afqXsUTp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2/Nj8XW~>
+o`+afqXsUTp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2/Nj8XW~>
+o`+afqW7J2pYPYupt,8hpX&ZYpW3*JpVHU<pU^2$j8XW~>
+o`+afqt9^Up[\(Kq![tFp[%Y?pZ_G9pZM;4pZ)>6q>fRUJ,~>
+o`+afqt9^Up[\(Kq![tFp[%Y?pZ_G9pZM;4pZ)>6q>fRUJ,~>
+o`+afqrRS3pYPYupt,8hpX&ZYpW3*JpVHU<pUU@5q>fRUJ,~>
+o`+afr:TgVp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2A6q>fRUJ,~>
+o`+afr:TgVp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2A6q>fRUJ,~>
+o`+afr8m\4pYPYupt,8hpX&ZYpW3*JpVHU<pU^C5q>fRUJ,~>
+o`+afrUopWp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2>5q>fRUJ,~>
+o`+afrUopWp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2>5q>fRUJ,~>
+o`+afrT3e5pYPYupt,8hpX&ZYpW3*JpVHU<pU^@4q>fRUJ,~>
+o`+afrq6$Xp[\4O!4T_2!42UdpZ;/1rSmYRj8XW~>
+o`+afrq6$Xp[\4O!4T_2!42UdpZ;/1rSmYRj8XW~>
+o`+afroNn6pYPf$!3a/*!2ob2pV-C5rO2P&j8XW~>
+o`+afs7Q-Yp[\1N!4T_2!42XepZ;/1r8RPQj8XW~>
+o`+afs7Q-Yp[\1N!4T_2!42XepZ;/1r8RPQj8XW~>
+o`+afs5j"7pYPc#!3a/*!2oe3pV-C5r3lG%j8XW~>
+o`+af!;6*Yp[\.M!4T_2!42[fpZ;/1qr7GPj8XW~>
+o`+af!;6*Yp[\.M!4T_2!42[fpZ;/1qr7GPj8XW~>
+o`+af!9Nt7pYP`"!3a/*!2oh4pV-C5qmQ>$j8XW~>
+o`+afp[n4Nq!e?n^R5/0kNDU$pZ221q>fRUJ,~>
+o`+afp[n4Nq!e?n^R5/0kNDU$pZ221q>fRUJ,~>
+o`+afpYtr(pt>_O^R5/$_85l[pU^40q>fRUJ,~>
+o`+afq"4=Op[J6l^R5,/kP+*4jS@g3!9=*0~>
+o`+afq"4=Op[J6l^R5,/kP+*4jS@g3!9=*0~>
+o`+afpu;&)pY#VM^R5,#_=t\<](rf2!9=*0~>
+o`+afq=OFPp[J:Q[_J41ZhNSUjS7a2!9=*0~>
+o`+afq=OFPp[J:Q[_J41ZhNSUjS7a2!9=*0~>
+o`+afq;V/*pY#Z"Y.pA)Vt[q"](i`1!9=*0~>
+o`+afqXjOQp[S:P!4KY1!42I^pZ2).q>fRUJ,~>
+o`+afqXjOQp[S:P!4KY1!42I^pZ2).q>fRUJ,~>
+o`+afqVq8+pY,Z!!3X))!2fP*pU^+-q>fRUJ,~>
+o`+afqt0XRp[S%Ip[7eBpZqS<pZVA7pZ;/1pYl23q>fRUJ,~>
+o`+afqt0XRp[S%Ip[7eBpZqS<pZVA7pZ;/1pYl23q>fRUJ,~>
+o`+afqr7A,pY,DopXAl`pWWBQpVlmCpV-C5pU1(.q>fRUJ,~>
+o`+afr:KaSp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu53q>fRUJ,~>
+o`+afr:KaSp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu53q>fRUJ,~>
+o`+afr8RJ-pY,DopXAl`pWWBQpVlmCpV-C5pU:+.q>fRUJ,~>
+o`+afrUfjTp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu22q>fRUJ,~>
+o`+afrUfjTp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu22q>fRUJ,~>
+o`+afrSmS.pY,DopXAl`pWWBQpVlmCpV-C5pU:(-q>fRUJ,~>
+o`+afrq,sUp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu/1q>fRUJ,~>
+o`+afrq,sUp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu/1q>fRUJ,~>
+o`+afro3\/pY,DopXAl`pWWBQpVlmCpV-C5pU:%,q>fRUJ,~>
+o`+afs7H'Vp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu,0q>fRUJ,~>
+o`+afs7H'Vp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu,0q>fRUJ,~>
+o`+afs5Ne0pY,DopXAl`pWWBQpVlmCpV-C5pU:"+q>fRUJ,~>
+o`+af!;-$Vp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu)/q>fRUJ,~>
+o`+af!;-$Vp[S%Ip[7eBpZqS<pZVA7pZ;/1pYu)/q>fRUJ,~>
+o`+af!93b0pY,DopXAl`pWWBQpVlmCpV-C5pU9t*q>fRUJ,~>
+o`+afp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2).qVh8Nj8XW~>
+o`+afp[\(Kq![tFp[%Y?pZ_G9pZM;4pZ2).qVh8Nj8XW~>
+o`+afpYPYupt,8hpX&ZYpW3*JpVHU<pU^+-qQp"uj8XW~>
+o`+afq""1Lq![tFp[%Y?pZ_G9pZM;4pZ2).q;M/Mj8XW~>
+o`+afq""1Lq![tFp[%Y?pZ_G9pZM;4pZ2).q;M/Mj8XW~>
+o`+afptkc!pt,8hpX&ZYpW3*JpVHU<pU^+-q6Tntj8XW~>
+o`+afq==:Mq![tFp[%Y?pZ_G9pZM;4pZ2).pu2&Lj8XW~>
+o`+afq==:Mq![tFp[%Y?pZ_G9pZM;4pZ2).pu2&Lj8XW~>
+o`+afq;1l"pt,8hpX&ZYpW3*JpVHU<pU^+-pp9esj8XW~>
+o`+afqXXCNq![tFp[%Y?pZ_G9pZM;4pZ2).pYkrKj8XW~>
+o`+afqXXCNq![tFp[%Y?pZ_G9pZM;4pZ2).pYkrKj8XW~>
+o`+afqVLu#pt,8hpX&ZYpW3*JpVHU<pU^+-pTs\rj8XW~>
+o`+afqssLOq![tFp[%Y?pZ_G9pZM;4pZ2).pYc,0q>fRUJ,~>
+o`+afqssLOq![tFp[%Y?pZ_G9pZM;4pZ2).pYc,0q>fRUJ,~>
+o`+afqqh)$pt,8hpX&ZYpW3*JpVHU<pU^+-pTjk'q>fRUJ,~>
+o`+afr:9UPq![tFp[%Y?pZ_G9pZM;4pZ2).pYl/0q>fRUJ,~>
+o`+afr:9UPq![tFp[%Y?pZ_G9pZM;4pZ2).pYl/0q>fRUJ,~>
+o`+afr8.2%pt,8hpX&ZYpW3*JpVHU<pU^+-pTsn'q>fRUJ,~>
+o`+afrUT^Qq![tFp[%Y?pZ_G9pZM;4pZ2).pYl,/q>fRUJ,~>
+o`+afrUT^Qq![tFp[%Y?pZ_G9pZM;4pZ2).pYl,/q>fRUJ,~>
+o`+afrSI;&pt,8hpX&ZYpW3*JpVHU<pU^+-pTsk&q>fRUJ,~>
+o`+afrpogRq![tFp[%Y?pZ_G9pZM;4pZ2).pYl).q>fRUJ,~>
+o`+afrpogRq![tFp[%Y?pZ_G9pZM;4pZ2).pYl).q>fRUJ,~>
+o`+afrndD'pt,8hpX&ZYpW3*JpVHU<pU^+-pTsh%q>fRUJ,~>
+o`+afs75pSq![tFp[%Y?pZ_G9pZM;4pZ2).pYl&-q>fRUJ,~>
+o`+afs75pSq![tFp[%Y?pZ_G9pZM;4pZ2).pYl&-q>fRUJ,~>
+o`+afs5*M(pt,8hpX&ZYpW3*JpVHU<pU^+-pTse$q>fRUJ,~>
+o`+af!:omSq![tFp[%Y?pZ_G9pZM;4pZ2).pYl#,q>fRUJ,~>
+o`+af!:omSq![tFp[%Y?pZ_G9pZM;4pZ2).pYl#,q>fRUJ,~>
+o`+af!8dJ(pt,8hpX&ZYpW3*JpVHU<pU^+-pTsb#q>fRUJ,~>
+o`+afp[S%Ip[7eBpZqS<pZVA7pZ;/1pYtr+qVV,Lj8XW~>
+o`+afp[S%Ip[7eBpZqS<pZVA7pZ;/1pYtr+qVV,Lj8XW~>
+o`+afpY,DopXAl`pWWBQpVlmCpV-C5pU9h&qQK_qj8XW~>
+o`+afq!n.Jp[7eBpZqS<pZVV>f0fJpq;;#Kj8XW~>
+o`+afq!n.Jp[7eBpZqS<pZVV>f0B2lq;;#Kj8XW~>
+o`+afptGMppXAl`pWWBQpVm-Jf=_$fq60Vpj8XW~>
+o`+afq=4COf<bMApZVS=f0fMqpttoJj8XW~>
+o`+afq=4COf<bMApZVS=f0B5mpttoJj8XW~>
+o`+afq:bbuf<bLupVm*If=_'gpojMoj8XW~>
+o`+afqXOIOf<YJApZVP<f15i!ptl).q>fRUJ,~>
+o`+afqXOIOf<YJApZVP<f0B8nptl).q>fRUJ,~>
+o`+afqV(huf<YIupVm'Hf=:gdpoa\!q>fRUJ,~>
+o`+afqsjOOf<b58qrcR's5Eb1s5*SPj8XW~>
+o`+afqsjOOf<b58qrcQqs5Eb1s5*SPj8XW~>
+o`+afqqCnuf<b4jqn^mls0ML(s/c%sj8XW~>
+o`+afr:0UOf<b89qWHI-!9*_1rndJOj8XW~>
+o`+afr:0UOf<b89qWHHp!9*_1rndJOj8XW~>
+o`+afr7^tuf<b7kqSCdd!42I(riGqrj8XW~>
+o`+afrUK[Of<b;:q<-@/ptu&,q>fRUJ,~>
+o`+afrUK[Of<b;:q<-?optu&,q>fRUJ,~>
+o`+afrS%%uf<b:lq8([`pojXtq>fRUJ,~>
+o`+afrpfdP!:JIFqWR_;f3%k+r8.8Mj8XW~>
+o`+afrpfdP!:JIFqWR_;f0B)gr8.8Mj8XW~>
+o`+afrn@/!!7TQ+qSi6Gf;JGJr2f_pj8XW~>
+o`+afs7,mQs6eLFqrme;f3A+/qqh/Lj8XW~>
+o`+afs7,mQs6eLFqrme;f0B,hqqh/Lj8XW~>
+o`+afs4[8"s3oT+qo/<Gf;/8HqlKVoj8XW~>
+o`+af!:fjQp[7eBpZqS<pZVA7!9Mg>qqq8,q>fRUJ,~>
+o`+af!:fjQp[7eBpZqS<pZVA7!9Mfsqqq8,q>fRUJ,~>
+o`+af!8@5"pXAl`pWWBQpVlmC!5@'Xqlfjtq>fRUJ,~>
+o`+afq![tFp[%Y?pZ_G9pZMS<f44a9q;1rJj8XW~>
+o`+afq![tFp[%Y?pZ_G9pZMS<f0B2jq;1rJj8XW~>
+o`+afpt,8hpX&ZYpW3*JpVHmDf:;cBq5jDmj8XW~>
+o`+afq="(Gp[%Y?pZ_G9pZMP;f4P!=ptkiIj8XW~>
+o`+afq="(Gp[%Y?pZ_G9pZMP;f0B5kptkiIj8XW~>
+o`+afq:GAipX&ZYpW3*JpVHjCf9uT@poO;lj8XW~>
+o`+afqX=1Hp[%Y?pZ_G9pZMM:f4t<BpYP`Hj8XW~>
+o`+afqX=1Hp[%Y?pZ_G9pZMM:f0B8lpYP`Hj8XW~>
+o`+afqUbJjpX&ZYpW3*JpVHgBf9Q?=pT42kj8XW~>
+o`+afqsX:Ip[%Y?pZ_G9pZMJ9f5:QFpYGo+q>fRUJ,~>
+o`+afqsX:Ip[%Y?pZ_G9pZMJ9f0B;mpYGo+q>fRUJ,~>
+o`+afqq(SkpX&ZYpW3*JpVHdAf960;pT+@nq>fRUJ,~>
+o`+afr9sCJp[%Y?pZ_G9pZMG8f5L`IpYPr+q>fRUJ,~>
+o`+afr9sCJp[%Y?pZ_G9pZMG8f098mpYPr+q>fRUJ,~>
+o`+afr7C\lpX&ZYpW3*JpVHa@f8fp8pT4Cnq>fRUJ,~>
+o`+afrU9LKp[%Y?pZ_G9pZMD7f6?uGrn[DNj8XW~>
+o`+afrU9LKp[%Y?pZ_G9pZMD7f0B#drn[DNj8XW~>
+o`+afrR^empX&ZYpW3*JpVH^?f801&ri#Ynj8XW~>
+o`+afrpTULp[%Y?pZ_G9pZMA6f6d;LrS@;Mj8XW~>
+o`+afrpTULp[%Y?pZ_G9pZMA6f0B&erS@;Mj8XW~>
+o`+afrn$nnpX&ZYpW3*JpVH[>f7`q#rM]Pmj8XW~>
+o`+afs6o^Mp[%Y?pZ_G9pZM>5f7*PPr8%2Lj8XW~>
+o`+afs6o^Mp[%Y?pZ_G9pZM>5f0B)fr8%2Lj8XW~>
+o`+afs4@"opX&ZYpW3*JpVHX=f7Eb!r2BGlj8XW~>
+o`+af!:T[Ms6T3ol,EP_pZ:"YqVM,*q>fRUJ,~>
+o`+af!:T[Ms6T3ol,EP_pZ:!kqVM,*q>fRUJ,~>
+o`+af!8$tos3USTpUp73pUU74qn`$@f7!Lsql'>kj8XW~>
+o`+afp[8%If<bD<pZ2D9f7s1ZqVCuJj8XW~>
+o`+afp[8%If<bD<pZ2D9f0B/hqVCuJj8XW~>
+o`+afpXB,gf<bCkpV$X=f6R7pqPa5jj8XW~>
+o`+afq!S+If<bG=pZ;G9f89F^q;(lIj8XW~>
+o`+afq!S+If<bG=pZ;G9f0B2iq;(lIj8XW~>
+o`+afps]2gf<bFlpV-[=f67(nq5F,ij8XW~>
+o`+afq<n1If<bJ>pZ;D8f8]acptbcHj8XW~>
+o`+afq<n1If<bJ>pZ;D8f0B5jptbcHj8XW~>
+o`+afq:#8gf<bImpV-X<f5ghkpo+#hj8XW~>
+o`+afqX47If<bM?pZ;A7f9$!gpYGZGj8XW~>
+o`+afqX47If<bM?pZ;A7f0B8kpYGZGj8XW~>
+o`+afqU>>gf<bLnpV-U;f5LYipSdogj8XW~>
+o`+afqsO=If<YJ?pZ;>6f9?6kpY>i(q>fRUJ,~>
+o`+afqsO=If<YJ?pZ;>6f0B;lpY>i(q>fRUJ,~>
+o`+afqpYDgf<YInpV-R:f51JgpS\(fq>fRUJ,~>
+o`+afr9jCIf<b55qrH@q!8dJ+s4dAMj8XW~>
+o`+afr9jCIf<b55qrH?n!8dJ+s4dAMj8XW~>
+o`+afr6tJgf<b4cqmtBm!3Gpns.oJkj8XW~>
+o`+afrU0IIp;Z.3!6"ZoqW-8"pYGi'q>fRUJ,~>
+o`+afrU0IIp;Z.3!6"ZoqW-6mpYGi'q>fRUJ,~>
+o`+afrR:Pg!58->pU^+0pUC44pqHU9f4"EPrhTAjj8XW~>
+o`+afrpKOIpZqS<pZVA7pZ;53f:r&rrS./Kj8XW~>
+o`+afrpKOIpZqS<pZVA7pZ;53f0B&drS./Kj8XW~>
+o`+afrmUVgpWWBQpVlmCpV-I7f3S0MrM98ij8XW~>
+o`+afs6fXJpZqS<pZVA7pZ;22f;8<!r7h&Jj8XW~>
+o`+afs6fXJpZqS<pZVA7pZ;22f0B)er7h&Jj8XW~>
+o`+afs3p_hpWWBQpVlmCpV-F6f38!Kr1s/hj8XW~>
+o`+af!:KUJpZqS<pZVA7pZ;/1f;\W&qqLrIj8XW~>
+o`+af!:KUJpZqS<pZVA7pZ;/1f0B,fqqLrIj8XW~>
+o`+af!7U\hpWWBQpVlmCpV-C5f2haHqkX&gj8XW~>
+o`+afp[%Y?pZ_G9pZM;4pZ)>6f<"l*qV1iHj8XW~>
+o`+afp[%Y?pZ_G9pZM;4pZ)>6f0B/gqV1iHj8XW~>
+o`+afpX&ZYpW3*JpVHU<pUU@5f2MRFqP<rfj8XW~>
+o`+afq!@b@pZ_G9pZM;4pZ2A6f<>,.q:k`Gj8XW~>
+o`+afq!@b@pZ_G9pZM;4pZ2A6f0B2hq:k`Gj8XW~>
+o`+afpsAcZpW3*JpVHU<pU^C5f22CDq5!iej8XW~>
+o`+afq<[kApZ_G9pZM;4pZ2>5f<bG3ptPWFj8XW~>
+o`+afq<[kApZ_G9pZM;4pZ2>5f0B5iptPWFj8XW~>
+o`+afq9\l[pW3*JpVHU<pU^@4f1c.Apn[`dj8XW~>
+o`+afqX!tBpZ_G9pZM;4pZ2;4f=(\7pY5NEj8XW~>
+o`+afqX!tBpZ_G9pZM;4pZ2;4f0B8jpY5NEj8XW~>
+o`+afqU"u\pW3*JpVHU<pU^=3f1Gt?pS@Wcj8XW~>
+o`+afqs=(CpZ_G9pZM;4pZ283f=M"<pY,]%q>fRUJ,~>
+o`+afqs=(CpZ_G9pZM;4pZ283f0B;kpY,]%q>fRUJ,~>
+o`+afqp>)]pW3*JpVHU<pU^:2f1#_<pS7e_q>fRUJ,~>
+o`+afr9X1DpZ_G9pZM;4pZ252f=_1?pY5`%q>fRUJ,~>
+o`+afr9X1DpZ_G9pZM;4pZ252f0TJnpY5`%q>fRUJ,~>
+o`+afr6Y2^pW3*JpVHU<pU^71f0986pS@h_q>fRUJ,~>
+o`+afrTs=Ff<b85qVp,;pY5]$q>fRUJ,~>
+o`+afrTs=Ff<b85qVp*rpY5]$q>fRUJ,~>
+o`+afrQt>`f<b7`qR5!?pS@e^q>fRUJ,~>
+o`+afrp9CFf<b;6q;U#5ptPc$q>fRUJ,~>
+o`+afrp9CFf<b;6q;U"!ptPc$q>fRUJ,~>
+o`+afrm:D`f<b:aq6nm>pn[k^q>fRUJ,~>
+o`+afs6TLG!9r+AqW.G2f<G)*r7^uIj8XW~>
+o`+afs6TLG!9r+AqW.G2f2)4sr7^uIj8XW~>
+o`+afs3UMa!6EcuqRZI1f0B),r1Wrej8XW~>
+o`+af!:9IGs68.AqrIM2f;nc&qqClHj8XW~>
+o`+af!:9IGs68.AqrIM2f2VV$qqClHj8XW~>
+o`+af!7:Jas2`fuqmuO1f0B,-qk<idj8XW~>
+o`+afpZqhCf<bD9pYl23f;AH"qV(cGj8XW~>
+o`+afpZqhCf<bD9pYl23f3/"*qV(cGj8XW~>
+o`+afpWWWXf<bCdpU1(.f0B/.qP!`cj8XW~>
+o`+afq!7nCf<bG:pYu53f:r2tq:bZFj8XW~>
+o`+afq!7nCf<bG:pYu53f3S=/q:bZFj8XW~>
+o`+afprr]Xf<bFepU:+.f0B2/q4[Wbj8XW~>
+o`+afq<RtCf<bJ;pYu22f:DlpptGQEj8XW~>
+o`+afq<RtCf<bJ;pYu22f4+^5ptGQEj8XW~>
+o`+afq98cXf<bIfpU:(-f0B50pn@Naj8XW~>
+o`+afqWmn?pZVA7pZ;/1pYu/1f9lQlpY,HDj8XW~>
+o`+afqWmn?pZVA7pZ;/1pYu/1f4Y*;pY,HDj8XW~>
+o`+afqTS]TpVlmCpV-C5pU:%,f0B81pS%E`j8XW~>
+o`+afqs4"@pZVA7pZ;/1pYu,0f9?6hpY#W"q>fRUJ,~>
+o`+afqs4"@pZVA7pZ;/1pYu,0f51KApY#W"q>fRUJ,~>
+o`+afqonfUpVlmCpV-C5pU:"+f0B;2pRqSXq>fRUJ,~>
+o`+afr9O+ApZVA7pZ;/1pYu)/f89R_pY,Z"q>fRUJ,~>
+o`+afr9O+ApZVA7pZ;/1pYu)/f6%)JpY,Z"q>fRUJ,~>
+o`+afr64oVpVlmCpV-C5pU9t*f0982pS%VXq>fRUJ,~>
+o`+afrTj4BpZVA7pZ;/1pYu&.f7s%Rrn.&Ij8XW~>
+o`+afrTj4BpZVA7pZ;/1pYu&.f6R,Ern.&Ij8XW~>
+o`+afrQP#WpVlmCpV-C5pU9q)f0B#'rgilcj8XW~>
+o`+afrp0=CpZVA7pZ;/1pYu#-f7E_NrRgrHj8XW~>
+o`+afrp0=CpZVA7pZ;/1pYu#-f7*MKrRgrHj8XW~>
+o`+afrlk,XpVlmCpV-C5pU9n(f0B&(rLNcbj8XW~>
+o`+afs6KFDpZVA7pZ;/1pYtu,f6mDJr7LiGj8XW~>
+o`+afs6KFDpZVA7pZ;/1pYtu,f7WnQr7LiGj8XW~>
+o`+afs315YpVlmCpV-C5pU9k'f0B))r13Zaj8XW~>
+o`+af!:0CDpZVA7pZ;/1pYtr+f6@)Fqq1`Fj8XW~>
+o`+af!:0CDpZVA7pZ;/1pYtr+f80:Wqq1`Fj8XW~>
+o`+af!6k2YpVlmCpV-C5pU9h&f0B,*qjmQ`j8XW~>
+o`+afpZ_G9pZM;4pZ2).pYc,0f5piCqUkWEj8XW~>
+o`+afpZ_G9pZM;4pZ2).pYc,0f8TU\qUkWEj8XW~>
+o`+afpW3*JpVHU<pU^+-pTjk'f0B/+qORH_j8XW~>
+o`+afq!%P:pZM;4pZ2).pYl/0f5CN?q:PNDj8XW~>
+o`+afq!%P:pZM;4pZ2).pYl/0f9-!bq:PNDj8XW~>
+o`+afprN3KpVHU<pU^+-pTsn'f0B2,q47?^j8XW~>
+o`+afq<@Y;pZM;4pZ2).pYl,/f4t9<pt5ECj8XW~>
+o`+afq<@Y;pZM;4pZ2).pYl,/f9Q<gpt5ECj8XW~>
+o`+afq8i<LpVHU<pU^+-pTsk&f0B5-pmq6]j8XW~>
+o`+afqW[n@f<bM:pYl).f4Fs8pXo<Bj8XW~>
+o`+afqW[n@f<bM:pYl).f:)]mpXo<Bj8XW~>
+o`+afqT/QQf<bLcpTsh%f0B8.pRV-\j8XW~>
+o`+afqs!t@f<YJ:pYl&-f3nX4pXfJtq>fRUJ,~>
+o`+afqs!t@f<YJ:pYl&-f:W)spXfJtq>fRUJ,~>
+o`+afqoJWQf<YIcpTse$f0B;/pRM;Qq>fRUJ,~>
+o`+afr9=%@f<b51qqp",!8@2"s4@)Ij8XW~>
+o`+afr9=%@f<b51qqp#(!8@2"s4@)Ij8XW~>
+o`+afr5e]Qc*R;Nf098/pRV>Qq>fRUJ,~>
+o`+afrTX+@f<b82qVTn&pXoJsq>fRUJ,~>
+o`+afrTX+@f<b82qVTo,pXoJsq>fRUJ,~>
+o`+afrQ+cQcEmANf0B##rgNZ`j8XW~>
+o`+afros1@f<b;3q;9e!pt5Psq>fRUJ,~>
+o`+afros1@f<b;3q;9f/pt5Psq>fRUJ,~>
+o`+afrlFiQca3GNf0B&$rL3Q_j8XW~>
+o`+afs69:A!9_t?qVh5,f1Gejr7CcFj8XW~>
+o`+afs69:A!9_t?qVh5,f=(M-r7CcFj8XW~>
+o`+afs2arR!5[$gpoi:6q47GPq>fRUJ,~>
+o`+af!9s7As6&"?qr.>-!8c<qqUk\sq>fRUJ,~>
+o`+af!9s7As6&"?qr.>-!8c>>qUk\sq>fRUJ,~>
+o`+af!6FoRs2!*hpoa\!f0B,&qjR?]j8XW~>
+o`+afpZVA7pZ;/1pYtr+ptu,.f0B/bqUbQDj8XW~>
+o`+afpZVA7pZ;/1pYtr+ptu,.f>%48qUbQDj8XW~>
+o`+afpVlmCpV-C5pU9h&poj_!f0B/'qO76\j8XW~>
+o`+afpuqJ8pZ;/1pYtr+ptti&pYGSupY,Aoq:GHCj8XW~>
+o`+afpuqJ8pZ;/1pYtr+ptti&pYGSupY,Aoq:GHCj8XW~>
+o`+afpr3!DpV-C5pU9h&pojFnpSdh^pS%>Pq3q-[j8XW~>
+o`+afq<7S9pZ;/1pYtr+ptti&pYGSupY,Aopt,?Bj8XW~>
+o`+afq<7S9pZ;/1pYtr+ptti&pYGSupY,Aopt,?Bj8XW~>
+o`+afq8N*EpV-C5pU9h&pojFnpSdh^pS%>PpmV$Zj8XW~>
+o`+afqWR\:pZ;/1pYtr+ptti&pYGSupY,AopXf6Aj8XW~>
+o`+afqWR\:pZ;/1pYtr+ptti&pYGSupY,AopXf6Aj8XW~>
+o`+afqSi3FpV-C5pU9h&pojFnpSdh^pS%>PpR:pYj8XW~>
+o`+afqrme;pZ;/1pYtr+ptti&pYGSupY,AopX]Dqq>fRUJ,~>
+o`+afqrme;pZ;/1pYtr+ptti&pYGSupY,AopX]Dqq>fRUJ,~>
+o`+afqo/<GpV-C5pU9h&pojFnpSdh^pS%>PpR2)Jq>fRUJ,~>
+o`+afr93n<pZ;/1pYtr+ptti&pYGSupY,AopXfGqq>fRUJ,~>
+o`+afr93n<pZ;/1pYtr+ptti&pYGSupY,AopXfGqq>fRUJ,~>
+o`+afr5JEHpV-C5pU9h&pojFnpSdh^pS%>PpR;,Jq>fRUJ,~>
+o`+afrTO"=pZ;/1pYtr+ptti&pYGSupY,AopXfDpq>fRUJ,~>
+o`+afrTO"=pZ;/1pYtr+ptti&pYGSupY,AopXfDpq>fRUJ,~>
+o`+afrPeNIpV-C5pU9h&pojFnpSdh^pS%>PpR;)Iq>fRUJ,~>
+o`+afroj+>pZ;/1pYtr+ptti&pYGSupY,AopXfAoq>fRUJ,~>
+o`+afroj+>pZ;/1pYtr+ptti&pYGSupY,AopXfAoq>fRUJ,~>
+o`+afrl+WJpV-C5pU9h&pojFnpSdh^pS%>PpR;&Hq>fRUJ,~>
+o`+afs604?pZ;/1pYtr+ptti&pYGSupY,AopXf>nq>fRUJ,~>
+o`+afs604?pZ;/1pYtr+ptti&pYGSupY,AopXf>nq>fRUJ,~>
+o`+afs2F`KpV-C5pU9h&pojFnpSdh^pS%>PpR;#Gq>fRUJ,~>
+o`+af!9j1?s5i^fmDJn>r878*!8[(ZmD/_9qUbVpq>fRUJ,~>
+o`+af!9j1?s5i^fmDJn>r878*!8[(ZmD/_9qUbVpq>fRUJ,~>
+o`+af!6+]Ks1\<<pU9h'pTsh'r3,jr!3#[rpTF7mpT+:nqO7;Iq>fRUJ,~>
+o`+afpZMP;f<bG5pYPr+f<bA+qUPEBj8XW~>
+o`+afpZMP;f<bG5pYPr+f<bA+qUPEBj8XW~>
+o`+afpVHjCf<bFZpT4Cnf<b@CqNgsXj8XW~>
+o`+afpuhV;f<bJ6pYPo*f<bD,q:5<Aj8XW~>
+o`+afpuhV;f<bJ6pYPo*f<bD,q:5<Aj8XW~>
+o`+afpqcpCf<bI[pT4@mf<bCDq3LjWj8XW~>
+o`+afq<.\;f<bM7pYPl)f<bG-pso3@j8XW~>
+o`+afq<.\;f<bM7pYPl)f<bG-pso3@j8XW~>
+o`+afq8*!Cf<bL\pT4=lf<bFEpm1aVj8XW~>
+o`+afqWIb;f<YJ7pYPi(f<bJ.pXT*?j8XW~>
+o`+afqWIb;f<YJ7pYPi(f<bJ.pXT*?j8XW~>
+o`+afqSE'Cf<YI\pT4:kf<bIFpQkXUj8XW~>
+o`+afqrdh;f<b5.qq]l1s4@"q!7^iFj8XW~>
+o`+afqrdh;f<b5.qq]l1s4@"q!7^iFj8XW~>
+o`+afqn`-Cf<b4Qql&,Qs-i\J!0[0Yj8XW~>
+o`+afr9*n;f<b8/qVBc0!8$tqs4$lFj8XW~>
+o`+afr9*n;f<b8/qVBc0!8$tqs4$lFj8XW~>
+o`+afr5&3Cf<b7RqP`#P!1NYJs-!3Yj8XW~>
+o`+afrTEt;p;H@9p;6X^q;(_[mD/J2pXT8mq>fRUJ,~>
+o`+afrTEt;p;H@9p;6X^q;(_[mD/J2pXT8mq>fRUJ,~>
+o`+afrPA9C!4V^2pU'\$pp'k'q5jCjs0)1"pT=1jpT!tRrf[*Xj8XW~>
+o`+afroa%;pZ2).pYko)pYPZ#pY5GrpXo5lpXT5lq>fRUJ,~>
+o`+afroa%;pZ2).pYko)pYPZ#pY5GrpXo5lpXT5lq>fRUJ,~>
+o`+afrk\?CpU^+-pTsXupT4+fpS@PWpRV&IpQkc@q>fRUJ,~>
+o`+afs6'.<pZ2).pYko)pYPZ#pY5GrpXo5lpXT2kq>fRUJ,~>
+o`+afs6'.<pZ2).pYko)pYPZ#pY5GrpXo5lpXT2kq>fRUJ,~>
+o`+afs2"HDpU^+-pTsXupT4+fpS@PWpRV&IpQk`?q>fRUJ,~>
+o`+af!9a+<pZ2).pYko)pYPZ#pY5GrpXo5lpXT/jq>fRUJ,~>
+o`+af!9a+<pZ2).pYko)pYPZ#pY5GrpXo5lpXT/jq>fRUJ,~>
+o`+af!5\EDpU^+-pTsXupT4+fpS@PWpRV&IpQk]>q>fRUJ,~>
+o`+afpZ;/1pYtr+ptti&pYGSupY,AopXf/iqUG?Aj8XW~>
+o`+afpZ;/1pYtr+ptti&pYGSupY,AopXf/iqUG?Aj8XW~>
+o`+afpV-C5pU9h&pojFnpSdh^pS%>PpR:iBqNC[Tj8XW~>
+o`+afpuV82pYtr+ptti&pYGSupY,AopXf/iq:,6@j8XW~>
+o`+afpuV82pYtr+ptti&pYGSupY,AopXf/iq:,6@j8XW~>
+o`+afpqHL6pU9h&pojFnpSdh^pS%>PpR:iBq3(RSj8XW~>
+o`+afq;qA3pYtr+ptti&pYGSupY,AopXf/ipsf-?j8XW~>
+o`+afq;qA3pYtr+ptti&pYGSupY,AopXf/ipsf-?j8XW~>
+o`+afq7cU7pU9h&pojFnpSdh^pS%>PpR:iBplbIRj8XW~>
+o`+afqW7J4pYtr+ptti&pYGSupY,AopXf/ipXK$>j8XW~>
+o`+afqW7J4pYtr+ptti&pYGSupY,AopXf/ipXK$>j8XW~>
+o`+afqS)^8pU9h&pojFnpSdh^pS%>PpR:iBpQG@Qj8XW~>
+o`+afqrRS5pYtr+ptti&pYGSupY,AopXf/ipXB2kq>fRUJ,~>
+o`+afqrRS5pYtr+ptti&pYGSupY,AopXf/ipXB2kq>fRUJ,~>
+o`+afqnDg9pU9h&pojFnpSdh^pS%>PpR:iBpQ>N;q>fRUJ,~>
+o`+afr8m\6pYtr+ptti&pYGSupY,AopXf/ipXK5kq>fRUJ,~>
+o`+afr8m\6pYtr+ptti&pYGSupY,AopXf/ipXK5kq>fRUJ,~>
+o`+afr4_p:pU9h&pojFnpSdh^pS%>PpR:iBpQGQ;q>fRUJ,~>
+o`+afrT3e7pYtr+ptti&pYGSupY,AopXf/ipXK2jq>fRUJ,~>
+o`+afrT3e7pYtr+ptti&pYGSupY,AopXf/ipXK2jq>fRUJ,~>
+o`+afrP&$;pU9h&pojFnpSdh^pS%>PpR:iBpQGN:q>fRUJ,~>
+o`+afroNn8pYtr+ptti&pYGSupY,AopXf/ipXK/iq>fRUJ,~>
+o`+afroNn8pYtr+ptti&pYGSupY,AopXf/ipXK/iq>fRUJ,~>
+o`+afrkA-<pU9h&pojFnpSdh^pS%>PpR:iBpQGK9q>fRUJ,~>
+o`+afs5j"9pYtr+ptti&pYGSupY,AopXf/ipXK,hq>fRUJ,~>
+o`+afs5j"9pYtr+ptti&pYGSupY,AopXf/ipXK,hq>fRUJ,~>
+o`+afs1\6=pU9h&pojFnpSdh^pS%>PpR:iBpQGH8q>fRUJ,~>
+o`+af!9Nt9pYtr+ptti&pYGSupY,AopXf/ipXK)gq>fRUJ,~>
+o`+af!9Nt9pYtr+ptti&pYGSupY,AopXf/ipXK)gq>fRUJ,~>
+o`+af!5A3=pU9h&pojFnpSdh^pS%>PpR:iBpQGE7q>fRUJ,~>
+o`+afpZ2).pYko)pYPZ#pY5GrpXo5lpXT#fqU53?j8XW~>
+o`+afpZ2).pYko)pYPZ#pY5GrpXo5lpXT#fqU53?j8XW~>
+o`+afpU^+-pTsXupT4+fpS@PWpRV&IpQkQ:qN(IQj8XW~>
+o`+afpuM2/pYko)pYPZ#pY5GrpXo5lpXT#fq9o*>j8XW~>
+o`+afpuM2/pYko)pYPZ#pY5GrpXo5lpXT#fq9o*>j8XW~>
+o`+afpq$4.pTsXupT4+fpS@PWpRV&IpQkQ:q2b@Pj8XW~>
+o`+afq;h;0pYko)pYPZ#pY5GrpXo5lpXT#fpsT!=j8XW~>
+o`+afq;h;0pYko)pYPZ#pY5GrpXo5lpXT#fpsT!=j8XW~>
+o`+afq7?=/pTsXupT4+fpS@PWpRV&IpQkQ:plG7Oj8XW~>
+o`+afqW.D1pYko)pYPZ#pY5GrpXo5lpXT#fpX8m<j8XW~>
+o`+afqW.D1pYko)pYPZ#pY5GrpXo5lpXT#fpX8m<j8XW~>
+o`+afqRZF0pTsXupT4+fpS@PWpRV&IpQkQ:pQ,.Nj8XW~>
+o`+afnP&@Dm7Qb;m7?V7p."lYj8XW~>
+o`+afnP&@Dm7Qb;m7?V7p."lYj8XW~>
+o`+afq`aa;pH844pH&%.pG_h)pGM\%pG2ItpFlS#q>fRUJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'IBo`4%PJ,~>
+o`'JBoi:&PJ,~>
+o`'JBoi:&PJ,~>
+o`'JBoi:&PJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+JcEmmJ,~>
+%%EndData
+showpage
+%%Trailer
+end
+%%EOF
diff --git a/macros/latex/contrib/beamer/base/art/beamericonarticle.pdf b/macros/latex/contrib/beamer/base/art/beamericonarticle.pdf
new file mode 100644
index 0000000000..4919174302
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonarticle.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/base/art/beamericonarticle.tex b/macros/latex/contrib/beamer/base/art/beamericonarticle.tex
new file mode 100644
index 0000000000..6ce94c5508
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonarticle.tex
@@ -0,0 +1,115 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[12pt]{article}
+
+\usepackage{pgf,pgfshade}
+\usepackage{color}
+
+\usepackage[papersize={11pt,14pt},hmargin=0pt,vmargin=0pt,headsep=0pt,nohead,nofoot]{geometry}
+
+\pagestyle{empty}
+
+\begin{document}
+\begin{colormixin}{20}%
+ \pgfdeclareverticalshading{shadow}{20pt}{%
+ rgb(0pt)=(.2,.2,.2);
+ rgb(11pt)=(1,1,1)}%
+ \pgfdeclareverticalshading{paper}{20pt}{%
+ rgb(0pt)=(0.8,0.8,0.5);
+ rgb(15pt)=(1,1,1)}%
+ \pgfdeclareverticalshading{pic}{2.5pt}{%
+ rgb(0pt)=(0.25,0.75,0.25);
+ rgb(1.5pt)=(0.75,0.25,0.25);
+ rgb(3.5pt)=(0.25,0.25,0.75)}%
+ \pgfdeclareverticalshading{corner}{2pt}{%
+ rgb(0pt)=(0.5,0.5,0);
+ rgb(2pt)=(0.8,0.8,0.8)}%
+ \noindent\hbox{%
+ \begin{pgfpicture}{-1pt}{-2pt}{10pt}{12pt}
+ \pgfsetxvec{\pgfpoint{1pt}{0pt}}
+ \pgfsetyvec{\pgfpoint{0pt}{1pt}}
+ \pgfsetlinewidth{0.4pt}
+
+ % \begin{pgfscope}
+ % \color[gray]{0.7}
+ % \pgfmoveto{\pgfxy(0.6,-1)}
+ % \pgflineto{\pgfxy(9,-1)}
+ % \pgflineto{\pgfxy(9,8.2)}
+ % \pgflineto{\pgfxy(6.8,10.4)}
+ % \pgflineto{\pgfxy(0.6,10.4)}
+ % \pgfclip
+
+ % \pgfputat{\pgfxy(0.6,-10)}
+ % {%
+ % \begin{pgfrotateby}{\pgfdegree{45}}
+ % \pgfbox[left,base]{\pgfuseshading{shadow}}
+ % \end{pgfrotateby}
+ % }
+ % \end{pgfscope}
+
+ \begin{pgfscope}
+ \pgfmoveto{\pgfxy(0,0)}
+ \pgflineto{\pgfxy(8,0)}
+ \pgflineto{\pgfxy(8,9)}
+ \pgflineto{\pgfxy(6,9)}
+ \pgflineto{\pgfxy(6,11)}
+ \pgflineto{\pgfxy(0,11)}
+ \pgfclip
+
+ \pgfputat{\pgfxy(0,-10)}
+ {%
+ \begin{pgfrotateby}{\pgfdegree{45}}
+ \pgfbox[left,base]{\pgfuseshading{paper}}
+ \end{pgfrotateby}
+ }
+ \end{pgfscope}
+
+ \begin{pgfscope}
+ \pgfmoveto{\pgfxy(8,9)}
+ \pgflineto{\pgfxy(6,9)}
+ \pgflineto{\pgfxy(6,11)}
+ \pgfclip
+
+ \pgfputat{\pgfxy(6,9)}{\pgfbox[left,base]{\pgfuseshading{corner}}}
+ \end{pgfscope}
+
+ \pgfmoveto{\pgfxy(0,0)}
+ \pgflineto{\pgfxy(8,0)}
+ \pgflineto{\pgfxy(8,9)}
+ \pgflineto{\pgfxy(6,11)}
+ \pgflineto{\pgfxy(0,11)}
+ \pgfclosepath
+ \pgfstroke
+
+ \color[gray]{0.5}
+ \pgfxyline(1,9.5)(6,9.5)
+ \color[gray]{0.6}
+ \pgfxyline(2,8)(6,8)
+ \pgfxyline(2,7)(6,7)
+
+ \color[gray]{0.7}
+ \pgfxyline(1,5.5)(3.5,5.5)
+ \pgfxyline(1,4.5)(3.5,4.5)
+ \pgfxyline(1,3.5)(3.5,3.5)
+ \pgfxyline(1,2.5)(3.5,2.5)
+ \pgfxyline(1,1.5)(3.5,1.5)
+
+ \pgfputat{\pgfxy(4.5,2.25)}{\pgfbox[left,base]{\pgfuseshading{pic}}}
+ \pgfxyline(4.5,1.5)(7,1.5)
+
+ \color{black}
+ \pgfmoveto{\pgfxy(8,9)}
+ \pgflineto{\pgfxy(6,9)}
+ \pgflineto{\pgfxy(6,11)}
+ \pgfstroke
+ \end{pgfpicture}%
+ }%
+\end{colormixin}%
+\end{document}
diff --git a/macros/latex/contrib/beamer/base/art/beamericonbook.20.eps b/macros/latex/contrib/beamer/base/art/beamericonbook.20.eps
new file mode 100644
index 0000000000..750f5e60a1
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonbook.20.eps
@@ -0,0 +1,537 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: GIMP PostScript file plugin V 1.12 by Peter Kirchgessner
+%%Title: /n/mappazza/home4/algo/tantau/texmf/tex/latex/classes/latex-beamer/beamericonbook.20.eps
+%%CreationDate: Wed Oct 29 13:59:19 2003
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 14 14 29 27
+%%EndComments
+%%BeginProlog
+% Use own dictionary to avoid conflicts
+10 dict begin
+%%EndProlog
+%%Page: 1 1
+% Translate for offset
+14.173228 14.173228 translate
+% Translate to begin of first scanline
+0.000000 11.952000 translate
+13.968000 -11.952000 scale
+% Image geometry
+194 166 8
+% Transformation matrix
+[ 194 0 0 166 0 0 ]
+% Strings to hold RGB-samples per scanline
+/rstr 194 string def
+/gstr 194 string def
+/bstr 194 string def
+{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
+true 3
+%%BeginData: 23693 ASCII Bytes
+colorimage
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+XoACqrpTgJ!:QHXJ,~>
+XoACqrpTgJ!:QHXJ,~>
+XoACqrpTgJ!:QHXJ,~>
+ZN'pmp#Z8KT)X<~>
+ZN'pmp#Z8KT)X<~>
+ZN'pmp#Z8KT)X<~>
+\GlR'rpTOB!8RM7!;E,cJ,~>
+\GlR'rpTOB!8RM7!;E,cJ,~>
+\GlR'rpTOB!8RM7!;E,cJ,~>
+^&S*#p#Z85rnRJ(!SlZ5joFkCs*t~>
+^&S*#p#Z85rnRJ(!SlZ5joFkCs*t~>
+^&S*#p#Z85rnRJ(!SlZ5joFkCs*t~>
+_uB`2rpTOBrnR1u!9*q>!:QW]J,~>
+_uB`2rpTOBrnR1u!9*q>!:QW]J,~>
+_uB`2rpTOBrnR1u!9*q>!:QW]J,~>
+aT)8.p#Z85rnQto!8RS9!:QZ^J,~>
+aT)8.p#Z85rnQto!8RS9!:QZ^J,~>
+aT)8.p#Z85rnQto!8RS9!:QZ^J,~>
+cMmn=rpTOBrnQ_h!8RS9!UocYs*t~>
+cMmn=rpTOBrnQ_h!8RS9!UocYs*t~>
+cMmn=rpTOBrnQ_h!8RS9!UocYs*t~>
+e,TF9p#Z85rnQMb!8RP8!;E>iJ,~>
+e,TF9p#Z85rnQMb!8RP8!;E>iJ,~>
+e,TF9p#Z85rnQMb!8RP8!;E>iJ,~>
+g&D'HrpTOBrnQ5Z!9*q>!;EAjJ,~>
+g&D'HrpTOBrnQ5Z!9*q>!;EAjJ,~>
+g&D'HrpTOBrnQ5Z!9*q>!;EAjJ,~>
+hZ*TDp#Z85rnQMbs4mb:ki;Hi!9*q>!:QicJ,~>
+hZ*TDp#Z85rnQMbs4%2#e("0E!9*q>!:QicJ,~>
+hZ*TDp#Z85rnQMbs4.8%eCF?G!9*q>!:QicJ,~>
+jSo5SrpTOBrnQMb!oMhiq<.h=pt#N)roO4LW;hA~>
+jSo5SrpTOBrnQJas4-qo!7^eq!9*q>!:QldJ,~>
+jSo5SrpTOBrnQMb!nc)Tq:#Dppt#N)roO4LW;hA~>
+l2UbOp#Z85rnQMbs5*h=rU'@C!9<k+!8RS9!:QoeJ,~>
+l2UbOp#Z85rnQ8[pX9,lpt#N$roO4LWW.J~>
+l2UbOp#Z85rnQMbs4I8&pXB2npt#N$roO4LWW.J~>
+n,EC^rpTOBrnQMbrnmG:p?2M4q:>W%rT4+SX8d\~>
+n,EC^rpTOBrnQ#Tp<s#lq:>W%rT4+SX8d\~>
+n,EC^rpTOBrnQMbrn-qtp=')nq:>W%rT4+SX8d\~>
+o`+pZp#Z85rnQMbs5*h=nEor5!8[J&!SlZ5joG.Ws*t~>
+o`+pZp#Z85rnPfNp<s#lq:>Z&iVqs>pT4CF~>
+o`+pZp#Z85rnQMbs4Henp=')nq:>Z&iVqs>pT4CF~>
+p\t9gn+PoCgu?rbhs'P%kQ'H6f)Xe/joFkPs*t~>
+p\t9gn+PoCgrJ%?df@qnf)Xe/joFkPs*t~>
+p\t9gn+PoCgu?rbf]h)_e,\(pf)Xe/joFkPs*t~>
+q#:?gqW7e:rnQMbs5*h=j6cR(!9<k+!9*q>!:R)jJ,~>
+q#:?gqW7e:rnP?Ap<s#kpt#N)roO4LY5a"~>
+q#:?gqW7e:rnQMbs4H>ap=')mpt#N)roO4LY5a"~>
+q>UHhrT=.8in"7ihr!5Vp?2M:pt#N$roO4LYQ'+~>
+q>UHhrT=.8in"1_g=Q&I!7^eq!8RS9!:R,kJ,~>
+q>UHhrT=.8in"7bf\#!4p=')mpt#N$roO4LYQ'+~>
+q>UQck2tX`fDjb/kl(#)mIo`Ej5'O_!8RS9!Uocfs*t~>
+q>UQck2tX`fDjM$g"P'OdfItKq:>W%roO7MpTaaK~>
+q>UQck2tX`fDjM(g\op]g%Nnre^jQJ!8RS9!Uocfs*t~>
+qYpQiroWIsro!M>g?nRs!8[J&!8RP8!;Ef!J,~>
+qYpQiroWIsrn-qtg=Q#H!7gns!8RP8!;Ef!J,~>
+qYpQiroWIsrn7##g=c/K!7ptt!8RP8!;Ef!J,~>
+qYpZdk2tIefDjb/kj\)qmIfZCh>#S%iVqs>pTsmM~>
+qYpZdk2tIefDjLlg"P'Ndf@qnf)Xe/joG.^s*t~>
+qYpZdk2tIefDjM(g[O"Pg%Ehpf(dhsiVqs>pTsmM~>
+qZ$QW!8R4us5=+=o()>@mI8isp#lD9pt#N)roO4L[/YX~>
+qZ$QW!8R4us4[\1hr!5EmFg4Fp!Wojpt#N)roO4L[/YX~>
+qZ$QW!8R4urnIJ3s5*.ug=c/K!7gkr!9*q>!:R;pJ,~>
+qu6cek2tXtf)jsjli-PVoD\=\na5i"mIfZCj7q4+iVqs>n$W1G~>
+qu6cek2tXtf)jgbj8S0?ir7j8h!NeKfCdSmeG.VqiVqs>n$W1G~>
+qu6cek2tXtf)jgbj8S3@j8S$;hX0+Pg%EhpebI_riVqs>n$W1G~>
+qu6cek2tIrfDkUEpAagbo`+O^o)J7InCm:&kQ'Z<f)XV*joFkYs*t~>
+qu6cek2tIrfDk:<li62Jjo=?>huDL!g"P'Ndf@nmf)XV*joFkYs*t~>
+qu6cek2tIrfDk:<li62Jk5XK@iW%d%gtLHSe,\%of)XV*joFkYs*t~>
+qu?ZXqpti-rqHEcs7QB`s7?6\s7,LGg?nOr!8[J&!8RP8!;F#'J,~>
+qu?ZXqpti*rpKdOs60IDs5O%8s4m"pg=PuG!7gns!8RP8!;F#'J,~>
+qu?ZXqpti*rpKdOs60IEs5X+;s5*.ug=c,J!7ptt!8RP8!;F#'J,~>
+r;Qlfk2tY"f)Y4:p\smdp&=U`oD\=\na5i"mI]TBh>,Y'gu87p!;F&(J,~>
+r;Qlfk2tY"f)Y"4mf)PPkl0]Dir7j8h!NeKfC[MlebRetgu87p!;F&(J,~>
+r;Qlfk2tY"f)Y"4mf)PPkl0`Ej8S$;hX0+Pg%<bof(mnugu87p!;F&(J,~>
+r;Qlfk2tIrfDG=ApAagbo`+O^o)J7InCm:%kQ'H6f)Xe/joFk]s*t~>
+r;Qlfk2tIrf)Y18mf)PPkl0]Dir7j8h!NeKfC[MlebI_riVqs>n%/OL~>
+r;Qlfk2tIrf)Y.7mf)PPkl0`Ej8S$;hX0+Pg%<bof(dhsiVqs>n%/OL~>
+r;ZcYqpti-qY1!_s7QB`s7?6\s7,LGg?nOr!9<k+!9*q>!:RQ"J,~>
+r;ZcYqpto)m-OZ<rp0UJroO1>rnmb2mFg4Fo[<fipt#N)roO4L]DmB~>
+r;ZcYqpto)lg+K:rp0UJroX7@ro*n6mG-FKo[Elkpt#N)roO4L]DmB~>
+r;ZfZ!8RJ'!UTOVp\smdp&=U`oD\=\na5i"mI]TBj7q4+h#?F9n%A[N~>
+r;ZfZ!8RJ'"6&D/m/6;Nli62Jjo=?>huDL!g"P'Mdf@nmf)XV*joFk_s*t~>
+r;ZfZ!8RJ'"6&D.lhp2Mli62Jk5XK@iW%d%gtLHRe,\%of)XV*joFk_s*t~>
+rVlugk2tIsf)Xh0pA4O_pAagbo`+O^o)J7InCm:%kQ0`"q:>W%roO7MpV-ZX~>
+rVlugk2tIsf*0skjlYprr9jRMs60IDs5O%8s4m"pg=PuG!S#Zqf)XV*joOrF^Ai]~>
+rVlugk2tIsf*0skjlYmpr9jRMs60IEs5X+;s5*.ug=c,J!S,csf)XV*joOrF^Ai]~>
+rVlugk2tIsf)Xh/pA4O_pAagbo`+O^o)J7InCm:$kQ'H7f)XV)joG.js*t~>
+rVlugk2tIsf)XV*jT=T2m/6;Nli62Jjo=?>huDL!g"P'Ldf@qof)XV)joG.js*t~>
+rVlugk2tIsf)XV*jT=T1lhp2Mli62Jk5XK@iW%d%gtLHQe,\(qf)XV)joG.js*t~>
+rVlugk2tIsf)Xh.pA4O_pAagbo`+O^o)J7InCm:$kQ'H6f)Xe/joG.ks*t~>
+rVlugk2tIsf)XV)jT=T2m/6;Nli62Jjo=?>huDL!g"P'Ldf@qnf)Xe/joG.ks*t~>
+rVlugk2tIsf)XV)jT=T1lhp2Mli62Jk5XK@iW%d%gtLHQe,\(pf)Xe/joG.ks*t~>
+rVulZ!8RM(!93nLqY1!_s7QB`s7?6\s7,LGg?nLq!9<k+!9*q>!:Rc(J,~>
+rVulZ!8RM(!8RM6!p8k9r9jRMs60IDs5O%8s4m"pg=PrF!7^eq!9*q>!:Rc(J,~>
+rVulZ!8RM(!8RM6!p8h7r9jRMs60IEs5X+;s5*.ug=c)I!7gkr!9*q>!:Rc(J,~>
+rVulZqpti8qY'd[rq?Bbrq-6^rpp*ZmI8isoB627pt#N)roO4L_Z,,~>
+rVulZqpti,qrInAm-OZ<rp0UJroO1>rnmb2mFg4Fo@!]hpt#N)roO4L_Z,,~>
+rVulZqpti,qrInAlg+K:rp0UJroX7@ro*n6mG-FKo@*cjpt#N)roO4L_Z,,~>
+rVulZqq(lBqY'd[rq?Bbrq-6^rpp*ZmI8isoB627pt#N$roO4L_uG5~>
+rVulZqq(Z*!p8k9r9jRMs60IDs5O%8s4m"pg=PrF!7^eq!8RS9!:Ri*J,~>
+rVulZqq(Z*!p8h7r9jRMs60IEs5X+;s5*.ug=c)I!7gkr!8RS9!:Ri*J,~>
+rVulZqq(iAqY'd[rq?Bbrq-6^rpp*ZmI8iso&p)0q:>W%rT4+S`W(G~>
+rVulZqq(W)!p8k9r9jRMs60IDs5O%8s4m"pg=PoE!7gns!8RP8!;FJ4J,~>
+rVulZqq(W)!p8h7r9jRMs60IEs5X+;s5*.ug=c&H!7ptt!8RP8!;FJ4J,~>
+rVuo[!9*h,rV-0^qY1!_s7QB`s7?6\s7,LGg?nIp!8[J&!SlZ5joG.qs*t~>
+rVuo[!9*h,pZ2J=m-OZ<rp0UJroO1>rnmb2mFg4Fo$[Thq:>Z&iVqs>pW!5`~>
+rVuo[!9*h,pZ2J=lg+K:rp0UJroX7@ro*n6mG-FKo$dZjq:>Z&iVqs>pW!5`~>
+rVuo[!8RJ'r:g']qY1!_s7QB`s7?6\s7,LGg?nIp!8[G%!9*q>!:Ru.J,~>
+rVuo[!8RJ'p>lA<m-OZ<rp0UJroO1>rnmb2mFg4Fo$[Thpt#N)roO4La8^Y~>
+rVuo[!8RJ'p>lA<lg+K:rp0UJroX7@ro*n6mG-FKo$dZjpt#N)roO4La8^Y~>
+rVuo[!8RJ'qtKs\qY1!_s7QB`s7?6\s7,LGg?nIp!9<k+!9*q>!:S#/J,~>
+rVuo[!8RJ'p#Q8;m-OZ<rp0UJroO1>rnmb2mFg4Fo$[Tgpt#N)roO4LaT$b~>
+rVuo[!8RJ'p#Q8;lg+K:rp0UJroX7@ro*n6mG-FKo$dZipt#N)roO4LaT$b~>
+rVulZqq(]=qY'd[rq?Bbrq-6^rpp*ZmI8iso&p)6pt#N$roO4Lao?k~>
+rVulZqq(K%!p8k9r9jRMs60IDs5O%8s4m"pg=PoE!7^eq!8RS9!:S&0J,~>
+rVulZqq(K%!p8h7r9jRMs60IEs5X+;s5*.ug=c&H!7gkr!8RS9!:S&0J,~>
+rVulZqq(Z<qY'd[rq?Bbrq-6^rpp*ZmI8iso&p,7h>,Y&h#?F:n+Y$*J,~>
+rVulZqq(H$!p8k9r9jRMs60IDs5O%8s4m"pg=PoE!S#Zqf)XV*joOrFbQ!(~>
+rVulZqq(H$!p8h7r9jRMs60IEs5X+;s5*.ug=c&H!S,csf)XV*joOrFbQ!(~>
+rVulZqq(W;qY'd[rq?Bbrq-6^rpp*ZmI8isn`Tu/q:>W%rT4+Sbl<1~>
+rVulZqq(E#!p8k9r9jRMs60IDs5O%8s4m"pg=PlD!7gns!8RP8!;F_;J,~>
+rVulZqq(E#!p8h7r9jRMs60IEs5X+;s5*.ug=c#G!7ptt!8RP8!;F_;J,~>
+rVulZqpti-q"OXYqY1!_s7QB`s7?6\s7,LGg?nFo!8[G%!9*q>!;Fb<J,~>
+rVulZqpti'o&Tr8m-OZ<rp0UJroO1>rnmb2mFg4Fn^@Kgpt#N)roO4Tc2W:~>
+rVulZqpti'o&Tr8lg+K:rp0UJroX7@ro*n6mG-FKn^IQipt#N)roO4Tc2W:~>
+rVlugk2tIsf)Xh)p\OU[p\smdp&=U`oD\=\na5i"mIBB?j7q4+iVqs>n':r`~>
+rVlugk2tIsf)XUrjT=T2m/6;Nli62Jjo=?>huDL!g"P'Jdf@nmf)Xe/joFkqs*t~>
+rVlugk2tIsf)XUrjT=T1lhp2Mli62Jk5XK@iW%d%gtLHOe,\%of)Xe/joFkqs*t~>
+rVlugk2tIsf)Xh(p\OU[p\smdp&=U`oD\=\na5i"mIBB?j7q4+iVqs>n'D#a~>
+rVlugk2tIsf)a[hn`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fn^@Kfpt#N)roO4Lci8L~>
+rVlugk2tIsf)a[hn`9i7lg+K:rp0UJroX7@ro*n6mG-FKn^IQhpt#N)roO4Lci8L~>
+rVlugk2tIsf)Xh'p\OU[p\smdp&=U`oD\=\na5i"mIBB?j7q4+h#?F9n'M)b~>
+rVlugk2tIsf)jaik4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfC@;ieG.Vqh#?F9n'M)b~>
+rVlugk2tIsf)jaik4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg%!PlebI_rh#?F9n'M)b~>
+rVluok2tIrfC\h6pA4O_pAagbo`+O^o)J7InCm:!kQ'H7f)XV)joG/(s*t~>
+rVluok2tIrfDaq&jT=T2m/6;Nli62Jjo=?>huDL!g"P'Idf@qof)XV)joG/(s*t~>
+rVluok2tIrfDaq&jT=T1lhp2Mli62Jk5XK@iW%d%gtLHNe,\(qf)XV)joG/(s*t~>
+r;ZfZ!9*h,!:BFQqY'd[rq?Bbrq-6^rpp*ZmI8isnE9l.q:>Z&iVqs>pXB.m~>
+r;ZfZ!9*h,!9*q>n`9i7m-OZ<rp0UJroO1>rnmb2mFg4FnC%Bfq:>Z&iVqs>pXB.m~>
+r;ZfZ!9*h,!9*q>n`9i7lg+K:rp0UJroX7@ro*n6mG-FKnC.Hhq:>Z&iVqs>pXB.m~>
+r;ZcYqpti-oCr+TqY1!_s7QB`s7?6\s7,LGg?nCn!8[G%!9*q>!:SG;J,~>
+r;ZcYqpti'rT<Y3!p8k9r9jRMs60IDs5O%8s4m"pg=PiC!7gkr!9*q>!:SG;J,~>
+r;ZcYqpti'rT<Y3!p8h7r9jRMs60IEs5X+;s5*.ug=buF!7pqs!9*q>!:SG;J,~>
+r;Qlfk2tIrfCJ\4pA4O_pAagbo`+O^o)J7InCm:!kQ'Z<f)Xe/joFl#s*t~>
+r;Qlfk2tIrfDOe$jT=T2m/6;Nli62Jjo=?>huDL!g"P'Idf@nmf)Xe/joFl#s*t~>
+r;Qlfk2tIrfDOe$jT=T1lhp2Mli62Jk5XK@iW%d%gtLHNe,\%of)Xe/joFl#s*t~>
+r;Qlnk2tY"f)Xh$p\OU[p\smdp&=U`oD\=\na5i"mI9<>j7q4+h#?F9n(.Mh~>
+r;Qlnk2tY"f)XV(k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfC75heG.Vqh#?F9n(.Mh~>
+r;Qlnk2tY"f)XV(k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$mJkebI_rh#?F9n(.Mh~>
+qu?ZX!8RM(!93PCqY'd[rq?Bbrq-6^rpp*ZmI8isnE9o5h>,Y&h#?F:n+YK7J,~>
+qu?ZX!8RM(!8RJ6n`9i7m-OZ<rp0UJroO1>rnmb2mFg4FnC%EfebResh#?F:n+YK7J,~>
+qu?ZX!8RM(!8RJ6n`9i7lg+K:rp0UJroX7@ro*n6mG-FKnC.Khf(mnth#?F:n+YK7J,~>
+qu6cek2tIrf)Y4.p\OU[p\smdp&=U`oD\=\na5i"mI06=h>,Y&h#6@8pY#Rs~>
+qu6cek2tIrf)Xe,k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfC./gebResh#6@8pY#Rs~>
+qu6cek2tIrf)Xe,k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$dDjf(mnth#6@8pY#Rs~>
+qu6ZjroX+0!93MBqY'd[rq?Bbrq-6^rpp*ZmI8isn)sc-pt#N)roO4TgAc[~>
+qu6ZjroX+0!8RG5n`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fn'_9ept#N)roO4TgAc[~>
+qu6ZjroX+0!8RG5n`9i7lg+K:rp0UJroX7@ro*n6mG-FKn'h?gpt#N)roO4TgAc[~>
+qZ$QW!8RJ'!93MBqY'd[rq?Bbrq-6^rpp*ZmI8isn)sc3pt#N)roO4Lg])d~>
+qZ$QW!8RJ'!8RG5n`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fn'_9dpt#N)roO4Lg])d~>
+qZ$QW!8RJ'!8RG5n`9i7lg+K:rp0UJroX7@ro*n6mG-FKn'h?fpt#N)roO4Lg])d~>
+qYpZdk2tY!f)Y4-p\OU[p\smdp&=U`oD\=\na5i"mI06=j7q4+iVqs>n(dqn~>
+qYpZdk2tY!f)Xe+k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfC./geG.VqiVqs>n(dqn~>
+qYpZdk2tY!f)Xe+k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$dDjebI_riVqs>n(dqn~>
+q>^HV!8RG&!:B:MqY'd[rq?Bbrq-6^rpp*ZmI8isn)sc3pt#N$roO4Lh>`!~>
+q>^HV!8RG&!9*e:n`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fn'_9dpt#N$roO4Lh>`!~>
+q>^HV!8RG&!9*e:n`9i7lg+K:rp0UJroX7@ro*n6mG-FKn'h?fpt#N$roO4Lh>`!~>
+q>UQck2tXuf)Y4-p\OU[p\smdp&=U`oD\=\na5i"mI'0<h>,Y&h#6@8pYZ"$~>
+q>UQck2tXuf)Xe+k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfC%)febResh#6@8pYZ"$~>
+q>UQck2tXuf)Xe+k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$[>if(mnth#6@8pYZ"$~>
+q#:Hbk2tXuf)Y4-p\OU[p\smdp&=U`oD\=\na5i"mI'0<h>,Y'gu87p!;GFOJ,~>
+q#:Hbk2tXuf)Xe+k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfC%)febRetgu87p!;GFOJ,~>
+q#:Hbk2tXuf)Xe+k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$[>if(mnugu87p!;GFOJ,~>
+q#:?groO4>q:>W6nFueQqY1!_s7QB`s7?6\s7,LGg?n=l!8[G%!9*q>!:SnHJ,~>
+q#:?groO4>q:>W*qW@>0!p8k9r9jRMs60IDs5O%8s4m"pg=PcA!7gkr!9*q>!:SnHJ,~>
+q#:?groO4>q:>W*qW@>0!p8h7r9jRMs60IEs5X+;s5*.ug=boD!7pqs!9*q>!:SnHJ,~>
+p\t6froO49q:G*0qY'd[rq?Bbrq-6^rpp*ZmI8ismcXZ2pt#N)roO4Lir=N~>
+p\t6froO49q:GH)n`9i7m-OZ<rp0UJroO1>rnmb2mFg4FmaD0cpt#N)roO4Lir=N~>
+p\t6froO49q:GH)n`9i7lg+K:rp0UJroX7@ro*n6mG-FKmaM6ept#N)roO4Lir=N~>
+pAY-eroO49qUY`,n+Z\PqY1!_s7QB`s7?6\s7,LGg?n=l!9<k+!8RS9!:StJJ,~>
+pAY-eroO49qUY`&q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=PcA!7^eq!8RS9!:StJJ,~>
+pAY-eroO49qUY`&q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=boD!7gkr!8RS9!:StJJ,~>
+p&>$droO49qUY`,n+Z\PqY1!_s7QB`s7?6\s7,LGg?n=l!TW#3f)XV*joOrFjo9i~>
+p&>$droO49qUY`&q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=PcA!S#Zqf)XV*joOrFjo9i~>
+p&>$droO49qUY`&q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=boD!S,csf)XV*joOrFjo9i~>
+o`"p[roO49qUY`,n+Z\PqY1!_s7QB`s7?6\s7,LGg?n:k!8[J&!8RP8!;GXUJ,~>
+o`"p[roO49qUY`&q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=P`@!7gns!8RP8!;GXUJ,~>
+o`"p[roO49qUY`&q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=blC!7ptt!8RP8!;GXUJ,~>
+oD\gZroO49qUY`,n+Z\PqY1!_s7QB`s7?6\s7,LGg?n:k!8[G%!9*q>!;G[VJ,~>
+oD\gZroO49qUY`&q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=P`@!7gkr!9*q>!;G[VJ,~>
+oD\gZroO49qUY`&q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=blC!7pqs!9*q>!;G[VJ,~>
+o)A^YroO49qUY`,n+Z\PqY1!_s7QB`s7?6\s7,LGg?n:k!9<k+!9*q>!:T.OJ,~>
+o)A^YroO49qUY`&q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=P`@!7^eq!9*q>!:T.OJ,~>
+o)A^YroO49qUY`&q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=blC!7gkr!9*q>!:T.OJ,~>
+nc&UXroX%.!93JAqY'd[rq?Bbrq-6^rpp*ZmI8ismH=Q1pt#N)roO4Ll2Q8~>
+nc&UXroX%.!8RD4n`9i7m-OZ<rp0UJroO1>rnmb2mFg4FmF)'bpt#N)roO4Ll2Q8~>
+nc&UXroX%.!8RD4n`9i7lg+K:rp0UJroX7@ro*n6mG-FKmF2-dpt#N)roO4Ll2Q8~>
+nG`UZk2tXuf)Y4,p\OU[p\smdp&=U`oD\=\na5i"mHs*;j7q4+h#?F9n*9q'~>
+nG`UZk2tXuf)Xe*k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfBq#eeG.Vqh#?F9n*9q'~>
+nG`UZk2tXuf)Xe*k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$R8hebI_rh#?F9n*9q'~>
+n,ELYk2tXuf)Y4,p\OU[p\smdp&=U`oD\=\na5i"mHj$:h>,Y&h#6@8p[%p1~>
+n,ELYk2tXuf)Xe*k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfBgrdebResh#6@8p[%p1~>
+n,ELYk2tXuf)Xe*k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$I2gf(mnth#6@8p[%p1~>
+mf3:K!9*b*!:B7LqY'd[rq?Bbrq-6^rpp*ZmI8ism-"H*q:>Z&iVqs>p[/!2~>
+mf3:K!9*b*!9*b9n`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fm*bsbq:>Z&iVqs>p[/!2~>
+mf3:K!9*b*!9*b9n`9i7lg+K:rp0UJroX7@ro*n6mG-FKm*l$dq:>Z&iVqs>p[/!2~>
+mf*:]roO4>q:>W6n+Z\PqY1!_s7QB`s7?6\s7,LGg?n7j!8[G%!9*q>!:T@UJ,~>
+mf*:]roO4>q:>W*q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=P]?!7gkr!9*q>!:T@UJ,~>
+mf*:]roO4>q:>W*q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=biB!7pqs!9*q>!:T@UJ,~>
+mJd1\roO4>q:>W6n+Z\PqY1!_s7QB`s7?6\s7,LGg?n7j!9<k+!9*q>!:TCVJ,~>
+mJd1\roO4>q:>W*q<%5/!p8k9r9jRMs60IDs5O%8s4m"pg=P]?!7^eq!9*q>!:TCVJ,~>
+mJd1\roO4>q:>W*q<%5/!p8h7r9jRMs60IEs5X+;s5*.ug=biB!7gkr!9*q>!:TCVJ,~>
+m/I([roO49q:G'/qY'd[rq?Bbrq-6^rpp*ZmI8ism-"H0pt#N$roO4LnGe"~>
+m/I([roO49q:GE(n`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fm*bsapt#N$roO4LnGe"~>
+m/I([roO49q:GE(n`9i7lg+K:rp0UJroX7@ro*n6mG-FKm*l$cpt#N$roO4LnGe"~>
+li-tZroO49qUY`,me?SOqY1!_s7QB`s7?6\s7,LGg?n7j!TW#3f)XV*joOrFo)F4~>
+li-tZroO49qUY`&pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=P]?!S#Zqf)XV*joOrFo)F4~>
+li-tZroO49qUY`&pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=biB!S,csf)XV*joOrFo)F4~>
+lMgkYroO49qUY`,me?SOqY1!_s7QB`s7?6\s7,LGg?n4i!8[J&!8RP8!;H*bJ,~>
+lMgkYroO49qUY`&pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=PZ>!7gns!8RP8!;H*bJ,~>
+lMgkYroO49qUY`&pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=bfA!7ptt!8RP8!;H*bJ,~>
+l2LbProO49qUY`,me?SOqY1!_s7QB`s7?6\s7,LGg?n4i!8[G%!9*q>!;H-cJ,~>
+l2LbProO49qUY`&pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=PZ>!7gkr!9*q>!;H-cJ,~>
+l2LbProO49qUY`&pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=bfA!7pqs!9*q>!;H-cJ,~>
+kl1YOroO49qUY`,me?SOqY1!_s7QB`s7?6\s7,LGg?n4i!9<k+!9*q>!:TU\J,~>
+kl1YOroO49qUY`&pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=PZ>!7^eq!9*q>!:TU\J,~>
+kl1YOroO49qUY`&pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=bfA!7gkr!9*q>!:TU\J,~>
+kPkPNroO49qUY`,me?SOqY1!_s7QB`s7?6\s7,LGg?n4i!9<k+!9*q>!:TX]J,~>
+kPkPNroO49qUY`&pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=PZ>!7^eq!9*q>!:TX]J,~>
+kPkPNroO49qUY`&pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=bfA!7gkr!9*q>!:TX]J,~>
+k5PGMroX%.!93G@qY'd[rq?Bbrq-6^rpp*ZmI8islf\?/pt#N$roO4Lp]#a~>
+k5PGMroX%.!8RA3n`9i7m-OZ<rp0UJroO1>rnmb2mFg4FldGj`pt#N$roO4Lp]#a~>
+k5PGMroX%.!8RA3n`9i7lg+K:rp0UJroX7@ro*n6mG-FKldPpbpt#N$roO4Lp]#a~>
+jo5GOk2tXuf)Y4+p\OU[p\smdp&=U`oD\=\na5i"mHWm8h>,Y&h#?F9n+cp5~>
+jo5GOk2tXuf)Xe)k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfBUfbebResh#?F9n+cp5~>
+jo5GOk2tXuf)Xe)k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$7&ef(mnth#?F9n+cp5~>
+jSo>Nk2tXuf)Y4+p\OU[p\smdp&=U`oD\=\na5i"mHWm8h>,Y&h#?F9p\Fi>~>
+jSo>Nk2tXuf)Xe)k4.O7k3VI4mf)PPkl0]Dir7j8h!NeKfBUfbebResh#?F9p\Fi>~>
+jSo>Nk2tXuf)Xe)k4.O7k3M@2mf)PPkl0`Ej8S$;hX0+Pg$7&ef(mnth#?F9p\Fi>~>
+j8],@!9*b*!:B4KqY'd[rq?Bbrq-6^rpp*ZmI8isn`Tu5rn[8!"5N&$n+m!6~>
+j8],@!9*b*!9*_8n`9i7m-OZ<rp0UJroO1>rnmb2mFg4Fn^@Kfrmg\n"5N&$n+m!6~>
+j8],@!9*b*!9*_8n`9i7lg+K:rp0UJroX7@ro*n6mG-FKn^IQhrmpbo"5N&$n+m!6~>
+j8T,RroO4>q:>W6me?SOqY1!_s7QB`s7?6\s7,LGg?n\!rS?nns5j=Mq>Ys~>
+j8T,RroO4>q:>W*pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=Q,KrRL>fs5j=Mq>Ys~>
+j8T,RroO4>q:>W*pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=c8NrRUDgs5j=Mq>Ys~>
+ir9#QroO4>q:>W6me?SOqY1!_s7QB`s7?6\s7,LGg?eq)j8Rluf)sgjk3r-GJ,~>
+ir9#QroO4>q:>W*pu_,.!p8k9r9jRMs60IDs5O%8s4m"pg=HASeGe"^f)sgjk3r-GJ,~>
+ir9#QroO4>q:>W*pu_,.!p8h7r9jRMs60IEs5X+;s5*.ug=ZMVec+.`f)sgjk3r-GJ,~>
+iVroProO49q:G$.qY'd[rq?Bbrq-6^rpp*ZmI9'$rSQVd"5N&$n+m!6~>
+iVroProO49q:GB'n`9i7m-OZ<rp0UJroO1>rnmb2mFf2)"5N&$n+m!6~>
+iVroProO49q:GB'n`9i7lg+K:rp0UJroX7@ro*n6mG-XQrRg,]"5N&$n+m!6~>
+i;WfOroO49qUY`,mJ$JNqY1!_s7QB`s7?6\s7,LGkj8B4rnlM_!8RS9q#>j~>
+i;WfOroO49qUY`&pZD#-!p8k9r9jRMs60IDs5O%8s4m"p^XiJ@roX"UJ,~>
+i;WfOroO49qUY`&pZD#-!p8h7r9jRMs60IEs5X+;s5*.ukLojegt)P]roX"UJ,~>
+hu<]NroO49qUY`,mJ$JNqY1!_s7QB`s7?6\s7,LGn*U)2f%9o`!:T^_J,~>
+hu<]NroO49qUY`&pZD#-!p8k9r9jRMs60IDs5O%8s4m"p^t8SJ!:T^_J,~>
+hu<]NroO49qUY`&pZD#-!p8h7r9jRMs60IEs5X+;s5*.un(IZlf%9o`!:T^_J,~>
+hZ!TEroO49qUY`,mJ$JNqY1!_s7QB`s7?6\s7,LGp[%tCrnlM_rn[\Ai;2%-iTB:kp]#a~>
+hZ!TEroO49qUY`&pZD#-!p8k9r9jRMs60IDs5O%8s4m"pcI`'P!UJ\?f)t!ok3r'EJ,~>
+hZ!TEroO49qUY`&pZD#-!p8h7r9jRMs60IEs5X+;s5*.up=]Gtgt2P^!UJ\?f)t!ok3r'EJ,~>
+h>[KDroO49qUY`,mJ$JNqY1!_s7QB`s7?6\s7,LGrpB[Ah:MY_!9O.E!V#=Lf)sgjk3r$DJ,~>
+h>[KDroO49qUY`&pZD#-!p8k9r9jRMs60IDs5O%8s4m"pf%9oX!9O.E!V#=Lf)sgjk3r$DJ,~>
+h>[KDroO49qUY`&pZD#-!p8h7r9jRMs60IEs5X+;s5*.urn78&h:MY_!9O.E!V#=Lf)sgjk3r$D
+J,~>
+h#@BCroO49qUY`,mJ$JNqY1!_s7QB`s7?6\s7,[L!9jF?gt2P^pZqhJqUYi)k2u.*s*t~>
+h#@BCroO49qUY`&pZD#-!p8k9r9jRMs60IDs5O%8s4m.trn-#XrndD8rp]d9"5N&$n+H^2~>
+h#@BCroO49qUY`&pZD#-!p8h7r9jRMs60IEs5X+;s5*>%!8IM+gt2P^pZqhJqUYi)k2u.*s*t~>
+g]%9BroX%.!93D?qY'd[rq?Bbrq-6^rpp*Zq=+@@h:DbbhVRAcli$;Qi;2()k4J\(~>
+g]%9BroX%.!8R>2n`9i7m-OZ<rp0UJroO1>rnmb2q:Y`!h:DbbhVRAcli$;Qi;2()k4J\(~>
+g]%9BroX%.!8R>2n`9i7lg+K:rp0UJroX7@ro*n6q:tr%h:DbbhVRAcli$;Qi;2()k4J\(~>
+gA_9Dk2tXuf)Y4*p\OU[p\smdp&=U`oD\=\nGqePi7ur`h>c[,li$;Qi;2%-iTB:so`'F~>
+gA_9Dk2tXuf)Xe(k4.O7k3VI4mf)PPkl0]Dir7j8g]6%,f\G*Xh>c[,li$;Qi;2%-iTB:so`'F~>
+gA_9Dk2tXuf)Xe(k4.O7k3M@2mf)PPkl0`Ej8S$;h>l=0g"b3Yh>c[,li$;Qi;2%-iTB:so`'F~>
+g&D0Ck2tXuf)Y4*p\OU[p\smdp&=U`iW%ilfDaS+iqhj-lhg2Jf)sgjk3qpAJ,~>
+g&D0Ck2tXuf)Xe(k4.O7k3VI4mf)PPkl0]Dg]-!`fDaS+iqhj-lhg2Jf)sgjk3qpAJ,~>
+g&D0Ck2tXuf)Xe(k4.O7k3M@2mf)PPkl0`CgYLK\h#QI2kO@g7nG:`=gudbfoDa=~>
+f`1s5!9*b*!:B1JqY'd["8;*@iS<&ah=]t#lhU&If)sgjk3qm@J,~>
+f`1s5!9*b*!9*\7n`9i7m-OZ<"7,(*h;$W]h=]t#lhU&If)sgjk3qm@J,~>
+f`1s5!9*b*!9*\7n`9i7lg+K:"7,(*h;$W]h=]t#lhU&If)sgjk3qm@J,~>
+f`(sGroO4>q:>W6mJ$JNr:^3Yhq.k^!93P3n*Bf=!9!b+roO4To)F4~>
+f`(sGroO4>q:>W*pZD#-!p8k9rpBdLhq.k^!93P3n*Bf=!9!b+roO4To)F4~>
+f`(sGroO4>q:>W*pZD#-!p8h7rpBdLhq.k^!93P3n*Bf=!9!b+roO4To)F4~>
+fDbjFroO4>q:>W6mJ$JNrV$<Ojk'LdrSm>0n*B`;!9!e,"5N&$n+$F.~>
+fDbjFroO4>q:>W*pZD#-"m51<mdAuofDaP'ipc."lhBlKi;D1/gudbfnc++~>
+fDbjFroO4>q:>W*pZD#-"m5.:mdAuofDaP'ipc."lhBlKi;D1/gudbfnc++~>
+f)GaEroO49q:G!-qY's`!:B+(rn@G1q;Ul+nE]c:qpto)k2u15J,~>
+f)GaEroO49q:G?&n`9l8m-Np$fDaM)htc:#kO@g1nGCf=gudbgs*t~>
+f)GaEroO49q:G?&n`9l8lg*a"fDaM)htc:#kO@g1nGCf=gudbgs*t~>
+ec,XDroO49qUY`,m.^AM!VbUDfDaOripc.#lgsWCf)jpnn*p@-~>
+ec,XDroO49qUY`&p?(o,!p8k+n^mcpoA]9&nE]]8qpto.k3qg>J,~>
+ec,XDroO49qUY`&p?(o,!p8h*n^mcpoA]9&nE]]8qpto.k3qg>J,~>
+eGfOCroO49qUY`,m.^AMpXfDu!SlQ$ipc."lgsTGi;;.+joFl>s*t~>
+eGfOCroO49qUY`&p?(o,!9X%-rn7D.hXKOokO7a.n,VDDfDjt5n*p@-~>
+eGfOCroO49qUY`&p?(o,!9X%-rn7D.hXKOokO7a.n,VDDfDjt5n*p@-~>
+e,KF:roO49qUY`,m.^GO!93n-!8@>,nD`p"nE]W6!9!e,!o2r#n,In~>
+e,KF:roO49qUY`&p?(r-!8RJ'!8@>,nD`p"nE]W6!9!e,!o2r#n,In~>
+e,KF:roO49qUY`&p?(r-!8RJ'!8@>,nD`p"nE]W6!9!e,!o2r#n,In~>
+df0=9roO49qUY`,m.^JP!93q.!8@A-n)Ej"nE]Q4qpto)k3qd=J,~>
+df0=9roO49qUY`&p?(u.!8RM(!8@A-n)Ej"nE]Q4qpto)k3qd=J,~>
+df0=9roO49qUY`&p?(u.!8RM(!8@A-n)Ej"nE]Q4qpto)k3qd=J,~>
+dJj48roO49qUY`,m.^PR!:9U7!8@G/n)Ej"nE]K2qpto.k3qd=J,~>
+dJj48roO49qUY`&p?)&0!9*h,!8@G/n)Ej"nE]K2qpto.k3qd=J,~>
+dJj48roO49qUY`&p?)&0!9*h,!8@G/n)Ej"nE]K2qpto.k3qd=J,~>
+d/O+7roX%.!93A>!VYOMfDaXripc."lg=0Ai;;.+joFl=s*t~>
+d/O+7roX%.!8R;1p>l;0qq(i(nD`s#n*BB1!9!b+s5j=Mn,In~>
+d/O+7roX%.!8R;1p>l;0qq(i(nD`s#n*BB1!9!b+s5j=Mn,In~>
+ci4+9k2tXuf)Y4)p\WPCg>;>Yn)s3+lgOo4r7;&+k2u.$s*t~>
+ci4+9k2tXuf)Xe'k4e!7f)aU^nD`p"nE]E0!9!e,"5N&$n*g:,~>
+ci4+9k2tXuf)Xe'k4e!7f)aU^nD`p"nE]E0!9!e,"5N&$n*g:,~>
+cMn"8k2tXuf)Y4+pAjUXf)X^tipc.#lfmm=i;;.+joFl=s*t~>
+cMn"8k2tXuf)Xe'k5"*=iVV4,hsfXpkO@g%n,VDDfDjt5n*g:,~>
+cMn"8k2tXuf)Xe'k5"*=iVV4,hsfXpkO@g%n,VDDfDjt5n*g:,~>
+c2[e*!9*b*!:B7L!93n-n`''$nE]9,!9j=3s5j=Mn,In~>
+c2[e*!9*b*!9*Y6qW._4qq(AtnE9<,kO8K8qq(l1!:TCVJ,~>
+c2[e*!9*b*!9*Y6qW._4qq(AtnE9<,kO8K8qq(l1!:TCVJ,~>
+c2Re<roO4>q:>W6nFuh3!8I,)nE99+jm`0!!o2r,n,In~>
+c2Re<roO4>q:>W*p?)86qpti&oA]9&n*B*)qpto)k3qd=J,~>
+c2Re<roO4>q:>W*p?)86qpti&oA]9&n*B*)qpto)k3qd=J,~>
+bl7\;roO4>q:>W6nb;q4!8mJ/n)s3+j7!',r7;#*k2u.4J,~>
+bl7\;roO4>q:>W*p?);7qpti*p#>H'nE]-(!9!e,!o2r#n,In~>
+bl7\;roO4>q:>W*p?);7qpti*p#>H'nE]-(!9!e,!o2r#n,In~>
+bPqS:roO49q:G02qq(N#nE9<,iU?j*qq(l1!;H!_J,~>
+bPqS:roO49q:G<%rT3q.p#>K(nE]'&!9!b+s5j=UnGe"~>
+bPqS:roO49q:G<%rT3q.p#>K(nE]'&!9!b+s5j=UnGe"~>
+b5VJ9roO49qUY`,oCi7Eqq(T%nE99+i:$a1qq(l1!:TFWJ,~>
+b5VJ9roO49qUY`&p#c;9!8RJ'pYt]*n*Ap$!9j=3s5j=MnGe"~>
+b5VJ9roO49qUY`&p#c;9!8RJ'pYt]*n*Ap$!9j=3s5j=MnGe"~>
+ao;A8roO49qUY`,o_/@Fr7:r'q;Ul+nE]!$s7H3?!o2r#nGe"~>
+ao;A8roO49qUY`&p#Z;:h#,b(g\KjtkO@fpnGi.Xf)jaik4&D$~>
+ao;A8roO49qUY`&p#Z;:h#,b(g\KjtkO@fpnGi.Xf)jaik4&D$~>
+aSu8/roO49qUY`,p%JIGr7:r'qr7)-nE\s#rq$3Lr7;&+k2u.&s*t~>
+aSu8/roO49qUY`&p#Z80r7:r'qr7)-nE\s#rq$3Lr7;&+k2u.&s*t~>
+aSu8/roO49qUY`&p#Z80r7:r'qr7)-nE\s#rq$3Lr7;&+k2u.&s*t~>
+a8Z/.roO49qUY`,p@eRHr7:r'r8R5/nE\s#r:C!Jqq(i0!;H'aJ,~>
+a8Z/.roO49qUY`&p>uA1r7:r'r8R5/nE\s#r:C!Jqq(i0!;H'aJ,~>
+a8Z/.roO49qUY`&p>uA1r7:r'r8R5/nE\s#r:C!Jqq(i0!;H'aJ,~>
+`r?&-roO49qUY`,p\4R:!8IM4nE99+hsgL7!:0O6"5N&$n+-L/~>
+`r?&-roO49qUY`&pZDA)!8IM4nE99+hsgL7!:0O6"5N&$n+-L/~>
+`r?&-roO49qUY`&pZDA)!8IM4nE99+hsgL7!:0O6"5N&$n+-L/~>
+`W#r,roX%.!93eJqq(l-n)s3+hsgC4qUYi.k2uF0s*t~>
+`W#r,roX%.!8RA3qq(l-n)s3+hsgC4qUYi.k2uF0s*t~>
+`W#r,roX%.!8RA3qq(l-n)s3+hsgC4qUYi.k2uF0s*t~>
+`;]r.k2tXuf)Y46p\WPBipc.#le_.)oDmkHf)jpnk4AV'~>
+`;]r.k2tXuf)Xe*k53a1ipc.#le_.)oDmkHf)jpnk4AV'~>
+`;]r.k2tXuf)Xe*k53a1ipc.#le_.)oDmkHf)jpnk4AV'~>
+_uBi-k2tXuf)Y47p\WS4kO@fonFQ8PiVV4/gudbfo`'F~>
+_uBi-k2tXuf)Xe+k53d#kO@fonFQ8PiVV4/gudbfo`'F~>
+_uBi-k2tXuf)Xe+k53d#kO@fonFQ8PiVV4/gudbfo`'F~>
+_Z0Vt!9*b*!:B^Y!93n-oB5T.hsg1.!:0L5"5N&$n+H^2~>
+_Z0Vt!9*b*!9*k<!8RJ'oB5T.hsg1.!:0L5"5N&$n+H^2~>
+_Z0Vt!9*b*!9*k<!8RJ'oB5T.hsg1.!:0L5"5N&$n+H^2~>
+_Z'W1roO4>q:>W6r:g*?o]P`0hXL"+!:0L5"6&D)n+Qd3~>
+_Z'W1roO4>q:>W*r9!n.o]P`0hXL"+!:0L5"6&D)n+Qd3~>
+_Z'W1roO4>q:>W*r9!n.o]P`0hXL"+!:0L5"6&D)n+Qd3~>
+_>aN0roO4>q:>W6rV-3@p?1r2hXKn(!9*e+"6&D)n+Zj4~>
+_>aN0roO4>q:>W*rT="/p?1r2hXKn(!9*e+"6&D)n+Zj4~>
+_>aN0roO4>q:>W*rT="/p?1r2hXKn(!9*e+"6&D)n+Zj4~>
+_#FE/roO49q:GT>qq(W+nE\s#l1=u7qpti'roO4Tq#>j~>
+_#FE/roO49q:GT-qq(W+nE\s#l1=u7qpti'roO4Tq#>j~>
+_#FE/roO49q:GT-qq(W+nE\s#l1=u7qpti'roO4Tq#>j~>
+^]+<.roO49qUY`,rqH<A!8[P8n*Am#kO\c?qUY`&roX"UJ,~>
+^]+<.roO49qUY`&roX+0!8[P8n*Am#kO\c?qUY`&roX"UJ,~>
+^]+<.roO49qUY`&roX+0!8[P8n*Am#kO\c?qUY`&roX"UJ,~>
+^Ae3-roO49qUYi/p\3\Ff)XY)kO@fonEKTEiV;",iTB:kq>Ys~>
+^Ae3-roO49qUYi)k2tIsf)XY)kO@fonEKTEiV;",iTB:kq>Ys~>
+^Ae3-roO49qUYi)k2tIsf)XY)kO@fonEKTEiV;",iTB:kq>Ys~>
+^&J*$roO49qUYf.pYu,&!8[Y;nE\s#mdpMFro*G""5N&$n+m!6~>
+^&J*$roO49qUYf(k1omd!8[Y;nE\s#mdpMFro*G""5N&$n+m!6~>
+^&J*$roO49qUYf(k1omd!8[Y;nE\s#mdpMFro*G""5N&$n+m!6~>
+]`/!#roO49qUbc,r7:u*kO7`onFH5NiTo(tgudbfq>Ys~>
+]`/!#roO49qUbc&r7:u*kO7`onFH5NiTo(tgudbfq>Ys~>
+]`/!#roO49qUbc&r7:u*kO7`onFH5NiTo(tgudbfq>Ys~>
+]Dhm"roO49o@NKthsgC4!:0XCjjsUik2u..s*t~>
+]Dhm"roO49o@NKthsgC4!:0XCjjsUik2u..s*t~>
+]Dhm"roO49o@NKthsgC4!:0XCjjsUik2u..s*t~>
+])Md!roWh(o'>0%r:L!Ihq&"diTB:sq>Ys~>
+])Md!roWh(o'>0%r:L!Ihq&"diTB:sq>Ys~>
+])Md!roWh(o'>0%r:L!Ihq&"diTB:sq>Ys~>
+\c2d#k2tXpf)Xq*le_+2li,l!fDaP*iVqs>n+cp5~>
+\c2d#k2tXpf)Xq*le_+2li,l!fDaP*iVqs>n+cp5~>
+\c2d#k2tXpf)Xq*le_+2li,l!fDaP*iVqs>n+cp5~>
+\Gl["k2tXqf)X\$lf7L6i7ur`g]6=/joFlEs*t~>
+\Gl["k2tXqf)X\$lf7L6i7ur`g]6=/joFlEs*t~>
+\Gl["k2tXqf)X\$lf7L6i7ur`g]6=/joFlEs*t~>
+\,ZHi!9*V&q!7/5!9jF?h:MV\oB$&ApA]X~>
+\,ZHi!9*V&q!7/5!9jF?h:MV\oB$&ApA]X~>
+\,ZHi!9*V&q!7/5!9jF?h:MV\oB$&ApA]X~>
+\,QI&roO4>p=B<$qs3V<rnuS`rnIM4oB-#?oDa=~>
+\,QI&roO4>p=B<$qs3V<rnuS`rnIM4oB-#?oDa=~>
+\,QI&roO4>p=B<$qs3V<rnuS`rnIM4oB-#?oDa=~>
+[f6@%roO4>pX]E%rTj"C!9jF?h:MV\o&fr?!;Gm\J,~>
+[f6@%roO4>pX]E%rTj"C!9jF?h:MV\o&fr?!;Gm\J,~>
+[f6@%roO4>pX]E%rTj"C!9jF?h:MV\o&fr?!;Gm\J,~>
+[Jp7$roO49pXfE1p@/(>gt2P\!9*P3rU8nKJ,~>
+[Jp7$roO49pXfE1p@/(>gt2P\!9*P3rU8nKJ,~>
+[Jp7$roO49pXfE1p@/(>gt2P\!9*P3rU8nKJ,~>
+[/U.#roO49pt#N&qsXULrnuVarS6u+rpKj]i;\<~>
+[/U.#roO49pt#N&qsXULrnuVarS6u+rpKj]i;\<~>
+[/U.#roO49pt#N&qsXULrnuVarS6u+rpKj]i;\<~>
+Zi:%"roO49pt,N'gt2P\!9*P3rU8G>J,~>
+Zi:%"roO49pt,N'gt2P\!9*P3rU8G>J,~>
+Zi:%"roO49pt,N'gt2P\!9*P3rU8G>J,~>
+ZMspnroO49f[p)Wo&fr?!;FtBJ,~>
+ZMspnroO49f[p)Wo&fr?!;FtBJ,~>
+ZMspnroO49f[p)Wo&fr?!;FtBJ,~>
+Z2XgmroO49hq.k_!9*P3rU7u1J,~>
+Z2XgmroO49hq.k_!9*P3rU7u1J,~>
+Z2XgmroO49hq.k_!9*P3rU7u1J,~>
+Yl=^lroO49kL][fo&fr?!;FM5J,~>
+Yl=^lroO49kL][fo&fr?!;FM5J,~>
+Yl=^lroO49kL][fo&fr?!;FM5J,~>
+YQ"UkroWV"rnIM4oB-#?^]/f~>
+YQ"UkroWV"rnIM4oB-#?^]/f~>
+YQ"UkroWV"rnIM4oB-#?^]/f~>
+Y5\Umk2tXqfDXLqk5OfLpUU<S~>
+Y5\Umk2tXqfDXLqk5OfLpUU<S~>
+Y5\Umk2tXqfDXLqk5OfLpUU<S~>
+XoAOmk2tXXrR_&(!9*P3rU7&lJ,~>
+XoAOmk2tXXrR_&(!9*P3rU7&lJ,~>
+XoAOmk2tXXrR_&(!9*P3rU7&lJ,~>
+XT.\MrpKj]XT*e~>
+XT.\MrpKj]XT*e~>
+XT.\MrpKj]XT*e~>
+XT&=qn+PoBn"p&7~>
+XT&=qn+PoBn"p&7~>
+XT&=qn+PoBn"p&7~>
+WrN+froX4K!;E,cJ,~>
+WrN+froX4K!;E,cJ,~>
+WrN+froX4K!;E,cJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+JcELbJ,~>
+%%EndData
+showpage
+%%Trailer
+end
+%%EOF
diff --git a/macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf b/macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf
new file mode 100644
index 0000000000..83078b8f54
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/base/art/beamericonbook.eps b/macros/latex/contrib/beamer/base/art/beamericonbook.eps
new file mode 100644
index 0000000000..3d9f0d6037
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonbook.eps
@@ -0,0 +1,512 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: GIMP PostScript file plugin V 1.12 by Peter Kirchgessner
+%%Title: /n/mappazza/home4/algo/tantau/texmf/tex/latex/classes/latex-beamer/beamericonbook.eps
+%%CreationDate: Thu Oct 16 20:39:49 2003
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%Pages: 1
+%%BoundingBox: 14 14 29 27
+%%EndComments
+%%BeginProlog
+% Use own dictionary to avoid conflicts
+10 dict begin
+%%EndProlog
+%%Page: 1 1
+% Translate for offset
+14.173228 14.173228 translate
+% Translate to begin of first scanline
+0.000000 12.000000 translate
+13.920000 -12.000000 scale
+% Image geometry
+116 100 8
+% Transformation matrix
+[ 116 0 0 100 0 0 ]
+% Strings to hold RGB-samples per scanline
+/rstr 116 string def
+/gstr 116 string def
+/bstr 116 string def
+{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop}
+{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop}
+true 3
+%%BeginData: 20153 ASCII Bytes
+colorimage
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+ci4!qrMfkJ`W(G~>
+ci4!qrMfkJ`W(G~>
+ci4!qrMfkJ`W(G~>
+eGoNJq0rCE`rCP~>
+eGoNJq0rCE`rCP~>
+eGoNJq0rCE`rCP~>
+gA_0'ri5jFr_<AJ"&48pe]@c@~>
+gA_0'ri5jFr_<AJ"&48pe]@c@~>
+gA_0'ri5jFr_<AJ"&48pe]@c@~>
+huE\UqgSZZ9hk@<"&48pe]IiA~>
+huE\UqgSZZ9hk@<"&48pe]IiA~>
+huE\UqgSZZ9hk@<"&48pe]IiA~>
+jo5>2ri5jFr_;o="&48pWlk?l~>
+jo5>2ri5jFr_;o="&48pWlk?l~>
+jo5>2ri5jFr_;o="&48pWlk?l~>
+lMpj`qgSZZ9hjk.!bQq^bQ!(~>
+lMpj`qgSZZ9hjk.!bQq^bQ!(~>
+lMpj`qgSZZ9hjk.!bQq^bQ!(~>
+nG`L=ri5jFr_;f:"]8*4Lh]``1BM0<Wm(Kn~>
+nG`L=ri5jFr_;f:"YD8O*[<351BM0<Wm(Kn~>
+nG`L=ri5jFr_;f:"YMAT,:+o=1BM0<Wm(Kn~>
+p&G#kqgSZZ9hk%3s&/tsNfO*sreLT/:]*!NAq-i2cMrC~>
+p&G#kqgSZZ9hk%3s"4@),:!12rZ2([/,V1*Aq-i2cMrC~>
+p&G#kqgSZZ9hk%3s"FL-.4P6CrZ_Fc/Gq:+Aq-i2cMrC~>
+qZ$Ppqg\T>mPFlC!d'ZkrfR2?repc3!JO>I1BU@$J(;mFJ,~>
+qZ$Ppqg\T>mPFks!\5ZIr[.UhrZV7^!?<Wf1BU@$J(;mFJ,~>
+qZ$Ppqg\T>ln\\s0/*;Ur[IgnrZ_Fc/Gq:+9n.ZCci8L~>
+r;QcIrI4l\9hk%3"^"i-Ssu5KR/W?LOoCC?MuJM5KkgNA"&48pe^4>H~>
+r;QcIrI4l\9hk"2s"XX0/h[,Rr[@amrZhCcrZ2([,Q'>"9n.ZCd/SU~>
+r;QcIrI4l\9hk%3"ZA4q3Arep1]B',/H.*t-N54j+!ph@"&48pe^4>H~>
+r;ZeH!);l;"'SiWV#I(eT)Y;ZR/W?LOoCC?MuJM5KkgNA"&3BWWmUis~>
+r;ZeH!);l;"#Vnm2?#E20`Nd)/,gsr-N57h+oWM`*$bA;"&3BWWmUis~>
+r;ZeH!);l;"$&;%5Q3eE3WD#:1]B',/H.*t-N54j+!ph@"&3BWWmUis~>
+rVlr!InfMjs',V0WiH&rrhTOergs.Zrg<\LrfR2?repc3!JP:c1BM0<Wm^ot~>
+rVlr!InfMjs#1!;3]d7"r\a[2r\4@)r[[srr[.UhrZV7^!?<?]1BM0<Wm^ot~>
+rVlr!InfMjs#U9C7RmAEr]gBEr]1!:r\OO,r[e$tr[.Uh!?WWb1BM0<Wm^ot~>
+rVlnuJ+k`%?s\VmYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP4K`FpH1BM0<Wmguu~>
+rVlnuJ+k`%5<:kj5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP_)uqMe1BM0<Wmguu~>
+rVlnuJ+k`%69[e29`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57i*rmki1BM0<Wmguu~>
+rVlnJB)OLkB4b_n_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#W//:]*!N9n.ZCec1.~>
+rVlnJB)OLk<DlP;F(AQV8,baP4oRMA3;tf71]B*.0)dC#./kRm,Q8kc*rd2[/,V1*9n.ZCec1.~>
+rVlnJB)OLk<DuYAG\^kt;uTJi8cD3Y6iK=L4T7A@2Z>N30E*O%.K1[n,QAhc/Gq:+9n.ZCec1.~>
+rr3&"Infnu$>Il4bf@Z=]t1_[rilC(ri5sqrhTOergs.Zrg<\LrfR2?repc3s+LGKr%eFLIt-#"
+s*t~>
+rr3&"Infnu$<j$fOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^ru;"hr%eFLIt-#"
+s*t~>
+rr3&"Infnu$<j!eObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.UhruV4lr%eFLIt-#"
+s*t~>
+rr<"JrA+hReBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP4K`Glc1BU@$J#_-#
+J,~>
+rr<"JrA+h4W1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP_)uq5]1BU@$J#_-#
+J,~>
+rr<"JrA+h3VOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57i*rmVb1BU@$J#_-#
+J,~>
+rr3"K:&ZpXB[bJ\d*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUT.!,DBe!bQq^
+f`-I~>
+rr3"K:&ZpX9qA5]SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;(Z!$h@s!bQq^
+f`-I~>
+rr3"K:&ZpX9q/#WSX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhFb!%%Lu!bQq^
+f`-I~>
+s8N/NInfnu%VX;>eC;jjbf@Z=]t1_[rilC(ri5sqrhTOergs.Zrg<\LrfR2?repc3s+LJg:AcmL
+Aq-i6s*t~>
+s8N/NInfnu%SM>CW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^ru;%a.f;((
+Aq-i6s*t~>
+s8N/NInfnu%SM>AVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.UhruV7f/,V1)
+Aq-i6s*t~>
+s8N/#Infnu&"V.se'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N).:AcmM
+Aq-i2g])d~>
+s8N/#Infnu%qBs:SZ&KYQ]QcEF(AQV8,baP4oRMA3;tf71]B*.0)dC#./kRm,Q8kc*r[,Z.f;()
+Aq-i2g])d~>
+s8N/#Infnu%qBs:S#3'RQ]ZrMG\^kt;uTJi8cD3Y6iK=L4T7A@2Z>N30E*O%.K1[n,Q8bb/,V1*
+Aq-i2g])d~>
+s8N,"J,M2%dL=USeBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP3K`FmG1BU@$
+J(<?SJ,~>
+s8N,"J,M2&HOYLrW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^rYtnfr%eFL
+It-#(s*t~>
+s8N,"J,M2&HOYLpVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.UhrZ;+jr%eFL
+It-#(s*t~>
+s8N,"J,M2$dL=USeBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP3K`Gfa1BU@$
+J(<BTJ,~>
+s8N,"J,M2%HOYLrW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^rYtn]r%eFL
+It-#)s*t~>
+s8N,"J,M2%HOYLpVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.UhrZ;+br%eFL
+It-#)s*t~>
+s8N,"J,M/'eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N).B`'Xg
+9kJmThZ&*~>
+s8N,"J,M/'IJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y!$V7r
+"&3BWWo!c+~>
+s8N,"J,M/'IJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa!$hCt
+"&3BWWo!c+~>
+s8N,"J,M2'eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N).B_sRe
+Aq-i<s*t~>
+s8N,"J,M2'IJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y!$V4q
+!bQq^huA3~>
+s8N,"J,M2'IJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa!$h@s
+!bQq^huA3~>
+s8N,"J,M2&eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N)/Jkl5"
+!bQq^i;\<~>
+s8N,"J,M2&IJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y!?!Bb
+1BM0<Wo3o-~>
+s8N,"J,M2&IJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa!?<Wf
+1BM0<Wo3o-~>
+s8N,"J,M2%eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N)/Jkl5"
+"&48pe`-UZ~>
+s8N,"J,M2%IJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y!?!Bb
+1BU@$J(<QYJ,~>
+s8N,"J,M2%IJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa!?<Wf
+1BU@$J(<QYJ,~>
+s8N,"J,M2$eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N)/Jkl5"
+"&48pe`6[[~>
+s8N,"J,M2$IJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y!?!Bb
+1BU@$J(<TZJ,~>
+s8N,"J,M2$IJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa!?<Wf
+1BU@$J(<TZJ,~>
+s8N/#Infnu!29>?r6c#&eC;jjbf@Z=]t1_[rilC(ri5sqrhTOergs.Zrg<\LrfR2?repc3re1B)
+B`'Xg9n.YmjSs`~>
+s8N/#Infnu!+u.WrHf!(SZ&KYQ]QcEF(AQV8,baP4oRMA3;tf71]B*.0)dC#./kRm,Q8kc*r[,[
+)'So6"&48pWoX21~>
+s8N/#Infnu!+u.WrHf!(S#3'RQ]ZrMG\^kt;uTJi8cD3Y6iK=L4T7A@2Z>N30E*O%.K1[n,Q8bc
+*$bA;"&48pWoX21~>
+s8N/NInfnu!G^6aeGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N)/
+JnY$;!bQq^jo9i~>
+s8N/NInfnu!DS(AIJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y
+!?!'X1BM0<Woa82~>
+s8N/NInfnu!DS(AIJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa
+!?<?]1BM0<Woa82~>
+rr3"K:&ZpMC=h)8eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N)0
+JnRpW1BM0<Woj>3~>
+rr3"K:&ZpM9n.ZjIJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y
+!Z<.2r%eCdJ#_Z2J,~>
+rr3"K:&ZpM9n.ZjIJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa
+!ZWF8r%eCdJ#_Z2J,~>
+rr<"JrA+MKf@TrMr6c#&eC;jjbf@Z=]t1_[rilC(ri5sqrhTOergs.Zrg<\LrfR2?repc3re:B(
+!)EGJ"(m%_e`d$`~>
+rr<"JrA+LeIt.BErHf!(SZ&KYQ]QcEF(AQV8,baP4oRMA3;tf71]B*.0)dC#./kRm,Q8kc*r[/Z
+)#u/a1BV6=Wn$>5J,~>
+rr<"JrA+LeIt.BErHf!(S#3'RQ]ZrMG\^kt;uTJi8cD3Y6iK=L4T7A@2Z>N30E*O%.K1[n,Q8eb
+)uqMe1BV6=Wn$>5J,~>
+rr3&"Infnu!,DMbr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+s+15Gr%eFLIt-#5s*t~>
+rr3&"Infnu!)<HBr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<-lV.f;()9n.ZCl2Q8~>
+rr3&"Infnu!)<HBr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9*;\/,V1*9n.ZCl2Q8~>
+rVlnJB)OOafDO.rdL=USeBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP3L&Z`)
+B`'Xg9n.ZClMlA~>
+rVlnJB)OOaJ,F`nHOYLrW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^rZ(qU
+!$V7r"&48pea!0b~>
+rVlnJB)OOaJ,F`nHOYLpVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.UhrZD.[
+!$hCt"&48pea!0b~>
+rVlnuJ,M/'CAlc^eGR`'e'umocHO>I_S*OjZi73.Xo>@"VuELkU&LY`S,SfSPl?gENrFt9M#N,.
+JcKK^1BU?`J#_i7J,~>
+rVlnuJ,M/':&TS>IJnL%J=WX;SsPOiH?3V&<Cd$Qr]U6Ar]'m7r\OO-s"=:$r[@amrZhCcrZ;%Y
+rtte[r%eFLAq-iHs*t~>
+rVlnuJ,M/':&TS>IJnL%J=EF5SX5IlIX#X>?W6qtr^m)Yr^6ZLr]L0?s#0j4r\+7%r[IgnrZhCa
+ru;"`r%eFLAq-iHs*t~>
+rVlr!Infkt!,DJar7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+s+15aq_J:cJ#_l8J,~>
+rVlr!Infkt!)<EAr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<-lV+o=%sAq-iIs*t~>
+rVlr!Infkt!)<EAr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9*;\,Ps7uAq-iIs*t~>
+r;ZeH!)<DJ!,DJar7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk,Er%eCdJ#_o9J,~>
+r;ZeH!)<DJ!)<EAr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fU.Jtt'Aq-iJs*t~>
+r;ZeH!)<DJ!)<EAr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5[.f;((Aq-iJs*t~>
+r;QiKIqJU7!29ACr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk,Er%eFLIt-#;s*t~>
+r;QiKIqJU7!+u1Zr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fU.Jtt(9n.ZCn,In~>
+r;QiKIqJU7!+u1Zr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5[.f;()9n.ZCn,In~>
+qu6`JIqJU7!29ACr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk,Er%eFLIt-#<s*t~>
+qu6`JIqJU7!+u1Zr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fU.Jtt(9n.ZCnGe"~>
+qu6`JIqJU7!+u1Zr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5[.f;()9n.ZCnGe"~>
+qYpWIIqJU7!29ACr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk,^r%eFLIt+Kgs*t~>
+qYpWIIqJU7!+u1Zr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fU+T+"t9n.Ymnc++~>
+qYpWIIqJU7!+u1Zr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5[+oF+u9n.Ymnc++~>
+q>UMrIqJU7!29ACr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk,^q_J:cJ#`)>J,~>
+q>UMrIqJU7!+u1Zr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fU+T!qrAq-iOs*t~>
+q>UMrIqJU7!+u1Zr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5[+o=%sAq-iOs*t~>
+q#:DqIqJU7!29ACr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk/_:&HdKAq-iPs*t~>
+q#:DqIqJU7!+u1Zr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fV+=[4E!bQq^oDa=~>
+q#:DqIqJU7!+u1Zr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5\+Y*CG!bQq^oDa=~>
+p\t;pIqJU7!29ACr7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk0#:&HdLAq-i2p&BO~>
+p\t;pIqJU7!+u1Zr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fV(Ff8<"(m%_eb/rm~>
+p\t;pIqJU7!+u1Zr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5\)(PP?"(m%_eb/rm~>
+pAY2oInfkt!,DG`r7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk0#:&HdL9n.ZCpA]X~>
+pAY2oInfkt!)<B@r-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fV(Ff8<"&48peb9#n~>
+pAY2oInfkt!)<B@r-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5\)(PP?"&48peb9#n~>
+p&>)nInfkt!,DG`r7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk0#B)FFe9n.ZCp]#a~>
+p&>)nInfkt!)<B@r-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fV(EiW3"&48pebB)o~>
+p&>)nInfkt!)<B@r-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5\)'So6"&48pebB)o~>
+o`"umInfkt!,DG`r7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdk0#B)FFe9kJmTq#>j~>
+o`"umInfkt!)<B@r-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$fV(EiW3"&3BWWqcUE~>
+o`"umInfkt!)<B@r-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!5\)'So6"&3BWWqcUE~>
+o`#$DIt(2k1B;1ffDO.rdL=USeBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP3
+L&QZ)IqJR6!bQq^q>Ys~>
+o`#$DIt(2k1B:/IJ,F`nHOYLrW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^
+rZ(nT!>cmU1BM0<Wql[F~>
+o`#$DIt(2k1B:/IJ,F`nHOYLpVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.Uh
+rZD+Z!?!'X1BM0<Wql[F~>
+oD\pCIt(2k1B;1ffDO.rdL=USeBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP3
+L&Q](IfN4@1BM0<WquaG~>
+oD\pCIt(2k1B:/IJ,F`nHOYLrW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^
+rZ(nTrtbYar%eCdJ#`AFJ,~>
+oD\pCIt(2k1B:/IJ,F`nHOYLpVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.Uh
+rZD+Zrttedr%eCdJ#`AFJ,~>
+o)AgBIt(2k1B;1ffDO.rdL=USeBlLba2Gj.]"#*GYl:d(WrApqV#I(eT)Y;ZR/W?LOoCC?MuJP3
+L&Q](IfN4@1BU@$J(=JsJ,~>
+o)AgBIt(2k1B:/IJ,F`nHOYLrW2Q;SOF__!A6i2*r]gBFr]:$<r\a[2r\4@)r[[srr[.UhrZV7^
+rZ(nTrtbYar%eFLIt-#Hs*t~>
+o)AgBIt(2k1B:/IJ,F`nHOYLpVP]oNObA1.CLpjOr_3;_r^QlSr]gBEr]1!:r\OO,r[e$tr[.Uh
+rZD+Zrttedr%eFLIt-#Hs*t~>
+nc&[@IqJU7!29>Br7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+rdt0"!)<AI!_n0Er;V9~>
+nc&[@IqJU7!+u.Yr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<$iU(B>o^1BL:#Wr2mI~>
+nc&[@IqJU7!+u.Yr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9!8[)#u/a1BL:#Wr2mI~>
+nG`R?IqJU7!29>Br7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9reUQ-
+s+1;I9hkL@!_n0prVqB~>
+nG`R?IqJU7!+u.Yr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+oWP^
+*<-lX.OchD1BL:#ec#Mu~>
+nG`R?IqJU7!+u.Yr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-N57h
++9*;^.k3%G1BL:#ec#Mu~>
+n,EI>IqJU7!29>Br7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmDErf6u9")Le1
+:\6FDJ#`JIJ,~>
+n,EI>IqJU7!+u.Yr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gsr-N57h+Tj#A
+/1^?K!Iq-Js*t~>
+n,EI>IqJU7!+u.Yr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B',/H.*t-3GYJ
+/M-NM!Iq-Js*t~>
+mf*?gIqJU7!29>Br7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-s"TrfmGF!`MupmP=l<
+J,K=s~>
+mf*?gIqJU7!+u.Yr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Nd)/,gss-3>eO/abCq
+9n3*@J,~>
+mf*?gIqJU7!+u.Yr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1]B'-/-7LY0CCUs
+9n3*@J,~>
+mJd6fIqJU7!29>Br7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoakrh9=_s-j+7<E3#^1]Mt&s*t~>
+mJd6fIqJU7!+u.Yr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#E20`Na-/MJk3kVN6gr;V9~>
+mJd6fIqJU7!+u.Yr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS5Q3eE3WD#:1B9/n1]Mt&s*t~>
+m/I-eIqJU7!29>Br7(Ym%+E_Ud*BkU`594!\?l1=riQ1"rhoak"//h!=6h[B;Z]ou<rFfUAq/A/
+s*t~>
+m/I-eIqJU7!+u.Yr-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hF3rV,<2?#B31@$ar;Z]ou<rFfUAq/A/
+s*t~>
+m/I-eIqJU7!+u.Yr-eNj%=jqFVOa'9KRS/]ARAC89`@W_7fGdS56F#+2DseVs&/tu<EB&S!bQr4
+r;V9~>
+li.$dInfkt!,DD_r7(Ym%+E_Ud*BkU`594!\?l1=riQ4#!/(8SlSAiD;,VFsPEqW,<rFfU9n02?
+s*t~>
+li.$dInfkt!)<??r-eNj%=k"JW1K?;JU2BJ>uaDo5Q3hG3WM/=2=!%):f1,2Ocu*!S6#SE!_n0E
+qu;0~>
+li.$dInfkt!)<??r-eNj%=jqFVOa'9KRS/]ARAC89`@W`7K>^Q3U8I-:f1,2Ocu*!S6#SE!_n0E
+qu;0~>
+lMgpcInfkt!,DD_r7(Ym&C].Yd*BkU`594!\?iDF?!Q\O%no\m:PO[`NfK6cQC4/2H2TN#9n02>
+s*t~>
+lMgpcInfkt!)<??r-eNj%Y1+KW1K?;JU2BJ>uaBZr\s.!%no\m:PO[`NfK6cQC4/2H2TN#9n02>
+s*t~>
+lMgpcInfkt!)<??r-eNj&V-@JVOa'9KRS/]ARAA04?P^k1Cm/R:/?V#MiNg[PEqW)S9b&h!_n0E
+qYu'~>
+l2LgbInfkt!,DD_r7(Ym$.IDRd*Bk$A7K'61D*2N94NC#K7eo7MiNg[PEqN&rgWsirA4J'q>Ys~>
+l2LgbInfkt!)<??r-eNj$@n\GW1K?;B1kfalSB,E8kWZBJ:iK/Ll7:ROcu)sRJr]V=8arTJ,0+p~>
+l2LgbInfkt!)<??r-eNj$@nVCVOa'9BhV,glSB,E8kWZBJ:iK/Ll7:ROcu)sRJr]V=8arTJ,0+p~>
+l2Lk9It(2k1B;1efDO.rdK@tJe=>n^s$m#Y&or,=GC"[fJ:iT4Mi3UXPEV<#rga"\rA+LeJ(=Ap
+J,~>
+l2Lk9It(2k1B:/HJ,F`nHN\kiW2P(11]KrE7hTibGB\@]J:N9,Ll71OOctupRJr`VTD^PIAq/A,
+s*t~>
+l2Lk9It(2k1B:/HJ,F`nHN\kgVP\\,1]KrE7hTibGB\@]J:N9,Ll71OOctupRJr`VTD^PIAq/A,
+s*t~>
+kl1b8It(2k1B;1efDO.rdK.hHnh^;5)am_ACi"$1F`hnSI=6WuL5:YDNffHfQC4/2SGo,\IJkr&
+J#`;DJ,~>
+kl1b8It(2k1B:/HJ,F`nHNJ_gW:DbE6Q8EoC2@^)EclMKH@:3lK8,2<MiNp^PEqW)S=KSN!.Ff%
+!Iq-Es*t~>
+kl1b8It(2k1B:/HJ,F`nHNJ_eVXcPC6Q8EoC2@^)EclMKH@:3lK8,2<MiNp^PEqW)S=KSN!.Ff%
+!Iq-Es*t~>
+kPkY7It(2k1B;1efDO.rdK""W1]KZ^5XA^_@:X"cC2@g/EclSPH@:<rL5(MBNfK6cQC4/2SGo/\
+U&\<p1BL:#ebK/p~>
+kPkY7It(2k1B:/HJ,F`nHNAXuq(r%8+@&5!?=@AWC2.R'EcQ;HH?t!iK8,,:MiNg[PEqW)S=KSN
+s.TKqr\FUMJ(=>oJ,~>
+kPkY7It(2k1B:/HJ,F`nHNAXtq(r%8+@&5!?=@AWC2.R'EcQ;HH?t!iK8,,:MiNg[PEqW)S=KSN
+s.TKqr\FUMJ(=>oJ,~>
+k5PM5IqJU7!29;Ar7(\n!,2?f,<S+\;c[%*>@(`KB4ksqDf9Z=GC"R`J:iK/Ll71OOcu)sRJr`V
+TDkPcV-3dR!DS(<s*t~>
+k5PM5IqJU7!+u+Xr-eNj!)<GK,<S+\;c[%*>@(`KB4ksqDf9Z=GC"R`J:iK/Ll71OOcu)sRJr`V
+TDkPcV-3dR!DS(<s*t~>
+k5PM5IqJU7!+u+Xr-eNj!)<GK,<S+\;c[%*>@(`KB4ksqDf9Z=GC"R`J:iK/Ll71OOcu)sRJr`V
+TDkPcV-3dR!DS(<s*t~>
+jo5D4IqJU7!29;Ar7(bp!1j'E+])*<=^,*:@:Wn]C2@^)EclSMH@:<oK8,2<MiNp`PEqX9SGo/\
+UAh"f1BE!*p]#a~>
+jo5D4IqJU7!+u+Xr-eTl!+Ys`+])*<=^,*:@:Wn]C2@^)EclSMH@:<oK8,2<MiNp`PEqX9SGo/\
+UAh"f1BE!*p]#a~>
+jo5D4IqJU7!+u+Xr-eTl!+Ys`+])*<=^,*:@:Wn]C2@^)EclSMH@:<oK8,2<MiNp`PEqX9SGo/\
+UAh"f1BE!*p]#a~>
+jSo;3IqJU7!29;Ar6tbqB`9e45#tfh>@(`HA7oXlCi=?:Fa&.[I=Qs)L5:bJOcbinR@0S8rh'4b
+rh]XnrA+J(WqZOD~>
+jSo;3IqJU7!+u+Xr-\Tm9E$^l5#tfh>@(`HA7oXlCi=?:Fa&.[I=Qs)L5:bJOcbinR@0S8rh'4b
+rh]XnrA+J(WqZOD~>
+jSo;3IqJU7!+u+Xr-\Tm9E$^l5#tfh>@(`HA7oXlCi=?:Fa&.[I=Qs)L5:bJOcbinR@0S8rh'4b
+rh]XnrA+J(WqZOD~>
+j8T1\IqJU7!29;Ar7([$+\PsB?=%&NB4ksqDfTl@GC"R`J:iT2Ll7:ROcu)sR@KfHTDkSbV>dCn
+Wr4^SJ#`8CJ,~>
+j8T1\IqJU7!+u+Xr-eN"+\PsB?=%&NB4ksqDfTl@GC"R`J:iT2Ll7:ROcu)sR@KfHTDkSbV>dCn
+Wr4^SJ#`8CJ,~>
+j8T1\IqJU7!+u+Xr-eN"+\PsB?=%&NB4ksqDfTl@GC"R`J:iT2Ll7:ROcu)sR@KfHTDkSbV>dCn
+Wr4^SJ#`8CJ,~>
+ir9([IqJU7!29;ArmUq?rA4IX)dZr`B4ksqDf9Z=GB\@]J:iK/Ll71OOctupRJr`VTDkSaV>mLn
+Wr4aRJ+rtn~>
+ir9([IqJU7!+u+Xrd=cXrA4IX)dZr`B4ksqDf9Z=GB\@]J:iK/Ll71OOctupRJr`VTDkSaV>mLn
+Wr4aRJ+rtn~>
+ir9([IqJU7!+u+Xrd=cXrA4IX)dZr`B4ksqDf9Z=GB\@]J:iK/Ll71OOctupRJr`VTDkSaV>mLn
+Wr4aRJ+rtn~>
+iVrtZIqJU7!29;As3q$_r\GN[?=@ATB527!DfTuCGC"[fJ:iT4Ll7:UOcu*!rg`t[s.]Lhs/>ps
+s/c9+r\FRLJ+rtn~>
+iVrtZIqJU7!+u+Xs*Xl@r\GN[?=@ATB527!DfTuCGC"[fJ:iT4Ll7:UOcu*!rg`t[s.]Lhs/>ps
+s/c9+r\FRLJ+rtn~>
+iVrtZIqJU7!+u+Xs*Xl@r\GN[?=@ATB527!DfTuCGC"[fJ:iT4Ll7:UOcu*!rg`t[s.]Lhs/>ps
+s/c9+r\FRLJ+rtn~>
+i;WkYInfkt!,DA^!Rti_1EAhkA7oXlCi=?7Fa&.[I=Qs)L5:bJOcbinR@0S8rh'4brh]Ums/Q(#
+!O,l/1BL:#WqcUE~>
+i;WkYInfkt!)<<>!I[Z@1EAhkA7oXlCi=?7Fa&.[I=Qs)L5:bJOcbinR@0S8rh'4brh]Ums/Q(#
+!O,l/1BL:#WqcUE~>
+i;WkYInfkt!)<<>!I[Z@1EAhkA7oXlCi=?7Fa&.[I=Qs)L5:bJOcbinR@0S8rh'4brh]Ums/Q(#
+!O,l/1BL:#WqcUE~>
+hu<bXInfkt!,DA^!,;Eg),t6]C2@g/EclSPH@:<rK8,2?NfK6cQBms<SH#5\UAq(hW;imsXo>O)
+M>]42J#`;DJ,~>
+hu<bXInfkt!)<<>!)3AJ),t6]C2@g/EclSPH@:<rK8,2?NfK6cQBms<SH#5\UAq(hW;imsXo>O)
+M>]42J#`;DJ,~>
+hu<bXInfkt!)<<>!)3AJ),t6]C2@g/EclSPH@:<rK8,2?NfK6cQBms<SH#5\UAq(hW;imsXo>O)
+M>]42J#`;DJ,~>
+hZ!YWInfkt!,DD_!,DKh(M@K!Df9Z=GB\@]J:N9,Ll71OOctupRJr`VTDkSaV>mLnWrK4#Yl;!-
+1BM0<ebT5q~>
+hZ!YWInfkt!)<??!)<GK(M@K!Df9Z=GB\@]J:N9,Ll71OOctupRJr`VTDkSaV>mLnWrK4#Yl;!-
+1BM0<ebT5q~>
+hZ!YWInfkt!)<??!)<GK(M@K!Df9Z=GB\@]J:N9,Ll71OOctupRJr`VTDkSaV>mLnWrK4#Yl;!-
+1BM0<ebT5q~>
+hZ!].It(2k1B;1ffDRN*C_L`-F`hnSI=Qj#L5:YDNffHfQC7`Brh'4brh]Xnri5t"s02L/s0_o8
+rA4J'!7grGJ,~>
+hZ!].It(2k1B:/IJ,M2'C_L`-F`hnSI=Qj#L5:YDNffHfQC7`Brh'4brh]Xnri5t"s02L/s0_o8
+rA4J'!7grGJ,~>
+hZ!].It(2k1B:/IJ,M2'C_L`-F`hnSI=Qj#L5:YDNffHfQC7`Brh'4brh]Xnri5t"s02L/s0_o8
+rA4J'!7grGJ,~>
+h>[T-It(2k1B;1gfDRK@DfTl@GC"[cJ:iT2Ll7:ROcu*!R@KfHTDkSbV>dFnWrB.#Yl;!.[K3pu
+rA+LLJ#`AFJ,~>
+h>[T-It(2k1B:/JJ,M/=DfTl@GC"[cJ:iT2Ll7:ROcu*!R@KfHTDkSbV>dFnWrB.#Yl;!.[K3pu
+rA+LLJ#`AFJ,~>
+h>[T-It(2k1B:/JJ,M/=DfTl@GC"[cJ:iT2Ll7:ROcu*!R@KfHTDkSbV>dFnWrB.#Yl;!.[K3pu
+rA+LLJ#`AFJ,~>
+h#@K,It(2k1B;1hfDRK<EclSPH@:<rK8,2?MiNp`QBms<SH#5\UAq(hW;`gsXo>R)Zi7E4\H0?O
+rA+LLJ#`DGJ,~>
+h#@K,It(2k1B:/KJ,M/9EclSPH@:<rK8,2?MiNp`QBms<SH#5\UAq(hW;`gsXo>R)Zi7E4\H0?O
+rA+LLJ#`DGJ,~>
+h#@K,It(2k1B:/KJ,M/9EclSPH@:<rK8,2?MiNp`QBms<SH#5\UAq(hW;`gsXo>R)Zi7E4\H0?O
+rA+LLJ#`DGJ,~>
+g]%?*IqJU7!hn5trA4It%XNPRJ:iT4Mi3UXPEV<#rga"\rhBCgs/>pss/l:)rj2X5rji'As1\PC
+rA+LeJ(=JsJ,~>
+g]%?*IqJU7!bQq3rA4It%XNPRJ:iT4Mi3UXPEV<#rga"\rhBCgs/>pss/l:)rj2X5rji'As1\PC
+rA+LeJ(=JsJ,~>
+g]%?*IqJU7!bQq3rA4It%XNPRJ:iT4Mi3UXPEV<#rga"\rhBCgs/>pss/l:)rj2X5rji'As1\PC
+rA+LeJ(=JsJ,~>
+gA_6)IqJU7!MS-D1D+q]I=Qs)LkptLOcbinR@0S8rh'4brh]Ums/Q(#s02L/s0hp;rk/9Gs2"Uh
+s*stHJ,~>
+gA_6)IqJU7!G6i[1D+q]I=Qs)LkptLOcbinR@0S8rh'4brh]Ums/Q(#s02L/s0hp;rk/9Gs2"Uh
+s*stHJ,~>
+gA_6)IqJU7!G6i[1D+q]I=Qs)LkptLOcbinR@0S8rh'4brh]Ums/Q(#s02L/s0hp;rk/9Gs2"Uh
+s*stHJ,~>
+g&D-(IqJU7!MO9-1CnnaK8,,:MiNg[PEqN&S=KSNrhBFhri#jsriQ1(s0M^5s1/-A"M^(.@q5Bl
+!_n0ErVqB~>
+g&D-(IqJU7!G5(*1CnnaK8,,:MiNg[PEqN&S=KSNrhBFhri#jsriQ1(s0M^5s1/-A"M^(.@q5Bl
+!_n0ErVqB~>
+g&D-(IqJU7!G5(*1CnnaK8,,:MiNg[PEqN&S=KSNrhBFhri#jsriQ1(s0M^5s1/-A"M^(.@q5Bl
+!_n0ErVqB~>
+f`)#QIqJU7!,DKh$Vl>/Ll71OOcu)sRJr`VTDkSbV>dFmWrK4#YlD'/[f<l>?t!L91BL:#Wr;sJ~>
+f`)#QIqJU7!)<GK$Vl>/Ll71OOcu)sRJr`VTDkSbV>dFmWrK4#YlD'/[f<l>?t!L91BL:#Wr;sJ~>
+f`)#QIqJU7!)<GK$Vl>/Ll71OOcu)sRJr`VTDkSbV>dFmWrK4#YlD'/[f<l>?t!L91BL:#Wr;sJ~>
+fDboPIqJL4#u?A5MiNp`PEqX9SGo/\UAh"hW;`grXoGX*ZNH%k?XW:X!_n0ErVqB~>
+fDboPIqJL4#u?A5MiNp`PEqX9SGo/\UAh"hW;`grXoGX*ZNH%k?XW:X!_n0ErVqB~>
+fDboPIqJL4#u?A5MiNp`PEqX9SGo/\UAh"hW;`grXoGX*ZNH%k?XW:X!_n0ErVqB~>
+f)GfOIqJO5$;cY@OcbinR@0S8rh'4brh]Ums/Q(#s'5V2lSJN7!bQq^r;V9~>
+f)GfOIqJO5$;cY@OcbinR@0S8rh'4brh]Ums/Q(#s'5V2lSJN7!bQq^r;V9~>
+f)GfOIqJO5$;cY@OcbinR@0S8rh'4brh]Ums/Q(#s'5V2lSJN7!bQq^r;V9~>
+ec,]NInfbq#EFq1QBmr/SGo/[UAq(hVuqZV>[6SNr_<6=!35qrJ,~>
+ec,]NInfbq#EFq1QBmr/SGo/[UAq(hVuqZV>[6SNr_<6=!35qrJ,~>
+ec,]NInfbq#EFq1QBmr/SGo/[UAq(hVuqZV>[6SNr_<6=!35qrJ,~>
+eGfTMInfer"&kDLRJr`VTDkPeV--r)lSJN7!+u(Wri,tKq#>j~>
+eGfTMInfer"&kDLRJr`VTDkPeV--r)lSJN7!+u(Wri,tKq#>j~>
+eGfTMInfer"&kDLRJr`VTDkPeV--r)lSJN7!+u(Wri,tKq#>j~>
+e,KKLInfer!1EhV"J:$B=BOlFr_<3<ri5MgJ,~>
+e,KKLInfer!1EhV"J:$B=BOlFr_<3<ri5MgJ,~>
+e,KKLInfer!1EhV"J:$B=BOlFr_<3<ri5MgJ,~>
+e,KO#It(2j1]LMA1]C)KB)7#VWW:T8s*t~>
+e,KO#It(2j1]LMA1]C)KB)7#VWW:T8s*t~>
+e,KO#It(2j1]LMA1]C)KB)7#VWW:T8s*t~>
+df0F"It(2Y1]C,EJ,ZJ/s*t~>
+df0F"It(2Y1]C,EJ,ZJ/s*t~>
+df0F"It(2Y1]C,EJ,ZJ/s*t~>
+dJj=!It(2a1]C)KB)7#VWW:T+s*t~>
+dJj=!It(2a1]C)KB)7#VWW:T+s*t~>
+dJj=!It(2a1]C)KB)7#VWW:T+s*t~>
+d/O0tIqJL4r_<3<ri4TMJ,~>
+d/O0tIqJL4r_<3<ri4TMJ,~>
+d/O0tIqJL4r_<3<ri4TMJ,~>
+ci4'sIt.Gl!+u(Wri,tKdJn^~>
+ci4'sIt.Gl!+u(Wri,tKdJn^~>
+ci4'sIt.Gl!+u(Wri,tKdJn^~>
+cMmpqWr.AGWlk?l~>
+cMmpqWr.AGWlk?l~>
+cMmpqWr.AGWlk?l~>
+bl7[n_uG5~>
+bl7[n_uG5~>
+bl7[n_uG5~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+NW4M~>
+%%EndData
+showpage
+%%Trailer
+end
+%%EOF
diff --git a/macros/latex/contrib/beamer/base/art/beamericonbook.pdf b/macros/latex/contrib/beamer/base/art/beamericonbook.pdf
new file mode 100644
index 0000000000..24ec61b146
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonbook.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/base/art/beamericonbook.tex b/macros/latex/contrib/beamer/base/art/beamericonbook.tex
new file mode 100644
index 0000000000..aeed796428
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericonbook.tex
@@ -0,0 +1,106 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[12pt]{article}
+
+\usepackage{pgf,pgfshade}
+\usepackage{xxcolor}
+
+\usepackage[papersize={14pt,12pt},hmargin=0pt,vmargin=0pt,headsep=0pt,nohead,nofoot]{geometry}
+
+\pagestyle{empty}
+
+\begin{document}%
+\begin{colormixin}{100}%
+ \pgfdeclarehorizontalshading{cover}{20pt}{%
+ rgb(0pt)=(0.84,.5,.5);
+ rgb(1.8pt)=(0.82,.48,.48);
+ rgb(1.9pt)=(0.83,.66,.65);
+ rgb(2.1pt)=(0.83,.66,.65);
+ rgb(3pt)=(0.69,.25,.3);
+ rgb(8pt)=(0.45,0.05,0.05)}%
+ %
+ \pgfdeclareverticalshading{side}{10pt}{%
+ rgb(0pt)=(0.78,.78,.78);
+ rgb(2.5pt)=(0.60,.60,.60);
+ rgb(5pt)=(0.25,.25,.25)}%
+ \noindent\hbox{%
+ \begin{pgfpicture}{0pt}{1pt}{14pt}{11pt}
+ \pgfsetxvec{\pgfpoint{1pt}{0pt}}
+ \pgfsetyvec{\pgfpoint{0pt}{1pt}}
+ \pgfsetlinewidth{0.4pt}
+ \pgfsetroundjoin
+
+ \pgfsetlinewidth{0.8pt}
+ \color[gray]{0.5}
+ \pgfmoveto{\pgfxy(6.5,11.5)}
+ \pgflineto{\pgfxy(1,10.5)}
+ \pgfcurveto{\pgfxy(0.6,9.75)}{\pgfxy(0.6,8.75)}{\pgfxy(1,8)}
+ \pgflineto{\pgfxy(6.5,2)}
+ \pgflineto{\pgfxy(13,3)}
+ \pgfcurveto{\pgfxy(12,4)}{\pgfxy(12,5)}{\pgfxy(13,6)}
+ \pgfclosepath
+
+ \pgfmoveto{\pgfxy(6.5,2)}
+ \pgfcurveto{\pgfxy(6,3)}{\pgfxy(6,4)}{\pgfxy(6.5,5)}
+ \pgflineto{\pgfxy(13,6)}
+ \pgfstroke
+
+ \begin{pgfscope}
+ \pgfmoveto{\pgfxy(6.5,11.5)}
+ \pgflineto{\pgfxy(1,10.5)}
+ \pgfcurveto{\pgfxy(0.6,9.75)}{\pgfxy(0.6,8.75)}{\pgfxy(1,8)}
+ \pgflineto{\pgfxy(6.5,2)}
+ \pgfcurveto{\pgfxy(6,3)}{\pgfxy(6,4)}{\pgfxy(6.5,5)}
+ \pgflineto{\pgfxy(13,6)}
+ \pgfclosepath
+ \pgfclip
+
+ \pgfputat{\pgfxy(8.5,0)}
+ {%
+ \begin{pgfrotateby}{\pgfdegree{45}}
+ \pgfbox[left,base]{\pgfuseshading{cover}}
+ \end{pgfrotateby}
+ }
+ \end{pgfscope}
+
+ \begin{pgfscope}
+ \pgfmoveto{\pgfxy(6.5,2)}
+ \pgfcurveto{\pgfxy(6,3)}{\pgfxy(6,4)}{\pgfxy(6.5,5)}
+ \pgflineto{\pgfxy(13,6)}
+ \pgfcurveto{\pgfxy(12,5)}{\pgfxy(12,4)}{\pgfxy(13,3)}
+ \pgfclosepath
+ \pgfclip
+
+ \pgfputat{\pgfxy(7.5,0)}
+ {%
+ \begin{pgfrotateby}{\pgfdegree{30}}
+ \pgfbox[left,base]{\pgfuseshading{side}}
+ \end{pgfrotateby}
+ }
+ \end{pgfscope}
+
+ \pgfsetlinewidth{0.4pt}
+ \color[gray]{0.2}
+ \pgfmoveto{\pgfxy(6.5,11.5)}
+ \pgflineto{\pgfxy(1,10.5)}
+ \pgfcurveto{\pgfxy(0.6,9.75)}{\pgfxy(0.6,8.75)}{\pgfxy(1,8)}
+ \pgflineto{\pgfxy(6.5,2)}
+ \pgflineto{\pgfxy(13,3)}
+ \pgfcurveto{\pgfxy(12,4)}{\pgfxy(12,5)}{\pgfxy(13,6)}
+ \pgfclosepath
+
+ \pgfmoveto{\pgfxy(6.5,2)}
+ \pgfcurveto{\pgfxy(6,3)}{\pgfxy(6,4)}{\pgfxy(6.5,5)}
+ \pgflineto{\pgfxy(13,6)}
+ \pgfstroke
+ \end{pgfpicture}%
+ }%
+\end{colormixin}%
+\end{document}
diff --git a/macros/latex/contrib/beamer/base/art/beamericononline.20.eps b/macros/latex/contrib/beamer/base/art/beamericononline.20.eps
new file mode 100644
index 0000000000..3e2357ad08
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericononline.20.eps
@@ -0,0 +1,545 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: cairo 1.10.2 (http://cairographics.org)
+%%CreationDate: Tue Jan 17 16:28:57 2012
+%%Pages: 1
+%%BoundingBox: 0 -1 39 39
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 3
+%%EndComments
+%%BeginProlog
+/cairo_eps_state save def
+/dict_count countdictstack def
+/op_count count 1 sub def
+userdict begin
+/q { gsave } bind def
+/Q { grestore } bind def
+/cm { 6 array astore concat } bind def
+/w { setlinewidth } bind def
+/J { setlinecap } bind def
+/j { setlinejoin } bind def
+/M { setmiterlimit } bind def
+/d { setdash } bind def
+/m { moveto } bind def
+/l { lineto } bind def
+/c { curveto } bind def
+/h { closepath } bind def
+/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto
+ 0 exch rlineto 0 rlineto closepath } bind def
+/S { stroke } bind def
+/f { fill } bind def
+/f* { eofill } bind def
+/n { newpath } bind def
+/W { clip } bind def
+/W* { eoclip } bind def
+/BT { } bind def
+/ET { } bind def
+/pdfmark where { pop globaldict /?pdfmark /exec load put }
+ { globaldict begin /?pdfmark /pop load def /pdfmark
+ /cleartomark load def end } ifelse
+/BDC { mark 3 1 roll /BDC pdfmark } bind def
+/EMC { mark /EMC pdfmark } bind def
+/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def
+/Tj { show currentpoint cairo_store_point } bind def
+/TJ {
+ {
+ dup
+ type /stringtype eq
+ { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse
+ } forall
+ currentpoint cairo_store_point
+} bind def
+/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore
+ cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def
+/Tf { pop /cairo_font exch def /cairo_font_matrix where
+ { pop cairo_selectfont } if } bind def
+/Td { matrix translate cairo_font_matrix matrix concatmatrix dup
+ /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point
+ /cairo_font where { pop cairo_selectfont } if } bind def
+/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def
+ cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def
+/g { setgray } bind def
+/rg { setrgbcolor } bind def
+/d1 { setcachedevice } bind def
+%%EndProlog
+%%Page: 1 1
+%%BeginPageSetup
+%%PageBoundingBox: 0 -1 39 39
+%%EndPageSetup
+q 0 -1 39 40 rectclip q
+0 38.4 39 -39 re W n
+/CairoFunction
+<< /FunctionType 3
+ /Domain [ 0 1 ]
+ /Functions [
+ << /FunctionType 2
+ /Domain [ 0 1 ]
+ /C0 [ 1 1 1 ]
+ /C1 [ 1 1 1 ]
+ /N 1
+ >>
+ << /FunctionType 2
+ /Domain [ 0 1 ]
+ /C0 [ 1 1 1 ]
+ /C1 [ 0.854902 0.898039 0.945098 ]
+ /N 1
+ >>
+ << /FunctionType 2
+ /Domain [ 0 1 ]
+ /C0 [ 0.854902 0.898039 0.945098 ]
+ /C1 [ 0.67451 0.733333 0.835294 ]
+ /N 1
+ >>
+ ]
+ /Bounds [ 0.155172 0.75 ]
+ /Encode [ 1 1 3 { pop 0 1 } for ]
+>>
+def
+<< /PatternType 2
+ /Shading
+ << /ShadingType 3
+ /ColorSpace /DeviceRGB
+ /Coords [ 18.246094 15.714844 0 18.246094 15.714844 29.992188 ]
+ /Function CairoFunction
+ /Extend [ true true ]
+ >>
+>>
+[ 0.799991 0 0 -0.800009 0 38.400002 ]
+makepattern setpattern
+35.168 19.611 m 35.168 11.045 28.223 4.099 19.656 4.099 c 11.09 4.099
+4.145 11.045 4.145 19.611 c 4.145 28.177 11.09 35.123 19.656 35.123 c
+28.223 35.123 35.168 28.177 35.168 19.611 c h
+35.168 19.611 m f
+0.67451 0.67451 0.823529 rg
+0.8 w
+0 J
+0 j
+[] 0.0 d
+4 M q 1 0 0 -1 0 38.400002 cm
+35.168 18.789 m 35.168 27.355 28.223 34.301 19.656 34.301 c 11.09
+34.301 4.145 27.355 4.145 18.789 c 4.145 10.223 11.09 3.277 19.656
+3.277 c 28.223 3.277 35.168 10.223 35.168 18.789 c h
+35.168 18.789 m S Q
+Q q
+0 38.4 39 -39 re W n
+q
+0 38.4 38 -38 re W n
+% Fallback Image: x=0, y=0, w=39, h=39 res=300dpi size=79707
+[ 0.24 0 0 0.24 0 -0.719998 ] concat
+/DeviceRGB setcolorspace
+8 dict dup begin
+ /ImageType 1 def
+ /Width 163 def
+ /Height 163 def
+ /BitsPerComponent 8 def
+ /Decode [ 0 1 0 1 0 1 ] def
+ /DataSource currentfile /ASCII85Decode filter /LZWDecode filter def
+ /Interpolate false def
+ /ImageMatrix [ 1 0 0 -1 0 163 ] def
+end
+image
+J3Vsg3$]7K#D>EP:q1$o*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=Al
+ C^cenm@9:1mM9jS"!dTMT<$3[GQ$8#0$s<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g
+ 3;B=(iZ<kDqOVYttYSaQ6aQ-/T4[TuShF-2F$E%kBGjl5g;[p-9VX&cgN@b"R3)OVA8a^ir
+ @[FYe@c5!g?DR!<H#(&MUgMOPBmWXl>k4jFBD;.4M(?#194.a^:j0=chE@t<EV0]hRY#dIT
+ ]WO.k.?8081<j-t="i.iAbmDWG"X:'j77I8`hn$Kb]1,HmcTMIn$:[FISr\Bg%=->4':in%
+ T->/)F\@E!5NOcVX_;/l)<i%jdB^r6-t9+=r)k".18JH]IsQ.OF*klQ7SLNn2tV/%07ACr)
+ 3S^-<ZXS`Wq(aHlm9sD&]0#EU[c`#>'5JRrD$5aYD.H*sOe^9Hsl_jjA0e(e,CWAOYa,U2q
+ 6M_:3:jB3_rhRqD3CDB%bTaEF%Bl.Tqm7p3!2SS""aF;_28No1a$&\;3`-H!)"3\_$Wn$pd
+ XVSO4kl+2$ZkIL7*;@>M[INPI"`-7S\)8,.;m[TUNZRj47>;J^iZG2nVM5G@<-Y^kK*bU>n
+ I%G8]j]`e(dH+WbB@5aEfCe[tI3',oML=(>I:m+5-[Fj%S^r4aBJnsg??MhEZ+t@N1<J$WR
+ E$b,@2m`7Y9lVUo<.IW;Bm7]S1Rn)fUpZQm&Ep\frAeX0Y>.F\o>>N>8n%e:B!uN;:'HWQ)
+ XD%`eUE9)BNP%pPRu&Ft.oKe\-)%==7'YEZM'_]Q>48&_)-[LOnc%AbK_IA_CpKU3pS9ETD
+ Kf\__X[*G:5qDpmcnUiR@7!P6M2-F9U:4=6O/CR\7:oR.gj^9jUUQ(2*!]FZm=b$Zp(&8\i
+ =)4G?3`ehET)<U2GDB/,HBR=XoanLU0EMiQ)T0&b5BUf<qQ>N3?+g-&,#+=7RESQ-#?CG,k
+ *+9c+JZ*Q0B0tiijq^CFRWM'>B4fk'8b8S;k@SmY*J^K).%ASDT+ST\0j8:s`hB2B*:]P7X
+ n[a@lWgWK,G?8OdSq8q(^As-hOWhln$nrY$*&4@#D%ZSR-)NLLE=LXp[Xr".J.SM8$Sq1Sp
+ XDl?lFfGIVJf=Y8d?WHtW*M?b#NS0EoQY!T)ml5hd=hd!E$@Nj;fgVIE1IdkbYgcPc?*BHu
+ >L%sC?(`u+%^6TLp>_6Sk/&Ca+',jC:SW:3ZZ`J-dCX,kn<3Y6=_H,sB/[5"%)7j-P+,K+5
+ SiT)_J_!i0c:j<BBlLp![KH=WfG)pY,4icLD*Q[Sf%oJEHLQ"uXO<+6,k:6Gj*+FD;MDYi/
+ h&>1gNIXbn3]UX(0-$qQ2bPH0XQ?+Vfut7TOCW_K_qcK/iU2?&I?>%Kco[#]fhlODDS'K4A
+ 0&J86KXq`Rs8QnaLURV`auFue/i4(0[^kLQuEOdl8(ofnJG&>-q+@N4@[]Z*m8)B5#M+O--
+ 5_>&_q&[iHI"g4N)8X<*mUId/N'0s*f#\qF:892.CZKNmEB'1?Mt.(+VA+90PYXM$c@X4$]
+ >JDF?e$(-E`1fc;<O7o)F^36-9_)$>_m]XMp%;K7"'6dee-;A@_QaM\pJI)q:)3&ONjB,Uk
+ ;F$3CiYXW<^*`%H6N*)6%ATN5?j5bYe3_K4I)#IHr:j3:uSi]BNcDD;g>`A4./r"oD(P>2J
+ 9ZJXDUM0+QFUDhU=1:&%6uJJH8d6g`+L>162k6YO6caL0,,\^LOYq$#*pFP)#>JTtK6VE"i
+ rFa1.O@)')6]*i8O90Qi#Dj3c&IuX2A\5p0`ti6%Pc^$.5:OmQ3_pMJb;TN4M7oL(;m*:&3
+ eTdOF5BJ=V$X[/4I6*V8Ka3%b[%=+>lHB%s@?Sk;"bD4.3IaQ0ugVK_F3:msJX,Te#5G"5P
+ 1^B5Y;%e[aF8-WOE6;o5]`&arh>3n\Slg+<h4ZoB;?^)MkX'ob")3JT<YXpRUuO3/e07G,3
+ k8Gm>]6%*jR:uE>RTq0V$*Fl0kdosZO_[kK<II',lYdBRW?ebAOR8EX:<e:0<.n=?V4,]lO
+ _B`O*YWQUWa2.OAGf5J$K>o=kE@reWN[>ZmR-PkYds@q5)%1?I_"Y>2EoKjqeSsq6@33nCH
+ H>,h(9V20*2B`aN>1M,<?`MjYc-SDn]`GafkrEPfY<FIIP8_$cl8uqD]0e72oc"H7ZWpc0o
+ %Z&lo<90_p0Qgm)6kZ*Vmr\1H&SJ)e3\*C!3:$I>n9BR4X."*Z-O<;96I67SI2-/g+^7Z/q
+ [$382b)b<V+#O>_3(ON$8>/$[)NXgH'UF=T,G)Z+f"@-eiOo>_a.lG[bdV9@Cfdi;WFoK@)
+ *iZ08fA"rcMTQ21)]]3t_&"Jed$aB/",C_1>Ttcd\=Nqi'S9;<!%f(nDqB'5@/!%pZ4BXZ<
+ EDA7UbW9K#@n%4OP/MDOe7Y6=d.uATm!`NaBk%D3a,Cio5A2I]U'=`T*a=\RdAera\,QK(>
+ P!6'.&>`[6P3g#3KG]B5rYS3o$c6h;/0m04bm#/`gG4Tj(ra!T4%=2j.L].H0HRKroG2r;)
+ gEod"kG%3P-)C?^9)N29*/kaf"KE)tCnnOl5Ml0>)T?Lq?bm^=1dTo081)P8#qJ0,DG^Fph
+ WUeV@^'h-7@$p"eB71?W*"HUrV/I/Ymr",GeRl[S&AMELL>E6eF&\p$:*!u?j/UlF;]E09l
+ 0qu7(+)Jb-iV6+ZKG8>i/F-FpF6JJ`Cf,`l;B9(,D4"7@9HYsC>dK/SI#Ic0%[?P"R-Z7F1
+ 1cOQn>tL+9X>Pc(ar*R'YDh+aBh'g4<ho6r]-5*UIH]B)_qT>N+m;,ak)JdR]j0U&n%Ud\;
+ sM&'WX^<mZo3Ze+-n#9WB1WtG+-87>SjieDVj-'S5L7mJ9l<5gc.fsf,S;O.VV@(III+^Qf
+ I,?Ys/<Z-9,'7BP$W>F_.RVlr'nP0"GoO*^OHWJ^tUqRN62_pS##8iTas)nAXAW<oNgTiV*
+ HZ>^\0eB;+l8Woj"@`6$uJ8>DLF"mGVgRYJ"P*A;4KO)Q!_Y4^pFSI'\)8@T_7XSuY.*+A'
+ ,!UOsFo'PD'UHu[9C/Wb3.,BIN+)Rlo$"b4hV#!AtVFiUbU#=+UWsWDdqrMuCCrG4KfV:a(
+ cL99^%Z'kQXM`D>*eD$G+m`CKo_U8+&$4EgCZ+Z!p2A4j@jWg=#$uBUA=S@RiekCfU$`jJ]
+ )td-,,8]DXe:'DW/Cj&n"]4iN-H>"b.H[r)$,g=03\WIN*da*)I_")kC+E7DG`^PA3oc*_9
+ sClZ5]\+pd+0a!QtaFN#Ua**q.Z$E7u@N9Zr"c$B^kfV'oAQp99>/*as"*cS23\FreE-*5u
+ t+@c83`r9c"AKP6>40od/g4U@bF)T]N,&<\(XoWXCk)=PB_n$(W-hY1Ht$3p9l`pdoMraQ-
+ PF:f4!YRI8fB-8jb,JrF^b75W;lIlC]+/sYA$Prr^arMYh;Sh3S!SW:gc5_Un'gd@o;.?8.
+ bnZqtk5j#66/6Otn/N$tI=^l-0VKhEmg0$$)q&j7&WUpNNZXCP/hNqB`@)h*?6=`oIL)Sb9
+ ^[=$W#m1?HpPamO8)V9P:L,#;M"co#Him/d--XH%\^E-BmhM[]_Jec%$8L:;==W"L`YuD#Y
+ [Af$;>j\!Zn3in-1dOn-2pSmeER8,/rghng<('4<H70*l5!!O5c)%lRM,";:5NN`GQc;QSO
+ -+*+@neJ_907D^C=R,f4O._><i`d0E(D:2YY'C<H^AqB$A`2PJ_LEJkkKlML-o)_lpb&Ap(
+ dj#B@&I8.^&.%l)H*ZgKr3-)S_';6q>O=i-7+0XPqdisr0JpPB`3RalfmoqfXh]C-0E)2-.
+ d#eGC!>&-4096%TB!BAY-=W\E14cBQ#NZG(jMqkf*^O0O+k8gL"$clr)*uaf6'`O1*Z]#K*
+ Xm5e'0M-aP;0=f(ZE(L"nirk@eUL@40qU-1V,4_dj:)j0-Siu@H;RIoGj%!"&Lj)iUKANAm
+ %mN49FM#oPcE=18N>?+n*/e!N?@O2)pc47j7h$ULQfgiep+npTkr'9jf"#ni$)r8s?qZP.N
+ <mW7mrr*_Y_]:!h/n&0I&R+sUW3+n[:`KUB+R*H^!N1]ZDVi43ZCHf<dG<:N3S@6i<R*FWI
+ r<#%\N*j1X0o'83?B]T[HWZ,R(9(6`]ct`hB4s`"rC8'6*P$Lu/efIZ[riqe-B_3B"lL-C@
+ 8CWbmoPZ^#.7r[W*fuu!2,RC39iX&^<e]aDPtp\0I7b+0ppFa*oTN=?X[^a$.$<lnm`>85%
+ d]D?+n2HdJT_q4g_R_n*L-RueH&D;!#AN6*+@D>[-0GBb>0r">dX2F<8h*t[nm*<!Y2J3dB
+ OVKfj7W')St!?m$\b[aBrB'0XW5Q,@sd'0H/p!;U/lVU%_M8jrZ-\+&7qe8k(`3JQ>a6@^U
+ +to[(LLlMY/TmIA[I[80is7:^R5A@6A70KDR]cXKmMA2PVT_dm);M(Q$l$C1N4Ord)Dq]Mb
+ BJUqp>n0B$*BgFVa>8E2_9iO&G!ZhS#*S-PA_:Lq<?U,C(*C4!L(!BeRg)Y=n?7KY.(4I9T
+ GT$V8(u^u)m>V:&S/Y7(?fFCA1Kapi/4M>><&5>![(>^(+(U[C@Wk-]nfolnL?357A!2-Z`
+ T]0)S0(d+EOQri(A8jD@r]@?+nLP&iYFH?pg\=N&HVHo@IIACgKmZ3:UZ0UXWL;V)WU@4*b
+ oX7Q-!dMASVt`>4h\XDQjo,iu8Q@o+g:hTn!uR_Rtck>f"8s+l@.R2OgE/,tM8\oM'SlPk^
+ FXX>Uq;:e)qn-"OJ1?D^+4;]Ae^#3_69@ndMjU$+*Q-ZS_gEd,-B[;I5@0Hj?,g(6N*U#[1
+ )nLr0*!/=gL.C^AZZMm/Q>5!gm'0Pf9m6=PX>h&F]Qm$4rBknI49sja4F;&jNWErTcl?9^(
+ +a+[_p(mb6P/44@7X',E.':>]23nFe,nqAnkkLLH(=^_FU,RM<A7Ucs*<GUkoUdO%#TerMi
+ 3!FO!\n4p#CWH7IDT2Y`@1%f(@VU*cGNgp`\:oC5l/=`>%-&@ko,!>*C2T8F3RP$X&2Xe++
+ `"FJi9fa<Qf-a"\lK]CR(q%6.^amWK/3i*C4KtK;La=_AcENKgH\9:hmW+Da_G"SJSCf!V8
+ `W.O5Z<."V=7E:+e1"]oZ$@rL<D0&l)](+OrJ/(KamX6e)PJ0,7"MLk5;Y6\_(*ZjZ'*Yl=
+ /W&F8b#_VH0$)-<`29D4Fh.i7\NVM?Ffo&+\!C:k-!\UG[H(O<[O<!4i6/s@UED.?4$mCdB
+ #5DLF!RMm0d0LPj%p.m<C[2L#H65H.puQu)Xl1st%P*0MArarG62)Ipmh<'A)9OfcUKrc]*
+ ?`@.j>MW?iU"(Q50"MhQl+GB=Q>CoMkXY1R2F[a<;f*@L)kQ/K@i<Wmk,AAJ/h/Y)MAPF)7
+ CZsR0?B*L?V-8(0+d>_`iZJSn$n@<JL[?I+50h+&LDC+lf1a2HjiFKE9^Hb<"DC4GkKC)kl
+ DQ_:sOP*K?L2G$0Z^)3:MZk?W34NnQJpH9iJcLMFYG\mm!JA#>q;$o[Tmp-H_F:4aNULIKJ
+ 4VEsf_,#<VjonfO2DgM5-mu">MG5m;%+-]c.U9,(!Lq^FlbMeV3;!oCL$6BEt(J8rCp4li%
+ Za4h7:&5s<pt;\$Z(d[=U=eQmJWimZ%AR?I!YsW6O/*O7NZA.,(1FAWUI6's%$XGeC[kjSC
+ jAU61`WI'8X:->g2&$OT\?6,+*XhV#6e+_$Q1u&*c;*%6)OUMOt>%o@R9f;8>Lbt0H#3pZb
+ &6(g8VFpV4q0aU:.>6\gS<PO$GV-(40,jf6Hki0=A6_(h(Q&"!5%_V*jF,.YC2s"3qm#3,f
+ LQ"'-?DEA]8`:O:AF-NW_k0tT0]]80[gb\YQDR!h[K,Up-V7i13t@OO-;g)j=<Hf<k(gWs(
+ ce])n[UA9eUS);7I/&$20*Au<+\j%,EV8&Md*FW1h@D;u`N*OG>'iS5ec?qIBa?>+EZ7_7A
+ c)VMT?Mkd>,Hm$8;QtS4GDFRb`BiS5_>+2[4iCe8gnF8C!f\d3N>`Dulis^.:Q$aVc6:H.+
+ 4)jkU#Q14frB?AWk6s(qq]X]9?2UGa4(,ciRN,eh9pB[!ZPYj!FQ\:Z's^:-&u^\7:?@hH5
+ U/170sAE;"_B0hk(F']A($F@P]et6UhcW@RdXIr%fa!*]CoG3)\W1na[c_!>a(=*mWfm)mU
+ N*FB^aV,'(?qZ]@D#$]TL%d2K@=>]mbHdM<X5dI[m.]d7H^T,Rf;(^H9\l`*HI$8tSHb!Sc
+ @f;)mmX\B%*+(_1C:QJ3`(C1RA,LRekE&BOq@4+m6__UO?r7E.=2(!nD.(Mu4c)91gUCY`E
+ MU.IBBTpEWZC#?pbfn,O;)BIaD[6ajd$][&]s#-j'H#fXa1QbZF9.E6q0,j$ntBb__-@c7[
+ PEM4kK4.oCoE*Q34;-A;rQRT',MO-B%o=%//2Ml3@5ru]j\O/+"s`T*63j'LPRKELjf+CF6
+ S$<K5q]`=T0Wh\>6@n$m.*hdMZf-a!@&H7]#OXG1?ShOkI:>,nmNJV8:j=]Apq<<RH8"jdD
+ 2N57_MB+m*uoClbA,g\_fH,]#bO)FN4"kD2#lE%cdc'qs#3%eE.&kA^"X=*,j%''CeW2,lZ
+ ,9VN4Z;*0*\X%")JbdYJ,2obh0F=K'W8QCT>[?$Rb!DH:8_M_6uiSW\-/>a?)!Zpa:>Ke+-
+ [gp-eOQGe"N;qY%g[K[rnD7=&?PA$\n(_5alF!Zu+^*tqQ^\<TG`b64RrbEY9H>GsE*!8m;
+ MAU^#P?>t#p,NX%_''4f_BL!?Og^ijjrsM45Q%-KLO\fIC^I1QrE,Wpi4,T/uQ=0de@W>hT
+ _rTVH2W;3Sj.je+*A9Rn`&ZRFLYM4eGO4YP7\?LI.]^hm>F;q>3a4;lMF\V+LO[IFW*(-gT
+ IVqfP#./r+f4XQ+T2>7VJ_=l-r/4-tpSEoit]>;Mh.2Iik"b._5dY-k#ZfX,5%(,tSQWFEt
+ l0,cIogR7@%X3]r>-aW?3h0EL99'/Tu8#"FF=RMGtVcTnL1*&CZRkFohFktl3>MdWSXC4+h
+ lNXB&?I[sl*fihBA!tU)F8?muM_UU[?n`P$Ai#".c>pFcDe=WMk1"B6)K$WeX4-B\=^I)C,
+ M#ifDE8i`kq%PWi.7Q!+qTC%LMR6D^aSa\n/hsVmenEQ6=?snNg)%%3[tJp%4LL>P,>49Jc
+ )F<b)uUiWs@nYRB/org<Q9Z;7(TclUcnJSd#M$GF-=;ggN]K)<Ao2LH4.:XJ_Nh^m>7NfPh
+ i9Tmg\rX@_!i((>;hFYBXiQ>N3Cq=<]!LZtURSoUl+2)US+dT4Vud:?gZ9@;<oRB.o_3OAs
+ 0DJb[CK8eg%V^sJg;"R0hGb-:nEa5(;iHT2UA_FG-S#9tjD]VAn]Qor9!Tn(.Nu@+Ye?<Sf
+ o:#t8kfP1>bOCZ9n7faj6#^+GHrj-]Ao=.NJa@<N8mN*?=RaIhR]1I@6P8#:MOtQ^a6cuTe
+ >@:LAXeI;P&-^:.B^&sa+E)j(TW\>n=Blanqs%UH.mNc'[c!Wb,+?sG=\X:ODQ$O]X*/0;U
+ i'ZZ7jZbUpC<:oR<4s,dc.^D+rhG2)<Vs3A=+\%!B%BiETe2Ko'8S:^3dhC7clqq.&O^L1"
+ _aB/+(')VMBr8fL7ic?blOq3u8#Vk#]>e'.6@;*9nRWc=Vb]B3q[XIJR@=7qLBP/7"S94-=
+ 4Y,6NhR?#Gu=Xl0+Aj`g;6E4nrQ)(Ina/4f->D>_VGfGMqLN44YU#'8u#D*5.?&-QMG91s`
+ )0m;/?08Ga9;<'5>UOi*HBqYS$dR[AHQ:gW8Xb7'*bW%Z]Uft;0@ps+)aMBNGl)28:52[aA
+ /thnCi*_eEEm4IB%beBGlC&aI::g6XB?<.WFf;%`d+;"DYF4](nNY=jmLlPjgi"PPk@Lk]t
+ :&tq&[-\<-miEJlZ`b)QW2-X67pBIec4fGn*(22VO$c6Wsr+I^]GV[1Je"*fl7jV=oGL&\:
+ 1J#gdf,&aDQQ_"r$R6,g@]nDhPuo,W]BFH5nXDMM?:)e6[*NreT"$c6(jND+XIdGX2C;k\t
+ Y3S5]HBRCgLQlVsGI1*@G`L*p)*AH`;(^/u>$lJ:Fir!dOUQ-s\d+WuSFoDj__E4/QdMg!P
+ >)dO130u&C*Y%mh3&0F-UPdqH&^_ITOlH/eaRW<*78UA?c?pOdooO*oouL(orX(boObE!"'
+ SlsL,a8HSKg#W)U81J<it*8OiWtj+g,3ABmkSD&bsA2[ih5l2?8.NT.)XJGbOFI2,M!Zl@>
+ Zq;&WSUK[=/Tog-&(s]8*^.+3\dq@)ldK*lr`#PdB<Z(n%Tbd.#CDEst*n]Mo`cTNDRfY&V
+ EoXY)uNHUui:U/'(nAPC`lN$3p7U[[hEKse^T1j"_4K&N>8hG?KTn<\on05-LA5G#dBh&E$
+ ;*(/9KN\Tg!h)+Ae&jAjff%WZ-Pa?8Toa/a;P:,-2pdYes?_c%!5"s?!*[B$Z_;X65i;B]!
+ &<<3X_ot5tnk^>o^jF7HMEPE6lpf94F%cW"5mO@!8[.c`)EEmnbqq0rMV*9DK/>e)aR1p[[
+ +JCBRU_N@*YucJ=hBf$/k5F\S7>1#%XKR/:4k)>N2c!"=NiYBYh:%7!-\h0UlNW[^`%:I*$
+ _C2)lM/;*YHnH_T;;W&UO+LkE5@+j[;'5UjaA?njV.Z)b#WoCd[MNWQAc3MBC7[776QhO(%
+ ZS#K6OZ"26gW!^8d3=Rq_6\sQDBio?kX2]h$:Hdg`1:SBcA\RUS@O&\G-C(3]Vj4%t,A<L<
+ "Hon>4QL@fu7m70'ROXV`7?eJH4X+HF(']f(RnCh2PF/Eg,EQ"8&ZIb0SU%RYoUh-u`]O_n
+ A/=1[C^m)Z4RK6C1'PI,(BW[/#CRtk_n@%MptRTd]Fg0)612*0#%s^f,9*a$'"Gel;/c'JZ
+ r05Lg13Wdb,qYNAOsuT`Z'pUBj;a5.0#?@:d3]#qLiC>>,n:YVbri7_[,QS1XYDfmNol`(F
+ %trZG\nmjjTSU<-"#APF*+&o,E=LGn"c64VF2u]B63E)\X6<;,LF`esq4$U%&icBoFdqB)'
+ W5=trN,XVO91rDq>#0QCEW-I3;S**C9:"t8A"./sUKedad8OR3i/3-L4]+/W+.J$>c]-BA1
+ `\L_>4Dc,N8@H>0gM'2N!=tuDu-J+1,MBp27;G89tB5:#L/_FS&HOk]'O@KlI*n/Eg`A_Jt
+ (uE_b`W3a]I6;`ZY#M=P=qkP<Z^/XNot$Q80G$P68,#R?*f#AkNhP['LOO%s)8<8BQ-_U$)
+ #?pb2dd0HfKSO\<6qPi5GpTs3^m/\)p\Y$hk?u+#=c//"WVH?n_2,5E7,ZBX&S&0fh'5+80
+ -GmG+52Y[KgA;e)f0cl8o<+S-`sOoBK.JpB]+sCO/<<J"Jt).&()Q(o%@sNTY/+<_COF[A2
+ bkA%dse%'pLcK04=8ELJt$<m`gp8_\CYs4C!U._3IK.bq/@\*#[/gmNA-Af]LYGB"cIQ2l*
+ s9\erC;5m3J@FPh(kj!J\JCt6RGj"+(2L%cm(W2>8]IWV-7HiOj29"[<_:?1%^pk<ujD'\L
+ g05NiQQ=e1G?/$F@6$YujZ7aSH>FO.#B7Fs,68fnIVFOA+Ur"Z2kM8Y/`g2"(IR'q!u1M@C
+ ,)8#l!+0Jj.2'/#MG@aGGe1.NjN4(R<e,3K5)4IX4WA.IS#0tk?Q<Z4c+.N)P`!]%FO/nDT
+ :e^4i6B+&\pFtRQmj@[*j[jHPigb*H?uGk]ho6M("8P0-WQHo!=]+fEG)[#;B0r1P[r/Hjm
+ @?,[btS\:'-B0Fm;e,1(/;UX?WG*^)"Y]g,b[4-V'iALf:^[,\2I,F==Q'YU6q(Aa>SOJen
+ QI_J)[\b\h3f]G44[R(h.^-Ja59BDtbIP"rq^4<B#PN`V<9nff`#A`_DlgC=En3[TPP#H-/
+ ZgifTX9W6P5KJ.,dEdSGplV4nW*jlW:jJLsH&n&4-0r3"C]HQH!P@%:3MH?p.")B"LPUfY$
+ gK(=qJM!`>)(\i\8ZHn+F$4./riMI-STWI5^A)\AHs1gMdoCG92H#&XM3?)'?jKCJAOU9P<
+ F0%QoK8ILj'(PG7:^VTKoM"/0Z2>9F8og,abMs$m32[WX5&A$FD4dZPu5uX#:fC[Q&]/3.)
+ ?Ke;Pfn_Xm1_"0Y'*mmAON_`93HU_t?*F<(E)+nG'(ip]Hb]T[.t8!qe[@+;lP,)<ugLhe1
+ >OF81fKT0)U"]/J0!L+':BnhFWX+XlM0VaDk`Wq*f#C7'gk\u<1'Y1#;Mj./(]IjUT<Q0&\
+ 4W6JsUQUQ]1rdIM'++UQU'*dc,p\SK`WQaj)Ub*rjVF5a[IBT[dS2cAIQDRbMX0OO."$a$B
+ 8:RG8H`nQCi6iFE'k=Z7jP)IZo?#sJk&^K7qs-`lD[:<5g'FTa0=)'(fghpFL;5B#@Mn\OK
+ f0!R&fk1"\<"(ZMY1l?\SC"885BNJ:%S5EA&2TPZW:3Lj_8s$a@6?\R^ai<2N)t_?i2J^8'
+ p=3D]sMeidK,OIN&_FC)f\j$ih[32E#ZEG3SeNl$FG`e,9i1b+Hi;jT>'79j_&KQ"aInA?M
+ -:"_#@m&SD/XJRgt7s(oKo6S=X!_X65&VtWmfQ7qNG)u-E#T/4*neh[7<PXu'"e]\"6'N^<
+ ^(rh'UM+(jr(T_4I'M\T4gPHQH=!UZgqM.QXC@QPb9=M+l+lr6%(#1V.M`8NgbK4takWH,7
+ *n7/d)h`5X-6dT8S:jT"M.P\[LER<ChZ(sW<_1K9pidlUo-qnmnjJ_3t0ugUHVE]X<H#i:)
+ ^'j2#'"l28BX]d@#nc+]&Dp]8()ZS`&#2)d/#:HOo2Z"b:*<5ZS&n5ElP28<U%"$"F1<C8,
+ E-YQ>XnJBEZ*MMKhlMe!NuluNWAoVFNmXb?S=D#?JmrJ00B:Vt+G>\:uj"OMfF4p;+HgmSp
+ E(;;&'0ms=$lIF7^@6/ef7[V@M`=>AdmSlml6Nl1A*-'6aEXZr<d6uni>iJ7edlj@I^W:\_
+ U96l]YYh1sdBIPEHSe%BU'@96(@ZJOaDqNMaTgsn.G/s?@!Di_>R'GUPRqQ5!-ck2@g5J7U
+ :U7+n6ZCPHdCVtL[?U]'2c_0?FJ8j.8nes'%f;PI8`i=MWokNfbFbGh?Vj;``T30A<tRne3
+ 3@#TCHKgNBGg@GWI,!.+LM[lPdnT$GrW*`h`IEAOFi;77-q,d1kD9I1jfci)*0jb2#^M3ST
+ B5H&p<t\/aR"U";p[[g-;V#7NVf#\jSEG(uB&=U8rGX8N7LEegA.&f=gW)3P/ZiJoK<31XF
+ k7(e95Pp7DkLH3?kEABWPI1)]kT%V%_Rbe;"15FCr;aY(MiuU*/*7K%M`aiWch#]cBWX7m^
+ ac#&[1L/:(%U/fo>3\^VKOifMHdd+&Z.,Js+FV"<H.W!*gRN1a,i$P585t9VfMtO=%8/10i
+ f,ru#E=NDpiD4S5YDeW9-qSN6F)ACBU$JsLM1B+n9,!QC'RImLM1\:JL"67H3U<a$tYe93+
+ [hHEET8//'>K!+CtbX0K)9YP9dVke#OjbQI_ng1(?%ceG`bP$Q3cR/SM7m/*=818s)1*M>W
+ `-?$Y/kkYOs@4u,`"/7'o&5>[WQ6CgD/Yfed@P"hIec)lP$[&HnCKATBp=A1[.r2rdKdi93
+ K#5h7GfkuPok1is6a/jU15ZNOeF@9MM>d.UjOPZku@g9/ZL>[*-JL?58-\n*_LL\FoOQ+s,
+ eI]-h#O.I'\`SVpBa7f4+4]&q=f2M!;V%;gg-mb%Y^Ot[b=n]]e.nq3"J2!"XYp(<&H+YH]
+ I$RBk;Cg6?EPHk/0J93-V;b:?Ig'%%=R2kb;Gj$=:D+b/?$H,]O+B(g[2]feb<0^Y8r.8L7
+ ?OsZSI;l`RqR:hs@VFmJkTm!"8"4?he\r=CMM#=b]IhL59^P=XSub5DI6sLL&Aa(up=S>6`
+ (UOK;/$)<n3C@"t%l,!^=-kcT^43RYLoT\<>"Pqs7jHJS8'7\j`V/`G[%2p`N+:lPTZ=Il7
+ e&m%OJ8UP%0D)oTo>\0IPj^ie\r[-?O*R/rqidcHa[II3bnlr7I`sqZ5XV0CEp06r<d;AXf
+ )(e'dGT#^j?^<QVju27;3T'm;?j8]*%Q]=eF3?Ob#%26P5]$`;G)#L-#CpUMk[oQ_E[Phdj
+ B1XOEcY771+UFQ#*)95WH1tO98_37f!Z>t;21o-Yn`!khA.Hp,bCgWN+H-)VKeon;G13(C"
+ kP.=&*$fI+5lIETQk@0u`QTD=;'XQk<q?fE<j><CXEf]N@()ArNg'SP3Xsj,H[.#@1J"X]O
+ Nt`THg!\5kP$(34%WEJHMRB1=od=DN[WBa3dD#2!pNE,/tM:^7S'L=6$.hL5rRFGEE5YJu*
+ f3+n!0G\!OTPpt.=ZX*n,r?XUC:sG5)W,7<U'A@eB@CB1tmYk3j@\dt:bjLRc5*0T0PAH9!
+ m%29UrflWJen,)o`hfP.aF0`9BAX`@<*l'K]b4pun`GQY<3:l0#,"hOH\Y6N#EGO@pi^CGZ
+ /=tgmG;jCSu?N*FPm@H#=rJ3aE.X-E//+A#2"&&-t7r8S$1>`NaB&PAF\jal/Y=7LNn0/OE
+ S="Ett9K*@cn(.LieRn.C&iAMtmWp)IC%X6`BI$8)eEbrF<$3*/:EChCiE7[.^QQ!W;p:qg
+ @SmSMki%p$K26Z'Bd%\$f_K#92m=@Uj1XtOX/pW%BZ'3Nk*mJ.&JGm;.dmDc!c<]B&fhWg]
+ 3"s0aV5[XeVFb[tZk?r@cY!If(D$N=6L'V[W\8JM"_JZ=79E9:iam$#XC`I\8fh7GaZW)^2
+ aH8PFlbIq(nZa=d9pI3`mq.j,pAf#\&W,`bTN79C/HTk1Pk+fQo2dcqSsAd[[H7X@n1J0h4
+ T&6qG.Nm'?R@8PB*`?4SQj1Se=J;8dd?1mGX)-E(p\#=4u8t4G?e`<EAj^c*]rmg<H2DQL4
+ 4:.DK]YpCPOl_L>Lp)^'`eti1(,gEY-G"!,us1Qm3j#L<7L-aF"2%pb*8/,J_IK7_=j,p8l
+ (%LRK$pcM$`+<bjC\&Gr9i6Q4rk1NR]<AOcE8G6%!LQ.OVJ6FL<=k$iDH"INsJ_j<Pd?%M"
+ LSF&fRF=q9H`J3.Y%Fk[n`"e>gJB<S&D20RSL9PjVCP?CK9(>_Y1_=$aLJNY:X+jr(lEG>a
+ DW:q7C54VY'Q@lK4:hb$<XJY]LNasI[ooP:i$ia?UVbd0\Iu0"_1o17%sb(q1VqN\EGp=)g
+ :Yi%T#L&Lc=kHep54q)a#J7_D.0;Lm+pR`L<fMu"DDIj7F-#6[r^QJ7s@qiD-(n"]nUW!Gk
+ >7G*!"(c2gfhrZA46:b=>0AjuA)dF9YQWLKB69:9+Ui\,1ts*k6!@0P#p*Ec0:eN];0jB8h
+ ]<0Qhn\0HaVCTuJNQ`I(:G&(#Wokk_PTV3)_3T5mhpJt7\'*:Mi#:B6sW*rf\V2<@K.I31E
+ E(7'A53IO]PE$qAaG688_UfPAVdiO7?4BlO&dVst`oG&$]-D#'k(3%S/oMpda)(Z"`q$2nD
+ #E'%8n$6\Gh<5\u#(G\=E,BTdG5G*WL0/5?hb]&/\c2YN"u']q)DWhSrA7</Hha1Q-L?!O_
+ OPjp/b56:;@KB^aG7V+#l&d%E=n!/amT(F3ZcQ?9ARJMHbLRta4'GQ&W+7EYp]/B2&hOi?a
+ &[hL*[O]`2'TgbW\r&P.r0gk^2/.%Xl&:YBS1\EB9W8kL8+sQ0go453R*$`?FsJUsgc7f=U
+ G7;5r'B:HH,@o^f1IX0nh*M<M9W]'P_u/Y-Ha[CYb6qdV,3E`lY52f$=6ms;T$>tYS!!rmh
+ g@.;epIJXZB=0aQJlt`S+Nlg@fR79A3Np0VWo<+?rDaU2FB%ZL+CMCr]>I0l8`\X;h`S#'0
+ X_1j,\Ede9h+ZDCV3]bU17HL;2^=@*C:TaLG;C,0j'++(lQq`p>-2MO*Y3MYLW/<EH$nIu8
+ #A-*F$*J2#,9LYem,@^0%Z$;hXl2Eh^=!?I3)2l]WJ5,_Q9L[-h9%t+6`P"X<330fR'-D@I
+ TVULpB-m6a1XN#:;t"e9IT7H:X0od96=4`Q=Q\Su*onNuFt%ZkT>Xb"QuT.FJ!\W'Mo5VQH
+ mQ1^("t:^Q--T-nX@Hks_AfX%\QA?`O9/#qbbbDY/k]Tt)?`l#$^'[X_%F'BeGZ0\jUb0E]
+ (50pTW]1UKl/#h$7[:YiBGH_b.ODGqlOh,]S%G@7g2sq'FijiqeP309p0pl_r`]9]4(BqXZ
+ pR7,qVKj4Q_pq`:<F&_sSOZQA;&6"-Y$Di5dF*4[Z@i$%8Z1*g!ilRUMZ,%pg%^N=0S5[@S
+ VN@M#ZYS!b]b-6*&)@QB=n4m`@4,!LKk.>aUtH6jD,fB;=oI<h9lJa+\7Kekp&b,jH0MZ[J
+ ZJ@hlm.PAXeI6Y:X/*KY4m)9BI*GYD6*#1sFUD,rMr+F!E\#o8><J1XjS<4Z$_[2IeTK=gW
+ Ahk*ae+)<XkKBcTXqTQHKs=jUXsVb*983UTbh9'@mFIV,&S3K[(&jghNqQ1Z*,%%hZ[WN,7
+ 0$0(m67B*Cn2-#?Ts&^s#%]cHsWhQ2bOPQ^^fhhsWANsh\b''BmdI;)u-V<81gaIT0GFiI#
+ d!))f&o+(VEQ-nVh6HqC+n@NDc$R7s<V7\[=7i&6*XAD0Euh0m$\U,,>e)N3?!?nWp"6(i`
+ FAFc,E1Z-dko<ZfbQm1SN/'H@sBShB\Ap[;eT/JLH/;pQq!4biVGC+RUf=A3Lo)U-UEi,S7
+ S+#C?aH'VZp:-^X;\e3gR6Yf&m]JYk/au#:.D(.\.WYE7We:,E!smNtM#<a2&-)j:ls#_9P
+ 2u^uQQ5KR+(N^c_m@hB$VQS04ZT4pU%?K<*,9_A=ItQ6A"SWt#h(Fn4Z%dem1lFj@Q'5!Dd
+ 4rY_JQGe.AD_G]\0LW/qB3qaj2h3!YPY15HmLm4GIqn$An4O(MEV!s(@Z$=S<j,?O73Q4h4
+ *9/#R]b.Eo*j\3RUH!(MLsS0eGhO/?$tPA!@Otk":HJY]s$rIKLeqW')Q-U0%AC?m#B9)qO
+ Ni68(G7o&)-)/4-2j"$0_sb]s!7!]I(+\>!ao2\*huhW%p1)?#(.1),CHX=Fk0IrdqFE?]u
+ itB:utcs[=q9<bW2MN$f'_@L*urH6Wo#*7qtmtUV5-oa&Kr^@V'"'$>:8g/F=:l\!kV(3kO
+ UKSt_^lGgTgX]XO=i`L+aemmq#h75Qa=T]Tq*S7jF0i]:RO],2c55<_!=-"l:c(Ll`JX"ge
+ B`mE<V,H3(b$%"9@[#RY1"`b2HqKRcln/k;3]TC2K4d5C/)T.S45rhP"`aIRC8<eLsf-'.E
+ [4R]o\e[MC1G7eE]jL@0)9aLB4OSOQ=,QKj%h\:bL:#$E'/jI"8YZk7SC<<.;3"Wi3prlg]
+ W029.)d%&'qS+XMdiP:4SZj7@iT&?K:7(F'lZ!!f]a7U:i_JFH8_\E:De]qDp^W<q?@eS)q
+ 50u%?[;?a#q=qO3K%KaVn,hGl*XKnRN0ap.!f,"<7OuDNJTp8&qRW*&<Zb;GlO'Q[r.&$P%
+ npRU^)q>r7[!nse"+F"hI-4!,19T1h[K4&n9'*TPhA%b[0ZfPO57dll>_fT,=`HqKk#<BEp
+ QI5alQ`4F?)jZLSL.n2)QB]gXOWM,M;7YP[t7eg\W_:80K35c^_:gB!9ju"&rdi$%_EnNPH
+ Ws3gp*0^a*NKKAZLD7]lYKbErVTUJk?&u9Mm3[n(#m%-Kp)?Af:Q@0oB8;l$Pno4-%iS9Y#
+ GCdQKgsQqZjDWWF.9T0g)+$BASl/1K!tC9)ioo&Nih$5=l\NaN`"FlKs8giN%eLqn_,W#JF
+ &]Cq3)<Z(-P+=d2fVK`*BmIF)H8jWg?>YeX(bdLJ1^Zom5uU!R<<PF^r&h25:Y4VDh"OEue
+ >XFUV]S3<g>H*(S(c.P'dBL=#8$H5uSe_72Q;OOl[k?sjBP(9,X4pjS3bqdNQ^K2Inq,1l6
+ M&%XK,a1`:Pe:.pf&a(T5Q(f,uBR#J5Xuln8ZPeC3Gc0Na=0[Ln`VTTO\a3sfX?OUX\Dl:R
+ X*'I]Aj<4=h>lpFnj3^%AM7NfBb&WF4gGXl(aE"(%C+,?#<;,mgQ[%G+mQLkT]$o<ZulmVJ
+ 2IRS:7A/rk9h+6md?*DS!f)b:$7F9CAd(LcWNgLG(am*T\^]!;`\mFeu!A!cl>CYAe#KY2,
+ t3j'uNaIO%g5-cSm"p"'&-VJU/t=f]O9-d9^#Nm7Z?U%rGjkrO>_r7L&f0PG=HQ_%FM``pi
+ Q;,9Ugg*G;k%GeP)+]-\$8bIO/:_<Tbf)>0PUNH(i:le=39j1V"EO3Z/>a*ro,GT&^;ORKE
+ Ke9'I>$9c"mkjHUZFZ31`hR;YV*fRUOeGfY^.TqcI*Z/DtP8\'r9\ZTcNSrr&\FK/\"ruXL
+ AQCn1_N&OG*Fi2iNkqkX'KNlEB1u_BiP[AR.,L$?GE7f*A][*/ibD_8V2]J>0*^(c*(.DG8
+ ;VHeAZKImMieLqe\p9O.bbo\-^MQh*&S*8dHGOKGmpPTdP[pq)SItA%cMLd#AD61*G_`m5L
+ J(@1rI?q-Y2ojH]TuVAD1DJB_J(jGMD'LmP"M+:?:3UmbI7"*MMce0Flj5/fpf@kX4.8ad.
+ ]Kcn*&p(1EFJ:bEbVpb(\P!t12F@9W1OW:FZ<i1\F2B9m1*&r`gPoO6Ak%nQr`NmDP<*'o/
+ o_87!3IN(uaC$GipY_"uuFrO'S<oKno_:$AAZBp@3pkVVKMB9%E,Thm>=TSFgU%Hin.`100
+ )WAaYO/O+Y4<A0Rq^lb(_6P*_L8_6:*T;8@/<V$TMB.DT*m`LM%_B*pi9T_<r_8j\XFNMeT
+ 'XbFm1BgLmaD-=rpFbF!-'(90F\$o'`gVR!O43W_8tHmDB7f>/KpK%@;$O<)&-Lo)55^t_:
+ TON7hoIa'sUsW;*u$0@S6,K!s)g4#Ai<o.#VlI"Y8:FO#/iYIN&=)*O1JZ+iGDBf"Jo>oc_
+ 6j!LauOBGU]Q#Jm8SiJnm3Kc>V'^>[/oliJ%*P/+1JrC[\D//6QEghfAQO(94s!\>G3TH?c
+ a)\.B:X>Chi<#P$dUs35s+g<!pL`PH'hMeHTTlA+N;Is:l*)5G4dN\#Hq#0Q!&'sDLm`,l)
+ mgtN&,LI/:&JY8'Ih@bDmZAXJ"fi8RpC`M\'+ld5U$346efLSi*FW^uO\ZI>=ricN(Bg]bn
+ e3DaLF8ms-^&`bN/K%LN#$D!.AXOOD\dR'Y+/"JAga<4N8>Q#5TPE^)*tYJ6*0%hoGiF<3c
+ K$X+at;[^(p`Y^4r6>_5>S=%3)R`)r\LOW;L@<Z5;JM)m80b8pESHd*h;;$74L',Jn=#bX'
+ +#=iI'An_bWHj?J4j)lOMjMa!Bpb36%9*[-RR9kk^ZQkuos(JLqYO^_`.jrM;Gjq9$cc'Jt
+ 31Cu./&99uHZ9^EFp)``?,a(k6cjKiX&J@k7'!bdhJ`tjj\hue9(@b0JiRoA?gC?Mir/\i<
+ Z`n%mfXN`L3qL*J/=O[(ffX;:8s40.O>@"$/n;e6*<C$q@ErMa`:JQ(cI0M`+icejgq7(<(
+ p*EJLV58?G4hcR/i)E,YR`@k\fS_q<(!\I:08J(IN?8cVf1:t9+lqFWe2P=,j*SsAY>Eap4
+ +=Y>+tF*L?tZB0f$'\+7\D;jg6)o7^Pt8*[XSjDn[%hV[_UZ*RNk>@G(]kgB-?b(lF4,_<j
+ .$0`H)M2UXTE'Va:o6P0Ou2m[u$PCY"l+!kk>-'OHNeA3H91`hc>4%ub"!I72OHMfVP*R1f
+ /[,F`1gJ2kUgG%R-FO81ZYrm&V(!MXb!mq*[!q@F=2Be5%iRL,%P.[L<)e$`,iOM0=\/^(V
+ S`,I>iJbJ>D&OS5(?'KW1_/R0mX3M#6#Uq>-Ff_"UDPW#Vha?cYD!uF<2)gI,N[5HPZD!3f
+ (l$-kGSk6.Q6HdY9$R%+lW?%iUe#(\fPoX*]$4KNNaGHK/tg8FXiE,P_p<oY0'&]*n6`=ZY
+ rGHnOc`*2jCEDp!Yl3"ZT9G9<qaiP$n@_]j?ud*MMh(!UB'Zh!)gXl/l"eo3!r%K&2ds@($
+ PV:$Eh/qbD7`4>Y%ro;#!APSSh:(;\L3_:1EO'TFNf*Ao5ciO`!r6lkX];ZXlTUSh#ka;@V
+ L/O@/f7_(,t8/T1%*#21\!MC>3bi<I?YG&TsU$iNW&uS%U*=3E%<D#@t:+=*g+T`,o2PFjk
+ %NrTt+O.j"Ne%SslGDNH.V@<Td'$R4S0*A_*he?Z<-T4dHtC.K3TR2qFfq-4YY0P#g^L)*[
+ E3>Qf1M6Ms,okP(BY8Wf`7#T30iAoo9Wcb&D^5`FA:(fnl9YG&Df^O*U]>5_;B;lclMW/F/
+ k.>f0aWeMfUM<(_+;OFo>'oX^TPr@T<@A2Co_SZ;Eu:;5)HL6/W^@c5m#!*22:00oQs#U`=
+ F"GcT_50qAOmH5Qar($"4OJQNY<U`7._*O]rec9j6NDaGVU*$NBE/Y6,=KZBm[[]!de`'P\
+ ;jr\L#*t?.0YG)tp0n'\FPK4[+0Z8Q:3gBs[=R`I=U&8.qP9:OC25/b=</#4TYdfE.DQU^[
+ iTfe'rIU2$E&H0=3&2Kg[p?6b9@`'B2=5CF#@@)Z!0SBEQT[n,BW/)g>@HCUTo1$mECUjV*
+ Z/_EU#1Va4`8*l23o%Ro[,cg?#=-_iRJlX!Q5uZiZ',e*[/6;_;Qr+:)m)IMNZ3giL1_eE#
+ 8V_Ht0T'77d,AVgB'A6,o30%011e"s!'Zg+.G^8ps%WLia6a4=_UX6FCP%nW/JH$fU:flnj
+ q<_CSA?qTW'+&BnNJjW@ppO[Zoc,#0INqeP`m*g1b"\/M=TO-<$A>=%X]f)JA;02!)d,ksH
+ R[i&KcO%_2!EOFt_R8Z'tk$(jXeoYjfiSaU$G7@8Q*Y6M^iO,"TKerhhR(-fK(j0&L4PTXZ
+ @6pf6F1B>cKGoEo)K$R+!QlEkjrAs%*^Rdd+lo4<d2BAripTm;_1qV`?5A9`Mr@hX6%Tps]
+ o9Me)BkkgK<pO<Hl(u\='48i@Kdt@H63e9,@[1*,)2<.`M%n&1EknuQhN:ET]ieL*^Q6&@?
+ f@V!CmelIKd]R61c7t4E#fB+IP<f))bpClMn]ZPaYsDdt;VH\T-7jQ*OaCe!2o[eSrL.Pm`
+ #)qI6r055Tnp%7-60)DiKrPSn=W`&aJtCdY1*Pt'GTQRnneD8BVH<J[?))PPe&Q[\&4kT%l
+ S*6m@4@FhRPr#.?5imQ5W(R>os\uqa)MugL/\$)C4YT8iWHu0e;+g;nof)N;^>\nRKW;%I`
+ #2!Le*qM=r#uM+i4<@4"%*D0`3gq*NWsqd7%;Lg%FesjGF<r+-0uuID:S&X!Z)'H?0+^7%0
+ JY2h0dO7d93QhBQp$^V^B'E5aAQTIH!r\#AR1>Z>r"kjiQ!:6R+E92L>h/$g+<+?VkU>P%,
+ *Dc\t[dpOdAno2#(LID8D[-<#MC<*T_;_U"'/<2BJ34*XU9R9&S#]`q860(bGV(+i5&sR8_
+ 8k)XH['>5,4C:qgcb(i&SnH<ZUK`7a3t,A55(1b0cPMi]+H]&C8qr%YMrUt6;tR.:E92`!=
+ VV003kD;go#!k^g&7Y?@>F5ci1Q7@$h@`eO]\D1kBg4b/]3Mq(%KJsRB&MiJ;*8A#2&poJ6
+ 1pK['c_]AF\h8ljRjkY4+R!7-b.Oa>%9]F[T>P*HQoU.o3+#58h1ai(*nL/2l[PD9.ZN3@X
+ RKmCPr6:,T>+V*(SR'4iFE^@!^77V)$,j=Hj.;['_!8P)JK&1!P8%''*%ZXDhLS)kKH5DWi
+ .T7lia)gg8NR@Wn%]k_sb3YpFhrnh+ha<4E0O#0KU%0re&s%+F,$&U%9B<3m.i)W<(nm4;4
+ T;;l7#9Q*ZO\]S>P0YpN4Q3HA>DqL*>9B/fF/DnR,T.kVmuVW`6t_i-ULiMISu+kqFJeQO4
+ ;q8M,4T>MV?W`b#>!T2]W$NRVg5<I6<#hg:BRZ(t/BKP=#N;G1^ee]K[)fU0CP2[J_clQHr
+ ^d7N=/iLGBr#!i&h+%iFoVN].,"&Wr=-IZT+n=SU/"ud$L@&W/1ll]R^?Ldi:%"WrYK7qb<
+ >>C1(?]#6/_hEG>T]@T>I70r$]q?R*:I-ZVn7*'gNN[=?eD(:fUJ-Q:#EFlK-br3gtd#O4s
+ H`35WeRYd]@oJ)BOJ>;<sVR$m)u$L`e60+kuF>Pkuu*W,SQEhoj%3h'VN;_;%70OKF)_S86
+ g7_3R*eaZq#f(ZCZ");6"Y%--XUT\^-L[WELc8[%9d*!+8):!i<@"=GBW6[$<khPYuIV`0B
+ !*r&fX2bQYH8&UdK3h/o,nsJ.f?F_C/LFbn;HrO=P6DGB<@RAcfiQrWpJ&g?(fCP-W0e_b)
+ Nns\sptUWOSWE$3FT@a5l<7Jtc(jRmk(-9[O8/M6#sJ/OarZ?Xqlmntm8<4r+rhWBm2<WBG
+ MMU0ntMiJA</jciRGN6dM_8thLX#kK:j(_V_#LE(SUoMD_.2KAU;%gX]Dg`c0&mA+VBQ!if
+ R?M?83=W7cTW`Mp^baKf%?&k+!$`aCR?dcI]+fh"GtU?SAnKp%J93^#)W+42(#8HTEK+M?O
+ mal$-*?D'o/!I+*9mC.m-C9r./^ZtiA@C?;&R>I0lYAo"Ybb]U"T::5^#eShtQ/lu8RhWF*
+ *ZCO\?lcIlPI6=+I\XW!AoR5Y):)?jbK[k:R)m9Q`f.WPY3HKJtY&cend(N\Q/M<1<o[:Dm
+ HC#SS=g6Mk**Y#'UJUU0Au5-'4TX""Hb-2(8%Yn^a*>;RO!hiSS^;b(*t<uMdB_k[[[bZEh
+ fZBjHT+&n:A9CQh!Oi_01N]^XQ+Ua>VA")J`X)s5$`(Kj8<[47u=Hh*N#gKFdcq$e7b=a8Y
+ Bmj#'$kgRARO=A/])(LhIbS_00Z2AXX$\(58H`IO=:N<u+60FC'uq7T%*eRUq=bC)2N&Y&>
+ ;XMb_,28a6)?T;S-&hAjRW0dWbrEamIg`U^<?/&fZD>V%26['D7+6I]/+B3P#AY1"lj1JKC
+ 9AMG(Bn`8i)9KCtK0p@IXHlm6?nB80Po/=u9XYg=<[;B,\6oN;b@+r&E;e&?UF8IYX8]j)'
+ i2ML<N8uuoA"ujB#BAmR*(NlmofOV$\9&e3m94F/#>+;bes1qn=4P>QcL&55bH>WNB:DM?e
+ 7[<j`]D/.P&-]O_8:Aa`qe2#)lHQ0#9!fr,mkNE\^(\SL'a)_QK>Z`&K9'-W,*CX<+1#X2j
+ NN`Sol5LC)-u(W0A.=8]9/NZcn;S-aTN:5rTWU(=+q"alP(TX#Xq$XX@7`[7uR"pfG]WoZr
+ Un=UO[QSS!9,36mIe"bJ,"[.8E$bi.p;k,h>df/;&X'1M)l2&posa.4."dPM;9bFIa1LJ0Z
+ 7"ZYSX[/'5T\lBb=H(QGfB3a%8rFU"'luDL!S0qXbZg<#FmB>*keTdH'$p!7bDMR%WHC;e;
+ ias-"Kqrm]#5Qnd)oknm"rg'(SnoDYZnQ26L%0\1QNb41',oZ2Yah>pVa&OM0k$G]*,%@3)
+ k+63"IPf/jpHPYrGgKOS;i44Fm*I@lIWD6he_(*[9:_!QO>#30s2AXe`HV@=.eW$*d=BAqR
+ I7#N+Bs(jJ<qX.JrT-*Kg,D-Fc*rhIh==I7@*0rdUVT9s07A[V\2G8glH1I&-$'M9C(%:jA
+ N%SCPhSq+cS'a"'WpfUFn'*q2GCO+MgE@&]ZJ,HuNa<lee*B^.h%&:Kp3q$<XDdQ[q4GdjC
+ )JHp2u*J7Jt%7CsgQJ7?<j"P6Y@>ZiG#e_%LCg;m\Z7Sr+h&E.Qd6tL4'1e5Y*lI3+0;hVt
+ 7]<s9_f>7Z(L7g&kkI&S]QF`Diu$f,5^he1DN8pu1WNV$)%SJ^`sCcI?CZ4c;<@(5M"_s^S
+ &e/u5s2aa`><"KGt9;#U8Z__cjXt]N7(+>[CF<qg**auL@%U/ZB1qU;8[nH0]eiM!nJJ[+`
+ <Aj[$^VK"PH`2+2dl4&#&\]Tb3eTjp?SL`:5Jc\GS<2j^=-(W&R;0:*)c9EK9Rt3/;J+*"^
+ )'_ab>##'ef@j"+r*;1pWXpqDY1kZnX[IP8_!r?&>f-Vh5)kQ\QK*@)V=`CEfg#E\[f6gT+
+ 0EV=?Zg5Ip&4E-=K-UAt.Q(\gIDaq[F4!UR4Nc[`P;(<_Wj6[YDPZEc6&ZUA@S=^jB7RFgZ
+ >s;oFq_;p.QV_nd5pW9[T[1/;49Yk*RR?sdO7c5;PrSgZ$WeA9AlOg'l9:klXWJ'qT$F-?/
+ 4]Ln+44rrO43qh:AFHa6Z@(,+i$+YMEN!?E,gos['UAelPcg+BW\Wg3Q=&&*)grt:'%mbQI
+ tCBF1/b`[Gm'6o:)=EUiMK(i]O4j7it?80W=gO,cD^eN0M>8:jNm?"eoJ$FBZoA\g_9.eXi
+ M>TQnQ#!'LX%p8B4tQdS1q8X%CIYnEqQ)[^"a)\%pC$6bn-Q4hVQi97(m/P`]#WrZDJ#ps0
+ EU(=)W#RAT<WK)Y$&*"M]@p?U=K8ap&_9P.n"_+QcM87@NW]KHJkS]"LEf<kS2sZ`N)8eFS
+ =3KiV;0_:F"3?V!+f[L,!:R.8(+?/M)'u@lkoPh=86]h7K5?O2N-'/d`rXU=UQ-+rph%f[X
+ $LBV@-Wo<2>C:q/FH7Up..$3ITm)POAZF\K#Ib_[B\h'hj$!2l;6?dPqu38q"JOGP2o5e6W
+ #Rtc^crWkRXG':eaLCG9`:<NZ,Pha!gBqUQT4_l(C*g9%QBS,\;uZMD7Tq_&+DA?jm(L'F3
+ 1^c5FS<UGQa!#@Q=+K<TFD8c<?WL(C-RiNM1a$#N@lmDBhi$g=kGU9nfs_\d;$kj0uX#-dN
+ lQ9*&okpU8pg-N.MnK?W"N<2k>rZ&q7Sj.C[d`I%4PHXdX5TGCX.MbH"R2PJN6>f#J5tN)l
+ cuY5dL,t*OiiBtIEt8\c=DJc,*&,?I%,n":#!h/bK+g''S,>@SQJ^I#>^RodN&Cm=eK$0IF
+ \_JUZ8&MOTbcLP%jA]\\$5JNG1K7o@BM]!VNB^S5CmbP#JbR2OVoC>n)IR\V`8jRTUHCJ=,
+ %@T#JN[WACBP"&jqc$bc+BZqcB2R37Fk`Z`!)OTLsfM@Q++*YpLi,ls5W4#EHs=fkP-U1_M
+ \O9;EP;,\2oTau@=bcQ'>SE:gl36q:rD)?W6FNBsL'`g5-mUH!:RgBf/TAM/ph9'u(Ql$dt
+ +p"pYpJdadq_>#s-i4[1?G7pW3GLm@gSVslL^<tX&b-<!o"0riQ3s'Zi+6,`93H<i2i[$S[
+ C@DE\q)ACNTHdP\(8b'C%DIs1YsZ!_NpUn9Q^1-c3u[.$FnH?jkm&S&*%8mJ&!pSNICH[*U
+ Qg"G&^,Pl+Nqu=!+Clc#:&aZORKlPZ1n9di-R?W(aDsI%"0)f"aAPc*RF+C''*&JBZ_8]]_
+ Lqj,PcQ(&`3O8[.[jtqg8Y;*<$3<`j+Y(5I^/@]"iN#".bRN8=>[*>e+AFY#;""1?G?)"IM
+ :N[D85n;`Q=IV*+n/*Quj@_p^C)BniX'3^]PE6YhHrR(^-E_'!QKaE9cCE<\+,#6AlM^h*e
+ ,F#rh]YZ&35+]sMhpUg=tW*B!LaJal(l`d<t_Ajc:'C3B6,f2qq^9f6(<$qlPD23K26DJll
+ A$SDM+%"Hu_<_!5X80X5Gn2/T/0l:K3eA&ZT80[HR_/a<1Q=bL!f,8a#KjqOX-TK;OHLOGZ
+ ]K<e4"#ecr.dqn#D2FL]G%ldF"`>i^&W/e,B#jn8A2Xh#N6O*)S$%)&/RlN#-`3NH[34gDa
+ -W0X2F^!r)8=-BL3+O69J:;F<a5%<lK_p_@U#XLiu,/>eY#[5BIr8oM`X!@)%XTL>[,?+F(
+ mWA1Su%4;,:mR@]u]c3L#<)NgDVPQo%$4%$A<6doAQ>X&OAd(-*"ZESP-aDS<U%>KfY`*7;
+ <9;P%@GeLHqLU/jml6$;hJd/In#.SB%cug9)/&$B(-sTY=,Pakq?j<!AKkqr(BQV=CLW,L7
+ `Jf\nQt?Q\G=CRF7JndU$t2U.O2`/L7SJuH,\2r1Gf`XD]&\N1`+PMP<K2U!Uso8IWtW"MC
+ BoDg35P0BZ-P4hkQabK2B[#u1Fb:k!k2+.#=I''\9#+rIE.SO_'!kF*))+:IMZ7<#,#f<>V
+ eT$JAT5F_YAAjT_\nPLra\GaFpup<49u'\'(![*\_`Y"M;biOM_cp`]TGS<56OY_F[lP#2(
+ (&d2th/;o-C.W%3T@*&Kp[gkRGKZ?XbSI%eZlTJcV)%YB'7j)9^hf*=ZNZ@I4U)k.'.B*Qk
+ h2dg?SS#ZaTF,9mEb,!b0P<0RQGo\kJKs5@t\8R.DZnr0^^MILL"LBX&.Yh9>bD`o*FQUl%
+ LPi<Z9>nNh[)C8.PKq[mbOiTl<5D6B_FufVLQ'-s/Aat(m6?c;^PHgSCAb?2a+k;oZAcn!X
+ 'l<RU.icgMHG%^=dR9p3D%kN#=P;lRk(h\G!Rg)#...MEj#sXgJF,[9lP.[)&f6B>6VNQ#-
+ oMaS:aAn]al61L0T\AZm*e,'[D*g#(UVB%.272(t"$+:Al*VoYS^LnP;:gcSZc+nR%u'EX.
+ :@#1Xkm19Eqn+$/KV7jDQJaDe?,q6i@p8hbP7R!H)5r!0%A:\!*ElX$EH4ssfC#O$9S+l%h
+ dAVb#CL=g?u>BWMXVh_Yde"j!)3-'ine"'0]#(UKE<%Q,o1!+3(#ACXmV%^]\'i'_NXLND5
+ jVq'n)q9j<dFB46`?.t<nkV+c%^Hk*(jHf%GD<VI<>&qE#]/#h,):Rj`%<-%.qV^X_G>6Bd
+ X(</OE%$5gJYi:R>QG"]3_C#IkHF_Vcr9h@!@HT$FX0u#AjUj>m?'TFq%/,etf:r$_S*64V
+ >V\#&%`V6tE&tZU*UK_XLjM:fnRm\1klj=(J`uj3uM[GgXc]e@eRX[7o!(+B7GuL;INP*E'
+ W`E//CJ=;(UgE;C?0JQMeIVL;?B79-nI/I(Os#5)*HBR%sXA$4V/LSSgc9jh*"FMkB;8aq0
+ L%:Fs)V7DtZ#D6p#[+3WOGR%@'<iqh;S>Hn#Ckt?.#,#Ng73#A;QHm@N$V5CorH'*R<e`k]
+ Kk)B2D5LKZW7ls)g3b%T#^B=fXOk.f=3VmieKJ#]:K8-Z<?V@p%>!.[E!L>s&1D8tpi_C_[
+ tnJ0>C-:7M#rFFKien&bu1g$g1?$#M--TcX<c"TE1<alFKU9%7g.5ffd2DRA1TE_<Zr7a\N
+ GXM-*i(!^"&Gn9f@c3'1;8^=gc],X#gV9BiE9IKog&`&8r>/G?'$$MK!fD.56\,AHtc:='Z
+ Pq25X[S<aH6oLIeIO%Bj),+l5qshGk]Jp#jroZ.K50gGORe7>'>h[G,Q/>EEb.?tis:BZER
+ 3#?Y\15\[o3[kdWfgVfp=286abAVU(nZ7qgSm>t?]FGH6P#:_IV][F5//[bt=O3oqbaF&j0
+ =sDmQW<dm,@%#@kdl&n"-=+qr?u:[1cqU([@-)-Y%=q['P9Q]BU;1Xs89LrZG_S1nLM0hKi
+ t&Bi1(/Nd\4B_*>7+>#@u!M.%#B';\S!6pkh_:qi[%K)?6`oHnQRSr?FB)0V1[N&[Kg\!>B
+ RG^mI/p)n-<Op@b]E;J8RMV0Euc=LJVYo+D?jC1_<?&*%J=%o)=DPCYs)Sd_5hr8:Fpj@3p
+ mg>]VAH)k/J,GtKc99eJc7i7JrK!G#1d7[V]P.!^S1a\mOb7!^+d^'rJ32dl&Jfs:M\Os:1
+ BGmQkT"issRct>D<?\XYc@;p@#DHDbY<oJkG@D/MS&8$[TG2(:-ibg)Sp$:Ud@,B.\@\pNi
+ hCE2,\`21Oh](*U<\M-m11M/D#(1oTFFT$Z`<L!lLJDWT?8LV%"lDU\4]T7PHoisO?rID7c
+ l0,jS11bTY(q\+9fX;uhEg&d/03#&kMC[9[43=#J-UUCgJp,X9pe=nH`-"$BP#XKF#4*d.V
+ 0eJ"lN\kcsHuBEJ9U0P@dl#=EPIhOI4=SiK^7n/V@99.d9sBl!>h'AaX/*/*9k`l)!k2C@c
+ %\0P6&QAtE`!\92EWD21l[#%>O:.!,YqC[+4*L2"Zip1f@WoESsKLTI-'6Kh>X4&UTR[X`O
+ Udd^Q:G<IWu1=U?T`]j\D5VCg=ZBddh]Kt_]A8!!7A@2QhD$:-bFb_e`>crhIp!ZhK#JkGm
+ 8&B;$i*)it>6[hCMrMp8:g/Tca6\dTYkVDcr\9ocLKfch@`H^U?7a,co4bWcipN=R2J;:*e
+ <r4/D.]GQ[VTR,DJCMn*,_S;6#VKSCBlh0mEfDKW,i/?DsBBdTGc>n9uQ)CFi3]q(6TMr7c
+ pD!Y3PsD-?ATk-?ocEZ``YjDW^>hm*t>8FDJRW:gDP+<-i?Zo^>UuW$6,6rkg7L]*42FKt(
+ Or"r@M6(^o98LIeibH6h7;!9pXuD&t<K2Oi_r16>fuAu=/AY1IWIT^A'P\c1;t?JC6)i.jM
+ OmG?Y':>^dr&-eg:-JE#D=IsCoF]/QqZ8O]JBl%O@"dZ*0&3+fuOEI'."X],4m\]8TP-Kc,
+ Aa[:<8C`Q4"$H$!]XLd_LK7&]<<2Jh..:-6\tF,!(h&0n.u*h`(KafP(g@1]E9Pqr@C=qF?
+ >\RPd.:;cm2")Z=#]MI1M2[Pl2_-%n7Q^;frmm!mB3:&[gd<>%WM2aF<;'U`t=%eo`d*aLF
+ HkrJ=:IP`Fi;&SVD29C2:t+D3/ZQLJhkBru95]2k1rQVMf*mB-&QV*=#tg@j?/>Ed1W;F,*
+ 5uLQ9+>QWs.%R>7_QL1tW3#]@o6KI<H*Kt(Rs#[[dbDieQfk&]'[2`0nRnnglWlA%Hk=$/M
+ BDJD1MD8-PI`np4Z%rM>5nITb`890GL7W_aQON;J-q3[!Kj44_ULk[uO`ntY<hkAD<&?p5V
+ Bl+)A[IK</nXg]Gmi-.oK[=?LC/AV=I0]P&LWt77#HFNka,B`.MB(r"a0:8':kd94I>+%l#
+ .S%s2Q"W3)Ym7JQEY(5:RCQgDs$K?l5pCWk2>aSgijhOG:7!D6M5OnEq`q7S;uC@P-7[eH"
+ t3n;^/FM-tnA`VhZC)L6-D08"um<UBYVlGPZ-#&fYSB#7s^RVP7fqn8sDG&_"M&\js16/4A
+ r7H1eY*qkq#]LF:GuO'Pq7QeBmI+CKr^A-RR)-Fq*c=2ORF#nW09q+#;nl>5k7AbQE>oHG=
+ M-P@!27X>T<pMUu2AMRW5H3aA?kEi*b\7Z$P@/W?!#'b*Ki,SUT@iU;8OO.NmTQ57sIJV_f
+ &A#<3S4+dWApbG,SL^?rGN/m8Ecp;\@/+pcn%4%(ka/8H5ko<Of=i'I^7r&5S@Dr23,eP/V
+ #6#<r0QsG&'=GRhtP/Ws(;r>pHs]hJRf2iC:2$,=GZ"Fq1ja*#:J(QLk%:O9GV]'JB`&;=f
+ qrC()l1A1`T1iMiK4GA$hbBL7=0cdrI2f9QjWoN5q,:S.'R&JWRrlbN:Sb9-qO4DS$u$LYM
+ fV5G1hd<&u<@NCTdBBiMZT2P!XB<,,DoV%r(^Hnq*b20us7Y#dIG[OUrmW3BA](+U/pflG_
+ P0cR2pFEsnKADPoj9?$2ojh/-l=3KG-maZ5;*0-ALc0G+Q^E:!&mRd?TI_W3bl2E^6fl4Q*
+ XX>A_`l!Weg$U1&Xq_7r0A2?pPCaM,KC,?Dh6SVF`G[Ds%E7o6\A2K2==b6R$&%/DYhRAk,
+ CPP$S3(''B@U(shsbl<?9]g(c/,#*gF\aqd:h*3.iM%1DpRbAC"Ou&HV2ClCDTG8[U9sX!K
+ :\Ea"`rsSE@)hFdqPKi,kO1WU??"8)#B4+->M<bd1sZ0Rk*5H0T+5B2U?k_$r,Te[7mZL4L
+ MMJdd@"k#oE*).rD`A"1HbKPd&%iNugTk/<?tQNb42>aHeZG$US+jG[E3VV?uG(oAatDk#p
+ 0npI'j4O#\,'26q6c&Vq/HlL)qg1D4X,eF.)::aJlR:]UABc9JteodK1$/B]pVlAtL*p:*-
+ HnkrKoR7m$djWC-%,'QaT*EEUG*p@P@o8r@EY-um%InaT)o^KdDAOW#[Tf)Qa_G'!n+!Ecf
+ 4Bf==hjY2XS3XPZ#"4.`l+<^8nQJDBH3pYfQsl&D67U.(<s7(]C?m[IEgqpgj:()H0fbs#J
+ Ao=dtaX\I*kI7^@]W^iUhORXHi4&SOZQ>CDuA-Hs`A>Wo&FJ(e&@rQPa/8=r-82B(qT[Ofa
+ M0\A``QXc#RBO0$MjViP=#BsM?=V^>Af;Q&omQf]0GAXVZRY$1J0BAMTnVjFO#I\);I[WTn
+ uWN<F?$SIZYBf]jmVWo(F?EudG$hXC!N^:0i)M^bXC0J0F`Ned!0$Nq)VsW8eSEDonC7;%f
+ OD`\TX6BG!)nttAn!hW"^$j_dmTPpR]:<dWk'>*e)i%u9HGk.p-->_JY:T3M]REh)bQi-pD
+ &m5VVK:i(-VMqM4[I3"*?#OBE#]+&b&X(4.IEGlrQfWBpRUc$htS6'L#Mfu09,#f*`&'_q4
+ ;MqkP?6\V<RiJYH@-f*m_7]qk!8in,+7<`UWku0?s+e+&CG[rL\#ap\l7qjn\nJYO25e+4'
+ WYs.AcXs54"\J5?^W5ZeHri'[m"U]^~>
+Q
+Q Q
+showpage
+%%Trailer
+count op_count sub {pop} repeat
+countdictstack dict_count sub {end} repeat
+cairo_eps_state restore
+%%EOF
diff --git a/macros/latex/contrib/beamer/base/art/beamericononline.20.pdf b/macros/latex/contrib/beamer/base/art/beamericononline.20.pdf
new file mode 100644
index 0000000000..41e0ecbbe8
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericononline.20.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/base/art/beamericononline.eps b/macros/latex/contrib/beamer/base/art/beamericononline.eps
new file mode 100644
index 0000000000..0fb0f2d61d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericononline.eps
@@ -0,0 +1,800 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: cairo 1.10.2 (http://cairographics.org)
+%%CreationDate: Tue Jan 17 16:13:55 2012
+%%Pages: 1
+%%BoundingBox: 0 -1 39 39
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 3
+%%EndComments
+%%BeginProlog
+/cairo_eps_state save def
+/dict_count countdictstack def
+/op_count count 1 sub def
+userdict begin
+/q { gsave } bind def
+/Q { grestore } bind def
+/cm { 6 array astore concat } bind def
+/w { setlinewidth } bind def
+/J { setlinecap } bind def
+/j { setlinejoin } bind def
+/M { setmiterlimit } bind def
+/d { setdash } bind def
+/m { moveto } bind def
+/l { lineto } bind def
+/c { curveto } bind def
+/h { closepath } bind def
+/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto
+ 0 exch rlineto 0 rlineto closepath } bind def
+/S { stroke } bind def
+/f { fill } bind def
+/f* { eofill } bind def
+/n { newpath } bind def
+/W { clip } bind def
+/W* { eoclip } bind def
+/BT { } bind def
+/ET { } bind def
+/pdfmark where { pop globaldict /?pdfmark /exec load put }
+ { globaldict begin /?pdfmark /pop load def /pdfmark
+ /cleartomark load def end } ifelse
+/BDC { mark 3 1 roll /BDC pdfmark } bind def
+/EMC { mark /EMC pdfmark } bind def
+/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def
+/Tj { show currentpoint cairo_store_point } bind def
+/TJ {
+ {
+ dup
+ type /stringtype eq
+ { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse
+ } forall
+ currentpoint cairo_store_point
+} bind def
+/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore
+ cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def
+/Tf { pop /cairo_font exch def /cairo_font_matrix where
+ { pop cairo_selectfont } if } bind def
+/Td { matrix translate cairo_font_matrix matrix concatmatrix dup
+ /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point
+ /cairo_font where { pop cairo_selectfont } if } bind def
+/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def
+ cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def
+/g { setgray } bind def
+/rg { setrgbcolor } bind def
+/d1 { setcachedevice } bind def
+%%EndProlog
+%%Page: 1 1
+%%BeginPageSetup
+%%PageBoundingBox: 0 -1 39 39
+%%EndPageSetup
+q 0 -1 39 40 rectclip q
+0 38.4 39 -39 re W n
+/CairoFunction
+<< /FunctionType 3
+ /Domain [ 0 1 ]
+ /Functions [
+ << /FunctionType 2
+ /Domain [ 0 1 ]
+ /C0 [ 0.827451 0.913725 1 ]
+ /C1 [ 0.827451 0.913725 1 ]
+ /N 1
+ >>
+ << /FunctionType 2
+ /Domain [ 0 1 ]
+ /C0 [ 0.827451 0.913725 1 ]
+ /C1 [ 0.25098 0.454902 0.682353 ]
+ /N 1
+ >>
+ << /FunctionType 2
+ /Domain [ 0 1 ]
+ /C0 [ 0.25098 0.454902 0.682353 ]
+ /C1 [ 0.211765 0.282353 0.423529 ]
+ /N 1
+ >>
+ ]
+ /Bounds [ 0.155172 0.75 ]
+ /Encode [ 1 1 3 { pop 0 1 } for ]
+>>
+def
+<< /PatternType 2
+ /Shading
+ << /ShadingType 3
+ /ColorSpace /DeviceRGB
+ /Coords [ 18.246094 15.714844 0 18.246094 15.714844 29.992188 ]
+ /Function CairoFunction
+ /Extend [ true true ]
+ >>
+>>
+[ 0.799991 0 0 -0.800009 0 38.400002 ]
+makepattern setpattern
+35.168 19.611 m 35.168 11.045 28.223 4.099 19.656 4.099 c 11.09 4.099
+4.145 11.045 4.145 19.611 c 4.145 28.177 11.09 35.123 19.656 35.123 c
+28.223 35.123 35.168 28.177 35.168 19.611 c h
+35.168 19.611 m f
+0.223529 0.223529 0.423529 rg
+0.8 w
+0 J
+0 j
+[] 0.0 d
+4 M q 1 0 0 -1 0 38.400002 cm
+35.168 18.789 m 35.168 27.355 28.223 34.301 19.656 34.301 c 11.09
+34.301 4.145 27.355 4.145 18.789 c 4.145 10.223 11.09 3.277 19.656
+3.277 c 28.223 3.277 35.168 10.223 35.168 18.789 c h
+35.168 18.789 m S Q
+Q q
+0 38.4 39 -39 re W n
+q
+0 38.4 38 -38 re W n
+% Fallback Image: x=0, y=0, w=39, h=39 res=300dpi size=79707
+[ 0.24 0 0 0.24 0 -0.719998 ] concat
+/DeviceRGB setcolorspace
+8 dict dup begin
+ /ImageType 1 def
+ /Width 163 def
+ /Height 163 def
+ /BitsPerComponent 8 def
+ /Decode [ 0 1 0 1 0 1 ] def
+ /DataSource currentfile /ASCII85Decode filter /LZWDecode filter def
+ /Interpolate false def
+ /ImageMatrix [ 1 0 0 -1 0 163 ] def
+end
+image
+J3Vsg3$]7K#D>EP:q1$o*=mro@So+\<\5,H7Uo<*jE<[.O@Wn[3@'nb-^757;Rp>H>q_R=Al
+ C^cenm@9:1mM9jS"!dTMT<$3[GQ$8#0$s<4ZX!SPQ1`C/m<k<ioH)<bk^Hj`\=EYZP^B4!g
+ 3;B=(iT0C*2Lh/BelhbU0)D78M5YZ_B&,4QA)<#n`5K2JTl?SA,\KgYr(SpVapNl3[jb_/;
+ COiZ]pEB*_p/"hh*"A,]GOZOSI8CVCR:oIa+=KP($L!omJ5AiQrjV@LdIPojI'k4G"J3YLj
+ "b[`jIW6G?NZ@)9"G1[;SFVFj.2;+(3oj&hUTkr'GOp,Cr_F>__;"><c9q^=6_ljdS,1/<n
+ TbWEPbk'eA"1L.b^Q1^o6UYWM':5f*Q<kE@ZMbU3:2Jed+TLqE83Jq#D7)l2njp&jR'Sj+H
+ e"2&QnNKM.=Vo-4`tDCDo[iZsZ"Q6;[7i4HBJu+qBXVX>r<dKCCh;K60(2_]ri8*0$*Enj3
+ nA)0T;RVg7-E_6XQgKUbOEe52AUd)7XNE]d+>aCD"#mlXAjdhbNLd&8K,UA2r(%7@*[3=l?
+ ZoL5'5q'91l7C`Im(PEY[?B?GCH9W$RaS87@_oWg#%O;oo230%+`]')JaM:9%igBl?]rq!]
+ ,!HFQjWh^L37p,%:+:d;SS*Vr@BAY.n9l*Ad?Za%"KNt344.#1)`+8ITI:>Z\G@\4`#-i\'
+ -kU+<Y5J^HqY:;M+V1r76-6G'ZM<9;ODZrKQ36C@7FZF,nY`JPU6FH:`&9i5$o8il$@7]L#
+ KU;QY,J;>apD_E,H<-\[G+r`mH,:Rj<8cBojV!L,onmOO?6*6J0:JM8FN6-AeMQD&64]PiD
+ L6,M;]bR)Uk["?0@.N2`A'@H("FAYcFQc7_k-`t*c`Ud$[=&DB..6ocZ"PQdbZ=IDZ>AnIS
+ Q3RClrB0ft3Q,ZD@<ga1I=h9kf3Qb>=a!"<(PkV^J>oR=:A875Q8Xr6bL4MTrS)jhc:LReu
+ G].%.H$4'==JdE^il9P#D3EQ?8o0ZEWN\o/#,))lQihU2;i>,l*GoEYA&RcUnJJ,PO6q4?H
+ 6.jUO5m0o.EZeV"WU/H6p^>!mHRQD(-i?3a[/(OoPlp$&#@m18_k]?U32elQdBFeT1RU=)@
+ ',SB,s&odSUhCnJYDqj5DmM_iU&uJYY^B:r"3mJ6id2\1WRC(a&uu%2GRq6Alu]pVaSM)Zk
+ \"NX.V\L%*r>OGS`Z0g>tHE1M&f$uNQ,5V:"&Q$#D]=UedN.E5b:&E:>SL-Zjnd@oV_BU'1
+ C"!SaRTTg2UGq_@:S4psWjrK$r6jdLsOjQMC1MKrEL+sSj7**"U6P+3lYr".%0Sa4+,[(Dg
+ (bJ+:Or"2HAr_)jqF=qt)'bA>Mc$JsK`K($EP;bf!6#!A&;6.n.R]14'-bDK#8R>f5mm+s+
+ JbM8JP\I0L7oM<6m/<D9L*J^2_6nXYh``_Fql_$FQWhKgCkdhD*a;j%#2\W)WE_Y%8dfi7\
+ GJN6V7`F:s'g_+AE20!El3pKRD+G8N]=I9FE8:'B[+VG_=jf$T$4g@bO"XJa=emE9JAI(lB
+ "p(d1&*g*;<eA.ZW#7ttF\/49K1(kR!;NKJ$5P;p5pJg=8GYp,X4<0rcp3_DtW&/\qGN"CT
+ Z1!$@F,H-F&U(Tj[a_<7P_Xn<G@Jj/[T_^/Z@+>pBlu*3(FMsQA()qj1>Rdqk$lIpV&q\JH
+ M'6Qt`K8[`il#U<_-Su%8?Ee>+B=CU$7\N$K,"JR5RLAY)oP:T$LZT;*cp1L;E?]N6E"7\n
+ bG(Y5nko'pf`SQOL7lHi^[ct.g9no+2g^Q'&pQ;#H(rJ@pis^!m\Ui0^9rQk_sLJ]t0,QU,
+ tfJclI]`<"-o>8ON!K$R,.BKol'ZXOsT^P`c6.kpS'\gkVVU(.29@a<=!3YI6@+6HE:O!QB
+ En(%=aNLp:k'#6^rG,%+Z8d3pT$gE.A$7\0neAi;+Y]+uVr7Z.V2/&nNG'uNpVe:Cb#`F.+
+ *iiHif+eg+`8C.o7QtHXi,VK5_BbJ6:R\JiXOj[?7$R--n%&'q0Dug;k6``<R5qnde`H"F$
+ >WrEj<%GsBi>/1BF9h=q0LN(.(I?,5$\9cY7Zb5#A$B8K;;<dYT^EU@89To<*\(69=qAKW.
+ 0jih'Eb;3$96ZeLOi><K@QWjiHCAU\f`NaG\!OWQ@%]/A/RcpZ(AhU.GF<#P,*h&$h-,BMK
+ +q1L&g1?j*c^ml\IJ&W4*_40Pq*C@Q"@#ee(6]CKHXu+smM=]9<;lkI\9J`*C*i6W68"YuW
+ \rIHnLsfLcOu[\(rfEChT2&-hlt49pE/^bqqh$ui9_KG*!C5t!,VkC+MjR!KGjXC)LbH&>&
+ [efEcNCQALN2Fi;6)WSC(NdZ"3"obeDUJuGq]M^A:R-kabYZf]L<o$,fOVa]Z3spM8*^rO`
+ 'i^Q$;A!2$Ui'!E+e1qiZ"P&/<,E4Ve2D3Xg+>ZuleWi:!XhX/)F]tQ(2L!j0+l.;LC45(o
+ WL&*99(pKGd>U4aB(`;>FkB3&\HgnmdXJGTk[u`d38utN;BP1K@lk8@B`0.@%\8<3jkC]fJ
+ fR6L+pW=Rokkj8-o<!(II>@0`iXYLnMg,"B]RP6=<]L;5>kb\F7CHX'0<J9\[T9Y&C'8Chs
+ PrX@IfS)T0H*Nsnn6L7%EG*J@W++l1gkDe9X-W_86j]d0M;Z*:j5=pE@k/VA;.(?*2&$[ao
+ d".52e+k+86mfk%kaDqn;j1]cY\f6<9[Lf0l@uBf>3JCSUDo3<;0?+&Q+W-W4lu6gs_6P9Q
+ Y_X%>,DV(p=e3N>e@^7QVMK$00X!%FWV&`[L`oMM":\BB_N8C#&XXUBprX(uE+B/,oI9oE9
+ em.A+tI`<&k.Ldk!n]S%ACc^_ml-D_3d_0;'HssGa'mK?r%,lLbVB?mhl4HG`1?H,/lO`f&
+ OP1$,M;:_"&-^K#FA>lTsMHNj]a4Wp>`[!F^!eJ`-Y!+rZ$h(JknK:^ZN$ljpop(i'K8DY!
+ 8B(@]--&qP-8!@en9oMWL";K,eUT_K0S?rCD+;UAG\OAHa48f'ci(a6P/7`ZRhibrH*'Z#M
+ D5t2\E5]R3:\Ag?<+_DZEiYq1Q)PIZ"mq`nn#Sft%Qsg3!$D\R`!r(XR'Z$FQiCk-Iri3d1
+ pkdAmTgTcX<#L5W'EOF/09Qf2//Vd'%=p?._oPRuNXT=8&Ri[!@FY0`ckkYi)<I4u`L%9gj
+ :4I.%fl)4@0@.X:_k4+)^1^jiSkaV`#aJu*!,1=@BLWDqZ]>I(;[![Y9M,*L_[_(%j=o'6!
+ t-F)":r`(ar?&cn$4mJer=6!6nso/s%,?J/]Zl';=J(6*_P&O;Dg:(G%<X5kIqc=r5!R'4H
+ 9!Tn!\?3Z%l%'>]83JNk.EbRfog*7;\A&\8e;&/8Q3(PgKV+eTi!C`2B`)1g'JiKWpE1_eo
+ *#mL;A`XrNYdMltl)_C+in?*[\$E9^($\8Eq!Mp35UCCY)%tR:4!Cl,N71K?e%oPml_!D_C
+ NXgUs(kDMu@@.Spg_:or%`(1D!6buT=:(Xn&'Z:hK;_4HmcEkH&OO&f!Vd?p6l/3g'-QoX5
+ r]CJq@hfd&)fbdiA_Vs3Yk#Q&tr>D;RRJ(\/\qQ*.dJkU$!Bqo*$8pH`cqITW8jDS.:*D$)
+ $DpTU63T8diH>(/P\d::)'.IN&=N).D\G_1in;jqs9r(r<^'@?3/$qHVFR(Qhc<iA_YDfGG
+ b?'ENk!+[d/u'GOu3&Re3ITbnKM:_]U_2'Il7dp<_sMA'E1)GDItTn43!fGDB&*FX+06.?\
+ ?neS1hD;i\RY;C1Zn6b-=$&W']MM<&\<#W!I$g(#*&C;=Lg)8iC,U]r:T]?bpO:1"[(BC<C
+ JQrL(iY6p'%H0`._+G'mqA#[S&`IgATe[Hmne8j&%^Ks]JK,IkU^J=U4G0qqTQjH;1_tu#.
+ )Mob_=SDW4Ah9CH)(?Q_%mVk<#-Wt)Bk+[!SA%d>T&7B).>98iKt<&C`4Io*+A1N!N$kl`#
+ (1C(P)o-+c(SUckJcj)dr(H_12m.p(^u(%Y7@]JE@QqO;,MdL(at46+.hcL`:p/(r<d)To^
+ 4ekSYPX*eBOpiThQ$e.9AP(_OS)JV4Tn65Xc;(kES>_2K!-:`/.:'d8YO@8n*f-l$js:PI.
+ 5JQs%#\/:pB*J'FoJ`%CH[N4hp*RR\(Tn"&_8/bpg*s'h\:kETIr*DZY?r'*uMj+gthY"^c
+ $Xoqo_#P2.U(>(5,G@LC_akRdHjnss4eY:I2"2A+8?p!OraD$0_8mRharS=,*+@P?+i57NX
+ ;g-L)F:qT;&UE?5S[^b&4$F5:W=!A[Q9$>'aBL\_O?s&3"pjZMLeGYJQ<C,+r-e0';9:\_5
+ &'EU)X3n(;Z(O_*/WcSeHZa)5/oV!D(01FrA-?&Q;gPTn5p'YSglb*jun,[(%0nO%SR0*'h
+ FR_.bNBlU`4ta3Xl)B*'%U#Tg@e*nD/L_3c2clkf=?&:m(`@0RC=Je7W_2?=j5o]R#5P:OJ
+ 4'&d+ae5-fe?l=Mn(W!6j_4VdaU)Y?;)Bm$?@A.CdS/_Rj)1fFA+d5b(NZ1:@(kJn3_1=O@
+ m!TP%D$JX1dutoU^pkaEVMs(AJ[?#*kmK@C,2o?E+fH$)=;c[7).C)r@F?2@g*/n7+/.s@i
+ Ue/Lj<!:,*MM[:6-pYU$m#GV*!+V/!MCB_H5E9F&]#G%@n%%WHkX?e+!L;^!fUh:iY&=W>m
+ QT.iA)&iBGCPK(dWTg_8I)5Bm2kG'nL`NThNF65Sg&e7,aLJ!IAls:`09K1uVm\iPHKVa<'
+ <3*+A7Q_878PQ[:V`BYi^I'%.I;P/hFF%q/GYJQ`[TdMZ,l)55#qpT,86`ZG3p*gG"`'15L
+ QN"Ru6&trDF=,gR<S/"f+(]g?NTr&eqj;S-D*hfeXiTqKX)B-H7*eC70@Hi>$Tk[Fi(h'Kd
+ G)@4>Jf:?72^-oS_::o\00$6=o-)0hn;b!g#gFlcVh%MY6,4>RXrUrt*TrA+U?E\MjrVA0*
+ MMI6_:0Lal?Qh#)r]'`+hAZ0iYpdq*T<5$Tu\&ON#KZu)2'7P[pg+cR[WtI-ch]umV3Jf/e
+ [,R'B)+jiEd:.O;Je<(/8Z^To'dTE#@QB(2[q(X^bF@U_U-q(86m2(\ej`oGM)9*22d=J]o
+ 2NiZAu4*s%6<@H8"$8/Vd<(4c`*6'-P(ddk5u%C>C8@=0#FRsne;*.dSt!QZ?C-5q.R2?C4
+ 7To!C?NY7TJ6p[1RJRfXl9\BHCBn<c761L?$moeW;)hHJ+\XjaKdN664Jf#OMTs''AO;e5O
+ 'm>NL_.FS<Hk[`A)Krb6TnR;]HW%[o+3uKVD`AGbs.,k+2M'j/iUX)0/jUZY636?j_9Xf9V
+ cR<$'1$"DF@7!T/et(G'[_^R!Mg^OQlBJb)Ss?4iLQE'K5+h9O-DUATiMn:JkZ8eN&]B(7u
+ /5=asRqC>_+.56!P(&(F_Xl(;Y)1Tnt=oC`(!tO*Z/6RX>m%L`8Wdeq%m8iNsU+mM3!n77!
+ Xa+da68YT3c8)WB$b6*7/<W#XdfAV&LN_1LNXj;($"'d9.d_8[Q?Q5i3^Q(df"q.(J=netr
+ ^+$ls1\uh8rbS!nH:LTH3ft\KA77CXT)kl%+iRf4q_6H';+#T7e6.d7q/0>Uo*s'"p=eHhP
+ [N,D8)*tPK@8Om.8B'8:)PMa$J^J6j(`OXS2^-k.!H8q8diSV;)PP.l+lj]\p*-sg*ZBHVJ
+ WAOeAdon+(SL%,_3PKQ()ML;$m@A1]:HL+1'\rC'0pdN_)M]Ce.^cG&0YQo+Z(%oa:WuHOP
+ sLWZ-j>%+r(@2'L>b:Q,XTK?4i)1NPTUV[nii0?s(89'P+Q`_(6?F3u+G]'VTafP[G@PX;p
+ 2F).C/oeuccj>T#i=(Jj00&*=a\Z5l6H*P3'(_7gq`oGbX!+$mIY@ItM/:`1F`*S.)/JZp.
+ <p)<j?P+b,W+g/(9Qk\pk)Bm<H>^RW>+s2->+(;4Mr+I1"@NT$c*C9@mJbBkqOrQE>'D]P=
+ JTr'+_AlfK*'r@%6-%1-ain#2+$@Ob22iV>\[#Ea=dbVF@@eFSg))cE)KqN_@H8<"]H.*;;
+ 0gJaiS5E(g)erB+l_]-TpLA!F:.cd#@P[fJ9B8tF:<^Y$R#WgJFF6rRL[.t)1\(a_,n1@27
+ c%f$ir*fi5?:7-51a/':!/CZd'<$M@H7G#f,40+Hd387L:)WJm6S=!A"p.HKLo*6K%bP_*:
+ 7PDDqcX^Htf4!DF3DH)1?(']De'_0d).WYq8&(_K@W[[\2#Q5F&%*'!.$iLS)uOrj_I*Wbs
+ SJ_hJnWZPKY+(<#,_=tj@pR'q2QiWgS6'/1!Zl431_de9ViN(o<cl\^_aPI`SrYRQPYT6%)
+ )aW$sJ[QSMp`#e^c<Qd:5t&]G$$Vjc*1bk)hG,*moGmj1M>gT<^0i$KarUE(*Pq9jG:f4ke
+ [%QfRi!Z-p7Z5PZ5g^DM-KNo\bT@Dm<J`9/g40E_*eP$C"9m:':u8i]8dab^(1*&#sdbj4]
+ 0^US[oh:$m@Lp+E.`t1^?0BdD7^Gi6W.QL(.QT#i02q^lR(Gne<4^J\_bm_$1HZ7hWWr%D^
+ a3Bt?S5("pGmfnY9(JRQ:/;AC@((V1c2+k@KRU)=e#)4@ggiQ<%SZ5hi=*?jVe!TG2N:`jq
+ R+*aXT_;HE+gYMm>MP9e^=sHGoRM'`;&[PRP+]K>*-m+pB+2<a/iRdk^PFJ2/+/-%^Jbg=:
+ g)m$#qKtUOJ\W;Bp`(I6+.VO7Tl(_k]pZ_(MF%"X!Tiu]dN(R#*F\(PG8;9On/l*:+$oZD_
+ giidjr_*n+.cRW&!n6GnDSORgWl_'C!QC(4l3Atj8LJBMacJUBA6.tnQ@X&b#T10#c;0tNp
+ ;3n`CN<QVoOO&kjZ`b*R.)Q;_g@\H;QJZ$3k3<pol'8Psm/NnBRUDQkL]3!aoVIW`=eN'Zf
+ LZRie(4UcE];gnH&5e5E[l/EETUS^b\Z!g)J`9:;\hZJ$0QRT`/L(`X;%$&-9*nJIcs0,]a
+ UY?As]MRb^:>:J(fjhg8Ndr.;bD$LFhVW26qS?2G-S]9r?]\`+tS)O55HTtes8*7AWl$;`(
+ :WGs/cLH?C*KPn@mAQUZZdT9D>")?1:G#aEkB$HZg3>:iY/]e8r7pjg]Y8kCNVq]$\/k&$$
+ bcDrqDfT-f,MEsk'3Mr4+_Ra/`G::*_3d;I\4hur<=;JWV1?TLIpEOT'+Mt`1<fonn(#'\X
+ [aWAmrnaR0Om1@N7e8BPWKXa\jGq74==b#GXRIR&8!BC+>;+JG)j="UUVZ'BW]N8JiWWfMM
+ jqd[mD;@A9j'P7#De*"6B+BWirg#h2Y+K4."iNPu<B;2HNK6mI\f#g>5jit0-t$KAT#-jg(
+ @DHiM[D$*(#F<q;^:aXSsEY8M+=A0A3R7L3lAYEpNR`>Ha@iAtlOD5bi@BOX?B,TEM*s^O0
+ "s<$=p4"*\WVZc>X`=3p+/UKaEtp"[W)8lCM)ncW`2QjM'8;jI8sQ8f!)=@63CI>GB5.50+
+ 83CRG9>uChLD%CJc9X1#P#l[T>rP0FMJ-Dr8H5ISRd%*(RaK7eT<i#IR/*U(j89RiT+=67m
+ R\_Qt5GrC)3[\c<$E(.8jWF71"K_Mduin0p(Lr&650/E@>4MWbQ5h'9Z4D+W82AMD5]Si,G
+ iRit4-s'/I_%9M2=tYcDB!d)JeX,hRF2#QmX^+j?ZAdAE-Y&O7P"7-Lp1O^au^5RCn%ng'&
+ :_7X\+pWgsgD#6X,Gb-:^,Y8`hW@D!`jS<aq'rDSCDk48i9[js"ainh`oI]jm2\h<a?5[AN
+ >[Nr=3HSu""f\.gQ0)STA._6RMF&!=#m="j-+TC`gU?4Qe9):U`GjVQq9!t)k;Ct8*bY(lI
+ iV%QrE5\VM;na+/1"@'+)#*JBUgH4Qu=#baj`coVDY)VQH!@[=JQ*tN,fVe$,T/s`ec6NRq
+ -eTC_5]:W\]dVk^=GI`<cB>RKMM<B9+>NRO8>k=Npuu!bUf[W&)Ap<12H>.LA@6",:Pa7-H
+ oG,'Y<0"O8Do+J9!3La.YZ4;7jaJI(3S4+n/s*.mB[&B!.I&!r+]@?`QEU[`bhd5ik4G`NS
+ noNE[eFu)UljATQMA?#*l2MXQX*@&P0YHe'ga0WB:is]U]+_!-[^oA3G<F:^t2Cq=2PSI[V
+ 7LER_,@a'Z)+,Zc%^FAD#PnWHmd`EZ+kSr5q!O21]R,_0i'%D@nW6,\(eA*74JWT1+3W;d&
+ %"2'#b^i4,Of^`dI9("5k\/Ed=@2']KAYSgE#:`@L_9#-\_o#(IMaH%WPT*`uq5r@u*qhiP
+ $R+Lt2rc#[%E&8i),SX;[/\AqmQ90E_*I)BnbsKqS]&6-DTF:_5=eA>91JRTE,>a=dj=@M`
+ YW>nY7b/W$]Z)8tJd'C];,#15^@b7\:nJm#:4J;+WQQp(bk]KQS:4X?s@"/(<L>)Q7>+p:0
+ /DBckm$3>*!>KFf&K9Tc&n\?nLW8njaCimR/,2*93_AYd\FH&#d3_$pD*Fj>7Nq(=Sa,oaJ
+ "4[f5[IHOsd2,&Xk_ITKlo#)&oGHUnFUI)Z2MO3E*MVb1%Uf\l`Xmr07!s%_iK-&s;\U&.J
+ 3sZpS4^aCJXA*pC5>/T1rKs))Gf!uKcp(>J]V2fl#$O.<1u2f`7ej<=K>0\_)LN_Q3KX&97
+ phk=!p=B9N/3pVFI5H64d<4TbJ]+:k0)ZLcYiM\601_NDAjUUJO<oD2pm^+9`%0&V?rTM32
+ C#Kn./\UM+cX_3?lQ#iVOGODp5&_^(=I%];4Jiu!,tL(1-p*94\Z$pgaN"UgS2K-5+@Tq48
+ t0VB7Kpe;.V/2_1XjV1&ZDi$bl2+1iS)F6VM$?FcJK!9\>!L-%]Yi6u6-qXtYTWSUDjsK5X
+ S$(4@]HnH%?WlcHYS2[_fE`0#b16SBJoIoMg"6lMJ4<97!&KJ9KG29063pNXIY;*f*Ch75*
+ HrSA@e'(SLYW:OiWMN('c8GLGe"^0BQUbh]J%9<hm[)>NK0^h4_PTd+/A4OjQr>Lklj&VG7
+ L)QW^].rB_!*0Lj"b<2&)%7Koe[A6c0$f5KBGn+61s2.ae6q#Pe->A+JX=ngSP`PV4"i(g;
+ kq[2B0>G7oMs8W*&4*/']k$`mnV$Bj$j$P9"BKZoi>@W!P"c2]B)%g'(?XNi07;6Rr:DrB<
+ e$psW?S+%kt"*D&5i1Q[ZJqa]Z^igQJYX/WSl4aIPp`'[?QHpKcd96!s*J:Sa&4-Y"#sAbO
+ `^&8p__c=jkF=41E8VRfLscbfi,%Tl1`k\=FUoY$6'V`;(S`O"$FmYpKqQa)#?C#I;%b;^,
+ 15:a*9ms/\pThOi#h!>-OrXY3JX"%N\T==]En6RA,,cBRi'-UF\k$b!4*MPA4K+>]HBX`1X
+ \Rm8d9\qV3sN:^cHdVC((WOX59XbZZa0"RE8k+E%hZ`QGZcY1fs@EBF-u?;8Kfk-UH*_&ci
+ Cb#<dQ$"*h?m,;Y7#GDJ9"3:/>m>Wi=c2Bd`-V%b,<?OQt.3<beg)`tEFDS3PB7nE%hKAoM
+ M+dGOf&Dn8`*,UT'Ji1M,]5hdg9KA*t1'CgPnRED5$\>B4QmK0_@tAUpA\P[!0`U)AdtPD_
+ *Q/[L;31OMK(hS*\]<,<+%0Xf_XnPW'I*DrUKE2+rT5"$5dTZFmnDuX'nBp\#+G[/"!p-H?
+ hq@p'&;tL!rdKR_Ut.(<ZJ4sC"]V$?pE`Uhk5Z8$5!=^FP#dD5*&"o+8X%D:rZ%,lnJ>ZK_
+ UE:@]LX^0*!m,aQ989]5n45EiG.B&E1&C&fEI7@\UA=So@m<0PuM_?j=7L#/F]&W-!cEDhj
+ -\#3^:9>RgtjFhFcuQO$^u3,jW1FpI?W4MYqr4+s/ocj*0'#?rK;)F"sF<2^G"#;C@Wb:a+
+ 9KSQe^LT6>hT[=",J;1[g,e/3-fR5@q5mNL-S60Z]cqB)OW4iVM)A>o\.KZ[1DE^s<^16=i
+ KBKt9(agL2/$hj"!?AZamKDjOJ`nfk\0:uV4f?I:"+WuHTNFEh5R_=<L1kCU3VS0)3eYBi"
+ V=mln7dVRCBlVZ.8](0i<b82*\I/3,%,YN0n61=iWf<%"qYF&#[ORR?j:jq#.S[YS'X,nc5
+ iDjL\qmR#]IAdDZoi>L7h*A@1U1J(*.]K*KYc+4,(M63O2OH1RaE((u$=C*f)Lt.7efU#^V
+ 5uEJL!A#Dcgn^ii!lE/qGC";jph*%M3Obls7^#2rIA;`fplH\][j[_Qe`kY-^#W5@i4_Y`C
+ :6npm*_8@ee_aC#s!M(?`9e9/:0X.F<#Yu@p++hj0!\4tda>ebG++o)_LBr"?%$(f:G6>?:
+ K\/,684Wks7YOrK"h8,u\8[4D,DRCRWXriufQ7=rKSI!TLKN(34)`(\E"sL=RlG^RTt\.k>
+ R!H2"it5/n6#r<D$=<SL:C-8d,p%\BS?.aZN,-'jBIr/D]M)F"t4DKaDDr+D`Aud`["YGBQ
+ td!faJGt)afJfk]6uZI0^[;8_ABcd\)@LHAs=uL2_'dP,AO8`e4Y2K?-Zg^dnX=1k\\/!sh
+ 2HGUrsT<J'1gWeb&p=DYbk3=K#;Z_P3dGXhqC#R&i_MUDYun4YNOS%`WX6Sms0X6<9^/j?"
+ M!Lm,IZGf#c:E\;rKbFt"fH>cZ5Hu=k/DrF=kWX[tO3WQ>L)=?RO>hf:8ecMQ"\;UI!+gnH
+ E=E?G`@Gl8k\u7"V$25PU<%-S]E^%(DTVs",&'BR^jVIRF""WcXiO[&!QR;7aZ[FPS@Qk(W
+ hkJbe]S89QFgjdJ8>H]I0T>Jb=QZlS'IS*2)qPOLseO6'0$[SLkk29#DddWG^RMmKSR'l#I
+ )\_XRHIa+bu$]Kns7E#XF'q?o0!3K65Rp45GM`5_XG5"5$TTGWLO?>+^mP-V.#7cp%\A9*K
+ !?#/G14BZ6s,Gn,XAMc$$>FP&r+fuP"&JTL(iPNU371GEgA3_Bjm-rJ')*J3%C\p,7si&:]
+ #*eSELL?N\RPX*9.7>+cBKMY)@5YHd?=G9"?L'V:DY]NZ+D?Ys6Q2#%rpueCIaG-'_"n69I
+ :i&C1D7amf#7,+nXJ4(g_5Y>SLR^m`ZA^OB:^)G&"]/MLnR)LY@A@41L%oLI_:071DO0*dL
+ ](Z4/HqI4@%E/-\=g\Ti^,V_dNelYUelP&]XWd&ILs;E#B5!L&9ruaQcmHo#KYsOaE4EfL6
+ VT\*b0C!Mn]LA@0X5c"DC_g5WT%0>_?ER"fO200Ng5G=#>.KK:#QJ5oe<_8t_<1!jFfk:eQ
+ h4/r*iQ]qAcW-$t?f.55;b_bDr)4Ya[A1/50<80dF'acf89%%9FW!SB,[^`EPR5KLW"\rqQ
+ A%6m'bBa0Z:K:k7._UO8F7g*d3"j==X0O0@"9a-&ZULbj.=QkKI:*U@n#),b#fP8`CpBKFJ
+ =K$0jgmNpTLqAV:#>n8%,2K]SE()a(eHGS)J80cd>_\NR#+/Gk86c@$E<aL+f-,&J\8E)<^
+ PDd'g`3#K0l.k-D`m?tN#TCFUh$u]4ZscrUZH?eR90^]bDjVh%G9Ud)#h^oJ^HI<d7P]^AA
+ AD2EJL9I#E\A/E*0q1<<a"Q"CP15:cO,Y>Q[MbKpXRt+BS]l5)!AmM+Y#d#Z&lKKK2<$hDh
+ CGpbF\a9nL&&"X%%SLj+qG`5N:3KE+`#q4Kb(0\H&[JS6W;pdtR0o$\^S)<B\5!$VMI:`;S
+ oJ_2^qYUfor+G(.c8@4:0>q9'i@lk6"aXB\O&5<9]7"n0/L"L2EBMsR72?]+A#"An'84a;k
+ 1'UQL*5GB0SYHCS[oJN+1\bfdK-38.?nrb*><lPM?uN=S87<hW<7ksiph,@!Dhhm:SXJ,!S
+ R30*@@!R9iXftZQ6M+ZD+Yim<Z(mmq`>30HT5PGUQR]DF3u5[i!8s,ScO*OT\khJIL[rK>l
+ ])Jn90T.D[0Bl..DS<^iP::NJFTPKpZA*!(YY>6(JiV"Me?r\2K"R>6?QHKp.UPE%hD;=[V
+ +S"5lt0840FK2h\,<?:[hC-oV;P3eZ-r!a%L;99qF$/iAG@"QXX+m(&'3csUg%YRK5g(eW[
+ 4=+\dk!FRI3TGE.#8ur'p23J<E8=Ntb*!616JbUPor&mTY63U*a1Vp=$3%G'75m$g7KKq0l
+ n3_kB:'Kn0"qX1V&7Pcm<!GB@"u5B*+jT6f8VKuOcmB6WGZ'72BbfQ@:]4't,JJob>W_SRL
+ ?<p<c4U;ENkg0\U>Te:ODL7?]4'[O]\A$<rP03*,iV7L#0r(hXs?UZ@gDsJLoe/#*4?lZN4
+ <\7#?)pRE<@67hNbWUd27<Cp+_?TJ`AG3ak_#-XuD*6Em]$ZK\0E3H[DcK@0?ApK>:*5i&H
+ C;a@q[Mh=*#EGXhpSU]oCh"JAs'i(+$=D$4NSL;5Ns:gI0oR0$2G"[G6T+D6;95R!@;jU/W
+ cBq'rE;h]'`9c/_G.!?/Tc;!4ih];:F-<]H5=p1K9-Qt%P"/Ld0:#DU<Ceu.(cpr[1,(m8a
+ 0gIf>>:!lbdR35"Rc$=15U6HI/:u58Rs8TKYY#)Hd09ZP"rK^]#[o@Bf<4(b"riVX1I4h[k
+ 6??.*0j\3TN7S1o`i*$#/p42?s!U=Cet#=4;_ehTP5\<@Qa(57DWeL!H$g3M?iu:L\PYiBP
+ Z7dmD_P<L\aP2.tts4[D@=`@ZZ)Z7e[q>gP>;!bHU"3.!R#AGR)l@#B5(r"uG:1I"pR%#K4
+ rD]L[g`ki7bDLR@?284+4WmKNAK"L)27Qq5iRI=j.<b_TGUOBDdd:PJ:W"Me:IkXbrVD<ej
+ :lI\N/E,,PX8VRKq"+X8e0VS_q4c0%8\TYEh$3LFK>0mh+Tm4ICeU*"i^2*`p5&i*GE#fi.
+ Y&%D?lqeaU(e]Gd-%kPI2@T!WrlchGoEVlQ!an0-TrnL=4+nGM"/nhGmG!?-.g>-$hX7'@p
+ Gms-#b;N7m@JE4<JQ<7>R#$G,5o"UPtZm&k&`k'B9;50Qr@k[?A>[m(!pjf*pB>Al,BJ*eg
+ B_*(i=0pM/MO,L9Pe*phKIPL^Y,W4Nt$PB(SB3AN]\Z`]!W/B`A>%FcX=e&(l>LgWJL,!,r
+ _U#=*Wj\8qn[:PYl^#7u2iE-VRhl:b'?A)KD$OBkR7>J8BdK31SH\5K0%;2,?r"R'0I!)!L
+ 9'6-9-KpZ]Actihe=,+4QEHa8EL`cdr:]e^(Kq\AJJ<pEQ!MGN0KQpkucs"[t]s(?a[&IMh
+ 89q#(_b$eK;D;#8%`$a'(s"1FJZ58o&?UR%9U[Y0Yk&5(a@329bUh*lpXCU3qLJgc>R".j-
+ bJsQ5YqY51'B"-p>B*VQ.uJO8VPV["kKCOk6Zk#4lb^>D.m@2@F"$9A-AQ+##2"j#\NJLG-
+ 73GHIo;>W*fgcEgJM&BN'MWFBQ*set#6<gbsuVcV\g4;b68aie'-i2X9sNJeoN7]]<LlS73
+ M$EgJc`&(#Onk][LrG)+ooLX9po=FDUl@>DclLUrA7=(XAH<X/&=0%aWZ86uD%TS%bbC.ML
+ m=BG\c;heab#8g8A!-!V<?*?4lL?B5B7s9*#G^#6ML8Zp3G[D=B3X"AOGNu[gOeDh)2h`Y@
+ "RouTOA6!N-A0*7nbk*u3cE\K?\X5ZCT,%ROF@>G.55pLjgF`pT8\H-VhDf4KZicdi$')4*
+ eO_jJfl=kb?rP&CWUde-l)o15UM9f2"kE9,Yokd&VU@k1*Mr1PY0<VN*;^5X(-`EDKA?$%]
+ M>5m4Q(;-J.H\q[!n1@O"jrA:gM:PZ>"eWl@qB>g#ekR>I2U2Ls"GXBD\"C[K46J%4>lg3\
+ \7s)?KC%eojHYhaLfgQ'n_C;AMG5MGP7qcVH`Zom5!qh<&Nn9e>S[OUs%\QQ!mlOF8m<W;!
+ Ue"?&%/&D0^I^i\Pf)rSZ8:@t<O/Cs>o\+E$>:t]K?-N%X3?HE]'@iW2H8=7$-9H)(J5.e.
+ l^5iMdY_3q<[IAV]gTVS.%!aTlM85_>rRq)G2c).gIJ@".+O5a'X);H's1D,6%3oM1(Xe9M
+ >9cj4K'-n;gO[uGZGgubd31DP&<pta9,R3)N4g7BJ5PMS.$8C`40:\L*Gk5(d\9`hGG%X)6
+ eT4bEOufS>U>?5aA$NYY#(NaX7abOARPKN'ta;1_YHpfM@;*3Aqt:";le8%RJ`j2Njl8@1L
+ B,4HUo2;I#V:aifP!GTMGRL,oVB5jg$-"6fkXQHep35aB_'>VQeDJB1'C6ST-T2eAZ77@']
+ o**Wo+O`ESt`SgYg(W6nH@$&K%&5a9t@7Xjiaa"q,)!$Qb8<kMf,tXBA&[n^EC3p*".d-[+
+ XK/DU^9F\S.Bp/tb<jL(SqkgYFWRSls&>WV,trfXCXTe4/%#gN:9&+SW-=lXM>F"iN3W*#T
+ 4Zh7CpU"Lc?pP4)5_GGk)%+.*%bm=H'nlqjC0&uJSo+k"Y"t>c8,2(=Ui;pE_.#nWD$`jAH
+ @=#P@`F_9,Ar@T'3b'WNnuT0&*u+OJQ*Y6'WddcLee[fg]Ta7+mYT&EV!s:74o"OuJRO5fc
+ H^_6CjP5d3?a#=6^e?nN).IV]gYA?=3])i#TjHlj`hoR3@#3Vn3B8a2NVMaX4=/<Z*B>8P:
+ 6S80(-@F2;M#XTBk+:Z2DU-D"Agn1t@>@,u0Qc8Kb+:&(*OsH(iR&3*1"W<=UTu-XA/J"[c
+ Z9FO_f_ecD-#g^eQ5f@)1_BnYg5CtZM/YNhL!]ISO7VlD5`gZhKL6FX'aeC^1bf_4-"\<fD
+ ]UG%NiOh5_R+gBMX>Umf+i.'ZRlEa@1MZ3=oN.V-i'dMpbfHu]Q^777pboPrB@9S`qeD>)l
+ IEHDB4MoTRE:W;=nZ\VR<F=*65mkdi&ZeRW'=F;8$sSL+0KSQm6!`$fS*IKuh[_Jok7WOYA
+ AA\?$PmS5YADasKR(g^mq^B88c.0gecu(SPq;$UCj:Km72AU?k"!iK>Ag@+>hT3J[qa;Dac
+ ?l5C(=B*WuS1IJC=)2s93T;G::_dJfJ_5Ktb:rjmd#[S)en14i2D@aWmUM>b<S$SE($^oX*
+ $mK4VMZK2,LPYXF,LCfK1$h(oW:qB$!2G1^asS+#3"/,]+,4<<)T;5N#9e1\KCFa>!T6'La
+ T+5Y6)Z`sClOS*4XUSf:bRD+5n613-&7T+)[)g\'12mY\M1fc_T7*>@6co3E2"Al5ZJ=]W%
+ CVL\f_u&NXWcE=ba<ESI!l1(G9B,\^>XD"Mh]liqP`pZ%*rbjNEscOBmic[Q=`[hg<[l?TY
+ !nobGk^GGAiW]Cf-,'sRCVW,]0]@A`VY>KM//2-MK]U01fj@%2l<Cs?[k5=X#c+-2q?^7k0
+ VLHtZ=j5k*<JYHk5GiBd^1iSLQQ8cjWa;_1FrkJ41!6*=6*MV2"%`)O.LH>,IJ`'4\+LiO_
+ GXi4[L`lu-5S/QETEl^?)[;Eg&&Ur0#N;=O"5qHPJgbLN@I>.l5u]]"PVbN(oMQ+mE=S]'4
+ q;CcP!h9e0nW.k%,srhL/B-KK+O(\!J!Xtn<=s4Cfk<YhCZ(BS;E]!Xq`0<C^sn#4%Gt/*T
+ PLi`_is"#?Y.?_Q4]2)"AZ!1jkA#Kbf?H!"VBZDeqaR9aaN9B'eT>Bd<CUM_U0O6]b"b60q
+ &K,iUCC;7r-&]IScB<YL+YV?m:9;1uaI.7/Q.'`hE"MPh"9&I>QK@MDqT.<:r2E/k_%>[.L
+ g,VFoJ\dnjA?'6@W/4MVX)T/G&Ng]l-kN(,lY4ceZ'i:qG;/7*SP^AIuN/!q?=IlqXG!*6u
+ o,`&@<k#&5cVj<uVq^AVUL83TZ*/BVW956i:ih\[UcCr\cl?QNB2IQSrJ!l"*eP;I%lMQnW
+ 6i3r_nM.kd;Cd2@'UZFUcSm6J/!XGW<p$$gPR\?9W="0VR53Me%0m%l4$)cTq"l2:td>8d%
+ D7c#ZM6Ur[ES]:`86U;+$Q&*Da@M)*u(/L>ap#+uNXC[<uD;9#k(M3/eZhpbdpih%k[F>S=
+ Hh'dB[k-:L'<)rm<0NZlb3#8l\H3YZh:Tl^ft.%@KHoc+('+:SCFM?grl2onhN(kWBWZatW
+ _,iRo)L2bEW5u]=i&=aDdj.@.hXPP<$?59;]9FaCS$48h!.)JMp'O`s^MK#F6"\;^Z_/MVr
+ lX$#KN1h#1[5\H.CdjPm+;Q1MEX`W(683B/*<Y`uO3t*kYW1tkb2HT3pOoXrL>sBM`qbr'"
+ b$^Uo\S'1k8(I/X*7P7<o^92DDD#S#Njkb@n^qSX<p,E=SNcd?AK,,-9Xgf*lJ0)@?$uA0H
+ ^QH`</eX$ZVh$7@;CA64?_MX*Q5fYbVQS]HN$G6]UE%18a&]+B,Fa:?i$OW'YhUM9pJbK]k
+ h&_;J+J]V[Lfj\ZLJN%kUCGSYrT[LAli?\\h]R"dS9'%Lqn$r#';L(I^o+Ug=;BWfW`[W]s
+ LiMe#o<Ybh-;%d=(9FJ\:2ht5^*$_P&%PcZrOSFD@K(pJnOZB0>ergZ]cmsqAGS#M1QOWpr
+ GE24VW-md!/gIH?Nrc%5L@C*5@\>1SE=%RmqJRPZbq_oM<"el=0,.UW$@?kFXf^a%$A%8<"
+ c!Pm"`;4uWM#"O0d\OWd*Wk$0Q?!%a+\]hdN%$^F-"/93X=g+gjB<GhoCm`kC^^eBQ&1RSa
+ 6-]^[(j9;t=jtf'io@rYhQ-If6PH1rhTQqSDeB!QZ?+SfE=N)54tj!L=]+lkpt\*heT5U$*
+ >E[N8k1J$(aP%eLe#Eo[Qm`M&eB@3?<dW!VjC#sdJaWeqK5LuqHGa/Wgnb_#"qI&IO(kUqV
+ R8EL1cg(Zg=';:R!+YXc"NYB3I$t1ssk$&-81^Ang5%.V&JIWJ]\e.5O$\8j*5dV*=E6\JP
+ 6/aF_6mD#L/FD``C$t%s:?E0s<:597$K36=@0dV,PT$[0)e%)3J[ujP"s$3;(a+&3JMQc2C
+ (#S<#=+:[B&jFT//SD<)=K^$%6tnaa;n]l)WAUP+d*c%fZSjb9uD2b!>6/^Aei+[fRT7t+\
+ ;i5D&%q7f-$4d$ZZ_c9Xh3%%j=j%JQ-T^=SRG8(SSDW_7\cY^)k+T*$OehJ]&WRRN,c.)<&
+ a=!QtGgZCPq)*?k@[$/HOdj=[?hhEn+<Z,6I%`r5AcS^FY^!W)Z/p_kfg)A/eGJb'a6OSU,
+ a!H'A.X?cnR[N:!Q)^48Y_6+h3oH"Q'*PlJ/+kd].5SIRF)j!Z,%<fiZ6jS=t"`RYcN-ND.
+ E9D+ZVpK2`XH<_TLlOb\#AE6*5hHc9J>Su[$t2(#d#_h;]G!iK'-M%Jj9.`$$panJ5s[.On
+ @oA]hIfOJ%*\/KnC%h!km`1k%Da:n+KQ2MBGCg2)rZquTuItDXrO..)aV[Y_(lgWE!uau#,
+ &UAJ8bhr$FG>4#N4SS+X.ZK,;+fmBd4N9+jq<\\/_3J)^337JQ<WKaV5n1\OgBJYtPld:)&
+ j@'J_!@d!59/EXSQF(1?&5JURtlrY=m8'[(/(^nS<_L(tk*(dZ#;!U(Ao\/rJH)o:q[!Pfc
+ HN>W=m)55.idGQ"\p_j1Z*C8$oak@comR\W7rR&SDn]<ctg);bt)DcaZ'6aG-pGV"')'SPg
+ ;3`3=nD^/.(r<d)TnjYMqAV`_(_Q``_5n\$FrGqg(BL?TmR@s8S/m/M(a6g)+Rg+AD'Ee],
+ 49(g%Vj&2@g6b),VFWn;FljH:F+$D#=-?D?unXGN@#3t$$'`,_up_rBL$0:-aJ>9A0O>QLo
+ rLq.159R"A92%Rjmj^&n"NC_'03$jqNA_It<7jiP$/&U)X2m)Bls+@0@=<D@>DQ#,&%0@#,
+ )]k`VV"%)C(!dd'Lpef6I9(L_K9TthZL]Gn]2)BlI."N#hc%MhI\(-o;=iEF6P:tN#lk#;4
+ 6&R;0k$5DHh-c+Cu@G$.IcjrE%(t0>qJP$YCN#\O=)Zf(<+gW8a[N;-")klU8ZX+L-^)mB=
+ *$OkjELSlFp)1]i2hB0pU"CF)OrU3a3HLHc'9`=CSfbe@<#%G9JX@Ecp).;W+&fHe1L_F@-
+ 6D]/*n/%KV(`ssc5pD?)WB`nPLLBlW#btU)BmrQJY&Z65Z,AC$PPN8Tg^/H*<hI9,;]Pcni
+ E[FBZROlkYr9_Tf<9Jk<`,m-1iVmF=mtF2('#S$ktTbEdL19AjM/c%!%6mk+:uT;XUiX$M'
+ _si,/uI8L`^k&jWH-+\ifHL`6A:)$./^JWq+)DA^3q$/jkY5]-rq*XG#o%nfGcJE@qcNCn@
+ t8RZo]TpuSmi"Da+*22")6,Xd0a;mS--,GPMiF5Ks@2Ef^a#1F:+V#:*OrOKr(no.g+c[Q%
+ C)nI$).D#C+k@EMkSA&*%Da/'J=[7%:)8^R(SS&S6%;_iJ/_K)4>e2t1UnD>.oQ$r3n7g^U
+ #I/iO<#M/<E2h5oi!lErAUGI<PePjoj_$DZ6*'t+#PAe'd=^XLGaX8;3T9HQHgOoOrdVh*[
+ ,D>@G`4/guP0`:H#9p5fs[)E;)(i#F2a[<P&F_2*d1E5g"^Enj`pBdm;qQ?*[a&Z=S8[1FG
+ 'K6dg3k2>RsDF:>uJ#ls<,MVdaIbs`-(.@(Dm&DdYBhA&:p%7*Qo^g9G0c4Ig"(#aZ]Tjei
+ ^X;6AA)W=F-+eT)@`Y-(;$)%6./M7MGp)LMHJ&I?\JN+F@H4G&")55Ct+l43TefIT[*C.hT
+ ,fmD;<s5R?%KT*25rokA65Ulc'Oc_9[[\>fW[@hq(#bN#;AL:=b/I<;(:BqI@2Kdn!Zj3-`
+ .>6l&c":-M,Epd=/!<F<p1VOTHAiK*F\4TeQHj8!BC1W3R`Ou[guLS2c`6=EKamPodOo`GT
+ PHg=EP?Tf/=P`j;1+^*[,J@Fda47heTM45*iJaTeI=#F'CN2,1gA&=(ad7JO$M*>crY`[F%
+ :))0`Q>?1]]qFm""7m3cLR5i`_0+M&3LW"`XHM;X*u+]AfV:<t\^%<1&2ntHa^Fq)8d/`BY
+ 65gg>hF:@5H5QLiuTmqLlTG9,K'qopl@/:MpEX0CO&0Qc7JE\Z$iYOn&)41Ak!osm-r"JmV
+ %Y2V/JJ]D9fH*ZY*gd]a5sQ3ZTQ(VXp].2d!>#uSU(b@j*$tA"@7c+Q;Ad6o'k*1DiEdC1d
+ `'&SL#L\'@G;pRfH'<`*B)Cg1X7%</E79jEg'L@'dOaI]GohtiF\<F_;66LrGa]'E:]eG[g
+ S$pT8>Th<L4)g(o:0`WH!&tES.K4fX3U2-m$omEu;b1Q&gm6c]')bNH[i-6(T*j?l>ZkSO(
+ :jWa$6>?!C-N>Ia2g:goEOD!..)O6hu6%Yo7m*C:Lq?4`Ba12D-BnWC6Q6'O\?Fm]V<&/Tl
+ "&>=+LT[FNdSWf5%@$FfY18G+>`i($>'gR?\+]4F(:'cqX#r-$>6'N&aAf6.f(4hngTkkU^
+ WXRi9#b[%bYnRj[2AWieZIGHXgE$j%l43o1(ZD53J`%TcdN-0f*$NTK![\\bL(s^6&RfVlJ
+ U/::4r==='OcY7BHeG,hAj@:)*uUb3)PCgf&T-L`A?-ea93OBIN%2(;'FrZ+lqZ776GWl_t
+ 1\]0H[!.QtSe\D$&c>U%0;UA04k>MR>C;[67P//Q<WV+.LlX@E9OZ8QLtCEL.\d(?9F==c;
+ !@;#4[\R*AcFd<%<;FL:XmiR^l!NK/m'5FRRln68./HKP'iaB8B'l@]h[FX4L'%$uCB\IWp
+ bjX0i56^\sqd(\mU/.)CT(1=3T_/p$8";_&I5h6/-HJ`-&>:NT[&g1EeJM%2Cg(^35m4Qa"
+ Y(@&_"r4s8(.*HbTo]qf7M9,d(;Pk7_!M_"";!jdZItBIi1:ILYR\c/%j9X=Tj=,q!Zo2.[
+ %WEs6,X*qn.brc'#B)3q9=PC`*X\-'g[niW^mmcjq`N<*DT!CE&\khGT).f4X&Z!)k4CsL)
+ V;r!b(.,YULYm^)i@Ze$4T-60t,mp-XRi]Q'3<<ul:I)8+L4MS3BIh-qIS@D9-fUt%,op?/
+ 82,;o7@*oVfn[kE[Zs/'$)=dMEr6)/Ocjc/5f*F`b(!2TB.Ku*VD,*ufVGA4q@B'6XE5rHt
+ o4?^Uth0:g;OZZ:!Q]I:"JR=pKP6kD(Tl^WM"rA3I'cB)@PZO)'haRVma1tLYTcpOgI\ktC
+ %&#K]^p"GHEYGF.(L\j0JW:Cp?5XnG'S1Q=+Mn^iRLK8D&cBCTh*`>%#YO%C$%SBR5esV_(
+ _i[$8jW!lSD50;FNNK2).>p?\^VU%fGpSe)$.qs!L=`H$6:`e*C4cc6.aM8fRQ9C(a6%&iI
+ l^bbT8o&*[-I]@pg7P`Tq7i*fN-$X?*Qdl%l,qU'KLU1M+<Y.9BWVESfSNrE!%Vj`.tRmbZ
+ DoFXbpe[Mu\'23ih3+g`;aJ(Ss(fV.?@I?D=j7tk,k*J/JG\]8j**Hh9'5PXogOuCB2H,CZ
+ 9>k`H(Q.a)4.MI6TX'2o;g:?$;J!)M%6tU9E+IEZ_?j^3'$/kdu^g9>DXcrGj.NEg1!@-M'
+ +9b$2a5F<n0-URMXqC_L$_]!`_+YIB:)ICh'd8AGJNO`7!Y?MD8YDjd5l]m\=rbB&*L9X1N
+ E-R?]!1lN'd8#Skg/AsbCO*a'-V*/Th2]o:)JQ&0L>d$=0e@^2J]"&cZH<n0"'_6fY2+4==
+ n`<%C#;1[[mn>gVo90Gqp>B-;/LDa_s;p:$8=[ki$\K?h7F-fs^0nZ5`7E4+6Q^HSJaNH6_
+ 7)hL%&Imtq!(R`KG3.TK*35+bNFd\ue],B`FlDEX@]\#T\>ojB[aMrr4-HJ!MH)UB_Y<T:Q
+ (4;R<CHI\bX=gT3M-?HG"c#tV*NjWXOe6G9jLrSNl<CB86k"Vig+gF@$ck+H:!Z%#RC/>I9
+ 8b)n[?*GE>'AGA5ps,HPRF@q[13@bQ:(GL\4t,X9S/dq1A!7gIE+;TOb[!E2fYX$pp-tn^a
+ O%_i)418-6'6FF0eW;qWF:?t/2-c+b@t=0=Hn,6PRn42kh8r=@`^#5MZfDI!sKmZ,SZ-SOA
+ IG?+[E(7$D`2M.Zr[h1)1/7J6"04iIJ4)M$%HS4;)51(/Yn/;)2>f,Y:`XM5/^R+:]j5G90
+ 8ZoR@uS1),KaRc_/r+p`goOsH(iJ=o)`j4R<[%jacb6'^UnfQj&YWUP,'8%H3OScquKEYV%
+ uaB'5a.:d$5Z\]`')5Ns4B:%hMKSq&[H&Rb#k1S[SSgI?-AXg`*&p]mWq;u9.kFo&"*lmgL
+ *mCP0P&Hqkid>YcW_/"`T#MdCYF`o4mo?Eg/R5&Nl7H(:X@jbWZE3@af!_^HMWS]G7G@%=S
+ gD4MGS\;^rkPaS.h9M&Chk)7'*Z4^bVK[V36sDiqa/e;/R)3*2C/'H1q'NZI<E"NgOS1:N[
+ oo\#>R@JjgkqKU?`If`Vf-cNsKFi4Dtn[o=^2ph"e[&W*K1R_]_&g&*:$[4r-FtZqA-<33G
+ ih:h1RP6DT8^$cAB32%YK3,YUskj7uM;P@`,G8X:Urr_O!>nI?Rp@r^j^*tfo]UhMkhH=WE
+ j[$)fXZ?Z4(OlbAu<6@X,(/c!IU$d=MB;tHI*llC.Eunn$OE)*b+_YJXjG?uNO/0mF7hm@M
+ pi`$Z_;.?skm?<9Shs%!8=i:b^Vq/tR@D58#8-0IT6/"q0d!cC?V[FfToi0=k3;/?Rtn#^H
+ IjJNc!6W9a'W'E4_i6lf1SuJH<6#Fi40Z4$L#)T$dmpCff!%7_&;rn&B-A_F!+JN-V6p>SA
+ NYT=Bft$LsFcB+[PS(m5;u9[J)IoFuK)9Gi)g;2r<UU=2jmt3g]0:m9i]g#D0V@60LHu>Sn
+ O2jEt'To`_QB/I=f8/4*`m(4b="$7$2'csdAL#X&I!L/<U9dMW33:e)\Y6l(n5D%iU23Jmh
+ /,mC5n&Yccs#@TA*_`3Zi+h2TRESAk"oKS-;lsG\@T[X$>8e3LK(l^e`+%9:9&&PP)#U*M)
+ L&fe<U[3:b@HK_.d**G]\6(*:1+^G4IhQ;h64)V&-H2A"(o(Vc-m@G&L>_P=@rurTZ/RR0@
+ *]epaCgMFjtn>/L)tucHOn&>5)8(q)C(2e%)K_B*8@&1K@/'W6&ITkTYh^YdFGjlfWQSW\/
+ 5jQ<D#hb0?[k;(XD^2X;-KZ9?>Ubb94O#_;$UHK?5..`5@K&RQB;Ge9W@8</cCT.E4()&0d
+ 'F4h&"9bo5S!.ueU6@r1uNaga:,nDKf?k&K"`brLPJI4s4=rXRW843S9,cScF::K%Zc/3$8
+ ,!@l+PljH&;QmKQKN#i.Q.LRe]"eaL)K@$D6$A(AS;%t?%Ta6Y^@9+?P;(rUbEtf)cF>aDU
+ =r`2TW=>Q.8Hs^m%N5o8)oJ*edlM0i`R)2b@2(bUYa-=sLf+c#86Lq&p*W<X?4]H515K@J)
+ FR-')8fj'%sKMTa3a;sA)L)*+TNko!/;0i$*F\6;(P1%g)\SnGDsAN49g&f*[=!:N=j#iL6
+ 1C9Fl'd_J]p3tU-!DUE-..\SL%gBQ;U,f9T3[Jl"'SD*bD!iMt+#6Q2R%n[Un;u[s_haR.>
+ J0'k4g7M_<R[]NN+nj\-iN0d\Tt*C?uA%[iM9k%r?WU@`C-_!!6(inZFI>gjUHaYobGY?aW
+ RG+5D^]M9+3?B<'QSE\W'VeBLH'>aX(M<)L?9_CPf%X^NEq*,_KPQcjO(kqK8`W_`#%mn>X
+ #-geAW+.-+Lg#Y_-q-PfZm#^JHqFMqe0bh^S-bn-:51J'.>(0A'S22tLp4Z3"@t]]_8'jrJ
+ ]1?&p)ceVfNScGMb^80Gm[tZ5`%4/2?^P")^39p$a@u%"dj-=K%)mB1!D]!OSEjkeZ]OWgc
+ Ye-WYm!;;N,$0.Y^3p-fZaq%e6#mA,u-<<Rb`C+lkKc)"SZ@P;!J4kVi`3p)g;?*Y+=l5,:
+ T!*gRR5W:F+a8Qa"PK?RfX!JEA4LtNh9qH=>:j"5@-FjTF\@Maqm/hJ9gGda3m]Sf^'eq&\
+ nlV?):+k)SZ5cGU\SnAOQ9_CaaL_eS?DnYD>Bh`0Y2A:&`:$\3,=+oX`':jNrV>57o])fNF
+ FoI5SlMqH4iddrTIDCXRH4V+]^gY_nKQ-K5Jh702TpSYBS+1s2eJ*[-F@R@&/oCgK";>I99
+ n^mM-N_qG'L?t+$/i0+KHO>'iWL?UnDZ:ER,5b$#7l_TTnu.<8&YL.5sjP9-ABOq'>j*R#m
+ "3c_lbd*U.AOFiCktpq"Z!E3.$^;p,N@SnIn7-AdOY<0*ZCV)'`[8%"Y]Fo#U>>UPsI-CrA
+ 3O..eGuri&n+qMuRLr#1ubBh9JBjQ$E(c@i9_O"lSaL*54l6O[fB+bO?J(54CP(#ejApS6R
+ lOI&E58N_%r08pKr[8R<'g=$rjXb=cA=Z]FE)4W^@.)[+B7\T+D]l9SWimm@\j-qW5Em;V3
+ S7`$"h%Puohk]VjpLN^J]nF5?^#3=3hdjNJrZs3]cp4=%)ss;W*^tlQ%cY8GLETfKk^MF(J
+ j/g`0Qn>PiNj2Pi(X>.dO'Q2Cu&O49ncF--\A:9'-TalLX;D%"4m>Z,=#oOc3<rVR(*q7/g
+ EcC;BUXk[GdkDD2JpO2h`Zs)rdN!%KRn,L3S+[6MOFdJY_Bti-bj_IPLnOLD)QL(gD`F;SV
+ -hL#?\LBO?LuBnlt=3XC##5^EX]F,-E*LH'U8BR,B\*]$W1LIcbJ#^Q]EVE/`a/1F&Q:m6Z
+ s5mNK\#1.UL&8VT-?\Z(8"mB_,J6do.^,o2']3'9o.nP[+j?%?o"e"H\0Qo$VBXGol1sg@l
+ 92@.D<&G%]]CWfA(h&1J:kf6r!f/sm;cYLj1qZEN[><KP8b=W<GFrZm(QnJTWVMn/lFb8`+
+ 4JN<nc1R%pE1Z.0/I4KK@CGd(*H^&K<SFq?rqo`1BeG0R601)TJ2&7*fXhT"%Z1HQq`/$1B
+ bn\"NVg??qg]92[%JV",K['E&<6C'9Z`bJ`n/-J80h;E'Eo"U$u@li+AF/-3M/5";jc8Y\]
+ !Qo`YV.#3]"#J5q=PE.rOI#8gGF&8m/o<eb9lM"#iui-rHE!@2W'#<6p]BO:tJ=?>YL"s@`
+ :\8hh41C'RjLHp0?n8sGc^7$bu3B=F$0hKF`'>[:-_-tA7@$:mI49pf`6*P/1K0]`m?3[?P
+ Kudt`EFh4VG/@Y(8DK1G<$mPT-O`&e/Rm<uS%Ao%<j^T6_Ra>:"&T7VF$ep%LFb*6+Ai=SE
+ WlGN#9"Kb.Ia4Nng<-N/kP]JHoWg#>V:q?6c35jWp?;#@%ZG(JXQP*;L?(k66K4T]g2[dnd
+ 9rh1kcbi"/o:PBJ0M48e@@[J["-bn25n.9a(Ah4pWrte51h9iWR%AK31gd850/a3J?<?")(
+ =GQm;_u4!D[^L=gN8jN!]S@0R9VJf#Y`RtLja/;+j4"e]Xalh(DqAd(G.LB(?Z0Q@8HA;;"
+ *#$>o"^h3m3?&"/W#.SZ.J:=gu!/Kn?#7ttu+[H:j6\`s/#EWs2BR<#>I#!5uUiSATj,f&[
+ C^2).9UKh1aE]f8H9+[3LRLI5P_5JSO%<AhLP)abHuoU@M+FG#$j#J3,a$E+-p*qJ-7k@tX
+ 1U$Z]ZG6/-@D5uoIrkPE^LCXK_Sp[&5NK!E.l#4#4NjiGZ$XlTfcJ!_g-CBM=r;/Gc*)S+-
+ >Wt]3cBWbsUf*_t`lB$Y2lYA]j%Gb4,R+q2bVbqLS]."`PLbE)Zj8O:]2uJ\#cP?r9>=:]]
+ g&QXiocZquFc+bN1rK2>3mKB30U3s>%(K8<2&Wtb[I+Tn/QLB)8u7*&:-+U31(L>9q(R2U_
+ 4HA!\<"aF`Tphb^%?\[cDL*1GhBOcf/=NsZGL1#%UaCg8f?NuU6L)=\2=E91:9,,>"#P@/A
+ g-WTs08J5W#:ObR3l6TtA;9#H#k2AZ^i[CR]do?9X+A-P&9p]]nqOgKL8];"ctS8K>DAB'6
+ A52oD#6Pq>ffC!8P?[eJa#M2A@2:5ab*J4X1sED;F:SV:^ioA+CEJY"GGdj"OLHZpbIM)>s
+ hkjd%mDKFUU.>aY&-kd-BmRiVL]D?cn;ONrn`-)Xk*jd$SPM;,Vm,4KhUr"->A[TX[PoYVU
+ tE*.q'c!LPQoi"q"?97a#r"P=QP5l(VNjb1QJNPJ5=pbL8g1^(<5dV(.`W)!Ka4dkLo5):V
+ >n0!;g3?cIf#B4re%@<4JQj5c*K:""fE'=?U/VGNAKg94&i*D)a;?d,>"]/Y5"DNW&=U%]C
+ "h80"0O<0.?\XqiL+$hm=Ch]hG)'IN#Kb0=A8eeP+;D>8#/G0_=C3%M>Vj/t_73g+E,dYU5
+ q@IpL;7t9J9(m=@YXY`L6-N^"]`?OG6Q5oKs54q?s/5'FgT<DXd`'jFI#r2aL(>C44;kTHn
+ @pCR8uDb<`GNB*1P'p!RND#eppNB857[3CBV^a#5CUjBPJm=$(")!+&V\gZcK:t%@=JCb&)
+ 5B\Ep,4mge`/8tl8W]48c"H7pg:;.0N'Fa]?DKpa+o]t'?9!r`=A'7uT@J\WsmZf+QrMhJ;
+ XK/cL*E&WI#OG+6$KD8;r(chfH,D%m:fg%Oui#VuJD`TJ;?f7CY@!2d7RK@^]fu9Ko?t0?'
+ ?&%!0;ik#50NWugEJ9s[g1YM\fOtLL?j<9GL+mEK=tg1pBSQS4#B4tBl-$=61l(Y#LG3$Za
+ BFDP=$b24"k[Pmou%!Ca+S\9L,_PS#[rDe>_]Tk#AAmJA,Z^@=pB4oKofo%;nFmOAinQma`
+ ]/GfQ5ic;7l0I:[iD[m:KW0@##b8"T?d"P2-8n?3^I)"k[b?=Dn>P>__`?KtqSY-q+<fDG[
+ @p?)hi[IG=td3m(TOQc7go`=TrI@*p:\4Tb.Gc/hRRH]TP$TWNY\'5h-P9&?uB?I21C5UiY
+ a9LTDK"#*CM!&B5+,(i-R2gA/O&3g=81kZE<K#fd%Mh>B=q#e>0jkuV8cm&TG3oCi=K&A6a
+ 0L?_kAD.Kdi,EY1(i`8]V?V![L#rdJ%Ln.V%gH]bLN>#^V!5Z)'K?H$#Ja_O8O3N<Y2Q$g"
+ UJ:dGYGKc8-M7h"@,fg-@1Cp?O!0HgYd5Y\;&d(FTm;-#=7RU]jg!NR,ZfaioSG%mOqUH!(
+ kE8h%^$%/SKnKdg$?3@pRVjAiPP79*NOU"h8F^:i6Dl=pE>+"<^l8L-F2n5\(LKA0Q+loK:
+ M%J)j=I8st<(X3]CVXB1m&6nK.^FlrmtYMP+uW+cR+15Y)Gs'F&AJT2<0!&N^j1BbEjKW$A
+ QW)&$_5D:Fe"ZS=A&5iR>HT3`""-#0Lm^J%U@Y?@BjsWS!n4*YL:'J^U"W1VOkZ.m9E!;&.
+ Aq4HJ,hM1UCLGnc#?YVNj9Z'ADML2sdg0Nk%8;N7=b[c0KiA81'uGXQ9SA:7KLesp+@-.o?
+ smqm#[hf<E-5W'FG4[F#=)9UfO>(:RVgX28Z"0)NR(l7i6WN#:bY[T2N6HTe;!`lj)-g?#!
+ -HFP6J1-kt#XoJ6@WR7YQA/!gl.TCWGK.%%h^2Q`Y9jZolKRhq)/mC$g,_"44J?TtMZAjH0
+ IX7S9U_$soO']uI$_#-!X%n&5h[jX;7(0M=Sh9EQD&KeP=d(fQ'%PCgK2!_=dCrj@m03J3\
+ ll\;m$J2d\6Ro;j0"=QA8+B8Qs>_^<t7V9GP&7k,UEJ;2?k+HCC5&5pK`b]U<#,DRTW-_GL
+ ,D^>,m*KR&=C-`bc\@6MkSkk'5XfND5q;E8`n4r0;Q'gk=9_lL)dU\J#2mi=0]NFYclV/fj
+ jEKSN+gaULB`c>Y3#(g#&+'1A#N"6/sCsM>)([#Bi%<RQu%Fp=U)r:"c-st-rbq_,_LnOA,
+ >A!%GbqZ4BFDt8qro*C3iLXHZ+dhjFVj;Attad(T:B32Wa5hK)P0/&V@<JbJ$l+#-Dhu8qR
+ +."Xl6]-rg@o6j6CC"9;;N?o/"B,_C8)RY0r0?q(;q%cunCKNM2P7*L<,2Zp9ZK[<s.^eog
+ TDI@F%lkj\qTOe?L$K/F8B"2qpaE<5ND?jta#CLQI]eG2nET/Vq7rKXC:=(i=8L@dm"s?12
+ n3.f$<!EVHEmSk2BOllVgI[^dF#GcE5)XZ9EG3*Dcpm)@[l.p^1uhn#mUeD!Q8s#`kjuhXD
+ Q`;[f0G)37eA)uDV.A]G\_t'<sGlmKck";&5^9@%>#ETKchX_>3V&<."g/R5(I-p,mUTd&P
+ A>J]^sKB`T6;2q4M'jjJJd7^AY7\W1au%lBiFji(8q79[ZC/KWlo>C6=3P3.t+/"->s*==8
+ `)"p6hU!^\/21[G9);hasWA`-Sm?sp^I4ZC/B"#)NaGYA:FCX!B,"rM9R(i\E*E/%b@"jgn
+ ;25pgG@g9Gc@/t!H!-a28FpG-'L9PTO<D8/9,)'9YD"q[VJ7`X8A*9e!p[DOB^e0=53!=2)
+ K2>!jW&Y!B?3DBK#$=`W'k`:4MWi[Rcqid/%ub!f2044)F,&f?r],%l3qKjcDNJ`,cTU^:5
+ BI,rF<GB&=BGd;7<st_H&tCI?tt?C<JI/-K]$B/i(o]4,m0N5K?-iC@"99Hbee)M<bY,Z:?
+ hI\eND#8-Q+8\_\gsj@[^2R68?;O1b^6\L%N1+82DnF`_qqUFY>=>$k'BSi`KPF(RELDl-Q
+ fEQ(K?+Kpi_f<`hr@dUJr^9N"q`$;/D`6!5B[.b2\@!C9Vn<(GP;_K))):fBiDN/<,EPqG6
+ UV249PdBsUg3MR>0FF(I0Gu#%]aRVoZ(.KMhLdWJTpj@$l17JgPVH5@9b[tp!]]OE$T?8rm
+ XccO0nl704$mlZd79Ii3Y8_5b)gu&5E3,H[-*&W;\S!p(XVX&2XQj@TSW+E^\[(=A^Rs3iV
+ I-5#@l1[]L>p1*f2Sp,C'CY(0!8c]'^Tp.Knb(OYKlB$dCC7*1Ek=<e,m.]4dBQ/A8;j4l+
+ g#[O?=0Z5t:r4?5qtQG6l&rbUQm;jM>qV''7=t%hcjt\k9n/Tl+`\A[/a:(8fkhD3>'rZq$
+ EoaW+G&,\^_(&S6Nr72=sq&m$!i6!A#b`F5]3Q"H]o<17>0:h^ALTn4_SKlH`_)5GkSB+IE
+ CS3.K4C)2Ptj-_r>%OB_j2j5RT-tA6i\Vr>-7MpM1'Ibe0OsOg=^.Y:/.RK8n<':GL:e>tF
+ (ac6@.\W#_:fO5>lADI=Wf"*dXt+8P_C@*P.`b)5_T<uC%)g531(qG2gbb,3=R8PD,N0tPN
+ W_pQ,RiaaN%u!^34)#.U+#<GN_FEKFe*/tX(g:RXfT[9kBZ28#m7E+.$)7?^-iP9l$cEpB$
+ jLb)o[)]E#'cd_HJn;Z']PJAqA07)M^nGCn50X\osNt$/Toua47?=*QO</?Q"UgCgrl&EIM
+ [;`Q=oO(1qP;<gc?q9OeXQ!JEY#-1L+i(IMUJ>7@;Xp-4h:T^Yp>`)1JI_\qFJT4cNu]qIf
+ tresJd-L=)3`3DF''Gf)<>"HY$JS,k?Z+P,uObJI6+H]PF&L%eJA<A4#Ki+`qatf@b;jns$
+ 8n\a3+eLD*_p#VQ'F&7;L*=QAeM^.>JMfG$';XtP&uI)(NJbXdBGugTaDN^G+i))l#9t*E*
+ K7Z+aA%FW.65asSI\=eLEe0,c%c/"-qr#&%3\<$7&$)EX%LgT;:K_;)AJ'^D`Y<Y_;N=*MZ
+ _'l4;()MqF['+q(,\V")?mPOlA(77Yme4!$R/.R"-:h,&!E.iI>e%pTjN*&17e%fX<AnUY`
+ j_QU](n]*36D2XA.h%O#L@LD[N\,5c-bEJcW/8BVrb/EVqcauk]rn1qo:I#kOu22<Tc(h6r
+ R$dkn$`OO;/@_cT40iTnr=JQe.$r2`moHhK7EtT\T22JMN(rRQ$$UODbKb3Z$_GG4dJf%Js
+ -BQZE91t.5M%U9I9K+0.=)$lpW=?;72N`o")^s)Q,D:.s)XCa#m>8+oFHVg8CMXPKUhL)KV
+ B<c5EGf4T]/PK:1L&mg+bA#tM8olW>VO5._I^[pB,F*+W5Kn?&130@<3$/[4Ug=l+,5>/&-
+ GUu%75:^L7pdBK3Y==_$X+5;*QKtoUQZ2qG#(^G3HcX@M;#Z0To=39SBZ5;P@CR.O)f6$T#
+ a,+c&dWdb(W&3,91'5Zrm4/hM`)RMQ!d5Dh.X)8qEM&]#14"@/7o<a\,siP[j6OZ<WDK^h*
+ T,XfS$PTBnA=:eoR3sj:m/dB+g(aF-&N'Y0."t8D[CW,'KiH@#t0YnZ[TOWt4e2%<ell3j8
+ H-[Z15=b5>+(Oqj6.)Pg7nBQp6VL:\d4QqF8>n\,\3M,ImNk<SE"V*b1^JYE(W6lg$KqI;L
+ J^eY_f2=W+llXZ!D5/Bg+'*IDD!.*?Ph`"@>p>2X[[:INm[(B&T*+X%:KbdP#=slNMX%Z"J
+ dlDGgVQS6+IF)paFn.?OnTM4,O'+ho92[E)IQ3VY&l<e#=*-(*kepEJjIE-peApL/\KKL`6
+ Kt71GuA,6m*n&d*BQ#kiosLB0dU/N'18G(<Fmd6h]$/X$H\VH6@:3a5#2C(kJi9S6=L$pro
+ 7$R/+VKkH!?`,*)SWjK4#o&:VS(k<8$gd6k&EZTmiYmGu[8d(g73*uOD&I'iY5)#LU`AkQ&
+ =0D67JRg<d.>SJRTKn6>c6L9+Z5R22?OaLD2hb)G)q5R?MUgR$LCgs5UQFGp@>6X06N8'9`
+ -SY_0*c1ddPGD(O:Hiq4N;p**95OqO.lB).1lH1KC!UgU#IO4'J:7I1)U?`4>9.\QkuIC8;
+ id=/OLY8(*RW]MSQ/376jQW@ZVd:\NqV)#Z;1"YW`C-da_O%=)--?Xs8h8f,E[UXD%PTUbm
+ uK;FP;:%B;EHk2@@+eTR"QI5%NZq-TWtFA62h_C"@%iW_Q*(r<aE#3%,&"u(!0,8onWgKeS
+ =8>?KZ0-ps%S/hbe:C_uBU?Rd).>!;HdmBNsMGTe>_I.BuRRYY-nCf9W+DVZ/4<Fc?:@!JL
+ ]`t0T9*5a6,f+.r&j#eZae:RJQ$AT'WB<G&O`2J^kdqEnG[6"T'GGBB8m!5V0o3W"(.9!*#
+ V.aPK@"o``gG3opU><P_9b4JF6!gHHp8OS'Y-[7kSk_-?]DW"2ap!J^]r>50/8\NNWA,Vco
+ -gm__sEn0_/VH\7Z85bVY(,kS]"XEf:U!2oX^t)ku8#NNmMJ#9`7P,OZ*QS4l)d_##/tb^9
+ e<N&JU7mLS;j?\aMY:9!0.(1Dk^MX[nn+t.UKp68G8q.8%9n37@+Hn1!B@NWQ3c"gI21hIG
+ HO0]`iNHq'=UisqM@te^CQ+B"HC>kZ$1N[NbhRp=^b90_IGthg=6o]SnSFeMU%IPT4$uk8S
+ r%OQViQoFI0f1V:\:#+B'N0Vblm[ON7g`\_<!?Ng'gp?I5Q6SfKl9?B"])(/_P>>4E21joT
+ M<s?YW%FY@k+;4Aolpi9ET7L-%V^o&n(o"M9/"0eTdF+U5VDF_0.!qTT'X0oIbom4q^4JOp
+ UAP-1.qV,/Omf%u*&'DID>1"26-)]=7K?YdtW=46d?-GV9>AnrcDf[i4S*D1+.I'S1WNJP6
+ m]]"fP,(u`7hUOF)sa;cAQ*eQ-f@I>4T)B%ZA(I=5FDG&u@[MH]<)aS-SJ[-$lJf<TM(W!*
+ cl;eaQU)Y?C*s)#q_>+8noH%H-+"T_uk"6IAGfRW9(8bQ^An^eP;Ulp_[NRu'M.R1cQO0m]
+ $0aS;TjSDL\Ek]d)U-EADTWltcKtdMm6RVON7s;ngoaE3Y,M-`W;]JDbcf1iYX\o%W=hr8!
+ [=fLOX/Wu!9b)XoacT<';:M[To]cc4;f:.'7l/O@/d)ip(]iuLkpd#@($T^=?h@?5CloE_#
+ Y22BFC\NaFRJ,@9F3mL)!KX'e_H[%pm^-kS0"SS&!gcJCYCLK_V;"'-Mf7!B(6Li:at=';1
+ j*+[-I23Z!>]'ENLlTgT^4iXnIY#f+Xs+I;mITFHH#$&e3Wi5?3mKF$N&r4mI\@,.<H2Z9o
+ )Sj=J3!EodPP+N'Q%8j2>JRf[UrYkl!(Ep'u!I,PVp`!X:(]h.^K5MY_'a=^61BG#F+cI>u
+ e/3b:*8t->!N[%,,pIoC'rESu@<rin?lEHE(BL6E!GEA7<Z-HV(;ZX`6-pYa?ls2U+$ns/J
+ aaZ<fH,'$);rjR+_7MP>RLQ,'i-CF@,M`;L_K#d'=*ZJ.5r\A3g3I1PB*0#/>`q$5T*D0m-
+ *=7lIcS@fG[B=Xt&G6E6um@^e@AoO9YRM+s,&rPg>0rOXV'.YjQK!(`<nb&0X(P+p8c<#T4
+ cX.\QJL+dC-CPRbMd(m-?Wi;sb>L_\jdLa[cgi5cJ'?jq**11=ZJ@::rj*YmVK&4'SV6!D?
+ \>7t@F$P=9ab`E0M/d`1o$%V$Ai7bKPe.[fo'O[F@@71F;j:hV'';9^b5u&7qKGYj8'-V6!
+ 5fQnkaq=]A]ATCmJL;B?M@76/#U"d1;8NdXF9b(b('.e[Oj?.&i&!a,=Wlo8@&=Im^^L5W(
+ kI8OJS#h"Xr?iq'>\c0;3rBI#/DCq+i2S_$:#]U,TR.-*8tKHiOT_sE#M2$)H7Ol;Ec!S:)
+ X-t,[iYJ6(/Ghd)JOC(r6n#@>5P27g?g#*f)cs11VE&&/jH4*8p/r@<;iamM-:m#nie!18.
+ 3YT.-GX8'>g@j]P,0SeKPJ'sRomKVFKahX/b.O"0HHDX,NQcL1u=/S*:(E9-K2%WO'(%Y3Q
+ $P3WWu%1o3%'B,30o*6s7r"NS*S"Z,Z!D")9q@isk1IL^K+O1Q"ALAX5%7(_)o`>S2'Gcr?
+ :t5m^2$+4BF\cFV%*XD]5f5DY^(:<I$\8-i@'gH*6k:q)%]q8l;g1,THkc$3'S-H%JTqho=
+ r?p7(niEb@$1sB.L708&]KJ:nYQp!U((NW)Z^i_^o.e2`B->.%C<J`J_2#"a]YJV__]dQkL
+ :#MZ3qf]%Z'H`_-@mE,Si3"(87iOXn;Y08f-Hr*!+QaUFmPFg`FfV_*Q-V<#QF$@MuT<?Ie
+ <S@:C+*1)8c8A)WXbJQ<Wje/7CY(nh?P+bUCm3Z&9G(SMlaiJ\_,`Z;E_+$nie6.d4ZlK'2
+ K4Q2OQ.:eVX8OulU':):&%;fZ,E46';P;I_3FQ.0PT+&m+DJ&/Omc\R'W:'6*9&Z*H%e_)G
+ [ZO,u,(Y]X0*=m$%.Obu)%uZ>_3H]1"r(%o:"85AJHQ\'Qk4gD)5-sC6'4tEB#iib&YX"N"
+ 7?XKFq-e\(A?N"(>WjDhedp^%HHjci>NK5Io(].%5dlY'.OQ%>RUW8&to.;5d1c!9Fg#R$G
+ c-Fd52S(!^QiV(8702K6e5CkR=-d'YoG3JKP5@D@#?[qk5&<!7DJ;PRN*Y#cZ*si8Ye"g'r
+ Sb&lkKH-f#dd=pXZ3=s1W8TaDL-QnLb"]-4$ae\Ig9Y()#/5AX$l@kJVWXrSnlJ:YR"iKf2
+ 6O:l^AHbkdV5uJR$,,S=(@.&%PChsq<C)=\X'#Af&Zt'X2G))c*,N5F=U#7!2Zl\2U*T?3%
+ _:BYnNZ)?G%-."lp_7i&(3K<hJbU7;3#cGl8eZld)3gn/%d,C!r(E9TBB7DWDY5T_qX:,?%
+ Z:ln_Ci+Sm-q1g)"R,KEi9j,WYop5:*E2E5ti0)]G[CO'`ja7iDLQ0"r*bqkSE.fTd1F2@M
+ ^9O(I7I&_0->KV2CY;V[e(j=J(GI=)L;ID'9l7T\:!"rXfk:&CVU16!I6l,S+<[$\8'g(Fg
+ 50<Yo2='gZp[)!W">oFaH#$-0CZ64bh:+`tO=#scWFTUZGL)@6DT&B0eBWRZ07NYUM[4BHZ
+ h-*#cE^:\u`$%VXTi3!VVjq0mjLZ+a8Tir?\FrGoc(;['c+_hqZ%NIhc3p]`Z/-Olb$9"SC
+ (Jq=M@>RAqL_2Y$R)+M?TnEuS9jrU'VP/KJl>@D'jG.-tDeaS6F#u4D(`%'m*'r:"=8X)Tk
+ T$;G*^RR]iSOdsWq.B2Jp8Gj\`@kcj:$rfT#0!@0UWA.G"_Tk)76EhiL)8uK.Up6KWsT61?
+ 3'M/s40m%>$:\_2JjW'b>J]&@c@,3,B:;Qk25t&=@VPThlWZKGhT?'k*[G@9=EK&/=F/5+&
+ D^BQ.M`H4RhK(Y@E1)5'.oI-4pdVSRZ#+a=NBWY2"I%`'D,!9nBp*#=(XPh,mN!6Pk(=puP
+ S'mc/]Tjei>W"rfp)S3R"JLD5kJdV#H$?X0(TdgAAdLm[e%)Eni2d?Z>aq9/f=Dd/_B?gtj
+ ZX$]kYN;Wd5n`$SV@2JSlN*@b!E9rq*#8.V(."ub6)kfRZlNYPUaehR:`^:4n.Y?c'L@'Fo
+ un"68f7As&0X"Lq4X`&++<*k%`@Lc6#gfDD,BmJ(0)[rnIu_!:t)S74op*OTu\7jdph"S*^
+ RX_iSYXU_B"pLPlX1C.s8F97WkV3]">5YiALslg_?!PK?iqY7*`"Fo1L6kn!8jWqA(9U'8:
+ RB(ot3$JVqhflCXc5%j=+S2Q9E^3Y])LLNub%6(at3T9V^80;5*Q!FDop3LSha(YP;i@6>A
+ -$kqTOA>+Yfk"Or#11]/p#Ae2n!<okS!#%YE&"tZnHARL4Oq(nC(80LrJRf4@&f)VJ&YWeO
+ _0d/]:)b?sU7k7e^r?oD8dgae$UEtjJ?05(0FD4C&qHP_!?_\m>R;Oi&HIar!:ILRS.B$$'
+ >":h-)_PE<#>?X4TM&[i;%6+GRufi=2CS76)RpQU`@5)_Q$'HY$r6!W#XbG(1F>1iNE2(Ye
+ %ZV^EKI<@<[WOAUZpd[Qrkip<FH(!#Ch?1U/MDiE#PY;Uf*;%H0dAJNtf\3jR^1?U:&!\-L
+ PgOh"\L*PmmWTuj_DF\$k\F/N,]h/V%Z4EEeH$EgK!$N6Web@ipI]_7/#[(0kslY/=X,9,K
+ ZiJ7p$-5^.AENKMo0-:^5O(pGNLA%sL(k&2kHl:l\V-tC0@3QHfU_7*F)I3mdiDphd0G+=R
+ (h"5J5o:<0M@lOU(oB\<TcR`d5Ms;7`drr#+bgRP7DkgN&>;3&pFF2[;@c&DM1Hid_!Vh$D
+ oY/@(SR!2DEJkhDE,Gj)8OEj5fO>.64<qr$\7RW@'0t_.LJGm3P`cki2dJAj]J_1)$,g;gr
+ 8Je5TW5P*k-M,r6AG1[LHY"0B&+1_42)\<Z1u]('1:bJb__8pOE;9!!0RS?.Kp:]<#9<H@`
+ ..JMn?*YDbabDhrhi\ZuXFKe_Oo$e#k!;(34J?52cR'T5Ep8R5oj1_X/CfA/Fi,G0Kp_^0_
+ ;)`sK)mQThPoC1p%n@o;9JDM!<#&lOkE,sdJ*L%E['+V^F]tL(Y]qsG6L()#k%3;M'iJ?u3
+ N"/VuaWZe]'\4.$j;E-MhO&l!6(Qg/%MdTVh44H_@4i=HW"VI5)PK&)iMmLK:`1#m(r7C2+
+ ch!d";r@4'k*7<_,qR^`V\Q.&qO&15I;%H:Z)7Hi?:Z-5nF_2J.R8nVZ\O]r)+:rKGq[Y+:
+ RE(%@l=-2c(rGZ*=_:2'E[RF97EDIS^m-C!u7r/lag*M8j(7+IIHtOA81%n\DG569eh\kPW
+ V>24I>'':IA<Gs.cqkQpg,Y]`)e&-rLR;(V?Z8MAE4-<_!Vc;LiMD`>#eh",nS?12;jXe?2
+ :U/anj;QZ[O<]![Rk+/3=Aj`YYLh2F"#d?"Ue`HE1\@@#h(/KgnZ0>4c4=UZX74BM?UEUWk
+ ,P+6HEb%n(bXno@MaO8eNXTWs;CQ5#C:P<:LP'`lmVKC=NE5YMEl`,:d;)HGOYf'RV[[?0&
+ ^<AZ3N!`b,i^00S*G-V$)U4(ODdgtc/%u+@?,.sZ&NI96<T1[9!M(s7Nn<L_tl(2W?r4B,/
+ Q1"L)AQ9(ln-F3Kn&7mS=]&d6M6B-<UCJR=m"aAs!6oS@9C>H!G$G7>[g4Q:@8r>+1,tDJG
+ B3afJ;T7_p]YRA?faA<R1:Q;!S+=Z0A"K]-BPa>+`h+NP/j1fp)5\QWO,V-/gM'a?B4;OE,
+ 76=>p%!J"FBk/i^!*%!tKE1"Y%^d]"akj#[<.mVrYPlkbD2@sFBe3B0B&FrO'"*#S7$m\*"
+ ,S'*)iZ8>WEFN%;WWaV=;KS`c8Xu\-etS/G:u3E&_m$R,P;#rWW>5[u^il:s_9dBIVRaWh&
+ #Bl*588i[s'-*]0q(D.WhH"N'aAp>8=+qTqGiG3:p)sH6E'NUZ,Ju$3u$[fk/jp'.,%LR"%
+ bTr%&E2_dbO7:c#g<9d)\rn,iO2d)eVNOgG]She7d]mR>,O:X3e(:(9X^@A@ml^]^EE#$'+
+ PgY<0u$R);kZs-Sk*k5(%TPOSMZO6FSS(baj"s-R;4"uqen0^/]N&6SX&R5NBX6.`&LS@+d
+ GEE`s>&JRc0QDU`]CD5gOY#(Hs_*hQInl1/`'?-B0:mRu(6sCQ5)/a+%ReFS$lbsXD:mQiU
+ 5$=;,giuN7`1^.?&k+g=0:O;6Y]B1[.@P%BKW.p[&*1!14H]kul:)M@TbLK:,XG6d&B-'U6
+ 'O_boM(6rOXMZ:":Yf.#Qp0UP+Muqoh0FUB3Wt8KE2'L#GLA<+p`goQmRl(8K(mMjtV*nS;
+ /iQHCQ?[kBS&bYrlQX"TP&hR9kH-4VT5Fp8JRfX;YW,K>CG5NeK0Ua]g&6PW4nZ38@@dpA!
+ -5LP%b4e:tjI1]2`0chIH(fDm7j_u^?$&d&6ObU5dqSer\;D%:W)DGAj^*<S9;%Uk5P7nAm
+ \K3UDCZ&lk*H/fac8VnLS.)hRYndPXpN=7^)ILkXQA8I'0L*7Tl!t^J0!LQE:&Cc4J8Ao(L
+ (cmMiON[o"I2!nS5`.n*Koj*q&YcXG3.[f[d3u@?JoFqgk+4!?i7Ja<phYg"DD[hZc>,d4;
+ N$+#.E0Z_'dE!YMQqC`"^o$);=ZgY0i]6J5e7jg]P'3#S0s#R5Y5GWAIZJU2b-8u*<T,U%Y
+ 6t#_s!C&!Ye=dE;h-eOF%TA\3(&E<ZQiqW=EA[;[3=/.)S#l'7kBd#lpt?6jQEl@H8Sb0]j
+ ef+M2df(1U$\-oa^&km-/E3!:@W*8M0.%,t5E#uQF4#/KIB_k;8aZ-#045f"D5`(^YSbV@"
+ f/.LTJFA@'E1"g[>M#j8?$h05sbckmt!=UiC!.q^HoCW>SPYHd_64H9^RA!S8KnEIu6muUY
+ U6JE25POtCBYZc[U(C+Z&Y(aL1AQNcJ9[&n`]OH%fc<Cu>`FsX1/CH[@]-U-Z'\`'iJI@I9
+ S/kR;'-8+aC0jTJ4>IlFta"K,7Phj@72g23Q&(l(ua`CPnB6'OIC6'6EFgnd@qo6#aZ<Z9q
+ r$gSg^?NVAI-`</_Et.0[f@'VaZ%a&/`U`i-$Vj&fEB&[![>&D(9a@=HiJ#@GKTY8?5"4i^
+ ,".>>R`(dgE(%C*i4m(hp+6\KT>nTm%15b8e/$r%,7$mt'$6^/e14p_6n*^jD8%Y>s)#9aF
+ &_ao.g@=U*=^oS9(';c:A"@3Q,lolabbINrrRttJ].25<A#bf`nKV7lQ";%gV,C"A@J]9dk
+ R]7#uI/sa9K#T9ZB0T5"@72']J0qeE4X1Ln#k<9R"&PZr+cOa9&82m`^bcGo%g(Z_#Cs#g#
+ nn"'#138k6a2gb_O*h#iAq_b_`45!idbGGJZ(QJi8u(*BQDOI;g??%bSt&n;N((T*sDqo54
+ n4?+3K$d@C/!2'bFaW$B%cupl$$JF@D,QN%aI$5WM-?98lK;0rgdE6,EIrPqbrg"@/q(c7E
+ W8&RQ;W&@NL/FBf8`7+3Yog(cs\D2R;.2ap9M)PXAu$LrX(Koj1k!n^tAO`3%pd(1(sDT[t
+ ;%PK)P\/<,!57N`e0SZg9(^!`KND[\T#;GSp>'!Dr_3-^pOJWk(0Mr5d7P@/;T,1r['SoU=
+ /AqOO(#eXP$F&qB`B\MV_MC&S@4iBa#`8uj?pTJ8Sf\,DX;G##B5IC*3YcU(#iXKN#:l_n6
+ >0F3f5u0F+hTm+E82ISLh^9!q2[pe7EFG7,DHV`O>g-"LR@Qa#bcMA"Sadg]C8L4mK((I('
+ `]a,D0BO'uFp%$fRU+L1#HQ-3;Zreq6M)NN5'!7^1mb6\'@hn[^e:@-\T'/9(s8I*'8H6-%
+ XT,_c)T(PH21aMR^)#bcP\"A$5I)(8#a#_Fb9E5TgY9Kf'.-8NrHb]1N\SrF)q1ohbJMo/O
+ 2NH20[COU3I,/duNiEKZ)pt$:lr*=%PniK?lp*Kp`Rh+rF4GTm1)l&L<Mt*/n#+V#"USrG3
+ hZ)Jf8nJa2^gr:A<ntYJ_@g=F?jS7",=M=:&HZWL#XKpj_t]?/J`oQ1E9JGK&8Vfm9JM8V(
+ )DMKKFG\a7h;<c55'c<p5ZLV$3>3(6]TbsiRh]N0uZc*8B)RcUQc2pRP80IlJ7'dGB6L5]6
+ Tu8(\oG(Dgh0p"TU:c_I)^;E+eop&)cAn#Cl_[dJ<fDk5CpMo*'[P/_K!u6N]SZ]KS58`fT
+ 'u]RY/b\90.FFG9d0#;VVM_#oERl8bo6\[YstgRWrC7"sZjL#Sj2nth'BVRd=3"rK@g?otB
+ `)$WVsKc"A4W+NVS7tl2$"JAkORA$r;1TO>g"ZTkDcrL>fD?YQ##4PfN88pB;Ck]2bL+m<H
+ &:'&0I%>&]LPU6`pi_F[FM`iH)u*@5RS8H<:^)Yc"Sc&Q-qskA@"ba_L%%YPE(5NE>6HoYK
+ nquVi&q3F;Zi[VK]"bEpbFGr/V;VAL.Gj0]@t135no]6LWFlr1Yi+',_Nm>L&bnA&86hE!X
+ C,@ZJ[PBOcha$*JO).L%BKllQ\ZAS3V0$3NJQ9j!$aecihu<^?b7,HriapmlqLi59oj9FBh
+ 8Hou3jYKE,/c>9,1$*[4L%L?"E*(j3UoA-TPcL)=Y149>aA<e_`8$Wq('#V:Wo?:N"AK"sa
+ -g^+/F:9V07^tFs`+AE%k&;E4m5p0&0:dYeu7B5iJ1C>]:d@r-YX9Ipl.tfR1kZNX*DhZ8E
+ #7Md\d+8LAfSAbSLT#QTdRsg)=G?l?"lO'J?sNtU<!BL;"V\'Bn5b8\9SH#EKWn@.i(+"O>
+ Qdkt"dhRYOB)J96j4\oK<S$:\4M<$15'%'KLf%[*2#n0TL83aPZTk4:cnoc>6[W%^V#.'#d
+ ae`9:6tD`8",,#VN[+#Y*Td7goY`bYbpgRY$Vd"fN:?kY$JcZqFB*b?ODRCg"r?=A+l]9:W
+ UeXLn\IM+$ZT5-lCf'-\:o@(AO9Kt(_Y$C3juF@L4jL%o>:-s_RHEJ;?KKd*sY'.fim?cM"
+ WKNMQk=C7b8@)k5e"O(ukk[O_R#9nP?"[H\?QtN`*BS<TmX"[`^WMP?Z;[)r4[U<s+N#m\_
+ AHr3A#&%tT!,oe0IQa?<L=gR$Y[RgH>=NR6L%&aZ>_3,5=p@5h"aFJZn5]`!9SG`<KW%b%c
+ pe/j=bInhKkNXPpeV'c3X!5V"(4ZP:c/B.Ba8aR:[J)fdFa-R:5*@^L(I@==C;;I]*)TH"#
+ ri+!ZEOR7g8B9\XZL3E%K$+D?\O.7dP'5a^dZ,Y;t5XK5a_>J1cM^[8Bp<d9RP]>o64O),"
+ NZ;2lLASJtF^,(k\N76FMa@jAd*YeYVl^mI(a^g``ei<LK6#+0I,Y]9ooAqq@d#7Q-<!*9@
+ QD]2_o9n5?f=QHK,8qn&.L*/R2jODFZ'1[jj:h844J7u?KWY&/d_5nTt#]<DiD["L"#68-9
+ J8kfk=2Yg7"qYC$fNe\0CB^M("__1rBN,/6A-F)Y"t3:OE+&n5<<`.k"Ya58J56?A6A/`G"
+ 6_q%pc3to97p>(KTr;;9`NY&=UCaFLNn*Q6op"Z>(m5YKud$mpfiD*:^/1>K+LM+oM)>2:/
+ (8M7bnLV-sZnY6Nu*meqFR[m1..o+bP;DJUf?U[;T+MDq>F4<s9;i/TT6e(0=da=)A`)I<J
+ IY.tf$M`?_Q`/J-(dI7E<.d+rC>dr#?D.'"J*:(VAuaC^2=>)#jm]'sXSi,8dH*ln1mL?gW
+ "Z7:TZL^$sG)4V=o;*!*=<X*M7;hM'U0P[pbCP>;e#1W)GjJ@V'ieIMFL;7lVn8/C1FTp]5
+ L:CHB(hn\[?A<E""i+[Q3*CtmmaT<X"n50cO@Ou>=>#,%eM'eFO@t71<JTL]87brXrE+fQC
+ 52dZ"E7BE^e=on8VEI4KEsmJ-nU*+>Kl;;K*Xrjr<\)ZcN<G>d*66W2/%Xk>_8n@"kCIp*G
+ >M^`7t>8K4n/6I;dnk93db)>`EaY]l@<%Ea6T.gss\T^`NY\;,IMF"@-8EjDWZ;^fUKR>W$
+ 2"3%A"&.KgSnJri9P^aTBt>[<.j)-C@ZN0&e\m=tOhLA4mU3,d(GLV`;[#5*d<i,46;QC:'
+ S"PY[M)D-]7PQ`19#.RY;!,RmED?[O\L@q6q!,mWPGYdgR#FKjlfOKZO>m;Ed"e]4WGZWAP
+ <!Aq)Kb.;i#Yp(E?A,U@$4p6ATK`PJ:J_L(LS_4_IBSA4#2:P+allZV&4$I2-\C8G9#t:7W
+ *Y*)7tppR9$M!SFhumq63Y.Rh5/k7A_Z$s>_2)rKbtU-fLk,48qDF2@HJThmN>rob?UV^go
+ _i14ipPd97c"XKa8n*TN)&D5D>a\d+,p5p!qhlfA1lj"jP_Sc5,6TgYKqU!f0,G\0qIi1^!
+ e_!e*$/E'K&T-A1ekJp9P7W&00h?k\o>dbn8!(#n9a5Y)XKKqMt2r/M!bi<K?fL0/E?&9$G
+ Q8Dc$hLA5)0BQ-@iE>;T&:\2#Kn779h?3W!5L'VIHN8fOf>2S`IK\04WfLeME7YGGT"<^#7
+ -*%6[CPN*"AaNX4J:FF-?.CW)"2I#%fI;E>5D#OdK^3jdl5q2"]=2m$"?jY2?.n1jggaAAK
+ t&Pk<\joh*59c8iPlmN5'(@3*9U@EB3l\CINN3_*+F.mK!$]]G&-&304O?&ismd%IPPOGDr
+ X<)@qIY'[Q%c_3b+O\Jm^crTI&fH-3Na@!gY]EW*EQb?,X6[PJCbSTP<8ED.G>>A55OH^h&
+ 9)4pM@"#&nO8n7RLc5DKeYL6-D00PUh8AHo]ZL<+FkTR0"2=GAMBL=fge3,4/c8-P;PKihO
+ `3)ST.9i_G*Kmg',:0Rl==bW5Qjn>l^!-pYf5_KD>K5`aPTIti[6cqYEV@F.rF:&.Fe)muS
+ >XdK/*])sX2M;8lKs2O!0M_^_/HhreCaR!b0#7[n`9/blB4f1sG'<3H:ZqE*m%uLR^+s@3]
+ ]SA%C[Qi8L4j&sL1lrXBQf2FGU3IM=oq5XKq?j!T%&Ic.0[,r"h6.;5[<'j?3;t\"(4]T#W
+ RLI@=up&"u&K":hGCE>GKY+=tjmP\8^?8EFdF*L6ut85\c'&Aa/39l2I@+OCErXD!F3[TP.
+ I3fOb:X=p?BPcQGqEYXjG'<s2>g"[Ge8fNR"jYA4(9<KM#$^i9HCHNOg6"B!Q!\3,AQ4,$*
+ 3KubiX[g.W=#hH-miJ)7R#[:e0>(VJe!SB5_&/G>g8oY@RnJ9&Z587om'lcGQnP6ru!**\S
+ )/S_YnE15D2]QZEd-+OPD'"RO2UmGXf^4.>Jj;I&O<]D!=TU9>KnpuE3%&C4.>/7:2W.h!\
+ 6X_07g8<CL%mT[Y[E*f9a2V:L+6;[5Xbi9A;#J6#%1,YOCs7q?&#"S([t[a88a.fB86IsYm
+ =s2d!#_\:=&7YLYuS)fO"!E>D<,jKn*G5:fIUC@9)5jgH\npK%L3f8Hj'VLM1sOmndD:Ad2
+ X[6eF_WC#,>i3W_E4Jri$I7;@Od/He=E3S+RQTL.tY1@W<o"g63m86:@S_=8m^E>N*S04]5
+ jATg"E"J?Y8#Yo4ABk*0VkY?kU^,g*YD.nBSneTbr*nKm8,P!c=E`XRkLa%JlF9B<\!['T!
+ Dg1S>=`E;&!iSEPYX=,c0a(gBKRdCp3+%<:9Ekbd"R':PaC:ubA-@-W##IqrGp!9YXG+H(?
+ k@&VHGE'2?3XML#/T@rn9,0&@"q3f"k[7<LfoGqAd*-W"u&sZ0OBG0ab7/sKoen0TNDFQEs
+ H>Sq<hRCGZTV>U_H@`K9.=0=?V7l4G@DQmDq_Mjh:oF/;,nqKt`IT?XIK>-%k,YJY4`Ni"^
+ jZ8c'%'q\QJiTG?u5[/3@*p0VA(BH(aldsI[CG3?J\pUk\Sf67_UpEt!%:F5RMF8&IQpOH?
+ I(cqnG+acg("0]ZGW)n"1=Ft3MKodbD\1LpK@>2cYKQ(32#[RV+9832d"pdJIpgJh8;?egE
+ Kg9/OTN6eD9bJ"6RbBb+P.h.!=jDpo#2;nbFJ+AmD8_b,"iib0OB_ua",7:o"RIuKYY,.UD
+ MI@rH2$W>pZMdFUE-!dV>*'&:W`a34G?Taor"\%J6[<-X**L/j.=\OkZNK+2[)C^p+N`O^T
+ r@8Z[^m1J*4*C!<hD_,bES+=?IK6$\K'&9.4mK*_/>oU5L3Mj^T01O\ZS<_SCtOO\#gkAU+
+ VZ5ru'&-Ui"V?p?ZP8*;1,'^VtL*gQscqT,sq=r5QO@k'3PCIg(<8QG$:1;?&OQmcMZ%2Pg
+ N,aE21_S)8,=gM).L4ZORdp97`DMN#Pm.bumhiHCfk4O)8?Z4QnlcJAa@PZ['egj=.]Oi\E
+ lpX77I%X:g'1o$q=fgStB62c)#)>XBdV3gWI7<B?N`D,FL>iLBj@(8`8L1(Y8E-BnTU*Pkp
+ @W6#5cooK;M"d[:-U<8`jHr-\<Rkrd\>1<<*36p$B#3SpOg6>np()h,ac6SR#3G(nTa6:2=
+ ciWA("`&NF=3!ap:A6?BunZJn.q0M6_)iQ!sII<C)=0LcQ8[;".MC"6j,BO<p""6C)+)'O)
+ #7BlH%p7F:HqQ\4N\?]\goJjgB.+Ws`$`3EKV'8;:/;&6$KL1d"=M<9/fB@63rT4c:<INJ&
+ Y;UD%OZ'K)CL%1+9QR1mb=VaI]<`PM5+\5n&V!2]0RV)2e2U0]uiAf+W1o>^5j>fgS#K(mt
+ 3=(_&N$Jnm@+\5b-(Bou3)1$Z5Sg)@PTC7on7XJ=!Jn<["jX>QmtDsr,u<#J"[u>=!EDopP
+ !R1;;82M2oiS#TPOSPt:[1jY5Y6>-R&4StBN?JR&EO)3Y]tUV'fJW[+-#AAKK0bK5jD>Uj3
+ ^sYO6(>j5o'P7$s=#B@;7_5jgaSJ(IQk0?4\CHIRB>H!?+lRA=6D,'EsnlC7D+g#(4M_8bX
+ Hu7bQ!nRASZkGTN'=R!kCBTtFa"k+oFu(58HB<u&^m:/dL\Tl=Y4k1o-aj]PnmQF#cJ?q_4
+ ;OEqt-o?cD<#Qom=,*%7_c:fViR'&ak_Qa;KMPLPn.1cZMF>B%gYej(gFL/"7$SLg;.o\S!
+ ;m:(Arl>eciW/+A5P<=T[I&+j>@(Bm/.2RJgJ*G,6'-5L38%eqS%r1G4SD\Y_fYH-P_',O,
+ 7[.%RQM</R.aO<"8Q+ROG/5-6l&-m(g7D;M/59eV9&R/(M"[O?P,^=Jle<DU""9-LTI(oT+
+ Y>mG%&AKODG]P)5pgX`jpJ-Rg.9WF\.AK:iuHO8Y0cl'%)#;@sIE*aHuKAG&3Wq*aS@7h`o
+ LIj2N-T2[<dG@+bh&0^L-EA6?'$Q3,_F>)Qi(>6NmV.tQnr'7f:%$(u#M7)1Pcb%NA`5ZSX
+ gS.gLJ?qDi!-E2Z[-u71S8HTO@-QBTS=:h&;6=ki,&54ZACDFP#(AcqD$I)`<mD9(j%,q<Z
+ MMIpf*sTPO&4I2W'Hn/M$8@\b"Xm1X!h_'!d8UoM#cnGD'N^$O'J)UjNYZ'Q8IJr"-&'-m'
+ LMk5%=uT*Qk9!`#q:[i@CeJ<:q7I\Y[%[r@P<Id[MVSL@LZ1T0h/Lb)^@mj%UmF>7sb[dK>
+ ;aC=/7rJnDYH;<,N*fOu7s_`#:u'>s5&E@tki"'dERsMrDf=7pG5Cd_8gV')X?#\B7T@g`H
+ b$KFid'8I6Qu.KuLU(.7.]&E;1b#;Jg]""9TCE$QEX+YjLZ!1*n`HqT)O*d!(>0KR"WXf9\
+ pVSo\s%&/<B/D+Aleh_]Ed)pRAjcHd6AG(]KhAsM@o+*#6D2<0=,",q53Wi@b'B'3TM?&_X
+ "V=E=U6I,4O\Q[Ekc"sl#Z_.<$nHs4MA?667uK)k/Oj.4*Q-.W&!qD,#N5%l6eGQN&Z-q0G
+ fCG,b[_'3CbitC\f%d>BF@+V1e#3tO98HgN,bpPjOh9d,@78WC8*C!]@Rj/"DA0oE\bV$Z[
+ 7k$;p&Nt3X7q<Q;sN`<gV#c#!g`GK_-@Z^lB#EYZ(s]!%Wbc$5^UaU'RI&:kQ!l-:-]!YZ!
+ U#5`g+r_7U0\PAKK8n?aIWphge(6r]6rBg#]9SVF9Wcqeik)r*<HE:`>3\<qh3BDhdcTr_)
+ /@!WaT0Kfk3Hle$)4`3[O4Uhschq.B\'#TO!$6dnrKlHZ5K'7Xu+cJ^EYlZ8kdg$l:"FEVt
+ kW[1gr>ELTE="p+0Q.N<'-aMd$/o,D"W4N^o]Tin_/_=8LqO\Ce6e1)DD5fJ_AYc)@>uFS-
+ \^3j)C"6N%0:K'7X2?X6S7\`&RmI`BWW+LV(W6Sg,hfaC;\\R&18(=,6LbW&h3H%KeWQC8f
+ 1kB_B::^JLb,]^ce*Yr%eY`J/Q;`6+?XU:1I]h%U`[%J`+m/$%RgO`BZa",+KcZBR,j*hGp
+ sD?@LV@[1@+j6+,2HfNTk?D69qO[l3S0>MFT;6TCR[JnQ20Cu?1aa?^7ZCa4\n3YR.-T*gk
+ U1'f%&/I!'C*[B&W?)$VT7ptd,Jp^[ZE=+%H\;Cs:kXZ%(GU5d4^(Wi3@#<iG0Z=m6(rDqL
+ N.G26`H]!4K#oVQ6%+1#rj60%ph#F=F>AQ+Zl%5Q<XQZq=G8H+(P<!%%2&5<E=U7HgH<oF_
+ X8^<W3NMB">.CX`YcWrAdlO5,R!W;&;(O[a'r^*#*CkW6Wfo8Jp/5l]*]lm5a_no`)8SR9G
+ %A_V?fK#;M58i^mna6EBsF[MCoLX\5*LV(<8-!):=i8/[i,(h_Xeae!dQPCX'E)39N@/)+;
+ Ee')!#4"5qBL_B<S,+ZMFfd3^=I)!2i+`g!\ol9>nXr"m7!CkpCb/;)lE(*X#W$UG7LKs6L
+ L_WOUNXZ.t%bbl-L=AfM-Lah!7Wts_<<ssSB/,Km](HmhcMW&/%Yc,DR6E":.;0r!@.&@`4
+ ?u-<)U#,\0I5E0"AW;f*)ap:S&](\0#p?SjKIq6T_%8,QTR7Tp^cn1#>;ugQ1Gctj8e,=!-
+ &Q)okN5=3#kKGgmuL?q4]k&\ifD[u0SCCYODYau"?),KJ/\Xt57N3p+59&1D8G^V[s=I&g[
+ 7.bGlQ%6I#;NV?:i8L8(A#W<#u5e-kAZfPRp/p>`HS>3o._m:8Q`pO5ZtQ3^C%^![LbN;&U
+ qefT?pN!(mV2#UT_BM%bGV&]$XI!@/@FF:umc'14#YTiN!265@GY('0.(TjejI9`fl@(#af
+ [iD^W]jR/^d'OaHIAk;<_fH#o3n'Fu::f]58g`=5l'&bGY@,;@O-k7BZ'#9T*7/d[HMQVJ]
+ $UGU7@)*DjE<qYb'#9Y?5t20\*snW6$1OAt^mGV*9F5C"o>*s(&=*V&iY4Y:Tn&"0iBdg-&
+ dUbT'B"HO@6=f+N!Jb"#O?gD^sEa6jqC8mq@)Ta0_PpX:(36^'#8bgnH9JcZ4_\2$pc3FYn
+ @QJ,Sjth*9.5F#B\X.llWFZ*=tsX_*f*4`"0[P%3YigT\L*p:(Dgh'gVC'iE?cN-5GJD'#A
+ )iiA)0W()(+i&]$RFi?T*\E"\j6(I9YfTlq)8:)@=s'a2bu_*%dl56+QN(BHZ87*ZRa3"pj
+ X(i09,B;#Kk],T*t)?HKMJIE++8e#6sB0bNj5iS,<j9T4:#N2fu@"QZhRLWao$/k(_J=mCg
+ 8d[iO'YpLT!DEi@#9Vo!++[%X_+4l_jqM3h%REFT@6b+6g_8V'%=pVI:"fjqe.Zf]%\V/^:
+ /hlT$HB5LYd"3)c`n%"[/2!o&JAI[+X@<naqB7,'-V=W!QndqT"C+9Ad<])JMn6oL'o-h'7
+ dM$_)Mi'oFo$c&)fncJHus_j:MDh%fmL^@/:K:=qEtH'u::k_.!uW1)<.m'9R5ITkG&>4;O
+ V9'Ct$5+XntY.MBR*'%4fR+_(^"@bQBBmQo&:_:oq#$S]q0*l@%T_/'thcj^!sIGih-i7sX
+ gg'HW"%j7/GJJ\_Fq]Fcf$@qU[TWG\3YRb/<1kA@X1&MOOp:10n%Uh[1@,R_Dh@m\`%A>`e
+ JCYBNdM#<%'+AjNY#YeCaQ54:qiM74d1[iLG:%C$&ho%Q+IWbU1_Tmj(kKUFkA23^<(Ti.r
+ ?;*%!ULGm:`'2"%7)<I5gU-/U^a"I$K0tY+MJ?e3"1?4'>W01+[ce`$l"6Y&OB/&JK,Cj!"
+ pGY&7I"=+Y4Ae&/*r0&RdF1+VYRJ?4gTi'nI26JQ"p%<"YfC6e"ChiD^G0>T#hl)W^3<oN+
+ JC=MnS/04S5re7>^:fU%5(2T^CS@'C3XRLLDm$6\QB_!2V5JeT?!%UhWKJNaC5i"Nno8\gW
+ $iAq9$EX:UU'3)+J5`Fg?L^bL`9>N:f@*fPY`Y.3_%,id4!A,@D-jVSF:#RE)JBee#kRjLr
+ (4h,WJ_]DuE_0/ZAe?:%iEd@oQjk2c#XH0;J;+IU(^V>/&\stI@3Q&/g_,.E%Ugmri9h7$a
+ q$ct%3YW`i7nlP6k2Kk'O^>@+\WD5[L[p-']As&@87A%n.9"6'O_7YJOg?G$WiUA=.r4u!>
+ #so()\:Zd1fef<L4Z``Z/F:&!QLKoP5J?L'V2M7gJ/d^lA_oq?\:S&R^koi04\e2dDWm>bI
+ 9R("<msfj0,i%=p<A!ARngO:??r%:Lnreb*8lO:=K,#iO,D^s!?U:)%,M)*u.oC/>u[Z6(U
+ +:]^P9@GW&@e/3_5%H/oF^rR,GM@<o5#b]*J[R(RVNXUIUBE9.],+&_Qg_+##%O!;0_!2Qj
+ `")l(%)DKK5gi)Og(0l:%Q8D=PrK93mLqkY;rI?[@680h4:e+]'>XMV_*EEj?Wi\uCD.0t!
+ Pf]V!"]0"*G0:\Z.;^Ug'C]]#[j#1J;O^8%LD"4&cdu"p%A\WfFo%c'*+A:^mGS)1'tDd3g
+ T__TV)bq1_.>C();]\_7UckL`Z(4&r%Ua;o0X8Z5_cL&OAGo!2'd0-4+),&g3JKi?<;/*XP
+ *S&\sPY+Hd.a('u,%&O;\*TU6.])@?Jm&\t=oJ?TKV+:DT.&`CA4!?)AJC(-i#0u4qOi?A`
+ ]/.M[<&tn:q5qENHn.SNJ(a7BL6/QH:]6i%3"i9@)+a+0bRL`eJ#?)lQGLR)/A<uc;*MA3b
+ 5`@XpOpf)ABE9Fd^t]S'\dorL%q-_!9?nA_EYuWoO^[+C_<N^U+$6_UkAS^=+nQT]J.EeC'
+ qh91TdU6jfn4h-&pH;J=#^g8TFF11G2XJK^s3P$BG$SA&Q`9N!1"#O$426i&7D.<_#as/U^
+ ubW&-/d=_#t,GYRkZW&BnAji5,mG'F^:'BV@8`ToL1'ja6d+M\VUk!W3o\_ArYb('0=5JP$
+ EFl4Y<,%`'rI[Z=AG";!jf7%mrioo'etW#O^>*9#Tl+k@\8fVIK_k85.Y!pFpjl5ChM*+9m
+ &+`n'Ah@dVk%07V`3@50n*,$0m%+\80J<gTE&.(V3&>50ni<0GeU^t8&$)$nr^lAosECU=_
+ %cEQX5kBArp'LpT$6Z&R^o@a8!"5I2&E+ZBiDpj_U`7]6+5!of=dOL*[N/f-*[/6:iQ`A#X
+ rK(`*'q(RJ]jKJc5]D,Q!r=HJ_caQiHug.k7s("q:6WJe/<h))^-sM@;61C`"?C9$,H;-)>
+ 0U^nWcWKT>6BlGuU.+<Y"f1>?P2hY^'Efk*LB6=uOG[=rU[KGRu#2&KsmclglhSnX5h1U`)
+ UYH96L5ZlSt_S?Q6>=jS4S?_-/]XB;5&5k%R\C,T73%U*kM>&H5qf;HW4*HZ'dVK&PfpBQ5
+ s%3Zi-0k_J[.2(Y1UcP9N>,Et3nk!!$(r;.LTf*QmB6cLJ%hg1h=4aNtfrVd2XI@V>g=<9t
+ SY%PH&g8#&@8]cBJf:>_*#)DQReO"SqDC:[*kLbZ)E+N@3+O1\0D1&6q\?Ae&[?['YsU,ZN
+ ntTRC=Ont)CNHCH98=b41![+Zl;B>>=Z&i9=3GL[2W&P>?A5%>IE3m[Mr_b>A(C6CUVu9[i
+ 9Ct>BdQGHahaZ\/U(1>DK_XMn%N&\JpaC>F2miS%7:G\f7EU>Go'%X1I&h],S)g>IV56]=Z
+ ,1+<U~>
+Q
+Q Q
+showpage
+%%Trailer
+count op_count sub {pop} repeat
+countdictstack dict_count sub {end} repeat
+cairo_eps_state restore
+%%EOF
diff --git a/macros/latex/contrib/beamer/base/art/beamericononline.pdf b/macros/latex/contrib/beamer/base/art/beamericononline.pdf
new file mode 100644
index 0000000000..b173d088c1
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/art/beamericononline.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/base/beamer.cls b/macros/latex/contrib/beamer/base/beamer.cls
new file mode 100644
index 0000000000..fd632ab15c
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamer.cls
@@ -0,0 +1,369 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011--2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\ProvidesClass{beamer}
+ [2019/07/23 v3.56 A class for typesetting presentations]
+
+% Setup modes and check for article option
+% Also loads packages required by both beamer and beamerarticle
+\RequirePackage{beamerbasemodes}
+
+% For testing PDF versus DVI mode
+\RequirePackage{ifpdf}
+
+%
+%
+% Declarations used by beamer
+%
+%
+
+% Public
+\newdimen\headdp % Depth of the headline
+\newdimen\footheight % Height of the footline
+\newdimen\sidebarheight % Height of the sidebars
+
+% Private
+\newdimen\beamer@tempdim
+\newdimen\beamer@finalheight
+\newdimen\beamer@animht
+\newdimen\beamer@animdp
+\newdimen\beamer@animwd
+\newdimen\beamer@leftmargin
+\newdimen\beamer@rightmargin
+\newdimen\beamer@leftsidebar
+\newdimen\beamer@rightsidebar
+\newdimen\beamer@boxsize
+\newdimen\beamer@vboxoffset
+\newdimen\beamer@descdefault
+\newdimen\beamer@descriptionwidth
+
+\newskip\beamer@lastskip
+
+\newbox\beamer@areabox
+\newbox\beamer@animcurrent
+\newbox\beamer@animshowbox
+\newbox\beamer@sectionbox
+\newbox\beamer@logobox
+\newbox\beamer@linebox
+
+\newcount\beamer@sectioncount
+\newcount\beamer@subsubsectionmax
+\newcount\beamer@subsectionmax
+\newcount\beamer@sectionmax
+\newcount\beamer@totalheads
+\newcount\beamer@headcounter
+\newcount\beamer@partstartpage
+\newcount\beamer@sectionstartpage
+\newcount\beamer@subsectionstartpage
+\newcount\beamer@animationtempa
+\newcount\beamer@animationtempb
+\newcount\beamer@xpos
+\newcount\beamer@ypos
+\newcount\beamer@ypos@offset
+\newcount\beamer@showpartnumber
+\newcount\beamer@currentsubsection
+\newcount\beamer@coveringdepth
+\newcount\beamer@sectionadjust
+\newcount\beamer@tocsectionnumber
+
+\newif\ifbeamer@sansmath
+\newif\ifbeamer@altmode
+\newif\ifbeamer@notes
+\newif\ifbeamer@notesnormals
+\newif\ifbeamer@compress
+\newif\ifbeamer@centered
+\newif\ifbeamer@draftmode
+\newif\ifbeamer@suppressreplacements % decides whether fonts should be substituted
+\newif\ifbeamer@frameswithnotesonly
+\newif\ifbeamer@ignorenonframe
+\newif\ifbeamer@autopdfinfo
+
+% Option management
+\RequirePackage{beamerbaseoptions}
+
+%
+%
+% Document options
+%
+%
+
+\beamer@suppressreplacementsfalse
+\beamer@altmodefalse
+\beamer@notesfalse
+\beamer@notesnormalstrue
+\beamer@compressfalse
+\beamer@draftmodefalse
+\beamer@frameswithnotesonlyfalse
+\beamer@ignorenonframefalse
+\beamer@autopdfinfotrue
+
+\DeclareOptionBeamer{usepdftitle}[true]{\csname beamer@autopdfinfo#1\endcsname}
+\DeclareOptionBeamer{envcountsect}{\beamer@countsecttrue}
+\DeclareOptionBeamer{notheorems}{\beamer@blocksfalse}
+\DeclareOptionBeamer{noamsthm}{\beamer@blocksfalse\beamer@amsfalse}
+
+\DeclareOptionBeamer{compress}{\beamer@compresstrue}
+
+\DeclareOptionBeamer{t}{\beamer@centeredfalse}
+\DeclareOptionBeamer{c}{\beamer@centeredtrue}
+
+\DeclareOptionBeamer{leqno}{\input{leqno.clo}}
+\DeclareOptionBeamer{fleqn}{\input{fleqn.clo}}
+
+\def\beamer@currentmode{beamer}
+\DeclareOptionBeamer{handout}{\gdef\beamer@currentmode{handout}}
+\DeclareOptionBeamer{trans}{\gdef\beamer@currentmode{trans}}
+
+\DeclareOptionBeamer{pdftex}{}% Used by hyperref
+\DeclareOptionBeamer{nativepdf}{}% Used by hyperref
+\DeclareOptionBeamer{pdfmark}{}% Used by hyperref
+\DeclareOptionBeamer{dvips}{}% Used by hyperref
+\DeclareOptionBeamer{dviwindo}{}% Used by hyperref
+\DeclareOptionBeamer{dvipsone}{}% Used by hyperref
+\DeclareOptionBeamer{vtex}{}% Used by hyperref
+\DeclareOptionBeamer{ps2pdf}{}% Used by hyperref
+
+\DeclareOptionBeamer{ignorenonframetext}{\beamer@ignorenonframetrue}
+
+\DeclareOptionBeamer{noamssymb}{\beamer@amssymbfalse}
+
+\def\beamer@size{{size11.clo}}
+\DeclareOptionBeamer{bigger}{\def\beamer@size{{size12.clo}}}
+\DeclareOptionBeamer{smaller}{\def\beamer@size{{size10.clo}}}
+
+\DeclareOptionBeamer{8pt}{\def\beamer@size{{size8.clo}}}
+\DeclareOptionBeamer{9pt}{\def\beamer@size{{size9.clo}}}
+\DeclareOptionBeamer{10pt}{\def\beamer@size{{size10.clo}}}
+\DeclareOptionBeamer{11pt}{\def\beamer@size{{size11.clo}}}
+\DeclareOptionBeamer{12pt}{\def\beamer@size{{size12.clo}}}
+\DeclareOptionBeamer{14pt}{\def\beamer@size{{size14.clo}}}
+\DeclareOptionBeamer{17pt}{\def\beamer@size{{size17.clo}}}
+\DeclareOptionBeamer{20pt}{\def\beamer@size{{size20.clo}}}
+
+\DeclareOptionBeamer{draft}{\beamer@draftmodetrue}
+\pagenumbering{arabic}
+\def\insertpagenumber{\thepage}
+
+\def\beamer@activecjk{}
+\def\beamer@hypercjk{}
+
+\DeclareOptionBeamer{CJK}{\ExecuteOptionsBeamer{cjk}}
+\DeclareOptionBeamer{cjk}{%
+ \def\beamer@hypercjk{\hypersetup{CJKbookmarks=true}}
+ \def\beamer@activecjk{%
+ % Activate all >=128 characters.
+ \count@=127 %
+ \@whilenum\count@<254 \do{%
+ \advance\count@ by 1 %
+ \lccode`\~=\count@
+ \catcode\count@=\active
+ \lowercase{\def~{\kern1ex}}}}}
+
+% obsolete options
+\DeclareOptionBeamer{notes}[show]{\csname beamer@notesaction@#1\endcsname}
+\def\beamer@notesaction@hide{%
+ \ClassWarning{beamer}{This option is obsolete. Use beamer option
+ ``hide notes'' instead.}%
+ \beamer@notesfalse}
+\def\beamer@notesaction@show{%
+ \ClassWarning{beamer}{This option is obsolete. Use beamer option
+ ``show notes'' instead.}%
+ \beamer@notestrue}
+\def\beamer@notesaction@only{%
+ \ClassWarning{beamer}{This option is obsolete. Use beamer option
+ ``show only notes'' instead.}%
+ \beamer@notestrue
+ \beamer@notesnormalsfalse
+ \nofiles
+}
+\def\beamer@notesaction@onlyslideswithnotes{%
+ \beamer@notestrue
+ \beamer@frameswithnotesonlytrue
+ \nofiles
+}
+\DeclareOptionBeamer{inrow}{%
+ \ClassError{beamer}{``inrow'' no longer supported. Use ``compress'' instead.}{}}
+\DeclareOptionBeamer{compressnotes}{%
+ \ClassWarning{beamer}{``compressnotes'' is obsolete. Use
+ \noexpand\setbeamertemplate{note page}[compressed] instead}
+ \AtBeginDocument{\beamertemplatenotecompress}}
+\DeclareOptionBeamer{notesonly}{%
+ \ClassWarning{beamer}{``notesonly'' is obsolete. Use beamer option
+ ``show only notes'' instead.}
+ \beamer@notesaction@only}
+\DeclareOptionBeamer{blue}{%
+ \ClassWarning{beamer}{``blue'' is obsolete. Use color theme structure instead}
+ \def\beamer@loadlater{\usecolortheme[rgb={0.2,0.2,0.7}]{structure}}}
+\DeclareOptionBeamer{red}{%
+ \ClassWarning{beamer}{``red'' is obsolete. Use color theme structure instead}
+ \def\beamer@loadlater{\usecolortheme[rgb={0.7,0.2,0.2}]{structure}}}
+\DeclareOptionBeamer{blackandwhite}{%
+ \ClassWarning{beamer}{``blackandwhite'' is obsolete. Use color theme structure instead}
+ \def\beamer@loadlater{\usecolortheme[rgb={0.2,0.2,0.2}]{structure}}}
+\DeclareOptionBeamer{brown}{%
+ \ClassWarning{beamer}{``brown'' is obsolete. Use color theme structure instead}
+ \def\beamer@loadlater{\usecolortheme[rgb={0.66,0.4,0.166}]{structure}}}
+\DeclareOptionBeamer{slidescentered}{%
+ \ClassWarning{beamer}{``slidescentered'' is obsolete. Use ``c'' instead}
+ \beamer@centeredtrue}
+\DeclareOptionBeamer{slidestop}{%
+ \ClassWarning{beamer}{``slidestop'' is obsolete. Use ``t'' instead}
+ \beamer@centeredfalse}
+\DeclareOptionBeamer{sans}{%
+ \ClassWarning{beamer}{``sans'' is obsolete. Just remove this option}
+ \def\familydefault{\sfdefault}
+ \def\mathfamilydefault{\sfdefault}
+ \beamer@sansmathtrue
+}
+\DeclareOptionBeamer{serif}{%
+ \ClassWarning{beamer}{``serif'' is obsolete. Use font theme ``serif'' instead}
+ \def\familydefault{\rmdefault}
+ \def\mathfamilydefault{\rmdefault}
+ \beamer@sansmathfalse
+}
+\DeclareOptionBeamer{mathsans}{%
+ \ClassWarning{beamer}{``mathsans'' is obsolete. Use font theme ``serif'' with option ``stillsansserifmath''}
+ \def\mathfamilydefault{\sfdefault}\beamer@sansmathtrue}
+\DeclareOptionBeamer{mathserif}{%
+ \ClassWarning{beamer}{``mathserif'' is obsolete. Use font theme ``serif'' with option ``onlymath''}
+ \def\mathfamilydefault{\rmdefault}\beamer@sansmathfalse}
+\DeclareOptionBeamer{professionalfont}{%
+ \ClassWarning{beamer}{``professionalfont'' is obsolete. Use font theme ``professionalfonts'' instead}
+ \beamer@suppressreplacementstrue}
+
+% has to be done here for compatibility
+\def\familydefault{\sfdefault}
+\def\mathfamilydefault{\sfdefault}
+\beamer@sansmathtrue
+
+\PassOptionsToPackage{bookmarks=true,%
+ bookmarksopen=true,%
+ pdfborder={0 0 0},%
+ pdfhighlight={/N},%
+ linkbordercolor={.5 .5 .5}}{hyperref}
+
+\DeclareOptionBeamer{pgf}{\PassOptionsToPackage{#1}{pgf}}
+\DeclareOptionBeamer{hyperref}{\PassOptionsToPackage{#1}{hyperref}}
+\DeclareOptionBeamer{color}{\PassOptionsToPackage{#1}{color}}
+\DeclareOptionBeamer{xcolor}{\PassOptionsToPackage{#1}{xcolor}}
+
+\def\beamer@loaducs{}
+
+\DeclareOptionBeamer{ucs}{%
+ \ifpdf
+ \PassOptionsToPackage{pdftex,unicode}{hyperref}
+ \def\beamer@loaducs{%
+ \RequirePackage[hyperref]{ucs}%
+ \AtBeginDocument{\PreloadUnicodePage{0}}%
+ \AtBeginDocument{\PreloadUnicodePage{1}}%
+ }
+ \else
+ \def\beamer@loaducs{%
+ \RequirePackage{ucs}%
+ \AtBeginDocument{\PreloadUnicodePage{0}}%
+ \AtBeginDocument{\PreloadUnicodePage{1}}%
+ }
+ \fi
+}
+\DeclareOptionBeamer{utf8x}{\ExecuteOptionsBeamer{ucs}%
+ \g@addto@macro\beamer@loaducs{\RequirePackage[utf8x]{inputenc}}%
+}
+\DeclareOptionBeamer{utf8}{%
+ \ClassWarning{beamer}{This option works no longer loads ucs.}%
+ \RequirePackage[utf8]{inputenc}%
+ \PassOptionsToPackage{unicode}{hyperref}%
+}
+
+%
+% Geometry: allows 16:10, 16:9, 14:9, 5:4 and 4:3 (default 4:3).
+% Default value is set right after declaring width and height
+% because it doesn't work otherwise.
+%
+\newlength\beamer@paperwidth
+\setlength\beamer@paperwidth{12.80cm}
+\newlength\beamer@paperheight
+\setlength\beamer@paperheight{9.60cm}
+
+\DeclareOptionBeamer{aspectratio}[43]{%
+ \ifnum#1=1610 %
+ \setlength\beamer@paperwidth{16.00cm}%
+ \setlength\beamer@paperheight{10.00cm}%
+ \else\ifnum#1=169 %
+ \setlength\beamer@paperwidth{16.00cm}%
+ \setlength\beamer@paperheight{9.00cm}%
+ \else\ifnum#1=149 %
+ \setlength\beamer@paperwidth{14.00cm}%
+ \setlength\beamer@paperheight{9.00cm}%
+ \else\ifnum#1=54 %
+ \setlength\beamer@paperwidth{12.50cm}%
+ \setlength\beamer@paperheight{10.00cm}%
+ \else\ifnum#1=43 %
+ \setlength\beamer@paperwidth{12.80cm}%
+ \setlength\beamer@paperheight{9.60cm}%
+ \else\ifnum#1=32 %
+ \setlength\beamer@paperwidth{13.50cm}%
+ \setlength\beamer@paperheight{9.00cm}%
+ \else\ifnum#1=141 %
+ \setlength\beamer@paperwidth{14.85cm}%
+ \setlength\beamer@paperheight{10.50cm}%
+ \fi\fi\fi\fi\fi\fi\fi
+}
+
+\RequirePackage[%
+ papersize={\beamer@paperwidth,\beamer@paperheight},
+ hmargin=1cm,%
+ vmargin=0cm,%
+ head=0.5cm,% might be changed later
+ headsep=0pt,%
+ foot=0.5cm% might be changed later
+ ]{geometry}
+
+%
+% Process Options
+%
+
+\ExecuteOptionsBeamer{c}
+\ProcessOptionsBeamer
+
+% Load corresponding size file
+\expandafter\input\beamer@size
+
+% Filter class option list
+\beamer@filterclassoptions
+
+% Low-level graphic drawing and advanced color support.
+\RequirePackage{pgfcore}
+\RequirePackage{xxcolor}
+
+% Normally loaded by hyperref but to be on the safe side ...
+\RequirePackage{atbegshi}
+
+\RequirePackage[implicit=false]{hyperref}
+
+\hypersetup{pdfcreator={LaTeX with Beamer class}}
+
+% Encoding stuff
+\beamer@loaducs
+\beamer@hypercjk
+
+% Beamer packages required both by presentation and article modes
+\RequirePackage{beamerbaserequires}
+
+% Defaults
+\normalfont
+\raggedright
+
+\usetheme{default}
+
+% Compatibility stuff
+\csname beamer@loadlater\endcsname
diff --git a/macros/latex/contrib/beamer/base/beamerarticle.sty b/macros/latex/contrib/beamer/base/beamerarticle.sty
new file mode 100644
index 0000000000..8889a66dac
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerarticle.sty
@@ -0,0 +1,43 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\ProvidesPackage{beamerarticle}
+ [2019/07/23 v3.56 beamer input in article mode]
+
+% Setup modes and check for article option
+% Also loads packages required by both beamer and beamerarticle
+\RequirePackage{beamerbasemodes}
+
+\DeclareOption{utf8}{\PassOptionsToPackage{utf8}{beamerbasearticle}}
+\DeclareOption{hyperref}{\PassOptionsToPackage{hyperref}{beamerbasearticle}}
+\DeclareOption{noxcolor}{\PassOptionsToPackage{noxcolor}{beamerbasearticle}}
+\DeclareOption{notheorems}{\PassOptionsToPackage{notheorems}{beamerbasearticle}}
+\DeclareOption{noamsthm}{\PassOptionsToPackage{noamsthm}{beamerbasearticle}}
+\DeclareOption{noamssymb}{\PassOptionsToPackage{noamssymb}{beamerbasearticle}}
+\DeclareOption{envcountsect}{\PassOptionsToPackage{envcountsect}{beamerbasearticle}}
+\DeclareOption{activeospeccharacters}{\PassOptionsToPackage{activeospeccharacters}{beamerbasearticle}}
+\DeclareOption{nokeywords}{\PassOptionsToPackage{nokeywords}{beamerbasearticle}}
+
+\ProcessOptions\relax
+
+\def\beamer@slide#1#2{\expandafter\gdef\csname beamer@slide#1\endcsname{#2}}
+\beamer@inpresentationfalse
+
+\ifx\beamer@currentmode\@undefined
+ \def\beamer@currentmode{article}
+\fi
+
+\mode
+<all>
+
+\RequirePackage{beamerbasearticle}
diff --git a/macros/latex/contrib/beamer/base/beamerbasearticle.sty b/macros/latex/contrib/beamer/base/beamerbasearticle.sty
new file mode 100644
index 0000000000..6d784381e2
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasearticle.sty
@@ -0,0 +1,97 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011,2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\newif\ifbeamer@articleutf
+\beamer@articleutffalse
+
+\newif\ifbeamer@articlehyperref
+\beamer@articlehyperreffalse
+
+\newif\ifbeamer@articlexcolor
+\beamer@articlexcolortrue
+
+\newif\ifbeamer@articleactive
+\beamer@articleactivefalse
+
+\newif\ifbeamer@amssymb
+\beamer@amssymbtrue
+
+\newif\ifbeamer@keywords
+\beamer@keywordstrue
+
+\DeclareOption{utf8}{\beamer@articleutftrue}
+\DeclareOption{hyperref}{\beamer@articlehyperreftrue}
+\DeclareOption{noxcolor}{\beamer@articlexcolorfalse}
+\DeclareOption{nodefaultblocks}{\beamer@blocksfalse}% obsolete. use notheorems
+\DeclareOption{notheorems}{\beamer@blocksfalse}
+\DeclareOption{noamsthm}{\beamer@blocksfalse\beamer@amsfalse}
+\DeclareOption{noamssymb}{\beamer@amssymbfalse}
+\DeclareOption{nokeywords}{\beamer@keywordsfalse}
+\DeclareOption{envcountsect}{\beamer@countsecttrue}
+\DeclareOption{activeospeccharacters}{\beamer@articleactivetrue}
+
+\ProcessOptions
+
+\@ifclassloaded{llncs}
+ {%
+ \beamer@amsfalse
+ \beamer@amssymbfalse
+ \beamer@blocksfalse
+ \beamer@keywordsfalse
+ }
+ {}
+
+% Option management
+\RequirePackage{beamerbaseoptions}
+
+\ifbeamer@articleutf
+ \RequirePackage[utf8]{inputenc}
+\fi
+
+\ifbeamer@articlehyperref
+ \RequirePackage[pdfborder={0 0 0},bookmarksnumbered]{hyperref}
+ \hypersetup{pdfcreator={LaTeX with Beamer class (article mode)}}
+ \ifbeamer@articleutf
+ \hypersetup{unicode=true}
+ \fi
+\fi
+
+\ifbeamer@articlexcolor
+ \RequirePackage{xcolor}
+ \colorlet{fg}{black}
+ \colorlet{bg}{white}
+\fi
+
+% Beamer packages required both by presentation and article modes
+\RequirePackage{beamerbaserequires}
+
+% Default article templates:
+\defbeamertemplate<article>*{frame begin}{default}{}
+\defbeamertemplate<article>*{frame end}{default}{}
+\defbeamertemplate<article>*{frametitle}{default}{\paragraph*{\insertframetitle}\ \par\noindent\emph{\insertframesubtitle}\par}
+\defbeamertemplate<article>*{alerted text begin}{default}{\ifmmode\else\begin{itshape}\fi}
+\defbeamertemplate<article>*{alerted text end}{default}{\ifmmode\else\end{itshape}\fi}
+\defbeamertemplate<article>*{structure begin}{default}{\ifmmode\else\begin{bfseries}\fi}
+\defbeamertemplate<article>*{structure end}{default}{\ifmmode\else\end{bfseries}\fi}
+\defbeamertemplate<article>*{block begin}{default}
+ {\par\vskip\medskipamount{\noindent\textbf{\insertblocktitle}}\par\noindent\ignorespaces}
+\defbeamertemplate<article>*{block end}{default}{\vskip\medskipamount}
+\defbeamertemplate<article>*{block alerted begin}{default}
+ {\par\vskip\medskipamount{\noindent\textbf{\emph{\insertblocktitle}}}\par\noindent\ignorespaces}
+\defbeamertemplate<article>*{block alerted end}{default}{\vskip\medskipamount}
+\defbeamertemplate<article>*{block example begin}{default}
+ {\par\vskip\medskipamount{\noindent\emph{\insertblocktitle}}\par\noindent\ignorespaces}
+\defbeamertemplate<article>*{block example end}{default}{\vskip\medskipamount}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty b/macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty
new file mode 100644
index 0000000000..3725661462
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty
@@ -0,0 +1,835 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+
+\RequirePackage{beamerbaseboxes}
+
+
+
+%
+% declare some balls
+%
+
+\normalsize
+\pgfdeclareradialshading[bg,parent.bg]{tocsphere}{\pgfpoint{-0.5ex}{0.6ex}}%
+{%
+ color(0cm)=(bg!35!white);
+ color(0.44ex)=(bg!75!white);
+ color(0.88ex)=(bg!70!black!90!parent.bg);
+ color(1.2ex)=(bg!50!black!90!parent.bg);
+ color(1.3ex)=(parent.bg)}
+
+\pgfdeclareradialshading[bg,parent.bg]{bigsphere}{\pgfpoint{-0.1849315ex}{.2260273ex}}%
+{%
+ color(0cm)=(bg!15);
+ color(0.1643835ex)=(bg!75);
+ color(0.3287671ex)=(bg!70!black);
+ color(0.4520547ex)=(bg!50!black);
+ color(0.53ex)=(parent.bg)}
+
+\pgfdeclareradialshading[bg,parent.bg]{smallsphere}{\pgfpoint{-0.1479452ex}{0.18287671ex}}%
+{%
+ color(0cm)=(bg!15);
+ color(0.1315068ex)=(bg!75);
+ color(0.2630136ex)=(bg!70!black);
+ color(0.36164383ex)=(bg!50!black);
+ color(0.427ex)=(parent.bg)}
+
+\def\beamer@usesphere#1#2{%
+ \hbox{\usebeamercolor{#1}\normalsize\pgfuseshading{#2}}}
+
+
+
+
+
+
+
+
+
+
+
+%
+% Background templates
+%
+
+\define@key{beamer@backgroundgrid}{step}{\def\beamer@bggw{#1}}
+\define@key{beamer@backgroundgrid}{color}{\def\beamer@bggc{\color{#1}}}
+
+\defbeamertemplate{background}{grid}[1][]
+{%
+ \setkeys{beamer@backgroundgrid}{step=0.5cm,color=fg!10!bg}%
+ \setkeys{beamer@backgroundgrid}{#1}%
+ \begin{pgfpicture}{0cm}{0cm}{\the\paperwidth}{\the\paperheight}
+ \beamer@bggc
+ \pgfpathgrid[stepx=\beamer@bggw,stepy=\beamer@bggw]{\pgfpointorigin}{\pgfpoint{\the\paperwidth}{\the\paperheight}}
+ \pgfusepath{stroke}
+ \end{pgfpicture}%
+}
+
+
+\define@key{beamer@backgroundshade}{top}{\def\beamer@bgst{#1}}
+\define@key{beamer@backgroundshade}{bottom}{\def\beamer@bgsb{#1}}
+\define@key{beamer@backgroundshade}{right}{\def\beamer@bgst{#1}}
+\define@key{beamer@backgroundshade}{left}{\def\beamer@bgsb{#1}}
+\define@key{beamer@backgroundshade}{middle}{\def\beamer@bgsm{#1}}
+\define@key{beamer@backgroundshade}{midpoint}{\def\beamer@bgsmp{#1}}
+
+\def\beamer@calcvertshading#1#2#3{%
+ {\usebeamercolor{palette primary}}
+ \usebeamercolor{normal text}
+ \setkeys{beamer@backgroundshade}{top=palette primary.bg!25!bg,bottom=bg,middle={},midpoint=0.5}%
+ \setkeys{beamer@backgroundshade}{#3}
+ \ifx\beamer@bgsm\@empty
+ \pgfdeclareverticalshading{#1}{#2}%
+ {color(0cm)=(\beamer@bgsb); color(\the\paperheight)=(\beamer@bgst)}
+ \colorlet{beamer@backgroundshadestart}{\beamer@bgsb}%
+ \colorlet{beamer@backgroundshadeend}{\beamer@bgst}%
+ \colorlet{beamer@average}{beamer@backgroundshadestart!50!beamer@backgroundshadeend}%
+ \else
+ \pgfdeclareverticalshading{#1}{#2}%
+ {color(0cm)=(\beamer@bgsb); color(\beamer@bgsmp\paperheight)=(\beamer@bgsm); color(\the\paperheight)=(\beamer@bgst)}
+ \colorlet{beamer@average}{\beamer@bgsm}
+ \fi%
+}
+
+\def\beamer@calchorishading#1#2#3{%
+ {\usebeamercolor{palette primary}}
+ \usebeamercolor{normal text}
+ \setkeys{beamer@backgroundshade}{left=palette primary.bg!25!bg,right=bg,middle={},midpoint=0.5}%
+ \setkeys{beamer@backgroundshade}{#3}
+ \ifx\beamer@bgsm\@empty
+ \pgfdeclarehorizontalshading{#1}{\the\paperheight}%
+ {color(0cm)=(\beamer@bgsb); color(#2)=(\beamer@bgst)}
+ \colorlet{beamer@backgroundshadestart}{\beamer@bgsb}%
+ \colorlet{beamer@backgroundshadeend}{\beamer@bgst}%
+ \colorlet{beamer@average}{beamer@backgroundshadestart!50!beamer@backgroundshadeend}%
+ \else
+ \pgfdeclarehorizontalshading{#1}{\the\paperheight}%
+ {color(0cm)=(\beamer@bgsb); color(\beamer@bgsmp#2)=(\beamer@bgsm); color(#2)=(\beamer@bgst)}
+ \colorlet{beamer@average}{\beamer@bgsm}
+ \fi%
+}
+
+
+
+\defbeamertemplate{background canvas}{vertical shading}[1][]
+{%
+ \pgfuseshading{beamer@backgroundshading}%
+}
+[action]
+{
+ \beamer@calcvertshading{beamer@backgroundshading}{\the\paperwidth}{#1}
+ \colorlet{beamer@@average}{beamer@average}
+ \setbeamercolor{normal text}{bg=beamer@@average}
+}
+
+
+
+
+%
+% Side bars
+%
+
+\defbeamertemplate{sidebar canvas left}{vertical shading}[1][]
+{%
+ \pgfuseshading{beamer@sidebarcanvasleftshading}%
+}
+[action]
+{
+ \beamer@calcvertshading{beamer@sidebarcanvasleftshading}{\the\beamer@leftsidebar}{#1}
+}
+
+\defbeamertemplate{sidebar canvas right}{vertical shading}[1][]
+{%
+ \pgfuseshading{beamer@sidebarcanvasrightshading}%
+}
+[action]
+{
+ \beamer@calcvertshading{beamer@sidebarcanvasrightshading}{\the\beamer@rightsidebar}{#1}
+}
+
+\defbeamertemplate{sidebar canvas left}{horizontal shading}[1][]
+{%
+ \pgfuseshading{beamer@sidebarcanvasleftshading}%
+}
+[action]
+{
+ \beamer@calchorishading{beamer@sidebarcanvasleftshading}{\beamer@leftsidebar}{#1}
+}
+
+\defbeamertemplate{sidebar canvas right}{horizontal shading}[1][]
+{%
+ \pgfuseshading{beamer@sidebarcanvasrightshading}%
+}
+[action]
+{
+ \beamer@calchorishading{beamer@sidebarcanvasrightshading}{\beamer@rightsidebar}{#1}
+}
+
+
+
+
+
+
+% (sub-)section in toc: sections numbered
+
+\defbeamertemplate{section in toc}{sections numbered}
+{\leavevmode\inserttocsectionnumber. \inserttocsection\par}
+
+\defbeamertemplate{subsection in toc}{sections numbered}
+{\leavevmode\leftskip=2.5em\inserttocsubsection\par}
+
+\defbeamertemplate{subsubsection in toc}{sections numbered}
+{\leavevmode\normalsize\usebeamerfont{subsection in toc}\leftskip=3.5em\usebeamerfont{subsubsection in toc}%
+ \inserttocsubsubsection\par}
+
+
+
+
+
+% (sub-)section in toc: subsections numbered
+
+\defbeamertemplate{section in toc}{subsections numbered}
+{\leavevmode\leftskip=2em\inserttocsection\par}
+
+\defbeamertemplate{subsection in toc}{subsections numbered}
+{\leavevmode\leftskip=2em\rlap{\hskip-2em\inserttocsectionnumber.\inserttocsubsectionnumber}\inserttocsubsection\par}
+
+\defbeamertemplate{subsubsection in toc}{subsections numbered}
+{\leavevmode\normalsize\usebeamerfont{subsection in
+ toc}\leftskip=3em\usebeamerfont{subsubsection in toc}%
+ \inserttocsubsubsection\par}
+
+
+
+
+
+% (sub-)section in toc: circle
+
+\defbeamertemplate{section in toc}{circle}
+{\leavevmode\leftskip=2ex%
+ \llap{%
+ \usebeamerfont*{section number projected}%
+ \usebeamercolor{section number projected}%
+ \begin{pgfpicture}{-1ex}{0ex}{1ex}{2ex}
+ \color{bg}
+ \pgfpathcircle{\pgfpoint{0pt}{.75ex}}{1.2ex}
+ \pgfusepath{fill}
+ \pgftext[base]{\color{fg}\inserttocsectionnumber}
+ \end{pgfpicture}\kern1.25ex%
+ }%
+ \inserttocsection\par}
+
+\defbeamertemplate{subsection in toc}{circle}
+{\leavevmode\leftskip=2em\inserttocsubsection\par}
+
+\defbeamertemplate{subsubsection in toc}{circle}
+{\leavevmode\normalsize\usebeamerfont{subsection in
+ toc}\leftskip=3em\usebeamerfont{subsubsection in toc}%
+ \inserttocsubsubsection\par}
+
+
+
+
+% (sub-)section in toc: square
+
+\defbeamertemplate{section in toc}{square}
+{\leavevmode\leftskip=1.75ex%
+ \llap{%
+ \usebeamerfont*{section number projected}%
+ \usebeamercolor[bg]{section number projected}%
+ \vrule width2.25ex height1.85ex depth.4ex%
+ \hskip-2.25ex%
+ \hbox to2.25ex{\hfil\color{fg}\inserttocsectionnumber\hfil}}%
+ \kern1.25ex\inserttocsection\par}
+
+\defbeamertemplate{subsection in toc}{square}
+{\leavevmode\leftskip=5ex\llap{%
+ \usebeamercolor[bg]{subsection number projected}%
+ \vrule width1ex height1ex\kern1ex}\inserttocsubsection\par}
+
+\defbeamertemplate{subsubsection in toc}{square}
+{\leavevmode\normalsize\usebeamerfont{subsection in
+ toc}\leftskip=7ex\usebeamerfont{subsubsection in toc}%
+ \llap{%
+ \usebeamercolor[bg]{subsubsection number projected}%
+ \vrule width0.75ex height0.75ex\kern1ex}\inserttocsubsubsection\par}
+
+
+
+
+% (sub-)section in toc: ball
+
+\defbeamertemplate{section in toc}{ball unnumbered}
+{\leavevmode\raise0.1ex\beamer@usesphere{section number projected}{bigsphere}\kern1.25ex\inserttocsection\par}
+
+\defbeamertemplate{subsection in toc}{ball unnumbered}
+{\leavevmode\leftskip=1.5em\raise0.2ex\beamer@usesphere{subsection number projected}{smallsphere}%
+ \kern1ex\inserttocsubsection\par}
+
+\defbeamertemplate{subsubsection in toc}{ball unnumbered}
+{\leavevmode\normalsize\usebeamerfont{subsection in
+ toc}\leftskip=3em\usebeamerfont{subsubsection in toc}%
+ \beamer@usesphere{subsubsection number projected}{smallsphere}%
+ \kern0.75ex\inserttocsubsubsection\par}
+
+
+
+
+% (sub-)section in toc: ball numbered
+
+\defbeamertemplate{section in toc}{ball}
+{\leavevmode\leftskip=2.75ex%
+ \llap{%
+ \normalsize%
+ \begin{pgfpicture}{-1ex}{-0.7ex}{1ex}{1ex}
+ \pgftext{\beamer@usesphere{section number projected}{tocsphere}}
+ \pgftext{%
+ \usebeamerfont*{section number projected}%
+ \usebeamercolor{section number projected}%
+ \color{fg!90!bg}%
+ \inserttocsectionnumber}
+ \end{pgfpicture}%
+ \kern1.25ex}%
+ \inserttocsection\par
+}
+[action]
+{\setbeamerfont{section number projected}{size=\scriptsize}}
+
+\defbeamertemplate{subsection in toc}{ball}
+{\leavevmode\leftskip=5ex%
+ \llap{\raise0.1ex\beamer@usesphere{subsection number projected}{bigsphere}\kern1ex}%
+ \inserttocsubsection\par%
+}
+
+\defbeamertemplate{subsubsection in toc}{ball}
+{\leavevmode\normalsize\usebeamerfont{subsection in
+ toc}\leftskip=7ex\usebeamerfont{subsubsection in toc}%
+ \llap{\beamer@usesphere{subsubsection number projected}{bigsphere}\kern0.75ex}%
+ \inserttocsubsubsection\par%
+}
+
+
+
+% Itemize items, circle
+
+\defbeamertemplatealias{itemize item}{triangle}{default}
+\defbeamertemplatealias{itemize subitem}{triangle}{default}
+\defbeamertemplatealias{itemize subsubitem}{triangle}{default}
+
+
+
+% Itemize items, circle
+
+\defbeamertemplate{itemize item}{circle}{\usebeamerfont*{itemize item}\raise1.25pt\hbox{\donotcoloroutermaths$\bullet$}}
+\defbeamertemplate{itemize subitem}{circle}{\usebeamerfont*{itemize subitem}\raise1.5pt\hbox{\donotcoloroutermaths$\bullet$}}
+\defbeamertemplate{itemize subsubitem}{circle}{\usebeamerfont*{itemize subsubitem}\raise1.5pt\hbox{\donotcoloroutermaths$\bullet$}}
+
+
+
+
+% Itemize items, square
+
+\defbeamertemplate{itemize item}{square}{\hbox{\vrule width 1ex height 1ex}}
+\defbeamertemplate{itemize subitem}{square}{\small\hbox{\vrule width 1ex height 1ex}}
+\defbeamertemplate{itemize subsubitem}{square}{\small\hbox{\vrule width 1ex height 1ex}}
+
+
+
+
+% Itemize items, ball
+
+\defbeamertemplate{itemize item}{ball}{\raise0.2pt\beamer@usesphere{item projected}{bigsphere}}
+\defbeamertemplate{itemize subitem}{ball}{\raise0.2pt\beamer@usesphere{subitem projected}{smallsphere}}
+\defbeamertemplate{itemize subsubitem}{ball}{\raise0.2pt\beamer@usesphere{subsubitem projected}{smallsphere}}
+
+
+
+% Enumerate items, ball
+
+\defbeamertemplate{enumerate item}{ball}
+{
+ \begin{pgfpicture}{-1ex}{-0.65ex}{1ex}{1ex}
+ \usebeamercolor{item projected}
+ {\pgftransformscale{1.75}\pgftext{\normalsize\pgfuseshading{bigsphere}}}
+ {\pgftransformshift{\pgfpoint{0pt}{0.5pt}}
+ \pgftext{%
+ \usebeamerfont*{item projected}%
+ \color{fg}\insertenumlabel}}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate{enumerate subitem}{ball}
+{
+ \begin{pgfpicture}{-1ex}{-0.55ex}{1ex}{1ex}
+ \usebeamercolor{subitem projected}
+ {\pgftransformscale{1.4}\pgftext{\normalsize\pgfuseshading{bigsphere}}}
+ \pgftext{%
+ \usebeamerfont*{subitem projected}%
+ \color{fg}\insertsubenumlabel}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate{enumerate subsubitem}{ball}
+{
+ \begin{pgfpicture}{-1ex}{-0.55ex}{1ex}{1ex}
+ \usebeamercolor{subsubitem projected}
+ {\pgftransformscale{1.4}\pgftext{\normalsize\pgfuseshading{bigsphere}}}
+ \pgftext{%
+ \usebeamerfont*{subitem projected}%
+ \color{fg}\insertsubsubenumlabel}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate{enumerate mini template}{ball}
+{
+ \begin{pgfpicture}{-1ex}{-0.65ex}{1ex}{1ex}
+ \usebeamercolor{\beameritemnestingprefix item projected}
+ {\pgftransformscale{1.75}\pgftext{\normalsize\pgfuseshading{bigsphere}}}
+ {\pgftransformshift{\pgfpoint{0pt}{0.5pt}}%
+ \usebeamerfont*{\beameritemnestingprefix item projected}%
+ \pgftext{\color{fg}\insertenumlabel}}
+ \end{pgfpicture}
+}
+
+
+
+% Enumerate items, square
+
+\defbeamertemplate{enumerate item}{square}
+{
+ \hbox{%
+ \usebeamerfont*{item projected}%
+ \usebeamercolor[bg]{item projected}%
+ \vrule width2.25ex height1.85ex depth.4ex%
+ \hskip-2.25ex%
+ \hbox to2.25ex{%
+ \hfil%
+ \color{fg}\insertenumlabel%
+ \hfil}%
+ }%
+}
+[action]
+{\setbeamerfont{item projected}{size=\scriptsize}}
+
+\defbeamertemplate{enumerate subitem}{square}
+{
+ \hbox{%
+ \usebeamerfont*{subitem projected}%
+ \usebeamercolor[bg]{subitem projected}%
+ \vrule width2.25ex height1.85ex depth.4ex%
+ \hskip-2.25ex%
+ \hbox to2.25ex{%
+ \hfil%
+ \color{fg}\insertsubenumlabel%
+ \hfil}%
+ }%
+}
+
+\defbeamertemplate{enumerate subsubitem}{square}
+{
+ \hbox{%
+ \usebeamerfont*{subitem projected}%
+ \usebeamercolor[bg]{subsubitem projected}%
+ \vrule width2.25ex height1.85ex depth.4ex%
+ \hskip-2.25ex%
+ \hbox to2.25ex{%
+ \hfil%
+ \color{fg}\insertsubsubenumlabel%
+ \hfil}%
+ }%
+}
+
+\defbeamertemplate{enumerate mini template}{square}
+{
+ \hbox{%
+ \usebeamerfont*{\beameritemnestingprefix item projected}%
+ \usebeamercolor[bg]{\beameritemnestingprefix item projected}%
+ \vrule width2.25ex height1.85ex depth.4ex%
+ \hskip-2.25ex%
+ \hbox to2.25ex{%
+ \hfil%
+ \color{fg}\insertenumlabel%
+ \hfil}%
+ }%
+}
+
+
+
+
+% Enumerate items, circle
+
+\defbeamertemplate{enumerate item}{circle}
+{
+ \usebeamerfont*{item projected}%
+ \usebeamercolor[bg]{item projected}%
+ \begin{pgfpicture}{-1ex}{0ex}{1ex}{2ex}
+ \pgfpathcircle{\pgfpoint{0pt}{.75ex}}{1.2ex}
+ \pgfusepath{fill}
+ \pgftext[base]{\color{fg}\insertenumlabel}
+ \end{pgfpicture}%
+}
+[action]
+{\setbeamerfont{item projected}{size=\scriptsize}}
+
+\defbeamertemplate{enumerate subitem}{circle}
+{
+ \usebeamerfont*{subitem projected}%
+ \usebeamercolor[bg]{subitem projected}%
+ \begin{pgfpicture}{-1ex}{0ex}{1ex}{2ex}
+ \pgfpathcircle{\pgfpoint{0pt}{.75ex}}{1.2ex}
+ \pgfusepath{fill}
+ \pgftext[base]{\color{fg}\insertsubenumlabel}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate{enumerate subsubitem}{circle}
+{
+ \usebeamerfont*{subsubitem projected}%
+ \usebeamercolor[bg]{subsubitem projected}%
+ \begin{pgfpicture}{-1ex}{0ex}{1ex}{2ex}
+ \pgfpathcircle{\pgfpoint{0pt}{.75ex}}{1.2ex}
+ \pgfusepath{fill}
+ \pgftext[base]{\color{fg}\insertsubsubenumlabel}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate{enumerate mini template}{circle}
+{
+ \usebeamerfont*{\beameritemnestingprefix item projected}%
+ \usebeamercolor[bg]{\beameritemnestingprefix item projected}%
+ \begin{pgfpicture}{-1ex}{0ex}{1ex}{2ex}
+ \pgfpathcircle{\pgfpoint{0pt}{.75ex}}{1.2ex}
+ \pgfusepath{fill}
+ \pgftext[base]{\color{fg}\insertenumlabel}
+ \end{pgfpicture}%
+}
+
+
+
+%
+% Frame title continutations
+%
+
+\defbeamertemplatealias{frametitle continuation}{roman}{default}
+
+\defbeamertemplate{frametitle continuation}{from second}[1][\insertcontinuationtext]
+{\expandafter\ifnum\insertcontinuationcount>1\relax#1\fi}
+
+
+
+
+
+% Bibliography items
+
+\defbeamertemplatealias{bibliography item}{article}{default}
+
+\defbeamertemplate{bibliography item}{book}
+{\lower2pt\hbox{\pgfuseimage{beamericonbook}}}
+
+\defbeamertemplate{bibliography item}{text}
+{\insertbiblabel}
+
+\defbeamertemplate{bibliography item}{triangle}
+{\scriptsize\raise1.25pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
+
+\defbeamertemplate{bibliography item}{online}
+{\lower3pt\hbox{\pgfuseimage{beamericononline}}}
+
+% Headline
+
+\defbeamertemplate{headline}{text line}[1]
+{\hskip\Gm@lmargin\hbox to\@tempdima{\textwidth=\@tempdima\hsize=\textwidth\relax#1\hfil}\hskip\Gm@rmargin}
+
+% Framenumbers in footline
+\defbeamertemplate{page number in head/foot}{framenumber}{\insertframenumber}
+
+\defbeamertemplate{page number in head/foot}{totalframenumber}{\insertframenumber\,/\,\inserttotalframenumber}
+
+\defbeamertemplate{page number in head/foot}{appendixframenumber}{%
+ \ifbeamer@inappendix%
+ \insertframenumberinappendix\,/\,\insertappendixframenumber%
+ \else%
+ \insertframenumber\,/\,\insertmainframenumber%
+ \fi%
+}
+
+\defbeamertemplate{page number in head/foot}{pagenumber}{\insertpagenumber}
+
+\defbeamertemplate{page number in head/foot}{totalpagenumber}{\insertpagenumber\,/\,\insertpresentationendpage}
+
+
+% Footline
+
+\defbeamertemplate{footline}{text line}[1]
+{\hskip\Gm@lmargin\hbox to\@tempdima{\textwidth=\@tempdima\hsize=\textwidth\relax#1\hfil}\hskip\Gm@rmargin}
+
+\defbeamertemplate{footline}{page number}
+{%
+ \hfill%
+ \usebeamercolor[fg]{page number in head/foot}%
+ \usebeamerfont{page number in head/foot}%
+ \setbeamertemplate{page number in head/foot}[totalpagenumber]%
+ \usebeamertemplate*{page number in head/foot}\kern1em\vskip2pt%
+}
+
+\defbeamertemplate{footline}{frame number}
+{
+ \hfill%
+ \usebeamercolor[fg]{page number in head/foot}%
+ \usebeamerfont{page number in head/foot}%
+ \setbeamertemplate{page number in head/foot}[totalframenumber]%
+ \usebeamertemplate*{page number in head/foot}\kern1em\vskip2pt%
+}
+
+
+% Mini frames
+
+\defbeamertemplate{mini frame}{box}
+{%
+ \begin{pgfpicture}{0pt}{0pt}{.1cm}{.1cm}
+ \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{\the\beamer@boxsize}{\the\beamer@boxsize}}
+ \pgfusepath{fill,stroke}
+ \end{pgfpicture}%
+}
+[action]
+{
+ \setbeamersize{mini frame size=.1cm,mini frame offset=.05cm}
+}
+
+\defbeamertemplate{mini frame in current subsection}{box}
+{%
+ \begin{pgfpicture}{0pt}{0pt}{.1cm}{.1cm}
+ \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{\the\beamer@boxsize}{\the\beamer@boxsize}}
+ \pgfusepath{stroke}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate{mini frame}{tick}
+{%
+ \hskip-0.4pt\vrule height\beamer@boxsize width1.2pt%
+}
+[action]
+{
+ \setbeamersize{mini frame size=.1cm,mini frame offset=.05cm}
+}
+
+\defbeamertemplate{mini frame in current subsection}{tick}
+{%
+ \vrule height\beamer@boxsize width0.4pt%
+}
+
+
+
+
+
+%
+% Captions
+%
+
+\defbeamertemplate{caption}{numbered}
+{%
+ \raggedright
+ {%
+ \usebeamercolor[fg]{caption name}%
+ \usebeamerfont*{caption name}%
+ \insertcaptionname~\insertcaptionnumber
+ \usebeamertemplate{caption label separator}%
+ }%
+ \insertcaption\par
+}
+\defbeamertemplate{caption label separator}{none}{}
+\defbeamertemplate{caption label separator}{colon}{:\ }
+\defbeamertemplate{caption label separator}{period}{.\ }
+\defbeamertemplate{caption label separator}{space}{\ }
+\defbeamertemplate{caption label separator}{quad}{\quad\ }
+\defbeamertemplate{caption label separator}{endash}{\ --\ }
+
+\defbeamertemplate{caption}{caption name own line}
+{%
+ \begin{minipage}{\textwidth}
+ \raggedright
+ {%
+ \usebeamercolor[fg]{caption name}%
+ \usebeamerfont*{caption name}%
+ \insertcaptionname%
+ }\\
+ \insertcaption
+ \end{minipage}
+}
+
+
+
+
+
+%
+% Buttons
+%
+
+\newdimen\beamer@blockheadheight%
+
+
+\defbeamertemplate{navigation symbols}{only frame symbol}
+{\insertframenavigationsymbol}
+
+\defbeamertemplate{navigation symbols}{vertical}
+{%
+ \vbox{%
+ \hbox{\insertslidenavigationsymbol}
+ \hbox{\insertframenavigationsymbol}
+ \hbox{\insertsubsectionnavigationsymbol}
+ \hbox{\insertsectionnavigationsymbol}
+ \hbox{\insertdocnavigationsymbol}
+ \hbox{\insertbackfindforwardnavigationsymbol}}%
+}
+
+\defbeamertemplatealias{navigation symbols}{horizontal}{default}
+
+
+
+%
+% Blocks
+%
+
+\defbeamertemplateparent{blocks}[rounded]{block begin,block end,%
+ block alerted begin,block alerted end,%
+ block example begin,block example end}[1][]
+{[#1]}
+
+\defbeamertemplate{block begin}{rounded}[1][shadow=false]
+{%
+ \par\vskip\medskipamount%
+ \begin{beamerboxesrounded}[upper=block title,lower=block body,#1]%
+ {\raggedright\usebeamerfont*{block title}\insertblocktitle}%
+ \raggedright%
+ \usebeamerfont{block body}%
+}
+\defbeamertemplate{block end}{rounded}[1][]
+{\end{beamerboxesrounded}\vskip\smallskipamount}
+
+\defbeamertemplate{block alerted begin}{rounded}[1][shadow=false]
+{%
+ \par\vskip\medskipamount%
+ \begin{beamerboxesrounded}[upper=block title alerted,lower=block body alerted,#1]%
+ {\raggedright\usebeamerfont*{block title alerted}\insertblocktitle}%
+ \raggedright%
+ \usebeamerfont{block body alerted}%
+}%
+\defbeamertemplate{block alerted end}{rounded}[1][]
+{\end{beamerboxesrounded}\vskip\smallskipamount}
+
+\defbeamertemplate{block example begin}{rounded}[1][shadow=false]
+{%
+ \par\vskip\medskipamount%
+ \begin{beamerboxesrounded}[upper=block title example,lower=block body example,#1]
+ {\raggedright\usebeamerfont*{block title example}\insertblocktitle}%
+ \raggedright%
+ \usebeamerfont{block body example}%
+}%
+\defbeamertemplate{block example end}{rounded}[1][]
+{\end{beamerboxesrounded}\vskip\smallskipamount}
+
+
+
+%
+% Note templates
+%
+
+\defbeamertemplate{note page}{plain}
+{\insertnote}
+
+\defbeamertemplate{note page}{compressed}
+{%
+ {%
+ \tiny
+ \let\\=\relax%
+ \insertvrule{0.125\paperheight}{white!90!black}%
+ \vskip-0.125\paperheight
+ \nointerlineskip
+ \vbox{\hfill\insertslideintonotes{0.125}\hskip-\Gm@rmargin\hskip0pt%
+ \vskip-0.125\paperheight\nointerlineskip}%
+ \nointerlineskip
+ \vbox to .125\paperheight{
+ \setbox\beamer@tempbox=\hbox{\hbox{\insertsection}}%
+ \ht\beamer@tempbox=1em
+ \box\beamer@tempbox
+ \nointerlineskip
+ \setbox\beamer@tempbox=\hbox{\hbox{\quad\insertsubsection}}%
+ \ht\beamer@tempbox=1em
+ \box\beamer@tempbox
+ \nointerlineskip
+ \setbox\beamer@tempbox=\hbox{\hbox{\quad\quad\insertshortframetitle}}%
+ \ht\beamer@tempbox=1em
+ \box\beamer@tempbox
+ \vfil
+ }\vskip0.5em
+ }
+ \nointerlineskip
+ \insertnote
+}
+
+
+
+%
+% Theorem templates
+%
+
+\defbeamertemplate{theorem begin}{ams style}
+{%
+ \begin{\inserttheoremblockenv}
+ {%
+ \inserttheoremheadfont
+ \inserttheoremname
+ \inserttheoremnumber
+ \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi%
+ \inserttheorempunctuation
+ }%
+}
+
+\defbeamertemplate{theorem end}{ams style}
+{\end{\inserttheoremblockenv}}
+
+
+\defbeamertemplate{theorem begin}{numbered}
+{%
+ \begin{\inserttheoremblockenv}
+ {%
+ \inserttheoremname
+ \inserttheoremnumber
+ \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi%
+ }%
+}
+
+\defbeamertemplate{theorem end}{numbered}
+{\end{\inserttheoremblockenv}}
+
+
+\defbeamertemplate{theorem begin}{normal font}
+{
+ \normalfont
+ \begin{\inserttheoremblockenv}
+ {%
+ \inserttheoremname
+ \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi%
+ }%
+}
+
+\defbeamertemplate{theorem end}{normal font}
+{\end{\inserttheoremblockenv}}
+
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseboxes.sty b/macros/latex/contrib/beamer/base/beamerbaseboxes.sty
new file mode 100644
index 0000000000..ee3ecd9064
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseboxes.sty
@@ -0,0 +1,248 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\def\beamerboxesdeclarecolorscheme#1#2#3{% scheme name, upper color, lower color
+ \setbeamercolor{@scheme upper #1}{fg=white,bg={#2}}
+ \setbeamercolor{@scheme lower #1}{bg={#3}}
+}
+
+\define@key{beamerboxes}{scheme}{\def\bmb@upper{@scheme upper #1}\def\bmb@lower{@scheme lower #1}}
+\define@key{beamerboxes}{upper}{\def\bmb@upper{#1}}
+\define@key{beamerboxes}{lower}{\def\bmb@lower{#1}}
+\define@key{beamerboxes}{width}{\edef\bmb@width{#1}}
+\define@key{beamerboxes}{shadow}[true]{\csname bmb@shadow#1\endcsname}
+
+\newif\ifbmb@shadow
+\newbox\bmb@box
+\newbox\bmb@colorbox
+\newbox\bmb@boxshadow
+\newbox\bmb@boxshadowball
+\newbox\bmb@boxshadowballlarge
+\newdimen\bmb@temp
+\newdimen\bmb@dima
+\newdimen\bmb@dimb
+\newdimen\bmb@prevheight
+
+\newcommand\beamerboxesrounded[2][]{%
+ \global\let\beamer@firstlineitemizeunskip=\relax%
+ \vbox\bgroup%
+ \setkeys{beamerboxes}{upper=block title,lower=block body,width=\textwidth,shadow=false}%
+ \setkeys{beamerboxes}{#1}%
+ {%
+ \usebeamercolor{\bmb@lower}%
+ \globalcolorstrue%
+ \colorlet{lower.bg}{bg}%
+ }%
+ {%
+ \usebeamercolor{\bmb@upper}%
+ \globalcolorstrue%
+ \colorlet{upper.bg}{bg}%
+ }%
+ %
+ % Typeset head
+ %
+ \vskip4bp
+ \setbox\bmb@box=\hbox{%
+ \begin{minipage}[b]{\bmb@width}%
+ \usebeamercolor[fg]{\bmb@upper}%
+ #2%
+ \end{minipage}}%
+ \ifdim\wd\bmb@box=0pt%
+ \setbox\bmb@box=\hbox{}%
+ \ht\bmb@box=1.5pt%
+ \bmb@prevheight=-4.5pt%
+ \else%
+ \wd\bmb@box=\bmb@width%
+ \bmb@temp=\dp\bmb@box%
+ \ifdim\bmb@temp<1.5pt%
+ \bmb@temp=1.5pt%
+ \fi%
+ \setbox\bmb@box=\hbox{\raise\bmb@temp\hbox{\box\bmb@box}}%
+ \dp\bmb@box=0pt%
+ \bmb@prevheight=\ht\bmb@box%
+ \fi%
+ \bmb@temp=\bmb@width%
+ \bmb@dima=\bmb@temp\advance\bmb@dima by2.2bp%
+ \bmb@dimb=\bmb@temp\advance\bmb@dimb by4bp%
+ \hbox{%
+ \begin{pgfpicture}{0bp}{+-\ht\bmb@box}{0bp}{+-\ht\bmb@box}
+ \ifdim\wd\bmb@box=0pt%
+ \color{lower.bg}%
+ \else%
+ \color{upper.bg}%
+ \fi%
+ \pgfpathqmoveto{-4bp}{-1bp}
+ \pgfpathqcurveto{-4bp}{1.2bp}{-2.2bp}{3bp}{0bp}{3bp}
+ \pgfpathlineto{\pgfpoint{\bmb@temp}{3bp}}
+ \pgfpathcurveto%
+ {\pgfpoint{\bmb@dima}{3bp}}%
+ {\pgfpoint{\bmb@dimb}{1.2bp}}%
+ {\pgfpoint{\bmb@dimb}{-1bp}}%
+ \bmb@dima=-\ht\bmb@box%
+ \advance\bmb@dima by-2pt%
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfpathlineto{\pgfpoint{-4bp}{\bmb@dima}}
+ \pgfusepath{fill}
+ \end{pgfpicture}%
+ \copy\bmb@box%
+ }%
+ \nointerlineskip%
+ \vskip-1pt%
+ \ifdim\wd\bmb@box=0pt%
+ \else%
+ \hbox{%
+ \begin{pgfpicture}{0pt}{0pt}{\bmb@width}{6pt}
+ \bmb@dima=\bmb@width%
+ \advance\bmb@dima by8bp%
+ \pgfpathrectangle{\pgfpoint{-4bp}{-1bp}}{\pgfpoint{\bmb@dima}{8bp}}
+ \pgfusepath{clip}
+ {\pgftransformshift{\pgfpoint{-4bp}{0bp}}\pgftext[left,base]{\pgfuseshading{bmb@transition}}}%
+ \end{pgfpicture}%
+ }%
+ \nointerlineskip%
+ \vskip-0.5pt%
+ \fi%
+ \ifbmb@shadow%
+ \setbox\bmb@boxshadow=\hbox{\pgfuseshading{bmb@shadow}}%
+ \setbox\bmb@boxshadowball=\hbox{\pgfuseshading{bmb@shadowball}}%
+ \setbox\bmb@boxshadowballlarge=\hbox{\pgfuseshading{bmb@shadowballlarge}}%
+ \fi%
+ \setbox\bmb@colorbox=\hbox{{\pgfpicturetrue\pgfsetcolor{lower.bg}}}%
+ \setbox\bmb@box=\hbox\bgroup\begin{minipage}[b]{\bmb@width}%
+ \vskip2pt%
+ \usebeamercolor[fg]{\bmb@lower}%
+ \colorlet{beamerstructure}{upper.bg}%
+ \colorlet{structure}{upper.bg}%
+ %\color{.}%
+ }
+
+\def\endbeamerboxesrounded{%
+ \end{minipage}\egroup%
+ \wd\bmb@box=\bmb@width%
+ \bmb@temp=\dp\bmb@box%
+ \advance\bmb@temp by.5pt%
+ \setbox\bmb@box=\hbox{\raise\bmb@temp\hbox{\box\bmb@box}}%
+ \dp\bmb@box=0pt%
+ \bmb@temp=\wd\bmb@box%
+ \bmb@dima=\bmb@temp\advance\bmb@dima by2.2bp%
+ \bmb@dimb=\bmb@temp\advance\bmb@dimb by4bp%
+ \hbox{%
+ \begin{pgfpicture}{0bp}{0bp}{0bp}{0bp}
+ \ifbmb@shadow%
+ {\pgftransformshift{\pgfpoint{4bp}{-3bp}}\pgftext{\copy\bmb@boxshadowball}}
+ \begin{pgfscope}
+ {%
+ \advance\bmb@temp by-1bp%
+ \pgfpathrectangle{\pgfpoint{\bmb@temp}{-7bp}}{\pgfpoint{9bp}{9bp}}%
+ \pgfusepath{clip}
+ }%
+ {\pgftransformshift{\pgfpoint{\bmb@temp}{1bp}}\pgftext{\box\bmb@boxshadowballlarge}}
+ \end{pgfscope}
+ \begin{pgfscope}
+ \advance\bmb@temp by-4bp%
+ \pgfpathrectangle{\pgfpoint{4bp}{-7bp}}{\pgfpoint{\bmb@temp}{5bp}}
+ \pgfusepath{clip}
+ {\pgftransformshift{\pgfpoint{4bp}{-7bp}}\pgftext[left,base]{\copy\bmb@boxshadow}}%
+ \end{pgfscope}
+ \begin{pgfscope}
+ \advance\bmb@temp by 4bp%
+ \bmb@dima=\ht\bmb@box%
+ \advance\bmb@dima by\bmb@prevheight%
+ \advance\bmb@dima by 4bp%
+ \pgfpathrectangle{\pgfpoint{\bmb@temp}{1bp}}{\pgfpoint{4bp}{\bmb@dima}}
+ \pgfusepath{clip}
+ \advance\bmb@dima by-4bp%
+ {\pgftransformshift{\pgfpoint{\bmb@temp}{\bmb@dima}}\pgftext{\box\bmb@boxshadowball}}
+ \advance\bmb@dima by-1bp%
+ \pgfpathrectangle{\pgfpoint{\bmb@temp}{1bp}}{\pgfpoint{4bp}{\bmb@dima}}
+ \pgfusepath{clip}
+ \advance\bmb@temp by4bp%
+ {\pgftransformshift{\pgfpoint{\bmb@temp}{-3bp}}%
+ \pgftransformrotate{90}%
+ \pgftext[left,base]{\box\bmb@boxshadow}}%
+ \end{pgfscope}
+ \fi%
+ \unhbox\bmb@colorbox%
+ \pgfpathqmoveto{-4bp}{1bp}
+ \pgfpathqcurveto{-4bp}{-1.2bp}{-2.2bp}{-3bp}{0bp}{-3bp}
+ \pgfpathlineto{\pgfpoint{\the\bmb@temp}{-3bp}}
+ \pgfpathcurveto%
+ {\pgfpoint{\the\bmb@dima}{-3bp}}%
+ {\pgfpoint{\the\bmb@dimb}{-1.2bp}}%
+ {\pgfpoint{\the\bmb@dimb}{1bp}}%
+ {
+ \bmb@dima=\ht\bmb@box%
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfpathlineto{\pgfpoint{-4bp}{\bmb@dima}}
+ \pgfusepath{fill}
+ }
+ \ifbmb@shadow%
+ {
+ \color{black!50!bg}
+ \pgfsetlinewidth{0pt}
+ \pgfpathmoveto{\pgfpoint{\bmb@dimb}{-.5bp}}
+ \bmb@dima=\ht\bmb@box%
+ \advance\bmb@dima by\bmb@prevheight%
+ \advance\bmb@dima by 1bp%
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfusepath{stroke}
+ \bmb@temp=\bmb@dima
+ \advance\bmb@dima by 1bp%
+ \color{black!31!bg}
+ \pgfpathmoveto{\pgfpoint{\bmb@dimb}{\bmb@temp}}
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfusepath{stroke}
+ \advance\bmb@dima by 1bp%
+ \advance\bmb@temp by 1bp%
+ \color{black!19!bg}
+ \pgfpathmoveto{\pgfpoint{\bmb@dimb}{\bmb@temp}}
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfusepath{stroke}
+ \advance\bmb@dima by 1bp%
+ \advance\bmb@temp by 1bp%
+ \color{black!6!bg}
+ \pgfpathmoveto{\pgfpoint{\bmb@dimb}{\bmb@temp}}
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfusepath{stroke}
+ \advance\bmb@dima by 1.5bp%
+ \advance\bmb@temp by 1bp%
+ \color{bg}
+ \pgfpathmoveto{\pgfpoint{\bmb@dimb}{\bmb@temp}}
+ \pgfpathlineto{\pgfpoint{\bmb@dimb}{\bmb@dima}}
+ \pgfusepath{stroke}
+ }
+ \fi
+ \end{pgfpicture}%
+ \box\bmb@box%
+ }%
+ \ifbmb@shadow%
+ \vskip4bp minus 2bp%
+ \else%
+ \vskip2bp%
+ \fi%
+ \egroup% of \vbox\bgroup
+}
+
+%
+% Shadings
+%
+
+% Shadows
+\pgfdeclareradialshading[black,bg]{bmb@shadowball}{\pgfpointorigin}{%
+ color(0bp)=(black!50!bg); color(4bp)=(bg)}
+\pgfdeclareradialshading[black,bg]{bmb@shadowballlarge}{\pgfpointorigin}{%
+ color(0bp)=(black!50!bg); color(4bp)=(black!50!bg); color(8bp)=(bg)}
+\pgfdeclareverticalshading[black,bg]{bmb@shadow}{200cm}{%
+ color(0bp)=(bg); color(4bp)=(black!50!bg); color(8bp)=(black!50!bg)}
+
+% Transition line
+\pgfdeclareverticalshading[lower.bg,upper.bg]{bmb@transition}{200cm}{%
+ color(0pt)=(lower.bg); color(2pt)=(lower.bg); color(4pt)=(upper.bg)}
diff --git a/macros/latex/contrib/beamer/base/beamerbasecolor.sty b/macros/latex/contrib/beamer/base/beamerbasecolor.sty
new file mode 100644
index 0000000000..099df8c845
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasecolor.sty
@@ -0,0 +1,409 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+%
+% Color theme stuff
+%
+
+\define@key{beamerthc}{fg}
+ {\expandafter\def\csname beamer@thcfg@\beamer@temp\endcsname{\def\beamer@thc@fg{#1}}}
+\define@key{beamerthc}{bg}
+ {\expandafter\def\csname beamer@thcbg@\beamer@temp\endcsname{\def\beamer@thc@bg{#1}}}
+\define@key{beamerthc}{parent}
+ {\expandafter\def\csname beamer@thcinherits@\beamer@temp\endcsname{%
+ \@for\@temp:={#1}\do{\expandafter\beamer@thc@docolor\expandafter{\@temp}}}}
+\define@key{beamerthc}{use}
+ {\expandafter\def\csname beamer@thcuse@\beamer@temp\endcsname{%
+ \@for\@temp:={#1}\do{\expandafter\beamer@thc@usecolor\expandafter{\@temp}}}}
+
+\def\beamer@thc@prepcolor{%
+ \let\beamer@thc@fg=\@empty%
+ \let\beamer@thc@bg=\@empty%
+}
+
+\def\beamer@thc@docolor#1{%
+ \csname beamer@thcuse@#1\endcsname%
+ \csname beamer@thcinherits@#1\endcsname%
+ \csname beamer@thcfg@#1\endcsname%
+ \csname beamer@thcbg@#1\endcsname%
+}
+
+\def\beamer@thc@usecolor#1{%
+ \begingroup%
+ \beamer@thc@prepcolor%
+ \beamer@thc@docolor{#1}%
+ \ifx\beamer@thc@fg\@empty\def\beamer@thc@fg{fg}\fi%
+ \ifx\beamer@thc@bg\@empty\def\beamer@thc@bg{bg}\fi%
+ \global\let\beamer@thc@gfg\beamer@thc@fg%
+ \global\let\beamer@thc@gbg\beamer@thc@bg%
+ \globalcolorstrue%
+ \colorlet{#1.fg}{\beamer@thc@gfg}%
+ \colorlet{#1.bg}{\beamer@thc@gbg}%
+ \endgroup%
+}
+
+\def\setbeamercolor{\@ifstar{\beamer@clearbeamercolor}{\beamer@setbeamercolor}}
+
+\newcommand\beamer@clearbeamercolor[2]{%
+ \def\beamer@temp{#1}%
+ \expandafter\let\csname beamer@thcfg@#1\endcsname=\relax%
+ \expandafter\let\csname beamer@thcbg@#1\endcsname=\relax%
+ \setkeys{beamerthc}{use={},parent={}}%
+ \setkeys{beamerthc}{#2}%
+}
+\newcommand\beamer@setbeamercolor[2]{%
+ \def\beamer@temp{#1}%
+ \setkeys{beamerthc}{#2}%
+}
+
+\newcommand\ifbeamercolorempty[2][]{%
+ \beamer@thc@prepcolor%
+ \beamer@thc@docolor{#2}%
+ \expandafter\ifx\csname beamer@thc@#1\endcsname\@empty%
+ \expandafter\@firstoftwo%
+ \else%
+ \expandafter\@secondoftwo%
+ \fi%
+}
+
+
+\def\usebeamercolor{\@ifstar{\beamer@usebeamercolor[fg]{normal text}\beamer@usebeamercolor}{\beamer@usebeamercolor}}
+\newcommand\beamer@usebeamercolor[2][]{%
+ \beamer@thc@prepcolor%
+ \beamer@thc@docolor{#2}%
+ \ifx\beamer@thc@fg\@empty%
+ \@namelet{\string\color@ temp@fg}{\string\color@ fg}%
+ \else%
+ \colorlet{temp@fg}{\csname beamer@thc@fg\endcsname}%
+ \fi%
+ \ifx\beamer@thc@bg\@empty%
+ \@namelet{\string\color@ temp@bg}{\string\color@ bg}%
+ \else%
+ \colorlet{temp@bg}{\csname beamer@thc@bg\endcsname}%
+ \fi%
+ \@namelet{\string\color@ parent.fg}{\string\color@ fg}%
+ \@namelet{\string\color@ parent.bg}{\string\color@ bg}%
+ \@namelet{\string\color@ fg}{\string\color@ temp@fg}%
+ \@namelet{\string\color@ bg}{\string\color@ temp@bg}%
+ \begingroup%
+ \global\@namelet{\string\color@ #2.fg}{\string\color@ temp@fg}%
+ \global\@namelet{\string\color@ #2.bg}{\string\color@ temp@bg}%
+ \endgroup%
+ \def\beamer@temp{#1}%
+ \ifx\beamer@temp\@empty%
+ \else%
+ \color{#1}%
+ \fi%
+}
+
+\colorlet{fg}{black}
+\colorlet{bg}{white}
+
+\mode
+<article>
+{
+ \newcommand\setbeamercolor{\@ifstar{\@gobbletwo}{\@gobbletwo}}
+ \newcommand\usebeamercolor{\@ifstar{\beamer@optgog}{\beamer@optgog}}
+ \newcommand\beamer@optgog[2][]{}
+}
+
+
+
+%
+% Colored boxes
+%
+
+\define@key{beamercolbox}{wd}{\def\beamer@colbox@wd{#1}}
+\define@key{beamercolbox}{ht}{\def\beamer@colbox@ht{#1}}
+\define@key{beamercolbox}{dp}{\def\beamer@colbox@dp{#1}}
+\define@key{beamercolbox}{leftskip}{\def\beamer@colbox@ls{#1}}
+\define@key{beamercolbox}{rightskip}{\def\beamer@colbox@rs{#1}}
+\define@key{beamercolbox}{left}[0pt]{\def\beamer@colbox@ls{0pt}\def\beamer@colbox@rs{#1 plus1fill}}
+\define@key{beamercolbox}{center}[0pt]{\def\beamer@colbox@ls{#1 plus1fill}\def\beamer@colbox@rs{#1 plus1fill}}
+\define@key{beamercolbox}{right}[0pt]{\def\beamer@colbox@ls{#1 plus1fill}\def\beamer@colbox@rs{0pt}}
+\define@key{beamercolbox}{sep}{\def\beamer@colbox@sep{#1}}
+\define@key{beamercolbox}{colsep}{\def\beamer@colbox@colsep{#1}}
+\define@key{beamercolbox}{colsep*}{\def\beamer@colbox@colseps{#1}}
+\define@key{beamercolbox}{shadow}[true]{\def\beamer@colbox@shadow{#1}}
+\define@key{beamercolbox}{rounded}{\csname beamer@colbox@rounded#1\endcsname}
+\define@key{beamercolbox}{ignorebg}[true]{\csname beamer@colbox@ignorebg#1\endcsname}
+\define@key{beamercolbox}{vmode}[]{\def\beamer@vmode{}}
+
+\newif\ifbeamer@colbox@rounded
+\newif\ifbeamer@colbox@ignorebg
+
+\newenvironment{beamercolorbox}[2][]{%
+ \def\beamer@vmode{\leavevmode}%
+ \setkeys{beamercolbox}{wd=\textwidth,ht={},dp={},%
+ leftskip=0pt,rightskip=0pt plus1fil,%
+ sep=0pt,colsep=0pt,colsep*=0pt,%
+ shadow=false,rounded=false,ignorebg=false}%
+ \setkeys{beamercolbox}{#1}%
+ \ifbeamercolorempty[bg]{#2}{\@tempswafalse}{\@tempswatrue}%
+ \ifbeamer@colbox@ignorebg\@tempswafalse\fi%
+ \def\beamer@colbox@color{#2}%
+ \setbox\beamer@tempbox=\hbox\bgroup\color@begingroup
+ \ifbeamer@colbox@ignorebg%
+ \colorlet{beamer@temp@color}{bg}%
+ \usebeamercolor[fg]{#2}%
+ \colorlet{bg}{beamer@temp@color}%
+ \else%
+ \usebeamercolor[fg]{#2}%
+ \fi%
+ \vbox\bgroup%
+ \hsize=\beamer@colbox@wd%
+ \@arrayparboxrestore%
+ \leftskip=\beamer@colbox@ls%
+ \ifdim\beamer@colbox@sep>\z@\advance\leftskip\beamer@colbox@sep\fi%
+ \rightskip=\beamer@colbox@rs%
+ \ifdim\beamer@colbox@sep>\z@\advance\rightskip\beamer@colbox@sep\fi%
+ \if@tempswa\ifdim\beamer@colbox@colsep>\z@%
+ \advance\leftskip by\beamer@colbox@colsep%
+ \advance\rightskip by\beamer@colbox@colsep%
+ \vskip\beamer@colbox@colsep%
+ \fi%
+ \ifdim\beamer@colbox@colseps>\z@\vskip\beamer@colbox@colseps\fi%
+ \fi%
+ \ifdim\beamer@colbox@sep>\z@\vskip\beamer@colbox@sep\fi%
+ \beamer@vmode\ignorespaces}{%
+ \ifdim\beamer@colbox@sep>\z@\vskip\beamer@colbox@sep\fi%
+ \if@tempswa
+ \ifdim\beamer@colbox@colsep>\z@\vskip\beamer@colbox@colsep\fi%
+ \ifdim\beamer@colbox@colseps>\z@\vskip\beamer@colbox@colseps\fi%
+ \fi%
+ \egroup\color@endgroup\egroup%
+ \ifx\beamer@colbox@ht\@empty\else\ht\beamer@tempbox=\beamer@colbox@ht\fi%
+ \ifx\beamer@colbox@dp\@empty\else\dp\beamer@tempbox=\beamer@colbox@dp\fi%
+ \ifbeamer@colbox@rounded%
+ \if@tempswa%
+ \begin{beamerboxesrounded}[%
+ shadow=\beamer@colbox@shadow,%
+ lower=\beamer@colbox@color,%
+ upper=normal text,%
+ width=\beamer@colbox@wd]{}%
+ \box\beamer@tempbox%
+ \end{beamerboxesrounded}%
+ \else%
+ \ifdim\wd\beamer@tempbox>\textwidth%
+ \setbox\beamer@tempbox=\hbox to\textwidth{\hss\box\beamer@tempbox\hss}%
+ \fi%
+ \box\beamer@tempbox%
+ \fi%
+ \else%
+ \if@tempswa\setbox\beamer@tempbox=\hbox{%
+ \usebeamercolor{\beamer@colbox@color}%
+ \hskip-\beamer@colbox@colseps%
+ \fboxsep=\z@\colorbox{bg}{%
+ \hskip\beamer@colbox@colseps%
+ \box\beamer@tempbox%
+ \hskip\beamer@colbox@colseps%
+ }%
+ \hskip-\beamer@colbox@colseps%
+ }\fi%
+ \ifdim\wd\beamer@tempbox>\textwidth%
+ \setbox\beamer@tempbox=\hbox to\textwidth{\hskip0pt minus\beamer@leftmargin\relax\box\beamer@tempbox\hskip0pt minus\beamer@leftmargin\relax}%
+ \fi%
+ \box\beamer@tempbox%
+ \fi%
+}
+
+\mode
+<article>
+{
+ \newenvironment{beamercolorbox}[2][]{}{}
+}
+
+
+%
+% Install these colors at the start of the document
+%
+
+\AtBeginDocument{
+ \usebeamercolor*{alerted text} % Define these colors
+ \usebeamercolor*{example text} % Define these colors
+ \usebeamercolor*{structure} % Define these colors
+ \usebeamercolor{normal text}
+ \color{fg}
+ \def\normalcolor{\color{normal text.fg}}
+}
+
+
+
+
+%
+% Math mode color hackery
+%
+
+\newcommand\beamer@setmathcolor{%
+ \usebeamercolor{math text inlined}%
+ \ifbeamercolorempty[fg]{math text inlined}{}{\color{fg}}}
+
+\newcommand\donotcoloroutermaths{%
+ \everymath\expandafter\expandafter\expandafter{%
+ \expandafter\donotcoloroutermaths@aux\the\everymath
+ \beamer@setmathcolor\beamer@setmathcolor\beamer@stop
+ \everymath\expandafter{\the\everymath\beamer@setmathcolor}%
+ }%
+}
+\newcommand\donotcoloroutermaths@aux{}
+\long\def\donotcoloroutermaths@aux
+ #1\beamer@setmathcolor#2\beamer@setmathcolor#3\beamer@stop{%
+ #1#2%
+ }
+
+\newcommand\beamer@setdisplaymathcolor{%
+ \usebeamercolor{math text displayed}%
+ \ifbeamercolorempty[fg]{math text displayed}{}{\color{fg}\aftergroup\ignorespaces}}%
+
+\newcommand\donotcolorouterdisplaymaths{%
+ \everydisplay\expandafter\expandafter\expandafter{%
+ \expandafter\donotcolorouterdisplaymaths@aux\the\everydisplay
+ \beamer@setdisplaymathcolor\beamer@setdisplaymathcolor\beamer@stop
+ \everydisplay\expandafter{\the\everydisplay\beamer@setdisplaymathcolor}%
+ }%
+}
+\newcommand\donotcolorouterdisplaymaths@aux{}
+\long\def\donotcolorouterdisplaymaths@aux
+ #1\beamer@setdisplaymathcolor#2\beamer@setdisplaymathcolor#3\beamer@stop{%
+ #1#2%
+ }
+
+\AtBeginDocument
+{
+ \everymath\expandafter{\the\everymath\beamer@setmathcolor}
+ \everydisplay\expandafter{\the\everydisplay\beamer@setdisplaymathcolor}
+}
+
+\AtBeginDocument{
+ % Fix $ usage in tabular:
+ \let\beamer@orig@tabular=\@tabular
+ \def\@tabular{\donotcoloroutermaths\beamer@orig@tabular}
+
+ % Fix $ usage in underline:
+ \let\beamer@orig@underline=\underline
+ \def\underline#1{{\donotcoloroutermaths\beamer@orig@underline{#1}}}
+
+ % Fix $ usage in underline:
+ \let\beamer@orig@@textsubscript=\@textsubscript
+ \def\@textsubscript#1{{\donotcoloroutermaths\beamer@orig@@textsubscript{#1}}}
+ \let\beamer@orig@@textsuperscript=\@textsuperscript
+ \def\@textsuperscript#1{{\donotcoloroutermaths\beamer@orig@@textsuperscript{#1}}}
+
+ % Fix $ usage in parbox:
+ \let\beamer@orig@pboxswture=\@pboxswtrue
+ \def\@pboxswtrue{\donotcoloroutermaths\beamer@orig@pboxswture}
+
+ % Fix $$ usage in align:
+ \let\beamer@orig@start@align=\start@align
+ \def\start@align{\donotcolorouterdisplaymaths\donotcoloroutermaths\beamer@setdisplaymathcolor\beamer@orig@start@align}
+
+ % Fix $$ usage in gather:
+ \let\beamer@orig@start@gather=\start@gather
+ \def\start@gather{\donotcolorouterdisplaymaths\donotcoloroutermaths\beamer@setdisplaymathcolor\beamer@orig@start@gather}
+
+ % Fix $$ usage in multicolumn:
+ \let\beamer@orig@start@multline=\start@multline
+ \def\start@multline{\donotcolorouterdisplaymaths\donotcoloroutermaths\beamer@setdisplaymathcolor\beamer@orig@start@multline}
+
+ % Fix $$ usage in eqnarray:
+ \let\beamer@orig@eqnarray=\eqnarray
+ \def\eqnarray{\donotcolorouterdisplaymaths\donotcoloroutermaths\beamer@setdisplaymathcolor\beamer@orig@eqnarray}
+
+ % Fix \text:
+ \let\beamer@orig@text@=\text@
+ \def\text@#1{{\ifbeamercolorempty[fg]{normal text in math text}{}{\usebeamercolor[fg]{normal text in math text}}\beamer@orig@text@{#1}}}
+}
+
+%
+% Allow mixins to survive groups:
+%
+
+\let\beamerorig@set@color=\set@color
+\let\beamerorig@reset@color=\reset@color
+
+\edef\beamer@zeropt{\the\z@}
+
+\def\beamer@current@colorhook{}
+
+\def\set@color{%
+ \edef\beamer@current@colorhook{\beamer@colorhook}%
+ \beamerorig@set@color}
+\def\reset@color{%
+ \beamer@lastskip=\lastskip%
+ \edef\beamer@lastskiptexta{\the\lastskip}%
+ \ifx\beamer@lastskiptexta\beamer@zeropt\else%
+ \ifvmode\unskip\fi%
+ \ifhmode\unskip\fi%
+ \fi%
+ \ifx\beamer@current@colorhook\beamer@colorhook%
+ \beamerorig@reset@color%
+ \else% mixin changed -> recalculate
+ \colorlet{beamer@tempcolor}{.}%
+ \applycolormixins{beamer@tempcolor}%
+ \@namelet{current@color}{\string\color@beamer@tempcolor}%
+ \beamerorig@reset@color%
+ \pgfsys@color@unstacked{beamer@tempcolor}%
+ \fi%
+ \ifx\beamer@lastskiptexta\beamer@zeropt%
+ \else%
+ \ifvmode\vskip\beamer@lastskip\fi%
+ \ifhmode\hskip\beamer@lastskip\fi%
+ \fi%
+}
+
+
+
+% compatibility:
+
+\AtBeginDocument{
+ \colorlet{structure}{structure.fg}
+ \colorlet{beamerstructure}{structure.fg}
+ \colorlet{averagebackgroundcolor}{normal text.bg}
+}
+
+\mode
+<article>
+{
+ \def\beamersetaveragebackground#1{}
+
+ \ifbeamer@articlexcolor
+ \colorlet{averagebackgroundcolor}{white}
+ \fi
+}
+
+\colorlet{alert}{red!95!black}
+\definecolor{structure}{rgb}{0.2,0.2,0.7} % dummy -- not used
+
+\colorlet{beameralert}{alert}
+\colorlet{beamerexample}{green!50!black}
+\colorlet{beamerstructure}{structure} % dummy
+
+\mode
+<article>
+{
+ \ifbeamer@articlexcolor
+ \definecolor{alert}{rgb}{1,0,0}
+
+ \colorlet{beameralert}{alert}
+ \colorlet{beamerexample}{green!50!black}
+ \colorlet{beamerstructure}{black}
+ \colorlet{structure}{beamerstructure}
+ \fi
+
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasecompatibility.sty b/macros/latex/contrib/beamer/base/beamerbasecompatibility.sty
new file mode 100644
index 0000000000..5699abe9f0
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasecompatibility.sty
@@ -0,0 +1,546 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011,2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+%
+%
+% Hyperlink fix for problem with empty test in pdfmark.def
+% Note that this is redefined again later (for overlays)
+%
+%
+\let\beamer@orighyperlink\hyperlink
+\def\hyperlink#1#2{\beamer@orighyperlink{#1}{\relax#2}}
+
+\providecommand\hyper@pagetransition{}
+\providecommand\hyper@pageduration{}
+\providecommand\hyper@pagehidden{}
+
+% The definitions that hyperref uses with natbib to give
+% links: our load order is wrong so they don't 'engage'
+\def\hyper@natanchorstart#1{%
+ \Hy@raisedlink{\hyper@anchorstart {cite.#1}}%
+}
+\def\hyper@natanchorend{\hyper@anchorend}
+\def\hyper@natlinkstart#1{%
+ \Hy@backout{#1}%
+ \hyper@linkstart{cite}{cite.#1}%
+ \def\hyper@nat@current{#1}%
+}
+\def\hyper@natlinkend{\hyper@linkend}
+
+\mode
+<all>
+{
+ % Things to be done at the beginning of the document
+ \def\beamer@lastminutepatches{}
+ \def\beamer@firstminutepatches{}
+}
+
+%
+% Fixes right before the start of the document.
+%
+\let\beamer@origdocument\document
+\def\document{%
+ \beamer@firstminutepatches
+ \endgroup
+ \AtBeginDocument{% fix spanish.ldf's meddling with < and >
+ %
+ % Fix spanish.ldf's meddling with < and >
+ %
+ \@ifundefined{deactivatequoting}{}{\deactivatequoting}%
+ % Fix meddline with enumerate items
+ \renewcommand\theenumi{\@arabic\c@enumi}%
+ \renewcommand\theenumii{\@arabic\c@enumii}%
+ \renewcommand\theenumiii{\@arabic\c@enumiii}%
+ }%
+ \AtBeginDocument{% Allow for paralist loading
+ \@ifpackageloaded{paralist}{\RequirePackage{beamerpatchparalist}}{}
+% \let\labelitemi\beamer@labelitemi
+% \let\labelitemii\beamer@labelitemii
+% \let\itemize\beamer@itemize
+% \let\list\beamer@list
+% \let\@trivlist\beamer@@trivlist
+ \catcode`<=12 \catcode`>=12 }%
+ \begingroup
+ \beamer@origdocument
+ \beamer@lastminutepatches
+ \ifbeamer@ignorenonframe
+ \expandafter\mode\expandafter*%
+ \fi}
+
+\mode
+<article>
+{
+ \let\beamer@origdocument\document
+ \def\document{%
+ \beamer@origdocument%
+ \beamer@lastminutepatches}
+
+ \g@addto@macro\beamer@lastminutepatches{%
+ \ifbeamer@articleactive
+ \else
+ \catcode`<=12 %
+ \catcode`>=12 %
+ \fi
+ }
+}
+
+\AtBeginDocument{\def\es@itemize#1#2#3#4{}}% fix spanish.ldf's with \itemize
+
+%
+% Fix for older versions of geometry
+% We used to test \ifGm@compatii,
+% but as of geometry v5.0, it is no longer provided.
+%
+\ifx\Gm@lmargin\@undefined
+ \def\Gm@lmargin{\Geom@lmargin}
+ \def\Gm@rmargin{\Geom@rmargin}
+\else
+ \geometry{includeheadfoot}
+\fi
+
+%
+% Fix deluxetabular floats
+%
+\AtBeginDocument{%
+ \def\@plano@float@#1{\begin{table}}
+ \def\end@plano@float@{\end{table}}%
+}
+
+%
+% Fix for implict=false for hyperref
+%
+\def\WriteBookmarks{0}
+\expandafter\def\csname Parent-4\endcsname{}
+\expandafter\def\csname Parent-3\endcsname{}
+\expandafter\def\csname Parent-2\endcsname{}
+\expandafter\def\csname Parent-1\endcsname{}
+\expandafter\def\csname Parent0\endcsname{}
+\expandafter\def\csname Parent1\endcsname{}
+\expandafter\def\csname Parent2\endcsname{}
+\expandafter\def\csname Parent3\endcsname{}
+\expandafter\def\csname Parent4\endcsname{}
+\def\phantomsection{}
+
+%
+% Heiko's fix for correct generation of section* and subsection* bookmarks
+%
+%\g@addto@macro\beamer@lastminutepatches{%
+% \long\def\@LongEmpty{}%
+% \newcommand*{\org@beamer@section}{}%
+% \let\org@beamer@section\beamer@section{}%
+% \let\org@writebookmark\Hy@writebookmark{}%
+% \long\def\beamer@section[#1]#2{%
+% \let\Hy@writebookmark\org@writebookmark
+% \long\def\@secname{#1}%
+% \ifx\@secname\@LongEmpty{}%
+% \def\Hy@writebookmark##1##2##3##4##5{}%
+% \fi
+% \long\def\@secname{#2}%
+% \ifx\@secname\@LongEmpty{}%
+% \def\Hy@writebookmark##1##2##3##4##5{}%
+% \fi
+% \org@beamer@section[{#1}]{#2}%
+% }%
+% \newcommand*{\org@beamer@subsection}{}%
+% \let\org@beamer@subsection\beamer@subsection{}%
+% \long\def\beamer@subsection[#1]#2{%
+% \let\Hy@writebookmark\org@writebookmark
+% \long\def\@secname{#1}%
+% \ifx\@secname\@LongEmpty{}%
+% \def\Hy@writebookmark##1##2##3##4##5{}%
+% \fi
+% \long\def\@secname{#2}%
+% \ifx\@secname\@LongEmpty{}%
+% \def\Hy@writebookmark##1##2##3##4##5{}%
+% \fi
+% \org@beamer@subsection[{#1}]{#2}%
+% }%
+%}
+
+%
+% Bugfix for old versions of pdfmark
+%
+\begingroup
+ \catcode`P=12
+ \catcode`T=12
+ \lowercase{\endgroup
+ \gdef\rem@ptetc#1.#2PT#3!{#1\ifnum#2>\z@.#2\fi}%
+}
+\def\strip@pt@and@otherjunk#1{\expandafter\rem@ptetc\the#1!}
+
+%
+% Make the effect of pdfpagetransition and duration global, not local
+%
+\define@key{Hyp}{pdfpagetransition}{\gdef\@pdfpagetransition{#1}}
+\define@key{Hyp}{pdfpageduration}{\gdef\@pdfpageduration{#1}}
+
+%
+%
+% Fix for babel
+%
+%
+\providecommand\textlatin{}
+\providecommand\theparagraph{}
+\providecommand\thesubparagraph{}
+\providecommand\listoffigures{}
+\providecommand\listoftables{}
+\providecommand\l@part{}
+\providecommand\l@chapter{}
+
+%
+% Fix for subfig
+%
+\providecommand\ext@table{}
+\providecommand\ext@figure{}
+
+%
+% Obsolete commands from old versions of beamer
+%
+\mode
+<all>
+{
+ \let\beamer@ifempty=\ifblank
+
+ \let\beamer@verb@egroup=\verb@egroup
+
+ \def\beamer@setb{\setbox0=\copy}
+ \long\def\defverb#1{%
+ \expandafter\newbox\csname @verb\string#1\endcsname%
+ \def#1{{\expandafter\beamer@setb\csname
+ @verb\string#1\endcsname\unhbox0}}%
+ \def\verb@egroup{\global\let\verb@balance@group\@empty\egroup\egroup\let\verb@egroup=\beamer@verb@egroup}
+ \expandafter\setbox\csname @verb\string#1\endcsname=\hbox\bgroup
+ \verb}
+
+ \define@key{beamerverb}{colored}[true]{\def\beamer@colorsup{}}
+ \define@key{beamerverb}{width}{\def\beamer@verbwidth{#1}}
+
+ \newcommand{\defverbatim}[2][]{%
+ \def\beamer@colorsup{\def\set@color{}\def\reset@color{}}%
+ \setkeys{beamerverb}{width=\textwidth}%
+ \setkeys{beamerverb}{#1}%
+ \expandafter\newbox\csname @verb\string#2\endcsname%
+ \def#2{{\expandafter\beamer@setb\csname @verb\string#2\endcsname%
+ \unvbox0}\color{.}}%
+ \expandafter\setbox\csname @verb\string#2\endcsname=\vbox\bgroup%
+ \beamer@colorsup%
+ \hsize=\beamer@verbwidth\textwidth=\beamer@verbwidth\linewidth=\beamer@verbwidth%
+ \vskip-\baselineskip\strut\bgroup\aftergroup\beamer@verbend%
+ \let\@next=}
+ \def\beamer@verbend{\vskip-\baselineskip\strut\egroup}
+}
+\def\tableofcontentscurrent{\tableofcontents[current]}
+\def\plainframe{\frame[plain]}%obsolete
+\def\pgfonly{\only}%obsolete
+\AtBeginDocument{\newcommand{\nameslide}{\alt{\beamer@nameslide}{\@gobble}}}%obsolete
+\newenvironment{pauses}[1][\c@beamerpauses]{\setcounter{beamerpauses}{#1}}{}%obsolete
+\def\newoverlaycommand#1#2#3{\def#1{\alt{#2}{#3}}}
+\def\newoverlayenvironment#1#2#3#4#5{\newenvironment{#1}{\begin{altenv}{#2}{#3}{#4}{#5}}{\end{altenv}}}
+\newenvironment{columnsonlytextwidth}{\begin{columns}[onlytextwidth]}{\end{columns}}
+\def\untitledsubsection{\subsection*{}}
+\def\noteitems{\note[enumerate]}
+
+
+\define@key{beamertoc}{current}[]{\beamer@toc@sectionstyle{show/shaded}\beamer@toc@subsectionstyle{show/show/shaded}}
+\define@key{beamertoc}{hidesubsections}[]{\beamer@toc@subsectionstyle{show/show/hide}}
+\define@key{beamertoc}{shadesubsections}[]{\beamer@toc@subsectionstyle{shaded}}
+
+\mode
+<all>{\def\unpause{\onslide{}}}
+
+\def\beamer@fixedline#1{%
+ {\setbox\beamer@linebox=\hbox to\textwidth{\hskip-\Gm@lmargin\hskip0.3cm{#1}\hskip-\Gm@rmargin\hskip0.3cm}%
+ \ht\beamer@linebox=2.125ex%
+ \dp\beamer@linebox=1.125ex%
+ \box\beamer@linebox}}
+\def\beamer@fixedcolouredline#1#2{%
+ \hbox{%
+ \setbox\beamer@linebox=\hbox to\textwidth{\hskip-\Gm@lmargin\hskip0.3cm{#2}\hskip-\Gm@rmargin\hskip0.3cm}%
+ \ht\beamer@linebox=2.625ex%
+ \dp\beamer@linebox=0pt%
+ \setbox\beamer@linebox=\vbox{\box\beamer@linebox\vskip1.125ex}%
+ {\color{#1}\hskip-\Gm@lmargin\vrule width\paperwidth
+ height\ht\beamer@linebox\hskip-\paperwidth\hskip\Gm@lmargin}%
+ \box\beamer@linebox}%
+ }
+\long\def\beamer@colouredline#1#2{%
+ \hbox{%
+ \setbox\beamer@linebox=\vbox{\hbox to\textwidth{\hskip-\Gm@lmargin{#2}\hskip-\Gm@rmargin}}%
+ {\color{#1}\hskip-\Gm@lmargin\vrule width\paperwidth
+ height\ht\beamer@linebox\hskip-\paperwidth\hskip\Gm@lmargin}%
+ \box\beamer@linebox}%
+ }
+\def\tinyline#1{%
+ {\tiny\setbox\beamer@linebox=\hbox to\textwidth{\hskip-\Gm@lmargin\hskip0.3cm{#1}\hskip-\Gm@rmargin\hskip0.3cm}%
+ \ht\beamer@linebox=2.06ex%
+ \dp\beamer@linebox=0pt%
+ \box\beamer@linebox%
+ \vskip1.125ex}}
+\def\tinycolouredline#1#2{%
+ \hbox{\tiny%
+ \setbox\beamer@linebox=\hbox to\textwidth{\hskip-\Gm@lmargin\hskip0.3cm{#2}\hskip-\Gm@rmargin\hskip0.3cm}%
+ \ht\beamer@linebox=2.625ex%
+ \dp\beamer@linebox=0pt%
+ \setbox\beamer@linebox=\vbox{\box\beamer@linebox\vskip1.125ex}%
+ {\color{#1}\hskip-\Gm@lmargin\vrule width\paperwidth
+ height\ht\beamer@linebox\hskip-\paperwidth\hskip\Gm@lmargin}%
+ \box\beamer@linebox}%
+ }
+\def\colouredline#1#2{%
+ \hbox{%
+ \setbox\beamer@linebox=\hbox to\textwidth{\hskip-\Gm@lmargin\hskip0.3cm{#2}\hskip-\Gm@rmargin\hskip0.3cm}%
+ \setbox\beamer@linebox=\vbox{\vskip2pt\box\beamer@linebox\vskip2pt}%
+ {\color{#1}\hskip-\Gm@lmargin\vrule width\paperwidth
+ height\ht\beamer@linebox\hskip-\paperwidth\hskip\Gm@lmargin}%
+ \box\beamer@linebox}%
+ }
+\def\beamerline#1{\hbox{\hskip-\Gm@lmargin#1\hskip-\Gm@rmargin}}
+\def\insertvrule#1#2{\hbox{\color{#2}\hskip-\Gm@lmargin\vrule width \paperwidth height #1\hskip-\Gm@rmargin}}
+
+\def\usetitlepagetemplate{\setbeamertemplate{title page}}
+\def\usepartpagetemplate{\setbeamertemplate{part page}}
+\mode
+<all>{\def\useframetitletemplate{\setbeamertemplate{frametitle}}}
+\def\useitemizeitemtemplate{\setbeamertemplate{itemize item}}
+\def\usesubitemizeitemtemplate{\setbeamertemplate{itemize subitem}}
+\def\usesubsubitemizeitemtemplate{\setbeamertemplate{itemize subsubitem}}
+\def\useenumerateitemtemplate{\setbeamertemplate{enumerate item}}
+\def\usesubenumerateitemtemplate{\setbeamertemplate{enumerate subitem}}
+\def\usesubsubenumerateitemtemplate{\setbeamertemplate{enumerate subsubitem}}
+\def\useitemizetemplate#1#2{% before and after
+ \setbeamertemplate{itemize/enumerate body begin}{#1}%
+ \setbeamertemplate{itemize/enumerate body end}{#2}}
+\def\usesubitemizetemplate#1#2{% before and after
+ \setbeamertemplate{itemize/enumerate subbody begin}{#1}%
+ \setbeamertemplate{itemize/enumerate subbody end}{#2}}
+\def\usesubsubitemizetemplate#1#2{% before and after
+ \setbeamertemplate{itemize/enumerate subsubbody begin}{#1}%
+ \setbeamertemplate{itemize/enumerate subsubbody end}{#2}}
+\def\useenumerateitemminitemplate{\setbeamertemplate{enumerate mini template}}
+\let\useenumeratetemplate=\useitemizetemplate
+\let\usesubenumeratetemplate=\usesubitemizetemplate
+\let\usesubsubenumeratetemplate=\usesubsubitemizetemplate
+\def\useleftsidebartemplate{\usesidebartemplate[left]}
+\def\userightsidebartemplate{\usesidebartemplate[right]}
+\def\useleftsidebarbackgroundtemplate{\usesidebarbackgroundtemplate[left]}
+\def\userightsidebarbackgroundtemplate{\usesidebarbackgroundtemplate[right]}
+\def\useleftsidebarcolortemplate#1{\usesidebarbackgroundtemplate[left]{#1\vrule height\paperheight
+ width\csname beamer@leftsidebar\endcsname}}
+\def\userightsidebarcolortemplate#1{\usesidebarbackgroundtemplate[right]{#1\vrule height\paperheight
+ width\csname beamer@rightsidebar\endcsname}}
+\def\useleftsidebarverticalshadingtemplate{\beamertemplatesidebarverticalshading[left]}
+\def\userightsidebarverticalshadingtemplate{\beamertemplatesidebarverticalshading[right]}
+\def\useleftsidebarhorizontalshadingtemplate{\beamertemplatesidebarhorizontalshading[left]}
+\def\userightsidebarhorizontalshadingtemplate{\beamertemplatesidebarhorizontalshading[right]}
+\def\usedescriptionitemtemplate#1#2{\setbeamertemplate{description item}{#1}\setbeamersize{description width={#2}}}
+\def\usedescriptionitemofwidthas#1{\setbeamersize{description width of={#1}}}%
+\def\usetemplatetocsection{\@ifnextchar[\@@usetemplatetocsection\@usetemplatetocsection}
+\long\def\@@usetemplatetocsection[#1]#2{
+ \@usetemplatetocsection{#2}{\begin{colormixin}{#1}#2\end{colormixin}\unskip}}
+\long\def\@usetemplatetocsection#1#2{\setbeamertemplate{section in toc}{#1}
+ \setbeamertemplate{section in toc shaded}{#2}}
+\def\usetemplatetocsubsection{\@ifnextchar[\@@usetemplatetocsubsection\@usetemplatetocsubsection}
+\long\def\@@usetemplatetocsubsection[#1]#2{
+ \@usetemplatetocsubsection{#2}{\begin{colormixin}{#1}#2\end{colormixin}\unskip}}
+\long\def\@usetemplatetocsubsection#1#2{\setbeamertemplate{subsection in toc}{#1}%
+ \setbeamertemplate{subsection in toc shaded}{#2}}
+\def\usebibitemtemplate{\setbeamertemplate{bibliography item}}
+\newcommand\usebibliographyblocktemplate[4]{%
+ \setbeamertemplate{bibliography entry author}{#1}%
+ \setbeamertemplate{bibliography entry title}{#2}%
+ \setbeamertemplate{bibliography entry location}{#3}%
+ \setbeamertemplate{bibliography entry note}{#4}}
+\def\usebuttontemplate{\setbeamertemplate{button}}
+\def\usetemplateabstract#1#2{%
+ \setbeamertemplate{abstract title}{}
+ \setbeamertemplate{abstract body begin}{#1}
+ \setbeamertemplate{abstract body end}{#2}}
+\def\usetemplateverse#1#2{\setbeamertemplate{verse begin}{#1}\setbeamertemplate{verse end}{#2}}
+\def\usetemplatenote{\setbeamertemplate{note page}}
+\def\useheadtemplate{\@ifstar{\beamer@useheads}{\beamer@usehead}}
+\def\beamer@usehead{\setbeamertemplate{headline}[text line]}
+\def\beamer@useheads{\setbeamertemplate{headline}}
+\def\addtoheadtemplate{\addtobeamertemplate{headline}}
+\def\addtofoottemplate{\addtobeamertemplate{footline}}
+\def\usefoottemplate{\@ifstar{\beamer@usefoots}{\beamer@usefoot}}
+\def\beamer@usefoot{\setbeamertemplate{footline}[text line]}
+\def\beamer@usefoots{\setbeamertemplate{footline}}
+\def\usecaptiontemplate{\setbeamertemplate{caption}}
+\def\insertblockname{\insertblocktitle}
+\long\def\usesectionheadtemplate#1#2{%
+ \setbeamertemplate{section in head/foot}{#1}%
+ \setbeamertemplate{section in head/foot shaded}{#2}}
+\long\def\usesubsectionheadtemplate#1#2{%
+ \setbeamertemplate{subsection in head/foot}{#1}%
+ \setbeamertemplate{subsection in head/foot shaded}{#2}}
+\long\def\usesectionsidetemplate#1#2{%
+ \setbeamertemplate{section in sidebar}{#1}%
+ \setbeamertemplate{section in sidebar shaded}{#2}}
+\long\def\usesubsectionsidetemplate#1#2{%
+ \setbeamertemplate{subsection in sidebar}{#1}%
+ \setbeamertemplate{subsection in sidebar shaded}{#2}}
+\newcommand\usetheoremtemplate[2]{%
+ \setbeamertemplate{theorem begin}{#1}
+ \setbeamertemplate{theorem end}{#2}}
+\newcommand\useprooftemplate[2]{
+ \setbeamertemplate{proof begin}{#1}
+ \setbeamertemplate{proof end}{#2}}
+\def\useqedsymboltemplate{\setbeamertemplate{qed symbol}}
+\newcommand{\BeispielInline}[1]{{\usebeamercolor[fg]{example text}Beispiel: \ignorespaces#1}}
+\newcommand{\ExampleInline}[1]{{\usebeamercolor[fg]{example text}\translate{Example}: \ignorespaces#1}}
+\def\usenavigationsymbolstemplate{\setbeamertemplate{navigation symbols}}
+\def\insertnavigationsymbols{\usebeamertemplate***{navigation symbols}}
+\def\beamersetaveragebackground#1{\setbeamercolor{normal text}{bg={#1}}}
+\def\useminislidetemplate#1#2#3#4#5{%
+ \setbeamertemplate{mini frame}{#1}%
+ \setbeamertemplate{mini frame in current subsection}{#2}%
+ \setbeamertemplate{mini frame in other subsection}{#3}%
+ \setbeamersize{mini frame size={#4},mini frame offset={#5}}}
+\newcommand\usesidebarbackgroundtemplate[2][left]{\setbeamertemplate{sidebar canvas #1}{#2}}
+\def\usefootnotetemplate{\setbeamertemplate{footnote}}
+
+
+\def\beamertemplatedefaulttoc{\setbeamertemplate{sections/subsections in toc}[default]}
+\def\beamertemplatenumberedsubsectiontoc{\setbeamertemplate{sections/subsections in toc}[subsections numbered]}
+\def\beamertemplatenumberedsectiontoc{\setbeamertemplate{sections/subsections in toc}[sections numbered]}
+\def\beamertemplatenumberedcirclesectiontoc{\setbeamertemplate{sections/subsections in toc}[circle]}
+\def\beamertemplatenumberedsquaresectiontoc{\setbeamertemplate{sections/subsections in toc}[square]}
+\def\beamertemplatenumberedballsectiontoc{\setbeamertemplate{sections/subsections in toc}[ball]}
+\def\beamertemplateballtoc{\setbeamertemplate{sections/subsections in toc}[ball unnumbered]}
+\def\beamertemplatedotitem{\setbeamertemplate{itemize items}[circle]}
+\def\beamertemplatetriangleitem{\setbeamertemplate{itemize items}[default]}
+\def\beamertemplatesquareitem{\setbeamertemplate{itemize items}[square]}
+\def\beamertemplateballitem{\setbeamertemplate{items}[ball]}
+\def\beamertemplateenumeratealpha{\setbeamertemplate{enumerate items}[default]}
+\def\beamertemplateenumeratecircle{\setbeamertemplate{enumerate items}[circle]}
+\def\beamertemplateenumeratesquare{\setbeamertemplate{enumerate items}[square]}
+\def\beamertemplatelargepartpage{\setbeamertemplate{part page}[default]}
+\def\beamertemplateboldpartpage{\setbeamerfont{part}{size=\large}%
+ \setbeamerfont{part name}{series=\bfseries}%
+ \setbeamertemplate{part page}[default]}
+\def\beamertemplatelargetitlepage{\setbeamertemplate{title page}[default]}
+\def\beamertemplateboldtitlepage{\setbeamerfont{title}{size=\large,series=\bfseries}%
+ \setbeamertemplate{title page}[default]}
+\def\beamertemplateboldcenterframetitle{\setbeamerfont{frametitle}{size={},series=\bfseries}
+ \setbeamerfont{framesubtitle}{series=\bfseries}
+ \setbeamertemplate{frametitle}[default][center]}
+\def\beamertemplateboldframetitle{\setbeamerfont{frametitle}{series=\bfseries}
+ \setbeamerfont{framesubtitle}{series=\bfseries}
+ \setbeamertemplate{frametitle}[default]}
+\def\beamertemplatelargeframetitle{\setbeamertemplate{frametitle}[default]}
+\def\beamertemplateboldblocks{\setbeamerfont{block title}{size={},series=\bfseries}\setbeamertemplate{blocks}[default]}
+\def\beamertemplatelargeblocks{\setbeamertemplate{blocks}[default]}
+\def\beamertemplateshadowblocks{\setbeamertemplate{blocks}[rounded][shadow=true]}
+\def\beamertemplateplaintoc{\beamertemplatedefaulttoc}
+\def\beamertemplatecircleminiframeinverted{\beamertemplatecircleminiframe%
+ \usebeamercolor{mini frames}{use=structure,fg=white,bg=structure.bg}}
+\def\beamertemplatesphereminiframe{\beamertemplatecircleminiframe}
+\def\beamertemplatesphereminiframeinverted{\beamertemplatecircleminiframeinverted}
+\def\beamertemplatelightsectionheads{\usesectionheadtemplate{\hfill\insertsectionhead}{\hfill\color{fg!50!bg}\insertsectionhead}
+ \usesubsectionheadtemplate{\insertsubsectionhead}{\color{fg!50!bg}\insertsubsectionhead}}
+\let\beamertemplatedarksectionheads=\beamertemplatedefaultsectionheads
+\def\usecontinuationtemplate{\setbeamertemplate{frametitle continuation}}
+\def\beamertemplatecontinuationroman{\setbeamertemplate{frametitle continuation}[default]}
+\def\beamertemplatecontinuationtext{\setbeamertemplate{frametitle continuation}[from second]}
+\def\beamertemplateroundedbuttons{\setbeamertemplate{button}[default]}
+\def\beamertemplateoutlinebuttons{\setbeamercolor*{button border}{parent=structure,use=structure,fg=structure.fg!50!bg}}
+\def\beamertemplatesolidbuttons{\setbeamercolor*{button}{use=structure,bg=structure.fg!50!bg,fg=white}
+ \setbeamercolor*{button border}{use=structure,fg=structure.fg!50!bg}}
+\def\usetemplatequotation#1#2{
+ \setbeamertemplate{quotation begin}{#1}
+ \setbeamertemplate{quote begin}{#1}
+ \setbeamertemplate{quotation end}{#2}
+ \setbeamertemplate{quote end}{#2}}
+\def\beamertemplateheadempty{\setbeamertemplate{headline}{}}
+\def\beamertemplatefootempty{\setbeamertemplate{footline}{}}
+\def\beamertemplatefootpagenumber{\setbeamertemplate{footline}[page number]}
+\def\beamertemplatecaptionownline{\setbeamertemplate{caption}[caption name own line]}
+\def\beamertemplatecaptionnwithnumber{\setbeamertemplate{caption}[numbered]}
+\def\beamertemplateroundedblocks{\setbeamertemplate{blocks}[rounded]}
+\def\beamertemplatetheoremsunnumbered{\setbeamertemplate{theorems}[default]}
+\def\beamertemplatetheoremsnumbered{\setbeamertemplate{theorems}[numbered]}
+\def\beamertemplatetheoremsamslike{\setbeamertemplate{theorems}[ams style]}
+\def\beamertemplatetheoremssimple{\setbeamertemplate{theorems}[normal font]}
+\def\beamertemplatenavigationsymbolsempty{\setbeamertemplate{navigation symbols}{}}
+\def\beamertemplatenavigationsymbolsframe{\setbeamertemplate{navigation symbols}[only frame symbol]}
+\def\beamertemplatenavigationsymbolsvertical{\setbeamertemplate{navigation symbols}[vertical]}
+\def\beamertemplatenavigationsymbolshorizontal{\setbeamertemplate{navigation symbols}[horizontal]}
+\def\beamertemplatedefaultsectionheads{%
+ \setbeamertemplate{section in head/foot}[default]
+ \setbeamertemplate{subsection in head/foot}[default]
+ \setbeamertemplate{section in head/foot shaded}[default]
+ \setbeamertemplate{subsection in head/foot shaded}[default]
+}
+\def\beamertemplatecircleminiframe{\setbeamertemplate{mini frames}[default]}
+\def\beamertemplateticksminiframe{\setbeamertemplate{mini frames}[tick]}
+\def\beamertemplateboxminiframe{\setbeamertemplate{mini frames}[box]}
+\newcommand\usesidebartemplate[3][left]{%
+ \setbeamersize{sidebar width #1=#2}
+ \setbeamertemplate{sidebar #1}{#3}
+}
+\newcommand\beamertemplatesidebarcolor[2][left]{\setbeamercolor{sidebar #1}{bg={#2}}}
+\def\beamertemplaterightsidebarlogonavigation{\setbeamertemplate{sidebar right}[default]
+ \setbeamersize{sidebar width right=0pt}}
+\newcommand{\beamertemplatesidebarverticalshading}[3][left]{%
+ \setbeamertemplate{sidebar canvas #1}[vertical shading][top={#3},bottom={#2}]}
+\newcommand{\beamertemplatesidebarhorizontalshading}[3][left]{%
+ \setbeamertemplate{sidebar canvas #1}[horizontal shading][right={#3},left={#2}]}
+\define@key{beamer@margin}{descriptionwidth}{%
+ \beamer@descriptionwidth=#1\relax%
+}
+\define@key{beamer@margin}{descriptionwidthof}{%
+ \setbox\beamer@tempbox=\hbox{\def\insertdescriptionitem{#1}\usebeamertemplate**{description item}}%
+ \beamer@descriptionwidth=\wd\beamer@tempbox\relax%
+}
+
+\mode
+<all>
+{
+ \def\beamersetleftmargin#1{\setbeamersize{text margin left=#1}}
+ \def\beamersetrightmargin#1{\setbeamersize{text margin right=#1}}
+ \long\def\useframetemplate#1#2{\setbeamertemplate{frame begin}{#1}\setbeamertemplate{frame end}{#2}}
+ \def\usebackgroundtemplate{\setbeamertemplate{background canvas}}
+ \def\beamertemplatesolidbackgroundcolor#1{\setbeamercolor{normal text}{bg={#1}}}
+ \long\def\useblocktemplate#1#2{%
+ \setbeamertemplate{block begin}{#1}%
+ \setbeamertemplate{block end}{#2}}
+ \long\def\usealertblocktemplate#1#2{%
+ \setbeamertemplate{block alerted begin}{#1}%
+ \setbeamertemplate{block alerted end}{#2}}
+ \long\def\useexampleblocktemplate#1#2{%
+ \setbeamertemplate{block example begin}{#1}%
+ \setbeamertemplate{block example end}{#2}}
+ \newcommand{\beamertemplategridbackground}[1][]{\setbeamertemplate{background}[grid][step={#1}]}
+ \newcommand{\beamertemplateshadingbackground}[2]{\setbeamertemplate{background canvas}[vertical shading][bottom={#1},top={#2}]}
+ \newcommand\usealerttemplate[2]{\setbeamertemplate{alerted text begin}{#1}\setbeamertemplate{alerted text end}{#2}}
+ \newcommand\usestructuretemplate[2]{\setbeamertemplate{structure begin}{#1}\setbeamertemplate{structure end}{#2}}
+ \newcommand{\beamertemplatebookbibitems}{\setbeamertemplate{bibliography item}[book]}
+ \newcommand{\beamertemplatearticlebibitems}{\setbeamertemplate{bibliography item}[article]}
+ \newcommand{\beamertemplatetextbibitems}{\setbeamertemplate{bibliography item}[text]}
+ \newcommand{\beamertemplatearrowbibitems}{\setbeamertemplate{bibliography item}[triangle]}
+ \newcommand{\beamertemplateonlinebibitems}{\setbeamertemplate{bibliography item}[online]}
+
+ \def\beamertemplatetransparentcovereddynamic{\setbeamercovered{highly dynamic}}
+ \def\beamertemplatetransparentcovereddynamicmedium{\setbeamercovered{dynamic}}
+ \def\beamertemplatetransparentcovered{\setbeamercovered{transparent}}
+ \def\beamertemplatetransparentcoveredmedium{\setbeamercovered{transparent=10}}
+ \def\beamertemplatetransparentcoveredhigh{\setbeamercovered{transparent=5}}
+ \def\beamertemplatetransparentcoveredhighest{\setbeamercovered{transparent=2}}
+ \def\beamersetuncovermixins#1#2{\setbeamercovered{still covered={#1},again covered={#2}}}
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasedecode.sty b/macros/latex/contrib/beamer/base/beamerbasedecode.sty
new file mode 100644
index 0000000000..02456ff1c2
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasedecode.sty
@@ -0,0 +1,300 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+% To track which slide we are on in a frame
+\newcount\beamer@slideinframe
+\newcount\beamer@minimum
+
+% Indicate whether another slide needs to be processed in this frame
+\newif\ifbeamer@anotherslide
+\newif\ifbeamer@localanotherslide
+
+% Used to know that beamerpauses needs to be used in substitution
+\newif\ifbeamer@plusencountered
+
+% The main decoding macro tolerates a range of active characters, which
+% require a little set up. In particular, as an active space is allowed
+% all of the lines here have to be terminated with "%". The two-step
+% setup for \beamer@@@temp makes sure everything is expanded and removes
+% all of the spaces at this stage.
+\newbox\beamer@decode@box
+\begingroup
+ \catcode`\|=\active
+ \catcode`\:=\active
+ \catcode`\,=\active
+ \catcode`\.=\active
+ \catcode`\+=\active
+ \catcode`\-=\active
+ \catcode`\(=\active
+ \catcode`\)=\active
+ \catcode`\ =\active
+\xdef\beamer@masterdecode#1{%
+\noexpand\beamer@localanotherslidefalse%
+\setbox\beamer@decode@box=\hbox{%
+\unexpanded{%
+\ifnum\catcode`\|=\active\edef|{\string|}\fi%
+\ifnum\catcode`\:=\active\edef:{\string:}\fi%
+\ifnum\catcode`\,=\active\edef,{\string,}\fi%
+\ifnum\catcode`\.=\active\edef.{\string.}\fi%
+\ifnum\catcode`\+=\active\edef+{\string+}\fi%
+\ifnum\catcode`\-=\active\edef-{\string-}\fi%
+\ifnum\catcode`\(=\active\edef({\string(}\fi%
+\ifnum\catcode`\)=\active\edef){\string)}\fi%
+\ifnum\catcode`\ =\active\edef {\string }\fi}%
+\edef\noexpand\beamer@@@temp{#1\string|stop\string:0\string|}%
+\edef\noexpand\beamer@@@temp{\unexpanded{\expandafter\zap@space\beamer@@@temp}%
+\space\noexpand\@empty}%
+\unexpanded{\expandafter\beamer@decode\beamer@@@temp%
+\ifbeamer@localanotherslide\aftergroup\beamer@localanotherslidetrue\fi}%
+}%
+}%
+\endgroup
+
+% Sets dowhat to doif, if \beamer@slideinframe is in the specified
+% interval. Example: 5-7,-3,9,11,13- would mean pages
+% 1,2,3,5,6,7,9,11,13,14,15,16,...
+%
+% As a side effect, \@another is called whenever the there is a number
+% in the list that is larger than the current serialnumber
+
+\def\beamer@allsign{*}
+
+% The main decoding routine starts by initialising the starting a search
+% for everything up to "|": to allow for the simple case of overlays in
+% slides for presentations there is a need to insert "beamer:". Notice
+% that \beamer@@decodefind may be called multiple times, hence being set
+% up as an auxiliary.
+\def\beamer@decode{%
+ \beamer@plusencounteredfalse
+ \global\beamer@minimum=10000\relax
+ \gdef\beamer@decaction{}%
+ \global\let\beamer@decodefound=\beamer@allsign
+ \beamer@@decodefind}
+\def\beamer@@decodefind#1|{\beamer@@@decodefind#1:|}
+\def\beamer@@@decodefind#1:#2|{%
+ \ifblank{#2}%
+ {\beamer@decodefind beamer:#1:}%
+ {\beamer@decodefind #1:#2}}
+
+% A list of possible overlay modes
+\def\beamer@default{default}
+\def\beamer@articlemode{article}
+\def\beamer@secondmode{second}
+\def\beamer@beamermode{beamer}
+\def\beamer@presentationmode{presentation}
+\def\beamer@modeall{all}
+\def\beamer@ovmodestop{stop}
+
+% The main parsing function for each sub-part starts by splitting at any
+% "@" and then checking the spec for various cases: keywords, "+", ".".
+% After that, there is some cleanup to do before potentially looping.
+\def\beamer@decodefind#1:#2:{%
+ \def\beamer@ovmode{#1}%
+ \beamer@decodeaction{#2}%
+ \expandafter\futurelet\expandafter\next\expandafter
+ \beamer@checkcat\beamer@spec:%
+ \expandafter\beamer@decodeplus\beamer@spec+:%
+ \expandafter\beamer@decodedot\beamer@spec.:%
+ \ifx\beamer@ovmode\beamer@ovmodestop
+ \expandafter\beamer@@decode\beamer@decodefound,!%
+ \let\beamer@next=\relax
+ \ifbeamer@plusencountered\stepcounter{beamerpauses}\fi
+ \else
+ \ifx\beamer@ovmode\beamer@currentmode
+ \beamer@@decodefound
+ \else
+ \ifx\beamer@ovmode\beamer@modeall
+ \beamer@@decodefound
+ \else
+ \ifx\beamer@ovmode\beamer@presentationmode
+ \ifx\beamer@currentmode\beamer@articlemode
+ \else
+ \beamer@@decodefound
+ \fi
+ \else
+ \ifx\beamer@ovmode\beamer@beamermode
+ \ifx\beamer@currentmode\beamer@secondmode
+ \beamer@@decodefound
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \let\beamer@next=\beamer@@decodefind
+ \fi
+ \beamer@next}
+
+% The aim here is to find any "<action>@" spec, and to split it off the
+% action from the rest. That uses a pretty stand search approach.
+\edef\beamer@decodeaction#1{%
+ \noexpand\beamer@@decodeaction#1\string @\string @:}
+\begingroup
+\edef\beamer@@@temp{%
+ \endgroup
+ \def\noexpand\beamer@@decodeaction##1\string @##2\string @##3:{%
+ \noexpand\ifblank{##2}%
+ {%
+ \def\noexpand\beamer@action{default}%
+ \def\noexpand\beamer@spec{##1}%
+ }%
+ {%
+ \def\noexpand\beamer@action{##1}%
+ \def\noexpand\beamer@spec{##2}%
+ }%
+ }%
+}%
+\beamer@@@temp
+
+% Search for the case where the specification is a keyword, and if it
+% is set the overlay mode and spec.
+\def\beamer@checkcat#1:{%
+ \ifcat\next a%
+ \gdef\beamer@ovmode{#1}%
+ \ifx\beamer@decodefound\beamer@allsign
+ \gdef\beamer@decodefound{0}%
+ \fi
+ \def\beamer@spec{1-}%
+ \fi}
+
+\def\beamer@decodeplus{%
+ \def\beamer@spec{}\beamer@@decodeplus}
+\def\beamer@@decodeplus#1+#2:{%
+ \edef\beamer@spec{\beamer@spec#1}% everything up to a +
+ \ifblank{#2}{}
+ {% ok, check if followed by number:
+ \beamer@plusencounteredtrue
+ \beamer@@@decodeplus#2:}}
+\def\beamer@@@decodeplus{%
+ \kernel@ifnextchar(%)
+ {\beamer@relnumber}{\beamer@relnumber(0)}}
+\def\beamer@relnumber(#1){%
+ \beamer@plusencounteredtrue
+ \@tempcnta=\numexpr #1 + \value{beamerpauses}\relax%
+ \ifnum\@tempcnta<0\@tempcnta=0\fi%
+ \edef\beamer@spec
+ {\beamer@spec\number\@tempcnta}%
+ \beamer@@decodeplus}
+
+\def\beamer@decodedot{%
+ \def\beamer@spec{}\beamer@@decodedot}
+\def\beamer@@decodedot#1.#2:{%
+ \edef\beamer@spec{\beamer@spec#1}% everything up to first .
+ \ifblank{#2}{}{\beamer@@@decodedot#2:}}
+\def\beamer@@@decodedot{%
+ \kernel@ifnextchar(%)
+ {\beamer@relnumberdot}{\beamer@relnumberdot(0)}}
+\def\beamer@relnumberdot(#1){%
+ \@tempcnta=\numexpr #1 + \value{beamerpauses} -1\relax%
+ \ifnum\@tempcnta<0\@tempcnta=0\fi%
+ \edef\beamer@spec
+ {\beamer@spec\number\@tempcnta}%
+ \beamer@@decodedot}
+
+\def\beamer@@decodefound{%
+ \ifx\beamer@action\beamer@default
+ \xdef\beamer@decodefound{\beamer@spec}%
+ \else
+ \xdef\beamer@decaction{\beamer@decaction{\beamer@action<\beamer@spec>}}%
+ \fi}
+\def\beamer@currentaction{default}
+
+\def\beamer@doifnotinframe{}
+
+% A set of macros to deal with what can form the basis of an action
+% spec once we know the basic shape: the key concepts are whether there
+% are more slides to do and how many there are in total.
+\def\beamer@@decode{%
+ \kernel@ifnextchar!%
+ {\beamer@decodeend}%
+ {%
+ \kernel@ifnextchar*%
+ {\beamer@decodeall}{%
+ \kernel@ifnextchar-%
+ {\beamer@decodeuntil}%
+ {\beamer@decodenumber}}}}
+\def\beamer@decodeend!{}
+\def\beamer@decodeall*,{%
+ \ifnum1<\beamer@minimum
+ \global\beamer@minimum=1\relax
+ \fi
+ \ifnum1>\beamer@slideinframe
+ \global\beamer@anotherslidetrue\beamer@localanotherslidetrue
+ \fi
+ \gdef\beamer@doifnotinframe{\beamer@doifinframe}%
+ \beamer@@decode}
+\def\beamer@decodeuntil-#1,{%
+ \ifnum1<\beamer@minimum
+ \global\beamer@minimum=1\relax
+ \fi
+ \ifnum#1>\beamer@slideinframe
+ \global\beamer@anotherslidetrue\beamer@localanotherslidetrue
+ \fi
+ \ifnum\beamer@slideinframe>#1\relax
+ \else
+ \gdef\beamer@doifnotinframe{\beamer@doifinframe}%
+ \fi
+ \beamer@@decode}
+\def\beamer@decodenumber#1{%
+ \kernel@ifnextchar,%
+ {\beamer@decodeone{#1}}%
+ {\kernel@ifnextchar-%
+ {\beamer@decodenumberto{#1}}%
+ {\beamer@decodegobble{#1}}}}
+\def\beamer@decodegobble#1#2{%
+ \beamer@decodenumber{#1#2}}
+\def\beamer@decodenumberto#1-{%
+ \kernel@ifnextchar,%
+ {\beamer@decodeto{#1}}%
+ {\beamer@decodebetween{#1}}}
+\def\beamer@decodeto#1,{%
+ \ifnum#1<\beamer@minimum
+ \global\beamer@minimum=#1\relax
+ \fi
+ \ifnum#1>\beamer@slideinframe
+ \global\beamer@anotherslidetrue\beamer@localanotherslidetrue
+ \fi
+ \ifnum#1>\beamer@slideinframe
+ \else
+ \gdef\beamer@doifnotinframe{\beamer@doifinframe}%
+ \fi
+ \beamer@@decode}
+\def\beamer@decodebetween#1#2,{%
+ \ifnum#1<\beamer@minimum
+ \global\beamer@minimum=#1\relax
+ \fi
+ \ifnum#1>\beamer@slideinframe
+ \global\beamer@anotherslidetrue\beamer@localanotherslidetrue
+ \fi
+ \ifnum#2>\beamer@slideinframe
+ \global\beamer@anotherslidetrue\beamer@localanotherslidetrue
+ \fi
+ \ifnum#1>\beamer@slideinframe
+ \else
+ \ifnum#2<\beamer@slideinframe
+ \else
+ \gdef\beamer@doifnotinframe{\beamer@doifinframe}%
+ \fi
+ \fi
+ \beamer@@decode}
+\def\beamer@decodeone#1,{%
+ \ifnum#1<\beamer@minimum
+ \global\beamer@minimum=#1\relax
+ \fi
+ \ifnum#1>\beamer@slideinframe
+ \global\beamer@anotherslidetrue\beamer@localanotherslidetrue
+ \fi
+ \ifnum#1=\beamer@slideinframe
+ \gdef\beamer@doifnotinframe{\beamer@doifinframe}%
+ \fi
+ \beamer@@decode}
+
+\def\beamer@donow{\beamer@doifnotinframe}
diff --git a/macros/latex/contrib/beamer/base/beamerbasefont.sty b/macros/latex/contrib/beamer/base/beamerbasefont.sty
new file mode 100644
index 0000000000..1a611e3f92
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasefont.sty
@@ -0,0 +1,335 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+% For \blacktriangleright; not explicitly required by article, but can cause
+% weird situations if users find that symbols works in presentation, but not
+% in article mode.
+% However, some classes or font packages clash with amssymb, so allow to
+% disable auto-loading optionally.
+\ifbeamer@amssymb
+ \RequirePackage{amssymb}
+\fi
+
+\mode
+<presentation>
+
+%
+% Font theme stuff
+%
+\define@key{beamerthm}{size}
+ {\expandafter\def\csname beamer@thmfsize@\beamer@temp\endcsname{#1}}
+\define@key{beamerthm}{size*}
+ {\expandafter\def\csname beamer@thmfsize@\beamer@temp\endcsname{\fontsize#1}}
+\define@key{beamerthm}{shape}
+ {\expandafter\def\csname beamer@thmfshape@\beamer@temp\endcsname{#1}}
+\define@key{beamerthm}{shape*}
+ {\expandafter\def\csname beamer@thmfshape@\beamer@temp\endcsname{\fontshape{#1}}}
+\define@key{beamerthm}{series}
+ {\expandafter\def\csname beamer@thmfseries@\beamer@temp\endcsname{#1}}
+\define@key{beamerthm}{series*}
+ {\expandafter\def\csname beamer@thmfseries@\beamer@temp\endcsname{\fontseries{#1}}}
+\define@key{beamerthm}{family}
+ {\expandafter\def\csname beamer@thmffamily@\beamer@temp\endcsname{#1}}
+\define@key{beamerthm}{family*}
+ {\expandafter\def\csname beamer@thmffamily@\beamer@temp\endcsname{\fontfamily{#1}}}
+\define@key{beamerthm}{parent}
+ {\expandafter\def\csname beamer@thmfinherits@\beamer@temp\endcsname{%
+ \@for\@temp:={#1}\do{\expandafter\usebeamerfont\expandafter{\@temp}}}}
+
+\newrobustcmd*\setbeamerfont{%
+ \@ifstar{\beamer@clearbeamerfont}{\beamer@setbeamerfont}}
+
+\newcommand\beamer@clearbeamerfont[2]{%
+ \def\beamer@temp{#1}%
+ \setkeys{beamerthm}{size={},shape={},series={},family={},parent={}}%
+ \setkeys{beamerthm}{#2}%
+}
+\newcommand\beamer@setbeamerfont[2]{%
+ \def\beamer@temp{#1}%
+ \setkeys{beamerthm}{#2}%
+}
+
+\newrobustcmd*\usebeamerfont{%
+ \@ifstar{\reset@font\beamer@usebeamerfont}{\beamer@usebeamerfont}}
+
+\newcommand\beamer@usebeamerfont[1]{%
+ \csname beamer@thmfinherits@#1\endcsname
+ \csname beamer@thmfsize@#1\endcsname
+ \csname beamer@thmfshape@#1\endcsname
+ \csname beamer@thmfseries@#1\endcsname
+ \csname beamer@thmffamily@#1\endcsname
+ \selectfont}
+
+
+%
+% computer modern font size stuff - redefinition for oversized fonts.
+% Not used if other packages like lmodern kick in.
+%
+\def\EC@family#1#2#3#4#5{%
+ \DeclareFontShape{#1}{#2}{#3}{#4}%
+ {<3><4>#50500<5><6><7><8><9><10><10.95><12><14.4>%
+ <17.28><20.74><24.88><29.86><35.83>genb*#5<42.99><51.59>#53583}{}}
+\EC@family{T1}{cmr}{m}{n}{ecrm}
+\EC@family{T1}{cmr}{m}{sl}{ecsl}
+\EC@family{T1}{cmr}{m}{it}{ecti}
+\EC@family{T1}{cmr}{m}{sc}{eccc}
+\EC@family{T1}{cmr}{bx}{n}{ecbx}
+\EC@family{T1}{cmr}{b}{n}{ecrb}
+\EC@family{T1}{cmr}{bx}{it}{ecbi}
+\EC@family{T1}{cmr}{bx}{sl}{ecbl}
+\EC@family{T1}{cmr}{bx}{sc}{ecxc}
+\EC@family{T1}{cmr}{m}{ui}{ecui}
+\DeclareFontShape{OT1}{cmr}{m}{n}%
+ {<3><4>cmr5<5><6><7><8><9><10><12>gen*cmr%
+ <10.95>cmr10%
+ <14.4>cmr12%
+ <17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmr17}{}
+\DeclareFontShape{OT1}{cmr}{m}{sl}%
+ {<3><4><5><6><7>cmsl8%
+ <8><9>gen*cmsl%
+ <10><10.95>cmsl10%
+ <12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmsl12%
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{it}%
+ {<3><4><5><6><7>cmti7%
+ <8>cmti8%
+ <9>cmti9%
+ <10><10.95>cmti10%
+ <12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmti12%
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{sc}%
+ {<3><4><5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmcsc10%
+ }{}
+\DeclareFontShape{OT1}{cmr}{m}{ui}
+ {<3><4><5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmu10%
+ }{}
+\DeclareFontShape{OT1}{cmr}{b}{n}
+ {<3><4><5><6><7><8><9><10><10.95><12>%
+ <14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmb10%
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{n}
+ {<3><4>cmbx5<5><6><7><8><9>gen*cmbx%
+ <10><10.95>cmbx10%
+ <12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmbx12%
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{sl}
+ {<3><4><5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmbxsl10%
+ }{}
+\DeclareFontShape{OT1}{cmr}{bx}{it}
+ {<3><4><5><6><7><8><9>%
+ <10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmbxti10%
+ }{}
+\DeclareFontFamily{T1}{cmss}{}
+\EC@family{T1}{cmss}{m}{n}{ecss}
+\EC@family{T1}{cmss}{m}{sl}{ecsi}
+\EC@family{T1}{cmss}{m}{it}{ecsi}
+\EC@family{T1}{cmss}{bx}{n}{ecsx}
+\EC@family{T1}{cmss}{bx}{it}{ecso}
+\EC@family{T1}{cmss}{bx}{sl}{ecso}
+\DeclareFontShape{T1}{cmss}{sbc}{n}{%
+ <3><4><5><6><7><8><9><10><10.95><12><14.4><17.28>%
+ <20.74><24.88><29.86><35.83><42.99><51.59>%
+ ecssdc10
+ }{}
+\DeclareFontShape{OT1}{cmss}{m}{n}
+ {%
+ <3><4><5><6><7><8>cmss8%
+ <9>cmss9%
+ <10><10.95>cmss10%
+ <12><14.4>cmss12%
+ <17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmss17%
+ }{}
+\DeclareFontShape{OT1}{cmss}{m}{sl}
+ {%
+ <3><4><5><6><7><8>cmssi8<9>cmssi9%
+ <10><10.95>cmssi10%
+ <12><14.4>cmssi12%
+ <17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmssi17%
+ }{}
+\DeclareFontShape{OT1}{cmss}{m}{it}
+ {%
+ <3><4><5><6><7><8>cmssi8<9>cmssi9%
+ <10><10.95>cmssi10%
+ <12><14.4>cmssi12%
+ <17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmssi17%
+ }{}
+\DeclareFontShape{OT1}{cmss}{sbc}{n}
+ {%
+ <3><4><5><6><7><8><9>cmssdc10%
+ <10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmssdc10%
+ }{}
+\DeclareFontShape{OT1}{cmss}{bx}{n}
+ {%
+ <3><4><5><6><7><8><9>cmssbx10%
+ <10><10.95><12><14.4><17.28><20.74><24.88><29.86><35.83><42.99><51.59>cmssbx10%
+ }{}
+
+
+\newcommand*{\beamer@font@check}{%
+ \def\beamer@cmr{cmr}%
+ \edef\beamer@fmdef{\mathfamilydefault}%
+ % supress for standard cm
+ \ifx\beamer@fmdef\beamer@cmr\beamer@suppressreplacementstrue\fi
+ % supress for unicode math fonts
+ \@ifpackageloaded{unicode-math}{\beamer@suppressreplacementstrue}{}
+ % supress for mathtime serif and math minion serif
+ \@ifpackageloaded{arevmath}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{hvmath}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{kpfonts}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{lucidabr}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{lmodern}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{lucimatx}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{mathastext}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{mathpmnt}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{mathpple}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{mathtime}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{mtpro}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+ \@ifpackageloaded{mtpro2}{\ifbeamer@sansmath\else\beamer@suppressreplacementstrue\fi}{}%
+}
+\AtBeginDocument{%
+\beamer@font@check
+\ifbeamer@suppressreplacements\else
+ \ifbeamer@sansmath
+ \SetSymbolFont{operators}{normal}{OT1}{cmss}{\mddefault}{n}%
+ \ifx\mv@bold\@undefined
+ \else
+ \SetSymbolFont{operators}{bold}{OT1}{cmss}{\bfdefault}{n}%
+ \fi
+ \@ifpackageloaded{lmodern}
+ {%
+ \SetSymbolFont{operators}{normal}{OT1}{\sfdefault}{\mddefault}{n}%
+ \ifx\mv@bold\@undefined
+ \else
+ \SetSymbolFont{operators}{bold}{OT1}{\sfdefault}{\bfdefault}{n}%
+ \fi
+ }%
+ {}%
+ \fi
+ \DeclareSymbolFont{numbers}{\encodingdefault}{\mathfamilydefault}{\mddefault}{n}%
+ \DeclareSymbolFont{pureletters}{\encodingdefault}{\mathfamilydefault}{\mddefault}{it}%
+ \SetMathAlphabet{\mathrm}{normal}{\encodingdefault}{\rmdefault}{\mddefault}{n}%
+ \DeclareMathAlphabet{\mathbf}{\encodingdefault}{\mathfamilydefault}{\bfdefault}{n}%
+ \DeclareMathAlphabet{\mathsf}{\encodingdefault}{\sfdefault}{\mddefault}{n}%
+ \DeclareMathAlphabet{\mathit}{\encodingdefault}{\mathfamilydefault}{\mddefault}{it}%
+ \DeclareMathAlphabet{\mathtt}{\encodingdefault}{\ttdefault}{\mddefault}{n}%
+ \ifx\mv@bold\@undefined\else
+ \SetSymbolFont{numbers}{bold}{\encodingdefault}{\mathfamilydefault}{\bfdefault}{n}%
+ \SetSymbolFont{pureletters}{bold}{\encodingdefault}{\mathfamilydefault}{\bfdefault}{it}%
+ \SetMathAlphabet{\mathrm}{bold}{\encodingdefault}{\rmdefault}{\bfdefault}{n}%
+ \SetMathAlphabet{\mathbf}{bold}{\encodingdefault}{\mathfamilydefault}{\bfdefault}{n}%
+ \SetMathAlphabet{\mathsf}{bold}{\encodingdefault}{\sfdefault}{\bfdefault}{n}%
+ \SetMathAlphabet{\mathit}{bold}{\encodingdefault}{\mathfamilydefault}{\bfdefault}{it}%
+ \SetMathAlphabet{\mathtt}{bold}{\encodingdefault}{\ttdefault}{\bfdefault}{n}%
+ \fi
+%
+ \DeclareMathSymbol{0}\mathalpha{numbers}{"30}%
+ \DeclareMathSymbol{1}\mathalpha{numbers}{"31}%
+ \DeclareMathSymbol{2}\mathalpha{numbers}{"32}%
+ \DeclareMathSymbol{3}\mathalpha{numbers}{"33}%
+ \DeclareMathSymbol{4}\mathalpha{numbers}{"34}%
+ \DeclareMathSymbol{5}\mathalpha{numbers}{"35}%
+ \DeclareMathSymbol{6}\mathalpha{numbers}{"36}%
+ \DeclareMathSymbol{7}\mathalpha{numbers}{"37}%
+ \DeclareMathSymbol{8}\mathalpha{numbers}{"38}%
+ \DeclareMathSymbol{9}\mathalpha{numbers}{"39}%
+%
+ \DeclareMathSymbol{A}\mathalpha{pureletters}{"41}%
+ \DeclareMathSymbol{B}\mathalpha{pureletters}{"42}%
+ \DeclareMathSymbol{C}\mathalpha{pureletters}{"43}%
+ \DeclareMathSymbol{D}\mathalpha{pureletters}{"44}%
+ \DeclareMathSymbol{E}\mathalpha{pureletters}{"45}%
+ \DeclareMathSymbol{F}\mathalpha{pureletters}{"46}%
+ \DeclareMathSymbol{G}\mathalpha{pureletters}{"47}%
+ \DeclareMathSymbol{H}\mathalpha{pureletters}{"48}%
+ \DeclareMathSymbol{I}\mathalpha{pureletters}{"49}%
+ \DeclareMathSymbol{J}\mathalpha{pureletters}{"4A}%
+ \DeclareMathSymbol{K}\mathalpha{pureletters}{"4B}%
+ \DeclareMathSymbol{L}\mathalpha{pureletters}{"4C}%
+ \DeclareMathSymbol{M}\mathalpha{pureletters}{"4D}%
+ \DeclareMathSymbol{N}\mathalpha{pureletters}{"4E}%
+ \DeclareMathSymbol{O}\mathalpha{pureletters}{"4F}%
+ \DeclareMathSymbol{P}\mathalpha{pureletters}{"50}%
+ \DeclareMathSymbol{Q}\mathalpha{pureletters}{"51}%
+ \DeclareMathSymbol{R}\mathalpha{pureletters}{"52}%
+ \DeclareMathSymbol{S}\mathalpha{pureletters}{"53}%
+ \DeclareMathSymbol{T}\mathalpha{pureletters}{"54}%
+ \DeclareMathSymbol{U}\mathalpha{pureletters}{"55}%
+ \DeclareMathSymbol{V}\mathalpha{pureletters}{"56}%
+ \DeclareMathSymbol{W}\mathalpha{pureletters}{"57}%
+ \DeclareMathSymbol{X}\mathalpha{pureletters}{"58}%
+ \DeclareMathSymbol{Y}\mathalpha{pureletters}{"59}%
+ \DeclareMathSymbol{Z}\mathalpha{pureletters}{"5A}%
+%
+ \DeclareMathSymbol{a}\mathalpha{pureletters}{"61}%
+ \DeclareMathSymbol{b}\mathalpha{pureletters}{"62}%
+ \DeclareMathSymbol{c}\mathalpha{pureletters}{"63}%
+ \DeclareMathSymbol{d}\mathalpha{pureletters}{"64}%
+ \DeclareMathSymbol{e}\mathalpha{pureletters}{"65}%
+ \DeclareMathSymbol{f}\mathalpha{pureletters}{"66}%
+ \DeclareMathSymbol{g}\mathalpha{pureletters}{"67}%
+ \DeclareMathSymbol{h}\mathalpha{pureletters}{"68}%
+ \DeclareMathSymbol{i}\mathalpha{pureletters}{"69}%
+ \DeclareMathSymbol{j}\mathalpha{pureletters}{"6A}%
+ \DeclareMathSymbol{k}\mathalpha{pureletters}{"6B}%
+ \DeclareMathSymbol{l}\mathalpha{pureletters}{"6C}%
+ \DeclareMathSymbol{m}\mathalpha{pureletters}{"6D}%
+ \DeclareMathSymbol{n}\mathalpha{pureletters}{"6E}%
+ \DeclareMathSymbol{o}\mathalpha{pureletters}{"6F}%
+ \DeclareMathSymbol{p}\mathalpha{pureletters}{"70}%
+ \DeclareMathSymbol{q}\mathalpha{pureletters}{"71}%
+ \DeclareMathSymbol{r}\mathalpha{pureletters}{"72}%
+ \DeclareMathSymbol{s}\mathalpha{pureletters}{"73}%
+ \DeclareMathSymbol{t}\mathalpha{pureletters}{"74}%
+ \DeclareMathSymbol{u}\mathalpha{pureletters}{"75}%
+ \DeclareMathSymbol{v}\mathalpha{pureletters}{"76}%
+ \DeclareMathSymbol{w}\mathalpha{pureletters}{"77}%
+ \DeclareMathSymbol{x}\mathalpha{pureletters}{"78}%
+ \DeclareMathSymbol{y}\mathalpha{pureletters}{"79}%
+ \DeclareMathSymbol{z}\mathalpha{pureletters}{"7A}%
+\fi
+}
+
+\ifbeamer@sansmath
+ \IfFileExists{sansmathaccent.sty}
+ {\RequirePackage{sansmathaccent}}
+ {}
+\fi
+
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
+
+\newrobustcmd*\Tiny{\@setfontsize\Tiny{4}{5}}
+\newrobustcmd*\TINY{\@setfontsize\Tiny{3}{4}}
+
+\mode
+<article>
+{
+ \let\Tiny=\tiny
+ \let\TINY=\tiny
+
+ \newrobustcmd*\setbeamerfont{\@ifstar{\@gobbletwo}{\@gobbletwo}}
+ \newrobustcmd*\usebeamerfont{\@ifstar{\beamer@optgog}{\beamer@optgog}}
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseframe.sty b/macros/latex/contrib/beamer/base/beamerbaseframe.sty
new file mode 100644
index 0000000000..5da51c7ef2
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseframe.sty
@@ -0,0 +1,809 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+\newbox\beamer@framebox
+\newbox\beamer@frametitlebox
+\newbox\beamer@zoombox
+\newcount\beamer@zoomcount
+\newcount\beamer@zoomframecount
+\newdimen\beamer@frametextheight
+
+\mode
+<all>
+{
+ \newif\ifbeamer@inframe
+ \beamer@inframefalse
+% Save!
+ \let\framelatex=\frame
+ \def\@iframepicbox(#1,#2)[#3]#4{%
+ \framelatex{\@imakepicbox(#1,#2)[#3]{#4}}%
+ }%
+}
+
+\def\refcounter#1{\protected@edef\@currentlabel%
+ {\csname p@#1\endcsname\csname the#1\endcsname}}%
+
+
+%
+% Slide Definitions
+%
+
+\newcounter{subsectionslide}[subsection]
+\renewcommand\thesubsectionslide{\@arabic\c@subsectionslide}
+\def\beamer@entrycode{}
+\def\beamer@exitcode{}
+
+\def\beamer@setuplinks{%
+ {%
+ \def\sectionentry##1##2##3##4##5{}%
+ \def\slideentry##1##2##3##4##5##6{}%
+ \dohead%
+ }%
+}
+
+\newenvironment{beamer@frameslide}{%
+ \ifbeamer@autobreak\else%
+ \ifx\beamer@againname\@empty%
+ {\let\@elt\beamer@restorecounter\beamer@overlaycounterresets}%
+ \else%
+ {\let\@elt\beamer@labelrestorecounter\beamer@overlaycounterresets}%
+ \fi%
+ \fi%
+ \global\c@beamerpauses=1\relax%
+ \expandafter\ifblank\expandafter{\beamer@framestartpage}{%
+ \stepcounter{subsectionslide}%
+ \xdef\beamer@framestartpage{\the\c@page}% only first time
+ }{\clearpage\beamer@notesactions}% cleanup from previous slide
+ \hypersetup{pdfpagetransition=R}%
+ \hypersetup{pdfpageduration=}%
+ \@ifundefined{thispdfpagelabel}{}{%
+ \thispdfpagelabel{\insertframenumber}}%
+ \xdef\beamer@frameendpage{\the\c@page}% every time
+ \xdef\beamer@slidenumber{\the\numexpr\c@page-\beamer@framestartpage+1\relax}%
+ \xdef\beamer@overlaynumber{\the\beamer@slideinframe}%
+ \beamer@setuplinks%
+ \beamer@displaybreak%
+ \global\setbox\beamer@zoombox=\box\voidb@x%
+ \def\beamer@zoomer{}%
+ \beamer@slidehaszoomfalse%
+ \gdef\insertframetitle{}%
+ \gdef\insertframesubtitle{}%
+ \gdef\beamer@frametitle{}%
+ \gdef\beamer@shortframetitle{}%
+ \gdef\beamer@framesubtitle{}%
+ \let\beamer@startcomment=\beamer@startcommentinframe%
+ % Start slide:
+ \beamer@framenotesbegin%
+ \global\setbox\beamer@framebox=\vbox\bgroup%
+ \beamer@inframetrue%
+ \let\frame=\framelatex% inside frames, use LaTeX's \frame command
+ \begin{beamer@framepauses}%
+ \refcounter{framenumber}%use frame number for \label
+ \ifbeamer@shrink%
+ \hsize=\beamer@shrinkfactorinv\hsize%
+ \textwidth=\beamer@shrinkfactorinv\textwidth%
+ \linewidth=\beamer@shrinkfactorinv\linewidth%
+ \fi%
+ % Insert labels if necessary:
+ \ifx\beamer@againname\@empty\else%
+ \nointerlineskip\vbox to0pt{\vss%
+ \label<\the\beamer@slideinframe>{\beamer@againname<\the\beamer@slideinframe>}%
+ \ifnum\beamer@slideinframe=1\relax%
+ \label<1>{\beamer@againname}%
+ \fi%
+ }\nointerlineskip%
+ \fi%
+ \ifx\beamer@framehypertargets\@empty\else%
+ \nointerlineskip\vbox to0pt{\vss%
+ \beamer@framehypertargets%
+ \global\let\beamer@framehypertargets\@empty%
+ }\nointerlineskip%
+ \fi%
+ \vskip-\parskip\vbox{}%
+ \ifbeamer@plainframe\nointerlineskip\fi%
+ \beamer@checkframetitle}%
+ {\par
+ \end{beamer@framepauses}%
+ \egroup%
+ \ifx\beamer@frametitle\@empty%
+ \setbox\beamer@frametitlebox=\box\voidb@x%
+ \else%
+ \setbox\beamer@frametitlebox=\vbox{%
+ \vbox{}%
+ {\parskip0pt\usebeamertemplate***{frametitle}\vskip0.25em}%
+ }%
+ \fi%
+ \ifbeamer@plainframe%
+ \beamer@frametextheight=\paperheight%
+ \else%
+ \beamer@frametextheight=\textheight%
+ \fi%
+ \advance\beamer@frametextheight by-\ht\beamer@frametitlebox%
+ \advance\beamer@frametextheight by-\dp\beamer@frametitlebox%
+ \advance\beamer@frametextheight by-\beamer@frametopskip%
+ \ifbeamer@shrink%
+ \beamer@shrinkframebox%
+ \fi%
+ \ifx\beamer@zoomer\@empty
+ \setbox\beamer@framebox=\vbox{%
+ \nobreak\vbox{}\nobreak\par\nobreak\beamer@entrycode\nobreak%
+ \nointerlineskip\unvbox\beamer@frametitlebox%
+ \nobreak%
+ \ifbeamer@autobreak%
+ \vskip\beamer@frametopskipautobreak%
+ \else%
+ \vskip\beamer@frametopskip%
+ \fi%
+ \nobreak%
+ \nointerlineskip\box\beamer@zoombox\nointerlineskip%
+ \nobreak%
+ \ifbeamer@slidehaszoom\box\beamer@framebox\else\unvbox\beamer@framebox\fi%
+ % bottom skip is added in autobreakframebox
+ }%
+ \beamer@autobreakframebox%
+ \else%
+ \beamer@zoomer%
+ \fi%
+ \beamer@undolabels%
+ \beamer@framenotesend%
+ \box\beamer@framebox}
+
+
+\mode
+<all>
+{
+ \def\beamer@checkframetitle{\@ifnextchar\bgroup\beamer@inlineframetitle{}}
+ \def\beamer@inlineframetitle#1{%
+ \@ifnextchar\bgroup{\frametitle{#1}\framesubtitle}{\frametitle{#1}\relax}%
+ }
+}
+
+
+
+
+
+%
+% Resetting counters
+%
+\def\resetcounteronoverlays#1{%
+ \@cons\beamer@overlaycounterresets{{c@#1}}%
+}
+
+\def\resetcountonoverlays#1{%
+ \@cons\beamer@overlaycounterresets{{#1}}%
+}
+
+\def\beamer@overlaycounterresets{}
+
+\resetcounteronoverlays{equation}
+\resetcounteronoverlays{parentequation}
+\resetcounteronoverlays{footnote}
+\resetcounteronoverlays{mpfootnote}
+\resetcounteronoverlays{figure}
+\resetcounteronoverlays{table}
+\resetcountonoverlays{beamer@zoomframecount}
+\resetcounteronoverlays{ExNo}
+\resetcounteronoverlays{SubExNo}
+\resetcounteronoverlays{SubSubExNo}
+
+\def\beamer@savecounter#1{%
+ \@ifundefined{#1}{}%
+ {\expandafter\xdef\csname saved@#1\endcsname%
+ {\expandafter\the\csname #1\endcsname}}%
+}
+\def\beamer@restorecounter#1{%
+ \@ifundefined{#1}{}%
+ {\edef\temp{\csname saved@#1\endcsname}%
+ \expandafter\global\csname #1\endcsname=\temp}%
+}
+
+\def\beamer@labelsavecounter#1{%
+ \@ifundefined{#1}{}%
+ {\expandafter\xdef\csname saved@\beamer@againname @#1\endcsname%
+ {\expandafter\the\csname #1\endcsname}}%
+}
+\def\beamer@labelrestorecounter#1{%
+ \@ifundefined{#1}{}%
+ {\edef\temp{\csname saved@\beamer@againname @#1\endcsname}%
+ \expandafter\global\csname #1\endcsname=\temp}%
+}
+
+
+
+%
+% Skips
+%
+\newskip\beamer@frametopskip
+\newskip\beamer@framebottomskip
+\newskip\beamer@frametopskipautobreak
+\newskip\beamer@framebottomskipautobreak
+
+
+%
+% Keys
+%
+\define@key{beamerframe}{label}{\def\beamer@againname{#1}%
+ {\let\@elt\beamer@labelsavecounter\beamer@overlaycounterresets}%
+}
+\define@key{beamerframe}{relabel}{\def\beamer@againname{#1}%
+ \def\beamer@undolabels{{\let\@elt\beamer@restorecounter\beamer@overlaycounterresets}}%
+}
+\define@key{beamerframe}{plain}[true]{%
+ \beamer@plainframetrue%
+ \def\beamer@frametemplate{\beamer@frametemplate@plain}}
+\define@key{beamerframe}{containsverbatim}[true]{\csname beamer@containsverbatim#1\endcsname}
+\define@key{beamerframe}{fragile}[true]{%
+ \beamer@containsverbatimfalse%
+ \beamer@isfragilefalse%
+ \csname beamer@fragile#1\endcsname%
+}
+\def\beamer@fragilefalse{}
+\def\beamer@fragiletrue{\beamer@isfragiletrue}
+\def\beamer@fragilesingleslide{\beamer@containsverbatimtrue}
+\define@key{beamerframe}{c}[true]{% centered
+ \beamer@frametopskip=0pt plus 1fill\relax%
+ \beamer@framebottomskip=0pt plus 1.5fill\relax%
+ \beamer@frametopskipautobreak=0pt plus .4\paperheight\relax%
+ \beamer@framebottomskipautobreak=0pt plus .6\paperheight\relax%
+}
+\define@key{beamerframe}{t}[true]{% top
+ \beamer@frametopskip=.2cm plus .5\paperheight\relax%
+ \beamer@framebottomskip=0pt plus 1fill\relax%
+ \beamer@frametopskipautobreak=\beamer@frametopskip\relax%
+ \beamer@framebottomskipautobreak=\beamer@framebottomskip\relax%
+}
+\define@key{beamerframe}{b}[true]{% bottom
+ \beamer@frametopskip=0pt plus 1fill\relax%
+ \beamer@framebottomskip=0pt\relax%
+ \beamer@frametopskipautobreak=\beamer@frametopskip\relax%
+ \beamer@framebottomskipautobreak=\beamer@framebottomskip\relax%
+}
+
+\newif\ifbeamer@noframenumbering
+
+\define@key{beamerframe}{noframenumbering}[true]{\beamer@noframenumberingtrue}
+
+\define@key{beamerframe}{environment}{\def\beamer@frameenvironmentsubst{#1}}
+
+\define@key{beamerframe}{typeset second}[true]{\csname beamer@dosecondmode#1\endcsname}
+
+\newif\ifbeamer@containsverbatim
+\newif\ifbeamer@isfragile
+\newif\ifbeamer@autobreak
+\newif\ifbeamer@shrink
+\newif\ifbeamer@plainframe
+\newif\ifbeamer@slidehaszoom
+
+\let\beamer@firstlineitemizeunskip\relax
+
+
+
+%
+% The frame environment (a trifle ugly...)
+%
+
+% Copyright notice: the following code is adapted from code from the
+% amsmath package.
+
+\newtoks\beamer@envbody
+\def\beamer@frameenv{%
+ \def\beamer@process@envbody{\endgroup%
+ \expandafter\expandafter\expandafter\beamer@framecommand\expandafter\beamer@frameoptions\expandafter{\the\beamer@envbody}}%
+ \global\beamer@envbody{}\def\beamer@begin@stack{b}%
+ \begingroup
+ \let\frame\beamer@collect@@body
+ \def\beamer@process@envbody{\frame}%
+ \beamer@process@envbody%
+}
+
+% Normally not executed; only in containsverbatim context:
+\def\endframe{\egroup\begingroup\def\@currenvir{frame}}
+
+\long\def\beamer@push@begins#1\begin#2{\ifx\end#2\else b\expandafter\beamer@push@begins\fi}
+\long\def\beamer@collect@@body#1\end#2{%
+ \edef\beamer@begin@stack{\beamer@push@begins#1\begin\end \expandafter\@gobble\beamer@begin@stack}%
+ \ifx\@empty\beamer@begin@stack
+ \global\beamer@envbody\expandafter{\the\beamer@envbody#1}%
+ \def\reserved@a{#2}
+ \ifx\reserved@a\beamer@frametext%
+ \endgroup%
+ \let\@next=\beamer@process@envbody % A little tricky! Note the grouping
+ \@checkend{#2}%
+ \else%
+ % ok, just expand it, presumably it will generate the desired \end{frame}
+ \let\@next=\beamer@process@expander%
+ \fi
+ \else
+ \global\beamer@envbody\expandafter{\the\beamer@envbody#1\end{#2}}%
+ \let\@next=\beamer@process@envbody%
+ \fi
+ \@next
+}
+
+\def\beamer@process@expander{%
+ \def\beamer@begin@stack{b}%
+ \expandafter\expandafter\expandafter\beamer@collect@@body\csname end\reserved@a\endcsname\endgroup}
+
+
+\mode
+<all>
+{\def\beamer@frametext{frame}}
+
+\def\frame{%
+ \ifx\@currenvir\beamer@frametext%
+ \gdef\beamer@frameoptions{}%
+ \let\beamer@next=\beamer@copewithframeenv%
+ \else%
+ \let\beamer@next=\beamer@framecommand%
+ \fi%
+ \beamer@next}
+
+\def\beamer@copewithframeenv{%
+ \@ifnextchar<%
+ {\beamer@@frameenvspec}%
+ {%
+ \@ifnextchar[%
+ {\beamer@@frameenvopt}%
+ {\expandafter\beamer@checkforverbatim\beamer@frameoptions containsverbatim\relax}}%
+}
+\def\beamer@@frameenvspec<#1>{%
+ \expandafter\gdef\expandafter\beamer@frameoptions\expandafter{\beamer@frameoptions<#1>}%
+ \beamer@copewithframeenv}
+\def\beamer@@frameenvopt[#1]{%
+ \expandafter\gdef\expandafter\beamer@frameoptions\expandafter{\beamer@frameoptions[#1]}%
+ \beamer@copewithframeenv}
+
+\def\beamer@checkforverbatim#1containsverbatim#2\relax{%
+ \ifblank{#2}%
+ {\beamer@checkforfragile#1fragile\relax}
+ {% contains verbatim
+ \endgroup% end environment
+ \expandafter\beamer@framecommand\beamer@frameoptions\bgroup}%
+}
+\def\beamer@checkforfragile#1fragile#2\relax{%
+ \ifblank{#2}%
+ {\beamer@frameenv}% normal frame
+ {% contains verbatim
+ \endgroup% end environment
+ \expandafter\beamer@framecommand\beamer@frameoptions\bgroup}%
+}
+
+
+% Check for old version:
+
+\def\beamer@framecommand{%
+ \edef\beamer@defaultospec{\beamer@gdefaultospec}%
+ \@ifnextchar<\beamer@frame\beamer@checkoldframe}
+\def\beamer@checkoldframe{\@ifnextchar[\beamer@@checkoldframe{\beamer@frame<*>}}
+\def\beamer@@checkoldframe[{\@ifnextchar<{\beamer@frame<*>[}{\beamer@@@checkoldframe[}}
+\def\beamer@@@checkoldframe[#1#2]{%
+ \let\beamer@next=\beamer@newframesyntax%
+ \ifcat#11% a number-like first letter in argument
+ \let\beamer@next=\beamer@oldframesyntax%
+ \else%
+ \beamer@checkforcolon#2:.%
+ \fi%
+ \beamer@next{#1#2}}
+\def\beamer@checkforcolon#1:#2.{%
+ \ifblank{#2}{}{\let\beamer@next=\beamer@oldframesyntax}}
+\def\beamer@newframesyntax#1{\beamer@@@frame<*>[#1]}
+\def\beamer@oldframesyntax#1{\beamer@@@frame<#1>[]}
+
+\def\beamer@framedefaultospec<#1>[#2]{%
+ \def\beamer@defaultospec{#2}%
+ \@ifnextchar[{\beamer@@@@frame<#1>}{\beamer@@@@frame<#1>[]}}
+
+\newdimen\framewidth
+\def\beamer@frame<#1>{
+ \@ifnextchar[{\beamer@@@frame<#1>}{\beamer@@@frame<#1>[]}}
+\def\beamer@@@frame<#1>[{\@ifnextchar<{\beamer@framedefaultospec<#1>[}{\beamer@@@@frame<#1>[}}
+\def\beamer@@@@frame<#1>[#2]{%
+ \framewidth\textwidth
+ \beamer@savemode%
+ \gdef\beamer@mode{\mode<all>}%
+ \def\beamer@frametemplate{}%
+ \def\beamer@againname{}%
+ \def\beamer@undolabels{}%
+ \def\beamer@cramped{}%
+ \def\beamer@displaybreak{}%
+ \setbox\beamer@footins=\box\voidb@x%
+ \beamer@autobreakcount=0\relax%
+ \beamer@autobreaklastheight=16000pt%
+ \beamer@zoomcount=0\relax%
+ \beamer@noframenumberingfalse%
+ \beamer@containsverbatimfalse%
+ \beamer@isfragilefalse%
+ \beamer@autobreakfalse%
+ \beamer@shrinkfalse%
+ \beamer@plainframefalse%
+ \global\advance\beamer@zoomframecount by1\relax%
+ \csname beamer@dosecondmode\beamer@defaultdosecondmode\endcsname%
+ \ifbeamer@centered\setkeys{beamerframe}{c}\else\setkeys{beamerframe}{t}\fi%
+ \setkeys{beamerframe}{environment=frame}%
+ \setkeys{beamerframe}{#2}%
+ \beamer@frametemplate%
+ \ifbeamer@noframenumbering%
+ \ifbeamer@isfragile%Fragile frames will be processed twice
+ \stepcounter{framenumber}%
+ \fi%
+ \else%
+ \stepcounter{framenumber}%do not set \label here - it interferes with AtBegin*
+ \fi%
+ {\let\@elt\beamer@savecounter\beamer@overlaycounterresets}
+ \gdef\beamer@framestartpage{}%
+ \gdef\beamer@whichframes{#1}%
+ \ifx\beamer@framerestriction\@undefined\else% restriction stuff
+ \expandafter\beamer@checkifinlist\beamer@framerestriction\relax%
+ \fi%
+ \ifbeamer@inlecture%
+ \else%
+ \gdef\beamer@whichframes{all:0}%
+ \fi%
+ \ifx\beamer@againname\@empty%
+ \beamer@slideinframe=0\relax%
+ \beamer@anotherslidefalse%
+ \beamer@masterdecode{\beamer@whichframes}%
+ \ifbeamer@anotherslide%
+ \let\beamer@howtotreatframe\beamer@doseveralframes%
+ \ifbeamer@containsverbatim%
+ \let\beamer@howtotreatframe\beamer@dosingleframe%
+ \fi%
+ \ifbeamer@autobreak%
+ \let\beamer@howtotreatframe\beamer@autobreakframe%
+ \fi%
+ \ifbeamer@isfragile%
+ \let\beamer@howtotreatframe\beamer@doexternalframe%
+ \fi%
+ \else% no slides in frame
+ \let\beamer@howtotreatframe\beamer@donoframe%
+ \fi%
+ \else% again mode
+ \let\beamer@howtotreatframe\beamer@doseveralframes%
+ \ifbeamer@isfragile%
+ \let\beamer@howtotreatframe\beamer@doexternalframe%
+ \fi%
+ \ifbeamer@containsverbatim
+ \let\beamer@howtotreatframe\beamer@dosingleframe
+ \fi
+ \fi%
+ \beamer@howtotreatframe}
+\def\gobble@onslide{%
+ \@ifstar{\gobble@onslide@aux}{%
+ \@ifnextchar+{\expandafter\gobble@onslide@aux\@gobble}%
+ {\gobble@onslide@aux}%
+ }%
+}
+\def\gobble@onslide@aux{%
+ \@ifnextchar<%>
+ \gobble@onslide@@aux
+ \@firstofone
+}
+\def\gobble@onslide@@aux<#1>{\@firstofone}
+\def\beamer@donoframe{%
+ \beamer@slideinframe=1\relax%
+ \global\c@beamerpauses=1\relax%
+ \setbox\beamer@tempbox\vbox\bgroup%
+ \beamer@inframetrue%
+ \beamer@framenotesbegin%
+ \leavevmode%
+ \def\pause{}%
+ \let\onslide\gobble@onslide
+ \afterassignment\beamer@checknoslide\let\beamer@next}
+\def\beamer@checknoslide{%
+ \ifcat\bgroup\noexpand\beamer@next%
+ \let\beamer@do\relax%
+ \aftergroup\beamer@reseteecodes%
+ \else%
+ \let\beamer@do\beamer@noframesingletoken%
+ \fi%
+ \beamer@do}
+\def\beamer@noframesingletoken{\beamer@next\egroup\beamer@reseteecodes}
+
+\long\def\beamer@doseveralframes#1{%
+ \ifx\beamer@againname\@empty\else%
+ % Again stuff
+ \expandafter \gdef\csname beamer@again@\beamer@againname\endcsname{{#1}}%
+ \fi%
+ \beamer@slideinframe=1\relax%
+ \loop%
+ \beamer@anotherslidefalse%
+ \gdef\beamer@doifnotinframe{}%
+ \def\beamer@doifinframe{\begin{beamer@frameslide}%
+ #1%
+ \end{beamer@frameslide}}%
+ \beamer@masterdecode{\beamer@whichframes}%
+ \beamer@donow%
+ \ifbeamer@twoscreenstext%
+ \beamer@dosecondscreennow{#1}% two screen stuff
+ \fi%
+ \ifbeamer@anotherslide
+ \advance\beamer@slideinframe by 1\relax
+ \repeat%
+ \beamer@writeslidentry%
+ \beamer@reseteecodes}
+
+\def\beamer@dosingleframe{%
+ \beamer@slideinframe=1\relax%
+ \begin{beamer@frameslide}\relax%
+ \bgroup\aftergroup\beamer@endslide\afterassignment\beamer@checkslide\let\beamer@next}
+\def\beamer@checkslide{%
+ \ifcat\bgroup\noexpand\beamer@next%
+ \let\beamer@do\beamer@checkframetitle%
+ \else\let\beamer@do\beamer@singletoken\fi%
+ \beamer@do}
+\def\beamer@endslide{\end{beamer@frameslide}\beamer@writeslidentry\beamer@reseteecodes}
+\def\beamer@singletoken{\beamer@next\egroup}
+
+\def\beamer@doexternalframe{%
+ \edef\beamer@verbfilename{\jobname\ifx\beamer@againname\@empty\else.\insertframenumber\fi.vrb}% .vrb for `verbatim'
+ \beamer@setupstoppers{\beamer@frameenvironmentsubst}%
+ \immediate\openout\beamer@verbatimfileout=\beamer@verbfilename%
+ \expandafter\beamer@checktitleverbatim\@gobble}
+\def\beamer@checktitleverbatim{\@ifnextchar\bgroup{\beamer@verbatim@frametitle}{\beamer@verbatimreadframe}}
+\def\beamer@verbatim@frametitle#1{%
+ \@ifnextchar\bgroup{\beamer@verbatim@framesubtitle{#1}}
+ {%
+ \@temptokena{#1}%
+ \edef\@tempa{\string\frametitle\string{\the\@temptokena\string}}%
+ \@temptokena\expandafter{\@tempa}%
+ \immediate\write\beamer@verbatimfileout{\the\@temptokena}%
+ \beamer@verbatimreadframe
+ }%
+}
+\def\beamer@verbatim@framesubtitle#1#2{\beamer@verbatimreadframe\frametitle{#1}\framesubtitle{#2}}
+% will return to following command with frame contents written to \beamer@verbfilename
+\def\beamer@afterexternalframe{%
+ \ifx\beamer@frameenvironmentsubst\beamer@frametext%
+ \else%
+ \immediate\write\beamer@verbatimfileout{\noexpand\beamerclosesubstitutedenvironement{\beamer@frameenvironmentsubst}}%
+ \fi%
+ \immediate\closeout\beamer@verbatimfileout%
+ \expandafter\beamer@doframeinput\beamer@frameoptions\relax}
+
+\def\beamer@doframeinput{\@ifnextchar<{\beamer@frameinput}{\beamer@frameinput<*>}}
+\def\beamer@frameinput<#1>{\@ifnextchar[{\beamer@@frameinput<#1>}{\beamer@@frameinput<#1>[]}}
+\def\beamer@@frameinput<#1>[{\@ifnextchar<{\beamer@@@@frameinput<#1>[}%
+ {\edef\beamer@temp{\noexpand\beamer@@@frameinput<#1>[\beamer@defaultospec][}%
+ \beamer@temp}}
+\def\beamer@@@@frameinput<#1>[#2]{\@ifnextchar[{\beamer@@@frameinput<#1>[{#2}]}{\beamer@@@frameinput<#1>[{#2}][]}}
+\def\beamer@@@frameinput<#1>[#2][#3]{%
+ \global\advance\c@framenumber by-1\relax%
+ \edef\beamer@temp{\noexpand\frame<#1>[#2][{#3,fragile=false}]%
+ {\begingroup\noexpand\input{\beamer@verbfilename}\endgroup}}%
+ \beamer@temp%
+ \ifx\beamer@frameenvironmentsubst\beamer@frametext%
+ \else%
+ \expandafter\endgroup%
+ \fi%
+ \beamer@reseteecodes}
+
+\def\beamerclosesubstitutedenvironement#1{
+ \let\end\beamer@specialend%
+ \let\endframe\relax%
+ \csname end#1\endcsname}
+
+\def\beamer@writeslidentry{%
+ \expandafter\ifblank\expandafter{\beamer@framestartpage}{}% does not happen normally
+ {%else
+ \addtocontents{nav}%
+ {\protect\headcommand{%
+ \protect\slideentry{\the\c@section}{\the\c@subsection}{\the\c@subsectionslide}%
+ {\beamer@framestartpage/\beamer@frameendpage}{\lastsubsection}{\the\c@part}}}%
+ \addtocontents{nav}%
+ {\protect\headcommand{%
+ \protect\beamer@framepages{\beamer@framestartpage}{\beamer@frameendpage}}}%
+ \clearpage\beamer@notesactions%
+ }%
+}
+\def\beamer@reseteecodes{\gdef\beamer@entrycode{}\gdef\beamer@exitcode{}%
+ \beamer@slideinframe=1\relax\beamer@resumemode}
+
+\let\beamer@origend\end
+\def\beamer@specialend#1{%
+ \def\beamer@temp{#1}%
+ \ifx\beamer@temp\beamer@frametext%
+ \def\beamer@next{}%
+ \else%
+ \def\beamer@next{\expandafter\beamer@origend\expandafter{\beamer@temp}%
+ \let\end\beamer@specialend%
+ \let\endframe\relax%
+ }
+ \fi%
+ \beamer@next}
+
+
+
+%
+% \includeonlyframes
+%
+
+\def\beamer@checkifinlist#1,#2\relax{%
+ \def\beamer@temp{#1}%
+ \ifx\beamer@temp\beamer@againname\else
+ \def\beamer@temp{#2}%
+ \ifx\beamer@temp\@empty
+ \gdef\beamer@whichframes{all:0}%
+ \else%
+ \beamer@checkifinlist#2\relax%
+ \fi%
+ \fi%
+}
+
+\def\includeonlyframes#1{\def\beamer@framerestriction{#1,}}
+
+
+
+%
+% Frames in article mode
+%
+
+\mode
+<article>
+{
+ \def\endframe{\egroup}
+
+ \def\frame{\@ifnextchar<\beamer@frame{\beamer@frame<*>}}
+ \def\beamer@frame<#1>{\@ifnextchar[{\beamer@@frame<#1>}{\beamer@@frame<#1>[]}}
+ \def\beamer@@frame<#1>[{\@ifnextchar<{\beamer@framedefaultospec<#1>[}{\beamer@@@@frame<#1>[}}
+ \def\beamer@framedefaultospec<#1>[#2]{%
+ \@ifnextchar[{\beamer@@@@frame<#1>}{\beamer@@@@frame<#1>[]}}
+ \long\def\beamer@@@@frame<#1>[#2]{%
+ \global\let\insertframetitle=\@empty%
+ \global\let\insertframesubtitle=\@empty%
+ \beamer@slideinframe=1\relax%
+ \refstepcounter{framenumber}%
+ \beamer@slideinframe=0\relax%
+ \beamer@anotherslidefalse%
+ \beamer@masterdecode{#1}%
+ \ifbeamer@anotherslide%
+ \let\beamer@howtotreatframe\beamer@dosingleframe%
+ \else% no slides in frame
+ \let\beamer@howtotreatframe\beamer@donoframe%
+ \fi%
+ \beamer@slideinframe=1\relax%
+ \beamer@howtotreatframe}
+
+ \long\def\beamer@donoframe{%
+ \setbox\beamer@tempbox\vbox\bgroup%
+ \beamer@inframetrue%
+ \let\frame=\framelatex%
+ \def\@parmoderr{\let\@currbox\@tempboxa}% A trick here to gobble floats
+ \usebeamertemplate{frame begin}%
+ \bgroup\aftergroup\beamer@endframe%
+ \beamer@article@startframe}%
+ \def\beamer@dosingleframe{%
+ \bgroup%
+ \beamer@inframetrue%
+ \let\frame=\framelatex
+ \usebeamertemplate{frame begin}%
+ \bgroup\aftergroup\beamer@endframe%
+ \beamer@article@startframe}%
+ \def\beamer@endframe{%
+ \usebeamertemplate{frame end}\egroup}
+
+ \def\beamer@article@startframe{%
+ \ifx\@currenvir\beamer@frametext%
+ \let\beamer@next=\beamer@checkframetitle%
+ \else%
+ \let\beamer@next=\beamer@article@framecmd%
+ \fi%
+ \beamer@next}%
+
+ \def\beamer@article@framecmd{%
+ \afterassignment\beamer@checkframetitle
+ \let\beamer@next=}
+
+ \providecommand\includeonlyframes[1]{}% no effect
+}
+
+
+\mode
+<all>
+{
+ \beamer@slideinframe=1\relax%
+}
+
+
+
+%
+% Frame counter
+%
+\mode
+<all>
+{
+ \newcounter{framenumber}
+ \def\insertframenumber{\@arabic\c@framenumber}
+ \def\insertslidenumber{\beamer@slidenumber}
+ \def\insertoverlaynumber{\beamer@overlaynumber}
+}
+
+
+%
+% Pagebreak command
+%
+\mode
+<all>
+{
+ \renewcommand<>{\pagebreak}[1][4]{\only#2{\beameroriginal\pagebreak[{#1}]}}
+ \renewcommand<>{\nopagebreak}[1][4]{\only#2{\beameroriginal\nopagebreak[{#1}]}}
+ \def\framebreak{\pagebreak<presentation>}
+ \def\noframebreak{\nopagebreak<presentation>}
+}
+
+
+%
+% Linebreak command
+%
+\renewcommand<>{\\}{\only#1{\beameroriginal\\}}
+\renewcommand<>{\@centercr}{\only#1{\beameroriginal\@centercr}}
+\renewcommand<>{\@normalcr}{\only#1{\beameroriginal\@normalcr}}
+
+\mode
+<article>
+{
+ \expandafter\let\expandafter\beamer@origbreak\expandafter=%
+ \csname\expandafter\@gobble\string\\ \endcsname% evil trickery to add a space to the name
+ \DeclareRobustCommand\\{\beamer@ifnextcharospec{\beamer@breaker}{\beamer@@breaker}}
+ \def\beamer@breaker<#1>{\only<#1>{\beamer@origbreak}}
+ \def\beamer@@breaker{\ifbeamer@inframe\else\expandafter\beamer@origbreak\fi}
+
+ \let\beamer@origbreakcenter=\@centercr
+ \def\@centercr{\beamer@ifnextcharospec{\beamer@breakercenter}{\beamer@@breakercenter}}
+ \def\beamer@breakercenter<#1>{\only<#1>{\beamer@origbreakcenter}}
+ \def\beamer@@breakercenter{\ifbeamer@inframe\else\expandafter\beamer@origbreakcenter\fi}
+}
+
+
+
+%
+% Plain frames
+%
+
+\def\beamer@frametemplate@plain{%
+ \def\beamer@entrycode{\vspace*{-\headheight}}%
+ \def\beamer@exitcode{\vspace*{-\footheight}\thispagestyle{empty}}}
+
+
+%
+% Again frame
+%
+
+\def\againframe{\@ifnextchar<{\beamer@againframe}{\beamer@againframe<*>}}
+\def\beamer@againframe<#1>{\@ifnextchar[{\beamer@@againframe<#1>}{\beamer@@againframe<#1>[]}}
+\def\beamer@@againframe<#1>[{\@ifnextchar<{\beamer@@@@againframe<#1>[}{\beamer@@@againframe<#1>[<*>][}}
+\def\beamer@@@@againframe<#1>[#2]{\@ifnextchar[{\beamer@@@againframe<#1>[{#2}]}{\beamer@@@againframe<#1>[{#2}][]}}
+\def\beamer@@@againframe<#1>[#2][#3]#4{%
+ \@ifundefined{beamer@again@#4}%
+ {\ClassError{beamer}{No frame has been designated to resume under
+ the name "#4"}{}}%
+ {%
+ \def\beamer@temp{\frame<#1>[#2][{#3,relabel=#4}]}%
+ \expandafter\let\expandafter\beamer@templet\csname beamer@again@#4\endcsname%
+ \expandafter\beamer@temp\beamer@templet}%
+}
+
+\mode
+<article>
+{
+ \def\againframe{\@ifnextchar<{\beamer@againframe}{\beamer@againframe<>}}
+ \def\beamer@againframe<#1>{\@ifnextchar[{\beamer@@againframe<#1>}{\beamer@@againframe<#1>[]}}
+ \def\beamer@@againframe<#1>[{\@ifnextchar<{\beamer@@@@againframe<#1>[}{\beamer@@againframe<#1>[<*>][}}
+ \def\beamer@@@@againframe<#1>[#2]{\@ifnextchar[{\beamer@@@againframe<#1>[{#2}]}{\beamer@@@againframe<#1>[{#2}][]}}
+ \def\beamer@@@againframe<#1>[#2][#3]#4{} % do nothing
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty b/macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty
new file mode 100644
index 0000000000..66f6e5314c
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty
@@ -0,0 +1,385 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011--2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+%
+% Setting the left and right margin
+%
+%
+\beamer@leftmargin=1cm
+\beamer@rightmargin=1cm
+
+\newif\ifbeamer@dogeometry
+
+\define@key{beamer@margin}{text margin left}{\beamer@leftmargin=#1\beamer@dogeometrytrue}
+\define@key{beamer@margin}{text margin right}{\beamer@rightmargin=#1\beamer@dogeometrytrue}
+\define@key{beamer@margin}{sidebar width left}{\beamer@leftsidebar=#1\beamer@dogeometrytrue}
+\define@key{beamer@margin}{sidebar width right}{\beamer@rightsidebar=#1\beamer@dogeometrytrue}
+
+\newcommand{\setbeamersize}[1]{%
+ \beamer@dogeometryfalse%
+ \setkeys{beamer@margin}{#1}%
+ \ifbeamer@dogeometry%
+ % Reset left margin now
+ \beamer@tempdim=\beamer@leftmargin%
+ \advance\beamer@tempdim by\beamer@leftsidebar%
+ \geometry{left=\the\beamer@tempdim}%
+ % Reset right margin now
+ \beamer@tempdim=\beamer@rightmargin%
+ \advance\beamer@tempdim by\beamer@rightsidebar%
+ \geometry{right=\the\beamer@tempdim}%
+ \fi%
+}
+
+\mode
+<article>
+{
+ \newcommand{\setbeamersize}[1]{}
+}
+
+
+
+
+
+% Constructing a frame:
+
+\let\@mkboth\@gobbletwo
+\def\ps@navigation{
+ \def\@oddhead{%
+ \begingroup%
+ \setbox\beamer@tempbox=\hbox{\usebeamertemplate***{background canvas}\hyper@pagetransition\hyper@pageduration}%
+ \beamer@tempdim=\ht\beamer@tempbox%
+ \setbox\beamer@tempbox=\hbox{\lower\beamer@tempdim\hbox{\box\beamer@tempbox}}%
+ \wd\beamer@tempbox=0pt\ht\beamer@tempbox=0pt\dp\beamer@tempbox=0pt%
+ \setbox\@tempboxa=\hbox{\usebeamertemplate***{background}}%
+ \beamer@tempdim=\ht\@tempboxa%
+ \setbox\@tempboxa=\hbox{\lower\beamer@tempdim\hbox{\box\@tempboxa}}%
+ \wd\@tempboxa=0pt\ht\@tempboxa=0pt\dp\@tempboxa=0pt%
+ \vbox{\hbox{\hskip-\Gm@lmargin\box\beamer@tempbox\box\@tempboxa}%
+ \hbox{%
+ {%
+ \setbox\beamer@tempbox=\hbox{\hskip-\Gm@lmargin%
+ {\setbox\beamer@tempbox=\hbox{\vbox to \sidebarheight{%
+ \usebeamercolor*{sidebar left}%
+ \usebeamertemplate{sidebar canvas left}%
+ \vss%
+ }}%
+ \wd\beamer@tempbox=0pt\ht\beamer@tempbox=0pt\dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox}%
+ {%
+ \vbox to \sidebarheight{%
+ \usebeamertemplate***{sidebar left}%
+ \vfil%
+ }}}%
+ \beamer@tempdim=\ht\beamer@tempbox%
+ \setbox\beamer@tempbox=\hbox{{\lower\beamer@tempdim\hbox{\box\beamer@tempbox}}}%
+ \wd\beamer@tempbox=0pt\ht\beamer@tempbox=0pt\dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox%
+ }%
+ {% print right sidebar first, since it should be overwritten by headline
+ \setbox\beamer@tempbox=\hbox{\hskip\textwidth\hskip\beamer@rightmargin%
+ {\setbox\beamer@tempbox=\hbox{\vbox to \sidebarheight{%
+ \usebeamercolor*{sidebar right}%
+ \usebeamertemplate{sidebar canvas right}%
+ \vss%
+ }}%
+ \wd\beamer@tempbox=0pt\ht\beamer@tempbox=0pt\dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox}%
+ {%
+ \vbox to \sidebarheight{%
+ \usebeamertemplate***{sidebar right}%
+ \vfil%
+ }}}%
+ \beamer@tempdim=\ht\beamer@tempbox%
+ \setbox\beamer@tempbox=\hbox{{\lower\beamer@tempdim\hbox{\box\beamer@tempbox}}}%
+ \wd\beamer@tempbox=0pt\ht\beamer@tempbox=0pt\dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox%
+ }%
+ \beamer@typesetheadorfoot{headline}%
+ }%
+ \hfil}%
+ \endgroup}
+ \def\@oddfoot{%
+ \vbox{\offinterlineskip\hbox{\beamer@typesetheadorfoot{footline}%
+ \hfil}\hbox{}}\hfil
+ }%
+ \let\@evenhead\@oddhead
+ \let\@evenfoot\@oddfoot}
+\pagestyle{navigation}
+
+\def\beamer@typesetheadorfoot#1{% typeset the head or footline
+ {\parskip0pt\offinterlineskip%
+ \hbox{%
+ \hskip-\Gm@lmargin%
+ \hbox{%
+ \vbox{%
+ \@tempdima=\textwidth%
+ \textwidth=\paperwidth%
+ \hsize=\textwidth%
+ \def\\{,}%
+ \usebeamertemplate***{#1}%
+ }}%
+ \hskip-\Gm@rmargin%
+ }}\hfil%
+}
+
+%
+% Patch empty page style, so that transitions and navigation still works
+%
+\def\ps@empty{%
+ \let\@mkboth\@gobbletwo%
+ \def\@oddhead{\begingroup%
+ \setbox\beamer@tempbox=\hbox{\usebeamertemplate***{background canvas}\hyper@pagetransition\hyper@pageduration}%
+ \beamer@tempdim=\ht\beamer@tempbox%
+ \setbox\beamer@tempbox=\hbox{\lower\beamer@tempdim\hbox{\box\beamer@tempbox}}%
+ \wd\beamer@tempbox=0pt\ht\beamer@tempbox=0pt\dp\beamer@tempbox=0pt%
+ \setbox\@tempboxa=\hbox{\usebeamertemplate***{background}}%
+ \beamer@tempdim=\ht\@tempboxa%
+ \setbox\@tempboxa=\hbox{\lower\beamer@tempdim\hbox{\box\@tempboxa}}%
+ \wd\@tempboxa=0pt\ht\@tempboxa=0pt\dp\@tempboxa=0pt%
+ \vbox{\hbox{\hskip-\Gm@lmargin\raise\headheight\box\beamer@tempbox\raise\headheight\box\@tempboxa}\hfil}%
+ \endgroup%
+ }
+ \def\@oddfoot{\normalcolor{\hfil%
+ \setbox\beamer@tempbox=\hbox{\usebeamertemplate***{navigation symbols}\hskip-\Gm@rmargin\hskip2pt}%
+ \ht\beamer@tempbox=0pt%
+ \dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox}}
+ \let\@evenhead\@oddhead\let\@evenfoot\@oddfoot}
+
+\def\beamer@calculateheadfoot{%
+ \setbox\beamer@tempbox=\hbox{{\beamer@typesetheadorfoot{footline}}}%
+ \footheight=\ht\beamer@tempbox%
+ \advance\footheight by \dp\beamer@tempbox%
+ \advance\footheight by 4pt%
+ \setbox\beamer@tempbox=\hbox{{\beamer@typesetheadorfoot{headline}}}%
+ \headheight=\ht\beamer@tempbox%
+ \headdp=\dp\beamer@tempbox%
+ \advance\headheight by\headdp%
+ \sidebarheight=\paperheight%
+ \advance\sidebarheight by-\headheight%
+ \advance\sidebarheight by\headdp%
+ \advance\sidebarheight by-\footheight%
+ \advance\sidebarheight by 4pt%
+ \footskip=\footheight%
+ \textheight=\paperheight%
+ \advance\textheight by-\footheight%
+ \advance\textheight by-\headheight%
+ \@colht\textheight%
+ \@colroom\textheight%
+ \vsize\textheight%
+}
+
+
+\def\insertpagenumber{\thepage}
+
+
+
+%
+%
+% Columns
+%
+%
+\define@key{beamer@col}{onlytextwidth}[true]{%
+ \def\beamer@colentrycode{\hbox to\textwidth\bgroup\ignorespaces}%
+ \def\beamer@colexitcode{\unskip\egroup}}
+\define@key{beamer@col}{totalwidth}{%
+ \def\beamer@colentrycode{\hbox to#1\bgroup\ignorespaces}%
+ \def\beamer@colexitcode{\unskip\egroup}}
+\define@key{beamer@col}{c}[true]{\def\beamer@colmode{c}\def\beamer@colalign{c}\def\beamer@colheadskip{}}
+\define@key{beamer@col}{t}[true]{\def\beamer@colmode{t}\def\beamer@colalign{t}\def\beamer@colheadskip{}}
+\define@key{beamer@col}{T}[true]{\def\beamer@colmode{T}\def\beamer@colalign{t}\def\beamer@colheadskip{\vskip-1ex\nointerlineskip}}
+\define@key{beamer@col}{b}[true]{\def\beamer@colmode{b}\def\beamer@colalign{b}\def\beamer@colheadskip{}}
+
+\newenvironment<>{columns}[1][]{%
+ \begin{actionenv}#2%
+ \def\beamer@colentrycode{%
+ \hbox to\textwidth\bgroup%
+ \leavevmode%
+ \hskip-\beamer@leftmargin%
+ \nobreak%
+ \beamer@tempdim=\textwidth%
+ \advance\beamer@tempdim by\beamer@leftmargin%
+ \advance\beamer@tempdim by\beamer@rightmargin%
+ \hbox to\beamer@tempdim\bgroup%
+ \hbox{}\hfill\ignorespaces}%
+ \def\beamer@colexitcode{\egroup%
+ \nobreak%
+ \hskip-\beamer@rightmargin\egroup}%
+ \ifbeamer@centered\setkeys{beamer@col}{c}\else\setkeys{beamer@col}{t}\fi%
+ \setkeys{beamer@col}{#1}%
+ \par%
+ \beamer@colentrycode%
+ \def\beamer@colclose{}\ignorespaces}%
+ {\beamer@colclose\def\beamer@colclose{}\beamer@colexitcode\end{actionenv}}%
+
+\mode
+<article>
+{
+ % do sth. more intelligent in the future
+ \newenvironment<>{columns}[1][]{}{}
+}
+
+
+
+
+%
+%
+% Column command/environment
+%
+%
+
+\mode
+<all>
+{
+\def\beamer@columnname{column}
+\def\column{%
+ \ifx\@currenvir\beamer@columnname%
+ \let\beamer@next=\beamer@columnenv%
+ \else%
+ \let\beamer@next=\beamer@columncom%
+ \fi%
+ \beamer@next}
+}
+
+\newenvironment<>{beamer@columnenv}[2][\beamer@colmode]{%
+ \beamer@colclose\def\beamer@colclose{}%
+ \begin{actionenv}#3%
+ \setkeys{beamer@col}{#1}%
+ \begin{minipage}[\beamer@colalign]{#2}%
+ \leavevmode\raggedright\beamer@colheadskip\ignorespaces}
+ {\end{minipage}\hfill\end{actionenv}\@ignoretrue}
+\let\endcolumn\endbeamer@columnenv
+
+\newcommand<>\beamer@columncom[2][\beamer@colmode]{%
+ \beamer@colclose%
+ \def\beamer@colclose{\end{minipage}\hfill\end{actionenv}\ignorespaces}%
+\begin{actionenv}#3%
+ \setkeys{beamer@col}{#1}%
+ \begin{minipage}[\beamer@colalign]{#2}%
+ \leavevmode\raggedright\beamer@colheadskip\ignorespaces}
+
+
+\mode
+<article>
+{
+ \newenvironment<>{beamer@columnenv}[2][]{}{}
+ \newcommand<>{\beamer@columncom}[2][]{}
+}
+
+
+
+%
+%
+% Footnotes
+%
+%
+
+\def\@makefnmark{\hbox{\@textsuperscript{{\usebeamercolor[fg]{footnote mark}\usebeamerfont*{footnote mark}\@thefnmark}}}}
+
+\def\@makefntext#1{%
+ \def\insertfootnotetext{#1}%
+ \def\insertfootnotemark{\@makefnmark}%
+ \usebeamertemplate***{footnote}}
+
+\newbox\beamer@footins
+
+\newcommand<>\beamer@framefootnotetext[1]{%
+ \global\setbox\beamer@footins\vbox{%
+ \hsize\framewidth
+ \textwidth\hsize
+ \columnwidth\hsize
+ \unvbox\beamer@footins
+ \reset@font\footnotesize
+ \@parboxrestore
+ \protected@edef\@currentlabel
+ {\csname p@footnote\endcsname\@thefnmark}%
+ \color@begingroup
+ \uncover#2{\@makefntext{%
+ \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+ \color@endgroup}}
+
+\renewcommand<>\@mpfootnotetext[1]{%
+ \global\setbox\@mpfootins\vbox{%
+ \unvbox\@mpfootins
+ \reset@font\footnotesize
+ \hsize0.85\paperwidth
+ \@parboxrestore
+ \protected@edef\@currentlabel
+ {\csname p@mpfootnote\endcsname\@thefnmark}%
+ \color@begingroup
+ \uncover#2{\@makefntext{%
+ \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}}%
+ \color@endgroup}}
+
+\let\@footnotetext=\beamer@framefootnotetext
+
+\define@key{beamerfootnote}{frame}[true]{%
+ \let\beamer@footnotetext=\beamer@framefootnotetext%
+ \def\beamer@mpfn{footnote}%
+ \def\beamer@thempfn{\thefootnote}}
+
+\renewcommand<>{\footnote}[1][]{%
+ \let\beamer@footnotetext=\@footnotetext%
+ \let\beamer@mpfn=\@mpfn%
+ \let\beamer@thempfn=\thempfn%
+ \let\beamer@kvorig=\KV@errx%
+ \let\beamer@xkvorig=\XKV@err
+ \def\beamer@footarg{}%
+ \def\KV@errx##1{\edef\beamer@footarg{\@tempa}}%
+ \def\XKV@err##1{\edef\beamer@footarg{\XKV@tkey}}%
+ \setkeys{beamerfootnote}{#1}%
+ \let\KV@errx=\beamer@kvorig%
+ \let\XKV@errx=\beamer@xkvorig
+ \ifx\beamer@footarg\@empty%
+ \def\beamer@next{\stepcounter\beamer@mpfn
+ \protected@xdef\@thefnmark{\beamer@thempfn}%
+ \@footnotemark\beamer@footnotetext#2}%
+ \else%
+ \def\beamer@next{%
+ \begingroup
+ \csname c@\beamer@mpfn\endcsname\beamer@footarg\relax
+ \unrestored@protected@xdef\@thefnmark{\beamer@thempfn}%
+ \endgroup
+ \@footnotemark\beamer@footnotetext#2}%
+ \fi%
+ \beamer@next}
+
+\mode
+<article>
+{
+ \define@key{beamerfootnote}{frame}[true]{}
+
+\let\beamer@origfootnote=\footnote
+ \renewcommand<>\footnote[1][]{%
+ \let\beamer@kvorig=\KV@errx%
+ \let\beamer@xkvorig=\XKV@err
+ \def\beamer@footarg{}%
+ \def\KV@errx##1{\edef\beamer@footarg{\@tempa}}%
+ \def\XKV@err##1{\edef\beamer@footarg{\XKV@tkey}}%
+ \setkeys{beamerfootnote}{#1}%
+ \let\KV@errx=\beamer@kvorig%
+ \let\XKV@errx=\beamer@xkvorig
+ \ifx\beamer@footarg\@empty%
+ \edef\beamer@next{\noexpand\beamer@origfootnote}%
+ \else%
+ \edef\beamer@next{\noexpand\beamer@origfootnote[\beamer@footarg]}%
+ \fi%
+ \beamer@next}
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseframesize.sty b/macros/latex/contrib/beamer/base/beamerbaseframesize.sty
new file mode 100644
index 0000000000..94ab641482
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseframesize.sty
@@ -0,0 +1,273 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+
+\define@key{beamerframe}{allowdisplaybreaks}[4]{%
+ \def\beamer@displaybreak{\allowdisplaybreaks[{#1}]}}
+\define@key{beamerframe}{allowframebreaks}[0.95]{%
+ \def\beamer@autobreakfactor{#1}\beamer@autobreaktrue}
+\define@key{beamerframe}{squeeze}[]{%
+ \def\beamer@cramped{\itemsep0pt\topsep0.5pt\relax}}
+\define@key{beamerframe}{shrink}[0]{%
+ \def\beamer@shrinkpercentage{#1}%
+ \@tempdima=-#1pt%
+ \@tempdima=0.01\@tempdima%
+ \advance\@tempdima by1pt%
+ \edef\beamer@shrinkfactor{\strip@pt\@tempdima}%
+ \@tempcnta=\@tempdima%
+ \divide\@tempcnta by256\relax%
+ \@tempdima=256pt%
+ \divide\@tempdima by\@tempcnta%
+ \edef\beamer@shrinkfactorinv{\strip@pt\@tempdima}%
+ \beamer@shrinktrue%
+ \def\beamer@cramped{\itemsep0pt\topsep0.5pt\relax}}
+
+
+%
+% Zoom stuff
+%
+
+\define@key{beamerzoom}{border}[1]{\def\beamer@zoomborderwidth{#1}}
+
+\def\framezoom<#1><#2>{\@ifnextchar[{\beamer@framezoom<#1><#2>}{\beamer@framezoom<#1><#2>[]}}
+\def\beamer@framezoom<#1><#2>[#3](#4,#5)(#6,#7){%
+ \par\nointerlineskip%
+ \global\beamer@slidehaszoomtrue%
+ \advance\beamer@zoomcount by1\relax%
+ \def\beamer@zoomborderwidth{0}%
+ \edef\beamer@labelzoomed{beamer@labelzoomed@\the\beamer@zoomframecount @\the\beamer@zoomcount}%
+ \setkeys{beamerzoom}{#3}%
+ \only<#1>{%
+ {\hypersetup{pdfhighlight={/P},pdfborder={0 0 \beamer@zoomborderwidth}}%
+ \global\setbox\@tempboxa=\vbox{\hyperlink{\beamer@labelzoomed}{\vbox to #7{\hbox
+ to#6{\hfil}\vfil}}}}%
+ \ht\@tempboxa=0pt%
+ \wd\@tempboxa=0pt%
+ \dp\@tempboxa=0pt%
+ \setbox\@tempboxa=\vbox{\moveright#4\hbox{\lower#5\vbox{\box\@tempboxa}}}%
+ \ht\@tempboxa=0pt%
+ \wd\@tempboxa=0pt%
+ \dp\@tempboxa=0pt%
+ \global\setbox\beamer@zoombox=\vbox to0pt{\unvbox\beamer@zoombox\box\@tempboxa}%
+ }%
+ \only<#2>{%
+ \@ifundefined{\beamer@labelzoomed}%
+ {%
+ \hypertarget{\beamer@labelzoomed}{}%
+ \expandafter\gdef\csname\beamer@labelzoomed\endcsname{}%
+ }{}%
+ \gdef\beamer@zoomer{%
+ % compute zoom factor
+ \@tempdima=\beamer@frametextheight%
+ \@tempdimb=#7\relax%
+ \@tempcnta=\@tempdimb%
+ \divide\@tempcnta by4096\relax%
+ \multiply\@tempdima by16\relax%
+ \divide\@tempdima by\@tempcnta%
+ \@tempdimb=\paperwidth%
+ \ifbeamer@plainframe%
+ \else%
+ \advance\@tempdimb by-\beamer@leftsidebar%
+ \advance\@tempdimb by-\beamer@rightsidebar\relax%
+ \fi%
+ \@tempdimc=#6\relax%
+ \@tempcntb=\@tempdimc%
+ \divide\@tempcntb by4096\relax%
+ \multiply\@tempdimb by16\relax%
+ \divide\@tempdimb by\@tempcntb%
+ \ifdim\@tempdimb<\@tempdima%
+ \@tempdima=\@tempdimb%
+ \fi%
+ \edef\beamer@temp{\strip@pt\@tempdima}%
+ \@tempdimc=\beamer@frametextheight%
+ \advance\@tempdimc by4pt%
+ \@tempdimb=\paperwidth%
+ \ifbeamer@plainframe%
+ \else%
+ \advance\@tempdimb by-\beamer@leftsidebar%
+ \advance\@tempdimb by-\beamer@rightsidebar\relax%
+ \fi%
+ \setbox\@tempboxa=\vbox{\hsize=\@tempdimb\Acrobatmenu{GoBack}{\vbox to
+ \beamer@frametextheight{\hbox to\@tempdimb{\hfil}\vfil}}}%
+ \ht\@tempboxa=0pt%
+ \wd\@tempboxa=0pt%
+ \dp\@tempboxa=0pt%
+ \setbox\beamer@framebox=\vbox to\beamer@frametextheight{{%
+ \ifbeamer@plainframe\beamer@leftmargin=\Gm@lmargin\fi%
+ \begin{pgfpicture}{\beamer@leftmargin}{-\beamer@frametextheight}{\beamer@leftmargin}{0pt}
+ \pgftext[left,top]{\box\@tempboxa}
+ \pgfpathrectangle{\pgfpoint{0pt}{-\@tempdimc}}{\pgfpoint{\@tempdimb}{\@tempdimc}}%
+ \pgfusepath{clip}
+ \begingroup
+ \pgftransformscale{\beamer@temp}
+ \@tempdima=#4\relax%
+ \@tempdimb=#5\relax%
+ {\pgftransformshift{\pgfpoint{-\@tempdima}{\@tempdimb}}%
+ \pgftext[left,top]{\vbox{\vbox{}\nointerlineskip\unvbox\beamer@framebox}}}
+ \endgroup
+ \end{pgfpicture}%
+ }}%
+ \setbox\beamer@framebox=\vbox{%
+ \nobreak\vbox{}\nobreak\par\nobreak\beamer@entrycode\nobreak%
+ \nointerlineskip\unvbox\beamer@frametitlebox%
+ \nobreak%
+ \box\beamer@framebox%
+ \nobreak%
+ \vss%
+ \beamer@exitcode%
+ }%
+ \global\setbox\beamer@footins=\box\voidb@x% no footnotes in zoomed slides
+ }%
+ }%
+}
+
+\mode
+<article>
+{
+ \def\framezoom<#1><#2>{\@ifnextchar[{\beamer@framezoom<#1><#2>}{\beamer@framezoom<#1><#2>[]}}
+ \def\beamer@framezoom<#1><#2>[#3](#4,#5)(#6,#7){}
+}
+
+
+%
+% Shrink stuff
+%
+
+\def\beamer@shrinkframebox{%
+ \@tempdima=\ht\beamer@framebox%
+% \ifdim\@tempdima>\beamer@frametextheight%
+ \@tempcnta=\@tempdima%
+ \divide\@tempcnta by 65536\relax%
+ \@tempdimc=\beamer@frametextheight%
+ \divide\@tempdimc by\@tempcnta\relax%
+ \ifdim\@tempdimc>\beamer@shrinkfactor pt%
+ \@tempdimc=\beamer@shrinkfactor pt%
+ \else%
+ \@tempdima=-100\@tempdimc%
+ \advance\@tempdima by100pt%
+ \ClassWarning{beamer}{Frame text is shrunk by a factor of %
+ \strip@pt\@tempdima\space percent instead of
+ \beamer@shrinkpercentage\space percent}%
+ \fi%
+ \edef\beamer@factortemp{\strip@pt\@tempdimc}%
+ \setbox\beamer@framebox=\vbox to\beamer@frametextheight{%
+ \begin{pgfpicture}{0pt}{-\beamer@frametextheight}{0pt}{0pt}
+ {\pgftransformscale{\beamer@factortemp}%
+ \pgftext[left,top]{\box\beamer@framebox}}%
+ \end{pgfpicture}%
+ }%
+% \fi%
+}
+
+
+
+%
+% Auto break stuff
+%
+
+\splittopskip=10pt
+\newbox\beamer@splitbox
+\newcount\beamer@autobreakcount
+\newdimen\beamer@autobreaklastheight
+
+\def\beamer@autobreakframe{%
+ \beamer@slideinframe=1\relax%
+ \advance\beamer@autobreakcount by1\relax%
+ \begin{beamer@frameslide}\relax%
+ \bgroup%
+ \aftergroup\beamer@endautobreak%
+ \afterassignment\beamer@checkframetitle%
+ \let\beamer@next% gobble opening brace
+ }
+\def\beamer@endautobreak{\end{beamer@frameslide}%
+ \beamer@writeslidentry%
+ \ifvoid\beamer@splitbox%
+ \let\beamer@next=\beamer@reseteecodes%
+ \else%
+ \let\beamer@next=\beamer@continueautobreak%
+ \fi%
+ \beamer@next%
+}
+
+\def\beamer@autobreakframebox{%
+ \global\setbox\beamer@splitbox=\box\voidb@x%
+ \ifbeamer@autobreak%
+ % Ok, frame was overful -> split it!
+ \splittopskip\baselineskip%
+ \setbox\@tempboxa=\vsplit\beamer@framebox to\beamer@autobreakfactor\textheight%
+ \global\setbox\beamer@splitbox=\box\beamer@framebox%
+ \@tempdima=\ht\beamer@splitbox%
+ \ifdim\@tempdima<\beamer@autobreaklastheight%
+ \global\beamer@autobreaklastheight=\@tempdima\relax%
+ \else%
+ \setbox\@tempboxa=\vbox{\unvbox\@tempboxa\unvbox\beamer@splitbox}%
+ \global\setbox\beamer@splitbox=\box\voidb@x%
+ \fi%
+ \setbox\beamer@framebox=\vbox to\textheight{\unvbox\@tempboxa%
+ \vskip\beamer@framebottomskipautobreak%
+ \ifvoid\beamer@splitbox%
+ \ifvoid\beamer@footins%
+ \else%
+ \begingroup
+ \usebeamercolor*[fg]{footnote}%
+ \footnoterule%
+ \unvbox \beamer@footins%
+ \global\setbox\beamer@footins=\box\voidb@x%
+ \endgroup
+ \fi%
+ \fi%
+ \beamer@exitcode%
+ }%
+ \else%
+ \setbox\beamer@framebox=\vbox to\textheight{\unvbox\beamer@framebox%
+ \vskip\beamer@framebottomskip%
+ \ifvoid\beamer@footins%
+ \else%
+ \begingroup
+ \usebeamercolor*[fg]{footnote}%
+ \footnoterule%
+ \unvbox \beamer@footins%
+ \global\setbox\beamer@footins=\box\voidb@x%
+ \endgroup
+ \fi%
+ \beamer@exitcode}%
+ \global\setbox\beamer@footins=\box\voidb@x%
+ \fi%
+ }
+
+\newtoks\beamer@frametitletoks
+\newtoks\beamer@framesubtitletoks
+
+\def\beamer@continueautobreak{%
+ \ifbeamer@noframenumbering\else%
+ \refstepcounter{framenumber}%
+ \fi%
+ \expandafter\beamer@frametitletoks\expandafter{\beamer@frametitle}%
+ \expandafter\beamer@framesubtitletoks\expandafter{\beamer@shortframetitle}%
+ \edef\beamer@callframetitle{\noexpand\frametitle[\the\beamer@framesubtitletoks]{\the\beamer@frametitletoks}}%
+ \expandafter\expandafter\expandafter\beamer@autobreakframe
+ \expandafter\expandafter\expandafter{%
+ \expandafter\beamer@callframetitle%
+ \expandafter\framesubtitle\expandafter{\insertframesubtitle}%
+ \unvbox\beamer@splitbox}%
+}
+
+
+\newcommand\insertcontinuationcount{\the\beamer@autobreakcount}
+\newcommand\insertcontinuationcountroman{\@Roman\beamer@autobreakcount}
+\newcommand\insertcontinuationtext{(\translate{cont}.)}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty b/macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty
new file mode 100644
index 0000000000..182a5f8873
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty
@@ -0,0 +1,567 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010,2012--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<all>
+
+\RequirePackage{enumerate}
+
+\mode
+<presentation>
+
+%
+%
+% The \frametitle command
+%
+%
+\newcommand<>\frametitle{\alt#1{\@dblarg\beamer@@frametitle}{\beamer@gobbleoptional}}
+\long\def\beamer@@frametitle[#1]#2{%
+ \ifblank{#2}{}{%
+ \gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space\usebeamertemplate*{frametitle continuation}\fi}}%
+ \gdef\beamer@frametitle{#2}%
+ \gdef\beamer@shortframetitle{#1}%
+}%
+}
+
+\newcommand\insertshortframetitle[1][]{%
+ {%
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\beamer@shortframetitle}%
+ }}
+
+
+\mode
+<all>
+{
+ \let\beamer@aftersubtitle=\relax
+ \newcommand<>\framesubtitle[1]{\only#2{\ifblank{#1}{}{\gdef\insertframesubtitle{{#1}}\beamer@aftersubtitle}}}
+}
+
+
+\mode
+<article>
+{
+ \newcommand<>\frametitle[2][]{\only#3{\gdef\insertframetitle{#2}%
+ \@ifnextchar\framesubtitle{\beamer@donextsubtitle}{\usebeamertemplate{frametitle}}}}
+ \renewcommand<>\framesubtitle[1]{%
+ \only#2{%
+ \ifblank{#1}
+ {\usebeamertemplate{frametitle}}
+ {\gdef\insertframesubtitle{{#1}}\beamer@aftersubtitle}}}
+ \def\beamer@donextsubtitle{%
+ % Ugly hack...
+ \def\beamer@aftersubtitle{\usebeamertemplate{frametitle}\let\beamer@aftersubtitle=\relax}
+ }
+}
+
+
+
+%
+% Alerting
+%
+
+\mode
+<all>
+{
+ \newenvironment<>{alertenv}{\begin{altenv}#1%
+ {\usebeamercolor[fg]{alerted text}\usebeamerfont{alerted text}\usebeamertemplate{alerted text begin}}
+ {\usebeamertemplate{alerted text end}}{\color{.}}{}\ignorespaces}{\ifhmode\unskip\fi\end{altenv}}
+
+ \newenvironment<>{structureenv}{\begin{altenv}#1%
+ {\usebeamercolor[fg]{structure}\usebeamerfont{structure}\usebeamertemplate{structure text begin}}
+ {\usebeamertemplate{structure text end}}{\color{.}}{}\ignorespaces}{\ifhmode\unskip\fi\end{altenv}}
+
+ \newcommand<>{\alert}[1]{\begin{alertenv}#2\relax#1\end{alertenv}}
+ \newcommand<>{\structure}[1]{\begin{structureenv}#2\relax#1\end{structureenv}}
+}
+
+
+
+%
+%
+% Predefined Blocks
+%
+%
+
+\mode
+<all>
+{
+ \newenvironment<>{block}[1]{%
+ \begin{actionenv}#2%
+ \def\insertblocktitle{#1}%
+ \par%
+ \usebeamertemplate{block begin}}
+ {\par%
+ \usebeamertemplate{block end}%
+ \end{actionenv}}
+
+ \newenvironment<>{alertblock}[1]{%
+ \begin{actionenv}#2%
+ \def\insertblocktitle{#1}%
+ \par%
+ \mode<presentation>{%\usebeamerfont{block}%
+ \setbeamercolor{local structure}{parent=alerted text}}%
+ \usebeamertemplate{block alerted begin}}
+ {\par%
+ \usebeamertemplate{block alerted end}%
+ \end{actionenv}}
+
+ \newenvironment<>{exampleblock}[1]{%
+ \begin{actionenv}#2%
+ \def\insertblocktitle{#1}%
+ \par%
+ \mode<presentation>{%\usebeamerfont{block}%
+ \setbeamercolor{local structure}{parent=example text}}%
+ \usebeamertemplate{block example begin}}
+ {\par%
+ \usebeamertemplate{block example end}%
+ \end{actionenv}}
+}
+
+
+%
+% List stuff
+%
+
+\setlength\leftmargini {2em}
+\setlength\leftmarginii {2em}
+\setlength\leftmarginiii {2em}
+\setlength \labelsep {.5em}
+\setlength \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+
+\def\@listi{\leftmargin\leftmargini
+ \topsep 3\p@ \@plus2\p@ \@minus2.5\p@
+ \parsep 0\p@
+ \itemsep3\p@ \@plus2\p@ \@minus3\p@}
+\let\@listI\@listi
+\def\@listii{\leftmargin\leftmarginii
+ \topsep 2\p@ \@plus1\p@ \@minus2\p@
+ \parsep 0\p@ \@plus\p@
+ \itemsep \parsep}
+\def\@listiii{\leftmargin\leftmarginiii
+ \topsep 2\p@ \@plus1\p@ \@minus2\p@
+ \parsep 0\p@ \@plus\p@
+ \itemsep \parsep}
+\setlength\partopsep{\z@skip}
+
+%
+%
+% Enumerations
+%
+%
+
+\def\enumerate{%
+ \ifnum\@enumdepth>2\relax\@toodeep
+ \else%
+ \advance\@enumdepth\@ne%
+ \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
+ \advance\@itemdepth\@ne%
+ \fi%
+ \beamer@computepref\@enumdepth% sets \beameritemnestingprefix
+ \edef\beamer@enumtempl{enumerate \beameritemnestingprefix item}%
+ \@ifnextchar[{\beamer@@enum@}{\beamer@enum@}}
+\def\beamer@@enum@[{\@ifnextchar<{\beamer@enumdefault[}{\beamer@@@enum@[}}
+\def\beamer@enumdefault[#1]{\def\beamer@defaultospec{#1}%
+ \@ifnextchar[{\beamer@@@enum@}{\beamer@enum@}}
+\def\beamer@@@enum@[#1]{% partly copied from enumerate.sty
+ \@enLab{}\let\@enThe\@enQmark
+ \@enloop#1\@enum@
+ \ifx\@enThe\@enQmark\@warning{The counter will not be printed.%
+ ^^J\space\@spaces\@spaces\@spaces The label is: \the\@enLab}\fi
+ \def\insertenumlabel{\the\@enLab}
+ \def\beamer@enumtempl{enumerate mini template}%
+ \expandafter\let\csname the\@enumctr\endcsname\@enThe
+ \csname c@\@enumctr\endcsname7
+ \beamer@enum@}
+\def\beamer@enum@{%
+ \beamer@computepref\@itemdepth% sets \beameritemnestingprefix
+ \usebeamerfont{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamercolor[fg]{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body begin}%
+ \expandafter
+ \list
+ {\usebeamertemplate{\beamer@enumtempl}}
+ {\usecounter\@enumctr%
+ \def\makelabel##1{{\hss\llap{{%
+ \usebeamerfont*{enumerate \beameritemnestingprefix item}%
+ \usebeamercolor[fg]{enumerate \beameritemnestingprefix item}##1}}}}}%
+ \beamer@cramped%
+ \raggedright%
+ \beamer@firstlineitemizeunskip%
+}
+\def\endenumerate{\ifhmode\unskip\fi\endlist%
+ \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body end}}
+
+\def\beamer@computepref#1{%
+ \let\beameritemnestingprefix\@empty%
+ \ifcase#1\or\or\def\beameritemnestingprefix{sub}\or\def\beameritemnestingprefix{subsub}\or\@toodeep\fi%
+}
+
+\def\insertenumlabel{\theenumi}
+\def\insertsubenumlabel{\theenumii}
+\def\insertsubsubenumlabel{\theenumiii}
+
+\mode
+<article>
+{
+ \AtBeginDocument{ % Remove any overlay specification
+ \let\beamer@@@enum@\@@enum@
+ \def\@@enum@[{%
+ \@ifnextchar<%
+ {\beamer@@@num@@}
+ {\beamer@@@enum@[}%
+ }
+ \def\beamer@@@num@@<#1>]{%
+ \@ifnextchar[%
+ {\beamer@@@enum@}
+ {\@enum@}%
+ }
+ %\let\beamer@origenumerate=\enumerate
+ %\renewcommand*\enumerate{\beamer@origenumerate}
+ }
+}
+
+
+
+%
+%
+% Itemize
+%
+%
+
+\renewcommand{\itemize}[1][]{%
+ \ifblank{#1}{}{\def\beamer@defaultospec{#1}}%
+ \ifnum \@itemdepth >2\relax\@toodeep\else
+ \advance\@itemdepth\@ne
+ \beamer@computepref\@itemdepth% sets \beameritemnestingprefix
+ \usebeamerfont{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamercolor[fg]{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body begin}%
+ \list
+ {\usebeamertemplate{itemize \beameritemnestingprefix item}}
+ {\def\makelabel##1{%
+ {%
+ \hss\llap{{%
+ \usebeamerfont*{itemize \beameritemnestingprefix item}%
+ \usebeamercolor[fg]{itemize \beameritemnestingprefix item}##1}}%
+ }%
+ }%
+ }
+ \fi%
+ \beamer@cramped%
+ \raggedright%
+ \beamer@firstlineitemizeunskip%
+}
+
+\def\enditemize{\ifhmode\unskip\fi\endlist%
+ \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body end}}
+
+\let\beamer@itemize\itemize
+
+\mode
+<article>
+{
+ \AtBeginDocument{
+ \let\beamer@origitemize=\itemize
+ \def\itemize{%
+ \@ifnextchar[{\beamer@itemize@}{\beamer@origitemize}%
+ }
+ \def\beamer@itemize@[{%
+ \@ifnextchar<{\beamer@itemize@@}{\beamer@origitemize[}%
+ }
+ \def\beamer@itemize@@<#1>]{\beamer@origitemize}
+ }
+}
+
+
+
+
+\def\description{\@ifnextchar[{\beamer@testforospec}{\beamer@descdefault\beamer@descriptionwidth\@@description}}
+\def\beamer@testforospec[{\@ifnextchar<{\beamer@scandefaultospec[}{\@description[}}
+\def\beamer@scandefaultospec[#1]{\def\beamer@defaultospec{#1}\description}
+\def\@description[#1]{\setbox\beamer@tempbox=\hbox{\def\insertdescriptionitem{#1}\usebeamertemplate**{description item}}%
+ \beamer@descdefault\wd\beamer@tempbox\@@description}
+\def\@@description{%
+ \advance\beamer@descdefault by \labelsep%
+ \usebeamerfont{description body}%
+ \usebeamercolor[fg]{description body}%
+ \usebeamertemplate{description body begin}%
+ \list
+ {}
+ {\labelwidth\beamer@descdefault\leftmargin\beamer@descdefault\let\makelabel\beamer@descriptionitem}%
+ \beamer@cramped%
+ \raggedright
+ \beamer@firstlineitemizeunskip%
+}
+\def\enddescription{\ifhmode\unskip\fi\endlist%
+ \usebeamertemplate{description body end}}
+\long\def\beamer@descriptionitem#1{%
+ \def\insertdescriptionitem{#1}%
+ \hfil\hspace\labelsep{\usebeamertemplate**{description item}}}
+
+\beamer@descriptionwidth=2cm
+\define@key{beamer@margin}{description width}{%
+ \beamer@descriptionwidth=#1\relax%
+}
+\define@key{beamer@margin}{description width of}{%
+ \setbox\beamer@tempbox=\hbox{\def\insertdescriptionitem{#1}\usebeamertemplate**{description item}}%
+ \beamer@descriptionwidth=\wd\beamer@tempbox\relax%
+}
+
+\mode
+<article>
+{
+ \AtBeginDocument{
+ \let\beamer@origdescription=\description
+ % The description environment doesn't use either optional
+ % arg in article mode, so simply gobble them
+ \def\description{%
+ \@ifnextchar[%]
+ {\beamer@description@}
+ {\beamer@origdescription}%
+ }
+ \def\beamer@description@[#1]{%
+ \@ifnextchar[%]
+ {\beamer@description@@}
+ {\beamer@origdescription}%
+ }
+ \def\beamer@description@@[#1]{\beamer@origdescription}
+ }
+}
+
+
+
+
+
+
+%
+% Abstract command
+%
+
+\newenvironment<>{abstract}%
+{\actionenv#1%
+ \usebeamertemplate{abstract begin}%
+ \usebeamerfont{abstract}%
+ \usebeamercolor{abstract}%
+ \usebeamertemplate**{abstract title}}%
+{\usebeamertemplate{abstract end}\endactionenv}
+
+
+%
+% Verse, quotation, quote environments
+%
+
+\newenvironment<>{verse}
+{\actionenv#1%
+ \usebeamertemplate{verse begin}%
+ \usebeamerfont{verse}%
+ \usebeamercolor{verse}%
+ \let\\\@centercr%
+ \list{}{\itemsep \z@
+ \itemindent -1.5em%
+ \listparindent\itemindent
+ \rightmargin \leftmargin
+ \advance\leftmargin 1.5em
+ \parsep .75em plus .25em minus.25em}%
+\item\relax}
+{\endlist\usebeamertemplate{verse end}\endactionenv}
+
+
+\newenvironment<>{quotation}
+{\actionenv#1%
+ \usebeamertemplate{quotation begin}
+ \usebeamerfont{quotation}%
+ \usebeamercolor{quotation}%
+ \list{}{\listparindent 1.5em%
+ \itemindent \listparindent
+ \rightmargin \leftmargin
+ \parsep \z@ \@plus\p@}%
+\item\relax}
+{\endlist\usebeamertemplate{quotation end}\endactionenv}
+
+\newenvironment<>{quote}
+{\actionenv#1%
+ \usebeamertemplate{quote begin}%
+ \usebeamerfont{quote}%
+ \usebeamercolor{quote}%
+ \list{}{\rightmargin \leftmargin}
+\item\relax}
+{\endlist\usebeamertemplate{quote end}\endactionenv}
+
+
+\mode
+<article>
+{
+ \renewenvironment<>{verse}{\actionenv#1\originalverse}{\endoriginalverse\endactionenv}
+ \renewenvironment<>{quotation}{\actionenv#1\originalquotation}{\endoriginalquotation\endactionenv}
+ \renewenvironment<>{quote}{\actionenv#1\originalquote}{\endoriginalquote\endactionenv}
+}
+
+
+
+
+%
+% Bibliography code
+%
+\newenvironment{thebibliography}[1]
+{%\leavevmode\unskip%
+ \list{\@biblabel{\@arabic\c@enumiv}}%
+ {\settowidth\labelwidth{\beamer@biblabeltemplate{\@biblabel{#1}}}%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \itemsep=0pt%
+ \partopsep=0pt%
+ \topsep=0pt%
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand\theenumiv{\@arabic\c@enumiv}
+ \let\makelabel\beamer@biblabeltemplate}%
+ \sloppy\raggedright
+ \clubpenalty10000
+ \@clubpenalty \clubpenalty
+ \widowpenalty10000%
+ \sfcode`\.\@m}
+ {\def\@noitemerr
+ {\@latex@warning{Empty `thebibliography' environment}}%
+ \ifhmode\unskip\fi\endlist}
+
+\long\def\beamer@biblabeltemplate#1{\def\insertbiblabel{#1}\usebeamertemplate*{bibliography item}\hfil}
+
+\def\bibitem{\@ifnextchar<{\beamer@bibitem@store}{\gdef\beamer@bibstore{}\beamer@plainbibitem}}
+\def\beamer@bibitem@store<#1>{\gdef\beamer@bibstore{<#1>}\beamer@plainbibitem}
+\def\beamer@plainbibitem{\@ifnextchar[\@lbibitem\beamer@bibitem}
+\def\@lbibitem[#1]#2{\expandafter\item\beamer@bibstore[\@biblabel{#1}\hfill]%
+ \@ifundefined{beamerbib@#2@\the\c@framenumber}{\if@filesw
+ {\let\protect\noexpand
+ \immediate
+ \write\@auxout{\string\bibcite{#2}{\noexpand\hyperlink{beamerbib#2}{#1}}}}\fi%
+ \global\@namedef{beamerbib@#2@\the\c@framenumber}{\relax}%
+ \hypertarget{beamerbib#2}{}%
+ }{}%
+ \def\newblock{\beamer@newblock}\newblock%
+ \hbox{}\ignorespaces}
+\def\beamer@bibitem#1{\@bibitem{#1}\ignorespaces}
+\def\@bibitem#1{\expandafter\item\beamer@bibstore\@ifundefined{beamerbib@#1@\the\c@framenumber}%
+ {\if@filesw \immediate\write\@auxout
+ {\string\bibcite{#1}{\noexpand\hyperlink{beamerbib#1}{\the\value{\@listctr}}}}\fi%
+ \global\@namedef{beamerbib@#1@\the\c@framenumber}{\relax}%
+ \hypertarget{beamerbib#1}{}}%
+ {}%
+ \def\newblock{\beamer@newblock}\newblock}
+\def\newblock{\beamer@newblock}
+
+\def\beamer@newblock{%
+ \usebeamercolor[fg]{bibliography entry author}%
+ \usebeamerfont{bibliography entry author}%
+ \usebeamertemplate{bibliography entry author}%
+ \def\newblock{%
+ \usebeamercolor[fg]{bibliography entry title}%
+ \usebeamerfont{bibliography entry title}%
+ \usebeamertemplate{bibliography entry title}%
+ \def\newblock{%
+ \usebeamercolor[fg]{bibliography entry location}%
+ \usebeamerfont{bibliography entry location}%
+ \usebeamertemplate{bibliography entry location}%
+ \def\newblock{%
+ \usebeamercolor[fg]{bibliography entry note}%
+ \usebeamerfont{bibliography entry note}%
+ \usebeamertemplate{bibliography entry note}}}}%
+ \leavevmode\setbox\beamer@tempbox=\hbox{}\ht\beamer@tempbox=1.5em\box\beamer@tempbox}
+
+% The following code provided by Audrey http://tex.stackexchange.com/a/57247
+\AtBeginDocument{%
+ \@ifpackageloaded{biblatex}
+ {\apptocmd{\blx@env@bibliography}
+ {\let\makelabel\beamer@biblabeltemplate}{}{}
+ \apptocmd{\abx@macro@begentry}
+ {\let\bbx@tempa\@empty%
+ \usebeamercolor[fg]{bibliography entry author}}{}{}
+ \pretocmd{\abx@macro@labeltitle}
+ {\ifboolexpr{ test {\ifcsundef{abx@field@label}}
+ and test {\ifcsundef{abx@field@labeltitle}} }{}{\let\bbx@tempa\labelnamepunct}}{}{}
+ \pretocmd{\abx@macro@title}
+ {\ifcsundef{abx@name@labelname}{}{\let\bbx@tempa\labelnamepunct}%
+ \bbx@tempa\newblock\unspace\usebeamercolor[fg]{bibliography entry title}}{}{}
+ \apptocmd{\abx@macro@title}
+ {\ifcsundef{abx@field@title}{}{\ifpunct{}{\midsentence\newunitpunct}}%
+ \newblock\unspace\usebeamercolor[fg]{bibliography entry note}}{}{}}
+ {}}
+
+\mode
+<article>
+{
+ \AtBeginDocument{
+ \renewcommand<>{\bibitem}{\beameroriginal{\bibitem}}%should actually suppress
+ }
+}
+
+
+
+%
+% Floats and tables
+%
+
+\newenvironment{figure}[1][]{%
+ \def\@captype{figure}%
+ \par\nobreak\begin{center}\nobreak}
+ {\par\nobreak\end{center}}
+\newcounter{figure}
+\renewcommand\thefigure{\@arabic\c@figure}
+
+\newenvironment{table}[1][]{%
+ \def\@captype{table}%
+ \par\nobreak\begin{center}\nobreak}
+ {\par\nobreak\end{center}\nobreak}
+\newcounter{table}
+\renewcommand\thetable{\@arabic\c@table}
+
+\newlength\abovecaptionskip
+\newlength\belowcaptionskip
+\setlength\abovecaptionskip{7pt}
+\setlength\belowcaptionskip{7pt}
+
+\def\caption{%
+ \ifx\@captype\@undefined
+ \@latex@error{\noexpand\caption outside figure or table}\@ehd
+ \expandafter\@gobble
+ \else
+ \refstepcounter\@captype
+ \expandafter\@firstofone
+ \fi
+ {\@dblarg{\@caption\@captype}}%
+}
+\long\def\@caption#1[#2]#3{% second argument ignored
+ \par\nobreak
+ \begingroup
+ \@parboxrestore
+ \if@minipage
+ \@setminipage
+ \fi
+ \beamer@makecaption{#1}{\ignorespaces #3}\par\nobreak
+ \endgroup}
+\long\def\beamer@makecaption#1#2{%
+ \def\insertcaptionname{\csname#1name\endcsname}%
+ \def\insertcaptionnumber{\csname the#1\endcsname}%
+ \def\insertcaption{#2}%
+ \nobreak\vskip\abovecaptionskip\nobreak
+ \sbox\@tempboxa{\usebeamertemplate**{caption}}%
+ \ifdim \wd\@tempboxa >\hsize
+ \usebeamertemplate**{caption}\par
+ \else
+ \global \@minipagefalse
+ \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \nobreak\vskip\belowcaptionskip\nobreak}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasemisc.sty b/macros/latex/contrib/beamer/base/beamerbasemisc.sty
new file mode 100644
index 0000000000..672e03520f
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasemisc.sty
@@ -0,0 +1,246 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+% Maximum dead cycles
+\maxdeadcycles=1000
+
+% Calculate maximum number of sections/subsections per part
+\beamer@subsubsectionmax=0\relax
+\beamer@subsectionmax=0\relax
+\beamer@sectionmax=0\relax
+\beamer@sectioncount=0\relax
+
+\newrobustcmd*\headcommand[1]{\global\advance\beamer@totalheads by1\relax
+ \expandafter\gdef\csname @@head\the\beamer@totalheads\endcsname{#1}}
+\newrobustcmd*\dohead{\beamer@headcounter=0\relax\loop\ifnum\beamer@headcounter<\beamer@totalheads
+ \advance\beamer@headcounter by1\relax
+ \csname @@head\the\beamer@headcounter\endcsname\repeat}
+
+\def\beamer@startpageofframe{1}
+\def\beamer@endpageofframe{1}
+\def\beamer@slidenumber{1}
+\def\beamer@overlaynumber{1}
+\def\beamer@startpageofsubsection{1}
+\def\beamer@endpageofsubsection{1}
+\def\beamer@startpageofsection{1}
+\def\beamer@endpageofsection{1}
+\def\beamer@startpageofpart{1}
+\def\beamer@endpageofpart{1}
+\def\beamer@endpageofdocument{1}
+\def\beamer@startpageofappendix{}
+\def\inserttotalframenumber{1}
+\def\insertmainframenumber{\inserttotalframenumber}
+
+\newrobustcmd*\partentry[2]{\beamer@sectioncount=0\relax}
+\def\beamer@initsectionentry#1#2#3#4#5{\advance\beamer@sectioncount by1\relax
+ \ifnum\beamer@sectionmax<\beamer@sectioncount\beamer@sectionmax=\beamer@sectioncount\fi}
+\def\beamer@initslideentry#1#2#3#4#5#6{\ifnum\beamer@subsectionmax<#2\relax\beamer@subsectionmax=#2\fi}
+\def\beamer@initsubsubsectionentry#1#2#3#4#5#6{\ifnum\beamer@subsubsectionmax<#4\relax\beamer@subsubsectionmax=#4\fi}
+\def\beamer@framepages#1#2{}
+\def\beamer@subsectionpages#1#2{}
+\def\beamer@sectionpages#1#2{}
+\def\beamer@partpages#1#2{}
+\def\beamer@appendixpages#1{\gdef\beamer@startpageofappendix{#1}}
+\def\beamer@documentpages#1{\gdef\beamer@endpageofdocument{#1}}
+
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+
+\setlength\parskip{0\p@}% \@plus \p@}
+\@lowpenalty 51
+\@medpenalty 151
+\@highpenalty 301
+\setcounter{topnumber}{2}
+\renewcommand\topfraction{.7}
+\setcounter{bottomnumber}{1}
+\renewcommand\bottomfraction{.3}
+\setcounter{totalnumber}{3}
+\renewcommand\textfraction{.9}%.2}
+\renewcommand\floatpagefraction{.1}%5}
+\setcounter{dbltopnumber}{2}
+\renewcommand\dbltopfraction{.7}
+\renewcommand\dblfloatpagefraction{.5}
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+
+\g@addto@macro\beamer@firstminutepatches{%
+ \pdfstringdefDisableCommands{%
+ \let\\=\
+ \let\newline=\\%
+ }%
+}
+
+\g@addto@macro\beamer@lastminutepatches{%
+ \beamer@activecjk
+ \makeatletter
+ \begingroup
+ \@input{\jobname.nav}%
+ \endgroup
+ \let\beamer@sectionentryorig=\sectionentry
+ \let\beamer@slideentryorig=\slideentry
+ \let\beamer@subsubsectionentryorig=\beamer@subsubsectionentry
+ \let\sectionentry=\beamer@initsectionentry
+ \let\slideentry=\beamer@initslideentry
+ \let\beamer@subsubsectionentry=\beamer@initsubsubsectionentry
+ \dohead
+ \let\sectionentry=\beamer@sectionentryorig
+ \let\slideentry=\beamer@slideentryorig
+ \let\beamer@subsubsectionentry=\beamer@subsubsectionentryorig
+ \beamer@calculateheadfoot
+ \ifbeamer@draftmode
+ \setbeamertemplate{footline}{%
+ \color{black!25}%
+ \kern-\Gm@lmargin\vrule width\paperwidth
+ height\footheight\kern-\Gm@rmargin}%
+ \setbeamertemplate{headline}{%
+ \color{black!25}%
+ \kern-\Gm@lmargin\vrule width\paperwidth
+ height\headheight\kern-\Gm@rmargin}%
+ \setbeamertemplate{sidebar left}{%
+ \color{black!20}%
+ \vrule width \beamer@leftsidebar height\sidebarheight}%
+ \setbeamertemplate{sidebar right}{%
+ \color{black!20}%
+ \vrule width \beamer@rightsidebar height\sidebarheight}%
+ \setbeamertemplate{sidebar canvas left}{}%
+ \setbeamertemplate{sidebar canvas right}{}%
+ \fi
+ \makeatother
+}
+
+\setcounter{tocdepth}{3}
+
+\setlength\arraycolsep{5\p@}
+\setlength\tabcolsep{6\p@}
+\setlength\arrayrulewidth{.4\p@}
+\setlength\doublerulesep{2\p@}
+\setlength\tabbingsep{\labelsep}
+\skip\@mpfootins = \skip\footins
+\setlength\fboxsep{3\p@}
+\setlength\fboxrule{.4\p@}
+
+\newcommand\contentsname{\translate{Contents}}
+\newcommand\listfigurename{\translate{List of Figures}}
+\newcommand\listtablename{\translate{List of Tables}}
+\newcommand\refname{\translate{References}}
+\newcommand\bibname{\translate{Bibliography}}
+\newcommand\indexname{\translate{Index}}
+\newcommand\figurename{\translate{Figure}}
+\newcommand\algorithmname{\translate{Algorithm}}
+\newcommand\tablename{\translate{Table}}
+\newcommand\partname{\translate{Part}}
+\newcommand\chaptername{\translate{Chapter}}
+\newcommand\appendixname{\translate{Appendix}}
+\newcommand\abstractname{\translate{Abstract}}
+% This is suboptimal; for full localization babel should be used.
+\def\today{\ifcase\month\or
+ \translate{January}\or \translate{February}\or \translate{March}\or
+ \translate{April}\or \translate{May}\or \translate{June}\or
+ \translate{July}\or \translate{August}\or \translate{September}\or
+ \translate{October}\or \translate{November}\or \translate{December}\fi
+ \space\number\day, \number\year}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\onecolumn
+
+\parindent0pt
+
+\AtEndDocument{%
+ \clearpage
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1 %
+ \if@filesw
+ \immediate\write\@auxout{\string\@writefile{nav}%
+ {\noexpand\headcommand{\noexpand\beamer@partpages{\the\beamer@partstartpage}{\the\beamer@tempcount}}}}%
+ \immediate\write\@auxout{\string\@writefile{nav}%
+ {\noexpand\headcommand{\noexpand\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}}%
+ \immediate\write\@auxout{\string\@writefile{nav}%
+ {\noexpand\headcommand{\noexpand\beamer@sectionpages{\the\beamer@sectionstartpage}{\the\beamer@tempcount}}}}%
+ \immediate\write\@auxout{\string\@writefile{nav}%
+ {\noexpand\headcommand{\noexpand\beamer@documentpages{\the\beamer@tempcount}}}}
+ \immediate\write\@auxout{\string\@writefile{nav}%
+ {\noexpand\headcommand{\noexpand\gdef\noexpand\inserttotalframenumber{\the\c@framenumber}}}}
+ \newwrite\tf@nav
+ \immediate\openout\tf@nav\jobname.nav\relax
+ \newwrite\tf@toc
+ \immediate\openout\tf@toc\jobname.toc\relax
+ \newwrite\tf@snm
+ \immediate\openout\tf@snm\jobname.snm\relax
+ \fi
+}
+
+%
+% Managing short inserts
+%
+
+\define@key{beamerst}{respectlinebreaks}[true]{%
+ \def\beamer@stlinebreakrule{}}
+\define@key{beamerst}{width}{%
+ \def\beamer@ststart{%
+ \begin{minipage}[t]{#1}%
+ \raggedright
+ \beamer@stalign
+ \beamer@stlinebreakrule
+ }%
+ \def\beamer@stend{\end{minipage}}}
+\define@key{beamerst}{center}[true]{%
+ \def\beamer@stalign{\centering}}
+\define@key{beamerst}{spill}[true]{%
+ \def\beamer@stalign{\parshape...}}%
+\newcommand{\beamer@setupshort}[1]{%
+ \def\beamer@stlinebreakrule{\def\\{}}%
+ \def\beamer@stalign{}%
+ \def\beamer@ststart{\hbox\bgroup\def\\{}}%
+ \def\beamer@stend{\egroup}%
+ \setkeys{beamerst}{#1}}%
+\newcommand{\beamer@insertshort}[1]{%
+ \beamer@ststart#1\beamer@stend
+}
+
+\mode
+<all>
+
+\AtBeginDocument
+{
+ \ifx\includegraphics\@undefined
+ \else
+ \renewcommand<>\includegraphics{%
+ \@ifstar
+ {\Gin@cliptrue}
+ {\Gin@clipfalse}%
+ \@ifnextchar[%]
+ {\beamer@includegraphics{#1}}
+ {\beamer@@@includegraphics{#1}{}}%
+ }
+ \long\def\beamer@includegraphics#1[#2]{%
+ \@ifnextchar[%]
+ {\beamer@@includegraphics{#1}{#2}}
+ {\beamer@@@includegraphics{#1}{#2}}%
+ }
+ \long\def\beamer@@includegraphics#1#2[#3]#4{%
+ \only#1{\beameroriginal\includegraphics[{#2}][{#3}]{#4}}%
+ }
+ \long\def\beamer@@@includegraphics#1#2#3{%
+ \only#1{\beameroriginal\includegraphics[{#2}]{#3}}%
+ }
+ \fi
+
+ \ifx\pgfuseimage\@undefined
+ \else
+ \renewcommand<>\pgfuseimage[1]{\only#2{\beameroriginal\pgfuseimage{#1}}\ignorespaces}
+ \renewcommand<>\pgfimage[2][]{\only#3{\beameroriginal\pgfimage[{#1}]{#2}}\ignorespaces}
+ \fi
+}
diff --git a/macros/latex/contrib/beamer/base/beamerbasemodes.sty b/macros/latex/contrib/beamer/base/beamerbasemodes.sty
new file mode 100644
index 0000000000..d68e0c0c15
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasemodes.sty
@@ -0,0 +1,251 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+% Force e-TeX and provide \patchcmd
+\RequirePackage{etoolbox}
+
+% Booleans for options available for both beamer and beamerarticle
+\newif\ifbeamer@blocks \beamer@blockstrue
+\newif\ifbeamer@ams \beamer@amstrue
+\newif\ifbeamer@amssymb \beamer@amssymbtrue
+\newif\ifbeamer@countsect \beamer@countsectfalse % A no-op but for clarity
+\newif\ifbeamer@keywords \beamer@keywordstrue
+
+% Scratch space
+\newbox\beamer@tempbox
+\newcount\beamer@tempcount
+
+% The pauses counter is public and global, and required by both
+% beamer and beamerarticle
+\newcounter{beamerpauses}
+
+\RequirePackage{beamerbasedecode}
+
+%
+% Presentation/article stuff
+%
+% Copyright notice: Part of the following code is taken from the
+% package comment.sty by Victor Eijkhout
+%
+
+%
+% Comment stuff. This will also be needed, if we switch to another
+% class, so define it here already.
+%
+\newif\ifbeamer@inpresentation
+\beamer@inpresentationtrue
+
+\def\beamer@startcomment{%
+ \begingroup
+ \let\do\@makeother\dospecials
+ \catcode`\^^L=12 % and whatever other special cases
+ \endlinechar`\^^M %
+ \catcode`\^^M=12 %
+ \beamer@processline}
+
+\begingroup
+ \catcode`\^^M=12\relax\endlinechar=-1\relax%
+ \long\gdef\beamer@processline#1^^M{%
+ \def\beamer@test{#1}%
+ \ifx\beamer@test\beamer@stopmodestar%
+ \let\next=\beamer@modeoutsideframe%
+ \else%
+ \ifx\beamer@test\beamer@stopmode%
+ \let\next=\mode%
+ \else%
+ \ifx\beamer@test\beamer@stoparticle%
+ \let\next=\article%
+ \else%
+ \ifx\beamer@test\beamer@stoppresentation%
+ \let\next=\presentation%
+ \else%
+ \ifx\beamer@test\beamer@stopcommon%
+ \let\next=\common%
+ \else%
+ \ifx\beamer@test\beamer@stopdocument%
+ \let\next=\beamer@enddocument%
+ \else
+ \ifx\beamer@test\beamer@begindocument%
+ \let\next=\beamer@startdocument%
+ \else
+ \let\next=\beamer@processline%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \next}
+\endgroup
+
+\def\beamer@enddocument{\beamer@closer\end{document}}
+\def\beamer@startdocument{%
+ \beamer@closer
+ \begin{document}%
+ \gdef\beamer@closer{}%
+ \mode<all>}
+\def\beamer@closer{}
+\begingroup
+ \escapechar=-1\relax
+ \xdef\beamer@stopmode{\string\\mode}
+ \xdef\beamer@stopmodestar{\string\\mode*}
+ \xdef\beamer@stoparticle{\string\\article}
+ \xdef\beamer@stoppresentation{\string\\presentation}
+ \xdef\beamer@stopcommon{\string\\common}
+ \xdef\beamer@stopdocument{\string\\end\string\{document\string\}}
+ \xdef\beamer@begindocument{\string\\begin\string\{document\string\}}
+\endgroup
+
+\newbox\beamer@commentbox
+\def\beamer@startcommentinframe{%
+ \begingroup
+ \xdef\beamer@closer{\egroup\beamer@closer}%
+ \setbox\beamer@commentbox=\vbox\bgroup\leavevmode}
+
+\def\beamer@outsidemode{\afterassignment\beamer@treat\let\beamer@nexttoken=}
+
+% Deals with the various tokens that need to be 'active' even when skipping
+% material outside frames
+\def\beamer@treat{%
+ \ifx\beamer@nexttoken\frame\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\lecture\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\note\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\appendix\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\againframe\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\section\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\subsection\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\subsubsection\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\part\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\article\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\mode\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\common\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\presentation\let\next=\beamer@stopoutsidemode\fi
+ \ifx\beamer@nexttoken\begin\let\next=\beamer@checkbeginframe\fi
+ \ifx\beamer@nexttoken\end\let\next=\beamer@checkenddoc\fi
+ \next}
+
+\def\beamer@stopoutsidemode{\beamer@nexttoken}
+\def\beamer@checkenddoc#1{%
+ \def\beamer@temp{#1}%
+ \ifx\beamer@temp\beamer@enddoc
+ \let\next=\beamer@enddocument
+ \else
+ \let\next=\beamer@outsidemode
+ \fi
+ \next}
+\def\beamer@enddoc{document}
+
+\def\beamer@checkbeginframe#1{%
+ \def\beamer@temp{#1}%
+ \ifx\beamer@temp\beamer@frametext
+ \let\next=\beamer@beginframeenv
+ \else
+ \let\next=\beamer@outsidemode
+ \fi
+ \next}
+\def\beamer@beginframeenv{\begin{frame}}
+
+\def\beamer@modeoutsideframe{%
+ \beamer@closer
+ \gdef\beamer@closer{}%
+ \gdef\beamer@mode{\beamer@modeoutsideframe}%
+ \ifbeamer@inpresentation
+ \let\next=\beamer@outsidemode
+ \else
+ \let\next=\relax
+ \fi%
+ \next}
+
+% Obsolete, do not use!
+\newrobustcmd*\presentation{\mode<presentation>}
+\newrobustcmd*\article{\mode<article>}
+\newrobustcmd*\common{\mode<all>}
+
+%
+% Mode command
+%
+\newrobustcmd*\mode{\@ifstar\beamer@modeoutsideframe\beamer@@@mode}
+\def\beamer@@@mode<#1>{%
+ \beamer@closer
+ \@ifnextchar\bgroup
+ {\beamer@modeinline<#1>}%
+ {\beamer@switchmode<#1>}}
+\long\def\beamer@modeinline<#1>#2{%
+ \gdef\beamer@closer{}%
+ \gdef\beamer@doifnotinframe{\@gobble}%
+ \def\beamer@doifinframe{\@firstofone}%
+ \begingroup
+ \beamer@saveanother
+ \beamer@slideinframe=1\relax%
+ \beamer@masterdecode{#1}%
+ \beamer@restoreanother
+ \endgroup
+ \beamer@donow{#2}%
+ \beamer@mode\par}
+\def\beamer@switchmode<#1>{%
+ \gdef\beamer@mode{\beamer@switchmode<#1>}%
+ \gdef\beamer@doifnotinframe{%
+ \let\next=\beamer@startcomment
+ \gdef\beamer@closer{\endgroup}%
+ }%
+ \def\beamer@doifinframe{%
+ \let\next=\relax
+ \gdef\beamer@closer{}%
+ }%
+ \begingroup
+ \beamer@saveanother
+ \beamer@slideinframe=1\relax%
+ \beamer@masterdecode{#1}%
+ \beamer@restoreanother
+ \endgroup
+ \beamer@donow
+ \next}
+
+\def\beamer@saveanother{\let\beamer@savedif=\ifbeamer@anotherslide}
+\def\beamer@restoreanother{\global\let\ifbeamer@anotherslide=\beamer@savedif}
+
+\mode
+<all>
+
+\newcount\beamer@modecount
+\def\beamer@pushmode#1{%
+ \expandafter\gdef\csname beamer@savedmode@\the\beamer@modecount\endcsname{#1}%
+ \global\advance\beamer@modecount by1\relax}
+\def\beamer@popmode{
+ \global\advance\beamer@modecount by-1\relax%
+ \csname beamer@savedmode@\the\beamer@modecount\endcsname}
+
+\def\beamer@savemode{\expandafter\beamer@pushmode\expandafter{\beamer@mode}}
+\def\beamer@resumemode{\beamer@popmode}
+
+%
+% Stuff needed in both article and presentation version
+%
+\newcommand*\jobnamebeamerversion{}
+
+\newrobustcmd*\includeslide[2][]{%
+ \ifx\jobnamebeamerversion\@empty
+ \ClassError{beamer}{Invoke macro "setjobnamebeamerversion" first}\@ehc
+ \else
+ \edef\beamer@args
+ {[{#1,page=\csname beamer@slide#2\endcsname}]{\jobnamebeamerversion}}%
+ \expandafter\pgfimage\beamer@args
+ \fi}
+
+\newrobustcmd*\setjobnamebeamerversion[1]{%
+ \gdef\jobnamebeamerversion{#1}%
+ \begingroup
+ \makeatletter
+ \@input{\jobnamebeamerversion.snm}%
+ \endgroup}
diff --git a/macros/latex/contrib/beamer/base/beamerbasenavigation.sty b/macros/latex/contrib/beamer/base/beamerbasenavigation.sty
new file mode 100644
index 0000000000..59886007c4
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasenavigation.sty
@@ -0,0 +1,900 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+%
+% Navigation buttons
+%
+
+% The following commands are called by the .nav file.
+\def\beamer@framepages#1#2{%
+ \ifnum\c@page<#1%
+ \else%
+ \ifnum\c@page>#2%
+ \else%
+ \gdef\beamer@startpageofframe{#1}%
+ \gdef\beamer@endpageofframe{#2}%
+ \fi%
+ \fi%
+}
+\def\beamer@subsectionpages#1#2{%
+ \ifnum\c@page<#1%
+ \else%
+ \ifnum\c@page>#2%
+ \else%
+ \gdef\beamer@startpageofsubsection{#1}%
+ \gdef\beamer@endpageofsubsection{#2}%
+ \fi%
+ \fi%
+}
+\def\beamer@sectionpages#1#2{%
+ \ifnum\c@page<#1%
+ \else%
+ \ifnum\c@page>#2%
+ \else%
+ \gdef\beamer@startpageofsection{#1}%
+ \gdef\beamer@endpageofsection{#2}%
+ \fi%
+ \fi%
+}
+\def\beamer@partpages#1#2{%
+ \ifnum\c@page<#1%
+ \else%
+ \ifnum\c@page>#2%
+ \else%
+ \gdef\beamer@startpageofpart{#1}%
+ \gdef\beamer@endpageofpart{#2}%
+ \fi%
+ \fi%
+}
+\def\beamer@nextpage#1{%
+ \beamer@tempcount=#1%
+ \advance\beamer@tempcount by1\relax%
+ \ifnum\beamer@tempcount>\beamer@endpageofdocument%
+ \beamer@tempcount=\beamer@endpageofdocument%
+ \fi}
+\def\beamer@prevpage#1{%
+ \beamer@tempcount=#1\relax%
+ \ifnum\beamer@tempcount>1%
+ \advance\beamer@tempcount by-1%
+ \fi%
+}
+
+\def\hyperlinkslideprev{%
+ \beamer@prevpage\c@page%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinkslidenext{%
+ \beamer@nextpage\c@page%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinkframestart{\hyperlink{Navigation\beamer@startpageofframe}}
+\def\hyperlinkframeend{\hyperlink{Navigation\beamer@endpageofframe}}
+\def\hyperlinkframestartnext{%
+ \beamer@nextpage\beamer@endpageofframe%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinkframeendprev{%
+ \beamer@prevpage\beamer@startpageofframe%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+
+\def\hyperlinksubsectionstart{\hyperlink{Navigation\beamer@startpageofsubsection}}
+\def\hyperlinksubsectionend{\hyperlink{Navigation\beamer@endpageofsubsection}}
+\def\hyperlinksubsectionstartnext{%
+ \beamer@nextpage\beamer@endpageofsubsection%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinksubsectionendprev{%
+ \beamer@prevpage\beamer@startpageofsubsection%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+
+\def\hyperlinksectionstart{\hyperlink{Navigation\beamer@startpageofsection}}
+\def\hyperlinksectionend{\hyperlink{Navigation\beamer@endpageofsection}}
+\def\hyperlinksectionstartnext{%
+ \beamer@nextpage\beamer@endpageofsection%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinksectionendprev{%
+ \beamer@prevpage\beamer@startpageofsection%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+
+\def\hyperlinkpartstart{\hyperlink{Navigation\beamer@startpageofpart}}
+\def\hyperlinkpartend{\hyperlink{Navigation\beamer@endpageofpart}}
+\def\hyperlinkpartstartnext{%
+ \beamer@nextpage\beamer@endpageofpart%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinkpartendprev{%
+ \beamer@prevpage\beamer@startpageofpart%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+
+\def\hyperlinkpresentationstart{\hyperlink{Navigation1}}
+\def\hyperlinkpresentationend{%
+ \ifx\beamer@startpageofappendix\@empty%
+ \beamer@tempcount=\beamer@endpageofdocument%
+ \else%
+ \beamer@prevpage\beamer@startpageofappendix%
+ \fi%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinkappendixstart{%
+ \ifx\beamer@startpageofappendix\@empty%
+ \beamer@tempcount=\beamer@endpageofdocument%
+ \else%
+ \beamer@tempcount=\beamer@startpageofappendix%
+ \fi%
+ \hyperlink{Navigation\the\beamer@tempcount}}
+\def\hyperlinkappendixend{\hyperlink{Navigation\beamer@endpageofdocument}}
+
+\def\hyperlinkdocumentstart{\hyperlink{Navigation1}}
+\def\hyperlinkdocumentend{\hyperlink{Navigation\beamer@endpageofdocument}}
+
+\mode
+<article>
+{
+ \newcommand<>\hyperlinkslideprev[1]{}
+ \newcommand<>\hyperlinkslidenext[1]{}
+
+ \newcommand<>\hyperlinkframestart[1]{}
+ \newcommand<>\hyperlinkframeend[1]{}
+ \newcommand<>\hyperlinkframestartnext[1]{}
+ \newcommand<>\hyperlinkframeendprev[1]{}
+
+ \newcommand<>\hyperlinksubsectionstart[1]{}
+ \newcommand<>\hyperlinksubsectionend[1]{}
+ \newcommand<>\hyperlinksubsectionstartnext[1]{}
+ \newcommand<>\hyperlinksubsectionendprev[1]{}
+
+ \newcommand<>\hyperlinksectionstart[1]{}
+ \newcommand<>\hyperlinksectionend[1]{}
+ \newcommand<>\hyperlinksectionstartnext[1]{}
+ \newcommand<>\hyperlinksectionendprev[1]{}
+
+ \newcommand<>\hyperlinkpartstart[1]{}
+ \newcommand<>\hyperlinkpartend[1]{}
+ \newcommand<>\hyperlinkpartstartnext[1]{}
+ \newcommand<>\hyperlinkpartendprev[1]{}
+
+ \newcommand<>\hyperlinkpresentationstart[1]{}
+ \newcommand<>\hyperlinkpresentationend[1]{}
+ \newcommand<>\hyperlinkappendixstart[1]{}
+ \newcommand<>\hyperlinkappendixend[1]{}
+
+ \newcommand<>\hyperlinkdocumentstart[1]{}
+ \newcommand<>\hyperlinkdocumentend[1]{}
+}
+
+\newcommand\insertframestartpage{\beamer@startpageofframe}
+\newcommand\insertframeendpage{\beamer@endpageofframe}
+\newcommand\insertsubsectionstartpage{\beamer@startpageofsubsection}
+\newcommand\insertsubsectionendpage{\beamer@endpageofsubsection}
+\newcommand\insertsectionstartpage{\beamer@startpageofsection}
+\newcommand\insertsectionendpage{\beamer@endpageofsection}
+\newcommand\insertpartstartpage{\beamer@startpageofpart}
+\newcommand\insertpartendpage{\beamer@endpageofpart}
+\newcommand\insertpresentationstartpage{1}
+\newcommand\insertpresentationendpage{{%
+ \ifx\beamer@startpageofappendix\@empty%
+ \beamer@tempcount=\beamer@endpageofdocument\relax%
+ \else%
+ \beamer@prevpage\beamer@startpageofappendix\relax%
+ \fi%
+ \the\beamer@tempcount}}
+\newcommand\insertappendixstartpage{{%
+ \ifx\beamer@startpageofappendix\@empty%
+ \beamer@tempcount=\beamer@endpageofdocument\relax%
+ \else%
+ \beamer@tempcount=\beamer@startpageofappendix\relax%
+ \fi%
+ \the\beamer@tempcount}}
+\newcommand\insertappendixendpage{\beamer@endpageofdocument}
+\newcommand\insertdocumentstartpage{1}
+\newcommand\insertdocumentendpage{\beamer@endpageofdocument}
+
+
+%
+% Navigation Button Art
+%
+
+\def\beamer@linkspace#1{\vbox to7.5pt{}\kern#1}
+
+% Due to what could be regarded as a bug in hyperref or DVIPDFm and
+% derivatives, no links are made to empty boxes with XeTeX. This is
+% fixed by drawing some 'real' content, which makes the PDF bigger!
+\begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname XeTeXrevision\endcsname\relax
+ \expandafter\@gobble
+\else
+ \expandafter\@firstofone
+\fi
+ {%
+ \def\beamer@linkspace#1{%
+ \begin{pgfpicture}{0pt}{-1.5pt}{#1}{5.5pt}
+ \pgfsetfillopacity{0}
+ \pgftext[x=0pt,y=-1.5pt]{.}
+ \pgftext[x=#1,y=5.5pt]{.}
+ \end{pgfpicture}}
+ }
+
+\pgfdefobject{beamerslidenavlight}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+ {\pgfpathqmoveto{4bp}{0.5bp}
+ \pgfpathqlineto{2bp}{2bp}
+ \pgfpathqlineto{4bp}{3.5bp}
+ \pgfusepathqfill
+ \pgfpathqmoveto{16bp}{0.5bp}
+ \pgfpathqlineto{18bp}{2bp}
+ \pgfpathqlineto{16bp}{3.5bp}
+ \pgfusepathqfill}
+\pgfdefobject{beamerslidenavstrong}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfpathrectangle{\pgfpoint{8.3pt}{0.8pt}}{\pgfpoint{3.4pt}{2.4pt}}%
+ \pgfusepathqstroke%
+}
+
+\def\insertslidenavigationsymbol{%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamerslidenavstrong}%
+ \usebeamercolor[fg]{navigation symbols dimmed}
+ \pgfuseobject{beamerslidenavlight}%
+ \end{pgfpicture}\kern-20pt%
+ \hyperlinkslideprev{\beamer@linkspace{6pt}}%
+ \Acrobatmenu{GoToPage}{\beamer@linkspace{8pt}}%
+ \hyperlinkslidenext{\beamer@linkspace{6pt}}}
+
+\pgfdefobject{beamerframenavlight}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+ {\pgfpathqmoveto{4bp}{0.5bp}
+ \pgfpathqlineto{2bp}{2bp}
+ \pgfpathqlineto{4bp}{3.5bp}
+ \pgfpathqmoveto{16bp}{0.5bp}
+ \pgfpathqlineto{18bp}{2bp}
+ \pgfpathqlineto{16bp}{3.5bp}
+ \pgfusepathqfill}
+\pgfdefobject{beamerframenavstrong}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfpathrectangle{\pgfpoint{7pt}{0pt}}{\pgfpoint{3.4pt}{2.4pt}}
+ \pgfpathqmoveto{7.8bp}{2.4bp}
+ \pgfpathqlineto{7.8bp}{3.2bp}
+ \pgfpathqlineto{11.2bp}{3.2bp}
+ \pgfpathqlineto{11.2bp}{.8bp}
+ \pgfpathqlineto{10.4bp}{.8bp}
+ \pgfpathqmoveto{8.6bp}{3.2bp}
+ \pgfpathqlineto{8.6bp}{4bp}
+ \pgfpathqlineto{12bp}{4bp}
+ \pgfpathqlineto{12bp}{1.6bp}
+ \pgfpathqlineto{11.2bp}{1.6bp}
+ \pgfusepathqstroke}
+
+\def\insertframenavigationsymbol{%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamerframenavstrong}%
+ \usebeamercolor[fg]{navigation symbols dimmed}
+ \pgfuseobject{beamerframenavlight}%
+ \end{pgfpicture}\kern-20pt%
+ \hyperlinkframeendprev{\beamer@linkspace{5pt}}%
+ \hyperlinkframestart{\beamer@linkspace{5pt}}%
+ \hyperlinkframeend{\beamer@linkspace{5pt}}%
+ \hyperlinkframestartnext{\beamer@linkspace{5pt}}}
+
+\pgfdefobject{beamersubsectionnavlight}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfpathqmoveto{4bp}{0.5bp}
+ \pgfpathqlineto{2bp}{2bp}
+ \pgfpathqlineto{4bp}{3.5bp}
+ \pgfpathqmoveto{16bp}{0.5bp}
+ \pgfpathqlineto{18bp}{2bp}
+ \pgfpathqlineto{16bp}{3.5bp}
+ \pgfusepathqfill
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{8bp}{4bp}
+ \pgfpathqlineto{11bp}{4bp}
+ \pgfpathqmoveto{9bp}{2bp}
+ \pgfpathqlineto{12bp}{2bp}
+ \pgfpathqmoveto{8bp}{1bp}
+ \pgfpathqlineto{11bp}{1bp}
+ \pgfpathqmoveto{9bp}{0bp}
+ \pgfpathqlineto{12bp}{0bp}
+ \pgfusepathqstroke}
+\pgfdefobject{beamersubsectionnavstrong}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{9bp}{3bp}
+ \pgfpathqlineto{12bp}{3bp}
+ \pgfusepathqstroke}
+
+\def\insertsubsectionnavigationsymbol{%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamersubsectionnavstrong}%
+ \usebeamercolor[fg]{navigation symbols dimmed}
+ \pgfuseobject{beamersubsectionnavlight}%
+ \end{pgfpicture}\kern-20pt%
+ \hyperlinksubsectionendprev{\beamer@linkspace{5pt}}%
+ \hyperlinksubsectionstart{\beamer@linkspace{5pt}}%
+ \hyperlinksubsectionend{\beamer@linkspace{5pt}}%
+ \hyperlinksubsectionstartnext{\beamer@linkspace{5pt}}}
+
+\pgfdefobject{beamersectionnavlight}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfpathqmoveto{4bp}{0.5bp}
+ \pgfpathqlineto{2bp}{2bp}
+ \pgfpathqlineto{4bp}{3.5bp}
+ \pgfpathqmoveto{16bp}{0.5bp}
+ \pgfpathqlineto{18bp}{2bp}
+ \pgfpathqlineto{16bp}{3.5bp}
+ \pgfusepathqfill
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{8bp}{1bp}
+ \pgfpathqlineto{11bp}{1bp}
+ \pgfpathqmoveto{9bp}{0bp}
+ \pgfpathqlineto{12bp}{0bp}
+ \pgfusepathqstroke}
+\pgfdefobject{beamersectionnavstrong}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{8bp}{4bp}
+ \pgfpathqlineto{11bp}{4bp}
+ \pgfpathqmoveto{9bp}{3bp}
+ \pgfpathqlineto{12bp}{3bp}
+ \pgfpathqmoveto{9bp}{2bp}
+ \pgfpathqlineto{12bp}{2bp}
+ \pgfusepathqstroke
+}
+
+\def\insertsectionnavigationsymbol{%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamersectionnavstrong}%
+ \usebeamercolor[fg]{navigation symbols dimmed}
+ \pgfuseobject{beamersectionnavlight}%
+ \end{pgfpicture}\kern-20pt%
+ \hyperlinksectionendprev{\beamer@linkspace{5pt}}%
+ \hyperlinksectionstart{\beamer@linkspace{5pt}}%
+ \hyperlinksectionend{\beamer@linkspace{5pt}}%
+ \hyperlinksectionstartnext{\beamer@linkspace{5pt}}}
+
+\pgfdefobject{beamerdocnavlight}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfpathqmoveto{10bp}{-.5bp}
+ \pgfpathqlineto{10bp}{4.5bp}
+ \pgfusepathqstroke
+}
+\pgfdefobject{beamerdocnavstrong}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{4bp}{4bp}
+ \pgfpathqlineto{7bp}{4bp}
+ \pgfpathqmoveto{5bp}{3bp}
+ \pgfpathqlineto{8bp}{3bp}
+ \pgfpathqmoveto{5bp}{2bp}
+ \pgfpathqlineto{8bp}{2bp}
+ \pgfpathqmoveto{3bp}{1bp}
+ \pgfpathqlineto{7bp}{1bp}
+ \pgfpathqmoveto{5bp}{0bp}
+ \pgfpathqlineto{8bp}{0bp}
+ \pgfpathqmoveto{12bp}{3bp}
+ \pgfpathqlineto{15bp}{3bp}
+ \pgfpathqmoveto{13bp}{2bp}
+ \pgfpathqlineto{16bp}{2bp}
+ \pgfpathqmoveto{13bp}{1bp}
+ \pgfpathqlineto{16bp}{1bp}
+ \pgfusepathqstroke
+}
+
+\pgfdefobject{beamerdocnavstrongsingle}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{%
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{8bp}{4bp}
+ \pgfpathqlineto{11bp}{4bp}
+ \pgfpathqmoveto{9bp}{3bp}
+ \pgfpathqlineto{12bp}{3bp}
+ \pgfpathqmoveto{9bp}{2bp}
+ \pgfpathqlineto{12bp}{2bp}
+ \pgfpathqmoveto{8bp}{1bp}
+ \pgfpathqlineto{11bp}{1bp}
+ \pgfpathqmoveto{9bp}{0bp}
+ \pgfpathqlineto{12bp}{0bp}
+ \pgfusepathqstroke%
+}
+
+\def\insertdocnavigationsymbol{%
+ \ifx\beamer@startpageofappendix\@empty%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamerdocnavstrongsingle}%
+ \end{pgfpicture}\kern-20pt%
+ \hyperlinkpresentationstart{\beamer@linkspace{9pt}}%
+ \hyperlinkpresentationend{\beamer@linkspace{11pt}}%
+ \else%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamerdocnavstrong}%
+ \usebeamercolor[fg]{navigation symbols dimmed}
+ \pgfuseobject{beamerdocnavlight}%
+ \end{pgfpicture}\kern-20pt%
+ \hyperlinkpresentationstart{\beamer@linkspace{5pt}}%
+ \hyperlinkpresentationend{\beamer@linkspace{5pt}}%
+ \hyperlinkappendixstart{\beamer@linkspace{3.5pt}}%
+ \hyperlinkappendixend{\beamer@linkspace{6.5pt}}%
+ \fi}
+
+\pgfdefobject{beamerbackfindforwardnav}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{20pt}{5pt}}
+{
+ % search symbol
+ \pgfsetlinewidth{0.6pt}
+ \pgfpathqmoveto{10.4bp}{1.6bp}
+ \pgfpathqlineto{12bp}{0bp}
+ \pgfusepathqstroke
+ \pgfsetlinewidth{0.4pt}
+ \pgfpathcircle{\pgfpoint{9.5pt}{2.5pt}}{1.2pt}
+ \pgfusepathqstroke
+ % left arrow
+ \pgfsetroundcap
+ \pgfpathqmoveto{4bp}{0bp}
+ \pgfpathqcurveto{5.1pt}{0pt}{6bp}{0.9bp}{6bp}{2bp}
+ \pgfpathqcurveto{6bp}{3.1bp}{5.1bp}{4bp}{4bp}{4bp}
+ \pgfpathqcurveto{2.9bp}{4bp}{2bp}{3.1bp}{2bp}{2bp}
+ \pgfpathqmoveto{3.2bp}{2.6bp}
+ \pgfpathqlineto{2bp}{1.6bp}
+ \pgfpathqlineto{0.8bp}{2.6bp}
+ % right arrow
+ \pgfpathqmoveto{16bp}{0bp}
+ \pgfpathqcurveto{14.9bp}{0bp}{14bp}{0.9bp}{14bp}{2bp}
+ \pgfpathqcurveto{14bp}{3.1bp}{14.9bp}{4bp}{16bp}{4bp}
+ \pgfpathqcurveto{17.1bp}{4bp}{18bp}{3.1bp}{18bp}{2bp}
+ \pgfpathqmoveto{19.2bp}{2.6bp}
+ \pgfpathqlineto{18bp}{1.6bp}
+ \pgfpathqlineto{16.8bp}{2.6bp}
+ \pgfusepathqstroke
+}
+
+\def\insertbackfindforwardnavigationsymbol{%
+ \begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
+ \pgfuseobject{beamerbackfindforwardnav}%
+ \end{pgfpicture}\kern-20pt%
+ \Acrobatmenu{GoBack}{\beamer@linkspace{7pt}}%
+ \Acrobatmenu{Find}{\beamer@linkspace{6pt}}%
+ \Acrobatmenu{GoForward}{\beamer@linkspace{7pt}}}
+
+
+
+%
+% User Buttons
+%
+
+\pgfdefobject{beamergotosymbol}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{5pt}{5pt}}
+{
+ \pgfpathqmoveto{1.5bp}{0.5bp}
+ \pgfpathqlineto{3.5bp}{2bp}
+ \pgfpathqlineto{1.5bp}{3.5bp}
+ \pgfusepathqfill
+}
+
+\def\insertgotosymbol{%
+ \begin{pgfpicture}{1pt}{0pt}{6pt}{5pt}
+ \pgfuseobject{beamergotosymbol}%
+ \end{pgfpicture}}
+
+\pgfdefobject{beamerskipsymbol}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{7pt}{5pt}}
+{
+ \pgfpathqmoveto{1.5bp}{0.5bp}
+ \pgfpathqlineto{3.5bp}{2bp}
+ \pgfpathqlineto{1.5bp}{3.5bp}
+ \pgfpathqmoveto{3.5bp}{0.5bp}
+ \pgfpathqlineto{5.5bp}{2bp}
+ \pgfpathqlineto{3.5bp}{3.5bp}
+ \pgfusepathqfill
+}
+
+\def\insertskipsymbol{%
+ \begin{pgfpicture}{1pt}{0pt}{8pt}{5pt}
+ \pgfuseobject{beamerskipsymbol}%
+ \end{pgfpicture}}
+
+
+\pgfdefobject{beamerreturnsymbol}{\pgfpoint{0pt}{-1pt}}{\pgfpoint{5pt}{5pt}}
+{
+ \pgfpathqmoveto{3.5bp}{0.5bp}
+ \pgfpathqlineto{1.5bp}{2bp}
+ \pgfpathqlineto{3.5bp}{3.5bp}
+ \pgfusepathqfill
+}
+
+\def\insertreturnsymbol{%
+ \begin{pgfpicture}{1pt}{0pt}{6pt}{5pt}
+ \pgfuseobject{beamerreturnsymbol}%
+ \end{pgfpicture}}
+
+
+\def\beamerbutton#1{\def\insertbuttontext{#1}\usebeamertemplate**{button}}
+\def\beamergotobutton#1{\beamerbutton{\insertgotosymbol#1}}
+\def\beamerskipbutton#1{\beamerbutton{\insertskipsymbol#1}}
+\def\beamerreturnbutton#1{\beamerbutton{\insertreturnsymbol#1}}
+
+\mode
+<article>
+{
+ \let\beamerbutton=\@firstofone
+ \let\beamergotobutton=\beamerbutton
+ \let\beamerskipbutton=\beamerbutton
+ \let\beamerreturnbutton=\beamerbutton
+}
+
+
+%
+% Inserting navigation bars
+%
+
+\newdimen\beamer@section@min@dim
+\newcommand*{\beamer@section@set@min@width}{%
+ \ifdim\wd\beamer@sectionbox>\beamer@section@min@dim
+ \else
+ \setbox\beamer@sectionbox=\hbox to \beamer@section@min@dim
+ {\box\beamer@sectionbox\hfil}%
+ \global\beamer@section@min@dim\z@
+ \fi
+}
+
+\def\insertnavigation#1{%
+ \vbox{{%
+ \usebeamerfont{section in head/foot}\usebeamercolor[fg]{section in head/foot}%
+ \beamer@xpos=0\relax%
+ \beamer@ypos=1\relax%
+ \beamer@ypos@offset=0\relax%
+ \hbox to #1{\hskip.3cm\setbox\beamer@sectionbox=\hbox{\kern1sp}%
+ \ht\beamer@sectionbox=1.875ex%
+ \dp\beamer@sectionbox=0.75ex%
+ \hskip-1.875ex plus-1fill%
+ \global\beamer@section@min@dim\z@
+ \dohead%
+ \beamer@section@set@min@width
+ \box\beamer@sectionbox\hfil\hskip.3cm}%
+ }}}
+
+\def\sectionentry#1#2#3#4#5{% section number, section title, page
+ \beamer@xpos=0\relax%
+ \beamer@ypos=1\relax%
+ \beamer@ypos@offset=0\relax%
+ \ifnum#5=\c@part%
+ \beamer@section@set@min@width%
+ \box\beamer@sectionbox\hskip1.875ex plus 1fill%
+ \setbox\beamer@sectionbox=
+ \hbox{\def\insertsectionhead{#2}%
+ \def\insertsectionheadnumber{#1}%
+ \def\insertpartheadnumber{#5}%
+ {%
+ \usebeamerfont{section in head/foot}\usebeamercolor[fg]{section in head/foot}%
+ \ifnum\c@section=#1%
+ \hyperlink{Navigation#3}{{\usebeamertemplate{section in head/foot}}}%
+ \else%
+ \hyperlink{Navigation#3}{{\usebeamertemplate{section in head/foot shaded}}}%
+ \fi}%
+ }%
+ \ht\beamer@sectionbox=1.875ex%
+ \dp\beamer@sectionbox=0.75ex%
+ \fi\ignorespaces}
+
+\def\beamer@nav@subsectionstyle#1{\beamer@toc@sprocess\beamer@nav@css\beamer@nav@oss\beamer@nav@ooss#1///}
+\beamer@nav@subsectionstyle{show}
+
+\def\beamer@subsectionentry#1#2#3#4#5{}% no effect by default.
+\def\beamer@subsubsectionentry#1#2#3#4#5#6{}% no effect by default.
+
+\def\insertverticalnavigation#1{%
+ \vbox{%
+ \def\sectionentry##1##2##3##4##5{%
+ \ifnum##5=\c@part%
+ \def\insertsectionhead{##2}%
+ \def\insertsectionheadnumber{##1}%
+ \def\insertpartheadnumber{##5}%
+ \hbox to #1{{%
+ \usebeamerfont{section in sidebar}\usebeamercolor[fg]{section in sidebar}%
+ \hyperlink{Navigation##3}{%
+ \ifnum\c@section=##1%
+ \ifnum\c@subsection=0\relax%
+ {\usebeamertemplate{section in sidebar}}%
+ \else%
+ \ifx\beamer@nav@css\beamer@hidetext%
+ {\usebeamertemplate{section in sidebar}}%
+ \else%
+ {\usebeamertemplate{section in sidebar shaded}}%
+ \fi%
+ \fi%
+ \else
+ {\usebeamertemplate{section in sidebar shaded}}%
+ \fi}}}%
+ \beamer@currentsubsection=0\relax\fi}%
+ \def\slideentry##1##2##3##4##5##6{}%
+ \def\beamer@subsectionentry##1##2##3##4##5{%
+ \ifnum##1=\c@part%
+ \def\insertpartheadnumber{##1}%
+ \def\insertsectionheadnumber{##2}%
+ \def\insertsubsectionheadnumber{##3}%
+ \def\insertsubsectionhead{##5}%
+ \beamer@tocifnothide{\ifnum\c@section=##2\ifnum\c@subsection=##3\beamer@nav@css\else\beamer@nav@oss\fi\else\beamer@nav@ooss\fi}%
+ {\hbox{{%
+ \usebeamerfont{subsection in sidebar}\usebeamercolor[fg]{subsection in sidebar}%
+ \hyperlink{Navigation##4}{%
+ \ifnum\c@section=##2%
+ \ifnum\c@subsection=##3%
+ \ifnum\c@subsubsection=0\relax%
+ {\usebeamertemplate{subsection in sidebar}}%
+ \else%
+ {\usebeamertemplate{subsection in sidebar shaded}}%
+ \fi%
+ \else%
+ {\usebeamertemplate{subsection in sidebar shaded}}%
+ \fi%
+ \else%
+ {\usebeamertemplate{subsection in sidebar shaded}}%
+ \fi}}}%
+ }%
+ \fi}%
+ \def\beamer@subsubsectionentry##1##2##3##4##5##6{%
+ \ifnum##1=\c@part%
+ \def\insertpartheadnumber{##1}%
+ \def\insertsectionheadnumber{##2}%
+ \def\insertsubsectionheadnumber{##3}%
+ \def\insertsubsubsectionheadnumber{##4}%
+ \def\insertsubsubsectionhead{##6}%
+ \beamer@tocifnothide{\ifnum\c@section=##2\ifnum\c@subsection=##3\ifnum\c@subsubsection=##4\beamer@nav@css\else\beamer@nav@oss\fi\else\beamer@nav@ooss\fi\else\beamer@nav@ooss\fi}%
+ {\hbox{{%
+ \usebeamerfont{subsubsection in sidebar}\usebeamercolor[fg]{subsubsection in sidebar}%
+ \hyperlink{Navigation##5}{%
+ \ifnum\c@section=##2%
+ \ifnum\c@subsection=##3%
+ \ifnum\c@subsubsection=##4%
+ {\usebeamertemplate{subsubsection in sidebar}}%
+ \else
+ {\usebeamertemplate{subsubsection in sidebar shaded}}%
+ \fi%
+ \else%
+ {\usebeamertemplate{subsubsection in sidebar shaded}}%
+ \fi%
+ \else%
+ {\usebeamertemplate{subsubsection in sidebar shaded}}%
+ \fi}}}%
+ }%
+ \fi}%
+ %\beamer@currentsubsection=0\relax%
+ \dohead%
+ }%
+}
+
+\def\slideentry#1#2#3#4#5#6{%
+ %section number, subsection number, slide number, first/last frame, page number, part number
+ \ifnum#6=\c@part\ifnum#1>0\ifnum#3>0%
+ \ifbeamer@compress%
+ \advance\beamer@xpos by1\relax%
+ \else%
+ \ifnum#2=0%
+ \beamer@ypos@offset=1\relax%
+ \fi
+ \beamer@xpos=#3\relax%
+ \beamer@ypos=#2\relax%
+ \advance\beamer@ypos by \beamer@ypos@offset\relax
+ \fi%
+ \hbox to 0pt{%
+ \beamer@tempdim=-\beamer@vboxoffset%
+ \advance\beamer@tempdim by-\beamer@boxsize%
+ \multiply\beamer@tempdim by\beamer@ypos%
+ \advance\beamer@tempdim by -.05cm%
+ \raise\beamer@tempdim\hbox{%
+ \beamer@tempdim=\beamer@boxsize%
+ \multiply\beamer@tempdim by\beamer@xpos%
+ \advance\beamer@tempdim by -\beamer@boxsize%
+ \advance\beamer@tempdim by 1pt%
+ \kern\beamer@tempdim
+ \global\beamer@section@min@dim\beamer@tempdim
+ \hbox{\beamer@link(#4){%
+ \usebeamerfont{mini frame}%
+ \ifnum\c@section=#1%
+ \ifnum\c@subsection=#2%
+ \usebeamercolor[fg]{mini frame}%
+ \ifnum\c@subsectionslide=#3%
+ \usebeamertemplate{mini frame}%\beamer@minislidehilight%
+ \else%
+ \usebeamertemplate{mini frame in current subsection}%\beamer@minisliderowhilight%
+ \fi%
+ \else%
+ \usebeamercolor{mini frame}%
+ %\color{fg!50!bg}%
+ \usebeamertemplate{mini frame in other subsection}%\beamer@minislide%
+ \fi%
+ \else%
+ \usebeamercolor{mini frame}%
+ %\color{fg!50!bg}%
+ \usebeamertemplate{mini frame in other subsection}%\beamer@minislide%
+ \fi%
+ }}}\hskip-10cm plus 1fil%
+ }\fi\fi%
+ \else%
+ \fakeslideentry{#1}{#2}{#3}{#4}{#5}{#6}%
+ \fi\ignorespaces
+ }
+
+\def\fakeslideentry#1#2#3#4#5#6{%
+ \ifnum#1>0\ifnum#3>0%
+ \ifbeamer@compress%
+ \advance\beamer@xpos by1\relax%
+ \else%
+ \ifnum#2=0%
+ \beamer@ypos@offset=1\relax%
+ \fi
+ \beamer@xpos=#3\relax%
+ \beamer@ypos=#2\relax%
+ \advance\beamer@ypos by \beamer@ypos@offset\relax
+ \fi%
+ \hbox to 0pt{\beamer@tempdim=-\beamer@vboxoffset%
+ \advance\beamer@tempdim by -\beamer@boxsize%
+ \multiply\beamer@tempdim by\beamer@ypos%
+ \advance\beamer@tempdim by -.05cm%
+ \raise\beamer@tempdim\hbox{}}\fi\fi\ignorespaces}
+
+
+\def\beamer@link(#1/#2){%
+ \def\beamer@goto{{Navigation#1}}% default: first slide of frame
+ \ifnum\c@page<#2%
+ \ifnum\c@page<#1\else% go to last slide of frame, on all slides of
+ % the frame, except for the last one
+ \def\beamer@goto{{Navigation#2}}% jump to last slide of frame
+ \fi\fi%
+ \expandafter\hyperlink\beamer@goto}
+
+\define@key{beamer@margin}{mini frame size}{\beamer@boxsize=#1}
+\define@key{beamer@margin}{mini frame offset}{\beamer@vboxoffset=#1}
+
+\def\insertsectionnavigation#1{%
+ \hbox to #1{%
+ \vbox{{\usebeamerfont{section in head/foot}\usebeamercolor[fg]{section in head/foot}%
+ \vskip0.5625ex%
+ \def\slideentry##1##2##3##4##5##6{}%
+ \def\sectionentry##1##2##3##4##5{%
+ \ifnum##5=\c@part%
+ \def\insertsectionhead{##2}%
+ \def\insertsectionheadnumber{##1}%
+ \def\insertpartheadnumber{##5}%
+ \setbox\beamer@tempbox=\hbox{%
+ \hyperlink{Navigation##3}{\hbox to #1{%
+ \hskip0.3cm%
+ \ifnum\c@section=##1%
+ {\usebeamertemplate{section in head/foot}}%
+ \else%
+ {\usebeamertemplate{section in head/foot shaded}}%
+ \fi\hskip0.3cm}}}%
+ \ht\beamer@tempbox=1.6875ex\dp\beamer@tempbox=0.75ex%
+ \box\beamer@tempbox\fi}%
+ \dohead\vskip0.5625ex}}\hfil}}
+
+\def\insertsectionnavigationhorizontal#1#2#3{%
+ \hbox to #1{{%
+ \def\slideentry##1##2##3##4##5##6{}%
+ #2\hskip.3cm%
+ \usebeamerfont{section in head/foot}\usebeamercolor[fg]{section in head/foot}%
+ \setbox\beamer@sectionbox=\hbox{}%
+ \ht\beamer@sectionbox=1.875ex%
+ \dp\beamer@sectionbox=0.75ex%
+ \hskip-1.875ex plus-1fill\dohead%
+ \box\beamer@sectionbox\hfil\hskip.3cm%
+ #3}}}
+
+\def\insertsubsectionnavigation#1{%
+ \hbox to #1{%
+ \vbox{{%
+ \usebeamerfont{subsection in head/foot}\usebeamercolor[fg]{subsection in head/foot}%
+ \vskip0.5625ex%
+ \beamer@currentsubsection=0%
+ \def\sectionentry##1##2##3##4##5{}%
+ \def\slideentry##1##2##3##4##5##6{\ifnum##6=\c@part\ifnum##1=\c@section%
+ \ifnum##2>\beamer@currentsubsection%
+ \beamer@currentsubsection=##2%
+ \def\insertsubsectionhead{##5}%
+ \def\insertsectionheadnumber{##1}%
+ \def\insertsubsectionheadnumber{##2}%
+ \def\insertpartheadnumber{##6}%
+ \setbox\beamer@tempbox=\hbox{\beamer@link(##4){%
+ \hbox to #1{\hskip0.3cm%
+ \ifnum\c@subsection=##2%
+ {\usebeamertemplate{subsection in head/foot}}%
+ \else%
+ {\usebeamertemplate{subsection in head/foot shaded}}%
+ \fi\hfil\hskip0.3cm}}}%
+ \ht\beamer@tempbox=1.6875ex\dp\beamer@tempbox=0.75ex%
+ \box\beamer@tempbox\fi\fi\fi}%
+ \dohead\vskip0.5625ex}}\hfil}}
+
+\def\insertsubsectionnavigationhorizontal#1#2#3{%
+ \hbox to #1{{%
+ \usebeamerfont{subsection in head/foot}\usebeamercolor[fg]{subsection in head/foot}%
+ \beamer@currentsubsection=0%
+ \def\sectionentry##1##2##3##4##5{}%
+ \def\slideentry##1##2##3##4##5##6{\ifnum##6=\c@part\ifnum##1=\c@section%
+ \ifnum##2>\beamer@currentsubsection%
+ \beamer@currentsubsection=##2%
+ \box\beamer@sectionbox\hskip1.875ex plus1fill%
+ \setbox\beamer@sectionbox=
+ \hbox{\def\insertsubsectionhead{##5}%
+ \def\insertsectionheadnumber{##1}%
+ \def\insertsubsectionheadnumber{##2}%
+ \def\insertpartheadnumber{##6}%
+ \ifnum\c@subsection=##2%
+ \beamer@link(##4){{\usebeamertemplate{subsection in head/foot}}}\else%
+ \beamer@link(##4){{\usebeamertemplate{subsection in head/foot shaded}}}\fi}%
+ \ht\beamer@sectionbox=1.875ex%
+ \dp\beamer@sectionbox=0.75ex%
+ \fi\fi\fi\ignorespaces}%
+ #2\hskip.3cm\setbox\beamer@sectionbox=\hbox{}%
+ \hskip-1.875ex plus-1fill\dohead%
+ \box\beamer@sectionbox\hfil\hskip.3cm%
+ #3}}}
+
+
+
+%
+% Name slides
+%
+
+\def\beamer@inserttarget#1{%
+ \ifbeamer@inframe%
+ \ifvmode%
+ \nointerlineskip\vbox to0pt{#1}%
+ \else%
+ \hbox{#1}%
+ \fi%
+ \else% defer to next frame
+ \expandafter\gdef\expandafter\beamer@framehypertargets\expandafter{\beamer@framehypertargets#1}%
+ \fi%
+}
+
+
+\def\beamer@nameslide#1{%
+ \addtocontents{snm}{\protect\beamer@slide{#1}{\the\c@page}}%
+ \beamer@inserttarget{\hypertarget{#1}{}}}
+\def\beamer@dummynameslide{\beamer@inserttarget{}}
+
+\def\beamer@slide#1#2{\expandafter\def\csname beamer@hyperlink#1\endcsname{%
+ \hyperlink{Navigation#2}}}
+
+\let\beamer@framehypertargets\@empty
+
+%
+% Page anchors
+%
+
+% This code is copied from hyperref, which doesn't activate this part with
+% option "implicit = false" set. Things are much simplified as we already
+% know that anchors are required and what to use for them.
+
+\def\Hy@EveryPageAnchor{%
+ \Hy@DistillerDestFix
+ \vbox to 0pt{%
+ \kern\voffset
+ \kern\topmargin
+ \kern-1bp\relax
+ \hbox to 0pt{%
+ \kern\hoffset
+ \kern\ifodd\value{page}%
+ \oddsidemargin
+ \else
+ \evensidemargin
+ \fi
+ \kern-1bp\relax
+ \hyper@@anchor{Navigation\the\c@page}\relax%
+ \hyper@@anchor{page.\the\c@page}\relax%
+ \hss
+ }%
+ \vss
+ }%
+}
+
+\AtBeginShipout{%
+ \setbox\AtBeginShipoutBox=\vbox{%
+ \offinterlineskip
+ \Hy@EveryPageAnchor
+ \box\AtBeginShipoutBox
+ }%
+}
+
+\providecommand*{\Hy@DistillerDestFix}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasenotes.sty b/macros/latex/contrib/beamer/base/beamerbasenotes.sty
new file mode 100644
index 0000000000..b0cc196c31
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasenotes.sty
@@ -0,0 +1,223 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+\newbox\beamer@frameboxcopy
+\newif\ifbeamer@twoscreensnotes
+
+
+% Notes options
+
+\defbeameroption{hide notes}[]%
+{
+ \beamer@notesfalse
+}
+
+\defbeameroption{show notes}[]%
+{
+ \beamer@notestrue
+}
+
+\defbeameroption{show notes on second screen}[right]%
+{
+ \pgfpagesuselayout{two screens with optional second}[second #1]
+ \beamer@twoscreensnotestrue
+ \beamer@notestrue
+}
+
+\defbeameroption{show only notes}[]%
+{
+ \beamer@notestrue
+ \beamer@notesnormalsfalse
+ \nofiles
+}
+
+
+
+%
+% Notes
+%
+
+\define@key{beamernotes}{enumerate}[true]{%
+ \def\beamer@noteenvstart{\begin{enumerate}\itemsep=0pt\parskip=0pt}%
+ \def\beamer@noteenvend{\end{enumerate}}}
+\define@key{beamernotes}{itemize}[true]{%
+ \def\beamer@noteenvstart{\begin{itemize}\itemsep=0pt\parskip=0pt}%
+ \def\beamer@noteenvend{\end{itemize}}}
+
+\newcommand\beamer@outsideframenote[2][]{%
+ \beamer@savemode%
+ \ifbeamer@inlecture%
+ \def\beamer@noteenvstart{}%
+ \def\beamer@noteenvend{}%
+ \setkeys{beamernotes}{#1}%
+ \ifbeamer@notes
+ \begingroup
+ \setbeamertemplate{itemize item}{\textbullet}
+ \setbeamertemplate{itemize subitem}{--}
+ \setbeamertemplate{enumerate item}{\insertenumlabel.}
+ \setbeamertemplate{enumerate subitem}{\insertenumlabel.\insertsubenumlabel}
+ \def\@oddhead{}
+ \def\@oddfoot{}
+ \let\@evenhead\@oddhead
+ \let\@evenfoot\@oddfoot
+ \def\beamer@backgroundtemplate{}%
+ \setbeamercolor{item}{fg=black,bg=white}
+ \color{black}%
+ \nointerlineskip
+ \hbox{\hskip-\Gm@lmargin\hskip1cm\vbox to\textheight{%
+ %pretend to have ``standard'' margins
+ \edef\beamer@origlmargin{\Gm@lmargin}%
+ \edef\beamer@origrmargin{\Gm@rmargin}%
+ \def\Gm@lmargin{1cm}%
+ \def\Gm@rmargin{1cm}%
+ \textwidth=\dimexpr\paperwidth-\Gm@lmargin-\Gm@rmargin\relax%
+ \hsize=\textwidth%
+ \@arrayparboxrestore%
+ \vskip-\headheight%
+ \def\insertnote{\vbox{}%
+ \beamer@noteenvstart#2\beamer@noteenvend%
+ }%
+ \usebeamertemplate*{note page}%
+ \vfil%
+ \vskip-4pt% foot separator
+ \vskip-\footheight}\hskip-\Gm@lmargin\hskip1cm}%
+ \ifbeamer@twoscreensnotes%
+ \pgfpagescurrentpagewillbelogicalpage{2}%
+ \advance\c@page by-1\relax%
+ \fi%
+ \clearpage
+ \endgroup
+ \fi%
+ \fi%
+ \beamer@resumemode}
+
+%
+% Notes in frames
+%
+
+\def\beamer@itemtext{item}
+
+\newcommand<>{\beamer@inframenote}[2][]{%
+ \ifbeamer@inlecture%
+ \only#3{%
+ \def\beamer@temp{#1}%
+ \ifx\beamer@temp\beamer@itemtext%
+ \expandafter\gdef\expandafter\beamer@noteitems%
+ \expandafter{\beamer@noteitems\item#2}%
+ \else
+ \expandafter\gdef\expandafter\beamer@notes%
+ \expandafter{\beamer@notes#2}%
+ \fi%
+ }%
+ \fi%
+ }
+
+\def\note{%
+ \ifbeamer@inframe%
+ \let\next=\beamer@inframenote%
+ \else%
+ \let\next=\beamer@outsideframenote%
+ \fi%
+ \next}
+
+\def\beamer@framenotesbegin{% at beginning of slide
+ \gdef\beamer@noteitems{}%
+ \gdef\beamer@notes{}%
+}
+
+\def\beamer@framenotesend
+{% at end of slide
+ \global\setbox\beamer@frameboxcopy
+ =\hbox{\leaders\copy\beamer@framebox\hskip\wd\beamer@framebox}
+ \ifx\beamer@noteitems\@empty%
+ \ifx\beamer@notes\@empty%
+ % possibly suppress this slide
+ \ifbeamer@frameswithnotesonly
+ % suppress frame
+ \global\setbox\beamer@framebox=\box\voidb@x%
+ \fi%
+ \ifbeamer@twoscreensnotes%
+ \beamer@setupnote%
+ \fi%
+ \else%
+ \beamer@setupnote%
+ \fi
+ \else%
+ \beamer@setupnote%
+ \fi
+ \ifbeamer@notesnormals%
+ \else%
+ \global\setbox\beamer@framebox=\box\voidb@x%
+ \fi%
+}
+
+\def\beamer@setupnote{%
+ \gdef\beamer@notesactions{%
+ \beamer@outsideframenote{%
+ % Notice that the note page is typeset at the beginning of the next slide
+ \advance\beamer@slideinframe by-1\relax
+ \beamer@atbeginnote%
+ \beamer@notes%
+ \ifx\beamer@noteitems\@empty\else
+ \begin{enumerate}\itemsep=0pt\parskip=0pt%
+ \beamer@noteitems%
+ \end{enumerate}%
+ \fi%
+ \beamer@atendnote%
+ \advance\beamer@slideinframe by 1\relax%
+ }%
+ \gdef\beamer@notesactions{}%
+ }
+}
+
+
+
+\def\beamer@notesactions{}
+
+\newcommand\AtBeginNote[1]{\long\def\beamer@atbeginnote{#1}}
+\newcommand\AtEndNote[1]{\long\def\beamer@atendnote{#1}}
+
+\AtBeginNote{}
+\AtEndNote{}
+
+
+
+%
+% Note frame insert
+%
+
+\newcommand{\insertslideintonotes}[1]{{%
+ \begin{pgfpicture}{0cm}{0cm}{#1\paperwidth}{#1\paperheight}
+ \begin{pgflowlevelscope}{\pgftransformscale{#1}}%
+ \color{normal text.bg}
+ \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{\paperwidth}{\paperheight}}
+ \pgfusepath{fill}
+ \color{normal text.fg}
+ {\pgftransformshift{\pgfpoint{\beamer@origlmargin}{\footheight}}\pgftext[left,bottom]{\copy\beamer@frameboxcopy}}
+ \end{pgflowlevelscope}
+ \end{pgfpicture}%
+ }}
+
+
+\mode
+<article>
+{
+ \newcommand<>\note[2][]{}
+}
+
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseoptions.sty b/macros/latex/contrib/beamer/base/beamerbaseoptions.sty
new file mode 100644
index 0000000000..c69564b681
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseoptions.sty
@@ -0,0 +1,57 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\RequirePackage{keyval}[1997/11/10]
+
+\newrobustcmd*\ProcessOptionsBeamer{%
+ \let\@tempa\@empty
+ \ifx\@currext\@clsextension
+ \else
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \@ifundefined{KV@\@currname @\CurrentOption}%
+ {}{\edef\@tempa{\@tempa,\CurrentOption,}}}%
+ \fi
+ \edef\@tempa{%
+ \noexpand\setkeys{\@currname}{\@tempa\@ptionlist{\@currname.\@currext}}}%
+ \let\beamer@origkverr\KV@errx
+ \let\beamer@origxkverr\XKV@err
+ \let\KV@errx=\@gobble% never mind
+ \let\XKV@err=\@gobble% never mind
+ \@tempa
+ \let\KV@errx\beamer@origkverr
+ \let\XKV@err\beamer@origxkverr
+ \AtEndOfPackage{\let\@unprocessedoptions\relax}}
+
+\newrobustcmd\ExecuteOptionsBeamer[1]{%
+ \setkeys{\@currname}{#1}}
+
+\newrobustcmd\DeclareOptionBeamer[1]{\@ifnextchar[{\beamer@dokv{#1}}{\beamer@dokv{#1}[]}}
+\long\def\beamer@dokv#1[#2]#3{\define@key{\@currname}{#1}[{#2}]{#3}}
+
+\def\beamer@filterclassoptions{%
+ \def\beamer@filteredclassoptionslist{}%
+ \@for\CurrentOption:=\@classoptionslist\do{%
+ \ifx\CurrentOption\@empty\else
+ \@expandtwoargs\in@{=}{\CurrentOption}%
+ \ifin@
+ \else
+ \edef\beamer@filteredclassoptionslist{%
+ \beamer@filteredclassoptionslist,\CurrentOption}%
+ \fi
+ \fi
+ }%
+ \let\@classoptionslist=\beamer@filteredclassoptionslist
+}
+
+\newrobustcmd*\defbeameroption{\define@key{beamer@option}}
+\newrobustcmd*\setbeameroption{\setkeys{beamer@option}}
+
diff --git a/macros/latex/contrib/beamer/base/beamerbaseoverlay.sty b/macros/latex/contrib/beamer/base/beamerbaseoverlay.sty
new file mode 100644
index 0000000000..9b7d9268a0
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseoverlay.sty
@@ -0,0 +1,854 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010--2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+% Many of these commans allow an overlay spec either before or after
+% their argument (though not in both positions), hence the repetition
+% of "\@ifnextchar<".
+
+%
+%
+% Basic overlay commands
+%
+%
+
+% This variant based on \@ifnextchar does not skip spaces
+% (So like amsmath's \new@ifnextchar). It is used where beamer allows
+% an overlay at the end of a command, and would thus otherwise result in
+% space gobbling.
+\long\def\beamer@ifnextcharospec#1#2{%
+ \def\reserved@a{#1}%
+ \def\reserved@b{#2}%
+ \futurelet\@let@token\beamer@ifnch}
+\def\beamer@ifnch{%
+ \ifx\@let@token<%
+ \let\reserved@c\reserved@a%
+ \else%
+ \let\reserved@c\reserved@b%
+ \fi%
+ \reserved@c}
+
+%
+% \only
+%
+\newrobustcmd*\only{\@ifnextchar<{\beamer@only}{\beamer@@only}}
+\long\def\beamer@only<#1>#2{%
+ \gdef\beamer@doifnotinframe{}\def\beamer@doifinframe{#2}%
+ \beamer@masterdecode{#1}\beamer@donow}
+\long\def\beamer@@only#1{\beamer@ifnextcharospec{\beamer@@@only{#1}}{#1}}
+\long\def\beamer@@@only#1<#2>{%
+ \gdef\beamer@doifnotinframe{}\def\beamer@doifinframe{#1}%
+ \beamer@masterdecode{#2}\beamer@donow}
+
+%
+% \alt and \altenv
+%
+\newrobustcmd*\alt{\@ifnextchar<{\beamer@alt}{\beamer@alttwo}}
+\long\def\beamer@alttwo#1#2{\beamer@ifnextcharospec{\beamer@altget{#1}{#2}}{#1}}
+\long\def\beamer@altget#1#2<#3>{%
+ \gdef\beamer@doifnotinframe{#2}\def\beamer@doifinframe{#1}%
+ \beamer@masterdecode{#3}\beamer@donow}
+\long\def\beamer@alt<#1>#2#3{%
+ \gdef\beamer@doifnotinframe{#3}\def\beamer@doifinframe{#2}%
+ \beamer@masterdecode{#1}\beamer@donow}
+
+
+\newrobustcmd*\altenv{\@ifnextchar<{\beamer@altenv}{\beamer@@@altenv}}
+\def\beamer@altenv<#1>{\beamer@@altenv{<#1>}}
+\long\def\beamer@@@altenv#1#2#3#4{\beamer@ifnextcharospec{\beamer@altenvsort{#1}{#2}{#3}{#4}}{\beamer@@altenv{}{#1}{#2}{#3}{#4}}}
+\long\def\beamer@altenvsort#1#2#3#4<#5>{\beamer@@altenv{<#5>}{#1}{#2}{#3}{#4}}
+\long\def\beamer@@altenv#1#2#3#4#5{\alt#1{\long\def\beamer@eoenv{#3}#2}{\long\def\beamer@eoenv{#5}#4}}
+\protected\def\endaltenv{\beamer@eoenv}
+
+%
+% \action and actionenv
+%
+\def\beamer@plus{+}
+
+\newrobustcmd*\action{\@ifnextchar<{\beamer@parsedaction}{\expandafter\beamer@parsedaction\beamer@defaultospec}}
+\long\def\beamer@parsedaction<#1>#2{%
+ \gdef\beamer@doifnotinframe{}%
+ \def\beamer@doifinframe{}%
+ \beamer@masterdecode{#1}%
+ \ifx\beamer@decodefound\beamer@plus
+ \long\def\beamer@todo{#2}%
+ \else
+ \expandafter\long\expandafter\def\expandafter\beamer@todo
+ \expandafter{\expandafter\uncover\expandafter<\expandafter a\expandafter l\expandafter l\expandafter:\beamer@decodefound>{#2}}%
+ \fi
+ \expandafter\beamer@processactions\beamer@decaction{}%
+ \beamer@todo}
+
+\def\beamer@processactions#1{%
+ \ifblank{#1}{}{%
+ \expandafter\beamer@@processactions\expandafter{\beamer@todo}#1}}
+\long\def\beamer@@processactions#1#2<#3>{%
+ \expandafter\long\expandafter\def\expandafter\beamer@todo\expandafter{%
+ \csname#2\endcsname<all:#3>{#1}}%
+ \beamer@processactions}
+
+\newrobustcmd*\actionenv{\beamer@ifnextcharospec{\beamer@parsedactionenv}{\expandafter\beamer@parsedactionenv\beamer@defaultospec}}
+\def\beamer@parsedactionenv<#1>{%
+ \gdef\beamer@doifnotinframe{}%
+ \def\beamer@doifinframe{}%
+ \beamer@masterdecode{#1}%
+ \ifx\beamer@decodefound\beamer@plus
+ \def\beamer@todobegin{}%
+ \def\beamer@todoend{}%
+ \else
+ \edef\beamer@todobegin{\noexpand\begin{uncoverenv}<all:\beamer@decodefound>}%
+ \def\beamer@todoend{\end{uncoverenv}}%
+ \fi
+ \expandafter\beamer@processactionsbegin\beamer@decaction{}%
+ \expandafter\beamer@processactionsend\beamer@decaction{}%
+ \beamer@todobegin}
+\protected\def\endactionenv{\beamer@todoend}
+
+\def\beamer@processactionsbegin#1{%
+ \ifblank{#1}{}{%
+ \expandafter\beamer@@processactionsbegin\expandafter{\beamer@todobegin}#1}}
+\long\def\beamer@@processactionsbegin#1#2<#3>{%
+ \def\beamer@todobegin{\begin{#2env}<all:#3>#1}%
+ \beamer@processactionsbegin}
+
+\def\beamer@processactionsend#1{%
+ \ifblank{#1}{}{%
+ \expandafter\beamer@@processactionsend\expandafter{\beamer@todoend}#1}}
+\long\def\beamer@@processactionsend#1#2<#3>{%
+ \def\beamer@todoend{#1\end{#2env}}%
+ \beamer@processactionsend}
+
+\def\beamer@defaultospec{<*>}
+\def\beamer@emptyospec{<*>}
+
+%
+% \temporal
+%
+\protected\long\def\temporal<#1>#2#3#4{% past, present, future
+ \gdef\beamer@doifnotinframe{\beamer@picked}\def\beamer@doifinframe{#3}%
+ {\beamer@masterdecode{#1}%
+ \ifbeamer@localanotherslide\gdef\beamer@picked{#2}\else\gdef\beamer@picked{#4}\fi}\beamer@donow}
+
+%
+% \beameroriginal
+%
+\def\beameroriginal#1{\csname @orig\string#1\endcsname}
+
+\newcount\beamer@argscount
+
+%
+% newenvironment extension
+%
+\let\beamer@orignewenvironment=\newenvironment
+
+\def\newenvironment{\@ifnextchar<{\beamer@newenv}{\beamer@orignewenvironment}}
+\def\beamer@newenv<>{\@star@or@long\beamer@new@environment}
+\def\beamer@new@environment#1{\@ifnextchar[{\beamer@@newenv{#1}}{\beamer@newenvnoopt{#1}{0}}}
+\def\beamer@@newenv#1[#2]{\@ifnextchar[{\beamer@newenvopt{#1}{#2}}{\beamer@newenvnoopt{#1}{#2}}}
+% The beamer syntax for \newenvironment<> follows the pattern for \newcommand<>
+% and allows the overlay spec anywhere: the same code path is therefore used for
+% both.
+\long\def\beamer@newenvnoopt#1#2#3#4{%
+ \expandafter\newcommand\expandafter<\expandafter>\csname#1\endcsname[#2]{#3}%
+ \expandafter\long\expandafter\def\csname end#1\endcsname{#4}%
+}
+\long\def\beamer@newenvopt#1#2[#3]#4#5{%
+ \expandafter\newcommand\expandafter<\expandafter>\csname#1\endcsname[#2][#3]{#4}%
+ \expandafter\long\expandafter\def\csname end#1\endcsname{#5}%
+}
+
+\let\beamer@origrenewenvironment=\renewenvironment
+
+\def\renewenvironment{\@ifnextchar<{\beamer@renewenv}{\beamer@origrenewenvironment}}
+\def\beamer@renewenv<>#1{%
+ \ifcsdef{original#1}%
+ {}%
+ {%
+ \csletcs{original#1}{#1}%
+ \csletcs{endoriginal#1}{end#1}%
+ }%
+ \csundef{#1}%
+ \csundef{beamerx@\expandafter\string\csname#1\endcsname}%
+ \newenvironment<>{#1}}
+
+%
+% newcommand extension
+%
+\let\beamer@orignewcommand=\newcommand
+
+\def\newcommand{\@ifnextchar<{\beamer@newcom}{\beamer@orignewcommand}}
+\def\beamer@newcom<>{\@star@or@long\beamer@new@command}
+\def\beamer@new@command#1{\@ifnextchar[{\beamer@@newcom{#1}}{\beamer@newcomnoopt{#1}{0}}}
+\def\beamer@@newcom#1[#2]{\@ifnextchar[{\beamer@newcomopt{#1}{#2}}{\beamer@newcomnoopt{#1}{#2}}}
+\long\def\beamer@newcomnoopt#1#2#3{%
+ \ifnum#2=0\relax
+ \protected\edef#1%
+ {\noexpand\beamer@sortzero\expandafter\noexpand\csname beamerx@\string#1\endcsname}%
+ \else
+ \protected\edef#1%
+ {\noexpand\beamer@sort\expandafter\noexpand\csname beamerx@\string#1\endcsname{#2}}%
+ \fi
+ \beamer@argscount=#2\relax
+ \advance\beamer@argscount by 1\relax
+ \ifx\l@ngrel@x\relax
+ \expandafter\expandafter\expandafter\newcommand
+ \expandafter\expandafter\expandafter*%
+ \else
+ \expandafter\expandafter\expandafter\newcommand
+ \fi
+ \csname beamerx@\string#1\endcsname[\beamer@argscount]{#3}%
+}
+\long\def\beamer@newcomopt#1#2[#3]#4{%
+ \protected\expandafter\def\expandafter#1\expandafter
+ {\expandafter\beamer@presort\expandafter{\csname beamerx@\string#1\endcsname}{#2}{#3}}%
+ \beamer@argscount=#2\relax
+ \advance\beamer@argscount by 1\relax
+ \ifx\l@ngrel@x\relax
+ \expandafter\expandafter\expandafter\newcommand
+ \expandafter\expandafter\expandafter*%
+ \else
+ \expandafter\expandafter\expandafter\newcommand
+ \fi
+ \csname beamerx@\string#1\endcsname[\beamer@argscount]{#4}%
+}
+
+\let\beamer@origrenewcommand=\renewcommand
+
+\def\renewcommand{\@ifnextchar<{\beamer@renewcom}{\beamer@origrenewcommand}}
+\def\beamer@renewcom<>#1{%
+ \ifcsundef{@orig\string#1}%
+ {\cslet{@orig\string#1}#1}%
+ {}%
+ \csundef{beamerx@\string#1}%
+ \newcommand<>#1}
+
+% The class allows overlays specs at any position in a command.
+% To handle that, beamer first collects up material potentially
+% including overlay info before passing to the 'real' definition.
+\long\def\beamer@presort#1#2#3{%
+ \def\beamer@todo{#1}%
+ \def\beamer@ospec{}%
+ \beamer@argscount=#2\relax
+ \beamer@prechecka{#3}}
+\long\def\beamer@prechecka#1{\@ifnextchar<{\beamer@preget{#1}}{\beamer@precheckb{#1}}}
+\long\def\beamer@preget#1<#2>{\def\beamer@ospec{<#2>}\beamer@precheckb{#1}}
+\long\def\beamer@precheckb#1{\@ifnextchar[{\beamer@pregetb}{\beamer@pregetb[{#1}]}}
+\long\def\beamer@pregetb[#1]{%
+ \expandafter\def\expandafter\beamer@todo\expandafter{\beamer@todo{#1}}%
+ \advance\beamer@argscount by-1\relax
+ \beamer@parseargs
+}
+
+\def\beamer@sortzero#1{\beamer@ifnextcharospec{\beamer@sortzeroread{#1}}{#1{}}}
+\def\beamer@sortzeroread#1<#2>{#1{<#2>}}
+
+\def\beamer@sort#1#2{%
+ \def\beamer@todo{#1}%
+ \def\beamer@ospec{}%
+ \beamer@argscount=#2\relax
+ \beamer@parseargs}
+
+\def\beamer@parseargs{%
+ \ifnum\beamer@argscount=0\relax
+ \let\next=\beamer@finalargscheck
+ \else
+ \let\next=\beamer@lookforarg
+ \fi
+ \next}
+\def\beamer@lookforarg{%
+ \@ifnextchar<\beamer@foundspec\beamer@readarg}
+\def\beamer@foundspec<#1>{%
+ \def\beamer@ospec{<#1>}%
+ \beamer@lookforarg}
+\long\def\beamer@readarg#1{%
+ \expandafter\long\expandafter\def\expandafter\beamer@todo\expandafter{\beamer@todo{#1}}%
+ \advance\beamer@argscount by-1\relax
+ \beamer@parseargs
+}
+
+\def\beamer@finalargscheck{\beamer@ifnextcharospec\beamer@finalspec\beamer@finalnospec}
+\def\beamer@finalspec<#1>{\def\beamer@ospec{<#1>}\beamer@finalnospec}
+\def\beamer@finalnospec{%
+ \expandafter\beamer@todo\expandafter{\beamer@ospec}}
+
+\mode
+<presentation>
+
+% commands for smuggling skips past
+
+\newskip\beamer@lastskipcover
+\def\beamer@smuggle#1{%
+ {}%
+ \beamer@lastskipcover=\lastskip
+ \edef\beamer@lastskiptext{\the\lastskip}%
+ \ifx\beamer@lastskiptext\beamer@zeropt
+ \else
+ \ifvmode\unskip\fi
+ \ifhmode\unskip\fi
+ \fi
+ #1%
+ \ifx\beamer@lastskiptext\beamer@zeropt
+ \else
+ \ifvmode\vskip\beamer@lastskipcover\fi
+ \ifhmode\hskip\beamer@lastskipcover\fi
+ \fi
+}
+
+%
+% Uncovering management
+%
+\def\beamer@actions#1#2{%
+ \gdef\beamer@do{#1%
+ \expandafter\gdef\csname beamer@doafter%
+ \the\beamer@coveringdepth\endcsname{#2}}}
+
+\def\beamer@startcovered{%
+ \beamer@smuggle{%
+ \global\advance\beamer@coveringdepth by 1\relax%
+ \beamer@actions{\pgfsys@begininvisible\aftergroup\beamer@@spacingcover}{%
+ \pgfsys@endinvisible\aftergroup\beamer@@spacingcover%
+ }%
+ \def\opaqueness<##1>##2{%
+ \only<##1>{%
+ \beamer@actions{%
+ \expandafter\xdef\csname beamer@oldcolorhook%
+ \the\beamer@coveringdepth\endcsname{\beamer@colorhook}%
+ \expandafter\xdef\csname beamer@oldpgfextension%
+ \the\beamer@coveringdepth\endcsname{\beamer@pgfextension}%
+ {\globalcolorstrue\colorlet{beamer@freeze\the\beamer@coveringdepth}{bg}}%
+ \xdef\beamer@colorhook{!##2!beamer@freeze%
+ \the\beamer@coveringdepth\beamer@colorhook}%
+ \gdef\beamer@pgfextension{!##2opaque}%
+ \color{.}%
+ }%
+ {%
+ \xdef\beamer@colorhook{\csname beamer@oldcolorhook%
+ \the\beamer@coveringdepth\endcsname}%
+ \xdef\beamer@pgfextension{\csname beamer@oldpgfextension%
+ \the\beamer@coveringdepth\endcsname}%
+ \color{.}%
+ }}}%
+ \ifnum\beamer@slideinframe<\beamer@minimum %ok, at beginning
+ \begingroup
+ \beamer@saveanother
+ \advance\beamer@minimum by-\beamer@slideinframe
+ \beamer@slideinframe=\beamer@minimum
+ \beamer@uncoverbeforeactions
+ \beamer@restoreanother
+ \endgroup
+ \else
+ \begingroup
+ \beamer@saveanother
+ \advance\beamer@slideinframe by-\beamer@minimum
+ \beamer@uncoverafteractions
+ \beamer@restoreanother
+ \endgroup
+ \fi
+ \beamer@do
+ }%
+}
+\def\beamer@endcovered{%
+ \beamer@smuggle{%
+ \csname beamer@doafter\the\beamer@coveringdepth\endcsname
+ \global\advance\beamer@coveringdepth by -1\relax
+ }%
+}%
+
+\define@key{beamer@mixin}{still covered}{\def\beamer@uncoverbeforeactions{\ignorespaces#1}}
+\define@key{beamer@mixin}{again covered}{\def\beamer@uncoverafteractions{\ignorespaces#1}}
+
+\define@key{beamer@mixin}{invisible}[]{%
+ \def\beamer@uncoverbeforeactions{\ignorespaces}%
+ \def\beamer@uncoverafteractions{\ignorespaces}}
+
+\define@key{beamer@mixin}{transparent}[15]{%
+ \def\beamer@uncoverbeforeactions{\ignorespaces\opaqueness<1->{#1}}%
+ \def\beamer@uncoverafteractions{\ignorespaces\opaqueness<1->{#1}}}
+
+\define@key{beamer@mixin}{dynamic}[]{%
+ \def\beamer@uncoverbeforeactions{\ignorespaces\opaqueness<1-2>{10}\opaqueness<3->{5}}%
+ \def\beamer@uncoverafteractions{\ignorespaces\opaqueness<1-2>{10}\opaqueness<3->{5}}}
+
+\define@key{beamer@mixin}{highly dynamic}[]{%
+ \def\beamer@uncoverbeforeactions{\ignorespaces\opaqueness<1>{15}\opaqueness<2>{10}\opaqueness<3>{5}\opaqueness<4->{2}}%
+ \def\beamer@uncoverafteractions{\ignorespaces\opaqueness<1>{15}\opaqueness<2>{10}\opaqueness<3>{5}\opaqueness<4->{2}}}
+
+\newrobustcmd*\setbeamercovered[1]{%
+ \setkeys{beamer@mixin}{invisible}%
+ \setkeys{beamer@mixin}{#1}}
+
+\setbeamercovered{invisible}
+
+\newcolormixin\beamer@colorhook
+
+\def\pgfalternateextension{\colorcurrentmixin\beamer@pgfextension}
+
+\def\beamer@colorhook{}
+\def\beamer@pgfextension{}
+
+\beamer@coveringdepth=0\relax
+
+\mode
+<article>
+{
+ \newrobustcmd*\setbeamercovered[1]{}
+}
+
+%
+% Pausing
+%
+
+\def\beamer@endpause{}
+
+\newenvironment{beamer@framepauses}%internal
+{%
+ \setcounter{beamerpauses}{1}%
+ \gdef\beamer@endpause{}%
+}
+{\beamer@endpause}
+
+\newrobustcmd{\beamer@@pause}[1][]{%
+ \ifblank{#1}%
+ {\stepcounter{beamerpauses}}%
+ {\setcounter{beamerpauses}{#1}}%
+ \onslide<\value{beamerpauses}->\relax%
+}
+
+\mode
+<all>
+{
+ \AtBeginDocument
+ {
+ \let\beamer@musixpause=\pause
+ \let\pause=\beamer@@pause
+
+ \let\beamer@music=\music
+ \def\music{\let\beamerpause=\pause\let\pause\beamer@musixpause\beamer@music}
+ }
+}
+
+\mode
+<all>
+{
+ \newrobustcmd*\onslide{\@ifstar{\only}{\@ifnextchar+{\expandafter\beamer@visibleonslide\@gobble}{\beamer@mainonslide}}}
+
+ \newcommand<>{\beamer@visibleonslide}{%
+ \@ifnextchar\bgroup
+ {\visible#1}%
+ {\beamer@noargsvisibleonslide#1}}
+
+ \newcommand<>{\beamer@mainonslide}{%
+ \@ifnextchar\bgroup%
+ {\uncover#1}%
+ {\beamer@noargsonslide#1}%
+ }
+}
+
+\newcommand<>{\beamer@noargsonslide}{%
+ \beamer@endpause%
+ \alt#1%
+ {\beamer@spacingcover\gdef\beamer@endpause{\beamer@spacingcover}}%
+ {\beamer@startcovered\gdef\beamer@endpause{\beamer@endcovered}}%
+}
+
+\newcommand<>{\beamer@noargsvisibleonslide}{%
+ \beamer@endpause%
+ \alt#1%
+ {\beamer@spacingcover\gdef\beamer@endpause{\beamer@spacingcover}}%
+ {\beamer@begininvisible\gdef\beamer@endpause{\beamer@endinvisible}}%
+}
+
+\mode
+<article>
+{
+ \newrobustcmd\beamer@@pause[1][]{}
+ \newcommand<>{\beamer@noargsonslide}{}
+ \newcommand<>{\beamer@noargsvisibleonslide}{}
+}
+
+%
+% Make item overlays
+%
+
+\let\beamer@origitem=\item
+\def\beamer@callorigitem{\@ifnextchar[\beamer@@callorigitem{\beamer@origitem\kern0pt\ignorespaces}}
+\def\beamer@@callorigitem[#1]{\beamer@origitem[{#1}]\kern0pt\ignorespaces}
+
+\def\item{%
+ \@ifnextchar\relax\beamer@origitem{%
+ \ifhmode
+ \unskip\unskip\par
+ \fi
+ \beamer@closeitem\gdef\beamer@closeitem{}%
+ \@ifnextchar<{\beamer@parseitem}{\beamer@itemcheckopt}}}
+\def\beamer@itemcheckopt{\@ifnextchar[{\beamer@itemcheckopta}{%
+ \ifx\beamer@defaultospec\beamer@emptyospec
+ \let\next=\beamer@callorigitem
+ \else
+ \let\next=\beamer@defaultparse
+ \fi
+ \next
+ }}
+\def\beamer@defaultparse{\expandafter\beamer@parseitem\beamer@defaultospec}
+\long\def\beamer@itemcheckopta[#1]{\@ifnextchar<{\beamer@itemreverse[{#1}]}{%
+ \ifx\beamer@defaultospec\beamer@emptyospec
+ \let\next=\beamer@callorigitem
+ \else
+ \let\next=\beamer@defaultparse
+ \fi
+ \next[{#1}]}}
+\long\def\beamer@itemreverse[#1]<#2>{\beamer@parseitem<#2>[{#1}]}
+
+\def\beamer@parseitem<#1>{%
+ \gdef\beamer@closeitem{%
+ %% Handle empty item as LaTeX would do
+ \if@inlabel\indent\par\fi
+ \end{actionenv}%
+ %% Local change inside actionenv should survive, and should be
+ %% always false
+ \@noparitemfalse}%
+ \begin{actionenv}<#1>\beamer@callorigitem}
+
+\newrobustcmd*\beamerdefaultoverlayspecification[1]{%
+ \ifblank{#1}%
+ {%
+ \def\beamer@gdefaultospec{<*>}%
+ \def\beamer@defaultospec{<*>}}%
+ {%
+ \def\beamer@gdefaultospec{#1}%
+ \def\beamer@defaultospec{#1}%
+ }%
+}
+\beamerdefaultoverlayspecification{}
+
+\newcount\beamer@trivlistdepth
+\beamer@trivlistdepth=0\relax
+
+\let\beamer@orig@trivlist=\@trivlist
+\def\@trivlist{%
+ \global\advance\beamer@trivlistdepth by1\relax
+ \expandafter\global\expandafter\let\csname beamer@closeitem\the\beamer@trivlistdepth\endcsname=\beamer@closeitem
+ \gdef\beamer@closeitem{}%
+ \beamer@orig@trivlist
+ }
+\let\beamer@origendtrivlist=\endtrivlist
+\def\endtrivlist{%
+ \beamer@closeitem
+ \expandafter\global\expandafter\let\expandafter\beamer@closeitem\expandafter=\csname
+ beamer@closeitem\the\beamer@trivlistdepth\endcsname
+ \global\advance\beamer@trivlistdepth by-1\relax
+ \beamer@origendtrivlist}
+
+\def\beamer@closeitem{}
+
+\let\beamer@list=\list
+\let\beamer@@trivlist=\@trivlist
+
+\mode
+<article>
+{
+ \AtBeginDocument{%
+ \let\beamer@origitem=\item
+ \def\item{\@ifnextchar<\beamer@@item\beamer@item}
+ \def\beamer@@item<#1>{\beamer@item}
+ \def\beamer@item{\@ifnextchar[\beamer@@@item\beamer@origitem}
+ \def\beamer@@@item[#1]{\@ifnextchar<{\beamer@@@@item[{#1}]}{\beamer@origitem[{#1}]}}
+ \def\beamer@@@@item[#1]<#2>{\beamer@origitem[{#1}]}
+ \newrobustcmd*\beamerdefaultoverlayspecification[1]{}
+ }
+}
+
+%
+% Overlay commands
+%
+
+\mode
+<all>
+{
+ \newcommand\beamer@gobbleoptional[2][]{}
+ \newcommand\beamer@gobbleoptionalinsp[2][]{\ignorespaces}
+}
+
+\def\beamer@@spacingcover{\beamer@smuggle{\pgfsys@begininvisible\pgfsys@endinvisible}}
+\def\beamer@spacingcover{\beamer@@spacingcover\aftergroup\beamer@@spacingcover}
+
+\def\beamer@begininvisible{\beamer@smuggle{\pgfsys@begininvisible\aftergroup\beamer@@spacingcover}}
+\def\beamer@endinvisible{\beamer@smuggle{\pgfsys@endinvisible\aftergroup\beamer@@spacingcover}}
+
+\long\def\beamer@fakeinvisible#1{\beamer@spacingcover#1\beamer@spacingcover}
+\long\def\beamer@makecovered#1{\beamer@startcovered#1\beamer@endcovered}
+\long\def\beamer@reallymakeinvisible#1{\beamer@begininvisible#1\beamer@endinvisible}
+
+\newrobustcmd*{\uncover}{\alt{\beamer@fakeinvisible}{\beamer@makecovered}}
+\newrobustcmd*{\visible}{\alt{\beamer@fakeinvisible}{\beamer@reallymakeinvisible}}
+\newrobustcmd*{\invisible}{\alt{\beamer@reallymakeinvisible}{\beamer@fakeinvisible}}
+\newenvironment{visibleenv}{\begin{altenv}{\beamer@spacingcover}{\beamer@spacingcover}{\beamer@begininvisible}{\beamer@endinvisible}}{\end{altenv}}
+\newenvironment{invisibleenv}{\begin{altenv}{\beamer@begininvisible}{\beamer@endinvisible}{\beamer@spacingcover}{\beamer@spacingcover}}{\end{altenv}}
+\newenvironment{uncoverenv}{\begin{altenv}{\beamer@spacingcover}{\beamer@spacingcover}{\beamer@startcovered}{\beamer@endcovered}}{\end{altenv}}
+\newenvironment{onlyenv}{\begin{altenv}{}{}{\begingroup\setbox0=\vbox\bgroup}{\egroup\endgroup}}{\end{altenv}}
+\renewcommand<>{\color}{\alt#1{\beameroriginal{\color}}{\beamer@gobbleoptionalinsp}}
+
+\mode
+<article>
+{
+ \newrobustcmd*{\uncover}{\alt{\@firstofone}{\@gobble}}
+ \newrobustcmd*{\visible}{\alt{\@firstofone}{\@gobble}}
+ \newrobustcmd*{\invisible}{\alt{\@gobble}{\@firstofone}}
+ \newenvironment{onlyenv}{\begin{altenv}{}{}{\begingroup\setbox0=\vbox\bgroup}{\egroup\endgroup}}{\end{altenv}}
+ \newenvironment{uncoverenv}{\begin{altenv}{}{}{\begingroup\setbox0=\vbox\bgroup}{\egroup\endgroup}}{\end{altenv}}
+ \newenvironment{visibleenv}{\begin{altenv}{}{}{\begingroup\setbox0=\vbox\bgroup}{\egroup\endgroup}}{\end{altenv}}
+ \newenvironment{invisibleenv}{\begin{altenv}{\begingroup\setbox0=\vbox\bgroup}{\egroup\endgroup}{}{}}{\end{altenv}}
+
+ \AtBeginDocument{
+ % These have to be done late...
+ \renewcommand<>{\color}{\alt#1{\beameroriginal{\color}}{\beamer@gobbleoptionalinsp}}
+ }
+}
+
+\mode
+<all>
+{
+ \renewcommand<>{\textbf}{\only#1{\beameroriginal{\textbf}}}
+ \renewcommand<>{\textit}{\only#1{\beameroriginal{\textit}}}
+ \renewcommand<>{\textmd}{\only#1{\beameroriginal{\textmd}}}
+ \renewcommand<>{\textnormal}{\only#1{\beameroriginal{\textnormal}}}
+ \renewcommand<>{\textrm}{\only#1{\beameroriginal{\textrm}}}
+ \renewcommand<>{\textsc}{\only#1{\beameroriginal{\textsc}}}
+ \renewcommand<>{\textsf}{\only#1{\beameroriginal{\textsf}}}
+ \renewcommand<>{\textsl}{\only#1{\beameroriginal{\textsl}}}
+ \renewcommand<>{\texttt}{\only#1{\beameroriginal{\texttt}}}
+ \renewcommand<>{\textup}{\only#1{\beameroriginal{\textup}}}
+}
+
+\renewcommand<>{\hypertarget}[2]{\only#3{\beameroriginal{\hypertarget}{#1}{#2}}}
+\renewcommand<>{\hyperlink}[2]{\only#3{\beameroriginal{\hyperlink}{#1}{#2}}}
+
+\mode
+<article>
+{
+ \g@addto@macro\beamer@lastminutepatches{%
+ % These have to be done late...
+ \renewcommand<>{\hypertarget}[2]{\only#3{\beameroriginal{\hypertarget}{#1}{#2}}}%
+ \renewcommand<>{\hyperlink}[2]{\only#3{\beameroriginal{\hyperlink}{#1}{#2}}}
+ }
+}
+
+\newcommand<>{\emph}[1]{{\only#2{\itshape}#1}}
+
+\mode
+<article>
+{
+ \renewcommand<>{\emph}{\only#1{\beameroriginal\emph}}
+}
+
+%
+% Insert area
+%
+\newenvironment{overlayarea}[2]{%
+ \beamer@animht=#1\relax
+ \beamer@animwd=#2\relax
+ \setbox\beamer@areabox=\vbox to\beamer@animwd\bgroup
+ \strut\begin{minipage}[t]{\beamer@animht}%
+ % Make the minipage behave like the main part of the slide
+ \normalfont
+ \raggedright
+ }
+ {%
+ \end{minipage}\vfil
+ \egroup
+ \wd\beamer@areabox=\beamer@animht
+ \ht\beamer@areabox=\beamer@animwd
+ \dp\beamer@areabox=0pt %
+ \box\beamer@areabox
+}
+
+\mode
+<article>
+{
+ \newenvironment{overlayarea}[2]{}{}% no effect
+}
+
+\newenvironment{overprint}[1][\textwidth]{%
+ \let\beamer@noargsonslide=\beamer@onslide
+ \let\beamer@noargsvisibleonslide=\beamer@onslide
+ \beamer@animht=0pt\relax
+ \beamer@animdp=0pt\relax
+ \beamer@animwd=#1\relax
+ \setbox\beamer@animcurrent=\box\beamer@animshowbox % makes animshowbox empty
+ \setbox\beamer@animcurrent=\hbox{}%
+ \def\beamer@endaction{}%
+}{%
+ \beamer@endaction
+ \ifvoid\beamer@animshowbox\setbox\beamer@animshowbox=\hbox{}\fi
+ \ht\beamer@animshowbox=\beamer@animht
+ \dp\beamer@animshowbox=\beamer@animdp
+ \wd\beamer@animshowbox=\beamer@animwd
+ \box\beamer@animshowbox
+}
+
+\def\beamer@onslide<#1>{%
+ \beamer@endaction
+ \alt<#1>{%
+ \ifvoid\beamer@animshowbox\else\ClassError{beamer}{Overprints may not overlap}{}\fi
+ \def\beamer@endaction{%
+ \end{minipage}%
+ \egroup
+ \ifdim\beamer@animht<\ht\beamer@animcurrent\beamer@animht=\ht\beamer@animcurrent\fi
+ \ifdim\beamer@animdp<\dp\beamer@animcurrent\beamer@animdp=\dp\beamer@animcurrent\fi
+ \setbox\beamer@animshowbox=\copy\beamer@animcurrent}%
+ }%
+ {\def\beamer@endaction{%
+ \end{minipage}%
+ \egroup
+ \ifdim\beamer@animht<\ht\beamer@animcurrent\beamer@animht=\ht\beamer@animcurrent\fi
+ \ifdim\beamer@animdp<\dp\beamer@animcurrent\beamer@animdp=\dp\beamer@animcurrent\fi}%
+ }%
+ \setbox\beamer@animcurrent=\vbox\bgroup\begin{minipage}[t]{\beamer@animwd}%
+}
+
+\mode
+<article>
+{
+ \newenvironment{overprint}[1][]%
+ {%
+ \let\beamer@noargsonslide=\beamer@onslide%
+ \let\beamer@noargsvisibleonslide=\beamer@onslide%
+ \begin{onlyenv}}
+ {\end{onlyenv}}
+
+ \def\beamer@onslide<#1>{\end{onlyenv}\begin{onlyenv}<#1>}
+}
+
+
+%
+% Transitions - DISTRACTING and to be used with CARE!!!!
+%
+
+\define@key{beamertrans}{direction}{\def\beamer@transdir{ /Di #1 }}
+\define@key{beamertrans}{duration}{\def\beamer@dur{ /D #1 }}
+
+\newcommand\beamer@dotrans[2][]{%
+ \def\beamer@transdir{}%
+ \def\beamer@dur{}%
+ \setkeys{beamertrans}{#1}%
+ \edef\beamer@temp{{pdfpagetransition={#2 \beamer@transdir\space\beamer@dur}}}%
+ \expandafter\hypersetup\beamer@temp}
+
+\mode
+<article>
+{
+ \newcommand\beamer@dotrans[2][]{}
+}
+
+\mode
+<all>
+{
+ \newcommand<>{\transblindshorizontal}[1][]{\only#2{\beamer@dotrans[{#1}]{Blinds /Dm /H}}}
+ \newcommand<>{\transblindsvertical}[1][]{\only#2{\beamer@dotrans[{#1}]{Blinds /Dm /V}}}
+ \newcommand<>{\transboxin}[1][]{\only#2{\beamer@dotrans[{#1}]{Box /M /I}}}
+ \newcommand<>{\transboxout}[1][]{\only#2{\beamer@dotrans[{#1}]{Box /M /O}}}
+ \newcommand<>{\transcover}[1][]{\only#2{\beamer@dotrans[{#1}]{Cover}}}
+ \newcommand<>{\transdissolve}[1][]{\only#2{\beamer@dotrans[{#1}]{Dissolve}}}
+ \newcommand<>{\transfade}[1][]{\only#2{\beamer@dotrans[{#1}]{Fade}}}
+ \newcommand<>{\transglitter}[1][]{\only#2{\beamer@dotrans[{#1}]{Glitter}}}
+ \newcommand<>{\transpush}[1][]{\only#2{\beamer@dotrans[{#1}]{Push}}}
+ \newcommand<>{\transreplace}[1][]{\only#2{\beamer@dotrans[{#1}]{Replace}}}
+ \newcommand<>{\transsplitverticalin}[1][]{\only#2{\beamer@dotrans[{#1}]{Split /Dm /V /M /I}}}
+ \newcommand<>{\transsplitverticalout}[1][]{\only#2{\beamer@dotrans[{#1}]{Split /Dm /V /M /O}}}
+ \newcommand<>{\transsplithorizontalin}[1][]{\only#2{\beamer@dotrans[{#1}]{Split /Dm /H /M /I}}}
+ \newcommand<>{\transsplithorizontalout}[1][]{\only#2{\beamer@dotrans[{#1}]{Split /Dm /H /M /O}}}
+ \newcommand<>{\transuncover}[1][]{\only#2{\beamer@dotrans[{#1}]{Uncover}}}
+ \newcommand<>{\transwipe}[1][]{\only#2{\beamer@dotrans[{#1}]{Wipe}}}
+}
+
+\newcommand<>{\transduration}[1]{\only#2{\hypersetup{pdfpageduration={#1}}}}
+
+\mode
+<article>
+{
+ \newcommand<>{\transduration}[1]{}
+}
+
+
+%
+% Animation macros
+%
+
+\protected\def\animate<#1>{\transduration<#1| handout:0| trans:0>{0}}
+\protected\def\animatevalue<#1-#2>#3#4#5{%
+ \only<#1-#2>{}% enforce these frames
+ \ifnum\beamer@slideinframe<#1\relax
+ #3=#4\relax
+ \else
+ \ifnum\beamer@slideinframe<#2\relax
+ #3=#4\relax
+ #3=-#3\relax
+ \advance#3 by#5\relax
+ \beamer@animationtempa=#2\relax
+ \advance\beamer@animationtempa by-#1 %
+ \ifnum\beamer@animationtempa>0 %
+ \divide#3 by\beamer@animationtempa
+ \fi
+ \beamer@animationtempa=\beamer@slideinframe
+ \advance\beamer@animationtempa by-#1 %
+ \multiply#3 by\beamer@animationtempa
+ \advance#3 by#4 %
+ \else
+ #3=#5\relax
+ \fi
+ \fi
+}
+
+\mode
+<article>
+{
+ \protected\def\animate<#1>{}
+ \protected\def\animatevalue<#1-#2>#3#4#5{#3=#4\relax}
+}
+
+%
+% Labels in overlays
+%
+\g@addto@macro\beamer@lastminutepatches{%
+ \let\beamer@origlabel\label
+ \def\label{\@ifnextchar<{\beamer@label}{\beamer@label<1>}}
+
+ \let\beamer@origlabel@in@display\label@in@display
+ \def\label@in@display{\@ifnextchar<{\beamer@label@in@display}{\beamer@label@in@display<1>}}
+}
+
+\def\beamer@label<#1>#2{\alt<#1>{\beamer@origlabel{#2}\beamer@nameslide{#2}}{\beamer@dummynameslide}}
+\def\beamer@label@in@display<#1>#2{\alt<#1>{\beamer@origlabel@in@display{#2}\beamer@nameslide{#2}}{\beamer@dummynameslide}}
+
+\mode
+<article>
+{
+ \g@addto@macro\beamer@lastminutepatches{
+ % Has to be done late...
+ \renewcommand<>{\label}{\alt#1{\beameroriginal{\label}}{\@gobble}}
+ \renewcommand<>{\label@in@display}{\alt#1{\beameroriginal{\label@in@display}}{\@gobble}}
+ }
+}
+
+\AtBeginDocument
+{
+ \let\beamer@origref=\ref
+ \def\ref{%
+ \@ifstar
+ {\beamer@origref}
+ {\beamer@ref}%
+ }
+ \long\def\beamer@ref#1{%
+ \hyperlink{#1}{\beamer@origref{#1}}%
+ }
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaserequires.sty b/macros/latex/contrib/beamer/base/beamerbaserequires.sty
new file mode 100644
index 0000000000..1b45eae738
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaserequires.sty
@@ -0,0 +1,73 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+%
+% Beamer packages
+%
+
+% Fixes other packages
+\RequirePackage{beamerbasecompatibility}
+
+% Font stuff
+\RequirePackage{beamerbasefont}
+
+% Support for translations
+\RequirePackage{beamerbasetranslator}
+
+% Miscellaneous commands
+\RequirePackage{beamerbasemisc}
+
+% Stuff for using two screens
+\RequirePackage{beamerbasetwoscreens}
+
+% Overlay stuff
+\RequirePackage{beamerbaseoverlay}
+
+% Commands for constructing the title page
+\RequirePackage{beamerbasetitle}
+
+% Parts, sections, subsections, appendix
+\RequirePackage{beamerbasesection}
+
+% Commands for constructing frames
+\RequirePackage{beamerbaseframe}
+\RequirePackage{beamerbaseverbatim}
+\RequirePackage{beamerbaseframesize}
+
+% Headlines, sidebars, columns
+\RequirePackage{beamerbaseframecomponents}
+
+% Color management
+\RequirePackage{beamerbasecolor}
+
+% Commands for adding notes
+\RequirePackage{beamerbasenotes}
+
+% Table of contents formatting
+\RequirePackage{beamerbasetoc}
+
+% For default templates
+\RequirePackage{beamerbasetemplates}
+
+% Commands for local structure like alert, itemize, etc.
+\RequirePackage{beamerbaselocalstructure}
+
+% Navigation buttons
+\RequirePackage{beamerbasenavigation}
+
+% Theorems
+\RequirePackage{beamerbasetheorems}
+
+% Commands for including and building themes
+\RequirePackage{beamerbasethemes}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasesection.sty b/macros/latex/contrib/beamer/base/beamerbasesection.sty
new file mode 100644
index 0000000000..9193f5ca45
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasesection.sty
@@ -0,0 +1,398 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<all>
+{
+ \def\beamer@secgobble{\beamer@savemode\@ifnextchar*{\beamer@secstargobble}{\beamer@sec@gobbleoptional}}
+ \def\beamer@secstargobble*{\beamer@sec@gobbleoptional}
+ \newcommand\beamer@sec@gobbleoptional[2][]{\beamer@resumemode}
+ \def\secname{}
+ \def\subsecname{}
+ \def\subsubsecname{}
+}
+
+\mode
+<presentation>
+
+%
+% Lecture Definitions
+%
+\newif\ifbeamer@inlecture
+\beamer@inlecturetrue
+
+\newcommand{\beamer@if@in@clist@TF}[2]{%
+ \def\beamer@if@in@clist@aux##1,#2,{}%
+ \expandafter\expandafter\expandafter\ifx
+ \expandafter\expandafter\expandafter\@nil
+ \expandafter\beamer@if@in@clist@aux\expandafter,#1,{}{},#2,\@nil
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\@firstoftwo
+ \fi
+}
+
+\newcounter{lecture}
+\renewcommand\thelecture{\@arabic\c@lecture}
+\let\insertlecturenumber=\thelecture
+\newrobustcmd*\lecture{\@dblarg\beamer@lecture}
+\long\def\beamer@lecture[#1]#2#3{%
+ \beamer@savemode
+ \mode<all>%
+ \refstepcounter{lecture}%
+ \def\beamer@currentlecturelabel{#3}%
+ \@onelevel@sanitize\beamer@currentlecturelabel
+ \def\beamer@lecturename{#2}%
+ \def\beamer@shortlecturename{#1}%
+ \ifx\beamer@onlylecture\@empty
+ \else
+ \expandafter\beamer@if@in@clist@TF\expandafter\beamer@onlylecture
+ \expandafter{\beamer@currentlecturelabel}%
+ {\beamer@inlecturetrue}%
+ {\beamer@inlecturefalse}%
+ \fi
+ \beamer@atbeginlecture
+ \beamer@resumemode
+}
+
+\mode
+<all>
+{
+ \newrobustcmd\AtBeginLecture[1]{%
+ \def\beamer@atbeginlecture{#1}}
+ \AtBeginLecture{}
+
+ \newrobustcmd*\includeonlylecture[1]{%
+ \def\beamer@onlylecture{#1}%
+ \@onelevel@sanitize\beamer@onlylecture
+ }
+
+ \includeonlylecture{}
+}
+
+\newrobustcmd*\insertlecture{\beamer@lecturename}
+\newrobustcmd*\insertshortlecture[1][]{%
+ \begingroup
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\beamer@shortlecturename}%
+ \endgroup}
+
+\mode
+<article>
+{
+ \newrobustcmd*\lecture[3][]{\def\insertlecture{#2}\def\insertshortlecture{#1}}
+}
+
+%
+% Part Definitions
+%
+\newcounter{part}
+\renewcommand\thepart{\@arabic\c@part}
+\beamer@partstartpage=1
+
+\newcommand<>{\part}{\alt#1{\@dblarg\beamer@part}{\beamer@gobbleoptional}}
+\long\def\beamer@part[#1]#2{%
+ \beamer@savemode
+ \mode<all>%
+ \ifbeamer@inlecture
+ \refstepcounter{part}%
+ \def\beamer@partname{#2}%
+ \def\beamer@partnameshort{#1}%
+ \addtocontents{nav}{\protect\headcommand{\protect\partentry{#2}{\the\c@part}}}%
+ \xdef\partlink{{Navigation\the\c@page}{\noexpand\beamer@partname}}%
+ \xdef\partlinkshort{{Navigation\the\c@page}{\noexpand\beamer@partnameshort}}%
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
+ \addtocontents{nav}{\protect\headcommand{%
+ \protect\beamer@partpages{\the\beamer@partstartpage}{\the\beamer@tempcount}}}%
+ \addtocontents{nav}{\protect\headcommand{%
+ \protect\beamer@sectionpages{\the\beamer@sectionstartpage}{\the\beamer@tempcount}}}%
+ \addtocontents{nav}{\protect\headcommand{%
+ \protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}%
+ \beamer@partstartpage=\c@page
+ \beamer@sectionstartpage=\c@page
+ \beamer@subsectionstartpage=\c@page
+ \setcounter{subsection}{0}%
+ \protected\def\insertsection{}%
+ \protected\def\insertsubsection{}%
+ \protected\def\insertsubsubsection{}%
+ \protected\def\insertsectionhead{}%
+ \protected\def\insertsubsectionhead{}%
+ \protected\def\insertsubsubsectionhead{}%
+ \def\lastsubsection{}%
+ \protected\def\insertpart{\expandafter\hyperlink\partlink}%
+ \Hy@writebookmark{\the\c@part}{#1}{Outline\the\c@part}{1}{toc}%
+ \hyper@anchorstart{Outline\the\c@part}\hyper@anchorend
+ \beamer@atbeginpart
+ \fi%
+ \beamer@resumemode}%
+\def\insertpart{}
+\def\partlinkshort{{Navigation1}{}}
+
+\newrobustcmd*\insertromanpartnumber{\@Roman\c@part}
+\newrobustcmd*\insertpartnumber{\@arabic\c@part}
+
+\newrobustcmd*\insertshortpart[1][]{%
+ \begingroup
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\expandafter\hyperlink\partlinkshort}%
+ \endgroup}
+
+\mode
+<all>
+{
+ \newrobustcmd\AtBeginPart[1]{%
+ \def\beamer@atbeginpart{#1}}
+ \AtBeginPart{}
+}
+
+\mode
+<article>
+{
+ \ifx\part\@undefined%
+ \else
+ \renewcommand<>{\part}{\alt#1{\beameroriginal\part}{\beamer@gobbleoptional}}
+ \fi
+}
+
+%
+% Section Definitions
+%
+\def\sectionname{\translate{Section}}
+\newcounter{section}
+\renewcommand\thesection{\@arabic\c@section}
+\beamer@sectionstartpage=1\relax
+\beamer@tocsectionnumber=0\relax
+
+\newcommand<>{\section}{\alt#1{\@ifnextchar[\beamer@section\beamer@@section}{\beamer@secgobble}}
+
+\def\beamer@@section{\@ifnextchar*\beamer@@ssection\beamer@@@section}
+\long\def\beamer@@ssection*#1{\beamer@section[{#1}]{}}
+\long\def\beamer@@@section#1{\beamer@section[{#1}]{#1}}
+\long\def\beamer@section[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture
+ \refstepcounter{section}%
+ \ifblank{#2}%
+ {\long\def\secname{#1}\long\def\lastsection{#1}}%
+ {\global\advance\beamer@tocsectionnumber by 1\relax%
+ \long\def\secname{#2}%
+ \long\def\lastsection{#1}%
+ \addtocontents{toc}{\protect\beamer@sectionintoc{\the\c@section}{#2}{\the\c@page}{\the\c@part}%
+ {\the\beamer@tocsectionnumber}}}%
+ {\let\\=\relax\xdef\sectionlink{{Navigation\the\c@page}{\noexpand\secname}}}%
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@sectionpages{\the\beamer@sectionstartpage}{\the\beamer@tempcount}}}%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}%
+ \ifblank{#1}{}{%
+ \addtocontents{nav}{\protect\headcommand{\protect\sectionentry{\the\c@section}{#1}{\the\c@page}{\secname}{\the\c@part}}}%
+ }%
+ \beamer@sectionstartpage=\c@page%
+ \beamer@subsectionstartpage=\c@page%
+ \def\insertsection{\expandafter\hyperlink\sectionlink}%
+ \def\insertsubsection{}%
+ \def\insertsubsubsection{}%
+ % Deal with a defective patch in metropolis theme
+ \def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}%
+ \edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}%
+ \def\insertsubsectionhead{}%
+ \def\insertsubsubsectionhead{}%
+ \def\lastsubsection{}%
+ \Hy@writebookmark{\the\c@section}{\secname}{Outline\the\c@part.\the\c@section}{2}{toc}%
+ \hyper@anchorstart{Outline\the\c@part.\the\c@section}\hyper@anchorend%
+ \ifblank{#2}{\beamer@atbeginsections}{\beamer@atbeginsection}%
+ \fi%
+ \beamer@resumemode}%
+\def\insertsection{}
+\def\insertsectionhead{}
+\def\insertsectionnumber{\@arabic\c@section}
+
+\def\breakhere{\protect\beamer@breakhere}
+\def\beamer@breakhere{}
+
+
+\mode
+<all>
+{
+ \newrobustcmd*\AtBeginSection{\@ifnextchar[{\beamer@AtBeginSection}{\beamer@@AtBeginSection}}
+ \long\def\beamer@@AtBeginSection#1{\beamer@AtBeginSection[{#1}]{#1}}
+ \long\def\beamer@AtBeginSection[#1]#2{%
+ \def\beamer@atbeginsection{#2}%
+ \def\beamer@atbeginsections{#1}%
+ }
+ \AtBeginSection{}
+}
+
+\mode
+<article>
+{
+ \renewcommand<>{\section}{\alt#1{\beameroriginal\section}{\beamer@secgobble}}
+}
+
+
+%
+% Subsection Definitions
+%
+\def\subsectionname{\translate{Subsection}}
+\newcounter{subsection}[section]
+\renewcommand\thesubsection{\@arabic\c@subsection}
+
+\beamer@subsectionstartpage=1
+
+\newcommand<>{\subsection}{\alt#1{\@ifnextchar[\beamer@subsection\beamer@@subsection}{\beamer@secgobble}}
+
+\def\beamer@@subsection{\@ifnextchar*\beamer@@ssubsection\beamer@@@subsection}
+\long\def\beamer@@ssubsection*#1{\beamer@subsection[{#1}]{}}
+\def\beamer@@@subsection#1{\beamer@subsection[{#1}]{#1}}
+\def\beamer@subsection[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture%
+ \refstepcounter{subsection}%
+ \ifblank{#2}{\long\def\subsecname{#1}\long\def\lastsubsection{#1}}
+ {%
+ \long\def\subsecname{#2}%
+ \long\def\lastsubsection{#1}%
+ \addtocontents{toc}{\protect\beamer@subsectionintoc{\the\c@section}{\the\c@subsection}{#2}{\the\c@page}{\the\c@part}{\the\beamer@tocsectionnumber}}%
+ }%
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}
+ \ifblank{#1}{}{%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsectionentry{\the\c@part}{\the\c@section}{\the\c@subsection}{\the\c@page}{\lastsubsection}}}
+ }%
+ \beamer@subsectionstartpage=\c@page%
+ \edef\subsectionlink{{Navigation\the\c@page}{\noexpand\subsecname}}%
+ \def\insertsubsection{\expandafter\hyperlink\subsectionlink}%
+ \def\insertsubsubsection{}%
+ % Deal with a faulty patch in metropolis theme
+ \def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{#1}}%
+ \edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}%
+ \def\insertsubsubsectionhead{}%
+ \Hy@writebookmark{\the\c@subsection}{\subsecname}{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@page}{3}{toc}%
+ \hyper@anchorstart{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@page}\hyper@anchorend%
+ \ifblank{#2}{\beamer@atbeginsubsections}{\beamer@atbeginsubsection}%
+ \fi%
+ \beamer@resumemode}
+\def\insertsubsection{}
+\def\insertsubsectionnumber{\@arabic\c@subsection}
+\def\insertsubsectionhead{}
+\def\lastsubsection{}
+
+\mode
+<all>
+{
+ \newrobustcmd*\AtBeginSubsection{\@ifnextchar[{\beamer@AtBeginSubsection}{\beamer@@AtBeginSubsection}}
+ \long\def\beamer@@AtBeginSubsection#1{\beamer@AtBeginSubsection[{#1}]{#1}}
+ \long\def\beamer@AtBeginSubsection[#1]#2{%
+ \def\beamer@atbeginsubsection{#2}%
+ \def\beamer@atbeginsubsections{#1}}
+ \AtBeginSubsection{}
+}
+
+\mode
+<article>
+{
+ \renewcommand<>{\subsection}{\alt#1{\beameroriginal\subsection}{\beamer@secgobble}}
+}
+
+
+%
+% Subsubsection Definitions
+%
+\newcounter{subsubsection}[subsection]
+\renewcommand\thesubsubsection{\@arabic\c@subsubsection}
+
+\beamer@subsectionstartpage=1
+
+\newcommand<>{\subsubsection}{\alt#1{\@ifnextchar[\beamer@subsubsection\beamer@@subsubsection}{\beamer@secgobble}}
+
+\def\beamer@@subsubsection{\@ifnextchar*\beamer@@ssubsubsection\beamer@@@subsubsection}
+\long\def\beamer@@ssubsubsection*#1{\beamer@subsubsection[{#1}]{}}
+\def\beamer@@@subsubsection#1{\beamer@subsubsection[{#1}]{#1}}
+\def\beamer@subsubsection[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture%
+ \refstepcounter{subsubsection}%
+ \ifblank{#2}{\long\def\subsubsecname{#1}\long\def\lastsubsubsection{#1}}
+ {%
+ \long\def\subsubsecname{#2}%
+ \long\def\lastsubsubsection{#1}%
+ \addtocontents{toc}{\protect\beamer@subsubsectionintoc%
+ {\the\c@section}{\the\c@subsection}{\the\c@subsubsection}{#2}{\the\c@page}{\the\c@part}{\the\beamer@tocsectionnumber}}%
+ }%
+ \ifblank{#1}{}{%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsubsectionentry%
+ {\the\c@part}{\the\c@section}{\the\c@subsection}{\the\c@subsubsection}{\the\c@page}{\lastsubsubsection}}}%
+ }
+ \edef\subsubsectionlink{{Navigation\the\c@page}{\noexpand\subsubsecname}}%
+ \def\insertsubsubsection{\expandafter\hyperlink\subsubsectionlink}%
+ \edef\insertsubsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}
+ \Hy@writebookmark{\the\c@subsubsection}{\subsubsecname}{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@subsubsection.\the\c@page}{4}{toc}%
+ \hyper@anchorstart{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@subsubsection.\the\c@page}\hyper@anchorend%
+ \ifblank{#2}{\beamer@atbeginsubsubsections}{\beamer@atbeginsubsubsection}%
+ \fi%
+ \beamer@resumemode}
+\def\insertsubsubsection{}
+\def\insertsubsubsectionnumber{\@arabic\c@subsubsection}
+\def\insertsubsubsectionhead{}
+
+\mode
+<all>
+{
+ \newrobustcmd*\AtBeginSubsubsection{\@ifnextchar[{\beamer@AtBeginSubsubsection}{\beamer@@AtBeginSubsubsection}}
+ \long\def\beamer@@AtBeginSubsubsection#1{\beamer@AtBeginSubsubsection[{#1}]{#1}}
+ \long\def\beamer@AtBeginSubsubsection[#1]#2{%
+ \def\beamer@atbeginsubsubsection{#2}%
+ \def\beamer@atbeginsubsubsections{#1}}
+ \AtBeginSubsubsection{}
+}
+
+\mode
+<article>
+{
+ \renewcommand<>{\subsubsection}{\alt#1{\beameroriginal\subsubsection}{\beamer@secgobble}}
+}
+
+
+%
+% Appendix stuff
+%
+
+\newif\ifbeamer@inappendix
+
+\newcommand<>\beamer@appendix{}
+\def\beamer@resetappendix{\global\let\appendix\beamer@appendix}
+\newcommand<>\appendix{%
+ \beamer@inappendixtrue%
+ \only#1{\part{\appendixname}%
+ \immediate\write\@auxout{\string\@writefile{nav}%
+ {\noexpand\headcommand{\noexpand\gdef\noexpand\insertmainframenumber{\the\c@framenumber}}}}%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@appendixpages{\the\c@page}}}%
+ \beamer@resetappendix}%
+}
+
+\def\insertappendixframenumber{\the\numexpr\inserttotalframenumber-\insertmainframenumber\relax}
+\def\insertframenumberinappendix{\ifbeamer@inappendix\the\numexpr\insertframenumber-\insertmainframenumber\relax\else0\fi}
+
+\mode
+<article>
+{
+ \ifx\appendix\@undefined
+ \else
+ \renewcommand<>{\appendix}{\only#1{\beameroriginal\appendix}}
+ \fi
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasetemplates.sty b/macros/latex/contrib/beamer/base/beamerbasetemplates.sty
new file mode 100644
index 0000000000..d25e83bdce
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasetemplates.sty
@@ -0,0 +1,130 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+%
+% Template Installation Commands
+%
+
+\def\usebeamertemplate{\@ifstar{\beamer@usebeamertemplates}{\beamer@usebeamertemplatedo}}
+\def\beamer@usebeamertemplates{\@ifstar{\beamer@usebeamertemplatess}{\beamer@usebeamertemplatedos}}
+\def\beamer@usebeamertemplatess{\@ifstar{\beamer@usebeamertemplatedosss}{\beamer@usebeamertemplatedoss}}
+\def\beamer@usebeamertemplatedo#1{\csname beamer@@tmpl@#1\endcsname}
+\def\beamer@usebeamertemplatedos#1{{{\usebeamerfont{#1}\usebeamercolor[fg]{#1}\csname beamer@@tmpl@#1\endcsname}}}
+\def\beamer@usebeamertemplatedoss#1{{{\usebeamerfont{#1}\usebeamercolor*[fg]{#1}\csname beamer@@tmpl@#1\endcsname}}}
+\def\beamer@usebeamertemplatedosss#1{{{\usebeamerfont*{#1}\usebeamercolor*[fg]{#1}\csname beamer@@tmpl@#1\endcsname}}}
+
+\long\def\beamer@@empty{}
+\def\expandbeamertemplate#1{\csname beamer@@tmpl@#1\endcsname}
+\def\ifbeamertemplateempty#1#2#3{%
+ \def\beamer@ifdo{#3}%
+ \expandafter\ifx\csname beamer@@tmpl@#1\endcsname\relax\def\beamer@ifdo{#2}\fi%
+ \expandafter\ifx\csname beamer@@tmpl@#1\endcsname\beamer@@empty\def\beamer@ifdo{#2}\fi%
+ \beamer@ifdo}
+
+
+\mode
+<article>
+{
+ % the following do the same in article mode:
+ \let\beamer@usebeamertemplatedosss=\beamer@usebeamertemplatedo
+ \let\beamer@usebeamertemplatedoss=\beamer@usebeamertemplatedo
+ \let\beamer@usebeamertemplatedos=\beamer@usebeamertemplatedo
+}
+
+
+\newif\ifbeamer@sbt
+\newtoks\beamer@sbttoks
+
+\newcommand<>\defbeamertemplate{
+ \ifblank{#1}
+ {\def\beamer@@oar{<presentation>}}
+ {\def\beamer@@oar{#1}}\beamer@defbeamertemplate}
+\def\beamer@defbeamertemplate{\@ifstar{\beamer@sbttrue\beamer@sbtoo}{\beamer@sbtfalse\beamer@sbtoo}}
+\def\beamer@sbtoo#1#2{\@ifnextchar[{\beamer@sbto{#1}{#2}}{\beamer@sbto{#1}{#2}[0]}}
+\def\beamer@sbto#1#2[#3]{\@ifnextchar[{\beamer@@sbto{#1}{#2}[{#3}]}{\def\beamer@sbtotemp{}\beamer@@@sbto{#1}{#2}[{#3}]}}
+\long\def\beamer@@sbto#1#2[#3][#4]{\long\def\beamer@sbtotemp{[{#4}]}\beamer@@@sbto{#1}{#2}[{#3}]}
+\long\def\beamer@@@sbto#1#2[#3]#4{%
+ \beamer@sbttoks={\beamer@@@@sbto{#1}{#2}[{#3}]{#4}}%
+ \@ifnextchar[{\the\beamer@sbttoks}{\the\beamer@sbttoks[action]{}}%
+}
+\long\def\beamer@@@@sbto#1#2[#3]#4[#5]#6{%
+ \edef\beamer@@sbtoarg{\expandafter\noexpand\csname beamer@@tmpop@#1@#2\endcsname[{#3}]}%
+ \expandafter\expandafter\expandafter\newcommand\expandafter\beamer@@sbtoarg\beamer@sbtotemp{%
+ \expandafter\long\expandafter\def\csname beamer@@tmpl@#1\endcsname{#4}#6}%
+ \let\beamer@@next=\beamer@resetsbtoarg%
+ \expandafter\mode\beamer@@oar{\let\beamer@@next=\relax}%
+ \beamer@@next%
+ \ifbeamer@sbt\setbeamertemplate{#1}[{#2}]\relax\relax\relax\relax\relax\relax\relax\relax\relax\fi%
+}
+\def\beamer@resetsbtoarg{%
+ \expandafter\expandafter\expandafter\renewcommand\expandafter\beamer@@sbtoarg\beamer@sbtotemp{}
+}
+
+\def\defbeamertemplatealias#1#2#3{%
+ \edef\beamer@@temp{\def\expandafter\noexpand\csname beamer@@tmpop@#1@#2\endcsname{\expandafter\noexpand\csname beamer@@tmpop@#1@#3\endcsname}}%
+ \beamer@@temp}
+
+
+\def\defbeamertemplateparent#1{\@ifnextchar[{\beamer@sbtoparo{#1}}{\beamer@sbtoparo{#1}[*]}}
+\def\beamer@sbtoparo#1[#2]#3{\@ifnextchar[{\beamer@sbtopar{#1}[{#2}]{#3}}{\beamer@sbtopar{#1}[{#2}]{#3}[0]}}
+\def\beamer@sbtopar#1[#2]#3[#4]{\@ifnextchar[
+ {\beamer@@sbtopar{#1}[{#2}]{#3}[{#4}]}
+ {\def\beamer@sbtotemp{}\beamer@@@sbtopar{#1}[{#2}]{#3}[{#4}]}}
+\long\def\beamer@@sbtopar#1[#2]#3[#4][#5]{\long\def\beamer@sbtotemp{[{#5}]}\beamer@@@sbtopar{#1}[{#2}]{#3}[{#4}]}
+\long\def\beamer@@@sbtopar#1[#2]#3[#4]#5{%
+ \expandafter\def\csname beamer@@tmpgrp@#1\endcsname{#3}%
+ \edef\beamer@@sbtoarg{\noexpand\newcommand\expandafter\noexpand\csname beamer@@tmpop@#1@#2\endcsname[{#4}]}%
+ \expandafter\beamer@@sbtoarg\beamer@sbtotemp{%
+ \def\beamer@sbtlist{#3}%
+ \@for\beamer@templ:=\beamer@sbtlist\do
+ {\expandafter\expandafter\expandafter\setbeamertemplate
+ \expandafter\expandafter\expandafter{\expandafter\beamer@templ\expandafter}\expandafter[\beamer@@sbt@option]#5}}}
+
+
+\def\setbeamertemplate#1{%
+ \@ifnextchar[{\beamer@sbtchoose{#1}}{\beamer@sbtexec{#1}}}
+\long\def\beamer@sbtexec#1#2{%
+ \expandafter\long\expandafter\def\csname beamer@@tmpl@#1\endcsname{#2}%
+ \expandafter\ifx\csname beamer@@tmpgrp@#1\endcsname\relax%
+ \else%
+ \expandafter\expandafter\expandafter\def
+ \expandafter\expandafter\expandafter\beamer@sbt@group
+ \expandafter\expandafter\expandafter{\csname beamer@@tmpgrp@#1\endcsname}%
+ \@for\beamer@templ:=\beamer@sbt@group\do{\expandafter\setbeamertemplate\expandafter{\beamer@templ}{#2}}%
+ \fi%
+}
+\long\def\beamer@sbtchoose#1[#2]{\def\beamer@@sbt@option{#2}%
+ \expandafter\ifx\csname beamer@@tmpop@#1@#2\endcsname\relax%
+ \expandafter\let\expandafter\beamer@@next\csname beamer@@tmpop@#1@*\endcsname%
+ \else%
+ \expandafter\let\expandafter\beamer@@next\csname beamer@@tmpop@#1@#2\endcsname%
+ \fi%
+ \beamer@@next%
+}
+
+\newcommand\addtobeamertemplate[3]{%
+ \long\def\beamer@temp{#2}%
+ \expandafter\def\expandafter\beamer@@temp\expandafter{\expandafter\long\expandafter\def\csname beamer@@tmpl@#1\endcsname}%
+ \expandafter\expandafter\expandafter\long%
+ \expandafter\expandafter\expandafter\def%
+ \expandafter\expandafter\expandafter\beamer@@addtemplate%
+ \expandafter\expandafter\expandafter{\csname beamer@@tmpl@#1\endcsname}%
+ \expandafter\expandafter\expandafter\beamer@@temp%
+ \expandafter\expandafter\expandafter{\expandafter\beamer@temp\beamer@@addtemplate#3}%
+}
+
+
+
+\RequirePackage{beamerbaseauxtemplates}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasethemes.sty b/macros/latex/contrib/beamer/base/beamerbasethemes.sty
new file mode 100644
index 0000000000..19f672f8bd
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasethemes.sty
@@ -0,0 +1,41 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+%
+% Basic commands for including themes
+%
+\mode
+<presentation>
+{
+ \def\beamer@calltheme#1#2#3{%
+ \def\beamer@themelist{#2}%
+ \@for\beamer@themename:=\beamer@themelist\do
+ {\usepackage[{#1}]{#3\beamer@themename}}}
+
+ \newrobustcmd*\usetheme[2][]{\beamer@calltheme{#1}{#2}{beamertheme}}
+ \newrobustcmd*\usecolortheme[2][]{\beamer@calltheme{#1}{#2}{beamercolortheme}}
+ \newrobustcmd*\usefonttheme[2][]{\beamer@calltheme{#1}{#2}{beamerfonttheme}}
+ \newrobustcmd*\useoutertheme[2][]{\beamer@calltheme{#1}{#2}{beameroutertheme}}
+ \newrobustcmd*\useinnertheme[2][]{\beamer@calltheme{#1}{#2}{beamerinnertheme}}
+}
+
+\mode
+<article>
+{
+ \newrobustcmd*\usetheme[2][]{}
+ \newrobustcmd*\usecolortheme[2][]{}
+ \newrobustcmd*\usefonttheme[2][]{}
+ \newrobustcmd*\useoutertheme[2][]{}
+ \newrobustcmd*\useinnertheme[2][]{}
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasetheorems.sty b/macros/latex/contrib/beamer/base/beamerbasetheorems.sty
new file mode 100644
index 0000000000..bc0d95ea38
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasetheorems.sty
@@ -0,0 +1,154 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+\ifbeamer@ams
+
+ \RequirePackage{amsmath}
+ \RequirePackage{amsthm}
+
+ % For old versions of amsthm
+ \providecommand\thm@space@setup{}
+ \providecommand\pushQED[1]{\def\beamer@qed{#1}}
+ \providecommand\popQED{\beamer@qed}
+ \providecommand\qedhere{\qed}
+
+ % Redfine certain amsthm internals:
+ \def\@thm#1#2#3{%
+ \ifhmode\unskip\unskip\par\fi
+ \normalfont
+ \let\thmheadnl\relax
+ \let\thm@swap\@gobble
+ \thm@headpunct{.}% add period after heading
+ \thm@space@setup
+ #1% style overrides
+ \def\inserttheoremname{#3}
+ \def\inserttheorempunctuation{\the\thm@headpunct}
+ \def\@tempa{#2}%
+ \ifx\@empty\@tempa
+ \def\inserttheoremnumber{}
+ \else
+ \refstepcounter{#2}%
+ \expandafter\def\expandafter\inserttheoremnumber\expandafter{ \csname the#2\endcsname}
+ \fi
+ \beamer@begintheorem%
+ }
+
+ \let\beamer@origxthm=\@xthm
+ \def\@xthm#1{\resetcounteronoverlays{#1}\beamer@origxthm{#1}}
+
+ \def\inserttheoremheadfont{\the\thm@headfont}
+ \def\inserttheoremblockenv{block}
+
+ \def\th@example{%
+ \normalfont % body font
+ \def\inserttheoremblockenv{exampleblock}
+ }
+
+ \newcommand<>\beamer@begintheorem[1][]{%
+ \ifblank{#1}
+ {\def\inserttheoremaddition{}}
+ {\def\inserttheoremaddition{#1}}
+ \usebeamertemplate{theorem begin}#2}
+ \def\@endtheorem{\usebeamertemplate{theorem end}}
+
+ \renewenvironment<>{proof}[1][\proofname]{%
+ \par
+ \def\insertproofname{#1\@addpunct{.}}%
+ \pushQED{\qed}
+ \usebeamertemplate{proof begin}#2}
+ {\popQED\usebeamertemplate{proof end}}
+
+\fi
+
+\def\qedsymbol{\leavevmode\hbox{\usebeamertemplate*{qed symbol}}}
+
+
+\mode
+<article>
+{
+ \ifbeamer@ams
+ \RequirePackage{amsmath}
+ \RequirePackage{amsthm}
+
+ \renewenvironment<>{proof}[1][\proofname]
+ {\begin{actionenv}#2\begin{originalproof}[{#1}]}{\end{originalproof}\end{actionenv}}
+
+ % Make new theorem overlay-specification-aware
+ \let\beamer@origthm=\@thm
+ \def\@thm#1#2#3{\def\beamer@store{{#1}{#2}{#3}}\beamer@readspec}
+ \def\beamer@storeaction{\begin{actionenv}}
+ \newcommand<>\beamer@readspec[1][]{\def\beamer@storeaction{\begin{actionenv}#2}%
+ \expandafter\beamer@origthm\beamer@store[{#1}]}
+
+ \let\beamer@origbegintheorem=\@begintheorem
+ \def\@begintheorem{\beamer@storeaction\beamer@origbegintheorem}
+
+ \let\beamer@origendtheorem=\@endtheorem
+ \def\@endtheorem{\beamer@origendtheorem\end{actionenv}}
+ \fi
+
+ \def\th@example{\th@remark}
+
+ \newcommand{\ExampleInline}[1]{\translate{Example}: \ignorespaces#1}
+
+ % Compatiblity:
+ \newcommand{\BeispielInline}[1]{Beispiel: \ignorespaces#1}
+}
+
+\mode
+<all>
+{
+ \ifbeamer@blocks
+ \ifbeamer@countsect
+ \newtheorem{theorem}{\translate{Theorem}}[section]
+ \else
+ \newtheorem{theorem}{\translate{Theorem}}
+ \fi
+ \newtheorem{corollary}[theorem]{\translate{Corollary}}
+ \newtheorem{fact}[theorem]{\translate{Fact}}
+ \newtheorem{lemma}[theorem]{\translate{Lemma}}
+ \newtheorem{problem}[theorem]{\translate{Problem}}
+ \newtheorem{solution}[theorem]{\translate{Solution}}
+
+ \theoremstyle{definition}
+ \newtheorem{definition}[theorem]{\translate{Definition}}
+ \newtheorem{definitions}[theorem]{\translate{Definitions}}
+
+ \theoremstyle{example}
+ \newtheorem{example}[theorem]{\translate{Example}}
+ \newtheorem{examples}[theorem]{\translate{Examples}}
+
+
+ % Compatibility
+ \newtheorem{Beispiel}[theorem]{Beispiel}
+ \newtheorem{Beispiele}[theorem]{Beispiele}
+ \theoremstyle{plain}
+ \newtheorem{Loesung}[theorem]{L\"osung}
+ \newtheorem{Satz}[theorem]{Satz}
+ \newtheorem{Folgerung}[theorem]{Folgerung}
+ \newtheorem{Fakt}[theorem]{Fakt}
+ \newenvironment{Beweis}{\begin{proof}[Beweis.]}{\end{proof}}
+ \newenvironment{Lemma}{\begin{lemma}}{\end{lemma}}
+ \newenvironment{Proof}{\begin{proof}}{\end{proof}}
+ \newenvironment{Theorem}{\begin{theorem}}{\end{theorem}}
+ \newenvironment{Problem}{\begin{problem}}{\end{problem}}
+ \newenvironment{Corollary}{\begin{corollary}}{\end{corollary}}
+ \newenvironment{Example}{\begin{example}}{\end{example}}
+ \newenvironment{Examples}{\begin{examples}}{\end{examples}}
+ \newenvironment{Definition}{\begin{definition}}{\end{definition}}
+ \fi
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasetitle.sty b/macros/latex/contrib/beamer/base/beamerbasetitle.sty
new file mode 100644
index 0000000000..66d56f94ee
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasetitle.sty
@@ -0,0 +1,285 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+%
+%
+% The \maketitle command (for compatibility with other classes)
+%
+%
+\def\maketitle{\ifbeamer@inframe\titlepage\else\frame{\titlepage}\fi}
+
+
+%
+%
+% The \titlepage and \partpage
+%
+%
+\def\titlepage{\usebeamertemplate*{title page}\@thanks}
+\def\partpage{\usebeamertemplate*{part page}}
+\def\sectionpage{\usebeamertemplate*{section page}}
+\def\subsectionpage{\usebeamertemplate*{subsection page}}
+
+\mode
+<article>
+{\providecommand\titlepage{}
+\renewcommand\titlepage{}
+\providecommand\partpage{}
+\providecommand\sectionpage{}
+\providecommand\subsectionpage{}}
+
+
+%
+%
+% The \title command
+%
+%
+\renewcommand{\title}{\@dblarg\beamer@title}
+\long\def\beamer@title[#1]#2{%
+ \def\inserttitle{#2}%
+ \def\beamer@shorttitle{#1}%
+ }
+\title{}
+
+\newcommand\insertshorttitle[1][]{%
+ \beamer@setupshort{#1}%
+ \let\thanks=\@gobble%
+ \ifnum\c@page=1%
+ \hyperlinkpresentationend{\beamer@insertshort{\beamer@shorttitle}}%
+ \else%
+ \hyperlinkpresentationstart{\beamer@insertshort{\beamer@shorttitle}}%
+ \fi}
+
+
+
+\mode
+<article>
+{
+ \let\beamer@origtitle=\title
+ \renewcommand{\title}[2][]{\beamer@origtitle{#2}}
+}
+
+
+
+%
+%
+% The \subtitle command
+%
+%
+\newcommand{\subtitle}{\@dblarg\beamer@subtitle}
+\long\def\beamer@subtitle[#1]#2{%
+ \def\insertsubtitle{#2}%
+ \def\beamer@shortsubtitle{#1}%
+ }
+\subtitle{}
+
+\newcommand\insertshortsubtitle[1][]{%
+ \let\thanks=\@gobble%
+ \beamer@setupshort{#1}%
+ \ifnum\c@page=1%
+ \hyperlinkpresentationend{\beamer@insertshort{\beamer@shortsubtitle}}%
+ \else%
+ \hyperlinkpresentationstart{\beamer@insertshort{\beamer@shortsubtitle}}%
+ \fi}
+
+\ifbeamer@autopdfinfo%
+ \g@addto@macro\beamer@firstminutepatches
+ {
+ \begingroup
+ \let\thanks=\@gobble%
+ \hypersetup{pdftitle={\inserttitle\ifx\insertsubtitle\@empty\else\ - \insertsubtitle\fi}}
+ \endgroup
+ }
+\fi%
+
+\mode
+<article>
+{
+ \providecommand{\subtitle}[2][]{\def\insertsubtitle{#2}\g@addto@macro\@title{\\<article>{\normalsize#2}}}
+}
+
+
+%
+%
+% The \date command
+%
+%
+\def\date{\@dblarg\beamer@date}
+\long\def\beamer@date[#1]#2{%
+ \def\insertdate{#2}%
+ \def\beamer@shortdate{#1}%
+ }
+\date{\today}
+
+
+\newcommand\insertshortdate[1][]{%
+ {%
+ \let\thanks=\@gobble%
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\beamer@shortdate}%
+ }}
+
+
+\mode
+<article>
+{
+ \let\beamer@origdate=\date
+ \renewcommand{\date}[2][]{\beamer@origdate{#2}}
+}
+
+%
+%
+% The \author command
+%
+%
+\def\author{\@dblarg\beamer@author}
+\long\def\beamer@author[#1]#2{%
+ \def\insertauthor{\def\inst{\beamer@insttitle}\def\and{\beamer@andtitle}#2}%
+ \def\beamer@shortauthor{#1}%
+ \ifbeamer@autopdfinfo%
+ \def\beamer@andstripped{}%
+ \beamer@stripands#2 \and\relax
+ {\let\inst=\@gobble\let\thanks=\@gobble\def\and{, }\hypersetup{pdfauthor={\beamer@andstripped}}}
+ \fi%
+}
+
+\def\beamer@stripands#1 \and#2\relax{%
+ \def\beamer@temp{#2}%
+ \ifx\beamer@temp\@empty
+ \expandafter\def\expandafter\beamer@andstripped\expandafter{\beamer@andstripped#1}
+ \else
+ \expandafter\def\expandafter\beamer@andstripped\expandafter{\beamer@andstripped#1, }
+ \beamer@stripands#2\relax%
+ \fi
+}
+
+\author{}
+
+
+% Aux commands for \author
+\def\beamer@insttitle#1{\textsuperscript{#1}}
+\def\beamer@andtitle{\quad}
+\def\beamer@instother#1{}
+\def\beamer@andother{\unskip, }
+
+\newcommand\insertshortauthor[1][]{%
+ {%
+ \def\inst{\beamer@instother}\def\and{\beamer@andother}\let\thanks=\@gobble%
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\beamer@shortauthor}%
+ }}
+
+
+\mode
+<article>
+{
+ \let\beamer@origauthor=\author
+ \renewcommand{\author}[2][]{\beamer@origauthor{#2}}
+}
+
+
+
+%
+%
+% The \titlegraphic command
+%
+%
+\mode
+<all>
+{
+ \newcommand\titlegraphic[1]{\def\inserttitlegraphic{#1}}
+ \titlegraphic{}
+}
+
+
+
+%
+%
+% The \subject command
+%
+%
+\mode
+<all>
+{
+ \providecommand\subject[1]{\hypersetup{pdfsubject={#1}}}
+ \ifbeamer@keywords
+ \providecommand\keywords[1]{\hypersetup{pdfkeywords={#1}}}
+ \fi
+}
+
+
+
+
+%
+%
+% The \institute command
+%
+%
+\def\institute{\@dblarg\beamer@institute}
+\long\def\beamer@institute[#1]#2{%
+ \def\beamer@temp{#2}%
+ \ifx\beamer@temp\@empty
+ \def\insertinstitute{}
+ \else
+ \def\insertinstitute{\def\inst{\beamer@instinst}\def\and{\beamer@andinst}#2}%
+ \fi
+ \def\beamer@shortinstitute{#1}}
+\institute{}
+
+\def\beamer@instinst#1{\textsuperscript{#1}\ignorespaces}
+\def\beamer@andinst{\\[1em]}
+
+\newcommand\insertshortinstitute[1][]{%
+ {%
+ \let\thanks=\@gobble%
+ \def\inst{\beamer@instother}\def\and{\beamer@andother}%
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\beamer@shortinstitute}%
+ }}
+
+
+
+\mode
+<article>
+{
+ \ifx\institute\@undefined
+ \newcommand{\institute}[2][]{}
+ \else
+ \let\beamer@originstitute=\institute
+ \renewcommand{\institute}[2][]{\beamer@originstitute{#2}}
+ \fi
+
+ \providecommand\and{\unskip, }
+ \providecommand\inst[1]{}
+}
+
+
+%
+%
+% The \logo command
+%
+%
+\def\logo{\setbeamertemplate{logo}}
+\def\insertlogo{\usebeamertemplate*{logo}}
+
+
+\mode
+<article>
+{
+ \providecommand\logo[1]{}
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasetoc.sty b/macros/latex/contrib/beamer/base/beamerbasetoc.sty
new file mode 100644
index 0000000000..9b39d707e0
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasetoc.sty
@@ -0,0 +1,219 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+%
+% Local counters/ifs/dimensions
+%
+\newif\ifbeamer@pausesections
+\newif\ifbeamer@pausesubsections
+
+%
+%
+% Table of Contents Format
+%
+%
+
+\def\beamer@toc@sectionstyle#1{\beamer@toc@process\beamer@toc@cs\beamer@toc@os#1//}
+\def\beamer@toc@subsectionstyle#1{\beamer@toc@sprocess\beamer@toc@css\beamer@toc@oss\beamer@toc@ooss#1///}
+\def\beamer@toc@subsubsectionstyle#1{\beamer@toc@ssprocess\beamer@toc@csss\beamer@toc@osss\beamer@toc@oosss\beamer@toc@ooosss#1////}
+
+\define@key{beamertoc}{sectionstyle}{\beamer@toc@sectionstyle{#1}}
+\define@key{beamertoc}{subsectionstyle}{\beamer@toc@subsectionstyle{#1}}
+\define@key{beamertoc}{subsubsectionstyle}{\beamer@toc@subsubsectionstyle{#1}}
+\def\beamer@toc@process#1#2#3/#4/{%
+ \ifblank{#4}{\def#1{#3}\def#2{#3}}{\def#1{#3}\def#2{#4}\@gobble}}
+
+\def\beamer@toc@sprocess#1#2#3#4/#5/#6/{%
+ \ifblank{#5}%
+ {\def#1{#4}\def#2{#4}\def#3{#4}}
+ {\ifblank{#6}
+ {\def#1{#4}\def#2{#5}\def#3{#5}\@gobble}
+ {\def#1{#4}\def#2{#5}\def#3{#6}\@gobbletwo}}}
+
+\def\beamer@toc@ssprocess#1#2#3#4#5/#6/#7/#8/{%
+ \ifblank{#6}%
+ {\def#1{#5}\def#2{#5}\def#3{#5}\def#4{#5}}
+ {\ifblank{#7}
+ {\def#1{#5}\def#2{#6}\def#3{#6}\def#4{#6}\@gobble}
+ {\ifblank{#8}
+ {\def#1{#5}\def#2{#6}\def#3{#7}\def#4{#7}\@gobbletwo}
+ {\def#1{#5}\def#2{#6}\def#3{#7}\def#4{#8}\expandafter\@gobble\@gobbletwo}}}% no gobblethree?
+}
+
+\define@key{beamertoc}{pausesections}[true]{\beamer@pausesectionstrue}
+\define@key{beamertoc}{pausesubsections}[true]{\beamer@pausesubsectionstrue}
+
+\define@key{beamertoc}{currentsection}[]{\beamer@toc@sectionstyle{show/shaded}\beamer@toc@subsectionstyle{show/show/shaded}\beamer@toc@subsubsectionstyle{show/show/shaded}}
+\define@key{beamertoc}{currentsubsection}[]{\beamer@toc@subsectionstyle{show/shaded}\beamer@toc@subsubsectionstyle{show/shaded}}
+\define@key{beamertoc}{hideallsubsections}[]{\beamer@toc@subsectionstyle{hide}\beamer@toc@subsubsectionstyle{hide}}
+\define@key{beamertoc}{hideothersubsections}[]{\beamer@toc@subsectionstyle{show/show/hide}\beamer@toc@subsubsectionstyle{show/shaded/hide}}
+
+\define@key{beamertoc}{part}{\beamer@showpartnumber=#1\relax}
+\define@key{beamertoc}{sections}{\beamer@parsetocsections#1[]}
+\define@key{beamertoc}{firstsection}{\beamer@sectionadjust=-#1\relax\advance\beamer@sectionadjust by 1\relax}
+\def\beamer@parsetocsections{\@ifnextchar<\beamer@@parsetocsections\beamer@@@parsetocsections}
+\def\beamer@@parsetocsections#1[]{\def\beamer@tocsections{#1}}
+\def\beamer@@@parsetocsections#1[]{\def\beamer@tocsections{<all:#1>}}
+
+\def\tableofcontents{\@ifnextchar[{\beamer@tableofcontents}{\beamer@tableofcontents[]}}
+\def\beamer@tableofcontents[#1]{%
+ \def\beamer@toc@cs{show}%
+ \def\beamer@toc@os{show}%
+ \def\beamer@toc@css{show}%
+ \def\beamer@toc@oss{show}%
+ \def\beamer@toc@ooss{show}%
+ \def\beamer@toc@csss{show}%
+ \def\beamer@toc@osss{show}%
+ \def\beamer@toc@oosss{show}%
+ \def\beamer@toc@ooosss{show}%
+ \beamer@showpartnumber=\c@part%
+ \beamer@pausesectionsfalse%
+ \beamer@pausesubsectionsfalse%
+ \def\beamer@tocsections{<*>}%
+ \setkeys{beamertoc}{firstsection=1}%
+ \setkeys{beamertoc}{#1}%
+ \vspace*{-.5em}{\makeatletter%
+ \pause[0]%
+ \@input{\jobname.toc}%
+ \vfill}%
+ }
+
+\renewcommand\addcontentsline[3]{\addtocontents{#1}{\protect\contentsline{#2}{#3}}}
+
+\def\beamer@tocaction@show#1{\usebeamertemplate**{#1}}
+\def\beamer@tocaction@shaded#1{\usebeamertemplate**{#1 shaded}}
+\def\beamer@tocaction@hide#1{}
+
+\def\beamer@tocact#1#2{\csname beamer@tocaction@#1\endcsname{#2}}
+
+\def\beamer@tocifnothide#1{\csname beamer@tocinvcheck@#1\endcsname}
+\let\beamer@tocinvcheck@hide\@gobble
+\let\beamer@tocinvcheck@show\@firstofone
+\let\beamer@tocinvcheck@shaded\@firstofone
+
+\def\beamer@hidetext{hide}
+
+\def\sectionintoc{}
+\def\beamer@sectionintoc#1#2#3#4#5{%
+ \ifnum\c@tocdepth>0%
+ \ifnum#4=\beamer@showpartnumber%
+ {
+ \beamer@saveanother%
+ \gdef\beamer@todo{}%
+ \beamer@slideinframe=#1\relax%
+ \expandafter\only\beamer@tocsections{\gdef\beamer@todo{%
+ \beamer@tempcount=#5\relax%
+ \advance\beamer@tempcount by\beamer@sectionadjust%
+ \ifnum\beamer@tempcount>0
+ \edef\inserttocsectionnumber{\the\beamer@tempcount}%
+ \else
+ \def\inserttocsectionnumber{}%
+ \fi%
+ \def\inserttocsection{\hyperlink{Navigation#3}{#2}}%
+ \beamer@tocifnothide{\ifnum\c@section=#1\beamer@toc@cs\else\beamer@toc@os\fi}%
+ {%
+ \ifbeamer@pausesections\pause\fi%
+ \ifx\beamer@toc@ooss\beamer@hidetext
+ \vskip1.5em
+ \else
+ \vfill
+ \fi
+ {%
+ \hbox{\vbox{%
+ \def\beamer@breakhere{\\}%
+ \beamer@tocact{\ifnum\c@section=#1\beamer@toc@cs\else\beamer@toc@os\fi}{section in toc}}}%
+ \par%
+ }%
+ }%
+ }%
+ }%
+ \beamer@restoreanother%
+ }
+ \beamer@todo%
+ \fi\fi%
+}
+
+\def\subsectionintoc{}
+\long\def\beamer@subsectionintoc#1#2#3#4#5#6{%
+ \ifnum\c@tocdepth>1%
+ \ifnum#5=\beamer@showpartnumber%
+ {%
+ \beamer@saveanother%
+ \gdef\beamer@todo{}%
+ \beamer@slideinframe=#1\relax%
+ \expandafter\only\beamer@tocsections{\gdef\beamer@todo{%
+ \ifbeamer@pausesubsections\pause\fi%
+ \beamer@tempcount=#6%
+ \advance\beamer@tempcount by\beamer@sectionadjust%
+ \edef\inserttocsectionnumber{\the\beamer@tempcount}%
+ \def\inserttocsubsectionnumber{#2}%
+ \def\inserttocsubsection{\hyperlink{Navigation#4}{#3}}%
+ \beamer@tocifnothide{\ifnum\c@section=#1\beamer@toc@css\else\beamer@toc@oss\fi}%
+ {%
+ \def\beamer@breakhere{\\}%
+ \beamer@tocact{\ifnum\c@section=#1\ifnum\c@subsection=#2\beamer@toc@css\else\beamer@toc@oss\fi\else\beamer@toc@ooss\fi}
+ {subsection in toc}%
+ }%
+ }}%
+ \beamer@restoreanother%
+ }%
+ \beamer@todo%
+ \fi\fi%
+}
+
+\def\subsubsectionintoc{}
+\long\def\beamer@subsubsectionintoc#1#2#3#4#5#6#7{%
+ \ifnum\c@tocdepth>2%
+ \ifnum#6=\beamer@showpartnumber%
+ {
+ \beamer@saveanother%
+ \gdef\beamer@todo{}%
+ \beamer@slideinframe=#1\relax%
+ \expandafter\only\beamer@tocsections{\gdef\beamer@todo{%
+ \ifbeamer@pausesubsections\pause\fi%
+ \beamer@tempcount=#7%
+ \advance\beamer@tempcount by\beamer@sectionadjust%
+ \edef\inserttocsectionnumber{\the\beamer@tempcount}%
+ \def\inserttocsubsectionnumber{#2}%
+ \def\inserttocsubsubsectionnumber{#3}%
+ \def\inserttocsubsubsection{\hyperlink{Navigation#5}{#4}}%
+ \beamer@tocifnothide{\ifnum\c@section=#1\beamer@toc@csss\else\beamer@toc@osss\fi}%
+ {%
+ \def\beamer@breakhere{\\}%
+ \beamer@tocact{\ifnum\c@section=#1\ifnum\c@subsection=#2\ifnum\c@subsubsection=#3\beamer@toc@csss\else\beamer@toc@osss\fi\else\beamer@toc@oosss\fi\else\beamer@toc@ooosss\fi}
+ {subsubsection in toc}%
+ }%
+ }}%
+ \beamer@restoreanother%
+ }
+ \beamer@todo%
+ \fi\fi%
+}
+
+\mode
+<article>
+{
+ \long\def\beamer@sectionintoc#1#2#3#4#5{}
+ \long\def\beamer@subsectionintoc#1#2#3#4#5#6{}
+ \long\def\beamer@subsubsectionintoc#1#2#3#4#5#6#7{}
+ \AtBeginDocument{
+ \let\beamer@origtableofcontents=\tableofcontents
+ \renewcommand{\tableofcontents}[1][]{\beamer@origtableofcontents}
+ }
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasetranslator.sty b/macros/latex/contrib/beamer/base/beamerbasetranslator.sty
new file mode 100644
index 0000000000..3f775531f8
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasetranslator.sty
@@ -0,0 +1,24 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+%
+% Load translator and it's dictionaries
+%
+\RequirePackage{translator}
+\usedictionary{translator-basic-dictionary}
+\usedictionary{translator-bibliography-dictionary}
+\usedictionary{translator-environment-dictionary}
+\usedictionary{translator-months-dictionary}
+\usedictionary{translator-numbers-dictionary}
+\usedictionary{translator-theorem-dictionary}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty b/macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty
new file mode 100644
index 0000000000..af617d7ccc
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty
@@ -0,0 +1,59 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+%
+% version 1.71 bugfix for \pgfpagescurrentpagewillbelogicalpage (hv)
+%
+%
+\mode
+<presentation>
+
+\newif\ifbeamer@twoscreenstext
+\newif\ifbeamer@dosecondmode
+
+\defbeameroption{previous slide on second screen}[right]%
+{%
+ \pgfpagesuselayout{two screens with lagging second}[second #1]%
+ \beamer@twoscreenstexttrue
+ \nofiles
+}
+
+\defbeameroption{second mode text on second screen}[right]%
+{%
+ \pgfpagesuselayout{two screens with optional second}[second #1]%
+ \beamer@twoscreenstexttrue
+}
+
+\defbeameroption{always typeset second mode}[true]%
+{%
+ \def\beamer@defaultdosecondmode{#1}%
+}
+\def\beamer@defaultdosecondmode{false}
+
+\long\def\beamer@dosecondscreennow#1{% called from \beamer@doseveralframes
+ \ifbeamer@dosecondmode%
+ {%
+ \clearpage
+ \def\beamer@currentmode{second}%
+ \gdef\beamer@doifnotinframe{}%
+ \def\beamer@doifinframe{\begin{beamer@frameslide}%
+ #1%
+ \end{beamer@frameslide}%
+ \pgfpagescurrentpagewillbelogicalpage{2}%
+ \clearpage
+ }%
+ \beamer@masterdecode{\beamer@whichframes}%
+ \beamer@donow
+ }%
+ \fi
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/beamerbaseverbatim.sty b/macros/latex/contrib/beamer/base/beamerbaseverbatim.sty
new file mode 100644
index 0000000000..8017e8ada3
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/beamerbaseverbatim.sty
@@ -0,0 +1,167 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011,2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode
+<presentation>
+
+
+\newwrite\beamer@verbatimfileout
+
+\def\beamer@verbatimreadframe{%
+ \begingroup
+ \let\do\@makeother\dospecials
+ \count@=127 %
+ \@whilenum\count@<255 \do{%
+ \advance\count@ by 1 %
+ \catcode\count@=11 %
+ }%
+ \@makeother\^^L% and whatever other special cases
+ \@makeother\^^I % Allow tab chars
+ \endlinechar`\^^M \catcode`\^^M=12%
+ \@ifnextchar\bgroup{\afterassignment\beamer@specialprocessframefirstline\let\beamer@temp=}{\beamer@processframefirstline}}%
+
+{
+ \catcode`\{=12 %\}
+ \catcode`\<=1 %\>
+ \gdef\beamer@specialprocessframefirstline<%>{
+ \beamer@processframefirstline{%}
+ }
+}
+
+\begingroup
+ \catcode`\^^M=12 %
+ \endlinechar=-1 %
+ \long\gdef\beamer@processframefirstline#1#2^^M{%
+ \def\beamer@test{#1#2}%
+ \ifx\beamer@test\beamer@stopframefirst%
+ \let\next=\beamer@framewritten%
+ \else%
+ \def\beamer@test{#1}%
+ \def\beamer@test@par{\par}%
+ \ifx\beamer@test\beamer@test@par
+ \def\beamer@test{^^J}%
+ \else%
+ \@onelevel@sanitize\beamer@test
+ \edef\beamer@test{\beamer@test\space}%
+ \edef\beamer@test{\expandafter\zap@space\beamer@test\@empty}%
+ \fi
+ \@temptokena{#2}%
+ \immediate\write\beamer@verbatimfileout{\beamer@test\the\@temptokena}%
+ \let\next=\beamer@processframeline%
+ \fi%
+ \next%
+ }%
+ \protected\long\gdef\beamer@processframeline#1^^M{%
+ \edef\beamer@test{\beamer@strip@whitespace#1\beamer@strip@stop}%
+ \ifx\beamer@test\beamer@stopframe%
+ \let\next=\beamer@framewritten%
+ \else%
+ \immediate\write\beamer@verbatimfileout{#1}%
+ \let\next=\beamer@processframeline%
+ \fi%
+ \next%
+ }%
+\endgroup
+
+\begingroup
+\lccode`\+=`\^^I %
+\catcode`\ =12\relax
+\lowercase{%
+\endgroup
+\gdef\beamer@strip@whitespace#1{%
+\ifx#1\beamer@strip@stop
+\else
+\ifx#1 \expandafter\expandafter\expandafter\beamer@strip@whitespace
+\else
+\ifx#1+\expandafter\expandafter\expandafter\expandafter\expandafter
+\expandafter\expandafter\beamer@strip@whitespace
+\else
+\noexpand#1%
+\beamer@strip@end
+\fi
+\fi
+\fi
+}%
+}%
+
+\long\def\beamer@strip@end\fi\fi\fi#1\beamer@strip@stop{\fi\fi\fi\unexpanded{#1}}
+\def\beamer@strip@stop{\beamer@strip@stop}
+
+\def\beamer@setupstoppers#1{%
+ {
+ \escapechar=-1\relax%
+ \xdef\beamer@stopframe{\string\\end\string\{#1\string\}}
+ \xdef\beamer@stopframefirst{\noexpand\end\string\{#1\string\}}
+}
+}
+
+
+\def\beamer@framewritten{\endgroup%
+ \beamer@afterexternalframe%
+}
+
+
+
+
+% The following code is partly adapted from code from the alltt package.
+
+\mode
+<all>
+{
+\begingroup
+\lccode`\~=`\'
+\lowercase{\endgroup
+\newenvironment{semiverbatim}{%
+ \trivlist
+ \item\relax
+ \if@minipage
+ \else
+ \vskip\parskip
+ \fi
+ \leftskip\@totalleftmargin
+ \rightskip\z@skip
+ \parindent\z@
+ \parfillskip\@flushglue
+ \parskip\z@skip
+ \@@par
+ \@tempswafalse
+ \def\par{%
+ \if@tempswa
+ \leavevmode\null\@@par\penalty\interlinepenalty
+ \else
+ \@tempswatrue
+ \ifhmode\@@par\penalty\interlinepenalty\fi
+ \fi}
+ \obeylines
+ \def\verbatim@nolig@list{\do\`\do\,\do\'\do\-}
+ \verbatim@font
+ \let\org@prime~%
+ \everymath\expandafter{\the\everymath
+ \catcode`\'=12 \let~\org@prime}
+ \everydisplay\expandafter{\the\everydisplay
+ \catcode`\'=12 \let~\org@prime}
+ \def\dospecials{\do\ \do\$\do\&%
+ \do\#\do\^\do\_\do\%\do\~\do\`\do\,\do\'\do\-}
+ \let\do\@makeother
+ \dospecials
+ \def\\{\char`\\}
+ \def\{{\char`\{}
+ \def\}{\char`\}}
+ \frenchspacing\@vobeyspaces
+ \everypar \expandafter{\the\everypar \unpenalty}}
+{\endtrivlist}}
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/emulation/beamerfoils.sty b/macros/latex/contrib/beamer/base/emulation/beamerfoils.sty
new file mode 100644
index 0000000000..48776ac78b
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/emulation/beamerfoils.sty
@@ -0,0 +1,59 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\let\leftheader=\@gobble
+\let\rightheader=\@gobble
+\let\leftfooter=\@gobble
+\let\rightfooter=\@gobble
+\let\Restriction=\@gobble
+\let\marginpar=\@gobble
+
+\newcommand\LogoOff{\expandafter\global\logo{}}
+\newcommand\LogoOn{\expandafter\global\logo{\beamerfoils@logo}}
+\def\MyLogo#1{\gdef\beamerfoils@logo{#1}\LogoOn}
+\def\beamerfoils@logo{}
+
+\newtheorem*{Theorem*}{Theorem}
+\newtheorem*{Lemma*}{Lemma}
+\newtheorem*{Corollary*}{Corollary}
+\newtheorem*{Proposition*}{Proposition}
+\newtheorem*{Definition*}{Definition}
+
+\def\beamerfoils@closer{}%
+\newcommand\foilhead[2][]{%
+ \beamerfoils@closer%
+ \ifbeamer@inframe
+ \gdef\beamerfoils@closer{}%
+ \let\beamerfoils@next=\relax%
+ \else
+ \gdef\beamerfoils@closer{\egroup}%
+ \let\beamerfoils@next=\beamerfoils@openframe%
+ \fi
+ \beamerfoils@next%
+ \frametitle{#2}%
+ }
+\let\rotatefoilhead=\foilhead
+
+\def\beamerfoils@openframe{\beamerfoils@origframe[allowframebreaks]\bgroup}%
+
+\let\beamerfoils@origframe=\frame
+\def\frame{\endfoil\beamerfoils@origframe}
+
+\def\endfoil{\beamerfoils@closer\gdef\beamerfoils@closer{}}
+
+\beamertemplatecontinuationtext
+
+\newenvironment{boldequation}{\boldmath\begin{equation}}{\end{equation}}
+\newenvironment{boldequation*}{\boldmath\begin{equation*}}{\end{equation*}}
+
+\DeclareRobustCommand\FoilTeX{{\normalfont{\sffamily Foil}\kern-.03em{\rmfamily\TeX}}}
+\def\bm#1{\mathpalette\bmstyle{#1}}
+\def\bmstyle#1#2{\mbox{\boldmath$#1#2$}}
diff --git a/macros/latex/contrib/beamer/base/emulation/beamerprosper.sty b/macros/latex/contrib/beamer/base/emulation/beamerprosper.sty
new file mode 100644
index 0000000000..ef291327a0
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/emulation/beamerprosper.sty
@@ -0,0 +1,174 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017 by Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\let\beamerprosper@entry=\@gobble
+
+\DeclareOption{framesassubsections}{\mode<presentation>
+ {\def\beamerprosper@entry#1{\ifblank{#1}{}{\subsection{#1}}}}}
+
+\ProcessOptions
+
+% Redefine \institution inside \author
+\mode<presentation>
+{
+\def\author{\@dblarg\beamer@author}
+\def\beamer@author[#1]#2{%
+ \def\insertauthor{\def\inst{\beamer@insttitle}\def\and{\beamer@andtitle}%
+ \let\institution=\beamer@institution#2}%
+ \def\beamer@shortauthor{\let\institution=\beamer@shortinstitution#1}%
+}
+\def\beamer@institution#1{\footnotesize #1}
+\def\beamer@shortinstitution#1{\ }
+
+\def\institution{\institute}
+}
+
+\mode<article>
+{
+ \def\institution#1{#1}
+}
+
+
+\newcommand\email[1]{\texttt{#1}}
+
+\define@key{beamerprosper}{toc}{\def\beamerprosper@toc{#1}}
+\define@key{beamerprosper}{template}{}
+\define@key{beamerprosper}{trans}{\def\beamerprosper@trans{#1}}
+\define@key{beamerprosper}{Glitter}[true]{\def\beamerprosper@trans{Glitter}}
+\define@key{beamerprosper}{R}[true]{\def\beamerprosper@trans{R}}
+\define@key{beamerprosper}{Replace}[true]{\def\beamerprosper@trans{Replace}}
+\define@key{beamerprosper}{Split}[true]{\def\beamerprosper@trans{Split}}
+\define@key{beamerprosper}{Blinds}[true]{\def\beamerprosper@trans{Blinds}}
+\define@key{beamerprosper}{Box}[true]{\def\beamerprosper@trans{Box}}
+\define@key{beamerprosper}{Wipe}[true]{\def\beamerprosper@trans{Wipe}}
+\define@key{beamerprosper}{Dissolve}[true]{\def\beamerprosper@trans{Dissolve}}
+\define@key{beamerprosper}{Glitter}[true]{\def\beamerprosper@trans{Glitter}}
+
+
+\newcommand{\PDForPS}[2]{\ifpdf#1\else#2\fi}
+\newcommand{\onlyInPDF}[1]{\ifpdf#1\fi}
+\newcommand{\onlyInPS}[1]{\ifpdf\else#1\fi}
+
+\newenvironment{slide}[2][]{%
+ \def\beamerprosper@toc{#2}
+ \def\beamerprosper@trans{}%
+ \setkeys{beamerprosper}{#1}%
+ \expandafter\beamerprosper@entry\expandafter{\beamerprosper@toc}%
+ \edef\@temp{\noexpand\begin{frame}\beamerprosper@options}%
+ \@temp\PDFtransition{\beamerprosper@trans}\frametitle{#2}}{\end{frame}}
+
+\def\beamerprosper@options{[containsverbatim]}
+\long\def\overlays#1#2{{\def\beamerprosper@options{}#2}}
+
+\def\fromSlide{\@ifstar{\beamer@sfromSlide}{\beamer@fromSlide}}
+\newcommand{\beamer@fromSlide}[2]{\uncover<#1->{#2}}
+\newcommand{\beamer@sfromSlide}[2]{\only<#1->{#2}}
+
+\def\onlySlide{\@ifstar{\beamer@sonlySlide}{\beamer@onlySlide}}
+\newcommand{\beamer@onlySlide}[2]{\uncover<#1>{#2}}
+\newcommand{\beamer@sonlySlide}[2]{\only<#1>{#2}}
+
+\def\untilSlide{\@ifstar{\beamer@suntilSlide}{\beamer@untilSlide}}
+\newcommand{\beamer@untilSlide}[2]{\uncover<-#1>{#2}}
+\newcommand{\beamer@suntilSlide}[2]{\only<-#1>{#2}}
+
+\newcommand\FromSlide[1]{\onslide<#1->}
+\newcommand\OnlySlide[1]{\onslide<#1>}
+\newcommand\UntilSlide[1]{\onslide<-#1>}
+
+\newcommand\slideCaption[1]{\date{#1}}
+\def\Logo{\@ifnextchar(\beamer@Logo\logo}
+\def\beamer@Logo(#1,#2){\logo}
+
+\let\DefaultTransition=\@gobble
+\let\NoFrenchBabelItemize=\relax
+\let\TitleSlideNav=\@gobble
+\let\NormalSlideNav=\@gobble
+\let\LeftFoot=\@gobble
+\let\RightFoot=\@gobble
+
+\AtBeginDocument{\let\beamer@steporigitem=\item}
+
+\newenvironment{Itemize}{\begin{itemize}}{\end{itemize}}
+\newenvironment{itemstep}[1][]{\begin{itemize}[<+->]}{\end{itemize}}
+\newenvironment{enumstep}[1][]{\begin{enumerate}[<+->]}{\end{enumerate}}
+\newcommand\prosperpart[2][]{\begin{slide}[#1]{}\begingroup\centering\Large\structure{#2}\par\endgroup\end{slide}}
+\newcommand{\hiddenitem}{\addtocounter{beamerpauses}{1}}
+
+
+\newcommand{\FontTitle}[2]{}
+\newcommand{\FontText}[2]{}
+\newcommand{\fontTitle}[1]{#1}
+\newcommand{\fontText}[1]{#1}
+\newcommand{\ColorFoot}[1]{}
+\newcommand{\PDFtransition}[1]{\csname beamer@trans#1\endcsname}
+\def\beamer@trans{}
+\def\beamer@transR{}
+\def\beamer@transReplace{}
+\def\beamer@transSplit{\transsplithorizontalout}
+\def\beamer@transBlinds{\transblindshorizontal}
+\def\beamer@transBox{\transboxout}
+\def\beamer@transWipe{\transwipe}
+\def\beamer@transDissolve{\transdissolve}
+\def\beamer@transGlitter{\transglitter}
+
+\newcommand{\myitem}[2]{}
+
+\def\tsection{\@ifstar\section\section}
+
+\def\tsectionandpart{\@ifstar\beamerprosper@tsp\beamerprosper@tsp}
+
+\newcommand\beamerprosper@tsp[2][]{%
+ \def\beamerprosper@toc{#2}%
+ \def\beamerprosper@trans{}%
+ \setkeys{beamerprosper}{#1}%
+ \expandafter\section\expandafter{\beamerprosper@toc}
+ \mode<presentation>{\expandafter\prosperpart\expandafter[\beamerprosper@trans]{#2}}}
+
+\newbox\beamerprosper@notebox
+
+\newenvironment{notes}[1]{%
+ \begingroup%
+ \textwidth=10.8cm\hsize=\textwidth\setbox\beamerprosper@notebox=\vbox\bgroup
+ \begin{small}\textbf{#1}\par\medskip}
+{\par\end{small}\egroup\note{\box\beamerprosper@notebox}
+ \endgroup}
+
+\let\wideslide=\slide
+\let\endwideslide=\endslide
+\let\HAPsetup=\@gobble
+
+\newdimen\beamerprosper@leftwidth
+\newdimen\beamerprosper@rightwidth
+
+\define@key{beamerprosper}{lcolwidth}{\beamerprosper@leftwidth=#1\relax}
+\define@key{beamerprosper}{rcolwidth}{\beamerprosper@rightwidth=#1\relax}
+\define@key{beamerprosper}{lfrheight}{}
+\define@key{beamerprosper}{rfrheight}{}
+\define@key{beamerprosper}{frsep}{}
+\define@key{beamerprosper}{colsep}{}
+\define@key{beamerprosper}{topsep}{}
+\define@key{beamerprosper}{bottomsep}{}
+\define@key{beamerprosper}{indent}{}
+
+\def\dualslide{\@ifnextchar[{\beamerprosper@gobble}{\beamerprosper@dual}}
+\long\def\beamerprosper@gobble[#1]{\dualslide}
+\long\def\beamerprosper@dual#1#2#3{%
+ \beamerprosper@leftwidth=0.47\linewidth%
+ \beamerprosper@rightwidth=0.47\linewidth%
+ \setkeys{beamerprosper}{#1}%
+ \begin{columns}[t,onlytextwidth]%
+ \column{\beamerprosper@leftwidth}%
+ #2%
+ \column{\beamerprosper@rightwidth}%
+ #3%
+ \end{columns}\bigskip}
diff --git a/macros/latex/contrib/beamer/base/emulation/beamerseminar.sty b/macros/latex/contrib/beamer/base/emulation/beamerseminar.sty
new file mode 100644
index 0000000000..1b4f40a2a4
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/emulation/beamerseminar.sty
@@ -0,0 +1,79 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\newif\ifbeamerseminar@accumulated
+\beamerseminar@accumulatedfalse
+
+\DeclareOption{accumulated}{\beamerseminar@accumulatedtrue}
+\ProcessOptions
+
+
+\newcount\beamerseminar@overlay
+
+\def\overlay#1{%
+ \beamerseminar@overlay=#1\relax%
+ \advance\beamerseminar@overlay by1\relax%
+ \ifbeamerseminar@accumulated%
+ \expandafter\onslide\expandafter<\the\beamerseminar@overlay->%
+ \else%
+ \expandafter\onslide\expandafter<\the\beamerseminar@overlay>%
+ \fi%
+ \aftergroup\beamerseminar@endoverlay\ignorespaces}
+\def\beamerseminar@endoverlay{%
+ \ifbeamerseminar@accumulated%
+ \expandafter\onslide\expandafter<\the\beamerseminar@overlay->%
+ \else%
+ \expandafter\onslide\expandafter<\the\beamerseminar@overlay>%
+ \fi}
+
+\newif\ifbeamerseminar@starred
+\newenvironment{slide}[1][]{%
+ \beamerseminar@starredfalse
+ \ifbeamer@inframe%
+ \beamerseminar@overlay=1\bgroup\overlay{0}%
+ \else%
+ \frame[containsverbatim]\bgroup%
+ \fi}
+ {\egroup}
+\newenvironment{slide*}[1][]{\begin{slide}\beamerseminar@starredtrue}{\end{slide}}
+
+\newcommand{\newslide}{%
+ \ifbeamerseminar@starred%
+ \end{slide*}\begin{slide*}%
+ \else%
+ \end{slide}\begin{slide}%
+ \fi}
+
+\beamerseminar@overlay=1
+
+\def\blue{\color{blue}}
+\def\red{\color{red}}
+\def\green{\color{green}}
+
+\def\ptsize#1{}
+
+\newif\ifarticle
+\articlefalse
+\newif\ifslidesonly
+\slidesonlytrue
+\newif\ifslide
+\slidetrue
+\newif\ifportrait
+\portraitfalse
+\newif\ifcenterslides
+\centerslidestrue
+\newdimen\semin
+\newdimen\semcm
+
+\semin=.5in
+\semcm=.5cm
+
+\mode<article>{\articletrue\slidefalse\slidesonlyfalse}
diff --git a/macros/latex/contrib/beamer/base/emulation/beamertexpower.sty b/macros/latex/contrib/beamer/base/emulation/beamertexpower.sty
new file mode 100644
index 0000000000..479413a20b
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/emulation/beamertexpower.sty
@@ -0,0 +1,33 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\long\def\stepwise#1{{\nonboxedsteps#1}}
+\long\def\parstepwise#1{{\boxedsteps#1}}
+\long\def\liststepwise{\vspace*{\parskip}\hrule \@height\z@\stepwise}
+\long\def\step#1{\beamerpower@action<+(1)->{#1}}
+\long\def\steponce#1{\beamerpower@action<+(1)>{#1}}
+\long\def\switch#1#2{\alt<+(1)->{#2}{#1}}
+\long\def\bstep#1{{\boxedsteps\step{#1}}}
+\long\def\dstep{\addtocounter{beamerpauses}{1}}
+\long\def\vstep{\addtocounter{beamerpauses}{1}}
+
+\def\restep{\addtocounter{beamerpauses}{-1}\step}
+\def\reswitch{\addtocounter{beamerpauses}{-1}\switch}
+\def\rebstep{\addtocounter{beamerpauses}{-1}\bstep}
+\def\redstep{\addtocounter{beamerpauses}{-1}\dstep}
+\def\revstep{\addtocounter{beamerpauses}{-1}\vstep}
+
+\def\boxedsteps{\let\beamerpower@action=\uncover}
+\def\nonboxedsteps{\let\beamerpower@action=\only}
+\boxedsteps
+
+\DeclareRobustCommand{\code}[1]{\textbf{\texttt{#1}}}%
+\DeclareRobustCommand{\codeswitch}{\bfseries\ttfamily}%
diff --git a/macros/latex/contrib/beamer/base/multimedia/multimedia.sty b/macros/latex/contrib/beamer/base/multimedia/multimedia.sty
new file mode 100644
index 0000000000..5a0f21a01d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/multimedia/multimedia.sty
@@ -0,0 +1,323 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011,2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\ProvidesPackage{multimedia}[2012/05/02 ver 0.02]
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+
+
+\RequirePackage{keyval}[1997/11/10]
+
+\RequirePackage{ifpdf}
+
+\ifx\directlua\@undefined
+ \let\beamer@pdfpageattr\pdfpageattr
+ \let\beamer@pdfobj\pdfobj
+ \let\beamer@pdfrefobj\pdfrefobj
+ \let\beamer@pdflastobj\pdflastobj
+ \let\beamer@pdfannot\pdfannot
+ \let\beamer@pdfstartlink\pdfstartlink
+ \let\beamer@pdfendlink\pdfendlink
+\else %
+ \edef\beamer@pdfpageattr{\pdfvariable pageattr}
+ \protected\def\beamer@pdfobj{\pdfextension obj }
+ \protected\def\beamer@pdfrefobj{\pdfextension refobj }
+ \protected\def\beamer@pdflastobj{\numexpr\pdffeedback lastobj\relax}
+ \protected\def\beamer@pdfannot{\pdfextension annot }
+ \protected\def\beamer@pdfstartlink{\pdfextension startlink }
+ \protected\def\beamer@pdfendlink{\pdfextension endlink\relax}
+\fi
+
+\ifpdf
+ \let\mm@psorpdf\@secondoftwo
+\else
+ \let\mm@psorpdf\@firstoftwo
+ \PassOptionsToPackage{pdfmark}{hyperref}
+ \define@key{PDF}{Movie}{\pdf@addtoks{#1}{Movie}}
+ \define@key{PDF}{T}{\pdf@addtoks{#1}{T}}
+ \define@key{PDF}{Annotations}{\pdf@addtoks{#1}{A}}
+\fi
+
+\define@key{multimedia}{automute}[true]{\csname mm@autostop#1\endcsname}
+\define@key{multimedia}{autostart}[true]{\csname mm@autostart#1\endcsname}
+\define@key{multimedia}{bitspersample}{\def\mm@b{/B #1}}
+\define@key{multimedia}{borderwidth}{{\@tempdima=#1\relax\@tempdima=0.99626401\@tempdima\xdef\mm@bw{\strip@pt\@tempdima}}}
+\define@key{multimedia}{channels}{\def\mm@c{/C #1}}
+\define@key{multimedia}{depth}{\@tempdimc=#1\relax}
+\define@key{multimedia}{duration}{\mm@convert#1{\mm@duration}{/Duration}}%
+\define@key{multimedia}{encoding}{\def\mm@e{/E /#1}}
+\define@key{multimedia}{externalviewer}[]{\mm@externaltrue}
+\define@key{multimedia}{height}{\@tempdimb=#1\relax}
+\define@key{multimedia}{inlinesound}[true]{\csname mm@inline#1\endcsname}
+\define@key{multimedia}{label}{\def\mm@label{#1}}
+\define@key{multimedia}{loop}[]{\def\mm@playmode{/Mode /Repeat}\def\mm@repeat{/Repeat true}}
+\define@key{multimedia}{mixsound}[true]{\def\mm@mix{/Mix #1}}
+\define@key{multimedia}{once}[]{\def\mm@playmode{/Mode /Once}}
+\define@key{multimedia}{palindrome}[]{\def\mm@playmode{/Mode /Palindrome}}
+\define@key{multimedia}{pause}[]{\def\mm@do{/Operation /Pause}}
+\define@key{multimedia}{play}[]{\def\mm@do{/Operation /Play}}
+\define@key{multimedia}{poster}[true]{\def\mm@poster{/Poster #1}}
+\define@key{multimedia}{repeat}[]{\def\mm@playmode{/Mode /Repeat}\def\mm@repeat{/Repeat true}}
+\define@key{multimedia}{resume}[]{\def\mm@do{/Operation /Resume}}
+\define@key{multimedia}{samplingrate}{\def\mm@r{/R #1}}
+\define@key{multimedia}{showcontrols}[true]{\def\mm@controls{/ShowControls #1}}
+\define@key{multimedia}{start}{\mm@convert#1{\mm@start}{/Start}}%
+\define@key{multimedia}{stop}[]{\def\mm@do{/Operation /Stop}}
+\define@key{multimedia}{width}{\@tempdima=#1\relax}
+\define@key{multimedia}{open}[]{\def\mm@playmode{/Mode /Open}}
+
+\def\mm@convert#1s{\mm@@convert{#1}}
+\def\mm@@convert#1#2#3{%
+ {\@tempdima=#1pt%
+ \@tempcnta=\@tempdima%
+ \divide\@tempcnta by 512%
+ \xdef#2{#3 [\the\@tempcnta\space 128]}}}
+
+\newif\ifmm@autostart
+\newif\ifmm@autostop
+\newif\ifmm@external
+\newif\ifmm@inline
+\newcount\mm@movie
+
+\newcommand\movie[3][]{%
+ \leavevmode%
+ % Sanity check
+ \IfFileExists{\@currdir #3}{}{%
+ \PackageWarning{multimedia}{The movie file ``#3'' could not be
+ found in the current directory, where it must reside for
+ viewing.}%
+ }%
+ {%
+ % Calculate size of the poster
+ \setbox\@tempboxa=\hbox{#2}%
+ \@tempdima=\wd\@tempboxa%
+ \@tempdimb=\ht\@tempboxa%
+ \@tempdimc=\dp\@tempboxa%
+ \global\advance\mm@movie by1\relax%
+ \edef\mm@label{mmdefaultlabel\the\mm@movie}%
+ \def\mm@playmode{}%
+ \def\mm@duration{}%
+ \def\mm@start{}%
+ \def\mm@poster{}%
+ \def\mm@controls{}%
+ \mm@autostartfalse%
+ \mm@externalfalse%
+ \def\mm@bw{0}%
+ \setkeys{multimedia}{#1}%
+ \wd\@tempboxa=\@tempdima%
+ \ht\@tempboxa=\@tempdimb%
+ \dp\@tempboxa=\@tempdimc%
+ \ifmm@external%
+ \href{run:#3}{\box\@tempboxa}%
+ \else%
+ \mm@psorpdf{%
+ \pdfmark[{\box\@tempboxa}]{%
+ pdfmark=/ANN,%
+ Subtype=/Movie,%
+ Movie=<< /F (#3) \mm@poster\space >>,%
+ Annotations=<< \mm@start\space \mm@duration\space \mm@playmode\space \mm@controls\space>>,%
+ T=(\mm@label),
+ Border={0 0 \mm@bw}}%
+ }{%
+ \beamer@pdfannot width \@tempdima height \@tempdimb depth \@tempdimc
+ {
+ /Subtype /Movie
+ /T (\mm@label)
+ /Border [0 0 \mm@bw]
+ /Movie << /F (#3) \mm@poster\space >>
+ /A << \mm@start\space \mm@duration\space \mm@playmode\space \mm@controls\space >>
+ }%
+ }%
+ \mm@psorpdf{}{\box\@tempboxa}%
+ \ifmm@autostart%
+ \mm@psorpdf%
+ {%
+ \pdfmark{pdfmark=/PUT,%
+ Raw={{ThisPage} << /AA << /O << /S /Movie
+ /T (\mm@label) /Operation /Play >> >> >>}%
+ }}%
+ {%
+ \immediate\beamer@pdfobj {<< /S /Movie /T (\mm@label) /Operation /Play >>}%
+ \beamer@pdfannot width 0pt height 0pt depth 0pt {%
+ /Subtype/Widget
+ /FT/Btn/Ff 65537
+ /T (wid@\mm@label)
+ /AA <</PO \the\beamer@pdflastobj\space 0 R>>% attention: /O --> /PO for Widget annots
+ }%
+ }%
+ \fi%
+ \fi%
+ }%
+}
+
+
+\newcommand\hyperlinkmovie[3][]{%
+ \leavevmode%
+ {\def\mm@playmode{}\def\mm@start{}\def\mm@duration{}\def\mm@do{}\def\mm@controls{}%
+ \setkeys{multimedia}{#1}%
+ \mm@psorpdf{%
+ \pdfmark[{#3}]{%
+ Color=\@linkbordercolor,%
+ linktype={link},%
+ AcroHighlight=\@pdfhighlight,%
+ Border=\@pdfborder,%
+ pdfmark=/ANN,%
+ Subtype=/Link,%
+ Annotations=<< /S /Movie /T (#2) \mm@controls\space
+ \mm@do\space \mm@start\space \mm@duration\space \mm@playmode\space
+ >>%
+ }}%
+ {%
+ \beamer@pdfstartlink
+ attr{%
+ /Border [\@pdfborder]
+ /H \@pdfhighlight\space
+ /C [\@menubordercolor]%
+ }%
+ user{
+ /Subtype /Link
+ /A <<
+ /S /Movie /T (#2) \mm@controls\space
+ \mm@do\space \mm@start\space \mm@duration\space \mm@playmode\space
+ >>
+ }%
+ #3\beamer@pdfendlink}%
+ }%
+}
+
+
+\newcommand\sound[3][]{%
+ \mm@psorpdf{\movie[#1]{#2}{#3}}% no way of defining a stream object...
+ {%
+ \leavevmode%
+ % Sanity check
+ \IfFileExists{\@currdir #3}{}{%
+ \PackageWarning{multimedia}{The movie file ``#3'' could not be
+ found in the current directory, where it must reside for
+ viewing.}%
+ }%
+ {%
+ % Calculate size of the poster
+ \setbox\@tempboxa=\hbox{#2}%
+ \@tempdima=\wd\@tempboxa%
+ \@tempdimb=\ht\@tempboxa%
+ \@tempdimc=\dp\@tempboxa%
+ \def\mm@label{mmdefaultlabel}%
+ \def\mm@playmode{}%
+ \def\mm@duration{}%
+ \def\mm@start{}%
+ \def\mm@repeat{}%
+ \def\mm@mix{/Mix false}%
+ \setkeys{multimedia}{samplingrate=44100,channels=1,bitspersample=16,encoding=muLaw}%
+ \mm@autostartfalse%
+ \mm@autostopfalse%
+ \mm@externalfalse%
+ \mm@inlinefalse%
+ \def\mm@bw{0}%
+ \setkeys{multimedia}{#1}%
+ \wd\@tempboxa=\@tempdima%
+ \ht\@tempboxa=\@tempdimb%
+ \dp\@tempboxa=\@tempdimc%
+ \ifmm@external%
+ \href{run:#3}{\box\@tempboxa}%
+ \else%
+ \ifmm@inline%
+ \beamer@pdfobj stream
+ attr {/Type /Sound \mm@r\space \mm@c\space \mm@b\space}
+ file {#3}%
+ \beamer@pdfrefobj \beamer@pdflastobj%
+ \else
+ \beamer@pdfobj stream
+ attr {\mm@r\space \mm@c\space \mm@b\space \mm@e\space /F (#3)}
+ {}%
+ \beamer@pdfrefobj \beamer@pdflastobj%
+ \fi%
+ \expandafter\xdef\csname mms@\mm@label\endcsname{\the\beamer@pdflastobj}%
+ \def\@temp{#2}\ifx\@temp\@empty\else\hyperlinksound[#1]{\mm@label}{\box\@tempboxa}\fi%
+ \ifmm@autostart%
+ \beamer@pdfobj {<< /S /Sound /Sound \the\beamer@pdflastobj\space 0 R \mm@mix\space >>}%
+ \beamer@pdfrefobj\beamer@pdflastobj%
+ \xdef\mm@pdfpageadditionalaction{/O \the\beamer@pdflastobj\space 0 R }%
+ \fi%
+ \ifmm@autostop%
+ \beamer@pdfobj {<< /S /Sound /Sound \mms@mute\space 0 R >>}%
+ \beamer@pdfrefobj\beamer@pdflastobj%
+ \xdef\mm@pdfpageadditionalaction{%
+ \ifx\mm@pdfpageadditionalaction\relax\else\mm@pdfpageadditionalaction\fi\space /C \the\beamer@pdflastobj\space 0 R }%
+ \fi%
+ \fi%
+ }%
+ }%
+}
+
+\mm@psorpdf{}{%
+ \beamer@pdfobj stream attr {/R 22050} {}%
+ \beamer@pdfrefobj \beamer@pdflastobj%
+ \edef\mms@mute{\the\beamer@pdflastobj}
+}
+
+\newcommand\hyperlinkmute[1]{\mm@psorpdf{#1}{\hyperlinksound{mute}{#1}}}
+
+\newcommand\hyperlinksound[3][]{%
+ \mm@psorpdf{\hyperlinkmovie[#1]{#2}{#3}}%
+ {%
+ \@ifundefined{mms@#2}%
+ {\PackageError{multimedia}{Sound labeled ``#2'' not defined}{}}
+ {%
+ \leavevmode%
+ \def\mm@mix{/Mix false}%
+ \def\mm@repeat{/Repeat false}%
+ \setkeys{multimedia}{#1}%
+ \beamer@pdfstartlink
+ attr{%
+ /Border [\@pdfborder]
+ /H \@pdfhighlight\space
+ /C [\@menubordercolor]%
+ }%
+ user{
+ /Subtype /Link
+ /A << /S /Sound /Sound \csname mms@#2\endcsname\space 0 R \mm@mix\space \mm@repeat\space >>
+ }%
+ #3\beamer@pdfendlink}%
+ }%
+}
+
+
+% Copyright Notice: The following code is based on code from hyperref.sty
+\def\mm@pageadditionalaction{%
+ \ifx\mm@pdfpageadditionalaction\relax
+ \else
+ \expandafter\mm@RemoveAAPageAttr\the\beamer@pdfpageattr^^J/AA{}>>\END
+ \ifx\mm@pdfpageadditionalaction\@empty
+ \else
+ \edef\@processme{%
+ \global\beamer@pdfpageattr{%
+ \the\beamer@pdfpageattr
+ ^^J/AA << \mm@pdfpageadditionalaction\space >>%
+ }%
+ }%
+ \@processme
+ \fi
+ \global\let\mm@pdfpageadditionalaction=\@empty% not on next page
+ \fi
+}
+\gdef\mm@RemoveAAPageAttr#1^^J/AA#2#3>>#4\END{%
+ \ifx\\#2\\%
+ \global\beamer@pdfpageattr{#1}%
+ \else
+ \mm@RemoveAAPageAttr#1#4\END
+ \fi
+}
+\let\mm@pdfpageadditionalaction=\relax
+
+% This is *not* the way to do it, but it'll have to do for now:
+\let\mm@orighyper@pagetransition=\hyper@pagetransition
+\AtBeginDocument{\def\hyper@pagetransition{\mm@orighyper@pagetransition\mm@pageadditionalaction}}
diff --git a/macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty b/macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty
new file mode 100644
index 0000000000..a7f8a7e1d7
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty
@@ -0,0 +1,40 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\ProvidesPackage{multimediasymbols}[2004/04/10 ver 0.01]
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+
+\RequirePackage{keyval}
+\RequirePackage{pgf}
+
+\define@key{multimediasym}{fill}[]{\def\mm@action{\pgfusepath{fill,stroke}}}
+
+\newcommand\speakersymbol[1][]{%
+ \def\mm@action{}%
+ \setkeys{multimediasym}{#1}%
+ \begin{pgfpicture}{-.1ex}{0pt}{2.1ex}{1.5ex}
+ \pgfsetroundjoin
+ \pgfsetroundcap
+ \pgfpathmoveto{\pgfpoint{0cm}{.5ex}}
+ \pgfpathlineto{\pgfpoint{.5ex}{.5ex}}
+ \pgfpathlineto{\pgfpoint{ex}{0pt}}
+ \pgfpathlineto{\pgfpoint{ex}{1.5ex}}
+ \pgfpathlineto{\pgfpoint{.5ex}{ex}}
+ \pgfpathlineto{\pgfpoint{0pt}{ex}}
+ \pgfpathclose
+ \mm@action
+ \pgfpathmoveto{\pgfpoint{1.25ex}{.5ex}}
+ \pgfpathcurveto{\pgfpoint{1.4ex}{.6ex}}{\pgfpoint{1.4ex}{.9ex}}{\pgfpoint{1.25ex}{1ex}}
+ \pgfpathmoveto{\pgfpoint{1.5ex}{.25ex}}
+ \pgfpathcurveto{\pgfpoint{1.7ex}{.5ex}}{\pgfpoint{1.7ex}{1ex}}{\pgfpoint{1.5ex}{1.25ex}}
+ \pgfpathmoveto{\pgfpoint{1.75ex}{0pt}}
+ \pgfpathcurveto{\pgfpoint{2ex}{.25ex}}{\pgfpoint{2ex}{1.25ex}}{\pgfpoint{1.75ex}{1.5ex}}
+ \pgfusepath{stroke}
+ \end{pgfpicture}}
diff --git a/macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty b/macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty
new file mode 100644
index 0000000000..944c52ccdb
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty
@@ -0,0 +1,177 @@
+% Copyright 2000 by Klaus Guntermann
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This program can be redistributed and/or modified under the terms
+% of the GNU Public License, version 2.
+
+%
+% Copyright notices: Large parts of this file are identical to the
+% file mpmulti.sty from the ppower4 distribution. Unfortunately, no
+% clear copyright notice is given in the original file nor is even the
+% author indicated. The author appears to be Klaus Guntermann and the
+% license appears to be GPL, at least the whole package is distributed
+% under GPL, so I assume that also applies to the individual
+% files.
+%
+
+%
+% This file does the same as the original mpmulti.sty. The only
+% differences are that a) the package pause is not loaded (it's
+% provided automatically by beamer and it should be loaded ``by hand''
+% when using ppower4) and b) a default overlay specification can be
+% given (as in \multiinclude[<+->][...]{...}), which will be the
+% argument to an actionenv that is put around each image.
+%
+
+
+%% mpmulti.sty 09 Sep 2002
+%%------------------------------------------------------------
+%% History:
+%% Initial version 14 Apr 2000
+%% Introduced keyword parameters 12 Jun 2000
+%% Introduced new parameters (start,format), changed the
+%% global code to take several file counting strings (eg
+%% bla-*.mps, foo-*.jpg, etc.), added compatibility with
+%% \graphicspath (Jean-Christophe Dubacq) 06 Dec 2001
+%% Generalized the format option, added the end
+%% handling and documented extended features in here
+%% 09 Sep 2002
+%%
+%% Purpose:
+%% include multiple metapost pictures and overlay them,
+%% inserting a transition effect between them
+%%
+%% Synopsis:
+%%
+%% \multiinclude[defaultoverlayspecification]%
+%% [pause=transitioncommand,
+%% graphics={option for includegraphics},
+%% format=filenameformat,
+%% start=number,
+%% end=number]{basefilename}
+%%
+%% Include all metapost generated graphics found in
+%% files with the basename "filename", which
+%% have a number attached or in the extension.
+%% Insert the transitioncommand between the files (defaults
+%% to \pause).
+%% Further options allow to specify additional specifications
+%% for includegraphics, can change the number to start with
+%% (default 0) or the number to end with (default 1000000).
+%% By default the filenames are as created by mpost in the format
+%% "filename.n", where "n" represents the number.
+%% The option format with the values like "mps", "png" or "jpg" this
+%% can be changed to "filename-n.format", e.g. "example-0.mps"
+%% instead of "example.0".
+%% Complaints are only written, if the first file is not found.
+%% Otherwise including will silently stop.
+%%
+%% If a defaultoverlayspecification is given, each image is
+%% surrounded by an actionenv environment (defined by the beamer
+%% class) with this option as argument. An example usage might be
+%%
+%% \multiinclude[<alert@+| +->][graphics={height=4cm}]{myimage}
+%%
+%% Requires:
+%% The keyval package for options processing.
+%%
+%%
+%\RequirePackage{pause}
+\RequirePackage{keyval}
+%%
+%% The command should process the optional arguments.
+%%
+\def\multiinclude{%
+ \def\@mpm@pause{\pause}\def\@mpm@ospec{}\def\@mpm@endospec{}%
+ \@ifnextchar [\@mpmulti{\@@@mpmulti[]}}
+%%
+\newif\if@mpm@groptions\@mpm@groptionsfalse
+%% We describe the keys and their default values
+\define@key{mpm}{format}[\@mpm@defaultformat]{%
+ \global\def\@mpm@format##1{##1-\the\@mpm@count.#1}}
+\define@key{mpm}{start}[0]{\global\def\@mpm@start{#1}\relax}
+\define@key{mpm}{end}[1000000]{\global\def\@mpm@end{#1}\relax}
+\define@key{mpm}{pause}[\pause]{\global\def\@mpm@pause{#1}\relax}
+\define@key{mpm}{graphics}{\@mpm@groptionstrue
+ \global\def\@mpm@graphics{\string#1}}
+\def\@mpm@defaultformat#1{#1.\the\@mpm@count}
+\let\@mpm@format=\@mpm@defaultformat
+%%
+%% We need a local counter
+%%
+\newcount\@mpm@count
+%%
+%% Implement the basic functionality.
+%% Try to include the first file unconditionally.
+%% This will produce an error message, if no such file can be found.
+%% Afterwards we are going to check for more files and stop, when we
+%% do not find another file. As long as we find files, these are
+%% overlapped to the previous parts.
+%%
+\def\@mpmulti[{\@ifnextchar<{\@@mpmulti[}{\@@@mpmulti[}}
+\def\@@mpmulti[#1]{%
+ \def\@mpm@pause{\relax}%
+ \def\@mpm@ospec{\begin{actionenv}#1}%
+ \def\@mpm@endospec{\end{actionenv}}%
+ \@ifnextchar[{\@@@mpmulti}{\@@@mpmulti[]}}
+\def\@@@mpmulti[#1]#2{%
+ %% reset the options
+ \global\def\@mpm@graphics{}%
+ \global\def\@mpm@start{0}%
+ \global\def\@mpm@end{1000000}%
+ %% get the arguments
+ \setkeys{mpm}{#1}%
+ %% Insert the first part of the figure
+ %% and make sure we look also in other places according to path.
+ \let\@mpm@oldinp@th\input@path\let\input@path\Ginput@path
+ \@mpm@count=\@mpm@start
+ \@mpm@ospec%
+ \if@mpm@groptions%
+ \edef\@mpm@do@include{\noexpand\includegraphics[\@mpm@graphics]{\@mpm@format{#2}}}%
+ \@mpm@do@include%
+ \else%
+ \includegraphics{\@mpm@format{#2}}%
+ \fi%
+ \@mpm@endospec%
+ \def\@mpmdoit{% Do it by conditional tail recursion.
+ %% Select the next filename and advance counter
+ \edef\@mpmfilename{\@mpm@format{#2}}%
+ %% If the file exists,
+ \IfFileExists{\@mpmfilename}{%
+ %% insert the user defined transition (or the default),
+ \@mpm@pause
+ %% then process the next part and set up to try again.
+ \llap{%
+ \@mpm@ospec%
+ \if@mpm@groptions
+ \edef\@mpm@do@include{\noexpand
+ \includegraphics[\@mpm@graphics]{\@mpmfilename}}%
+ \@mpm@do@include
+ \else
+ \includegraphics{\@mpmfilename}%
+ \fi%
+ \@mpm@endospec%
+ }%
+ \ifnum\@mpm@count<\@mpm@end\relax
+ \advance\@mpm@count by 1\relax
+ \let\@mpmnext\@mpmdoit
+ \else
+ \let\@mpmnext\relax
+ \fi
+ }{%
+ %% If no more files exist, set up to stop.
+ \let\@mpmnext\relax
+ }%
+ %% Whatever we had to do (without nesting all the IfFileExists)
+ \@mpmnext
+ }%
+ %% Finally we must start it once, if there is more than one file
+ %% supposed to be available.
+ \ifnum\@mpm@count<\@mpm@end\relax
+ \advance\@mpm@count by 1\relax % start counting
+ \@mpmdoit % and run the show
+ \fi
+ %% and reset the input path after all
+ \let\input@path\@mpm@oldinp@th
+}%
diff --git a/macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty b/macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty
new file mode 100644
index 0000000000..7853b36d70
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty
@@ -0,0 +1,87 @@
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\if@plnewitem
+ \def\enumerate{%
+ \ifnum \@enumdepth >\tw@
+ \@toodeep
+ \else
+ \advance\@enumdepth \@ne
+ \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
+ \advance\@itemdepth \@ne%
+ \fi
+ \def\@enum@widestlabel{7}%
+ \beamer@computepref\@enumdepth%
+ \expandafter\edef\csname label\@enumctr\endcsname{\noexpand\usebeamertemplate{enumerate \beameritemnestingprefix item}}%
+ \@ifnextchar[{\beamer@@enum@}{\beamer@enummerate@}}
+ \def\beamer@@enum@[{\@ifnextchar<{\beamer@enumdefault[}{\beamer@@@enum@[}}
+ \def\beamer@enumdefault[#1]{\def\beamer@defaultospec{#1}%
+ \@ifnextchar[{\beamer@@@enum@}{\beamer@enummerate@}}
+ \def\beamer@@@enum@[#1]{\@enumlabel@{\beamer@enummerate@}[[#1]} % Here a token is gobbled in paralist package
+ \def\beamer@enummerate@{%
+ \beamer@computepref\@itemdepth% sets \beameritemnestingprefix
+ \usebeamerfont{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamercolor[fg]{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body begin}%
+ \@adjust@enum@labelwidth
+ \expandafter\list\csname label\@enumctr\endcsname{%
+ \usecounter{\@enumctr}%
+ \labelwidth
+ \csname leftmargin\romannumeral\@listdepth\endcsname
+ \advance\labelwidth-\labelsep
+ \let\makelabel\enumlabel}%
+ \beamer@cramped%
+ \raggedright%
+ \beamer@firstlineitemizeunskip%
+ }
+ \def\itemize{%
+ \ifnum \@itemdepth >\tw@
+ \@toodeep
+ \else
+ \advance\@itemdepth\@ne
+ \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
+ \fi
+ \beamer@computepref\@itemdepth%
+ \expandafter\edef\csname\@itemitem\endcsname{\noexpand\usebeamertemplate{itemize \beameritemnestingprefix item}}%
+ \@ifnextchar[{\beamer@@item@}{\beamer@itemize@}}%
+ \def\beamer@@item@[{\@ifnextchar<{\beamer@itemdefault[}{\beamer@@@item@[}}
+ \def\beamer@itemdefault[#1]{\def\beamer@defaultospec{#1}%
+ \@ifnextchar[{\beamer@@@item@}{\beamer@itemize@}}
+ \def\beamer@@@item@[#1]{\@itemlabel@{\beamer@itemize@}[#1]}
+ \def\beamer@itemize@{%
+ \usebeamerfont{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamercolor[fg]{itemize/enumerate \beameritemnestingprefix body}%
+ \usebeamertemplate{itemize/enumerate \beameritemnestingprefix body begin}%
+ \@adjust@item@labelwidth
+ \expandafter\list\csname\@itemitem\endcsname{%
+ \labelwidth
+ \csname leftmargin\romannumeral\@listdepth\endcsname
+ \advance\labelwidth-\labelsep
+ \let\makelabel\itemlabel}%
+ \beamer@cramped%
+ \raggedright%
+ \beamer@firstlineitemizeunskip%
+ }
+\fi
+\if@plflushright
+ \def\enumlabel#1{{\usebeamerfont*{enumerate \beameritemnestingprefix item}%
+ \usebeamercolor[fg]{enumerate \beameritemnestingprefix item}\hss#1}}
+ \def\itemlabel#1{{\usebeamerfont*{itemize \beameritemnestingprefix item}%
+ \usebeamercolor[fg]{itemize \beameritemnestingprefix item}\hss#1}}
+\else
+ \def\enumlabel#1{{\usebeamerfont*{enumerate \beameritemnestingprefix item}%
+ \usebeamercolor[fg]{enumerate \beameritemnestingprefix item}#1\hfil}}
+ \def\itemlabel#1{{\usebeamerfont*{itemize \beameritemnestingprefix item}%
+ \usebeamercolor[fg]{itemize \beameritemnestingprefix item}#1\hfil}}
+\fi
+
+\mode
+<all> \ No newline at end of file
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty
new file mode 100644
index 0000000000..177833cd95
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty
@@ -0,0 +1,55 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\setbeamercolor*{normal text}{fg=yellow!50!white,bg=blue!50!black}
+
+\DeclareOption{overlystylish}
+{
+ \def\beamer@cta@do{
+ \setbeamertemplate{background canvas}[vertical shading][bottom=black,top=black,middle=blue!50!black]
+ }
+}
+\ProcessOptions
+
+\@ifundefined{beamer@cta@do}{}{\beamer@cta@do}
+
+\mode<presentation>
+
+\setbeamercolor*{example text}{fg=green!65!black}
+
+\setbeamercolor*{structure}{fg=blue!25!white}
+
+\setbeamercolor{palette primary}{use={structure,normal text},fg=structure.fg,bg=normal text.bg!75!black}
+\setbeamercolor{palette secondary}{use={structure,normal text},fg=structure.fg,bg=normal text.bg!60!black}
+\setbeamercolor{palette tertiary}{use={structure,normal text},fg=structure.fg,bg=normal text.bg!45!black}
+\setbeamercolor{palette quaternary}{use={structure,normal text},fg=structure.fg,bg=normal text.bg!30!black}
+
+\setbeamercolor*{block body}{bg=normal text.bg!90!black}
+\setbeamercolor*{block body alerted}{bg=normal text.bg!90!black}
+\setbeamercolor*{block body example}{bg=normal text.bg!90!black}
+\setbeamercolor*{block title}{parent=structure,bg=normal text.bg!75!black}
+\setbeamercolor*{block title alerted}{use={normal text,alerted text},fg=alerted text.fg!75!normal text.fg,bg=normal text.bg!75!black}
+\setbeamercolor*{block title example}{use={normal text,example text},fg=example text.fg!75!normal text.fg,bg=normal text.bg!75!black}
+
+\setbeamercolor{item projected}{fg=black}
+
+\setbeamercolor*{sidebar}{parent=palette primary}
+
+\setbeamercolor{palette sidebar primary}{use=normal text,fg=normal text.fg}
+\setbeamercolor{palette sidebar secondary}{use=structure,fg=structure.fg}
+\setbeamercolor{palette sidebar tertiary}{use=normal text,fg=normal text.fg}
+\setbeamercolor{palette sidebar quaternary}{use=structure,fg=structure.fg}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty
new file mode 100644
index 0000000000..ae384b7ffe
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty
@@ -0,0 +1,37 @@
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\definecolor{darkred}{rgb}{0.8,0,0}
+
+\setbeamercolor{section in toc}{fg=black,bg=white}
+\setbeamercolor{alerted text}{fg=darkred!80!gray}
+\setbeamercolor*{palette primary}{fg=darkred!60!black,bg=gray!30!white}
+\setbeamercolor*{palette secondary}{fg=darkred!70!black,bg=gray!15!white}
+\setbeamercolor*{palette tertiary}{bg=darkred!80!black,fg=gray!10!white}
+\setbeamercolor*{palette quaternary}{fg=darkred,bg=gray!5!white}
+
+\setbeamercolor*{sidebar}{fg=darkred,bg=gray!15!white}
+
+\setbeamercolor*{palette sidebar primary}{fg=darkred!10!black}
+\setbeamercolor*{palette sidebar secondary}{fg=white}
+\setbeamercolor*{palette sidebar tertiary}{fg=darkred!50!black}
+\setbeamercolor*{palette sidebar quaternary}{fg=gray!10!white}
+
+%\setbeamercolor*{titlelike}{parent=palette primary}
+\setbeamercolor{titlelike}{parent=palette primary,fg=darkred}
+\setbeamercolor{frametitle}{bg=gray!10!white}
+\setbeamercolor{frametitle right}{bg=gray!60!white}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty
new file mode 100644
index 0000000000..d01602004d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty
@@ -0,0 +1,47 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{normal text}{fg=black,bg=black!40}
+\setbeamercolor{structure}{fg=white}
+
+\setbeamercolor{alerted text}{fg=red!85!black}
+
+\setbeamercolor{item projected}{use=item,fg=black,bg=item.fg!75}
+
+\definecolor{beetle@other}{RGB}{64,80,127}
+
+\setbeamercolor*{palette primary}{fg=white,bg=beetle@other}
+\setbeamercolor*{palette secondary}{parent=palette primary,use=palette primary,bg=palette primary.bg!95!black}
+\setbeamercolor*{palette tertiary}{parent=palette primary,use=palette primary,bg=palette primary.bg!90!black}
+\setbeamercolor*{palette quaternary}{parent=palette primary,use=palette primary,bg=palette primary.bg!85!black}
+
+\setbeamercolor*{sidebar}{parent=palette primary}
+
+\setbeamercolor*{palette sidebar primary}{fg=white}
+\setbeamercolor*{palette sidebar secondary}{fg=black}
+\setbeamercolor*{palette sidebar tertiary}{fg=white}
+\setbeamercolor*{palette sidebar quaternary}{fg=black}
+
+\setbeamercolor{framesubtitle}{fg=black}
+
+\setbeamercolor*{subtitle}{fg=black}
+
+\setbeamercolor*{block title}{parent=structure}
+\setbeamercolor*{block title alerted}{parent=alerted text}
+\setbeamercolor*{block title example}{parent=example text}
+\setbeamercolor*{block body}{}
+\setbeamercolor*{block body alerted}{}
+\setbeamercolor*{block body example}{}
+
+\setbeamercolor*{titlelike}{parent=structure}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty
new file mode 100644
index 0000000000..7aa4a52bf2
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty
@@ -0,0 +1,43 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\definecolor{craneorange}{RGB}{252,187,6}
+\definecolor{craneblue}{RGB}{4,6,76}
+
+\setbeamercolor{structure}{fg=craneblue}
+
+\setbeamercolor{palette primary}{fg=craneblue,bg=craneorange!70}
+\setbeamercolor{palette secondary}{fg=craneblue,bg=craneorange!80}
+\setbeamercolor{palette tertiary}{fg=craneblue,bg=craneorange!90}
+\setbeamercolor{palette quaternary}{fg=craneblue,bg=craneorange}
+
+\setbeamercolor{titlelike}{parent=palette quaternary}
+
+\setbeamercolor{block title}{fg=craneblue,bg=craneorange}
+\setbeamercolor{block title alerted}{use=alerted text,fg=craneblue,bg=alerted text.fg!75!bg}
+\setbeamercolor{block title example}{use=example text,fg=craneblue,bg=example text.fg!75!bg}
+
+\setbeamercolor{block body}{parent=normal text,use=block title,bg=block title.bg!25!bg}
+\setbeamercolor{block body alerted}{parent=normal text,use=block title alerted,bg=block title alerted.bg!25!bg}
+\setbeamercolor{block body example}{parent=normal text,use=block title example,bg=block title example.bg!25!bg}
+
+\setbeamercolor{sidebar}{bg=craneorange!70}
+
+\setbeamercolor{palette sidebar primary}{fg=craneblue}
+\setbeamercolor{palette sidebar secondary}{fg=craneblue!75}
+\setbeamercolor{palette sidebar tertiary}{fg=craneblue!75}
+\setbeamercolor{palette sidebar quaternary}{fg=craneblue}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
new file mode 100644
index 0000000000..acc9216b8c
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
@@ -0,0 +1,183 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017--2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\definecolor{beamer@blendedblue}{rgb}{0.2,0.2,0.7} % use structure theme to change
+
+\setbeamercolor{normal text}{fg=black,bg=white}
+\setbeamercolor{alerted text}{fg=red}
+\setbeamercolor{example text}{fg=green!50!black}
+
+\setbeamercolor{structure}{fg=beamer@blendedblue}
+
+\setbeamercolor{background canvas}{parent=normal text}
+\setbeamercolor{background}{parent=background canvas}
+
+\setbeamercolor{palette primary}{use=structure,fg=structure.fg}
+\setbeamercolor{palette secondary}{use=structure,fg=structure.fg!75!black}
+\setbeamercolor{palette tertiary}{use=structure,fg=structure.fg!50!black}
+\setbeamercolor{palette quaternary}{fg=black}
+
+\setbeamercolor{palette sidebar primary}{use=normal text,fg=normal text.fg}
+\setbeamercolor{palette sidebar secondary}{use=structure,fg=structure.fg}
+\setbeamercolor{palette sidebar tertiary}{use=normal text,fg=normal text.fg}
+\setbeamercolor{palette sidebar quaternary}{use=structure,fg=structure.fg}
+
+\setbeamercolor{math text}{}
+\setbeamercolor{math text inlined}{parent=math text}
+\setbeamercolor{math text displayed}{parent=math text}
+
+\setbeamercolor{normal text in math text}{}
+
+\setbeamercolor{local structure}{parent=structure}
+
+\setbeamercolor{titlelike}{parent=structure}
+
+\setbeamercolor{title}{parent=titlelike}
+\setbeamercolor{title in head/foot}{parent=palette quaternary}
+\setbeamercolor{title in sidebar}{parent=palette sidebar quaternary}
+
+\setbeamercolor{subtitle}{parent=title}
+
+\setbeamercolor{author}{}
+\setbeamercolor{author in head/foot}{parent=palette primary}
+\setbeamercolor{author in sidebar}{use=palette sidebar tertiary,fg=palette sidebar tertiary.fg}
+
+\setbeamercolor{institute}{}
+\setbeamercolor{institute in head/foot}{parent=palette tertiary}
+\setbeamercolor{institute in sidebar}{use=palette sidebar tertiary,fg=palette sidebar tertiary.fg}
+
+\setbeamercolor{date}{}
+\setbeamercolor{date in head/foot}{parent=palette secondary}
+\setbeamercolor{date in sidebar}{use=palette sidebar tertiary,fg=palette sidebar tertiary.fg}
+
+\setbeamercolor{titlegraphic}{}
+
+\setbeamercolor{part name}{}
+\setbeamercolor{part title}{parent=titlelike}
+
+\setbeamercolor{section name}{}
+\setbeamercolor{section title}{parent=titlelike}
+
+\setbeamercolor{section in toc}{parent=structure}
+\setbeamercolor{section in toc shaded}{parent=section in toc}
+\setbeamercolor{section in head/foot}{parent=palette tertiary}
+\setbeamercolor{section in sidebar}{parent=palette sidebar secondary}
+\setbeamercolor{section in sidebar shaded}{use=section in sidebar,fg=section in sidebar.fg!40!bg}
+\setbeamercolor{section number projected}{parent=item projected}
+
+\setbeamercolor{subsection name}{}
+\setbeamercolor{subsection title}{parent=titlelike}
+
+\setbeamercolor{subsection in toc}{}
+\setbeamercolor{subsection in toc shaded}{parent=subsection in toc}
+\setbeamercolor{subsection in head/foot}{parent=palette secondary}
+\setbeamercolor{subsection in sidebar}{parent=palette sidebar primary}
+\setbeamercolor{subsection in sidebar shaded}{use=subsection in sidebar,fg=subsection in sidebar.fg!40!bg}
+\setbeamercolor{subsection number projected}{parent={subitem projected}}
+
+\setbeamercolor{subsubsection in toc}{parent=subsection in toc}
+\setbeamercolor{subsubsection in toc shaded}{parent=subsubsection in toc}
+\setbeamercolor{subsubsection in head/foot}{parent=subsection in head/foot}
+\setbeamercolor{subsubsection in sidebar}{parent=subsection in sidebar}
+\setbeamercolor{subsubsection in sidebar shaded}{parent=subsection in sidebar shaded}
+\setbeamercolor{subsubsection number projected}{parent=subsubitem projected}
+
+\setbeamercolor{headline}{}
+\setbeamercolor{footline}{}
+
+\setbeamercolor{sidebar}{}
+\setbeamercolor{sidebar left}{parent=sidebar}
+\setbeamercolor{sidebar right}{parent=sidebar}
+
+\setbeamercolor{logo}{parent=palette secondary}
+
+\setbeamercolor{frametitle}{parent=titlelike}
+\setbeamercolor{framesubtitle}{parent=frametitle}
+
+\setbeamercolor{frametitle right}{parent=frametitle}
+
+\setbeamercolor{caption}{}
+\setbeamercolor{caption name}{parent=structure}
+
+\setbeamercolor{button}{use=local structure,bg=local structure.fg!50!bg,fg=white}
+\setbeamercolor{button border}{use=button,fg=button.bg}
+\setbeamercolor{navigation symbols}{use=structure,fg=structure.fg!40!bg}
+\setbeamercolor{navigation symbols dimmed}{use=structure,fg=structure.fg!20!bg}
+\setbeamercolor{mini frame}{parent=section in head/foot}
+
+\setbeamercolor{block body}{}
+\setbeamercolor{block body alerted}{}
+\setbeamercolor{block body example}{}
+\setbeamercolor{block title}{parent=structure}
+\setbeamercolor{block title alerted}{parent=alerted text}
+\setbeamercolor{block title example}{parent=example text}
+
+\setbeamercolor{item}{parent=local structure}
+\setbeamercolor{subitem}{parent=item}
+\setbeamercolor{subsubitem}{parent=subitem}
+
+\setbeamercolor{item projected}{parent=item,use=item,fg=white,bg=item.fg}
+\setbeamercolor{subitem projected}{parent=item projected}
+\setbeamercolor{subsubitem projected}{parent=subitem projected}
+
+\setbeamercolor{enumerate item}{parent=item}
+\setbeamercolor{enumerate subitem}{parent=subitem}
+\setbeamercolor{enumerate subsubitem}{parent=subsubitem}
+
+\setbeamercolor{itemize item}{parent=item}
+\setbeamercolor{itemize subitem}{parent=subitem}
+\setbeamercolor{itemize subsubitem}{parent=subsubitem}
+
+\setbeamercolor{itemize/enumerate body}{}
+\setbeamercolor{itemize/enumerate subbody}{}
+\setbeamercolor{itemize/enumerate subsubbody}{}
+
+\setbeamercolor{description item}{parent=item}
+
+\setbeamercolor{description body}{}
+
+\setbeamercolor{bibliography item}{parent=item}
+
+\setbeamercolor{bibliography entry author}{use=structure,fg=structure.fg}
+\setbeamercolor{bibliography entry title}{use=normal text,fg=normal text.fg}
+\setbeamercolor{bibliography entry location}{use=structure,fg=structure.fg!65!bg}
+\setbeamercolor{bibliography entry note}{use=structure,fg=structure.fg!65!bg}
+
+\setbeamercolor{separation line}{}
+
+\setbeamercolor{upper separation line head}{parent=separation line}
+\setbeamercolor{middle separation line head}{parent=separation line}
+\setbeamercolor{lower separation line head}{parent=separation line}
+
+\setbeamercolor{upper separation line foot}{parent=separation line}
+\setbeamercolor{middle separation line foot}{parent=separation line}
+\setbeamercolor{lower separation line foot}{parent=separation line}
+
+\setbeamercolor{abstract}{}
+\setbeamercolor{abstract title}{parent=structure}
+
+\setbeamercolor{verse}{}
+
+\setbeamercolor{quotation}{}
+\setbeamercolor{quote}{parent=quotation}
+
+\setbeamercolor{page number in head/foot}{}
+
+\setbeamercolor{qed symbol}{parent=structure}
+
+\setbeamercolor{note page}{bg=white!90!black, fg=black}
+\setbeamercolor{note title}{bg=white!80!black, fg=black}
+\setbeamercolor{note date}{parent=note title}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty
new file mode 100644
index 0000000000..9d4616ab4d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty
@@ -0,0 +1,31 @@
+% Copyright 2004 by Manuel Carro <mcarro@fi.upm.es>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+
+\setbeamercolor*{palette primary}{use=structure,fg=black,bg=structure.fg!40!white}
+\setbeamercolor*{palette secondary}{use=structure,fg=white,bg=structure.fg!60!white}
+\setbeamercolor*{palette tertiary}{use=structure,fg=white,bg=structure.fg!90!white}
+\setbeamercolor*{palette quaternary}{fg=white,bg=black}
+
+\setbeamercolor*{sidebar}{use=structure,bg=structure.fg}
+
+\setbeamercolor*{palette sidebar primary}{use=structure,fg=structure.fg!10}
+\setbeamercolor*{palette sidebar secondary}{fg=white}
+\setbeamercolor*{palette sidebar tertiary}{use=structure,fg=structure.fg!50}
+\setbeamercolor*{palette sidebar quaternary}{fg=white}
+
+\setbeamercolor*{titlelike}{use=structure,fg=structure.fg}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty
new file mode 100644
index 0000000000..16e9c66dee
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty
@@ -0,0 +1,57 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{normal text}{fg=black,bg=white}
+\setbeamercolor*{alerted text}{fg=black}
+\setbeamercolor*{example text}{fg=black}
+\setbeamercolor*{structure}{fg=black}
+
+\providecommand*{\beamer@bftext@only}{%
+ \relax
+ \ifmmode
+ \expandafter\beamer@bftext@warning
+ \else
+ \expandafter\bfseries
+ \fi
+}
+\providecommand*{\beamer@bftext@warning}{%
+ \ClassWarning{beamer}
+ {Cannot use bold for alerted text in math mode}%
+}
+
+\setbeamerfont{alerted text}{series=\beamer@bftext@only}
+
+\setbeamercolor{palette primary}{fg=black,bg=white}
+\setbeamercolor{palette secondary}{fg=black,bg=white}
+\setbeamercolor{palette tertiary}{fg=black,bg=white}
+\setbeamercolor{palette quaternary}{fg=black,bg=white}
+
+\setbeamercolor{sidebar}{bg=black!20}
+
+\setbeamercolor{palette sidebar primary}{fg=black}
+\setbeamercolor{palette sidebar secondary}{fg=black}
+\setbeamercolor{palette sidebar tertiary}{fg=black}
+\setbeamercolor{palette sidebar quaternary}{fg=black}
+
+\setbeamercolor{item projected}{fg=black,bg=black!20}
+
+\setbeamercolor*{block body}{}
+\setbeamercolor*{block body alerted}{}
+\setbeamercolor*{block body example}{}
+\setbeamercolor*{block title}{parent=structure}
+\setbeamercolor*{block title alerted}{parent=alerted text}
+\setbeamercolor*{block title example}{parent=example text}
+
+\setbeamercolor*{titlelike}{parent=structure}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty
new file mode 100644
index 0000000000..2bac67c1bb
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty
@@ -0,0 +1,43 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{normal text}{fg=black,bg=black!40}
+\setbeamercolor{structure}{fg=white}
+
+\setbeamercolor{alerted text}{fg=red!85!black}
+
+\setbeamercolor{item projected}{use=item,fg=black,bg=item.fg!75}
+
+\setbeamercolor*{sidebar}{bg=black!50}
+
+\setbeamercolor*{palette primary}{use=structure,fg=structure.fg}
+\setbeamercolor*{palette secondary}{use=structure,fg=structure.fg!95!black}
+\setbeamercolor*{palette tertiary}{use=structure,fg=structure.fg!90!black}
+\setbeamercolor*{palette quaternary}{use=structure,fg=structure.fg!85!black}
+
+\setbeamercolor*{palette sidebar primary}{fg=white}
+\setbeamercolor*{palette sidebar secondary}{fg=black}
+\setbeamercolor*{palette sidebar tertiary}{fg=white}
+\setbeamercolor*{palette sidebar quaternary}{fg=black}
+
+\setbeamercolor*{framesubtitle}{fg=black}
+
+\setbeamercolor*{subtitle}{fg=black}
+
+\setbeamercolor*{block title}{parent=structure}
+\setbeamercolor*{block title alerted}{parent=alerted text}
+\setbeamercolor*{block title example}{parent=example text}
+\setbeamercolor*{block body}{}
+\setbeamercolor*{block body alerted}{}
+\setbeamercolor*{block body example}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty
new file mode 100644
index 0000000000..355ee97b0e
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty
@@ -0,0 +1,22 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{block body}{}
+\setbeamercolor*{block body alerted}{}
+\setbeamercolor*{block body example}{}
+\setbeamercolor*{block title}{parent=structure}
+\setbeamercolor*{block title alerted}{parent=alerted text}
+\setbeamercolor*{block title example}{parent=example text}
+
+\setbeamercolor*{titlelike}{parent=structure}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty
new file mode 100644
index 0000000000..7548591de9
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty
@@ -0,0 +1,65 @@
+% Copyright 2012 by Till Tantau and Max Dohse
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+%
+% This theme is based on the crane theme by Till Tantau.
+% the OVERLYSTYLISH option is taken from the albatross theme
+%
+% The colors are those of the Monarca/Monarch butterfly.
+% http://en.wikipedia.org/wiki/Monarch_butterfly
+% The Monarch is famous for its southward migration
+% and northward return in summer from Canada to Mexico,
+% which spans the life of three to four generations of the butterfly.
+%
+
+\definecolor{craneorange}{RGB}{252,187,6}
+\definecolor{craneblue}{RGB}{4,6,76}
+
+\DeclareOption{overlystylish}{
+ \def\beamer@cta@do{\setbeamertemplate{background canvas}[vertical shading]%
+ [bottom=craneorange,top=craneorange,middle=yellow]
+ }
+}
+\ProcessOptions
+
+\@ifundefined{beamer@cta@do}{}{\beamer@cta@do}
+
+\mode<presentation>
+
+\setbeamercolor{normal text}{fg=black,bg=craneorange}
+
+\setbeamercolor{structure}{fg=black}
+
+\setbeamercolor{palette primary}{fg=craneorange!75,bg=black}
+\setbeamercolor{palette secondary}{fg=black,bg=craneorange}
+\setbeamercolor{palette tertiary}{fg=craneorange!75,bg=black}
+\setbeamercolor{palette quaternary}{fg=black,bg=white}
+
+\setbeamercolor{titlelike}{parent=palette quaternary}
+
+\setbeamercolor{block title}{fg=black,bg=white}
+\setbeamercolor{block title alerted}{use=alerted text,fg=black,bg=alerted text.fg!75!bg}
+\setbeamercolor{block title example}{use=example text,fg=black,bg=example text.fg!75!bg}
+
+\setbeamercolor{block body}{parent=normal text,use=block title,bg=block title.bg!25!bg}
+\setbeamercolor{block body alerted}{parent=normal text,use=block title alerted,bg=block title alerted.bg!25!bg}
+\setbeamercolor{block body example}{parent=normal text,use=block title example,bg=block title example.bg!25!bg}
+
+\setbeamercolor{sidebar}{bg=craneorange!90}%70
+
+\setbeamercolor{palette sidebar primary}{fg=black}
+\setbeamercolor{palette sidebar secondary}{fg=black!75}
+\setbeamercolor{palette sidebar tertiary}{fg=black!75}
+\setbeamercolor{palette sidebar quaternary}{fg=black}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty
new file mode 100644
index 0000000000..03931eac99
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty
@@ -0,0 +1,21 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{block title}{use=structure,fg=white,bg=structure.fg!75!black}
+\setbeamercolor{block title alerted}{use=alerted text,fg=white,bg=alerted text.fg!75!black}
+\setbeamercolor{block title example}{use=example text,fg=white,bg=example text.fg!75!black}
+
+\setbeamercolor{block body}{parent=normal text,use=block title,bg=block title.bg!10!bg}
+\setbeamercolor{block body alerted}{parent=normal text,use=block title alerted,bg=block title alerted.bg!10!bg}
+\setbeamercolor{block body example}{parent=normal text,use=block title example,bg=block title example.bg!10!bg}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty
new file mode 100644
index 0000000000..4a7b1ebdc1
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty
@@ -0,0 +1,21 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{block title}{use=structure,fg=structure.fg,bg=structure.fg!20!bg}
+\setbeamercolor{block title alerted}{use=alerted text,fg=alerted text.fg,bg=alerted text.fg!20!bg}
+\setbeamercolor{block title example}{use=example text,fg=example text.fg,bg=example text.fg!20!bg}
+
+\setbeamercolor{block body}{parent=normal text,use=block title,bg=block title.bg!50!bg}
+\setbeamercolor{block body alerted}{parent=normal text,use=block title alerted,bg=block title alerted.bg!50!bg}
+\setbeamercolor{block body example}{parent=normal text,use=block title example,bg=block title example.bg!50!bg}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty
new file mode 100644
index 0000000000..c3abf5ee53
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty
@@ -0,0 +1,59 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{normal text}{fg=black,bg=white}
+\setbeamercolor*{alerted text}{fg=black}
+\setbeamercolor*{example text}{fg=black}
+\setbeamercolor*{structure}{fg=black}
+
+\providecommand*{\beamer@bftext@only}{%
+ \relax
+ \ifmmode
+ \expandafter\beamer@bftext@warning
+ \else
+ \expandafter\bfseries
+ \fi
+}
+\providecommand*{\beamer@bftext@warning}{%
+ \ClassWarning{beamer}
+ {Cannot use bold for alerted text in math mode}%
+}
+
+\setbeamerfont{alerted text}{series=\beamer@bftext@only}
+
+\setbeamercolor*{palette primary}{fg=black,bg=black!20}
+\setbeamercolor*{palette secondary}{fg=black,bg=black!25}
+\setbeamercolor*{palette tertiary}{fg=black,bg=black!30}
+\setbeamercolor*{palette quaternary}{fg=black,bg=black!35}
+
+\setbeamercolor{sidebar}{bg=black!20}
+
+\setbeamercolor*{palette sidebar primary}{fg=black}
+\setbeamercolor*{palette sidebar secondary}{fg=black}
+\setbeamercolor*{palette sidebar tertiary}{fg=black}
+\setbeamercolor*{palette sidebar quaternary}{fg=black}
+
+\setbeamercolor*{item projected}{fg=black,bg=black!20}
+
+\setbeamercolor*{block title}{fg=black,bg=black!20}
+\setbeamercolor*{block title alerted}{fg=black,bg=black!20}
+\setbeamercolor*{block title example}{fg=black,bg=black!20}
+
+\setbeamercolor*{block body}{fg=black,bg=black!10}
+\setbeamercolor*{block body alerted}{fg=black,bg=black!10}
+\setbeamercolor*{block body example}{fg=black,bg=black!10}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty
new file mode 100644
index 0000000000..7972a3e7a0
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty
@@ -0,0 +1,30 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{palette primary}{use=structure,fg=black,bg=structure.fg!20!white}
+\setbeamercolor{palette secondary}{use=structure,fg=black,bg=structure.fg!25!white}
+\setbeamercolor{palette tertiary}{use=structure,fg=black,bg=structure.fg!30!white}
+\setbeamercolor{palette quaternary}{use=structure,fg=black,bg=structure.fg!35!white}
+
+\setbeamercolor{sidebar}{use=structure,bg=structure.fg!20!white}
+
+\setbeamercolor{palette sidebar primary}{use=normal text,fg=normal text.fg}
+\setbeamercolor{palette sidebar secondary}{use=structure,fg=structure.fg}
+\setbeamercolor{palette sidebar tertiary}{use=normal text,fg=normal text.fg}
+\setbeamercolor{palette sidebar quaternary}{use=structure,fg=structure.fg}
+
+\setbeamercolor*{titlelike}{parent=palette primary}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty
new file mode 100644
index 0000000000..454ef9afe7
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty
@@ -0,0 +1,23 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{section in sidebar shaded}{parent=palette sidebar secondary}
+\setbeamercolor*{section in sidebar}
+ {parent=section in sidebar shaded,use={sidebar,section in sidebar shaded},%
+ bg=sidebar.bg!70!section in sidebar shaded.fg}
+
+\setbeamercolor*{subsection in sidebar shaded}{parent=palette sidebar primary}
+\setbeamercolor*{subsection in sidebar}
+ {parent=subsection in sidebar shaded,use=section in sidebar,%
+ bg=section in sidebar.bg}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty
new file mode 100644
index 0000000000..1d4fa9fbfd
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty
@@ -0,0 +1,38 @@
+% Copyright 2012 by Alan Munn <amunn@msu.edu> Modified for MSU colours
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+%
+
+\mode<presentation>
+
+\definecolor{MSUgreen}{RGB}{0,102,51}
+% Approximate match for Michigan State University; official colour appears too dark
+
+\setbeamercolor{alerted text}{fg=MSUgreen!80!white}
+\setbeamercolor*{palette primary}{fg=MSUgreen!60!black,bg=white!85!MSUgreen}
+\setbeamercolor*{palette secondary}{fg=MSUgreen!70!black,bg=white!60!MSUgreen}
+\setbeamercolor*{palette tertiary}{bg=MSUgreen!80!black,fg=white!50!MSUgreen}
+\setbeamercolor*{palette quaternary}{fg=MSUgreen,bg=white!20!MSUgreen}
+
+\setbeamercolor*{sidebar}{fg=MSUgreen,bg=MSUgreen!75!white}
+
+\setbeamercolor*{palette sidebar primary}{fg=MSUgreen!10!black}
+\setbeamercolor*{palette sidebar secondary}{fg=white}
+\setbeamercolor*{palette sidebar tertiary}{fg=MSUgreen!50!black}
+\setbeamercolor*{palette sidebar quaternary}{fg=white!10!MSUgreen}
+
+\setbeamercolor*{titlelike}{parent=palette primary}
+\setbeamercolor{frametitle}{bg=white!90!MSUgreen}
+\setbeamercolor{frametitle right}{bg=white!60!MSUgreen}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+\setbeamercolor{block body}{parent=normal text,use=block title,bg=red!0,fg=}
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty
new file mode 100644
index 0000000000..9b8baab123
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{gray}{\definecolor{beamer@structure@color}{gray}{#1}}
+\DeclareOptionBeamer{rgb}{\definecolor{beamer@structure@color}{rgb}{#1}}
+\DeclareOptionBeamer{RGB}{\definecolor{beamer@structure@color}{RGB}{#1}}
+\DeclareOptionBeamer{cmyk}{\definecolor{beamer@structure@color}{cmyk}{#1}}
+\DeclareOptionBeamer{cmy}{\definecolor{beamer@structure@color}{cmy}{#1}}
+\DeclareOptionBeamer{named}{\definecolor{beamer@structure@color}{named}{#1}}
+\DeclareOptionBeamer{hsb}{\definecolor{beamer@structure@color}{hsb}{#1}}
+\ProcessOptionsBeamer
+
+
+\setbeamercolor{structure}{fg=beamer@structure@color}
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty
new file mode 100644
index 0000000000..ffb91984e4
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty
@@ -0,0 +1,30 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{palette primary}{use=structure,fg=white,bg=structure.fg}
+\setbeamercolor*{palette secondary}{use=structure,fg=white,bg=structure.fg!75!black}
+\setbeamercolor*{palette tertiary}{use=structure,fg=white,bg=structure.fg!50!black}
+\setbeamercolor*{palette quaternary}{fg=white,bg=black}
+
+\setbeamercolor*{sidebar}{use=structure,bg=structure.fg}
+
+\setbeamercolor*{palette sidebar primary}{use=structure,fg=structure.fg!10}
+\setbeamercolor*{palette sidebar secondary}{fg=white}
+\setbeamercolor*{palette sidebar tertiary}{use=structure,fg=structure.fg!50}
+\setbeamercolor*{palette sidebar quaternary}{fg=white}
+
+\setbeamercolor*{titlelike}{parent=palette primary}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty
new file mode 100644
index 0000000000..2877c79c8d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty
@@ -0,0 +1,35 @@
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\definecolor{darkblue}{rgb}{0,0,0.8}
+
+\setbeamercolor{alerted text}{fg=darkblue!80!yellow}
+\setbeamercolor*{palette primary}{fg=darkblue!60!black,bg=yellow!85!orange}
+\setbeamercolor*{palette secondary}{fg=darkblue!70!black,bg=yellow!60!orange}
+\setbeamercolor*{palette tertiary}{bg=darkblue!80!black,fg=yellow!50!orange}
+\setbeamercolor*{palette quaternary}{fg=darkblue,bg=yellow!20!orange}
+
+\setbeamercolor*{sidebar}{fg=darkblue,bg=orange!75!white}
+
+\setbeamercolor*{palette sidebar primary}{fg=darkblue!10!black}
+\setbeamercolor*{palette sidebar secondary}{fg=white}
+\setbeamercolor*{palette sidebar tertiary}{fg=darkblue!50!black}
+\setbeamercolor*{palette sidebar quaternary}{fg=yellow!10!orange}
+
+\setbeamercolor*{titlelike}{parent=palette primary}
+\setbeamercolor{frametitle}{bg=yellow!90!orange}
+\setbeamercolor{frametitle right}{bg=yellow!60!orange}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty
new file mode 100644
index 0000000000..b1bbfc640e
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty
@@ -0,0 +1,127 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017--2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamerfont{normal text}{} % ignored currently
+\setbeamerfont{alerted text}{}
+\setbeamerfont{example text}{}
+
+\setbeamerfont{structure}{}
+\setbeamerfont{tiny structure}{size=\tiny}
+
+\setbeamerfont{title}{size=\Large,parent=structure}
+\setbeamerfont{title in head/foot}{}
+\setbeamerfont{title in sidebar}{size=\tiny}
+
+\setbeamerfont{subtitle}{size=\normalsize,parent=title}
+
+\setbeamerfont{author}{}
+\setbeamerfont{author in head/foot}{}
+\setbeamerfont{author in sidebar}{size=\tiny}
+
+\setbeamerfont{institute}{size=\scriptsize}
+\setbeamerfont{institute in head/foot}{}
+\setbeamerfont{institute in sidebar}{}
+
+\setbeamerfont{date}{}
+\setbeamerfont{date in head/foot}{}
+\setbeamerfont{date in sidebar}{}
+
+\setbeamerfont{page number in head/foot}{}
+
+\setbeamerfont{part name}{size=\LARGE}
+\setbeamerfont{part title}{size=\LARGE,parent=title}
+
+\setbeamerfont{section name}{size=\Large}
+\setbeamerfont{section title}{size=\Large,parent=title}
+
+\setbeamerfont{section in toc}{parent=structure}
+\setbeamerfont{section in toc shaded}{parent=section in toc}
+\setbeamerfont{section in head/foot}{}
+\setbeamerfont{section in sidebar}{size=\tiny}
+\setbeamerfont{section number projected}{size=\small,parent={section in toc,projected text}}
+
+\setbeamerfont{subsection name}{size=\large}
+\setbeamerfont{subsection title}{size=\large,parent=title}
+
+\setbeamerfont{subsection in toc}{}
+\setbeamerfont{subsection in toc shaded}{parent=subsection in toc}
+\setbeamerfont{subsection in head/foot}{}
+\setbeamerfont{subsection in sidebar}{}
+
+\setbeamerfont{subsubsection in toc}{size=\footnotesize}
+\setbeamerfont{subsubsection in toc shaded}{parent=subsubsection in toc}
+\setbeamerfont{subsubsection in head/foot}{}
+\setbeamerfont{subsubsection in sidebar}{}
+
+\setbeamerfont{headline}{parent={tiny structure}}
+\setbeamerfont{footline}{parent={tiny structure}}
+
+\setbeamerfont{sidebar}{size=\Tiny,parent={tiny structure}}
+\setbeamerfont{sidebar left}{parent=sidebar}
+\setbeamerfont{sidebar right}{parent=sidebar}
+
+\setbeamerfont{frametitle}{parent=structure,size=\Large}
+\setbeamerfont{framesubtitle}{parent=frametitle,size=\footnotesize}
+
+\setbeamerfont{caption}{size=\small}
+\setbeamerfont{caption name}{parent={structure,caption}}
+
+\setbeamerfont{button}{size=\tiny}
+
+\setbeamerfont{block body}{}
+\setbeamerfont{block body alerted}{}
+\setbeamerfont{block body example}{}
+\setbeamerfont{block title}{size=\large,parent={structure,block body}}
+\setbeamerfont{block title alerted}{parent={block title,alerted text}}
+\setbeamerfont{block title example}{parent={block title,example text}}
+
+\setbeamerfont{item}{parent=structure}
+\setbeamerfont{subitem}{parent=item}
+\setbeamerfont{subsubitem}{parent=subitem}
+
+\setbeamerfont{item projected}{size=\tiny,parent={item,projected text}}
+\setbeamerfont{subitem projected}{parent=item projected}
+\setbeamerfont{subsubitem projected}{parent=subitem projected}
+
+\setbeamerfont{itemize item}{parent=item}
+\setbeamerfont{itemize subitem}{parent=subitem}
+\setbeamerfont{itemize subsubitem}{parent=subsubitem}
+
+\setbeamerfont{enumerate item}{parent=item}
+\setbeamerfont{enumerate subitem}{parent=subitem}
+\setbeamerfont{enumerate subsubitem}{parent=subsubitem}
+
+\setbeamerfont{itemize/enumerate body}{}
+\setbeamerfont{itemize/enumerate subbody}{size=\small}
+\setbeamerfont{itemize/enumerate subsubbody}{size=\footnotesize}
+
+\setbeamerfont{description item}{parent=item}
+
+\setbeamerfont{description body}{}
+
+\setbeamerfont{projected text}{parent={tiny structure}}
+
+\setbeamerfont{abstract}{size=\small}
+\setbeamerfont{abstract title}{parent={abstract,structure},size=\normalsize}
+
+\setbeamerfont{verse}{family=\rmfamily,shape=\itshape}
+
+\setbeamerfont{quotation}{shape=\itshape}
+\setbeamerfont{quote}{parent=quotation}
+
+\setbeamerfont{note page}{size=\small}
+\setbeamerfont{note title}{parent=note page}
+\setbeamerfont{note date}{size=\footnotesize}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty
new file mode 100644
index 0000000000..a71e7ce78f
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty
@@ -0,0 +1,12 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>{\beamer@suppressreplacementstrue}
+
diff --git a/macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty
new file mode 100644
index 0000000000..7dedf1e437
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty
@@ -0,0 +1,31 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{stillsansserifmath}[]{\def\mathfamilydefault{\sfdefault}\beamer@sansmathtrue}
+\DeclareOptionBeamer{stillsansserifsmall}[]{\def\beamer@tsfont{\sffamily}}
+\DeclareOptionBeamer{stillsansseriflarge}[]{\def\beamer@sfont{\sffamily}}
+\DeclareOptionBeamer{stillsansseriftext}[]{\def\familydefault{\sfdefault}}
+
+\DeclareOptionBeamer{onlymath}[]{
+ \def\beamer@tsfont{\sffamily}
+ \def\beamer@sfont{\sffamily}
+ \def\familydefault{\sfdefault}
+}
+
+\def\beamer@tsfont{\rmfamily}
+\def\beamer@sfont{\rmfamily}
+\def\familydefault{\rmdefault}
+\def\mathfamilydefault{\rmdefault}
+\beamer@sansmathfalse
+
+\ProcessOptionsBeamer
+
+\setbeamerfont{tiny structure}{family=\beamer@tsfont}
+\setbeamerfont{structure}{family=\beamer@sfont}
diff --git a/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty
new file mode 100644
index 0000000000..145094c925
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty
@@ -0,0 +1,29 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\def\beamer@ftb@str{
+ \setbeamerfont{structure}{series=\bfseries}
+ \setbeamerfont{block title}{size={}}
+}
+\def\beamer@ftb@tstr{\setbeamerfont{tiny structure}{series=\bfseries}}
+
+\DeclareOptionBeamer{onlysmall}{\let\beamer@ftb@str=\relax}
+\DeclareOptionBeamer{onlylarge}{\let\beamer@ftb@tstr=\relax}
+
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\beamer@ftb@str
+\beamer@ftb@tstr
+
+\mode
+<all>
+
diff --git a/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty
new file mode 100644
index 0000000000..c64753f1a9
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty
@@ -0,0 +1,29 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\def\beamer@ftb@str{%
+ \setbeamerfont{structure}{shape=\itshape,family=\rmfamily}
+ \setbeamerfont{block title}{size={}}
+}
+\def\beamer@ftb@tstr{\setbeamerfont{tiny structure}{shape=\itshape,family=\rmfamily}}
+
+\DeclareOptionBeamer{onlysmall}{\let\beamer@ftb@str=\relax}
+\DeclareOptionBeamer{onlylarge}{\let\beamer@ftb@tstr=\relax}
+
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\beamer@ftb@str
+\beamer@ftb@tstr
+
+\mode
+<all>
+
diff --git a/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty
new file mode 100644
index 0000000000..87ac2dd001
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty
@@ -0,0 +1,30 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\def\beamer@ftb@str{
+ \setbeamerfont{structure}{shape=\scshape,family=\rmfamily}
+ \setbeamerfont{section in toc}{size=\large}
+}
+\def\beamer@ftb@tstr{\setbeamerfont{tiny structure}{shape=\scshape,family=\rmfamily}}
+
+\DeclareOptionBeamer{onlysmall}{\let\beamer@ftb@str=\relax}
+\DeclareOptionBeamer{onlylarge}{\let\beamer@ftb@tstr=\relax}
+
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\beamer@ftb@str
+\beamer@ftb@tstr
+
+
+\mode
+<all>
+
diff --git a/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty
new file mode 100644
index 0000000000..822e949979
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty
@@ -0,0 +1,17 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamertemplate{items}[circle]
+\setbeamertemplate{sections/subsections in toc}[circle]
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty
new file mode 100644
index 0000000000..6dd4455ecd
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty
@@ -0,0 +1,450 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+% Some images:
+
+\pgfdeclareimage[width=14pt,height=12pt]{beamericonbook}{beamericonbook}
+\pgfdeclareimage[width=14pt,height=12pt]{beamericonbookshaded}{beamericonbook.20}
+\pgfaliasimage{beamericonbook.!20opaque}{beamericonbookshaded}
+\pgfaliasimage{beamericonbook.!15opaque}{beamericonbookshaded}
+\pgfaliasimage{beamericonbook.!10opaque}{beamericonbookshaded}
+\pgfaliasimage{beamericonbook.!5opaque}{beamericonbookshaded}
+\pgfaliasimage{beamericonbook.!2opaque}{beamericonbookshaded}
+\pgfdeclareimage[width=11pt,height=14pt]{beamericonarticle}{beamericonarticle}
+\pgfdeclareimage[width=11pt,height=14pt]{beamericonarticleshaded}{beamericonarticle.20}
+\pgfaliasimage{beamericonarticle.!20opaque}{beamericonarticleshaded}
+\pgfaliasimage{beamericonarticle.!15opaque}{beamericonarticleshaded}
+\pgfaliasimage{beamericonarticle.!10opaque}{beamericonarticleshaded}
+\pgfaliasimage{beamericonarticle.!5opaque}{beamericonarticleshaded}
+\pgfaliasimage{beamericonarticle.!2opaque}{beamericonarticleshaded}
+\pgfdeclareimage[width=14pt,height=14pt]{beamericononline}{beamericononline}
+\pgfdeclareimage[width=14pt,height=14pt]{beamericononlineshaded}{beamericononline.20}
+\pgfaliasimage{beamericononline.!20opaque}{beamericononlineshaded}
+\pgfaliasimage{beamericononline.!15opaque}{beamericononlineshaded}
+\pgfaliasimage{beamericononline.!10opaque}{beamericononlineshaded}
+\pgfaliasimage{beamericononline.!5opaque}{beamericononlineshaded}
+\pgfaliasimage{beamericononline.!2opaque}{beamericononlineshaded}
+
+% Title page: default
+
+\defbeamertemplate*{title page}{default}[1][]
+{
+ \vbox{}
+ \vfill
+ \begingroup
+ \centering
+ \begin{beamercolorbox}[sep=8pt,center,#1]{title}
+ \usebeamerfont{title}\inserttitle\par%
+ \ifx\insertsubtitle\@empty%
+ \else%
+ \vskip0.25em%
+ {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
+ \fi%
+ \end{beamercolorbox}%
+ \vskip1em\par
+ \begin{beamercolorbox}[sep=8pt,center,#1]{author}
+ \usebeamerfont{author}\insertauthor
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[sep=8pt,center,#1]{institute}
+ \usebeamerfont{institute}\insertinstitute
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[sep=8pt,center,#1]{date}
+ \usebeamerfont{date}\insertdate
+ \end{beamercolorbox}\vskip0.5em
+ {\usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par}
+ \endgroup
+ \vfill
+}
+
+
+% Part page: default
+
+\defbeamertemplate*{part page}{default}[1][]
+{
+ \begingroup
+ \centering
+ {\usebeamerfont{part name}\usebeamercolor[fg]{part name}\partname~\insertromanpartnumber}
+ \vskip1em\par
+ \begin{beamercolorbox}[sep=16pt,center,#1]{part title}
+ \usebeamerfont{part title}\insertpart\par
+ \end{beamercolorbox}
+ \endgroup
+}
+
+
+% Section page: default
+
+\defbeamertemplate*{section page}{default}[1][]
+{
+ \begingroup
+ \centering
+ {\usebeamerfont{section name}\usebeamercolor[fg]{section name}\sectionname~\insertsectionnumber}
+ \vskip1em\par
+ \begin{beamercolorbox}[sep=12pt,center,#1]{section title}
+ \usebeamerfont{section title}\insertsection\par
+ \end{beamercolorbox}
+ \endgroup
+}
+
+% Subection page: default
+
+\defbeamertemplate*{subsection page}{default}[1][]
+{
+ \begingroup
+ \centering
+ {\usebeamerfont{subsection name}\usebeamercolor[fg]{subsection name}\subsectionname~\insertsubsectionnumber}
+ \vskip1em\par
+ \begin{beamercolorbox}[sep=8pt,center,#1]{subsection title}
+ \usebeamerfont{subsection title}\insertsubsection\par
+ \end{beamercolorbox}
+ \endgroup
+}
+
+
+
+
+%
+% Table of contents
+%
+
+\defbeamertemplateparent{sections/subsections in toc}{section in toc,subsection in toc,subsubsection in toc}
+{}
+
+\defbeamertemplateparent{sections/subsections in toc shaded}{section in toc shaded,subsection in toc shaded,subsubsection in toc shaded}[1][20]
+{[#1]}
+
+
+
+
+% (sub-)section in toc: default
+
+\defbeamertemplate*{section in toc}{default}
+{\inserttocsection\par}
+
+\defbeamertemplate*{subsection in toc}{default}
+{\leavevmode\leftskip=1.5em\inserttocsubsection\par}
+
+\defbeamertemplate*{subsubsection in toc}{default}
+{\leavevmode\normalsize\usebeamerfont{subsection in toc}\leftskip=3em%
+ \usebeamerfont{subsubsection in toc}\inserttocsubsubsection\par}
+
+
+% (sub-)section in toc shaded, default
+
+\defbeamertemplate*{section in toc shaded}{default}[1][20]
+{\begin{colormixin}{#1!parent.bg}\usebeamertemplate{section in toc}\end{colormixin}\unskip}
+
+\defbeamertemplate*{subsection in toc shaded}{default}[1][20]
+{\begin{colormixin}{#1!parent.bg}\usebeamertemplate{subsection in toc}\end{colormixin}\unskip}
+
+\defbeamertemplate*{subsubsection in toc shaded}{default}[1][20]
+{\begin{colormixin}{#1!parent.bg}\usebeamertemplate{subsubsection in toc}\end{colormixin}\unskip}
+
+
+
+
+
+%
+% Item
+%
+
+\defbeamertemplateparent{items}{itemize items,enumerate items}
+{}
+
+
+% Itemize items
+
+\defbeamertemplateparent{itemize items}{itemize item,itemize subitem,itemize subsubitem}
+{}
+
+
+% Itemize items, default
+
+\defbeamertemplate*{itemize item}{default}{\usebeamerfont*{itemize item}\raise1.25pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
+\defbeamertemplate*{itemize subitem}{default}{\usebeamerfont*{itemize subitem}\raise1.5pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
+\defbeamertemplate*{itemize subsubitem}{default}{\usebeamerfont*{itemize subsubitem}\raise1.5pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
+
+
+% Enumerate items, default
+
+\defbeamertemplateparent{enumerate items}{enumerate item,enumerate subitem,enumerate subsubitem,enumerate mini template}
+{}
+
+\defbeamertemplate*{enumerate item}{default}{\insertenumlabel.}
+\defbeamertemplate*{enumerate subitem}{default}{\insertenumlabel.\insertsubenumlabel}
+\defbeamertemplate*{enumerate subsubitem}{default}{\insertenumlabel.\insertsubenumlabel.\insertsubsubenumlabel}
+\defbeamertemplate*{enumerate mini template}{default}{\insertenumlabel}
+
+
+% Description item, default
+
+\defbeamertemplate*{description item}{default}{\insertdescriptionitem}
+
+
+% Itemize/Enumerate body
+
+\defbeamertemplate*{itemize/enumerate body begin}{default}{}
+\defbeamertemplate*{itemize/enumerate body end}{default}{}
+
+\defbeamertemplate*{itemize/enumerate subbody begin}{default}{}
+\defbeamertemplate*{itemize/enumerate subbody end}{default}{}
+
+\defbeamertemplate*{itemize/enumerate subsubbody begin}{default}{}
+\defbeamertemplate*{itemize/enumerate subsubbody end}{default}{}
+
+% Description body
+
+\defbeamertemplate*{description body begin}{default}{}
+\defbeamertemplate*{description body end}{default}{}
+
+
+% Alerted text
+
+\defbeamertemplate*{alerted text begin}{default}{\setbeamercolor{local structure}{parent=alerted text}}
+
+
+
+% Structured text
+
+% empyt defaults
+
+
+% Bibliography items
+
+\defbeamertemplate*{bibliography item}{default}
+{\lower3.5pt\hbox{\hskip2pt\pgfuseimage{beamericonarticle}\hskip1pt}}
+
+\defbeamertemplate*{bibliography entry article}{default}{}
+\defbeamertemplate*{bibliography entry title}{default}{\par}
+\defbeamertemplate*{bibliography entry location}{default}{\par}
+\defbeamertemplate*{bibliography entry note}{default}{\par}
+
+
+% Buttons
+
+\newdimen\beamer@dima%
+\newdimen\beamer@dimb%
+
+\defbeamertemplate*{button}{default}
+{%
+ \setbox\beamer@tempbox=\hbox{{\insertbuttontext}}%
+ \ht\beamer@tempbox=6pt%
+ \dp\beamer@tempbox=0pt%
+ \setbox\beamer@tempbox=\vbox{\box\beamer@tempbox\vskip2pt}%
+ \beamer@tempdim=\wd\beamer@tempbox%
+ \beamer@dima=\beamer@tempdim\advance\beamer@dima by2.2pt
+ \beamer@dimb=\beamer@tempdim\advance\beamer@dimb by4pt
+ \begin{pgfpicture}{-4pt}{0pt}{\the\beamer@tempdim}{8pt}
+ \color{bg}
+ \pgfsetlinewidth{0.8pt}
+ \pgfpathqmoveto{0pt}{0pt}
+ \pgfpathqcurveto{-2.2pt}{0pt}{-4pt}{1.8pt}{-4pt}{4pt}
+ \pgfpathqcurveto{-4pt}{6.2pt}{-2.2pt}{8pt}{0pt}{8pt}
+ \pgfpathlineto{\pgfpoint{\the\beamer@tempdim}{8pt}}
+ \pgfpathcurveto%
+ {\pgfpoint{\the\beamer@dima}{8pt}}%
+ {\pgfpoint{\the\beamer@dimb}{6.2pt}}%
+ {\pgfpoint{\the\beamer@dimb}{4pt}}
+ \pgfpathcurveto%
+ {\pgfpoint{\the\beamer@dimb}{1.8pt}}%
+ {\pgfpoint{\the\beamer@dima}{0pt}}%
+ {\pgfpoint{\the\beamer@tempdim}{0pt}}
+ \pgfpathclose
+ \pgfusepathqfill
+ \colorlet{bg}{parent.bg}
+ \usebeamercolor[fg]{button border}
+ \pgfpathqmoveto{0pt}{0pt}
+ \pgfpathqcurveto{-2.2pt}{0pt}{-4pt}{1.8pt}{-4pt}{4pt}
+ \pgfpathqcurveto{-4pt}{6.2pt}{-2.2pt}{8pt}{0pt}{8pt}
+ \pgfpathlineto{\pgfpoint{\the\beamer@tempdim}{8pt}}
+ \pgfpathcurveto%
+ {\pgfpoint{\the\beamer@dima}{8pt}}%
+ {\pgfpoint{\the\beamer@dimb}{6.2pt}}%
+ {\pgfpoint{\the\beamer@dimb}{4pt}}
+ \pgfpathcurveto%
+ {\pgfpoint{\the\beamer@dimb}{1.8pt}}%
+ {\pgfpoint{\the\beamer@dima}{0pt}}%
+ {\pgfpoint{\the\beamer@tempdim}{0pt}}
+ \pgfpathclose
+ \pgfusepathqstroke
+ \end{pgfpicture}%
+ \hskip-\beamer@tempdim%
+ \box\beamer@tempbox%
+ \kern4pt%
+}
+
+
+% Abstract
+
+\defbeamertemplate*{abstract title}{default}
+{%
+ \begin{center}%
+ \abstractname
+ \end{center}%
+}
+
+\defbeamertemplate*{abstract begin}{default}
+{\beamercolorbox[vmode]{abstract}\leftskip2em\rightskip2em plus 1fill\usebeamerfont*{abstract}}
+
+\defbeamertemplate*{abstract end}{default}
+{\medskip\endbeamercolorbox}
+
+
+% Verse
+
+\defbeamertemplate*{verse begin}{default}
+{\beamercolorbox[vmode]{verse}}
+
+\defbeamertemplate*{verse end}{default}
+{\endbeamercolorbox}
+
+
+% Quotation
+
+\defbeamertemplate*{quotation begin}{default}
+{\beamercolorbox[vmode]{quotation}}
+
+\defbeamertemplate*{quotation end}{default}
+{\endbeamercolorbox}
+
+
+% Quote
+
+\defbeamertemplate*{quote begin}{default}
+{\beamercolorbox[vmode]{quote}}
+
+\defbeamertemplate*{quote end}{default}
+{\endbeamercolorbox}
+
+
+% Footnotes
+
+\defbeamertemplate*{footnote}{default}
+{
+ \parindent 1em\noindent%
+ \raggedright
+ \hbox to 1.8em{\hfil\insertfootnotemark}\insertfootnotetext\par%
+}
+
+
+% Captions
+
+\defbeamertemplate*{caption}{default}
+{%
+ \raggedright
+ {%
+ \usebeamercolor[fg]{caption name}%
+ \usebeamerfont*{caption name}%
+ \insertcaptionname
+ \usebeamertemplate{caption label separator}%
+ }%
+ \insertcaption\par
+}
+\defbeamertemplate*{caption label separator}{default}{:\ }
+
+% Blocks
+
+\defbeamertemplateparent{blocks}{block begin,block end,%
+ block alerted begin,block alerted end,%
+ block example begin,block example end}
+{}
+
+\defbeamertemplate*{block begin}{default}
+{
+ \par\vskip\medskipamount%
+ \begin{beamercolorbox}[colsep*=.75ex]{block title}
+ \usebeamerfont*{block title}\insertblocktitle%
+ \end{beamercolorbox}%
+ {\parskip0pt\par}%
+ \ifbeamercolorempty[bg]{block title}
+ {}
+ {\ifbeamercolorempty[bg]{block body}{}{\nointerlineskip\vskip-0.5pt}}%
+ \usebeamerfont{block body}%
+ \begin{beamercolorbox}[colsep*=.75ex,vmode]{block body}%
+ \ifbeamercolorempty[bg]{block body}{\vskip-.25ex}{\vskip-.75ex}\vbox{}%
+}
+\defbeamertemplate*{block end}{default}
+{\end{beamercolorbox}\vskip\smallskipamount}
+
+\defbeamertemplate*{block alerted begin}{default}
+{
+ \par\vskip\medskipamount%
+ \begin{beamercolorbox}[colsep*=.75ex]{block title alerted}
+ \usebeamerfont*{block title alerted}\insertblocktitle%
+ \end{beamercolorbox}%
+ {\parskip0pt\par}%
+ \ifbeamercolorempty[bg]{block title alerted}
+ {}
+ {\ifbeamercolorempty[bg]{block body alerted}{}{\nointerlineskip\vskip-0.5pt}}%
+ \usebeamerfont{block body alerted}%
+ \begin{beamercolorbox}[colsep*=.75ex,vmode]{block body alerted}%
+ \ifbeamercolorempty[bg]{block body alerted}{\vskip-.25ex}{\vskip-.75ex}\vbox{}%
+}
+
+\defbeamertemplate*{block alerted end}{default}
+{\end{beamercolorbox}\vskip\smallskipamount}
+
+
+\defbeamertemplate*{block example begin}{default}
+{
+ \par\vskip\medskipamount%
+ \begin{beamercolorbox}[colsep*=.75ex]{block title example}
+ \usebeamerfont*{block title example}\insertblocktitle%
+ \end{beamercolorbox}%
+ {\parskip0pt\par}%
+ \ifbeamercolorempty[bg]{block title example}
+ {}
+ {\ifbeamercolorempty[bg]{block body example}{}{\nointerlineskip\vskip-0.5pt}}%
+ \usebeamerfont{block body example}%
+ \begin{beamercolorbox}[colsep*=.75ex,vmode]{block body example}%
+ \ifbeamercolorempty[bg]{block body example}{\vskip-.25ex}{\vskip-.75ex}\vbox{}%
+}
+\defbeamertemplate*{block example end}{default}
+{\end{beamercolorbox}\vskip\smallskipamount}
+
+
+
+
+% Theorems
+
+\defbeamertemplateparent{theorems}{theorem begin,theorem end}
+{}
+
+\defbeamertemplate*{theorem begin}{default}
+{%
+ \begin{\inserttheoremblockenv}
+ {%
+ \inserttheoremname
+ \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi%
+ }%
+}
+
+\defbeamertemplate*{theorem end}{default}
+{\end{\inserttheoremblockenv}}
+
+
+% Proofs
+\defbeamertemplate*{proof begin}{default}
+{\begin{block}{\insertproofname}}
+
+\defbeamertemplate*{proof end}{default}
+{\end{block}}
+
+\defbeamertemplate*{qed symbol}{default}
+{\openbox}
+
+
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty
new file mode 100644
index 0000000000..534d3cd9d7
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty
@@ -0,0 +1,129 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{sidebar}{parent=block title}
+\setbeamercolor{local structure}{parent=sidebar}
+\setbeamercolor{section in toc}{parent=sidebar}
+
+\setbeamercolor{button}{use=structure,bg=structure.fg!50!bg,fg=white}
+
+\setbeamercolor*{title}{parent=structure}
+
+\setbeamercolor{block title alerted}{use=sidebar,fg=sidebar.fg!25!red}
+\setbeamercolor{block title example}{use=sidebar,fg=sidebar.fg!50!green}
+
+\setbeamersize{text margin left=1.5ex}
+\setbeamersize{text margin right=1.5ex}
+\setbeamersize{sidebar width left=.25\paperwidth}
+\setlength\leftmargini{0pt}
+\setlength\leftmarginii{1.5ex}
+\setlength\leftmarginiii{1.5ex}
+
+
+\newcommand\beamer@putleft[2]{%
+ \hbox to 0pt{\hss\vtop{%
+ \normalsize%
+ \@tempdima=\beamer@leftsidebar%
+ \advance\@tempdima by-3ex%
+ \hsize=\@tempdima%
+ \leftskip=0pt plus 1fill%
+ \rightskip=0pt\relax%
+ \leavevmode#1}\kern#2}%
+}
+\newenvironment{beamer@putright}{\vtop\bgroup\leavevmode}{\egroup}
+
+\defbeamertemplate*{section in toc}{inmargin}
+{\beamer@putleft{\inserttocsection\strut}{2.5ex}}
+
+\defbeamertemplate*{subsection in toc}{inmargin}
+{\leavevmode%
+ \inserttocsubsection\par\vskip.5ex}
+
+\defbeamertemplate*{subsubsection in toc}{inmargin}
+{\leavevmode%
+ \inserttocsubsubsection\par\vskip.5ex}
+
+
+\def\inserttitleindicator{}
+\def\insertauthorindicator{Who?}
+\def\insertinstituteindicator{From?}
+\def\insertdateindicator{When?}
+
+\defbeamertemplate*{title page}{inmargin}
+{
+ \begin{block}{\inserttitleindicator}
+ \usebeamercolor[fg]{title}\usebeamerfont{title}\inserttitle\par
+ \usebeamercolor[fg]{subtitle}\usebeamerfont{subtitle}\insertsubtitle
+ \end{block}
+ \vfill
+ \ifx\insertauthor\@empty
+ \else
+ \begin{block}{\insertauthorindicator}
+ \usebeamercolor[fg]{author}\usebeamerfont{author}\insertauthor\par
+ \end{block}
+ \fi
+ \ifx\insertinstitute\@empty
+ \else
+ \begin{block}{\insertinstituteindicator}
+ \usebeamercolor[fg]{institute}\usebeamerfont{institute}\insertinstitute\par
+ \end{block}
+ \fi
+ \ifx\insertdate\@empty
+ \else
+ \begin{block}{\insertdateindicator}
+ \usebeamercolor[fg]{date}\usebeamerfont{date}\insertdate\par
+ \end{block}
+ \fi
+}
+
+\defbeamertemplate*{block begin}{inmargin}
+{
+ \par\vskip\medskipamount%
+ \leavevmode%
+ \beamer@putleft{\normalfont{\usebeamercolor[fg]{block title}\usebeamerfont*{block title}\insertblocktitle}}{2.5ex}%
+ \beamer@putright\usebeamercolor[fg]{block body}%
+}
+\defbeamertemplate*{block end}{inmargin}
+{\endbeamer@putright\vskip\smallskipamount}
+
+\defbeamertemplate*{block alerted begin}{inmargin}
+{
+ \par\vskip\medskipamount%
+ \leavevmode%
+ \beamer@putleft{\normalfont{\usebeamercolor[fg]{block title alerted}\usebeamerfont*{block title alerted}\insertblocktitle}}{2.5ex}%
+ \beamer@putright\usebeamercolor[fg]{block body alerted}%
+}
+\defbeamertemplate*{block alerted end}{inmargin}
+{\endbeamer@putright\vskip\smallskipamount}
+
+\defbeamertemplate*{block example begin}{inmargin}
+{
+ \par\vskip\medskipamount%
+ \leavevmode%
+ \beamer@putleft{\normalfont{\usebeamercolor[fg]{block title example}\usebeamerfont*{block title example}\insertblocktitle}}{2.5ex}%
+ \beamer@putright\usebeamercolor[fg]{block body example}%
+}
+\defbeamertemplate*{block example end}{inmargin}
+{\endbeamer@putright\vskip\smallskipamount}
+
+\AtBeginDocument
+{
+ \addtobeamertemplate{enumerate item}{\llap\bgroup}{\normalsize\kern1.5ex\egroup}
+ \addtobeamertemplate{enumerate subitem}{\llap\bgroup}{\normalsize\kern1.5ex\kern\leftmarginii\egroup}
+ \addtobeamertemplate{enumerate subsubitem}{\llap\bgroup}{\normalsize\kern1.5ex\kern\leftmarginii\kern\leftmarginiii\egroup}
+ \addtobeamertemplate{itemize item}{\llap\bgroup}{\normalsize\kern1.5ex\egroup}
+ \addtobeamertemplate{itemize subitem}{\llap\bgroup}{\normalsize\kern1.125ex\kern\leftmarginii\egroup}
+ \addtobeamertemplate{itemize subsubitem}{\llap\bgroup}{\small\kern0.75ex\kern\leftmarginii\kern\leftmarginiii\egroup}
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty
new file mode 100644
index 0000000000..d0229307a8
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty
@@ -0,0 +1,16 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamertemplate{sections/subsections in toc}[square]
+\setbeamertemplate{items}[square]
+
+\mode<all>
diff --git a/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty
new file mode 100644
index 0000000000..6d742fc12e
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty
@@ -0,0 +1,25 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{shadow}[true]{\def\beamer@themerounded@shadow{#1}}
+\ExecuteOptionsBeamer{shadow=false}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\setbeamertemplate{blocks}[rounded][shadow=\beamer@themerounded@shadow]
+\setbeamertemplate{items}[ball]
+\setbeamertemplate{sections/subsections in toc}[ball]
+\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true,shadow=\beamer@themerounded@shadow]
+\setbeamertemplate{part page}[default][colsep=-4bp,rounded=true,shadow=\beamer@themerounded@shadow]
+\setbeamertemplate{section page}[default][colsep=-4bp,rounded=true,shadow=\beamer@themerounded@shadow]
+\setbeamertemplate{subsection page}[default][colsep=-4bp,rounded=true,shadow=\beamer@themerounded@shadow]
+
+\mode<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
new file mode 100644
index 0000000000..cd7537d36c
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
@@ -0,0 +1,237 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+
+% Mini frames
+
+\defbeamertemplateparent{mini frames}
+ {mini frame,mini frame in current section,mini frame in current subsection}
+{}
+
+\defbeamertemplate*{mini frame}{default}
+{%
+ \begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
+ \pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
+ \pgfusepath{fill,stroke}
+ \end{pgfpicture}%
+}
+[action]
+{
+ \setbeamersize{mini frame size=.14cm,mini frame offset=.03cm}
+}
+
+\defbeamertemplate*{mini frame in current section}{default}
+{%
+ \begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
+ \pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
+ \pgfusepath{stroke}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate*{mini frame in current subsection}{default}
+{%
+ \begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
+ \pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
+ \pgfusepath{stroke}
+ \end{pgfpicture}%
+}
+
+\defbeamertemplate*{mini frame in other section}{default}[1][50]
+{\color{fg!#1!bg}\usebeamertemplate{mini frame in current section}}
+\defbeamertemplate*{mini frame in other subsection}{default}[1][50]
+{\color{fg!#1!bg}\usebeamertemplate{mini frame in current subsection}}
+
+
+
+
+% Navigation symbols
+
+\defbeamertemplate*{navigation symbols}{default}
+{%
+ \hbox{%
+ \hbox{\insertslidenavigationsymbol}
+ \hbox{\insertframenavigationsymbol}
+ \hbox{\insertsubsectionnavigationsymbol}
+ \hbox{\insertsectionnavigationsymbol}
+ \hbox{\insertdocnavigationsymbol}
+ \hbox{\insertbackfindforwardnavigationsymbol}%
+ }%
+}
+
+% No navigation symbols in handout or trans mode:
+\only<handout| trans>{\setbeamertemplate{navigation symbols}{}}
+
+
+
+% Section and subsections in head/foot
+
+\defbeamertemplate*{section in head/foot}{default}
+{\insertsectionhead}
+
+\defbeamertemplate*{section in head/foot shaded}{default}[1][50]
+{\color{fg!#1!bg}\usebeamertemplate{section in head/foot}}
+
+\defbeamertemplate*{subsection in head/foot}{default}
+{\insertsubsectionhead}
+
+\defbeamertemplate*{subsection in head/foot shaded}{default}[1][50]
+{\color{fg!#1!bg}\usebeamertemplate{subsection in head/foot}}
+
+\defbeamertemplate*{subsubsection in head/foot}{default}
+{\insertsubsubsectionhead}
+
+\defbeamertemplate*{subsubsection in head/foot shaded}{default}[1][50]
+{\color{fg!#1!bg}\usebeamertemplate{subsubsection in head/foot}}
+
+
+% Page numbers in head/foot
+\defbeamertemplate*{page number in head/foot}{default}
+{}
+
+% Headline and footline
+
+\defbeamertemplate*{headline}{default}
+{}
+
+\defbeamertemplate*{footline}{default}
+{}
+
+
+% background
+
+\defbeamertemplate*{background}{default}
+{}
+
+\defbeamertemplate*{background canvas}{default}
+{%
+ \ifbeamercolorempty[bg]{background canvas}{}{\color{bg}\vrule width\paperwidth height\paperheight}%
+}
+
+
+% Sidebar
+
+\defbeamertemplate*{sidebar left}{default}
+{}
+
+\defbeamertemplate*{sidebar right}{default}
+{
+ \vfill%
+ \llap{\insertlogo\hskip0.1cm}%
+ \vskip2pt%
+ \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}%
+ \vskip2pt%
+}
+
+\defbeamertemplate*{sidebar canvas left}{default}
+{%
+ \ifbeamercolorempty[bg]{sidebar left}{}
+ {\color{bg}\vrule height\sidebarheight width\beamer@leftsidebar}%
+}
+
+\defbeamertemplate*{sidebar canvas right}{default}
+{%
+ \ifbeamercolorempty[bg]{sidebar right}{}
+ {\color{bg}\vrule height\sidebarheight width\beamer@rightsidebar}%
+}
+
+
+
+% Frame title: default
+
+\defbeamertemplate*{frametitle}{default}[1][left]
+{%
+ \ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}%
+ \@tempdima=\textwidth%
+ \advance\@tempdima by\beamer@leftmargin%
+ \advance\@tempdima by\beamer@rightmargin%
+ \begin{beamercolorbox}[sep=0.3cm,#1,wd=\the\@tempdima]{frametitle}
+ \usebeamerfont{frametitle}%
+ \vbox{}\vskip-1ex%
+ \if@tempswa\else\csname beamer@fte#1\endcsname\fi%
+ \strut\insertframetitle\par%
+ {%
+ \ifx\insertframesubtitle\@empty%
+ \else%
+ {\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\strut\insertframesubtitle\par}%
+ \fi
+ }%
+ \vskip-1ex%
+ \if@tempswa\else\vskip-.3cm\fi% set inside beamercolorbox... evil here...
+ \end{beamercolorbox}%
+}
+
+\def\beamer@fteright{\vskip0.35cm\advance\leftskip by 1.7cm\advance\rightskip by1.7cm}
+
+
+% Frame title continuations, default
+
+\defbeamertemplate*{frametitle continuation}{default}{\insertcontinuationcountroman}
+
+
+
+% Notes
+
+\defbeamertemplate*{note page}{default}
+{%
+ {%
+ \scriptsize
+ \usebeamerfont{note title}\usebeamercolor[fg]{note title}%
+ \ifbeamercolorempty[bg]{note title}{}{%
+ \insertvrule{.25\paperheight}{note title.bg}%
+ \vskip-.25\paperheight%
+ \nointerlineskip%
+ }%
+ \vbox{
+ \hfill\insertslideintonotes{0.25}\hskip-\Gm@rmargin\hskip0pt%
+ \vskip-0.25\paperheight%
+ \nointerlineskip
+ \begin{pgfpicture}{0cm}{0cm}{0cm}{0cm}
+ \begin{pgflowlevelscope}{\pgftransformrotate{90}}
+ {\pgftransformshift{\pgfpoint{-2cm}{0.2cm}}%
+ \pgftext[base,left]{\usebeamerfont{note date}\usebeamercolor[fg]{note date}\the\year-\ifnum\month<10\relax0\fi\the\month-\ifnum\day<10\relax0\fi\the\day}}
+ \end{pgflowlevelscope}
+ \end{pgfpicture}}
+ \nointerlineskip
+ \vbox to .25\paperheight{\vskip0.5em
+ \hbox{\insertshorttitle[width=0.75\textwidth]}%
+ \setbox\beamer@tempbox=\hbox{\insertsection}%
+ \hbox{\ifdim\wd\beamer@tempbox>1pt{\hskip4pt\raise3pt\hbox{\vrule
+ width0.4pt height7pt\vrule width 9pt
+ height0.4pt}}\hskip1pt\hbox{\begin{minipage}[t]{0.71\textwidth}\def\breakhere{}\insertsection\end{minipage}}\fi%
+ }%
+ \setbox\beamer@tempbox=\hbox{\insertsubsection}%
+ \hbox{\ifdim\wd\beamer@tempbox>1pt{\hskip17.4pt\raise3pt\hbox{\vrule
+ width0.4pt height7pt\vrule width 9pt
+ height0.4pt}}\hskip1pt\hbox{\begin{minipage}[t]{0.71\textwidth}\def\breakhere{}\insertsubsection\end{minipage}}\fi%
+ }%
+ \setbox\beamer@tempbox=\hbox{\insertshortframetitle}%
+ \hbox{\ifdim\wd\beamer@tempbox>1pt{\hskip30.8pt\raise3pt\hbox{\vrule
+ width0.4pt height7pt\vrule width 9pt
+ height0.4pt}}\hskip1pt\hbox{\insertshortframetitle[width=0.67\textwidth]}\fi%
+ }%
+ \vfil}%
+ }%
+ \ifbeamercolorempty[bg]{note page}{}{%
+ \nointerlineskip%
+ \insertvrule{.75\paperheight}{note page.bg}%
+ \vskip-.75\paperheight%
+ }%
+ \vskip.25em
+ \nointerlineskip
+ \insertnote
+}
+
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty
new file mode 100644
index 0000000000..e7bae70936
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty
@@ -0,0 +1,56 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor*{author in head/foot}{parent=palette tertiary}
+\setbeamercolor*{title in head/foot}{parent=palette secondary}
+\setbeamercolor*{date in head/foot}{parent=palette primary}
+
+\setbeamercolor*{section in head/foot}{parent=palette tertiary}
+\setbeamercolor*{subsection in head/foot}{parent=palette primary}
+
+\setbeamertemplate{page number in head/foot}[totalframenumber]%
+
+\defbeamertemplate*{footline}{infolines theme}
+{%
+ \leavevmode%
+ \hbox{%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
+ \usebeamerfont{author in head/foot}\insertshortauthor\expandafter\ifblank\expandafter{\beamer@shortinstitute}{}{~~(\insertshortinstitute)}
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
+ \usebeamerfont{title in head/foot}\insertshorttitle
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right]{date in head/foot}%
+ \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
+ \usebeamercolor[fg]{page number in head/foot}\usebeamerfont{page number in head/foot}\usebeamertemplate{page number in head/foot}\hspace*{2ex}
+ \end{beamercolorbox}}%
+ \vskip0pt%
+}
+
+\defbeamertemplate*{headline}{infolines theme}
+{%
+ \leavevmode%
+ \hbox{%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.65ex,dp=1.5ex,right]{section in head/foot}%
+ \usebeamerfont{section in head/foot}\insertsectionhead\hspace*{2ex}
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.65ex,dp=1.5ex,left]{subsection in head/foot}%
+ \usebeamerfont{subsection in head/foot}\hspace*{2ex}\insertsubsectionhead
+ \end{beamercolorbox}}%
+ \vskip0pt%
+}
+
+\setbeamersize{text margin left=1em,text margin right=1em}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty
new file mode 100644
index 0000000000..b4a9717a5b
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty
@@ -0,0 +1,123 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\setbeamercolor{section in head/foot}{parent=palette tertiary}
+\setbeamercolor{subsection in head/foot}{parent=palette secondary}
+\setbeamercolor{author in head/foot}{parent=subsection in head/foot}
+\setbeamercolor{title in head/foot}{parent=section in head/foot}
+
+
+\def\beamer@theme@footline@empty{}
+\def\beamer@theme@footline@authorinstitute{
+ \defbeamertemplate*{footline}{miniframes theme}
+ {%
+ \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{author in head/foot}%
+ \leavevmode{\usebeamerfont{author in head/foot}\insertshortauthor}%
+ \hfill%
+ {\usebeamerfont{institute in head/foot}\usebeamercolor[fg]{institute in head/foot}\insertshortinstitute%
+ \ifbeamertemplateempty{page number in head/foot}{}{\qquad}%
+ \usebeamercolor[fg]{page number in head/foot}\usebeamerfont{page number in head/foot}\usebeamertemplate{page number in head/foot}%
+ }%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot}
+ \end{beamercolorbox}
+ }
+}
+\def\beamer@theme@footline@authortitle{
+ \defbeamertemplate*{footline}{miniframes theme}
+ {%
+ \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}%
+ \leavevmode{\usebeamerfont{title in head/foot}\insertshorttitle}%
+ \hfill%
+ {\usebeamerfont{author in head/foot}\usebeamercolor[fg]{author in head/foot}\insertshortauthor%
+ \ifbeamertemplateempty{page number in head/foot}{}{\qquad}%
+ \usebeamercolor[fg]{page number in head/foot}\usebeamerfont{page number in head/foot}\usebeamertemplate{page number in head/foot}%
+ }%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot}
+ \end{beamercolorbox}
+ }
+}
+\def\beamer@theme@footline@institutetitle{
+ \defbeamertemplate*{footline}{miniframes theme}
+ {%
+ \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}%
+ \leavevmode{\usebeamerfont{title in head/foot}\insertshorttitle}%
+ \hfill%
+ {\usebeamerfont{institute in head/foot}\usebeamercolor[fg]{institute in head/foot}\insertshortinstitute%
+ \ifbeamertemplateempty{page number in head/foot}{}{\qquad}%
+ \usebeamercolor[fg]{page number in head/foot}\usebeamerfont{page number in head/foot}\usebeamertemplate{page number in head/foot}%
+ }%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot}
+ \end{beamercolorbox}
+ }
+}
+\def\beamer@theme@footline@authorinstitutetitle{
+ \defbeamertemplate*{footline}{miniframes theme}
+ {%
+ \begin{beamercolorbox}[colsep=1.5pt]{upper separation line foot}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{author in head/foot}%
+ \leavevmode{\usebeamerfont{author in head/foot}\insertshortauthor}%
+ \hfill%
+ {\usebeamerfont{institute in head/foot}\usebeamercolor[fg]{institute in head/foot}\insertshortinstitute}%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}%
+ {\usebeamerfont{title in head/foot}\insertshorttitle}\hfill{\usebeamercolor[fg]{page number in head/foot}\usebeamerfont{page number in head/foot}\usebeamertemplate{page number in head/foot}}%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot}
+ \end{beamercolorbox}
+ }
+}
+
+\newif\ifbeamer@theme@subsection
+\beamer@theme@subsectiontrue
+
+\DeclareOptionBeamer{footline}{\csname beamer@theme@footline@#1\endcsname}
+\DeclareOptionBeamer{subsection}[true]{\csname beamer@theme@subsection#1\endcsname}
+\ProcessOptionsBeamer
+
+
+\mode<presentation>
+
+ % Head
+\defbeamertemplate*{headline}{miniframes theme}
+{%
+ \begin{beamercolorbox}[colsep=1.5pt]{upper separation line head}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}{section in head/foot}
+ \vskip2pt\insertnavigation{\paperwidth}\vskip2pt
+ \end{beamercolorbox}%
+ \ifbeamer@theme@subsection%
+ \begin{beamercolorbox}[colsep=1.5pt]{middle separation line head}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{subsection in head/foot}
+ \usebeamerfont{subsection in head/foot}\insertsubsectionhead
+ \end{beamercolorbox}%
+ \fi%
+ \begin{beamercolorbox}[colsep=1.5pt]{lower separation line head}
+ \end{beamercolorbox}
+}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
new file mode 100644
index 0000000000..f76955cbf9
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
@@ -0,0 +1,83 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{split}
+
+
+\setbeamercolor{frametitle}{parent=subsection in head/foot}
+\setbeamercolor{frametitle right}{parent=section in head/foot}
+
+
+\pgfdeclarehorizontalshading[frametitle.bg,frametitle right.bg]{beamer@frametitleshade}{\paperheight}{%
+ color(0pt)=(frametitle.bg);
+ color(\paperwidth)=(frametitle right.bg)}
+
+\AtBeginDocument{
+ \pgfdeclareverticalshading{beamer@topshade}{\paperwidth}{%
+ color(0pt)=(bg);
+ color(4pt)=(black!50!bg)}
+}
+
+\addtobeamertemplate{headline}
+{}
+{%
+ \vskip-0.2pt
+ \pgfuseshading{beamer@topshade}
+ \vskip-2pt
+}
+
+
+\defbeamertemplate*{frametitle}{shadow theme}
+{%
+ \nointerlineskip%
+ \vskip-2pt%
+ \hbox{\leavevmode
+ \advance\beamer@leftmargin by -12bp%
+ \advance\beamer@rightmargin by -12bp%
+ \beamer@tempdim=\textwidth%
+ \advance\beamer@tempdim by \beamer@leftmargin%
+ \advance\beamer@tempdim by \beamer@rightmargin%
+ \hskip-\Gm@lmargin\hbox{%
+ \setbox\beamer@tempbox=\hbox{\begin{minipage}[b]{\paperwidth}%
+ \vbox{}\vskip-.75ex%
+ \leftskip0.3cm%
+ \rightskip0.3cm plus1fil\leavevmode
+ \usebeamercolor[fg]{frametitle}\usebeamerfont{frametitle}\strut\insertframetitle\par%
+ \ifx\insertframesubtitle\@empty\else%
+ {\usebeamerfont*{framesubtitle}{\usebeamercolor[fg]{framesubtitle}\insertframesubtitle}\strut\par}%
+ \fi%
+ \nointerlineskip
+ \vbox{}%
+ \end{minipage}}%
+ \beamer@tempdim=\ht\beamer@tempbox%
+ \advance\beamer@tempdim by 2pt%
+ \begin{pgfpicture}{0pt}{0pt}{\paperwidth}{\beamer@tempdim}
+ \usebeamercolor{frametitle right}
+ \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{\paperwidth}{\beamer@tempdim}}
+ \pgfusepath{clip}
+ \pgftext[left,base]{\pgfuseshading{beamer@frametitleshade}}
+ \end{pgfpicture}
+ \hskip-\paperwidth%
+ \box\beamer@tempbox%
+ }%
+ \hskip-\Gm@rmargin%
+ }%
+ \nointerlineskip
+ \vskip-0.2pt
+ \hbox to\textwidth{\hskip-\Gm@lmargin\pgfuseshading{beamer@topshade}\hskip-\Gm@rmargin}
+ \vskip-2pt
+}
+
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty
new file mode 100644
index 0000000000..001c21be9a
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty
@@ -0,0 +1,176 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\newdimen\beamer@sidebarwidth
+\newdimen\beamer@headheight
+\usebeamerfont{frametitle}
+\beamer@sidebarwidth=2.5\baselineskip
+\beamer@headheight=2.5\baselineskip
+\reset@font
+
+\def\beamer@lefttext{left}
+
+\DeclareOptionBeamer{hideothersubsections}[]{\beamer@nav@subsectionstyle{show/show/hide}}
+\DeclareOptionBeamer{hideallsubsections}[]{\beamer@nav@subsectionstyle{hide}}
+
+\DeclareOptionBeamer{width}{\beamer@sidebarwidth=#1}
+\DeclareOptionBeamer{height}{\beamer@headheight=#1}
+\DeclareOptionBeamer{left}{\def\beamer@sidebarside{left}}
+\DeclareOptionBeamer{right}{\def\beamer@sidebarside{right}}
+\ExecuteOptionsBeamer{left}
+\ProcessOptionsBeamer
+
+
+\mode<presentation>
+
+\ifdim\beamer@headheight>0pt
+% if head height is 0pt, use default frame title
+
+ \setbeamercolor*{frametitle}{parent=sidebar}
+
+ \defbeamertemplate*{frametitle}{sidebar theme}
+ {%
+ \nointerlineskip%
+ \ifbeamer@plainframe%
+ \hbox{\usebeamercolor[bg]{frametitle}%
+ \@tempdima\paperwidth\advance\@tempdima-\beamer@sidebarwidth
+ \hskip-\beamer@leftmargin\vrule height\beamer@headheight width\@tempdima\hskip-\beamer@rightmargin}%
+ \nointerlineskip%
+ \fi%
+ \vskip-\beamer@headheight%
+ \vbox to \beamer@headheight{%
+ \vfil
+ \leftskip=-\beamer@leftmargin%
+ \advance\leftskip by0.3cm%
+ \rightskip=-\beamer@rightmargin%
+ \advance\rightskip by0.3cm plus1fil%
+ {\usebeamercolor[fg]{frametitle}\usebeamerfont{frametitle}\strut\insertframetitle\par}%
+ \ifx\insertframesubtitle\@empty\else%
+ {\usebeamercolor[fg]{framesubtitle}\usebeamerfont{framesubtitle}\strut\insertframesubtitle\par}%
+ \fi%
+ \vbox{}%
+ \vskip-1em%
+ \vfil
+ }%
+ }
+
+ \defbeamertemplate*{headline}{sidebar theme}
+ {%
+ \begin{beamercolorbox}[wd=\paperwidth]{frametitle}
+ \ifx\beamer@sidebarside\beamer@lefttext%
+ \else%
+ \hfill%
+ \fi%
+ \ifdim\beamer@sidebarwidth>0pt%
+ \usebeamercolor[bg]{logo}%
+ \vrule width\beamer@sidebarwidth height \beamer@headheight%
+ \hskip-\beamer@sidebarwidth%
+ \hbox to \beamer@sidebarwidth{\hss\vbox to
+ \beamer@headheight{\vss\hbox{\color{fg}\insertlogo}\vss}\hss}%
+ \else%
+ \vrule width0pt height \beamer@headheight%
+ \fi%
+ \end{beamercolorbox}
+ }
+\fi
+
+
+\def\beamer@sidebarformat#1#2#3{%
+ \begin{beamercolorbox}[wd=\beamer@sidebarwidth,leftskip=#1,rightskip=1ex plus1fil,vmode]{#2}
+ \vbox{}%
+ #3\par%
+ \vbox{}%
+ \vskip-1.5ex%
+ \end{beamercolorbox}
+}
+
+\defbeamertemplate*{section in sidebar}{sidebar theme}
+{%
+ \vbox{%
+ \vskip1ex%
+ \beamer@sidebarformat{3pt}{section in sidebar}{\insertsectionhead}%
+ }%
+}
+
+\defbeamertemplate*{section in sidebar shaded}{sidebar theme}
+{%
+ \vbox{%
+ \vskip1ex%
+ \beamer@sidebarformat{3pt}{section in sidebar shaded}{\insertsectionhead}%
+ }%
+}
+
+\defbeamertemplate*{subsection in sidebar}{sidebar theme}
+{%
+ \beamer@sidebarformat{5pt}{subsection in sidebar}{\insertsubsectionhead}%
+}
+
+\defbeamertemplate*{subsection in sidebar shaded}{sidebar theme}
+{%
+ \beamer@sidebarformat{5pt}{subsection in sidebar shaded}{\insertsubsectionhead}%
+}
+
+\defbeamertemplate*{subsubsection in sidebar}{sidebar theme}
+{%
+ \beamer@sidebarformat{7pt}{subsubsection in sidebar}{\insertsubsubsectionhead}%
+}
+
+\defbeamertemplate*{subsubsection in sidebar shaded}{sidebar theme}
+{%
+ \beamer@sidebarformat{7pt}{subsubsection in sidebar shaded}{\insertsubsubsectionhead}%
+}
+
+
+\ifdim\beamer@sidebarwidth>0pt
+
+ % Sidebar
+ \setbeamersize{sidebar width \beamer@sidebarside=\beamer@sidebarwidth}
+ \defbeamertemplate*{sidebar \beamer@sidebarside}{sidebar theme}
+ {
+ \beamer@tempdim=\beamer@sidebarwidth%
+ \advance\beamer@tempdim by -6pt%
+ {\usebeamerfont{title in sidebar}%
+ \vskip1.5em%
+ \hskip3pt%
+ \usebeamercolor[fg]{title in sidebar}%
+ \insertshorttitle[width=\beamer@tempdim,center,respectlinebreaks]\par%
+ \vskip1.25em%
+ }%
+ {%
+ \hskip3pt%
+ \usebeamercolor[fg]{author in sidebar}%
+ \usebeamerfont{author in sidebar}%
+ \insertshortauthor[width=\beamer@tempdim,center,respectlinebreaks]\par%
+ \vskip1.25em%
+ }%
+ \insertverticalnavigation{\beamer@sidebarwidth}%
+ \vfill
+ \ifx\beamer@sidebarside\beamer@lefttext%
+ \else%
+ \usebeamercolor{normal text}%
+ \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}%
+ \vskip2pt%
+ \fi%
+ }%
+
+ \ifx\beamer@sidebarside\beamer@lefttext%
+ \defbeamertemplate*{sidebar right}{sidebar theme}
+ {%
+ \vfill%
+ \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}%
+ \vskip2pt}
+ \fi
+ % Margins
+ \setbeamersize{text margin left=0.5cm,text margin right=0.5cm}
+\fi
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
new file mode 100644
index 0000000000..36d1622e23
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
@@ -0,0 +1,117 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\newif\ifbeamer@sb@subsection
+
+\DeclareOptionBeamer{subsection}[true]{\csname beamer@sb@subsection#1\endcsname}
+\ExecuteOptionsBeamer{subsection=true}
+\ProcessOptionsBeamer
+
+
+
+\mode<presentation>
+
+\setbeamercolor{frametitle}{parent=palette primary}
+\setbeamercolor{subsection in head/foot}{parent=palette secondary}
+\setbeamercolor{section in head/foot}{parent=palette quaternary}
+
+
+\beamer@compresstrue
+
+\AtBeginDocument{
+ {
+ \usebeamerfont*{headline}
+ \colorlet{global.bg}{bg}
+ \usebeamercolor{subsection in head/foot}
+ \usebeamercolor{section in head/foot}
+ \usebeamercolor{frametitle}
+
+ \ifbeamer@sb@subsection
+ \pgfdeclareverticalshading{beamer@barshade}{\the\paperwidth}{%
+ color(0ex)=(global.bg);%
+ color(1ex)=(subsection in head/foot.bg);%
+ color(3.25ex)=(subsection in head/foot.bg);%
+ color(4.25ex)=(section in head/foot.bg);%
+ color(9.75ex)=(section in head/foot.bg)%
+ }
+ \pgfdeclareverticalshading{beamer@aboveframetitle}{\the\paperwidth}{%
+ color(0ex)=(frametitle.bg);%
+ color(1ex)=(frametitle.bg);%
+ color(2ex)=(subsection in head/foot.bg)
+ }
+ \else
+ \pgfdeclareverticalshading{beamer@barshade}{\the\paperwidth}{%
+ color(0ex)=(global.bg);%
+ color(1ex)=(section in head/foot.bg);%
+ color(7ex)=(section in head/foot.bg)%
+ }
+ \pgfdeclareverticalshading{beamer@aboveframetitle}{\the\paperwidth}{%
+ color(0ex)=(frametitle.bg);%
+ color(1ex)=(frametitle.bg);%
+ color(2ex)=(section in head/foot.bg)
+ }
+ \fi
+
+ \pgfdeclareverticalshading{beamer@belowframetitle}{\the\paperwidth}{%
+ color(0ex)=(global.bg);%
+ color(1ex)=(frametitle.bg)
+ }
+ }
+}
+
+ % Head
+\defbeamertemplate*{headline}{smoothbars theme}
+{%
+ \pgfuseshading{beamer@barshade}%
+ \ifbeamer@sb@subsection%
+ \vskip-9.75ex%
+ \else%
+ \vskip-7ex%
+ \fi%
+ \begin{beamercolorbox}[ignorebg,ht=2.25ex,dp=3.75ex]{section in head/foot}
+ \insertnavigation{\paperwidth}
+ \end{beamercolorbox}%
+ \ifbeamer@sb@subsection%
+ \begin{beamercolorbox}[ignorebg,ht=2.125ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{subsection in head/foot}
+ \usebeamerfont{subsection in head/foot}\insertsubsectionhead
+ \end{beamercolorbox}%
+ \fi%
+}%
+
+
+\defbeamertemplate*{frametitle}{smoothbars theme}
+{%
+ \nointerlineskip%
+ \usebeamerfont{headline}%
+ \begin{beamercolorbox}[wd=\paperwidth,ht=1.5ex,dp=0ex,vmode]{empty}
+ \pgfuseshading{beamer@aboveframetitle}%
+ \end{beamercolorbox}%
+ \vskip-.5ex%
+ \nointerlineskip%
+ \begin{beamercolorbox}[wd=\paperwidth,leftskip=.3cm,rightskip=.3cm plus1fil,vmode]{frametitle}
+ \usebeamerfont*{frametitle}\insertframetitle%
+ \ifx\insertframesubtitle\@empty%
+ \strut\par%
+ \else
+ \par{\usebeamerfont*{framesubtitle}{\usebeamercolor[fg]{framesubtitle}\insertframesubtitle}\strut\par}%
+ \fi%%
+ \usebeamerfont{headline}%
+ \vskip.5ex
+ \end{beamercolorbox}%
+ \nointerlineskip
+ \begin{beamercolorbox}[wd=\paperwidth,ht=.5ex,dp=0ex]{empty}
+ \pgfuseshading{beamer@belowframetitle}%
+ \end{beamercolorbox}%
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty
new file mode 100644
index 0000000000..21ca7701eb
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty
@@ -0,0 +1,95 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{frametitle}{parent=palette primary}
+
+\AtBeginDocument{
+ {
+ \usebeamerfont*{headline}
+
+ \usebeamercolor{normal text}
+ \usebeamercolor{title in head/foot}
+ \usebeamercolor{subsection in head/foot}
+ \usebeamercolor{section in head/foot}
+ \usebeamercolor{frametitle}
+
+ \pgfdeclareverticalshading{beamer@treeshade}{\the\paperwidth}{%
+ color(0ex)=(normal text.bg);%
+ color(1ex)=(subsection in head/foot.bg);%
+ color(3.25ex)=(subsection in head/foot.bg);%
+ color(4.25ex)=(section in head/foot.bg);%
+ color(6.5ex)=(section in head/foot.bg);%
+ color(7.5ex)=(title in head/foot.bg);%
+ color(10.25ex)=(title in head/foot.bg)%
+ }
+
+ \pgfdeclareverticalshading{beamer@aboveframetitle}{\the\paperwidth}{%
+ color(0ex)=(frametitle.bg);%
+ color(1ex)=(frametitle.bg);%
+ color(2ex)=(subsection in head/foot.bg)
+ }
+
+ \pgfdeclareverticalshading{beamer@belowframetitle}{\the\paperwidth}{%
+ color(0ex)=(normal text.bg);%
+ color(1ex)=(frametitle.bg)
+ }
+ }
+}
+
+\defbeamertemplate*{headline}{smoothtree theme}
+{%
+ \pgfuseshading{beamer@treeshade}%
+ \vskip-10.25ex%
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.125ex,dp=1.125ex,ignorebg,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}
+ \usebeamerfont{title in head/foot}\insertshorttitle
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.125ex,dp=1.125ex,ignorebg,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{section in head/foot}
+ \usebeamerfont{section in head/foot}%
+ \hskip6pt\insertsectionhead
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.125ex,dp=1.125ex,ignorebg,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{subsection in head/foot}
+ \usebeamerfont{subsection in head/foot}%
+ \hskip12pt\insertsubsectionhead
+ \end{beamercolorbox}
+}
+
+\defbeamertemplate*{frametitle}{smoothtree theme}
+{%
+ \nointerlineskip%
+ \usebeamerfont{headline}%
+ \begin{beamercolorbox}[wd=\paperwidth,ht=1.5ex,dp=0ex]{empty}
+ \pgfuseshading{beamer@aboveframetitle}%
+ \end{beamercolorbox}%
+ \vskip-.5ex%
+ \nointerlineskip%
+ \begin{beamercolorbox}[wd=\paperwidth,leftskip=.935cm,rightskip=.3cm plus1fil]{frametitle}
+ \usebeamerfont*{frametitle}\insertframetitle%
+ \ifx\insertframesubtitle\@empty%
+ \strut\par%
+ \else
+ \par{\usebeamerfont*{framesubtitle}{\usebeamercolor[fg]{framesubtitle}\insertframesubtitle}\strut\par}%
+ \fi%%
+ \usebeamerfont{headline}%
+ \vskip.5ex
+ \end{beamercolorbox}%
+ \nointerlineskip
+ \begin{beamercolorbox}[wd=\paperwidth,ht=.5ex,dp=0ex]{empty}
+ \pgfuseshading{beamer@belowframetitle}%
+ \end{beamercolorbox}%
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty
new file mode 100644
index 0000000000..c8aff5287b
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty
@@ -0,0 +1,78 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamercolor{section in head/foot}{parent=palette quaternary}
+\setbeamercolor{subsection in head/foot}{parent=palette primary}
+
+\setbeamercolor{author in head/foot}{parent=section in head/foot}
+\setbeamercolor{title in head/foot}{parent=subsection in head/foot}
+
+
+
+\usesectionheadtemplate
+ {\hfill\insertsectionhead}
+ {\hfill\color{fg!50!bg}\insertsectionhead}
+
+ % Head
+\ifbeamer@compress
+
+\defbeamertemplate*{headline}{split theme}
+{%
+ \leavevmode%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.5ex,dp=1.125ex]{section in head/foot}%
+ \insertsectionnavigationhorizontal{.5\paperwidth}{\hskip0pt plus1filll}{}%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.5ex,dp=1.125ex]{subsection in head/foot}%
+ \insertsubsectionnavigationhorizontal{.5\paperwidth}{}{\hskip0pt plus1filll}%
+ \end{beamercolorbox}%
+}
+
+\else
+
+\defbeamertemplate*{headline}{split theme}
+{%
+ \leavevmode%
+ \@tempdimb=2.4375ex%
+ \ifnum\beamer@subsectionmax<\beamer@sectionmax%
+ \multiply\@tempdimb by\beamer@sectionmax%
+ \else%
+ \multiply\@tempdimb by\beamer@subsectionmax%
+ \fi%
+ \ifdim\@tempdimb>0pt%
+ \advance\@tempdimb by 1.825ex%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=\@tempdimb]{section in head/foot}%
+ \vbox to\@tempdimb{\vfil\insertsectionnavigation{.5\paperwidth}\vfil}%
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=\@tempdimb]{subsection in head/foot}%
+ \vbox to\@tempdimb{\vfil\insertsubsectionnavigation{.5\paperwidth}\vfil}%
+ \end{beamercolorbox}%
+ \fi%
+}
+
+\fi
+
+
+\defbeamertemplate*{footline}{split theme}
+{%
+ \leavevmode%
+ \hbox{\begin{beamercolorbox}[wd=.5\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm plus1fill,rightskip=.3cm]{author in head/foot}%
+ \usebeamerfont{author in head/foot}\insertshortauthor
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}%
+ \usebeamerfont{title in head/foot}\insertshorttitle\hfill\usebeamercolor[fg]{page number in head/foot}\usebeamerfont{page number in head/foot}\usebeamertemplate{page number in head/foot}
+ \end{beamercolorbox}}%
+ \vskip0pt%
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty
new file mode 100644
index 0000000000..9c9e052908
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty
@@ -0,0 +1,61 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\newif\ifbeamer@tree@showhooks
+\beamer@tree@showhookstrue
+
+\DeclareOptionBeamer{hooks}[true]{\csname beamer@tree@showhooks#1\endcsname}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\defbeamertemplate*{headline}{tree theme}
+{%
+ \begin{beamercolorbox}[wd=\paperwidth,colsep=1.5pt]{upper separation line head}
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{title in head/foot}
+ \usebeamerfont{title in head/foot}\insertshorttitle
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{section in head/foot}
+ \usebeamerfont{section in head/foot}%
+ \ifbeamer@tree@showhooks
+ \setbox\beamer@tempbox=\hbox{\insertsectionhead}%
+ \ifdim\wd\beamer@tempbox>1pt%
+ \hskip2pt\raise1.9pt\hbox{\vrule width0.4pt height1.875ex\vrule width 5pt height0.4pt}%
+ \hskip1pt%
+ \fi%
+ \else%
+ \hskip6pt%
+ \fi%
+ \insertsectionhead
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[wd=\paperwidth,ht=2.5ex,dp=1.125ex,%
+ leftskip=.3cm,rightskip=.3cm plus1fil]{subsection in head/foot}
+ \usebeamerfont{subsection in head/foot}%
+ \ifbeamer@tree@showhooks
+ \setbox\beamer@tempbox=\hbox{\insertsubsectionhead}%
+ \ifdim\wd\beamer@tempbox>1pt%
+ \hskip9.4pt\raise1.9pt\hbox{\vrule width0.4pt height1.875ex\vrule width 5pt height0.4pt}%
+ \hskip1pt%
+ \fi%
+ \else%
+ \hskip12pt%
+ \fi%
+ \insertsubsectionhead
+ \end{beamercolorbox}
+ \begin{beamercolorbox}[wd=\paperwidth,colsep=1.5pt]{lower separation line head}
+ \end{beamercolorbox}
+}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty
new file mode 100644
index 0000000000..fda63a34a3
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty
@@ -0,0 +1,19 @@
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useinnertheme[shadow=true]{rounded}
+\useoutertheme{infolines}
+\usecolortheme{wolverine}
+
+\setbeamerfont{block title}{size={}}
+\setbeamercolor{titlelike}{parent=structure,bg=yellow!85!orange}
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty
new file mode 100644
index 0000000000..d1b136cddf
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{tree}
+\usecolortheme{whale}
+\usecolortheme{orchid}
+\useinnertheme{rectangles}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty
new file mode 100644
index 0000000000..ae704db424
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty
@@ -0,0 +1,19 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\usecolortheme{orchid}
+\useinnertheme{rectangles}
+\useinnertheme{inmargin}
+
+\setbeamercolor{item projected}{fg=black}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty
new file mode 100644
index 0000000000..25b8b0863c
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty
@@ -0,0 +1,31 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{hideothersubsections}{\PassOptionsToPackage{hideothersubsections=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{hideallsubsections}{\PassOptionsToPackage{hideallsubsections=#1}{beamerouterthemesidebar}}
+
+\DeclareOptionBeamer{width}{\PassOptionsToPackage{width=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{left}{\PassOptionsToPackage{left}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{right}{\PassOptionsToPackage{right}{beamerouterthemesidebar}}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme{sidebar}
+\useinnertheme{rectangles}
+
+\usecolortheme{whale}
+\usecolortheme{orchid}
+
+\setbeamercolor*{frametitle}{parent=palette primary}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty
new file mode 100644
index 0000000000..9f97307f5d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty
@@ -0,0 +1,23 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{compress}{\beamer@compresstrue}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[footline=authorinstitutetitle]{miniframes}
+\usecolortheme{whale}
+\usecolortheme{orchid}
+\useinnertheme{rectangles}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty
new file mode 100644
index 0000000000..3fe1f18be7
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty
@@ -0,0 +1,38 @@
+% Copyright 2004 by Manuel Carro <mcarro@fi.upm.es>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\newif\ifbeamer@secheader
+\beamer@secheaderfalse
+
+\DeclareOptionBeamer{secheader}{\beamer@secheadertrue}
+\ProcessOptionsBeamer
+
+\usecolortheme{rose}
+\useinnertheme[shadow]{rounded}
+\usecolortheme{dolphin}
+\useoutertheme{infolines}
+
+
+% Tills' opinion: should be done in an inner theme, not here.
+
+\usesubitemizeitemtemplate{%
+ \tiny\raise1.5pt\hbox{\color{beamerstructure}$\blacktriangleright$}%
+}
+\usesubsubitemizeitemtemplate{%
+ \tiny\raise1.5pt\hbox{\color{beamerstructure}$\bigstar$}%
+}
+
+\setbeamersize{text margin left=1em,text margin right=1em}
+
+\ifbeamer@secheader\else\setbeamertemplate{headline}[default]\fi
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty
new file mode 100644
index 0000000000..892af201d3
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty
@@ -0,0 +1,19 @@
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useinnertheme[shadow=true]{rounded}
+\useoutertheme{infolines}
+\usecolortheme{beaver}
+
+\setbeamerfont{block title}{size={}}
+\setbeamercolor{titlelike}{parent=structure,bg=white}
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty
new file mode 100644
index 0000000000..7404961309
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty
@@ -0,0 +1,21 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{split}
+\useinnertheme{rounded}
+
+\usecolortheme{whale}
+\usecolortheme{orchid}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty
new file mode 100644
index 0000000000..8a4634f4ad
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{smoothbars}
+\useinnertheme[shadow=true]{rounded}
+\usecolortheme{orchid}
+\usecolortheme{whale}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty
new file mode 100644
index 0000000000..bc896ad0e4
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty
@@ -0,0 +1,21 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{compress}{\beamer@compresstrue}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[footline=authorinstitutetitle]{miniframes}
+\usecolortheme{whale}
+
+\setbeamercolor{titlelike}{parent=structure}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty
new file mode 100644
index 0000000000..f0bd88453b
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty
@@ -0,0 +1,21 @@
+% Copyright 2012 by Alan Munn <amunn@msu.edu> Modified for MSU colours
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+%
+
+\mode<presentation>
+
+\useinnertheme{rounded}
+\useoutertheme{infolines}
+\usecolortheme{spruce}
+\setbeamerfont{block title}{size=\large}
+\setbeamertemplate{itemize subitem}[triangle]
+\setbeamercolor{titlelike}{parent=structure,bg=white!85!MSUgreen}
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty
new file mode 100644
index 0000000000..98074be140
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme[subsection=false]{smoothbars}
+\useinnertheme[shadow=true]{rounded}
+\usecolortheme{orchid}
+\usecolortheme{whale}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty
new file mode 100644
index 0000000000..8a6efe14c6
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty
@@ -0,0 +1,31 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{hideothersubsections}{\PassOptionsToPackage{hideothersubsections}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{hideallsubsections}{\PassOptionsToPackage{hideallsubsections}{beamerouterthemesidebar}}
+
+\PassOptionsToPackage{right}{beamerouterthemesidebar}
+\PassOptionsToPackage{width=2cm}{beamerouterthemesidebar}
+
+\DeclareOptionBeamer{width}{\PassOptionsToPackage{width=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{left}{\PassOptionsToPackage{left}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{right}{\PassOptionsToPackage{right}{beamerouterthemesidebar}}
+
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[height=0pt]{sidebar}
+
+{\usebeamercolor{structure}}
+
+\setbeamertemplate{sidebar canvas \beamer@sidebarside}[vertical shading][top=structure.fg!25,bottom=structure.fg!10]
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty
new file mode 100644
index 0000000000..1d1a713f97
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty
@@ -0,0 +1,34 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{width}
+{\PassOptionsToPackage{width=#1}{beamerouterthemesidebar}}
+
+\DeclareOptionBeamer{hideothersubsections}
+{\PassOptionsToPackage{hideothersubsections=#1}{beamerouterthemesidebar}}
+
+\DeclareOptionBeamer{hideallsubsections}
+{\PassOptionsToPackage{hideallsubsections=#1}{beamerouterthemesidebar}}
+
+\ProcessOptionsBeamer
+
+
+
+\mode<presentation>
+
+\useoutertheme[height=0pt,left]{sidebar}
+
+\usecolortheme{seahorse}
+\setbeamercolor*{titlelike}{parent=structure}
+
+\useinnertheme{circles}
+\setbeamertemplate{frametitle}[default][right]
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty
new file mode 100644
index 0000000000..6e8b5f6161
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty
@@ -0,0 +1,23 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{compress}{\beamer@compresstrue}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[footline=authorinstitutetitle]{miniframes}
+\usecolortheme{whale}
+\usecolortheme{orchid}
+\useinnertheme{rounded}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty
new file mode 100644
index 0000000000..f83af320b1
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{smoothtree}
+\usecolortheme{whale}
+\usecolortheme{orchid}
+\useinnertheme[shadow=true]{rounded}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty
new file mode 100644
index 0000000000..94652ce5dd
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty
@@ -0,0 +1,21 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{split}
+\useinnertheme{rectangles}
+
+\usecolortheme{whale}
+\usecolortheme{orchid}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty
new file mode 100644
index 0000000000..e6c2c4e32f
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty
@@ -0,0 +1,26 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\newif\ifbeamer@secheader
+\beamer@secheaderfalse
+
+\DeclareOptionBeamer{secheader}{\beamer@secheadertrue}
+\ProcessOptionsBeamer
+
+\usecolortheme{whale}
+\usecolortheme{orchid}
+\useinnertheme[shadow]{rounded}
+\useoutertheme{infolines}
+
+\ifbeamer@secheader\else\setbeamertemplate{headline}[default]\fi
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty
new file mode 100644
index 0000000000..bdabdbc90d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty
@@ -0,0 +1,18 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{split}
+\usecolortheme{whale}
+
+\setbeamercolor*{titlelike}{parent=structure}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty
new file mode 100644
index 0000000000..5d0d739760
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty
@@ -0,0 +1,39 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\PassOptionsToPackage{right}{beamerouterthemesidebar}
+\PassOptionsToPackage{width=2cm}{beamerouterthemesidebar}
+
+\DeclareOptionBeamer{hideothersubsections}{\PassOptionsToPackage{hideothersubsections=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{hideallsubsections}{\PassOptionsToPackage{hideallsubsections=#1}{beamerouterthemesidebar}}
+
+\DeclareOptionBeamer{width}{\PassOptionsToPackage{width=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{left}{\PassOptionsToPackage{left}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{right}{\PassOptionsToPackage{right}{beamerouterthemesidebar}}
+\ProcessOptionsBeamer
+
+
+
+\mode<presentation>
+
+\usecolortheme{whale}
+
+\setbeamercolor*{titlelike}{use=structure,fg=structure.fg}
+
+\useoutertheme[height=0pt]{sidebar}
+
+\setbeamercolor{sidebar}{parent=palette primary}
+
+{\usebeamercolor{palette quaternary}}
+{\usebeamercolor{palette primary}}
+
+\setbeamertemplate{sidebar canvas \beamer@sidebarside}[vertical shading][top=palette quaternary.bg,bottom=palette primary.bg]
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty
new file mode 100644
index 0000000000..bca5a6736c
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty
@@ -0,0 +1,16 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useoutertheme{tree}
+\setbeamercolor{separation line}{use=structure,bg=structure.fg!50!bg}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty
new file mode 100644
index 0000000000..c11e03d21f
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty
@@ -0,0 +1,29 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{hideothersubsections}{\PassOptionsToPackage{hideothersubsections=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{hideallsubsections}{\PassOptionsToPackage{hideallsubsections=#1}{beamerouterthemesidebar}}
+
+\DeclareOptionBeamer{width}{\PassOptionsToPackage{width=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{left}{\PassOptionsToPackage{left}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{right}{\PassOptionsToPackage{right}{beamerouterthemesidebar}}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme{sidebar}
+\useinnertheme[shadow=true]{rounded}
+\usecolortheme{orchid}
+\usecolortheme{whale}
+
+\setbeamercolor*{frametitle}{parent=palette primary}
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty
new file mode 100644
index 0000000000..896dcc7e03
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty
@@ -0,0 +1,17 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamertemplate{frametitle}[default][right]
+
+\useinnertheme{circles}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty
new file mode 100644
index 0000000000..044447db2d
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty
@@ -0,0 +1,24 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{height}{\PassOptionsToPackage{height=#1}{beamerouterthemesidebar}}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[width=0pt]{sidebar}
+\useinnertheme{rectangles}
+\usecolortheme{whale}
+\usecolortheme{orchid}
+
+\setbeamercolor*{frametitle}{parent=palette primary}
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty
new file mode 100644
index 0000000000..0e1d2df1df
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty
@@ -0,0 +1,41 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{compress}{\beamer@compresstrue}
+\ProcessOptionsBeamer
+
+
+\mode<presentation>
+
+\setbeamercolor{section in head/foot}{use=structure,bg=structure.fg!25!bg}
+
+\useoutertheme[subsection=false]{miniframes}
+
+\setbeamertemplate{frametitle}[default][center]
+
+\AtBeginDocument{%
+ {
+ \usebeamercolor{section in head/foot}
+ }
+
+ \pgfdeclareverticalshading{beamer@headfade}{\paperwidth}
+ {%
+ color(0cm)=(bg);
+ color(1.25cm)=(section in head/foot.bg)%
+ }
+
+ \setbeamercolor{section in head/foot}{bg=}
+}
+
+\addtoheadtemplate{\pgfuseshading{beamer@headfade}\vskip-1.25cm}{}
+
+\beamertemplatedotitem
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty
new file mode 100644
index 0000000000..76dff0a911
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{compress}{\beamer@compresstrue}
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[footline=institutetitle]{miniframes}
+
+\setbeamercolor{separation line}{use=structure,bg=structure.fg!50!bg}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty
new file mode 100644
index 0000000000..232758f14b
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty
@@ -0,0 +1,20 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useinnertheme[shadow=true]{rounded}
+\useoutertheme{shadow}
+\usecolortheme{orchid}
+\usecolortheme{whale}
+
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty
new file mode 100644
index 0000000000..22978f7265
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty
@@ -0,0 +1,118 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\DeclareOptionBeamer{headheight}{\beamer@boxheadheight=#1}
+\DeclareOptionBeamer{footheight}{\beamer@boxfootheight=#1}
+
+\newdimen\beamer@boxheadheight
+\newdimen\beamer@boxfootheight
+\beamer@boxheadheight=10pt
+\beamer@boxfootheight=10pt
+
+\ProcessOptionsBeamer
+
+% For example:
+%\addheadboxtemplate{\color{black}}{\hfill\color{white}\insertshorttitle\hskip0.3cm}
+%\addheadboxtemplate{\color{structure}}{\hskip0.3cm\color{white}\insertshortauthor}
+
+%\addfootboxtemplate{\color{black}}{\hfill\color{white}\insertshortinstitute\hskip0.3cm}
+%\addfootboxtemplate{\color{structure}}{}
+%\addfootboxtemplate{\color{black}}{\hfill\color{white}\insertframenumber\hskip0.3cm}
+
+
+\mode<presentation>
+
+
+ % Head
+\newcount\beamer@headboxes
+\newdimen\beamer@headboxsizes
+\newcount\beamer@currentbox
+\def\addheadboxtemplate#1#2{
+ \expandafter\def\csname beamer@headbox\the\beamer@headboxes\endcsname{#2}
+ \expandafter\def\csname beamer@headbg\the\beamer@headboxes\endcsname{#1}
+ \advance\beamer@headboxes by 1\relax
+ \beamer@headboxsizes=\paperwidth
+ \divide\beamer@headboxsizes by\beamer@headboxes
+}
+
+\def\addheadbox#1#2{\addheadboxtemplate{\usebeamercolor[bg]{#1}}{\usebeamercolor[fg]{#1}\usebeamerfont{#1}#2}}
+
+
+\defbeamertemplate*{headline}{boxes theme}
+{%
+ \leavevmode
+ \beamer@currentbox=0\relax%
+ \loop%
+ \ifnum\beamer@currentbox<\beamer@headboxes%
+ \hbox to\beamer@headboxsizes{%
+ % Background
+ {%
+ \csname beamer@headbg\the\beamer@currentbox\endcsname%
+ \vrule width\beamer@headboxsizes height\beamer@boxheadheight%
+ \hskip-\beamer@headboxsizes%
+ }%
+ % Box
+ {%
+ \setbox\beamer@tempbox=\hbox to\beamer@headboxsizes{%
+ \csname beamer@headbox\the\beamer@currentbox\endcsname\hfil}%
+ \dp\beamer@tempbox=0pt%
+ \setbox\beamer@tempbox=\hbox{\vbox{\box\beamer@tempbox\vskip3pt}}%
+ \ht\beamer@tempbox=\beamer@boxheadheight%
+ \dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox%
+ }}%
+ \advance\beamer@currentbox by 1%
+ \repeat%
+}%
+
+
+ % Foot
+\newcount\beamer@footboxes
+\newdimen\beamer@footboxsizes
+\def\addfootboxtemplate#1#2{
+ \expandafter\def\csname beamer@footbox\the\beamer@footboxes\endcsname{#2}
+ \expandafter\def\csname beamer@footbg\the\beamer@footboxes\endcsname{#1}
+ \advance\beamer@footboxes by 1\relax
+ \beamer@footboxsizes=\paperwidth
+ \divide\beamer@footboxsizes by\beamer@footboxes
+}
+
+\def\addfootbox#1#2{\addfootboxtemplate{\usebeamercolor[bg]{#1}}{\usebeamercolor[fg]{#1}\usebeamerfont{#1}#2}}
+
+\defbeamertemplate*{footline}{boxes theme}
+{%
+ \leavevmode
+ \beamer@currentbox=0\relax%
+ \loop%
+ \ifnum\beamer@currentbox<\beamer@footboxes%
+ \hbox to\beamer@footboxsizes{%
+ % Background
+ {%
+ \csname beamer@footbg\the\beamer@currentbox\endcsname%
+ \vrule width\beamer@footboxsizes height\beamer@boxfootheight%
+ \hskip-\beamer@footboxsizes%
+ }%
+ % Box
+ {%
+ \setbox\beamer@tempbox=\hbox to\beamer@footboxsizes{%
+ \csname beamer@footbox\the\beamer@currentbox\endcsname\hfil}%
+ \dp\beamer@tempbox=0pt%
+ \setbox\beamer@tempbox=\hbox{\vbox{\box\beamer@tempbox\vskip3pt}}%
+ \ht\beamer@tempbox=\beamer@boxfootheight%
+ \dp\beamer@tempbox=0pt%
+ \box\beamer@tempbox%
+ }%
+ }%
+ \advance\beamer@currentbox by 1%
+ \repeat%
+}%
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty b/macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty
new file mode 100644
index 0000000000..b613bec641
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty
@@ -0,0 +1,18 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\usefonttheme{default}
+\usecolortheme{default}
+\useinnertheme{default}
+\useoutertheme{default}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty
new file mode 100644
index 0000000000..10158f1465
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty
@@ -0,0 +1,19 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\usefonttheme[onlysmall]{structurebold}
+\useoutertheme[footline=authorinstitutetitle]{miniframes}
+\usecolortheme{whale}
+
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty
new file mode 100644
index 0000000000..6f5aeb518e
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty
@@ -0,0 +1,19 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\usefonttheme[onlylarge]{structureitalicserif}
+\usefonttheme[onlysmall]{structuresmallcapsserif}
+
+\usetheme{Singapore}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty
new file mode 100644
index 0000000000..694ae26a56
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty
@@ -0,0 +1,30 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\usefonttheme[onlysmall]{structurebold}
+\setbeamerfont{frametitle}{series=\bfseries}
+
+\useoutertheme[subsection=false]{miniframes}
+\addtobeamertemplate{headline}
+{}
+{%
+ \begin{beamercolorbox}[wd=\paperwidth,colsep=0.2pt]{fine separation line}
+ \end{beamercolorbox}%
+}
+
+\setbeamercolor{fine separation line}{use=structure,bg=structure.fg!50!bg}
+
+
+\beamertemplatedefaultframetitle[center]
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty
new file mode 100644
index 0000000000..199c5e39d1
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty
@@ -0,0 +1,64 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\setbeamertemplate{headline}[text line]
+{%
+ \vbox{%
+ \vskip3pt%
+ \beamerline{\insertnavigation{\paperwidth}}%
+ \vskip1.5pt%
+ \insertvrule{0.4pt}{beamerstructure!50!averagebackgroundcolor}%
+ \vskip1.5pt%
+ \tinyline{\color{beamerstructure}\insertsubsection\hfill}
+ \insertvrule{4pt}{beamerstructure!50!averagebackgroundcolor}%
+ }%
+}
+
+ % Footline
+\setbeamertemplate{footline}[text line]
+{%
+ \ifbeamertemplateempty{logo}
+ {%
+ \vbox{%
+ \setbox\beamer@tempbox=\hbox{\tiny\insertshortauthor: \insertshorttitle\hskip1.5cm\insertshortinstitute}%
+ \ifdim\wd\beamer@tempbox>\paperwidth%
+ \insertvrule{4pt}{beamerstructure!50!averagebackgroundcolor}%
+ \vskip1.5pt
+ \tinyline{\color{beamerstructure}\insertshortauthor:\hfill\insertshortinstitute}%
+ \tinyline{\color{beamerstructure}\insertshorttitle\hfill\lower1pt\hbox{\insertnavigationsymbols}}%
+ \else%
+ \setbox\beamer@tempbox=\hbox{\beamerline{\hbox to\paperwidth{\hfill\lower1pt\hbox{\insertnavigationsymbols}}}}%
+ \ht\beamer@tempbox=0pt%
+ \box\beamer@tempbox%
+ \insertvrule{4pt}{beamerstructure!50!averagebackgroundcolor}%
+ \vskip1.5pt
+ \tinyline{\color{beamerstructure}\insertshortauthor: \insertshorttitle\hfill\insertshortinstitute}%
+ \fi}%
+ }
+ {%
+ \vbox{%
+ \insertvrule{4pt}{beamerstructure!50!averagebackgroundcolor}%
+ \vskip1.5pt%
+ \setbox\beamer@logobox=\hbox{\lower1pt\hbox{\usebeamertemplate*{logo}}}%
+ \tinyline{\color{beamerstructure}\insertshortauthor:\hfill}%
+ \tinyline{\color{beamerstructure}\insertshorttitle\hfill\lower1pt\hbox{\insertnavigationsymbols}\hskip0.1cm\hbox{\dp\beamer@logobox=0pt\ht\beamer@logobox=0pt\box\beamer@logobox}
+ }%
+ }%
+ }%
+}
+
+
+
+\userightsidebartemplate{0cm}{}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty
new file mode 100644
index 0000000000..11e77dacf5
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty
@@ -0,0 +1,19 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\PackageWarning{beamerthemeplain}{This package is obsolet - use font theme italics instead}
+
+\usefonttheme{structureitalicserif}
+\beamertemplatedefaultframetitle[center]
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty
new file mode 100644
index 0000000000..0d88030911
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty
@@ -0,0 +1,23 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\useinnertheme[shadow=true]{rounded}
+\usecolortheme{orchid}
+\usecolortheme{whale}
+\useoutertheme{shadow}
+\usefonttheme[onlysmall]{structurebold}
+
+\setbeamercolor{title}{use=structure,fg=white,bg=structure.fg}
+\setbeamerfont{block title}{size={}}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty
new file mode 100644
index 0000000000..985d2df5fb
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty
@@ -0,0 +1,51 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\newif\ifbeamer@sidebartab
+\newif\ifbeamer@sidebardark
+
+\beamer@sidebartabfalse
+\beamer@sidebardarkfalse
+
+\PassOptionsToPackage{width=2.5cm}{beamerouterthemesidebar}
+
+\DeclareOptionBeamer{width}{\PassOptionsToPackage{width=#1}{beamerouterthemesidebar}}
+\DeclareOptionBeamer{tab}[true]{\csname beamer@sidebartab#1\endcsname}
+\DeclareOptionBeamer{dark}[true]{\csname beamer@sidebardark#1\endcsname}
+
+\ProcessOptionsBeamer
+
+\mode<presentation>
+
+\useoutertheme[right,height=0pt]{sidebar}
+
+\ifbeamer@sidebardark
+ \usefonttheme{structurebold}
+ \usecolortheme{whale}
+
+ \setbeamercolor{sidebar}{parent=palette primary}
+
+ \usebeamercolor{palette quaternary}
+ \usebeamercolor{palette primary}
+ \setbeamertemplate{sidebar canvas right}[vertical shading][top=palette quaternary.bg,bottom=palette primary.bg]
+\else
+ \usecolortheme{seahorse}
+
+ \usebeamercolor{sidebar}
+ \setbeamertemplate{sidebar canvas right}[vertical shading][top=sidebar.bg,bottom=white]
+\fi
+
+\ifbeamer@sidebartab
+ \usecolortheme{sidebartab}
+\fi
+
+\mode
+<all>
+
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty
new file mode 100644
index 0000000000..2d65a315b1
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty
@@ -0,0 +1,18 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\usecolortheme{whale}
+\useoutertheme{split}
+\usefonttheme[onlysmall]{structurebold}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty
new file mode 100644
index 0000000000..2fbefc23ee
--- /dev/null
+++ b/macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty
@@ -0,0 +1,22 @@
+% Copyright 2007 by Till Tantau
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+\def\beamer@theme@col{\setbeamercolor{separation line}{use=structure,bg=structure.fg!50!bg}}
+\DeclareOptionBeamer{bars}{\def\beamer@theme@col{\usecolortheme{whale}}}
+\ProcessOptionsBeamer
+
+\usefonttheme[onlysmall]{structurebold}
+\beamer@theme@col
+\useoutertheme{tree}
+
+\mode
+<all>
diff --git a/macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex b/macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex
new file mode 100644
index 0000000000..814c973523
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex
@@ -0,0 +1,63 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[hyperref={draft}]{beamer}
+
+\ifx\themename\undefined
+ \def\themename{default}
+\fi
+
+\useoutertheme[height=0pt]{sidebar}
+
+\def\albatrossname{albatross}
+\def\flyname{fly}
+\def\beetlename{beetle}
+\def\structurename{structure}
+
+\def\albatrossnamestylish{albatrossstylish}
+
+\ifx\themename\structurename
+ \usecolortheme[cmyk={0.69,0,0.50,0}]{\themename}
+\else
+ \ifx\themename\albatrossnamestylish
+ \usecolortheme[overlystylish]{albatross}
+ \usecolortheme{lily}
+ \else
+ \usecolortheme{\themename}
+ \fi
+\fi
+
+\ifx\themename\albatrossname
+ \makeatletter
+ \let\beamertemplatesolidbackgroundcolor=\@gobble
+ \makeatother
+\fi
+
+\ifx\themename\albatrossnamestylish
+ \makeatletter
+ \let\beamertemplatesolidbackgroundcolor=\@gobble
+ \makeatother
+\fi
+
+\ifx\themename\flyname
+ \makeatletter
+ \let\beamertemplatesolidbackgroundcolor=\@gobble
+ \makeatother
+\fi
+
+\ifx\themename\beetlename
+ \makeatletter
+ \let\beamertemplatesolidbackgroundcolor=\@gobble
+ \makeatother
+\fi
+
+
+\input{beamerthemeexamplebase}
diff --git a/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf b/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
new file mode 100644
index 0000000000..ae559eef43
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf b/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
new file mode 100644
index 0000000000..c0a13a7eb7
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf b/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
new file mode 100644
index 0000000000..7ae9582058
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex b/macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex
new file mode 100644
index 0000000000..ee974a2995
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex
@@ -0,0 +1,21 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[hyperref={draft}]{beamer}
+
+\ifx\themename\undefined
+ \def\themename{default}
+\fi
+
+\usefonttheme{\themename}
+
+
+\input{beamerthemeexamplebase}
diff --git a/macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex b/macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex
new file mode 100644
index 0000000000..1623ae1d3f
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex
@@ -0,0 +1,29 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[hyperref={draft}]{beamer}
+
+\ifx\themename\undefined
+ \def\themename{default}
+\fi
+
+\useinnertheme{\themename}
+
+\usecolortheme{seahorse}
+\usecolortheme{rose}
+
+\setbeamercolor*{frametitle}{parent=titlelike}
+\setbeamercolor*{author}{parent=titlelike}
+\setbeamercolor*{date}{parent=titlelike}
+\setbeamercolor*{institute}{parent=titlelike}
+
+
+\input{beamerthemeexamplebase}
diff --git a/macros/latex/contrib/beamer/doc/beamerlogo.pdf b/macros/latex/contrib/beamer/doc/beamerlogo.pdf
new file mode 100644
index 0000000000..5e48bf7285
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerlogo.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex b/macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex
new file mode 100644
index 0000000000..37966c593e
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex
@@ -0,0 +1,21 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[hyperref={draft}]{beamer}
+
+\ifx\themename\undefined
+ \def\themename{default}
+\fi
+
+\useoutertheme{\themename}
+\usecolortheme{seahorse}
+
+
+\input{beamerthemeexamplebase}
diff --git a/macros/latex/contrib/beamer/doc/beamerthemeexample.tex b/macros/latex/contrib/beamer/doc/beamerthemeexample.tex
new file mode 100644
index 0000000000..152a0a3044
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerthemeexample.tex
@@ -0,0 +1,21 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[hyperref={draft}]{beamer}
+
+\ifx\themename\undefined
+ \def\themename{default}
+\fi
+
+\usetheme{\themename}
+
+
+\input{beamerthemeexamplebase}
diff --git a/macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex b/macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex
new file mode 100644
index 0000000000..e537d7cd3a
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex
@@ -0,0 +1,53 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\beamertemplatesolidbackgroundcolor{black!5}
+\beamertemplatetransparentcovered
+
+\usepackage{times}
+
+\title{There Is No Largest Prime Number}
+\subtitle{With an introduction to a new proof technique}
+
+\author[Euklid]{Euklid of Alexandria}
+\institute[Univ. Alexandria]{Department of Mathematics\\ University of Alexandria}
+\date[ISPN '80]{27th International Symposium on Prime Numbers, --280}
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+ \tableofcontents
+\end{frame}
+
+\section{Results}
+\subsection{Proof of the Main Theorem}
+
+\begin{frame}<1>
+ \frametitle{There Is No Largest Prime Number}
+ \framesubtitle{The proof uses \textit{reductio ad absurdum}.}
+
+ \begin{theorem}
+ There is no largest prime number.
+ \end{theorem}
+ \begin{proof}
+ \begin{enumerate}
+ % The strange way of typesetting math is to minimize font usage
+ % in order to keep the file sizes of the examples small.
+ \item<1-| alert@1> Suppose $p$ were the largest prime number.
+ \item<2-> Let $q$ be the product of the first $p$ numbers.
+ \item<3-> Then $q$\;+\,$1$ is not divisible by any of them.
+ \item<1-> Thus $q$\;+\,$1$ is also prime and greater than $p$.\qedhere
+ \end{enumerate}
+ \end{proof}
+\end{frame}
+
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-animations.tex b/macros/latex/contrib/beamer/doc/beamerug-animations.tex
new file mode 100644
index 0000000000..78ccfb7d34
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-animations.tex
@@ -0,0 +1,518 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Animations, Sounds, and Slide Transitions}
+
+
+\subsection{Animations}
+
+\subsubsection{Including External Animation Files}
+\label{section-multimedia}
+
+If you have created an animation using some external program (like a renderer), you can use the capabilities of the presentation program (like the Acrobat Reader) to show the animation. Unfortunately, currently there is no portable way of doing this and even the Acrobat Reader does not support this feature on all platforms.
+
+To include an animation in a presentation, you can use, for example, the package |multimedia.sty| which is part of the \beamer\ package. You have to include this package explicitly. Despite being distributed as part of the \beamer\ distribution, this package is perfectly self-sufficient and can be used independently of \beamer.
+
+\begin{package}{{multimedia}}
+ A stand-alone package that implements several commands for including external animation and sound files in a \pdf\ document. The package can be used together with both |dvips| plus |ps2pdf| and |pdflatex|, though the special sound support is available only in |pdflatex|.
+
+ When including this package, you must also include the |hyperref| package. Since you will typically want to include |hyperref| only at the very end of the preamble, |multimedia| will not include |hyperref| itself. However, |multimedia| can be included both before and after |hyperref|. Since \beamer\ includes |hyperref| automatically, you need not worry about this when creating a presentation using \beamer.
+\end{package}
+
+For including an animation in a \pdf\ file, you can use the command |\movie|, which is explained below. Depending on the used options, this command will either setup the \pdf\ file such that the viewer application (like the Acrobat Reader) itself will try to play the movie or that an external program will be called. The latter approach, though much less flexible, must be taken if the viewer application is unable to display the movie itself.
+
+\begin{command}{\movie\oarg{options}\marg{poster text}\marg{movie filename}}
+ This command will insert the movie with the filename \meta{movie filename} into the \pdf\ file. The movie file must reside at some place where the viewer application will be able to find it, which is typically only the directory in which the final \pdf\ file resides. The movie file will \emph{not} be embedded into the \pdf\ file in the sense that the actual movie data is part of the |main.pdf| file. The movie file must hence be copied and passed along with the \pdf\ file. (Nevertheless, one often says that the movie is ``embedded'' in the document, but that just means that one can click on the movie when viewing the document and the movie will start to play.)
+
+ The movie will use a rectangular area whose size is determined either by the |width=| and |height=| options or by the size of the \meta{poster text}. The \meta{poster text} can be any \TeX\ text; for example, it might be a |\pgfuseimage| command or an |\includegraphics| command or a |pgfpicture| environment or just plain text. The \meta{poster text} is typeset in a box, the box is inserted into the normal text, and the movie rectangle is put exactly over this box. Thus, if the \meta{poster text} is an image from the movie, this image will be shown until the movie is started, when it will be exactly replaced by the movie itself. However, there is also a different, sometimes better, way of creating a poster image, namely by using the |poster| option as explained later on.
+
+ The aspect ratio of the movie will \emph{not} be corrected automatically if the dimension of the \meta{poster text} box does not have the same aspect ratio. Most movies have an aspect ratio of 4:3 or 16:9.
+
+ Despite the name, a movie may consist only of sound with no images. In this case, the \meta{poster text} might be a symbol representing the sound. There is also a different, dedicated command for including sounds in a \pdf\ file, see the |\sound| command in Section~\ref{section-sound}.
+
+ Unless further options are given, the movie will start only when the user clicks on it. Whether the viewer application can actually display the movie depends on the application and the version. For example, the Acrobat Reader up to version~5 does not seem to be able to display any movies or sounds on Linux. On the other hand, the Acrobat Reader Version~6 on MacOS is able to display anything that QuickTime can display, which is just about everything. Embedding movies in a \pdf\ document is provided for by the \pdf\ standard and is not a peculiarity of the Acrobat Reader. In particular, one might expect other viewers like |xpdf| and |poppler|-based viewers (Okular, Evince) to support embedded movies in the future.
+
+ \example
+ |\movie{\pgfuseimage{myposterimage}}{mymovie.avi}|
+
+ \example
+ |\movie[width=3cm,height=2cm,poster]{}{mymovie.mpg}|
+
+ If your viewer application is not able to render your movie, but some external application is, you must use the |externalviewer| option. This will ask the viewer application to launch an application for showing the movie instead of displaying it itself. Since this application is started in a new window, this is not nearly as nice as having the movie displayed directly by the viewer (unless you use evil trickery to suppress the frame of the viewer application). Which application is chosen is left to the discretion of the viewer application, which tries to make its choice according to the extension of the \meta{movie filename} and according to some mapping table for mapping extensions to viewer applications. How this mapping table can be modified depends on the viewer application, please see the release notes of your viewer.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|autostart|}. Causes the movie to start playing immediately when the page is shown. At most one movie can be started in this way. The viewer application will typically be able to show at most one movie at the same time anyway. When the page is no longer shown, the movie immediately stops. This can be a problem if you use the |\movie| command to include a sound that should be played on after the page has been closed. In this case, the |\sound| command must be used.
+ \item
+ \declare{|borderwidth=|}\meta{\TeX\ dimension}. Causes a border of thickness \meta{\TeX\ dimension} to be drawn around the movie. Some versions of the Acrobat Reader seem to have a bug and do not display this border if is smaller than 0.5bp (about 0.51pt).
+ \item
+ \declare{|depth=|}\meta{\TeX\ dimension}. Overrides the depth of the \meta{poster text} box and sets it to the given dimension.
+ \item
+ \declare{|duration=|}\meta{time}|s|. Specifies in seconds how long the movie should be shown. The \meta{time} may be a fractional value and must be followed by the letter |s|. For example, |duration=1.5s| will show the movie for one and a half seconds. In conjunction with the |start| option, you can ``cut out'' a part of a movie for display.
+ \item
+ \declare{|externalviewer|}. As explained above, this causes an external application to be launched for displaying the movie in a separate window. Most options, like |duration| or |loop|, have no effect since they are not passed along to the viewer application.
+ \item
+ \declare{|height=|}\meta{\TeX\ dimension}. Overrides the height of the \meta{poster text} box and sets it to the given dimension.
+ \item
+ \declare{|label=|}\meta{movie label}. Assigns a label to the movie such that it can later be referenced by the command |\hyperlinkmovie|, which can be used to stop the movie or to show a different part of it. The \meta{movie label} is not a normal label. It should not be too fancy, since it is inserted literally into the \pdf\ code. In particular, it should not contain closing parentheses.
+ \item
+ \declare{|loop|}. Causes the movie to start again when the end has been reached. Normally, the movie just stops at the end.
+ \item
+ \declare{|once|}. Causes the movie to just stop at the end. This is the default.
+ \item
+ \declare{|open|}. Causes the player to stay open when the movie has finished.
+ \item
+ \declare{|palindrome|}. Causes the movie to start playing backwards when the end has been reached, and to start playing forward once more when the beginning is reached, and so on.
+ \item
+ \declare{|poster|}. Asks the viewer application to show the first image of the movie when the movie is not playing. Normally, nothing is shown when the movie is not playing (and thus the box containing the \meta{poster text} is shown). For a movie that does not have any images (but sound) or for movies with an uninformative first image this option is not so useful.
+ \item
+ \declare{|repeat|} is the same as |loop|.
+ \item
+ \declare{|showcontrols=|}\meta{true or false}. Causes a control bar to be displayed below the movie while it is playing. Instead of |showcontrols=true| you can also just say |showcontrols|. By default, no control bar is shown.
+ \item
+ \declare{|start=|}\meta{time}|s|. Causes the first \meta{time} seconds of the movie to be skipped. For example, |start=10s,duration=5s| will show seconds 10 to 15 of the movie, when you play the movie.
+ \item
+ \declare{|width=|}\meta{\TeX dimension} works like the |height| option, only for the width of the poster box.
+ \end{itemize}
+
+ \example
+ The following example creates a ``background sound'' for the slide.
+
+\begin{verbatim}
+\movie[autostart]{}{test.wav}
+\end{verbatim}
+
+ \example
+ A movie with two extra buttons for showing different parts of the movie.
+
+\begin{verbatim}
+\movie[label=cells,width=4cm,height=3cm,poster,showcontrols,duration=5s]{}{cells.avi}
+
+\hyperlinkmovie[start=5s,duration=7s]{cells}{\beamerbutton{Show the middle stage}}
+
+\hyperlinkmovie[start=12s,duration=5s]{cells}{\beamerbutton{Show the late stage}}
+\end{verbatim}
+\end{command}
+
+A movie can serve as the destination of a special kind of hyperlink, namely a hyperlink introduced using the following command:
+
+\begin{command}{\hyperlinkmovie\oarg{options}\marg{movie label}\marg{text}}
+ Causes the \meta{text} to become a movie hyperlink. When you click on the \meta{text}, the movie with the label \meta{movie label} will start to play (or stop or pause or resume, depending on the \meta{options}). The movie must be on the same page as the hyperlink.
+
+ The following \meta{options} may be given, many of which are the same as for the |\movie| command; if a different option is given for the link than for the movie itself, the option for the link takes precedence:
+ \begin{itemize}
+ \item
+ \declare{|duration=|}\meta{time}|s|. As for |\movie|, this causes the movie to be played only for the given number of seconds.
+ \item
+ \declare{|loop|} and \declare{|repeat|}. As for |\movie|, this causes the movie to loop.
+ \item
+ \declare{|once|}. As for |\movie|, this causes the movie to played only once.
+ \item
+ \declare{|palindrome|}. As for |\movie|, this causes the movie to be played forth and back.
+ \item
+ \declare{|pause|}. Causes the playback of the movie to be paused, if the movie was currently playing. If not, nothing happens.
+ \item
+ \declare{|play|}. Causes the movie to be played from whatever start position is specified. If the movie is already playing, it will be stopped and restarted at the starting position. This is the default.
+ \item
+ \declare{|resume|}. Resumes playback of the movie, if it has previously been paused. If has not been paused, but not started or is already playing, nothing happens.
+ \item
+ \declare{|showcontrols=|}\meta{true or false}. As for |\movie|, this causes a control bar to be shown or not shown during playback.
+ \item
+ \declare{|start=|}\meta{time}|s|. As for |\movie|, this causes the given number of seconds to be skipped at the beginning of the movie if |play| is used to start the movie.
+ \item
+ \declare{|stop|}. Causes the playback of the movie to be stopped.
+ \end{itemize}
+\end{command}
+
+\subsubsection{Animations Created by Showing Slides in Rapid Succession}
+
+You can create an animation in a portable way by using the overlay commands of the \beamer\ package to create a series of slides that, when shown in rapid succession, present an animation. This is a flexible approach, but such animations will typically be rather static since it will take some time to advance from one slide to the next. This approach is mostly useful for animations where you want to explain each ``picture'' of the animation. When you advance slides ``by hand,'' that is, by pressing a forward button, it typically takes at least a second for the next slide to show.
+
+More ``lively'' animations can be created by relying on a capability of the viewer program. Some programs support showing slides only for a certain number of seconds during a presentation (for the Acrobat Reader this works only in full-screen mode). By setting the number of seconds to zero, you can create a rapid succession of slides.
+
+To facilitate the creation of animations using this feature, the following commands can be used: |\animate| and |\animatevalue|.
+
+\begin{command}{\animate\ssarg{overlay specification}}
+ The slides specified by \meta{overlay specification} will be shown as quickly as possible.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \frametitle{A Five Slide Animation}
+ \animate<2-4>
+
+ The first slide is shown normally. When the second slide is shown
+ (presumably after pressing a forward key), the second, third, and
+ fourth slides ``flash by.'' At the end, the content of the fifth
+ slide is shown.
+
+ ... code for creating an animation with five slides ...
+\end{frame}
+\end{verbatim}
+
+ \articlenote
+ This command is ignored in |article| mode.
+\end{command}
+
+\begin{command}{\animatevalue|<|\meta{start slide}|-|\meta{end slide}|>| \marg{name}\marg{start value}\marg{end value}}
+ The \meta{name} must be the name of a counter or a dimension. It will be varied between two values. For the slides in the specified range, the counter or dimension is set to an interpolated value that depends on the current slide number. On slides before the \meta{start slide}, the counter or dimension is set to \meta{start value}; on the slides after the \meta{end slide} it is set to \meta{end value}.
+
+ \example
+\begin{verbatim}
+\newcount\opaqueness
+\begin{frame}
+ \animate<2-10>
+ \animatevalue<1-10>{\opaqueness}{100}{0}
+ \begin{colormixin}{\the\opaqueness!averagebackgroundcolor}
+ \frametitle{Fadeout Frame}
+
+ This text (and all other frame content) will fade out when the
+ second slide is shown. This even works with
+ {\color{green!90!black}colored} \alert{text}.
+ \end{colormixin}
+\end{frame}
+
+\newcount\opaqueness
+\newdimen\offset
+\begin{frame}
+ \frametitle{Flying Theorems (You Really Shouldn't!)}
+
+ \animate<2-14>
+
+ \animatevalue<1-15>{\opaqueness}{100}{0}
+ \animatevalue<1-15>{\offset}{0cm}{-5cm}
+ \begin{colormixin}{\the\opaqueness!averagebackgroundcolor}
+ \hskip\offset
+ \begin{minipage}{\textwidth}
+ \begin{theorem}
+ This theorem flies out.
+ \end{theorem}
+ \end{minipage}
+ \end{colormixin}
+
+ \animatevalue<1-15>{\opaqueness}{0}{100}
+ \animatevalue<1-15>{\offset}{-5cm}{0cm}
+ \begin{colormixin}{\the\opaqueness!averagebackgroundcolor}
+ \hskip\offset
+ \begin{minipage}{\textwidth}
+ \begin{theorem}
+ This theorem flies in.
+ \end{theorem}
+ \end{minipage}
+ \end{colormixin}
+\end{frame}
+\end{verbatim}
+
+ \articlenote
+ This command is ignored in |article| mode.
+\end{command}
+
+If your animation ``graphics'' reside in individual external graphic files, you might also consider using the |\multiinclude| command, which is explained in Section~\ref{section-mpmulti}, together with |\animate|. For example, you might create an animation like this, assuming you have created graphic files named |animation.1| through to |animation.10|:
+
+\begin{verbatim}
+\begin{frame}
+ \animate<2-9>
+ \multiinclude[start=1]{animation}
+\end{frame}
+\end{verbatim}
+
+\subsubsection{Including External Animations Residing in Multiple Image Files}
+\label{section-xmpmulti}
+\label{section-mpmulti}
+
+Some animations reside in external files in the following way: For each stage of the animation there is an image file containing an image for this stage. You can include such a series of images conveniently by using the style |mpmulti.sty| from the ppower4 package. This style, written by Klaus Guntermann, introduces a command called |\multiinclude| that takes the base name of a graphic file like |mygraphic| and will then search for files called |mygraphic.0|, |mygraphic.1|, and so on, till no more files are found. It will then include these graphics files using the |\includegraphics| command, but will put these graphics ``on top of each other.'' Furthermore, and this is the important part, it inserts a |\pause| command after each graphic. This command is defined in the ppower4 package and has the same effect as the |\pause| command of \beamer. For this reason, both ppower4 and also \beamer\ will first display the basic graphic and will then additionally show the next graphic on each slide.
+
+If you try to use |mpmulti.sty| directly, you will run into the problem that it includes a file called |pause.sty|, which is part of the ppower4 package.
+
+You might also consider using the style |xmpmulti.sty| that comes with \beamer. This file is mainly identical to |mpmulti|, except for two differences: First, it does not include |pause.sty|, a style that conceptually clashes with \beamer, although \beamer\ contains a workaround that sidesteps the problem. Second, it extends the |\multiinclude| command by allowing a special default overlay specification to be given. The effect of this is explained below.
+
+\begin{package}{{xmpmulti}}
+ Defines the command |\multiinclude|. The code of this package is due to Klaus Guntermann with some additions of mine. It can be used together with \beamer\ and with ppower4, i.\,e., it can be used as a replacement for |mpmulti| if the |pause| package is also included in a ppower4-presentation.
+\end{package}
+
+\begin{command}{\multiinclude\opt{|[<|\meta{default overlay specification}|>]|}\oarg{options}\marg{base file name}}
+ Except for the possibility of specifying a \meta{default overlay specification}, this command is identical to the |\multiinclude| command from the ppower4 package.
+
+ If no overlay specification is given, the command will search for files called \meta{base file name}|.|\meta{number} for increasing numbers \meta{number}, starting with zero. As long as it finds these files, it issues an |\includegraphics| command on them. The files following the first one are put ``on top'' of the first one. Between any two invocations of |\includegraphics|, a |\pause| command is inserted. You can modify this behavior in different ways by given suitable \meta{options}, see below.
+
+ \example
+ Assume that MetaPost has created files called |gra.0|, |gra.1|, and |gra.2|. You can then create frame consisting of three slides that incrementally show the graphic as follows:
+
+\begin{verbatim}
+\begin{frame}
+ \multiinclude{gra}
+\end{frame}
+\end{verbatim}
+
+ The effect of providing a \meta{default overlay specification} is the following: First, no |\pause| command is inserted between graphics. Instead, each graphic is surrounded by an |actionenv| environment with the overlay specification set to \meta{default overlay specification}.
+
+ \example
+ You can create the same effect as in the previous example using |\multiinclude[<+->]{gra}|.
+
+ \example
+ For a more interesting usage of the \meta{default overlay specification}, consider the following usage:
+
+\begin{verbatim}
+\multiinclude[<alert@+| +->]{gra}
+\end{verbatim}
+
+ This will always paint the most recently added part of the graphic in red (assuming you do not use special colors in the graphic itself).
+
+ \example
+ In order to have each graphic completely \emph{replace} the previous one, you could use |\multiinclude[<+>]{gra}|.
+
+ The following \meta{options} may be given (these are the same as for the original command from the ppower4 package):
+ \begin{itemize}
+ \item
+ \declare{|pause=|\meta{command}} replaces the default pausing command |\pause| by \meta{command}. If a \meta{default overlay specification} is given, the default pausing command is empty; otherwise it is |\pause|. Note that commands like |\pauselevel| are not available in |\beamer|.
+ \item
+ \declare{|graphics=|\meta{options}} passes the \meta{options} to the |\includegraphics| command.
+
+ \example |\multiinclude[graphics={height=5cm}]{gra}|
+ \item
+ \declare{|format=|\meta{extension}} will cause the file names for which we search change from \meta{base file name}|.|\meta{number} to \meta{base file name}|-|\meta{number}|.|\meta{extension}. Note the change from the dot to a hyphen. This option allows you to include, say, |.jpg| files.
+ \item
+ \declare{|start=|\meta{number}} specifies the start \meta{number}. The default is zero.
+ \item
+ \declare{|end=|\meta{number}} specifies the end \meta{number}. The default is infinity.
+ \end{itemize}
+\end{command}
+
+Note that, if you do not use the |format=| option, the |\includegraphics| command will be somewhat at a loss in which format your graphic file actually is. After all, it ends with the cryptic ``format suffix'' |.0| or |.1|. You can tell |\includegraphics| that any file having a suffix it knows nothing about is actually in format, say, |.mps|, using the following command:
+
+\begin{verbatim}
+\DeclareGraphicsRule{*}{mps}{*}{}
+\end{verbatim}
+
+
+\subsection{Sounds}
+\label{section-sound}
+
+You can include sounds in a presentation. Such sound can be played when you open a slide or when a certain button is clicked. The commands for including sounds are defined in the package |multimedia|, which is introduced in Section~\ref{section-multimedia}.
+
+As was already pointed out in Section~\ref{section-multimedia}, a sound can be included in a \pdf\ presentation by treating it as a movie and using the |\movie| command. While this is perfectly sufficient in most cases, there are two cases where this approach is not satisfactory:
+\begin{enumerate}
+\item
+ When a page is closed, any playing movie is immediately stopped. Thus, you cannot use the |\movie| command to create sounds that persist for a longer time.
+\item
+ You cannot play two movies at the same time.
+\end{enumerate}
+
+The \pdf\ specification introduces special sound objects, which are treated quite differently from movie objects. You can create a sound object using the command |\sound|, which is somewhat similar to |\movie|. There also exists a |\hyperlinksound| command, which is similar to |\hyperlinkmovie|. While it is conceptually better to use |\sound| for sounds, there are a number of things to consider before using it:
+\begin{itemize}
+\item
+ Several sounds \emph{can} be played at the same time. In particular, it is possible to play a general sound in parallel to a (hopefully silent) movie.
+\item
+ A sound playback \emph{can} persist after the current page is closed (though it need not).
+\item
+ The data of a sound file \emph{can} be completely embedded in a \pdf\ file, obliterating the need to ``carry around'' other files.
+\item
+ The sound objects do \emph{not} work together with |dvips| and |ps2pdf|. They only work with |pdflatex|.
+\item
+ There is much less control over what part of a sound should be played. In particular, no control bar is shown and you can specify neither the start time nor the duration.
+\item
+ A bug in some versions of the Acrobat Reader makes it necessary to provide very exact details on the encoding of the sound file. You have to provide the sampling rate, the number of channels (mono or stereo), the number of bits per sample, and the sample encoding method (raw, signed, Alaw or $\mu$law). If you do not know this data or provide it incorrectly, the sound will be played incorrectly.
+\item
+ It seems that you can only include uncompressed sound data, which can easily become huge. This is not required by the specification, but some versions of Acrobat Reader are unable to play any compressed data. Data formats that \emph{do} work are |.aif| and |.au|.
+\end{itemize}
+
+\begin{command}{\sound\oarg{options}\marg{sound poster text}\marg{sound filename}}
+ This command will insert the sound with the filename \meta{sound filename} into the \pdf\ file. As for |\movie|, the file must be accessible when the sound is to be played. Unlike |\movie|, you can however use the option |inlinesound| to actually embed the sound data in the \pdf\ file.
+
+ Also as for a movie, the \meta{sound poster text} will be be put in a box that, when clicked on, will start playing the movie. However, you might also leave this box empty and only use the |autostart| option. Once playback of a sound has started, it can only be stopped by starting the playback of a different sound or by use of the |\hyperlinkmute| command.
+
+ The supported sound formats depend on the viewer application. Some versions of Acrobat Reader support |.aif| and |.au|. Sometimes you also need to specify information like the sampling rate, even though this information could be extracted from the sound file and even though the \pdf\ standard specifies that the viewer application should do so. In this regard, some versions of Acrobat Reader seem to be non-standard-conforming.
+
+ This command only works together with |pdflatex|. If you use |dvips|, the poster is still shown, but clicking it has no effect and no sound is embedded in any way.
+
+ \example
+ |\sound[autostart,samplingrate=22050]{}{applause.au}|
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|autostart|}. Causes the sound to start playing immediately when the page is shown.
+ \item
+ \declare{|automute|}. Causes all sounds to be muted when the current page is left.
+ \item
+ \declare{|bitspersample=|}\meta{8 or 16}. Specifies the number of bits per sample in the sound file. If this number is 16, this option need not be specified.
+ \item
+ \declare{|channels=|}\meta{1 or 2}. Specifies whether the sound is mono or stereo. If the sound is mono, this option need not be specified.
+ \item
+ \declare{|depth=|}\meta{\TeX\ dimension}. Overrides the depth of the \meta{sound poster text} box and sets it to the given dimension.
+ \item
+ \declare{|encoding=|}\meta{method}. Specifies the encoding method, which may be |Raw|, |Signed|, |muLaw|, or |ALaw|. If the method is |muLaw|, this option need not be specified.
+ \item
+ \declare{|height=|}\meta{\TeX\ dimension}. Overrides the height of the \meta{sound poster text} box and sets it to the given dimension.
+ \item
+ \declare{|inlinesound|} causes the sound data to be stored directly in the \pdf-file.
+ \item
+ \declare{|label=|}\meta{sound label}. Assigns a label to the sound such that it can later be referenced by the command |\hyperlinksound|, which can be used to start a sound. The \meta{sound label} is not a normal label.
+ \item
+ \declare{|loop|} or \declare{|repeat|}. Causes the sound to start again when the end has been reached.
+ \item
+ \declare{|mixsound=|}\meta{true or false}. If set to |true|, the sound is played in addition to any sound that is already playing. If set to |false| all other sounds (though not sound from movies) are stopped before the sound is played. The default is |false|.
+ \item
+ \declare{|samplingrate=|}\meta{number}. Specifies the number of samples per second in the sound file. If this number is 44100, this option need not be specified.
+ \item
+ \declare{|width=|}\meta{\TeX\ dimension} works like the |height| option, only for the width of the poster box.
+ \end{itemize}
+
+ \example
+ The following example creates a ``background sound'' for the slide, assuming that |applause.au| is encoded correctly (44100 samples per second, mono, $\mu$law encoded, 16 bits per sample).
+
+\begin{verbatim}
+\sound[autostart]{}{applause.au}
+\end{verbatim}
+\end{command}
+
+Just like movies, sounds can also serve as destinations of special sound hyperlinks.
+
+\begin{command}{\hyperlinksound\oarg{options}\marg{sound label}\marg{text}}
+ Causes the \meta{text} to become a sound hyperlink. When you click on the \meta{text}, the sound with the label \meta{sound label} will start to play.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|loop|} or \declare{|repeat|}. Causes the sound to start again when the end has been reached.
+ \item
+ \declare{|mixsound=|}\meta{true or false}. If set to |true|, the sound is played in addition to any sound that is already playing. If set to |false| all other sounds (though not sound from movies) are stopped before the sound is played. The default is |false|.
+ \end{itemize}
+\end{command}
+
+Since there is no direct way of stopping the playback of a sound, the following command is useful:
+
+\begin{command}{\hyperlinkmute\marg{text}}
+ Causes the \meta{text} to become a hyperlink that, when clicked, stops the playback of all sounds.
+\end{command}
+
+
+\subsection{Slide Transitions}
+
+\pdf\ in general, and the Acrobat Reader in particular, offer a standardized way of defining \emph{slide transitions}. Such a transition is a visual effect that is used to show the slide. For example, instead of just showing the slide immediately, whatever was shown before might slowly ``dissolve'' and be replaced by the slide's content.
+
+There are a number of commands that can be used to specify what effect should be used when the current slide is presented. Consider the following example:
+\begin{verbatim}
+\frame{\pgfuseimage{youngboy}}
+\frame{
+ \transdissolve
+ \pgfuseimage{man}
+}
+\end{verbatim}
+The command |\transdissolve| causes the slide of the second frame to be shown in a ``dissolved way.'' Note that the dissolving is a property of the second frame, not of the first one. We could have placed the command anywhere on the frame.
+
+The transition commands are overlay-specification-aware. We could collapse the two frames into one frame like this:
+\begin{verbatim}
+\begin{frame}
+ \only<1>{\pgfuseimage{youngboy}}
+ \only<2>{\pgfuseimage{man}}
+ \transdissolve<2>
+\end{frame}
+\end{verbatim}
+This states that on the first slide the young boy should be shown, on the second slide the old man should be shown, and when the second slide is shown, it should be shown in a ``dissolved way.''
+
+In the following, the different commands for creating transitional effects are listed. All of them take an optional argument that may contain a list of \meta{key}|=|\meta{value} pairs. The following options are possible:
+\begin{itemize}
+\item
+ |duration=|\meta{seconds}. Specifies the number of \meta{seconds} the transition effect needs. Default is one second, but often a shorter one (like 0.2 seconds) is more appropriate. Viewer applications, especially Acrobat, may interpret this option in slightly strange ways.
+\item
+ |direction=|\meta{degree}. For ``directed'' effects, this option specifies the effect's direction. Allowed values are |0|, |90|, |180|, |270|, and for the glitter effect also |315|.
+\end{itemize}
+
+\articlenote
+All of these commands are ignored in |article| mode.
+
+\begin{command}{\transblindshorizontal\sarg{overlay specification}\oarg{options}}
+ Show the slide as if horizontal blinds were pulled away.
+ \example|\transblindshorizontal|
+\end{command}
+
+\begin{command}{\transblindsvertical\sarg{overlay specification}\oarg{options}}
+ Show the slide as if vertical blinds were pulled away.
+ \example|\transblindsvertical<2,3>|
+\end{command}
+
+\begin{command}{\transboxin\sarg{overlay specification}\oarg{options}}
+ Show the slide by moving to the center from all four sides.
+ \example|\transboxin<1>|
+\end{command}
+
+\begin{command}{\transboxout\sarg{overlay specification}\oarg{options}}
+ Show the slide by showing more and more of a rectangular area that is centered on the slide center.
+ \example|\transboxout|
+\end{command}
+
+\begin{command}{\transcover\sarg{overlay specification}\oarg{options}}
+ Show the slide by covering the content that was shown before.
+ \example|\transcover|
+\end{command}
+
+\begin{command}{\transdissolve\sarg{overlay specification}\oarg{options}}
+ Show the slide by slowly dissolving what was shown before.
+ \example|\transdissolve[duration=0.2]|
+\end{command}
+
+\begin{command}{\transfade\sarg{overlay specification}\oarg{options}}
+ Show the slide by slowly fading what was shown before.
+ \example|\transfade|
+\end{command}
+
+\begin{command}{\transglitter\sarg{overlay specification}\oarg{options}}
+ Show the slide with a glitter effect that sweeps in the specified direction.
+ \example|\transglitter<2-3>[direction=90]|
+\end{command}
+
+\begin{command}{\transpush\sarg{overlay specification}\oarg{options}}
+ Show the slide by pushing what was shown before off the screen using
+ the new content.
+ \example|\transpush|
+\end{command}
+
+\begin{command}{\transreplace\sarg{overlay specification}\oarg{options}}
+ Replace the previous slide directly (default behaviour).
+\end{command}
+
+\begin{command}{\transsplitverticalin\sarg{overlay specification}\oarg{options}}
+ Show the slide by sweeping two vertical lines from the sides inward.
+ \example|\transsplitverticalin|
+\end{command}
+
+\begin{command}{\transsplitverticalout\sarg{overlay specification}\oarg{options}}
+ Show the slide by sweeping two vertical lines from the center outward.
+ \example|\transsplitverticalout|
+\end{command}
+
+\begin{command}{\transsplithorizontalin\sarg{overlay specification}\oarg{options}}
+ Show the slide by sweeping two horizontal lines from the sides inward.
+ \example|\transsplithorizontalin|
+\end{command}
+
+\begin{command}{\transsplithorizontalout\sarg{overlay specification}\oarg{options}}
+ Show the slide by sweeping two horizontal lines from the center outward.
+ \example|\transsplithorizontalout|
+\end{command}
+
+\begin{command}{\transwipe\sarg{overlay specification}\oarg{options}}
+ Show the slide by sweeping a single line in the specified direction, thereby ``wiping out'' the previous contents.
+ \example|\transwipe[direction=90]|
+\end{command}
+
+You can also specify how \emph{long} a given slide should be shown, using the following overlay-specification-aware command:
+\begin{command}{\transduration\sarg{overlay specification}\marg{number of seconds}}
+ In full screen mode, show the slide for \meta{number of seconds}. If zero is specified, the slide is shown as short as possible. This can be used to create interesting pseudo-animations.
+ \example|\transduration<2>{1}|
+ Notice that the \emph{duration} of a slide transition is entire separate from the \emph{type} of transition which takes place. Most notably, to cancel an existing auto-advance you need to use
+ \example|\transduration{}|
+possibly with an overlay specification.
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-color.tex b/macros/latex/contrib/beamer/doc/beamerug-color.tex
new file mode 100644
index 0000000000..47945b8922
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-color.tex
@@ -0,0 +1,548 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Colors}
+
+\label{section-colors}
+
+\beamer's color management allows you to specify the color of every element (like, say, the color of the section entries in a table of contents or, say, the color of the subsection entries in a mini table of contents in a sidebar). While the system is quite powerful, it is not trivial to use. To simplify the usage of the color system, you should consider using a predefined color theme, which takes care of everything for you.
+
+In the following, color themes are explained first. The rest of the section consists of explanations of how the color management works internally. You will need to read these sections only if you wish to write your own color themes; or if you are quite happy with the predefined themes but you absolutely insist that displayed mathematical text simply has to be typeset in a lovely pink.
+
+
+\subsection{Color Themes}
+
+In order to also show the effect of the different color themes on the sidebar, in the following examples the color themes are used together with the outer theme |sidebar|.
+
+\subsubsection{Default and Special-Purpose Color Themes}
+
+\begin{colorthemeexample}{default}
+ The |default| color theme is very sober. It installs little special colors and even less backgrounds. The default color theme sets up the default parent relations between the different \beamer-colors.
+
+ The main colors set in the |default| color theme are the following:
+ \begin{itemize}
+ \item
+ |normal text| is black on white.
+ \item
+ |alerted text| is red.
+ \item
+ |example text| is a dark green (green with 50\% black).
+ \item
+ |structure| is set to a light version of MidnightBlue (more precisely, 20\% red, 20\% green, and 70\% blue).
+ \end{itemize}
+ Use this theme for a no-nonsense presentation. Since this theme is loaded by default, you cannot ``reload'' it after having loaded another color theme.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}[\oarg{options}]{structure}
+ The example was created using |\usecolortheme[named=SeaGreen]{structure}|.
+
+ This theme offers a convenient way of changing the color used for structural elements. More precisely, it just changes the foreground of the \beamer-color |structure|. You can also achieve this by directly invoking the function |\setbeamercolor|, but this color theme makes things a bit easier.
+
+ The theme offers several \meta{options}, which can be used to specify the color to be used for structural elements:
+ \begin{itemize}
+ \item
+ \declare{|rgb=|\marg{rgb tuple}} sets the |structure| foreground to the specified red-green-blue tuple. The numbers are given as decimals between 0 and 1. For example, |rgb={0.5,0,0}| yields a dark red.
+ \item
+ \declare{|RGB=|\marg{rgb tuple}} does the same as |rgb|, except that the numbers range between 0 and 255. For example, |RGB={128,0,0}| yields a dark red.
+ \item
+ \declare{|cmyk=|\marg{cmyk tuple}} sets the |structure| foreground to the specified cyan-magenta-yellow-black tuple. The numbers are given as decimals between 0 and 1. For example, |cmyk={0,1,1,0.5}| yields a dark red.
+ \item
+ \declare{|cmy=|\marg{cmy tuple}} is similar to |cmyk|, except that the black component is not specified.
+ \item
+ \declare{|hsb=|\marg{hsb tuple}} sets the |structure| foreground to the specified hue-saturation-brightness tuple. The numbers are given as decimals between 0 and 1. For example, |hsb={0,1,.5}| yields a dark red.
+ \item
+ \declare{|named=|\marg{color name}} sets the |structure| foreground to a named color. This color must previously have been defined using the |\DefineNamedColor| command. Adding the class option |xcolor=dvipsnames| or |xcolor=svgnames| will install a long list of standard |dvips| or SVG color names (respectively). See the file |dvipsnam.def| for the list.
+ \end{itemize}
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{sidebartab}
+ This theme changes the colors in a sidebar such that the current entry in a table of contents shown there gets highlighted by showing a different background behind it.
+\end{colorthemeexample}
+
+\subsubsection{Complete Color Themes}
+
+A ``complete'' color theme is a color theme that completely specifies all colors for all parts of a frame. It installs specific colors and does not derive the colors from, say, the |structure| \beamer-color. Complete color themes happen to have names of flying animals.
+
+\begin{colorthemeexample}{albatross}
+ The color theme is a ``dark'' or ``inverted'' theme using yellow on blue as the main colors. The color theme also installs a slightly darker background color for blocks, which is necessary for presentation themes that use shadows, but which (in Till's opinion) is undesirable for all other presentation themes. By using the |lily| color theme together with this theme, the backgrounds for blocks can be removed.
+
+ When using a light-on-dark theme like this one, be aware that there are certain disadvantages:
+ \begin{itemize}
+ \item
+ If the room in which the talk is given has been ``darkened,'' using such a theme makes it more difficult for the audience to take or read notes.
+ \item
+ Since the room becomes darker, the pupil becomes larger, thus making it harder for the eye to focus. This \emph{can} make text harder to read.
+ \item
+ Printing such slides is difficult at best.
+ \end{itemize}
+
+ On the other hand, a light-on-dark presentation often appears to be more ``stylish'' than a plain black-on-white one.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|overlystylish|} installs a background canvas that is, in Till's opinion, way too stylish. But then, it is not his intention to press his taste on other people. When using this option, it is probably a very good idea to also use the |lily| color theme.
+ \end{itemize}
+
+ \example
+ The |overlystylish| option together with the |lily| color theme: \genericthemeexample{colorthemealbatrossstylish}
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{beetle}
+ The main ``theme behind this theme'' is to use white and black text on gray background. The white text is used for special emphasis, the black text for normal text. The ``outer stuff'' like the headline and the footline use, however, a bluish color. To change this color, change the background of |palette primary|.
+
+ Great care must be taken with this theme since both the white/gray and the black/gray contrasts are much lower than with other themes. Make sure that the contrast is high enough for the actual presentation.
+
+ You can change the ``grayish'' background by changing the background of |normal text|.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{crane}
+ This theme uses the colors of Lufthansa, whose logo is a crane. It is \emph{not} an official theme by that company, however.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{dove}
+ This theme is nearly a black and white theme and useful for creating presentations that are easy to print on a black-and-white printer. The theme uses grayscale in certain unavoidable cases, but never color. It also changes the font of alerted text to boldface.
+
+ When using this theme, you should consider using the class option |gray|, which ensures that all colors are converted to grayscale. Also consider using the |structurebold| font theme.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{fly}
+ This theme is the ``consequent'' version of |beetle| and uses white/black/gray throughout. It does not go particularly well with themes that use shadows.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{monarca}
+ The theme is based on the colors of the Monarch butterfly.
+
+ \themeauthor Max Dohse.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{seagull}
+ Like the |dove| color theme, this theme is useful for printing on a black-and-white printer. However, it uses different shades of gray extensively, which may or may not look good on a transparency.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{wolverine}
+ The theme is based on the colors of the University of Michigan's mascot, a wolverine.
+
+ \themeauthor Madhusudan Singh.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{beaver}
+ The theme is based on the colors of MIT's mascot, a beaver.
+
+ \themeauthor Madhusudan Singh.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{spruce}
+ The theme is based on the colors of Michigan State University.
+
+ \themeauthor Alan Munn.
+\end{colorthemeexample}
+
+\subsubsection{Inner Color Themes}
+
+Inner color themes only specify the colors of elements used in inner themes. Most noticeably, they specify the colors used for blocks. They can be used together with other (color) themes. If they are used to change the inner colors installed by a presentation theme or another color theme, they should obviously be specified \emph{after} the other theme has been loaded. Inner color themes happen to have flower names.
+
+\begin{colorthemeexample}{lily}
+ This theme is mainly used to \emph{uninstall} any block colors setup by another theme, restoring the colors used in the |default| theme. In particular, using this theme will remove all background colors for blocks.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{orchid}
+ This theme installs white-on-dark block titles. The background of the title of a normal block is set to the foreground of the structure color, the foreground is set to white. The background of alerted blocks are set to red and of example blocks to green. The body of blocks get a nearly transparent background.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{rose}
+ This theme installs nearly transparent backgrounds for both block titles and block bodies. This theme is much less ``aggressive'' than the |orchid| theme. The background colors are derived from the foreground of the structure \beamer-color.
+\end{colorthemeexample}
+
+\subsubsection{Outer Color Themes}
+
+An outer color theme changes the palette colors, on which the colors used in the headline, footline, and sidebar are based by default. Outer color themes normally do not change the color of inner elements, except possibly for |titlelike|. They happen to be sea-animal names.
+
+\begin{colorthemeexample}{whale}
+ Installs a white-on-dark palette for the headline, footline, and sidebar. The backgrounds used there are set to shades between the structure \beamer-color and black. The foreground is set to white.
+
+ While this color theme can appear to be aggressive, you should note that a dark bar at the border of a frame will have a somewhat different appearance during a presentation than it has on paper: During a presentation the projection on the wall is usually surrounded by blackness. Thus, a dark bar will not create a contrast as opposed to the way it does on paper. Indeed, using this theme will cause the main part of the frame to be more at the focus of attention.
+
+ The counterpart to the theme with respect to blocks is the |orchid| theme. However, pairing it with the |rose| color theme is also interesting.
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{seahorse}
+ Installs a near-transparent backgrounds for the headline, footline, and sidebar. Using this theme will cause navigational elements to be much less ``dominant'' than when using the |whale| theme (see the discussion on contrast there, though).
+
+ It goes well with the |rose| or the |lily| color theme. Pairing it with the |orchid| overemphasizes blocks (in Till's opinion).
+\end{colorthemeexample}
+
+\begin{colorthemeexample}{dolphin}
+ A color theme somewhere in the middle between the whale and the seahorse. It was graciously donated by Manuel Carro. Like the seahorse, it goes well with the |rose| and the |lily| color theme.
+\end{colorthemeexample}
+
+
+\subsection{Changing the Colors Used for Different Elements of a Presentation}
+
+This section explains how \beamer's color management works.
+
+\subsubsection{Overview of Beamer's Color Management}
+
+In \beamer's philosophy, every element of a presentation can have a different color. Unfortunately, it turned out that simply assigning a single color to every element of a presentation is not such a good idea. First of all, we sometimes want colors of elements to change during a presentation, like the color of the item indicators when they become alerted or inside an example block. Second, some elements naturally have two colors, namely a foreground and a background, but not always. Third, sometimes elements somehow should not have any special color but should simply ``run along'' with the color of their surrounding. Finally, giving a special color to every element makes it very hard to globally change colors (like changing all the different kind-of-blue things into kind-of-red things) and it makes later extensions even harder.
+
+For all these reasons, the color of an element in \beamer\ is a structured object, which we call a \emph{\beamer-color}. Every \beamer-color has two parts: a foreground and a background. Either of these may be ``empty,'' which means that whatever foreground or background was active before should remain active when the color is used.
+
+\beamer-colors can \emph{inherit} from other \beamer-colors and the default themes make extensive use of this feature. For example, there is a \beamer-color called |structure| and all sorts of elements inherit from this color. Thus, if someone changes |structure|, the color of all these elements automatically change accordingly. When a color inherits from another color, it can nevertheless still override only the foreground or the background.
+
+It is also possible to ``inherit'' from another \beamer-color in a more sophisticated way, which is more like \emph{using} the other \beamer-color in an indirect way. You can specify that, say, the background of the title should be a 90\% of the background of normal text and 10\% of the foreground of |structure|.
+
+Inheritance and using of other \beamer-colors is done dynamically. This means that if one of the parent \beamer-colors changes during the presentation, the derived colors automatically also change.
+
+The default color theme, which is always loaded, installs numerous \beamer-colors and inheritance relations between them. These colors are explained throughout this guide. The color used for, say, frametitles is discussed in the section on frametitles, and so on.
+
+\subsubsection{Using Beamer's Colors}
+
+A \beamer-color is not a normal color as defined by the |color| and |xcolor| packages and, accordingly, cannot be used directly as in commands like |\color| or |\colorlet|. Instead, in order to use a \beamer-color, you should first call the command |\usebeamercolor|, which is explained below. This command will setup two (normal) colors called |fg| (for foreground) and |bg| (for, well, guess what). You can then say |\color{fg}| to install the foreground color and |\color{bg}| to install the background color. You can also use the colors |fg| and |bg| in any context in which you normally use a color like, say, |red|. If a \beamer-color does not have a foreground or a background, the colors |fg| or |bg| (or both) remain unchanged.
+
+Inside templates, this command will typically have already been called for you with the option |[fg]|.
+
+\begin{command}{\usebeamercolor\opt{|*|}\oarg{fg or bg}\marg{beamer-color name}}
+ This command (possibly) changes the two colors |fg| and |bg| to the foreground and background color of the \meta{beamer-color name}. If the \beamer-color does not specify a foreground, |fg| is left unchanged; if does not specify a background, |bg| is left unchanged.
+
+ You will often wish to directly use the color |fg| or |bg| after using this command. For this common situation, the optional argument \meta{fg or bg} is useful, which may be either |fg| or |bg|. Giving this option will cause the foreground |fg| or the background |bg| to be immediately installed after they have been setup. Thus, the following command
+
+\begin{verbatim}
+\usebeamercolor[fg]{normal text}
+\end{verbatim}
+ is a shortcut for
+\begin{verbatim}
+\usebeamercolor{normal text}
+\color{fg}
+\end{verbatim}
+
+ If you use the starred version of this command, the \beamer-color |normal text| is used before the command is invoked. This ensures that, barring evil trickery, the colors |fg| and |bg| will be setup independently of whatever colors happened to be in use when the command is invoked.
+
+ This command has special side-effects. First, the (normal) color |parent.bg| is set to the value of |bg| prior to this call. Thus you can access the color that was in use prior to the call of this command via the color |parent.bg|.
+
+ Second, the special color \meta{beamer-color name}|.fg| is \emph{globally} set to the same value as |fg| and \meta{beamer-color name}|.bg| is globally set to the value of |bg|. This allows you to access the foreground or background of a certain \meta{beamer-color name} after another \beamer-color has been used. However, referring to these special global colors should be kept to the unavoidable minimum and should be done as locally as possible since a change of the \beamer-color will not reflect in a change of the colors \meta{beamer-color name}|.fg| and \meta{beamer-color name}|.bg| until the next invocation of |\usebeamercolor|. Also, if the \meta{beamer-color name} does not specify a foreground or a background color, then the values of the special colors are whatever happened to be the foreground or background at the time of the last invocation of |\usebeamercolor|.
+
+ So, try not to get into the habit of writing |\color{structure.fg}| all the time, at least not without a |\usebeamercolor{structure}| close by.
+
+ \example
+\begin{verbatim}
+ This text is {\usebeamercolor[fg]{alerted text} alerted}. The
+ following box uses the fore- and background of frametitles:
+ {
+ \usebeamercolor[fg]{frametitle}
+ \colorbox{bg}{Frame Title}
+ }
+\end{verbatim}
+
+ \articlenote
+ This command has no effect in |article| mode.
+\end{command}
+
+
+\begin{command}{\ifbeamercolorempty\oarg{fg or bg}\marg{beamer-color name}\marg{if undefined}\marg{if defined}}
+ This command can be used to check whether the foreground or background of some \meta{beamer-color name} is non-empty. If the foreground or background of \meta{beamer-color name} is defined, \meta{if defined} will be executed, otherwise the \meta{if undefined} code.
+
+ \example
+\begin{verbatim}
+\ifbeamercolorempty[bg]{frametitle}
+{ % ``Transparent background''
+ \usebeamercolor[fg]{frametitle}
+ \insertframetitle
+}
+{ % Opaque background
+ \usebeamercolor[fg]{frametitle}
+ \colorbox{bg}{\insertframetitle}
+}
+\end{verbatim}
+\end{command}
+
+\subsubsection{Setting Beamer's Colors}
+
+To set or to change a \beamer-color, you can use the command |\setbeamercolor|.
+
+\begin{command}{\setbeamercolor\opt{|*|}\marg{beamer-color name}\marg{options}}
+ Sets or changes a \beamer-color. The \meta{beamer-color name} should be a reasonably simple text (do not try too much trickery and avoid punctuation symbols), but it may contain spaces. Thus, |normal text| is a valid \meta{beamer-color name} and so is |My Color Number 2|.
+
+ In the most simple case, you just specify a foreground by giving the |fg=| option and, possibly, also a background using the |bg=| option.
+
+ \example |\setbeamercolor{normal text}{fg=black,bg=mylightgrey}|
+ \example |\setbeamercolor{alerted text}{fg=red!80!black}|
+
+ The effect of this command is accumulative, thus the following two commands
+
+\begin{verbatim}
+\setbeamercolor{section in toc}{fg=blue}
+\setbeamercolor{section in toc}{bg=white}
+\end{verbatim}
+ have the same effect as
+\begin{verbatim}
+\setbeamercolor{section in toc}{fg=blue,bg=white}
+\end{verbatim}
+
+ Naturally, a second call with the same kind of \meta{option} set to a different value overrides a previous call.
+
+ The starred version first resets everything, thereby ``switching off'' the accumulative effect. Use this starred version to completely reset the definition of some \beamer-color.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|fg=|\meta{color}} sets the foreground color of \meta{beamer-color name} to the given (normal) \meta{color}. The \meta{color} may also be a color expression like |red!50!black|, see the manual of the \textsc{xcolor} package. If \meta{color} is empty, the \meta{beamer-color name} ``has no special foreground'' and when the color is used, the foreground currently in force should not be changed.
+
+ Specifying a foreground this way will override any inherited foreground color.
+ \item
+ \declare{|bg=|\meta{color}} does the same as the |fg| option, but for the background.
+ \item
+ \declare{|parent=|\meta{parent beamer-color(s)}} specifies that \meta{beamer-color name} should inherit from the specified \meta{parent beamer-color(s)}. Any foreground and/or background color set by the parents will also be used when \meta{beamer-color name} is used. If multiple parents specify a foreground, the last one ``wins''; and likewise for the backgrounds.
+
+ \example
+\begin{verbatim}
+\setbeamercolor{father}{fg=red}
+\setbeamercolor{mother}{bg=green}
+\setbeamercolor{child}{parent={father,mother}}
+\begin{beamercolorbox}{child}
+ Terrible red on green text.
+\end{beamercolorbox}
+
+\setbeamercolor{father}{fg=blue}
+\begin{beamercolorbox}{child}
+ Now terrible blue on green text, since parent was changed.
+\end{beamercolorbox}
+\end{verbatim}
+
+ Note that a change of the foreground or background of a parent changes the corresponding foreground or background of the child (unless it is overruled).
+
+ A \beamer-color can not only have parents, but also grandparents and so on.
+ \item
+ \declare{|use=|\meta{another beamer-color}} is used to make sure that another \beamer-color is setup correctly before the foreground or background color specification are evaluated.
+
+ Suppose you wish the foreground of items to be a mixture of 50\% of the foreground of structural elements and 50\% of the normal foreground color. You could try
+
+\begin{verbatim}
+\setbeamercolor{item}{fg=structure.fg!50!normal text.fg}
+\end{verbatim}
+
+ However, this will not necessarily give the desired result: If the \beamer-color |structure| changes, the (normal) color |structure.fg| is not immediately updated. In order to ensure that the normal color |structure.fg| is correct, use the following:
+
+\begin{verbatim}
+\setbeamercolor{item}{use={structure,normal text},fg=structure.fg!50!normal text.fg}
+\end{verbatim}
+
+ This will guarantee that the colors |structure.fg| and |normal text.fg| are setup correctly when the foreground of |item| is computed.
+
+ To show the difference, consider the following example:
+
+\begin{verbatim}
+\setbeamercolor{grandfather}{fg=red}
+\setbeamercolor{grandmother}{bg=white}
+\setbeamercolor{father}{parent={grandfather,grandmother}}
+\setbeamercolor{mother}{fg=black}
+{
+ \usebeamercolor{father}\usebeamercolor{mother}
+ %% Defines father.fg and mother.fg globally
+}
+\setbeamercolor{my color A}{fg=father.fg!50!mother.fg}
+\setbeamercolor{my color B}{use={father,mother},fg=father.fg!50!mother.fg}
+
+{\usebeamercolor[fg]{my color A} dark red text}
+{\usebeamercolor[fg]{my color B} also dark red text}
+
+\setbeamercolor{grandfather}{fg=green}
+
+{\usebeamercolor[fg]{my color A} still dark red text}
+{\usebeamercolor[fg]{my color B} now dark green text}
+\end{verbatim}
+ \end{itemize}
+\end{command}
+
+
+\subsection{The Color of Mathematical Text}
+
+By default, mathematical text does not have any special color---it just inherits the ``surrounding'' color. Some people prefer mathematical text to have some special color. Though we do not recommend this (we believe mathematical text should \emph{not} stand out amid the normal text), \beamer\ makes it (reasonably) easy to change the color of mathematical text. Simply change the following colors:
+
+\begin{element}{math text}\no\yes\no
+ This color is the parent of |math text inlined| and |math text displayed|. It is empty by default. See those colors for details.
+\end{element}
+
+\begin{element}{math text inlined}\no\yes\no
+ \colorparents{math text}
+ If the foreground of this color is set, inlined mathematical text is typeset using this color. This is done via some |\everymath| hackery and may not work in all cases. If not, you'll have to try to find a way around the problem. The background is currently ignored.
+\end{element}
+
+\begin{element}{math text displayed}\no\yes\no
+ \colorparents{math text}
+ Like |math text inlined|, only for so-called ``displayed'' mathematical text. This is mathematical text between |\[| and |\]| or between |$$| and |$$| or inside environments like |equation| or |align|. The setup of this color is somewhat fragile, use at your own risk. The background is currently ignored.
+\end{element}
+
+\begin{element}{normal text in math text}\no\yes\no
+ If the foreground of this color is set, normal text inside mathematical text (which is introduced using the |\text| command) will be typeset using this color. The background is currently ignored.
+\end{element}
+
+
+\subsection{The Color Palettes}
+
+When one designs a color theme, one faces the following problem: Suppose we want the colors in the headline to gradually change from black to, say, blue. Whatever is at the very top of the headline should be black, what comes right below it should be dark blue, and at the bottom of the headline things should just be blue. Unfortunately, different outer themes will put different things at the top. One theme might put the author at the top, another theme might put the document title there. This makes it impossible to directly assign one of the three colors ``black'', ``dark blue,'' and ``blue'' to the different elements that are typically rendered in the headline. No matter how we assign them, things will look wrong for certain outer themes.
+
+To circumvent this problem, \beamer\ uses a layer of \emph{palette colors}. Color themes typically only change these palette colors. For example, a color theme might make the \beamer-color |palette primary| blue, make |palette secondary| a dark blue, and make |palette tertiary| black. Outer themes can now setup things such that whatever they show at the top of the headline inherits from |palette primary|, what comes below inherits from |palette secondary|, and whatever is at the bottom inherits from |palette tertiary|. This way, color themes can change the way even complicated outer themes look and they can do so consistently.
+
+Note that the user can still change the color of every element individually, simply by overriding the color(s) of the elements in the headline. In a sense, the palette colors are just a ``suggestion'' how things should be colored by an outer theme.
+
+In detail, the following palette colors are used by outer themes.
+
+\begin{element}{palette primary}\no\yes\no
+ Outer themes (should) base the color of navigational elements and, possibly, also of other elements, on the four palette colors. The ``primary'' palette should be used for the most important navigational elements, which are usually the ones that change most often and hence require the most attention by the audience. The ``secondary'' and ``tertiary'' are less important, the ``quaternary'' one is the least important.
+
+ By default, the palette colors do not have a background and the foreground ranges from |structure.fg| to |black|.
+
+ For the sidebar, there is an extra set of palette colors, see |palette sidebar primary|.
+\end{element}
+
+\begin{element}{palette secondary}\no\yes\no
+ See |palette primary|.
+\end{element}
+
+\begin{element}{palette tertiary}\no\yes\no
+ See |palette primary|.
+\end{element}
+
+\begin{element}{palette quaternary}\no\yes\no
+ See |palette primary|.
+\end{element}
+
+\begin{element}{palette sidebar primary}\no\yes\no
+ Similar to |palette primary|, only outer themes (should) base the colors of elements in the sidebar on the four sidebar palette colors.
+\end{element}
+
+\begin{element}{palette sidebar secondary}\no\yes\no
+ See |palette sidebar primary|.
+\end{element}
+
+\begin{element}{palette sidebar tertiary}\no\yes\no
+ See |palette sidebar primary|.
+\end{element}
+
+\begin{element}{palette sidebar quaternary}\no\yes\no
+ See |palette sidebar primary|.
+\end{element}
+
+
+\subsection{Miscellaneous Colors}
+
+In this section some ``basic'' colors are listed that do not ``belong'' to any special commands.
+
+\begin{element}{normal text}\no\yes\yes
+ The color is used for normal text. At the beginning of the document the foreground color is installed as |\normalcolor|. The background of this color is used by the default background canvas for the background of the presentation, see Section~\ref{section-canvas}. The background is also the default value of the normal color |bg|.
+
+ Since the color is the ``root'' of all other \beamer-colors, both a foreground and a background must be installed. In particular, to get a transparent background canvas, make the background of the \beamer-color |background canvas| empty, not the background of this color.
+
+ The \beamer-font currently is not used. In particular, redefining this font will not have any effect. This is likely to change in the future.
+\end{element}
+
+\begin{element}{example text}\no\yes\yes
+ The color/font is used when text is typeset inside an |example| block.
+\end{element}
+
+\begin{element}{titlelike}\no\yes\yes
+ This color/font is a more specialized form of the |structure| color/font. It is the base for all elements that are ``like titles.'' This includes the frame title and subtitle as well as the document title and subtitle.
+\end{element}
+
+\begin{element}{separation line}\no\yes\no
+ The foreground of this color is used for separating lines. If the foreground is empty, no separation line is drawn.
+\end{element}
+
+\begin{element}{upper separation line head}\no\yes\no
+ \colorparents{separation line}
+ Special case for the uppermost separation line in a headline.
+\end{element}
+
+\begin{element}{middle separation line head}\no\yes\no
+ \colorparents{separation line}
+ Special case for the middle separation line in a headline.
+\end{element}
+
+\begin{element}{lower separation line head}\no\yes\no
+ \colorparents{separation line}
+ Special case for the lower separation line in a headline.
+\end{element}
+
+\begin{element}{upper separation line foot}\no\yes\no
+ \colorparents{separation line}
+ Special case for the uppermost separation line in a footline.
+\end{element}
+
+\begin{element}{middle separation line foot}\no\yes\no
+ \colorparents{separation line}
+ Special case for the middle separation line in a footline.
+\end{element}
+
+\begin{element}{lower separation line foot}\no\yes\no
+ \colorparents{separation line}
+ Special case for the lower separation line in a footline.
+\end{element}
+
+
+\subsection{Transparency Effects}
+\label{section-transparent}
+
+By default, \emph{covered} items are not shown during a presentation. Thus if you write |\uncover<2>{Text.}|, the text is not shown on any but the second slide. On the other slides, the text is not simply printed using the background color -- it is not shown at all. This effect is most useful if your background does not have a uniform color.
+
+Sometimes however, you might prefer that covered items are not completely covered. Rather, you would like them to be shown already in a very dim or shaded way. This allows your audience to get a feeling for what is yet to come, without getting distracted by it. Also, you might wish text that is covered ``once more'' still to be visible to some degree.
+
+Ideally, there would be an option to make covered text ``transparent.'' This would mean that when covered text is shown, it would instead be mixed with the background behind it. Unfortunately, |pgf| does not support real transparency yet. Instead, transparency is created by mixing the color of the object you want to show with the current background color (the color |bg|, which has hopefully been setup such that it is the average color of the background on which the object should be placed). To install this effect, you can use:
+
+\begin{verbatim}
+\setbeamercovered{transparent}
+\end{verbatim}
+
+This command allows you to specify in a quite general way how a covered item should be rendered. You can even specify different ways of rendering the item depending on how long it will take before this item is shown or for how long it has already been covered once more. The transparency effect will automatically apply to all colors, \emph{except} for the colors in images. For images there is a workaround, see the documentation of the \pgfname\ package.
+
+\begin{command}{\setbeamercovered\marg{options}}
+ This command offers several different options, the most important of which is |transparent|. All options are internally mapped to the two options |still covered| and |again covered|.
+
+ In detail, the following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|invisible|} is the default and causes covered text to ``completely disappear''.
+ \item
+ \declare{|transparent|}\opt{|=|\meta{opaqueness}} causes covered text to be typeset in a ``transparent'' way. By default, this means that 85\% of the background color is mixed into all colors or that the \meta{opaqueness} of the text is 15\%. You can specify a different \meta{percentage}, where |0| means ``totally transparent'' and |100| means ``totally opaque.''
+
+ Unfortunately, this value is kind of ``specific'' to every projector. What looks good on your screen need not look good during a presentation.
+ \item
+ \declare{|dynamic|} Makes all covered text quite transparent, but in a dynamic way. The longer it will take till the text is uncovered, the stronger the transparency.
+ \item
+ \declare{|highly dynamic|} Has the same effect as |dynamic|, but the effect is stronger.
+ \item
+ \declare{|still covered=|\meta{not yet list}} specifies how to render covered items that have not yet been uncovered. The \meta{not yet list} should be a list of |\opaqueness| commands, see the description of that command, below.
+ \example
+\begin{verbatim}
+\setbeamercovered{%
+ still covered={\opaqueness<1>{15}\opaqueness<2>{10}\opaqueness<3>{5}\opaqueness<4->{2}},
+ again covered={\opaqueness<1->{15}}}
+\end{verbatim}
+
+ \item
+ \declare{|again covered=|\meta{once more list}} specifies how to render covered items that have once more been covered, that is, that had been shown before but are now covered again.
+ \end{itemize}
+\end{command}
+
+\begin{command}{\opaqueness\ssarg{overlay specification}\marg{percentage of opaqueness}}
+ The \meta{overlay specification} specifies on which slides covered text should have which \meta{percentage of opaqueness}. Unlike other overlay specifications, this \meta{overlay specification} is a ``relative'' overlay specification. For example, the specification ``3'' here means ``things that will be uncovered three slides ahead,'' respectively ``things that have once more been covered for three slides.'' More precisely, if an item is uncovered for more than one slide and then covered once more, only the ``first moment of uncovering'' is used for the calculation of how long the item has been covered once more.
+
+ An opaqueness of 100 is fully opaque and 0 is fully transparent. Currently, since real transparency is not yet implemented, this command causes all colors to get a mixing of \meta{percentage of opaqueness} of the current |bg|. At some future point this command might result in real transparency.
+
+ The alternate \pgfname\ extension used inside an opaque area is \meta{percentage of opaqueness}|opaque|. In case of nested calls, only the innermost opaqueness specification is used.
+ \example
+\begin{verbatim}
+\setbeamercovered{still covered={\opaqueness<1->{15}},again covered={\opaqueness<1->{15}}}
+\pgfdeclareimage{book}{book}
+\pgfdeclareimage{book.!15opaque}{filenameforbooknearlytransparent}
+\end{verbatim}
+
+ Makes everything that is uncovered in two slides only 15 percent opaque.
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-compatibility.tex b/macros/latex/contrib/beamer/doc/beamerug-compatibility.tex
new file mode 100644
index 0000000000..37c01c0bb4
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-compatibility.tex
@@ -0,0 +1,242 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\subsection{Compatibility with Other Packages and Classes}
+
+When using certain packages or classes together with the |beamer| class, extra options or precautions may be necessary.
+
+\begin{package}{{AlDraTex}}
+ Graphics created using AlDraTex must be treated like verbatim text. The reason is that DraTex fiddles with catcodes and spaces much like verbatim does. So, in order to insert a picture, either add the |fragile| option to the frame or use the |\defverbatim| command to create a box containing the picture.
+\end{package}
+
+\begin{package}{{alltt}}
+ Text in an |alltt| environment must be treated like verbatim text. So add the |fragile| option to frames containing this environment or use |\defverbatim|.
+\end{package}
+
+\begin{package}{{amsthm}}
+ This package is automatically loaded since \beamer\ uses it for typesetting theorems. If you do not wish it to be loaded, which can be necessary especially in |article| mode if the package is incompatible with the document class, you can use the class option |noamsthm| to suppress its loading. See Section~\ref{section-theorems} for more details.
+\end{package}
+
+\begin{package}{{babel}|[|\declare{|french|}|]|}
+ When using the |french| style, certain features that clash with the functionality of the \beamer\ class will be turned off. For example, enumerations are still produced the way the theme dictates, not the way the |french| style does.
+\end{package}
+
+\begin{package}{{babel}|[|\declare{|spanish|}|]|}
+ \beamernote
+ When using the |spanish| style, certain features that clash with the functionality of the \beamer\ class will be turned off. In particular, the special behavior of the pointed brackets |<| and |>| is deactivated.
+
+ \articlenote
+ To make the characters |<| and |>| active in |article| mode, pass the option |activeospeccharacters| to the package |beamerbasearticle|. This will lead to problems with overlay specifications.
+\end{package}
+
+\begin{package}{{color}}
+ \beamernote
+ The |color| package is automatically loaded by |beamer.cls|. This makes it impossible to pass options to |color| in the preamble of your document in the normal manner. To pass a \meta{list of options} to |color|, you can use the following class option:
+
+ \begin{classoption}{color={\normalfont\meta{list of options}}}
+ Causes the \meta{list of options} to be passed on to the |color| package. If the \meta{list of options} contains more than one option you must enclose it in curly brackets.
+ \end{classoption}
+
+ \articlenote
+ The |color| package is not loaded automatically if |beamerarticle| is loaded with the |noxcolor| option.
+\end{package}
+
+\begin{package}{{colortbl}}
+ \beamernote
+ With newer versions of |xcolor.sty|, you need to pass the option |table| to |xcolor.sty| if you wish to use |colortbl|. See the notes on |xcolor| below, on how to do this.
+\end{package}
+
+\begin{package}{{CJK}}
+ \beamernote
+ When using the |CJK| package for using Asian fonts, you must use the class option \declare{|CJK|}.
+\end{package}
+
+\begin{package}{{deluxetable}}
+ \beamernote
+ The caption generation facilities of |deluxetable| are deactivated. Instead, the caption template is used.
+\end{package}
+
+\begin{package}{{DraTex}}
+ See |AlDraTex|.
+\end{package}
+
+\begin{package}{{enumerate}}
+ \articlenote
+ This package is loaded automatically in the |presentation| modes, but not in the |article| mode. If you use its features, you have to load the package ``by hand'' in the |article| mode.
+\end{package}
+
+\begin{class}{{foils}}
+ If you wish to emulate the |foils| class using \beamer, please see Section~\ref{section-foiltex}.
+\end{class}
+
+\begin{package}{{fontenc}|[|\declare{|T1,EU1,EU2|}|]|}
+ Use the |T1| option \emph{only} with fonts that have outline fonts available in the T1 encoding like |times| or the |lmodern| fonts. In a standard installation standard Computer Modern fonts (the fonts Donald Knuth originally designed and which are used by default) are \emph{not} available in the T1 encoding. Using this option with them will result in very poor rendering of your presentation when viewed with \pdf\ viewer applications like Acrobat, |xpdf|, |evince| or |okular|. To use the Computer Modern fonts with the T1 encoding, use the package |lmodern|. See also Section~\ref{section-font-encoding}. This applies both to |latex|+|dvips| and |pdflatex|
+
+ Use the |EU1| option with |xelatex|, and |EU2| option with |lualatex|. Note that |xelatex| and |luatex| support OpenType fonts, and font encodings work very different compared to |pdflatex|. Again, see Section~\ref{section-font-encoding} for more information.
+\end{package}
+
+\begin{package}{{fourier}}
+ The package switches to a T1~encoding, but it does not redefine all fonts such that outline fonts (non-bitmapped fonts) are used by default. For example, the sans-serif text and the typewriter text are not replaced. To use outline fonts for these, write |\usepackage{lmodern}| \emph{before} including the |fourier| package.
+\end{package}
+
+\begin{package}{{HA-prosper}}
+ You cannot use this package with \beamer. However, you might try to use the package |beamerprosper| instead, see Section~\ref{section-prosper}.
+\end{package}
+
+\begin{package}{{hyperref}}
+ \beamernote
+ The |hyperref| package is automatically loaded by |beamer.cls| and certain options are set up. In order to pass additional options to |hyperref| or to override options, you can use the following class option:
+
+ \begin{classoption}{hyperref={\normalfont\meta{list of options}}}
+ Causes the \meta{list of options} to be passed on to the |hyperref| package.
+
+ \example |\documentclass[hyperref={bookmarks=false}]{beamer}|
+ \end{classoption}
+
+ Alternatively, you can also use the |\hypersetup| command.
+
+ \articlenote
+ In the |article| version, you must include |hyperref| manually if you want to use it. You can do so by passing option |hyperref| to |beamerarticle|. It is not included automatically.
+\end{package}
+
+\begin{package}{{inputenc}|[|\declare{|utf8,utf8x|}|]|}
+ \beamernote
+ When using Unicode, you may wish to use \emph{some} of the following class options:
+ \begin{classoption}{ucs}
+ Loads the package |ucs| and passes the correct Unicode options to |hyperref|. Also, it preloads the Unicode code pages zero and one.
+ \end{classoption}
+
+ \begin{classoption}{utf8x}
+ Same as the option |ucs|, but also sets the input encoding to |utf8x|. You could also use the option |ucs| and say |\usepackage[utf8x]{inputenc}| in the preamble. This also automatically loads |ucs| package in most \TeX\ systems.
+ \end{classoption}
+
+ If you use a Unicode character outside the first two code pages (which includes the Latin alphabet and the extended Latin alphabet) in a section or subsection heading, you have to use the command |\PreloadUnicodePage{|\meta{code page}|}| to give |ucs| a chance to preload these code pages. You will know that a character has not been preloaded, if you get a message like ``Please insert into preamble.'' The code page of a character is given by the unicode number of the character divided by 256.
+
+ \begin{classoption}{utf8}
+ This option sets the input encoding to |utf8|. It's designed to be used \emph{without} |ucs|. It's the same as saying |\usepackage[utf8]{inputenc}| in the preamble.
+ \end{classoption}
+
+ Note that \emph{none} of these options apply to |lualatex| and |xelatex|, since both support Unicode natively without any extra packages. Most of the time using these options actually harms output quality, so be careful about what you use. If you want to have a document that allows compiling with multiple drivers, take a look at |iftex|, |ifxetex| and |ifluatex| packages.
+
+ \articlenote
+ Passing option |utf8| to |beamerarticle| has the same effect as saying |\usepackage[utf8]{inputenc}| in the preamble.
+
+ Again, take care if you use |lualatex| or |xelatex|.
+\end{package}
+
+\begin{package}{{listings}}
+ \beamernote
+ Note that you must treat |lstlisting| environments exactly the same way as you would treat |verbatim| environments. When using |\defverbatim| that contains a colored |lstlisting|, use the |colored| option of |\defverbatim|.
+ \example
+\begin{verbatim}
+\usepackage{listings}
+
+\begin{document}
+\defverbatim[colored]\mycode{%
+ \begin{lstlisting}[frame=single, emph={cout}, emphstyle={\color{blue}}]
+ cout << "Hello world!";
+ \end{lstlisting}
+ }
+
+\begin{frame}
+ \mycode
+\end{frame}
+\end{document}
+\end{verbatim}
+\end{package}
+
+\begin{package}{{msc}}
+ \beamernote
+ Since this package uses |pstricks| internally, everything that applies to pstricks also applies to |msc|.
+\end{package}
+
+\begin{package}{{musixtex}}
+ When using MusiX\TeX\ to typeset musical scores, you have to have $\varepsilon$-\TeX\ extensions enabled. Most modern distributions enable that by default both in |pdflatex| and |latex|. However, if you have an older distribution, the document must be compiled with |pdfelatex| or |elatex| instead of |pdflatex| or |latex|.
+
+ Inside a |music| environment, the |\pause| is redefined to match MusiX\TeX's definition (a rest during one quarter of a whole). You can use the |\beamerpause| command to create overlays in this environment.
+\end{package}
+
+\begin{package}{{paralist}}
+ \beamernote
+ \beamer\ automatically patches list-related commands using |beamerpatchparalist| package at the beginning of document.
+\end{package}
+
+\begin{package}{{pdfpages}}
+ Commands like |\includepdf| only work \emph{outside} frames as they produce pages ``by themselves.'' You may also wish to say
+\begin{verbatim}
+\setbeamercolor{background canvas}{bg=}
+\end{verbatim}
+ when you use such a command since the background (even a white background) will otherwise be printed over the image you try to include.
+
+ \example
+\begin{verbatim}
+\begin{document}
+\begin{frame}
+ \titlepage
+\end{frame}
+
+{
+ \setbeamercolor{background canvas}{bg=}
+ \includepdf{somepdfimages.pdf}
+}
+
+\begin{frame}
+ A normal frame.
+\end{frame}
+\end{document}
+\end{verbatim}
+\end{package}
+
+\begin{package}{{\normalfont\meta{professional font package}}}
+ \beamernote
+ If you use a professional font package, \beamer's internal redefinition of how variables are typeset may interfere with the font package's superior way of typesetting them. In this case, you should use the class option |professionalfonts| to suppress any font substitution. See Section~\ref{section-substition} for details.
+\end{package}
+
+\begin{class}{{prosper}}
+ If you wish to (partly) emulate the |prosper| class using \beamer, please see Section~\ref{section-prosper}.
+\end{class}
+
+\begin{package}{{pstricks}}
+ You should add the option |xcolor=pst| to make |xcolor| aware of the fact that you are using |pstricks|.
+\end{package}
+
+\begin{class}{{seminar}}
+ If you wish to emulate the |seminar| class using \beamer, please see Section~\ref{section-seminar}.
+\end{class}
+
+\begin{package}{{texpower}}
+ You cannot use this package with \beamer. However, you might try to use the package |beamertexpower| instead, see Section~\ref{section-texpower}.
+\end{package}
+
+\begin{package}{{textpos}}
+ \beamernote
+ \beamer\ automatically installs a white background behind everything, unless you install a different background template. Because of this, you must use the |overlay| option when using |textpos|, so that it will place boxes \emph{in front of} everything. Alternatively, you can install an empty background template, but this may result in an incorrect display in certain situations with older versions of the Acrobat Reader.
+\end{package}
+
+\begin{package}{{ucs}}
+ See |\usepackage[utf8,utf8x]{inputenc}|.
+\end{package}
+
+\begin{package}{{xcolor}}
+ \beamernote
+ The |xcolor| package is automatically loaded by |beamer.cls|. The same applies as to |color|.
+
+ \begin{classoption}{xcolor={\normalfont\meta{list of options}}}
+ Causes the \meta{list of options} to be passed on to the |xcolor| package.
+ \end{classoption}
+
+ When using \beamer\ together with the |pstricks| package, be sure to pass the |xcolor=pst| option to \beamer\ (and hence to |xcolor|).
+
+ \articlenote
+ The |color| package is not loaded automatically if |beamerarticle| is loaded with the |noxcolor| option.
+\end{package}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-elements.tex b/macros/latex/contrib/beamer/doc/beamerug-elements.tex
new file mode 100644
index 0000000000..60f6fcb0ad
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-elements.tex
@@ -0,0 +1,489 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2014,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Inner Themes, Outer Themes, and Templates}
+\label{section-elements}
+
+This section discusses the inner and outer themes that are available in \beamer. These themes install certain \emph{templates} for the different elements of a presentation. The template mechanism is explained at the end of the section.
+
+Before we plunge into the details, let us agree on some terminology for this section. In \beamer, an \emph{element} is part of a presentation that is potentially typeset in some special way. Examples of elements are frame titles, the author's name, or the footnote sign. The appearance of every element is governed by a \emph{template} for this element. Appropriate templates are installed by inner and outer themes, where the \emph{inner} themes only install templates for elements that are typically ``inside the main text,'' while \emph{outer} themes install templates for elements ``around the main text.'' Thus, from the templates' point of view, there is no real difference between inner and outer themes.
+
+
+\subsection{Inner Themes}
+
+An inner theme installs templates that dictate how the following elements are typeset:
+\begin{itemize}
+\item Title and part pages.
+\item Itemize environments.
+\item Enumerate environments.
+\item Description environments.
+\item Block environments.
+\item Theorem and proof environments.
+\item Figures and tables.
+\item Footnotes.
+\item Bibliography entries.
+\end{itemize}
+
+In the following examples, the color themes |seahorse| and |rose| are used to show where and how background colors are honored. Furthermore, background colors have been specified for all elements that honor them in the default theme. In the default color theme, all of the large rectangular areas are transparent.
+
+\begin{innerthemeexample}{default}
+ The default element theme is quite sober. The only extravagance is the fact that a little triangle is used in |itemize| environments instead of the usual dot.
+
+ In some cases the theme will honor background color specifications for elements. For example, if you set the background color for block titles to green, block titles will have a green background. The background specifications are currently honored for the following elements:
+ \begin{itemize}
+ \item Title, author, institute, and date fields in the title page.
+ \item Block environments, both for the title and for the body.
+ \end{itemize}
+ This list may increase in the future.
+\end{innerthemeexample}
+
+\begin{innerthemeexample}{circles}
+ In this theme, |itemize| and |enumerate| items start with a small circle. Likewise, entries in the table of contents start with circles.
+\end{innerthemeexample}
+
+\begin{innerthemeexample}{rectangles}
+ In this theme, |itemize| and |enumerate| items and table of contents entries start with small rectangles.
+\end{innerthemeexample}
+
+\begin{innerthemeexample}[\oarg{options}]{rounded}
+ In this theme, |itemize| and |enumerate| items and table of contents entries start with small balls. If a background is specified for blocks, then the corners of the background rectangles will be rounded off. The following \meta{options} may be given:
+
+ \begin{itemize}
+ \item \declare{|shadow|} adds a shadow to all blocks.
+ \end{itemize}
+\end{innerthemeexample}
+
+\begin{innerthemeexample}{inmargin}
+ The idea behind this theme is to have ``structuring'' information on the left and ``normal'' information on the right. To this end, blocks are redefined such that the block title is shown on the left and the block body is shown on the right.
+
+ The code used to place text in the margin is a bit fragile. You may often need to adjust the spacing ``by hand,'' so use at your own risk.
+
+ Itemize items are redefined such that they appear on the left. However, only the position is changed by changing some spacing parameters; the code used to draw the items is not changed otherwise. Because of this, you can load another inner theme first and then load this theme afterwards.
+
+ This theme is a ``dirty'' inner theme since it messes with things that an inner theme should not mess with. In particular, it changes the width of the left sidebar to a large value. However, you can still use it together with most outer themes.
+
+ Using columns inside this theme is problematic. Most of the time, the result will not be what you expect.
+\end{innerthemeexample}
+
+
+\subsection{Outer Themes}
+
+An outer theme dictates (roughly) the overall layout of frames. It specifies where any navigational elements should go (like a mini table of contents or navigational mini frames) and what they should look like. Typically, an outer theme specifies how the following elements are rendered:
+\begin{itemize}
+\item The head- and footline.
+\item The sidebars.
+\item The logo.
+\item The frame title.
+\end{itemize}
+
+An outer theme will not specify how things like |itemize| environments should be rendered---that is the job of an inner theme.
+
+In the following examples the color theme |seahorse| is used. Since the default color theme leaves most backgrounds empty, most of the outer themes look too unstructured with the default color theme.
+
+\begin{outerthemeexample}{default}
+ The default layout theme is the most sober and minimalistic theme around. It will flush left the frame title and it will not install any head- or footlines. However, even this theme honors the background color specified for the frame title. If a color is specified, a bar occupying the whole page width is put behind the frame title. A background color of the frame subtitle is ignored.
+\end{outerthemeexample}
+
+\begin{outerthemeexample}{infolines}
+ This theme installs a headline showing the current section and the current subsection. It installs a footline showing the author's name, the institution, the presentation's title, the current date, and a frame count. This theme uses only little space.
+
+ The colors used in the headline and footline are drawn from |palette primary|, |palette secondary|, and |primary tertiary| (see Section~\ref{section-colors} for details on how to change these).
+\end{outerthemeexample}
+
+\begin{outerthemeexample}[\oarg{options}]{miniframes}
+ This theme installs a headline in which a horizontal navigational bar is shown. This bar contains one entry for each section of the presentation. Below each section entry, small circles are shown that represent the different frames in the section. The frames are arranged subsection-wise, that is, there is a line of frames for each subsection. If the class option |compress| is given, the frames will instead be arranged in a single row for each section. The navigation bars draws its color from |section in head/foot|.
+
+ Below the navigation bar, a line is put showing the title of the current subsection. The color is drawn from |subsection in head/foot|.
+
+ At the bottom, two lines are put that contain information such as the author's name, the institution, or the paper's title. What is shown exactly is influenced by the \meta{options} given. The colors are drawn from the appropriate \beamer-colors like |author in head/foot|.
+
+ At the top and bottom of both the head- and footline and between the navigation bar and the subsection name, separation lines are drawn \emph{if} the background color of |separation line| is set. This separation line will have a height of 3pt. You can get even more fine-grained control over the colors of the separation lines by setting appropriate colors like |lower separation line head|.
+
+ \emph{Note:} Make sure the document is organized in the section-subsection-frame structure when using |miniframes| and |smoothbars| theme. Any frame without a |\section| or |\subsection| will bring unpredictable effects in the navigation bar.
+
+ The following \meta{options} can be given:
+ \begin{itemize}
+ \item \declare{|footline=empty|} suppresses the footline (default).
+ \item \declare{|footline=authorinstitute|} shows the author's name and the institute in the footline.
+ \item \declare{|footline=authortitle|} shows the author's name and the title in the footline.
+ \item \declare{|footline=institutetitle|} shows the institute and the title in the footline.
+ \item \declare{|footline=authorinstitutetitle|} shows the author's name, the institute, and the title in the footline.
+ \item \declare{|subsection=|\meta{true or false}} shows or suppresses line showing the subsection in the headline. It is shown by default. If the document does not use subsections, this option should be set |false|.
+ \end{itemize}
+\end{outerthemeexample}
+
+\begin{outerthemeexample}[\oarg{options}]{smoothbars}
+ This theme behaves very much like the |miniframes| theme, at least with respect to the headline. The only differences are that smooth transitions are installed between the background colors of the navigation bar, the (optional) bar for the subsection name, and the background of the frame title. No footline is created. You can get the footlines of the |miniframes| theme by first loading that theme and then loading the |smoothbars| theme.
+
+ The following \meta{options} can be given:
+ \begin{itemize}
+ \item \declare{|subsection=|\meta{true or false}} shows or suppresses line showing the subsection in the headline. It is shown by default.
+ \end{itemize}
+\end{outerthemeexample}
+
+\begin{outerthemeexample}[\oarg{options}]{sidebar}
+ In this layout, a sidebar is shown that contains a small table of contents with the current section, subsection, or subsubsection highlighted. The frame title is vertically centered in a rectangular area at the top that always occupies the same amount of space in all frames. Finally, the logo is shown in the ``corner'' resulting from the sidebar and the frame title rectangle.
+
+ There are several ways of modifying the layout using the \meta{options}. If you set the width of the sidebar to 0pt, it is not shown, giving you a layout in which the frame title does not ``wobble'' since it always occupies the same amount of space on all slides. Conversely, if you set the height of the frame title rectangle to 0pt, the rectangular area is not used and the frame title is inserted normally (occupying as much space as needed on each slide).
+
+ The background color of the sidebar is taken from |sidebar|, the background color of the frame title from |frametitle|, and the background color of the logo corner from |logo|.
+
+ The colors of the entries in the table of contents are drawn from the \beamer-color |section in sidebar| and |section in sidebar current| as well as the corresponding \beamer-colors for subsections. If an entry does not fit on a single line it is automatically ``linebroken.''
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|height=|\meta{dimension}} specifies the height of the frame title rectangle. If it is set to 0pt, no frame title rectangle is created. Instead, the frame title is inserted normally into the frame. The default is 2.5 base line heights of the frame title font. Thus, there is about enough space for a two-line frame title plus a one-line subtitle.
+ \item
+ \declare{|hideothersubsections|} causes all subsections except those of the current section to be suppressed in the table of contents. This is useful if you have lots of subsections.
+ \item
+ \declare{|hideallsubsections|} causes all subsections to be suppressed in the table of contents.
+ \item
+ \declare{|left|} puts the sidebar on the left side. Note that in a left-to-right reading culture this is the side people look first. Note also that this table of contents is usually \emph{not} the most important part of the frame, so you do not necessarily want people to look at it first. Nevertheless, it is the default.
+ \item
+ \declare{|right|} puts the sidebar of the right side.
+ \item
+ \declare{|width=|\meta{dimension}} specifies the width of the sidebar. If it is set to 0pt, it is completely suppressed. The default is 2.5 base line heights of the frame title font.
+ \end{itemize}
+\end{outerthemeexample}
+
+\begin{outerthemeexample}{split}
+ This theme installs a headline in which, on the left, the sections of the talk are shown and, on the right, the subsections of the current section. If the class option |compress| has been given, the sections and subsections will be put in one line; normally there is one line per section or subsection.
+
+ The footline shows the author on the left and the talk's title on the right.
+
+ The colors are taken from |palette primary| and |palette quaternary|.
+\end{outerthemeexample}
+
+\begin{outerthemeexample}{shadow}
+ This layout theme extends the |split| theme by putting a horizontal shading behind the frame title and adding a little ``shadow'' at the bottom of the headline.
+\end{outerthemeexample}
+
+\begin{outerthemeexample}[\oarg{options}]{tree}
+ In this layout, the headline contains three lines that show the title of the current talk, the current section in this talk, and the current subsection in the section. The colors are drawn from |title in head/foot|, |section in head/foot|, and |subsection in head/foot|.
+
+ In addition, separation lines of height 3pt are shown above and below the three lines \emph{if} the background of |separation line| is set. More fine-grained control of the colors of these lines can be gained by setting |upper separation line head| and |lower separation line head|.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|hooks|} causes little ``hooks'' to be drawn in front of the section and subsection entries. These are supposed to increase the tree-like appearance.
+ \end{itemize}
+\end{outerthemeexample}
+
+\begin{outerthemeexample}{smoothtree}
+ This layout is similar to the |tree| layout. The main difference is that the background colors change smoothly.
+\end{outerthemeexample}
+
+
+\subsection{Changing the Templates Used for Different Elements of a Presentation}
+\label{section-templates}
+
+This section explains how \beamer's template management works.
+
+\subsubsection{Overview of Beamer's Template Management}
+
+If you only wish to modify the appearance of a single or few elements, you do not need to create a whole new inner or outer theme. Instead, you can modify the appropriate template.
+
+A template specifies how an element of a presentation is typeset. For example, the |frametitle| template dictates where the frame title is put, which font is used, and so on.
+
+As the name suggests, you specify a template by writing the exact \LaTeX\ code you would also use when typesetting a single frame title by hand. Only, instead of the actual title, you use the command |\insertframetitle|.
+
+\example
+Suppose we would like to have the frame title typeset in red, centered, and boldface. If we were to typeset a single frame title by hand, it might be done like this:
+
+\begin{verbatim}
+\begin{frame}
+ \begin{centering}
+ \color{red}
+ \textbf{The Title of This Frame.}
+ \par
+ \end{centering}
+
+ Blah, blah.
+\end{frame}
+\end{verbatim}
+
+In order to typeset the frame title in this way on all slides, in the simplest case we can change the frame title template as follows:
+
+\begin{verbatim}
+\setbeamertemplate{frametitle}
+{
+ \begin{centering}
+ \color{red}
+ \textbf{\insertframetitle}
+ \par
+ \end{centering}
+}
+\end{verbatim}
+We can then use the following code to get the desired effect:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{The Title of This Frame.}
+
+ Blah, blah.
+\end{frame}
+\end{verbatim}
+
+When rendering the frame, \beamer\ will use the code of the frame title template to typeset the frame title and it will replace every occurrence of |\insertframetitle| by the current frame title.
+
+We can take this example a step further. It would be nicer if we did not have to ``hardwire'' the color of the frametitle, but if this color could be specified independently of the code for the template. This way, a color theme could change this color. Since this is a problem that is common to most templates, \beamer\ will automatically setup the \beamer-color |frametitle| when the template |frametitle| is used. Thus, we can remove the |\color{red}| command if we set the \beamer-color |frametitle| to red at some point.
+
+\begin{verbatim}
+\setbeamercolor{frametitle}{fg=red}
+\setbeamertemplate{frametitle}
+{
+ \begin{centering}
+ \textbf{\insertframetitle}
+ \par
+ \end{centering}
+}
+\end{verbatim}
+
+Next, we can also make the font ``themable.'' Just like the color, the \beamer-font |frametitle| is installed before the |frametitle| template is typeset. Thus, we should rewrite the code as follows:
+
+\begin{verbatim}
+\setbeamercolor{frametitle}{fg=red}
+\setbeamerfont{frametitle}{series=\bfseries}
+\setbeamertemplate{frametitle}
+{
+ \begin{centering}
+ \insertframetitle\par
+ \end{centering}
+}
+\end{verbatim}
+
+Users, themes, or whoever can now easily change the color or font of the frametitle without having to mess with the code used to typeset it.
+
+\articlenote
+In |article| mode, most of the template mechanism is switched off and has no effect. However, a few templates are also available. If this is the case, it is specially indicated.
+\smallskip
+
+Here are a few hints that might be helpful when you wish to set a template:
+\begin{itemize}
+\item
+ Usually, you might wish to copy code from an existing template. The code often takes care of some things that you may not yet have thought about. The default inner and outer themes might be useful starting points. Also, the file |beamerbaseauxtemplates.sty| contains interesting ``auxiliary'' templates.
+\item
+ When copying code from another template and when inserting this code in the preamble of your document (not in another style file), you may have to ``switch on'' the at-character (|@|). To do so, add the command |\makeatletter| before the |\setbeamertemplate| command and the command |\makeatother| afterward.
+\item
+ Most templates having to do with the frame components (headlines, sidebars, etc.)\ can only be changed in the preamble. Other templates can be changed during the document.
+\item
+ The height of the headline and footline templates is calculated automatically. This is done by typesetting the templates and then ``having a look'' at their heights. This recalculation is done right at the beginning of the document, \emph{after} all packages have been loaded and even \emph{after} these have executed their |\AtBeginDocument| initialization.
+\item
+ Getting the boxes right inside any template is often a bit of a hassle. You may wish to consult the \TeX\ book for the glorious details on ``Making Boxes.'' If your headline is simple, you might also try putting everything into a |pgfpicture| environment, which makes the placement easier.
+\end{itemize}
+
+\subsubsection{Using Beamer's Templates}
+
+As a user of the \beamer\ class you typically do not ``use'' or ``invoke'' templates yourself, directly. For example, the frame title template is automatically invoked by \beamer\ somewhere deep inside the frame typesetting process. The same is true of most other templates. However, if, for whatever reason, you wish to invoke a template yourself, you can use the following command.
+
+\begin{command}{\usebeamertemplate\opt{|***|}\marg{element name}}
+ If none of the stars is given, the text of the \meta{element name} is directly inserted at the current position. This text should previously have been specified using the |\setbeamertemplate| command. No text is inserted if this command has not been called before.
+ \example
+\begin{verbatim}
+\setbeamertemplate{my template}{correct}
+...
+Your answer is \usebeamertemplate{my template}.
+\end{verbatim}
+
+ If you add one star, three things happen. First, the template is put inside a \TeX-group, thereby limiting most side effects of commands used inside the template. Second, inside this group the \beamer-color named \meta{element name} is used and the foreground color is selected. Third, the \beamer-font \meta{element name} is also used. This one-starred version is usually the best version to use.
+
+ If you add a second star, nearly the same happens as with only one star. However, in addition, the color is used with the command |\setbeamercolor*|. This causes the colors to be reset to the normal text color if no special foreground or background is specified by the \beamer-color \meta{element name}. Thus, in this twice-starred version, the color used for the template is guaranteed to be independent of the color that was currently in use when the template is used.
+
+ Finally, adding a third star will also cause a star to be added to the |\setbeamerfont*| command. This causes the font used for the template also to be reset to normal text, unless the \beamer-font \meta{element name} specifies things differently. This three-star version is the ``most protected'' version available.
+\end{command}
+
+\begin{command}{\ifbeamertemplateempty\marg{beamer template name}\marg{executed if empty}\marg{executed otherwise}}
+ This command checks whether a template is defined and set to a non-empty text. If the text is empty or the template is not defined at all, \meta{executed if empty} is executed. Otherwise, \meta{executed otherwise} is executed.
+\end{command}
+
+\begin{command}{\expandbeamertemplate\marg{beamer template name}}
+ This command does the same as |\usebeamertemplate|\marg{beamer template name}. The difference is that this command performs a direct expansion and does not scan for a star. This is important inside, for example, an |\edef|. If you don't know the difference between |\def| and |\edef|, you won't need this command.
+\end{command}
+
+\subsubsection{Setting Beamer's Templates}
+
+To set a \beamer-template, you can use the following command:
+
+\begin{command}{\setbeamertemplate\marg{element name}\oarg{predefined option}\meta{args}}
+ In the simplest case, if no \meta{predefined option} is given, the \meta{args} must be a single argument and the text of the template \meta{element name} is setup to be this text. Upon later invocation of the template by the command |\usebeamertemplate| this text is used.
+
+ \example
+\begin{verbatim}
+\setbeamertemplate{answer}{correct}
+...
+Your answer is \usebeamertemplate*{answer}.
+\end{verbatim}
+
+ If you specify a \meta{predefined option}, this command behaves slightly differently. In this case, someone has used the command |\defbeamertemplate| to predefine a template for you. By giving the name of this predefined template as the optional parameter \meta{predefined option}, you cause the template \meta{element name} to be set to this template.
+
+ \example
+ |\setbeamertemplate{bibliography item}[book]| causes the bibliography items to become little book icons. This command causes a subsequent call of |\usebeamertemplate{bibliography item}| to insert the predefined code for inserting a book.
+
+ Some predefined template options take parameters themselves. In such a case, the parameters are given as \meta{args}.
+
+ \example
+ The \meta{predefined option} |grid| for the template |background| takes an optional argument:
+\begin{verbatim}
+\setbeamertemplate{background}[grid][step=1cm]
+\end{verbatim}
+
+ In the example, the second argument in square brackets is the optional argument.
+
+ In the descriptions of elements, if there are possible \meta{predefined option}, the description shows how the \meta{predefined option} can be used together with its arguments, but the |\setbeamertemplate{xxxx}| is omitted. Thus, the above example would be documented in the description of the |background| element like this:
+ \begin{itemize}
+ \itemoption{grid}{\oarg{step options}} causes a light grid to be \dots
+ \end{itemize}
+\end{command}
+
+\begin{command}{\addtobeamertemplate\marg{element name}\marg{pre-text}\marg{post-text}}
+ This command adds the \meta{pre-text} before the text that is currently installed as the template \meta{element name} and the \meta{post-text} after it. This allows you a limited form of modification of existing templates.
+
+ \example
+ The following commands have the same effect:
+
+\begin{verbatim}
+\setbeamertemplate{my template}{Hello world!}
+
+\setbeamertemplate{my template}{world}
+\addtobeamertemplate{my template}{Hello }{!}
+\end{verbatim}
+
+ If a new template is installed, any additions will be deleted. On the other hand, you can repeatedly use this command to add multiple things.
+\end{command}
+
+\begin{command}{\defbeamertemplate\sarg{mode specification}\opt{|*|}\marg{element name}\marg{predefined option}\\ \oarg{argument number}\oarg{default optional argument}\marg{predefined text}\\ \opt{|[action]|\marg{action command}}}
+ This command installs a \emph{predefined option} for the template \meta{element name}. Once this command has been used, users can access the predefined template using the |\setbeamertemplate| command.
+
+ \example
+ |\defbeamertemplate{itemize item}{double arrow}{$\Rightarrow$}|
+
+ After the above command has been invoked, the following two commands will have the same effect:
+
+\begin{verbatim}
+\setbeamertemplate{itemize item}{$\Rightarrow$}
+\setbeamertemplate{itemize item}[double arrow]
+\end{verbatim}
+
+ Sometimes, a predefined template needs to get an argument when it is installed. Suppose, for example, we want to define a predefined template that draws a square as the itemize item and we want to make this size of this square configurable. In this case, we can specify the \meta{argument number} of the predefined option the same way one does for the |\newcommand| command:
+
+\begin{verbatim}
+\defbeamertemplate{itemize item}{square}[1]{\hrule width #1 height #1}
+
+%% The following have the same effect:
+\setbeamertemplate{itemize item}[square]{3pt}
+\setbeamertemplate{itemize item}{\hrule width 3pt height 3pt}
+\end{verbatim}
+ As for the |\newcommand| command, you can also specify a \meta{default optional argument}:
+\begin{verbatim}
+\defbeamertemplate{itemize item}{square}[1][1ex]{\hrule width #1 height #1}
+
+%% The following have the same effect:
+\setbeamertemplate{itemize item}[square][3pt]
+\setbeamertemplate{itemize item}{\hrule width 3pt height 3pt}
+
+%% So do the following:
+\setbeamertemplate{itemize item}[square]
+\setbeamertemplate{itemize item}{\hrule width 1ex height 1ex}
+\end{verbatim}
+
+ The starred version of the command installs the predefined template option, but then immediately calls |\setbeamertemplate| for this option. This is useful for the default templates. If there are any arguments necessary, these are set to |\relax|.
+
+ In certain cases, if a predefined template option is chosen, you do not only wish the template text to be installed, but certain extra ``actions'' must also be taken once. For example, a shading must be defined that should not be redefined every time the shading is used later on. To implement such ``actions,'' you can use the optional argument \meta{action} following the keyword |[action]|. Thus, after the normal use of the |\defbeamertemplate| you add the text |[action]| and then any commands that should be executed once when the \meta{predefined option} is selected by the |\setbeamertemplate| command.
+
+ \example
+\begin{verbatim}
+\defbeamertemplate{background canvas}{my shading}[2]
+{
+ \pgfuseshading{myshading}% simple enough
+}
+[action]
+{
+ \pgfdeclareverticalshading{myshading}{\the\paperwidth}
+ {color(0cm)=(#1); color(\the\paperheight)=(#2)}
+}
+...
+
+\setbeamertemplate{background canvas}{myshading}{red!10}{blue!10}
+%% Defines the shading myshading right here. Subsequent calls to
+%% \usebeamertemplate{background canvas} will yield
+%% ``\pgfuseshading{myshading}''.
+\end{verbatim}
+
+ \articlenote
+ Normally, this command has no effect in |article| mode. However, if a \meta{mode specification} is given, this command is applied for the specified modes. Thus, this command behaves like the |\\| command, which also gets the implicit mode specification |<presentation>| if no other specification is given.
+
+ \example
+ |\defbeamertemplate{my template}{default}{something}| has no effect in |article| mode.
+
+ \example
+ |\defbeamertemplate<article>{my template}{default}{something}| has no effect in |presentation| modes, but has an effect in |article| mode.
+
+ \example
+ |\defbeamertemplate<all>{my template}{default}{something}| applies to all modes.
+\end{command}
+
+It is often useful to have access to the same template option via different names. For this, you can use the following command to create aliases:
+\begin{command}{\defbeamertemplatealias\marg{element name}\marg{new predefined option name}\marg{existing predefined option name}}
+ Causes the two predefined options to have the same effect.
+\end{command}
+
+There is no inheritance relation among templates as there is for colors and fonts. This is due to the fact the templates for one element seldom make sense for another. However, sometimes certain elements ``behave similarly'' and one would like a |\setbeamertemplate| to apply to a whole set of templates via inheritance. For example, one might want that |\setbeamertemplate{items}[circle]| causes all items to use the |circle| option, though the effects for the |itemize item| as opposed to the |itemize subsubitem| as opposed to |enumerate item| must be slightly different.
+
+The \beamer-template mechanism implements a simple form of inheritance via \emph{parent templates}. In element descriptions, parent templates are indicated via a check mark in parentheses.
+
+\begin{command}{\defbeamertemplateparent\marg{parent template name}\oarg{predefined option name}\marg{child template list}\\ \oarg{argument number}\oarg{default optional argument}\marg{arguments for children}}
+ The effect of this command is that whenever someone calls |\setbeamertemplate{|\meta{parent template name}|}{|\meta{args}|}|, the command |\setbeamertemplate{|\meta{child template name}|}{|\meta{args}|}| is called for each \meta{child template name} in the \meta{child template list}.
+
+ The \meta{arguments for children} come into play if the |\setbeamertemplate| command is called with a predefined option name (not necessarily the same as the \meta{predefined option name}, we'll come to that). If |\setbeamertemplate| is called with some predefined option name, the children are called with the \meta{arguments for children} instead. Let's look at two examples:
+
+ \example
+ The following is the typical, simple usage:
+
+\begin{verbatim}
+\defbeamertemplateparent{itemize items}{itemize item,itemize subitem,itemize subsubitem}
+{}
+
+%% The following command has the same effect as the three commands below:
+\setbeamertemplate{itemize items}[circle]
+
+\setbeamertemplate{itemize item}[circle] % actually, the ``empty'' argument is added
+\setbeamertemplate{itemize subitem}[circle]
+\setbeamertemplate{itemize subsubitem}[circle]
+\end{verbatim}
+
+ \example
+ In the following case, an argument is passed to the children:
+
+\begin{verbatim}
+\defbeamertemplateparent{sections/subsections in toc shaded}
+{section in toc shaded,subsection in toc shaded}[1][20]
+{[#1]}
+
+%% The following command has the same effect as the two commands below:
+\setbeamertemplate{sections/subsections in toc shaded}[default][35]
+
+\setbeamertemplate{section in toc shaded}[default][35]
+\setbeamertemplate{subsection in toc shaded}[default][35]
+
+
+%% Again:
+\setbeamertemplate{sections/subsections in toc shaded}[default]
+
+\setbeamertemplate{section in toc shaded}[default][20]
+\setbeamertemplate{subsection in toc shaded}[default][20]
+\end{verbatim}
+
+ In detail, the following happens: When |\setbeamertemplate| is encountered for a parent template, \beamer\ first checks whether a predefined option follows. If not, a single argument is read and |\setbeamertemplate| is called for all children for this template. If there is a predefined template option set, \beamer\ evaluates the \meta{argument for children}. It may contain parameters like |#1| or |#2|. These parameters are filled with the arguments that follow the call of |\setbeamertemplate| for the parent template. The number of arguments must be the number given as \meta{argument number}. An optional argument can also be specified in the usual way. Once the \meta{arguments for the children} have been computed, |\setbeamertemplate| is called for all children for the predefined template and with the computed arguments.
+
+ You may wonder what happens when certain predefined options take a certain number of arguments, but another predefined option takes a different number of arguments. In this case, the above-described mechanism cannot differentiate between the predefined options and it is unclear which or even how many arguments should be contained in \meta{arguments for children}. For this reason, you can give the optional argument \meta{predefined option name} when calling |\defbeamertemplateparent|. If this optional argument is specified, the parenthood of the template applies only to this particular \meta{predefined option name}. Thus, if someone calls |\setbeamertemplate| for this \meta{predefined option name}, the given \meta{argument for children} is used. For other predefined option names a possibly different definition is used. You can imaging that leaving out the optional \meta{predefined option name} means ``this \meta{argument for children} applies to all predefined option names that have not been specially defined differently.''
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-emulation.tex b/macros/latex/contrib/beamer/doc/beamerug-emulation.tex
new file mode 100644
index 0000000000..0e2f6d551e
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-emulation.tex
@@ -0,0 +1,721 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section[How To Import Presentations Based on Other Packages and Classes]{How To Import Presentations Based on\\ Other Packages and Classes}
+
+The \beamer\ class comes with a number of emulation layers for classes or packages that do not support \beamer\ directly. For example, the package |beamerseminar| maps some (not all) commands of the \seminar\ class to appropriate \beamer\ commands. This way, individual slides or whole sets of slides that have been prepared for a presentation using \seminar\ can be used inside \beamer, provided they are reasonably simple.
+
+None of the emulation layers is a perfect substitute for the original (emulations seldom are) and it is not intended that they ever will be. If you want/need/prefer the features of another class, use that class for preparing your presentations. The intention of these layers is just to help speed up creating \beamer\ presentations that use parts of old presentations. You can simply copy these parts in verbatim, without having to worry about the subtle differences in syntax.
+
+A useful effect of using an emulation layer is that you get access to all the features of \beamer\ while using the syntax of another class. For example, you can use the |article| mode to create a nice article version of a \prosper\ talk.
+
+
+\subsection{Prosper, HA-Prosper and Powerdot}
+\label{section-prosper}
+
+The package |beamerprosper| maps the commands of the \prosper\ package, developed by Fr\'ed\'eric Goualard, to \beamer\ commands. Also, some commands of the \textsc{ha}-\prosper\ and \textsc{powerdot} packages, developed by Hendri Adriaens, are mapped to \beamer\ commands. \emph{These mappings cannot perfectly emulate all of Prosper!} Rather, these mappings are intended as an aid when porting parts of presentations created using \prosper\ to \beamer. \emph{No styles are implemented that mimic Prosper styles.} Rather, the normal \beamer\ themes must be used (although, one could implement \beamer\ themes that mimics existing \prosper\ styles; we have not done that and do not intend to).
+
+The workflow for creating a \beamer\ presentation that uses \prosper\ code is the following:
+\begin{enumerate}
+\item
+ Use the document class |beamer|, not |prosper|. Most options passed to |prosper| do not apply to |beamer| and should be omitted.
+\item
+ Add a |\usepackage{beamerprosper}| to start the emulation.
+\item
+ If you add slides relying on \textsc{ha}-\prosper, you may wish to add the option |framesassubsections| to |beamerprosper|, though we do not recommend it (use the normal |\subsection| command instead; it gives you more fine-grained control).
+\item
+ If you also copy the title commands, it may be necessary to adjust the content of commands like |\title| or |\author|. Note that in \prosper\ the |\email| command is given outside the |\author| command, whereas in \beamer\ and also in \textsc{ha}-\prosper\ it is given inside.
+\item
+ When copying slides containing the command |\includegraphics|, you will almost surely have to adjust its usage. If you use pdf\LaTeX\ to typeset the presentation, than you cannot include PostScript files. You should convert them to |.pdf| or to |.png| and adjust any usage of |\includegraphics| accordingly.
+\item
+ When starting to change things, you can use all of \beamer's commands and even mix them with \prosper\ commands.
+\end{enumerate}
+
+An example can be found in the file |beamerexample-prosper.tex|.
+
+There are, unfortunately, quite a few places where you may run into problems:
+\begin{itemize}
+\item
+ In \beamer, the command |\PDForPS| will do exactly what the name suggests: insert the first argument when run by |pdflatex|, insert the second argument when run by |latex|. However, in \prosper, the code inserted for the \pdf\ case is actually PostScript code, which is only later converted to \pdf\ by some external program. You will need to adjust this PostScript code such that it works with |pdflatex| (which is not always possible).
+\item
+ If you used fine-grained spacing commands, like adding a little horizontal skip here and a big negative vertical skip there, the typesetting of the text may be poor. It may be a good idea to just remove these spacing commands.
+\item
+ If you use |pstricks| commands, you will either have to stick to using |latex| and |dvips| or will have to work around them using, for example, |pgf|. Porting lots of |pstricks| code is bound to be difficult, if you wish to switch over to |pdflatex|, so be warned. You can read more about that in Section~\ref{section-graphics} that talks about graphics.
+\item
+ If the file cannot be compiled because some \prosper\ command is not implemented, you will have to delete this command and try to mimic its behavior using some \beamer\ command.
+\end{itemize}
+
+\begin{package}{{beamerprosper}}
+ Include this package in a |beamer| presentation to get access to \prosper\ commands. Use |beamer| as the document class, not |prosper|. Most of the options passed to the class |prosper| make no sense in |beamer|, so just delete them.
+
+ This package takes the following options:
+ \begin{itemize}
+ \item
+ \declare{|framesassubsections|} causes each frame to create its own subsection with the frame title as subsection name. This behavior mimics \textsc{ha}-\textsc{prosper}'s behavior. In a long talk this will create way too many subsections.
+ \end{itemize}
+
+ \articlenote
+ The |framesassubsections| option has no effect in |article| mode.
+
+ \example
+\begin{verbatim}
+\documentclass[notes]{beamer}
+
+\usepackage[framesassubsections]{beamerprosper}
+
+\title{A Beamer Presentation Using (HA-)Prosper Commands}
+\subtitle{Subtitles Are Also Supported}
+\author{Till Tantau}
+\institution{The Institution is Mapped To Institute}
+
+\begin{document}
+
+\maketitle
+
+\tsectionandpart{Introduction}
+
+\overlays{2}{
+\begin{slide}{About this file}
+ \begin{itemstep}
+ \item
+ This is a beamer presentation.
+ \item
+ You can use the prosper and the HA-prosper syntax.
+ \item
+ This is done by mapping prosper and HA-prosper commands to beamer
+ commands.
+ \item
+ The emulation is by no means perfect.
+ \end{itemstep}
+\end{slide}
+}
+
+\section{Second Section}
+\subsection{A subsection}
+\begin{frame}
+ \frametitle{A frame created using the \texttt{frame} environment.}
+
+ \begin{itemize}[<+->]
+ \item You can still use the original beamer syntax.
+ \item The emulation is intended only to make recycling slides
+ easier, not to install a whole new syntax for beamer.
+ \end{itemize}
+\end{frame}
+
+\begin{notes}{Notes for these slides}
+My notes for these slides.
+\end{notes}
+\end{document}
+\end{verbatim}
+ You can run, for example, pdf\LaTeX\ on the file to get a \beamer\ presentation with overlays. Adding the |notes| option will also show the notes. Certain commands, like |\LeftFoot|, are ignored. You can change the theme using the usual commands. You can also use all normal \beamer\ commands and concepts, like overlay-specifications, in the file. You can also create an |article| version by using the class |article| and including the package |beamerarticle|.
+\end{package}
+
+In the following, the effects of \prosper\ commands in \beamer\ are listed.
+
+\begin{command}{\email\marg{text}}
+ Simply typesets its argument in typewriter text. Should hence be given \emph{inside} the |\author| command.
+\end{command}
+
+\begin{command}{\institution\marg{text}}
+ This command is mapped to \beamer's |\institute| command if given \emph{outside} the |\author| command, otherwise it typesets its argument in a smaller font.
+\end{command}
+
+\begin{command}{\Logo\opt{|(|\meta{x}|,|\meta{y}|)|}\marg{logo text}}
+ This is mapped to |\logo{|\meta{logo text}|}|. The coordinates are ignored.
+\end{command}
+
+\begin{environment}{{slide}\oarg{options}\marg{frame title}}
+ Inserts a frame with the |fragile=singleslide| option set. The \meta{frame title} will be enclosed in a |\frametitle| command.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|trans=|\meta{prosper transition}} installs the specified \meta{prosper transition} as the transition effect when showing the slide.
+ \item
+ \declare{\meta{prosper transition}} has the same effect as |trans=|\meta{prosper transition}.
+ \item
+ \declare{|toc=|\meta{entry}} overrides the subsection table of contents entry created by this slide by \meta{entry}. Note that a subsection entry is created for a slide only if the |framesassubsections| options is specified.
+ \item
+ \declare{|template|=\meta{text}} is ignored.
+ \end{itemize}
+
+ \example
+ The following two texts have the same effect:
+
+\begin{verbatim}
+\begin{slide}[trans=Glitter,toc=short]{A Title}
+ Hi!
+\end{slide}
+\end{verbatim}
+ and
+\begin{verbatim}
+\subsection{short} % omitted, if framesassubsections is not specified
+\begin{frame}[fragile=singleslide]
+ \transglitter
+ \frametitle{A Title}
+ Hi!
+\end{frame}
+\end{verbatim}
+\end{environment}
+
+\begin{command}{\overlays\marg{number}\marg{slide environment}}
+ This will put the \meta{slide environment} into a frame that does not have the |fragile| option and which can hence contain overlaid text. The \meta{number} is ignored since the number of necessary overlays is computed automatically by \beamer.
+
+ \example
+ The following code fragments have the same effect:
+
+\begin{verbatim}
+\overlays{2}{
+\begin{slide}{A Title}
+ \begin{itemstep}
+ \item Hi!
+ \item Ho!
+ \end{itemstep}
+\end{slide}}
+\end{verbatim}
+ and
+\begin{verbatim}
+\subsection{A Title} % omitted, if framesassubsections is not specified
+\begin{frame}
+ \frametitle{A Title}
+ \begin{itemstep}
+ \item Hi!
+ \item Ho!
+ \end{itemstep}
+\end{frame}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\fromSlide\marg{slide number}\marg{text}}
+ This is mapped to |\uncover<|\meta{slide number}|->{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\fromSlide|*|\marg{slide number}\marg{text}}
+ This is mapped to |\only<|\meta{slide number}|->{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\onlySlide\marg{slide number}\marg{text}}
+ This is mapped to |\uncover<|\meta{slide number}|>{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\onlySlide|*|\marg{slide number}\marg{text}}
+ This is mapped to |\only<|\meta{slide number}|>{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\untilSlide\marg{slide number}\marg{text}}
+ This is mapped to |\uncover<-|\meta{slide number}|>{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\untilSlide|*|\marg{slide number}\marg{text}}
+ This is mapped to |\only<-|\meta{slide number}|>{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\FromSlide\marg{slide number}}
+ This is mapped to |\onslide<|\meta{slide number}|->|.
+\end{command}
+
+\begin{command}{\OnlySlide\marg{slide number}}
+ This is mapped to |\onslide<|\meta{slide number}|>|.
+\end{command}
+
+\begin{command}{\UntilSlide\marg{slide number}}
+ This is mapped to |\onslide<-|\meta{slide number}|>|.
+\end{command}
+
+\begin{command}{\slideCaption\marg{text}}
+ This is mapped to |\date{|\meta{text}|}|.
+\end{command}
+
+\begin{command}{\fontTitle\marg{text}}
+ Simply inserts \meta{text}.
+\end{command}
+
+\begin{command}{\fontText\marg{text}}
+ Simply inserts \meta{text}.
+\end{command}
+
+\begin{command}{\PDFtransition\marg{prosper transition}}
+ Maps the \meta{prosper transition} to an appropriate |\transxxxx| command.
+\end{command}
+
+\begin{environment}{{Itemize}}
+ This is mapped to |itemize|.
+\end{environment}
+
+\begin{environment}{{itemstep}}
+ This is mapped to |itemize| with the option |[<+->]|.
+\end{environment}
+
+\begin{environment}{{enumstep}}
+ This is mapped to |enumerate| with the option |[<+->]|.
+\end{environment}
+
+\begin{command}{\hiddenitem}
+ This is mapped to |\addtocounter{beamerpauses}{1}|.
+\end{command}
+
+\begin{command}{\prosperpart\oarg{options}\marg{text}}
+ This command has the same effect as \prosper's |\part| command. \beamer's normal |\part| command retains its normal semantics. Thus, you might wish to replace all occurrences of |\part| by |\prosperpart|.
+\end{command}
+
+\begin{command}{\tsection\opt{|*|}\marg{section name}}
+ Creates a section named \meta{section name}. The star, if present, is ignored.
+\end{command}
+
+\begin{command}{\tsectionandpart\opt{|*|}\marg{part text}}
+ Mapped to a |\section| command followed by a |\prosperpart| command.
+
+ \articlenote
+ In |article| mode, no part page is added.
+\end{command}
+
+\begin{command}{\dualslide\oarg{x}\oarg{y}\oarg{z}\marg{options}\marg{left column}\marg{right column}}
+ This command is mapped to a |columns| environment. The \meta{left column} text is shown in the left column, the \meta{right column} text is shown in the right column. The options \meta{x}, \meta{y}, and \meta{z} are ignored. Also, all \meta{options} are ignored, except for \declare{|lcolwidth=|} and \declare{|rcolwidth=|}. These set the width of the left or right column, respectively.
+\end{command}
+
+\begin{command}{\PDForPS\marg{PostScript text}\marg{PDF text}}
+ Inserts either the \meta{PostScript text} or the \meta{PDF text}, depending on whether |latex| or |pdflatex| is used. When porting, the \meta{PDF text} will most likely be \emph{incorrect}, since in \prosper\ the \meta{PDF text} is actually PostScript text that is later transformed to \pdf\ by some external program.
+
+ If the \meta{PDF text} contains an |\includegraphics| command (which is its usual use), you should change the name of the graphic file that is included to a name ending |.pdf|, |.png|, or |.jpg|. Typically, you will have to convert your graphic to this format.
+\end{command}
+
+\begin{command}{\onlyInPDF\meta{PDF text}}
+ The \meta{PDF text} is only included if |pdflatex| is used. The same as for the command |\PDForPS| applies here.
+\end{command}
+
+\begin{command}{\onlyInPS\meta{PS text}}
+ The \meta{PS text} is only included if |latex| is used.
+\end{command}
+
+\begin{environment}{{notes}\marg{title}}
+ Mapped to |\note{\textbf{|\meta{title}|}|\meta{environment contents}|}| (more or less).
+\end{environment}
+
+The following commands are parsed by \beamer, but have no effect:
+\begin{itemize}\itemsep=0pt\parskip=0pt
+\item |\myitem|,
+\item |\FontTitle|,
+\item |\FontText|,
+\item |\ColorFoot|,
+\item |\DefaultTransition|,
+\item |\NoFrenchBabelItemize|,
+\item |\TitleSlideNav|,
+\item |\NormalSlideNav|,
+\item |\HAPsetup|,
+\item |\LeftFoot|, and
+\item |\RightFoot|.
+\end{itemize}
+
+
+\subsection{Seminar}
+\label{section-seminar}
+
+The package |beamerseminar| maps a subset of the commands of the \seminar\ package to \beamer. As for \prosper, the emulation cannot be perfect. For example, no portrait slides are supported, no automatic page breaking, the framing of slides is not emulated. Unfortunately, for all frames (|slide| environments) that contain overlays, you have to put the environment into a |frame| environment ``by hand'' and must remove all occurrences of |\newslide| inside the environment by closing the slide and opening a new one (and then putting these into |frame| environments).
+
+The workflow for the migration is the following:
+\begin{enumerate}
+\item
+ Use the document class |beamer|, not |seminar|. Most options passed to |seminar| do not apply to |beamer| and should be omitted.
+\item
+ If you copy parts of a presentation that is mixed with normal text, add the |ignorenonframetext| option and place \emph{every} |slide| environment inside a |frame| since \beamer\ will not recognize the |\begin{slide}| as the beginning of a frame.
+\item
+ Add a |\usepackage{beamerseminar}| to start the emulation. Add the option |accumulated| if you wish to create a presentation to be held with a video projector.
+\item
+ Possibly add commands to install themes and templates.
+\item
+ There should not be commands in the preamble having to do with page and slide styles. They do not apply to |beamer|.
+\item
+ If a |\newslide| command is used in a |slide| (or similarly |slide*|) environment that contains an overlay, you must replace it by a closing |\end{slide}| and an opening |\begin{slide}|.
+\item
+ Next, for each |slide| or |slide*| environment that contains an overlay, you must place a |frame| environment around it. You can remove the |slide| environment (and hence effectively replace it by |frame|), unless you use the |accumulated| option.
+\item
+ If you use |\section| or |\subsection| commands inside slides, you will have to move them \emph{outside} the frames. It may then be necessary to add a |\frametitle| command to the slide.
+\item
+ If you use pdf\LaTeX\ to typeset the presentation, you cannot include PostScript files. You should convert them to |.pdf| or to |.png| and adjust any usage of |\includegraphics| accordingly.
+\item
+ When starting to change things, you can use all of \beamer's commands and even mix them with \seminar\ commands.
+\end{enumerate}
+
+An example can be found in the file |beamerexample-seminar.tex|.
+
+There are, unfortunately, numerous places where you may run into problems:
+\begin{itemize}
+\item
+ The whole |note| management of |seminar| is so different from |beamer|'s, that you will have to edit notes ``by hand.'' In particular, commands like |\ifslidesonly| and |\ifslide| may not do exactly what you expect.
+\item
+ If you use |pstricks| commands, you will either have to stick to using |latex| and |dvips| or will have to work around them using, for example, |pgf|. Porting lots of |pstricks| code is bound to be difficult, if you wish to switch over to |pdflatex|, so be warned.
+\item
+ If the file cannot be compiled because some \seminar\ command is not implemented, you will have to delete this command and try to mimic its behavior using some \beamer\ command.
+\end{itemize}
+
+\begin{package}{{beamerseminar}}
+ Include this package in a |beamer| presentation to get access to \seminar\ commands. Use |beamer| as the document class, not |seminar|. Most of the options passed to the class |seminar| make no sense in |beamer|, so just delete them.
+
+ This package takes the following options:
+ \begin{itemize}
+ \item
+ \declare{|accumulated|} causes overlays to be accumulated. The original behavior of the \seminar\ package is that in each overlay only the really ``new'' part of the overlay is shown. This makes sense, if you really print out the overlays on transparencies and then really stack overlays on top of each other. For a presentation with a video projector, you rather want to present an ``accumulated'' version of the overlays. This is what this option does: When the new material of the $i$-th overlay is shown, the material of all previous overlays is also shown.
+ \end{itemize}
+
+ \example
+ The following example is an extract of |beamerexample-seminar.tex|:
+
+\begin{verbatim}
+\documentclass[ignorenonframetext]{beamer}
+\usepackage[accumulated]{beamerseminar}
+\usepackage{beamerthemeclassic}
+
+\title{A beamer presentation using seminar commands}
+\author{Till Tantau}
+
+\let\heading=\frametitle
+
+\begin{document}
+
+\begin{frame}
+ \maketitle
+\end{frame}
+
+This is some text outside any frame. It will only be shown in the
+article version.
+
+\begin{frame}
+ \begin{slide}
+ \heading{This is a frame title.}
+
+ \begin{enumerate}
+ {\overlay1
+ \item Overlays are a little tricky in seminar.
+ {\overlay2
+ \item But it is possible to use them in beamer.
+ }
+ }
+ \end{enumerate}
+ \end{slide}
+\end{frame}
+\end{document}
+\end{verbatim}
+ You can use all normal \beamer\ commands and concepts, like overlay-specifications, in the file. You can also create an |article| version by using the class |article| and including the package |beamerarticle|.
+\end{package}
+
+In the following, the effects of \seminar\ commands in \beamer\ are listed.
+
+\begin{command}{\overlay\marg{number}}
+ Shows the material till the end of the current \TeX\ group only on overlay numbered $\hbox{\meta{number}}+1$ or, if the |accumulated| option is given, from that overlay on. Usages of this command may be nested (as in \seminar). If an |\overlay| command is given inside another, it temporarily ``overrules'' the outer one as demonstrated in the following example, where it is assumed that the |accumulated| option is given.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \begin{slide}
+ This is shown from the first slide on.
+ {\overlay{2}
+ This is shown from the third slide on.
+ {\overlay{1}
+ This is shown from the second slide on.
+ }
+ This is shown once more from the third slide on.
+ }
+ \end{slide}
+\end{frame}
+\end{verbatim}
+\end{command}
+
+\begin{environment}{{slide}\opt{|*|}}
+ Mainly installs an |\overlay{0}| around the \meta{environment contents}. If the |accumulated| option is given, this has no effect, but otherwise it will cause the main text of the slide to be shown \emph{only} on the first slide. This is useful if you really wish to physically place slides on top of each other.
+
+ The starred version does the same as the nonstarred one.
+
+ If this command is not issued inside a |\frame|, it sets up a frame with the |fragile=singleframe| option set. Thus, this frame will contain only a single slide.
+
+ \example
+\begin{verbatim}
+\begin{slide}
+ Some text.
+\end{slide}
+
+\frame{
+\begin{slide}
+ Some text. And an {\overlay{1} overlay}.
+\end{slide}
+}
+\end{verbatim}
+\end{environment}
+
+\begin{command}{\red}
+ Mapped to |\color{red}|.
+\end{command}
+
+\begin{command}{\blue}
+ Mapped to |\color{blue}|.
+\end{command}
+
+\begin{command}{\green}
+ Mapped to |\color{green}|.
+\end{command}
+
+\begin{command}{\ifslide}
+ True in the |presentation| modes, false in the |article| mode.
+\end{command}
+
+\begin{command}{\ifslidesonly}
+ Same as |\ifslide|.
+\end{command}
+
+\begin{command}{\ifarticle}
+ False in the |presentation| modes, true in the |article| mode.
+\end{command}
+
+\begin{command}{\ifportrait}
+ Always false.
+\end{command}
+
+The following commands are parsed by \beamer, but have no effect:
+\begin{itemize}\itemsep=0pt\parskip=0pt
+\item |\ptsize|.
+\end{itemize}
+
+
+\subsection{Foil\TeX}
+\label{section-foiltex}
+
+The package |beamerfoils| maps a subset of the commands of the \foils\ package to \beamer. Since this package defines only few non-standard \TeX\ commands and since \beamer\ implements all the standard commands, the emulation layer is pretty simple.
+
+A copyright notice: The Foil\TeX\ package has a restricted license. For this reason, no example from the \foils\ package is included in the \beamer\ class. The emulation itself does not use the code of the \foils\ package (rather, it just maps \foils\ commands to \beamer\ commands). For this reason, our understanding is that the \emph{emulation} offered by the \beamer\ class is ``free'' and legally so. IBM has a copyright on the \foils\ class, not on the effect the commands of this class have. (At least, that's our understanding of things.)
+
+The workflow for the migration is the following:
+\begin{enumerate}
+\item
+ Use the document class |beamer|, not |foils|.
+\item
+ Add a |\usepackage{beamerfoils}| to start the emulation.
+\item
+ Possibly add commands to install themes and templates.
+\item
+ If the command |\foilhead| is used inside a |\frame| command or |frame| environment, it behaves like |\frametitle|. If it used outside a frame, it will start a new frame (with the |allowframebreaks| option, thus no overlays are allowed). This frame will persist till the next occurrence of |\foilhead| or of the new command |\endfoil|. Note that a |\frame| command will \emph{not} end a frame started using |\foilhead|.
+\item
+ If you rely on automatic frame creation based on |\foilhead|, you will need to insert an |\endfoil| before the end of the document to end the last frame.
+\item
+ If you use pdf\LaTeX\ to typeset the presentation, than you cannot include PostScript files. You should convert them to |.pdf| or to |.png| and adjust any usage of |\includegraphics| accordingly.
+\item
+ Sizes of objects are different in \beamer, since the scaling is done by the viewer, not by the class. Thus a framebox of size 6 inches will be way too big in a \beamer\ presentation. You will have to manually adjust explicit dimension occurring in a foil\TeX\ presentation.
+\end{enumerate}
+
+\begin{package}{{beamerfoils}}
+ Include this package in a |beamer| presentation to get access to \foils\ commands. Use |beamer| as the document class, not |foils|.
+
+ \example
+ In the following example, frames are automatically created. The |\endfoil| at the end is needed to close the last frame.
+
+\begin{verbatim}
+\documentclass{beamer}
+\usepackage{beamerfoils}
+
+\begin{document}
+
+\maketitle
+
+\foilhead{First Frame}
+
+This is on the first frame.
+\pagebreak
+This is on the second frame, which is a continuation of the first.
+
+\foilhead{Third Frame}
+
+This is on the third frame.
+
+\endfoil
+\end{document}
+\end{verbatim}
+
+ \example
+ In this example, frames are manually inserted. No |\endfoil| is needed.
+
+\begin{verbatim}
+\documentclass{beamer}
+\usepackage{beamerfoils}
+
+\begin{document}
+
+\frame{\maketitle}
+
+\frame{
+\foilhead{First Frame}
+This is on the first frame.
+}
+
+\frame{
+\foilhead{Second Frame}
+This is on the second frame.
+}
+\end{document}
+\end{verbatim}
+\end{package}
+
+In the following, the effects of \foils\ commands in \beamer\ are listed.
+
+\begin{command}{\MyLogo\marg{logo text}}
+ This is mapped to |\logo|, though the logo is internally stored, such that it can be switched on and off using |\LogoOn| and |\LogoOff|.
+\end{command}
+
+\begin{command}{\LogoOn}
+ Makes the logo visible.
+\end{command}
+
+\begin{command}{\LogoOff}
+ Makes the logo invisible.
+\end{command}
+
+\begin{command}{\foilhead\oarg{dimension}\marg{frame title}}
+ If used inside a |\frame| command or |frame| environment, this is mapped to |\frametitle{|\meta{frame title}|}|. If used outside any frames, a new frame is started with the option |allowframebreaks|. If a frame was previously started using this command, it will be closed before the next frame is started. The \meta{dimension} is ignored.
+\end{command}
+
+\begin{command}{\rotatefoilhead\oarg{dimension}\marg{frame title}}
+ This command has exactly the same effect as |\foilhead|.
+\end{command}
+
+\begin{command}{\endfoil}
+ This is a command that is \emph{not} available in \foils. In \beamer, it can be used to end a frame that has automatically been opened using |\foildhead|. This command must be given before the end of the document if the last frame was opened using |\foildhead|.
+\end{command}
+
+\begin{environment}{{boldequation}\opt{|*|}}
+ This is mapped to the |equation| or the |equation*| environment, with |\boldmath| switched on.
+\end{environment}
+
+\begin{command}{\FoilTeX}
+ Typesets the foil\TeX\ name as in the \foils\ package.
+\end{command}
+
+\begin{command}{\bm\marg{text}}
+ Implemented as in the \foils\ package.
+\end{command}
+
+\begin{command}{\bmstyle\marg{text}\marg{more text}}
+ Implemented as in the \foils\ package.
+\end{command}
+
+The following additional theorem-like environments are predefined:
+\begin{itemize}
+\item |Theorem*|,
+\item |Lemma*|,
+\item |Corollary*|,
+\item |Proposition*|, and
+\item |Definition*|.
+\end{itemize}
+For example, the first is defined using |\newtheorem*{Theorem*}{Theorem}|.
+
+The following commands are parsed by \beamer, but have no effect:
+\begin{itemize}
+\item |\leftheader|,
+\item |\rightheader|,
+\item |\leftfooter|,
+\item |\rightfooter|,
+\item |\Restriction|, and
+\item |\marginpar|.
+\end{itemize}
+
+
+\subsection{\TeX Power}
+\label{section-texpower}
+
+The package |beamertexpower| maps a subset of the commands of the \texpower\ package, due to Stephan Lehmke, to \beamer. This subset is currently rather small, so a lot of adaptions may be necessary. Note that \texpower\ is not a full class by itself, but a package that needs another class, like |seminar| or |prosper| to do the actual typesetting. It may thus be necessary to additionally load an emulation layer for these also. Indeed, it \emph{might} be possible to directly use \texpower\ inside \beamer, but we have not tried that. Perhaps this will be possible in the future.
+
+Currently, the package |beamertexpower| mostly just maps the |\stepwise| and related commands to appropriate \beamer\ commands. The |\pause| command need not be mapped since it is directly implemented by \beamer\ anyway.
+
+The workflow for the migration is the following:
+\begin{enumerate}
+\item
+ Replace the document class by |beamer|. If the document class is |seminar| or |prosper|, you can use the above emulation layers, that is, you can include the files |beamerseminar| or |beamerprosper| to emulate the class.
+
+ All notes on what to do for the emulation of \seminar\ or \prosper\ also apply here.
+\item
+ Additionally, add |\usepackage{beamertexpower}| to start the emulation.
+\end{enumerate}
+
+\begin{package}{{beamertexpower}}
+ Include this package in a |beamer| presentation to get access to the \texpower\ commands having to do with the |\stepwise| command.
+\end{package}
+
+A note on the |\pause| command: Both \beamer\ and \texpower\ implement this command and they have the same semantics; so there is no need to map this command to anything different in |beamertexpower|. However, a difference is that |\pause| can be used almost anywhere in \beamer, whereas it may only be used in non-nested situations in \texpower. Since \beamer\ is only more flexible than \texpower\ here, this will not cause problems when porting.
+
+In the following, the effect of \texpower\ commands in \beamer\ are listed.
+
+\begin{command}{\stepwise\marg{text}}
+ As in \texpower, this initiates text in which commands like |\step| or |\switch| may be given. Text contained in a |\step| command will be enclosed in an |\only| command with the overlay specification |<+(1)->|. This means that the text of the first |\step| is inserted from the second slide onward, the text of the second |\step| is inserted from the third slide onward, and so on.
+\end{command}
+
+\begin{command}{\parstepwise\marg{text}}
+ Same as |\stepwise|, only |\uncover| is used instead of |\only| when mapping the |\step| command.
+\end{command}
+
+\begin{command}{\liststepwise\marg{text}}
+ Same as |\stepwise|, only an invisible horizontal line is inserted before the \meta{text}. This is presumably useful for solving some problems related to vertical spacing in \texpower.
+\end{command}
+
+\begin{command}{\step\marg{text}}
+ This is either mapped to |\only<+(1)->|\meta{text} or to |\uncover<+(1)->|\meta{text}, depending on whether this command is used inside a |\stepwise| environment or inside a |\parstepwise| environment.
+\end{command}
+
+\begin{command}{\steponce\marg{text}}
+ This is either mapped to |\only<+(1)>|\meta{text} or to |\uncover<+(1)>|\meta{text}, depending on whether this command is used inside a |\stepwise| environment or inside a |\parstepwise| environment.
+\end{command}
+
+\begin{command}{\switch\marg{alternate text}\marg{text}}
+ This is mapped to |\alt<+(1)->{|\meta{text}|}{|\meta{alternate text}|}|. Note that the arguments are swapped.
+\end{command}
+
+\begin{command}{\bstep\marg{text}}
+ This is always mapped to |\uncover<+(1)->|\meta{text}.
+\end{command}
+
+\begin{command}{\dstep}
+ This just advances the counter |beamerpauses| by one. It has no other effect.
+\end{command}
+
+\begin{command}{\vstep}
+ Same as |\dstep|.
+\end{command}
+
+\begin{command}{\restep\marg{text}}
+ Same as |\step|, but the \meta{text} is shown on the same slide as the previous |\step| command. This is implemented by first decreasing the counter |beamerpauses| by one before calling |\step|.
+\end{command}
+
+\begin{command}{\reswitch\marg{alternate text}\meta{text}}
+ Like |\restep|, only for the |\switch| command.
+\end{command}
+
+\begin{command}{\rebstep\meta{text}}
+ Like |\restep|, only for the |\bstep| command.
+\end{command}
+
+\begin{command}{\redstep}
+ This command has no effect.
+\end{command}
+
+\begin{command}{\revstep}
+ This command has no effect.
+\end{command}
+
+\begin{command}{\boxedsteps}
+ Temporarily (for the current \TeX\ group) changes the effect of |\step| to issue an |\uncover|, even if used inside a |\stepwise| environment.
+\end{command}
+
+\begin{command}{\nonboxedsteps}
+ Temporarily (for the current \TeX\ group) changes the effect of |\step| to issue an |\only|, even if used inside a |\parstepwise| environment.
+\end{command}
+
+\begin{command}{\code\marg{text}}
+ Typesets the argument using a boldface typewriter font.
+\end{command}
+
+\begin{command}{\codeswitch}
+ Switches to a boldface typewriter font.
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-fonts.tex b/macros/latex/contrib/beamer/doc/beamerug-fonts.tex
new file mode 100644
index 0000000000..b1490c7ddb
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-fonts.tex
@@ -0,0 +1,251 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Fonts}
+\label{section-fonts}
+
+The first subsection introduces the predefined font themes that come with \beamer\ and which make it easy to change the fonts used in a presentation. The next subsection describes further special commands for changing some basic attributes of the fonts used in a presentation. The last subsection explains how you can get a much more fine-grained control over the fonts used for every individual element of a presentation.
+
+
+\subsection{Font Themes}
+
+\beamer\ comes with a set of font themes. When you use such a theme, certain fonts are changed as described below. You can use several font themes in concert. For historical reasons, you cannot change all aspects of the fonts used using font themes---in some cases special commands and options are needed, which are described in the next subsection.
+
+The following font themes only change certain font attributes, they do not choose special font families (although that would also be possible and themes doing just that might be added in the future). Currently, to change the font family, you need to load special packages as explained in the next subsection.
+
+
+\begin{fontthemeexample}{default}
+ The default font theme installs a sans serif font for all text of the presentation. The default theme installs different font sizes for things like titles or head- and footlines, but does not use boldface or italics for ``highlighting.'' To change some or all text to a serif font, use the |serif| theme.
+
+ \emph{Note:} The command |\mathrm| will always produce upright (not slanted), serif text and the command |\mathsf| will always produce upright, sans-serif text. The command |\mathbf| will produce upright, bold-face, sans-serif or serif text, depending on whether |mathsans| or |mathserif| is used.
+
+ To produce an upright, sans-serif or serif text, depending on whether |mathsans| or |mathserif| is used, you can use for instance the command |\operatorname| from the |amsmath| package. Using this command instead of |\mathrm| or |\mathsf| directly will automatically adjust upright mathematical text if you switch from sans-serif to serif or back.
+\end{fontthemeexample}
+
+\begin{fontthemeexample*}{professionalfonts}
+ This font theme does not really change any fonts. Rather, it \emph{suppresses} certain internal replacements performed by \beamer. If you use ``professional fonts'' (fonts that you buy and that come with a complete set of every symbol in all modes), you do not want \beamer\ to meddle with the fonts you use. \beamer\ normally replaces certain character glyphs in mathematical text by more appropriate versions. For example, \beamer\ will normally replace glyphs such that the italic characters from the main font are used for variables in mathematical text. If your professional font package takes care of this already, \beamer's meddling should be switched off. Note that \beamer's substitution is automatically turned off if one of the following packages is loaded: |arevmath|, |hvmath|, |kpfonts|, |lmodern|, |lucidabr|, |lucimatx|, |mathastext|, |mathpmnt|, |mathpple|, |mathtime|, |mtpro|, and |mtpro2|. It is also turned off when |unicode-math| is loaded for the use of Unicode math fonts. If your favorite professional font package is not among these, use the |professionalfonts| option (and write us an email, so that the package can be added).
+\end{fontthemeexample*}
+
+\begin{fontthemeexample}[\oarg{options}]{serif}
+ This theme causes all text to be typeset using the default serif font (except if you specify certain \meta{options}). You might wish to consult Section~\ref{section-guidelines-serif} on whether you should use serif fonts.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|stillsansserifmath|}
+ causes mathematical text still to be typeset using sans serif. This option only makes sense if you also use the |stillsansseriftext| option since sans serif math inside serif text looks silly.
+ \item
+ \declare{|stillsansserifsmall|}
+ will cause ``small'' text to be still typeset using sans serif. This refers to the text in the headline, footline, and sidebars. Using this options is often advisable since small text is often easier to read in sans serif.
+ \item
+ \declare{|stillsansseriflarge|}
+ will cause ``large'' text like the presentation title or the frame title to be still typeset using sans serif. Sans serif titles with serif text are a popular combination in typography.
+ \item
+ \declare{|stillsansseriftext|}
+ will cause normal text (none of the above three) to be still typeset using sans serif. If you use this option, you should most likely also use the first two. However, by not using |stillsansseriflarge|, you get a serif (possibly italic) title over a sans serif text. This can be an interesting visual effect. Naturally, ``interesting typographic effect'' can mean ``terrible typographic effect'' if you choose the wrong fonts combinations or sizes. You'll need some typographic experience to judge this correctly. If in doubt, try asking someone who should know.
+ \item
+ \declare{|onlymath|}
+ is a short-cut for selecting all of the above options except for the first. Thus, using this option causes only mathematical text to by typeset using a serif font. Recall that, by default, mathematical formulas are also typeset using sans-serif letters. In most cases, this is visually the most pleasing and easily readable way of typesetting mathematical formulas if the surrounding text is typeset using sans serif. However, in mathematical texts the font used to render, say, a variable is sometimes used to differentiate between different meanings of this variable. In such case, it may be necessary to typeset mathematical text using serif letters. Also, if you have a lot of mathematical text, the audience may be quicker to ``parse'' it if it is typeset the way people usually read mathematical text: in a serif font.
+ \end{itemize}
+\end{fontthemeexample}
+
+\begin{fontthemeexample}[\oarg{options}]{structurebold}
+ This font theme will cause titles and text in the headlines, footlines, and sidebars to be typeset in a bold font.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|onlysmall|}
+ will cause only ``small'' text to be typeset in bold. More precisely, only the text in the headline, footline, and sidebars is changed to be typeset in bold. Large titles are not affected.
+ \item
+ \declare{|onlylarge|}
+ will cause only ``large'' text to be typeset in bold. These are the main title, frame titles, and section entries in the table of contents.
+ \end{itemize}
+
+ As pointed out in Section~\ref{section-sizes}, you should use this theme (possibly with the |onlysmall| option) if your font is not scaled down properly or for light-on-dark text.
+
+ The normal themes do not install this theme by default, while the old compatibility themes do. Since you can reload the theme once it has been loaded, you cannot use this theme with the old compatibility themes to set also titles to a bold font.
+\end{fontthemeexample}
+
+\begin{fontthemeexample}[\oarg{options}]{structureitalicserif}
+ This theme is similarly as the |structurebold| font theme, but where |structurebold| makes text bold, this theme typesets it in italics and in the standard serif font. The same \meta{options} as for the |structurebold| theme are supported. See Section~\ref{section-italics} for the pros and cons of using italics.
+\end{fontthemeexample}
+
+\begin{fontthemeexample}[\oarg{options}]{structuresmallcapsserif}
+ Again, this theme does exactly the same as the |structurebold| font theme, only this time text is set using small caps and a serif font. The same \meta{options} as for the |structurebold| theme are supported. See Section~\ref{section-smallcaps} for the pros and cons of using small caps.
+\end{fontthemeexample}
+
+
+\subsection{Font Changes Made Without Using Font Themes}
+
+While most font decisions can be made using font themes, for historical reasons some changes can only be made using class options or by loading special packages. These options are explained in the following. Possibly, these options will be replaced by themes in the future.
+
+\subsubsection{Choosing a Font Size for Normal Text}
+
+As pointed out in Section~\ref{section-sizes}, measuring the default font size in points is not really a good idea for presentations. Nevertheless, \beamer\ does just that, setting the default font size to 11pt as usual. This may seem ridiculously small, but the actual size of each frame size is by default just 128mm by 96mm and the viewer application enlarges the font. By specifying a default font size smaller than 11pt you can put more onto each slide, by specifying a larger font size you can fit on less.
+
+To specify the font size, you can use the following class options:
+
+\begin{classoption}{8pt}
+ This is way too small. Requires that the package |extsize| is installed.
+\end{classoption}
+
+\begin{classoption}{9pt}
+ This is also too small. Requires that the package |extsize| is installed.
+\end{classoption}
+
+\begin{classoption}{10pt}
+ If you really need to fit more onto each frame, use this option. Works without |extsize|.
+\end{classoption}
+
+\begin{classoption}{smaller}
+ Same as the |10pt| option. \end{classoption}
+
+\begin{classoption}{11pt}
+ The default font size. You need not specify this option.
+\end{classoption}
+
+\begin{classoption}{12pt}
+ Makes all fonts a little bigger, which makes the text more readable. The downside is that less fits onto each frame.
+\end{classoption}
+
+\begin{classoption}{bigger}
+ Same as the |12pt| option.
+\end{classoption}
+
+\begin{classoption}{14pt}
+ Makes all fonts somewhat bigger. Requires |extsize| to be installed.
+\end{classoption}
+
+\begin{classoption}{17pt}
+ This is about the default size of PowerPoint and OpenOffice.org Impress. Requires |extsize| to be installed.
+\end{classoption}
+
+\begin{classoption}{20pt}
+ This is really huge. Requires |extsize| to be installed.
+\end{classoption}
+
+\subsubsection{Choosing a Font Family}
+
+\label{section-substition}
+
+By default, \beamer\ uses the Computer Modern fonts. To change this, you can use one of the prepared packages of \LaTeX's font mechanism. For example, to change to Times/Helvetica, simply add
+\begin{verbatim}
+\usepackage{mathptmx}
+\usepackage{helvet}
+\end{verbatim}
+in your preamble. Note that if you do not use the |serif| font theme, Helvetica (not Times) will be selected as the text font.
+
+There may be many other fonts available on your installation. Typically, at least some of the following packages should be available: |arev|, |avant|, |bookman|, |chancery|, |charter|, |euler|, |helvet|, |lmodern|, |mathtime|, |mathptm|, |mathptmx|, |newcent|, |palatino|, |pifont|, |utopia|.
+
+\subsubsection{Choosing a Font Encodings}
+\label{section-font-encoding}
+
+The same font can come in different encodings, which are (very roughly spoken) the ways the characters of a text are mapped to glyphs (the actual shape of a particular character in a particular font at a particular size). In \TeX\ two encodings are often used with Latin characters: the T1~encoding and the OT1~encoding (old T1~encoding).
+
+Conceptually, the newer T1~encoding is preferable over the old OT1~encoding. For example, hyphenation of words containing umlauts (like the famous German word Fr\"aulein) will work only if you use the T1~encoding. Unfortunately, the EC fonts, that is, the T1-encoded Computer Modern fonts, are distributed on small installations just as MetaFont sources and only have bitmap renditions of each glyph. For this reason, using the T1-encoded EC fonts on such small installations will produce \pdf\ files that render poorly.
+
+\TeX\ Live (cross-platform; replaced older \texttt{teTeX} for \textsc{unix}\slash Linux) and MiK\TeX\ (for Windows platforms) can be installed with different levels of completeness. Concerning the Computer Modern fonts, the following packages can be installed: |cm-super| fonts, |lmodern| (Latin Modern) fonts, and |lgc| fonts, the latter containing the Latin, Greek, and Cyrillic alphabets. Concerning other fonts, the |txfonts| and |pxfonts| are two extended sets of the Times and the Palatino PostScript fonts, both packages containing extended sets of mathematical glyphs. Most other standard PostScript fonts are also available in T1~encoding.
+
+Among the packages that make available the Computer Modern fonts in the T1~encoding, the package |lmodern| may be suggested. If you use |lmodern|, several extra fonts become available (like a sans-serif boldface math) and extra symbols (like proper guillemots).
+
+To select the T1 encoding, use \verb|\usepackage[T1]{fontenc}|. Thus, if you have the LM~fonts installed, you could write
+\begin{verbatim}
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+\end{verbatim}
+to get beautiful outline fonts and correct hyphenation. Note, however, that certain older versions of the LM~bundle did not include correct glyphs for ligatures like ``fi,'' which may cause trouble. Double check that all ligatures are displayed correctly and, if not, update your installation.
+
+Everything mentioned above applies to |pdflatex| and |latex|+|dvips|. Unlike those engines, |xelatex| and |lualatex| support OpenType fonts, and that means that you can use system fonts in your documents relatively easy. Details will eventually be documented in this manual. For now, you can take a look at the documentation for the |fontspec| package which supports both engines. Also, note that when you use |lualatex| or |xelatex| with EU2 or EU1 encoding, respectively, by default you get OpenType Latin Modern fonts.
+
+
+\subsection{Changing the Fonts Used for Different Elements of a Presentation}
+
+This section explains how \beamer's font management works.
+
+\subsubsection{Overview of Beamer's Font Management}
+
+\beamer's font mechanism is somewhat similar to \beamer's color mechanism, but not quite the same. As for colors, every \beamer\ element, like the frame titles, the document title, the footnotes, and so on has a certain \beamer-font. As for colors, on the one hand you can specify the font of each element individually; on the other hand fonts also use inheritance, thereby making it easy to globally change the fonts used for, say, ``titlelike things'' or for ``itemizelike things.''
+
+While a \beamer-color has a certain foreground and a certain background, either of which may be empty, a \beamer-font has a size, a shape, a series, and a family, each of which may be empty. The inheritance relation among \beamer-fonts is not necessarily the same as between \beamer-colors, though we have tried to match them whenever possible.
+
+Multiple inheritance plays a more important rule for fonts than it does for colors. A font might inherit the attributes of two different fonts. If one of them specifies that the font should be, say, boldface and the other specifies that the font should be, say, large, then the child font will be both large and bold.
+
+As for fonts, the description of the font used for an element is given after the description of the element.
+
+
+\subsubsection{Using Beamer's Fonts}
+
+To use a \beamer-font, you can use the command |\usebeamerfont|. Inside the templates for elements, this command will (typically) have already been called for you, so you will only seldomly have to use this command.
+
+\begin{command}{\usebeamerfont\opt{|*|}\marg{beamer-font name}}
+ This command changes the current font to the font specified by the \meta{beamer-font name}. The \meta{beamer-font name} can be a not-too-fancyful text and may contain spaces. Typical examples are |frametitle| or |section in toc| or |My Font 1|. \beamer-fonts can have (and should) have the same name as \beamer-templates and \beamer-colors.
+
+ \example |\usebeamerfont{frametitle}|
+ In the unstarred version of this command, the font is changed according to the attributes specified in the \meta{beamer-font name}, but unspecified attributes remain unchanged. For example, if the font specifies that the font should be ``bold,'' but specifies nothing else, and if the current font is large, then |\usebeamerfont| causes the current font to become large and bold.
+
+ In the starred version of this command, the font is first reset before the font's attributes are applied. Thus, in the above example of a \beamer-font having only the attribute ``boldface'' set, saying |\usebeamerfont*| will \emph{always} cause the current font to become a normal-size, normal-shape, bold, default-family font.
+\end{command}
+
+
+\subsubsection{Setting Beamer's Fonts}
+
+As for \beamer-colors, there exists a central command for setting and
+changing \beamer-fonts.
+
+\begin{command}{\setbeamerfont\opt{|*|}\marg{beamer-font name}\marg{attributes}}
+ This command sets or resets certain attributes of the \beamer-font \meta{beamer-font name}. In the unstarred version, this command just adds those attributes that have not been mentioned in a previous call and overwrites those that have been mentioned. Thus, the following two command blocks have the same effect:
+
+ \example
+\begin{verbatim}
+\setbeamerfont{frametitle}{size=\large}
+\setbeamerfont{frametitle}{series=\bfseries}
+
+\setbeamerfont{frametitle}{size=\large,series=\bfseries}
+\end{verbatim}
+
+ In the starred version, the font attributes are first completely reset, that is, set to be empty.
+
+ The following \meta{attributes} may be given:
+ \begin{itemize}
+ \item \declare{|size=|\meta{size command}} sets the size attribute of the \beamer\ font. The \meta{size command} should be a normal \LaTeX-command used for setting the font size or it should be empty. Useful commands include |\tiny|, |\scriptsize|, |\footnotesize|, |\small|, |\normalsize|, |\large|, |\Large|, |\huge|, and |\Huge|. \beamer\ also introduces the two font sizes |\Tiny| and |\TINY| for \emph{really} small text. But you should know \emph{exactly} what you are doing if you use them. You have been warned.
+
+ Note that there is a difference between specifying an empty command and specifying |\normalsize|: Making the size attribute ``empty'' means that the font size should not be changed when this font is used, while specifying |\normalsize| means that the size should be set to the normal size whenever this font is used.
+ \item \declare{|size*=|\marg{size in pt}\marg{baselineskip}} sets the size attribute of the font to the given \meta{size in pt} and the baseline skip to the given value. Note that, depending on what kind of font you use, not all font sizes may be available. Also, certain font sizes are much less desirable than other ones; the standard commands take care of choosing appropriate sizes for you. Do not use this option unless you have a good reason. This command has the same effect as |size={\fontsize|\marg{size in pt}\marg{baselineskip}|}|.
+ \item \declare{|shape=|\meta{shape command}} sets the shape attribute of the font. The command should be a command like |\itshape|, |\slshape|, |\scshape|, or |\upshape|.
+ \item \declare{|shape*=|\marg{shape attribute abbreviation}} sets the shape attribute of the font using the \LaTeX's abbreviations for attributes. This command has the same effect as |shape={\fontshape|\marg{shape attributes abbreviation}|}|.
+ \item \declare{|series=|\meta{series command}} sets the ``series'' attribute of the font. The command should be a command like |\bfseries|.
+ \item \declare{|series*=|\marg{series attribute abbreviation}} has the same effect as |series={\fontseries|\marg{series attributes abbreviation}|}|.
+ \item \declare{|family=|\meta{family command}} sets the font family attribute. The command should be a \LaTeX-font command like |\rmfamily| or |\sffamily|.
+ \item \declare{|family*=|\marg{family name}} sets the font family attribute to the given \meta{family name}. The command has the same effect as |family={\fontfamily|\marg{family name}|}|. The \meta{family name} is, normally, a somewhat cryptic abbreviation of a font family name that installed somewhere on the system. For example, the \meta{family name} for Times happens to be |ptm|. No one can remember these names, so it's perfectly normal if you have to look them up laboriously.
+ \item \declare{|parent=|\marg{parent list}} specifies a list of parent fonts. When the \beamer-font is used, the parents are used first. Thus, any font attributes set by one of the parents is inherited by the \beamer-font, except if this attribute is overwritten by the font.
+ \end{itemize}
+
+ \example
+\begin{verbatim}
+\setbeamerfont{parent A}{size=\large}
+\setbeamerfont{parent B}{series=\bfseries}
+\setbeamerfont{child}{parent={parent A, parent B},size=\small}
+
+\normalfont
+This text is in a normal font.
+\usebeamerfont{parent A}
+This text is large.
+\usebeamerfont{parent B}
+This text is large and bold.
+\usebeamerfont{parent B}
+This text is still large and bold.
+\usebeamerfont*{parent B}
+This text is only bold, but not large.
+\usebeamerfont{child}
+This text is small and bold.
+\end{verbatim}
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-frames.tex b/macros/latex/contrib/beamer/doc/beamerug-frames.tex
new file mode 100644
index 0000000000..b045c4b8fe
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-frames.tex
@@ -0,0 +1,1191 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Creating Frames}
+\label{section-frames}
+
+
+\subsection{The Frame Environment}
+
+A presentation consists of a series of frames. Each frame consists of a series of slides. You create a frame using |frame| environment.\footnote{The command \texttt{\textbackslash frame} is supported for legacy documents.} All of the text that is not tagged by overlay specifications is shown on all slides of the frame. (Overlay specifications are explained in more detail in later sections. For the moment, let's just say that an overlay specification is a list of numbers or number ranges in pointed brackets that is put after certain commands as in |\uncover<1,2>{Text}|.) If a frame contains commands that have an overlay specification, the frame will contain multiple slides; otherwise it contains only one slide.
+
+\begin{environment}{{frame}\sarg{overlay specification}\opt{|[<|\meta{default overlay specification}|>]|}\oarg{options}\opt{\marg{title}\marg{subtitle}}}
+ The \meta{overlay specification} dictates which slides of a frame are to be shown. If left out, the number is calculated automatically. The \meta{environment contents} can be normal \LaTeX\ text, but may not contain |\verb| commands or |verbatim| environments or any environment that changes the character codes, unless the |fragile| option is given.
+
+ The optional \meta{title} is detected by an opening brace, that is, if the first thing in the frame is an opening brace then it is assumed that a frame title follows. Likewise, the optional \meta{subtitle} is detected the same way, that is, by an opening brace following the \meta{title}. The title and subtitle can also be given using the |\frametitle| and |\framesubtitle| commands.
+
+ The normal \LaTeX\ command |\frame| is available \emph{inside} frames with its usual meaning. Both outside and inside frames it is always available as {\color{red!75!black}|\framelatex|}.
+
+ \example
+\begin{verbatim}
+\begin{frame}{A title}
+ Some content.
+\end{frame}
+%% Same effect:
+\begin{frame}
+ \frametitle{A title}
+ Some content.
+\end{frame}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\begin{frame}<beamer>{Outline} % frame is only shown in beamer mode
+ \tabelofcontent[current]
+\end{frame}
+\end{verbatim}
+
+ Normally, the complete \meta{environment contents} is put on a slide. If the text does not fit on a slide, being too high, it will be squeezed as much as possible, a warning will be issued, and the text just extends unpleasantly over the bottom. You can use the option |allowframebreaks| to cause the \meta{frame text} to be split among several slides, though you cannot use overlays then. See the explanation of the |allowframebreaks| option for details.
+
+ The \meta{default overlay specification} is an optional argument that is ``detected'' according to the following rule: If the first optional argument in square brackets starts with a |<|, then this argument is a \meta{default overlay specification}, otherwise it is a normal \meta{options} argument. Thus |\begin{frame}[<+->][plain]| would be legal, but also |\begin{frame}[plain]|.
+
+ The effect of the \meta{default overlay specification} is the following: Every command or environment \emph{inside the frame} that accepts an action specification, see Section~\ref{section-action-specifications}, (this includes the |\item| command, the |actionenv| environment, |\action|, and all block environments) and that is not followed by an overlay specification gets the \meta{default overlay specification} as its specification. By providing an incremental specification like |<+->|, see Section~\ref{section-incremental}, this will essentially cause all blocks and all enumerations to be uncovered piece-wise (blocks internally employ action specifications).
+
+ \example
+ In this frame, the theorem is shown from the first slide on, the proof from the second slide on, with the first two itemize points shown one after the other; the last itemize point is shown together with the first one. In total, this frame will contain four slides.
+
+\begin{verbatim}
+\begin{frame}[<+->]
+ \begin{theorem}
+ $A = B$.
+ \end{theorem}
+ \begin{proof}
+ \begin{itemize}
+ \item Clearly, $A = C$.
+ \item As shown earlier, $C = B$.
+ \item<3-> Thus $A = B$.
+ \end{itemize}
+ \end{proof}
+\end{frame}
+\end{verbatim}
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|allowdisplaybreaks|}\opt{|=|\meta{break desirability}} causes the AMS\TeX\ command |\allowdisplaybreaks|\penalty0|[|\meta{break desirability}|]| to be issued for the current frame. The \meta{break desirability} can be a value between 0 (meaning formulas may never be broken) and 4 (the default, meaning that formulas can be broken anywhere without any penalty). The option is just a convenience and makes sense only together with the |allowsframebreaks| option.
+ \item
+ \declare{|allowframebreaks|}\opt{|=|\meta{fraction}}. When this option is given, the frame will be automatically broken up into several frames if the text does not fit on a single slide. In detail, when this option is given, the following things happen:
+ \begin{enumerate}
+ \item
+ Overlays are not supported.
+ \item
+ Any notes for the frame created using the |\note| command will be inserted after the first page of the frame.
+ \item
+ Any footnotes for the frame will be inserted on the last page of the frame.
+ \item
+ If there is a frame title, each of the pages will have this frame title, with a special note added indicating which page of the frame that page is. By default, this special note is a Roman number. However, this can be changed using the following template.
+ \begin{element}{frametitle continuation}\yes\yes\yes
+ The text of this template is inserted at the end of every title of a frame with the |allowframebreaks| option set.
+ \begin{templateoptions}
+ \itemoption{default}{}
+ Installs a Roman number as the template. The number indicates the current page of the frame.
+
+ \itemoption{roman}{}
+ Alias for the default.
+
+ \itemoption{from second}{\oarg{text}}
+ Installs a template that inserts \meta{text} from the second page of a frame on. By default, the text inserted is |\insertcontinuationtext|, which in turn is |(cont.)| by default.
+ \end{templateoptions}
+ The following inserts are available:
+ \begin{templateinserts}
+ \iteminsert{\insertcontinuationcount}
+ inserts the current page of the frame as an arabic number.
+ \iteminsert{\insertcontinuationcountroman}
+ inserts the current page of the frame as an (uppercase) Roman number.
+ \iteminsert{\insertcontinuationtext}
+ just inserts the text |(cont.)| or, possibly, a translation thereof (like |(Forts.)| in German).
+ \end{templateinserts}
+ \end{element}
+ \end{enumerate}
+
+ If a frame needs to be broken into several pages, the material on all but the last page fills only 95\% of each page by default. Thus, there will be some space left at the top and/or bottom, depending on the vertical placement option for the frame. This yields a better visual result than a 100\% filling, which typically looks crowded. However, you can change this percentage using the optional argument \meta{fraction}, where 1 means 100\% and 0.5 means 50\%. This percentage includes the frame title. Thus, in order to split a frame ``roughly in half,'' you should give 0.6 as \meta{fraction}.
+
+ Most of the fine details of normal \TeX\ page breaking also apply to this option. For example, when you wish equations to be broken automatically, be sure to use the |\allowdisplaybreaks| command. You can insert |\break|, |\nobreak|, and |\penalty| commands to control where breaks should occur. The commands |\pagebreak| and |\nopagebreak| also work, including their options. Since you typically do not want page breaks for the frame to apply also to the |article| mode, you can add a mode specification like |<presentation>| to make these commands apply only to the presentation modes. The command \declare{|\string\framebreak|} is a shorthand for |\pagebreak<presentation>| and \declare{|\string\noframebreak|} is a shorthand for |\nopagebreak<presentation>|.
+
+ The use of this option is \emph{evil}. In a (good) presentation you prepare each slide carefully and think twice before putting something on a certain slide rather than on some different slide. Using the |allowframebreaks| option invites the creation of horrible, endless presentations that resemble more a ``paper projected on the wall'' than a presentation. Nevertheless, the option does have its uses. Most noticeably, it can be convenient for automatically splitting bibliographies or long equations.
+
+ \example
+\begin{verbatim}
+\begin{frame}[allowframebreaks]{References}
+ \begin{thebibliography}{XX}
+
+ \bibitem...
+ \bibitem...
+ ...
+ \bibitem...
+ \end{thebibliography}
+\end{frame}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\begin{frame}[allowframebreaks,allowdisplaybreaks]{A Long Equation}
+ \begin{align}
+ \zeta(2) &= 1 + 1/4 + 1/9 + \cdots \\
+ &= ... \\
+ ...
+ &= \pi^2/6.
+ \end{align}
+\end{frame}
+\end{verbatim}
+
+ \item
+ \declare{|b|}, \declare{|c|}, \declare{|t|} will cause the frame to be vertically aligned at the bottom/center/top. This overrides the global placement policy, which is governed by the class options |t| and |c|.
+ \item
+ \declare{|noframenumbering|} tells \beamer\ not to step the |framenumber| counter for this frame.
+ \item
+ \declare{|fragile|\opt{|=singleslide|}} tells \beamer\ that the frame contents is ``fragile.'' This means that the frame contains text that is not ``interpreted as usual.'' For example, this applies to verbatim text, which is, obviously, interpreted somewhat differently from normal text.
+
+ If a frame contains fragile text, different internal mechanisms are used to typeset the frame to ensure that inside the frame the character codes can be reset. The price of switching to another internal mechanism is that either you cannot use overlays or an external file needs to be written and read back (which is not always desirable).
+
+ In detail, the following happens when this option is given for normal (pdf)\LaTeX: The contents of the frame is scanned and then written to a special file named \meta{jobname}|.vrb| or, if a label has been assigned to the frame, \meta{jobname}|.|\meta{current frame number}|.vrb|. Then, the frame is started anew and the content of this file is read back. Since, upon reading of a file, the character codes can be modified, this allows you to use both verbatim text and overlays.
+
+ To determine the end of the frame, the following rule is used: The first occurrence of a single line containing exactly |\end{|\meta{frame environment name}|}| ends the frame. The \meta{environment name} is normally |frame|, but it can be changed using the |environment| option. This special rule is needed since the frame contents is, after all, not interpreted when it is gathered.
+
+ You can also add the optional information |=singleslide|. This tells \beamer\ that the frame contains only a single slide. In this case, the frame contents is \emph{not} written to a special file, but interpreted directly, which is ``faster and cleaner.''
+ \item
+ \declare{|environment=|\meta{frame environment name}}. This option is useful only in conjunction with the |fragile| option (but it is not used for |fragile=singleslide|, only for the plain |fragile|). The \meta{frame environment name} is used to determine the end of the scanning when gathering the frame contents. Normally, the frame ends when a line reading |\end{frame}| is reached. However, if you use |\begin{frame}| inside another environment, you need to use this option:
+
+ \example
+\begin{verbatim}
+\newenvironment{slide}[1]
+ {\begin{frame}[fragile,environment=slide]
+ \frametitle{#1}}
+ {\end{frame}}
+
+\begin{slide}{My title}
+ Text.
+\end{slide}
+\end{verbatim}
+
+ If you did not specify the option |environment=slide| in the above example, \TeX\ would ``miss'' the end of the slide since it does not interpret text while gathering the frame contents.
+ \item
+ \declare{|label=|\meta{name}} causes the frame's contents to be stored under the name \meta{name} for later resumption using the command |\againframe|. Furthermore, on each slide of the frame a label with the name \meta{name}|<|\meta{slide number}|>| is created. On the \emph{first} slide, furthermore, a label with the name \meta{name} is created (so the labels \meta{name} and \meta{name}|<1>| point to the same slide). Note that labels in general, and these labels in particular, can be used as targets for hyperlinks.
+
+ You can use this option together with |fragile|.
+ \item
+ \declare{|plain|} causes the headlines, footlines, and sidebars to be suppressed. This is useful for creating single frames with different head- and footlines or for creating frames showing big pictures that completely fill the frame.
+
+ \example
+ A frame with a picture completely filling the frame:
+
+\begin{verbatim}
+\begin{frame}[plain]
+ \begin{centering}%
+ \pgfimage[height=\paperheight]{somebigimagefile}%
+ \par%
+ \end{centering}%
+\end{frame}
+\end{verbatim}
+
+ \example
+ A title page, in which the head- and footlines are replaced by two graphics.
+
+\begin{verbatim}
+\setbeamertemplate{title page}
+{
+ \pgfuseimage{toptitle}
+ \vskip0pt plus 1filll
+
+ \begin{centering}
+ {\usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle}
+
+ \insertdate
+ \end{centering}
+
+ \vskip0pt plus 1filll
+ \pgfuseimage{bottomtitle}
+}
+\begin{frame}[plain]
+ \titlepage
+\end{frame}
+\end{verbatim}
+
+ \item
+ \declare{|shrink|}\opt{|=|\meta{minimum shrink percentage}}. This option will cause the text of the frame to be shrunk if it is too large to fit on the frame. \beamer\ will first normally typeset the whole frame. Then it has a look at vertical size of the frame text (excluding the frame title). If this vertical size is larger than the text height minus the frame title height, \beamer\ computes a shrink factor and scales down the frame text by this factor such that the frame text then fills the frame completely. Using this option will automatically cause the |squeeze| option to be used, also.
+
+ Since the shrinking takes place only after everything has been typeset, shrunk frame text will not fill the frame completely horizontally. For this reason, you can specify a \meta{minimum shrink percentage} like |20|. If this percentage is specified, the frame will be shrunk \emph{at least} by this percentage. Since \beamer\ knows this, it can increase the horizontal width proportionally such that the shrunk text once more fills the entire frame. If, however, the percentage is not enough, the text will be shrunk as needed and you will be punished with a warning message.
+
+ The best way to use this option is to identify frames that are overly full, but in which all text absolutely has to be fit on a single frame. Then start specifying first |shrink=5|, then |shrink=10|, and so on, until no warning is issued any more (or just ignore the warning when things look satisfactory).
+
+ Using this option is \emph{very evil}. It will result in changes of the font size from slide to slide, which is a typographic nightmare. Its usage can \emph{always} be avoided by restructuring and simplifying frames, which will result in a better presentation.
+
+ \example
+\begin{verbatim}
+\begin{frame}[shrink=5]
+ Some evil endless slide that is 5\% too large.
+\end{frame}
+\end{verbatim}
+
+ \item
+ \declare{|squeeze|} causes all vertical spaces in the text to be squeezed together as much as possible. Currently, this just causes the vertical space in enumerations or itemizations to be reduced to zero.
+
+ Using this option is not good, but also not evil.
+ \end{itemize}
+
+ \articlenote
+ In |article| mode, the |frame| environment does not create any visual reference to the original frame (no frame is drawn). Rather, the frame text is inserted into the normal text. To change this, you can modify the templates |frame begin| and |frame end|, see below. To suppress a frame in |article| mode, you can, for example, specify |<presentation>| as overlay specification.
+
+ \begin{element}{frame begin}\yes\no\no
+ The text of this template is inserted at the beginning of each frame in |article| mode (and only there). You can use it, say, to start a |minipage| environment at the beginning of a frame or to insert a horizontal bar or whatever.
+ \end{element}
+
+ \begin{element}{frame end}\yes\no\no
+ The text of this template is inserted at the end of each frame in |article| mode.
+ \end{element}
+\end{environment}
+
+You \emph{can} use the |frame| environment inside other environments like this
+
+\begin{verbatim}
+\newenvironment{slide}{\begin{frame}}{\end{frame}}
+\end{verbatim}
+
+or like this
+
+\begin{verbatim}
+\newenvironment{myframe}[1]
+ {\begin{frame}[fragile,environment=myframe]\frametitle{#1}}
+ {\end{frame}}
+\end{verbatim}
+
+However, the actual mechanics are somewhat sensitive since the ``collecting'' of the frame contents is not easy, so do not attempt anything too fancy. As a rule, the beginning of the environment can be pretty arbitrary, but the ending must end with |\end{frame}| and should not contain any |\end{xxx}|. Anything really complex is likely to fail. If you need some |\end{xxx}| there, define a new command that contains this stuff as in the following example:
+
+\begin{verbatim}
+\newenvironment{itemizeframe}
+ {\begin{frame}\startitemizeframe}
+ {\stopitemizeframe\end{frame}}
+
+\newcommand\startitemizeframe{\begin{bfseries}\begin{itemize}}
+\newcommand\stopitemizeframe{\end{itemize}\end{bfseries}}
+
+\begin{itemizeframe}
+\item First item
+\end{itemizeframe}
+\end{verbatim}
+
+
+\subsection{Components of a Frame}
+
+Each frame consists of several components:
+\begin{enumerate}\itemsep=0pt\parskip=0pt
+\item a headline and a footline,
+\item a left and a right sidebar,
+\item navigation bars,
+\item navigation symbols,
+\item a logo,
+\item a frame title,
+\item a background, and
+\item some frame contents.
+\end{enumerate}
+
+A frame need not have all of these components. Usually, the first three components are automatically setup by the theme you are using.
+
+\subsubsection{The Headline and Footline}
+
+The headline of a frame is the area at the top of the frame. If it is not empty, it should show some information that helps the audience orientate itself during your talk. Likewise, the footline is the area at the bottom of the frame.
+
+\beamer\ does not use the standard \LaTeX\ mechanisms for typesetting the headline and the footline. Instead, the special |headline| and |footline| templates are used to typeset them.
+
+The size of the headline and the footline is determined as follows: Their width is always the paper width. Their height is determined by tentatively typesetting the headline and the footline right after the |\begin{document}| command. The head of the headline and the footline at that point is ``frozen'' and will be used throughout the whole document, even if the headline and footline vary in height later on (which they should not).
+
+The appearance of the headline and footline is determined by the following templates:
+
+\begin{element}{headline}\yes\yes\yes
+ This template is used to typeset the headline. The \beamer-color and -font |headline| are installed at the beginning. The background of the \beamer-color is not used by default, that is, no background rectangle is drawn behind the headline and footline (this may change in the future with the introduction of a headline and a footline canvas).
+
+ The width of the headline is the whole paper width. The height is determined automatically as described above. The headline is typeset in vertical mode with interline skip turned off and the paragraph skip set to zero.
+
+ Inside this template, the |\\| command is changed such that it inserts a comma instead.
+
+ \example
+\begin{verbatim}
+\setbeamertemplate{headline}
+{%
+ \begin{beamercolorbox}{section in head/foot}
+ \vskip2pt\insertnavigation{\paperwidth}\vskip2pt
+ \end{beamercolorbox}%
+}
+\end{verbatim}
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default is just an empty headline. To get the default headline of earlier versions of the \beamer\ class, use the |compatibility| theme.
+ \itemoption{infolines theme}{}
+ This option becomes available (and is used) if the |infolines| outer theme is loaded. The headline shows current section and subsection.
+ \itemoption{miniframes theme}{}
+ This option becomes available (and is used) if the |miniframes| outer theme is loaded. The headline shows the sections with small clickable mini frames below them.
+ \itemoption{sidebar theme}{}
+ This option becomes available (and is used) if the |sidebar| outer theme is loaded and if the head height (and option of the |sidebar| theme) is not zero. In this case, the headline is an empty bar of the background color |frametitle| with the logo to the left or right of this bar.
+ \itemoption{smoothtree theme}{}
+ This option becomes available (and is used) if the |smoothtree| outer theme is loaded. A ``smoothed'' navigation tree is shown in the headline.
+ \itemoption{smoothbars theme}{}
+ This option becomes available (and is used) if the |smoothbars| outer theme is loaded. A ``smoothed'' version of the |miniframes| headline is shown.
+ \itemoption{tree}{}
+ This option becomes available (and is used) if the |tree| outer theme is loaded. A navigational tree is shown in the headline.
+ \itemoption{split theme}{}
+ This option becomes available (and is used) if the |split| outer theme is loaded. The headline is split into a left part showing the sections and a right part showing the subsections.
+ \itemoption{text line}{\marg{text}}
+ The headline is typeset more or less as if it were a normal text line with the \meta{text} as contents. The left and right margin are setup such that they are the same as the margins of normal text. The \meta{text} is typeset inside an |\hbox|, while the headline is normally typeset in vertical mode.
+ \end{templateoptions}
+
+ Inside the template numerous inserts can be used:
+ \begin{itemize}
+ \iteminsert{\insertnavigation\marg{width}}
+ Inserts a horizontal navigation bar of the given \meta{width} into a template. The bar lists the sections and below them mini frames for each frame in that section.
+
+ \iteminsert{\insertpagenumber}
+ Inserts the current page number into a template.
+
+ \iteminsert{\insertsection}
+ Inserts the current section into a template.
+
+ \iteminsert{\insertsectionnavigation}\marg{width}
+ Inserts a vertical navigation bar containing all sections, with the current section highlighted.
+
+ \iteminsert{\insertsectionnavigationhorizontal}\marg{width}\marg{left insert}\marg{right insert}
+ Inserts a horizontal navigation bar containing all sections, with the current section highlighted. The \meta{left insert} will be inserted to the left of the sections, the \marg{right insert} to the right. By inserting a triple fill (a |filll|) you can flush the bar to the left or right.
+ \example
+\begin{verbatim}
+\insertsectionnavigationhorizontal{.5\textwidth}{\hskip0pt plus1filll}{}
+\end{verbatim}
+
+ \iteminsert{\insertshortauthor}\oarg{options}
+ Inserts the short version of the author into a template. The text will be printed in one long line, line breaks introduced using the |\\| command are suppressed. The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|width=|\meta{width}}
+ causes the text to be put into a multi-line minipage of the given size. Line breaks are still suppressed by default.
+ \item
+ \declare{|center|}
+ centers the text inside the minipage created using the |width| option, rather than having it left aligned.
+ \item
+ \declare{|respectlinebreaks|}
+ causes line breaks introduced by the |\\| command to be honored.
+ \end{itemize}
+
+ \example
+ |\insertauthor[width={3cm},center,respectlinebreaks]|
+
+ \iteminsert{\insertshortdate}\oarg{options}
+ Inserts the short version of the date into a template. The same options as for |\insertshortauthor| may be given.
+
+ \iteminsert{\insertshortinstitute}\oarg{options}
+ Inserts the short version of the institute into a template. The same options as for |\insertshortauthor| may be given.
+
+ \iteminsert{\insertshortpart}\oarg{options}
+ Inserts the short version of the part name into a template. The same options as for |\insertshortauthor| may be given.
+
+ \iteminsert{\insertshorttitle}\oarg{options}
+ Inserts the short version of the document title into a template. Same options as for |\insertshortauthor| may be given.
+
+ \iteminsert{\insertshortsubtitle}\oarg{options}
+ Inserts the short version of the document subtitle. Same options as for |\insertshortauthor| may be given.
+
+ \iteminsert{\insertsubsection}
+ Inserts the current subsection into a template.
+
+ \iteminsert{\insertsubsubsection}
+ Inserts the current subsection into a template.
+
+ \iteminsert{\insertsubsectionnavigation}\marg{width}
+ Inserts a vertical navigation bar containing all subsections of the current section, with the current subsection highlighted.
+
+ \iteminsert{\insertsubsectionnavigationhorizontal}\marg{width}\marg{left insert}\marg{right insert}\newline
+ See |\insertsectionnavigationhorizontal|.
+
+ \iteminsert{\insertverticalnavigation}\marg{width}
+ Inserts a vertical navigation bar of the given \meta{width} into a template. The bar shows a little table of contents. The individual lines are typeset using the templates |section in head/foot| and |subsection in head/foot|.
+
+ \iteminsert{\insertframenumber}
+ Inserts the number of the current frame (not slide) into a template.
+
+ \iteminsert{\insertslidenumber}
+ Inserts the number of the current slide in frame into a template.
+
+ \iteminsert{\insertoverlaynumber}
+ Inserts the number of current overlay counter into a template. This is generally equal to |\insertslidenumber|, except when an overlay specification is used in a |frame| environment.
+
+ \iteminsert{\inserttotalframenumber}
+ Inserts the total number of the frames (not slides) into a template. The number is only correct on the second run of \TeX\ on your document.
+
+ \iteminsert{\insertmainframenumber}
+ Inserts the number of the frames in the main part (before |\appendix| command) into a template. The number is only correct on the second run of \TeX\ on your document.
+
+ \iteminsert{\insertappendixframenumber}
+ Inserts the number of the frames in the appendix part (after |\appendix| command) into a template. The number is only correct on the second run of \TeX\ on your document.
+
+ \iteminsert{\insertframestartpage}
+ Inserts the page number of the first page of the current frame.
+
+ \iteminsert{\insertframeendpage}
+ Inserts the page number of the last page of the current frame.
+
+ \iteminsert{\insertsubsectionstartpage}
+ Inserts the page number of the first page of the current subsection.
+
+ \iteminsert{\insertsubsectionendpage}
+ Inserts the page number of the last page of the current subsection.
+
+ \iteminsert{\insertsectionstartpage}
+ Inserts the page number of the first page of the current section.
+
+ \iteminsert{\insertsectionendpage}
+ Inserts the page number of the last page of the current section.
+
+ \iteminsert{\insertpartstartpage}
+ Inserts the page number of the first page of the current part.
+
+ \iteminsert{\insertpartendpage}
+ Inserts the page number of the last page of the current part.
+
+ \iteminsert{\insertpresentationstartpage}
+ Inserts the page number of the first page of the presentation.
+
+ \iteminsert{\insertpresentationendpage}
+ Inserts the page number of the last page of the presentation (excluding the appendix).
+
+ \iteminsert{\insertappendixstartpage}
+ Inserts the page number of the first page of the appendix. If there is no appendix, this number is the last page of the document.
+
+ \iteminsert{\insertappendixendpage}
+ Inserts the page number of the last page of the appendix. If there is no appendix, this number is the last page of the document.
+
+ \iteminsert{\insertdocumentstartpage}
+ Inserts 1.
+
+ \iteminsert{\insertdocumentendpage}
+ Inserts the page number of the last page of the document (including the appendix).
+
+ \item |\usebeamertemplate*{page number in head/foot}| inserts a customisable template which e.g.\ inserts the current and total number of frames.
+ \end{itemize}
+\end{element}
+
+\begin{element}{footline}\yes\yes\yes
+ This template behaves exactly the same way as the headline. Note that, sometimes quite annoyingly, \beamer\ currently adds a space of 4pt between the bottom of the frame's text and the top of the footline.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default is an empty footline. Note that the navigational symbols are \emph{not} part of the footline by default. Rather, they are part of an (invisible) right sidebar.
+ \itemoption{infolines theme}{}
+ This option becomes available (and is used) if the |infolines| outer theme is loaded. The footline shows things like the author's name and the title of the talk.
+ \itemoption{miniframes theme}{}
+ This option becomes available (and is used) if the |miniframes| outer theme is loaded. Depending on the exact options that are used when the |miniframes| theme is loaded, different things can be shown in the footline.
+ \itemoption{page number}{}
+ Shows the current page number in the footline.
+ \itemoption{frame number}{}
+ Shows the current frame number in the footline.
+ \itemoption{split}{}
+ This option becomes available (and is used) if the |split| outer theme is loaded. The footline (just like the headline) is split into a left part showing the author's name and a right part showing the talk's title.
+ \itemoption{text line}{\marg{text}}
+ The footline is typeset more or less as if it were a normal text line with the \meta{text} as contents. The left and right margin are setup such that they are the same as the margins of normal text. The \meta{text} is typeset inside an |\hbox|, while the headline is normally typeset in vertical mode. Using the |\strut| command somewhere in such a line might be a good idea.
+ \end{templateoptions}
+
+ The same inserts as for headlines can be used.
+
+\end{element}
+
+\begin{element}{page number in head/foot}\yes\yes\yes
+ These \beamer-color and -font are used to typeset the page number or frame number in the footline.
+
+ The \beamer-template provides a convenient way to format the page or frame number in the footline. It is used by the |infolines| outer theme and the |page number| and |frame number| footline themes. It can also be used with the |miniframes| and |split| outer themes, but for them it is set to empty as default.
+
+ \begin{templateoptions}
+ \itemoption{default}{} The default option is empty.
+
+ \itemoption{framenumber}{} This option inserts the current frame number.
+
+ \itemoption{totalframenumber}{} In addition to the current frame number, this option also shows the total number of frames.
+
+ \itemoption{appendixframenumber}{} This options replicates the behaviour of the |appendixnumberbeamer| package. In the main part before the |\appendix| command the current frame number and the total number of frames in the main part is displayed. In the appendix only the frame number within the appendix and the total number of frames in the appendix are shown.
+
+ \itemoption{pagenumber}{} Shows the current page number.
+
+ \itemoption{totalpagenumber}{} In addition to the current page number also the total page number is displayed.
+ \end{templateoptions}
+
+\end{element}
+
+\subsubsection{The Sidebars}
+
+Sidebars are vertical areas that stretch from the lower end of the headline to the top of the footline. There can be a sidebar at the left and another one at the right (or even both). Sidebars can show a table of contents, but they could also be added for purely aesthetic reasons.
+
+When you install a sidebar template, you must explicitly specify the horizontal size of the sidebar using the command |\setbeamersize| with the option |sidebar width left| or |sidebar width right|. The vertical size is determined automatically. Each sidebar has its own background canvas, which can be setup using the sidebar canvas templates.
+
+Adding a sidebar of a certain size, say 1\,cm, will make the main text 1\,cm narrower. The distance between the inner side of a side bar and the outer side of the text, as specified by the command |\setbeamersize| with the option |text margin left| and its counterpart for the right margin, is not changed when a sidebar is installed.
+
+Internally, the sidebars are typeset by showing them as part of the headline. The \beamer\ class keeps track of six dimensions, three for each side: the variables |\beamer@leftsidebar| and |\beamer@rightsidebar| store the (horizontal) sizes of the side bars, the variables |\beamer@leftmargin| and |\beamer@rightmargin| store the distance between sidebar and text, and the macros |\Gm@lmargin| and |\Gm@rmargin| store the distance from the edge of the paper to the edge of the text. Thus the sum |\beamer@leftsidebar| and |\beamer@leftmargin| is exactly |\Gm@lmargin|. Thus, if you wish to put some text right next to the left sidebar, you might write |\hskip-\beamer@leftmargin| to get there.
+
+\begin{element}{sidebar left}\yes\yes\yes
+ \colorfontparents{sidebar}
+ The template is used to typeset the left sidebar. As mentioned above, the size of the left sidebar is set using the command
+
+\begin{verbatim}
+\setbeamersize{sidebar width left=2cm}
+\end{verbatim}
+
+ \beamer\ will not clip sidebars automatically if they are too large.
+
+ When the sidebar is typeset, it is put inside a |\vbox|. You should currently setup things like the |\hsize| or the |\parskip| yourself.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ installs an empty template.
+ \itemoption{sidebar theme}{}
+ This option is available if the outer theme |sidebar| is loaded with the |left| option. In this case, this options is selected automatically. It shows a mini table of contents in the sidebar.
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{sidebar right}\yes\yes\yes
+ \colorfontparents{sidebar}
+ This template works the same way as the template for the left.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default right sidebar has zero width. Nevertheless, it shows navigational symbols and, if installed, a logo at the bottom of the sidebar, protruding to the left into the text.
+ \itemoption{sidebar theme}{}
+ This option is available, if the outer theme |sidebar| is loaded with the |right| option. In this case, this option is selected automatically. It shows a mini table of contents in the sidebar. % FIXME: unsure
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{sidebar canvas left}\yes\no\no
+ Like the overall background canvas, this canvas is drawn behind the actual text of the sidebar. This template should normally insert a rectangle of the size of the sidebar, though a too large height will not lead to an error or warning. When this template is called, the \beamer-color |sidebar left| will have been installed.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ uses a large rectangle colored with |sidebar.bg| as the sidebar canvas. However, if the background of |sidebar| is empty, nothing is drawn and the canvas is ``transparent.''
+
+ \itemoption{vertical shading}{\oarg{color options}}
+ installs a vertically shaded background. The following \meta{color options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|top=|\meta{color}} specifies the color at the top of the sidebar. By default, 25\% of the foreground of the \beamer-color |palette primary| is used.
+ \item
+ \declare{|bottom=|\meta{color}} specifies the color at the bottom of the sidebar (more precisely, at a distance of the page height below the top of the sidebar). By default, the background of |normal text| at the moment of invocation of this command is used.
+ \item
+ \declare{|middle=|\meta{color}} specifies the color for the middle of the sidebar. Thus, if this option is given, the shading changes from the bottom color to this color and then to the top color.
+ \item
+ \declare{|midpoint=|\meta{factor}} specifies at which point of the page the middle color is used. A factor of |0| is the bottom of the page, a factor of |1| is the top. The default, which is |0.5|, is in the middle.
+ \end{itemize}
+ Note that you must give ``real'' \LaTeX\ colors here. This often makes it necessary to invoke the command |\usebeamercolor| before this command can be used.
+
+ Also note, that the width of the sidebar should be setup before this option is used.
+
+ \example
+ A stylish, but not very useful shading:
+
+\begin{verbatim}
+{\usebeamercolor{palette primary}}
+\setbeamertemplate{sidebar canvas}[vertical shading]
+[top=palette primary.bg,middle=white,bottom=palette primary.bg]
+\end{verbatim}
+
+ \itemoption{horizontal shading}{\oarg{color options}}
+ installs a horizontally shaded background. The following \meta{color options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|left=|\meta{color}} specifies the color at the left of the sidebar.
+ \item
+ \declare{|right=|\meta{color}} specifies the color at the right of the sidebar.
+ \item
+ \declare{|middle=|\meta{color}} specifies the color in the middle of the sidebar.
+ \item
+ \declare{|midpoint=|\meta{factor}} specifies at which point of the sidebar the middle color is used. A factor of |0| is the left of the sidebar, a factor of |1| is the right. The default, which is |0.5|, is in the middle.
+ \end{itemize}
+
+ \example
+ Adds two ``pillars''
+
+\begin{verbatim}
+\setbeamersize{sidebar width left=0.5cm,sidebar width right=0.5cm}
+
+{\usebeamercolor{sidebar}}
+
+\setbeamertemplate{sidebar canvas left}[horizontal shading]
+[left=white,middle=sidebar.bg,right=white]
+\setbeamertemplate{sidebar canvas right}[horizontal shading]
+[left=white,middle=sidebar.bg,right=white]
+\end{verbatim}
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{sidebar canvas right}\yes\no\no
+ Works exactly as for the left side.
+\end{element}
+
+\subsubsection{Navigation Bars}
+\label{section-navigation-bars}
+
+Many themes install a headline or a sidebar that shows a \emph{navigation bar}. Although these navigation bars take up quite a bit of space, they are often useful for two reasons:
+\begin{itemize}
+\item
+ They provide the audience with a visual feedback of how much of your talk you have covered and what is yet to come. Without such feedback, an audience will often puzzle whether something you are currently introducing will be explained in more detail later on or not.
+\item
+ You can click on all parts of the navigation bar. This will directly ``jump'' you to the part you have clicked on. This is particularly useful to skip certain parts of your talk and during a ``question session,'' when you wish to jump back to a particular frame someone has asked about.
+\end{itemize}
+
+Some navigation bars can be ``compressed'' using the following option:
+
+\begin{classoption}{compress}
+ Tries to make all navigation bars as small as possible. For example, all small frame representations in the navigation bars for a single section are shown alongside each other. Normally, the representations for different subsections are shown in different lines. Furthermore, section and subsection navigations are compressed into one line.
+\end{classoption}
+
+Some themes use the |\insertnavigation| to insert a navigation bar into the headline. Inside this bar, small icons are shown (called ``mini frames'') that represent the frames of a presentation. When you click on such an icon, the following happens:
+\begin{itemize}
+\item
+ If you click on (the icon of) any frame other than the current frame, the presentation will jump to the first slide of the frame you clicked on.
+\item
+ If you click on the current frame and you are not on the last slide of this frame, you will jump to the last slide of the frame.
+\item
+ If you click on the current frame and you are on the last slide, you will jump to the first slide of the frame.
+\end{itemize}
+
+By the above rules you can:
+\begin{itemize}
+\item
+ Jump to the beginning of a frame from somewhere else by clicking on it once.
+\item
+ Jump to the end of a frame from somewhere else by clicking on it twice.
+\item
+ Skip the rest of the current frame by clicking on it once.
+\end{itemize}
+
+We also tried making a jump to an already-visited frame jump automatically to the last slide of this frame. However, this turned out to be more confusing than helpful. With the current implementation a double-click always brings you to the end of a slide, regardless from where you ``come'' from.
+
+\begin{element}{mini frames}\semiyes\no\no
+ This parent template has the children |mini frame| and |mini frame in current subsection|.
+
+ \example
+ |\setbeamertemplate{mini frames}[box]|
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ shows small circles as mini frames.
+ \itemoption{box}{}
+ shows small rectangles as mini frames.
+ \itemoption{tick}{}
+ shows small vertical bars as mini frames.
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{mini frame}\yes\yes\yes
+ The template is used to render the mini frame of the current frame in a navigation bar.
+
+ The width of the template is ignored. Instead, when multiple mini frames are shown, their position is calculated based on the \beamer-sizes |mini frame size| and |mini frame offset|. See the command |\setbeamersize| for a description of how to change them.
+\end{element}
+
+\begin{element}{mini frame in current subsection}\yes\no\no
+ This template is used to render the mini frame of frames in the current subsection that are not the current frame. The \beamer-color/-font |mini frame| installed prior to the usage of this template is invoked.
+\end{element}
+
+\begin{element}{mini frame in other subsection}\yes\no\no
+ This template is used to render mini frames of frames from subsections other than the current one.
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{percentage}}
+ By default, this template shows |mini frame in current subsection|, except that the color is first changed to |fg!|\meta{percentage}|!bg|. The default \meta{percentage} is 50\%.
+
+ \example
+ To get an extremely ``shaded'' rendering of the frames outside the current subsection you can use the following:
+
+\begin{verbatim}
+\setbeamertemplate{mini frame in other subsection}[default][20]
+\end{verbatim}
+
+ \example
+ To render all mini frames other than the current one in the same way, use
+\begin{verbatim}
+\setbeamertemplate{mini frame in other subsection}[default][100]
+\end{verbatim}
+ \end{templateoptions}
+\end{element}
+
+Some themes show sections and/or subsections in the navigation bars. By clicking on a section or subsection in the navigation bar, you will jump to that section. Clicking on a section is particularly useful if the section starts with a |\tableofcontents[currentsection]|, since you can use it to jump to the different subsections.
+
+\begin{element}{section in head/foot}\yes\yes\yes
+ This template is used to render a section entry if it occurs in the headline or the footline. The background of the \beamer-color is typically used as the background of the whole ``area'' where section entries are shown in the headline. You cannot usually use this template yourself since the insert |\insertsectionhead| is setup correctly only when a list of sections is being typeset in the headline.
+
+ The default template just inserts the section name. The following inserts are useful for this template:
+ \begin{itemize}
+ \iteminsert{\insertsectionhead}
+ inserts the name of the section that is to be typeset in a navigation bar.
+
+ \iteminsert{\insertsectionheadnumber}
+ inserts the number of the section that is to be typeset in a navigation bar.
+
+ \iteminsert{\insertpartheadnumber}
+ inserts the number of the part of the current section or subsection that is to be typeset in a navigation bar.
+ \end{itemize}
+\end{element}
+
+\begin{element}{section in head/foot shaded}\yes\no\no
+ This template is used instead of |section in head/foot| for typesetting sections that are currently shaded. Such shading is usually applied to all sections but the current one.
+
+ Note that this template does \emph{not} have its own color and font. When this template is called, the \beamer-font and color |section in head/foot| will have been setup. Then, at the start of the template, you will typically change the current color or start a |colormixin| environment.
+
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{percentage}}
+ The default template changes the current color to |fg!|\meta{percentage}|!bg|. This causes the current color to become ``washed out'' or ``shaded.'' The default percentage is |50|.
+
+ \example
+ You can use the following command to make the shaded entries very ``light'':
+
+\begin{verbatim}
+\setbeamertemplate{section in head/foot shaded}[default][20]
+\end{verbatim}
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{section in sidebar}\yes\yes\yes
+ This template is used to render a section entry if it occurs in the sidebar, typically as part of a mini table of contents shown there. The background of the \beamer-color is used as background for the entry. Just like |section in head/foot|, you cannot usually use this template yourself and you should also use |\insertsectionhead| to insert the name of the section that is to be typeset.
+
+ For once, no default is installed for this template.
+
+ \begin{templateoptions}
+ \itemoption{sidebar theme}{}
+ This template, which is only available if the |sidebar| outer theme is loaded, inserts a bar with the \beamer-color's foreground and background that shows the section name. The width of the bar is the same as the width of the whole sidebar.
+ \end{templateoptions}
+
+ The same inserts as for |section in head/foot| can be used.
+\end{element}
+
+\begin{element}{section in sidebar shaded}\yes\yes\no
+ This template is used instead of |section in sidebar| for typesetting sections that are currently shaded. Such shading is usually applied to all sections but the current one.
+
+ Differently from |section in head/foot shaded|, this template \emph{has} its own \beamer-color.
+
+ \begin{templateoptions}
+ \itemoption{sidebar theme}{}
+ Does the same as for the nonshaded version, except that a different \beamer-color is used.
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{subsection in head/foot}\yes\yes\yes
+ This template behaves exactly like |section in head/foot|, only for subsections.
+ \begin{itemize}
+ \iteminsert{\insertsubsectionhead}
+ works like |\insertsectionhead|.
+
+ \iteminsert{\insertsubsectionheadnumber}
+ works like |\insertsectionheadnumber|.
+ \end{itemize}
+\end{element}
+
+\begin{element}{subsection in head/foot shaded}\yes\no\no
+ This template behaves exactly like |section in head/foot shaded|, only for subsections.
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{percentage}}
+ works like the corresponding option for sections.
+
+ \example
+\begin{verbatim}
+\setbeamertemplate{section in head/foot shaded}[default][20]
+\setbeamertemplate{subsection in head/foot shaded}[default][20]
+\end{verbatim}
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{subsection in sidebar}\yes\yes\yes
+ This template behaves exactly like |section in sidebar|, only for subsections.
+\end{element}
+
+\begin{element}{subsection in sidebar shaded}\yes\no\no
+ This template behaves exactly like |section in sidebar shaded|, only for subsections.
+\end{element}
+
+\begin{element}{subsubsection in head/foot}\yes\yes\yes
+ This template behaves exactly like |section in head/foot|, only for subsubsections. Currently, it is not used by the default themes.
+ \begin{itemize}
+ \iteminsert{\insertsubsubsectionhead}
+ works like |\insertsectionhead|.
+
+ \iteminsert{\insertsubsubsectionheadnumber}
+ works like |\insertsectionheadnumber|.
+ \end{itemize}
+\end{element}
+
+\begin{element}{subsubsection in head/foot shaded}\yes\no\no
+ This template behaves exactly like |section in head/foot shaded|, only for subsubsections.
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{percentage}}
+ works like the corresponding option for sections.
+ \end{templateoptions}
+\end{element}
+
+\begin{element}{subsubsection in sidebar}\yes\yes\yes
+ This template behaves exactly like |section in sidebar|, only for subsubsections.
+\end{element}
+
+\begin{element}{subsubsection in sidebar shaded}\yes\no\no
+ This template behaves exactly like |section in sidebar shaded|, only for subsubsections.
+\end{element}
+
+By clicking on the document title in a navigation bar (not all themes show it), you will jump to the first slide of your presentation (usually the title page) \emph{except} if you are already at the first slide. On the first slide, clicking on the document title will jump to the end of the presentation, if there is one. Thus by \emph{double} clicking the document title in a navigation bar, you can jump to the end.
+
+\subsubsection{The Navigation Symbols}
+\label{section-navigation-symbols}
+
+Navigation symbols are small icons that are shown on every slide by default. The following symbols are shown:
+\begin{enumerate}
+\item
+ A slide icon, which is depicted as a single rectangle. To the left and right of this symbol, a left and right arrow are shown.
+\item
+ A frame icon, which is depicted as three slide icons ``stacked on top of each other''. This symbol is framed by arrows.
+\item
+ A subsection icon, which is depicted as a highlighted subsection entry in a table of contents. This symbol is framed by arrows.
+\item
+ A section icon, which is depicted as a highlighted section entry (together with all subsections) in a table of contents. This symbol is framed by arrows.
+\item
+ A presentation icon, which is depicted as a completely highlighted table of contents.
+\item
+ An appendix icon, which is depicted as a completely highlighted table of contents consisting of only one section. (This icon is only shown if there is an appendix.)
+\item
+ Back and forward icons, depicted as circular arrows.
+\item
+ A ``search'' or ``find'' icon, depicted as a detective's magnifying glass.
+\end{enumerate}
+
+Clicking on the left arrow next to an icon always jumps to (the last slide of) the previous slide, frame, subsection, or section. Clicking on the right arrow next to an icon always jumps to (the first slide of) the next slide, frame, subsection, or section.
+
+Clicking \emph{on} any of these icons has different effects:
+\begin{enumerate}
+\item
+ If supported by the viewer application, clicking on a slide icon pops up a window that allows you to enter a slide number to which you wish to jump.
+\item
+ Clicking on the left side of a frame icon will jump to the first slide of the frame, clicking on the right side will jump to the last slide of the frame (this can be useful for skipping overlays).
+\item
+ Clicking on the left side of a subsection icon will jump to the first slide of the subsection, clicking on the right side will jump to the last slide of the subsection.
+\item
+ Clicking on the left side of a section icon will jump to the first slide of the section, clicking on the right side will jump to the last slide of the section.
+\item
+ Clicking on the left side of the presentation icon will jump to the first slide, clicking on the right side will jump to the last slide of the presentation. However, this does \emph{not} include the appendix.
+\item
+ Clicking on the left side of the appendix icon will jump to the first slide of the appendix, clicking on the right side will jump to the last slide of the appendix.
+\item
+ If supported by the viewer application, clicking on the back and forward symbols jumps to the previously visited slides.
+\item
+ If supported by the viewer application, clicking on the search icon pops up a window that allows you to enter a search string. If found, the viewer application will jump to this string.
+\end{enumerate}
+
+You can reduce the number of icons that are shown or their layout by adjusting the |navigation symbols| template.
+
+\begin{element}{navigation symbols}\yes\yes\yes
+ This template is invoked in ``three-star-mode'' by themes at the place where the navigation symbols should be shown. ``Three-star-mode'' means that the command |\usebeamertemplate***| is used.
+
+ Note that, although it may \emph{look} like the symbols are part of the footline, they are more often part of an invisible right sidebar.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ Organizes the navigation symbols horizontally.
+ \itemoption{horizontal}{}
+ This is an alias for the default.
+ \itemoption{vertical}{}
+ Organizes the navigation symbols vertically.
+ \itemoption{only frame symbol}{}
+ Shows only the navigational symbol for navigating frames.
+ \end{templateoptions}
+
+ \example
+ The following command suppresses all navigation symbols:
+\begin{verbatim}
+\setbeamertemplate{navigation symbols}{}
+\end{verbatim}
+
+ Inside this template, the following inserts are useful:
+ \begin{itemize}
+ \iteminsert{\insertslidenavigationsymbol}
+ Inserts the slide navigation symbols, that is, the slide symbols (a rectangle) together with arrows to the left and right that are hyperlinked.
+
+ \iteminsert{\insertframenavigationsymbol}
+ Inserts the frame navigation symbol.
+
+ \iteminsert{\insertsubsectionnavigationsymbol}
+ Inserts the subsection navigation symbol.
+
+ \iteminsert{\insertsectionnavigationsymbol}
+ Inserts the section navigation symbol.
+
+ \iteminsert{\insertdocnavigationsymbol}
+ Inserts the presentation navigation symbol and (if necessary) the appendix navigation symbol.
+
+ \iteminsert{\insertbackfindforwardnavigationsymbol}
+ Inserts a back, a find, and a forward navigation symbol.
+ \end{itemize}
+\end{element}
+
+\subsubsection{The Logo}
+
+To install a logo, use the following command:
+
+\begin{command}{\logo\marg{logo text}}
+ The \meta{logo text} is usually a command for including a graphic, but it can be any text. The position where the logo is inserted is determined by the current theme; you cannot (currently) specify this position directly.
+
+ \example
+\begin{verbatim}
+\pgfdeclareimage[height=0.5cm]{logo}{tu-logo}
+\logo{\pgfuseimage{logo}}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\logo{\includegraphics[height=0.5cm]{logo.pdf}}
+\end{verbatim}
+
+ Currently, the effect of this command is just to setup the |logo| template. However, a more sophisticated effect might be implemented in the future.
+
+ \articlenote
+ This command has no effect.
+
+ \begin{element}{logo}\yes\yes\yes
+ This template is used to render the logo.
+ \end{element}
+
+ The following insert can be used to insert a logo somewhere:
+ \begin{itemize}
+ \iteminsert{\insertlogo}
+ inserts the logo at the current position. This command has the same effect as |\usebeamertemplate*{logo}|.
+ \end{itemize}
+\end{command}
+
+\subsubsection{The Frame Title}
+
+The frame title is shown prominently at the top of the frame and can be specified with the following command:
+
+\begin{command}{\frametitle\sarg{overlay specification}\oarg{short frame title}\marg{frame title text}}
+ You should end the \meta{frame title text} with a period, if the title is a proper sentence. Otherwise, there should not be a period. The \meta{short frame title} is normally not shown, but it's available via the |\insertshortframetitle| command. The \meta{overlay specification} is mostly useful for suppressing the frame title in |article| mode.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \frametitle{A Frame Title is Important.}
+ \framesubtitle{Subtitles are not so important.}
+
+ Frame contents.
+\end{frame}
+\end{verbatim}
+
+ If you are using the |allowframebreaks| option with the current frame, a continuation text (like ``(cont.)'' or something similar, depending on the template |frametitle continuation|) is automatically added to the \meta{frame title text} at the end, separated with a space.
+
+ \beamernote
+ The frame title is not typeset immediately when the command |\frametitle| is encountered. Rather, the argument of the command is stored internally and the frame title is only typeset when the complete frame has been read. This gives you access to both the \meta{frame title text} and to the \meta{subframe title text} that is possibly introduced using the |\framesubtitle| command.
+
+ \articlenote
+ By default, this command creates a new paragraph in |article| mode, entitled \meta{frame title text}. Using the \meta{overlay specification} makes it easy to suppress a frame title once in a while. If you generally wish to suppress \emph{all} frame titles in |article| mode, say |\setbeamertemplate<article>{frametitle}{}|.
+
+ \begin{element}{frametitle}\yes\yes\yes
+ \colorfontparents{titlelike}
+
+ When the frame title and subtitle are to be typeset, this template is invoked with the \beamer-color and -font |frametitle| set. This template is \emph{not} invoked when the commands |\frametitle| or |\framesubtitle| are called. Rather, it is invoked when the whole frame has been completely read. Till then, the frame title and frame subtitle text are stored in a special place. This way, when the template is invoked, both inserts are setup correctly. The resulting \TeX-box is then magically put back to the top of the frame.
+
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{alignment}}
+ The frame is typeset using the \beamer-color |frametitle| and the \beamer-font |frametitle|. The subtitle is put below using the color and font |framesubtitle|. If the color |frametitle| has a background, a background bar stretching the whole frame width is put behind the title. A background color of the subtitle is ignored. The \meta{alignment} is passed on to the |beamercolorbox| environment. In particular, useful options are |left|, |center|, and |right|. As a special case, the |right| option causes the left border of the frame title to be somewhat larger than normal so that the frame title is more in the middle of the frame.
+
+ \itemoption{shadow theme}{}
+ This option is available if the outer theme |shadow| is loaded. It draws the frame title on top of a horizontal shading between the background colors of |frametitle| and |frametitle right|. A subtitle is, if present, also put on this bar. Below the bar, a ``shadow'' is drawn.
+
+ \itemoption{sidebar theme}{}
+ This option is available if the outer theme |sidebar| is loaded and if the headline height is not set to 0pt (which can be done using an option of the |sidebar| theme). With this option, the frame title is put inside a rectangular area that is part of the headline (some ``negative space'' is used to raise the frame title into this area). The background of the color |frametitle| is not used, this is the job of the headline template in this case.
+
+ \itemoption{smoothbars theme}{}
+ This option is available if the outer theme |smoothbars| is loaded. It typesets the frame title on a colored bar with the background color of |frametitle|. The top and bottom of the bar smoothly blend over to backgrounds above and below.
+
+ \itemoption{smoothtree theme}{}
+ Like |smoothbars theme|, only for the |smoothtree| theme.
+ \end{templateoptions}
+
+ The following commands are useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\insertframetitle} yields the frame title.
+ \iteminsert{\insertframesubtitle} yields the frame subtitle.
+ \end{templateinserts}
+ \end{element}
+\end{command}
+
+
+\begin{command}{\framesubtitle\sarg{overlay specification}\marg{frame subtitle text}}
+ If present, a subtitle will be shown in a smaller font below the main title. Like the |\frametitle| command, this command can be given anywhere in the frame, since the frame title is actually typeset only when everything else has already been typeset.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \frametitle<presentation>{Frame Title Should Be in Uppercase.}
+ \framesubtitle{Subtitles can be in lowercase if they are full sentences.}
+
+ Frame contents.
+\end{frame}
+\end{verbatim}
+
+ \articlenote
+ By default, the subtitle is not shown in any way in |article| mode.
+
+ \begin{element}{framesubtitle}\no\yes\yes
+ \colorfontparents{frametitle}
+ This element provides a color and a font for the subtitle, but no template. It is the job of the |frametitle| template to also typeset the subtitle.
+ \end{element}
+\end{command}
+
+Be default, all material for a slide is vertically centered. You can change this using the following class options:
+
+\begin{classoption}{t}
+ Place text of slides at the (vertical) top of the slides. This corresponds to a vertical ``flush.'' You can override this for individual frames using the |c| or |b| option.
+\end{classoption}
+
+\begin{classoption}{c}
+ Place text of slides at the (vertical) center of the slides. This is the default. You can override this for individual frames using the |t| or |b| option.
+\end{classoption}
+
+\subsubsection{The Background}
+\label{section-canvas}
+\label{section-background}
+
+Each frame has a \emph{background}, which---as the name suggests---is ``behind everything.'' The background is a surprisingly complex object: in \beamer, it consists of a \emph{background canvas} and the \emph{main background}.
+
+The background canvas can be imagined as a large area on which everything (the main background and everything else) is painted on. By default, this canvas is a big rectangle filling the whole frame whose color is the background of the \beamer-color |background canvas|. Since this color inherits from |normal text|, by changing the background color of the normal text, you can change this color of the canvas.
+
+\example
+The following command changes the background color to a light red.
+\begin{verbatim}
+\setbeamercolor{normal text}{bg=red!20}
+\end{verbatim}
+
+The canvas need not be monochrome. Instead, you can install a shading or even make it transparent. Making it transparent is a good idea if you wish to include your slides in some other document.
+
+\example
+The following command makes the background canvas transparent:
+\begin{verbatim}
+\setbeamercolor{background canvas}{bg=}
+\end{verbatim}
+
+\begin{element}{background canvas}\yes\yes\yes
+ \colorparents{normal text}
+ The template is inserted ``behind everything.'' The template should typically be some \TeX\ commands that produce a rectangle of height |\paperheight| and width |\paperwidth|.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ installs a large rectangle with the background color. If the background is empty, the canvas is ``transparent.'' Since |background canvas| inherits from |normal text|, you can change the background of the \beamer-color |normal text| to change the color of the default canvas. However, to make the canvas transparent, only set the background of the canvas empty; leave the background of normal text white.
+
+ \itemoption{vertical shading}{\oarg{color options}}
+ installs a vertically shaded background. \emph{Use with care: Background shadings are often distracting!} The following \meta{color options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|top=|\meta{color}} specifies the color at the top of the page. By default, 25\% of the foreground of the \beamer-color |palette primary| is used.
+ \item
+ \declare{|bottom=|\meta{color}} specifies the color at the bottom of the page. By default, the background of |normal text| at the moment of invocation of this command is used.
+ \item
+ \declare{|middle=|\meta{color}} specifies the color for the middle of the page. Thus, if this option is given, the shading changes from the bottom color to this color and then to the top color.
+ \item
+ \declare{|midpoint=|\meta{factor}} specifies at which point of the page the middle color is used. A factor of |0| is the bottom of the page, a factor of |1| is the top. The default, which is |0.5| is in the middle.
+ \end{itemize}
+ \end{templateoptions}
+\end{element}
+
+The main background is drawn on top of the background canvas. It can be used to add, say, a grid to every frame or a big background picture or whatever. If you plan to use a PNG image as a background image, use one with an alpha channel to avoid potential problems with transparency in some PDF viewers.
+
+\begin{element}{background}\yes\yes\yes
+ \colorparents{background canvas}
+ The template is inserted ``behind everything, but on top of the background canvas.'' Use it for pictures or grids or anything that does not necessarily fill the whole background. When this template is typeset, the \beamer-color and -font |background| will be setup.
+
+ \begin{templateoptions}
+ \itemoption{default}{} is empty.
+
+ \itemoption{grid}{\oarg{grid options}}
+ places a grid on the background. The following \meta{grid options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|step=|\meta{dimension}} specifies the distance between grid lines. The default is 0.5\,cm.
+ \item
+ \declare{|color=|\meta{color}} specifies the color of the grid lines. The default is 10\% foreground.
+ \end{itemize}
+ \end{templateoptions}
+\end{element}
+
+
+\subsection{Frame and Margin Sizes}
+
+The size of a frame is actually the ``paper size'' of a \beamer\ presentation, and it is variable. By default, it amounts to 128\,mm by 96\,mm. The aspect ratio of this size is 4:3, which is exactly what most beamers offer these days. It is the job of the presentation program (like |acroread|, |xpdf|, |okular| or |evince|) to display the slides at full screen size. The main advantage of using a small ``paper size'' is that you can use all your normal fonts at their natural sizes. In particular, inserting a graphic with 11pt labels will result in reasonably sized labels during the presentation.
+
+To change ``paper size'' and aspect ratio, you can use the following class options:
+
+\begin{classoption}{aspectratio=1610}
+ Sets aspect ratio to 16:10, and frame size to 160\,mm by 100\,mm.
+\end{classoption}
+
+\begin{classoption}{aspectratio=169}
+ Sets aspect ratio to 16:9, and frame size to 160\,mm by 90\,mm.
+\end{classoption}
+
+\begin{classoption}{aspectratio=149}
+ Sets aspect ratio to 14:9, and frame size to 140\,mm by 90\,mm.
+\end{classoption}
+
+\begin{classoption}{aspectratio=141}
+ Sets aspect ratio to 1.41:1, and frame size to 148.5\,mm by 105\,mm.
+\end{classoption}
+
+\begin{classoption}{aspectratio=54}
+ Sets aspect ratio to 5:4, and frame size to 125\,mm by 100\,mm.
+\end{classoption}
+
+\begin{classoption}{aspectratio=43}
+ The default aspect ratio and frame size. You need not specify this option.
+\end{classoption}
+
+\begin{classoption}{aspectratio=32}
+ Sets aspect ratio to 3:2, and frame size to 135\,mm by 90\,mm.
+\end{classoption}
+
+Aside from using these options, you should refrain from changing the ``paper size.'' However, you \emph{can} change the size of the left and right margins, which default to 1\,cm. To change them, you should use the following command:
+
+\begin{command}{\setbeamersize\marg{options}}
+ The following \meta{options} can be given:
+ \begin{itemize}
+ \item
+ \declare{|text margin left=|\meta{\TeX\ dimension}} sets a new left margin. This excludes the left sidebar. Thus, it is the distance between the right edge of the left sidebar and the left edge of the text.
+ \item
+ \declare{|text margin right=|\meta{\TeX\ dimension}} sets a new right margin.
+ \item
+ \declare{|sidebar width left=|\meta{\TeX\ dimension}} sets the size of the left sidebar. Currently, this command should be given \emph{before} a shading is installed for the sidebar canvas.
+ \item
+ \declare{|sidebar width right=|\meta{\TeX\ dimension}} sets the size of the right sidebar.
+ \item
+ \declare{|description width=|\meta{\TeX\ dimension}} sets the default width of description labels, see Section~\ref{section-descriptions}.
+ \item
+ \declare{|description width of=|\meta{text}} sets the default width of description labels to the width of the \meta{text}, see Section~\ref{section-descriptions}.
+ \item
+ \declare{|mini frame size=|\meta{\TeX\ dimension}} sets the size of mini frames in a navigation bar. When two mini frame icons are shown alongside each other, their left end points are \meta{\TeX\ dimension} far apart.
+ \item
+ \declare{|mini frame offset=|\meta{\TeX\ dimension}} set an additional vertical offset that is added to the mini frame size when arranging mini frames vertically.
+ \end{itemize}
+
+ \articlenote
+ This command has no effect in |article| mode.
+\end{command}
+
+
+\subsection{Restricting the Slides of a Frame}
+\label{section-restriction}
+
+The number of slides in a frame is automatically calculated. If the largest number mentioned in any overlay specification inside the frame is 4, four slides are introduced (despite the fact that a specification like |<4->| might suggest that more than four slides would be possible).
+
+You can also specify the number of slides in the frame ``by hand.'' To do so, you pass an overlay specification to the |\frame| command. The frame will contain only the slides specified in this argument. Consider the following example.
+
+\begin{verbatim}
+\begin{frame}<1-2,4->
+ This is slide number \only<1>{1}\only<2>{2}\only<3>{3}%
+ \only<4>{4}\only<5>{5}.
+\end{frame}
+\end{verbatim}
+
+This command will create a frame containing four slides. The first will contain the text ``This is slide number~1,'' the second ``This is slide number~2,'' the third ``This is slide number~4,'' and the fourth ``This is slide number~5.''
+
+A useful specification is just |<0>|, which causes the frame to have no slides at all. For example, |\begin{frame}<handout:0>| causes the frame to be suppressed in the handout version, but to be shown normally in all other versions. Another useful specification is |<beamer>|, which causes the frame to be shown normally in |beamer| mode, but to be suppressed in all other versions.
diff --git a/macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex b/macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex
new file mode 100644
index 0000000000..943a1b098e
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex
@@ -0,0 +1,747 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Structuring a Presentation: The Static Global Structure}
+
+This section lists the commands that are used for structuring a presentation ``globally'' using commands like |\section| or |\part|. These commands are used to create a \emph{static} structure, meaning that the resulting presentation is normally presented one slide after the other in the order the slides occur. Section~\ref{section-nonlinear} explains which commands can be used to create the \emph{interactive} structure. For the interactive structure, you must interact with the presentation program, typically by clicking on hyperlinks, to advance the presentation.
+
+\subsection{Adding a Title Page}
+
+You can use the |\titlepage| command to insert a title page into a frame. By default, it will arrange the following elements on the title page: the document title, the authors' names, their affiliation, a title graphic, and a date.
+
+\begin{command}{\titlepage}
+ Inserts the text of a title page into the current frame.
+ \example
+ |\frame{\titlepage}|
+ \example
+ |\frame[plain]{\titlepage}| for a titlepage that fills the whole frame.
+
+ \begin{element}{title page}\yes\yes\yes
+ This template is invoked when the |\titlepage| command is used.
+
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{alignment}}
+ The title page is typeset showing the title, followed by the author, his or her affiliation, the date, and a titlegraphic. If any of these are missing, they are not shown. Except for the titlegraphic, if the \beamer-color |title|, |author|, |institute|, or |date| is defined, respectively, it is used as textcolor for these entries. If a background color is defined for them, a colored bar in the corresponding color is drawn behind them, spanning the text width. The corresponding \beamer-fonts are used for these entries.
+
+ The \meta{alignment} option is passed on the |beamercolorbox| and can be used, for example, to flush the title page to the left by specifying |left| here.
+ \end{templateoptions}
+
+ The following commands are useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\insertauthor} inserts a version of the author's name that is useful for the title page.
+ \iteminsert{\insertdate} inserts the date.
+ \iteminsert{\insertinstitute} inserts the institute.
+ \iteminsert{\inserttitle} inserts a version of the document title that is useful for the title page.
+ \iteminsert{\insertsubtitle} inserts a version of the document title that is useful for the title page.
+ \iteminsert{\inserttitlegraphic} inserts the title graphic into a template.
+ \end{templateinserts}
+ \end{element}
+\end{command}
+
+For compatibility with other classes, in |article| mode the following command is also provided:
+
+\begin{command}{\maketitle}
+ \beamernote
+ If used inside a frame, it has the same effect as |\titlepage|. If used outside a frame, it has the same effect as |\frame{\titlepage}|; in other words, a frame is added if necessary.
+\end{command}
+
+Before you invoke the title page command, you must specify all elements you wish to be shown. This is done using the following commands:
+
+\begin{command}{\title\oarg{short title}\marg{title}}
+ The \meta{short title} is used in headlines and footlines. Inside the \meta{title} line breaks can be inserted using the double-backslash command.
+ \example
+\begin{verbatim}
+\title{The Beamer Class}
+\title[Short Version]{A Very Long Title\\Over Several Lines}
+\end{verbatim}
+
+ \articlenote
+ The short form is ignored in |article| mode.
+\end{command}
+
+\begin{command}{\subtitle\oarg{short subtitle}\marg{subtitle}}
+ The \meta{short subtitle} is not used by default, but is available via the insert |\insertshortsubtitle|. The subtitle is shown below the title in a smaller font.
+ \example
+\begin{verbatim}
+\title{The Beamer Class}
+\subtitle{An easily paced introduction with many examples.}
+\end{verbatim}
+
+ \articlenote
+ This command causes the subtitle to be appended to the title with a linebreak and a |\normalsize| command issued before it. This may or may not be what you would like to happen.
+\end{command}
+
+\begin{command}{\author\oarg{short author names}\marg{author names}}
+ The names should be separated using the command |\and|. In case authors have different affiliations, they should be suffixed by the command |\inst| with different parameters.
+ \example
+ |\author[Hemaspaandra et al.]{L. Hemaspaandra\inst{1} \and T. Tantau\inst{2}}|
+
+ \articlenote
+ The short form is ignored in |article| mode.
+\end{command}
+
+\begin{command}{\institute\oarg{short institute}\marg{institute}}
+ If more than one institute is given, they should be separated using the command |\and| and they should be prefixed by the command |\inst| with different parameters.
+ \example
+\begin{verbatim}
+\institute[Universities of Rijeka and Berlin]{
+ \inst{1}Department of Informatics\\
+ University of Rijeka
+ \and
+ \inst{2}Fakult\"at f\"ur Elektrotechnik und Informatik\\
+ Technical University of Berlin}
+\end{verbatim}
+
+ \articlenote
+ The short form is ignored in |article| mode. The long form is also ignored, except if the document class (like |llncs|) defines it.
+\end{command}
+
+\begin{command}{\date\oarg{short date}\marg{date}}
+ \example|\date{\today}| or |\date[STACS 2003]{STACS Conference, 2003}|.
+
+ \articlenote
+ The short form is ignored in |article| mode.
+\end{command}
+
+\begin{command}{\titlegraphic\marg{text}}
+ The \meta{text} is shown as title graphic. Typically, a picture environment is used as \meta{text}.
+ \example
+ |\titlegraphic{\pgfuseimage{titlegraphic}}|
+
+ \articlenote
+ The command is ignored in |article| mode.
+\end{command}
+
+\begin{command}{\subject\marg{text}}
+ Enters the \meta{text} as the subject text in the \pdf\ document info. It currently has no other effect.
+\end{command}
+
+\begin{command}{\keywords\marg{text}}
+ Enters the \meta{text} as keywords in the \pdf\ document info. It currently has no other effect.
+\end{command}
+
+
+By default, the |\title| and |\author| commands will also insert their arguments into a resulting \pdf-file in the document information fields. This may cause problems if you use complicated things like boxes as arguments to these commands. In this case, you might wish to switch off the automatic generation of these entries using the following class option:
+
+\begin{classoption}{usepdftitle=false}
+ Suppresses the automatic generation of title and author entries in the \pdf\ document information.
+\end{classoption}
+
+
+\subsection{Adding Sections and Subsections}
+
+You can structure your text using the commands |\section| and |\subsection|. Unlike standard \LaTeX, these commands will not create a heading at the position where you use them. Rather, they will add an entry to the table of contents and also to the navigation bars.
+
+In order to create a line break in the table of contents (usually not a good idea), you can use the command |\breakhere|. Note that the standard command |\\| is modified so that it's no longer robust (see Section 9.3; using |\protect\\| or |\newline| will also be fine).
+
+\begin{command}{\section\sarg{mode specification}\oarg{short section name}\marg{section name}}
+ Starts a section. No heading is created. By default the \meta{section name} is shown in the table of contents and in the navigation bars; if \meta{short section name} is specified, it will be used in the navigation bars instead; if \meta{short section name} is explicitly empty, it will not appear in the navigation bars. If a \meta{mode specification} is given, the command only has an effect for the specified modes.
+
+ \example
+ |\section[Summary]{Summary of Main Results}|
+
+ \articlenote
+ The \meta{mode specification} allows you to provide an alternate section command in |article| mode. This is necessary for example if the \meta{short section name} is unsuitable for the table of contents:
+
+ \example
+\begin{verbatim}
+\section<presentation>[Results]{Results on the Main Problem}
+\section<article>{Results on the Main Problem}
+\end{verbatim}
+
+ \begin{element}{section in toc}\yes\yes\yes
+ This template is used when a section entry is to be typeset. For the permissible \meta{options} see the parent template |table of contents|.
+
+ The following commands are useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\inserttocsection}
+ inserts the table of contents version of the current section name.
+
+ \iteminsert{\inserttocsectionnumber}
+ inserts the number of the current section (in the table of contents).
+ \end{templateinserts}
+ \end{element}
+
+ \begin{element}{section in toc shaded}\yes\yes\yes
+ This template is used instead of the previous one if the section should be shown in a shaded way, because it is not the current section. For the permissible \meta{options} see the parent template |table of contents|.
+ \end{element}
+\end{command}
+
+\begin{command}{\section\sarg{mode specification}\declare{|*|}\marg{section name}}
+ Starts a section without an entry in the table of contents. No heading is created, but the \meta{section name} is shown in the navigation bar.
+ \example
+ |\section*{Outline}|
+ \example
+ |\section<beamer>*{Outline}|
+\end{command}
+
+\begin{command}{\subsection\sarg{mode specification}\oarg{short subsection name}\marg{subsection name}}
+ This command works the same way as the |\section| command.
+ \example
+ |\subsection[Applications]{Applications to the Reduction of Pollution}|
+
+ \begin{element}{subsection in toc}\yes\yes\yes
+ Like |section in toc|, only for subsection.
+
+ In addition to the inserts for the |section in toc| template, the following commands are available for this template:
+ \begin{templateinserts}
+ \iteminsert{\inserttocsubsection}
+ inserts the table of contents version of the current subsection name.
+
+ \iteminsert{\inserttocsubsectionnumber}
+ inserts the number of the current subsection (in the table of contents).
+ \end{templateinserts}
+ \end{element}
+
+ \begin{element}{subsection in toc shaded}\yes\yes\yes
+ Like |section in toc shaded|, only for subsections.
+ \end{element}
+\end{command}
+
+\begin{command}{\subsection\sarg{mode specification}\declare{|*|}\marg{subsection name}}
+ Starts a subsection without an entry in the table of contents. No heading is created, but the \meta{subsection name} is shown in the navigation bar, \emph{except} if \meta{subsection name} is empty. In this case, neither a table of contents entry nor a navigation bar entry is created, \emph{but} any frames in this ``empty'' subsection are shown in the navigation bar.
+
+ \example
+\begin{verbatim}
+\section{Summary}
+
+ \frame{This frame is not shown in the navigation bar}
+
+ \subsection*{}
+
+ \frame{This frame is shown in the navigation bar, but no subsection
+ entry is shown.}
+
+ \subsection*{A subsection}
+
+ \frame{Normal frame, shown in navigation bar. The subsection name is
+ also shown in the navigation bar, but not in the table of contents.}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\subsubsection\sarg{mode specification}\oarg{short subsubsection name}\marg{subsubsection name}}
+ This command works the like |\subsection|. However, subsubsections are supported less well than subsections. For example, in the table of contents subsubsections are always shown with the same shading/hiding parameters as the subsection.
+
+ We \emph{strongly} discourage the use of subsubsections in presentations. If you do not use them, you will give a better presentation.
+
+ \example
+ |\subsubsection[Applications]{Applications to the Reduction of Pollution}|
+
+ \begin{element}{subsubsection in toc}\yes\yes\yes
+ Like |subsection in toc|, only for subsection.
+
+ In addition to the inserts for the |subsection in toc| template, the following commands are available for this template:
+ \begin{templateinserts}
+ \iteminsert{\inserttocsubsubsection}
+ inserts the table of contents version of the current subsubsection name.
+
+ \iteminsert{\inserttocsubsubsectionnumber}
+ inserts the number of the current subsubsection (in the table of contents).
+ \end{templateinserts}
+ \end{element}
+
+ \begin{element}{subsubsection in toc shaded}\yes\yes\yes
+ Like |subsection in toc shaded|, only for subsubsections.
+ \end{element}
+\end{command}
+
+\begin{command}{\subsubsection\sarg{mode specification}\declare{|*|}\marg{subsubsection name}}
+ Starts a subsubsection without an entry in the table of contents. No heading is created, but the \meta{subsubsection name} is shown in a possible sidebar.
+\end{command}
+
+Often, you may want a certain type of frame to be shown directly after a section or subsection starts. For example, you may wish every subsection to start with a frame showing the table of contents with the current subsection highlighted. To facilitate this, you can use the following commands.
+
+\begin{command}{\AtBeginSection\oarg{special star text}\marg{text}}
+ The given text will be inserted at the beginning of every section. If the \meta{special star text} parameter is specified, this text will be used for starred sections instead. Different calls of this command will not ``add up'' the given texts (like the |\AtBeginDocument| command does), but will overwrite any previous text.
+
+ \example
+\begin{verbatim}
+\AtBeginSection[] % Do nothing for \section*
+{
+ \begin{frame}<beamer>
+ \frametitle{Outline}
+ \tableofcontents[currentsection]
+ \end{frame}
+}
+\end{verbatim}
+
+ \articlenote
+ This command has no effect in |article| mode.
+
+\end{command}
+
+\begin{command}{\AtBeginSubsection\oarg{special star text}\marg{text}}
+ The given text will be inserted at the beginning of every subsection. If the \meta{special star text} parameter is specified, this text will be used for starred subsections instead. Different calls of this command will not ``add up'' the given texts.
+
+ \example
+\begin{verbatim}
+\AtBeginSubsection[] % Do nothing for \subsection*
+{
+ \begin{frame}<beamer>
+ \frametitle{Outline}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\AtBeginSubsubsection\oarg{special star text}\marg{text}}
+ Like |\AtBeginSubsection|, only for subsubsections.
+\end{command}
+
+\beamer\ also provides |\sectionpage| and |\subsectionpage| commands, which are used to fill a frame with section or subsection number and title in a stylish way. They are very similar to |\partpage| command described below.
+
+\begin{command}{\sectionpage}
+ This command shows a frame with the section number and title of the current section.
+ \example
+\begin{verbatim}
+\section{A section}
+
+ \frame{\sectionpage}
+
+ \frame{Some text.}
+\end{verbatim}
+
+ \begin{element}{section page}\yes\no\no
+ This template is invoked when the |\sectionpage| command is used.
+
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{alignment}}
+ The section page is typeset showing the current section number and, below, the current section title. The templates
+ \begin{element}{section name}\no\yes\yes
+ \end{element}
+ and
+ \begin{element}{section title}\no\yes\yes
+ \end{element}
+ are used, including the background color of |section title|. As for the |title page| template, the \meta{alignment} option is passed on the |beamercolorbox|.
+ \end{templateoptions}
+
+ The following commands are useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\insertsection}
+ inserts the title of the current section.
+ \iteminsert{\insertsectionnumber}
+ inserts the current section number.
+ \end{templateinserts}
+ \end{element}
+\end{command}
+
+\begin{command}{\subsectionpage}
+ Works the same way as the |\sectionpage|.
+ \begin{element}{subsection page}\yes\no\no
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{alignment}}
+
+ The templates
+ \begin{element}{subsection name}\no\yes\yes
+ \end{element}
+ and
+ \begin{element}{subsection title}\no\yes\yes
+ \end{element}
+ are used, including the background color of |subsection title|. As for the |title page| template, the \meta{alignment} option is passed on the |beamercolorbox|.
+ \end{templateoptions}
+
+ The following commands are useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\insertsubsection}
+ inserts the title of the current subsection.
+ \iteminsert{\insertsubsectionnumber}
+ inserts the current subsection number.
+ \end{templateinserts}
+ \end{element}
+\end{command}
+
+\subsection{Adding Parts}
+
+If you give a long talk (like a lecture), you may wish to break up your talk into several parts. Each such part acts like a little ``talk of its own'' with its own table of contents, its own navigation bars, and so on. Inside one part, the sections and subsections of the other parts are not shown at all.
+
+To create a new part, use the |\part| command. All sections and subsections following this command will be ``local'' to that part. Like the |\section| and |\subsection| command, the |\part| command does not cause any frame or special text to be produced. However, it is often advisable for the start of a new part to use the command |\partpage| to insert some text into a frame that ``advertises'' the beginning of a new part.
+
+\begin{command}{\part\sarg{mode specification}\oarg{short part name}\marg{part name}}
+ Starts a part. The \meta{part name} will be shown when the |\partpage| command is used. The \meta{short part name} is not shown anywhere by default, but it is accessible via the command |\insertshortpart|.
+ \example
+\begin{verbatim}
+\begin{document}
+ \frame{\titlepage}
+
+ \section*{Outlines}
+ \subsection{Part I: Review of Previous Lecture}
+ \frame{
+ \frametitle{Outline of Part I}
+ \tableofcontents[part=1]}
+ \subsection{Part II: Today's Lecture}
+ \frame{
+ \frametitle{Outline of Part II}
+ \tableofcontents[part=2]}
+
+ \part{Review of Previous Lecture}
+ \frame{\partpage}
+ \section[Previous Lecture]{Summary of the Previous Lecture}
+ \subsection{Topics}
+ \frame{...}
+ \subsection{Learning Objectives}
+ \frame{...}
+
+ \part{Today's Lecture}
+ \frame{\partpage}
+ \section{Topic A}
+ \frame{\tableofcontents[currentsection]}
+ \subsection{Foo}
+ \frame{...}
+ \section{Topic B}
+ \frame{\tableofcontents[currentsection]}
+ \subsection{bar}
+ \frame{...}
+\end{document}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\partpage}
+ Works like |\titlepage|, only that the current part, not the current presentation is ``advertised.''
+ \example
+ |\frame{\partpage}|
+
+ \begin{element}{part page}\yes\no\no
+ This template is invoked when the |\partpage| command is used.
+
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{alignment}}
+ The part page is typeset showing the current part number and, below, the current part title. The templates
+ \begin{element}{part name}\no\yes\yes
+ \end{element}
+ and
+ \begin{element}{part title}\no\yes\yes
+ \end{element}
+ are used, including the background color of |part title|. As for the |title page| template, the \meta{alignment} option is passed on the |beamercolorbox|.
+ \end{templateoptions}
+
+ The following commands are useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\insertpart}
+ inserts the current part name.
+ \iteminsert{\insertpartnumber}
+ inserts the current part number as an Arabic number into a template.
+ \iteminsert{\insertromanpartnumber}
+ inserts the current part number as a Roman number into a template.
+ \end{templateinserts}
+ \end{element}
+\end{command}
+
+\begin{command}{\AtBeginPart\marg{text}}
+ The given text will be inserted at the beginning of every part.
+
+ \example
+\begin{verbatim}
+\AtBeginPart{\frame{\partpage}}
+\end{verbatim}
+\end{command}
+
+
+\subsection{Splitting a Course Into Lectures}
+
+When using \beamer\ with the |article| mode, you may wish to have the lecture notes of a whole course reside in one file. In this case, only a few frames are actually part of any particular lecture.
+
+The |\lecture| command makes it easy to select only a certain set of frames from a file to be presented. This command takes (among other things) a label name. If you say |\includeonlylecture| with this label name, then only the frames following the corresponding |\lecture| command are shown. The frames following other |\lecture| commands are suppressed.
+
+By default, the |\lecture| command has no other effect. It does not create any frames or introduce entries in the table of contents. However, you can use |\AtBeginLecture| to have \beamer\ insert, say, a title page at the beginning of (each) lecture.
+
+\begin{command}{\lecture\oarg{short lecture name}\marg{lecture name}\marg{lecture label}}
+ Starts a lecture. The \meta{lecture name} will be available via the |\insertlecture| command. The \meta{short lecture name} is available via the |\insertshortlecture| command.
+
+ \example
+\begin{verbatim}
+\begin{document}
+\lecture{Vector Spaces}{week 1}
+
+\section{Introduction}
+...
+\section{Summary}
+
+\lecture{Scalar Products}{week 2}
+
+\section{Introduction}
+...
+\section{Summary}
+
+\end{document}
+\end{verbatim}
+
+ \articlenote
+ This command has no effect in |article| mode.
+\end{command}
+
+\begin{command}{\includeonlylecture\meta{lecture label}}
+ Causes all |\frame|, |frame|, |\section|, |\subsection|, and |\part| commands following a |\lecture| command to be suppressed, except if the lecture's label matches the \meta{lecture label}. Frames before any |\lecture| commands are always included. This command should be given in the preamble.
+
+ \example
+ |\includeonlylecture{week 1}|
+
+ \articlenote
+ This command has no effect in |article| mode.
+\end{command}
+
+\begin{command}{\AtBeginLecture\marg{text}}
+ The given text will be inserted at the beginning of every
+ lecture.
+
+ \example
+\begin{verbatim}
+\AtBeginLecture{\frame{\Large Today's Lecture: \insertlecture}}
+\end{verbatim}
+
+ \articlenote
+ This command has no effect in |article| mode.
+\end{command}
+
+
+\subsection{Adding a Table of Contents}
+
+You can create a table of contents using the command |\tableofcontents|. Unlike the normal \LaTeX\ table of contents command, this command takes an optional parameter in square brackets that can be used to create certain special effects.
+
+\begin{command}{\tableofcontents\oarg{comma-separated option list}}
+ Inserts a table of contents into the current frame.
+
+ \example
+\begin{verbatim}
+\section*{Outline}
+\frame{\tableofcontents}
+
+\section{Introduction}
+\frame{\tableofcontents[currentsection]}
+\subsection{Why?}
+\frame{...}
+\frame{...}
+\subsection{Where?}
+\frame{...}
+
+\section{Results}
+\frame{\tableofcontents[currentsection]}
+\subsection{Because}
+\frame{...}
+\subsection{Here}
+\frame{...}
+\end{verbatim}
+
+ The following options can be given:
+ \begin{itemize}
+ \item
+ \declare{|currentsection|} causes all sections but the current to be shown in a semi-transparent way. Also, all subsections but those in the current section are shown in the semi-transparent way. This command is a shorthand for specifying the following options:
+
+\begin{verbatim}
+sectionstyle=show/shaded,subsectionstyle=show/show/shaded
+\end{verbatim}
+ \item
+ \declare{|currentsubsection|} causes all subsections but the current subsection in the current section to be shown in a semi-transparent way. This command is a shorthand for specifying the option |subsectionstyle=show/shaded|.
+ \item
+ \declare{|firstsection=|\meta{section number}} specifies which section should be numbered as section~``1.'' This is useful if you have a first section (like an overview section) that should not receive a number. Section numbers are not shown by default. To show them, you must install a different table of contents templates.
+ \item
+ \declare{|hideallsubsections|} causes all subsections to be hidden. This command is a shorthand for specifying the option |subsectionstyle=hide|.
+ \item
+ \declare{|hideothersubsections|} causes the subsections of sections other than the current one to be hidden. This command is a shorthand for specifying the option |subsectionstyle=show/show/hide|.
+ \item
+ \declare{|part=|\meta{part number}} causes the table of contents of part \meta{part number} to be shown, instead of the table of contents of the current part (which is the default). This option can be combined with the other options, although combining it with the |current| option obviously makes no sense.
+ \item
+ \declare{|pausesections|} causes a |\pause| command to be issued before each section. This is useful if you wish to show the table of contents in an incremental way.
+ \item
+ \declare{|pausesubsections|} causes a |\pause| command to be issued before each subsection.
+ \item
+ \declare{|sections=|\marg{overlay specification}} causes only the sections mentioned in the \meta{overlay specification} to be shown. For example, \verb/sections={<2-4| handout:0>}/ causes only the second, third, and fourth section to be shown in the normal version, nothing to be shown in the handout version, and everything to be shown in all other versions. For convenience, if you omit the pointed brackets, the specification is assumed to apply to all versions. Thus |sections={2-4}| causes sections two, three, and four to be shown in all versions.
+ \item
+ \declare{|sectionstyle=|\meta{style for current section}|/|\meta{style for other sections}} specifies how sections should be displayed. Allowed \meta{styles} are |show|, |shaded|, and |hide|. The first will show the section title normally, the second will show it in a semi-transparent way, and the third will completely suppress it. You can also omit the second style, in which case the first is used for all sections (this is not really useful).
+ \item
+ \declare{|subsectionstyle=|\meta{style for current subsection}|/|\meta{style for other subsections in current section}|/|\\\meta{style for subsections in other sections}} specifies how subsections should be displayed. The same styles as for the |sectionstyle| option may be given. You can omit the last style, in which case the second also applies to the last, and you can omit the last two, in which case the first applies to all.
+ \example
+ |subsectionstyle=shaded| causes all subsections to be shaded.
+ \example
+ |subsectionstyle=hide| causes all subsections to be hidden.
+ \example
+ |subsectionstyle=show/shaded| causes all subsections but the current subsection in the current section to be shown in a semi-transparent way.
+ \example
+ |subsectionstyle=show/show/hide| causes all subsections outside the current section to be suppressed.
+ \example
+ |subsectionstyle=show/shaded/hide| causes all subsections outside the current section to be suppressed and only the current subsection in the current section to be highlighted.
+ \item
+ \declare{|subsubsectionstyle=|\meta{style for current subsubsection}|/|\meta{style for other subsubsections in current subsection}|/|\\\meta{style for subsubsections in other subsections in current section}|/|\meta{style for subsubsections in other subsections in other sections}} specifies how subsubsections should be displayed. The same styles as for the |sectionstyle| option may be given. You can omit the last style, in which case the second also applies to the last, and you can omit the last two, in which case the first applies to all.
+ This option operates in an analogous manner to |subsectionstyle|.
+ \end{itemize}
+
+ The last examples are useful if you do not wish to show too many details when presenting the talk outline.
+
+ \articlenote
+ The options are ignored in |article| mode.
+
+ \begin{element}{section/subsection in toc}\semiyes\no\no
+ This is a parent template, whose children are |section in toc| and |subsection in toc|. This means that if you use the |\setbeamertemplate| command on this template, the command is instead called for both of these children (with the same arguments).
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ In the default setting, the sections and subsections are typeset using the fonts and colors |section in toc| and |subsection in toc|, though the background colors are ignored. The subsections are indented.
+ \itemoption{sections numbered}{}
+ Similar to the default setting, but the section numbers are also shown. The subsections are not numbered.
+ \itemoption{subsections numbered}{}
+ This time, the subsections are numbered, but not the sections. Nevertheless, since the subsections are ``fully numbered'' as in ``1.2'' or ``3.2,'' if every section has at least one subsection, the section numbered will not really be missed.
+ \itemoption{circle}{}
+ Draws little circles before the sections. Inside the circles the section number is shown. The \beamer-font and color |section number projected| is used for typesetting the circles, that is, the circle gets the background color and the text inside the circle the foreground color.
+ \itemoption{square}{}
+ Similar to the |circle| option, except that small squares are used instead of circles. Small, unnumbered squares are shown in front of the subsections.
+ \itemoption{ball}{}
+ Like |square|, the only difference being the balls are used instead of squares.
+ \itemoption{ball unnumbered}{}
+ Similar to |ball|, except that no numbering is used. This option makes the table of contents look more like an |itemize|.
+ \end{templateoptions}
+
+ If none of the above options suits you, you have to change the templates |section in toc| and |subsection in toc| directly.
+ \end{element}
+
+ \begin{element}{section/subsection in toc shaded}\semiyes\no\no
+ A parent template with children |section in toc shaded| and |subsection in toc shaded|. They are used to render section and subsection entries when they are currently shaded; like all non-current subsections in |\tableofcontents[currentsubsection]|.
+
+ \begin{templateoptions}
+ \itemoption{default}{\oarg{opaqueness}}
+ In the default setting, the templates |section in toc shaded| and |subsection in toc shaded| just show whatever the nonshaded versions of these templates show, but only \meta{opaqueness}\% opaque. The default is 20\%.
+
+ \example
+ |\setbeamertemplate{section in toc shaded}[default][50]| makes dimmed entries 50\% transparent.
+ \end{templateoptions}
+ \end{element}
+\end{command}
+
+
+\subsection{Adding a Bibliography}
+
+You can use the bibliography environment and the |\cite| commands of \LaTeX\ in a \beamer\ presentation. You will typically have to typeset your bibliography items partly ``by hand.'' Nevertheless, you \emph{can} use |bibtex| to create a ``first approximation'' of the bibliography. Copy the content of the file |main.bbl| into your presentation. If you are not familiar with |bibtex|, you may wish to consult its documentation. It is a powerful tool for creating high-quality citations.
+
+Using |bibtex| or your editor, place your bibliographic references in the environment |thebibliography|. This (standard \LaTeX) environment takes one parameter, which should be the longest |\bibitem| label in the following list of bibliographic entries.
+
+\begin{environment}{{thebibliography}\marg{longest label text}}
+ Inserts a bibliography into the current frame. The \meta{longest label text} is used to determine the indentation of the list. However, several predefined options for the typesetting of the bibliography ignore this parameter since they replace the references by a symbol.
+
+ Inside the environment, use a (standard \LaTeX) |\bibitem| command for each reference item. Inside each item, use a (standard \LaTeX) |\newblock| command to separate the authors' names, the title, the book/journal reference, and any notes. Each of these commands may introduce a new line or color or other formatting, as specified by the template for bibliographies.
+
+ The environment must be placed inside a frame. If the bibliography does not fit on one frame, you should split it (create a new frame and a second |thebibliography| environment) or use the |allowframebreaks| option. Even better, you should reconsider whether it is a good idea to present so many references.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \frametitle{For Further Reading}
+
+ \begin{thebibliography}{Dijkstra, 1982}
+ \bibitem[Salomaa, 1973]{Salomaa1973}
+ A.~Salomaa.
+ \newblock {\em Formal Languages}.
+ \newblock Academic Press, 1973.
+
+ \bibitem[Dijkstra, 1982]{Dijkstra1982}
+ E.~Dijkstra.
+ \newblock Smoothsort, an alternative for sorting in situ.
+ \newblock {\em Science of Computer Programming}, 1(3):223--233, 1982.
+ \end{thebibliography}
+\end{frame}
+\end{verbatim}
+
+ Four templates govern the appearance of the author, title, journal, and note text. These author templates are inserted before the first block of the entry (the first block is all text before the first occurrence of a |\newblock| command). The title template is inserted before the second block (the text between the first and second occurrence of |\newblock|). Likewise for the journal and note templates.
+
+ The templates are inserted \emph{before} the blocks and you do not have access to the blocks themselves via insert commands. The corresponding \beamer-color and -font are also installed before the blocks.
+
+ \begin{element}{bibliography entry author}\yes\yes\yes
+ This template is inserted before the author of a bibliography entry. The color and font are also installed. Note that the effect of this template will persist until the end of the bibliography item or until one of the following templates undo the effect.
+
+ By default, this template does nothing. The default color is the structure color.
+ \end{element}
+
+ \begin{element}{bibliography entry title}\yes\yes\yes
+ This template is inserted before the title of a bibliography entry (more precisely, it is inserted after the first occurrence of the |\newblock| command). By default, this template starts a new paragraph, causing a line break. The default color is the normal text color.
+ \end{element}
+
+ \begin{element}{bibliography entry location}\yes\yes\yes
+ This template is inserted before the journal of a bibliography entry (the second |\newblock|). By default, this template starts a new paragraph. The default color is a slightly transparent version of the structure color.
+ \end{element}
+
+ \begin{element}{bibliography entry note}\yes\yes\yes
+ This template is inserted before any note text at the end of a bibliography entry (it is inserted before the third |\newblock|). By default, this template starts a new paragraph. The default color is the same as for the journal.
+ \end{element}
+\end{environment}
+
+\begin{command}{\bibitem\sarg{overlay specification}\oarg{citation text}\marg{label name}}
+ The \meta{citation text} is inserted into the text when the item is cited using |\cite{|\meta{label name}|}| in the main presentation text. For a \beamer\ presentation, this should usually be as long as possible.
+
+ Use |\newblock| commands to separate the authors's names, the title, the book/journal reference, and any notes. If the \meta{overlay specification} is present, the entry will only be shown on the specified slides.
+
+ \example
+\begin{verbatim}
+\bibitem[Dijkstra, 1982]{Dijkstra1982}
+ E.~Dijkstra.
+ \newblock Smoothsort, an alternative for sorting in situ.
+ \newblock {\em Science of Computer Programming}, 1(3):223--233, 1982.
+\end{verbatim}
+
+ \begin{element}{bibliography item}\yes\yes\yes
+ \colorfontparents{item}
+ This template is used to render the bibliography item. Unlike normal \LaTeX, the default template for the bibliography does not repeat the citation text (like ``[Dijkstra, 1982]'') before each item in the bibliography. Instead, a cute, small article symbol is drawn. The rationale is that the audience will not be able to remember any abbreviated citation texts till the end of the
+ talk.
+ \begin{templateoptions}
+ \itemoption{default}{}
+ Draws a cute little article icon as the reference. Use this for journal articles, parts of books (like conference proceedings), or technical reports.
+
+ \itemoption{article}{}
+ Alias for the default.
+
+ \itemoption{book}{}
+ Draws a cute little book icon as the reference. Use this for, well, books.
+
+ \itemoption{online}{}
+ Draws a cute little globe icon as the reference. Use this for websites and the like.
+
+
+ \itemoption{triangle}{}
+ Draws a triangle as the reference. This is more in keeping with the standard itemize items.
+
+ \itemoption{text}{}
+ Uses the reference text (like ``[Dijkstra, 1982]'') as the reference text. Be sure you know what you are doing if you use this.
+ \end{templateoptions}
+ The following insert is useful for the template:
+ \begin{itemize}
+ \iteminsert{\insertbiblabel}
+ inserts the current citation label.
+ \end{itemize}
+ \end{element}
+\end{command}
+
+
+\subsection{Adding an Appendix}
+
+You can add an appendix to your talk by using the |\appendix| command. You should put frames and perhaps whole subsections into the appendix that you do not intend to show during your presentation, but which might be useful to answer a question. The |\appendix| command essentially just starts a new part named |\appendixname|. However, it also sets up certain hyperlinks. Like other parts, the appendix is kept separate from your actual talk.
+
+\begin{command}{\appendix\sarg{mode specification}}
+ Starts the appendix in the specified modes. All frames, all |\subsection| commands, and all |\section| commands used after this command will not be shown as part of the normal navigation bars.
+ \example
+\begin{verbatim}
+\begin{document}
+\frame{\titlepage}
+\section*{Outline}
+\frame{\tableofcontents}
+\section{Main Text}
+\frame{Some text}
+\section*{Summary}
+\frame{Summary text}
+
+\appendix
+\section{\appendixname}
+\frame{\tableofcontents}
+\subsection{Additional material}
+\frame{Details}
+\frame{Text omitted in main talk.}
+\subsection{Even more additional material}
+\frame{More details}
+\end{document}
+\end{verbatim}
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-graphics.tex b/macros/latex/contrib/beamer/doc/beamerug-graphics.tex
new file mode 100644
index 0000000000..e9d59575fe
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-graphics.tex
@@ -0,0 +1,110 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Graphics}
+\label{section-graphics}
+
+In the following, the advantages and disadvantages of different possible ways of creating graphics for \beamer\ presentations are discussed. Much of the information presented in the following is not really special to \beamer, but applies to any other document class as well.
+
+
+\subsection{Including External Graphic Files Versus Inlines Graphics}
+
+There are two principal ways of creating \TeX-documents that include graphics: Either the graphic resides in an external file that is \emph{included} or the graphic is \emph{inlined}, which means that \TeX-file contains a bunch of commands like ``draw a red line from here to there.'' In the following, the advantages and disadvantages of these two approaches are discussed.
+
+You can use an external program, like |xfig|, GIMP or Inkscape, to create a graphic. These programs have an option to \emph{export} graphic files in a format that can then be inserted into the presentation.
+
+The main advantage is:
+\begin{itemize}
+\item
+ You can use a powerful program to create a high-quality graphic.
+\end{itemize}
+
+The main disadvantages are:
+\begin{itemize}
+\item
+ You have to worry about many files. Typically there are at least two for each presentation, namely the program's graphic data file and the exported graphic file in a format that can be read by \TeX.
+\item
+ Changing the graphic using the program does not automatically change the graphic in the presentation. Rather, you must reexport the graphic and rerun \LaTeX.
+\item
+ It may be difficult to get the line width, fonts, and font sizes right.
+\item
+ Creating formulas as part of graphics is often difficult or impossible.
+\end{itemize}
+
+You can use all the standard \LaTeX\ commands for inserting graphics, like |\includegraphics|. Also, the |pgf| package offers commands for including graphics. Either will work fine in most situations, so choose whichever you like. Like |\pgfdeclareimage|, |\includegraphics| also includes an image only once in a |.pdf| file, even if it used several times (as a matter of fact, the |graphics| package is even a bit smarter about this than |pgf|). However, currently only |pgf| offers the ability to include images that are partly transparent.
+
+At the end of this section you will find notes on how to include specific graphic formats like |.eps| or |.jpg|.
+
+The commands |\includegraphics|, |\pgfuseimage|, and |\pgfimage| are overlay-specification-aware in \beamer. If the overlay specification does not apply, the command has no effect. This is useful for creating a simple animation where each picture of the animation resides in a different file:
+
+\begin{verbatim}
+\begin{frame}
+ \includegraphics<1>[height=2cm]{step1.pdf}%
+ \includegraphics<2>[height=2cm]{step2.pdf}%
+ \includegraphics<3>[height=2cm]{step3.pdf}%
+\end{frame}
+\end{verbatim}
+A different way of creating graphics is to insert graphic drawing commands directly into your \LaTeX\ file. There are numerous packages that help you do this. They have various degrees of sophistication. Inlining graphics suffers from none of the disadvantages mentioned above for including external graphic files, but the main disadvantage is that it is often hard to use these packages. In some sense, you ``program'' your graphics, which requires a bit of practice.
+
+When choosing a graphic package, there are a few things to keep in
+mind:
+\begin{itemize}
+\item
+ Many packages produce poor quality graphics. This is especially true of the standard |picture| environment of \LaTeX.
+\item
+ Powerful packages that produce high-quality graphics often do not work together with |pdflatex|, |lualatex| or |xelatex|.
+\item
+ The most powerful and easiest-to-use package around, namely |pstricks|, does not work together with |pdflatex|, |lualatex| or |xelatex| and this is a fundamental problem. Due to the fundamental differences between \pdf\ and PostScript, it is not possible to write a ``|pdflatex| back-end for |pstricks|.'' (Situation with |lualatex| and |xelatex| is very similar.) Regardless, \textsc{pst-pdf}, \textsc{xetex-pstricks} and \textsc{pdftricks} package can help here and simplify things from user's perspective.
+\end{itemize}
+
+There are three possible solutions to the above problem, each with it's own advantages and disadvantages.
+\begin{itemize}
+\item
+ Use the \textsc{pgf} package. It produces high-quality graphics and works together with |pdflatex|, |lualatex|, |xelatex| and also with normal |latex|. It is not as powerful as |pstricks| (as pointed out above, this is because of rather fundamental reasons) and not as easy to use, but it should be sufficient in most cases.
+\item
+ Use \textsc{luamplib} package and |lualatex|. It provides you with an environment using which you can type MetaPost code directly in your document.
+\item
+ Use |pstricks| and stick to |latex| and |dvips| or use some of the workarounds mentioned above.
+\end{itemize}
+
+
+\subsection{Including Graphic Files Ending \texttt{.eps} or \texttt{.ps}}
+
+External graphic files ending with the extension |.eps| (Encapsulated PostScript) or |.ps| (PostScript) can be included if you use |latex| and |dvips|, but \emph{not} when using |pdflatex|. This is true both for the normal |graphics| package and for |pgf|. When using |pgf|, do \emph{not} add the extension |.eps|. When using |graphics|, do add the extension.
+
+If you have a |.eps| graphic and wish to use |pdflatex|, you can use the program |ps2pdf| to convert the graphic to a |.pdf| file. Some modern distributions enable |write18| which allows |pdflatex| to do that automatically. Note, however, that it is often a better idea to directly generate a |.pdf| if the program that produced the |.eps| supports this.
+
+
+\subsection{Including Graphic Files Ending \texttt{.pdf}, \texttt{.jpg}, \texttt{.jpeg} or \texttt{.png}}
+
+The four formats |.pdf|, |.jpg|, |.jpeg|, and |.png| can only be included by |pdflatex|. As before, do not add these extension when using |pgf|, but do add them when using |graphics|. If your graphic file has any of these formats and you wish/must use |latex| and |dvips|, you have to convert your graphic to |.eps| first.
+
+
+\subsection{Including Graphic Files Ending \texttt{.mps}}
+
+A graphic file ending |.mps| (MetaPost PostScript) is a special kind of Encapsulated PostScript file. Files in this format are produced by the MetaPost program. As you know, \TeX\ is a program that converts simple plain text into beautifully typeset documents. The MetaPost program is similar, only it converts simple plain text into beautiful graphics.
+
+The MetaPost program converts a plain text file ending |.mp| into an |.mps| file (although for some unfathomable reason the extension is not added). The |.mp| file must contain text written in the MetaFont programming language. Since |.mps| files are actually also |.eps| files, you can use the normal |\includegraphics| command to include them.
+
+However, as a special bonus, you can \emph{also} include such a file when using |pdflatex|. Normally, |pdflatex| cannot handle |.eps| files, but the |.mps| files produced by MetaPost have such a simple and special structure that this is possible. The |graphics| package implements some filters to convert such PostScript output to \pdf\ on-the-fly. For this to work, the file should end |.mps| instead of |.eps|. The following command can be used to make the |graphics| package just \emph{assume} the extension |.mps| for any file it knows nothing about (like files ending with |.1|, which is what MetaPost loves to produce):
+\begin{verbatim}
+\DeclareGraphicsRule{*}{mps}{*}{}
+\end{verbatim}
+This special feature currently only works with the |graphics| package, not with |pgf|.
+
+
+\subsection{Including Graphic Files Ending \texttt{.mmp}}
+
+The format |.mmp| (Multi-MetaPost) is actually not a format that can be included directly in a \TeX-file. Rather, like a |.mp| file, it first has to be converted using the MetaPost program. The crucial difference between |.mp| and |.mmp| is that in the latter multiple graphics can reside in a single |.mmp| file (actually, multiple graphics can also reside in a |.mp| file, but by convention such a file is called |.mmp|). When running MetaPost on a |.mmp| file, it will create not a single encapsulated PostScript file, but several, ending |.0|, |.1|, |.2|, and so on. The idea is that |.0| might contain a main graphic and the following pictures contain overlay material that should be incrementally added to this graphic.
+
+To include the series of resulting files, you can use the command |\multiinclude| from the |mpmulti| or from the |xmpmulti| package. How this program works is explained in Section~\ref{section-mpmulti}.
diff --git a/macros/latex/contrib/beamer/doc/beamerug-guidelines.tex b/macros/latex/contrib/beamer/doc/beamerug-guidelines.tex
new file mode 100644
index 0000000000..0aef255f40
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-guidelines.tex
@@ -0,0 +1,423 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Guidelines for Creating Presentations}
+\label{section-guidelines}
+
+In this section we sketch the guidelines that we try to stick to when we create presentations. These guidelines either arise out of experience, out of common sense, or out of recommendations by other people or books. These rules are certainly not intended as commandments that, if not followed, will result in catastrophe. The central rule of typography also applies to creating presentations: \emph{Every rule can be broken, but no rule may be ignored.}
+
+
+\subsection{Structuring a Presentation}
+\label{section-structure-guidelines}
+
+\subsubsection{Know the Time Constraints}
+
+When you start to create a presentation, the very first thing you should worry about is the amount of time you have for your presentation. Depending on the occasion, this can be anything between 2 minutes and two hours.
+\begin{itemize}
+\item
+ A simple rule for the number of frames is that you should have at most one frame per minute.
+\item
+ In most situations, you will have less time for your presentation that you would like.
+\item
+ \emph{Do not try to squeeze more into a presentation than time allows for.} No matter how important some detail seems to you, it is better to leave it out, but get the main message across, than getting neither the main message nor the detail across.
+\end{itemize}
+
+In many situations, a quick appraisal of how much time you have will show that you won't be able to mention certain details. Knowing this can save you hours of work on preparing slides that you would have to remove later anyway.
+
+\subsubsection{Global Structure}
+
+To create the ``global structure'' of a presentation, with the time constraints in mind, proceed as follows:
+\begin{itemize}
+\item
+ Make a mental inventory of the things you can reasonably talk about within the time available.
+\item
+ Categorize the inventory into sections and subsections.
+\item
+ For very long talks (like a 90 minute lecture), you might also divide your talk into independent parts (like a ``review of the previous lecture part'' and a ``main part'') using the |\part| command. Note that each part has its own table of contents.
+\item
+ Do not feel afraid to change the structure later on as you work on the talk.
+\end{itemize}
+
+\paragraph{Parts, Section, and Subsections.}
+
+\begin{itemize}
+\item
+ Do not use more than four sections and not less than two per part.
+\end{itemize}
+
+Even four sections are usually too much, unless they follow a very easy pattern. Five and more sections are simply too hard to remember for the audience. After all, when you present the table of contents, the audience will not yet really be able to grasp the importance and relevance of the different sections and will most likely have forgotten them by the time you reach them.
+\begin{itemize}
+\item
+ Ideally, a table of contents should be understandable by itself. In particular, it should be comprehensible \emph{before} someone has heard your talk.
+\item
+ Keep section and subsection titles self-explaining.
+\item
+ Both the sections and the subsections should follow a logical pattern.
+\item
+ Begin with an explanation of what your talk is all about. (Do not assume that everyone knows this. The \emph{Ignorant Audience Law} states: Someone important in the audience always knows less than you think everyone should know, even if you take the Ignorant Audience Law into account.)
+\item
+ Then explain what you or someone else has found out concerning the subject matter.
+\item
+ Always conclude your talk with a summary that repeats the main message of the talk in a short and simple way. People pay most attention at the beginning and at the end of talks. The summary is your ``second chance'' to get across a message.
+\item
+ You can also add an appendix part using the |\appendix| command. Put everything into this part that you do not actually intend to talk about, but that might come in handy when questions are asked.
+\item
+ Do not use subsubsections, they are evil.
+\end{itemize}
+
+\paragraph{Giving an Abstract}
+
+In papers, the abstract gives a short summary of the whole paper in about 100 words. This summary is intend to help readers appraise whether they should read the whole paper or not.
+\begin{itemize}
+\item
+ Since your audience is unlikely to flee after the first slide, in a presentation you usually do not need to present an abstract.
+\item
+ However, if you can give a nice, succinct statement of your talk, you might wish to include an abstract.
+\item
+ If you include an abstract, be sure that it is \emph{not} some long text but just a very short message.
+\item
+ \emph{Never, ever} reuse a paper abstract for a presentation, \emph{except} if the abstract is ``We show $\operatorname{P} = \operatorname{NP}$'' or ``We show $\operatorname{P} \neq \operatorname{NP}$''
+\item
+ If your abstract is one of the above two, double-check whether your proof is correct.
+\end{itemize}
+
+\paragraph{Numbered Theorems and Definitions.}
+
+A common way of globally structuring (math) articles and books is to use consecutively numbered definitions and theorems. Unfortunately, for presentations the situation is a bit more complicated and we would like to discourage using numbered theorems in presentations. The audience has no chance of remembering these numbers. \emph{Never} say things like ``now, by Theorem~2.5 that I showed you earlier, we have \dots'' It would be much better to refer to, say, Kummer's Theorem instead of Theorem~2.5. If Theorem~2.5 is some obscure theorem that does not have its own name (unlike Kummer's Theorem or Main Theorem or Second Main Theorem or Key Lemma), then the audience will have forgotten about it anyway by the time you refer to it again.
+
+In our opinion, the only situation in which numbered theorems make sense in a presentation is in a lecture, in which the students can read lecture notes in parallel to the lecture where the theorems are numbered in exactly the same way.
+
+If you do number theorems and definitions, number everything consecutively. Thus if there are one theorem, one lemma, and one definition, you would have Theorem~1, Lemma~2, and Definition~3. Some people prefer all three to be numbered~1. We would \emph{strongly} like to discourage this. The problem is that this makes it virtually impossible to find anything since Theorem~2 might come after Definition~10 or the other way round. Papers and, worse, books that have a Theorem~1 and a Definition~1 are a pain.
+\begin{itemize}
+\item
+ Do not inflict pain on other people.
+\end{itemize}
+
+\paragraph{Bibliographies.}
+
+You may also wish to present a bibliography at the end of your talk, so that people can see what kind of ``further reading'' is possible. When adding a bibliography to a presentation, keep the following in mind:
+\begin{itemize}
+\item
+ It is a bad idea to present a long bibliography in a presentation. Present only very few references. (Naturally, this applies only to the talk itself, not to a possible handout.)
+\item
+ If you present more references than fit on a single slide you can be almost sure that none of them will be remembered.
+\item
+ Present references only if they are intended as ``further reading.'' Do not present a list of all things you used like in a paper.
+\item
+ You should not present a long list of all your other great papers \emph{except} if you are giving an application talk.
+\item
+ Using the |\cite| commands can be confusing since the audience has little chance of remembering the citations. If you cite the references, always cite them with full author name and year like ``[Tantau, 2003]'' instead of something like ``[2,4]'' or ``[Tan01,NT02]''.
+\item
+ If you want to be modest, you can abbreviate your name when citing yourself as in ``[Nickelsen and T., 2003]'' or ``[Nickelsen and T, 2003]''. However, this can be confusing for the audience since it is often not immediately clear who exactly ``T.'' might be. We recommend using the full name.
+\end{itemize}
+
+\subsubsection{Frame Structure}
+\label{section-frame-guidelines}
+\label{section-guidelines-local}
+
+Just like your whole presentation, each frame should also be structured. A frame that is solely filled with some long text is very hard to follow. It is your job to structure the contents of each frame such that, ideally, the audience immediately sees which information is important, which information is just a detail, how the presented information is related, and so on.
+
+\paragraph{The Frame Title}
+
+\begin{itemize}
+\item
+ Put a title on each frame. The title explains the contents of the frame to people who did not follow all details on the slide.
+\item
+ The title should really \emph{explain} things, not just give a cryptic summary that cannot be understood unless one has understood the whole slide. For example, a title like ``The Poset'' will have everyone puzzled what this slide might be about. Titles like ``Review of the Definition of Partially Ordered Sets (Posets)'' or ``A Partial Ordering on the Columns of the Genotype Matrix'' are \emph{much} more informative.
+\item
+ Ideally, titles on consecutive frames should ``tell a story'' all by themselves.
+\item
+ In English, you should \emph{either} \emph{always} capitalize all words in a frame title except for words like ``a'' or ``the'' (as in a title), \emph{or} you \emph{always} use the normal lowercase letters. Do \emph{not} mix this; stick to one rule. The same is true for block titles. For example, do not use titles like ``A short Review of Turing machines.'' Either use ``A Short Review of Turing Machines.'' or ``A short review of Turing machines.'' (Turing is still spelled with a capital letter since it is a name).
+\item
+ In English, the title of the whole document should be capitalized, regardless of whether you capitalize anything else.
+\item
+ In German and other languages that have lots of capitalized words, always use the correct upper-/lowercase letters. Never capitalize anything in addition to what is usually capitalized.
+\end{itemize}
+
+\paragraph{How Much Can I Put On a Frame?}
+
+\begin{itemize}
+\item
+ A frame with too little on it is better than a frame with too much on it. A usual frame should have between 20 and 40 words. The maximum should be at about 80 words.
+\item
+ Do not assume that everyone in the audience is an expert on the subject matter. Even if the people listening to you should be experts, they may last have heard about things you consider obvious several years ago. You should always have the time for a quick reminder of what exactly a ``semantical complexity class'' or an ``$\omega$-complete partial ordering'' is.
+\item
+ Never put anything on a slide that you are not going to explain during the talk, not even to impress anyone with how complicated your subject matter really is. However, you may explain things that are not on a slide.
+\item
+ Keep it simple. Typically, your audience will see a slide for less than 50 seconds. They will not have the time to puzzle through long sentences or complicated formulas.
+\item
+ Lance Fortnow, a professor of computer science, claims: PowerPoint users give better talks. His reason: Since PowerPoint is so bad at typesetting math, they use less math, making their talks easier to understand.
+
+ There is some truth in this in our opinion. The great math-typesetting capabilities of \TeX\ can easily lure you into using many more formulas than is necessary and healthy. For example, instead of writing {\catcode `|=12``Since $\left|\{x \in \{0,1\}^* \mid x \sqsubseteq y\}\right| < \infty$}, we have\dots''\ use ``Since $y$ has only finitely many prefixes, we have\dots''
+
+ You will be surprised how much mathematical text can be reformulated in plain English or can just be omitted. Naturally, if some mathematical argument is what you are actually talking about, as in a math lecture, make use of \TeX's typesetting capabilities to your heart's content.
+\end{itemize}
+
+\paragraph{Structuring a Frame}
+
+\begin{itemize}
+\item
+ Use block environments like |block|, |theorem|, |proof|, |example|, and so on.
+\item
+ Prefer enumerations and itemize environments over plain text.
+\item
+ Use |description| when you define several things.
+\item
+ Do not use more than two levels of ``subitemizing.'' \beamer\ supports three levels, but you should not use that third level. Mostly, you should not even use the second one. Use good graphics instead.
+\item
+ Do not create endless |itemize| or |enumerate| lists.
+\item
+ Do not uncover lists piecewise.
+\item
+ Emphasis is an important part of creating structure. Use |\alert| to highlight important things. This can be a single word or a whole sentence. However, do not overuse highlighting since this will negate the effect.
+\item
+ Use columns.
+\item
+ \emph{Never} use footnotes. They needlessly disrupt the flow of reading. Either what is said in the footnote is important and should be put in the normal text; or it is not important and should be omitted (\emph{especially} in a presentation).
+\item
+ Use |quote| or |quotation| to typeset quoted text.
+\item
+ Do not use the option |allowframebreaks| except for long bibliographies.
+\item
+ Do not use long bibliographies.
+\end{itemize}
+
+\paragraph{Writing the Text}
+
+\begin{itemize}
+\item
+ Use short sentences.
+\item
+ Prefer phrases over complete sentences. For example, instead of ``The figure on the left shows a Turing machine, the figure on the right shows a finite automaton.''\ try ``Left: A Turing machine. Right: A finite automaton.'' Even better, turn this into an itemize or a description.
+\item
+ Punctuate correctly: no punctuation after phrases, complete punctuation in and after complete sentences.
+\item
+ \emph{Never} use a smaller font size to ``fit more on a frame.'' \emph{Never ever} use the \emph{evil} option |shrink|.
+\item
+ Do not hyphenate words. If absolutely necessary, hyphenate words ``by hand,'' using the command~|\-|.
+\item
+ Break lines ``by hand'' using the command~|\\|. Do not rely on automatic line breaking. Break where there is a logical pause. For example, good breaks in ``the tape alphabet is larger than the input alphabet'' are before ``is'' and before the second ``the.'' Bad breaks are before either ``alphabet'' and before ``larger.''
+\item
+ Text and numbers in figures should have the \emph{same} size as normal text. Illegible numbers on axes usually ruin a chart and its message.
+\end{itemize}
+
+\subsubsection{Interactive Elements}
+
+Ideally, during a presentation you would like to present your slides in a perfectly linear fashion, presumably by pressing the page-down-key once for each slide. However, there are different reasons why you might have to deviate from this linear order:
+\begin{itemize}
+\item
+ Your presentation may contain ``different levels of detail'' that may or may not be skipped or expanded, depending on the audience's reaction.
+\item
+ You are asked questions and wish to show supplementary slides.
+\item
+ You present a complicated picture and you have to ``zoom out'' different parts to explain details.
+\item
+ You are asked questions about an earlier slide, which forces you to find and then jump to that slide.
+\end{itemize}
+
+You cannot really prepare against the last kind of questions. In this case, you can use the navigation bars and symbols to find the slide you are interested in, see \ref{section-navigation-bars}.
+
+Concerning the first three kinds of deviations, there are several things you can do to prepare ``planned detours'' or ``planned short cuts''.
+\begin{itemize}
+\item
+ You can add ``skip buttons.'' When such a button is pressed, you jump over a well-defined part of your talk. Skip button have two advantages over just pressing the forward key is rapid succession: first, you immediately end up at the correct position and, second, the button's label can give the audience a visual feedback of what exactly will be skipped. For example, when you press a skip button labeled ``Skip proof'' nobody will start puzzling over what he or she has missed.
+\item
+ You can add an appendix to your talk. The appendix is kept ``perfectly separated'' from the main talk. Only once you ``enter'' the appendix part (presumably by hyperjumping into it), does the appendix structure become visible. You can put all frames that you do not intend to show during the normal course of your talk, but which you would like to have handy in case someone asks, into this appendix.
+\item
+ You can add ``goto buttons'' and ``return buttons'' to create detours. Pressing a goto button will jump to a certain part of the presentation where extra details can be shown. In this part, there is a return button present on each slide that will jump back to the place where the goto button was pressed.
+\item
+ In \beamer, you can use the |\againframe| command to ``continue'' frames that you previously started somewhere, but where certain details have been suppressed. You can use the |\againframe| command at a much later point, for example only in the appendix to show additional slides there.
+\item
+ In \beamer, you can use the |\framezoom| command to create links to zoomed out parts of a complicated slide.
+\end{itemize}
+
+\subsection{Using Graphics}
+
+Graphics often convey concepts or ideas much more efficiently than text: A picture can say more than a thousand words. (Although, sometimes a word can say more than a thousand pictures.)
+\begin{itemize}
+\item
+ Put (at least) one graphic on each slide, whenever possible. Visualizations help an audience enormously.
+\item
+ Usually, place graphics to the left of the text. (Use the |columns| environment.) In a left-to-right reading culture, we look at the left first.
+\item
+ Graphics should have the same typographic parameters as the text: Use the same fonts (at the same size) in graphics as in the main text. A small dot in a graphic should have exactly the same size as a small dot in a text. The line width should be the same as the stroke width used in creating the glyphs of the font. For example, an 11pt non-bold Computer Modern font has a stroke width of 0.4pt.
+\item
+ While bitmap graphics, like photos, can be much more colorful than the rest of the text, vector graphics should follow the same ``color logic'' as the main text (like black~= normal lines, red~= highlighted parts, green~= examples, blue~= structure).
+\item
+ Like text, you should explain everything that is shown on a graphic. Unexplained details make the audience puzzle whether this was something important that they have missed. Be careful when importing graphics from a paper or some other source. They usually have much more detail than you will be able to explain and should be radically simplified.
+\item
+ Sometimes the complexity of a graphic is intentional and you are willing to spend much time explaining the graphic in great detail. In this case, you will often run into the problem that fine details of the graphic are hard to discern for the audience. In this case you should use a command like |\framezoom| to create anticipated zoomings of interesting parts of the graphic, see Section~\ref{section-zooming}.
+\end{itemize}
+
+
+\subsection{Using Animations and Transitions}
+
+\begin{itemize}
+\item
+ Use animations to explain the dynamics of systems, algorithms, etc.
+\item
+ Do \emph{not} use animations just to attract the attention of your audience. This often distracts attention away from the main topic of the slide. No matter how cute a rotating, flying theorem seems to look and no matter how badly you feel your audience needs some action to keep it happy, most people in the audience will typically feel you are making fun of them.
+\item
+ Do \emph{not} use distracting special effects like ``dissolving'' slides unless you have a very good reason for using them. If you use them, use them sparsely. They \emph{can} be useful in some situations: For example, you might show a young boy on a slide and might wish to dissolve this slide into a slide showing a grown man instead. In this case, the dissolving gives the audience visual feedback that the young boy ``slowly becomes'' the man.
+\end{itemize}
+
+
+\subsection{Choosing Appropriate Themes}
+
+\beamer\ comes with a number of different themes. When choosing a theme, keep the following in mind:
+\begin{itemize}
+\item
+ Different themes are appropriate for different occasions. Do not become too attached to a favorite theme; choose a theme according to occasion.
+\item
+ A longer talk is more likely to require navigational hints than a short one. When you give a 90 minute lecture to students, you should choose a theme that always shows a sidebar with the current topic highlighted so that everyone always knows exactly what's the current ``status'' of your talk is; when you give a ten-minute introductory speech, a table of contents is likely to just seem silly.
+\item
+ A theme showing the author's name and affiliation is appropriate in situations where the audience is likely not to know you (like during a conference). If everyone knows you, having your name on each slide is just vanity.
+\item
+ First choose a presentation theme that has a layout that is appropriate for your talk.
+\item
+ Next you might wish to change the colors by installing a different color theme. This can drastically change the appearance of your presentation. A ``colorful'' theme like |Berkeley| will look much less flashy if you use the color themes |seahorse| and |lily|.
+\item
+ You might also wish to change the fonts by installing a different font theme.
+\end{itemize}
+
+
+\subsection{Choosing Appropriate Colors}
+
+\begin{itemize}
+\item
+ Use colors sparsely. The prepared themes are already quite colorful (blue~= structure, red~= alert, green~= example). If you add more colors for things like code, math text, etc., you should have a \emph{very} good reason.
+\item
+ Be careful when using bright colors on white background, \emph{especially} when using green. What looks good on your monitor may look bad during a presentation due to the different ways monitors, beamers, and printers reproduce colors. Add lots of black to pure colors when you use them on bright backgrounds.
+\item
+ Maximize contrast. Normal text should be black on white or at least something very dark on something very bright. \emph{Never} do things like ``light green text on not-so-light green background.''
+\item
+ Background shadings decrease the legibility without increasing the information content. Do not add a background shading just because it ``somehow looks nicer.''
+\item
+ Inverse video (bright text on dark background) can be a problem during presentations in bright environments since only a small percentage of the presentation area is light up by the beamer. Inverse video is harder to reproduce on printouts and on transparencies.
+\end{itemize}
+
+
+\subsection{Choosing Appropriate Fonts and Font Attributes}
+
+Text and fonts literally surround us constantly. Try to think of the last time when there was no text around you within ten meters. Likely, this has never happened in your life! (Whenever you wear clothing, even a swim suit, there is a lot of text right next to your body.) The history of fonts is nearly as long as the history of civilization itself. There are tens of thousands of fonts available these days, some of which are the product of hundreds of years of optimization.
+
+Choosing the right fonts for a presentation is by no means trivial and wrong choices will either just ``look bad'' or, worse, make the audience have trouble reading your slides. This user's guide cannot replace a good book on typography, but in the present section you'll find several hints that should help you setup fonts for a \beamer\ presentation that look good. A font has numerous attributes like weight, family, or size. All of these have an impact on the usability of the font in presentations. In the following, these attributes are described and advantages and disadvantages of the different choices are sketched.
+
+\subsubsection{Font Size}
+\label{section-sizes}
+
+Perhaps the most obvious attribute of a font is its size. Fonts are traditionally measured in ``points.'' How much a point is depends on whom you ask. \TeX\ thinks a point is the 72.27th part of an inch, which is 2.54 cm. On the other hand, PostScript and Adobe think a point is the 72th part of an inch (\TeX\ calls this a big point). There are differences between American and European points. Once it is settled how much a point is, claiming that a text is in ``11pt'' means that the ``height'' of the letters in the font are 11pt. However, this ``height'' stems from the time when letters where still cast in lead and refers to the vertical size of the lead letters. It thus does not need to have any correlation with the actual height of, say, the letter x or even the letter M. The letter x of an 11pt Times from Adobe will have a height that is different from the height of the letter x of an 11pt Times from UTC and the letter x of an 11pt Helvetica from Adobe will have yet another height.
+
+Summing up, the font size has little to do with the actual size of letters. Rather, these days it is a convention that 10pt or 11pt is the size a font should be printed for ``normal reading.'' Fonts are designed so that they can optimally be read at these sizes.
+
+In a presentation the classical font sizes obviously lose their meaning. Nobody could read a projected text if it were actually 11pt. Instead, the projected letters need to be several centimetres high. Thus, it does not really make sense to specify ``font sizes'' for presentations in the usual way. Instead, you should try to think of the number of lines that will fit on a slide if you were to fill the whole slide with line-by-line text (you are never going to do that in practice, though). Depending on how far your audience is removed from the projection and on how large the projection is, between 10 and 20 lines should fit on each slide. The less lines, the more readable your text will be.
+
+In \beamer, the default sizes of the fonts are chosen in a way that makes it difficult to fit ``too much'' onto a slide. Also, it will ensure that your slides are readable even under bad conditions like a large room and only a small projection area. However, you may wish to enlarge or shrink the fonts a bit if you know this to be more appropriate in your presentation environment.
+
+Once the size of the normal text is settled, all other sizes are usually defined relative to that size. For this reason, \LaTeX\ has commands like |\large| or |\small|. The actual size these commands select depends on the size of normal text.
+
+In a presentation, you will want to use a very small font for text in headlines, footlines, or sidebars since the text shown there is not vital and is read at the audience's leisure. Naturally, the text should still be large enough that it actually \emph{can} be read without binoculars. However, in a normal presentation environment the audience will still be able to read even |\tiny| text when necessary.
+
+However, using small fonts can be tricky. Many PostScript fonts are just scaled down when used at small sizes. When a font is used at less than its normal size, the characters should actually be stroked using a slightly thicker ``pen'' than the one resulting from just scaling things. For this reason, high quality multiple master fonts or the Computer Modern fonts use different fonts for small characters and for normal characters. However, when you use a normal Helvetica or Times font, the characters are just scaled down. A similar problem arises when you use a light font on a dark background. Even when printed on paper in high resolution, light-on-dark text tends to be ``overflooded'' by the dark background. When light-on-dark text is rendered in a presentation this effect can be much worse, making the text almost impossible to read.
+
+You can counter both negative effects by using a bold version for small text.
+
+In the other direction, you can use larger text for titles. However, using a larger font does not always have the desired effect. Just because a frame title is printed in large letters does not mean that it is read first. Indeed, have a look at the cover of your favorite magazine. Most likely, the magazine's name is the typeset in the largest font, but your attention will nevertheless first go to the topics advertised on the cover. Likewise, in the table of contents you are likely to first focus on the entries, not on the words ``Table of Contents.'' Most likely, you would not spot a spelling mistake there (a friend of mine actually managed to misspell \emph{his own name} on the cover of his master's thesis and nobody noticed until a year later). In essence, large text at the top of a page signals ``unimportant since I know what to expect.'' So, instead of using a very large frame title, also consider using a normal size frame title that is typeset in bold or in italics.
+
+\subsubsection{Font Families}
+\label{section-guidelines-serif}
+
+The other central property of any font is its family. Examples of font families are Times or Helvetica or Futura. As the name suggests, a lot of different fonts can belong to the same family. For example, Times comes in different sizes, there is a bold version of Times, an italics version, and so on. To confuse matters, font families like Times are often just called the ``font Times.''
+
+There are two large classes of font families: serif fonts and sans-serif fonts. A sans-serif font is a font in which the letters do not have serifs (from French \emph{sans}, which means ``without''). Serifs are the little hooks at the ending of the strokes that make up a letter. The font you are currently reading is a serif font. \textsf{By comparison, this text is in a sans-serif font.} Sans-serif fonts are (generally considered to be) easier to read when used in a presentation. In low resolution rendering, serifs decrease the legibility of a font. However, on projectors with very high resolution serif text is just as readable as sans-serif text. A presentation typeset in a serif font creates a more conservative impression, which might be exactly what you wish to create.
+
+Most likely, you'll have a lot of different font families preinstalled on your system. The default font used by \TeX\ (and \beamer) is the Computer Modern font. It is the original font family designed by Donald Knuth himself for the \TeX\ program. It is a mature font that comes with just about everything you could wish for: extensive mathematical alphabets, outline PostScript versions, real small caps, real oldstyle numbers, specially designed small and large letters, and so on.
+
+However, there are reasons for using font families other than Computer Modern:
+\begin{itemize}
+\item
+ The Computer Modern fonts are a bit boring if you have seen them too often. Using another font (but not Times!) can give a fresh look.
+\item
+ Other fonts, especially Times and Helvetica, are sometime rendered better since they seem to have better internal hinting.
+\item
+ The sans-serif version of Computer Modern is not nearly as well-designed as the serif version. Indeed, the sans-serif version is, in essence, the serif version with different design parameters, not an independent design.
+\item
+ Computer modern needs much more space than more economic fonts like Times (this explains why Times is so popular with people who need to squeeze their great paper into just twelve pages). To be fair, Times was specifically designed to be economic (the newspaper company publishing The Times needed robust, but space-economic font).
+\end{itemize}
+
+A small selection of alternatives to Computer Modern:
+\begin{itemize}
+\item
+ Latin Modern is a Computer Modern derivative that provides more characters, so it's not considered a real alternative. It's recommended over Computer Modern, though.
+\item
+ Helvetica is an often used alternative. However, Helvetica also tends to look boring (since we see it everywhere) and it has a very large x-height (the height of the letter~x in comparison to a letter like~M). A large x-height is usually considered good for languages (like English) that use uppercase letters seldom and not-so-good for languages (like German) that use uppercase letters a lot. (We have never been quite convinced by the argument for this, though.) Be warned: the x-height of Helvetica is so different from the x-height of Times that mixing the two in a single line looks strange. The packages for loading Times and Helvetica provide options for fixing this, though.
+\item
+ Futura is, in our opinion, a beautiful font that is very well-suited for presentations. Its thick letters make it robust against scaling, inversion, and low contrast. Unfortunately, while it is most likely installed on your system somewhere in some form, getting \TeX\ to work with it is a complicated process. However, it has been made a lot simpler with modern typesetting engines such as |luatex| and |xetex|.
+\item
+ Times is a possible alternative to Computer Modern. Its main disadvantage is that it is a serif font, which requires a high-resolution projector. Naturally, it also used very often, so we all know it very well.
+\item
+ DejaVu, a derivative of Bitstream Vera is also a very good and free alternative. TrueType version that comes with OpenOffice.org is complicated to get to work with \TeX, but |arev| \LaTeX\ package provides an easy way to use Type 1 version named Bera. It has both sans-serif and serif versions; |arev| provides both.
+\end{itemize}
+
+Families that you should \emph{not} use for normal text include:
+\begin{itemize}
+\item
+ All monospaced fonts (like Courier).
+\item
+ Script fonts (which look like handwriting). Their stroke width is way too small for a presentation.
+\item
+ More delicate serif fonts like Stempel and possibly even Garamond (though Garamond is really a beautiful font for books).
+\item
+ Gothic fonts. Only a small fraction of your audience will be able to read them fluently.
+\end{itemize}
+
+There is one popular font that is a bit special: Microsoft's Comic Sans. On the one hand, there is a website lobbying for banning the use of this font. Indeed, the main trouble with the font is that it is not particularly well-readable and that math typeset partly using this font looks terrible. On the other hand, this font \emph{does} create the impression of a slide ``written by hand,'' which gives the presentation a natural look. Think twice before using this font, but do not let yourself be intimidated.
+
+One of the most important rules of typography is that you should use as little fonts as possible in a text. In particular, typographic wisdom dictates that you should not use more than two different families on one page. However, when typesetting mathematical text, it is often necessary and useful to use different font families. For example, it used to be common practice to use Gothic letters to denote vectors. Also, program texts are often typeset in monospace fonts. If your audience is used to a certain font family for a certain type of text, use that family, regardless of what typographic wisdom says.
+
+A common practice in typography is to use a sans-serif fonts for titles and serif fonts for normal text (check your favorite magazine). You can \emph{also} use two different sans-serif fonts or two different serif fonts, but you then have to make sure that the fonts look ``sufficiently different.'' If they look only slightly different, the page will look ``somehow strange,'' but the audience will not be able to tell why. For example, do not mix Arial and Helvetica (they are almost identical) or Computer Modern and Baskerville (they are quite similar). A combination of Gills Sans and Helvetica is dangerous but perhaps possible. A combination like Futura and Optima is certainly OK, at least with respect to the fonts being very different.
+
+\subsubsection{Font Shapes: Italics and Small Capitals}
+\label{section-italics}
+\label{section-smallcaps}
+
+\LaTeX\ introduces the concept of the \emph{shape} of a font. The only really important ones are italic and small caps. An \emph{italic} font is a font in which the text is slightly slanted to the right \emph{like this}. Things to know about italics:
+\begin{itemize}
+\item
+ Italics are commonly used in novels to express emphasis. However, especially with sans-serif fonts, italics are typically not ``strong enough'' and the emphasis gets lost in a presentation. Using a different color or bold text seems better suited for presentations to create emphasis.
+\item
+ If you look closely, you will notice that italic text is not only slanted but that different letters are actually used (compare a and \emph{a}, for example). However, this is only true for serif text, not for sans-serif text. Text that is only slanted without using different characters is called ``slanted'' instead of ``italic.'' Sometimes, the word ``oblique'' is also used for slanted, but it sometimes also used for italics, so it is perhaps best to avoid it. Using slanted serif text is very much frowned upon by typographers and is considered ``cheap computer typography.'' However, people who use slanted text in their books include Donald Knuth.
+
+ In a presentation, if you go to the trouble of using a serif font for some part of it, you should also use italics, not slanted text.
+\item
+ The different characters used for serif italics have changed much less from the original handwritten letters they are based on than normal serif text. For this reason, serif italics creates the impression of handwritten text, which may be desirable to give a presentation a more ``personal touch'' (although you can't get very personal using Times italics, which everyone has seen a thousand times). However, it is harder to read than normal text, so do not use it for text more than a line long.
+\end{itemize}
+
+The second font shape supported by \TeX\ are small capital letters. Using them can create a conservative, even formal impression, but some words of caution:
+\begin{itemize}
+\item
+ Small capitals are different from all-uppercase text. A small caps text leaves normal uppercase letters unchanged and uses smaller versions of the uppercase letters for normal typesetting lowercase letters. Thus the word ``German'' is typeset as \textsc{German} using small caps, but as \uppercase{German} using all uppercase letters.
+\item
+ Small caps either come as ``faked'' small caps or as ``real'' small caps. Faked small caps are created by just scaling down normal uppercase letters. This leads to letters the look too thin. Real small caps are specially designed smaller versions of the uppercase letters that have the same stroke width as normal text.
+\item
+ Computer Modern fonts and expert version of PostScript fonts come with real small caps (though the small caps of Computer Modern are one point size too large for some unfathomable reason---but your audience is going to pardon this since it will not be noticed anyway). ``Simple'' PostScript fonts like out-of-the-box Helvetica or Times only come with faked small caps.
+\item
+ Text typeset in small caps is harder to read than normal text. The reason is that we read by seeing the ``shape'' of words. For example, the word ``shape'' is mainly recognized by seeing one normal letter, one ascending letter, a normal letter, one descending letter, and a normal letter. One has much more trouble spotting a misspelling like ``shepe'' than ``spape''. Small caps destroy the shape of words since \textsc{shape}, \textsc{shepe} and \textsc{spape} all have the same shape, thus making it much harder to tell them apart. Your audience will read small caps more slowly than normal text. This is, by the way, why legal disclaimers are often written in uppercase letters: not to make them appear more important to you, but to make them much harder to actually read.
+\end{itemize}
+
+\subsubsection{Font Weight}
+
+The ``weight'' of a font refers to the thickness of the letters. Usually, fonts come as regular or as bold fonts. There often also exist semibold, ultrabold (or black), thin, or ultrathin (or hair) versions.
+
+In typography, using a bold font to create emphasis, especially within normal text, is frowned upon (bold words in the middle of a normal text are referred to as ``dirt''). For presentations this rule of not using bold text does not really apply. On a presentation slide there is usually very little text and there are numerous elements that try to attract the viewer's attention. Using the traditional italics to create emphasis will often be overlooked. So, using bold text, seems a good alternative in a presentation. However, an even better alternative is using a bright color like red to attract attention.
+
+As pointed out earlier, you should use bold text for small text unless you use an especially robust font like Futura or DejaVu.
diff --git a/macros/latex/contrib/beamer/doc/beamerug-installation.tex b/macros/latex/contrib/beamer/doc/beamerug-installation.tex
new file mode 100644
index 0000000000..6c2c2f8226
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-installation.tex
@@ -0,0 +1,134 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Installation}
+\label{section-installation}
+
+There are different ways of installing the \beamer\ class, depending on your installation and needs. When installing the class, you may have to install some other packages as well as described below. Before installing, you may wish to review the licenses under which the class is distributed, see Section~\ref{section-license}.
+
+Fortunately, most likely your system will already have \beamer\ preinstalled, so you can skip this section.
+
+
+\subsection{Versions and Dependencies}
+
+This documentation is part of version \beamerugversion\ of the \beamer\ class. \beamer\ needs a reasonably recent version of several standard packages to run and also the following versions of two special packages (later versions should work, but not necessarily):
+\begin{itemize}
+\item
+ |pgf.sty| version \beamerugpgfversion,
+\item
+ |xcolor.sty| version \beamerugxcolorversion.
+\end{itemize}
+
+If you use |pdflatex|, which is optional, you need
+\begin{itemize}
+\item
+ |pdflatex| version 0.14 or higher. Earlier versions do not work.
+\end{itemize}
+
+
+\subsection{Installation of Pre-bundled Packages}
+
+We do not create or manage pre-bundled packages of \beamer, but, fortunately, other nice people do. We cannot give detailed instructions on how to install these packages, since we do not manage them, but we \emph{can} tell you were to find them and we can tell you what these nice people told us on how to install them. If you have a problem with installing, you might wish to have a look at the following first.
+
+
+\subsubsection{\TeX\ Live and Mac\TeX}
+
+In \TeX\ Live, use the |tlmgr| tool to install the packages called |beamer|, |pgf|, and |xcolor|. If you have a fairly recent version of \TeX\ Live, and you have done full installation, \beamer\ is included.
+
+
+\subsubsection{MiK\TeX\ and pro\TeX t}
+
+For MiK\TeX\ and pro\TeX t, use the update wizard or package manager to install the (latest versions of the) packages called |beamer|, |pgf|, and |xcolor|.
+
+
+\subsubsection{Debian and Ubuntu}
+
+The command ``|aptitude install latex-beamer|'' should do the trick. If necessary, the packages |pgf| and |latex-xcolor| will be automatically installed. Sit back and relax. In detail, the following packages are installed:
+\begin{verbatim}
+http://packages.debian.org/latex-beamer
+http://packages.debian.org/pgf
+http://packages.debian.org/latex-xcolor
+\end{verbatim}
+
+Debian 5.0 ``lenny'' includes \TeX\ Live 2007, and version 6.0 ``squeeze'' will include \TeX\ Live 2009. This also allows you to manually install newer versions of \beamer\ (into your local directory, see below) without having to update any other \LaTeX\ packages.
+
+Ubuntu 8.04, 9.04 and 9.10 include \TeX\ Live 2007, and version 10.04 includes \TeX\ Live 2009.
+
+
+\subsubsection{Fedora}
+
+Fedora 9, 10, 11, 12 and 13 include \TeX\ Live 2007, which includes \beamer. It can be installed by running the command ``|yum install texlive-texmf-latex|''. As with Debian, this allows you to manually install newer versions of \beamer\ into your local directory (explained below).
+
+Jindrich Novy provides \TeX\ Live 2010 |rpm| packages for Fedora 12 and 13, at
+\begin{verbatim}
+http://fedoraproject.org/wiki/Features/TeXLive
+\end{verbatim}
+Fedora 14 will contain \TeX\ Live 2010 once it's released.
+
+
+\subsection{Installation in a texmf Tree}
+
+If, for whatever reason, you do not wish to use a prebundled package, the ``right'' way to install \beamer\ is to put it in a so-called |texmf| tree. In the following, we explain how to do this.
+
+Obtain the latest source version (ending |.tar.gz| or |.zip|) of the \beamer\ package from
+\begin{verbatim}
+https://github.com/josephwright/beamer
+\end{verbatim}
+(most likely, you have already done this). Next, you also need the \textsc{pgf} package and the \textsc{xcolor} packages, which you need to install separately (see their installation instructions).
+
+The package contains a bunch of files; |beamer.cls| is one of these files and happens to be the most important one. You now need to put these files in an appropriate |texmf| tree.
+
+When you ask \TeX\ to use a certain class or package, it usually looks for the necessary files in so-called |texmf| trees. These trees are simply huge directories that contain these files. By default, \TeX\ looks for files in three different |texmf| trees:
+\begin{itemize}
+\item
+ The root |texmf| tree, which is usually located at |/usr/share/texmf/|, |/usr/local/texlive/texmf/|, |c:\texmf\|, or\\ |c:\texlive\texmf\|.
+\item
+ The local |texmf| tree, which is usually located at |/usr/local/share/texmf/|, |/usr/local/texlive/texmf-local/| |c:\localtexmf\|, or\\ |c:\texlive\texmf-local\|.
+\item
+ Your personal |texmf| tree, which is usually located in your home directory at |~/texmf/| or |~/Library/texmf/|.
+\end{itemize}
+
+You should install the packages either in the local tree or in your personal tree, depending on whether you have write access to the local tree. Installation in the root tree can cause problems, since an update of the whole \TeX\ installation will replace this whole tree.
+
+Inside whatever |texmf| directory you have chosen, create the sub-sub-sub-directory
+\begin{verbatim}
+texmf/tex/latex/beamer
+\end{verbatim}
+and place all files of the package in this directory.
+
+Finally, you need to rebuild \TeX's filename database. This is done by running the command |texhash| or |mktexlsr| (they are the same). In MiK\TeX\ package manager and \TeX\ Live |tlmgr|, there is a menu option to do this.
+
+\vskip1em
+For a more detailed explanation of the standard installation process of packages, you might wish to consult \href{http://www.ctan.org/installationadvice/}{|http://www.ctan.org/installationadvice/|}. However, note that the \beamer\ package does not come with a |.ins| file (simply skip that part).
+
+
+\subsection{Updating the Installation}
+
+To update your installation from a previous version, simply replace everything in the directory
+\begin{verbatim}
+texmf/tex/latex/beamer
+\end{verbatim}
+with the files of the new version. The easiest way to do this is to first delete the old version and then to proceed as described above.
+
+Note that if you have two versions installed, one in |texmf| and other in |texmf-local| directory, \TeX\ distribution will prefer one in |texmf-local| directory. This generally allows you to update packages manually without administrator privileges.
+
+
+\subsection{Testing the Installation}
+
+To test your installation, copy the file |generic-ornate-15min-45min.en.tex| from the directory
+\begin{verbatim}
+beamer/solutions/generic-talks
+\end{verbatim}
+to some place where you usually create presentations. Then run the command |pdflatex| several times on the file and check whether the resulting \pdf\ file looks correct. If so, you are all set.
+
+
+\input{beamerug-compatibility}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-interaction.tex b/macros/latex/contrib/beamer/doc/beamerug-interaction.tex
new file mode 100644
index 0000000000..59e40801bd
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-interaction.tex
@@ -0,0 +1,333 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2013,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Structuring a Presentation: The Interactive Global Structure}
+\label{section-nonlinear}
+
+\subsection{Adding Hyperlinks and Buttons}
+
+To create anticipated nonlinear jumps in your talk structure, you can add hyperlinks to your presentation. A hyperlink is a text (usually rendered as a button) that, when you click on it, jumps the presentation to some other slide. Creating such a button is a three-step process:
+\begin{enumerate}
+\item
+ You specify a target using the command |\hypertarget| or (easier) the command |\label|. In some cases, see below, this step may be skipped.
+\item
+ You render the button using |\beamerbutton| or a similar command. This will \emph{render} the button, but clicking it will not yet have any effect.
+\item
+ You put the button inside a |\hyperlink| command. Now clicking it will jump to the target of the link.
+\end{enumerate}
+
+\begin{command}{\hypertarget\sarg{overlay specification}\marg{target name}\marg{text}}
+ If the \meta{overlay specification} is present, the \meta{text} is the target for hyper jumps to \meta{target name} only on the specified slide. On all other slides, the text is shown normally. Note that you \emph{must} add an overlay specification to the |\hypertarget| command whenever you use it on frames that have multiple slides (otherwise |pdflatex| rightfully complains that you have defined the same target on different slides).
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \begin{itemize}
+ \item<1-> First item.
+ \item<2-> Second item.
+ \item<3-> Third item.
+ \end{itemize}
+
+ \hyperlink{jumptosecond}{\beamergotobutton{Jump to second slide}}
+ \hypertarget<2>{jumptosecond}{}
+\end{frame}
+\end{verbatim}
+
+ \articlenote
+ You must say |\usepackage[hyperref]{beamerarticle}| or |\usepackage{hyperref}| in your preamble to use this command in |article| mode.
+\end{command}
+
+The |\label| command creates a hypertarget as a side-effect and the |label=|\meta{name} option of the |\frame| command creates a label named \meta{name}|<|\meta{slide number}|>| for each slide of the frame as a side-effect. Thus the above example could be written more easily as:
+\begin{verbatim}
+\begin{frame}[label=threeitems]
+ \begin{itemize}
+ \item<1-> First item.
+ \item<2-> Second item.
+ \item<3-> Third item.
+ \end{itemize}
+
+ \hyperlink{threeitems<2>}{\beamergotobutton{Jump to second slide}}
+\end{frame}
+\end{verbatim}
+
+The following commands can be used to specify in an abstract way what a button will be used for.
+
+\begin{command}{\beamerbutton\marg{button text}}
+ Draws a button with the given \meta{button text}.
+
+ \example
+ |\hyperlink{somewhere}{\beamerbutton{Go somewhere}}|
+
+ \articlenote
+ This command (and the following) just insert their argument in |article| mode.
+
+ \begin{element}{button}\yes\yes\yes
+ When the |\beamerbutton| command is called, this template is used to render the button. Inside the template you can use the command |\insertbuttontext| to insert the argument that was passed to |\beamerbutton|.
+ \begin{templateoptions}
+ \itemoption{default}{}
+ Typesets the button with rounded corners. The fore- and background of the \beamer-color |button| are used and also the \beamer-font |button|. The border of the button gets the foreground of the \beamer-color |button border|.
+ \end{templateoptions}
+ The following inserts are useful for this element:
+ \begin{itemize}
+ \iteminsert{\insertbuttontext} inserts the text of the current button. Inside ``Goto-Buttons'' (see below) this text is prefixed by the insert |\insertgotosymbol| and similarly for skip and return buttons.
+
+ \iteminsert{\insertgotosymbol} This text is inserted at the beginning of goto buttons. Redefine this command to change the symbol.
+ \example
+ |\renewcommand{\insertgotosymbol}{\somearrowcommand}|
+
+ \iteminsert{\insertskipsymbol} This text is inserted at the beginning of skip buttons.
+
+ \iteminsert{\insertreturnsymbol} This text is inserted at the beginning of return buttons.
+ \end{itemize}
+ \end{element}
+
+ \begin{element}{button border}\no\yes\no
+ The foreground of this color is used to render the border of buttons.
+ \end{element}
+\end{command}
+
+\begin{command}{\beamergotobutton\marg{button text}}
+ Draws a button with the given \meta{button text}. Before the text, a small symbol (usually a right-pointing arrow) is inserted that indicates that pressing this button will jump to another ``area'' of the presentation.
+
+ \example
+ |\hyperlink{detour}{\beamergotobutton{Go to detour}}|
+\end{command}
+
+\begin{command}{\beamerskipbutton\marg{button text}}
+ The symbol drawn for this button is usually a double right arrow. Use this button if pressing it will skip over a well-defined part of your talk.
+
+ \example
+\begin{verbatim}
+\frame{
+ \begin{theorem}
+ ...
+ \end{theorem}
+
+ \begin{overprint}
+ \onslide<1>
+ \hfill\hyperlinkframestartnext{\beamerskipbutton{Skip proof}}
+ \onslide<2>
+ \begin{proof}
+ ...
+ \end{proof}
+ \end{overprint}
+}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\beamerreturnbutton\marg{button text}}
+ The symbol drawn for this button is usually a left-pointing arrow. Use this button if pressing it will return from a detour.
+
+ \example
+\begin{verbatim}
+\frame<1>[label=mytheorem]
+{
+ \begin{theorem}
+ ...
+ \end{theorem}
+
+ \begin{overprint}
+ \onslide<1>
+ \hfill\hyperlink{mytheorem<2>}{\beamergotobutton{Go to proof details}}
+ \onslide<2>
+ \begin{proof}
+ ...
+ \end{proof}
+ \hfill\hyperlink{mytheorem<1>}{\beamerreturnbutton{Return}}
+ \end{overprint}
+}
+\appendix
+\againframe<2>{mytheorem}
+\end{verbatim}
+\end{command}
+
+To make a button ``clickable'' you must place it in a command like |\hyperlink|. The command |\hyperlink| is a standard command of the |hyperref| package. The \beamer\ class defines a whole bunch of other hyperlink commands that you can also use.
+
+\begin{command}{\hyperlink\sarg{overlay specification}\marg{target name}\marg{link text}\sarg{overlay specification}}
+ Only one \meta{overlay specification} may be given. The \meta{link text} is typeset in the usual way. If you click anywhere on this text, you will jump to the slide on which the |\hypertarget| command was used with the parameter \meta{target name}. If an \meta{overlay specification} is present, the hyperlink (including the \meta{link text}) is completely suppressed on the non-specified slides.
+\end{command}
+
+The following commands have a predefined target; otherwise they behave exactly like |\hyperlink|. In particular, they all also accept an overlay specification and they also accept it at the end, rather than at the beginning.
+
+\begin{command}{\hyperlinkslideprev\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps one slide back.
+\end{command}
+
+\begin{command}{\hyperlinkslidenext\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps one slide forward.
+\end{command}
+
+\begin{command}{\hyperlinkframestart\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the first slide of the current frame.
+\end{command}
+
+\begin{command}{\hyperlinkframeend\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the last slide of the current frame.
+\end{command}
+
+\begin{command}{\hyperlinkframestartnext\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the first slide of the next frame.
+\end{command}
+
+\begin{command}{\hyperlinkframeendprev\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the last slide of the previous frame.
+\end{command}
+
+The previous four command exist also with ``|frame|'' replaced by ``|subsection|'' everywhere, and also again with ``|frame|'' replaced by ``|section|''.
+
+\begin{command}{\hyperlinkpresentationstart\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the first slide of the presentation.
+\end{command}
+
+\begin{command}{\hyperlinkpresentationend\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the last slide of the presentation. This \emph{excludes} the appendix.
+\end{command}
+
+\begin{command}{\hyperlinkappendixstart\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the first slide of the appendix. If there is no appendix, this will jump to the last slide of the document.
+\end{command}
+
+\begin{command}{\hyperlinkappendixend\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the last slide of the appendix.
+\end{command}
+
+\begin{command}{\hyperlinkdocumentstart\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the first slide of the presentation.
+\end{command}
+
+\begin{command}{\hyperlinkdocumentend\sarg{overlay specification}\marg{link text}}
+ Clicking the text jumps to the last slide of the presentation or, if an appendix is present, to the last slide of the appendix.
+\end{command}
+
+
+\subsection{Repeating a Frame at a Later Point}
+
+Sometimes you may wish some slides of a frame to be shown in your main talk, but wish some ``supplementary'' slides of the frame to be shown only in the appendix. In this case, the |\againframe| command is useful.
+
+\begin{command}{\againframe\sarg{overlay specification}\opt{|[<|\meta{default overlay specification}|>]|}\oarg{options}\marg{name}}
+ \beamernote
+ Resumes a frame that was previously created using |\frame| with the option |label=|\meta{name}. You must have used this option, just placing a label inside a frame ``by hand'' is not enough. You can use this command to ``continue'' a frame that has been interrupted by another frame. The effect of this command is to call the |\frame| command with the given \meta{overlay specification}, \meta{default overlay specification} (if present), and \meta{options} (if present) and with the original frame's contents.
+
+ \example
+\begin{verbatim}
+\frame<1-2>[label=myframe]
+{
+ \begin{itemize}
+ \item<alert@1> First subject.
+ \item<alert@2> Second subject.
+ \item<alert@3> Third subject.
+ \end{itemize}
+}
+
+\frame
+{
+ Some stuff explaining more on the second matter.
+}
+
+\againframe<3>{myframe}
+\end{verbatim}
+
+ The effect of the above code is to create four slides. In the first two, the items 1 and~2 are highlighted. The third slide contains the text ``Some stuff explaining more on the second matter.'' The fourth slide is identical to the first two slides, except that the third point is now highlighted.
+
+ \example
+\begin{verbatim}
+\frame<1>[label=Cantor]
+{
+ \frametitle{Main Theorem}
+
+ \begin{Theorem}
+ $\alpha < 2^\alpha$ for all ordinals~$\alpha$.
+ \end{Theorem}
+
+ \begin{overprint}
+ \onslide<1>
+ \hyperlink{Cantor<2>}{\beamergotobutton{Proof details}}
+
+ \onslide<2->
+ % this is only shown in the appendix, where this frame is resumed.
+ \begin{proof}
+ As shown by Cantor, ...
+ \end{proof}
+
+ \hfill\hyperlink{Cantor<1>}{\beamerreturnbutton{Return}}
+ \end{overprint}
+}
+
+...
+\appendix
+
+\againframe<2>{Cantor}
+\end{verbatim}
+
+ In this example, the proof details are deferred to a slide in the appendix. Hyperlinks are setup, so that one can jump to the proof and go back.
+
+ \articlenote
+ This command is ignored in |article| mode.
+
+\end{command}
+
+
+\subsection{Adding Anticipated Zooming}
+\label{section-zooming}
+
+Anticipated zooming is necessary when you have a very complicated graphic that you are not willing to simplify since, indeed, all the complex details merit an explanation. In this case, use the command |\framezoom|. It allows you to specify that clicking on a certain area of a frame should zoom out this area. You can then explain the details. Clicking on the zoomed out picture will take you back to the original one.
+
+\begin{command}{\framezoom\ssarg{button overlay specification}\ssarg{zoomed overlay specification}\oarg{options}\\|(|\meta{upper left x}|,|\meta{upper left y}|)(|\meta{zoom area width}|,|\meta{zoom area depth}|)|}
+ This command should be given somewhere at the beginning of a frame. When given, two different things will happen, depending on whether the \meta{button overlay specification} applies to the current slide of the frame or whether the \meta{zoomed overlay specification} applies. These overlay specifications should not overlap.
+
+ If the \meta{button overlay specification} applies, a clickable area is created inside the frame. The size of this area is given by \meta{zoom area width} and \meta{zoom area depth}, which are two normal \TeX\ dimensions (like |1cm| or |20pt|). The upper left corner of this area is given by \meta{upper left x} and \meta{upper left y}, which are also \TeX\ dimensions. They are measures \emph{relative to the place where the first normal text of a frame would go}. Thus, the location |(0pt,0pt)| is at the beginning of the normal text (which excludes the headline and also the frame title).
+
+ By default, the button is clickable, but it will not be indicated in any special way. You can draw a border around the button by using the following \meta{option}:
+ \begin{itemize}
+ \item
+ \declare{|border|}\opt{|=|\meta{width in pixels}} will draw a border around the specified button area. The default width is 1 pixel. The color of this button is the |linkbordercolor| of |hyperref|. \beamer\ sets this color to a 50\% gray by default.\newline
+ To change this, you can use the command |\hypersetup{linkbordercolor={|\meta{red}| |\meta{green}| |\meta{blue}|}}|, where \meta{red}, \meta{green}, and \meta{blue} are values between 0 and 1.
+ \end{itemize}
+
+ When you press the button created in this way, the viewer application will hyperjump to the first of the frames specified by the \meta{zoomed overlay specification}. For the slides to which this overlay specification applies, the following happens:
+
+ The exact same area as the one specified before is ``zoomed out'' to fill the whole normal text area of the frame. Everything else, including the sidebars, the headlines and footlines, and even the frame title retain their normal size. The zooming is performed in such a way that the whole specified area is completely shown. The aspect ratio is kept correct and the zoomed area will possibly show more than just the specified area if the aspect ratio of this area and the aspect ratio of the available text area do not agree.
+
+ Behind the whole text area (which contains the zoomed area) a big invisible ``Back'' button is put. Thus clicking anywhere on the text area will jump back to the original (unzoomed) picture.
+
+ You can specify several zoom areas for a single frame. In this case, you should specify different \meta{zoomed overlay specification}, but you can specify the same \meta{button overlay specification}. You cannot nest zoomings in the sense that you cannot have a zoom button on a slide that is in some \meta{zoomed overlay specification}. However, you can have overlapping and even nested \meta{button overlay specification}. When clicking on an area that belongs to several buttons, the one given last will ``win'' (it should hence be the smallest one).
+
+ If you do not wish to have the frame title shown on a zoomed slide, you can add an overlay specification to the |\frametitle| command that simply suppresses the title for the slide. Also, by using the |plain| option, you can have the zoomed slide fill the whole page.
+
+ \example
+ A simple case
+\begin{verbatim}
+\begin{frame}
+ \frametitle{A Complicated Picture}
+
+ \framezoom<1><2>(0cm,0cm)(2cm,1.5cm)
+ \framezoom<1><3>(1cm,3cm)(2cm,1.5cm)
+ \framezoom<1><4>(3cm,2cm)(3cm,2cm)
+
+ \pgfimage[height=8cm]{complicatedimagefilename}
+\end{frame}
+\end{verbatim}
+
+ \example
+ A more complicate case in which the zoomed parts completely fill the frames.
+\begin{verbatim}
+\begin{frame}<1>[label=zooms]
+ \frametitle<1>{A Complicated Picture}
+
+ \framezoom<1><2>[border](0cm,0cm)(2cm,1.5cm)
+ \framezoom<1><3>[border](1cm,3cm)(2cm,1.5cm)
+ \framezoom<1><4>[border](3cm,2cm)(3cm,2cm)
+
+ \pgfimage[height=8cm]{complicatedimagefilename}
+\end{frame}
+\againframe<2->[plain]{zooms}
+\end{verbatim}
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-introduction.tex b/macros/latex/contrib/beamer/doc/beamerug-introduction.tex
new file mode 100644
index 0000000000..9a5f278941
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-introduction.tex
@@ -0,0 +1,170 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Introduction}
+
+\beamer\ is a \LaTeX\ class for creating presentations that are held using a projector, but it can also be used to create transparency slides. Preparing presentations with \beamer\ is different from preparing them with \textsc{wysiwyg} programs like OpenOffice.org Impress, Apple Keynote, KOffice KPresenter or Microsoft PowerPoint. A \beamer\ presentation is created like any other \LaTeX\ document: It has a preamble and a body, the body contains |\section|s and |\subsection|s, the different slides (called \emph{frames} in \beamer) are put in environments, they are structured using |itemize| and |enumerate| environments, and so on. The obvious disadvantage of this approach is that you have to know \LaTeX\ in order to use \beamer. The advantage is that if you know \LaTeX, you can use your knowledge of \LaTeX\ also when creating a presentation, not only when writing papers.
+
+
+\subsection{Main Features}
+
+The list of features supported by \beamer\ is quite long (unfortunately, so is presumably the list of bugs supported by \beamer). The most important features, in our opinion, are:
+\begin{itemize}
+\item
+ You can use \beamer\ with |pdflatex|, |latex|+|dvips|, |lualatex| and |xelatex|. |latex|+|dvipdfm| isn't supported (but we accept patches!).
+\item
+ The standard commands of \LaTeX\ still work. A |\tableofcontents| will still create a table of contents, |\section| is still used to create structure, and |itemize| still creates a list.
+\item
+ You can easily create overlays and dynamic effects.
+\item
+ Themes allow you to change the appearance of your presentation to suit your purposes.
+\item
+ The themes are designed to be usable in practice, they are not just for show. You will not find such nonsense as a green body text on a picture of a green meadow.
+\item
+ The layout, the colors, and the fonts used in a presentation can easily be changed globally, but you still also have control over the most minute detail.
+\item
+ A special style file allows you to use the \LaTeX-source of a presentation directly in other \LaTeX\ classes like |article| or |book|. This makes it easy to create presentations out of lecture notes or lecture notes out of presentations.
+\item
+ The final output is typically a \textsc{pdf}-file. Viewer applications for this format exist for virtually every platform. When bringing your presentation to a conference on a memory stick, you do not have to worry about which version of the presentation program might be installed there. Also, your presentation is going to look exactly the way it looked on your computer.
+\end{itemize}
+
+
+\subsection{History}
+
+Till Tantau created \beamer\ mainly in his spare time. Many other people have helped by sending him emails containing suggestions for improvement or corrections or patches or whole new themes (by now, this amounts to over a thousand emails concerning \beamer). Indeed, most of the development was only initiated by feature requests and bug reports. Without this feedback, \beamer\ would still be what it was originally intended to be: a small private collection of macros that make using the |seminar| class easier. Till created the first version of \beamer\ for his PhD defense presentation in February 2003. A month later, he put the package on \textsc{ctan} at the request of some colleagues. After that, things somehow got out of hand.
+
+After being unmaintained since 2007, in April 2010 Till handed over the maintenance to Joseph Wright and Vedran Mileti\'c, who are still maintaining it: improving code, fixing bugs, adding new features and helping users.
+
+
+\subsection{Acknowledgments}
+
+Till Tantau: \emph{``Where to begin? \beamer's development depends not only on me, but on the feedback I get from other people. Many features have been implemented because someone requested them and I thought that these features would be nice to have and reasonably easy to implement. Other people have given valuable feedback on themes, on the user's guide, on features of the class, on the internals of the implementation, on special \LaTeX\ features, and on life in general. A small selection of these people includes (in no particular order and I have surely forgotten to name lots of people who really, really deserve being in this list): Carsten (for everything), Birgit (for being the first person to use \beamer\ besides me), Tux (for his silent criticism), Rolf Niepraschk (for showing me how to program \LaTeX\ correctly), Claudio Beccari (for writing part of the documentation on font encodings), Thomas Baumann (for the emacs stuff), Stefan M\"uller (for not loosing hope), Uwe Kern (for \textsc{xcolor}),
+Hendri Adriaens (for \textsc{ha-prosper}), Ohura Makoto (for spotting typos). People who have contributed to the themes include Paul Gomme, Manuel Carro, and Marlon R\'egis Schmitz.''}
+
+Joseph Wright: \emph{``Thanks to Till Tantau for the huge development effort in creating \beamer. Sincere thanks to Vedran Mileti\'c for taking the lead in continuing development.''}
+
+Vedran Mileti\'c: \emph{``First, I would like to thank Karl Berry and Sanda Buja\v ci\'c for encouragement, without which I wouldn't ever be anything but a \LaTeX\ user. I would also like to thank Ana Me\v strovi\'c, my colleague, who was excited by the prospect of using \beamer\ for preparing class material; Ivona Frankovi\'c and Marina Rajnovi\'c, my students at Department of Informatics, who were the first to hear about \LaTeX, \beamer\ and how it can help in preparing class material. I would like to thank Heiko Oberdiek (for \textsc{hyperref}), Johannes Braams (for \textsc{babel}) and Philipp Lehman (for \textsc{biblatex}). Above all, I owe a lot to Till Tantau for developing \beamer\ in the first place and to Joseph Wright for developing \textsc{siunitx} and for helping me develop \beamer\ further.''}
+
+
+\subsection{How to Read this User's Guide}
+
+You should start with the first part. If you have not yet installed the package, please read Section~\ref{section-installation} first. If you are new to \beamer, you should next read the tutorial in Section~\ref{section-tutorial}. When you sit down to create your first real presentation using \beamer, read Section~\ref{section-workflow} where the technical details of a possible workflow are discussed. If you are still new to creating presentations in general, you might find Section~\ref{section-guidelines} helpful, where many guidelines are given on what to do and what not to do. Finally, you should browse through Section~\ref{section-solutions}, where you will find ready-to-use solution templates for creating talks, possibly even in the language you intend to use.
+
+The second part of this user's guide goes into the details of all the commands defined in \beamer, but it also addresses other technical issues having to do with creating presentations (like how to include graphics or animations).
+
+The third part explains how you can change the appearance of your presentation easily either using themes or by specifying colors or fonts for specific elements of a presentation (like, say, the font used for the numbers in an enumeration).
+
+The fourth part talks about handouts and lecture notes, so called ``support material''. You will frequently have create some kind of support material to give to your audience during the talk or after it, and this part will explain how to do it using the same source that you created your presentation from.
+
+The last part contains ``howtos,'' which are explanations of how to get certain things done using \beamer.
+
+\medskip
+\noindent
+This user's guide contains descriptions of all ``public'' commands, environments, and concepts defined by the \beamer-class. The following examples show how things are documented. As a general rule, red text is \emph{defined}, green text is \emph{optional}, blue text indicates special mode considerations.
+
+\begingroup
+\noindexing
+\begin{command}{\somebeamercommand\oarg{optional arguments}\marg{first argument}\marg{second argument}}
+ Here you will find the explanation of what the command |\somebeamercommand| does. The green argument(s) is optional. The command of this example takes two parameters.
+
+ \example
+ |\somebeamercommand[opt]{my arg}{xxx}|
+\end{command}
+
+\begin{environment}{{somebeamerenvironment}\oarg{optional arguments}\marg{first argument}}
+ Here you will find the explanation of the effect of the environment |somebeamerenvironment|. As with commands, the green arguments are optional.
+
+ \example
+\begin{verbatim}
+\begin{somebeamerenvironment}{Argument}
+ Some text.
+\end{somebeamerenvironment}
+\end{verbatim}
+\end{environment}
+
+\begin{element}{some beamer element}\yes\yes\yes
+ Here you will find an explanation of the template, color, and/or font |some beamer element|. A ``\beamer-element'' is a concept that is explained in more detail in Section~\ref{section-elements}. Roughly speaking, an \emph{element} is a part of a presentation that is potentially typeset in some special way. Examples of elements are frame titles, the author's name, or the footnote sign. For most elements there exists a \emph{template}, see Section~\ref{section-elements} once more, and also a \beamer-color and a \beamer-font.
+
+ For each element, it is indicated whether a template, a \beamer-color, and/or a \beamer-font of the name |some beamer element| exist. Typically, all three exist and are employed together when the element needs to be typeset, that is, when the template is inserted the \beamer-color and -font are installed first. However, sometimes templates do not have a color or font associated with them (like parent templates). Also, there exist \beamer-colors and -fonts that do not have an underlying template.
+
+ Using and changing templates is explained in Section~\ref{section-templates}. Here is the essence: To change a template, you can say
+\begin{verbatim}
+\setbeamertemplate{some beamer element}{your definition for this template}
+\end{verbatim}
+
+ Unfortunately, it is not quite trivial to come up with a good definition for some templates. Fortunately, there are often \emph{predefined options} for a template. These are indicated like this:
+ \begin{itemize}
+ \itemoption{square}{}
+ causes a small square to be used to render the template.
+ \itemoption{circle}{\marg{radius}}
+ causes circles of the given radius to be used to render the template.
+ \end{itemize}
+
+ You can install such a predefined option like this:
+\begin{verbatim}
+\setbeamertemplate{some beamer element}[square]
+%% Now squares are used
+
+\setbeamertemplate{some beamer element}[circle]{3pt}
+%% Now a circle is used
+\end{verbatim}
+
+ \beamer-colors are explained in Section~\ref{section-colors}. Here is the essence: To change the foreground of the color to, say, red, use
+\begin{verbatim}
+\setbeamercolor{some beamer element}{fg=red}
+\end{verbatim}
+
+ To change the background to, say, black, use:
+\begin{verbatim}
+\setbeamercolor{some beamer element}{bg=black}
+\end{verbatim}
+
+ You can also change them together using |fg=red,bg=black|. The background will not always be ``honoured,'' since it is difficult to show a colored background correctly and an extra effort must be made by the templates (while the foreground color is usually used automatically).
+
+ \beamer-fonts are explained in Section~\ref{section-fonts}. Here is the essence: To change the size of the font to, say, large, use:
+\begin{verbatim}
+\setbeamerfont{some beamer element}{size=\large}
+\end{verbatim}
+
+ In addition to the size, you can use things like |series=\bfseries| to set the series, |shape=\itshape| to change the shape, |family=\sffamily| to change the family, and you can use them in conjunction. Add a star to the command to first ``reset'' the font.
+\end{element}
+
+\beamernote
+As next to this paragraph, you will sometimes find the word \textsc{presentation} in blue next to some paragraph. This means that the paragraph applies only when you ``normally typeset your presentation using \LaTeX\ or pdf\LaTeX.''
+
+\articlenote
+Opposed to this, a paragraph with \textsc{article} next to it describes some behavior that is special for the |article| mode. This special mode is used to create lecture notes out of a presentation (the two can coexist in one file).
+
+\endgroup
+
+
+\subsection{Getting Help}
+
+When you need help with \beamer, please do the following:
+\begin{enumerate}
+\item
+ Read the user guide, at least the part that has to do with your problem.
+\item
+ If that does not solve the problem, try searching \href{http://tex.stackexchange.com}{TeX-sx (\texttt{tex.stackexchange.com})}.
+ Perhaps someone has already reported a similar problem and someone has found a solution.
+\item
+ If you find no answers there, or if you are sure you have found a bug in
+ \beamer{}, please report it \emph{via} \href{https://github.com/josephwright/beamer/issues}{\texttt{github.com/josephwright/beamer/issues}}.
+\item
+ Before you file a bug report, especially a bug report concerning the installation, make sure that this is really a bug. In particular, have a look at the |.log| file that results when you \TeX\ your files. This |.log| file should show that all the right files are loaded from the right directories. Nearly all installation problems can be resolved by looking at the |.log| file.
+
+ If you can, before reporting the bug, retest using latest version of \beamer\ with latest version of \TeX\ Live. This can help isolate bugs from other packages that might affect \beamer.
+\item
+ \emph{As a last resort} you can try emailing authors. We do not mind getting emails, we simply get way too many of them. Because of this, we cannot guarantee that your emails will be answered timely or even at all. Reporting
+an issue is usually a better approach as they don't get lost.
+\end{enumerate}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-license.tex b/macros/latex/contrib/beamer/doc/beamerug-license.tex
new file mode 100644
index 0000000000..c3f3eff396
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-license.tex
@@ -0,0 +1,345 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Licenses and Copyright}
+\label{section-license}
+
+\subsection{Which License Applies?}
+
+Different parts of the \beamer\ package are distributed under different licenses:
+\begin{enumerate}
+\item
+ The \emph{code} of the package is dual-license. This means that you can decide which license you wish to use when using the \beamer\ package. The two options are:
+ \begin{enumerate}
+ \item
+ You can use the \textsc{gnu} General Public License, Version 2 or any later version published by the Free Software Foundation.
+ \item
+ You can use the \LaTeX\ Project Public License, version 1.3c or (at your option) any later version.
+ \end{enumerate}
+\item
+ The \emph{documentation} of the package is also dual-license. Again, you can choose between two options:
+ \begin{enumerate}
+ \item
+ You can use the \textsc{gnu} Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation.
+ \item
+ You can use the \LaTeX\ Project Public License, version 1.3c or (at your option) any later version.
+ \end{enumerate}
+\end{enumerate}
+
+The ``documentation of the package'' refers to all files in the subdirectory |doc| of the \beamer\ package. A detailed listing can be found in the file |doc/licenses/manifest-documentation.txt|. All files in other directories are part of the ``code of the package.'' A detailed listing can be found in the file |doc/licenses/manifest-code.txt|.
+
+In the rest of this section, the licenses are presented. The following text is copyrighted, see the plain text versions of these licenses in the directory |doc/licenses| for details.
+
+
+\subsection{The GNU General Public License, Version 2}
+
+\subsubsection{Preamble}
+
+The licenses for most software are designed to take away your freedom to share and change it. By contrast, the \textsc{gnu} General Public License is intended to guarantee your freedom to share and change free software---to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the \textsc{gnu} Library General Public License instead.) You can apply it to your programs, too.
+
+When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
+
+To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
+
+For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
+
+We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
+
+Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
+
+Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
+
+The precise terms and conditions for copying, distribution and modification follow.
+
+\subsubsection{Terms and Conditions For Copying, Distribution and Modification}
+
+\begin{enumerate}
+\addtocounter{enumi}{-1}
+\item
+ This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The ``Program'', below, refers to any such program or work, and a ``work based on the Program'' means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term ``modification''.) Each licensee is addressed as ``you''.
+
+ Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.
+\item
+ You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.
+
+ You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
+\item
+ You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
+ \begin{enumerate}
+ \item
+ You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.
+ \item
+ You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
+ \item
+ If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)
+ \end{enumerate}
+
+ These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
+
+ Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.
+
+ In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.
+\item
+ You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
+ \begin{enumerate}
+ \item
+ Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
+ \item
+ Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
+ \item
+ Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsubsection b above.)
+ \end{enumerate}
+
+ The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
+
+ If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.
+\item
+ You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
+\item
+ You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.
+\item
+ Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
+\item
+ If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
+
+ If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
+
+ It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
+
+ This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
+\item
+ If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
+\item
+ The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and ``any later version'', you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.
+\item
+ If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.
+\end{enumerate}
+
+\subsubsection{No Warranty}
+
+\begin{enumerate}
+\addtocounter{enumi}{9}
+\item
+ Because the program is licensed free of charge, there is no warranty for the program, to the extent permitted by applicable law. Except when otherwise stated in writing the copyright holders and/or other parties provide the program ``as is'' without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. Should the program prove defective, you assume the cost of all necessary servicing, repair or correction.
+\item
+ In no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who may modify and/or redistribute the program as permitted above, be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if such holder or other party has been advised of the possibility of such damages.
+\end{enumerate}
+
+
+\subsection{The GNU Free Documentation License, Version 1.3, 3 November 2008}
+\label{label_fdl}
+
+
+ \begin{quote}
+ \textbf{Copyright \copyright 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.}
+
+ \url{http://fsf.org/}
+
+ Everyone is allowed to distribute verbatim copies of this license document, but modification of it is not allowed.
+ \end{quote}
+
+\subsubsection{Preamble}
+
+The purpose of this License is to make a manual, textbook, or other functional and useful document ``free'' in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
+
+This License is a kind of ``copyleft'', which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
+
+We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
+
+\subsubsection{Applicability and definitions}
+
+This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The \textbf{``Document''}, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as \textbf{``you''}. You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.
+
+A \textbf{``Modified Version''} of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
+
+A \textbf{``Secondary Section''} is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
+
+The \textbf{``Invariant Sections''} are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.
+
+The \textbf{``Cover Texts''} are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.
+
+A \textbf{``Transparent''} copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not ``Transparent'' is called \textbf{``Opaque''}.
+
+Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.
+
+The \textbf{``Title Page''} means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, ``Title Page'' means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
+
+The \textbf{``publisher''} means any person or entity that distributes copies of the Document to the public.
+
+A section \textbf{``Entitled XYZ''} means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as \textbf{``Acknowledgements''}, \textbf{``Dedications''}, \textbf{``Endorsements''}, or \textbf{``History''}.) To \textbf{``Preserve the Title''} of such a section when you modify the Document means that it remains a section ``Entitled XYZ'' according to this definition.
+
+The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
+
+\subsubsection{Verbatim Copying}
+
+You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
+
+You may also lend copies, under the same conditions stated above, and you may publicly display copies.
+
+\subsubsection{Copying in Quantity}
+
+If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
+
+If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
+
+If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
+
+It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
+
+\subsubsection{Modifications}
+
+You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
+
+\begin{itemize}
+\item[A.]
+ Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
+
+\item[B.]
+ List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
+
+\item[C.]
+ State on the Title page the name of the publisher of the Modified Version, as the publisher.
+
+\item[D.]
+ Preserve all the copyright notices of the Document.
+
+\item[E.]
+ Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
+
+\item[F.]
+ Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
+
+\item[G.]
+ Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.
+
+\item[H.]
+ Include an unaltered copy of this License.
+
+\item[I.]
+ Preserve the section Entitled ``History'', Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled ``History'' in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
+
+\item[J.]
+ Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the ``History'' section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
+
+\item[K.]
+ For any section Entitled ``Acknowledgements'' or ``Dedications'', Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
+
+\item[L.]
+ Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
+
+\item[M.]
+ Delete any section Entitled ``Endorsements''. Such a section may not be included in the Modified Version.
+
+\item[N.]
+ Do not retitle any existing section to be Entitled ``Endorsements'' or to conflict in title with any Invariant Section.
+
+\item[O.]
+ Preserve any Warranty Disclaimers.
+\end{itemize}
+
+If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
+
+You may add a section Entitled ``Endorsements'', provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
+
+You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
+
+The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
+
+\subsubsection{Combining Documents}
+
+You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.
+
+The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
+
+In the combination, you must combine any sections Entitled ``History'' in the various original documents, forming one section Entitled ``History''; likewise combine any sections Entitled ``Acknowledgements'', and any sections Entitled ``Dedications''. You must delete all sections Entitled ``Endorsements''.
+
+\subsubsection{Collection of Documents}
+
+You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
+
+You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
+
+\subsubsection{Aggregating with Independent Works}
+
+A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an ``aggregate'' if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
+
+If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.
+
+\subsubsection{Translation}
+
+Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.
+
+If a section in the Document is Entitled ``Acknowledgements'', ``Dedications'', or ``History'', the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.
+
+\subsubsection{Termination}
+
+You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License.
+
+However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally
+terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
+
+Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
+
+Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it.
+
+\subsubsection{Future Revisions of this License}
+
+The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
+
+Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License ``or any later version'' applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this
+License can be used, that proxy’s public statement of acceptance of a version permanently authorizes you to choose that version for the Document.
+
+\subsubsection{Relicensing}
+
+``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A ``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the site means any set of copyrightable works thus published on the MMC site.
+
+``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization.
+
+``Incorporate'' means to publish or republish a Document, in whole or in part, as part of another Document.
+
+An MMC is ``eligible for relicensing'' if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008.
+
+The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing.
+
+\subsubsection{Addendum: How to use this License for your documents}
+
+To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
+
+\bigskip
+\begin{quote}
+ Copyright \copyright \textsc{year your name}.
+
+ Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''.
+\end{quote}
+\bigskip
+
+If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the ``with \dots\ Texts.'' line with this:
+
+\bigskip
+\begin{quote}
+ with the Invariant Sections being \textsc{list their titles}, with the Front-Cover Texts being \textsc{list}, and with the Back-Cover Texts being \textsc{list}.
+\end{quote}
+\bigskip
+
+If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.
+
+If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
+
+
+\providecommand{\LPPLsection}{\subsection}
+\providecommand{\LPPLsubsection}{\subsubsection}
+\providecommand{\LPPLsubsubsection}{\subsubsection}
+\providecommand{\LPPLparagraph}{\paragraph}
+
+
+\input{lppl}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex b/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
new file mode 100644
index 0000000000..e08211badd
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
@@ -0,0 +1,1167 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Structuring a Presentation: The Local Structure}
+
+\LaTeX\ provides different commands for structuring text ``locally,'' for example, via the |itemize| environment. These environments are also available in the \beamer\ class, although their appearance has been slightly changed. Furthermore, the \beamer\ class also defines some new commands and environments, see below, that may help you to structure your text.
+
+
+\subsection{Itemizations, Enumerations, and Descriptions}
+\label{section-enumerate}
+
+There are three predefined environments for creating lists, namely |enumerate|, |itemize|, and |description|. The first two can be nested to depth three, but nesting them to this depth creates totally unreadable slides.
+
+The |\item| command is overlay specification-aware. If an overlay specification is provided, the item will only be shown on the specified slides, see the following example. If the |\item| command is to take an optional argument and an overlay specification, the overlay specification can either come first as in |\item<1>[Cat]| or come last as in |\item[Cat]<1>|.
+\begin{verbatim}
+\begin{frame}
+ There are three important points:
+ \begin{enumerate}
+ \item<1-> A first one,
+ \item<2-> a second one with a bunch of subpoints,
+ \begin{itemize}
+ \item first subpoint. (Only shown from second slide on!).
+ \item<3-> second subpoint added on third slide.
+ \item<4-> third subpoint added on fourth slide.
+ \end{itemize}
+ \item<5-> and a third one.
+ \end{enumerate}
+\end{frame}
+\end{verbatim}
+
+\begin{environment}{{itemize}\opt{|[<|\meta{default overlay specification}|>]|}}
+ Used to display a list of items that do not have a special ordering. Inside the environment, use an |\item| command for each topic.
+
+ If the optional parameter \meta{default overlay specification} is given, in every occurrence of an |\item| command that does not have an overlay specification attached to it, the \meta{default overlay specification} is used. By setting this specification to be an incremental overlay specification, see Section~\ref{section-incremental}, you can implement, for example, a step-wise uncovering of the items. The \meta{default overlay specification} is inherited by subenvironments. Naturally, in a subenvironment you can reset it locally by setting it to |<1->|.
+ \example
+\begin{verbatim}
+\begin{itemize}
+\item This is important.
+\item This is also important.
+\end{itemize}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\begin{itemize}[<+->]
+\item This is shown from the first slide on.
+\item This is shown from the second slide on.
+\item This is shown from the third slide on.
+\item<1-> This is shown from the first slide on.
+\item This is shown from the fourth slide on.
+\end{itemize}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\begin{itemize}[<+-| alert@+>]
+\item This is shown from the first slide on and alerted on the first slide.
+\item This is shown from the second slide on and alerted on the second slide.
+\item This is shown from the third slide on and alerted on the third slide.
+\end{itemize}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\newenvironment{mystepwiseitemize}{\begin{itemize}[<+-| alert@+>]}{\end{itemize}}
+\end{verbatim}
+
+ The appearance of an |itemize| list is governed by several templates. The first template concerns the way the little marker introducing each item is typeset:
+ \begin{element}{itemize items}\semiyes\no\no
+ This template is a parent template, whose children are |itemize item|, |itemize subitem|, and |itemize subsubitem|. This means that if you use the |\setbeamertemplate| command on this template, the command is instead called for all of these children (with the same arguments).
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default item marker is a small triangle colored with the foreground of the \beamer-color |itemize item| (or, for subitems, |itemize subitem| etc.). Note that these colors will automatically change under certain circumstances such as inside an example block or inside an |alertenv| environment.
+ \itemoption{triangle}{}
+ Alias for the default.
+ \itemoption{circle}{}
+ Uses little circles (or dots) as item markers.
+ \itemoption{square}{}
+ Uses little squares as item markers.
+ \itemoption{ball}{}
+ Uses little balls as item markers.
+ \end{templateoptions}
+ \end{element}
+
+ \begin{element}{itemize item}\yes\yes\yes
+ \colorfontparents{item}
+ This template (with |item| instead of |items|) governs how the marker in front of a first-level item is typeset. ``First-level'' refers to the level of nesting. See the |itemize items| template for the \meta{options} that may be given.
+
+ When the template is inserted, the \beamer-font and -color |itemize item| is installed. Typically, the font is ignored by the template as some special symbol is drawn anyway, by the font may be important if an optional argument is given to the |\item| command as in |\item[First]|.
+
+ The font and color inherit from the |item| font and color, which are explained at the end of this section.
+ \end{element}
+
+ \begin{element}{itemize subitem}\yes\yes\yes
+ \colorfontparents{subitem}
+ Like |itemize item|, only for second-level items. An item of an itemize inside an enumerate counts as a second-level item.
+ \end{element}
+
+ \begin{element}{itemize subsubitem}\yes\yes\yes
+ \colorfontparents{subsubitem}
+ Like |itemize item|, only for third-level items.
+ \end{element}
+\end{environment}
+
+\begin{environment}{{enumerate}\opt{|[<|\meta{default overlay specification}|>]|}\oarg{mini template}}
+ Used to display a list of items that are ordered. Inside the environment, use an |\item| command for each topic. By default, before each item increasing Arabic numbers followed by a dot are printed (as in ``1.'' and ``2.''). This can be changed by specifying a different template, see below.
+
+ The first optional argument \meta{default overlay specification} has exactly the same effect as for the |itemize| environment. It is ``detected'' by the opening |<|-sign in the \meta{default overlay specification}. Thus, if there is only one optional argument and if this argument does not start with |<|, then it is considered to be a \meta{mini template}.
+
+ The syntax of the \meta{mini template} is the same as the syntax of mini templates in the |enumerate| package (you do not need to include the |enumerate| package, this is done automatically). Roughly spoken, the text of the \meta{mini template} is printed before each item, but any occurrence of a |1| in the mini template is replaced by the current item number, an occurrence of the letter |A| is replaced by the $i$-th letter of the alphabet (in uppercase) for the $i$-th item, and the letters |a|, |i|, and |I| are replaced by the corresponding lowercase letters, lowercase Roman letters, and uppercase Roman letters, respectively. So the mini template |(i)| would yield the items (i), (ii), (iii), (iv), and so on. The mini template |A.)| would yield the items A.), B.), C.), D.) and so on. For more details on the possible mini templates, see the documentation of the |enumerate| package. Note that there is also a template that governs the appearance of the mini template.
+
+ \example
+\begin{verbatim}
+\begin{enumerate}
+\item This is important.
+\item This is also important.
+\end{enumerate}
+
+\begin{enumerate}[(i)]
+\item First Roman point.
+\item Second Roman point.
+\end{enumerate}
+
+\begin{enumerate}[<+->][(i)]
+\item First Roman point.
+\item Second Roman point, uncovered on second slide.
+\end{enumerate}
+\end{verbatim}
+
+ \articlenote
+ To use the \meta{mini template}, you have to include the package |enumerate|.
+
+ \begin{element}{enumerate items}\semiyes\no\no
+ Similar to |itemize items|, this template is a parent template, whose children are |enumerate item|, |enumerate subitem|, |enumerate subsubitem|, and |enumerate mini template|. These templates govern how the text (the number) of an enumeration is typeset.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default enumeration marker uses the scheme 1., 2., 3.\ for the first level, 1.1, 1.2, 1.3 for the second level and 1.1.1, 1.1.2, 1.1.3 for the third level.
+ \itemoption{circle}{}
+ Places the numbers inside little circles. The colors are taken from |item projected| or |subitem projected| or |subsubitem projected|.
+ \itemoption{square}{}
+ Places the numbers on little squares.
+ \itemoption{ball}{}
+ ``Projects'' the numbers onto little balls.
+ \end{templateoptions}
+ \end{element}
+
+ \begin{element}{enumerate item}\yes\yes\yes
+ This template governs how the number in front of a first-level item is typeset. The level here refers to the level of enumeration nesting only. Thus an enumerate inside an itemize is a first-level enumerate (but it uses the second-level |itemize/enumerate body|).
+
+ When the template is inserted, the \beamer-font and -color |enumerate item| are installed.
+
+ The following command is useful for this template:
+ \begin{templateinserts}
+ \iteminsert{\insertenumlabel}
+ inserts the current number of the top-level enumeration (as an Arabic number). This insert is also available in the next two templates.
+ \end{templateinserts}
+ \end{element}
+
+ \begin{element}{enumerate subitem}\yes\yes\yes
+ Like |enumerate item|, only for second-level items.
+
+ \begin{templateinserts}
+ \iteminsert{\insertsubenumlabel}
+ inserts the current number of the second-level enumeration (as an Arabic number).
+ \end{templateinserts}
+
+ \example
+\begin{verbatim}
+\setbeamertemplate{enumerate subitem}{\insertenumlabel-\insertsubenumlabel}
+\end{verbatim}
+ \end{element}
+
+ \begin{element}{enumerate subsubitem}\yes\yes\yes
+ Like |enumerate item|, only for third-level items.
+
+ \begin{templateinserts}
+ \iteminsert{\insertsubsubenumlabel}
+ inserts the current number of the second-level enumeration (as an Arabic number).
+ \end{templateinserts}
+ \end{element}
+
+ \begin{element}{enumerate mini template}\yes\yes\yes
+ This template is used to typeset the number that arises from a mini template.
+
+ \begin{templateinserts}
+ \iteminsert{\insertenumlabel}
+ inserts the current number rendered by this mini template. For example, if the \meta{mini template} is |(i)| and this command is used in the fourth item, |\insertenumlabel| would yield |(iv)|.
+ \end{templateinserts}
+ \end{element}
+\end{environment}
+
+The following templates govern how the \emph{body} of an |itemize| or an |enumerate| is typeset.
+\begin{element}{itemize/enumerate body begin}\yes\no\no
+ This template is inserted at the beginning of a first-level |itemize| or |enumerate| environment. Furthermore, before this template is inserted, the \beamer-font and -color |itemize/enumerate body| is used.
+\end{element}
+\begin{element}{itemize/enumerate body end}\yes\no\no
+ This template is inserted at the end of a first-level |itemize| or |enumerate| environment.
+\end{element}
+There exist corresponding templates like |itemize/enumerate subbody begin| for second- and third-level itemize or enumerates.
+
+\begin{element}{items}\semiyes\no\no
+ This template is a parent template of |itemize items| and |enumerate items|.
+ \example
+ |\setbeamertemplate{items}[circle]| will cause all items in |itemize| or |enumerate| environments to become circles (of the appropriate size, color, and font).
+\end{element}
+
+\label{section-descriptions}
+
+\begin{environment}{{description}\opt{|[<|\meta{default overlay specification}|>]|}\oarg{long text}}
+ Like |itemize|, but used to display a list that explains or defines labels. The width of \meta{long text} is used to set the indentation. Normally, you choose the widest label in the description and copy it here. If you do not give this argument, the default width is used, which can be changed using |\setbeamersize| with the argument |description width=|\meta{width}.
+
+ As for |enumerate|, the \meta{default overlay specification} is detected by an opening~|<|. The effect is the same as for |enumerate| and |itemize|.
+ \example
+\begin{verbatim}
+\begin{description}
+\item[Lion] King of the savanna.
+\item[Tiger] King of the jungle.
+\end{description}
+
+\begin{description}[longest label]
+\item<1->[short] Some text.
+\item<2->[longest label] Some text.
+\item<3->[long label] Some text.
+\end{description}
+\end{verbatim}
+
+ \example
+ The following has the same effect as the previous example:
+\begin{verbatim}
+\begin{description}[<+->][longest label]
+\item[short] Some text.
+\item[longest label] Some text.
+\item[long label] Some text.
+\end{description}
+\end{verbatim}
+
+ \begin{element}{description item}\yes\yes\yes
+ This template is used to typeset the description items. When this template is called, the \beamer-font and -color |description item| are installed.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ By default, the description item text is just inserted without any modification.
+ \end{templateoptions}
+
+ The main insert that is useful inside this template is:
+ \begin{templateinserts}
+ \iteminsert{\insertdescriptionitem} inserts the text of the current description item.
+ \end{templateinserts}
+ \end{element}
+
+ \begin{element}{description body begin}\yes\no\no
+ This template is inserted at the beginning of a |description| environment. Furthermore, before this template is inserted, the \beamer-font and -color |description body| is used.
+ \end{element}
+
+ \begin{element}{description body end}\yes\no\no
+ This template is inserted at the end of a |description| environment.
+ \end{element}
+\end{environment}
+
+In order to simplify changing the color or font of items, the different kinds of items inherit from or just use the following ``general'' \beamer-color and fonts:
+
+\begin{element}{item}\no\yes\yes
+ \colorparents{local structure}
+ \fontparents{structure}
+
+ This color/font serves as a parent for the individual items of |itemize| and |enumerate| environments, but also for items in the table of contents. Since its color parent is the |local structure|, a change of that color causes the color of items to change accordingly.
+\end{element}
+
+\begin{element}{item projected}\no\yes\yes
+ \colorfontparents{item}
+
+ This is a special ``version'' of the |item| color and font that should be used by templates that render items with text (as in an enumeration) and which ``project'' this text onto something like a ball or a square or whatever. While the normal |item| color typically has a transparent background, the |item projected| typically has a colored background and, say, a white foreground.
+\end{element}
+
+\begin{element}{subitem}\no\yes\yes
+ \colorfontparents{item}
+ Same as |item| for subitems, that is, for items on the second level of indentation.
+\end{element}
+
+\begin{element}{subitem projected}\no\yes\yes
+ \colorfontparents{item projected}
+ Same as |item projected| for subitems, that is, for items on the second level of indentation.
+\end{element}
+
+\begin{element}{subsubitem}\no\yes\yes
+ \colorfontparents{subitem}
+ Same as |subitem| for subsubitems, that is, for items on the third level of indentation.
+\end{element}
+
+\begin{element}{subsubitem projected}\no\yes\yes
+ \colorfontparents{subitem projected}
+ Same as |subitem projected| for subsubitems, that is, for items on the third level of indentation.
+\end{element}
+
+
+\subsection{Highlighting}
+
+The \beamer\ class predefines commands and environments for highlighting text. Using these commands makes it easy to change the appearance of a document by changing the theme.
+
+\begin{command}{\structure\sarg{overlay specification}\marg{text}}
+ The given text is marked as part of the structure, that is, it is supposed to help the audience see the structure of your presentation. If the \meta{overlay specification} is present, the command only has an effect on the specified slides.
+ \example
+ |\structure{Paragraph Heading.}|
+
+ Internally, this command just puts the \emph{text} inside a |structureenv| environment.
+
+ \articlenote
+ Structure text is typeset as bold text. This can be changed by modifying the templates.
+
+ \begin{element}{structure}\no\yes\yes
+ This color/font is used when structured text is typeset, but it is also widely used as a base for many other colors including the headings of blocks, item buttons, and titles. In most color themes, the colors for navigational elements in the headline or the footline are derived from the foreground color of |structure|. By changing the structure color you can easily change the ``basic color'' of your presentation, other than the color of normal text. See also the related color |local structure| and the related font |tiny structure|.
+
+ Inside the |\structure| command, the background of the color is ignored, but this is not necessarily true for elements that inherit their color from |structure|. There is no template |structure|, use |structure begin| and |structure end| instead.
+ \end{element}
+
+ \begin{element}{local structure}\no\yes\no
+ This color should be used to typeset structural elements that change their color according to the ``local environment.'' For example, an item ``button'' in an |itemize| environment changes its color according to circumstances. If it is used inside an example block, it should have the |example text| color; if it is currently ``alerted'' it should have the |alerted text| color. This color is setup by certain environments to have the color that should be used to typeset things like item buttons. Since the color used for items, |item|, inherits from this color by default, items automatically change their color according to the current situation.
+
+ If you write your own environment in which the item buttons and similar structural elements should have a different color, you should change the color |local structure| inside these environments.
+ \end{element}
+
+ \begin{element}{tiny structure}\no\no\yes
+ This special font is used for ``tiny'' structural text. Basically, this font should be used whenever a structural element uses a tiny font. The idea is that the tiny versions of the |structure| font often are not suitable. For example, it is often necessary to use a boldface version for them. Also, one might wish to have serif smallcaps structural text, but still retain normal sans-serif tiny structural text.
+ \end{element}
+\end{command}
+
+\begin{environment}{{structureenv}\sarg{overlay specification}}
+ Environment version of the |\structure| command.
+
+ \begin{element}{structure begin}\yes\no\no
+ This text is inserted at the beginning of a |structureenv| environment.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+
+ \articlenote
+ The text is typeset in boldface.
+ \end{templateoptions}
+ \end{element}
+
+ \begin{element}{structure end}\yes\no\no
+ This text is inserted at the end of a |structureenv| environment.
+ \end{element}
+\end{environment}
+
+
+\begin{command}{\alert\sarg{overlay specification}\marg{highlighted text}}
+ The given text is highlighted, typically by coloring the text red. If the \meta{overlay specification} is present, the command only has an effect on the specified slides.
+ \example
+ |This is \alert{important}.|
+
+ Internally, this command just puts the \emph{highlighted text} inside an |alertenv|.
+
+ \articlenote
+ Alerted text is typeset as emphasized text. This can be changed by modifying the templates, see below.
+
+ \begin{element}{alerted text}\no\yes\yes
+ This color/font is used when alerted text is typeset. The background is currently ignored. There is no template |alerted text|, rather there are templates |alerted text begin| and |alerted text end| that are inserted before and after alerted text.
+ \end{element}
+\end{command}
+
+\begin{environment}{{alertenv}\sarg{overlay specification}}
+ Environment version of the |\alert| command.
+
+ \begin{element}{alerted text begin}\yes\no\no
+ This text is inserted at the beginning of a an |alertenv| environment.
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+
+ \beamernote
+ This changes the color |local structure| to |alerted text|. This causes things like buttons or items to be colored in the same color as the alerted text, which is often visually pleasing. See also the |\structure| command.
+
+ \articlenote
+ The text is emphasized.
+ \end{templateoptions}
+ \end{element}
+
+ \begin{element}{alerted text end}\yes\no\no
+ This text is inserted at the end of an |alertenv| environment.
+ \end{element}
+\end{environment}
+
+
+\subsection{Block Environments}
+\label{predefined}
+
+The \beamer\ class predefines an environment for typesetting a ``block'' of text that has a heading. The appearance of blocks can easily be changed using the following template:
+
+\begin{element}{blocks}\semiyes\no\no
+ Changing this parent template changes the templates of normal blocks, alerted blocks, and example blocks.
+
+ \example
+ |\setbeamertemplate{blocks}[default]|
+ \example
+ |\setbeamertemplate{blocks}[rounded][shadow=true]|
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default setting typesets the block title on its own line. If a background is specified either for the |block title| or for the |block body|, this background color is used as background of the title or body, respectively. For alerted and example blocks, the corresponding \beamer-colors and -fonts are used, instead.
+ \itemoption{rounded}{\oarg{shadow=true}}
+ Makes the blocks ``rounded.'' This means that the corners of the backgrounds of the blocks are ``rounded off.'' If the |shadow=true| option is given, a ``shadow'' is drawn behind the block.
+ \end{templateoptions}
+\end{element}
+
+
+\begin{environment}{{block}\sarg{action specification}\marg{block title}\sarg{action specification}}
+ Only one \meta{action specification} may be given. Inserts a block, like a definition or a theorem, with the title \meta{block title}. If the \meta{action specification} is present, the given actions are taken on the specified slides, see Section~\ref{section-action-specifications}. In the example, the definition is shown only from slide 3 onward.
+ \example
+\begin{verbatim}
+ \begin{block}<3->{Definition}
+ A \alert{set} consists of elements.
+ \end{block}
+\end{verbatim}
+
+ \articlenote
+ The block name is typeset in bold.
+
+ \begin{element}{block begin}\yes\no\no
+ This template is inserted at the beginning of a block before the \meta{environment contents}. Inside this template, the block title can be accessed via the following insert:
+ \begin{itemize}
+ \iteminsert{\insertblocktitle}
+ Inserts the \meta{block title} into the template.
+ \end{itemize}
+
+ When the template starts, no special color or font is installed (for somewhat complicated reasons). Thus, this template should install the correct colors and fonts for the title and the body itself.
+ \end{element}
+
+ \begin{element}{block end}\yes\no\no
+ This template is inserted at the end of a block.
+ \end{element}
+
+ \begin{element}{block title}\no\yes\yes
+ This \beamer-color/-font should be used to typeset the title of the block. Since neither the color nor the font are setup automatically, the template |block begin| must do so itself.
+
+ The default block template and also the |rounded| version honor the background of this color.
+ \end{element}
+
+ \begin{element}{block body}\no\yes\yes
+ This \beamer-color/-font should be used to typeset the body of the block, that is, the \meta{environment contents}. As for |block title|, the color and font must be setup by the template |block begin|.
+ \end{element}
+\end{environment}
+
+\begin{environment}{{alertblock}\sarg{action specification}\marg{block
+title}\sarg{action specification}}
+ Inserts a block whose title is highlighting. Behaves like the |block| environment otherwise.
+ \example
+\begin{verbatim}
+ \begin{alertblock}{Wrong Theorem}
+ $1=2$.
+ \end{alertblock}
+\end{verbatim}
+
+ \articlenote
+ The block name is typeset in bold and is emphasized.
+
+ \begin{element}{block alerted begin}\yes\no\no
+ Same applies as for normal blocks.
+ \end{element}
+
+ \begin{element}{block alerted end}\yes\no\no
+ Same applies as for normal blocks.
+ \end{element}
+
+ \begin{element}{block title alerted}\no\yes\yes
+ Same applies as for normal blocks.
+ \end{element}
+
+ \begin{element}{block body alerted}\no\yes\yes
+ Same applies as for normal blocks.
+ \end{element}
+\end{environment}
+
+\begin{environment}{{exampleblock}\sarg{action specification}\marg{block title}\sarg{overlay specification}}
+ Inserts a block that is supposed to be an example. Behaves like the |block| environment otherwise.
+
+ \example
+ In the following example, the block is completely suppressed on the first slide (it does not even occupy any space).
+\begin{verbatim}
+ \begin{exampleblock}{Example}<only@2->
+ The set $\{1,2,3,5\}$ has four elements.
+ \end{exampleblock}
+\end{verbatim}
+
+ \articlenote
+ The block name is typeset in italics.
+
+ \begin{element}{block example begin}\yes\no\no
+ Same applies as for normal blocks.
+ \end{element}
+
+ \begin{element}{block example end}\yes\no\no
+ Same applies as for normal blocks.
+ \end{element}
+
+ \begin{element}{block title example}\no\yes\yes
+ Same applies as for normal blocks.
+ \end{element}
+
+ \begin{element}{block body example}\no\yes\yes
+ Same applies as for normal blocks.
+ \end{element}
+\end{environment}
+
+
+\subsection{Theorem Environments}
+\label{section-theorems}
+
+The \beamer\ class predefines several environments, like |theorem| or |definition| or |proof|, that you can use to typeset things like, well, theorems, definitions, or proofs. The complete list is the following: |theorem|, |corollary|, |definition|, |definitions|, |fact|, |example|, and |examples|. The following German block environments are also predefined: |Problem|, |Loesung|, |Definition|, |Satz|, |Beweis|, |Folgerung|, |Lemma|, |Fakt|, |Beispiel|, and |Beispiele|.
+
+Here is a typical example on how to use them:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{A Theorem on Infinite Sets}
+
+ \begin{theorem}<1->
+ There exists an infinite set.
+ \end{theorem}
+
+ \begin{proof}<2->
+ This follows from the axiom of infinity.
+ \end{proof}
+
+ \begin{example}<3->[Natural Numbers]
+ The set of natural numbers is infinite.
+ \end{example}
+\end{frame}
+\end{verbatim}
+
+In the following, only the English versions are discussed. The German ones behave analogously.
+
+\begin{environment}{{theorem}\sarg{action specification}\oarg{additional text}\sarg{action specification}}
+ Inserts a theorem. Only one \meta{action specification} may be given. If present, the \meta{additional text} is shown behind the word ``Theorem'' in rounded brackets (although this can be changed by the template).
+
+ The appearance of the theorem is governed by the templates |theorem begin| and |theorem end|, see their description later on for details on how to change these. Every theorem is put into a |block| environment, thus the templates for blocks also apply.
+
+ The theorem style (a concept from |amsthm|) used for this environment is |plain|. In this style, the body of a theorem should be typeset in italics. The head of the theorem should be typeset in a bold font, but this is usually overruled by the templates.
+
+ If the option |envcountsect| is given either as class option in one of the |presentation| modes or as an option to the package |beamerarticle| in |article| mode, then the numbering of the theorems is local to each section with the section number prefixing the theorem number; otherwise they are numbered consecutively throughout the presentation or article. We recommend using this option in |article| mode.
+
+ By default, no theorem numbers are shown in the |presentation| modes.
+
+ \example
+\begin{verbatim}
+\begin{theorem}[Kummer, 1992]
+ If $\#^_A^n$ is $n$-enumerable, then $A$ is recursive.
+\end{theorem}
+
+\begin{theorem}<2->[Tantau, 2002]
+ If $\#_A^2$ is $2$-fa-enumerable, then $A$ is regular.
+\end{theorem}
+\end{verbatim}
+
+\end{environment}
+
+The environments \declare{|corollary|}, \declare{|fact|}, and \declare{|lemma|} behave exactly the same way.
+
+\begin{classoption}{envcountsect}
+ Causes theorems, definitions, and so on to be numbered locally to each section. Thus, the first theorem of the second section would be Theorem~2.1 (assuming that there are no definitions, lemmas, or corollaries earlier in the section).
+\end{classoption}
+
+\begin{environment}{{definition}\sarg{action specification}\oarg{additional text}\sarg{action specification}}
+ Behaves like the |theorem| environment, except that the theorem style |definition| is used. In this style, the body of a theorem is typeset in an upright font.
+\end{environment}
+
+The environment \declare{|definitions|} behaves exactly the same way.
+
+\begin{environment}{{example}\sarg{action specification}\oarg{additional text}\sarg{action specification}}
+ Behaves like the |theorem| environment, except that the theorem style |example| is used. A side-effect of using this theorem style is that the \meta{environment contents} is put in an |exampleblock| instead of a |block|.
+\end{environment}
+
+The environment \declare{|examples|} behaves exactly the same way.
+
+\beamernote
+The default template for typesetting theorems suppresses the theorem number, even if this number is ``available'' for typesetting (which it is by default in all predefined environments; but if you define your own environment using |\newtheorem*| no number will be available).
+
+\articlenote
+In |article| mode, theorems are automatically numbered. By specifying the class option |envcountsect|, theorems will be numbered locally to each section, which is usually a good idea, except for very short articles.
+
+\begin{environment}{{proof}\sarg{action specification}\oarg{proof name}\sarg{action specification}}
+ Typesets a proof. If the optional \meta{proof name} is given, it completely replaces the word ``Proof.'' This is different from normal theorems, where the optional argument is shown in brackets.
+
+ At the end of the theorem, a |\qed| symbol is shown, except if you say |\qedhere| earlier in the proof (this is exactly as in |amsthm|). The default |\qed| symbol is an open circle. To completely suppress the symbol, write |\def\qedsymbol{}| in your preamble. To get a closed square, say
+\begin{verbatim}
+\setbeamertemplate{qed symbol}{\vrule width1.5ex height1.5ex depth0pt}
+\end{verbatim}
+
+ If you use |babel| and a different language, the text ``Proof'' is replaced by whatever is appropriate in the selected language.
+
+ \example
+\begin{verbatim}
+\begin{proof}<2->[Sketch of proof]
+ Suppose ...
+\end{proof}
+\end{verbatim}
+
+ \begin{element}{qed symbol}\yes\yes\yes
+ The symbol is shown at the end of every proof.
+ \end{element}
+\end{environment}
+
+You can define new environments using the following command:
+
+\begin{command}{\newtheorem\opt{|*|}\marg{environment name}\oarg{numbered same as}\marg{head text}\oarg{number within}}
+ This command is used exactly the same way as in the |amsthm| package (as a matter of fact, it is the command from that package), see its documentation. The only difference is that environments declared using this command are overlay specification-aware in \beamer\ and that, when typeset, are typeset according to \beamer's templates.
+
+ \articlenote
+ Environments declared using this command are also overlay specification-aware in |article| mode.
+
+ \example
+ |\newtheorem{observation}[theorem]{Observation}|
+\end{command}
+
+You can also use |amsthm|'s command |\newtheoremstyle| to define new theorem styles. Note that the default template for theorems will ignore any head font setting, but will honor the body font setting.
+
+If you wish to define the environments like |theorem| differently (for example, have it numbered within each subsection), you can use the following class option to disable the definition of the predefined environments:
+
+\begin{classoption}{notheorems}
+ Switches off the definition of default blocks like |theorem|, but still loads |amsthm| and makes theorems overlay specification-aware.
+\end{classoption}
+
+The option is also available as a package option for |beamerarticle| and has the same effect.
+
+\articlenote
+In the |article| version, the package |amsthm| sometimes clashes with the document class. In this case you can use the following option, which is once more available as a class option for \beamer\ and as a package option for |beamerarticle|, to switch off the loading of |amsthm| altogether.
+
+\begin{classoption}{noamsthm}
+ Does not load |amsthm| and also not |amsmath|. Environments like |theorem| or |proof| will not be available.
+\end{classoption}
+
+\begin{classoption}{noamssymb}
+ Does not load |amssymb|. This option is mainly intended for users who are loading specialist font packages. Note that |\blacktriangleright| needs to be defined if |itemize| environments are in use.
+\end{classoption}
+
+
+\begin{element}{theorems}\semiyes\no\no
+ This template is a parent of |theorem begin| and |theorem end|, see the first for a detailed discussion of how the theorem templates are set.
+
+ \example
+ |\setbeamertemplate{theorems}[numbered]|
+
+ \begin{templateoptions}
+ \itemoption{default}{}
+ By default, theorems are typeset as follows: The font specification for the body is honored, the font specification for the head is ignored. No theorem number is printed.
+ \itemoption{normal font}{}
+ Like the default, except all font specifications for the body are ignored. Thus, the fonts are used that are normally used for blocks.
+ \itemoption{numbered}{}
+ This option is like the default, except that the theorem number is printed for environments that are numbered.
+ \itemoption{ams style}{}
+ This causes theorems to be put in a |block| or |exampleblock|, but to be otherwise typeset as is normally done in |amsthm|. Thus the head font and body font depend on the setting for the theorem to be typeset and theorems are numbered.
+ \end{templateoptions}
+\end{element}
+
+
+\begin{element}{theorem begin}\yes\no\no
+ Whenever an environment declared using the command |\newtheorem| is to be typeset, this template is inserted at the beginning and the template |theorem end| at the end. If there is an overlay specification when an environment like |theorem| is used, this overlay specification will directly follow the \meta{block beginning template} upon invocation. This is even true if there was an optional argument to the |theorem| environment. This optional argument is available via the insert |\inserttheoremaddition|.
+
+ Numerous inserts are available in this template, see below.
+
+ Before the template starts, the font is set to the body font prescribed by the environment to be typeset.
+
+ \example
+ The following typesets theorems like |amsthm|:
+\begin{verbatim}
+\setbeamertemplate{theorem begin}
+{%
+ \begin{\inserttheoremblockenv}
+ {%
+ \inserttheoremheadfont
+ \inserttheoremname
+ \inserttheoremnumber
+ \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi%
+ \inserttheorempunctuation
+ }%
+}
+\setbeamertemplate{theorem end}{\end{\inserttheoremblockenv}}
+\end{verbatim}
+
+ \example
+ In the following example, all font ``suggestions'' for the environment are suppressed or ignored; and the theorem number is suppressed.
+\begin{verbatim}
+\setbeamertemplate{theorem begin}
+{%
+ \normalfont% ignore body font
+ \begin{\inserttheoremblockenv}
+ {%
+ \inserttheoremname
+ \ifx\inserttheoremaddition\@empty\else\ (\inserttheoremaddition)\fi%
+ }%
+}
+\setbeamertemplate{theorem end}{\end{\inserttheoremblockenv}}
+\end{verbatim}
+
+ The following inserts are available inside this template:
+ \begin{itemize}
+ \iteminsert{\inserttheoremblockenv}
+ This will normally expand to |block|, but if a theorem that has theorem style |example| is typeset, it will expand to |exampleblock|. Thus you can use this insert to decide which environment should be used when typesetting the theorem.
+
+ \iteminsert{\inserttheoremheadfont}
+ This will expand to a font changing command that switches to the font to be used in the head of the theorem. By not inserting it, you can ignore the head font.
+
+ \iteminsert{\inserttheoremname}
+ This will expand to the name of the environment to be typeset (like ``Theorem'' or ``Corollary'').
+
+ \iteminsert{\inserttheoremnumber}
+ This will expand to the number of the current theorem preceded by a space or to nothing, if the current theorem does not have a number.
+
+ \iteminsert{\inserttheoremaddition}
+ This will expand to the optional argument given to the environment or will be empty, if there was no optional argument.
+
+ \iteminsert{\inserttheorempunctuation}
+ This will expand to the punctuation character for the current environment. This is usually a period.
+ \end{itemize}
+\end{element}
+
+\begin{element}{theorem end}\yes\no\no
+ Inserted at the end of a theorem.
+\end{element}
+
+\begin{element}{proof begin}\yes\no\no
+ Inserted at the beginning of a |proof| environment. This template behaves like a normal |block begin| template by default.
+
+ \begin{itemize}
+ \iteminsert{\insertproofname}
+ This will expand to the proof name, followed by a period most of the time.
+ \end{itemize}
+\end{element}
+
+\begin{element}{proof end}\yes\no\no
+ Inserted at the end of a |proof| environment.
+\end{element}
+
+\subsection{Framed and Boxed Text}
+
+In order to draw a frame (a rectangle) around some text, you can use \LaTeX s standard command |\fbox| and also |\frame| (inside a \beamer\ frame, the |\frame| command changes its meaning to the normal \LaTeX\ |\frame| command). More frame types are offered by the package |fancybox|, which defines the following commands: |\shadowbox|, |\doublebox|, |\ovalbox|, and |\Ovalbox|. Please consult the \LaTeX\ Companion for details on how to use these commands.
+
+The \beamer\ class also defines two environments for creating colored boxes.
+
+\begin{environment}{{beamercolorbox}\oarg{options}\marg{beamer color}}
+ This environment can be used to conveniently typeset some text using some \beamer-color. Basically, the following two command blocks do the same:
+\begin{verbatim}
+\begin{beamercolorbox}{beamer color}
+ Text
+\end{beamercolorbox}
+
+{
+ \usebeamercolor{beamer color}
+ \colorbox{bg}{
+ \color{fg}
+ Text
+ }
+}
+\end{verbatim}
+
+ In other words, the environment installs the \meta{beamer color} and uses the background for the background of the box and the foreground for the text inside the box. However, in reality, numerous \meta{options} can be given to specify in much greater detail how the box is rendered.
+
+ If the background color of \meta{beamer color} is empty, no background is drawn behind the text, that is, the background is ``transparent.''
+
+ This command is used extensively by the default inner and outer themes for typesetting the headlines and footlines. It is not really intended to be used in normal frames (for example, it is not available inside |article| mode). You should prefer using structuring elements like blocks or theorems that automatically insert colored boxes as needed.
+
+ \example
+ The following example could be used to typeset a headline with two lines, the first showing the document title, the second showing the author's name:
+\begin{verbatim}
+\begin{beamercolorbox}[ht=2.5ex,dp=1ex,center]{title in head/foot}
+ \usebeamerfont{title in head/foot}
+ \insertshorttitle
+\end{beamercolorbox}%
+\begin{beamercolorbox}[ht=2.5ex,dp=1ex,center]{author in head/foot}
+ \usebeamerfont{author in head/foot}
+ \insertshortauthor
+\end{beamercolorbox}
+\end{verbatim}
+
+ \example
+ Typesetting a postit:
+\begin{verbatim}
+\setbeamercolor{postit}{fg=black,bg=yellow}
+\begin{beamercolorbox}[sep=1em,wd=5cm]{postit}
+ Place me somewhere!
+\end{beamercolorbox}
+\end{verbatim}
+
+ The following \meta{options} can be given:
+ \begin{itemize}
+ \item
+ \declare{|wd=|\marg{width}} sets the width of the box. This command has two effects: First, \TeX's |\hsize| is set to \meta{width}. Second, after the box has been typeset, its width is set to \meta{width} (no matter what it actually turned out to be). Since setting the |\hsize| does not automatically change some of \LaTeX's linewidth dimensions, you should consider using a minipage inside this environment if you fool around with the width.
+
+ If the width is larger than the normal text width, as specified by the value of |\textwidth|, the width of the resulting box is reset to the width |\textwidth|, but intelligent negative skips are inserted at the left and right end of the box. The net effect of this is that you can use a width larger than the text width for a box and can insert the resulting box directly into normal text without getting annoying warnings and having the box positioned sensibly.
+ \item
+ \declare{|dp=|\marg{depth}} sets the depth of the box, overriding the real depth of the box. The box is first typeset normally, then the depth is changed afterwards. This option is useful for creating boxes that have guaranteed size.
+
+ If the option is not given, the box has its ``natural'' depth, which results from the typesetting. For example, a box containing only the letter ``a'' will have a different depth from a box containing only the letter ``g.''
+ \item
+ \declare{|ht=|\meta{height}} sets the height of the box, overriding the real height. Note that the ``height'' does not include the depth (see, for example, the \TeX-book for details). If you want a one-line box that always has the same size, setting the height to 2.25ex and the depth to 1ex is usually a good option.
+ \item
+ \declare{|left|} causes the text inside the box to be typeset left-aligned and with a (radically) ragged right border. This is the default. To get a better ragged right border, use the |rightskip| option. Note that this will override any |leftskip| or |rightskip| setting.
+ \item
+ \declare{|right|} causes the text to be right-aligned with a (radically) ragged left border. Note that this will override any |leftskip| or |rightskip| setting.
+ \item
+ \declare{|center|} centers the text inside the box. Note that this will override any |leftskip| or |rightskip| setting.
+ \item
+ \declare{|leftskip=|\meta{left skip}} installs the \meta{left skip} inside the box as the left skip. \TeX's left skip is a glue that is inserted at the left end of every line. See the \TeX-book for details. Note that this will override any |left|, |center| or |right| setting.
+ \item
+ \declare{|rightskip=|\meta{right skip}} install the \meta{right skip}. To get a good ragged right border, try, say, |\rightskip=0pt plus 4em|. Note that this will override any |left|, |center| or |right| setting.
+ \item
+ \declare{|sep=|\meta{dimension}} sets the size of extra space around the text. This space is added ``inside the box,'' which means that if you specify a |sep| of 1cm and insert the box normally into the vertical list, then the left border of the box will be aligned with the left border of the slide text, while the left border of the text inside the box will be 1cm to the right of this left border. Likewise, the text inside the box will stop 1cm before the right border of the normal text.
+ \item
+ \declare{|colsep=|\meta{dimension}} sets the extra ``color separation space'' around the text. This space behaves the same way as the space added by |sep|, only this space is only inserted if the box has a colored background, that is, if the background of the \meta{beamer color} is not empty. This command can be used together with |sep|, the effects accumulate.
+ \item
+ \declare{|colsep*=|\meta{dimension}} sets an extra color separation space around the text that is \emph{horizontally outside the box}. This means that if the box has a background, this background will protrude by \meta{dimension} to the left and right of the text, but this protruding background will not be taken into consideration by \TeX\ for typesetting purposes.
+
+ A typical example usage of this option arises when you insert a box with a colored background in the middle of normal text. In this case, if the background color is set, you would like a background to be drawn behind the text \emph{and} you would like a certain extra space around this text (the background should not stop immediately at the borders of the text, this looks silly) \emph{and} you would like the normal text always to be at the same horizontal position, independently of whether a background is present or not. In this case, using |colsep*=4pt| is a good option.
+ \item
+ \declare{|shadow|}\opt{|=|\meta{true or false}} draws a shadow behind the box. Currently, this option only has an effect if used together with the |rounded| option, but that may change.
+ \item
+ \declare{|rounded|}\opt{|=|\meta{true or false}} causes the borders of the box to be rounded off if there is a background installed. This command internally calls |beamerboxesrounded|. In this case, |colsep*| option will have no effect.
+ \item
+ \declare{|ignorebg|} causes the background color of the \meta{beamer color} to be ignored, that is, to be treated as if it were set to ``transparent'' or ``empty.''
+ \item
+ \declare{|vmode|} causes \TeX\ to be in vertical mode when the box starts. Normally, \TeX\ will be in horizontal mode at the start of the box (a |\leavevmode| is inserted automatically at the beginning of the box unless this option is given). Only \TeX perts need this option, so, if you use it, you will probably know what you are doing anyway.
+ \end{itemize}
+\end{environment}
+
+\begin{environment}{{beamerboxesrounded}\oarg{options}\marg{head}}
+ The text inside the environment is framed by a rectangular area with rounded corners. For the large rectangular area, the \beamer-color specified with the |lower| option is used. Its background is used for the background, its foreground for the foreground. If the \meta{head} is not empty, \meta{head} is drawn in the upper part of the box using the \beamer-color specified with the |upper| option for the fore- and background. The following options can be given:
+ \begin{itemize}
+ \item
+ \declare{|lower=|\meta{beamer color}} sets the \beamer-color to be used for the lower (main) part of the box. Its background is used for the background, its foreground for the foreground of the main part of the box. If either is empty, the current background or foreground is used. The box will never be transparent.
+ \item
+ \declare{|upper=|\meta{beamer color}} sets the \beamer-color used for the upper (head) part of the box. It is only used if the \meta{head} is not empty.
+ \item
+ \declare{|width=|\meta{dimension}} causes the width of the text inside the box to be the specified \meta{dimension}. By default, the |\textwidth| is used. Note that the box will protrude 4pt to the left and right.
+ \item
+ \declare{|shadow=|\meta{true or false}}. If set to |true|, a shadow will be drawn.
+ \end{itemize}
+ If no \meta{head} is given, the head part is completely suppressed.
+ \example
+\begin{verbatim}
+\begin{beamerboxesrounded}[upper=block head,lower=block body,shadow=true]{Theorem}
+ $A = B$.
+\end{beamerboxesrounded}
+\end{verbatim}
+
+ \articlenote
+ This environment is not available in |article| mode.
+\end{environment}
+
+
+\subsection{Figures and Tables}
+
+You can use the standard \LaTeX\ environments |figure| and |table| much the same way you would normally use them. However, any placement specification will be ignored. Figures and tables are immediately inserted where the environments start. If there are too many of them to fit on the frame, you must manually split them among additional frames or use the |allowframebreaks| option.
+
+\example
+\begin{verbatim}
+\begin{frame}
+ \begin{figure}
+ \pgfuseimage{myfigure}
+ \caption{This caption is placed below the figure.}
+ \end{figure}
+
+ \begin{figure}
+ \caption{This caption is placed above the figure.}
+ \pgfuseimage{myotherfigure}
+ \end{figure}
+\end{frame}
+\end{verbatim}
+
+\begin{element}{caption}\yes\yes\yes
+ This template is used to render the caption.
+ \begin{templateoptions}
+ \itemoption{default}{}
+ typesets the caption name (a word like ``Figure'' or ``Abbildung'' or ``Table,'' depending on whether a table or figure is typeset and depending on the currently installed language) before the caption text. No number is printed, since these make little sense in a normal presentation.
+ \itemoption{numbered}{}
+ adds the figure or table number to the caption. Use this option only if your audience has a printed handout or printed lecture notes that follow the same numbering.
+ \itemoption{caption name own line}{}
+ As the name suggests, this options puts the caption name (like ``Figure'') on its own line.
+ \end{templateoptions}
+
+ Inside the template, you can use the following inserts:
+ \begin{itemize}
+ \iteminsert{\insertcaption}
+ Inserts the text of the current caption.
+
+ \iteminsert{\insertcaptionname}
+ Inserts the name of the current caption. This word is either ``Table'' or ``Figure'' or, if the |babel| package is used, some translation thereof.
+
+ \iteminsert{\insertcaptionnumber}
+ Inserts the number of the current figure or table.
+ \end{itemize}
+\end{element}
+
+\begin{element}{caption name}\no\yes\yes
+ These \beamer-color and -font are used to typeset the caption name (a word like ``Figure''). The |caption| template must directly ``use'' them, they are not installed automatically by the |\insertcaptionname| command.
+\end{element}
+
+\begin{element}{caption label separator}\yes\no\no
+ This template is inserted between caption name and caption text.
+ \begin{templateoptions}
+ \itemoption{default}{}
+ Typesets the colon followed by the space.
+ \itemoption{none}{}
+ Typesets no separator.
+ \itemoption{colon}{}
+ Alias for the default.
+ \itemoption{period}{}
+ Typesets the period followed by the space.
+ \itemoption{space}{}
+ Typesets the space.
+ \itemoption{quad}{}
+ Typesets the |\quad| followed by the space.
+ \itemoption{endash}{}
+ Typesets the en-dash surrounded by spaces (| -- |).
+ \end{templateoptions}
+\end{element}
+
+
+\subsection{Splitting a Frame into Multiple Columns}
+
+The \beamer\ class offers several commands and environments for splitting (perhaps only part of) a frame into multiple columns. These commands have nothing to do with \LaTeX's commands for creating columns. Columns are especially useful for placing a graphic next to a description/explanation.
+
+The main environment for creating columns is called |columns|. Inside this environment, you can either place several |column| environments, each of which creates a new column, or use the |\column| command to create new columns.
+
+\begin{environment}{{columns}\oarg{options}}
+ A multi-column area. Inside the environment you should place only |column| environments or |\column| commands (see below). The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|b|} will cause the bottom lines of the columns to be vertically aligned.
+ \item
+ \declare{|c|} will cause the columns to be centered vertically relative to each other. Default, unless the global option |t| is used.
+ \item
+ \declare{|onlytextwidth|} is the same as |totalwidth=\textwidth|.
+ \item
+ \declare{|t|} will cause the first lines of the columns to be aligned. Default if global option |t| is used.
+ \item
+ \declare{|T|} is similar to the |t| option, but |T| aligns the tops of the first lines while |t| aligns the so-called baselines of the first lines. If strange things seem to happen in conjunction with the |t| option (for example if a graphic suddenly ``drops down'' with the |t| option instead of ``going up,''), try using this option instead.
+ \item
+ \declare{|totalwidth=|\meta{width}} will cause the columns to occupy not the whole page width, but only \meta{width}, all told.
+ Note that this means that any margins are ignored.
+ \end{itemize}
+
+ \example
+\begin{verbatim}
+\begin{columns}[t]
+ \begin{column}{5cm}
+ Two\\lines.
+ \end{column}
+ \begin{column}{5cm}
+ One line (but aligned).
+ \end{column}
+\end{columns}
+\end{verbatim}
+
+ \example
+\begin{verbatim}
+\begin{columns}[t]
+ \column{5cm}
+ Two\\lines.
+
+ \column[T]{5cm}
+ \includegraphics[height=3cm]{mygraphic.jpg}
+\end{columns}
+\end{verbatim}
+
+ \articlenote
+ This environment is ignored in |article| mode.
+
+\end{environment}
+
+To create a column, you can either use the |column| environment or the |\column| command.
+
+\begin{environment}{{column}\oarg{placement}\marg{column width}}
+ Creates a single column of width \meta{column width}. The vertical placement of the enclosing |columns| environment can be overruled by specifying a specific \meta{placement} (|t| and |T| for the two top modes, |c| for centered, and |b| for bottom).
+
+ \example
+ The following code has the same effect as the above examples:
+\begin{verbatim}
+\begin{columns}
+ \begin{column}[t]{5cm}
+ Two\\lines.
+ \end{column}
+ \begin{column}[t]{5cm}
+ One line (but aligned).
+ \end{column}
+\end{columns}
+\end{verbatim}
+
+ \articlenote
+ This command is ignored in |article| mode.
+
+\end{environment}
+
+\begin{command}{{\column}\oarg{placement}\marg{column width}}
+ Starts a single column. The parameters and options are the same as for the |column| environment. The column automatically ends with the next occurrence of |\column| or of a |column| environment or of the end of the current |columns| environment.
+
+ \example
+\begin{verbatim}
+\begin{columns}
+ \column[t]{5cm}
+ Two\\lines.
+ \column[t]{5cm}
+ One line (but aligned).
+\end{columns}
+\end{verbatim}
+
+ \articlenote
+ This command is ignored in |article| mode.
+
+\end{command}
+
+
+\subsection{Positioning Text and Graphics Absolutely}
+
+Normally, \beamer\ uses \TeX's normal typesetting mechanism to position text and graphics on the page. In certain situation you may instead wish a certain text or graphic to appear at a page position that is specified \emph{absolutely}. This means that the position is specified relative to the upper left corner of the slide.
+
+The package |textpos| provides several commands for positioning text absolutely and it works together with \beamer. When using this package, you will typically have to specify the options |overlay| and perhaps |absolute|. For details on how to use the package, please see its documentation.
+
+
+\subsection{Verbatim and Fragile Text}
+
+If you wish to use a |{verbatim}| environment in a frame, you have to add the option |[fragile]| to the |{frame}| environment. The |\end{frame}| must be alone on a single line (except for any leading whitespace). Using this option will cause the frame contents to be written to an external file and then read back. See the description of the |{frame}| environment for more details.
+
+You must also use the |[fragile]| option for frames that include any ``fragile'' text, which is any text that is not ``interpreted the way text is usually interpreted by \TeX.'' For example, if you use a package that (locally) redefined the meaning of, say, the character |&|, you must use this option.
+
+Inside |{verbatim}| environments you obviously cannot use commands like |\alert<2>| to highlight part of code since the text is written in, well, verbatim. There are several good packages like |alltt| or |listings| that allow you to circumvent this problem. For simple cases, the following environment can be used, which is defined by \beamer:
+
+\begin{environment}{{semiverbatim}}
+ The text inside this environment is typeset like verbatim text. However, the characters |\|, |{|, and |}| retain their meaning. Thus, you can say things like
+\begin{verbatim}
+\alert<1->{std::cout << "AT&T likes 100% performance";}
+\end{verbatim}
+
+ To typeset the three characters |\|, |{|, and |}| you can use the commands |\\| (which is redefined inside this environment---you do not need it anyway), |\{|, and |\}|. Thus in order to get typeset ``|\alert<1>{X}|'' you can write |\\alert<1>\{X\}|.
+\end{environment}
+
+
+\subsection{Abstract}
+
+The |{abstract}| environment is overlay specification-aware in \beamer:
+
+\begin{environment}{{abstract}\sarg{action specification}}
+ You can use this environment to typeset an abstract.
+
+ \begin{element}{abstract}\no\yes\yes
+ These \beamer-color and -font are used to typeset the abstract. If a background color is set, this background color is used as background for the whole abstract by default.
+ \end{element}
+
+ \begin{element}{abstract title}\yes\yes\yes
+ \colorparents{titlelike}
+ This template is used for the title. By default, this inserts the word |\abstractname|, centered. The background color is ignored.
+ \end{element}
+
+ \begin{element}{abstract begin}\yes\no\no
+ This template is inserted at the very beginning of the abstract, before the abstract title and the \meta{environment contents} is inserted.
+ \end{element}
+
+ \begin{element}{abstract end}\yes\no\no
+ This template is inserted at the end of the abstract, after the \meta{environment contents}.
+ \end{element}
+\end{environment}
+
+
+\subsection{Verse, Quotations, Quotes}
+
+\LaTeX\ defines three environments for typesetting quotations and verses: |verse|, |quotation|, and |quote|. These environments are also available in the \beamer\ class, where they are overlay specification-aware. If an overlay specification is given, the verse or quotation is shown only on the specified slides and is covered otherwise. The difference between a |quotation| and a |quote| is that the first has paragraph indentation, whereas the second hasn't.
+
+You can change the font and color used for these by changing the \beamer-colors and -fonts listed below. Unlike the standard \LaTeX\ environments, the default font theme typesets a verse in an italic serif font, quotations and quotes are typeset using an italic font (whether serif or sans-serif depends on the standard document font).
+
+\begin{environment}{{verse}\sarg{action specification}}
+ You can use this environment to typeset a verse.
+
+ \begin{element}{verse}\no\yes\yes
+ These \beamer-color and -font are used to typeset the verse. If a background color is set, this background color is used as background for the whole abstract. The default font is italic serif.
+ \end{element}
+
+ \begin{element}{verse begin}\yes\no\no
+ This template is inserted at the beginning of the verse.
+ \end{element}
+
+ \begin{element}{verse end}\yes\no\no
+ This template is inserted at the end of the verse.
+ \end{element}
+\end{environment}
+
+\begin{environment}{{quotation}\sarg{action specification}}
+ Use this environment to typeset multi-paragraph quotations. Think again, before presenting multi-paragraph quotations.
+
+ \begin{element}{quotation}\no\yes\yes
+ These \beamer-color and -font are used to typeset the quotation.
+ \end{element}
+
+ \begin{element}{quotation begin}\yes\no\no
+ This template is inserted at the beginning of the quotation.
+ \end{element}
+
+ \begin{element}{quotation end}\yes\no\no
+ This template is inserted at the end of the quotation.
+ \end{element}
+\end{environment}
+
+\begin{environment}{{quote}\sarg{action specification}}
+ Use this environment to typeset a single-paragraph quotation.
+
+ \begin{element}{quote}\no\yes\yes
+ These \beamer-color and -font are used to typeset the quote.
+ \end{element}
+
+ \begin{element}{quote begin}\yes\no\no
+ This template is inserted at the beginning of the quote.
+ \end{element}
+
+ \begin{element}{quote end}\yes\no\no
+ This template is inserted at the end of the quote.
+ \end{element}
+\end{environment}
+
+
+\subsection{Footnotes}
+
+First a word of warning: Using footnotes is usually not a good idea. They disrupt the flow of reading.
+
+You can use the usual |\footnote| command. It has been augmented to take an additional option, for placing footnotes at the frame bottom instead of at the bottom of the current minipage.
+
+\begin{command}{\footnote\sarg{overlay specification}\oarg{options}\marg{text}}
+ Inserts a footnote into the current frame. Footnotes will always be shown at the bottom of the current frame; they will never be ``moved'' to other frames. As usual, one can give a number as \meta{options}, which will cause the footnote to use that number. The \beamer\ class adds one additional option:
+ \begin{itemize}
+ \item
+ \declare{|frame|} causes the footnote to be shown at the bottom of the frame. This is normally the default behavior anyway, but in minipages and certain blocks it makes a difference. In a minipage, the footnote is usually shown as part of the minipage rather than as part of the frame.
+ \end{itemize}
+
+ If an \meta{overlay specification} is given, this causes the footnote \meta{text} to be shown only on the specified slides. The footnote symbol in the text is shown on all slides.
+
+ \example
+ |\footnote{On a fast machine.}|
+ \example
+ |\footnote[frame,2]{Not proved.}|
+ \example
+ |\footnote<.->{Der Spiegel, 4/04, S.~90.}|
+
+ \articlenote
+ In |article| mode, footnotes are typeset as usual. The |frame| option has no effect, which means in a minipage the footnote is shown as part of it.
+
+ \begin{element}{footnote}\yes\yes\yes
+ This template will be used to render the footnote. Inside this template, the following two inserts can be used:
+ \begin{itemize}
+ \iteminsert{\insertfootnotetext}
+ Inserts the current footnote text.
+ \iteminsert{\insertfootnotemark}
+ Inserts the current footnote mark (like a raised number). This mark is computed automatically.
+ \end{itemize}
+ \end{element}
+
+ \begin{element}{footnote mark}\no\yes\yes
+ This \beamer-color/-font is used when rendering the footnote mark, both in the text and at the beginning of the footnote itself.
+ \end{element}
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-macros.tex b/macros/latex/contrib/beamer/doc/beamerug-macros.tex
new file mode 100644
index 0000000000..f7580a1ff2
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-macros.tex
@@ -0,0 +1,342 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\def\beamer{\textsc{beamer}}
+\def\pdf{\textsc{pdf}}
+\def\pgfname{\textsc{pgf}}
+\def\translatorname{\textsc{translator}}
+\def\pstricks{\textsc{pstricks}}
+\def\prosper{\textsc{prosper}}
+\def\seminar{\textsc{seminar}}
+\def\texpower{\textsc{texpower}}
+\def\foils{\textsc{foils}}
+
+{
+ \makeatletter
+ \global\let\myempty=\@empty
+ \global\let\mygobble=\@gobble
+ \makeatother
+ \gdef\getridofats#1@#2\relax{%
+ \def\getridtest{#2}%
+ \ifx\getridtest\myempty%
+ \expandafter\def\expandafter\strippedat\expandafter{\strippedat#1}
+ \else%
+ \expandafter\def\expandafter\strippedat\expandafter{\strippedat#1\protect\printanat}
+ \getridofats#2\relax%
+ \fi%
+ }
+ \gdef\removeats#1{%
+ \let\strippedat\myempty%
+ \edef\strippedtext{\stripcommand#1}%
+ \expandafter\getridofats\strippedtext @\relax%
+ }
+ \makeatletter
+ \gdef\stripcommand#1{\expandafter\@gobble\string#1}
+}
+\providecommand\href[2]{\texttt{#1}}
+
+\def\printanat{\char`\@}
+
+\def\declare#1{{\color{red!75!black}#1}}
+%\def\declare{\afterassignment\translatormanualdeclare\let\next=}
+%\def\translatormanualdeclare{\ifx\next\bgroup\bgroup\color{red!75!black}\else{\color{red!75!black}\next}\fi}
+
+\def\command#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item\extractcommand#1@\par\topsep=0pt}
+\def\endcommand{\endlist}
+\def\extractcommand#1#2@{\strut\declare{\texttt{\string#1}}#2%
+ \index{\stripcommand#1@\protect\myprintcommand{\stripcommand#1}}}
+
+%\let\textoken=\command
+%\let\endtextoken=\endcommand
+
+\def\myprintcommand#1{\texttt{\char`\\#1}}
+
+\def\example{\par\smallskip\noindent\textit{Example: }}
+\def\themeauthor{\par\smallskip\noindent\textit{Theme author: }}
+
+\def\environment#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\extractenvironement#1@\par\topsep=0pt}
+\def\endenvironment{\endlist}
+\def\extractenvironement#1#2@{%
+\item{{\ttfamily\char`\\begin\char`\{\declare{#1}\char`\}}#2}%
+ {\itemsep=0pt\parskip=0pt\item{\meta{environment contents}}%
+ \item{\ttfamily\char`\\end\char`\{\declare{#1}\char`\}}}%
+ \index{#1@\protect\texttt{#1} environment}%
+ \index{Environments!#1@\protect\texttt{#1}}}
+
+\def\classoption#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item{{\ttfamily\char`\\documentclass[\declare{#1}]\char`\{beamer\char`\}}}
+ \index{#1@\protect\texttt{#1} class option}%
+ \index{Class options for \textsc{beamer}!#1@\protect\texttt{#1}}%
+ \par\topsep=0pt}
+\def\endclassoption{\endlist}
+
+
+\newcommand\beameroption[2]{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item{{\ttfamily\char`\\setbeameroption\char`\{\declare{#1}{\normalfont\opt{#2}}\char`\}}}
+ \index{#1@\protect\texttt{#1} beamer option}%
+ \index{Beamer options!#1@\protect\texttt{#1}}%
+ \par\topsep=0pt}
+\def\endbeameroption{\endlist}
+
+
+\def\smallpackage{\vbox\bgroup\package}
+\def\endsmallpackage{\egroup\endpackage}
+
+\def\package#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\extracttheme#1@usepackage@package@Packages@\par\topsep=0pt}
+\def\endpackage{\endlist}
+%\def\extracttheme#1#2@{%
+%\item{{{\ttfamily\char`\\usepackage}#2{\ttfamily\char`\{\declare{#1}\char`\}}}}}
+
+\def\theme#1#2#3#4{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\extracttheme#2@#1@#3@#4@\par\topsep=0pt}
+\def\endtheme{\endlist}
+\def\extracttheme#1#2@#3@#4@#5@{%
+\item{{{\ttfamily\char`\\#3}#2{\ttfamily\char`\{\declare{#1}\char`\}}}}%
+ \index{#1@\protect\texttt{#1} #4}%
+ \index{#5!#1@\protect\texttt{#1}}
+}
+
+\def\class#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\extractclass#1@\par\topsep=0pt}
+\def\endclass{\endlist}
+\def\extractclass#1#2@{%
+\item{{{\ttfamily\char`\\documentclass}#2{\ttfamily\char`\{\declare{#1}\char`\}}}}%
+ \index{#1@\protect\texttt{#1} class}%
+ \index{Classes!#1@\protect\texttt{#1}}}
+
+\def\typesetsol#1{\texttt{\def\_{\char`\_}#1}}
+
+\def\solution#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item \textbf{Solution Template }\declare{\typesetsol{#1}}\par\topsep=0pt%
+ \index{#1@\protect\typesetsol{#1} solution}%
+ \index{Solutions!#1@\protect\typesetsol{#1}}}
+\def\endsolution{\endlist}
+
+\def\template#1{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item {\ttfamily\char`\\setbeamertemplate\char`\{\declare{#1}\char`\}}\oarg{options}\opt{\meta{args}}\par\topsep=0pt}
+\def\endtemplate{\endlist}
+\newenvironment{template*}[1]{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item \leavevmode\llap{\color{blue}\vtop
+ to0pt{\llap{\textsc{appear-\!}}\vskip-3pt\llap{\textsc{ance}}\vss}\ \ }{\ttfamily\char`\\setbeamertemplate\char`\{\declare{#1}\char`\}}\oarg{options}\opt{\meta{args}}\par\topsep=0pt}
+{\endlist}
+
+\newenvironment{element}[4]{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}%
+\item \textbf{\ifx#2\semiyes Parent Beamer-Template\else%
+ Beamer\applier#2{-Template}\applier#3{\applier#2{/}-Color}\applier#4{\ifx#2\yes/\else\ifx#3\yes/\fi\fi
+ -Font}\fi}
+ {\ttfamily{\declare{#1}}}\par\topsep=0pt%
+ \edef\parameters{%
+ \ifx#2\semiyes parent template\else%
+ \applier#2{template}\applier#3{\applier#2{/}color}\applier#4{\ifx#2\yes/\else\ifx#3\yes/\fi\fi font}\fi}
+ \index{#1@\protect\texttt{#1} \parameters}%
+ \applier#2{\index{Beamer templates!#1@\protect\texttt{#1}}}%
+ \applier#3{\index{Beamer colors!#1@\protect\texttt{#1}}}%
+ \applier#4{\index{Beamer fonts!#1@\protect\texttt{#1}}}%
+}
+{\endlist}
+
+\def\applier#1#2{\ifx#1\yes#2\fi}
+
+\def\templateoptions{\par
+ The following template options are predefined:
+ \begin{itemize}}
+\def\endtemplateoptions{\end{itemize}}
+
+\def\itemoption#1#2{\item {\texttt{[\declare{#1}]}}#2}
+
+%\def\itemoption#1{\item \declare{\texttt{#1}}%
+% \indexoption{#1}%
+%}
+
+%\def\indexoption#1{%
+% \index{#1@\protect\texttt{#1} option}%
+% \index{Options!#1@\protect\texttt{#1}}%
+%}
+
+\def\yes{\hbox to .6cm{\ding{51}\hfil}}
+\def\semiyes{\hbox to .6cm{(\ding{51})\hfil}}
+\def\no{\hbox to .6cm{\ding{55}\hfil}}
+
+\def\choosecol#1{}%\ifx#1\yes\color{green!50!black}\else\color{red!50!black}\fi}
+
+\def\templatefontcolor#1#2#3#4{%
+ \item\declare{\texttt{#1}}\hfill%
+ {\choosecol#2Template #2} {\choosecol#3Color #3} {\choosecol#4Font #4}\par}
+
+\def\fontparents#1{Font parents: \texttt{#1}\par}
+\def\colorparents#1{Color parents: \texttt{#1}\par}
+\def\colorfontparents#1{Color/font parents: \texttt{#1}\par}
+
+\def\templateinserts{\begin{itemize}}
+\def\endtemplateinserts{\end{itemize}}
+
+\def\iteminsert#1{\item {\texttt{\declare{\string#1}}}%
+ \index{Inserts!\stripcommand#1@\protect\myprintcommand{\stripcommand#1}}}
+
+\newcommand\opt[1]{{\color{black!50!green}#1}}
+\renewcommand\oarg[1]{\opt{{\ttfamily[}\meta{#1}{\ttfamily]}}}
+\newcommand\ooarg[1]{{\ttfamily[}\meta{#1}{\ttfamily]}}
+\newcommand\sarg[1]{\opt{{\ttfamily\char`\<}\meta{#1}{\ttfamily\char`\>}}}
+\newcommand\ssarg[1]{{\ttfamily\char`\<}\meta{#1}{\ttfamily\char`\>}}
+
+%\def\opt{\afterassignment\translatormanualopt\let\next=}
+\def\translatormanualopt{\ifx\next\bgroup\bgroup\color{black!50!green}\else{\color{black!50!green}\next}\fi}
+
+\newcommand{\beamernote}{\par\smallskip\noindent\llap{\color{blue}\vtop to0pt{\llap{\textsc{presen-\!}}\vskip-3pt\llap{\textsc{tation}}\vss}\ \ }}
+\newcommand{\articlenote}{\par\smallskip\noindent\llap{\color{blue}\textsc{article}\ \ }}
+\newcommand{\appearancenote}{\par\smallskip\noindent\appearancenotetext}
+
+\def\appearancenotetext{\llap{\color{blue}\vtop
+ to0pt{\llap{\textsc{appear-\!}}\vskip-3pt\llap{\textsc{ance}}\vss}\ \ }}
+
+\newcommand{\templatenote}{\par\smallskip\noindent\llap{\color{blue}\textsc{template}\ \ }}
+\newcommand{\colornote}{\par\smallskip\noindent\llap{\color{blue}\textsc{color}\ \ }}
+\newcommand{\fontnote}{\par\smallskip\noindent\llap{\color{blue}\textsc{font}\ \ }}
+
+\newcommand{\genericthemeexample}[2][]{%
+ \smallskip\par\noindent
+ \includegraphics[width=.45\textwidth,page=1]{beamerug#2}\qquad\includegraphics[width=.45\textwidth,page=2]{beamerug#2}
+ \smallskip\par}
+\newenvironment{themeexample}[2][]
+{\begin{theme}{usetheme}{{#2}#1}{presentation theme}{Presentation themes}
+ \example\genericthemeexample{theme#2}
+ }
+{\end{theme}}
+\newenvironment{innerthemeexample}[2][]
+{\begin{theme}{useinnertheme}{{#2}#1}{inner theme}{Inner themes}
+ \example\genericthemeexample{innertheme#2}
+ }
+{\end{theme}}
+\newenvironment{outerthemeexample}[2][]
+{\begin{theme}{useoutertheme}{{#2}#1}{outer theme}{Outer themes}
+ \example\genericthemeexample{outertheme#2}
+ }
+{\end{theme}}
+\newenvironment{colorthemeexample}[2][]
+{\begin{theme}{usecolortheme}{{#2}#1}{color theme}{Color themes}
+ \example\genericthemeexample{colortheme#2}
+ }
+{\end{theme}}
+\newenvironment{fontthemeexample}[2][]
+{\begin{theme}{usefonttheme}{{#2}#1}{font theme}{Font themes}
+ \example\genericthemeexample{fonttheme#2}
+ }
+{\end{theme}}
+\newenvironment{fontthemeexample*}[2][]
+{\begin{theme}{usefonttheme}{{#2}#1}{font theme}{Font themes}}
+{\end{theme}}
+
+\def\partname{Part}
+
+\colorlet{examplefill}{yellow!80!black}
+\definecolor{graphicbackground}{rgb}{0.96,0.96,0.8}
+\definecolor{codebackground}{rgb}{0.8,0.8,1}
+
+\newenvironment{translatormanualentry}{\list{}{\leftmargin=2em\itemindent-\leftmargin\def\makelabel##1{\hss##1}}}{\endlist}
+\newcommand\translatormanualentryheadline[1]{\itemsep=0pt\parskip=0pt\item\strut#1\par\topsep=0pt}
+\newcommand\translatormanualbody{\parskip3pt}
+
+
+%\newenvironment{command}[1]{
+% \begin{translatormanualentry}
+% \extractcommand#1\@@
+% \translatormanualbody
+%}
+%{
+% \end{translatormanualentry}
+%}
+
+%\def\extractcommand#1#2\@@{%
+% \translatormanualentryheadline{\declare{\texttt{\string#1}}#2}%
+% \removeats{#1}%
+% \index{\strippedat @\protect\myprintcommand{\strippedat}}}
+
+
+\renewenvironment{environment}[1]{
+ \begin{translatormanualentry}
+ \extractenvironement#1\@@
+ \translatormanualbody
+}
+{
+ \end{translatormanualentry}
+}
+
+\def\extractenvironement#1#2\@@{%
+ \translatormanualentryheadline{{\ttfamily\char`\\begin\char`\{\declare{#1}\char`\}}#2}%
+ \translatormanualentryheadline{{\ttfamily\ \ }\meta{environment contents}}%
+ \translatormanualentryheadline{{\ttfamily\char`\\end\char`\{\declare{#1}\char`\}}}%
+ \index{#1@\protect\texttt{#1} environment}%
+ \index{Environments!#1@\protect\texttt{#1}}}
+
+
+
+%\newenvironment{package}[1]{
+% \begin{translatormanualentry}
+% \translatormanualentryheadline{{\ttfamily\char`\\usepackage\opt{[\meta{options}]}\char`\{\declare{#1}\char`\}}}
+% \index{#1@\protect\texttt{#1} package}%
+% \index{Packages and files!#1@\protect\texttt{#1}}%
+% \translatormanualbody
+%}
+%{
+% \end{translatormanualentry}
+%}
+
+
+
+\newenvironment{filedescription}[1]{
+ \begin{translatormanualentry}
+ \translatormanualentryheadline{File {\ttfamily\declare{#1}}}%
+ \index{#1@\protect\texttt{#1} file}%
+ \index{Packages and files!#1@\protect\texttt{#1}}%
+ \translatormanualbody
+}
+{
+ \end{translatormanualentry}
+}
+
+
+\newenvironment{packageoption}[1]{
+ \begin{translatormanualentry}
+ \translatormanualentryheadline{{\ttfamily\char`\\usepackage[\declare{#1}]\char`\{translator\char`\}}}
+ \index{#1@\protect\texttt{#1} package option}%
+ \index{Package options for \textsc{translator}!#1@\protect\texttt{#1}}%
+ \translatormanualbody
+}
+{
+ \end{translatormanualentry}
+}
+
+\makeatletter
+\def\index@prologue{\section*{Index}\addcontentsline{toc}{section}{Index}
+ This index only contains automatically generated entries, sorry. A good
+ index should also contain carefully selected keywords.
+ \bigskip
+}
+\c@IndexColumns=2
+ \def\theindex{\@restonecoltrue
+ \columnseprule \z@ \columnsep 35\p@
+ \twocolumn[\index@prologue]%
+ \parindent -30pt
+ \columnsep 15pt
+ \parskip 0pt plus 1pt
+ \leftskip 30pt
+ \rightskip 0pt plus 2cm
+ \small
+ \def\@idxitem{\par}%
+ \let\item\@idxitem \ignorespaces}
+ \def\endtheindex{\onecolumn}
+\def\noindexing{\let\index=\@gobble}
+
+\makeatother
diff --git a/macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex b/macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex
new file mode 100644
index 0000000000..5058b954ab
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex
@@ -0,0 +1,399 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2014,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Creating Handouts and Lecture Notes}
+\label{section-modes}
+
+During a presentation it is very much desirable that the audience has a \emph{handout} or even \emph{lecture notes} available to it. A handout allows everyone in the audience to individually go back to things he or she has not understood.
+
+Always provide handouts \emph{as early as possible}, preferably weeks before the talk. Do \emph{not} retain the handout till the end of the talk.
+
+The \beamer\ package offers two different ways of creating special versions of your talk; they are discussed in the following. The first, easy, way is to create a handout version by adding the |handout| option, which will cause the document to be typeset in |handout| mode. It will ``look like'' a presentation, but it can be printed more easily (the overlays are ``flattened''). The second, more complicated and more powerful way is to create an independent ``article'' version of your presentation. This version coexists in your main file.
+
+
+\subsection{Creating Handouts Using the Handout Mode}
+\label{handout}
+
+The easiest way of creating a handout for your audience (though not the most desirable one) is to use the |handout| option. This option works exactly like the |trans| option.
+
+\begin{classoption}{handout}
+ Create a version that uses the |handout| overlay specifications.
+
+ You might wish to choose a different color and/or presentation theme for the handout.
+\end{classoption}
+
+When printing a handout created this way, you will typically wish to print at least two and possibly four slides on each page. The easiest way of doing so is presumably to use |pgfpages| as follows:
+
+\begin{verbatim}
+\usepackage{pgfpages}
+\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
+\end{verbatim}
+
+Instead of |2 on 1| you can use |4 on 1| (but then you have to add |landscape| to the list of options) and you can use, say, |letterpaper| instead of |a4paper|.
+
+
+\subsection{Creating Handouts Using the Article Mode}
+\label{section-article}
+
+In the following, the ``article version'' of your presentation refers to a normal \TeX\ text typeset using, for example, the document class |article| or perhaps |llncs| or a similar document class. This version of the presentation will typically follow different typesetting rules and may even have a different structure. Nevertheless, you may wish to have this version coexist with your presentation in one file and you may wish to share some part of it (like a figure or a formula) with your presentation.
+
+In general, the article version of a talk is better suited as a handout than a handout created using the simple |handout| mode since it is more economic and can include more in-depth information.
+
+\subsubsection{Starting the Article Mode}
+
+The article mode of a presentation is created by specifying |article| or |book| or some other class as the document class instead of |beamer| and by then loading the package |beamerarticle|.
+
+The package |beamerarticle| defines virtually all of \beamer's commands in a way that is sensible for the |article| mode. Also, overlay specifications can be given to commands like |\textbf| or |\item| once |beamerarticle| has been loaded. Note that, except for |\item|, these overlay specifications also work: by writing |\section<presentation>{Name}| you will suppress this section command in the article version. For the exact effects overlay specifications have in |article| mode, please see the descriptions of the commands to which you wish to apply them.
+
+\begin{package}{{beamerarticle}\opt{|[|\meta{options}|]|}}
+ Makes most \beamer\ commands available for another document class.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|activeospeccharacters|} will leave the character code of the pointed brackets as specified by other packages. Normally, \beamer\ will turn off the special behavior of the two characters |<| and |>|. Using this option, you can reinstall the original behavior at the price of possible problems when using overlay specifications in the |article| mode.
+ \item
+ \declare{|noamssymb|} will suppress the automatic loading of the |amssymb| package. Normally, \beamer\ will load this package since many themes use AMS symbols. This option allows you to opt-out from this behavior in article mode, thus preventing clashes with some classes and font packages that conflict with |amssymb|. Note that, if you use this option, you will have to care for yourself that |amssymb| or an alternative package is loaded if you use respective symbols.
+ \item
+ \declare{|noamsthm|} will suppress the loading of the |amsthm| package. No theorems will be defined.
+ \item
+ \declare{|nokeywords|} will suppress the creation of a |\keywords| command.
+ \item
+ \declare{|notheorems|} will suppress the definition of standard environments like |theorem|, but |amsthm| is still loaded and the |\newtheorem| command still makes the defined environments overlay-specification-aware. Using this option allows you to define the standard environments in whatever way you like while retaining the power of the extensions to |amsthm|.
+ \item
+ \declare{|envcountsect|} causes theorem, definitions and the like to be numbered with each section. Thus instead of Theorem~1 you get Theorem~1.1. We recommend using this option.
+ \item
+ \declare{|noxcolor|} will suppress the loading of the |xcolor| package. No colors will be defined.
+ \end{itemize}
+
+ \example
+\begin{verbatim}
+\documentclass{article}
+\usepackage{beamerarticle}
+\begin{document}
+\begin{frame}
+ \frametitle{A frame title}
+ \begin{itemize}
+\item<1-> You can use overlay specifications.
+\item<2-> This is useful.
+ \end{itemize}
+\end{frame}
+\end{document}
+\end{verbatim}
+\end{package}
+
+There is one remaining problem: While the |article| version can easily \TeX\ the whole file, even in the presence of commands like |\frame<2>|, we do not want the special article text to be inserted into our original \beamer\ presentation. That means, we would like all text \emph{between} frames to be suppressed. More precisely, we want all text except for commands like |\section| and so on to be suppressed. This behavior can be enforced by specifying the option |ignorenonframetext| in the presentation version.
+
+\begin{classoption}{ignorenonframetext}
+ Cause |beamer| to ignore (almost) all texts and commands outside frames in the |presentation| mode. The option will insert a |\mode*| at the beginning of your presentation.
+
+ \emph{Note:} When using |\include| or |\input| commands, conversions of modes must be controlled manually. See Section~\ref{section-mode-details} for details.
+\end{classoption}
+
+The following example shows a simple usage of the |article| mode:
+
+\begin{verbatim}
+\documentclass[a4paper]{article}
+\usepackage{beamerarticle}
+%%\documentclass[ignorenonframetext,red]{beamer}
+
+\mode<article>{\usepackage{fullpage}}
+\mode<presentation>{\usetheme{Berlin}}
+
+%% everyone:
+\usepackage[english]{babel}
+\usepackage{pgf}
+
+\pgfdeclareimage[height=1cm]{myimage}{filename}
+
+\begin{document}
+
+\section{Introduction}
+
+This is the introduction text. This text is not shown in the
+presentation, but will be part of the article.
+
+\begin{frame}
+ \begin{figure}
+ % In the article, this is a floating figure,
+ % In the presentation, this figure is shown in the first frame
+ \pgfuseimage{myimage}
+ \end{figure}
+\end{frame}
+
+This text is once more not shown in the presentation.
+
+\section{Main Part}
+
+While this text is not shown in the presentation, the section command
+also applies to the presentation.
+
+We can add a subsection that is only part of the article like this:
+
+\subsection<article>{Article-Only Section}
+
+With some more text.
+
+\begin{frame}
+ This text is part both of the article and of the presentation.
+ \begin{itemize}
+\item This stuff is also shown in both version.
+\item This too.
+ \only<article>{\item This particular item is only part
+ of the article version.}
+\item<presentation:only@0> This text is also only part of the article.
+ \end{itemize}
+\end{frame}
+\end{document}
+\end{verbatim}
+
+There is one command whose behavior is a bit special in |article| mode: The line break command |\\|. Inside frames, this command has no effect in |article| mode, except if an overlay specification is present. Then it has the normal effect dictated by the specification. The reason for this behavior is that you will typically inserts lots of |\\| commands in a presentation in order to get control over all line breaks. These line breaks are mostly superfluous in |article| mode. If you really want a line break to apply in all versions, say |\\<all>|. Note that the command |\\| is often redefined by certain environments, so it may not always be overlay-specification-aware. In such a case you have to write something like |\only<presentation>{\\}|.
+
+\subsubsection{Workflow}
+\label{section-article-version-workflow}
+
+The following workflow steps are optional, but they can simplify the creation of the article version.
+
+\begin{itemize}
+\item
+ In the main file |main.tex|, delete the first line, which sets the document class.
+\item
+ Create a file named, say, |main.beamer.tex| with the following content:
+
+\begin{verbatim}
+\documentclass[ignorenonframetext]{beamer}
+\input{main.tex}
+\end{verbatim}
+
+\item
+ Create an extra file named, say, |main.article.tex| with the following content:
+
+\begin{verbatim}
+\documentclass{article}
+\usepackage{beamerarticle}
+\setjobnamebeamerversion{main.beamer}
+\input{main.tex}
+\end{verbatim}
+
+\item
+ You can now run |pdflatex| or |latex| on the two files |main.beamer.tex| and |main.article.tex|.
+\end{itemize}
+
+The command |\setjobnamebeamerversion| tells the article version where to find the presentation version. This is necessary if you wish to include slides from the presentation version in an article as figures.
+
+\begin{command}{\setjobnamebeamerversion\marg{filename without extension}}
+ Tells the \beamer\ class where to find the presentation version of the current file.
+\end{command}
+
+\subsubsection{Including Slides from the Presentation Version in the Article Version}
+
+If you use the package |beamerarticle|, the |\frame| command becomes available in |article| mode. By adjusting the frame template, you can ``mimic'' the appearance of frames typeset by \beamer\ in your articles. However, sometimes you may wish to insert ``the real thing'' into the |article| version, that is, a precise ``screenshot'' of a slide from the presentation. The commands introduced in the following help you do exactly this.
+
+In order to include a slide from your presentation in your article version, you must do two things: First, you must place a normal \LaTeX\ label on the slide using the |\label| command. Since this command is overlay-specification-aware, you can also select specific slides of a frame. Also, by adding the option |label=|\meta{name} to a frame, a label \meta{name}|<|\meta{slide number}|>| is automatically added to each slide of the frame.
+
+Once you have labeled a slide, you can use the following command in your article version to insert the slide into it:
+
+\begin{command}{\includeslide\oarg{options}\marg{label name}}
+ This command calls |\pgfimage| with the given \meta{options} for the file specified by
+ \begin{quote}
+ |\setjobnamebeamerversion|\meta{filename}
+ \end{quote}
+ Furthermore, the option |page=|\meta{page of label name} is passed to |\pgfimage|, where the \meta{page of label name} is read internally from the file \meta{filename}|.snm|.
+ \example
+
+\begin{verbatim}
+\article
+ \begin{figure}
+ \begin{center}
+ \includeslide[height=5cm]{slide1}
+ \end{center}
+ \caption{The first slide (height 5cm). Note the partly covered second item.}
+ \end{figure}
+ \begin{figure}
+ \begin{center}
+ \includeslide{slide2}
+ \end{center}
+ \caption{The second slide (original size). Now the second item is also shown.}
+ \end{figure}
+\end{verbatim}
+\end{command}
+
+The exact effect of passing the option |page=|\meta{page of label name} to the command |\pgfimage| is explained in the documentation of |pgf|. In essence, the following happens:
+\begin{itemize}
+\item
+ For old versions of |pdflatex| and for any version of |latex| together with |dvips|, the |pgf| package will look for a file named
+ \begin{quote}
+ \meta{filename}|.page|\meta{page of label name}|.|\meta{extension}
+ \end{quote}
+ For each page of your |.pdf| or |.ps| file that is to be included in this way, you must create such a file by hand. For example, if the PostScript file of your presentation version is named |main.beamer.ps| and you wish to include the slides with page numbers 2 and~3, you must create (single page) files |main.beamer.page2.ps| and |main.beamer.page3.ps| ``by hand'' (or using some script). If these files cannot be found, |pgf| will complain.
+\item
+ For new versions of |pdflatex|, |pdflatex| also looks for the files according to the above naming scheme. However, if it fails to find them (because you have not produced them), it uses a special mechanism to directly extract the desired page from the presentation file |main.beamer.pdf|.
+\end{itemize}
+
+
+\subsection{Details on Modes}
+\label{section-mode-details}
+
+This subsection describes how modes work exactly and how you can use the |\mode| command to control what part of your text belongs to which mode.
+
+When \beamer\ typesets your text, it is always in one of the following five modes:
+\begin{itemize}
+\item
+ \declare{|beamer|} is the default mode.
+\item
+ \declare{|second|} is the mode used when a slide for an optional second screen is being typeset.
+\item
+ \declare{|handout|} is the mode for creating handouts.
+\item
+ \declare{|trans|} is the mode for creating transparencies.
+\item
+ \declare{|article|} is the mode when control has been transferred to another class, like |article.cls|. Note that the mode is also |article| if control is transferred to, say, |book.cls|.
+\end{itemize}
+
+In addition to these modes, \beamer\ recognizes the following names for modes sets:
+
+\begin{itemize}
+\item
+ \declare{|all|} refers to all modes.
+\item
+ \declare{|presentation|} refers to the first four modes, that is, to all modes except for the |article| mode.
+\end{itemize}
+
+Depending on the current mode, you may wish to have certain text inserted only in that mode. For example, you might wish a certain frame or a certain table to be left out of your article version. In some situations, you can use the |\only| command for this purpose. However, the command |\mode|, which is described in the following, is much more powerful than |\only|.
+
+The command actually comes in three ``flavors,'' which only slightly differ in syntax. The first, and simplest, is the version that takes one argument. It behaves essentially the same way as |\only|.
+
+\begin{command}{\mode\sarg{mode specification}\marg{text}}
+ Causes the \meta{text} to be inserted only for the specified modes. Recall that a \meta{mode specification} is just an overlay specification in which no slides are mentioned.
+
+ The \meta{text} should not do anything fancy that involves mode switches or including other files. In particular, you should not put an |\include| command inside \meta{text}. Use the argument-free form below, instead.
+
+ \example
+\begin{verbatim}
+\mode<article>{Extra detail mentioned only in the article version.}
+
+\mode
+<beamer| trans>
+{\frame{\tableofcontents[currentsection]}}
+\end{verbatim}
+\end{command}
+
+The second flavor of the |\mode| command takes no argument. ``No argument'' means that it is not followed by an opening brace, but any other symbol.
+
+\begin{command}{\mode\sarg{mode specification}}
+ In the specified mode, this command actually has no effect. The interesting part is the effect in the non-specified modes: In these modes, the command causes \TeX\ to enter a kind of ``gobbling'' state. It will now ignore all following lines until the next line that has a sole occurrence of one of the following commands: |\mode|, |\mode*|, |\begin{document}|, |\end{document}|. Even a comment on this line will make \TeX\ skip it. Note that the line with the special commands that make \TeX\ stop gobbling may not directly follow the line where the gobbling is started. Rather, there must either be one non-empty line before the special command or at least two empty lines.
+
+ When \TeX\ encounters a single |\mode| command, it will execute this command. If the command is |\mode| command of the first flavor, \TeX\ will resume its ``gobbling'' state after having inserted (or not inserted) the argument of the |\mode| command. If the |\mode| command is of the second flavor, it takes over.
+
+ Using this second flavor of |\mode| is less convenient than the first, but there are different reasons why you might need to use it:
+ \begin{itemize}
+ \item
+ The line-wise gobbling is much faster than the gobble of the third flavor, explained below.
+ \item
+ The first flavor reads its argument completely. This means, it cannot contain any verbatim text that contains unbalanced braces.
+ \item
+ The first flavor cannot cope with arguments that contain |\include|.
+ \item
+ If the text mainly belongs to one mode with only small amounts of text from another mode inserted, this second flavor is nice to use.
+ \end{itemize}
+
+ \emph{Note:} When searching line-wise for a |\mode| command to shake it out of its gobbling state, \TeX\ will not recognize a |\mode| command if a mode specification follows on the same line. Thus, such a specification must be given on the next line.
+
+ \emph{Note:} When a \TeX\ file ends, \TeX\ must not be in the gobbling state. Switch this state off using |\mode| on one line and |<all>| on the next.
+
+ \example
+\begin{verbatim}
+\mode<article>
+
+This text is typeset only in |article| mode.
+\verb!verbatim text is ok {!
+
+\mode
+<presentation>
+{ % this text is inserted only in presentation mode
+\frame{\tableofcontents[currentsection]}}
+
+Here we are back to article mode stuff. This text
+is not inserted in presentation mode
+
+\mode
+<presentation>
+
+This text is only inserted in presentation mode.
+\end{verbatim}
+\end{command}
+
+The last flavor of the mode command behaves quite differently.
+
+\begin{command}{\mode\declare{|*|}}
+ The effect of this mode is to ignore all text outside frames in the |presentation| modes. In |article| mode it has no effect.
+
+ This mode should only be entered outside of frames. Once entered, if the current mode is a |presentation| mode, \TeX\ will enter a gobbling state similar to the gobbling state of the second ``flavor'' of the |\mode| command. The difference is that the text is now read token-wise, not line-wise. The text is gobbled token by token until one of the following tokens is found: |\mode|, |\frame|, |\againframe|, |\part|, |\section|, |\subsection|, |\appendix|, |\note|, |\begin{frame}|, and |\end{document}| (the last two are not really tokens, but they are recognized anyway).
+
+ Once one of these commands is encountered, the gobbling stops and the command is executed. However, all of these commands restore the mode that was in effect when they started. Thus, once the command is finished, \TeX\ returns to its gobbling.
+
+ Normally, |\mode*| is exactly what you want \TeX\ to do outside of frames: ignore everything except for the above-mentioned commands outside frames in |presentation| mode. However, there are cases in which you have to use the second flavor of the |\mode| command instead: If you have verbatim text that contains one of the commands, if you have very long text outside frames, or if you wish some text outside a frame (like a definition) to be executed also in |presentation| mode.
+
+ The class option |ignorenonframetext| will switch on |\mode*| at the beginning of the document.
+
+ \example
+\begin{verbatim}
+\begin{document}
+\mode*
+
+This text is not shown in the presentation.
+
+\begin{frame}
+ This text is shown both in article and presentation mode.
+\end{frame}
+
+this text is not shown in the presentation again.
+
+\section{This command also has effect in presentation mode}
+
+Back to article stuff again.
+
+\frame<presentation>
+{ this frame is shown only in the presentation. }
+\end{document}
+\end{verbatim}
+
+ \example The following example shows how you can include other files in a main file. The contents of a |main.tex|:
+
+\begin{verbatim}
+\documentclass[ignorenonframetext]{beamer}
+\begin{document}
+This is star mode stuff.
+
+Let's include files:
+\mode<all>
+\include{a}
+\include{b}
+\mode*
+
+Back to star mode
+\end{document}
+\end{verbatim}
+
+ And |a.tex| (and likewise |b.tex|):
+
+\begin{verbatim}
+\mode*
+\section{First section}
+Extra text in article version.
+\begin{frame}
+ Some text.
+\end{frame}
+\mode<all>
+\end{verbatim}
+\end{command}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-notes.tex b/macros/latex/contrib/beamer/doc/beamerug-notes.tex
new file mode 100644
index 0000000000..4914ff13a1
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-notes.tex
@@ -0,0 +1,215 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2013,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Adding Notes for Yourself}
+
+A \emph{note} is text that is intended as a reminder to yourself of what you should say or should keep in mind when presenting a slide. Notes are usually printed out on paper, but with two-screen support they can also be shown on your laptop screen while the main presentation is shown on the projector.
+
+
+\subsection{Specifying Note Contents}
+
+To add a note to a slide or a frame, use the |\note| command. This command can be used both inside and outside frames, but it has quite different behaviors then: Inside frames, |\note| commands accumulate and append a single note page after the current slide; outside frames each |\note| directly inserts a single note page with the given parameter as contents. Using the |\note| command inside frames is usually preferably over using them outside, since only commands issued inside frames profit from the class option |onlyslideswithnotes|, see below.
+
+Inside a frame, the effect of |\note|\meta{text} is the following: When you use it somewhere inside the frame on a specific slide, a note page is created after the slide, containing the \meta{text}. Since you can add an overlay specification to the |\note| command, you can specify after which slide the note should be shown. If you use multiple |\note| commands on one slide, they ``accumulate'' and are all shown on the same note.
+
+To make the accumulation of notes more convenient, you can use the |\note| command with the option |[item]|. The notes added with this option are accumulated in an |enumerate| list that follows any text inserted using |\note|.
+
+The following example will produce one note page that follows the second slide and has two entries.
+\begin{verbatim}
+\begin{frame}
+ \begin{itemize}
+ \item<1-> Eggs
+ \item<2-> Plants
+ \note[item]<2>{Tell joke about plants.}
+ \note[item]<2>{Make it short.}
+ \item<3-> Animals
+ \end{itemize}
+\end{frame}
+\end{verbatim}
+
+Outside frames, the command |\note| creates a single note page. It is ``independent'' of any usage of the |\note| commands inside the previous frame. If you say |\note| inside a frame and |\note| right after it, \emph{two} note pages are created.
+
+In the following, the syntax and effects of the |\note| command \emph{inside} frames are described:
+
+\begin{command}{\note\sarg{overlay specification}\oarg{options}\marg{note text}}
+ Effects \emph{inside} frames:
+
+ This command appends the \meta{note text} to the note that follows the current slide. Multiple uses of this command on a slide accumulate. If you do not specify an \meta{overlay specification}, the note will be added to \emph{all} slides of the current frame. This is often not what you want, so adding a specification like |<1>| is usually a good idea.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|item|} causes the note to be put as an item in a list that is shown at the end of the note page.
+ \end{itemize}
+
+ \example|\note<2>{Do not talk longer than 2 minutes about this.}|
+
+ \articlenote
+ Notes are ignored in |article| mode.
+
+\end{command}
+
+Next, the syntax and effects of the |\note| command \emph{outside} frames are described:
+
+\begin{command}{\note\oarg{options}\marg{note text}}
+ Outside frames, this command creates a note page. This command is \emph{not} affected by the option |notes=onlyframeswithnotes|, see below.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item
+ \declare{|itemize|} will enclose the whole note page in an |itemize| environment. This is just a convenience.
+ \item
+ \declare{|enumerate|} will enclose the whole note page in an |enumerate| environment.
+ \end{itemize}
+
+ \example
+\begin{verbatim}
+\frame{some text}
+\note{Talk no more than 1 minute.}
+
+\note[enumerate]
+{
+\item Stress this first.
+\item Then this.
+}
+\end{verbatim}
+
+ \articlenote
+ Notes are ignored in |article| mode.
+\end{command}
+
+The following element dictates how the note pages are rendered:
+
+\begin{element}{note page}\yes\yes\yes
+ This template is used to typeset a note page. The template should contain a mentioning of the insert |\insertnote|, which will contain the note text. To squeeze more onto note pages you might consider changing the size of the \beamer-font |note page| to something small. The default is |\small|.
+ \begin{templateoptions}
+ \itemoption{default}{}
+ The default template shows the last slide in the upper right corner and some ``hints'' that should help you match a note page to the slide that is currently shown.
+ \itemoption{compress}{}
+ The option produces an output that is similar to the default, only more fits onto each note page at the price of legibility.
+ \itemoption{plain}{}
+ Just inserts the note text, no fancy hints.
+ \end{templateoptions}
+ The following two inserts are useful for note pages:
+ \begin{itemize}
+ \iteminsert{\insertnote}
+ Inserts the text of the current note into the template.
+ \iteminsert{\insertslideintonotes}\marg{magnification}
+ Inserts a ``mini picture'' of the last slide into the current note. The slide will be scaled by the given magnification.
+
+ \emph{Note:} The backgrounds, headlines, footlines and sidebars will not appear in the slide.
+ \example
+ |\insertslideintonotes{0.25}|
+
+ This will give a mini slide whose width and height are one fourth of the usual size.
+ \end{itemize}
+\end{element}
+
+
+\subsection{Specifying Contents for Multiple Notes}
+
+Sometimes you wish some text to be shown on every note or at least on every note in a long series of notes. To achieve this effect, you can use the following two commands:
+
+\begin{command}{\AtBeginNote\marg{text}}
+ The \meta{text} will be inserted at the beginning of every note in the scope of the command. To stop the effect, either use |\AtBeginNote{}| or enclose the area in a \TeX\ group.
+
+ It is advisable to add a |\par| command or an empty line at the end of the \meta{text} since otherwise any note text will directly follow the \meta{text} without a line break.
+
+ \example
+\begin{verbatim}
+\section{My Section}
+
+\AtBeginNote{Finish this section by 14:35.\par}
+\begin{frame}
+ ...
+ \note{some note}
+\end{frame}
+\begin{frame}
+ ...
+ \note{some other note}
+\end{frame}
+\AtBeginNote{}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\AtEndNote\marg{text}}
+ This command behaves the same way as |\AtBeginNote|, except that the text is inserted at the end (bottom). You may wish to add a |\par| at the beginning of \meta{text}.
+\end{command}
+
+
+\subsection{Specifying Which Notes and Frames Are Shown}
+
+Since you normally do not wish the notes to be part of your presentation, you must explicitly say so in the preamble if notes should be included in your presentation. You can use the following \beamer\ options for this:
+
+\begin{beameroption}{hide notes}{}
+ Notes are not shown. This is the default in a presentation.
+\end{beameroption}
+
+\begin{beameroption}{show notes}{}
+ Include notes in the output file. Normal slides are also included and the note pages are interleaved with them.
+\end{beameroption}
+
+\begin{beameroption}{show notes on second screen}{|=|\meta{location}}
+ \label{command-notesonsecondscreen}
+ When this option is given, a two screen version of your talk is created, see Section~\ref{section-twoscreens} for further details. The second screen, which is displayed on the right by default, shows your notes. By specifying a different \meta{location}, you can also place the second screen on the |left|, |bottom|, or |top|.
+
+ \example
+\begin{verbatim}
+\documentclass{beamer}
+\usepackage{pgfpages}
+\setbeameroption{show notes on second screen}
+\begin{document}
+\begin{frame}
+ A frame.
+ \note{This is shown on the right.}
+\end{frame}
+\end{document}
+\end{verbatim}
+
+ In detail, the following happens: The presentation is typeset normally and shown on the main screen or, to be precise, on |pgfpages|'s logical page number zero. The second screen (logical screen number one) is initialized to be empty.
+
+ Whenever a note page is to be typeset, either because a frame contained |\note| commands or because the frame was followed by a |\note| command, the note page is normally typeset. Then the note page is put on the second screen. Then the whole page is shipped out. (The exact details are bit more complex, but that is what happens, basically.)
+
+ An important effect of this behavior is that a note page \emph{following} a frame is shown next to this frame. Normally, this is exactly what you want and expect. However, if there are multiple note pages for a single slide only the last one is shown, currently. This may change in the future, so do not rely on this effect.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ First frame.
+\end{frame}
+\note{This note is not shown at all (currently).}
+\note{This note is shown together with the first frame.}
+
+\begin{frame}
+ Second frame.
+ \note{This note is shown together with the second frame.}
+\end{frame}
+
+\begin{frame}
+ No note text is shown for this frame.
+\end{frame}
+\end{verbatim}
+
+ If you really need multiple note pages for a single slide, you will have to use something more complicated like this:
+\begin{verbatim}
+\begin{frame}<1-3>
+ First frame.
+ \note<1>{First page of notes for this frame.}
+ \note<2>{Second page of notes for this frame.}
+ \note<3>{Third page of notes for this frame.}
+\end{frame}
+\end{verbatim}
+\end{beameroption}
+
+
+\begin{beameroption}{show only notes}{}
+ Include only the notes in the output file and suppresses all frames. This options is useful for printing them. If you specify this command, the |.aux| and |.toc| files are \emph{not} updated. So, if you add a section and re\TeX\ your presentation, this will not be reflected in the navigation bars (which you do not see anyway since only notes are output).
+\end{beameroption}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-overlays.tex b/macros/latex/contrib/beamer/doc/beamerug-overlays.tex
new file mode 100644
index 0000000000..7eea250dc5
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-overlays.tex
@@ -0,0 +1,778 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Creating Overlays}
+\label{section-overlay}
+
+
+\subsection{The Pause Commands}
+
+The |pause| command offers an easy, but not very flexible way of creating frames that are uncovered piecewise. If you say |\pause| somewhere in a frame, only the text on the frame up to the |\pause| command is shown on the first slide. On the second slide, everything is shown up to the second |\pause|, and so forth. You can also use |\pause| inside environments; its effect will last after the environment. However, taking this to extremes and using |\pause| deeply within a nested environment may not have the desired result.
+
+A much more fine-grained control over what is shown on each slide can be attained using overlay specifications, see the next sections. However, for many simple cases the |\pause| command is sufficient.
+
+The effect of |\pause| lasts till the next |\pause|, |\onslide|, or the end of the frame.
+\begin{verbatim}
+\begin{frame}
+ \begin{itemize}
+ \item
+ Shown from first slide on.
+ \pause
+ \item
+ Shown from second slide on.
+ \begin{itemize}
+ \item
+ Shown from second slide on.
+ \pause
+ \item
+ Shown from third slide on.
+ \end{itemize}
+ \item
+ Shown from third slide on.
+ \pause
+ \item
+ Shown from fourth slide on.
+ \end{itemize}
+
+ Shown from fourth slide on.
+
+ \begin{itemize}
+ \onslide
+ \item
+ Shown from first slide on.
+ \pause
+ \item
+ Shown from fifth slide on.
+ \end{itemize}
+\end{frame}
+\end{verbatim}
+
+\begin{command}{\pause\oarg{number}}
+ This command causes the text following it to be shown only from the next slide on, or, if the optional \meta{number} is given, from the slide with the number \meta{number}. If the optional \meta{number} is given, the counter |beamerpauses| is set to this number. This command uses the |\onslide| command, internally. This command does \emph{not} work inside |amsmath| environments like |align|, since these do really wicked things.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \begin{itemize}
+ \item
+ A
+ \pause
+ \item
+ B
+ \pause
+ \item
+ C
+ \end{itemize}
+\end{frame}
+\end{verbatim}
+
+ \articlenote
+ This command is ignored.
+
+\end{command}
+
+To ``unpause'' some text, that is, to temporarily suspend pausing, use the command |\onslide|, see below.
+
+
+\subsection{The General Concept of Overlay Specifications}
+\label{section-concept-overlays}
+
+The approach taken by most presentation classes to overlays is somewhat similar to the above |\pause| command. These commands get a certain slide number as input and affect the text on the slide following this command in a certain way. For example, \textsc{prosper}'s |\FromSlide{2}| command causes all text following this command to be shown only from the second slide on.
+
+The \beamer\ class uses a different approach (though the abovementioned command is also available: |\onslide<2->| will have the same effect as |\FromSlide{2}|, except that |\onslide| transcends environments; likewise, |\pause| is internally mapped to a command with an appropriate overlay specification). The idea is to add \emph{overlay specifications} to certain commands. These specifications are always given in pointed brackets and follow the command ``as soon as possible,'' though in certain cases \beamer\ also allows overlay specification to be given a little later. In the simplest case, the specification contains just a number. A command with an overlay specification following it will only have ``effect'' on the slide(s) mentioned in the specification. What exactly ``having an effect'' means, depends on the command. Consider the following example.
+\begin{verbatim}
+\begin{frame}
+ \textbf{This line is bold on all three slides.}
+ \textbf<2>{This line is bold only on the second slide.}
+ \textbf<3>{This line is bold only on the third slide.}
+\end{frame}
+\end{verbatim}
+
+For the command |\textbf|, the overlay specification causes the text to be set in boldface only on the specified slides. On all other slides, the text is set in a normal font.
+
+For a second example, consider the following frame:
+\begin{verbatim}
+\begin{frame}
+ \only<1>{This line is inserted only on slide 1.}
+ \only<2>{This line is inserted only on slide 2.}
+\end{frame}
+\end{verbatim}
+
+The command |\only|, which is introduced by \beamer, normally simply inserts its parameter into the current frame. However, if an overlay specification is present, it ``throws away'' its parameter on slides that are not mentioned.
+
+Overlay specifications can only be written behind certain commands, not every command. Which commands you can use and which effects this will have is explained in the next section. However, it is quite easy to redefine an existing command such that it becomes ``overlay specification aware,'' see also Section~\ref{section-overlay-commands}.
+
+The syntax of (basic) overlay specifications is the following: They are comma-separated lists of slides and ranges. Ranges are specified like this: |2-5|, which means slide two through to five. The start or the end of a range can be omitted. For example, |3-| means ``slides three, four, five, and so on'' and |-5| means the same as |1-5|. A complicated example is |-3,6-8,10,12-15|, which selects the slides 1, 2, 3, 6, 7, 8, 10, 12, 13, 14, and 15.
+
+
+\subsection{Commands with Overlay Specifications}
+\label{section-overlay-commands}
+
+\textbf{Important:} Due to the way overlay specifications are implemented, the
+commands documented here are \emph{all} fragile even if the \LaTeXe{} kernel
+versions are not.
+
+For the following commands, adding an overlay specification causes the command to be simply ignored on slides that are not included in the specification: |\textbf|, |\textit|, |\textmd|, |\textnormal|, |\textrm|, |\textsc|, |\textsf|, |\textsl|, |\texttt|, |\textup|, |\emph|; |\color|, |\textcolor|; |\alert|, |\structure|. If a command takes several arguments, like |\color|, the specification should directly follow the command as in the following example (but there are exceptions to this rule):
+\begin{verbatim}
+\begin{frame}
+ \color<2-3>[rgb]{1,0,0} This text is red on slides 2 and 3, otherwise black.
+\end{frame}
+\end{verbatim}
+
+For the following commands, the effect of an overlay specification is special:
+
+\begin{command}{\onslide\opt{\meta{modifier}}\sarg{overlay specification}\opt{\marg{text}}}
+ The behavior of this command depends on whether the optional argument \meta{text} is given or not (note that the optional argument is given in \emph{normal} braces, not in square brackets). If present, the \meta{modifier} can be either a~|+| or a~|*|.
+
+ If no \meta{text} is given, the following happens: All text following this command will only be shown (uncovered) on the specified slides. On non-specified slides, the text still occupies space. If no slides are specified, the following text is always shown. You need not call this command in the same \TeX\ group, its effect transcends block groups. However, this command has a \emph{different} effect inside an |overprint| environment, see the description of |overprint|.
+
+ If the \meta{modifier} is |+|, hidden text will not be treated as covered, but as invisible. The difference is the same as the difference between |\uncover| and |\visible|. The modifier |*| may not be given if no \meta{text} argument is present.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ Shown on first slide.
+ \onslide<2-3>
+ Shown on second and third slide.
+ \begin{itemize}
+ \item
+ Still shown on the second and third slide.
+ \onslide+<4->
+ \item
+ Shown from slide 4 on.
+ \end{itemize}
+ Shown from slide 4 on.
+ \onslide
+ Shown on all slides.
+\end{frame}
+\end{verbatim}
+
+ If a \meta{text} argument is present, |\onslide| (without a \meta{modifier}) is mapped to |\uncover|, |\onslide+| is mapped to |\visible|, and |\onslide*| is mapped to |\only|.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \onslide<1>{Same effect as the following command.}
+ \uncover<1>{Same effect as the previous command.}
+
+ \onslide+<2>{Same effect as the following command.}
+ \visible<2>{Same effect as the previous command.}
+
+ \onslide*<3>{Same effect as the following command.}
+ \only<3>{Same effect as the previous command.}
+\end{frame}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\only\sarg{overlay specification}\marg{text}\sarg{overlay specification}}
+ If either \meta{overlay specification} is present (though only one may be present), the \meta{text} is inserted only into the specified slides. For other slides, the text is simply thrown away. In particular, it occupies no space.
+
+ \example
+ |\only<3->{Text inserted from slide 3 on.}|
+
+ Since the overlay specification may also be given after the text, you can often use |\only| to make other commands overlay specification-aware in a simple manner:
+
+ \example
+\begin{verbatim}
+\newcommand{\myblue}{\only{\color{blue}}}
+\begin{frame}
+ \myblue<2> This text is blue only on slide 2.
+\end{frame}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\uncover\sarg{overlay specification}\marg{text}}
+ If the \meta{overlay specification} is present, the \meta{text} is shown (``uncovered'') only on the specified slides. On other slides, the text still occupies space and it is still typeset, but it is not shown or only shown as if transparent. For details on how to specify whether the text is invisible or just transparent see Section~\ref{section-transparent}.
+
+ \example
+ |\uncover<3->{Text shown from slide 3 on.}|
+
+ \articlenote
+ This command has the same effect as |\only|.
+\end{command}
+
+\begin{command}{\visible\sarg{overlay specification}\marg{text}}
+ This command does almost the same as |\uncover|. The only difference is that if the text is not shown, it is never shown in a transparent way, but rather it is not shown at all. Thus, for this command the transparency settings have no effect.
+
+ \example
+ |\visible<2->{Text shown from slide 2 on.}|
+
+ \articlenote
+ This command has the same effect as |\only|.
+\end{command}
+
+\begin{command}{\invisible\sarg{overlay specification}\marg{text}}
+ This command is the opposite of |\visible|.
+
+ \example
+ |\invisible<-2>{Text shown from slide 3 on.}|
+\end{command}
+
+\begin{command}{\alt\sarg{overlay specification}\marg{default text}\marg{alternative text}\sarg{overlay specification}}
+ Only one \meta{overlay specification} may be given. The default text is shown on the specified slides, otherwise the alternative text. The specification must always be present.
+
+ \example
+ |\alt<2>{On Slide 2}{Not on slide 2.}|
+
+ Once more, giving the overlay specification at the end is useful when the command is used inside other commands.
+
+ \example
+ Here is the definition of |\uncover|:
+\begin{verbatim}
+\newcommand{\uncover}{\alt{\@firstofone}{\makeinvisible}}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\temporal\ssarg{overlay specification}\marg{before slide text}\marg{default text}\marg{after slide text}}
+ This command alternates between three different texts, depending on whether the current slide is temporally before the specified slides, is one of the specified slides, or comes after them. If the \meta{overlay specification} is not an interval (that is, if it has a ``hole''), the ``hole'' is considered to be part of the before slides.
+
+ \example
+\begin{verbatim}
+ \temporal<3-4>{Shown on 1, 2}{Shown on 3, 4}{Shown 5, 6, 7, ...}
+ \temporal<3,5>{Shown on 1, 2, 4}{Shown on 3, 5}{Shown 6, 7, 8, ...}
+\end{verbatim}
+
+ As a possible application of the |\temporal| command consider the following example:
+
+ \example
+\begin{verbatim}
+\def\colorize<#1>{%
+ \temporal<#1>{\color{red!50}}{\color{black}}{\color{black!50}}}
+
+\begin{frame}
+ \begin{itemize}
+ \colorize<1> \item First item.
+ \colorize<2> \item Second item.
+ \colorize<3> \item Third item.
+ \colorize<4> \item Fourth item.
+ \end{itemize}
+\end{frame}
+\end{verbatim}
+\end{command}
+
+
+\begin{command}{\item\sarg{alert specification}\oarg{item label}\sarg{alert specification}}
+ \beamernote
+ Only one \meta{alert specification} may be given. The effect of \meta{alert specification} is described in Section~\ref{section-action-specifications}.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \begin{itemize}
+ \item<1-> First point, shown on all slides.
+ \item<2-> Second point, shown on slide 2 and later.
+ \item<2-> Third point, also shown on slide 2 and later.
+ \item<3-> Fourth point, shown on slide 3.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}
+ \begin{enumerate}
+ \item<3-| alert@3>[0.] A zeroth point, shown at the very end.
+ \item<1-| alert@1> The first and main point.
+ \item<2-| alert@2> The second point.
+ \end{enumerate}
+\end{frame}
+\end{verbatim}
+
+ \articlenote
+ The \meta{action specification} is currently completely ignored.
+
+\end{command}
+
+The related command |\bibitem| is also overlay specification-aware in the same way as |\item|.
+
+\begin{command}{\label\sarg{overlay specification}\marg{label name}}
+ If the \meta{overlay specification} is present, the label is only inserted on the specified slide. Inserting a label on more than one slide will cause a `multiple labels' warning. \emph{However}, if no overlay specification is present, the specification is automatically set to just `1' and the label is thus inserted only on the first slide. This is typically the desired behavior since it does not really matter on which slide the label is inserted, \emph{except} if you use an |\only| command and \emph{except} if you wish to use that label as a hyperjump target. Then you need to specify a slide.
+
+ Labels can be used as target of hyperjumps. A convenient way of labelling a frame is to use the |label=|\meta{name} option of the |frame| environment. However, this will cause the whole frame to be kept in memory till the end of the compilation, which may pose a problem.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \begin{align}
+ a &= b + c \label{first}\\ % no specification needed
+ c &= d + e \label{second}\\% no specification needed
+ \end{align}
+
+ Blah blah, \uncover<2>{more blah blah.}
+
+ \only<3>{Specification is needed now.\label<3>{mylabel}}
+\end{frame}
+\end{verbatim}
+\end{command}
+
+
+\subsection{Environments with Overlay Specifications}
+
+Environments can also be equipped with overlay specifications. For most of the predefined environments, see Section~\ref{predefined}, adding an overlay specification causes the whole environment to be uncovered only on the specified slides. This is useful for showing things incrementally as in the following example.
+\begin{verbatim}
+\begin{frame}
+ \frametitle{A Theorem on Infinite Sets}
+
+ \begin{theorem}<1->
+ There exists an infinite set.
+ \end{theorem}
+
+ \begin{proof}<3->
+ This follows from the axiom of infinity.
+ \end{proof}
+
+ \begin{example}<2->
+ The set of natural numbers is infinite.
+ \end{example}
+\end{frame}
+\end{verbatim}
+
+In the example, the first slide only contains the theorem, on the second slide an example is added, and on the third slide the proof is also shown.
+
+For each of the basic commands |\only|, |\alt|, |\visible|, |\uncover|, and |\invisible| there exists ``environment versions'' |onlyenv|, |altenv|, |visibleenv|, |uncoverenv|, and |invisibleenv|. Except for |altenv| and |onlyenv|, these environments do the same as the commands.
+
+\begin{environment}{{onlyenv}\sarg{overlay specification}}
+ If the \meta{overlay specification} is given, the contents of the environment is inserted into the text only on the specified slides. The difference to |\only| is, that the text is actually typeset inside a box that is then thrown away, whereas |\only| immediately throws away its contents. If the text is not ``typesettable,'' the |onlyenv| may produce an error where |\only| would not.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ This line is always shown.
+ \begin{onlyenv}<2>
+ This line is inserted on slide 2.
+ \end{onlyenv}
+\end{frame}
+\end{verbatim}
+\end{environment}
+
+\begin{environment}{{altenv}\sarg{overlay specification}\marg{begin text}\marg{end text}\marg{alternate begin text}\marg{alternate end text}\sarg{overlay specification}}
+ Only one \meta{overlay specification} may be given. On the specified slides, \meta{begin text} will be inserted at the beginning of the environment and \meta{end text} will be inserted at the end. On all other slides, \meta{alternate begin text} and \meta{alternate end text} will be used.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ This
+ \begin{altenv}<2>{(}{)}{[}{]}
+ word
+ \end{altenv}
+ is in round brackets on slide 2 and in square brackets on slide 1.
+\end{frame}
+\end{verbatim}
+\end{environment}
+
+
+\subsection{Dynamically Changing Text or Images}
+
+You may sometimes wish to have some part of a frame change dynamically from slide to slide. On each slide of the frame, something different should be shown inside this area. You could achieve the effect of dynamically changing text by giving a list of |\only| commands like this:
+\begin{verbatim}
+ \only<1>{Initial text.}
+ \only<2>{Replaced by this on second slide.}
+ \only<3>{Replaced again by this on third slide.}
+\end{verbatim}
+
+The trouble with this approach is that it may lead to slight, but annoying differences in the heights of the lines, which may cause the whole frame to ``wobble'' from slide to slide. This problem becomes much more severe if the replacement text is several lines long.
+
+To solve this problem, you can use two environments: |overlayarea| and |overprint|. The first is more flexible, but less user-friendly.
+
+\begin{environment}{{overlayarea}\marg{area width}\marg{area height}}
+ Everything within the environment will be placed in a rectangular area of the specified size. The area will have the same size on all slides of a frame, regardless of its actual contents.
+
+ \example
+\begin{verbatim}
+\begin{overlayarea}{\textwidth}{3cm}
+ \only<1>{Some text for the first slide.\\Possibly several lines long.}
+ \only<2>{Replacement on the second slide.}
+\end{overlayarea}
+\end{verbatim}
+
+\end{environment}
+
+\begin{environment}{{overprint}\oarg{area width}}
+ The \meta{area width} defaults to the text width. Inside the environment, use |\onslide| commands to specify different things that should be shown for this environment on different slides. The |\onslide| commands are used like |\item| commands. Everything within the environment will be placed in a rectangular area of the specified width. The height and depth of the area are chosen large enough to accommodate the largest contents of the area. The overlay specifications of the |\onslide| commands must be disjoint. This may be a problem for handouts, since, there, all overlay specifications default to |1|. If you use the option |handout|, you can disable all but one |\onslide| by setting the others to |0|.
+
+ \example
+\begin{verbatim}
+\begin{overprint}
+ \onslide<1| handout:1>
+ Some text for the first slide.\\
+ Possibly several lines long.
+ \onslide<2| handout:0>
+ Replacement on the second slide. Suppressed for handout.
+\end{overprint}
+\end{verbatim}
+
+\end{environment}
+
+A similar need for dynamical changes arises when you have, say, a series of pictures named |first.pdf|, |second.pdf|, and |third.pdf| that show different stages of some process. To make a frame that shows these pictures on different slides, the following code might be used:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{The Three Process Stages}
+
+ \includegraphics<1>{first.pdf}
+ \includegraphics<2>{second.pdf}
+ \includegraphics<3>{third.pdf}
+\end{frame}
+\end{verbatim}
+
+The above code uses the fact the \beamer\ makes the |\includegraphics| command overlay specification-aware. It works nicely, but only if each |.pdf| file contains the complete graphic to be shown. However, some programs, like |xfig|, sometimes also produce series of graphics in which each file just contains the \emph{additional} graphic elements to be shown on the next slide. In this case, the first graphic must be shown not on overlay~1, but from overlay~1 on, and so on. While this is easy to achieve by changing the overlay specification |<1>| to |<1->|, the graphics must also be shown \emph{on top of each other}. An easy way to achieve this is to use \TeX's |\llap| command like this:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{The Three Process Stages}
+
+ \includegraphics<1->{first.pdf}%
+ \llap{\includegraphics<2->{second.pdf}}%
+ \llap{\includegraphics<3->{third.pdf}}
+\end{frame}
+\end{verbatim}
+
+or like this:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{The Three Process Stages}
+
+ \includegraphics{first.pdf}%
+ \pause%
+ \llap{\includegraphics{second.pdf}}%
+ \pause%
+ \llap{\includegraphics{third.pdf}}
+\end{frame}
+\end{verbatim}
+
+A more convenient way is to use the |\multiinclude| command, see Section~\ref{section-xmpmulti} for details.
+
+
+\subsection{Advanced Overlay Specifications}
+
+\subsubsection{Making Commands and Environments Overlay Specification-Aware}
+
+This section explains how to define new commands that are overlay specification-aware. Also, it explains how to setup counters correctly that should be increased from frame to frame (like equation numbering), but not from slide to slide. You may wish to skip this section, unless you want to write your own extensions to the \beamer\ class.
+
+\beamer\ extends the syntax of \LaTeX's standard command |\newcommand|:
+
+\begin{command}{\newcommand\declare{|<>|}\marg{command name}\oarg{argument number}\oarg{default optional value}\marg{text}}
+ Declares the new command named \meta{command name}. The \meta{text} should contain the body of this command and it may contain occurrences of parameters like |#|\meta{number}. Here \meta{number} may be between 1 and $\mbox{\meta{argument number}}+1$. The additionally allowed argument is the overlay specification.
+
+ When \meta{command name} is used, it will scan as many as \meta{argument number} arguments. While scanning them, it will look for an overlay specification, which may be given between any two arguments, before the first argument, or after the last argument. If it finds an overlay specification like |<3>|, it will call \meta{text} with arguments 1 to \meta{argument number} set to the normal arguments and the argument number $\mbox{\meta{argument number}}+1$ set to |<3>| (including the pointed brackets). If no overlay specification is found, the extra argument is empty.
+
+ If the \meta{default optional value} is provided, the first argument of \meta{command name} is optional. If no optional argument is specified in square brackets, the \meta{default optional value} is used.
+
+ \example
+ The following command will typeset its argument in red on the specified slides:
+\begin{verbatim}
+\newcommand<>{\makered}[1]{{\color#2{red}#1}}
+\end{verbatim}
+
+ \example
+ Here is \beamer's definition of |\emph|:
+\begin{verbatim}
+\newcommand<>{\emph}[1]{{\only#2{\itshape}#1}}
+\end{verbatim}
+
+ \example
+ Here is \beamer's definition of |\transdissolve| (the command |\beamer@dotrans| mainly passes its argument to |hyperref|):
+\begin{verbatim}
+\newcommand<>{\transdissolve}[1][]{\only#2{\beamer@dotrans[#1]{Dissolve}}}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\renewcommand\declare{|<>|}\marg{existing command name}\oarg{argument number}\oarg{default optional value}\marg{text}}
+ Redeclares a command that already exists in the same way as |\newcommand<>|. Inside \meta{text}, you can still access to original definitions using the command |\beameroriginal|, see the example.
+
+ \example
+ This command is used in \beamer\ to make |\hyperlink| overlay specification-aware:
+\begin{verbatim}
+\renewcommand<>{\hyperlink}[2]{\only#3{\beameroriginal{\hyperlink}{#1}{#2}}}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\newenvironment\declare{|<>|}\marg{environment name}\oarg{argument number}\oarg{default optional value}\\ \marg{begin text}\marg{end text}}
+ Declares a new environment that is overlay specification-aware. If this environment is encountered, the same algorithm as for |\newcommand<>| is used to parse the arguments and the overlay specification.
+
+ Note that, as always, the \meta{end text} may not contain any arguments like |#1|. In particular, you do not have access to the overlay specification. In this case, it is usually a good idea to use |altenv| environment in the \meta{begin text}.
+
+ \example
+ Declare your own action block:
+\begin{verbatim}
+\newenvironment<>{myboldblock}[1]{%
+ \begin{actionenv}#2%
+ \textbf{#1}
+ \par}
+ {\par%
+ \end{actionenv}}
+
+\begin{frame}
+ \begin{myboldblock}<2>
+ This theorem is shown only on the second slide.
+ \end{myboldblock}
+\end{frame}
+\end{verbatim}
+
+ \example
+ Text in the following environment is normally bold and italic on non-specified slides:
+\begin{verbatim}
+\newenvironment<>{boldornormal}
+ {\begin{altenv}#1
+ {\begin{bfseries}}{\end{bfseries}}
+ {}{}}
+ {\end{altenv}}
+\end{verbatim}
+
+ Incidentally, since |altenv| also accepts its argument at the end, the same effect could have been achieved using just
+\begin{verbatim}
+\newenvironment{boldornormal}
+ {\begin{altenv}
+ {\begin{bfseries}}{\end{bfseries}}
+ {}{}}
+ {\end{altenv}}
+\end{verbatim}
+\end{command}
+
+\begin{command}{\renewenvironment\declare{|<>|}\marg{existing environment name}\oarg{argument number}\oarg{default optional value}\\ \marg{begin text}\marg{end text}}
+ Redefines an existing environment. The original environment is still available under the name |original|\meta{existing environment name}.
+
+ \example
+\begin{verbatim}
+\renewenvironment<>{verse}
+{\begin{actionenv}#1\begin{originalverse}}
+{\end{originalverse}\end{actionenv}}
+\end{verbatim}
+\end{command}
+
+The following two commands can be used to ensure that a certain counter is automatically reset on subsequent slides of a frame. This is necessary for example for the equation count. You might want this count to be increased from frame to frame, but certainly not from overlay slide to overlay slide. For equation counters and footnote counters (you should not use footnotes), these commands have already been invoked.
+
+\begin{command}{\resetcounteronoverlays\marg{counter name}}
+ After you have invoked this command, the value of the specified counter will be the same on all slides of every frame.
+ \example
+ |\resetcounteronoverlays{equation}|
+\end{command}
+
+\begin{command}{\resetcountonoverlays\marg{count register name}}
+ The same as |\resetcounteronoverlays|, except that this command should be used with counts that have been created using the \TeX\ primitive |\newcount| instead of \LaTeX's |\definecounter|.
+ \example
+\begin{verbatim}
+\newcount\mycount
+\resetcountonoverlays{mycount}
+\end{verbatim}
+\end{command}
+
+\subsubsection{Mode Specifications}
+
+This section is only important if you use \beamer's mode mechanism to create different versions of your presentation. If you are not familiar with \beamer's modes, please skip this section or read Section~\ref{section-modes} first.
+
+In certain cases you may wish to have different overlay specifications to apply to a command in different modes. For example, you might wish a certain text to appear only from the third slide on during your presentation, but in a handout for the audience there should be no third slide and the text should appear already on the second slide. In this case you could write
+\begin{verbatim}
+\only<3| handout:2>{Some text}
+\end{verbatim}
+
+The vertical bar separates the two different specifications |3| and |handout:2|. By writing a mode name before a colon, you specify that the following specification only applies to that mode. If no mode is given, as in |3|, the mode |beamer| is automatically added. For this reason, if you write |\only<3>{Text}| and you are in |handout| mode, the text will be shown on all slides since there is no restriction specified for handouts and since the |3| is the same as |beamer:3|.
+
+It is also possible to give an overlay specification that contains only a mode name (or several, separated by vertical bars):
+\begin{verbatim}
+\only<article>{This text is shown only in article mode.}
+\end{verbatim}
+
+An overlay specification that does not contain any slide numbers is called a (pure) \emph{mode specification}. If a mode specification is given, all modes that are not mentioned are automatically suppressed. Thus |<beamer:1->| means ``on all slides in |beamer| mode and also on all slides in all other modes, since nothing special is specified for them,'' whereas |<beamer>| means ``on all slides in |beamer| mode and not on any other slide.''
+
+Mode specifications can also be used outside frames as in the following examples:
+\begin{verbatim}
+\section<presentation>{This section exists only in the presentation modes}
+\section<article>{This section exists only in the article mode}
+\end{verbatim}
+
+Presentation modes include |beamer|, |trans| and |handout|.
+
+You can also mix pure mode specifications and overlay specifications, although this can get confusing:
+\begin{verbatim}
+\only<article| beamer:1>{Riddle}
+\end{verbatim}
+
+This will cause the text |Riddle| to be inserted in |article| mode and on the first slide of a frame in |beamer| mode, but not at all in |handout| or |trans| mode. (Try to find out how \verb/<beamer| beamer:1>/ differs from |<beamer>| and from |<beamer:1>|.)
+
+As if all this were not already complicated enough, there is another mode that behaves in a special way: the mode |second|. For this mode a special rule applies: An overlay specification for mode |beamer| also applies to mode |second| (but not the other way round). Thus, if we are in mode |second|, the specification |<second:2>| means ``on slide 2'' and |<beamer:2>| also means ``on slide 2''. To get a slide that is typeset in |beamer| mode, but not in |second| mode, you can use, |<second:0>|.
+
+\subsubsection{Action Specifications}
+\label{section-action-specifications}
+
+This section also introduces a rather advanced concept. You may also wish to skip it on first reading.
+
+Some overlay specification-aware commands cannot handle not only normal overlay specifications, but also so called \emph{action specifications}. In an action specification, the list of slide numbers and ranges is prefixed by \meta{action}|@|, where \meta{action} is the name of a certain action to be taken on the specified slides:
+\begin{verbatim}
+\item<3-| alert@3> Shown from slide 3 on, alerted on slide 3.
+\end{verbatim}
+
+In the above example, the |\item| command, which allows actions to be specified, will uncover the item text from slide three on and it will, additionally, alert this item exactly on slide 3.
+
+Not all commands can take an action specification. Currently, only |\item| (though not in |article| mode currently), |\action|, the environment |actionenv|, and the block environments (like |block| or |theorem|) handle them.
+
+By default, the following actions are available:
+\begin{itemize}
+\item \declare{|alert|} alters the item or block.
+\item \declare{|uncover|} uncovers the item or block (this is the default, if no action is specified).
+\item \declare{|only|} causes the whole item or block to be inserted only on the specified slides.
+\item \declare{|visible|} causes the text to become visible only on the specified slides (the difference between |uncover| and |visible| is the same as between |\uncover| and |\visible|).
+\item \declare{|invisible|} causes the text to become invisible on the specified slides.
+\end{itemize}
+
+The rest of this section explains how you can add your own actions and make commands action-specification-aware. You may wish to skip it upon first reading.
+
+You can easily add your own actions: An action specification like \meta{action}|@|\meta{slide numbers} simply inserts an environment called \meta{action}|env| around the |\item| or parameter of |\action| with |<|\meta{slide numbers}|>| as overlay specification. Thus, by defining a new overlay specification-aware environment named \meta{my action name}|env|, you can add your own action:
+\begin{verbatim}
+\newenvironment{checkenv}{\only{\setbeamertemplate{itemize item}{X}}}{}
+\end{verbatim}
+
+You can then write
+\begin{verbatim}
+\item<beamer:check@2> Text.
+\end{verbatim}
+
+This will change the itemization symbol before |Text.| to |X| on slide~2 in |beamer| mode. The definition of |checkenv| used the fact that |\only| also accepts an overlay specification given after its argument.
+
+The whole action mechanism is based on the following environment:
+
+\begin{environment}{{actionenv}\sarg{action specification}}
+ This environment extracts all actions from the \meta{action specification} for the current mode. For each action of the form \meta{action}|@|\meta{slide numbers}, it inserts the following text: |\begin{|\meta{action}|env}<|\meta{slide number}|>| at the beginning of the environment and the text |\end{|\meta{action}|env}| at the end. If there are several action specifications, several environments are opened (and closed in the appropriate order). An \meta{overlay specification} without an action is promoted to |uncover@|\meta{overlay specification}.
+
+ If the so called \emph{default overlay specification} is not empty, it will be used in case no \meta{action specification} is given. The default overlay specification is usually just empty, but it may be set either by providing an additional optional argument to the command |\frame| or to the environments |itemize|, |enumerate|, or |description| (see these for details). Also, the default action specification can be set using the command |\beamerdefaultoverlayspecification|, see below.
+
+ \example
+\begin{verbatim}
+\begin{frame}
+ \begin{actionenv}<2-| alert@3-4,6>
+ This text is shown the same way as the text below.
+ \end{actionenv}
+
+ \begin{uncoverenv}<2->
+ \begin{alertenv}<3-4,6>
+ This text is shown the same way as the text above.
+ \end{alertenv}
+ \end{uncoverenv}
+\end{frame}
+\end{verbatim}
+\end{environment}
+
+\begin{command}{\action\sarg{action specification}\marg{text}}
+ This has the same effect as putting \meta{text} in an |actionenv|.
+
+ \example
+ |\action<alert@2>{Could also have used \texttt{\string\alert<2>\char`\{\char`\}}.}|
+\end{command}
+
+\begin{command}{\beamerdefaultoverlayspecification\marg{default overlay specification}}
+ Locally sets the default overlay specification to the given value. This overlay specification will be used in every |actionenv| environment and every |\item| that does not have its own overlay specification. The main use of this command is to install an incremental overlay specification like |<+->| or \verb/<+-| alert@+>/, see Section~\ref{section-incremental}.
+
+ Usually, the default overlay specification is installed automatically by the optional arguments to |\frame|, |frame|, |itemize|, |enumerate|, and |description|. You will only have to use this command if you wish to do funny things.
+
+ If given outside any frame, this command sets the default overlay specification for all following frames for which you do not override the default overlay specification.
+
+ \example
+ |\beamerdefaultoverlayspecification{<+->}|
+
+ \example
+ |\beamerdefaultoverlayspecification{}| clears the default overlay specification. (Actually, it installs the default overlay specification |<*>|, which just means ``always,'' but the ``portable'' way of clearing the default overlay specification is this call.)
+\end{command}
+
+\subsubsection{Incremental Specifications}
+\label{section-incremental}
+
+This section is mostly important for people who have already used overlay specifications a lot and have grown tired of writing things like |<1->|, |<2->|, |<3->|, and so on again and again. You should skip this section on first reading.
+
+Often you want to have overlay specifications that follow a pattern similar to the following:
+\begin{verbatim}
+\begin{itemize}
+\item<1-> Apple
+\item<2-> Peach
+\item<3-> Plum
+\item<4-> Orange
+\end{itemize}
+\end{verbatim}
+
+The problem starts if you decide to insert a new fruit, say, at the beginning. In this case, you would have to adjust all of the overlay specifications. Also, if you add a |\pause| command before the |itemize|, you would also have to update the overlay specifications.
+
+\beamer\ offers a special syntax to make creating lists as the one above more ``robust.'' You can replace it by the following list of \emph{incremental overlay specifications}:
+\begin{verbatim}
+\begin{itemize}
+\item<+-> Apple
+\item<+-> Peach
+\item<+-> Plum
+\item<+-> Orange
+\end{itemize}
+\end{verbatim}
+
+The effect of the |+|-sign is the following: You can use it in any overlay specification at any point where you would usually use a number. If a |+|-sign is encountered, it is replaced by the current value of the \LaTeX\ counter |beamerpauses|, which is 1 at the beginning of the frame. Then the counter is increased by 1, though it is only increased once for every overlay specification, even if the specification contains multiple |+|-signs (they are replaced by the same number).
+
+In the above example, the first specification is replaced by |<1->|. Then the second is replaced by |<2->| and so forth. We can now easily insert new entries, without having to change anything else. We might also write the following:
+\begin{verbatim}
+\begin{itemize}
+\item<+-| alert@+> Apple
+\item<+-| alert@+> Peach
+\item<+-| alert@+> Plum
+\item<+-| alert@+> Orange
+\end{itemize}
+\end{verbatim}
+
+This will alert the current item when it is uncovered. For example, the first specification \verb/<+-| alert@+>/ is replaced by \verb/<1-| alert@1>/, the second is replaced by \verb/<2-| alert@2>/, and so on. Since the |itemize| environment also allows you to specify a default overlay specification, see the documentation of that environment, the above example can be written even more economically as follows:
+\begin{verbatim}
+\begin{itemize}[<+-| alert@+>]
+\item Apple
+\item Peach
+\item Plum
+\item Orange
+\end{itemize}
+\end{verbatim}
+
+The |\pause| command also updates the counter |beamerpauses|. You can change this counter yourself using the normal \LaTeX\ commands |\setcounter| or |\addtocounter|.
+
+Any occurrence of a |+|-sign may be followed by an
+\emph{offset} in round brackets. This offset will
+be added to the value of |beamerpauses|. Thus, if
+|beamerpauses| is 2, then |<+(1)->| expands to
+|<3->| and |<+(-1)-+>| expands to |<1-2>|. For example
+\begin{verbatim}
+\begin{frame}
+\frametitle{Method 1}
+\begin{itemize}
+\item<2-> Apple
+\item<3-> Peach
+\item<4-> Plum
+\item<5-> Orange
+\end{itemize}
+\end{verbatim}
+and
+\begin{verbatim}
+\begin{itemize}[<+(1)->]
+\item Apple
+\item Peach
+\item Plum
+\item Orange
+\end{itemize}
+\end{verbatim}
+are equivalent.
+
+There is another special sign you can use in an overlay specification that behaves similarly to the |+|-sign: a dot. When you write |<.->|, a similar thing as in |<+->| happens \emph{except} that the counter |beamerpauses| is \emph{not} incremented and \emph{except} that you get the value of |beamerpauses| decreased by one. Thus a dot, possibly followed by an offset, just expands to the current value of the counter |beamerpauses| minus one, possibly offset. This dot notation can be useful in case like the following:
+\begin{verbatim}
+\begin{itemize}[<+->]
+\item Apple
+\item<.-> Peach
+\item Plum
+\item Orange
+\end{itemize}
+\end{verbatim}
+
+In the example, the second item is shown at the same time as the first one since it does not update the counter.
+
+In the following example, each time an item is uncovered, the specified text is alerted. When the next item is uncovered, this altering ends.
+\begin{verbatim}
+\begin{itemize}[<+->]
+\item This is \alert<.>{important}.
+\item We want to \alert<.>{highlight} this and \alert<.>{this}.
+\item What is the \alert<.>{matrix}?
+\end{itemize}
+\end{verbatim}
+
+The expansions of the |+|-sign and the |.|-sign are no less than zero. This prevents errors when encountering large negative offsets, for example |<+(-7)->| is expanded to |<0->| rather than |<-6->|.
diff --git a/macros/latex/contrib/beamer/doc/beamerug-solutions.tex b/macros/latex/contrib/beamer/doc/beamerug-solutions.tex
new file mode 100644
index 0000000000..b7ea537d99
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-solutions.tex
@@ -0,0 +1,64 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2013,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Solution Templates}
+\label{section-solutions}
+
+In the subdirectories of the directory |beamer/solutions| you will find \emph{solution templates} in different languages. A solution template is a \TeX-text that ``solves'' a specific problem. Such a problem might be ``I need to create a 20 minute talk for a conference'' or ``I want to create a slide that introduces the next speaker'' or ``I want to create a table that is uncovered piecewise.'' For such a problem, a solution template consists of a mixture of a template and an example that can be used to solve this particular problem. Just copy the solution template file (or parts of it) and freely adjust them to your needs.
+
+The collecting of \beamer\ solution templates has only begun and currently there are only very few of them. We hope that in the future more solutions will become available and we would like to encourage users of the \beamer\ class to send us solutions they develop. We would also like to encourage users to help in translating solutions to languages other than English and German. If you have written a solution or a translation, please feel free to send it to us (make sure however, that it contains about the same amount of explanations and justifications as do the existing solutions).
+
+The following list of solution templates is sorted by the length of the talks for which they provide a template. As always, the solutions can be found in the directory |beamer/solutions|.
+
+\begin{solution}{short-talks/speaker\_introduction-ornate-2min}
+ \begin{itemize}
+ \item
+ Introducing another speaker.
+ \item
+ Talk length is about 2min.
+ \item
+ Ornate style.
+ \end{itemize}
+
+ \beamernote
+ \TeX-version available in languages |de|, |en|, and |fr|.
+
+\end{solution}
+
+\begin{solution}{generic-talks/generic-ornate-15min-45min}
+ \begin{itemize}
+ \item
+ Generic solution template for talks on any subject.
+ \item
+ Talk length is between 15min and 45min.
+ \item
+ Ornate style.
+ \end{itemize}
+
+ \beamernote
+ \TeX-version available in languages |de|, |en|, and |fr|.
+
+\end{solution}
+
+\begin{solution}{conference-talks/conference-ornate-20min}
+ \begin{itemize}
+ \item
+ Talk at a conference/colloquium.
+ \item
+ Talk length is about 20 minutes.
+ \item
+ Ornate style.
+ \end{itemize}
+
+ \beamernote
+ \TeX-version available in languages |de|, |en|, and |fr|.
+
+\end{solution}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-themes.tex b/macros/latex/contrib/beamer/doc/beamerug-themes.tex
new file mode 100644
index 0000000000..3d54536d28
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-themes.tex
@@ -0,0 +1,341 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Themes}
+
+\subsection{Five Flavors of Themes}
+
+\emph{Themes} make it easy to change the appearance of a
+presentation. The \beamer\ class uses five different kinds of themes:
+\begin{description}
+\item[Presentation Themes]
+ Conceptually, a presentation theme dictates for every single detail of a presentation what it looks like. Thus, choosing a particular presentation theme will setup for, say, the numbers in enumeration what color they have, what color their background has, what font is used to render them, whether a circle or ball or rectangle or whatever is drawn behind them, and so forth. Thus, when you choose a presentation theme, your presentation will look the way someone (the creator of the theme) thought that a presentation should look like. Presentation themes typically only choose a particular color theme, font theme, inner theme, and outer theme that go well together.
+\item[Color Themes]
+ A color theme only dictates which colors are used in a presentation. If you have chosen a particular presentation theme and then choose a color theme, only the colors of your presentation will change. A color theme can specify colors in a very detailed way: For example, a color theme can specifically change the colors used to render, say, the border of a button, the background of a button, and the text on a button.
+\item[Font Themes]
+ A font theme dictates which fonts or font attributes are used in a presentation. As for colors, the font of all text elements used in a presentation can be specified independently.
+\item[Inner Themes]
+ An inner theme specifies how certain elements of a presentation are typeset. This includes all elements that are at the ``inside'' of the frame, that is, that are not part of the headline, footline, or sidebars. This includes all enumerations, itemize environments, block environments, theorem environments, or the table of contents. For example, an inner theme might specify that in an enumeration the number should be typeset without a dot and that a small circle should be shown behind it. The inner theme would \emph{not} specify what color should be used for the number or the circle (this is the job of the color theme) nor which font should be used (this is the job of the font theme).
+\item[Outer Themes]
+ An outer theme specifies what the ``outside'' or ``border'' of the presentation slides should look like. It specifies whether there are head- and footlines, what is shown in them, whether there is a sidebar, where the logo goes, where the navigation symbols and bars go, and so on. It also specifies where the frametitle is put and how it is typeset.
+\end{description}
+
+The different themes reside in the five subdirectories |theme|, |color|, |font|, |inner|, and |outer| of the directory |beamer/themes|. Internally, a theme is stored as a normal style file. However, to use a theme, the following special commands should be used:
+
+\begin{command}{\usetheme\oarg{options}\marg{name list}}
+ Installs the presentation theme named \meta{name}. Currently, the effect of this command is the same as saying |\usepackage| for the style file named |beamertheme|\meta{name}|.sty| for each \meta{name} in the \meta{name list}.
+\end{command}
+
+
+\begin{command}{\usecolortheme\oarg{options}\marg{name list}}
+ Same as |\usetheme|, only for color themes. Color style files are named |beamercolortheme|\meta{name}|.sty|.
+\end{command}
+
+\begin{command}{\usefonttheme\oarg{options}\marg{name}}
+ Same as |\usetheme|, only for font themes. Font style files are named |beamerfonttheme|\meta{name}|.sty|.
+\end{command}
+
+\begin{command}{\useinnertheme\oarg{options}\marg{name}}
+ Same as |\usetheme|, only for inner themes. Inner style files are named |beamerinnertheme|\meta{name}|.sty|.
+\end{command}
+
+\begin{command}{\useoutertheme\oarg{options}\marg{name}}
+ Same as |\usetheme|, only for outer themes. Outer style files are named |beameroutertheme|\meta{name}|.sty|.
+\end{command}
+
+If you do not use any of these commands, a sober \emph{default} theme is used for all of them. In the following, the presentation themes that come with the \beamer\ class are described. The element, layout, color, and font themes are presented in the following sections.
+
+
+\subsection{Presentation Themes without Navigation Bars}
+
+A presentation theme dictates for every single detail of a presentation what it looks like. Normally, having chosen a particular presentation theme, you do not need to specify anything else having to do with the appearance of your presentation---the creator of the theme should have taken care of that for you. However, you still \emph{can} change things afterward either by using a different color, font, element, or even layout theme; or by changing specific colors, fonts, or templates directly.
+
+When Till started naming the presentation themes, he soon ran out of ideas on how to call them. Instead of giving them more and more cumbersome names, he decided to switch to a different naming convention: Except for two special cases, all presentation themes are named after cities. These cities happen to be cities in which or near which there was a conference or workshop that he attended or that a co-author of his attended.
+
+All themes listed without author mentioned were developed by Till. If a theme has not been developed by us (that is, if someone else is to blame), this is indicated with the theme. We have sometimes slightly changed or ``corrected'' submitted themes, but we still list the original authors.
+
+\begin{themeexample}{default}
+ As the name suggests, this theme is installed by default. It is a sober no-nonsense theme that makes minimal use of color or font variations. This theme is useful for all kinds of talks, except for very long talks.
+\end{themeexample}
+
+\begin{themeexample}[{\opt{|[headheight=|\meta{head height}|,footheight=|\meta{foot height}|]|}}]{boxes}
+ For this theme, you can specify an arbitrary number of templates for the boxes in the headline and in the footline. You can add a template for another box by using the following commands.
+
+ \begin{command}{\addheadbox\marg{beamer color}\marg{box template}}
+ Each time this command is invoked, a new box is added to the head line, with the first added box being shown on the left. All boxes will have the same size.
+
+ The \meta{beamer color} will be used to setup the foreground and background colors of the box.
+
+ \example
+\begin{verbatim}
+\addheadbox{section in head/foot}{\tiny\quad 1. Box}
+\addheadbox{structure}{\tiny\quad 2. Box}
+\end{verbatim}
+
+ A similar effect as the above commands can be achieved by directly installing a head template that contains two |beamercolorbox|es:
+
+\begin{verbatim}
+\setbeamertemplate{headline}
+{\leavevmode
+\begin{beamercolorbox}[width=.5\paperwidth]{section in head/foot}
+ \tiny\quad 1. Box
+\end{beamercolorbox}%
+\begin{beamercolorbox}[width=.5\paperwidth]{structure}
+ \tiny\quad 2. Box
+\end{beamercolorbox}
+}
+\end{verbatim}
+
+ While being more complicated, the above commands offer more flexibility.
+ \end{command}
+
+ \begin{command}{\addfootbox\marg{beamer color}\marg{box template}}
+ \example
+\begin{verbatim}
+\addfootbox{section in head/foot}{\tiny\quad 1. Box}
+\addfootbox{structure}{\tiny\quad 2. Box}
+\end{verbatim}
+ \end{command}
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Bergen}
+ A theme based on the |inmargin| inner theme and the |rectangles| inner theme. Using this theme is not quite trivial since getting the spacing right can be trickier than with most other themes. Also, this theme goes badly with columns. You may wish to consult the remarks on the |inmargin| inner theme.
+
+ Bergen is a town in Norway. It hosted \textsc{iwpec} 2004.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Boadilla}
+ A theme giving much information in little space. The following \meta{options} may be given:
+ \begin{itemize}
+ \item \declare{|secheader|} causes a headline to be inserted showing the current section and subsection. By default, this headline is not shown.
+ \end{itemize}
+
+ \themeauthor Manuel Carro. Boadilla is a village in the vicinity of Madrid, hosting the University's Computer Science department.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Madrid}
+ Like the |Boadilla| theme, except that stronger colors are used and that the itemize icons are not modified. The same \meta{options} as for the |Boadilla| theme may be given.
+
+ \themeauthor Manuel Carro. Madrid is the capital of Spain.
+\end{themeexample}
+
+\begin{themeexample}{AnnArbor}
+ Like |Boadilla|, but using the colors of the University of Michigan.
+
+ \themeauthor Madhusudan Singh. The University of Michigan is located at Ann Arbor.
+\end{themeexample}
+
+\begin{themeexample}{CambridgeUS}
+ Like |Boadilla|, but using the colors of MIT.
+
+ \themeauthor Madhusudan Singh.
+\end{themeexample}
+
+\begin{themeexample}{EastLansing}
+ Like |Boadilla|, but using the colors of Michigan State University.
+
+ \themeauthor Alan Munn. Michigan State University is located in East Lansing.
+\end{themeexample}
+
+\begin{themeexample}{Pittsburgh}
+ A sober theme. The right-flushed frame titles creates an interesting ``tension'' inside each frame.
+
+ Pittsburgh is a town in the eastern USA. It hosted the second \textsc{recomb} workshop of \textsc{snp}s and haplotypes, 2004.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Rochester}
+ A dominant theme without any navigational elements. It can be made less dominant by using a different color theme.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item \declare{|height=|\meta{dimension}} sets the height of the frame title bar.
+ \end{itemize}
+
+ Rochester is a town in upstate New York, USA. Till visited Rochester in 2001.
+\end{themeexample}
+
+
+\subsection{Presentation Themes with a Tree-Like Navigation Bar}
+
+\begin{themeexample}{Antibes}
+ A dominant theme with a tree-like navigation at the top. The rectangular elements mirror the rectangular navigation at the top. The theme can be made less dominant by using a different color theme.
+
+ Antibes is a town in the south of France. It hosted \textsc{stacs} 2002.
+\end{themeexample}
+
+\begin{themeexample}{JuanLesPins}
+ A variation on the |Antibes| theme that has a much ``smoother'' appearance. It can be made less dominant by choosing a different color theme.
+
+ Juan--Les--Pins is a cozy village near Antibes. It hosted \textsc{stacs} 2002.
+\end{themeexample}
+
+\begin{themeexample}{Montpellier}
+ A sober theme giving basic navigational hints. The headline can be made more dominant by using a different color theme.
+
+ Montpellier is in the south of France. It hosted \textsc{stacs} 2004.
+\end{themeexample}
+
+
+\subsection{Presentation Themes with a Table of Contents Sidebar}
+
+\begin{themeexample}[\oarg{options}]{Berkeley}
+ A dominant theme. If the navigation bar is on the left, it dominates since it is seen first. The height of the frame title is fixed to two and a half lines, thus you should be careful with overly long titles. A logo will be put in the corner area. Rectangular areas dominate the layout. The theme can be made less dominant by using a different color theme.
+
+ By default, the current entry of the table of contents in the sidebar will be highlighted by using a more vibrant color. A good alternative is to highlight the current entry by using a different color for the background of the current point. The color theme |sidebartab| installs the appropriate colors, so you just have to say
+\begin{verbatim}
+\usecolortheme{sidebartab}
+\end{verbatim}
+
+ This color theme works with all themes that show a table of contents in the sidebar.
+
+ This theme is useful for long talks like lectures that require a table of contents to be visible all the time.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item \declare{|hideallsubsections|} causes only sections to be shown in the sidebar. This is useful, if you need to save space.
+ \item \declare{|hideothersubsections|} causes only the subsections of the current section to be shown. This is useful, if you need to save space.
+ \item \declare{|left|} puts the sidebar on the left (default).
+ \item \declare{|right|} puts the sidebar on the right.
+ \item \declare{|width=|\meta{dimension}} sets the width of the sidebar. If set to zero, no sidebar is created.
+ \end{itemize}
+
+ Berkeley is on the western coast of the USA, near San Francisco. Till visited Berkeley for a year in 2004.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{PaloAlto}
+ A variation on the |Berkeley| theme with less dominance of rectangular areas. The same \meta{options} as for the |Berkeley| theme can be given.
+
+ Palo Alto is also near San Francisco. It hosted the Bay Area Theory Workshop 2004.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Goettingen}
+ A relatively sober theme useful for a longer talk that demands a sidebar with a full table of contents. The same \meta{options} as for the |Berkeley| theme can be given.
+
+ G\"ottingen is a town in Germany. It hosted the 42nd Theorietag.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Marburg}
+ A very dominant variation of the |Goettingen| theme. The same \meta{options} may be given.
+
+ Marburg is a town in Germany. It hosted the 46th Theorietag.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Hannover}
+ In this theme, the sidebar on the left is balanced by right-flushed frame titles.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item \declare{|hideallsubsections|} causes only sections to be shown in the sidebar. This is useful, if you need to save space.
+ \item \declare{|hideothersubsections|} causes only the subsections of the current section to be shown. This is useful, if you need to save space.
+ \item \declare{|width=|\meta{dimension}} sets the width of the sidebar.
+ \end{itemize}
+
+ Hannover is a town in Germany. It hosted the 48th Theorietag.
+\end{themeexample}
+
+
+\subsection{Presentation Themes with a Mini Frame Navigation}
+
+\begin{themeexample}[\oarg{options}]{Berlin}
+ A dominant theme with strong colors and dominating rectangular areas. The head- and footlines give lots of information and leave little space for the actual slide contents. This theme is useful for conferences where the audience is not likely to know the title of the talk or who is presenting it. The theme can be made less dominant by using a different color theme.
+
+ The following \meta{options} may be given:
+ \begin{itemize}
+ \item \declare{|compress|} causes the mini frames in the headline to use only a single line. This is useful for saving space.
+ \end{itemize}
+
+ Berlin is the capital of Germany.
+\end{themeexample}
+
+\begin{themeexample}[\oarg{options}]{Ilmenau}
+ A variation on the |Berlin| theme. The same \meta{options} may be given.
+
+ Ilmenau is a town in Germany. It hosted the 40th Theorietag.
+\end{themeexample}
+
+\begin{themeexample}{Dresden}
+ A variation on the |Berlin| theme with a strong separation into navigational stuff at the top/bottom and a sober main text. The same \meta{options} may be given.
+
+ Dresden is a town in Germany. It hosted STACS 2001.
+\end{themeexample}
+
+
+\begin{themeexample}{Darmstadt}
+ A theme with a strong separation into a navigational upper part and an informational main part. By using a different color theme, this separation can be lessened.
+
+ Darmstadt is a town in Germany.
+\end{themeexample}
+
+\begin{themeexample}{Frankfurt}
+ A variation on the |Darmstadt| theme that is slightly less cluttered by leaving out the subsection information.
+
+ Frankfurt is a town in Germany.
+\end{themeexample}
+
+\begin{themeexample}{Singapore}
+ A not-too-sober theme with navigation that does not dominate.
+
+ Singapore is located in south-eastern Asia. It hosted \textsc{cocoon} 2002.
+\end{themeexample}
+
+\begin{themeexample}{Szeged}
+ A sober theme with a strong dominance of horizontal lines.
+
+ Szeged is on the south border of Hungary. It hosted \textsc{dlt} 2003.
+\end{themeexample}
+
+
+\subsection{Presentation Themes with Section and Subsection Tables}
+
+\begin{themeexample}{Copenhagen}
+ A not-quite-too-dominant theme. This theme gives compressed information about the current section and subsection at the top and about the title and the author at the bottom. No shadows are used, giving the presentation a ``flat'' look. The theme can be made less dominant by using a different color theme.
+
+ Copenhagen is the capital of Denmark. It is connected to Malm\"o by the \O resund bridge.
+\end{themeexample}
+
+\begin{themeexample}{Luebeck}
+ A variation on the |Copenhagen| theme.
+
+ L\"ubeck is a town in northern Germany. It hosted the 41st Theorietag.
+\end{themeexample}
+
+\begin{themeexample}{Malmoe}
+ A more sober variation of the |Copenhagen| theme.
+
+ Malm\"o is a town in southern Sweden. It hosted \textsc{fct} 2001.
+\end{themeexample}
+
+\begin{themeexample}{Warsaw}
+ A dominant variation of the |Copenhagen| theme.
+
+ Warsaw is the capital of Poland. It hosted \textsc{mfcs} 2002.
+\end{themeexample}
+
+
+\subsection{Presentation Themes Included For Compatibility}
+
+Earlier versions of \beamer\ included some further themes. These themes are still available for compatibility, though they are now implemented differently (they also mainly install appropriate color, font, inner, and outer themes). However, they may or may not honor color themes and they will not be supported in the future. The following list shows which of the new themes should be used instead of the old themes. (When switching, you may want to use the font theme |structurebold| with the option |onlysmall|.)
+
+\medskip
+\begin{tabular}{lp{13cm}}
+ Old theme & Replacement options \\\hline
+ none & Use |compatibility|. \\
+ |bars| & Try |Dresden| instead. \\
+ |classic| & Try |Singapore| instead. \\
+ |lined| & Try |Szeged| instead. \\
+ |plain| & Try none or |Pittsburgh| instead. \\
+ |sidebar| & Try |Goettingen| for the light version and |Marburg| for
+ the dark version. \\
+ |shadow| & Try |Warsaw| instead. \\
+ |split| & Try |Malmoe| instead. \\
+ |tree| & Try |Montpellier| and, for the bars version, |Antibes| or
+ |JuansLesPins|.
+\end{tabular}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-transparencies.tex b/macros/latex/contrib/beamer/doc/beamerug-transparencies.tex
new file mode 100644
index 0000000000..34e3ad69a1
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-transparencies.tex
@@ -0,0 +1,66 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Creating Transparencies}
+\label{section-trans}
+\label{trans}
+
+The main aim of the \beamer\ class is to create presentations for projectors (sometimes called beamers, hence the name). However, it is often useful to print transparencies as backup, in case the hardware fails. A transparencies version of a talk often has less slides than the main version, since it takes more time to switch slides, but it may have more slides than the handout version. For example, while in a handout an animation might be condensed to a single slide, you might wish to print several slides for the transparency version.
+
+In order to create a transparencies version, specify the class option |trans|. If you do not specify anything else, this will cause all overlay specifications to be suppressed. For most cases this will create exactly the desired result.
+
+\begin{classoption}{trans}
+ Create a version that uses the |trans| overlay specifications.
+\end{classoption}
+
+In some cases, you may want a more complex behavior. For example, if you use many |\only| commands to draw an animation. In this case, suppressing all overlay specifications is not such a good idea, since this will cause all steps of the animation to be shown at the same time. In some cases this is not desirable. Also, it might be desirable to suppress some |\alert| commands that apply only to specific slides in the handout.
+
+For a fine-grained control of what is shown on a handout, you can use \emph{mode specifications}. They specify which slides of a frame should be shown for a special version, for example for the handout version. As explained in Section~\ref{section-concept-overlays}, a mode specification is written alongside the normal overlay specification inside the pointed brackets. It is separated from the normal specification by a vertical bar and a space. Here is an example:
+\begin{verbatim}
+ \only<1-3,5-9| trans:2-3,5>{Text}
+\end{verbatim}
+
+This specification says: ``Normally (in |beamer| mode), insert the text on slides 1--3 and 5--9. For the transparencies version, insert the text only on slides 2,~3, and~5.'' If no special mode specification is given for |trans| mode, the default is ``always.'' This causes the desirable effect that if you do not specify anything, the overlay specification is effectively suppressed for the handout.
+
+An especially useful specification is the following:
+\begin{verbatim}
+ \only<3| trans:0>{Not shown on transparencies.}
+\end{verbatim}
+
+Since there is no zeroth slide, the text is not shown. Likewise, \verb!\alert<3| trans:0>{Text}! will not alert the text on a transparency.
+
+You can also use a mode specification for the overlay specification of the |{frame}| environment as in the following example.
+\begin{verbatim}
+\begin{frame}<1-| trans:0>
+ Text...
+\end{frame}
+\end{verbatim}
+
+This causes the frame to be suppressed in the transparencies version. Also, you can restrict the presentation such that only specific slides of the frame are shown on the handout:
+\begin{verbatim}
+\begin{frame}<1-| trans:4-5>
+ Text...
+\end{frame}
+\end{verbatim}
+
+It is also possible to give only an alternate overlay specification. For example, |\alert<trans:0>{...}| causes the text to be always highlighted during the presentation, but never on the transparencies version. Likewise, |\frame<trans:0>{...}| causes the frame to be suppressed for the handout.
+
+Finally, note that it is possible to give more than one alternate overlay specification and in any order. For example, the following specification states that the text should be inserted on the first three slides in the presentation, in the first two slides of the transparency version, and not at all in the handout.
+\begin{verbatim}
+ \only<trans:1-2| 1-3| handout:0>{Text}
+\end{verbatim}
+
+If you wish to give the same specification in all versions, you can do so by specifying |all:| as the version. For example,
+\begin{verbatim}
+\frame<all:1-2>{blah...}
+\end{verbatim}
+
+ensures that the frame has two slides in all versions.
diff --git a/macros/latex/contrib/beamer/doc/beamerug-tricks.tex b/macros/latex/contrib/beamer/doc/beamerug-tricks.tex
new file mode 100644
index 0000000000..4cbda81d10
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-tricks.tex
@@ -0,0 +1,195 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{How To Uncover Things Piecewise}
+
+
+\subsection{Uncovering an Enumeration Piecewise}
+
+A common usage of overlays is to show a list of points in an enumeration in a piecewise fashion. The easiest and most flexible way to do this is the following:
+\begin{verbatim}
+\begin{itemize}
+\item<1-> First point.
+\item<2-> Second point.
+\item<3-> Third point.
+\end{itemize}
+\end{verbatim}
+
+The advantage of this approach is that you retain total control over the order in which items are shown. By changing, for example, the last specification to |<2->|, you can have the last two points uncovered at the same time.
+
+A disadvantage of the approach is that you will have to renumber everything if you add a new item. This is usually not such a big problem, but it can be a nuisance.
+
+To automatize the uncovering, you can use the following code:
+\begin{verbatim}
+\begin{itemize}[<+->]
+\item First point.
+\item Second point.
+\item Third point.
+\end{itemize}
+\end{verbatim}
+
+The effect of the |[<+->]| is to install a \emph{default overlay specification}, see the definition of |itemize| for details.
+
+Now, suppose you wish the second and third point to be shown at the same time. You could achieve this by adding the specification |<2->| to either the second or third |\item| command. However, then you still have to do some renumbering if you add a new item at the beginning. A better approach is to temporarily use a different overlay specification and the dot-notation:
+\begin{verbatim}
+\begin{itemize}[<+->]
+\item First point.
+\item<.-> Second point.
+\item Third point.
+\end{itemize}
+\end{verbatim}
+
+You might wish to build your own macros based on these ideas (like an |itemstep| environment or a |\itemlikeprevious| command).
+
+
+\subsection{Highlighting the Current Item in an Enumeration}
+
+If you uncover an enumeration piecewise, it is sometimes a good idea to highlight the last uncovered point to draw the audience's attention to it. This is best achieved as follows:
+\begin{verbatim}
+\begin{itemize}
+\item<1-| alert@1> First point.
+\item<2-| alert@2> Second point.
+\item<3-| alert@3> Third point.
+\end{itemize}
+\end{verbatim}
+
+or
+\begin{verbatim}
+\begin{itemize}[<+-| alert@+>]
+\item First point.
+\item Second point.
+\item Third point.
+\end{itemize}
+\end{verbatim}
+
+Note that this will draw the little item symbol also in red.
+
+
+\subsection{Changing Symbol Before an Enumeration}
+
+When uncovering a list of tasks or problems, you may desire that the symbol in front of the last uncovered symbol is, say, a ballot~X, while for the previous items it is a check mark (you'll find these characters in some Dingbats fonts).
+
+The best way to achieve this is to implement a new action environment. If this action is activated, it temporarily changes the item symbol template to the other symbol:
+\begin{verbatim}
+\newenvironment{ballotenv}
+{\only{%
+ \setbeamertemplate{itemize item}{code for showing a ballot}%
+ \setbeamertemplate{itemize subitem}{code for showing a smaller ballot}%
+ \setbeamertemplate{itemize subsubitem}{code for showing a smaller ballot}}}
+{}
+
+\setbeamertemplate{itemize item}{code for showing a check mark}
+\setbeamertemplate{itemize subitem}{code for showing a smaller check mark}
+\setbeamertemplate{itemize subsubitem}{code for showing a smaller check mark}
+\end{verbatim}
+
+The effect of the code is to install a check mark as the default template. If the action |ballot| is now requested for some item, this template will temporarily be replaced by the ballot templates.
+
+Note that the |ballotenv| is invoked with the overlay specification given for the action directly following it. This causes the |\only| to be invoked exactly for the specified overlays.
+
+Here are example usages:
+\begin{verbatim}
+\begin{itemize}
+\item<1-| ballot@1> First point.
+\item<2-| ballot@2> Second point.
+\item<3-| ballot@3> Third point.
+\end{itemize}
+\end{verbatim}
+
+and
+\begin{verbatim}
+\begin{itemize}[<+-| ballot@+>]
+\item First point.
+\item Second point.
+\item Third point.
+\end{itemize}
+\end{verbatim}
+
+In the following example, more and more items become ``checked'' from slide to slide:
+\begin{verbatim}
+\begin{itemize}[<ballot@+-| visible@1-,+(1)>]
+\item First point.
+\item Second point.
+\item Third point.
+\end{itemize}
+\end{verbatim}
+
+The important point is |ballot@+|. The funny |visible@1-,+(1)| has the following effect: Although it has no effect with respect to what is shown (after all, it applies to all slides), it ensures that in the enumeration the slide number 4 is mentioned. Thus there will also be a slide in which all three points are checked.
+
+
+\subsection{Uncovering Tagged Formulas Piecewise}
+
+Suppose you have a three-line formula as the following:
+\begin{verbatim}
+\begin{align}
+ A &= B \\
+ &= C \\
+ &= D
+\end{align}
+\end{verbatim}
+
+Uncovering this formula line-by-line is a little tricky. A first idea is to use the |\pause| or |\onslide| commands. Unfortunately, these do not work since |align| internally reprocesses its input several times, which messes up the delicate internals of the commands. The next idea is the following, which works a little better:
+\begin{verbatim}
+\begin{align}
+ A &= B \\
+ \uncover<2->{&= C \\}
+ \uncover<3->{&= D}
+\end{align}
+\end{verbatim}
+
+Unfortunately, this does not work in the presence of tags (so it works for the |align*| environment). What happens is that the tag of the last line is shown on all slides. The problem here is that the tag is created when |\\| is encountered or when |\end{align}| is encountered. In the last line these are already ``behind'' the |\uncover|.
+
+To solve this problem, you can add an empty line without a tag and then insert a negative vertical skip to undo the last line:
+\begin{verbatim}
+\begin{align}
+ A &= B \\
+ \uncover<2->{&= C \\}
+ \uncover<3->{&= D \\}
+ \notag
+ \end{align}
+\vskip-1.5em
+\end{verbatim}
+
+
+\subsection{Uncovering a Table Rowwise}
+
+When you wish to uncover a table line-by-line, you will run into all sorts of problems if there are vertical and horizontal lines in the table. The reason is that the first vertical line at the left end is drawn before the line is even read (and thus, in particular, before any |\onslide| command can be read). However, placing a |\pause| or |\uncover| at the end of the line before is also not helpful since it will then suppress the horizontal line below the last uncovered line.
+
+A possible way to solve this problem is not to use either horizontal or vertical lines. Instead, coloring the lines using the |colortbl| package is a good alternative to structure the table. Here is an optically pleasing example, where the table is uncovered line-wise:
+\begin{verbatim}
+\rowcolors[]{1}{blue!20}{blue!10}
+\begin{tabular}{l!{\vrule}cccc}
+ Class & A & B & C & D \\\hline
+ X & 1 & 2 & 3 & 4 \pause\\
+ Y & 3 & 4 & 5 & 6 \pause\\
+ Z & 5 & 6 & 7 & 8
+\end{tabular}
+\end{verbatim}
+
+By using |\onslide| instead of |\pause|, you can get more fine-grained control over which line is shown on which slide.
+
+
+\subsection{Uncovering a Table Columnwise}
+
+The same problems as for uncovering a table linewise arise for uncovering it columnwise.
+
+Once more, using the |colortbl| package offers a solution. In the following example, the |tabular| header is used to insert |\onslide| commands, one for each column, that cover the entries in the column from a certain slide on. At the end of the last column, the |\onslide| without a specification ensures that the first column on the next row is once more shown normally.
+
+Inserting a horizontal line is tricky since it will protrude over the full width of the table also in the covered version. The best idea is just not to use horizontal bars.
+\begin{verbatim}
+\rowcolors[]{1}{blue!20}{blue!10}
+\begin{tabular}{l!{\vrule}c<{\onslide<2->}c<{\onslide<3->}c<{\onslide<4->}c<{\onslide}c}
+ Class & A & B & C & D \\
+ X & 1 & 2 & 3 & 4 \\
+ Y & 3 & 4 & 5 & 6 \\
+ Z & 5 & 6 & 7 & 8
+\end{tabular}
+\end{verbatim}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-tutorial.tex b/macros/latex/contrib/beamer/doc/beamerug-tutorial.tex
new file mode 100644
index 0000000000..9dad541ac3
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-tutorial.tex
@@ -0,0 +1,404 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010,2011,2013,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Tutorial: Euclid's Presentation}
+\label{section-tutorial}
+
+This section presents a short tutorial that focuses on those features of \beamer\ that you are likely to use when you start using \beamer. It leaves out all the glorious details that are explained in great detail later on.
+
+
+\subsection{Problem Statement}
+
+We wish to help Prof.\ Euclid of the University of Alexandria to create a presentation on his latest discovery: There are infinitely many prime numbers! Euclid wrote a paper on this and it got accepted at the 27th International Symposium on Prime Numbers $-280$ (ISPN~'80). Euclid wishes to use the \beamer\ class to create a presentation for the conference. On the conference webpage he found out that he will have twenty minutes for his talk, including questions.
+
+
+\subsection{Solution Template}
+
+The first thing Euclid should do is to look for a solution template for his presentation. Having a look at Section~\ref{section-solutions}, he finds that the file
+\begin{verbatim}
+beamer/solutions/conference-talks/conference-ornate-20min.en.tex
+\end{verbatim}
+might be appropriate. He creates a subdirectory |presentation| in the directory that contains the actual paper and copies the solution template to this subdirectory, renaming to |main.tex|.
+
+He opens the file in his favorite editor. It starts
+\begin{verbatim}
+\documentclass{beamer}
+\end{verbatim}
+which Euclid finds hardly surprising. Next comes a line reading
+\begin{verbatim}
+\mode<presentation>
+\end{verbatim}
+which Euclid does not understand. Since he finds more stuff in the file that he does not understand, he decides to ignore all of that for time being, hoping that it all serves some good purpose.
+
+
+\subsection{Title Material}
+
+The next thing that seems logical is the place where the |\title| command is used. Naturally, he replaces it with
+\begin{verbatim}
+\title{There Is No Largest Prime Number}
+\end{verbatim}
+since this was the title of the paper. He sees that the command |\title| also takes an optional ``short'' argument in square brackets, which is shown in places where there is little space, but he decides that the title is short enough by itself.
+
+Euclid next adjusts the |\author| and |\date| fields as follows:
+\begin{verbatim}
+%\author{Euclid of Alexandria}
+%\date[ISPN '80]{27th International Symposium of Prime Numbers}
+\end{verbatim}
+For the date, he felt that the name was a little long, so a short version is given (|ISPN '80|). On second thought, Euclid decides to add his email address and replaces the |\author| field as follows:
+\begin{verbatim}
+%\author[Euclid]{Euclid of Alexandria \\ \texttt{euclid@alexandria.edu}}
+\end{verbatim}
+Somehow Euclid does not like the fact that there is no ``|\email|'' command in \beamer. He decides to write an email to \beamer's author, asking him to fix this, but postpones this for later when the presentation is finished.
+
+There are two fields that Euclid does not know, but whose meaning he can guess: |\subtitle| and |\institute|. He adjusts them. (Euclid does not need to use the |\and| command, which is used to separate several authors, nor the |\inst| command, which just makes its argument a superscript).
+
+
+\subsection{The Title Page Frame}
+
+The next thing in the file that seems interesting is where the first ``frame'' is created, right after the |\||begin{document}|:
+\begin{verbatim}
+\begin{frame}
+ \titlepage
+\end{frame}
+\end{verbatim}
+In \beamer, a presentation consists of a series of frames. Each frame in turn may consist of several slides (if there is more than one, they are called overlays). Normally, everything between |\begin{frame}| and |\end{frame}| is put on a single slide. No page breaking is performed. So Euclid infers that the first frame is ``filled'' by the title page, which seems quite logical.
+
+
+\subsection{Creating the Presentation PDF File}
+
+Eager to find out how the first page will look, he invokes |pdflatex| on his file |main.tex| (twice). He could also use |latex| (twice), followed by |dvips|, and then possibly |ps2pdf|, or |lualatex| (twice), or |xelatex| (twice). Then he uses the Acrobat Reader, |xpdf|, |evince| or |okular| to view the resulting |main.pdf|. Indeed, the first page contains all the information Euclid has provided until now. It even looks quite impressive with the colorful title and the rounded corners and the shadows, but he is doubtful whether he should leave it like that. He decides to address this problem later.
+
+Euclid is delighted to find out that clicking on a section or subsection in the navigation bar at the top hyperjumps there. Also, the small symbols at the bottom seem to be clickable. Toying around with them for a while, he finds that clicking on the arrows left or right of a symbol hyperjumps him backward or forward one slide~/ frame~/ subsection~/ section. He finds the symbols quite small, but decides not to write an email to \beamer's authors since he also thinks that bigger symbols would be distracting.
+
+
+\subsection{The Table of Contents}
+
+The next frame contains a table of contents:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{Outline}
+ \tableofcontents
+\end{frame}
+\end{verbatim}
+Furthermore, this frame has an individual title (Outline). A comment in the frame says that Euclid might wish to try to add the |[pausesections]| option. He tries this, changing the frame to:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{Outline}
+ \tableofcontents[pausesections]
+\end{frame}
+\end{verbatim}
+
+After re-pdf\LaTeX ing the presentation, he finds that instead of a single slide, there are now two ``table of contents'' slides in the presentation. On the first of these, only the first section is shown, on the second both sections are shown (scanning down in the file, Euclid finds that, indeed, there are |\section| commands introducing these sections). The effect of the |pausesections| seems to be that one can talk about the first section before the second one is shown. Then, Euclid can press the down- or right-key, to show the complete table of contents and can talk about the second section.
+
+
+\subsection{Sections and Subsections}
+
+The next commands Euclid finds are
+\begin{verbatim}
+\section{Motivation}
+\subsection{The Basic Problem That We Studied}
+\end{verbatim}
+These commands are given \emph{outside} of frames. So Euclid assumes that at the point of invocation they have no direct effect, they only create entries in the table of contents. Having a ``Motivation'' section seems reasonable to Euclid, but he changes the |\subsection| title.
+
+As he looks at the presentation, he notices that his assumption was not quite true: each |\subsection| command seems to insert a frame containing a table of contents into the presentation. Doubling back he finds the command that causes this: The |\AtBeginSubsection| inserts a frame with only the current subsection highlighted at the beginning of each section. If Euclid does not like this, he can just delete the whole |\AtBeginSubsection| stuff and the table of contents at the beginning of each subsection disappears.
+
+The |\section| and |\subsection| commands take optional short arguments. These short arguments are used whenever a short form of the section of subsection name is needed. While this is in keeping with the way \beamer\ treats the optional arguments of things like |\title|, it is \emph{different} from the usual way \LaTeX\ treats an optional argument for sections (where the optional argument dictates what is shown in the table of contents and the main argument dictates what is shown everywhere else; in \beamer\ things are exactly the other way round).
+
+
+\subsection{Creating a Simple Frame}
+
+Euclid then modifies the next frame, which is the first ``real'' frame of the presentation, as follows:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{What Are Prime Numbers?}
+ A prime number is a number that has exactly two divisors.
+\end{frame}
+\end{verbatim}
+This yields the desired result. It might be a good idea to put some emphasis on the object being defined (prime numbers). Euclid tries |\emph| but finds that too mild an emphasis. \beamer\ offers the command |\alert|, which is used like |\emph| and, by default, typesets its argument in bright red.
+
+Next, Euclid decides to make it even clearer that he is giving a definition by putting a |definition| environment around the definition.
+\begin{verbatim}
+\begin{frame}
+ \frametitle{What Are Prime Numbers?}
+ \begin{definition}
+ A \alert{prime number} is a number that has exactly two divisors.
+ \end{definition}
+\end{frame}
+\end{verbatim}
+
+Other useful environments like |theorem|, |lemma|, |proof|, |corollary|, or |example| are also predefined by \beamer. As in |amsmath|, they take optional arguments that they show in brackets. Indeed, |amsmath| is automatically loaded by \beamer.
+
+Since it is always a good idea to add examples, Euclid decides to add one:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{What Are Prime Numbers?}
+ \begin{definition}
+ A \alert{prime number} is a number that has exactly two divisors.
+ \end{definition}
+ \begin{example}
+ \begin{itemize}
+ \item 2 is prime (two divisors: 1 and 2).
+ \item 3 is prime (two divisors: 1 and 3).
+ \item 4 is not prime (\alert{three} divisors: 1, 2, and 4).
+ \end{itemize}
+ \end{example}
+\end{frame}
+\end{verbatim}
+
+
+\subsection{Creating Simple Overlays}
+
+The frame already looks quite nice, though, perhaps a bit colorful. However, Euclid would now like to show the three items one after another, not all three right away. To achieve this, he adds |\pause| commands after the first and second items:
+\begin{verbatim}
+ \begin{itemize}
+ \item 2 is prime (two divisors: 1 and 2).
+ \pause
+ \item 3 is prime (two divisors: 1 and 3).
+ \pause
+ \item 4 is not prime (\alert{three} divisors: 1, 2, and 4).
+ \end{itemize}
+\end{verbatim}
+
+By showing them incrementally, he hopes to focus the audience's attention on the item he is currently talking about. On second thought, he deletes the |\pause| stuff once more since in simple cases like the above the pausing is rather silly. Indeed, Euclid has noticed that good presentations make use of this uncovering mechanism only in special circumstances.
+
+Euclid finds that he can also add a |\pause| between the definition and the example. So, |\pause|s seem to transcend environments, which Euclid finds quite useful. After some experimentation he finds that |\pause| only does not work in |align| environments. He immediately writes an email about this to \beamer's author, but receives a polite answer stating that the implementation of |align| does wicked things and there is no fix for this. Also, Euclid is pointed to the last part of the user's guide, where a workaround is described.
+
+
+\subsection{Using Overlay Specifications}
+
+The next frame is to show his main argument and is put in a ``Results'' section. Euclid desires a more complicated overlay behavior for this frame: In an enumeration of four points he wishes to uncover the points one-by-one, but he wishes the fourth point to be shown at the same time as the first. The idea is to illustrate his new proof method, namely proof by contradiction, where a wrong assumption is brought to a contradiction at the end after a number of intermediate steps that are not important at the beginning. For this, Euclid uses \emph{overlay specifications}:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{There Is No Largest Prime Number}
+ \framesubtitle{The proof uses \textit{reductio ad absurdum}.}
+
+ \begin{theorem}
+ There is no largest prime number.
+ \end{theorem}
+ \begin{proof}
+ \begin{enumerate}
+ \item<1-> Suppose $p$ were the largest prime number.
+ \item<2-> Let $q$ be the product of the first $p$ numbers.
+ \item<3-> Then $q + 1$ is not divisible by any of them.
+ \item<1-> But $q + 1$ is greater than $1$, thus divisible by some prime
+ number not in the first $p$ numbers.\qedhere
+ \end{enumerate}
+ \end{proof}
+ \uncover<4->{The proof used \textit{reductio ad absurdum}.}
+\end{frame}
+\end{verbatim}
+
+The overlay specifications are given in pointed brackets. The specification |<1->| means ``from slide 1 on.'' Thus, the first and fourth item are shown on the first slide of the frame, but the other two items are not shown. Rather, the second point is shown only from the second slide onward. \beamer\ automatically computes the number of slides needed for each frame. More generally, overlay specification are lists of numbers or number ranges where the start or ending of a range can be left open. For example |-3,5-6,8-| means ``on all slides, except for slides 4 and~7.''
+
+The |\qedhere| is used to put the \textsc{qed} symbol at the end of the line \emph{inside} the enumeration. Normally, the \textsc{qed} symbol is automatically inserted at the end of a proof environment, but that would be on an ugly empty line here.
+
+The |\item| command is not the only command that takes overlay specifications. Another useful command that takes one is the |\uncover| command. It only shows its argument on the slides specified in the overlay specification. On all other slides, the argument is hidden (though it still occupies space). The command |\only| is similar and Euclid could also have tried
+\begin{verbatim}
+ \only<4->{The proof used \textit{reductio ad absurdum}.}
+\end{verbatim}
+
+On non-specified slides the |\only| command simply ``throws its argument away'' and the argument does not occupy any space. This leads to different heights of the text on the first three slides and on the fourth slide. If the text is centered vertically, this will cause the text to ``wobble'' and thus |\uncover| should be used. However, you sometimes wish things to ``really disappear'' on some slides and then |\only| is useful. Euclid could also have used the class option |t|, which causes the text in frames to be vertically flushed to the top. Then a differing text height does not cause wobbling. Vertical flushing can also be achieved for only a single frame by giving the optional argument |[t]| like this to the |frame| environment as in
+\begin{verbatim}
+\begin{frame}[t]
+ \frametitle{There Is No Largest Prime Number}
+ ...
+\end{frame}
+\end{verbatim}
+Vice versa, if the |t| class option is given, a frame can be vertically centered using the |[c]| option for the frame.
+
+It turns out that certain environments, including the |theorem| and |proof| environments above, also take overlay specifications. If such a specification is given, the whole theorem or proof is only shown on the specified slides.
+
+
+\subsection{Structuring a Frame}
+
+On the next frame, Euclid wishes to contrast solved and open problems on prime numbers. Since there is no ``Solved problem'' environment similar to the |theorem| environment, Euclid decides to use the |block| environment, which allows him to give an arbitrary title:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{What's Still To Do?}
+ \begin{block}{Answered Questions}
+ How many primes are there?
+ \end{block}
+ \begin{block}{Open Questions}
+ Is every even number the sum of two primes?
+ \end{block}
+\end{frame}
+\end{verbatim}
+
+He could also have defined his own theorem-like environment by putting the following in the preamble:
+\begin{verbatim}
+%\newtheorem{answeredquestions}[theorem]{Answered Questions}
+%\newtheorem{openquestions}[theorem]{Open Questions}
+\end{verbatim}
+The optional argument |[theorem]| ensures that these environments are numbered the same way as everything else. Since these numbers are not shown anyway, it does not really matter whether they are given, but it's a good practice and, perhaps, Euclid might need these numbers some other time.
+
+An alternative would be nested |itemize|:
+\begin{verbatim}
+\begin{frame}
+ \frametitle{What's Still To Do?}
+ \begin{itemize}
+ \item Answered Questions
+ \begin{itemize}
+ \item How many primes are there?
+ \end{itemize}
+ \item Open Questions
+ \begin{itemize}
+ \item Is every even number the sum of two primes?
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+\end{verbatim}
+
+Pondering on the problem some more, Euclid decides that it would be even nicer to have the ``Answered Questions'' on the left and the ``Open Questions'' on the right, so as to create a stronger visual contrast. For this, he uses the |columns| environment. Inside this environment, |\column| commands create new columns.
+\begin{verbatim}
+\begin{frame}
+ \frametitle{What's Still To Do?}
+ \begin{columns}
+ \column{.5\textwidth}
+ \begin{block}{Answered Questions}
+ How many primes are there?
+ \end{block}
+
+ \column{.5\textwidth}
+ \begin{block}{Open Questions}
+ Is every even number the sum of two primes?
+ \end{block}
+ \end{columns}
+\end{frame}
+\end{verbatim}
+
+Trying this, he is not quite satisfied with the result as the block on the left has a different height than the one on the right. He thinks it would be nicer if they were vertically top-aligned. So he adds the |[t]| option to the |columns| environment.
+
+Euclid is somewhat pleased to find out that a |\pause| at the end of the first column allows him to ``uncover'' the second column only on the second slide of the frame.
+
+
+\subsection{Adding References}
+
+Euclid decides that he would like to add a citation to his open questions list, since he would like to attribute the question to his good old friend Christian. Euclid is not really sure whether using a bibliography in his talk is a good idea, but he goes ahead anyway.
+
+To this end, he adds an entry to the bibliography, which he fortunately already finds in the solution file. Having the bibliography in the appendix does not quite suit Euclid, so he removes the |\appendix| command. He also notices |<presentation>| overlay specifications and finds them a bit strange, but they don't seem to hurt either. Hopefully they do something useful. His bibliography looks like this:
+\begin{verbatim}
+ \begin{thebibliography}{10}
+ \bibitem{Goldbach1742}[Goldbach, 1742]
+ Christian Goldbach.
+ \newblock A problem we should try to solve before the ISPN '43 deadline,
+ \newblock \emph{Letter to Leonhard Euler}, 1742.
+ \end{thebibliography}
+\end{verbatim}
+
+and he can then add a citation:
+\begin{verbatim}
+\begin{block}{Open Questions}
+ Is every even number the sum of two primes?
+ \cite{Goldbach1742}
+\end{block}
+\end{verbatim}
+
+
+\subsection{Verbatim Text}
+
+On another frame, Euclid would like to show a listing of an algorithm his friend Eratosthenes has sent him (saying he came up with it while reorganizing his sieve collection). Euclid normally uses the |verbatim| environment and sometimes also similar environments like |lstlisting| to typeset listings. He can also use them in \beamer, but he must add the |fragile| option to the frame:
+\begin{verbatim}
+\begin{frame}[fragile]
+ \frametitle{An Algorithm For Finding Prime Numbers.}
+
+%\begin{verbatim}
+int main (void)
+{
+ std::vector<bool> is_prime (100, true);
+ for (int i = 2; i < 100; i++)
+ if (is_prime[i])
+ {
+ std::cout << i << " ";
+ for (int j = i; j < 100; is_prime [j] = false, j+=i);
+ }
+ return 0;
+}
+\end{verbatim}
+\unskip{\MacroFont|\end{verbatim}|}
+ %\begin{verbatim}
+\begin{verbatim}
+ \begin{uncoverenv}<2>
+ Note the use of \verb|std::|.
+ \end{uncoverenv}
+\end{frame}
+\end{verbatim}
+
+On second thought, Euclid would prefer to uncover part of the algorithm stepwise and to add an emphasis on certain lines or parts of lines. He can use package like |alltt| for this, but in simple cases the environment |{semiverbatim}| defined by \beamer\ is more useful: It works like |{verbatim}|, except that |\|, |{|, and |}| retain their meaning (one can typeset them by using |\\|, |\{|, and |\}|). Euclid might now typeset his algorithm as follows:
+\begin{verbatim}
+\begin{frame}[fragile]
+ \frametitle{An Algorithm For Finding Primes Numbers.}
+
+\begin{semiverbatim}
+\uncover<1->{\alert<0>{int main (void)}}
+\uncover<1->{\alert<0>{\{}}
+\uncover<1->{\alert<1>{ \alert<4>{std::}vector<bool> is_prime (100, true);}}
+\uncover<1->{\alert<1>{ for (int i = 2; i < 100; i++)}}
+\uncover<2->{\alert<2>{ if (is_prime[i])}}
+\uncover<2->{\alert<0>{ \{}}
+\uncover<3->{\alert<3>{ \alert<4>{std::}cout << i << " ";}}
+\uncover<3->{\alert<3>{ for (int j = i; j < 100;}}
+\uncover<3->{\alert<3>{ is_prime [j] = false, j+=i);}}
+\uncover<2->{\alert<0>{ \}}}
+\uncover<1->{\alert<0>{ return 0;}}
+\uncover<1->{\alert<0>{\}}}
+\end{semiverbatim}
+
+ \visible<4->{Note the use of \alert{\texttt{std::}}.}
+\end{frame}
+\end{verbatim}
+The |\visible| command does nearly the same as |\uncover|. However one difference occurs if the command |\setbeamercovered{transparent}| has been used to make covered text ``transparent'' instead, |\visible| still makes the text completely ``invisible'' on non-specified slides. Euclid has the feeling that the naming convention is a bit strange, but cannot quite pinpoint the problem.
+
+
+\subsection{Changing the Way Things Look I: Theming}
+
+With the contents of this talk fixed, Euclid decides to have a second look at the way things look. He goes back to the beginning and finds the line
+\begin{verbatim}
+\usetheme{Warsaw}
+\end{verbatim}
+
+By substituting other cities (he notices that these cities seem to have in common that there has been a workshop or conference on theoretical computer science there at which always the same person had a paper, attended, or gave a talk) Euclid can change the way his presentation is going to look. He decides to choose some theme that is reasonably simple but, since his talk is not too short, shows a bit of navigational information.
+
+He settles on the |Frankfurt| theme but decides that the light-dark contrast is too strong. He adds
+\begin{verbatim}
+\usecolortheme{seahorse}
+\usecolortheme{rose}
+\end{verbatim}
+The result seems some more subdued to him.
+
+Euclid decides that the font used for the titles is not quite classical enough (classical fonts are the latest chic in Alexandria). So, he adds
+\begin{verbatim}
+\usefonttheme[onlylarge]{structuresmallcapsserif}
+\end{verbatim}
+Euclid notices that the small fonts in the navigation bars are a bit hard to read as they are so thin. Adding the following helps:
+\begin{verbatim}
+\usefonttheme[onlysmall]{structurebold}
+\end{verbatim}
+
+
+\subsection{Changing the Way Things Look II: Colors and Fonts}
+
+Since Euclid wants to give a \emph{perfect} talk, he decides that the font used for the title simply has to be a serif italics. To change only the font used for the title, Euclid uses the following command:
+\begin{verbatim}
+\setbeamerfont{title}{shape=\itshape,family=\rmfamily}
+\end{verbatim}
+
+He notices that the font is still quite large (which he likes), but wonders why this is the case since he did not specify this. The reason is that calls of |\setbeamerfont| accumulate and the size was already set to |\large| by some font theme. Using the starred version of |\setbeamerfont| ``resets'' the font.
+
+Euclid decides that he would also like to change the color of the title to a dashing red, though, perhaps, with a bit of black added. He uses the following command:
+\begin{verbatim}
+\setbeamercolor{title}{fg=red!80!black}
+\end{verbatim}
+Trying the following command, Euclid is delighted to find that specifying a background color also has an effect:
+\begin{verbatim}
+\setbeamercolor{title}{fg=red!80!black,bg=red!20!white}
+\end{verbatim}
+
+Finally, Euclid is satisfied with the presentation and goes ahead and gives a great talk at the conference, making many new friends. He also writes that email to \beamer's author containing that long list of things that he missed in \beamer\ or that do not work. He is a bit disappointed to learn that it might take till ISPN~'79 for all these things to be taken care of, but he also understands that \beamer's authors also need some time to do research or otherwise he would have nothing to give presentations about.
diff --git a/macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex b/macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex
new file mode 100644
index 0000000000..79bf4572c0
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex
@@ -0,0 +1,118 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Taking Advantage of Multiple Screens}
+\label{section-twoscreens}
+
+This section describes options provided by \beamer\ for taking advantage of computers that have more than one video output and can display different outputs on them. For such systems, one video output can be attached to a projector and the main presentation is shown there. The second video output is attached to a small extra monitor (or is just shown on the display of the computer) and shows, for example, special notes for you. Alternatively, the two outputs might be attached to two different projectors. One can then show the main presentation on the first projection and, say, the table of contents on the second. Or the second projection might show a version translated into a different language. Or the second projection might always show the ``previous'' slide. Or \ldots---we are sure you can think of further useful things.
+
+The basic idea behind \beamer's support of two video outputs is the following: Using special options you can ask \beamer\ to create a \pdf-file in which the ``pages'' are unusually wide or high. By default, their height will still be 128mm, but their width will be 192mm (twice the usual default 96mm). These ``superwide'' pages will show the slides of the main presentation on the left and auxiliary material on the right (this can be switched using appropriate options, though hyperlinks will only work if the presentation is on the left and the second screen on the right).
+
+For the presentation you attach two screens to the system. The windowing system believes that the screen is twice as wide as it actually is. Everything the windowing system puts on the left half of this big virtual screen is redirected to the first video output, everything on the right half is redirected to the second video output.
+
+When the presentation program displays the specially prepared superwide \beamer-presentation, exactly the left half of the screen will be filled with the main presentation, the right part is filled with the auxiliary material---voil\`a. Not all presentation programs support this special feature. For example, the Acrobat Reader 6.0.2 will only use one screen in fullscreen mode on MacOS~X. On the other hand, a program named PDF Presenter supports showing dual-screen presentations. Generally, you will have to find out for yourself whether your display program and system support showing superwide presentations stretching over two screens.
+
+\beamer\ uses the package |pgfpages| to typeset two-screen presentations. Because of this, your first step when creating a two-screen presentation is to include this package:
+\begin{verbatim}
+\documentclass{beamer}
+\usepackage{pgfpages}
+\end{verbatim}
+
+The next step is to choose an appropriate option for showing something special on the second screen. These options are discussed in the following sections.
+
+One of the things these options do is to setup a certain |pgfpages|-layout that is appropriate for two-screen presentations. However, you can still change the |pgfpages|-layout arbitrarily, afterwards. For example, you might wish to enlarge the virtual pages. For details, see the documentation of |pgfpages|.
+
+
+\subsection{Showing Notes on the Second Screen}
+
+The first way to use a second screen is to show the presentation on the main screen and to show your notes on the second screen. The option |show notes on second screen| can be used for this. It is described on page~\pageref{command-notesonsecondscreen}.
+
+
+\subsection{Showing Second Mode Material on the Second Screen}
+
+The second way to use the second screen is to show ``a different version'' of the presentation on the second screen. This different version might be a translation or it might just always be the current table of contents.
+
+To specify what is shown on the second screen, you can use a special \beamer-mode called |second|. This mode behaves similar to modes like |handout| or |beamer|, but its effect depends on the exact options used:
+
+\begin{beameroption}{second mode text on second screen}{|=|\meta{location}}
+ This option causes the second screen to show the second mode material. The \meta{location} of the second screen can be |left|, |right|, |bottom|, or |top|.
+
+ In detail, the following happens: When a new frame needs to be typeset, \beamer\ checks whether the special option |typeset second| is given. If not, the frame is typeset normally and the slides are put on the main presentation screen (more precisely, on the logical |pgfpages|-page number zero). The second screen (logical page number one) shows whatever it showed before the frame was typeset.
+
+ If the special frame option |typeset second| is given, after each slide of the frame the frame contents is typeset once more, but this time for the mode |second|. This results in another slide, which is put on the second screen (on logical page number one). Then the whole page is shipped out.
+
+ The |second| mode behaves more like the |beamer| mode than other modes: Any overlay specification for |beamer| will also apply to |second| mode, unless an explicit |second| mode specification is also given. In particular, |\only<1-2>{Text}| will be shown on slides 1 and 2 in |second| mode, but only on the first slide in |handout| mode or |trans| mode.
+
+ \example
+\begin{verbatim}
+\documentclass{beamer}
+\usepackage{pgfpages}
+\setbeameroption{second mode text on second screen}
+\begin{document}
+\begin{frame}[typeset second]
+ This text is shown on the left and on the right.
+ \only<second>{This text is only shown on the right.}
+ \only<second:0>{This text is only shown on the left.}
+\end{frame}
+\begin{frame}
+ This text is shown on the left. The right shows the same as for the
+ previous frame.
+\end{frame}
+\begin{frame}[typeset second]
+ \alt<second>{The \string\alt command is useful for second
+ mode. Let's show the table of contents, here: \tableofcontents}
+ {Here comes some normal text for the first slide.}
+\end{frame}
+\end{document}
+\end{verbatim}
+
+ \example
+ The following example shows how translations can be added in a comfortable way.
+\begin{verbatim}
+\documentclass{beamer}
+\usepackage{pgfpages}
+\setbeameroption{second mode text on second screen}
+\DeclareRobustCommand\translation[1]{\mytranslation#1\relax}
+\long\def\mytranslation#1|#2\relax{\alt<second>{#2}{#1}}
+\title{\translation{Preparing Presentations|Vortr\"age vorbereiten}}
+\author{Till Tantau}
+\begin{document}
+\begin{frame}[typeset second]
+ \titlepage
+\end{frame}
+\begin{frame}[typeset second]
+ \frametitle{\translation{This is the frame title.|Dies ist der Titel des Rahmens.}}
+ \begin{itemize}
+ \item<1-> \translation{First|Erstens}.
+ \item<2-> \translation{Second|Zweitens}.
+ \item<3-> \translation{Third|Drittens}.
+ \end{itemize}
+ \translation{Do not use line-by-line uncovering.|Man sollte Text nicht
+ Zeile f\"ur Zeile aufdecken.}
+\end{frame}
+\end{document}
+\end{verbatim}
+\end{beameroption}
+
+In the last of the above example, it is a bit bothersome that the option |typeset second| has to be added to each frame. The following option globally sets this option:
+
+\begin{beameroption}{always typeset second mode}{|=|\meta{true or false}}
+ When this option is set to true, every following frame will have the option |typeset second| set to true.
+\end{beameroption}
+
+
+\subsection{Showing the Previous Slide on the Second Screen}
+
+\begin{beameroption}{previous slide on second screen}{|=|\meta{location}}
+ This option causes the second screen to show the previous slide that was typeset, unless this is overruled by a frame with the |[typeset second]| option set. The idea is that if you have two projectors you can always present ``the last two'' slides simultaneously and talk about them.
+
+ Using this option will switch off the updating of external files like the table of contents.
+\end{beameroption}
diff --git a/macros/latex/contrib/beamer/doc/beamerug-workflow.tex b/macros/latex/contrib/beamer/doc/beamerug-workflow.tex
new file mode 100644
index 0000000000..af9070bea6
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beamerug-workflow.tex
@@ -0,0 +1,225 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011--2013,2015 by Vedran Mileti\'c, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\section{Workflow For Creating a Beamer Presentation}
+\label{section-workflow}
+
+This section presents a possible workflow for creating a \beamer\ presentation and possibly a handout to go along with it. Technical questions are addressed, like which programs to call with which parameters.
+
+
+\subsection{Step One: Setup the Files}
+
+\beamernote
+It is advisable that you create a folder for each presentation. Even though your presentation will usually reside in a single file, \TeX\ produces so many extra files that things can easily get very confusing otherwise. The folder's name should ideally start with the date of your talk in ISO format (like 2003-12-25 for a Christmas talk), followed by some reminder text of what the talk is all about. Putting the date at the front in this format causes your presentation folders to be listed nicely when you have several of them residing in one directory. If you use an extra directory for each presentation, you can call your main file |main.tex|.
+
+To create an initial |main.tex| file for your talk, copy an existing file from the |beamer/solutions| directory and adapt it to your needs. A list of possible \beamer\ solutions that contain templates for presentation \TeX-files can be found below.
+
+If you wish your talk to reside in the same file as some different, non-presentation article version of your text, it is advisable to setup a more elaborate file scheme. See Section~\ref{section-article-version-workflow} for details.
+
+\subsection{Step Two: Structure Your Presentation}
+
+The next step is to fill the presentation file with |\section| and |\subsection| to create a preliminary outline. You'll find some hints on how to create a good outline in Section~\ref{section-structure-guidelines}.
+
+Put |\section| and |\subsection| commands into the (more or less empty) main file. Do not create any frames until you have a first working version of a possible table of contents. The file might look like this:
+\begin{verbatim}
+\documentclass{beamer}
+%% This is the file main.tex
+
+\usetheme{Berlin}
+
+\title{Example Presentation Created with the Beamer Package}
+\author{Till Tantau}
+\date{\today}
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+
+\section*{Outline}
+\begin{frame}
+ \tableofcontents
+\end{frame}
+
+\section{Introduction}
+\subsection{Overview of the Beamer Class}
+\subsection{Overview of Similar Classes}
+
+\section{Usage}
+\subsection{...}
+\subsection{...}
+
+\section{Examples}
+\subsection{...}
+\subsection{...}
+
+\begin{frame}
+\end{frame} % to enforce entries in the table of contents
+
+\end{document}
+\end{verbatim}
+The empty frame at the end (which should be deleted later) ensures that the sections and subsections are actually part of the table of contents. This frame is necessary since a |\section| or |\subsection| command following the last page of a document has no effect.
+
+
+\subsection{Step Three: Creating a PDF or PostScript File}
+
+\beamernote
+Once a first version of the structure is finished, you should try to create a first PDF or PostScript file of your (still empty) talk to ensure that everything is working properly. This file will only contain the title page and the table of contents.
+
+\subsubsection{Creating PDF}
+
+\beamernote
+To create a |PDF| version of this file, run the program |pdflatex| on |main.tex| at least twice. You need to run it twice, so that \TeX\ can create the table of contents. (It may even be necessary to run it more often since all sorts of auxiliary files are created.) In the following example, the greater-than-sign is the prompt.
+\begin{verbatim}
+> pdflatex main.tex
+ ... lots of output ...
+> pdflatex main.tex
+ ... lots of output ...
+\end{verbatim}
+Alternatively, you can use |lualatex| or |xelatex| instead of |pdflatex| in above commands.
+
+You can next use a program like the Acrobat Reader, |xpdf|, |evince| or |okular| to view the resulting presentation.
+\begin{verbatim}
+> acroread main.pdf
+\end{verbatim}
+
+
+\subsubsection{Creating PostScript}
+\label{section-postscript}
+
+\beamernote
+To create a PostScript version, you should first ascertain that the \textsc{hyperref} package (which is automatically loaded by the \beamer\ class) uses the option |dvips| or some compatible option, see the documentation of the \textsc{hyperref} package for details. Whether this is the case depends on the contents of your local |hyperref.cfg| file. You can enforce the usage of this option by passing |dvips| or a compatible option to the \beamer\ class (write |\documentclass[dvips]{beamer}|), which will pass this option on to the \textsc{hyperref} package.
+
+You can then run |latex| twice, followed by |dvips|.
+\begin{verbatim}
+> latex main.tex
+ ... lots of output ...
+> latex main.tex
+ ... lots of output ...
+> dvips -P pdf main.dvi
+\end{verbatim}
+
+The option (|-P pdf|) tells |dvips| to use Type~1 outline fonts instead of the usual Type~3 bitmap fonts. You may wish to omit this option if there is a problem with it.
+
+You can convert a PostScript file to a pdf file using
+\begin{verbatim}
+> ps2pdf main.ps main.pdf
+\end{verbatim}
+
+\subsubsection{Ways of Improving Compilation Speed}
+\label{section-speedup}
+
+While working on your presentation, it may sometimes be useful to \TeX\ your |.tex| file quickly and have the presentation contain only the most important information. This is especially true if you have a slow machine. In this case, you can do several things to speed up the compilation. First, you can use the |draft| class option.
+
+\begin{classoption}{draft}
+ Causes the headlines, footlines, and sidebars to be replaced by gray rectangles (their sizes are still computed, though). Many other packages, including |pgf| and |hyperref|, also ``speed up'' when this option is given.
+\end{classoption}
+
+Second, you can use the following command:
+
+\begin{command}{{\includeonlyframes}\marg{frame label list}}
+ This command behaves a little bit like the |\includeonly| command: Only the frames mentioned in the list are included. All other frames are suppressed. Nevertheless, the section and subsection commands are still executed, so that you still have the correct navigation bars. By labeling the current frame as, say, |current| and then saying |\includeonlyframes{current}|, you can work on a single frame quickly.
+
+ The \meta{frame label list} is a comma-separated list (without spaces) of the names of frames that have been labeled. To label a frame, you must pass the option |label=|\meta{name} to the |\frame| command or |frame| environment.
+
+ \example
+\begin{verbatim}
+\includeonlyframes{example1,example3}
+
+\frame[label=example1]
+{This frame will be included. }
+
+\frame[label=example2]
+{This frame will not be included. }
+
+\frame{This frame will not be included.}
+
+\againframe{example1} % Will be included
+\end{verbatim}
+\end{command}
+
+
+\subsection{Step Four: Create Frames}
+
+Once the table of contents looks satisfactory, start creating frames for your presentation by adding |frame| environments. You'll find guidelines on what to put on a frame in Section~\ref{section-frame-guidelines}.
+
+
+\subsection{Step Five: Test Your Presentation}
+
+\emph{Always} test your presentation. For this, you should vocalize or subvocalize your talk in a quiet environment. Typically, this will show that your talk is too long. You should then remove parts of the presentation, such that it fits into the allotted time slot. Do \emph{not} attempt to talk faster in order to squeeze the talk into the given amount of time. You are almost sure to lose your audience this way.
+
+Do not try to create the ``perfect'' presentation immediately. Rather, test and retest the talk and modify it as needed.
+
+
+\subsection{Step Six: Create a Handout}
+
+\subsubsection{Creating the Handout}
+
+Once your talk is fixed, you can create a handout, if this seems appropriate. For this, you can use the class option |handout| as explained in Section~\ref{handout}. Typically, you might wish to put several handout slides on one page, see below on how to do this easily.
+
+You may also wish to create an article version of your talk. An ``article version'' of your presentation is a normal \TeX\ text typeset using, for example, the document class |article| or perhaps |llncs| or a similar document class. The \beamer\ class offers facilities to have this version coexist with your presentation version in one file and to share code. Also, you can include slides of your presentation as figures in your article version. Details on how to setup the article version can be found in Section~\ref{section-article}.
+
+\subsubsection{Printing the Handout}
+\label{section-printing-version}
+
+The easiest way to print a presentation is to user the Acrobat Reader with the option ``expand small pages to paper size'' form the printer dialog enabled. This is necessary, because slides are by default only 128mm by 96mm large.
+
+For the PostScript version and for printing multiple slides on a single page this simple approach does not work. In such cases you can use the |pgfpages| package, which works directly with |pdflatex|, |lualatex|, |xelatex| and |latex| plus |dvips|. Note however \emph{that this package destroys hyperlinks}. This is due to fundamental flaws in the \pdf-specification and it is not likely to change.
+
+The |pgfpages| can do all sorts of tricks with pages. The most important one for printing \beamer\ slides is the following command:
+\begin{verbatim}
+\usepackage{pgfpages}
+\pgfpagesuselayout{resize to}[a4paper,border shrink=5mm,landscape]
+\end{verbatim}
+This says ``Resize all pages to landscape A4 pages, no matter what their original size was, but shrink the pages by 5mm, so that there is a bit of a border around everything.'' Naturally, instead of |a4paper| you can also use |letterpaper| or any of the other standard paper sizes. For further options and details see the documentation of |pgfpages|.
+
+The second thing you might wish to do is to put several slides on a single page. This can be done as follows:
+\begin{verbatim}
+\usepackage{pgfpages}
+\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
+\end{verbatim}
+This says ``Put two pages on one page and then resize everything so that it fits on A4 paper.'' Note that this time we do not need landscape as the resulting page is, after all, not in landscape mode.
+
+Instead of |2 on 1| you can also use |4 on 1|, but then with |landscape| once more, and also |8 on 1| and even |16 on 1| to get a grand (though unreadable) overview.
+
+If you put several slides on one page and if these slides normally have a white background, it may be useful to write the following in your preamble:
+\begin{verbatim}
+\mode<handout>{\setbeamercolor{background canvas}{bg=black!5}}
+\end{verbatim}
+This will cause the slides of the handout version to have a very light gray background. This makes it easy to discern the slides' border if several slides are put on one page.
+
+%% If you wish each slide to completely fill a letter-sized page, use the
+%% following commands instead:
+
+%% \begin{verbatim}
+%% > dvips -P pdf -tletter main.dvi -o main.temp.ps
+%% > psnup -1 -W128mm -H96mm -pletter main.temp.ps main.ps
+%% \end{verbatim}
+
+%% For A4-sized paper, use:
+
+%% \begin{verbatim}
+%% > dvips -P pdf -ta4 main.dvi -o main.temp.ps
+%% > psnup -1 -W128mm -H96mm -pa4 main.temp.ps main.ps
+%% \end{verbatim}
+
+%% In order to create a white margin around the whole page (which is sometimes
+%% useful for printing), add the option |-m 1cm| to the options of
+%% |psnup|.
+
+%% To put two or four slides on one page, use |-2|, respectively
+%% |-4| instead of |-1| as the first parameter for
+%% |psnup|. In this case, you may wish to add the option
+%% |-b 1cm| to add a bit of space around the individual slides. The same
+%% trick as for the \pdf-version can be used to make the borders of
+%% slides more pronounced in the handout version.
diff --git a/macros/latex/contrib/beamer/doc/beameruserguide.pdf b/macros/latex/contrib/beamer/doc/beameruserguide.pdf
new file mode 100644
index 0000000000..f8f5a0142a
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beameruserguide.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/beameruserguide.tex b/macros/latex/contrib/beamer/doc/beameruserguide.tex
new file mode 100644
index 0000000000..b10edcbd31
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/beameruserguide.tex
@@ -0,0 +1,213 @@
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2011--2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2016 by Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass{ltxdoc}
+
+\def\beamerugversion{3.56}
+\def\beamerugpgfversion{1.00}
+\def\beamerugxcolorversion{2.00}
+
+\usepackage{cmap}
+\usepackage{lmodern}
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenc}
+\usepackage{amsmath,amssymb}
+\usepackage{pifont}
+\usepackage{makeidx}
+\usepackage{pgf,xcolor}
+\usepackage[pdfborder={0 0 0},bookmarksnumbered]{hyperref}
+\usepackage[left=2.25cm,right=2.25cm,top=2.5cm,bottom=2.5cm,nohead]{geometry}
+\usepackage{translator}
+
+
+\input{beamerug-macros}
+
+\makeindex
+
+%\includeonly{beamerug-introduction}
+
+\begin{document}
+
+{
+\pgfimage[width=.3\textwidth]{beamerlogo}\qquad
+\parindent 0pt
+\vbox{\Huge
+The \beamer\ \textit{class}
+
+\Large
+User Guide for version \beamerugversion.}
+\vskip 3cm
+
+
+
+
+\normalsize
+\begin{verbatim}
+\begin{frame}
+ \frametitle{There Is No Largest Prime Number}
+ \framesubtitle{The proof uses \textit{reductio ad absurdum}.}
+ \begin{theorem}
+ There is no largest prime number.
+ \end{theorem}
+ \begin{proof}
+ \begin{enumerate}
+ \item<1-| alert@1> Suppose $p$ were the largest prime number.
+ \item<2-> Let $q$ be the product of the first $p$ numbers.
+ \item<3-> Then $q+1$ is not divisible by any of them.
+ \item<1-> But $q + 1$ is greater than $1$, thus divisible by some prime
+ number not in the first $p$ numbers.\qedhere
+ \end{enumerate}
+ \end{proof}
+\end{frame}
+\end{verbatim}
+\pgfimage[width=.45\textwidth,page=2]{beamerugthemePittsburgh}\qquad\pgfimage[width=.45\textwidth,page=2]{beamerugthemeFrankfurt}
+\vskip 0cm plus 1.5fill
+\vbox{}
+\clearpage
+}
+
+{
+ \vbox{}
+ \vskip 0pt plus 1fill
+ F\"ur alle, die die Sch\"onheit von Wissenschaft anderen zeigen wollen.
+ \vskip 0pt plus 3fill
+
+ \parindent 0pt
+ Copyright 2003--2007 by Till Tantau
+
+ Copyright 2010,2011 by Joseph Wright and Vedran Mileti\'c
+
+ Copyright 2016,2017 by Joseph Wright
+
+ \medskip
+ Permission is granted to copy, distribute and/or modify \emph{the documentation} under the terms of the \textsc{gnu} Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled \textsc{gnu} Free Documentation License.
+
+ \medskip
+ Permission is granted to copy, distribute and/or modify \emph{the code of the package} under the terms of the \textsc{gnu} General Public License, Version 2 or any later version published by the Free Software Foundation. A copy of the license is included in the section entitled \textsc{gnu} General Public License.
+
+ \medskip
+ Permission is also granted to distribute and/or modify \emph{both the documentation and the code} under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. A copy of the license is included in the section entitled \LaTeX\ Project Public License.
+
+ \vbox{}
+ \clearpage
+}
+
+\index{Themes|see{Presentation themes}}
+\index{Templates|see{Beamer templates}}
+\index{Colors|see{Beamer colors}}
+\index{Fonts|see{Beamer fonts}}
+\index{Beamer elements|see{Beamer templates, colors, and fonts}}
+\index{Elements|see{Beamer templates, colors, and fonts}}
+\index{Template inserts|see{Inserts}}
+
+\title{\Huge The \beamer\ \textit{class}\\
+\Large\url{https://github.com/josephwright/beamer}\\
+\Large User Guide for version \beamerugversion.}
+\author{\href{mailto:tantau@users.sourceforge.net}{Till Tantau}, \href{mailto:joseph.wright@morningstar2.co.uk}{Joseph Wright}, \href{mailto:vmiletic@inf.uniri.hr}{Vedran Mileti\'c}}
+
+\maketitle
+
+\tableofcontents
+
+
+\include{beamerug-introduction}
+
+
+
+\part{Getting Started}
+
+This part helps you getting started. It starts with an explanation of how to install the class. Hopefully, this will be very simple, with a bit of luck the whole class is already correctly installed! You will also find an explanation of special things you should consider when using certain other packages.
+
+Next, a short tutorial is given that explains most of the features that you'll need in a typical presentation. Following the tutorial you will find a ``possible workflow'' for creating a presentation. Following this workflow may help you avoid problems later on.
+
+This part includes a guidelines sections. Following these guidelines can help you create good presentations (no guarantees, though). This guideline section is kept as general as possible; most of what is said in that section applies to presentations in general, independent of whether they have been created using \beamer\ or not.
+
+At the end of this part you will find a summary of the solutions templates that come with \beamer. You can use solutions templates to kick-start the creation of your presentation.
+
+\include{beamerug-installation}
+\include{beamerug-tutorial}
+\include{beamerug-workflow}
+\include{beamerug-guidelines}
+\include{beamerug-solutions}
+\include{beamerug-license}
+
+
+
+\part{Building a Presentation}
+
+This part contains an explanation of all the commands that are used to create presentations. It starts with a section treating the commands and environments used to create \emph{frames}, the basic building blocks of presentations. Next, the creation of overlays is explained.
+
+The following three sections concern commands and methods of \emph{structuring} a presentation. In order, the \emph{static global} structure, the \emph{interactive global} structure, and the \emph{local} structure are treated.
+
+Two further sections treat graphics and animations. Much of the material in these sections applies to other packages as well, not just to \beamer.
+
+\include{beamerug-frames}
+\include{beamerug-overlays}
+\include{beamerug-globalstructure}
+\include{beamerug-interaction}
+\include{beamerug-localstructure}
+\include{beamerug-graphics}
+\include{beamerug-animations}
+
+
+
+\part{Changing the Way Things Look}
+
+\beamer\ offers ways to change the appearance of a presentation at all levels of detail. On the top level, \emph{themes} can be used to globally change the appearance conveniently. On the bottom level, \emph{templates} allow you to specify the appearance of every minute detail individually.
+
+Two important aspects of the ``appearance'' of a presentation are treated in extra sections: colors and fonts. Here, too, color and font themes can be used to globally change the colors or fonts used in a presentation, while you can still change the color or font of, say, block titles independently of everything else.
+
+\include{beamerug-themes}
+\include{beamerug-elements}
+\include{beamerug-color}
+\include{beamerug-fonts}
+
+
+
+\part{Creating Supporting Material}
+
+The objective of the \beamer\ class is to simplify the creation of presentations using a projector. However, a presentation rarely exists in isolation. Material that accompanies a presentation includes:
+\begin{itemize}
+\item
+ Presentations should normally be accompanied by \emph{handouts}, written text that the audience can read during and/or after your presentation is given.
+\item
+ You might wish to create notes for yourself that, ideally, are shown to you on your computer screen while the audience sees the presentation.
+\item
+ You might wish to create a printout of your talk, either for yourself or for checking for errors.
+\item
+ You might wish to create a transparencies version of your talk as a fall-back.
+\end{itemize}
+
+This part discusses how \beamer\ helps you with the creation of the above.
+
+\include{beamerug-notes}
+\include{beamerug-transparencies}
+\include{beamerug-nonpresentation}
+\include{beamerug-twoscreens}
+
+
+
+\part{Howtos}
+
+This part contains explanations-of-how-to-do-things (commonly known as \emph{howtos}). These explanations are not really part of the ``\beamer\ core.'' Rather, they explain how to use \beamer\ to achieve a certain effect or how get something special done.
+
+The first howto is about tricky uncovering situations.
+
+The second howto explains how you can import (parts or) presentations created using some other \LaTeX-presentation class, like \prosper.
+
+\include{beamerug-tricks}
+\include{beamerug-emulation}
+
+\printindex
+
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex
new file mode 100644
index 0000000000..8c208c7503
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex
@@ -0,0 +1,53 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+% $Header$
+
+% This file is a demonstration on how a foils file should be
+% changed to make it work with beamer.
+
+% Copyright notice:
+
+% Since foiltex has a restricted license, I'm not able to include an
+% original example from foiltex. Instead, I'm providing a simple
+% example that shows the basic usage.
+
+
+\documentclass{beamer}
+\usepackage{beamerfoils}
+\beamertemplatetheoremsnumbered
+
+\title{A Foils-To-Beamer Example}
+
+\author{Till Tantau}
+
+\MyLogo{\tiny-- Typeset by beamer emulation of \FoilTeX\ --}
+
+\leftheader{Till Tantau}
+
+\begin{document}
+
+\frame{
+\maketitle
+}
+
+\foilhead{A first frame}
+
+Some text.
+
+\pagebreak
+
+More text on next slide.
+
+\foilhead{A third frame}
+
+Some text.
+
+\endfoil
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex
new file mode 100644
index 0000000000..4e8ba17d19
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex
@@ -0,0 +1,80 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+% $Header$
+
+\documentclass[notes]{beamer}
+
+% You might wish to try this instead of the above line:
+%\documentclass[class=article]{beamer}
+%\usepackage{beamerbasearticle}
+%\usepackage{hyperref}
+
+\usepackage[framesassubsections]{beamerprosper}
+
+\mode<presentation>
+{
+ \definecolor{beamerstructure}{RGB}{43,79,112}
+ \definecolor{sidebackground}{RGB}{230,242,250}
+ \color{beamerstructure}
+ \usetheme{Goettingen}
+ \usepackage{times}
+ \userightsidebarcolortemplate{\color{sidebackground}}
+ \beamertemplateballitem
+}
+
+
+\title{A Beamer Presentation Using (HA-)Prosper Commands}
+\subtitle{Subtitles Are Also Supported}
+\author{Till Tantau}
+\institution{The Institution is Mapped To Institute}
+
+\begin{document}
+
+\maketitle
+
+\tsectionandpart{Introduction}
+
+\overlays{2}{
+\begin{slide}[trans=Glitter]{About this file}
+ \begin{itemstep}
+ \item
+ This is a beamer presentation.
+ \item
+ You can use the prosper and the HA-prosper syntax.
+ \item
+ This is done by mapping prosper and HA-prosper commands to beamer
+ commands.
+ \item
+ The emulation is by no means perfect.
+ \end{itemstep}
+\end{slide}
+}
+
+
+\section{Second Section}
+
+\subsection{A subsection}
+
+\frame
+{
+ \frametitle{A frame created using the \texttt{frame} command.}
+
+ \begin{itemize}[<+->]
+ \item You can still use the original beamer syntax.
+ \item The emulation is intended only to make recycling slides
+ easier, not to install a whole new syntax for beamer.
+ \end{itemize}
+}
+
+\begin{notes}{Notes for these slides}
+My notes for these slides.
+\end{notes}
+
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex
new file mode 100644
index 0000000000..10f3407d41
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex
@@ -0,0 +1,331 @@
+% $Header$
+
+% This file is a demonstration on how a seminar file should be
+% changed to make it work with beamer.
+
+
+% Copyright notice:
+
+% Except for the changes indicated by CHANGED, this file is the original
+% file semsamp2.tex, which is part of the examples of the seminar
+% package.
+
+
+%% BEGIN semsamp2.tex
+% This is a sample document for seminar.sty, v0.93 (and maybe later).
+%
+% This file contains both landscape and portrait mode slides.
+% Choose one of the following to print them out:
+% - If using PSTricks, try the semcolor style option.
+% - If using Rokicki's dvips, try the semrot style option.
+% - To print the landscape slides, put \landscapeonly in the preamble.
+% To print the portrait slides, include the portrait style option and
+% put \portraitonly in the preamble.
+%
+%
+
+% CHANGED: commented the following:
+%\documentstyle[%
+% slidesonly,% Try notes or notesonly instead.
+% %notes,% Use instead of slidesonly to typeset the notes.
+% %notesonly,% Use instead of slidesonly to typeset notes and slides.
+% %semcolor,% Try me if using PSTricks.
+% %semrot,% Try me if using Rokicki's dvips.
+% %semhelv,% Try me if using a PostScript printer.
+% %article,% Try me.
+% %portrait,% Try me.
+% %sem-a4,% Try me if using A4 paper.
+% semlayer% This must be included, but you need the semcolor option to
+% ]{seminar} % actually see the overlays.
+%
+%\slidesmag{5}
+%\articlemag{1}
+%
+%%\twoup % Try me for twoup printing.
+%
+%%\portraitonly % To print only portrait slides
+%%\landscapeonly % To print only landscape slides
+%
+%%\notslides{\ref{questions}-7,1} %Try me: The slides are omitted.
+%%\onlyslides{\ref{questions}-7,1} %Try me: Only these slides are included.
+%%\onlynotestoo %Try me: For selecting notes as well.
+%
+%\colorlayers{red,blue} % Try deleting this if using the semcolor option,
+% % to get \blue and \red to use PostScript color.
+%
+%%\overlaysfalse % Suppress overlays with semcolor option.
+%%\layersfalse % Suppress color layers with semcolor option.
+%
+%\rotateheaderstrue % Try this out if using rotation macros.
+
+% CHANGED: Added following three lines:
+\documentclass[ignorenonframetext]{beamer}
+\usepackage[accumulated]{beamerseminar}
+ % remove ``accumulated'' option
+ % for original behaviour
+\usepackage{beamerthemeclassic}
+
+\title{Example for seminar.sty}
+\author{Policarpa Salabarrieta}
+\date{July 21, 1991}
+
+\newcommand{\sref}[1]{SLIDE \ref{#1}}
+
+% CHANGED: different definition of \heading
+%\newcommand{\heading}[1]{\begin{center}\large\bf #1\end{center}}
+\let\heading=\frametitle
+
+% CHANGED: Commented:
+%\newpagestyle{MH}%
+% {University of Guaduas, March 13, 1998\hfil\thepage}{}
+%\pagestyle{MH}
+
+\begin{document}
+
+% CHANGED: Added \frame
+\frame{
+\maketitle % This won't show up when \onlynotestoo is in effect.
+}
+
+% CHANGED: Commented
+%\begin{slide}
+% \ifslidesonly % Title slide only for slidesonly selection.
+% \maketitle
+% \addtocounter{slide}{-1}
+% \slidepagestyle{empty}
+% \fi
+%\end{slide}
+
+
+This is a lot of gobbledy-gook intended only to illustrate some of the
+features of seminar.sty.
+
+ The phrase information overload rings a bell with just about anyone.
+Certainly you all receive more working papers or more applications for
+graduate school than you can readily read. Nevertheless, the term information
+overload is ill-defined. (\sref{too_much}, top)
+
+ A message like this when you check your email conjures up the notion of
+information overload. More generally, information overload always means too
+much information, in some sense or another. But what does ``too much'' mean?
+(\sref{too_much}, bottom) It might just mean that people cannot process all
+the information they receive. That is certainly true for everyone. A claim
+that is much stronger, and that is implicit when people complain about
+information overload, is that people {\em should} receive less information, by
+some criterion.
+
+% CHANGED: Added \frame
+\frame{
+\begin{slide}\label{too_much}%
+\begin{center}
+ \large\bf
+ Information overload = ``Too much'' information
+\end{center}
+\smallskip
+
+\begin{verse} \bf\tt
+ You have 134 unread messages:\\
+ Do you want to read them now?
+\end{verse}
+
+\begin{enumerate}
+ {\overlay2
+ \item People {\overlay1 cannot process all} the information they receive.}
+ \item People {\em should} receive less information.
+ \end{enumerate}
+\end{slide}
+}
+
+ In this paper, I use the term ``information overload'' in both senses.
+(\sref{overload}, bottom). Specifically, I say that an {\em individual} is
+overloaded with information if she receives more information than she can
+process. But I say that there is information overload in a {\em network} if
+there is some mechanism that makes the senders and/or receivers better off by
+restricting the flow of information. This latter notion of information
+overload is an equilibrium property, and it depends on what we mean by
+``better off.''
+
+% CHANGED: Added \frame
+\frame{
+\begin{slide*}\label{overload}
+\ptsize{12}
+
+\begin{itemize}{\overlay1
+ \item There is information {\overlay0 overload in a network if} there is
+some mechanism that, compared to the {\em status quo}, makes the senders
+and/or receivers better off by restricting the flow} of information.'
+
+ \item There is information overload in a network if there is some mechanism
+that, compared to the {\em status quo}, makes the senders and/or receivers
+better off by restricting the flow of information.
+\end{itemize}
+
+\end{slide*}
+}
+
+(\sref{questions})
+ The purpose of my paper is to show why there can be information overload in
+a network and what kind of mechanisms can make the receivers and/or senders
+better off. Since the cost of communication is one factor that restricts
+communication, I am thus also going to look at how the welfare of the senders
+and receivers depends on the cost of communication.
+
+ Most messages don't become jumbled and we can choose which ones to process.
+But some of us may have a bias towards choosing to process more information
+than we should, like the graduate student who feels compelled to read every
+article on the usual lengthy reading list, and just ends up getting confused
+and ruffling through the papers.
+
+% CHANGED: Added \frame
+\frame{
+\begin{slide}[7.3in,5.5in] \label{questions}
+\heading{Questions}
+
+\begin{itemize}
+ {\overlay1\item When could {\blue there be overload} in networks?}
+ \item What mechanism make the receivers and senders better off?
+ \item How does the welfare {\red of the senders} and receivers depend on the
+cost of communication?
+\end{itemize}
+\end{slide}
+}
+
+However, experiments in consumer research and psychology have failed to find
+that such a bias is prevalent. This is in spite of the fact that it is common
+for stress and cognitive strain to increase with information load. We may
+incur such stress and strain because the information we choose to process is
+valuable to us.
+
+More commonly, then, we can and do choose to process roughly as much
+information as we can handle efficiently. This is called screening. But when
+we choose which messages to begin to process, we're ignorant of their
+contents, since otherwise there would be no reason to process them in the
+first place. Therefore, if we receive more junk mail, then some of the
+important mail gets crowded out, and we are effectively less informed.
+
+
+% CHANGED: Added \frame
+\frame{
+\begin{slide} \label{informed}
+\begin{center}
+ {\bf Being more informed} \par
+ \smallskip
+ is always better,\par
+ \medskip
+ \overlay1{but it's not the same as \par
+ \smallskip
+ {\bf receiving more information}}
+\end{center}
+\end{slide}
+}
+
+ Why would the senders communicate too many messages in the first place? If I
+present too much material in this seminar, you have to choose which parts to
+ignore and I would rather make that decision myself, since I know what I most
+want to get across. Thus, it is in my interest not to overload you with
+information. Generally, whenever there is a single sender of messages, that
+sender will prefer to screen rather than have the receiver screen, because the
+sender has an interest in which messages the receiver processes.
+But when there are more senders, one sender's messages tend to crowd out the
+messages of the other senders, as in this example here. If the senders don't
+take this external cost into account when sending messages, they may
+collectively overload the receiver. (\sref{akbar})
+
+There are several reasons that our scarcity of attention, that is, our limited
+capacity to process information, can mean that we become less informed when we
+receive more information. I have a cartoon here to illustrate these reasons.
+(\sref{akbar})
+
+% CHANGED: Added \frame
+\frame{
+\begin{slide}\label{akbar}\def\slidefuzz{15pt}
+ {\large A tax $\tau$ on communication is said to support
+$\tilde{\cal{X}}(c)$ if $\tilde{\cal{X}}(c)$ is an equilibrium for
+$\Gamma(c+\tau)$.}
+\medskip
+
+ {\bf Proposition 6.} {\em Assume $\tilde{\cal{X}}(c)$ is not an equilibrium
+for $\Gamma(c)$.\vspace{-3pt}
+\begin{enumerate}
+ \item If $\mbox{supp}(\gamma)=[0,1]^n$, there is no tax that supports
+$\tilde{\cal{X}}(c)$.
+ \item If $\mbox{supp}(\gamma)=S^{n-1}$, there is a tax that supports
+$\tilde{\cal{X}}(c)$ if and only if $m=1$, $p_j>c\, \forall j$, and
+ \begin{enumerate}
+ \item $n=2$; or
+ \item $n=3$ and $p_i^{-1}+p_j^{-1}\geq p_k^{-1}$ for all distinct
+$i,j,k$; or
+ \item $n=4$ and $p_1=p_2=p_3=p_4$.
+\end{enumerate}
+\end{enumerate}}
+\end{slide}
+}
+ If, by restricting communication, we eliminate the less relevant messages,
+then we can become more informed. But how can we achieve this? Restricting the
+flow of information shifts the task of screening messages from the receivers
+to the senders. Unlike the receivers, the senders do know the contents of the
+messages they originate. If the senders' interests coincide with those of the
+receiver and if the senders have sufficient knowledge about the receivers,
+then the senders will choose the messages which are most relevant to the
+receivers. This may make the receivers, and even the senders, better off.
+
+ The network in Slide \ref{architectures} attains the minimal delay $c(8,24)
+= 6$ using 8 processors. It is an example of the efficient one-shot networks
+described by Foo. We will focus on a class of networks that are similar to the
+Foo networks but that may differ slightly. For $q$, $c$ and $n$ such that $1
+\leq q \leq \lfloor n/2 \rfloor$ and $c(q,n) \leq c \leq n$, let $R_{nqc}$ be
+the class of essential networks for adding $n$ items using $q$ processors in
+$c$ cycles that have the following properties:
+
+% CHANGED: Added \frame
+\frame{
+\begin{slide*}\label{architectures}
+\heading{Architecture}
+
+\begin{center}
+\setlength{\unitlength}{1.65in}
+\begin{picture}(1.1,1.6)(3.5,5.0)
+\put(4.0,6.5){\circle*{.04}}
+\put(4.1,6.5){1}
+\put(4.0,6.0){\circle*{.04}}
+\put(4.1,6.0){2}
+\put(4.0,6.1){\vector(0,1){.3}}
+\put(3.5,6.0){\circle*{.04}}
+\put(3.6,6.0){3}
+\put(3.6,6.1){\vector(1,1){.3}}
+\put(4.0,5.5){\circle*{.04}}
+\put(4.1,5.5){4}
+\put(4.0,5.6){\vector(0,1){.3}}
+\put(4.5,6.0){\circle*{.04}}
+\put(4.6,6.0){5}
+\put(4.4,6.1){\vector(-1,1){.3}}
+\put(4.5,5.5){\circle*{.04}}
+\put(4.6,5.5){6}
+\put(4.4,5.6){\vector(-1,1){.3}}
+\put(3.5,5.5){\circle*{.04}}
+\put(3.6,5.5){7}
+\put(3.5,5.6){\vector(0,1){.3}}
+\put(4.0,5.0){\circle*{.04}}
+\put(4.1,5.0){8}
+\put(4.0,5.1){\vector(0,1){.3}}
+\end{picture}
+\end{center}
+\end{slide*}
+}
+
+Why would the senders communicate too many messages in the first place? If I
+present too much material in this seminar, you have to choose which parts to
+ignore and I would rather make that decision myself, since I know what I most
+want to get across. Thus, it is in my interest not to overload you with
+information.
+
+Generally, whenever there is a single sender of messages, that sender will
+prefer to screen rather than have the receiver screen, because the sender has
+an interest in which messages the receiver processes. But when there are more
+senders, one sender's messages tend to crowd out the messages of the other
+senders, as in this example here. If the senders don't take this external cost
+into account when sending messages, they may collectively overload the
+receiver. (\sref{architectures})
+
+\end{document}
+%% END semsamp2.tex
diff --git a/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex
new file mode 100644
index 0000000000..67fcdd1560
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex
@@ -0,0 +1,271 @@
+% $Header$
+
+% This file is a demonstration on how a seminar file should be
+% changed to make it work with beamer.
+
+
+% Copyright notice:
+
+% Except for the changes indicated by CHANGED, this file is the original
+% file texpower-0.0.9d/doc/seminardemo.tex, which is part of the
+% examples of the texpower package.
+
+
+
+% seminardemo.tex,v 1.2 2002/11/14 20:46:00 hansfn Exp
+%
+% TeXPower bundle - dynamic online presentations with LaTeX
+% Copyright (C) 1999-2002 Stephan Lehmke
+%
+% This program is free software; you can redistribute it and/or
+% modify it under the terms of the GNU General Public License
+% as published by the Free Software Foundation; either version 2
+% of the License, or (at your option) any later version.
+%
+% This program is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+% GNU General Public License for more details.
+%
+%-----------------------------------------------------------------------------------------------------------------
+% File: seminardemo.tex
+%
+% Simple examples the for combining the seminar class with the dynamic features provided by the package texpower.sty.
+%
+%-----------------------------------------------------------------------------------------------------------------
+% Autor: Stephan Lehmke <Stephan.Lehmke@cs.uni-dortmund.de>
+%
+% v0.0.1 Jun 02, 2000: First version for the pre-alpha release of TeXPower.
+%
+
+
+% CHANGED: commented
+%\documentclass{seminar}
+%
+%% We need fixseminar for setting the page size correctly.
+%
+%\usepackage{fixseminar}
+%
+%
+%%-----------------------------------------------------------------------------------------------------------------
+%% The texpower package is loaded.
+%% We give the display option so dynamic features are enabled.
+%%
+%\usepackage[display]{texpower}
+
+% CHANGED: Added
+\documentclass[slidestop,usepdftitle=false]{beamer}
+\usepackage[accumulated]{beamerseminar}
+\usepackage{beamertexpower}
+\usepackage{beamerthemeshadow}
+
+
+% CHANGED: Moved \title and \author outside of slide
+\title{The \code{texpower} Package\\ {\normalfont \texttt{seminar} Demo}}
+\author[Stephan Lehmke]{Stephan Lehmke\\\code{mailto:Stephan.Lehmke@cs.uni-dortmund.de}}
+
+\begin{document}
+\begin{slide}
+
+\maketitle
+
+\newslide
+
+\tableofcontents
+\end{slide}
+
+% CHANGED: Added \frame, moved \section out, added \frametitle
+\section{A list environment}
+\frame{
+\begin{slide}
+\centerslidesfalse
+\frametitle{A list environment}
+
+% The \pause command `splits' the current page at the place it appears, producing two pages, one with everything which
+% came before the \pause command, one containing this and additionally the stuff coming after \pause. When these pages
+% are presented with acrobar reader in full screen mode (or any other viewer with this capability), the presentation
+% will appear to `stop' at the point the \pause command was issued and `resume' in the moment the presenter switches to
+% the next page.
+
+\pause
+
+% As \pause forces a paragraph break, it can not be used to separate a description label from the associated text. For
+% this, we use the (very flexible) \stepwise command. Inside the argument of \stepwise, an arbitrary number of \step
+% commands may occur. \stepwise will produce as many pages as there are \step commands, making the arguments of the
+% \step commands appear ``one by one''.
+
+\stepwise
+{%
+ \begin{description}
+ \item[foo.] \step{bar.}
+ \step{\item[baz.]} \step{qux.}
+ \end{description}
+ }
+
+
+
+\end{slide}
+}
+
+% CHANGED: Added \frame, moved \section out
+\section{An aligned equation}
+\frame{
+\begin{slide}
+\centerslidesfalse
+\frametitle{An aligned equation}
+
+\pause
+
+% Normally for \stepwise, if a \step is not yet active, its argument is ignored completely. This would disturb
+% alignments, because the width changes with every new activated \step.
+% \parstepwise is a variant of \stepwise where the argument of an inactive \step is put into a \phantom, leaving the
+% proper amount of white space.
+
+\parstepwise
+{%
+ % Using eqnarray with equation numbers here means all equation numbers will be visible from the outset, because only
+ % the contents of the lines are `filled in'. See the full demo for an example of aligned equations where equation
+ % numbers `appear'.
+ \begin{eqnarray}
+ %
+ % When the argument of \step is put into a box (as it happens with \parstepwise), tabulators can not go in there. As
+ % we want the equals sign to appear at the same time as the right side of the equation, we use \restep for the
+ % latter. \restep is like \step, but it appears at the same time as the previous \step command.
+ %
+ \sum_{i=1}^{n} i & \step{=} & \restep{1 + 2 + \cdots + (n-1) + n}\\
+ %
+ & \step{=} & \restep{1 + n + 2 + (n-1) + \cdots}\\
+ %
+ & \step{=} & \restep
+ {% We can nest \step commands inside each other. The order of execution is just the
+ % order of appearance, independent of nesting.
+ % \switch is a variant of \step which takes two arguments and toggles between them on
+ % activation. This way, we can make the \underbrace `appear'.
+ % We insert a \vphantom in the first argument so that the equation numbers will be
+ % placed correctly whether or not the underbrace is didplayed.
+ \switch
+ {%
+ \vphantom{\underbrace{(1 + n) + \cdots + (1 + n)}_{\times\frac{n}{2}}}%
+ (1 + n) + \cdots + (1 + n)%
+ }
+ {\underbrace{(1 + n) + \cdots + (1 + n)}_{\times\frac{n}{2}}}%
+ }
+ \\
+ %
+ % This is another nested application of \step. Note that the spacing of \cdot has to be corrected manually by
+ % inserting {} left of it, because otherwise it would behave like a prefix operator.
+ %
+ & \step{=} & \restep{\frac{(1 + n)\step{{}\cdot n}}{\restep{2}}}
+ \end{eqnarray}
+}
+
+
+
+
+\end{slide}
+}
+
+% CHANGED: Added \frame, moved \section out
+\section{An array}
+\frame{
+\begin{slide}
+ \centerslidesfalse
+ \frametitle{An array}
+
+\stepwise
+{% With arrays, beware of problems with automatic calculation of cell widths.
+ %
+ % If you want all widths to be calculated automatically, you need to use \parstepwise, with the consequence that
+ % a) tabulators or newlines can not go into the argument of \step,
+ % b) the array `structure' (rules) will be completely visible right from the beginning.
+ %
+ % If you want to use \stepwise for being able to build the `structure' (like \hilne's) dynamically (as done in the
+ % following), you have to make sure that the cell widths are correct from the very first line, because otherwise the
+ % array will expand horizontally, destroying the dynamic effect. This can be assured by
+ % a) using only p cells,
+ % b) making sure all the cells in the first line are at least as wide as the widest cell which will appear later. If
+ % you are using the calc package, this is easiest by putting \makebox[\widthof{widest entry}]{first entry} into
+ % the first cell. Otherwise, you can use \settowidth.
+ %
+ \begin{displaymath}
+ \begin{array}{rrrrr}
+ \step
+ {%
+ n & \log n & n\log n & \lefteqn{n^2}\phantom{25} & \lefteqn{2^n}\phantom{32} \\
+ \hline%
+ }%
+ \step{0 &} \step{\textrm{---} &} \step{\textrm{---} &} \step{0 &} \step{1 \\}%
+ \step{1 &} \step{0\phantom{.6} &} \step{0\phantom{.8} &} \step{1 &} \step{2 \\}%
+ \step{2 &} \step{1\phantom{.6} &} \step{2\phantom{.8} &} \step{4 &} \step{4 \\}%
+ \step{3 &} \step{1.6 &} \step{4.8 &} \step{9 &} \step{8 \\}%
+ \step{4 &} \step{2\phantom{.6} &} \step{8\phantom{.8} &} \step{16 &} \step{16 \\}%
+ \step{5 &} \step{2.3 &} \step{11.6 &} \step{25 &} \step{32 }%
+ \end{array}
+ \end{displaymath}
+}
+
+
+
+
+\end{slide}
+}
+
+% CHANGED: Added \frame, moved \section out
+\section{A picture}
+\frame{
+\begin{slide}
+\centerslidesfalse
+\frametitle{A picture}
+
+\pause
+
+\begin{center}%
+ \stepwise
+ {%
+ \setlength{\unitlength}{1.5\semcm}%
+ \delimitershortfall-1sp% Just for the nested braces
+ \begin{picture}(14,2)
+ \put(0,1){\vector(1,0){1}}
+ \put(0.5,0.5){\makebox(0,0){\small $x(t)$}}
+ \put(13,1){\vector(1,0){1}}
+ \put(13.5,0.5){\makebox(0,0){\small $y(t)$}}
+ \step
+ {
+ \put(1,1){\line(3,2){1.5}}
+ \put(1,1){\line(3,-2){1.5}}
+ \put(2.5,0){\line(0,1){2}}
+ \put(2,1){\makebox(0,0){\large $\varphi$}}
+ }
+ \step
+ {
+ \put(2.5,1){\vector(1,0){3.5}}
+ \put(4.25,0.5){\makebox(0,0){\small $F_t = \varphi\left(x(t)\right)$}}
+ }
+ \step
+ {
+ \put(6,0){\framebox(2,2){\large $\Phi$}}
+ }
+ \step
+ {
+ \put(8,1){\vector(1,0){3.5}}
+ %
+ % Here, we find another nested use of \step inside \step.
+ % \bstep is a variant of \step which _always_ puts its argument into a box for leaving the correct amount of
+ % white space. We cannot use \parstepwise here because \put can't go into a box. Hence, just using \step for
+ % building the nested formula on the next line would give the wrong size for the nested braces.
+ %
+ \put(9.75,0.5){\makebox(0,0){\footnotesize $G_t = \Phi\left(\bstep{\varphi\left(\bstep{x(t)}\right)}\right)$}}
+ }
+ \step
+ {
+ \put(13,1){\line(-3,2){1.5}}
+ \put(13,1){\line(-3,-2){1.5}}
+ \put(11.5,0){\line(0,1){2}}
+ \put(12,1){\makebox(0,0){\large $\delta$}}
+ }
+ \end{picture}%
+ }%
+\end{center}%
+\end{slide}
+}
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex b/macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex
new file mode 100644
index 0000000000..f5faef720e
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex
@@ -0,0 +1,744 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+
+
+\documentclass{beamer}
+
+%
+% DO NOT USE THIS FILE AS A TEMPLATE FOR YOUR OWN TALKS¡!!
+%
+% Use a file in the directory solutions instead.
+% They are much better suited.
+%
+
+
+% Setup appearance:
+
+\usetheme{Darmstadt}
+\usefonttheme[onlylarge]{structurebold}
+\setbeamerfont*{frametitle}{size=\normalsize,series=\bfseries}
+\setbeamertemplate{navigation symbols}{}
+
+
+% Standard packages
+
+\usepackage[english]{babel}
+\usepackage[latin1]{inputenc}
+\usepackage{times}
+\usepackage[T1]{fontenc}
+
+
+% Setup TikZ
+
+\usepackage{tikz}
+\usetikzlibrary{arrows}
+\tikzstyle{block}=[draw opacity=0.7,line width=1.4cm]
+
+
+% Author, Title, etc.
+
+\title[Block Partitioning and Perfect Phylogenies]
+{%
+ On the Complexity of SNP Block Partitioning Under the Perfect
+ Phylogeny Model%
+}
+
+\author[Gramm, Hartman, Nierhoff, Sharan, Tantau]
+{
+ Jens~Gramm\inst{1} \and
+ Tzvika~Hartman\inst{2} \and
+ Till~Nierhoff\inst{3} \and
+ Roded~Sharan\inst{4} \and
+ \textcolor{green!50!black}{Till~Tantau}\inst{5}
+}
+
+\institute[Tübingen and others]
+{
+ \inst{1}%
+ Universität Tübingen, Germany
+ \and
+ \vskip-2mm
+ \inst{2}%
+ Bar-Ilan University, Ramat-Gan, Israel
+ \and
+ \vskip-2mm
+ \inst{3}%
+ International Computer Science Institute, Berkeley, USA
+ \and
+ \vskip-2mm
+ \inst{4}%
+ Tel-Aviv University, Israel
+ \and
+ \vskip-2mm
+ \inst{5}%
+ Universität zu Lübeck, Germany
+}
+
+\date[WABI 2006]
+{Workshop on Algorithms in Bioinformatics, 2006}
+
+
+
+% The main document
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Outline}
+ \tableofcontents
+\end{frame}
+
+
+\section{Introduction}
+
+\subsection{The Model and the Problem}
+
+\begin{frame}{What is haplotyping and why is it important?}
+ You hopefully know this after the previous three talks\dots
+\end{frame}
+
+\begin{frame}[t]{General formalization of haplotyping.}
+ \begin{block}{Inputs}
+ \begin{itemize}
+ \item A \alert{genotype matrix} $G$.
+ \item The \alert{rows} of the matrix are \alert{taxa / individuals}.
+ \item The \alert{columns} of the matrix are \alert{SNP sites /
+ characters}.
+ \end{itemize}
+ \end{block}
+ \begin{block}{Outputs}
+ \begin{itemize}
+ \item A \alert{haplotype matrix} $H$.
+ \item Pairs of rows in $H$ \alert{explain} the rows of $G$.
+ \item The haplotypes in $H$ are \alert{biologically plausible}.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+
+\begin{frame}[t]{Our formalization of haplotyping.}
+ \begin{block}{Inputs}
+ \begin{itemize}
+ \item A genotype matrix $G$.
+ \item The rows of the matrix are individuals / taxa.
+ \item The columns of the matrix are SNP sites / characters.
+ \item<alert@1->
+ The problem is directed: one haplotype is known.
+ \item<alert@1->
+ The input is biallelic: there are only two homozygous
+ states (0 and 1) and one heterozygous state (2).
+ \end{itemize}
+ \end{block}
+ \begin{block}{Outputs}
+ \begin{itemize}
+ \item A haplotype matrix $H$.
+ \item Pairs of rows in $H$ explain the rows of $G$.
+ \item<alert@1> The haplotypes in $H$ form a perfect phylogeny.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+
+\begin{frame}{We can do perfect phylogeny haplotyping efficiently, but
+ \dots}
+ \begin{enumerate}
+ \item \alert{Data may be missing.}
+ \begin{itemize}
+ \item This makes the problem NP-complete \dots
+ \item \dots even for very restricted cases.
+ \end{itemize}
+ \textcolor{green!50!black}{Solutions:}
+ \begin{itemize}
+ \item Additional assumption like the rich data hypothesis.
+ \end{itemize}
+ \item \alert{No perfect phylogeny is possible.}
+ \begin{itemize}
+ \item This can be caused by chromosomal crossing-over effects.
+ \item This can be caused by incorrect data.
+ \item This can be caused by multiple mutations at the same sites.
+ \end{itemize}
+ \textcolor{green!50!black}{Solutions:}
+ \begin{itemize}
+ \item Look for phylogenetic networks.
+ \item Correct data.
+ \item<alert@1->
+ Find blocks where a perfect phylogeny is possible.
+ \end{itemize}
+ \end{enumerate}
+\end{frame}
+
+
+\subsection{The Integrated Approach}
+
+\begin{frame}{How blocks help in perfect phylogeny haplotyping.}
+ \begin{enumerate}
+ \item Partition the site set into overlapping contiguous blocks.
+ \item Compute a perfect phylogeny for each block and combine them.
+ \item Use dynamic programming for finding the partition.
+ \end{enumerate}
+
+ \begin{tikzpicture}
+ \useasboundingbox (0,-1) rectangle (10,2);
+
+ \draw[line width=2mm,dash pattern=on 1mm off 1mm]
+ (0,1) -- (9.99,1) node[midway,above] {Genotype matrix}
+ (0,0.6666) -- (9.99,0.6666)
+ (0,0.3333) -- (9.99,0.3333)
+ (0,0) -- (9.99,0) node[midway,below] {\only<1>{no perfect phylogeny}};
+
+ \begin{scope}[xshift=-.5mm]
+ \only<2->
+ {
+ \draw[red,block] (0,.5) -- (3,.5)
+ node[midway,below] {perfect phylogeny};
+ }
+
+ \only<3->
+ {
+ \draw[green!50!black,block] (2.5,.5) -- (7,.5)
+ node[pos=0.6,below] {perfect phylogeny};
+ }
+
+ \only<4->
+ {
+ \draw[blue,block] (6.5,.5) -- (10,.5)
+ node[pos=0.6,below] {perfect phylogeny};
+ }
+ \end{scope}
+ \end{tikzpicture}
+\end{frame}
+
+\begin{frame}{Objective of the integrated approach.}
+ \begin{enumerate}
+ \item Partition the site set into \alert{noncontiguous} blocks.
+ \item Compute a perfect phylogeny for each block and combine them.
+ \item<alert@1-> Compute partition while computing perfect
+ phylogenies.
+ \end{enumerate}
+
+ \begin{tikzpicture}
+ \useasboundingbox (0,-1) rectangle (10,2);
+
+ \draw[line width=2mm,dash pattern=on 1mm off 1mm]
+ (0,1) -- (9.99,1) node[midway,above] {Genotype matrix}
+ (0,0.6666) -- (9.99,0.6666)
+ (0,0.3333) -- (9.99,0.3333)
+ (0,0) -- (9.99,0) node[midway,below] {\only<1>{no perfect phylogeny}};
+
+ \only<2->
+ {
+ \begin{scope}[xshift=-0.5mm]
+ \draw[red,block] (0,.5) -- (3,.5)
+ node[midway,below] {perfect phylogeny}
+ (8,.5) -- (9,.5);
+
+ \draw[green!50!black,block]
+ (3,.5) -- (6,.5)
+ node[pos=0.6,below] {perfect phylogeny}
+ (6.4,.5) -- (8,.5)
+ (9,.5) -- (10,.5);
+
+ \draw[blue,block] (6,.5) -- (6.4,.5)
+ node[midway,below=5mm] {perfect phylogeny};
+ \end{scope}
+ }
+ \end{tikzpicture}
+\end{frame}
+
+
+\begin{frame}{The formal computational problem.}
+ We are interested in the computational complexity of \\
+ \alert{the function \alert{$\chi_{\operatorname{PP}}$}}:
+ \begin{itemize}
+ \item It gets genotype matrices as input.
+ \item It maps them to a number $k$.
+ \item This number is minimal such that the sites can be
+ covered by $k$ sets, each admitting a perfect phylogeny.
+ \\
+ (We call this a \alert{pp-partition}.)
+ \end{itemize}
+\end{frame}
+
+
+\section{Bad News: Hardness Results}
+
+\subsection{Hardness of PP-Partitioning of Haplotype Matrices}
+
+\begin{frame}{Finding pp-partitions of haplotype matrices.}
+ We start with a special case:
+ \begin{itemize}
+ \item The inputs $M$ are \alert{already haplotype matrices}.
+ \item The inputs $M$ \alert{do not allow a perfect phylogeny}.
+ \item What is $\chi_{\operatorname{PP}}(M)$?
+ \end{itemize}
+ \begin{example}
+ \begin{columns}
+ \column{.3\textwidth}
+ $M\colon$
+ \footnotesize
+ \begin{tabular}{cccc}
+ 0 & 0 & 0 & 1 \\
+ 0 & 1 & 0 & 0 \\
+ 1 & 0 & 0 & 0 \\
+ 0 & 1 & 0 & 0 \\
+ 1 & 0 & 0 & 0 \\
+ 0 & 1 & 0 & 1 \\
+ 1 & 1 & 0 & 0 \\
+ 0 & 0 & 1 & 0 \\
+ 1 & 0 & 1 & 0
+ \end{tabular}%
+ \only<2>
+ {%
+ \begin{tikzpicture}
+ \useasboundingbox (2.9,0);
+
+ \draw [red, opacity=0.7,line width=1cm] (1.7 ,1.9) -- (1.7 ,-1.7);
+ \draw [blue,opacity=0.7,line width=5mm] (0.85,1.9) -- (0.85,-1.7)
+ (2.55,1.9) -- (2.55,-1.7);
+ \end{tikzpicture}
+ }
+ \column{.6\textwidth}
+ \begin{overprint}
+ \onslide<1>
+ No perfect phylogeny is possible.
+
+ \onslide<2>
+ \textcolor{blue!70!bg}{Perfect phylogeny}
+
+ \textcolor{red!70!bg}{Perfect phylogeny}
+
+ $\chi_{\operatorname{PP}}(M) = 2$.
+
+ \end{overprint}
+ \end{columns}
+ \end{example}
+\end{frame}
+
+\begin{frame}{Bad news about pp-partitions of haplotype matrices.}
+ \begin{theorem}
+ Finding \alert{optimal pp-partition of haplotype matrices}\\
+ is equivalent to finding \alert{optimal graph colorings}.
+ \end{theorem}
+
+ \begin{proof}[Proof sketch for first direction]
+ \begin{enumerate}
+ \item Let $G$ be a graph.
+ \item Build a matrix with a column for each vertex of $G$.
+ \item For each edge of $G$ add four rows inducing\\the
+ submatrix $\left(
+ \begin{smallmatrix}
+ 0 & 0 \\
+ 0 & 1 \\
+ 1 & 0 \\
+ 1 & 1
+ \end{smallmatrix}\right)$.
+ \item The submatrix enforces that the columns lie in different
+ perfect phylogenies. \qedhere
+ \end{enumerate}
+ \end{proof}
+\end{frame}
+
+\begin{frame}{Implications for pp-partitions of haplotype matrices.}
+ \begin{corollary}
+ If $\chi_{\operatorname{PP}}(M) = 2$ for a haplotype matrix $M$,
+ we can find an optimal pp-partition in polynomial time.
+ \end{corollary}
+
+ \begin{corollary}
+ Computing $\chi_{\operatorname{PP}}$ for haplotype matrices is
+ \begin{itemize}
+ \item $\operatorname{NP}$-hard,
+ \item not fixed-parameter tractable, unless
+ $\operatorname{P}=\operatorname{NP}$,
+ \item very hard to approximate.
+ \end{itemize}
+ \end{corollary}
+\end{frame}
+
+
+\subsection{Hardness of PP-Partitioning of Genotype Matrices}
+
+
+\begin{frame}{Finding pp-partitions of genotype matrices.}
+ Now comes the general case:
+ \begin{itemize}
+ \item The inputs $M$ are \alert{genotype matrices}.
+ \item The inputs $M$ \alert{do not allow a perfect phylogeny}.
+ \item What is $\chi_{\operatorname{PP}}(M)$?
+ \end{itemize}
+ \begin{example}
+ \begin{columns}
+ \column{.3\textwidth}
+ $M\colon$
+ \footnotesize
+ \begin{tabular}{cccc}
+ 2 & 2 & 2 & 2 \\
+ 1 & 0 & 0 & 0 \\
+ 0 & 0 & 0 & 1 \\
+ 0 & 0 & 1 & 0 \\
+ 0 & 2 & 2 & 0 \\
+ 1 & 1 & 0 & 0
+ \end{tabular}%
+ \only<2>
+ {%
+ \begin{tikzpicture}
+ \useasboundingbox (2.9,0);
+
+ \draw [red, opacity=0.7,line width=1cm] (1.7 ,1.3) -- (1.7 ,-1.1);
+ \draw [blue,opacity=0.7,line width=5mm] (0.85,1.3) -- (0.85,-1.1)
+ (2.55,1.3) -- (2.55,-1.1);
+ \end{tikzpicture}
+ }
+ \column{.6\textwidth}
+ \begin{overprint}
+ \onslide<1>
+ No perfect phylogeny is possible.
+
+ \onslide<2>
+ \textcolor{blue!70!bg}{Perfect phylogeny}
+
+ \textcolor{red!70!bg}{Perfect phylogeny}
+
+ $\chi_{\operatorname{PP}}(M) = 2$.
+
+ \end{overprint}
+ \end{columns}
+ \end{example}
+\end{frame}
+
+
+\begin{frame}{Bad news about pp-partitions of haplotype matrices.}
+ \begin{theorem}
+ Finding \alert{optimal pp-partition of genotype matrices}
+ is at least as hard as finding \alert{optimal colorings of
+ 3-uniform hypergraphs}.
+ \end{theorem}
+
+ \begin{proof}[Proof sketch]
+ \begin{enumerate}
+ \item Let $G$ be a 3-uniform hypergraph.
+ \item Build a matrix with a column for each vertex of $G$.
+ \item For each hyperedge of $G$ add four rows inducing\\ the submatrix
+ $\left(
+ \begin{smallmatrix}
+ 2 & 2 & 2 \\
+ 1 & 0 & 0 \\
+ 0 & 1 & 0 \\
+ 0 & 0 & 1
+ \end{smallmatrix}\right)
+ $.
+ \item The submatrix enforces that the three columns do not all lie
+ in the same perfect phylogeny. \qedhere
+ \end{enumerate}
+ \end{proof}
+\end{frame}
+
+\begin{frame}{Implications for pp-partitions of genotype matrices.}
+ \begin{corollary}
+ Even if we know $\chi_{\operatorname{PP}}(M) = 2$ for a genotype matrix $M$,\\
+ finding a pp-partition of any fixed size is still
+ \begin{itemize}
+ \item $\operatorname{NP}$-hard,
+ \item not fixed-parameter tractable, unless
+ $\operatorname{P}=\operatorname{NP}$,
+ \item very hard to approximate.
+ \end{itemize}
+ \end{corollary}
+\end{frame}
+
+
+\section{Good News: Tractability Results}
+
+\subsection{Perfect Path Phylogenies}
+
+\begin{frame}{Automatic optimal pp-partitioning is hopeless, but\dots}
+ \begin{itemize}
+ \item The hardness results are \alert{worst-case} results for\\
+ \alert{highly artificial inputs}.
+ \item \alert{Real biological data} might have special properties
+ that make the problem \alert{tractable}.
+ \item One such property is that perfect phylogenies are often
+ perfect \alert{path} phylogenies:
+
+ In HapMap data, in 70\% of the blocks where a perfect phylogeny
+ is possible a perfect path phylogeny is also possible.
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}{Example of a perfect path phylogeny.}
+ \begin{columns}[t]
+ \column{.3\textwidth}
+ \begin{exampleblock}{Genotype matrix}
+ $G\colon$
+ \begin{tabular}{ccc}
+ A & B & C \\\hline
+ 2 & 2 & 2 \\
+ 0 & 2 & 0 \\
+ 2 & 0 & 0 \\
+ 0 & 2 & 2
+ \end{tabular}
+ \end{exampleblock}
+
+ \column{.3\textwidth}
+ \begin{exampleblock}{Haplotype matrix}
+ $H\colon$
+ \begin{tabular}{ccc}
+ A & B & C \\\hline
+ 1 & 0 & 0 \\
+ 0 & 1 & 1 \\
+ 0 & 0 & 0 \\
+ 0 & 1 & 0 \\
+ 0 & 0 & 0 \\
+ 1 & 0 & 0 \\
+ 0 & 0 & 0 \\
+ 0 & 1 & 1
+ \end{tabular}
+ \end{exampleblock}
+
+ \column{.4\textwidth}
+ \begin{exampleblock}{Perfect path phylogeny}
+ \begin{center}
+ \begin{tikzpicture}[auto,thick]
+ \tikzstyle{node}=%
+ [%
+ minimum size=10pt,%
+ inner sep=0pt,%
+ outer sep=0pt,%
+ ball color=example text.fg,%
+ circle%
+ ]
+
+ \node [node] {} [->]
+ child {node [node] {} edge from parent node[swap]{A}}
+ child {node [node] {}
+ child {node [node] {} edge from parent node{C}}
+ edge from parent node{B}
+ };
+ \end{tikzpicture}
+ \end{center}
+ \end{exampleblock}
+ \end{columns}
+\end{frame}
+
+
+\begin{frame}{The modified formal computational problem.}
+ We are interested in the computational complexity of \\
+ the function $\chi_{\alert{\operatorname{PPP}}}$:
+ \begin{itemize}
+ \item It gets genotype matrices as input.
+ \item It maps them to a number $k$.
+ \item This number is minimal such that the sites can be
+ covered by $k$ sets, each admitting a perfect \alert{path} phylogeny.
+ \\
+ (We call this a ppp-partition.)
+ \end{itemize}
+\end{frame}
+
+
+
+\subsection{Tractability of PPP-Partitioning of Genotype Matrices}
+
+\begin{frame}{Good news about ppp-partitions of genotype matrices.}
+ \begin{theorem}
+ \alert{Optimal ppp-partitions of genotype matrices} can be
+ computed in \alert{polynomial time}.
+ \end{theorem}
+ \begin{block}{Algorithm}
+ \begin{enumerate}
+ \item Build the following partial order:
+ \begin{itemize}
+ \item Can one column be above the other in a phylogeny?
+ \item Can the columns be the two children of the root of a
+ perfect path phylogeny?
+ \end{itemize}
+ \item Cover the partial order with as few compatible chain pairs
+ as possible.
+
+ For this, a maximal matching in a special graph needs to be
+ computed.
+ \end{enumerate}
+ \end{block}
+ \hyperlink{algorithm<1>}{\beamergotobutton{The algorithm in action}}
+ \hypertarget{return}{}
+\end{frame}
+
+\section*{Summary}
+
+\begin{frame}
+ \frametitle<presentation>{Summary}
+
+ \begin{itemize}
+ \item
+ Finding optimal pp-partitions is \alert{intractable}.
+ \item
+ It is even intractable to find a pp-partition when \alert{just two
+ noncontiguous blocks are known to suffice}.
+ \item
+ For perfect \alert{path} phylogenies, optimal partitions can be
+ computed \alert{in polynomial time}.
+ \end{itemize}
+\end{frame}
+
+
+\appendix
+
+\section*{Appendix}
+
+\begin{frame}[label=algorithm]{The algorithm in action.}{Computation of
+ the partial order.}
+ \begin{columns}[t]
+ \column{.4\textwidth}
+ \begin{exampleblock}{Genotype matrix}
+ $G\colon$
+ \begin{tabular}{ccccc}
+ A & B & C & D & E \\\hline
+ 2 & 2 & 2 & 2 & 2 \\
+ 0 & 1 & 2 & 1 & 0 \\
+ 1 & 0 & 0 & 1 & 2 \\
+ 0 & 2 & 2 & 0 & 0
+ \end{tabular}
+ \end{exampleblock}
+ \column{.6\textwidth}
+ \begin{exampleblock}{Partial order}
+ \begin{tikzpicture}[node distance=15mm]
+ \tikzstyle{every node}=
+ [%
+ fill=green!50!black!20,%
+ draw=green!50!black,%
+ minimum size=7mm,%
+ circle,%
+ thick%
+ ]
+
+ \node (A) {A};
+ \node (B) [right of=A] {B};
+ \node (C) [below of=B] {C};
+ \node (D) [above of=A] {D};
+ \node (E) [below of=A] {E};
+
+ \path [thick,shorten >=1pt,-stealth'] (A) edge (E)
+ (B) edge (C)
+ (D) edge (A)
+ edge[bend right] (E);
+
+ \uncover<2>{
+ \path [-,blue,thick](A) edge (B)
+ edge (C)
+ (B) edge (E)
+ (C) edge (E);}
+ \end{tikzpicture}
+
+ Partial order: \tikz[baseline] \draw[thick,-stealth'] (0pt,.5ex)
+ -- (5mm,.5ex);
+
+ \uncover<2>{\textcolor{blue}{Compatible as children of root:
+ \tikz[baseline] \draw[thick] (0pt,.5ex) -- (5mm,.5ex);}}
+ \end{exampleblock}
+ \end{columns}
+\end{frame}
+
+\begin{frame}{The algorithm in action.}{The matching in the special graph.}
+ \begin{columns}[t]
+ \column{.3\textwidth}
+ \begin{exampleblock}{Partial order}
+ \begin{tikzpicture}[node distance=15mm]
+ \tikzstyle{every node}=%
+ [%
+ fill=green!50!black!20,%
+ draw=green!50!black,%
+ minimum size=8mm,%
+ circle,%
+ thick%
+ ]
+
+ \node (A) {$A$};
+ \node (B) [right of=A] {$B$};
+ \node (C) [below of=B] {$C$};
+ \node (D) [above of=A] {$D$};
+ \node (E) [below of=A] {$E$};
+
+ \path [thick,shorten >=1pt,-stealth'] (A) edge (E)
+ (B) edge (C)
+ (D) edge (A)
+ edge[bend right] (E);
+
+ \path [-,blue,thick](A) edge (B)
+ edge (C)
+ (B) edge (E)
+ (C) edge (E);
+
+ \only<3->
+ {
+ \path[very thick,shorten >=1pt,-stealth',red] (D) edge (A) (B) edge (C);
+ \path [-,red,very thick](E) edge (B);
+ }
+ \end{tikzpicture}
+ \end{exampleblock}
+ \column{.7\textwidth}
+ \begin{exampleblock}{Matching graph}
+ \begin{tikzpicture}[node distance=15mm]
+ \tikzstyle{every node}=%
+ [%
+ fill=green!50!black!20,%
+ draw=green!50!black,%
+ minimum size=8mm,%
+ circle,%
+ thick,%
+ inner sep=0pt%
+ ]
+
+ \node (A) {$A$};
+ \node (B) [right of=A] {$B$};
+ \node (C) [below of=B] {$C$};
+ \node (D) [above of=A] {$D$};
+ \node (E) [below of=A] {$E$};
+
+ \begin{scope}[xshift=4.75cm]
+ \node (A') {$A'$};
+ \node (B') [right of=A'] {$B'$};
+ \node (C') [below of=B'] {$C'$};
+ \node (D') [above of=A'] {$D'$};
+ \node (E') [below of=A'] {$E'$};
+ \end{scope}
+
+ \path [thick] (A) edge (E')
+ (B) edge (C')
+ (D) edge (A')
+ edge (E');
+
+ \path [blue,thick](A') edge (B')
+ edge (C')
+ (B') edge (E')
+ (C') edge (E');
+
+ \only<2->
+ {
+ \path[very thick,red] (D) edge (A')
+ (B) edge (C')
+ (B') edge (E');
+ }
+ \end{tikzpicture}
+ \end{exampleblock}
+ \end{columns}
+
+ \medskip
+ \uncover<2->{A \alert{maximal matching} in the matching graph
+ \uncover<3>{induces\\ \alert{perfect path phylogenies}.}}
+
+ \hfill\hyperlink{return}{\beamerreturnbutton{Return}}
+\end{frame}
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex
new file mode 100644
index 0000000000..dbda07c3ab
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex
@@ -0,0 +1,13 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[german,10pt]{beamer}
+
+\input{beamerexample-lecture-style.tex}
+\input{beamerexample-lecture-body.tex}
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex
new file mode 100644
index 0000000000..5d472951be
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex
@@ -0,0 +1,587 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+%
+% DO NOT USE THIS FILE AS A TEMPLATE FOR YOUR OWN TALKS¡!!
+%
+% Use a file in the directory solutions instead.
+% They are much better suited.
+%
+
+
+\lecture[1]{Syntax versus Semantik}{lecture-text}
+
+\subtitle{Text und seine Bedeutung}
+
+\date{27. Oktober 2006}
+
+
+\begin{document}
+
+\begin{frame}
+ \maketitle
+\end{frame}
+
+
+\section*{Ziele und Inhalt}
+
+\begin{frame}{Die Lernziele der heutigen Vorlesung und der Übungen.}
+ \begin{enumerate}
+ \item Die Begriffe Syntax und Semantik erklären können
+ \item Syntaktische und semantische Elemente natürlicher Sprachen und
+ von Programmiersprachen benennen können
+ \item Die Begriffe Alphabet und Wort kennen
+ \item Objekte als Worte kodieren können
+ \end{enumerate}
+\end{frame}
+
+\begin{frame}\frametitle<presentation>{Gliederung}
+ \tableofcontents
+\end{frame}
+
+
+\section{Was ist Syntax?}
+
+\begin{frame}{Die zwei Hauptbegriffe der heutigen Vorlesung.}
+ \begin{block}{Grobe Definition (Syntax)}
+ Unter einer \alert{Syntax} verstehen wir \alert{Regeln}, nach denen
+ Texte \alert{strukturiert} werden dürfen.
+ \end{block}
+ \begin{block}{Grobe Definition (Semantik)}
+ Unter einer \alert{Semantik} verstehen wir die Zuordnung von
+ \alert{Bedeutung} zu Text.
+ \end{block}
+\end{frame}
+
+
+\subsection[Syntax \protect\\ natürlicher Sprachen]{Syntax natürlicher Sprachen}
+
+\begin{frame}{Beobachtungen zu einem ägyptischen Text.}
+ \includegraphicscopyright[width=6cm]{beamerexample-lecture-pic3.jpg}
+ {Copyright by Guillaume Blanchard, GNU Free Documentation License, Low Resultion}
+
+ \begin{block}{Beobachtungen}
+ \begin{itemize}
+ \item Wir haben keine Ahnung, was der Text bedeutet.
+ \item Es gibt aber \alert{Regeln}, die offenbar eingehalten wurden,
+ wie »Hieroglyphen stehen in Zeilen«.
+ \item Solche Regeln sind \alert{syntaktische Regeln} -- man kann sie
+ überprüfen, ohne den Inhalt zu verstehen.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+
+\begin{frame}{Beobachtungen zu einem kyrillischen Text.}
+
+ \includegraphicscopyright[width=6.75cm]{beamerexample-lecture-pic4.jpg}
+ {Copyright by Cristian Chirita, GNU Free Documentation License, Low Resultion}
+
+ \begin{block}{Beobachtungen}
+ \begin{itemize}
+ \item Wir haben keine Ahnung, was der Text bedeutet.
+ \item Es gibt aber \alert{Regeln}, die offenbar eingehalten wurden.
+ \item Wir kennen mehr Regeln als bei den Hieroglyphen.
+ \end{itemize}
+ \end{block}
+
+ \begin{block}{Zur Diskussion}
+ Welche syntaktischen Regeln fallen Ihnen ein, die bei dem Text
+ eingehalten wurden?
+ \end{block}
+\end{frame}
+
+
+
+\begin{frame}{Beobachtungen zu einem deutschen Text.}
+ \begin{quotation}
+ Informatiker lieben Logiker.
+ \end{quotation}
+
+ \bigskip
+ \begin{block}{Beobachtungen}
+ \begin{itemize}
+ \item Auch hier werden viele syntaktische Regeln eingehalten.
+ \item Es fällt uns aber \alert{schwerer}, diese zu erkennen.
+ \item Der Grund ist, dass wir \alert{sofort über die Bedeutung
+ nachdenken}.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}{Zur Syntax von natürlichen Sprachen.}
+ \begin{itemize}
+ \item
+ Die \alert{Syntax} einer natürlichen Sprache ist die Menge an
+ \alert{Regeln}, nach denen Sätze gebildet werden dürfen.
+ \item
+ Die \alert{Bedeutung} oder der \alert{Sinn} der gebildeten Sätze
+ ist dabei unerheblich.
+ \item
+ Jede Sprache hat ihre eigene Syntax; die Syntax verschiedener
+ Sprachen ähneln sich aber oft.
+ \item
+ Es ist nicht immer klar, ob eine Regel noch zur Syntax gehört
+ oder ob es schon um den Sinn geht.
+
+ \ExampleInline{Substantive werden groß geschrieben.}
+ \end{itemize}
+\end{frame}
+
+\subsection{Syntax von Programmiersprachen}
+
+\begin{frame}[fragile]{Beobachtungen zu einem Programmtext.}
+
+\begin{verbatim}
+\def\pgfpointadd#1#2{%
+ \pgf@process{#1}%
+ \pgf@xa=\pgf@x%
+ \pgf@ya=\pgf@y%
+ \pgf@process{#2}%
+ \advance\pgf@x by\pgf@xa%
+ \advance\pgf@y by\pgf@ya}
+\end{verbatim}
+ \begin{block}{Beobachtungen}
+ \begin{itemize}
+ \item Der Programmtext sieht sehr kryptisch aus.
+ \item Trotzdem gibt es offenbar wieder Regeln.
+ \item So scheint einem Doppelkreuz eine Ziffer zu folgen und
+ Zeilen muss man offenbar mit Prozentzeichen beenden.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+
+\begin{frame}[fragile]{Beobachtungen zu einem weiteren Programmtext.}
+
+\begin{verbatim}
+for (int i = 0; i < 100; i++)
+ a[i] = a[i];
+\end{verbatim}
+ \begin{block}{Beobachtungen}
+ \begin{itemize}
+ \item Wieder gibt es Regeln, die eingehalten werden.
+ \item Wieder fällt es uns \alert{schwerer}, diese zu erkennen, da
+ wir \alert{sofort über den Sinn nachdenken}.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+
+\begin{frame}{Zur Syntax von Programmiersprachen}
+ \begin{itemize}
+ \item Die \alert{Syntax} einer Programmiersprache ist die
+ \alert{Menge von Regeln}, nach der Programmtexte gebildet werden
+ dürfen.
+ \item Die \alert{Bedeutung} oder der \alert{Sinn} der Programmtexte
+ ist dabei egal.
+ \item
+ Jede Programmiersprache hat ihre eigene Syntax; die Syntax
+ verschiedener Sprachen ähneln sich aber oft.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{5-Minuten-Aufgabe}
+ Welche der folgenden Regeln sind Syntax-Regeln?
+ \begin{enumerate}
+ \item Bezeichner dürfen nicht mit einer Ziffer anfangen.
+ \item Programme müssen in endlicher Zeit ein Ergebnis produzieren.
+ \item Öffnende und schließende geschweifte Klammern müssen
+ »balanciert« sein.
+ \item Methoden von Null-Objekten dürfen nicht aufgerufen werden.
+ \item Variablen müssen vor ihrer ersten Benutzung deklariert werden.
+ \end{enumerate}
+\end{frame}
+
+
+\subsection[Syntax\protect\\ logischer Sprachen]{Syntax logischer Sprachen}
+
+\begin{frame}{Beobachtungen zu einer logischen Formel.}
+ \begin{quotation}
+ $p \to q \land \neg q$
+ \end{quotation}
+
+ \bigskip
+ \begin{block}{Beobachtungen}
+ \begin{itemize}
+ \item Auch logische Formeln haben eine syntaktische Struktur.
+ \item So wäre es \alert{syntaktisch falsch}, statt einem Pfeil zwei
+ Pfeile zu benutzen.
+ \item Es wäre aber \alert{syntaktisch richtig}, statt einem
+ Negationszeichen zwei Negationszeichen zu verwenden.
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}{Zur Syntax von logischen Sprachen}
+ \begin{itemize}
+ \item Die \alert{Syntax} einer logischen Sprache ist die
+ \alert{Menge von Regeln}, nach der Formeln gebildet werden
+ dürfen.
+ \item Die \alert{Bedeutung} oder der \alert{Sinn} der Formeln
+ ist dabei egal.
+ \item
+ Jede logische Sprache hat ihre eigene Syntax; die Syntax
+ verschiedener Sprachen ähneln sich aber oft.
+ \end{itemize}
+\end{frame}
+
+
+
+\section{Was ist Semantik?}
+
+\subsection[Semantik\protect\\ natürlicher Sprachen]{Semantik natürlicher Sprachen}
+
+\begin{frame}{Was bedeutet ein Satz?}
+
+ \begin{quotation}
+ Der Hörsaal ist groß.
+ \end{quotation}
+
+ \bigskip
+ \begin{itemize}
+ \item Dieser Satz hat eine \alert{Bedeutung}.
+ \item Eine \alert{Semantik} legt solche Bedeutungen fest.
+ \item Syntaktisch falschen Sätzen wird im Allgemeinen keine
+ Bedeutung zugewiesen.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Ein Satz, zwei Bedeutungen.}
+ \begin{quotation}
+ Steter Tropfen höhlt den Stein.
+ \end{quotation}
+
+ \bigskip
+ \begin{itemize}
+ \item Ein Satz kann \alert{mehrere Bedeutungen haben}, welche durch
+ \alert{unterschiedliche Semantiken} gegeben sind.
+ \item In der \alert{wortwörtlichen Semantik} sagt der Satz aus, dass
+ Steine ausgehöhlte werden, wenn man jahrelang Wasser auf
+ sie tropft.
+ \item In der \alert{übertragenen Semantik} sagt der Satz aus, dass
+ sich Beharrlichkeit auszahlt.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Die Semantik der Hieroglyphen}
+ \includegraphicscopyright[height=8cm]{beamerexample-lecture-pic5.jpg}
+ {Unknown Author, Public Domain, Low Resolution}
+\end{frame}
+
+
+\subsection{Semantik von Programmiersprachen}
+
+\begin{frame}[fragile]{Was bedeutet ein Programm?}
+\begin{verbatim}
+for (int i = 0; i < 100; i++)
+ a[i] = a[i];
+\end{verbatim}
+ \begin{itemize}
+ \item Auch dieser Programmtext »bedeutet etwas«, wir »meinen etwas«
+ mit diesem Text.
+ \item Die \alert{Semantik der Programmiersprache} legt fest,
+ was mit dem Programmtext gemeint ist.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]{Ein Programm, zwei Bedeutungen.}
+\begin{verbatim}
+for (int i = 0; i < 100; i++)
+ a[i] = a[i];
+\end{verbatim}
+ \begin{itemize}
+ \item Ein Programmtext kann \alert{mehrere Bedeutungen haben},
+ welche durch \alert{unterschiedliche Semantiken} gegeben sind.
+ \item In der \alert{operationalen Semantik} bedeutet der
+ Programmtext, dass die ersten einhundert Elemente eines Arrays
+ \verb!a! nacheinander ihren eigenen Wert zugewiesen bekommen.
+ \item In der \alert{denotationellen Semantik} bedeutet der
+ Programmtext, dass nichts passiert.
+ \end{itemize}
+\end{frame}
+
+
+\subsection[Semantik\protect\\ logischer Sprachen]{Semantik logischer Sprachen}
+
+
+
+
+\section{Grundlage der Syntax: Text}
+
+\begin{frame}{Eine mathematische Sicht auf Text.}
+ \begin{itemize}
+ \item Viele (aber nicht alle!) syntaktische Systeme bauen auf
+ \alert{Text} auf.
+ \item Auch solche Systeme, die nicht auf Text aufbauen, lassen sich
+ trotzdem durch Text beschreiben.
+ \item Es ist deshalb nützlich, auf Text \text{Methoden der
+ Mathematik} anwenden zu können.
+ \item Im Folgenden wird deshalb die \alert{mathematische Sicht} auf
+ Text eingeführt, die \alert{in der gesamten Theoretischen
+ Informatik} genutzt wird.
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Alphabete}
+
+\begin{frame}{Formale Alphabete}
+ \begin{definition}[Alphabet]
+ Ein \alert{Alphabet} ist eine nicht-leere, endliche Menge von
+ \alert{Symbolen} (auch \alert{Buchstaben} genannt).
+ \end{definition}
+
+ \begin{itemize}
+ \item Alphabete werden häufig mit griechischen Großbuchstaben
+ bezeichnet, also $\Gamma$ oder~$\Sigma$. Manchmal auch mit
+ lateinischen Großbuchstaben, also $N$ oder~$T$.
+ \item Ein Symbol oder »Buchstabe« kann auch ein komplexes oder
+ komisches »Ding« sein wie ein Pointer oder ein Leerzeichen.
+ \end{itemize}
+
+ \begin{examples}
+ \begin{itemize}
+ \item Die Groß- und Kleinbuchstaben
+ \item Die Menge $\{0,1\}$ (bei Informatikern beliebt)
+ \item Die Menge $\{A,C,G,T\}$ (bei Biologen beliebt)
+ \item Die Zeichenmenge des UNICODE.
+ \end{itemize}
+ \end{examples}
+\end{frame}
+
+
+\subsection{Worte}
+
+
+\begin{frame}{Formale Worte}
+ \begin{definition}[Wort]
+ Ein \alert{Wort} ist eine (endliche) Folge von Symbolen.
+ \end{definition}
+ \begin{itemize}
+ \item »Worte« sind im Prinzip dasselbe wie
+ Strings. Insbesondere können in Worten Leerzeichen als Symbole
+ auftauchen.
+ \item Die Menge aller Worte über einem Alphabet $\Sigma$ hat einen
+ besonderen Namen: $\Sigma^*$.
+ \item
+ Deshalb schreibt man oft: »Sei $w \in \Sigma^*$, \dots«
+ \item Es gibt auch ein \alert{leeres Wort}, abgekürzt
+ $\epsilon$ oder $\lambda$, das dem String
+ \texttt{\char`\"\char`\"} entspricht.
+ \end{itemize}
+
+ \begin{examples}
+ \begin{itemize}
+ \item \texttt{Hallo}
+ \item \texttt{TATAAAATATTA}
+ \item $\epsilon$
+ \item \texttt{Hallo Welt.}
+ \end{itemize}
+ \end{examples}
+\end{frame}
+
+
+\begin{frame}{5-Minuten-Aufgabe}
+ Die folgenden Aufgaben sind nach Schwierigkeit sortiert. Lösen Sie
+ \alert{eine} der Aufgaben.
+ \begin{enumerate}
+ \item
+ Schreiben Sie alle Worte der Länge höchstens $2$ über dem Alphabet
+ $\Sigma = \{0,1,*\}$ auf.
+ \item
+ Wie viele Worte der Länge $n$ über dem Alphabet $\Sigma =
+ \{0,1,*\}$ gibt es?
+ \item
+ Wie viele Worte der Länge höchstens $n$ über einem Alphabet mit
+ $q$ Buchstaben gibt es?
+ \end{enumerate}
+\end{frame}
+
+
+\subsection{Sprachen}
+
+\begin{frame}{Formale Sprachen}{Definition}
+ \begin{itemize}
+ \item Natürlichen Sprachen sind komplexe Dinge, bestehend aus
+ Wörtern, ihrer Ausprache, einer Grammatik, Ausnahmen, Dialekten,
+ und vielem mehr.
+ \item Bei \alert{formalen Sprachen} vereinfacht man radikal.
+ \item Formale Sprachen müssen weder sinnvoll noch interessant sein.
+ \end{itemize}
+
+ \begin{definition}[Formale Sprache]
+ Eine \alert{formale Sprache} ist eine (oft unendliche!) Menge von
+ Worten für ein festes Alphabet.
+ \end{definition}
+
+ \begin{itemize}
+ \item Statt \frqq formale Sprache\flqq\ sagt man einfach \frqq Sprache\flqq.
+ \item Als Menge von Worten ist eine Sprache eine Teilmenge von
+ $\Sigma^*$.
+ \item
+ Deshalb schreibt man oft: \frqq Sei $L \subseteq \Sigma^*$,
+ \dots\flqq
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Formale Sprachen}{Einfache Beispiele}
+ \begin{examples}
+ \begin{itemize}
+ \item Die Menge $\{AAA, AAC, AAT\}$ (endliche Sprache).
+ \item Die Menge aller Java-Programmtexte (unendliche Sprache).
+ \item Die Menge aller Basensequenzen, die \texttt{TATA} enthalten
+ (unendliche Sprache).
+ \end{itemize}
+ \end{examples}
+\end{frame}
+
+\begin{frame}{Formale Sprachen in der Medieninformatik}
+ \begin{itemize}
+ \item Ein Renderer produziert 3D-Bilder.
+ \item Dazu erhält er eine \alert{Szenerie} als Eingabe.
+ \item Diese Szenerie ist als \alert{Text}, also als ein \alert{Wort} gegeben.
+ \item Eine \alert{Syntax} beschreibt die (formale) Sprache, die alle
+ \alert{syntaktisch korrekten Szenerien} enthält.
+ \item Eine \alert{Semantik} beschreibt, was diese Beschreibungen bedeuten.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}[fragile]{Formale Sprachen in der Medieninformatik}{Das
+ »Wort«, das eine Szenerie beschreibt\dots}
+\only<presentation>{\scriptsize}
+\begin{verbatim*}
+global_settings { assumed_gamma 1.0 }
+
+camera {
+ location <10.0, 10, -10.0>
+ direction 1.5*z
+ right x*image_width/image_height
+ look_at <0.0, 0.0, 0.0>
+}
+
+sky_sphere { pigment { color rgb <0.6,0.7,1.0> } }
+
+light_source {
+ <0, 0, 0> // light's position (translated below)
+ color rgb <1, 1, 1> // light's color
+ translate <-30, 30, -30>
+ shadowless
+}
+
+#declare i = 0;
+#declare Steps = 30;
+#declare Kugel = sphere{<0,0,0>,0.5 pigment{color rgb<1,0,0>}};
+
+#while(i<Steps)
+ object{Kugel translate<3,0,0> rotate <0,i * 360 / Steps, 0> }
+ #declare i = i + 1;
+#end
+\end{verbatim*}
+\end{frame}
+
+
+\begin{frame}{Formale Sprachen in der Medieninformatik}{\dots\ und was es bedeutet.}
+ \includegraphicscopyright[width=9.5cm]{beamerexample-lecture-pic2.jpg}
+ {Copyright Matthias Kabel, GNU Free Documentation License, Low Resolution}
+\end{frame}
+
+\begin{frame}{Formale Sprachen in der Medieninformatik}{Komplexeres Beispielbild, das ein Renderer produziert.}
+ \includegraphicscopyright[width=9.5cm]{beamerexample-lecture-pic1.jpg}
+ {Copyright Giorgio Krenkel and Alex Sandri, GNU Free Documentation License, Low Resolution}
+\end{frame}
+
+
+\begin{frame}{Formale Sprachen in der Bioinformatik}
+ \begin{itemize}
+ \item In der Bioinformatik untersucht man unter anderem Proteine.
+ \item Dazu erhält man \alert{Molekülbeschreibungen} als Eingabe.
+ \item Eine solche ist auch ein \alert{Wort}.
+ \item Eine \alert{Syntax} beschreibt die (formale) Sprache, die alle
+ \alert{syntaktisch korrekten Molkülbeschreibungen} enthält.
+ \item Eine \alert{Semantik} beschreibt, was diese Beschreibungen bedeuten.
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}[fragile]{Formale Sprachen in der Bioinformatik}
+ {Das »Wort«, das ein Protein beschreibt\dots}
+\only<presentation>{\tiny}
+\only<article>{\footnotesize}
+\begin{verbatim}
+HEADER HYDROLASE 25-JUL-03 1UJ1
+TITLE CRYSTAL STRUCTURE OF SARS CORONAVIRUS MAIN PROTEINASE
+TITLE 2 (3CLPRO)
+COMPND MOL_ID: 1;
+COMPND 2 MOLECULE: 3C-LIKE PROTEINASE;
+COMPND 3 CHAIN: A, B;
+COMPND 4 SYNONYM: MAIN PROTEINASE, 3CLPRO;
+COMPND 5 EC: 3.4.24.-;
+COMPND 6 ENGINEERED: YES
+SOURCE MOL_ID: 1;
+SOURCE 2 ORGANISM_SCIENTIFIC: SARS CORONAVIRUS;
+SOURCE 3 ORGANISM_COMMON: VIRUSES;
+SOURCE 4 STRAIN: SARS;
+...
+REVDAT 1 18-NOV-03 1UJ1 0
+JRNL AUTH H.YANG,M.YANG,Y.DING,Y.LIU,Z.LOU,Z.ZHOU,L.SUN,L.MO,
+JRNL AUTH 2 S.YE,H.PANG,G.F.GAO,K.ANAND,M.BARTLAM,R.HILGENFELD,
+JRNL AUTH 3 Z.RAO
+JRNL TITL THE CRYSTAL STRUCTURES OF SEVERE ACUTE RESPIRATORY
+JRNL TITL 2 SYNDROME VIRUS MAIN PROTEASE AND ITS COMPLEX WITH
+JRNL TITL 3 AN INHIBITOR
+JRNL REF PROC.NAT.ACAD.SCI.USA V. 100 13190 2003
+JRNL REFN ASTM PNASA6 US ISSN 0027-8424
+....
+ATOM 1 N PHE A 3 63.478 -27.806 23.971 1.00 44.82 N
+ATOM 2 CA PHE A 3 64.607 -26.997 24.516 1.00 42.13 C
+ATOM 3 C PHE A 3 64.674 -25.701 23.723 1.00 41.61 C
+ATOM 4 O PHE A 3 65.331 -25.633 22.673 1.00 40.73 O
+ATOM 5 CB PHE A 3 65.912 -27.763 24.358 1.00 44.33 C
+ATOM 6 CG PHE A 3 67.065 -27.162 25.108 1.00 44.20 C
+ATOM 7 CD1 PHE A 3 67.083 -27.172 26.496 1.00 43.35 C
+ATOM 8 CD2 PHE A 3 68.135 -26.595 24.422 1.00 43.49 C
+ATOM 9 CE1 PHE A 3 68.140 -26.631 27.187 1.00 43.21 C
+ATOM 10 CE2 PHE A 3 69.210 -26.046 25.108 1.00 42.91 C
+ATOM 11 CZ PHE A 3 69.216 -26.062 26.493 1.00 43.22 C
+ATOM 12 N ARG A 4 64.007 -24.666 24.228 1.00 34.90 N
+ATOM 13 CA ARG A 4 63.951 -23.376 23.543 1.00 37.71 C
+...
+\end{verbatim}
+\end{frame}
+
+\begin{frame}[fragile]{Formale Sprachen in der Bioinformatik}
+ {\dots\ und das Protein, das beschrieben wird.}
+
+ \includegraphicscopyright[width=9.5cm]{beamerexample-lecture-pic6.jpg}
+ {Copyright Till Tantau, Low Resultion}
+\end{frame}
+
+
+\section<article>{Zusammenfassung}
+\section<presentation>*{Zusammenfassung}
+
+\begin{frame}{Zusammenfassung}
+ \begin{enumerate}
+ \item Ein \alert{Wort} ist eine Folge von Symbolen aus einem
+ \alert{Alphabet}.
+ \item Eine \alert{Syntax} besteht aus Regeln, nach denen
+ Worte (Texte) gebaut werden dürfen.
+ \item Eine \alert{Semantik} legt fest, was Worte \alert{bedeuten}.
+ \item Eine \alert{formale Sprache} ist eine Menge von Worten
+ über einem Alphabet.
+ \end{enumerate}
+\end{frame}
+
+\end{document}
+
+
+
+
+
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf
new file mode 100644
index 0000000000..d870b1203d
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg
new file mode 100644
index 0000000000..7fbce74d3e
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg
new file mode 100644
index 0000000000..958a7f288b
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg
new file mode 100644
index 0000000000..67c4bce95c
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg
new file mode 100644
index 0000000000..fd6c9c1b22
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg
new file mode 100644
index 0000000000..0a18dc5a73
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg
new file mode 100644
index 0000000000..fb451d9195
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg
Binary files differ
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex
new file mode 100644
index 0000000000..ee5a65c8d2
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex
@@ -0,0 +1,14 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\documentclass[german,a4paper,9pt]{extarticle}
+\usepackage{beamerarticle}
+\input{beamerexample-lecture-style.tex}
+\input{beamerexample-lecture-body.tex}
+
diff --git a/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex
new file mode 100644
index 0000000000..e24a409cfb
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex
@@ -0,0 +1,233 @@
+% Copyright 2007 by Till Tantau
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+
+% Common packages
+
+\usepackage[german]{babel}
+\usepackage[latin1]{inputenc}
+\usepackage{times}
+\mode<article>
+{
+ \usepackage{times}
+ \usepackage{mathptmx}
+ \usepackage[left=1.5cm,right=6cm,top=1.5cm,bottom=3cm]{geometry}
+}
+
+\usepackage{hyperref}
+\usepackage[T1]{fontenc}
+\usepackage{tikz}
+\usepackage{colortbl}
+\usepackage{yfonts}
+\usepackage{colortbl}
+\usepackage{translator} % comment this, if not available
+
+
+% Common settings for all lectures in this course
+
+\def\lecturename{Logik für Informatiker}
+
+\title{\insertlecture}
+
+\author{Till Tantau}
+
+\institute
+{
+ Institut für Theoretische Informatik\\
+ Universität zu Lübeck
+}
+
+\subject{Vorlesung \lecturename}
+
+
+
+
+% Beamer version theme settings
+
+\useoutertheme[height=0pt,width=2cm,right]{sidebar}
+\usecolortheme{rose,sidebartab}
+\useinnertheme{circles}
+\usefonttheme[only large]{structurebold}
+
+\setbeamercolor{sidebar right}{bg=black!15}
+\setbeamercolor{structure}{fg=blue}
+\setbeamercolor{author}{parent=structure}
+
+\setbeamerfont{title}{series=\normalfont,size=\LARGE}
+\setbeamerfont{title in sidebar}{series=\bfseries}
+\setbeamerfont{author in sidebar}{series=\bfseries}
+\setbeamerfont*{item}{series=}
+\setbeamerfont{frametitle}{size=}
+\setbeamerfont{block title}{size=\small}
+\setbeamerfont{subtitle}{size=\normalsize,series=\normalfont}
+
+\setbeamertemplate{navigation symbols}{}
+\setbeamertemplate{bibliography item}[book]
+\setbeamertemplate{sidebar right}
+{
+ {\usebeamerfont{title in sidebar}%
+ \vskip1.5em%
+ \hskip3pt%
+ \usebeamercolor[fg]{title in sidebar}%
+ \insertshorttitle[width=\dimexpr2cm-6pt\relax,center,respectlinebreaks]\par%
+ \vskip1.25em%
+ }%
+ {%
+ \hskip1pt%
+ \usebeamercolor[fg]{author in sidebar}%
+ \usebeamerfont{author in sidebar}%
+ \insertshortauthor[width=\dimexpr2cm-2pt\relax,center,respectlinebreaks]\par%
+ \vskip1.25em%
+ }%
+ \hbox to2cm{\hss\insertlogo\hss}
+ \vskip1.25em%
+ \insertverticalnavigation{2cm}%
+ \vfill
+ \hbox to 2cm{\hfill\usebeamerfont{subsection in
+ sidebar}\strut\usebeamercolor[fg]{subsection in
+ sidebar}\insertshortlecture.\insertframenumber\hskip5pt}%
+ \vskip3pt%
+}%
+
+\setbeamertemplate{title page}
+{
+ \vbox{}
+ \vskip1em
+ {\huge Kapitel \insertshortlecture\par}
+ {\usebeamercolor[fg]{title}\usebeamerfont{title}\inserttitle\par}%
+ \ifx\insertsubtitle\@empty%
+ \else%
+ \vskip0.25em%
+ {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
+ \fi%
+ \vskip1em\par
+ Vorlesung \emph{\lecturename}\ vom \insertdate\par
+ \vskip0pt plus1filll
+ \leftskip=0pt plus1fill\insertauthor\par
+ \insertinstitute\vskip1em
+}
+
+\logo{\includegraphics[width=2cm]{beamerexample-lecture-logo.pdf}}
+
+
+
+% Article version layout settings
+
+\mode<article>
+
+\makeatletter
+\def\@listI{\leftmargin\leftmargini
+ \parsep 0pt
+ \topsep 5\p@ \@plus3\p@ \@minus5\p@
+ \itemsep0pt}
+\let\@listi=\@listI
+
+
+\setbeamertemplate{frametitle}{\paragraph*{\insertframetitle\
+ \ \small\insertframesubtitle}\ \par
+}
+\setbeamertemplate{frame end}{%
+ \marginpar{\scriptsize\hbox to 1cm{\sffamily%
+ \hfill\strut\insertshortlecture.\insertframenumber}\hrule height .2pt}}
+\setlength{\marginparwidth}{1cm}
+\setlength{\marginparsep}{4.5cm}
+
+\def\@maketitle{\makechapter}
+
+\def\makechapter{
+ \newpage
+ \null
+ \vskip 2em%
+ {%
+ \parindent=0pt
+ \raggedright
+ \sffamily
+ \vskip8pt
+ {\fontsize{36pt}{36pt}\selectfont Kapitel \insertshortlecture \par\vskip2pt}
+ {\fontsize{24pt}{28pt}\selectfont \color{blue!50!black} \insertlecture\par\vskip4pt}
+ {\Large\selectfont \color{blue!50!black} \insertsubtitle\par}
+ \vskip10pt
+
+ \normalsize\selectfont Druckfassung der
+ Vorlesung \emph{\lecturename} vom \@date\par\vskip1.5em
+ \hfill Till Tantau, Institut für Theoretische Informatik, Universität zu Lübeck
+ }
+ \par
+ \vskip 1.5em%
+}
+
+\let\origstartsection=\@startsection
+\def\@startsection#1#2#3#4#5#6{%
+ \origstartsection{#1}{#2}{#3}{#4}{#5}{#6\normalfont\sffamily\color{blue!50!black}\selectfont}}
+
+\makeatother
+
+\mode
+<all>
+
+
+
+
+% Typesetting Listings
+
+\usepackage{listings}
+\lstset{language=Java}
+
+\alt<presentation>
+{\lstset{%
+ basicstyle=\footnotesize\ttfamily,
+ commentstyle=\slshape\color{green!50!black},
+ keywordstyle=\bfseries\color{blue!50!black},
+ identifierstyle=\color{blue},
+ stringstyle=\color{orange},
+ escapechar=\#,
+ emphstyle=\color{red}}
+}
+{
+ \lstset{%
+ basicstyle=\ttfamily,
+ keywordstyle=\bfseries,
+ commentstyle=\itshape,
+ escapechar=\#,
+ emphstyle=\bfseries\color{red}
+ }
+}
+
+
+
+% Common theorem-like environments
+
+\theoremstyle{definition}
+\newtheorem{exercise}[theorem]{\translate{Exercise}}
+
+
+
+
+% New useful definitions:
+
+\newbox\mytempbox
+\newdimen\mytempdimen
+
+\newcommand\includegraphicscopyright[3][]{%
+ \leavevmode\vbox{\vskip3pt\raggedright\setbox\mytempbox=\hbox{\includegraphics[#1]{#2}}%
+ \mytempdimen=\wd\mytempbox\box\mytempbox\par\vskip1pt%
+ \fontsize{3}{3.5}\selectfont{\color{black!25}{\vbox{\hsize=\mytempdimen#3}}}\vskip3pt%
+}}
+
+\newenvironment{colortabular}[1]{\medskip\rowcolors[]{1}{blue!20}{blue!10}\tabular{#1}\rowcolor{blue!40}}{\endtabular\medskip}
+
+\def\equad{\leavevmode\hbox{}\quad}
+
+\newenvironment{greencolortabular}[1]
+{\medskip\rowcolors[]{1}{green!50!black!20}{green!50!black!10}%
+ \tabular{#1}\rowcolor{green!50!black!40}}%
+{\endtabular\medskip}
+
+
+
diff --git a/macros/latex/contrib/beamer/doc/licenses/fdl.txt b/macros/latex/contrib/beamer/doc/licenses/fdl.txt
new file mode 100644
index 0000000000..bf128beb0f
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/licenses/fdl.txt
@@ -0,0 +1,451 @@
+
+ GNU Free Documentation License
+ Version 1.3, 3 November 2008
+
+
+ Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
+ <https://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+0. PREAMBLE
+
+The purpose of this License is to make a manual, textbook, or other
+functional and useful document "free" in the sense of freedom: to
+assure everyone the effective freedom to copy and redistribute it,
+with or without modifying it, either commercially or noncommercially.
+Secondarily, this License preserves for the author and publisher a way
+to get credit for their work, while not being considered responsible
+for modifications made by others.
+
+This License is a kind of "copyleft", which means that derivative
+works of the document must themselves be free in the same sense. It
+complements the GNU General Public License, which is a copyleft
+license designed for free software.
+
+We have designed this License in order to use it for manuals for free
+software, because free software needs free documentation: a free
+program should come with manuals providing the same freedoms that the
+software does. But this License is not limited to software manuals;
+it can be used for any textual work, regardless of subject matter or
+whether it is published as a printed book. We recommend this License
+principally for works whose purpose is instruction or reference.
+
+
+1. APPLICABILITY AND DEFINITIONS
+
+This License applies to any manual or other work, in any medium, that
+contains a notice placed by the copyright holder saying it can be
+distributed under the terms of this License. Such a notice grants a
+world-wide, royalty-free license, unlimited in duration, to use that
+work under the conditions stated herein. The "Document", below,
+refers to any such manual or work. Any member of the public is a
+licensee, and is addressed as "you". You accept the license if you
+copy, modify or distribute the work in a way requiring permission
+under copyright law.
+
+A "Modified Version" of the Document means any work containing the
+Document or a portion of it, either copied verbatim, or with
+modifications and/or translated into another language.
+
+A "Secondary Section" is a named appendix or a front-matter section of
+the Document that deals exclusively with the relationship of the
+publishers or authors of the Document to the Document's overall
+subject (or to related matters) and contains nothing that could fall
+directly within that overall subject. (Thus, if the Document is in
+part a textbook of mathematics, a Secondary Section may not explain
+any mathematics.) The relationship could be a matter of historical
+connection with the subject or with related matters, or of legal,
+commercial, philosophical, ethical or political position regarding
+them.
+
+The "Invariant Sections" are certain Secondary Sections whose titles
+are designated, as being those of Invariant Sections, in the notice
+that says that the Document is released under this License. If a
+section does not fit the above definition of Secondary then it is not
+allowed to be designated as Invariant. The Document may contain zero
+Invariant Sections. If the Document does not identify any Invariant
+Sections then there are none.
+
+The "Cover Texts" are certain short passages of text that are listed,
+as Front-Cover Texts or Back-Cover Texts, in the notice that says that
+the Document is released under this License. A Front-Cover Text may
+be at most 5 words, and a Back-Cover Text may be at most 25 words.
+
+A "Transparent" copy of the Document means a machine-readable copy,
+represented in a format whose specification is available to the
+general public, that is suitable for revising the document
+straightforwardly with generic text editors or (for images composed of
+pixels) generic paint programs or (for drawings) some widely available
+drawing editor, and that is suitable for input to text formatters or
+for automatic translation to a variety of formats suitable for input
+to text formatters. A copy made in an otherwise Transparent file
+format whose markup, or absence of markup, has been arranged to thwart
+or discourage subsequent modification by readers is not Transparent.
+An image format is not Transparent if used for any substantial amount
+of text. A copy that is not "Transparent" is called "Opaque".
+
+Examples of suitable formats for Transparent copies include plain
+ASCII without markup, Texinfo input format, LaTeX input format, SGML
+or XML using a publicly available DTD, and standard-conforming simple
+HTML, PostScript or PDF designed for human modification. Examples of
+transparent image formats include PNG, XCF and JPG. Opaque formats
+include proprietary formats that can be read and edited only by
+proprietary word processors, SGML or XML for which the DTD and/or
+processing tools are not generally available, and the
+machine-generated HTML, PostScript or PDF produced by some word
+processors for output purposes only.
+
+The "Title Page" means, for a printed book, the title page itself,
+plus such following pages as are needed to hold, legibly, the material
+this License requires to appear in the title page. For works in
+formats which do not have any title page as such, "Title Page" means
+the text near the most prominent appearance of the work's title,
+preceding the beginning of the body of the text.
+
+The "publisher" means any person or entity that distributes copies of
+the Document to the public.
+
+A section "Entitled XYZ" means a named subunit of the Document whose
+title either is precisely XYZ or contains XYZ in parentheses following
+text that translates XYZ in another language. (Here XYZ stands for a
+specific section name mentioned below, such as "Acknowledgements",
+"Dedications", "Endorsements", or "History".) To "Preserve the Title"
+of such a section when you modify the Document means that it remains a
+section "Entitled XYZ" according to this definition.
+
+The Document may include Warranty Disclaimers next to the notice which
+states that this License applies to the Document. These Warranty
+Disclaimers are considered to be included by reference in this
+License, but only as regards disclaiming warranties: any other
+implication that these Warranty Disclaimers may have is void and has
+no effect on the meaning of this License.
+
+2. VERBATIM COPYING
+
+You may copy and distribute the Document in any medium, either
+commercially or noncommercially, provided that this License, the
+copyright notices, and the license notice saying this License applies
+to the Document are reproduced in all copies, and that you add no
+other conditions whatsoever to those of this License. You may not use
+technical measures to obstruct or control the reading or further
+copying of the copies you make or distribute. However, you may accept
+compensation in exchange for copies. If you distribute a large enough
+number of copies you must also follow the conditions in section 3.
+
+You may also lend copies, under the same conditions stated above, and
+you may publicly display copies.
+
+
+3. COPYING IN QUANTITY
+
+If you publish printed copies (or copies in media that commonly have
+printed covers) of the Document, numbering more than 100, and the
+Document's license notice requires Cover Texts, you must enclose the
+copies in covers that carry, clearly and legibly, all these Cover
+Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
+the back cover. Both covers must also clearly and legibly identify
+you as the publisher of these copies. The front cover must present
+the full title with all words of the title equally prominent and
+visible. You may add other material on the covers in addition.
+Copying with changes limited to the covers, as long as they preserve
+the title of the Document and satisfy these conditions, can be treated
+as verbatim copying in other respects.
+
+If the required texts for either cover are too voluminous to fit
+legibly, you should put the first ones listed (as many as fit
+reasonably) on the actual cover, and continue the rest onto adjacent
+pages.
+
+If you publish or distribute Opaque copies of the Document numbering
+more than 100, you must either include a machine-readable Transparent
+copy along with each Opaque copy, or state in or with each Opaque copy
+a computer-network location from which the general network-using
+public has access to download using public-standard network protocols
+a complete Transparent copy of the Document, free of added material.
+If you use the latter option, you must take reasonably prudent steps,
+when you begin distribution of Opaque copies in quantity, to ensure
+that this Transparent copy will remain thus accessible at the stated
+location until at least one year after the last time you distribute an
+Opaque copy (directly or through your agents or retailers) of that
+edition to the public.
+
+It is requested, but not required, that you contact the authors of the
+Document well before redistributing any large number of copies, to
+give them a chance to provide you with an updated version of the
+Document.
+
+
+4. MODIFICATIONS
+
+You may copy and distribute a Modified Version of the Document under
+the conditions of sections 2 and 3 above, provided that you release
+the Modified Version under precisely this License, with the Modified
+Version filling the role of the Document, thus licensing distribution
+and modification of the Modified Version to whoever possesses a copy
+of it. In addition, you must do these things in the Modified Version:
+
+A. Use in the Title Page (and on the covers, if any) a title distinct
+ from that of the Document, and from those of previous versions
+ (which should, if there were any, be listed in the History section
+ of the Document). You may use the same title as a previous version
+ if the original publisher of that version gives permission.
+B. List on the Title Page, as authors, one or more persons or entities
+ responsible for authorship of the modifications in the Modified
+ Version, together with at least five of the principal authors of the
+ Document (all of its principal authors, if it has fewer than five),
+ unless they release you from this requirement.
+C. State on the Title page the name of the publisher of the
+ Modified Version, as the publisher.
+D. Preserve all the copyright notices of the Document.
+E. Add an appropriate copyright notice for your modifications
+ adjacent to the other copyright notices.
+F. Include, immediately after the copyright notices, a license notice
+ giving the public permission to use the Modified Version under the
+ terms of this License, in the form shown in the Addendum below.
+G. Preserve in that license notice the full lists of Invariant Sections
+ and required Cover Texts given in the Document's license notice.
+H. Include an unaltered copy of this License.
+I. Preserve the section Entitled "History", Preserve its Title, and add
+ to it an item stating at least the title, year, new authors, and
+ publisher of the Modified Version as given on the Title Page. If
+ there is no section Entitled "History" in the Document, create one
+ stating the title, year, authors, and publisher of the Document as
+ given on its Title Page, then add an item describing the Modified
+ Version as stated in the previous sentence.
+J. Preserve the network location, if any, given in the Document for
+ public access to a Transparent copy of the Document, and likewise
+ the network locations given in the Document for previous versions
+ it was based on. These may be placed in the "History" section.
+ You may omit a network location for a work that was published at
+ least four years before the Document itself, or if the original
+ publisher of the version it refers to gives permission.
+K. For any section Entitled "Acknowledgements" or "Dedications",
+ Preserve the Title of the section, and preserve in the section all
+ the substance and tone of each of the contributor acknowledgements
+ and/or dedications given therein.
+L. Preserve all the Invariant Sections of the Document,
+ unaltered in their text and in their titles. Section numbers
+ or the equivalent are not considered part of the section titles.
+M. Delete any section Entitled "Endorsements". Such a section
+ may not be included in the Modified Version.
+N. Do not retitle any existing section to be Entitled "Endorsements"
+ or to conflict in title with any Invariant Section.
+O. Preserve any Warranty Disclaimers.
+
+If the Modified Version includes new front-matter sections or
+appendices that qualify as Secondary Sections and contain no material
+copied from the Document, you may at your option designate some or all
+of these sections as invariant. To do this, add their titles to the
+list of Invariant Sections in the Modified Version's license notice.
+These titles must be distinct from any other section titles.
+
+You may add a section Entitled "Endorsements", provided it contains
+nothing but endorsements of your Modified Version by various
+parties--for example, statements of peer review or that the text has
+been approved by an organization as the authoritative definition of a
+standard.
+
+You may add a passage of up to five words as a Front-Cover Text, and a
+passage of up to 25 words as a Back-Cover Text, to the end of the list
+of Cover Texts in the Modified Version. Only one passage of
+Front-Cover Text and one of Back-Cover Text may be added by (or
+through arrangements made by) any one entity. If the Document already
+includes a cover text for the same cover, previously added by you or
+by arrangement made by the same entity you are acting on behalf of,
+you may not add another; but you may replace the old one, on explicit
+permission from the previous publisher that added the old one.
+
+The author(s) and publisher(s) of the Document do not by this License
+give permission to use their names for publicity for or to assert or
+imply endorsement of any Modified Version.
+
+
+5. COMBINING DOCUMENTS
+
+You may combine the Document with other documents released under this
+License, under the terms defined in section 4 above for modified
+versions, provided that you include in the combination all of the
+Invariant Sections of all of the original documents, unmodified, and
+list them all as Invariant Sections of your combined work in its
+license notice, and that you preserve all their Warranty Disclaimers.
+
+The combined work need only contain one copy of this License, and
+multiple identical Invariant Sections may be replaced with a single
+copy. If there are multiple Invariant Sections with the same name but
+different contents, make the title of each such section unique by
+adding at the end of it, in parentheses, the name of the original
+author or publisher of that section if known, or else a unique number.
+Make the same adjustment to the section titles in the list of
+Invariant Sections in the license notice of the combined work.
+
+In the combination, you must combine any sections Entitled "History"
+in the various original documents, forming one section Entitled
+"History"; likewise combine any sections Entitled "Acknowledgements",
+and any sections Entitled "Dedications". You must delete all sections
+Entitled "Endorsements".
+
+
+6. COLLECTIONS OF DOCUMENTS
+
+You may make a collection consisting of the Document and other
+documents released under this License, and replace the individual
+copies of this License in the various documents with a single copy
+that is included in the collection, provided that you follow the rules
+of this License for verbatim copying of each of the documents in all
+other respects.
+
+You may extract a single document from such a collection, and
+distribute it individually under this License, provided you insert a
+copy of this License into the extracted document, and follow this
+License in all other respects regarding verbatim copying of that
+document.
+
+
+7. AGGREGATION WITH INDEPENDENT WORKS
+
+A compilation of the Document or its derivatives with other separate
+and independent documents or works, in or on a volume of a storage or
+distribution medium, is called an "aggregate" if the copyright
+resulting from the compilation is not used to limit the legal rights
+of the compilation's users beyond what the individual works permit.
+When the Document is included in an aggregate, this License does not
+apply to the other works in the aggregate which are not themselves
+derivative works of the Document.
+
+If the Cover Text requirement of section 3 is applicable to these
+copies of the Document, then if the Document is less than one half of
+the entire aggregate, the Document's Cover Texts may be placed on
+covers that bracket the Document within the aggregate, or the
+electronic equivalent of covers if the Document is in electronic form.
+Otherwise they must appear on printed covers that bracket the whole
+aggregate.
+
+
+8. TRANSLATION
+
+Translation is considered a kind of modification, so you may
+distribute translations of the Document under the terms of section 4.
+Replacing Invariant Sections with translations requires special
+permission from their copyright holders, but you may include
+translations of some or all Invariant Sections in addition to the
+original versions of these Invariant Sections. You may include a
+translation of this License, and all the license notices in the
+Document, and any Warranty Disclaimers, provided that you also include
+the original English version of this License and the original versions
+of those notices and disclaimers. In case of a disagreement between
+the translation and the original version of this License or a notice
+or disclaimer, the original version will prevail.
+
+If a section in the Document is Entitled "Acknowledgements",
+"Dedications", or "History", the requirement (section 4) to Preserve
+its Title (section 1) will typically require changing the actual
+title.
+
+
+9. TERMINATION
+
+You may not copy, modify, sublicense, or distribute the Document
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense, or distribute it is void, and
+will automatically terminate your rights under this License.
+
+However, if you cease all violation of this License, then your license
+from a particular copyright holder is reinstated (a) provisionally,
+unless and until the copyright holder explicitly and finally
+terminates your license, and (b) permanently, if the copyright holder
+fails to notify you of the violation by some reasonable means prior to
+60 days after the cessation.
+
+Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, receipt of a copy of some or all of the same material does
+not give you any rights to use it.
+
+
+10. FUTURE REVISIONS OF THIS LICENSE
+
+The Free Software Foundation may publish new, revised versions of the
+GNU Free Documentation License from time to time. Such new versions
+will be similar in spirit to the present version, but may differ in
+detail to address new problems or concerns. See
+https://www.gnu.org/licenses/.
+
+Each version of the License is given a distinguishing version number.
+If the Document specifies that a particular numbered version of this
+License "or any later version" applies to it, you have the option of
+following the terms and conditions either of that specified version or
+of any later version that has been published (not as a draft) by the
+Free Software Foundation. If the Document does not specify a version
+number of this License, you may choose any version ever published (not
+as a draft) by the Free Software Foundation. If the Document
+specifies that a proxy can decide which future versions of this
+License can be used, that proxy's public statement of acceptance of a
+version permanently authorizes you to choose that version for the
+Document.
+
+11. RELICENSING
+
+"Massive Multiauthor Collaboration Site" (or "MMC Site") means any
+World Wide Web server that publishes copyrightable works and also
+provides prominent facilities for anybody to edit those works. A
+public wiki that anybody can edit is an example of such a server. A
+"Massive Multiauthor Collaboration" (or "MMC") contained in the site
+means any set of copyrightable works thus published on the MMC site.
+
+"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
+license published by Creative Commons Corporation, a not-for-profit
+corporation with a principal place of business in San Francisco,
+California, as well as future copyleft versions of that license
+published by that same organization.
+
+"Incorporate" means to publish or republish a Document, in whole or in
+part, as part of another Document.
+
+An MMC is "eligible for relicensing" if it is licensed under this
+License, and if all works that were first published under this License
+somewhere other than this MMC, and subsequently incorporated in whole or
+in part into the MMC, (1) had no cover texts or invariant sections, and
+(2) were thus incorporated prior to November 1, 2008.
+
+The operator of an MMC Site may republish an MMC contained in the site
+under CC-BY-SA on the same site at any time before August 1, 2009,
+provided the MMC is eligible for relicensing.
+
+
+ADDENDUM: How to use this License for your documents
+
+To use this License in a document you have written, include a copy of
+the License in the document and put the following copyright and
+license notices just after the title page:
+
+ Copyright (c) YEAR YOUR NAME.
+ Permission is granted to copy, distribute and/or modify this document
+ under the terms of the GNU Free Documentation License, Version 1.3
+ or any later version published by the Free Software Foundation;
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+ A copy of the license is included in the section entitled "GNU
+ Free Documentation License".
+
+If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
+replace the "with...Texts." line with this:
+
+ with the Invariant Sections being LIST THEIR TITLES, with the
+ Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
+
+If you have Invariant Sections without Cover Texts, or some other
+combination of the three, merge those two alternatives to suit the
+situation.
+
+If your document contains nontrivial examples of program code, we
+recommend releasing these examples in parallel under your choice of
+free software license, such as the GNU General Public License,
+to permit their use in free software.
diff --git a/macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt b/macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt
new file mode 100644
index 0000000000..d159169d10
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt b/macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt
new file mode 100644
index 0000000000..2244313901
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt
@@ -0,0 +1,416 @@
+The LaTeX Project Public License
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+LPPL Version 1.3c 2008-05-04
+
+Copyright 1999 2002-2008 LaTeX3 Project
+ Everyone is allowed to distribute verbatim copies of this
+ license document, but modification of it is not allowed.
+
+
+PREAMBLE
+========
+
+The LaTeX Project Public License (LPPL) is the primary license under
+which the LaTeX kernel and the base LaTeX packages are distributed.
+
+You may use this license for any work of which you hold the copyright
+and which you wish to distribute. This license may be particularly
+suitable if your work is TeX-related (such as a LaTeX package), but
+it is written in such a way that you can use it even if your work is
+unrelated to TeX.
+
+The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE',
+below, gives instructions, examples, and recommendations for authors
+who are considering distributing their works under this license.
+
+This license gives conditions under which a work may be distributed
+and modified, as well as conditions under which modified versions of
+that work may be distributed.
+
+We, the LaTeX3 Project, believe that the conditions below give you
+the freedom to make and distribute modified versions of your work
+that conform with whatever technical specifications you wish while
+maintaining the availability, integrity, and reliability of
+that work. If you do not see how to achieve your goal while
+meeting these conditions, then read the document `cfgguide.tex'
+and `modguide.tex' in the base LaTeX distribution for suggestions.
+
+
+DEFINITIONS
+===========
+
+In this license document the following terms are used:
+
+ `Work'
+ Any work being distributed under this License.
+
+ `Derived Work'
+ Any work that under any applicable law is derived from the Work.
+
+ `Modification'
+ Any procedure that produces a Derived Work under any applicable
+ law -- for example, the production of a file containing an
+ original file associated with the Work or a significant portion of
+ such a file, either verbatim or with modifications and/or
+ translated into another language.
+
+ `Modify'
+ To apply any procedure that produces a Derived Work under any
+ applicable law.
+
+ `Distribution'
+ Making copies of the Work available from one person to another, in
+ whole or in part. Distribution includes (but is not limited to)
+ making any electronic components of the Work accessible by
+ file transfer protocols such as FTP or HTTP or by shared file
+ systems such as Sun's Network File System (NFS).
+
+ `Compiled Work'
+ A version of the Work that has been processed into a form where it
+ is directly usable on a computer system. This processing may
+ include using installation facilities provided by the Work,
+ transformations of the Work, copying of components of the Work, or
+ other activities. Note that modification of any installation
+ facilities provided by the Work constitutes modification of the Work.
+
+ `Current Maintainer'
+ A person or persons nominated as such within the Work. If there is
+ no such explicit nomination then it is the `Copyright Holder' under
+ any applicable law.
+
+ `Base Interpreter'
+ A program or process that is normally needed for running or
+ interpreting a part or the whole of the Work.
+
+ A Base Interpreter may depend on external components but these
+ are not considered part of the Base Interpreter provided that each
+ external component clearly identifies itself whenever it is used
+ interactively. Unless explicitly specified when applying the
+ license to the Work, the only applicable Base Interpreter is a
+ `LaTeX-Format' or in the case of files belonging to the
+ `LaTeX-format' a program implementing the `TeX language'.
+
+
+
+CONDITIONS ON DISTRIBUTION AND MODIFICATION
+===========================================
+
+1. Activities other than distribution and/or modification of the Work
+are not covered by this license; they are outside its scope. In
+particular, the act of running the Work is not restricted and no
+requirements are made concerning any offers of support for the Work.
+
+2. You may distribute a complete, unmodified copy of the Work as you
+received it. Distribution of only part of the Work is considered
+modification of the Work, and no right to distribute such a Derived
+Work may be assumed under the terms of this clause.
+
+3. You may distribute a Compiled Work that has been generated from a
+complete, unmodified copy of the Work as distributed under Clause 2
+above, as long as that Compiled Work is distributed in such a way that
+the recipients may install the Compiled Work on their system exactly
+as it would have been installed if they generated a Compiled Work
+directly from the Work.
+
+4. If you are the Current Maintainer of the Work, you may, without
+restriction, modify the Work, thus creating a Derived Work. You may
+also distribute the Derived Work without restriction, including
+Compiled Works generated from the Derived Work. Derived Works
+distributed in this manner by the Current Maintainer are considered to
+be updated versions of the Work.
+
+5. If you are not the Current Maintainer of the Work, you may modify
+your copy of the Work, thus creating a Derived Work based on the Work,
+and compile this Derived Work, thus creating a Compiled Work based on
+the Derived Work.
+
+6. If you are not the Current Maintainer of the Work, you may
+distribute a Derived Work provided the following conditions are met
+for every component of the Work unless that component clearly states
+in the copyright notice that it is exempt from that condition. Only
+the Current Maintainer is allowed to add such statements of exemption
+to a component of the Work.
+
+ a. If a component of this Derived Work can be a direct replacement
+ for a component of the Work when that component is used with the
+ Base Interpreter, then, wherever this component of the Work
+ identifies itself to the user when used interactively with that
+ Base Interpreter, the replacement component of this Derived Work
+ clearly and unambiguously identifies itself as a modified version
+ of this component to the user when used interactively with that
+ Base Interpreter.
+
+ b. Every component of the Derived Work contains prominent notices
+ detailing the nature of the changes to that component, or a
+ prominent reference to another file that is distributed as part
+ of the Derived Work and that contains a complete and accurate log
+ of the changes.
+
+ c. No information in the Derived Work implies that any persons,
+ including (but not limited to) the authors of the original version
+ of the Work, provide any support, including (but not limited to)
+ the reporting and handling of errors, to recipients of the
+ Derived Work unless those persons have stated explicitly that
+ they do provide such support for the Derived Work.
+
+ d. You distribute at least one of the following with the Derived Work:
+
+ 1. A complete, unmodified copy of the Work;
+ if your distribution of a modified component is made by
+ offering access to copy the modified component from a
+ designated place, then offering equivalent access to copy
+ the Work from the same or some similar place meets this
+ condition, even though third parties are not compelled to
+ copy the Work along with the modified component;
+
+ 2. Information that is sufficient to obtain a complete,
+ unmodified copy of the Work.
+
+7. If you are not the Current Maintainer of the Work, you may
+distribute a Compiled Work generated from a Derived Work, as long as
+the Derived Work is distributed to all recipients of the Compiled
+Work, and as long as the conditions of Clause 6, above, are met with
+regard to the Derived Work.
+
+8. The conditions above are not intended to prohibit, and hence do not
+apply to, the modification, by any method, of any component so that it
+becomes identical to an updated version of that component of the Work as
+it is distributed by the Current Maintainer under Clause 4, above.
+
+9. Distribution of the Work or any Derived Work in an alternative
+format, where the Work or that Derived Work (in whole or in part) is
+then produced by applying some process to that format, does not relax or
+nullify any sections of this license as they pertain to the results of
+applying that process.
+
+10. a. A Derived Work may be distributed under a different license
+ provided that license itself honors the conditions listed in
+ Clause 6 above, in regard to the Work, though it does not have
+ to honor the rest of the conditions in this license.
+
+ b. If a Derived Work is distributed under a different license, that
+ Derived Work must provide sufficient documentation as part of
+ itself to allow each recipient of that Derived Work to honor the
+ restrictions in Clause 6 above, concerning changes from the Work.
+
+11. This license places no restrictions on works that are unrelated to
+the Work, nor does this license place any restrictions on aggregating
+such works with the Work by any means.
+
+12. Nothing in this license is intended to, or may be used to, prevent
+complete compliance by all parties with all applicable laws.
+
+
+NO WARRANTY
+===========
+
+There is no warranty for the Work. Except when otherwise stated in
+writing, the Copyright Holder provides the Work `as is', without
+warranty of any kind, either expressed or implied, including, but not
+limited to, the implied warranties of merchantability and fitness for a
+particular purpose. The entire risk as to the quality and performance
+of the Work is with you. Should the Work prove defective, you assume
+the cost of all necessary servicing, repair, or correction.
+
+In no event unless required by applicable law or agreed to in writing
+will The Copyright Holder, or any author named in the components of the
+Work, or any other party who may distribute and/or modify the Work as
+permitted above, be liable to you for damages, including any general,
+special, incidental or consequential damages arising out of any use of
+the Work or out of inability to use the Work (including, but not limited
+to, loss of data, data being rendered inaccurate, or losses sustained by
+anyone as a result of any failure of the Work to operate with any other
+programs), even if the Copyright Holder or said author or said other
+party has been advised of the possibility of such damages.
+
+
+MAINTENANCE OF THE WORK
+=======================
+
+The Work has the status `author-maintained' if the Copyright Holder
+explicitly and prominently states near the primary copyright notice in
+the Work that the Work can only be maintained by the Copyright Holder
+or simply that it is `author-maintained'.
+
+The Work has the status `maintained' if there is a Current Maintainer
+who has indicated in the Work that they are willing to receive error
+reports for the Work (for example, by supplying a valid e-mail
+address). It is not required for the Current Maintainer to acknowledge
+or act upon these error reports.
+
+The Work changes from status `maintained' to `unmaintained' if there
+is no Current Maintainer, or the person stated to be Current
+Maintainer of the work cannot be reached through the indicated means
+of communication for a period of six months, and there are no other
+significant signs of active maintenance.
+
+You can become the Current Maintainer of the Work by agreement with
+any existing Current Maintainer to take over this role.
+
+If the Work is unmaintained, you can become the Current Maintainer of
+the Work through the following steps:
+
+ 1. Make a reasonable attempt to trace the Current Maintainer (and
+ the Copyright Holder, if the two differ) through the means of
+ an Internet or similar search.
+
+ 2. If this search is successful, then enquire whether the Work
+ is still maintained.
+
+ a. If it is being maintained, then ask the Current Maintainer
+ to update their communication data within one month.
+
+ b. If the search is unsuccessful or no action to resume active
+ maintenance is taken by the Current Maintainer, then announce
+ within the pertinent community your intention to take over
+ maintenance. (If the Work is a LaTeX work, this could be
+ done, for example, by posting to comp.text.tex.)
+
+ 3a. If the Current Maintainer is reachable and agrees to pass
+ maintenance of the Work to you, then this takes effect
+ immediately upon announcement.
+
+ b. If the Current Maintainer is not reachable and the Copyright
+ Holder agrees that maintenance of the Work be passed to you,
+ then this takes effect immediately upon announcement.
+
+ 4. If you make an `intention announcement' as described in 2b. above
+ and after three months your intention is challenged neither by
+ the Current Maintainer nor by the Copyright Holder nor by other
+ people, then you may arrange for the Work to be changed so as
+ to name you as the (new) Current Maintainer.
+
+ 5. If the previously unreachable Current Maintainer becomes
+ reachable once more within three months of a change completed
+ under the terms of 3b) or 4), then that Current Maintainer must
+ become or remain the Current Maintainer upon request provided
+ they then update their communication data within one month.
+
+A change in the Current Maintainer does not, of itself, alter the fact
+that the Work is distributed under the LPPL license.
+
+If you become the Current Maintainer of the Work, you should
+immediately provide, within the Work, a prominent and unambiguous
+statement of your status as Current Maintainer. You should also
+announce your new status to the same pertinent community as
+in 2b) above.
+
+
+WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE
+======================================================
+
+This section contains important instructions, examples, and
+recommendations for authors who are considering distributing their
+works under this license. These authors are addressed as `you' in
+this section.
+
+Choosing This License or Another License
+----------------------------------------
+
+If for any part of your work you want or need to use *distribution*
+conditions that differ significantly from those in this license, then
+do not refer to this license anywhere in your work but, instead,
+distribute your work under a different license. You may use the text
+of this license as a model for your own license, but your license
+should not refer to the LPPL or otherwise give the impression that
+your work is distributed under the LPPL.
+
+The document `modguide.tex' in the base LaTeX distribution explains
+the motivation behind the conditions of this license. It explains,
+for example, why distributing LaTeX under the GNU General Public
+License (GPL) was considered inappropriate. Even if your work is
+unrelated to LaTeX, the discussion in `modguide.tex' may still be
+relevant, and authors intending to distribute their works under any
+license are encouraged to read it.
+
+A Recommendation on Modification Without Distribution
+-----------------------------------------------------
+
+It is wise never to modify a component of the Work, even for your own
+personal use, without also meeting the above conditions for
+distributing the modified component. While you might intend that such
+modifications will never be distributed, often this will happen by
+accident -- you may forget that you have modified that component; or
+it may not occur to you when allowing others to access the modified
+version that you are thus distributing it and violating the conditions
+of this license in ways that could have legal implications and, worse,
+cause problems for the community. It is therefore usually in your
+best interest to keep your copy of the Work identical with the public
+one. Many works provide ways to control the behavior of that work
+without altering any of its licensed components.
+
+How to Use This License
+-----------------------
+
+To use this license, place in each of the components of your work both
+an explicit copyright notice including your name and the year the work
+was authored and/or last substantially modified. Include also a
+statement that the distribution and/or modification of that
+component is constrained by the conditions in this license.
+
+Here is an example of such a notice and statement:
+
+ %% pig.dtx
+ %% Copyright 2005 M. Y. Name
+ %
+ % This work may be distributed and/or modified under the
+ % conditions of the LaTeX Project Public License, either version 1.3
+ % of this license or (at your option) any later version.
+ % The latest version of this license is in
+ % http://www.latex-project.org/lppl.txt
+ % and version 1.3 or later is part of all distributions of LaTeX
+ % version 2005/12/01 or later.
+ %
+ % This work has the LPPL maintenance status `maintained'.
+ %
+ % The Current Maintainer of this work is M. Y. Name.
+ %
+ % This work consists of the files pig.dtx and pig.ins
+ % and the derived file pig.sty.
+
+Given such a notice and statement in a file, the conditions
+given in this license document would apply, with the `Work' referring
+to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being
+generated from `pig.dtx' using `pig.ins'), the `Base Interpreter'
+referring to any `LaTeX-Format', and both `Copyright Holder' and
+`Current Maintainer' referring to the person `M. Y. Name'.
+
+If you do not want the Maintenance section of LPPL to apply to your
+Work, change `maintained' above into `author-maintained'.
+However, we recommend that you use `maintained', as the Maintenance
+section was added in order to ensure that your Work remains useful to
+the community even when you can no longer maintain and support it
+yourself.
+
+Derived Works That Are Not Replacements
+---------------------------------------
+
+Several clauses of the LPPL specify means to provide reliability and
+stability for the user community. They therefore concern themselves
+with the case that a Derived Work is intended to be used as a
+(compatible or incompatible) replacement of the original Work. If
+this is not the case (e.g., if a few lines of code are reused for a
+completely different task), then clauses 6b and 6d shall not apply.
+
+
+Important Recommendations
+-------------------------
+
+ Defining What Constitutes the Work
+
+ The LPPL requires that distributions of the Work contain all the
+ files of the Work. It is therefore important that you provide a
+ way for the licensee to determine which files constitute the Work.
+ This could, for example, be achieved by explicitly listing all the
+ files of the Work near the copyright notice of each file or by
+ using a line such as:
+
+ % This work consists of all files listed in manifest.txt.
+
+ in that place. In the absence of an unequivocal list it might be
+ impossible for the licensee to determine what is considered by you
+ to comprise the Work and, in such a case, the licensee would be
+ entitled to make reasonable conjectures as to which files comprise
+ the Work.
+
diff --git a/macros/latex/contrib/beamer/doc/licenses/manifest-code.txt b/macros/latex/contrib/beamer/doc/licenses/manifest-code.txt
new file mode 100644
index 0000000000..8a7da88a35
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/licenses/manifest-code.txt
@@ -0,0 +1,163 @@
+base:
+art/
+beamer.cls
+beamerarticle.sty
+beamerbasearticle.sty
+beamerbaseauxtemplates.sty
+beamerbaseboxes.sty
+beamerbasecolor.sty
+beamerbasecompatibility.sty
+beamerbasedecode.sty
+beamerbaseexercise.sty
+beamerbasefont.sty
+beamerbaseframe.sty
+beamerbaseframecomponents.sty
+beamerbaseframesize.sty
+beamerbaselocalstructure.sty
+beamerbasemisc.sty
+beamerbasemodes.sty
+beamerbasenavigation.sty
+beamerbasenotes.sty
+beamerbaseoptions.sty
+beamerbaseoverlay.sty
+beamerbaserequires.sty
+beamerbasesection.sty
+beamerbasetemplates.sty
+beamerbasethemes.sty
+beamerbasetheorems.sty
+beamerbasetitle.sty
+beamerbasetoc.sty
+beamerbasetranslator.sty
+beamerbasetwoscreens.sty
+beamerbaseverbatim.sty
+emulation/
+multimedia/
+patch/
+themes/
+
+base/art:
+beamericonarticle.20.eps
+beamericonarticle.20.pdf
+beamericonarticle.eps
+beamericonarticle.pdf
+beamericonarticle.tex
+beamericonbook.20.eps
+beamericonbook.20.pdf
+beamericonbook.eps
+beamericonbook.pdf
+beamericonbook.tex
+beamericononline.20.eps
+beamericononline.20.pdf
+beamericononline.eps
+beamericononline.pdf
+
+base/emulation:
+beamerfoils.sty
+beamerprosper.sty
+beamerseminar.sty
+beamertexpower.sty
+
+base/multimedia:
+multimedia.sty
+multimediasymbols.sty
+xmpmulti.sty
+
+base/patch:
+beamerpatchparalist.sty
+
+base/themes:
+color/
+font/
+inner/
+outer/
+theme/
+
+base/themes/color:
+beamercolorthemealbatross.sty
+beamercolorthemebeaver.sty
+beamercolorthemebeetle.sty
+beamercolorthemecrane.sty
+beamercolorthemedefault.sty
+beamercolorthemedolphin.sty
+beamercolorthemedove.sty
+beamercolorthemefly.sty
+beamercolorthemelily.sty
+beamercolorthememonarca.sty
+beamercolorthemeorchid.sty
+beamercolorthemerose.sty
+beamercolorthemeseagull.sty
+beamercolorthemeseahorse.sty
+beamercolorthemesidebartab.sty
+beamercolorthemespruce.sty
+beamercolorthemestructure.sty
+beamercolorthemewhale.sty
+beamercolorthemewolverine.sty
+
+base/themes/font:
+beamerfontthemedefault.sty
+beamerfontthemeprofessionalfonts.sty
+beamerfontthemeserif.sty
+beamerfontthemestructurebold.sty
+beamerfontthemestructureitalicserif.sty
+beamerfontthemestructuresmallcapsserif.sty
+
+base/themes/inner:
+beamerinnerthemecircles.sty
+beamerinnerthemedefault.sty
+beamerinnerthemeinmargin.sty
+beamerinnerthemerectangles.sty
+beamerinnerthemerounded.sty
+
+base/themes/outer:
+beamerouterthemedefault.sty
+beamerouterthemeinfolines.sty
+beamerouterthememiniframes.sty
+beamerouterthemeshadow.sty
+beamerouterthemesidebar.sty
+beamerouterthemesmoothbars.sty
+beamerouterthemesmoothtree.sty
+beamerouterthemesplit.sty
+beamerouterthemetree.sty
+
+base/themes/theme:
+beamerthemeAnnArbor.sty
+beamerthemeAntibes.sty
+beamerthemeBergen.sty
+beamerthemeBerkeley.sty
+beamerthemeBerlin.sty
+beamerthemeBoadilla.sty
+beamerthemeboxes.sty
+beamerthemeCambridgeUS.sty
+beamerthemeCopenhagen.sty
+beamerthemeDarmstadt.sty
+beamerthemedefault.sty
+beamerthemeDresden.sty
+beamerthemeEastLansing.sty
+beamerthemeFrankfurt.sty
+beamerthemeGoettingen.sty
+beamerthemeHannover.sty
+beamerthemeIlmenau.sty
+beamerthemeJuanLesPins.sty
+beamerthemeLuebeck.sty
+beamerthemeMadrid.sty
+beamerthemeMalmoe.sty
+beamerthemeMarburg.sty
+beamerthemeMontpellier.sty
+beamerthemePaloAlto.sty
+beamerthemePittsburgh.sty
+beamerthemeRochester.sty
+beamerthemeSingapore.sty
+beamerthemeSzeged.sty
+beamerthemeWarsaw.sty
+compatibility/
+
+base/themes/theme/compatibility:
+beamerthemebars.sty
+beamerthemeclassic.sty
+beamerthemecompatibility.sty
+beamerthemelined.sty
+beamerthemeplain.sty
+beamerthemeshadow.sty
+beamerthemesidebar.sty
+beamerthemesplit.sty
+beamerthemetree.sty
diff --git a/macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt b/macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt
new file mode 100644
index 0000000000..7f97e516f2
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt
@@ -0,0 +1,92 @@
+doc:
+beamercolorthemeexample.tex
+beamerfontthemeexample.tex
+beamerinnerthemeexample.tex
+beamerlogo.pdf
+beamerouterthemeexample.tex
+beamerthemeexample.tex
+beamerthemeexamplebase.tex
+beamerug-animations.tex
+beamerug-color.tex
+beamerug-compatibility.tex
+beamerug-elements.tex
+beamerug-emulation.tex
+beamerug-fonts.tex
+beamerug-frames.tex
+beamerug-globalstructure.tex
+beamerug-graphics.tex
+beamerug-guidelines.tex
+beamerug-installation.tex
+beamerug-interaction.tex
+beamerug-introduction.tex
+beamerug-license.tex
+beamerug-localstructure.tex
+beamerug-macros.tex
+beamerug-nonpresentation.tex
+beamerug-notes.tex
+beamerug-overlays.tex
+beamerug-solutions.tex
+beamerug-themes.tex
+beamerug-transparencies.tex
+beamerug-tricks.tex
+beamerug-tutorial.tex
+beamerug-twoscreens.tex
+beamerug-workflow.tex
+beameruserguide.tex
+emulation-examples/
+examples/
+licenses/
+solutions/
+
+doc/emulation-examples:
+beamerexample-foils.tex
+beamerexample-prosper.tex
+beamerexample-seminar.tex
+beamerexample-texpower.tex
+
+doc/examples:
+a-conference-talk/
+a-lecture/
+
+doc/examples/a-conference-talk/:
+beamerexample-conference-talk.tex
+
+doc/examples/a-lecture/:
+beamerexample-lecture-beamer-version.tex
+beamerexample-lecture-body.tex
+beamerexample-lecture-logo.pdf
+beamerexample-lecture-pic1.jpg
+beamerexample-lecture-pic2.jpg
+beamerexample-lecture-pic3.jpg
+beamerexample-lecture-pic4.jpg
+beamerexample-lecture-pic5.jpg
+beamerexample-lecture-pic6.jpg
+beamerexample-lecture-print-version.tex
+beamerexample-lecture-style.tex
+
+doc/licenses:
+fdl.txt
+gpl-2.0.txt
+lppl-1-3c.txt
+manifest-code.txt
+manifest-documentation.txt
+
+doc/solutions:
+conference-talks/
+generic-talks/
+short-talks/
+
+doc/solutions/conference-talks:
+conference-ornate-20min.de.tex
+conference-ornate-20min.fr.tex
+conference-ornate-20min.en.tex
+
+doc/solutions/generic-talks:
+generic-ornate-15min-45min.de.tex
+generic-ornate-15min-45min.fr.tex
+generic-ornate-15min-45min.en.tex
+
+doc/solutions/short-talks:
+speaker_introduction-ornate-2min.de.tex
+speaker_introduction-ornate-2min.en.tex
+speaker_introduction-ornate-2min.fr.tex \ No newline at end of file
diff --git a/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex b/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex
new file mode 100644
index 0000000000..7f602b7347
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex
@@ -0,0 +1,293 @@
+% $Header$
+
+\documentclass{beamer}
+
+% Diese Datei enthält eine Lösungsvorlage für:
+
+% - Vorträge bei einer (deutschsprachigen) Konferenz/einem Kolloquium.
+% - Vortragslänge von etwa 20 Minuten.
+% - Aussehen des Vortrags ist verschnörkelt/dekorativ.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% In principle, this file can be redistributed and/or modified under
+% the terms of the GNU Public License, version 2.
+%
+% However, this file is supposed to be a template to be modified
+% for your own needs. For this reason, if you use this file as a
+% template and not specifically distribute it as part of a another
+% package/program, I grant the extra permission to freely copy and
+% modify this file as you see fit and even to delete this copyright
+% notice.
+
+
+
+\mode<presentation>
+{
+ \usetheme{Warsaw}
+ % oder ...
+
+ \setbeamercovered{transparent}
+ % oder auch nicht
+}
+
+
+\usepackage[german]{babel}
+% oder was auch immer
+
+\usepackage[latin1]{inputenc}
+% oder was auch immer
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Oder was auch immer. Zu beachten ist, das Font und Encoding passen
+% müssen. Falls T1 nicht funktioniert, kann man versuchen, die Zeile
+% mit fontenc zu löschen.
+
+
+\title[Kurzversion des Titels] % (optional, nur bei langen Titeln nötig)
+{Titel wie im Tagunsband angegeben\\ (u.U.\ also englisch)}
+
+\subtitle
+{Untertitel nur angeben, wenn es einen im Tagungsband gibt}
+
+\author[Autor, Anders] % (optional, nur bei vielen Autoren)
+{F.~Autor\inst{1} \and S.~Anders\inst{2}}
+% - Namen müssen in derselben Reihenfolge wie im Papier erscheinen.
+% - Der \inst{?} Befehl sollte nur verwendet werden, wenn die Autoren
+% unterschiedlichen Instituten angehören.
+
+\institute[Universitäten Hier und Dort] % (optional, aber oft nötig)
+{
+ \inst{1}%
+ Institut für Informatik\\
+ Universität Hier
+ \and
+ \inst{2}%
+ Institut für theoretische Philosophie\\
+ Universität Dort}
+% - Der \inst{?} Befehl sollte nur verwendet werden, wenn die Autoren
+% unterschiedlichen Instituten angehören.
+% - Keep it simple, niemand interessiert sich für die genau Adresse.
+
+\date[KPT 2003] % (optional, sollte der abgekürzte Konferenzname sein)
+{Konferenz über Präsentationstechniken, 2004}
+% - Vollee oder abgekürzter Name sind möglich.
+% - Dieser Eintrag ist nicht für das Publikum gedacht (das weiß
+% nämlich, bei welcher Konferenz es ist), sondern für Leute, die die
+% Folien später lesen.
+
+\subject{Informatik}
+% Dies wird lediglich in den PDF Informationskatalog einfügt. Kann gut
+% weggelassen werden.
+
+
+% Falls eine Logodatei namens "university-logo-filename.xxx" vorhanden
+% ist, wobei xxx ein von latex bzw. pdflatex lesbares Graphikformat
+% ist, so kann man wie folgt ein Logo einfügen:
+
+% \pgfdeclareimage[height=0.5cm]{university-logo}{university-logo-filename}
+% \logo{\pgfuseimage{university-logo}}
+
+
+
+% Folgendes sollte gelöscht werden, wenn man nicht am Anfang jedes
+% Unterabschnitts die Gliederung nochmal sehen möchte.
+\AtBeginSubsection[]
+{
+ \begin{frame}<beamer>{Gliederung}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+
+
+% Falls Aufzählungen immer schrittweise gezeigt werden sollen, kann
+% folgendes Kommando benutzt werden:
+
+%\beamerdefaultoverlayspecification{<+->}
+
+
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Gliederung}
+ \tableofcontents
+ % Die Option [pausesections] könnte nützlich sein.
+\end{frame}
+
+
+
+% Einen Vortrag zu strukturieren ist nicht immer einfach. Die
+% nachfolgende Struktur kann unangemessen sein. Hier ein paar Regeln,
+% die für diese Lösungsvorlage gelten:
+
+% - Es sollte genau zwei oder drei Abschnitte geben (neben der
+% Zusammenfassung).
+% - *Höchstens* drei Unterabschnitte pro Abschnitt.
+% - Pro Rahmen sollte man zwischen 30s und 2min reden. Es sollte also
+% 15 bis 30 Rahmen geben.
+
+% - Konferenzteilnehmer wissen oft wenig von der Materie des
+% Vortrags. Deshalb: vereinfachen!
+% - In 20 Minuten ist es schon schwer genug, die Hauptbotschaft zu
+% vermitteln. Deshalb sollten Details ausgelassen werden, selbst
+% wenn dies zu Ungenauigkeiten oder Halbwahrheiten führt.
+% - Falls man Details weglässt, die eigentlich wichtig für einen
+% Beweis/Implementation sind, so sagt man dies einmal nüchtern. Alle
+% werden damit glücklich sein.
+
+\section{Motivation}
+
+\subsection{Das behandelte Problem}
+
+\begin{frame}{Überschriften müssen informativ sein.\\
+ Korrekte Groß-/Kleinschreibung beachten.}{Untertitel sind optional.}
+ % - Eine Überschrift fasst einen Rahmen verständlich zusammen. Man
+ % muss sie verstehen können, selbst wenn man nicht den Rest des
+ % Rahmens versteht.
+
+ \begin{itemize}
+ \item
+ Viel \texttt{itemize} benutzen.
+ \item
+ Sehr kurze Sätze oder Satzglieder verwenden.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+
+ Man kann Overlays erzeugen\dots
+ \begin{itemize}
+ \item mit dem \texttt{pause}-Befehl:
+ \begin{itemize}
+ \item
+ Erster Punkt.
+ \pause
+ \item
+ Zweiter Punkt.
+ \end{itemize}
+ \item
+ mittels Overlay-Spezifikationen:
+ \begin{itemize}
+ \item<3->
+ Erster Punkt.
+ \item<4->
+ Zweiter Punkt.
+ \end{itemize}
+ \item
+ mit dem allgemeinen \texttt{uncover}-Befehl:
+ \begin{itemize}
+ \uncover<5->{\item
+ Erster Punkt.}
+ \uncover<6->{\item
+ Zweiter Punkt.}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Frühere Arbeiten}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+
+\section{Unsere Resultate/Beitrag}
+
+\subsection{Hauptresultate}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+
+
+\subsection{Beweis-/Implementationsideen}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+
+
+\section*{Zusammenfassung}
+
+\begin{frame}{Zusammenfassung}
+
+ % Die Zusammenfassung sollte sehr kurz sein.
+ \begin{itemize}
+ \item
+ Die \alert{erste Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
+ \item
+ Die \alert{zweite Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
+ \item
+ Eventuell noch eine \alert{dritte Botschaft}, aber nicht noch mehr.
+ \end{itemize}
+
+ % Der folgende Ausblick ist optional.
+ \vskip0pt plus.5fill
+ \begin{itemize}
+ \item
+ Ausblick
+ \begin{itemize}
+ \item
+ Etwas, was wir noch nicht lösen konnten.
+ \item
+ Nochwas, das wir noch nicht lösen konnten.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+
+% Alles nachfolgende ist optional und typischerweise nicht nötig.
+\appendix
+\section<presentation>*{\appendixname}
+\subsection<presentation>*{Weiterführende Literatur}
+
+\begin{frame}[allowframebreaks]
+ \frametitle<presentation>{Weiterführende Literatur}
+
+ \begin{thebibliography}{10}
+
+ \beamertemplatebookbibitems
+ % Anfangen sollte man mit Übersichtswerken.
+
+ \bibitem{Autor1990}
+ A.~Autor.
+ \newblock {\em Einführung in das Präsentationswesen}.
+ \newblock Klein-Verlag, 1990.
+
+
+ \beamertemplatearticlebibitems
+ % Vertiefende Literatur kommt später. Die Liste sollte kurz sein.
+
+ \bibitem{Jemand2000}
+ S.~Jemand.
+ \newblock On this and that.
+ \newblock {\em Journal of This and That}, 2(1):50--100, 2000.
+ \end{thebibliography}
+\end{frame}
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex b/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex
new file mode 100644
index 0000000000..6b9195dc67
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex
@@ -0,0 +1,285 @@
+% $Header$
+
+\documentclass{beamer}
+
+% This file is a solution template for:
+
+% - Talk at a conference/colloquium.
+% - Talk length is about 20min.
+% - Style is ornate.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% In principle, this file can be redistributed and/or modified under
+% the terms of the GNU Public License, version 2.
+%
+% However, this file is supposed to be a template to be modified
+% for your own needs. For this reason, if you use this file as a
+% template and not specifically distribute it as part of a another
+% package/program, I grant the extra permission to freely copy and
+% modify this file as you see fit and even to delete this copyright
+% notice.
+
+
+\mode<presentation>
+{
+ \usetheme{Warsaw}
+ % or ...
+
+ \setbeamercovered{transparent}
+ % or whatever (possibly just delete it)
+}
+
+
+\usepackage[english]{babel}
+% or whatever
+
+\usepackage[latin1]{inputenc}
+% or whatever
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Or whatever. Note that the encoding and the font should match. If T1
+% does not look nice, try deleting the line with the fontenc.
+
+
+\title[Short Paper Title] % (optional, use only with long paper titles)
+{Title As It Is In the Proceedings}
+
+\subtitle
+{Include Only If Paper Has a Subtitle}
+
+\author[Author, Another] % (optional, use only with lots of authors)
+{F.~Author\inst{1} \and S.~Another\inst{2}}
+% - Give the names in the same order as the appear in the paper.
+% - Use the \inst{?} command only if the authors have different
+% affiliation.
+
+\institute[Universities of Somewhere and Elsewhere] % (optional, but mostly needed)
+{
+ \inst{1}%
+ Department of Computer Science\\
+ University of Somewhere
+ \and
+ \inst{2}%
+ Department of Theoretical Philosophy\\
+ University of Elsewhere}
+% - Use the \inst command only if there are several affiliations.
+% - Keep it simple, no one is interested in your street address.
+
+\date[CFP 2003] % (optional, should be abbreviation of conference name)
+{Conference on Fabulous Presentations, 2003}
+% - Either use conference name or its abbreviation.
+% - Not really informative to the audience, more for people (including
+% yourself) who are reading the slides online
+
+\subject{Theoretical Computer Science}
+% This is only inserted into the PDF information catalog. Can be left
+% out.
+
+
+
+% If you have a file called "university-logo-filename.xxx", where xxx
+% is a graphic format that can be processed by latex or pdflatex,
+% resp., then you can add a logo as follows:
+
+% \pgfdeclareimage[height=0.5cm]{university-logo}{university-logo-filename}
+% \logo{\pgfuseimage{university-logo}}
+
+
+
+% Delete this, if you do not want the table of contents to pop up at
+% the beginning of each subsection:
+\AtBeginSubsection[]
+{
+ \begin{frame}<beamer>{Outline}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+
+
+% If you wish to uncover everything in a step-wise fashion, uncomment
+% the following command:
+
+%\beamerdefaultoverlayspecification{<+->}
+
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Outline}
+ \tableofcontents
+ % You might wish to add the option [pausesections]
+\end{frame}
+
+
+% Structuring a talk is a difficult task and the following structure
+% may not be suitable. Here are some rules that apply for this
+% solution:
+
+% - Exactly two or three sections (other than the summary).
+% - At *most* three subsections per section.
+% - Talk about 30s to 2min per frame. So there should be between about
+% 15 and 30 frames, all told.
+
+% - A conference audience is likely to know very little of what you
+% are going to talk about. So *simplify*!
+% - In a 20min talk, getting the main ideas across is hard
+% enough. Leave out details, even if it means being less precise than
+% you think necessary.
+% - If you omit details that are vital to the proof/implementation,
+% just say so once. Everybody will be happy with that.
+
+\section{Motivation}
+
+\subsection{The Basic Problem That We Studied}
+
+\begin{frame}{Make Titles Informative. Use Uppercase Letters.}{Subtitles are optional.}
+ % - A title should summarize the slide in an understandable fashion
+ % for anyone how does not follow everything on the slide itself.
+
+ \begin{itemize}
+ \item
+ Use \texttt{itemize} a lot.
+ \item
+ Use very short sentences or short phrases.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+
+ You can create overlays\dots
+ \begin{itemize}
+ \item using the \texttt{pause} command:
+ \begin{itemize}
+ \item
+ First item.
+ \pause
+ \item
+ Second item.
+ \end{itemize}
+ \item
+ using overlay specifications:
+ \begin{itemize}
+ \item<3->
+ First item.
+ \item<4->
+ Second item.
+ \end{itemize}
+ \item
+ using the general \texttt{uncover} command:
+ \begin{itemize}
+ \uncover<5->{\item
+ First item.}
+ \uncover<6->{\item
+ Second item.}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Previous Work}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+
+
+\section{Our Results/Contribution}
+
+\subsection{Main Results}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+
+\subsection{Basic Ideas for Proofs/Implementation}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+
+
+\section*{Summary}
+
+\begin{frame}{Summary}
+
+ % Keep the summary *very short*.
+ \begin{itemize}
+ \item
+ The \alert{first main message} of your talk in one or two lines.
+ \item
+ The \alert{second main message} of your talk in one or two lines.
+ \item
+ Perhaps a \alert{third message}, but not more than that.
+ \end{itemize}
+
+ % The following outlook is optional.
+ \vskip0pt plus.5fill
+ \begin{itemize}
+ \item
+ Outlook
+ \begin{itemize}
+ \item
+ Something you haven't solved.
+ \item
+ Something else you haven't solved.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+
+% All of the following is optional and typically not needed.
+\appendix
+\section<presentation>*{\appendixname}
+\subsection<presentation>*{For Further Reading}
+
+\begin{frame}[allowframebreaks]
+ \frametitle<presentation>{For Further Reading}
+
+ \begin{thebibliography}{10}
+
+ \beamertemplatebookbibitems
+ % Start with overview books.
+
+ \bibitem{Author1990}
+ A.~Author.
+ \newblock {\em Handbook of Everything}.
+ \newblock Some Press, 1990.
+
+
+ \beamertemplatearticlebibitems
+ % Followed by interesting articles. Keep the list short.
+
+ \bibitem{Someone2000}
+ S.~Someone.
+ \newblock On this and that.
+ \newblock {\em Journal of This and That}, 2(1):50--100,
+ 2000.
+ \end{thebibliography}
+\end{frame}
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex b/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex
new file mode 100644
index 0000000000..cf7d86018b
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex
@@ -0,0 +1,297 @@
+% /solutions/conference-talks/conference-ornate-20min.fr.tex, 22/02/2006 De Sousa
+
+\documentclass{beamer}
+
+% Ce fichier est un exemple d'exposé
+
+% - pour des conférences,
+% - d'une durée approximative de 20 minutes,
+% - avec un style ornemental.
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% Traduction de Philippe De Sousa <philippejjg@free.fr>
+%
+% En principe, ce fichier peut être redistribué et/ou modifié conformément
+% aux termes de la GNU Public License, version 2.
+%
+% Cependant, ce fichier est supposé comme étant un "exemple-type" qui peut être modifié
+% selon vos propres besoins. Pour cette raison, si vous utilisez ce fichier en tant qu'
+% "exemple-type" et non spécifiquement pour le distribuer en tant que partie d'un
+% package ou programme, je vous donne la permission exceptionnelle de copier librement et
+% de modifier ce fichier et même d'effacer ce message de copyright.
+
+
+\mode<presentation> {
+ \usetheme{Warsaw}
+ % ou autre ...
+
+ \setbeamercovered{transparent}
+ % ou autre chose (il est également possible de supprimer cette ligne)
+}
+
+
+\usepackage[french]{babel}
+% or autre comme par exemple \usepackage[english]{babel}
+
+\usepackage[latin1]{inputenc}
+% or autre
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Or autre. Notez que le codage et la fonte doivent être assortis. Si T1
+% ne paraît pas très esthétique, essayer d'effacer la ligne contenant fontenc.
+
+
+\title[Titre court] % (facultatif, à utiliser uniquement si le titre de l'article est trop long)
+{Très long titre qui prend de la place}
+
+\subtitle {ne compléter que si l'article possède un sous-titre}
+
+\author[Auteur, Lautre] % (facultatif, à utiliser seulement avec plusieurs auteurs)
+{F.~Auteur\inst{1} \and S.~Lautre\inst{2}}
+% - Composez les noms dans l'ordre dans lequel ils apparaîtrons dans l'article
+% - Utilisez la commande \inst{?} uniquement si les auteurs ont des affiliations
+% différentes.
+
+\institute[Universités de Quelque Part et d'Ailleurs] % (facultatif mais généralement nécessaire)
+{
+ \inst{1}%
+ Département d'Informatique\\
+ Université de Quelque Part
+ \and
+ \inst{2}%
+ Département de Philosophie Théorique\\
+ Université d'Ailleurs}
+% - Utilisez la commande \inst uniquement s'il y a plusieurs affectations
+% - Faîtes quelque chose de simple, personne ne s'intéresse à votre adresse
+
+\date[CFP 2006] % (facultatif, peut être une abréviation du nom de la conférence)
+{Conférence sur les Fantastiques Présentations, 2006}
+% - Utilisez à la fois le nom de la conférence et son abréviation.
+% - N'a pas réellement d'importance pour l'assistance qui sera présente lors de la conférence,
+% mais en a surtout pour les personnes (y compris vous-même) qui liront les transparents en ligne.
+
+\subject{La théorie de l'Informatique}
+% Inséré uniquement dans la page d'information du fichier PDF. Peut être
+% supprimé.
+
+
+
+% Si vous avez un fichier nommé "université-logo-nomfichier.xxx", où xxx
+% est un format graphique accepté par latex ou pdflatex (comme par exemple .png),
+% alors vous pouvez insérer votre logo ainsi :
+
+% \pgfdeclareimage[height=0.5cm]{le-logo}{université-logo-nomfichier}
+% \logo{\pgfuseimage{le-logo}}
+
+
+
+% À supprimer si vous ne voulez pas que la table des matières apparaisse
+% au début de chaque sous-section :
+
+\AtBeginSubsection[] {
+ \begin{frame}<beamer>{Lignes directrices}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+
+% Si vous souhaitez recouvrir vos transparents un à un,
+% utilisez la commande suivante (pour plus d'info, voir la page 74 du manuel
+% d'utilisation de Beamer (version 3.06) par Till Tantau) :
+
+%\beamerdefaultoverlayspecification{<+->}
+
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Lignes directrices}
+ \tableofcontents
+ % Vous pouvez, si vous le souhaiter ajouter l'option [pausesections]
+\end{frame}
+
+
+% Structurer l'entretien est une tâche difficile et la structure suivante
+% pourrait ne pas convenir. Voici quelques règles à appliquer pour cet
+% exemple ci :
+
+% - Avoir exactement deux ou trois sections (autre que la table des matières).
+% - Tout au plus trois sous-sections par section
+% - Parlez approximativement entre 30 secondes et 2 minutes par transparent. Il
+% devrait donc y avoir entre 15 et 30 transparents, tous ayant été commentés.
+
+% - Le public d'une conférence connaîtra probablement peu de chose sur le sujet
+% que vous serez en train de traiter. Donc, *simplifiez* !
+% - Dans un exposé de 20 minutes, garder à l'esprit les idées principales est largement
+% suffisant pour votre assistance. Laissez tomber certains détails, même s'ils vous
+% semblent nécessaires.
+% - Si vous omettez un détail qui est vital pour une preuve/mise en oeuvre,
+% dites le simplement une fois. Ce sera suffisant pour tout le monde.
+
+\section{Motivation}
+
+\subsection{Le problème étudié}
+
+\begin{frame}{Faîtes des titres qui informent.}{Les sous-titres sont facultatifs.}
+ % - Le titre doit résumer le transparent dans un langage compréhensible
+ % par tous ceux qui ne suivront rien de ce qu'il y a sur ce transparent.
+
+ \begin{itemize}
+ \item Utilisez \texttt{itemize} à volonté.
+ \item Utilisez des phrases très courtes et de courtes expressions.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent}
+
+ Vous pouvez créer des recouvrements\dots
+ \begin{itemize}
+ \item en utilisant la commande \texttt{pause} :
+ \begin{itemize}
+ \item
+ Premier item.
+ \pause
+ \item
+ Second item.
+ \end{itemize}
+ \item
+ en utilisant les spécifications des recouvrements
+ \begin{itemize}
+ \item<3->
+ Premier item.
+ \item<4->
+ Second item.
+ \end{itemize}
+ \item
+ en utilisant en général la commande \texttt{uncover} :
+ \begin{itemize}
+ \uncover<5->{\item
+ Premier item.}
+ \uncover<6->{\item
+ Second item.}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Travail préalable}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ {\scshape Beamer}, c'est vraiment super !
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ {\scshape Beamer}, c'est vraiment génial !
+\end{frame}
+
+
+
+\section{Nos résultats/contribution}
+
+\subsection{Principaux résultats}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ {\scshape Beamer} possèdent plusieurs thèmes différents...
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ Merci à Till Tantau pour {\scshape Beamer} et son manuel.
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ Toute la puissance de \LaTeX{} pour créer des présentations.
+\end{frame}
+
+
+\subsection{Idées de bases pour les preuves}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ Une idée...
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ Une autre...
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ Et une dernière...
+\end{frame}
+
+
+
+\section*{Résumé}
+
+\begin{frame}{Résumé}
+
+ % Faîtes un résumé *très court*.
+ \begin{itemize}
+ \item
+ Le \alert{premier message principal} de l'exposé en une ligne ou
+ deux.
+ \item
+ Le \alert{deuxième message principal} de l'exposé en une ligne ou
+ deux.
+ \item
+ Peut-être un \alert{troisième message}, mais pas plus que ça.
+ \end{itemize}
+
+ % Les perspectives suivantes sont facultatives.
+ \vskip0pt plus.5fill
+ \begin{itemize}
+ \item
+ Perspectives
+ \begin{itemize}
+ \item
+ Problème non résolu.
+ \item
+ Autre problème non résolu.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+
+% Tout ce qui suit est facultatif et n'est typiquement pas nécessaire.
+\appendix
+\section<presentation>*{\appendixname}
+\subsection<presentation>*{Lectures complémentaires}
+
+\begin{frame}[allowframebreaks]
+ \frametitle<presentation>{Lectures complémentaires}
+
+ \begin{thebibliography}{10}
+
+ \beamertemplatebookbibitems
+ % Commencer avec des livres (image d'un livre insérée)
+
+ \bibitem{Auteur1990}
+ A.~Auteur.
+ \newblock {\em Livre de quelque chose}.
+ \newblock Une Edition, 1990.
+
+
+ \beamertemplatearticlebibitems
+ % Et continuer avec les articles (image d'un article incluse). Faîtes une liste brève.
+
+ \bibitem{Quelqu'un2000}
+ S.~Quelqu'un.
+ \newblock Et ceci et cela.
+ \newblock {\em Journal de ceci et cela}, 2(1):50--100,
+ 2000.
+ \end{thebibliography}
+\end{frame}
+
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex b/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex
new file mode 100644
index 0000000000..ea2729cd8c
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex
@@ -0,0 +1,226 @@
+% $Header$
+
+\documentclass{beamer}
+
+% Diese Datei enthält eine Lösungsvorlage für:
+
+
+% - Vorträge über ein beliebiges Thema.
+% - Vortragslänge zwischen 15 und 45 Minuten.
+% - Aussehen des Vortrags ist verschnörkelt/dekorativ.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% In principle, this file can be redistributed and/or modified under
+% the terms of the GNU Public License, version 2.
+%
+% However, this file is supposed to be a template to be modified
+% for your own needs. For this reason, if you use this file as a
+% template and not specifically distribute it as part of a another
+% package/program, I grant the extra permission to freely copy and
+% modify this file as you see fit and even to delete this copyright
+% notice.
+
+
+
+\mode<presentation>
+{
+ \usetheme{Warsaw}
+ % oder ...
+
+ \setbeamercovered{transparent}
+ % oder auch nicht
+}
+
+
+\usepackage[german]{babel}
+% oder was auch immer
+
+\usepackage[latin1]{inputenc}
+% oder was auch immer
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Oder was auch immer. Zu beachten ist, das Font und Encoding passen
+% müssen. Falls T1 nicht funktioniert, kann man versuchen, die Zeile
+% mit fontenc zu löschen.
+
+
+\title[Kurzversion des Titels] % (optional, nur bei langen Titeln nötig)
+{Titel}
+
+\subtitle
+{Untertitel} % (optional)
+
+\author[Autor, Anders] % (optional, nur bei vielen Autoren)
+{F.~Autor\inst{1} \and S.~Anders\inst{2}}
+% - Der \inst{?} Befehl sollte nur verwendet werden, wenn die Autoren
+% unterschiedlichen Instituten angehören.
+
+\institute[Universitäten Hier und Dort] % (optional, aber oft nötig)
+{
+ \inst{1}%
+ Institut für Informatik\\
+ Universität Hier
+ \and
+ \inst{2}%
+ Institut für theoretische Philosophie\\
+ Universität Dort}
+% - Der \inst{?} Befehl sollte nur verwendet werden, wenn die Autoren
+% unterschiedlichen Instituten angehören.
+% - Keep it simple, niemand interessiert sich für die genau Adresse.
+
+\date[Kurzversion des Anlass] % (optional)
+{Datum / Anlass}
+
+
+\subject{Informatik}
+% Dies wird lediglich in den PDF Informationskatalog einfügt. Kann gut
+% weggelassen werden.
+
+
+% Falls eine Logodatei namens "university-logo-filename.xxx" vorhanden
+% ist, wobei xxx ein von latex bzw. pdflatex lesbares Graphikformat
+% ist, so kann man wie folgt ein Logo einfügen:
+
+% \pgfdeclareimage[height=0.5cm]{university-logo}{university-logo-filename}
+% \logo{\pgfuseimage{university-logo}}
+
+
+
+% Folgendes sollte gelöscht werden, wenn man nicht am Anfang jedes
+% Unterabschnitts die Gliederung nochmal sehen möchte.
+\AtBeginSubsection[]
+{
+ \begin{frame}<beamer>{Gliederung}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+
+
+% Falls Aufzählungen immer schrittweise gezeigt werden sollen, kann
+% folgendes Kommando benutzt werden:
+
+%\beamerdefaultoverlayspecification{<+->}
+
+
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Gliederung}
+ \tableofcontents
+ % Die Option [pausesections] könnte nützlich sein.
+\end{frame}
+
+
+
+% Da dies ein Vorlage für beliebige Vorträge ist, lassen sich kaum
+% allgemeine Regeln zur Strukturierung angeben. Da die Vorlage für
+% einen Vortrag zwischen 15 und 45 Minuten gedacht ist, fährt man aber
+% mit folgenden Regeln oft gut.
+
+% - Es sollte genau zwei oder drei Abschnitte geben (neben der
+% Zusammenfassung).
+% - *Höchstens* drei Unterabschnitte pro Abschnitt.
+% - Pro Rahmen sollte man zwischen 30s und 2min reden. Es sollte also
+% 15 bis 30 Rahmen geben.
+
+
+
+\section{Einleitung}
+
+\subsection[Kurzversion des ersten Unterabschnittstitels]
+{Erster Unterabschnittstitel}
+
+\begin{frame}{Überschriften müssen informativ sein.\\
+ Korrekte Groß-/Kleinschreibung beachten.}{Untertitel sind optional.}
+ % - Eine Überschrift fasst einen Rahmen verständlich zusammen. Man
+ % muss sie verstehen können, selbst wenn man nicht den Rest des
+ % Rahmens versteht.
+
+ \begin{itemize}
+ \item
+ Viel \texttt{itemize} benutzen.
+ \item
+ Sehr kurze Sätze oder Satzglieder verwenden.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+
+ Man kann Overlays erzeugen\dots
+ \begin{itemize}
+ \item mit dem \texttt{pause}-Befehl:
+ \begin{itemize}
+ \item
+ Erster Punkt.
+ \pause
+ \item
+ Zweiter Punkt.
+ \end{itemize}
+ \item
+ mittels Overlay-Spezifikationen:
+ \begin{itemize}
+ \item<3->
+ Erster Punkt.
+ \item<4->
+ Zweiter Punkt.
+ \end{itemize}
+ \item
+ mit dem allgemeinen \texttt{uncover}-Befehl:
+ \begin{itemize}
+ \uncover<5->{\item
+ Erster Punkt.}
+ \uncover<6->{\item
+ Zweiter Punkt.}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Zweiter Unterabschnittstitel}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\begin{frame}{Überschriften müssen informativ sein.}
+\end{frame}
+
+\section*{Zusammenfassung}
+
+\begin{frame}{Zusammenfassung}
+
+ % Die Zusammenfassung sollte sehr kurz sein.
+ \begin{itemize}
+ \item
+ Die \alert{erste Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
+ \item
+ Die \alert{zweite Hauptbotschaft} des Vortrags in ein bis zwei Zeilen.
+ \item
+ Eventuell noch eine \alert{dritte Botschaft}, aber nicht noch mehr.
+ \end{itemize}
+
+ % Der folgende Ausblick ist optional.
+ \vskip0pt plus.5fill
+ \begin{itemize}
+ \item
+ Ausblick
+ \begin{itemize}
+ \item
+ Etwas, was wir noch nicht lösen konnten.
+ \item
+ Nochwas, das wir noch nicht lösen konnten.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex b/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex
new file mode 100644
index 0000000000..a07a6f15df
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex
@@ -0,0 +1,216 @@
+% $Header$
+
+\documentclass{beamer}
+
+% This file is a solution template for:
+
+% - Giving a talk on some subject.
+% - The talk is between 15min and 45min long.
+% - Style is ornate.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% In principle, this file can be redistributed and/or modified under
+% the terms of the GNU Public License, version 2.
+%
+% However, this file is supposed to be a template to be modified
+% for your own needs. For this reason, if you use this file as a
+% template and not specifically distribute it as part of a another
+% package/program, I grant the extra permission to freely copy and
+% modify this file as you see fit and even to delete this copyright
+% notice.
+
+
+\mode<presentation>
+{
+ \usetheme{Warsaw}
+ % or ...
+
+ \setbeamercovered{transparent}
+ % or whatever (possibly just delete it)
+}
+
+
+\usepackage[english]{babel}
+% or whatever
+
+\usepackage[latin1]{inputenc}
+% or whatever
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Or whatever. Note that the encoding and the font should match. If T1
+% does not look nice, try deleting the line with the fontenc.
+
+
+\title[Short Paper Title] % (optional, use only with long paper titles)
+{Presentation Title}
+
+\subtitle
+{Presentation Subtitle} % (optional)
+
+\author[Author, Another] % (optional, use only with lots of authors)
+{F.~Author\inst{1} \and S.~Another\inst{2}}
+% - Use the \inst{?} command only if the authors have different
+% affiliation.
+
+\institute[Universities of Somewhere and Elsewhere] % (optional, but mostly needed)
+{
+ \inst{1}%
+ Department of Computer Science\\
+ University of Somewhere
+ \and
+ \inst{2}%
+ Department of Theoretical Philosophy\\
+ University of Elsewhere}
+% - Use the \inst command only if there are several affiliations.
+% - Keep it simple, no one is interested in your street address.
+
+\date[Short Occasion] % (optional)
+{Date / Occasion}
+
+\subject{Talks}
+% This is only inserted into the PDF information catalog. Can be left
+% out.
+
+
+
+% If you have a file called "university-logo-filename.xxx", where xxx
+% is a graphic format that can be processed by latex or pdflatex,
+% resp., then you can add a logo as follows:
+
+% \pgfdeclareimage[height=0.5cm]{university-logo}{university-logo-filename}
+% \logo{\pgfuseimage{university-logo}}
+
+
+
+% Delete this, if you do not want the table of contents to pop up at
+% the beginning of each subsection:
+\AtBeginSubsection[]
+{
+ \begin{frame}<beamer>{Outline}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+
+
+% If you wish to uncover everything in a step-wise fashion, uncomment
+% the following command:
+
+%\beamerdefaultoverlayspecification{<+->}
+
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Outline}
+ \tableofcontents
+ % You might wish to add the option [pausesections]
+\end{frame}
+
+
+% Since this a solution template for a generic talk, very little can
+% be said about how it should be structured. However, the talk length
+% of between 15min and 45min and the theme suggest that you stick to
+% the following rules:
+
+% - Exactly two or three sections (other than the summary).
+% - At *most* three subsections per section.
+% - Talk about 30s to 2min per frame. So there should be between about
+% 15 and 30 frames, all told.
+
+\section{Introduction}
+
+\subsection[Short First Subsection Name]{First Subsection Name}
+
+\begin{frame}{Make Titles Informative. Use Uppercase Letters.}{Subtitles are optional.}
+ % - A title should summarize the slide in an understandable fashion
+ % for anyone how does not follow everything on the slide itself.
+
+ \begin{itemize}
+ \item
+ Use \texttt{itemize} a lot.
+ \item
+ Use very short sentences or short phrases.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+
+ You can create overlays\dots
+ \begin{itemize}
+ \item using the \texttt{pause} command:
+ \begin{itemize}
+ \item
+ First item.
+ \pause
+ \item
+ Second item.
+ \end{itemize}
+ \item
+ using overlay specifications:
+ \begin{itemize}
+ \item<3->
+ First item.
+ \item<4->
+ Second item.
+ \end{itemize}
+ \item
+ using the general \texttt{uncover} command:
+ \begin{itemize}
+ \uncover<5->{\item
+ First item.}
+ \uncover<6->{\item
+ Second item.}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Second Subsection}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+\begin{frame}{Make Titles Informative.}
+\end{frame}
+
+
+
+\section*{Summary}
+
+\begin{frame}{Summary}
+
+ % Keep the summary *very short*.
+ \begin{itemize}
+ \item
+ The \alert{first main message} of your talk in one or two lines.
+ \item
+ The \alert{second main message} of your talk in one or two lines.
+ \item
+ Perhaps a \alert{third message}, but not more than that.
+ \end{itemize}
+
+ % The following outlook is optional.
+ \vskip0pt plus.5fill
+ \begin{itemize}
+ \item
+ Outlook
+ \begin{itemize}
+ \item
+ Something you haven't solved.
+ \item
+ Something else you haven't solved.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex b/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex
new file mode 100644
index 0000000000..e75f14788d
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex
@@ -0,0 +1,221 @@
+% /solutions/conference-talks/conference-ornate-20min.fr.tex, 22/02/2006 De Sousa
+
+\documentclass{beamer}
+
+% Ce fichier est un exemple-type pour :
+
+% - donner un exposé sur un certain sujet
+% - une durée variant de 15 à 45 minutes
+% - un style ornemental.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% Traduction de Philippe De Sousa <philippejjg@free.fr>
+%
+% En principe, ce fichier peut être redistribué et/ou modifié conformément
+% aux termes de la GNU Public License, version 2.
+%
+% Cependant, ce fichier est supposé comme étant un "exemple-type" qui
+% peut être modifié selon vos propres besoins. Pour cette raison, si
+% vous utilisez ce fichier en tant qu' "exemple-type" et non
+% spécifiquement pour le distribuer en tant que partie d'un package ou
+% programme, je vous donne la permission exceptionnelle de copier
+% librement et de modifier ce fichier et même d'effacer ce message de
+% copyright.
+
+
+
+\mode<presentation> {
+ \usetheme{Warsaw}
+ % ou autre ...
+
+ \setbeamercovered{transparent}
+ % ou autre chose (il est également possible de supprimer cette ligne)
+}
+
+
+\usepackage[french]{babel}
+% or autre comme par exemple \usepackage[english]{babel}
+
+\usepackage[latin1]{inputenc}
+% or autre
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Or autre. Notez que le codage et la fonte doivent être assortis. Si T1
+% ne paraît pas très esthétique, essayer d'effacer la ligne contenant fontenc.
+
+
+\title[Titre court] % (facultatif, à utiliser uniquement si le titre de l'article est trop long)
+{Très long titre qui prend de la place}
+
+\subtitle {Sous-titre de la présentation}
+
+\author[Auteur, Lautre] % (facultatif, à utiliser seulement avec plusieurs auteurs)
+{F.~Auteur\inst{1} \and S.~Lautre\inst{2}}
+% - Composez les noms dans l'ordre dans lequel ils apparaîtrons dans l'article
+% - Utilisez la commande \inst{?} uniquement si les auteurs ont des affiliations
+% différentes.
+
+\institute[Universités de Quelque Part et d'Ailleurs] % (facultatif mais généralement nécessaire)
+{
+ \inst{1}%
+ Département d'Informatique\\
+ Université de Quelque Part
+ \and
+ \inst{2}%
+ Département de Philosophie Théorique\\
+ Université d'Ailleurs}
+% - Utilisez la commande \inst uniquement s'il y a plusieurs affectations
+% - Faîtes quelque chose de simple, personne ne s'intéresse à votre adresse.
+
+\date[Version courte] % (facultatif)
+{Date / Occasion}
+
+\subject{Exposé}
+% Inséré uniquement dans la page d'information du fichier PDF. Peut être
+% supprimé.
+
+
+
+% Si vous avez un fichier nommé "université-logo-nomfichier.xxx", où xxx
+% est un format graphique accepté par latex ou pdflatex (comme par exemple .png),
+% alors vous pouvez insérer votre logo ainsi :
+
+% \pgfdeclareimage[height=0.5cm]{le-logo}{université-logo-nomfichier}
+% \logo{\pgfuseimage{le-logo}}
+
+
+
+% À supprimer si vous ne voulez pas que la table des matières apparaisse
+% au début de chaque sous-section :
+
+\AtBeginSubsection[] {
+ \begin{frame}<beamer>{Lignes directrices}
+ \tableofcontents[currentsection,currentsubsection]
+ \end{frame}
+}
+
+
+% Si vous souhaitez recouvrir vos transparents un à un,
+% utilisez la commande suivante (pour plus d'info, voir la page 74 du manuel
+% d'utilisation de Beamer (version 3.06) par Till Tantau) :
+
+%\beamerdefaultoverlayspecification{<+->}
+
+
+\begin{document}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}{Lignes directrices}
+ \tableofcontents
+ % Vous pouvez, si vous le souhaiter ajouter l'option [pausesections]
+\end{frame}
+
+
+% Puisqu'il s'agit d'un exemple-type pour un exposé d'ordre général, peu de choses
+% peuvent être dites concernant sa structure. Cependant, la durée varie de 15 minutes
+% à 45 minutes et le thème vous suggère de suivre les règles suivantes :
+
+% - Avoir exactement deux ou trois sections (autre que la table des matières).
+% - Tout au plus trois sous-sections par section
+% - Parlez approximativement entre 30 secondes et 2 minutes par transparent. Il
+% devrait donc y avoir entre 15 et 30 transparents, tous ayant été commentés.
+
+\section{Introduction}
+
+\subsection[Court titre s-section]{Un très long titre de sous-section.}
+
+\begin{frame}{Faîtes des titres qui informent.}{Les sous-titres sont facultatifs.}
+ % - Le titre doit résumer le transparent dans un langage compréhensible
+ % par tous ceux qui ne suivront rien de ce qu'il y a sur ce transparent.
+
+ \begin{itemize}
+ \item Utilisez \texttt{itemize} à volonté.
+ \item Utilisez des phrases très courtes et de courtes expressions.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent}
+
+ Vous pouvez créer des recouvrements\dots
+ \begin{itemize}
+ \item en utilisant la commande \texttt{pause} :
+ \begin{itemize}
+ \item
+ Premier item.
+ \pause
+ \item
+ Second item.
+ \end{itemize}
+ \item
+ en utilisant les spécifications des recouvrements
+ \begin{itemize}
+ \item<3->
+ Premier item.
+ \item<4->
+ Second item.
+ \end{itemize}
+ \item
+ en utilisant en général la commande \texttt{uncover} :
+ \begin{itemize}
+ \uncover<5->{\item
+ Premier item.}
+ \uncover<6->{\item
+ Second item.}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\subsection{Deuxième sous-section}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ {\scshape Beamer}, c'est vraiment super !
+\end{frame}
+
+\begin{frame}{Faîtes des titres qui informent.}
+
+ {\scshape Beamer}, c'est vraiment génial !
+\end{frame}
+
+
+
+\section*{Résumé}
+
+\begin{frame}{Résumé}
+
+ % Faîtes un résumé *très court*.
+ \begin{itemize}
+ \item
+ Le \alert{premier message principal} de l'exposé en une ligne ou
+ deux.
+ \item
+ Le \alert{deuxième message principal} de l'exposé en une ligne ou
+ deux.
+ \item
+ Peut-être un \alert{troisième message}, mais pas plus que ça.
+ \end{itemize}
+
+ % Les perspectives suivantes sont facultatives.
+ \vskip0pt plus.5fill
+ \begin{itemize}
+ \item
+ Perspectives
+ \begin{itemize}
+ \item
+ Problème non résolu.
+ \item
+ Autre problème non résolu.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+
+\end{document}
diff --git a/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex b/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex
new file mode 100644
index 0000000000..a64b6e3ac4
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex
@@ -0,0 +1,106 @@
+% $Header$
+
+\documentclass{beamer}
+
+% Diese Datei enthält eine Lösungsvorlage für:
+
+% - Das Vorstellen des nächsten Sprechers.
+% - Vortragslänge von ca. zwei Minuten.
+% - Aussehen des Vortrags ist verschnörkelt/dekorativ.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% In principle, this file can be redistributed and/or modified under
+% the terms of the GNU Public License, version 2.
+%
+% However, this file is supposed to be a template to be modified
+% for your own needs. For this reason, if you use this file as a
+% template and not specifically distribute it as part of a another
+% package/program, I grant the extra permission to freely copy and
+% modify this file as you see fit and even to delete this copyright
+% notice.
+
+
+\setbeamertemplate{background canvas}[vertical shading][bottom=white,top=structure.fg!25]
+% Oder was auch immer.
+
+\usetheme{Warsaw}
+\setbeamertemplate{headline}{}
+\setbeamertemplate{footline}{}
+\setbeamersize{text margin left=0.5cm}
+
+\usepackage[german]{babel}
+% Oder was auch immer
+
+\usepackage[latin1]{inputenc}
+% Oder was auch immer
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Oder was auch immer. Zu beachten ist, das Font und Encoding passen
+% müssen. Falls T1 nicht funktioniert, kann man versuchen, die Zeile
+% mit fontenc zu löschen.
+
+
+
+\begin{document}
+
+\begin{frame}{Name der/des Vortragenden}{Über unsere(n) nächste(n) Vortragende(n)}
+
+ \begin{itemize}
+ \item
+ Derzeitige Stellung(en) von Name der/des Vortragenden
+
+ % Beispiele:
+ \begin{itemize}
+ \item
+ Professor für Mathematik, Universität Irgendwo.
+ \item
+ Juniorpartner bei Firma X.
+ \item
+ Sprecher der Organisation X / des Projekts X.
+ \end{itemize}
+ \item
+ Erfahrungen und Erfolge
+ % Optional. Sollte nur gebracht werden, wenn es angemessen
+ % erscheint, dem Vortragenden leicht zu schmeicheln; was
+ % beispielsweise bei eingeladenen Vortragenden der Fall ist.
+ % Die Unterpunkte sollten den Sprecher interessant und kompetent
+ % erscheinen lassen.
+
+ % Beispiele:
+ \begin{itemize}
+ \item
+ Falls passend, akademischer Grad
+ \item
+ Derzeitige und/oder vorherige Stellungen, eventuell mit Daten
+ \item
+ Publikationen (eventuell lediglich die Anzahl)
+ \item
+ Auszeichnungen, Preise
+ \end{itemize}
+ \item
+ In Bezug auf den heutigen Vortrag
+ % Optional. Sollte benutzt werden, um spezielle Erfahrungen /
+ % spezielles Wissen des Vortragenen speziell in Bezug auf den
+ % Vortrag aufzuzeigen -- falls diese Erfahrungen sich nicht
+ % bereits aus obigen Punkten ableiten lassen.
+
+ % Beispiele:
+ \begin{itemize}
+ \item
+ Expertin/Experte, die/der seit X Monaten/Jahren in dem
+ Gebiet/Projekt arbeitet.
+ \item
+ Wird ihre/seine Forschung / die Forschung der Gruppe/Firma vorstellen.
+ \item
+ Wird einen Projektbericht/Projektstatus vorstellen.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex b/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex
new file mode 100644
index 0000000000..35a654a384
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex
@@ -0,0 +1,102 @@
+% $Header$
+
+\documentclass{beamer}
+
+% This file is a solution template for:
+
+% - Introducing another speaker.
+% - Talk length is about 2min.
+% - Style is ornate.
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% In principle, this file can be redistributed and/or modified under
+% the terms of the GNU Public License, version 2.
+%
+% However, this file is supposed to be a template to be modified
+% for your own needs. For this reason, if you use this file as a
+% template and not specifically distribute it as part of a another
+% package/program, the author grants the extra permission to freely
+% copy and modify this file as you see fit and even to delete this
+% copyright notice.
+
+
+\setbeamertemplate{background canvas}[vertical shading][bottom=white,top=structure.fg!25]
+% or whatever
+
+\usetheme{Warsaw}
+\setbeamertemplate{headline}{}
+\setbeamertemplate{footline}{}
+\setbeamersize{text margin left=0.5cm}
+
+\usepackage[english]{babel}
+% or whatever
+
+\usepackage[latin1]{inputenc}
+% or whatever
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Or whatever. Note that the encoding and the font should match. If T1
+% does not look nice, try deleting the line with the fontenc.
+
+
+
+\begin{document}
+
+\begin{frame}{Speaker's Name}{About Our Next Speaker}
+
+ \begin{itemize}
+ \item
+ Current affiliation of Speaker's Name
+
+ % Examples:
+ \begin{itemize}
+ \item
+ Professor of mathematics, University of Wherever.
+ \item
+ Junior partner at company X.
+ \item
+ Speaker for organization/project X.
+ \end{itemize}
+ \item
+ Experience and achievements
+ % Optional. Use this if it is appropriate to slightly flatter the
+ % speaker, for example if the speaker has been invited.
+ % Using subitems, list things that make the speaker look
+ % interesting and competent.
+
+ % Examples:
+ \begin{itemize}
+ \item
+ Academic degree, but only if appropriate
+ \item
+ Current and/or previous positions, possibly with dates
+ \item
+ Publications (possibly just number of publications)
+ \item
+ Awards, prizes
+ \end{itemize}
+ \item
+ Concerning today's talk
+ % Optional. Use this to point out specific experiences/knowledge
+ % of the speaker that are important for the talk and that do not
+ % follow from the above.
+
+ % Examples:
+ \begin{itemize}
+ \item
+ Expert who has worked in the field/project for X month/years.
+ \item
+ Will present his/her/group's/company's research on the subject.
+ \item
+ Will summarize project report or current project status.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\end{document}
+
+
diff --git a/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex b/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex
new file mode 100644
index 0000000000..d7b3969d12
--- /dev/null
+++ b/macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex
@@ -0,0 +1,102 @@
+% /solutions/conference-talks/conference-ornate-20min.fr.tex, 22/02/2006 De Sousa
+
+\documentclass{beamer}
+
+% Ce fichier est un exemple-type pour :
+
+% - Introduire un autre conférencier
+% - une durée de parole d'approximativement 2 minutes
+% - un style ornemental
+
+
+
+% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% Traduction de Philippe De Sousa <philippejjg@free.fr>
+%
+% En principe, ce fichier peut être redistribué et/ou modifié conformément
+% aux termes de la GNU Public License, version 2.
+%
+% Cependant, ce fichier est supposé comme étant un "exemple-type" qui peut être modifié
+% selon vos propres besoins. Pour cette raison, si vous utilisez ce fichier en tant qu'
+% "exemple-type" et non spécifiquement pour le distribuer en tant que partie d'un
+% package ou programme, je vous donne la permission exceptionnelle de copier librement et
+% de modifier ce fichier et même d'effacer ce message de copyright.
+
+
+\setbeamertemplate{background canvas}[vertical
+shading][bottom=white,top=structure.fg!25]
+% ou autre
+
+\usetheme{Warsaw}
+\setbeamertemplate{headline}{} \setbeamertemplate{footline}{}
+\setbeamersize{text margin left=0.5cm}
+
+\usepackage[french]{babel}
+% or autre comme par exemple \usepackage[english]{babel}
+
+\usepackage[latin1]{inputenc}
+% or autre
+
+\usepackage{times}
+\usepackage[T1]{fontenc}
+% Or autre. Notez que le codage et la fonte doivent être assortis. Si T1
+% ne paraît pas très esthétique, essayer d'effacer la ligne contenant fontenc.
+
+
+
+\begin{document}
+
+\begin{frame}{Nom du conférencier}{À propos du conférencier suivant}
+
+ \begin{itemize}
+ \item
+ Affiliation actuelle du conférencier
+
+ % Exemples:
+ \begin{itemize}
+ \item
+ Professeur de Mathématiques, Université de Quelque Part.
+ \item
+ Partenaire Junior de la Compagnie X
+ \item
+ Conférencier pour l'organisation/le projet X.
+ \end{itemize}
+ \item
+ Expérience et réalisation
+ % Facultatif. Utilisez ceci s'il est approprié de flatté légèrement le
+ % conférencier ; par exemple, s'il s'agit d'un invité.
+ % En utilisant des sous-item, la liste des choses faites par le conférencier
+ % paraît intéressante et suffisante.
+
+ % Exemples:
+ \begin{itemize}
+ \item
+ Diplôme d'Académie, mais uniquement si c'est approprié
+ \item
+ Positions actuelles ou futures, éventuellement avec les dates
+ \item
+ Publications (éventuellement juste le nombre de publications)
+ \item
+ Récompenses, prix
+ \end{itemize}
+ \item
+ Concernant le sujet d'aujourd'hui
+ % Facultatif. Il est important pour l'exposé d'utiliser ce point en dehors des toutes
+ % expériences/connaissances spécifiques du conférencier et de ne pas poursuivre ce qui
+ % a été indiqué plus haut.
+
+ % Exemples:
+ \begin{itemize}
+ \item
+ Expert qui a travaillé sur le projet durant X mois/année.
+ \item
+ Va présenter les recherches de son groupe/sa compagnie sur le
+ sujet.
+ \item
+ Va résumer le rapport du projet ou le statut actuel du projet.
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\end{document}