[gtk-internet-radio-locator] Presentation



commit f1d7c8da269eef0769168ea25afe8a64f95a91e1
Author: Ole Aamot <ole gnome org>
Date:   Sun Jun 3 17:26:49 2018 +0200

    Presentation

 po/LINGUAS                     |   3 -
 src/internet-radio-locator.xml |   2 +-
 talk/GNOME2018.tex             | 383 +++++++++++++++++++
 talk/foils.cls                 | 837 +++++++++++++++++++++++++++++++++++++++++
 talk/mdwslides.sty             | 122 ++++++
 talk/pagetrans.sty             |  55 +++
 talk/pause.sty                 | 185 +++++++++
 7 files changed, 1583 insertions(+), 4 deletions(-)
---
diff --git a/po/LINGUAS b/po/LINGUAS
index 119b9d9..0594b6c 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1,15 +1,12 @@
 # please keep this list sorted alphabetically
 #
-ca
 cs
 de
 es
 fr
-hr
 hu
 id
 nb
-nl
 pl
 pt_BR
 sl
diff --git a/src/internet-radio-locator.xml b/src/internet-radio-locator.xml
index d99573c..3ef411f 100644
--- a/src/internet-radio-locator.xml
+++ b/src/internet-radio-locator.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?xml-stylesheet type="text/xsl" 
href="https://people.gnome.org/~ole/gnome-internet-radio-locator/gnome-internet-radio-locator.xsl"; ?>
 <!DOCTYPE internet_radio_locator SYSTEM "internet-radio-locator-1.5.dtd">
-<internet_radio_locator version="0.0.1">
+<internet_radio_locator version="0.0.2">
   <station band="ONLINE" id="drnyheder" lang="da" name="Danmarks Radio Nyheder" rank="1.0" type="gov">
     <frequency uri="http://www.dr.dk/nyheder";>FM 93.3 in Aalborg</frequency>
     <location>Copenhagen, Denmark</location>
diff --git a/talk/GNOME2018.tex b/talk/GNOME2018.tex
new file mode 100644
index 0000000..d725006
--- /dev/null
+++ b/talk/GNOME2018.tex
@@ -0,0 +1,383 @@
+% This is an example of how to create a presentation in PDFLaTeX. 
+% Matt Welsh, mdw cs berkeley edu
+% See http://www.cs.berkeley.edu/~mdw/proj/texslides for details.
+
+% The basic document style is 'foils' from the FoilTeX package
+\documentclass[20pt,landscape]{foils}
+% These are my macros for creating slides
+\usepackage{mdwslides}
+
+% Basic things that we need are below
+\usepackage[english]{babel}
+\usepackage{hyperref}
+\hypersetup{
+  pdfmenubar=true,
+  pdftoolbar=true,
+  pdfpagemode={None}
+}
+\usepackage{pause}
+\usepackage{graphicx}
+\usepackage[utf8]{inputenc}
+\inputencoding{utf8}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% Set headers
+\MyLogo{Ole Aamot}
+\rightfooter{\quad\textsf{\thepage}}
+
+\begin{document}
+\rm
+
+\slide{}
+\LogoOff
+
+\vskip 1.5in
+\begin{center}
+  {\color{mdwblue}\Large\slingbold Free Internet Radio for GNOME 3.30
+    \vskip 11ex
+    Ole Aamot
+    \vskip 1ex
+           {\small\trebucit ole gnome org}
+           \vskip 1ex
+                  {\mdwsmall\tt \url{https://www.gnome.org/~ole/GNOME2018.pdf}
+                  }
+  }
+\end{center}
+
+\slide{Introduction}
+\LogoOn
+gtk-internet-radio-locator is a Free Software program that allows computer users
+to easily locate and listen to radio programs on broadcasters on the Internet
+such as BBC, KEXP and WMBR, as well as NASA's Third Rock Station and 82 other
+Internet Radio stations broadcasting from many universities around the world.
+
+gtk-internet-radio-locator is developed for the GNOME 3.30 desktop and requires
+gst-player from gstreamer (\url{https://gstreamer.freedesktop.org/}) to be installed for audio playback.
+
+gtk-internet-radio-locator is not officially a part of GNU or GNOME,
+but using the *.gnome.org infrastructure on\\
+\url{http://gitlab.gnome.org/GNOME/gtk-internet-radio-locator} and\\
+\url{https://download.gnome.org/sources/gtk-internet-radio-locator/}
+
+\slide{Why do I write gtk-internet-radio-locator?}
+
+\begin{list1}
+\item I am a supporter of
+  \begin{list2}
+  \item Free Radio
+  \item Free Software
+  \item Free Speech
+  \end{list2}
+\item I want to give something back to the Free Software community
+\item Internet Radio is a free Internet resource
+\item Many Universities run non-profit Internet radio stations
+\end{list1}
+
+\slide{History of gtk-internet-radio-locator}
+
+\begin{list1}
+\item 2018
+  \begin{list2}
+  \item gtk-internet-radio-locator version 0.0.2 was released on May 30th
+  \end{list2}
+  \begin{list2}
+  \item gtk-internet-radio-locator version 0.0.1 was released on May 29th
+  \end{list2}
+\end{list1}
+
+\slide{What is the definition of Free Software?}
+
+From FSF's home page (\url{https://www.gnu.org/philosophy/free-sw.html}):
+
+\begin{list1}
+\item Free Software is a good idea because you have
+  \begin{list2}
+    \item The freedom to run the program as you wish, for any purpose (freedom 0).
+    \item The freedom to study how the program works, and change it so it does your computing as you wish 
(freedom 1). Access to the source code is a precondition for this.
+    \item The freedom to redistribute copies so you can help your neighbor (freedom 2).
+    \item The freedom to distribute copies of your modified versions to others (freedom 3). By doing this 
you can give the whole community a chance to benefit from your changes. Access to the source code is a 
precondition for this.
+  \end{list2}
+\end{list1}
+
+\slide{Existing Music Services}
+
+\begin{list1}
+\item Apple Music, Google Music and Spotify
+  \begin{list2}
+  \item Require non-free client software
+  \item DRM (Digital Restrictions Management)
+  \item Impose EULAs that restrict more than copyright
+  \item Track what the user listens to
+  \end{list2}
+\end{list1}
+
+One redeeming feature of some of them:
+
+\begin{list2}
+\item You can't access them from GNU/Linux at all.  If you're a GNU/Linux user, this protects you from the 
temptation to use them.
+\end{list2}
+
+\slide{Why did I write gtk-internet-radio-locator?}
+
+The first public talk I gave in the UK, was a talk on ``Music
+Recording, Production and Distribution with Free Software'' at UKUUG
+Linux 2005 at University of Wales, Swansea, in 2005.
+
+The first talk is available from \url{http://home.nuug.no/~ole/UKUUG2005.pdf}
+
+The second public talk I gave in Oslo, Norway, was a talk on ``GNOME Internet Radio Locator'' at OSDC in 
Oslo, Norway in 2015.
+
+The second talk is available from \url{http://home.nuug.no/~ole/ODSC2015.pdf}
+
+The third talk I prepared was ``Mapping Free Software in GNOME for GUADEC 2017'' at Manchester Metropolitan 
University, in 2017.
+
+The third talk is available from \url{http://home.nuug.no/~ole/GUADEC2017.pdf}
+
+\begin{list1}
+\item Free Radio
+\item Free Software
+\item Free Speech
+\end{list1}
+
+\slide{Features in gtk-internet-radio-locator version 0.0.2}
+
+\begin{list1}
+\item 86 non-profit and independent radio stations are supported.
+\item 10 language translations (see gtk-internet-radio-locator/AUTHORS and 
gtk-internet-radio-locator/THANKS).
+\item Radio station search by physical location, but just city names.
+\item Click-to-play map feature for 35 cities.
+\item Support for New/Personal Stations (``\$HOME/.internet-radio-locator/internet-radio-locator.xml'').
+\item Radio playback in all audio codecs supported by gstreamer.
+\end{list1}
+
+\slide{Supported Internet Radio Stations}
+
+The following major cities are supported in gtk-internet-radio-locator 0.0.2:
+
+\begin{list1}
+\item
+  \begin{list2}
+    
+  \end{list2}
+\end{list1}
+
+See
+\begin{tiny}\url{https://www.gnome.org/~ole/gtk-internet-radio-locator/gtk-internet-radio-locator.xml}\end{tiny}
 for the current list of supported radio stations in gtk-internet-radio-locator.
+
+\slide{Supported Radio Codecs}
+
+The radio stations stream live audio with several different audio
+codecs supported by the gstreamer library, see
+\url{https://gstreamer.freedesktop.org/}
+
+The audio codecs in usage among the supported 86 radio stations are:
+
+\begin{list1}
+  \item
+    \begin{list2}
+    \item ``AAC, v4 LC''
+    \item ``MPEG 1 Audio, Layer 3 (MP3)''
+    \item ``MPEG ADTS, layer III (Joint Stereo)''
+    \item ``MPEG-2 AAC (AAC+)''
+    \item ``MPEG-2 AAC''
+    \item ``MPEG-4 AAC''
+    \item ``Ogg Vorbis''
+    \end{list2}
+\end{list1}
+
+\slide{gtk-internet-radio-locator Data Type Definition (DTD)}
+
+\begin{list1}
+\item gtk-internet-radio-locator 1.5.0 DTD
+\item Short description of each radio station (<station ...>).
+\item Short description of each radio station stream (<stream ...>).
+\item gtk-internet-radio-locator 1.5.0 DTD is available from 
\begin{tiny}\url{https://www.gnome.org/~ole/gtk-internet-radio-locator/gtk-internet-radio-locator-1.5.dtd}\end{tiny}
+\item gtk-internet-radio-locator 0.0.2 XML data renders as HTML using XSLT in at least Firefox 54.0 at 
\begin{tiny}\url{https://www.gnome.org/~ole/gtk-internet-radio-locator/gtk-internet-radio-locator.xml}\end{tiny}
+\end{list1}
+
+
+\slide{Current gtk-internet-radio-locator 1.5.0 DTD}
+
+\begin{tiny}
+\begin{verbatim}
+<!ATTLIST frequency uri CDATA #REQUIRED >
+<!ELEMENT description ( #PCDATA ) >
+<!ATTLIST description lang CDATA #REQUIRED >
+<!ELEMENT frequency ( #PCDATA ) >
+<!ELEMENT email ( #PCDATA ) >
+<!ELEMENT location ( lat | lon | href)* >
+<!ELEMENT internet_radio_locator ( station+ ) >
+<!ATTLIST internet_radio_locator version NMTOKEN #REQUIRED >
+<!ELEMENT station ( frequency | location | description | stream)* >
+<!ATTLIST station band CDATA #REQUIRED >
+<!ATTLIST station icon CDATA #REQUIRED >
+<!ATTLIST station id NMTOKEN #REQUIRED >
+<!ATTLIST station lang CDATA #REQUIRED >
+<!ATTLIST station name CDATA #REQUIRED >
+<!ATTLIST station rank CDATA #REQUIRED >
+<!ATTLIST station type CDATA #REQUIRED >
+<!ELEMENT stream EMPTY >
+<!ATTLIST stream bitrate NMTOKEN #REQUIRED >
+<!ATTLIST stream channels NMTOKEN #IMPLIED >
+<!ATTLIST stream codec CDATA #REQUIRED >
+<!ATTLIST stream mime CDATA #REQUIRED >
+<!ATTLIST stream samplerate NMTOKEN #REQUIRED >
+<!ATTLIST stream uri CDATA #REQUIRED >
+\end{verbatim}
+\end{tiny}
+
+\slide{Example of gtk-internet-radio-locator 0.0.2 XML data}
+
+\begin{tiny}
+\begin{verbatim}
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl"
+  href="https://www.gnome.org/~ole/gtk-internet-radio-locator/internet-radio-locator.xsl"; ?>
+<!DOCTYPE internet-radio-locator SYSTEM "internet-radio-locator-1.5.dtd">
+<internet_radio_locator version="0.0.2">
+  ...
+  <station band="88.1FM"
+           id="wmbr"
+           lang="en"
+           name="WMBR"
+           rank="1.0"
+           type="edu">
+    <frequency>88.1 FM in Cambridge, MA</frequency>
+    <location>Boston, MA</location>
+    <description lang="en">WMBR is the MIT campus radio station.
+    We broadcast on 88.1 FM between 20 and 24 hours per day, 365 days a year.
+    We transmit at 720 watts, effective radiated power from the top of the
+    Eastgate Building in Kendall Square in Cambridge, Massachusetts.
+    Our programming includes a wide range of music shows, public affairs
+    programs and eclectic audio entertainment.</description>
+    <stream mime="audio/mpeg"
+            uri="http://wmbr.org/WMBR_live_128.m3u";
+            codec="MPEG 1 Audio, Layer 3 (MP3)"
+            samplerate="44100 Hz"
+            channels="Stereo"
+            bitrate="128 kbps" />
+    <uri>http://wmbr.org/</uri>
+  </station>
+  ...
+</internet_radio_locator>
+\end{verbatim}
+\end{tiny}
+
+\slide{Screenshot}
+
+\begin{center}
+
+  \colorbox{white}{\includegraphics[width=0.6\hsize]{../data/screenshot.png}}
+
+  {\blueem Screenshot of gtk-internet-radio-locator 0.0.2}
+
+\end{center}
+
+\slide{Legal stuff}
+
+\begin{list1}
+  \item Internet Radio stations in the U.S. need a broadcast license permit from the F.C.C.
+    \begin{list2}
+    \item Read gtk-internet-radio-locator/BROADCAST for some details on radio and music licensing
+    \item \url{http://en.wikipedia.org/wiki/Broadcast_license}
+    \item \url{https://www.dnalounge.com/backstage/webcasting.html}
+    \end{list2}
+  \item Personal Radio Stations can be set up using Icecast streaming server
+    \begin{list2}
+    \item Download Icecast from \url{http://www.icecast.org/} and add your station in 
\$HOME/.internet-radio-locator/internet-radio-locator.xml
+    \end{list2}
+  \item Only Internet radio stations with broadcast permit are included in gtk-internet-radio-locator
+\end{list1}
+
+\slide{Internet Radio Fairness Act}
+
+\begin{list1}
+\item Many Internet radio stations can't afford to pay royalty fee collection agencies
+  \begin{list2}
+  \item The American Society of Composers, Authors and Publishers (ASCAP)
+  \item Broadcast Music, Inc. (BMI)
+    \item Society of European Stage Authors and Composers (SESAC)
+  \end{list2}
+  \item New bill in support of Internet Radio introduced in U.S. Congress 2002:
+  \begin{list2}
+  \item \url{https://www.eff.org/Internet-Radio-Fairness-Act-Explanation}
+  \item \url{http://en.wikipedia.org/wiki/Internet_Radio_Equality_Act}
+  \end{list2}
+\item EFF had a 2012 campaign in support of the Internet Radio Fairness Act
+  \begin{list2}
+  \item \url{https://www.eff.org/Internet-Radio-Fairness-Act-Explanation}
+  \end{list2}
+\item The IRFA bill may be reintroduced in U.S. Congress in 2019, but who knows?
+\end{list1}
+
+\slide{Email from Dr. Richard M. Stallman of FSF}
+
+\begin{list1}
+\item
+  \begin{tiny}
+\begin{verbatim}
+    From: Richard Stallman <rms gnu org>
+    Subject: Re: Internet Radio Fairness Act? (Re: It's your birthday)
+    Date: Mon, 23 Mar 2015 22:43:25 -0400
+    To: oka oka no
+
+    [[[ To any NSA and FBI agents reading my email: please consider    ]]]
+    [[[ whether defending the US Constitution against all enemies,     ]]]
+    [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
+
+      > Regarding updating the LETTER included in GNOME Internet Radio Locator,
+      > I don't know what to write/who to contact to promote Internet Radio
+      > Fairness Act again in U.S. politics, except you.
+
+    Ask people to contact their congressional representatives.
+
+    Can you write a message to the public about this?
+
+    -- 
+    Dr Richard Stallman
+    President, Free Software Foundation
+    51 Franklin St
+    Boston MA 02110
+    USA
+    www.fsf.org  www.gnu.org
+    Skype: No way! See stallman.org/skype.html.
+\end{verbatim}
+  \end{tiny}
+\end{list1}  
+
+\slide{Questions?}
+
+\begin{list1}
+\item gtk-internet-radio-locator 0.0.2 is available here and now.
+  \begin{list2}
+  \item 
\begin{tiny}\url{http://download.gnome.org/sources/gtk-internet-radio-locator/0.0/gtk-internet-radio-locator-0.0.2.tar.xz}\end{tiny}
+  \end{list2}
+\item Debian 9 stable package
+  \begin{list2}
+  \item 
\begin{tiny}\url{https://www.gnome.org/~ole/debian/gtk-internet-radio-locator_0.0.2-1_i386.deb}\end{tiny}
+  \end{list2}
+\item Fedora 28 RPM
+  \begin{list2}
+  \item 
\begin{tiny}\url{https://www.gnome.org/~ole/fedora/RPMS/x86_64/gtk-internet-radio-locator-0.0.2-1.fc26.x86_64.rpm}\end{tiny}
+  \end{list2}
+\item Ubuntu 18.04 package
+  \begin{list2}
+  \item 
\begin{tiny}\url{https://www.gnome.org/~ole/ubuntu/gtk-internet-radio-locator_0.0.2-1_amd64.deb}\end{tiny}
+  \end{list2}
+\item Source repository
+  \begin{list2}
+    \item \url{git://gitlab.gnome.org/GNOME/gtk-internet-radio-locator}
+    \item \url{https://gitlab.gnome.org/GNOME/gtk-internet-radio-locator}
+    \item \url{ssh://$USERNAME gitlab gnome org/GNOME/gtk-internet-radio-locator}
+  \end{list2}
+\end{list1}
+
+\slide{\LaTeX{} source code for this presentation}
+
+\url{https://gitlab.gnome.org/GNOME/gtk-internet-radio-locator/plain/talk/GNOME2018.tex}
+
+\slide{GNOME Wiki page}
+
+\url{https://wiki.gnome.org/Apps/InternetRadioLocator}
+
+\end{document}
diff --git a/talk/foils.cls b/talk/foils.cls
new file mode 100644
index 0000000..c7b0123
--- /dev/null
+++ b/talk/foils.cls
@@ -0,0 +1,837 @@
+%%
+%% This is file `foils.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% foiltex.dtx  (with options: `package')
+%% ********************************************************************
+%% Copyright (C) 1995,1997,1998,2002,2008 IBM Corporation
+%% This file is part of the FoilTeX package.   Use of this is governed
+%% by explicit restrictions.  These can be found in the header of the
+%% foiltex.ins file.
+%% 
+%% Questions, comments or suggestions concerning this program can be
+%% sent to
+%%     James (Jim) Hafner
+%%     IBM Research Division
+%%     Almaden Research Center, K56-B2
+%%     650 Harry Road
+%%     San Jose, CA 95120-6099
+%%     email: hafner almaden ibm com
+%% ********************************************************************
+%%
+%% These files are updated versions of the FoilTeX package for use with
+%% the new LaTeX2e.  There are many enhancements and a few bugs
+%% have been fixed.  Undoubtedly there are many more.  Contact
+%% the author if you find any bugs or have suggestions for improvement
+%% of this suite of files.
+%% ********************************************************************
+\def\foiltexdate{2008/01/28}
+\def\foiltexversion{2.1.4b}
+\NeedsTeXFormat{LaTeX2e}[1996/12/01]
+\ProvidesClass{foils}
+       [\foiltexdate\space v\foiltexversion\space
+        FoilTeX Class File, Copyright IBM 1995,1997,1998,2002,2008]
+%% \CharacterTable
+%%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%%   Digits        \0\1\2\3\4\5\6\7\8\9
+%%   Exclamation   \!     Double quote  \"     Hash (number) \#
+%%   Dollar        \$     Percent       \%     Ampersand     \&
+%%   Acute accent  \'     Left paren    \(     Right paren   \)
+%%   Asterisk      \*     Plus          \+     Comma         \,
+%%   Minus         \-     Point         \.     Solidus       \/
+%%   Colon         \:     Semicolon     \;     Less than     \<
+%%   Equals        \=     Greater than  \>     Question mark \?
+%%   Commercial at \@     Left bracket  \[     Backslash     \\
+%%   Right bracket \]     Circumflex    \^     Underscore    \_
+%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
+%%   Right brace   \}     Tilde         \~}
+%%
+\newif\if@openbib \@openbibfalse
+\newif\if@landscape \@landscapefalse
+\newif\if@dvips \@dvipsfalse
+\newif\if@dvipsone \@dvipsonefalse
+\newif\if@vtex \@vtexfalse
+\ifx\VTeXversion\undefined\else\@vtextrue\fi % autodetect
+\newif\if@header@rule \@header@rulefalse
+\newif\if@footer@rule \@footer@rulefalse
+\newif\if@pdftex \@pdftexfalse
+\newif\if@magscaleECfonts \@magscaleECfontsfalse
+\newif\if@useDCfonts \@useDCfontsfalse
+\DeclareOption{a4paper}
+   {\setlength\paperheight {297mm}%
+    \setlength\paperwidth  {210mm}}
+\DeclareOption{letterpaper}
+   {\setlength\paperheight {11in}%
+    \setlength\paperwidth  {8.5in}}
+\DeclareOption{ledgerpaper}
+   {\setlength\paperheight {11in}%
+    \setlength\paperwidth  {7.33in}}
+\DeclareOption{legalpaper}
+   {\setlength\paperheight {14in}%
+    \setlength\paperwidth  {8.5in}}
+\DeclareOption{a3paper}
+   {\setlength\paperheight {420mm}%
+    \setlength\paperwidth  {297mm}}
+\DeclareOption{a2paper}
+   {\setlength\paperheight {594mm}%
+    \setlength\paperwidth  {420mm}}
+\DeclareOption{a1paper}
+   {\setlength\paperheight {840mm}%
+    \setlength\paperwidth  {594mm}}
+\DeclareOption{35mmSlide}
+   {\setlength\paperheight {11in}%
+    \setlength\paperwidth  {7.33in}}
+\DeclareOption{Screen4to3}
+   {\setlength\paperwidth {297mm}%
+    \setlength\paperheight  {0.75\paperwidth}}
+\DeclareOption{Screen16to9}
+   {\setlength\paperwidth {297mm}%
+    \setlength\paperheight  {0.5625\paperwidth}}
+\DeclareOption{landscape}
+   {\setlength\@tempdima   {\paperheight}%
+    \setlength\paperheight {\paperwidth}%
+    \setlength\paperwidth  {\@tempdima}%
+    \@landscapetrue}
+\newcommand\@ptsize{}
+\DeclareOption{shortform}{\renewcommand\@ptsize{shrt}}
+\DeclareOption{17pt}{\renewcommand\@ptsize{17}}
+\DeclareOption{20pt}{\renewcommand\@ptsize{20}}
+\DeclareOption{25pt}{\renewcommand\@ptsize{25}}
+\DeclareOption{30pt}{\renewcommand\@ptsize{30}}
+\DeclareOption{leqno}{\input{leqno.clo}}
+\DeclareOption{fleqn}{\input{fleqn.clo}}
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+\DeclareOption{openbib}{\@openbibtrue}
+\DeclareOption{headrule}{\@header@ruletrue}
+\DeclareOption{footrule}{\@footer@ruletrue}
+\DeclareOption{dvips}{\@dvipstrue}
+\DeclareOption{dvipsone}{\@dvipsonetrue}
+\DeclareOption{vtex}{\@vtextrue}
+\DeclareOption{magscalefonts}{\@magscaleECfontstrue}
+\DeclareOption{useDCfonts}{\@useDCfontstrue}
+\DeclareOption{a5paper}{%
+    \ClassWarningNoLine{FoilTeX}{No 'a5paper' option for foils.}}
+\DeclareOption{b5paper}{%
+    \ClassWarningNoLine{FoilTeX}{No 'b5paper' option for foils.}}
+\DeclareOption{executivepaper}{%
+    \ClassWarningNoLine{FoilTeX}{No 'executivepaper' option for foils.}}
+\DeclareOption{10pt}{%
+    \ClassWarningNoLine{FoilTeX}{No '10pt' foils option, try shortform,
+    17pt, 20pt, 25pt or 30pt (defaulting to 20pt).}}
+\DeclareOption{11pt}{%
+    \ClassWarningNoLine{FoilTeX}{No '11pt' foils option, try shortform,
+    17pt, 20pt, 25pt or 30pt (defaulting to 20pt).}}
+\DeclareOption{12pt}{%
+    \ClassWarningNoLine{FoilTeX}{No '12pt' foils option, try shortform,
+    17pt, 20pt, 25pt or 30pt (defaulting to 20pt).}}
+\DeclareOption{oneside}{}
+\DeclareOption{twoside}{%
+    \ClassWarningNoLine{FoilTeX}{No 'twoside' option for foils.}}
+\DeclareOption{openright}{%
+    \ClassWarningNoLine{FoilTeX}{No 'openright' option for foils.}}
+\DeclareOption{openany}{%
+    \ClassWarningNoLine{FoilTeX}{No 'openany' option for foils.}}
+\DeclareOption{titlepage}{}
+\DeclareOption{notitlepage}{%
+    \ClassWarningNoLine{FoilTeX}{No 'notitlepage' option for foils.}}
+\DeclareOption{onecolumn}{}
+\DeclareOption{twocolumn}{%
+    \ClassWarningNoLine{FoilTeX}{No 'twocolumn' layout for foils.}}
+\ExecuteOptions{letterpaper,20pt,final}
+\InputIfFileExists{foiltex.cfg}{}{}
+\ProcessOptions
+\ifx\pdfoutput\undefined
+\else
+  \ifx\pdfoutput\relax
+  \else
+    \ifcase\pdfoutput
+    \else
+      \@pdftextrue
+    \fi
+  \fi
+\fi
+\if@vtex
+  \if@dvips
+  \ClassWarningNoLine{FoilTeX}{%
+      Option 'dvips' is ignored when running vtex}
+  \fi
+  \if@dvipsone
+  \ClassWarningNoLine{FoilTeX}{%
+      Option 'dvipsone' is ignored when running vtex}
+  \fi
+  \@dvipsfalse\@dvipsonefalse
+\fi
+\if@pdftex
+  \if@dvips
+  \ClassWarningNoLine{FoilTeX}{%
+      Option 'dvips' is ignored when running pdflatex}
+  \fi
+  \if@dvipsone
+  \ClassWarningNoLine{FoilTeX}{%
+      Option 'dvipsone' is ignored when running pdflatex}
+  \fi
+  \@dvipsfalse\@dvipsonefalse
+\fi
+\if@landscape
+  \if@dvips\AtBeginDvi{\special{! /landplus90 true store}}\else%
+  \if@dvipsone{\special{landscape}}%
+  \else\if@vtex\ifnum\OpMode=2{%
+     \immediate\special{landscape}%
+     \AtBeginDocument{\mediaheight=\paperwidth\mediawidth=\paperheight}%
+  }\fi
+  \fi\fi\fi
+\fi
+\InputIfFileExists{fltfonts.cfg}{}{\input{fltfonts.def}}
+\input{foil\@ptsize.clo}
+\DeclareRobustCommand\FoilTeX{{\normalfont%
+   {\sffamily Foil}\kern-.03em{\rmfamily\TeX}}}
+\renewcommand\_{\leavevmode\kern.06em\vbox{\hrule width.4em height.12ex}}
+\renewcommand\footnoterule{\kern-3\p@\hrule width.4\textwidth\kern2.6\p@}
+\newcommand\@makefntext[1]{\parindent 1em\noindent
+ \hbox to 1.8em{\hss\@makefnmark}#1}
+\def\@makefnmark{\hbox{$^{\mathsf{\@thefnmark}}\m@th$}}
+\let\@oldmarginpar\marginpar
+\def\@marginragged{\if@reversemargin\raggedleft\else\raggedright\fi}
+\def\@foilmarginpar{\@ifnextchar[{\@foilmarginparRL}{\@foilmarginparR}}
+\def\@foilmarginparRL[#1]#2{%
+  \@oldmarginpar[{\@marginragged #1\par}]{{\@marginragged #2\par}}}
+\def\@foilmarginparR#1{\@oldmarginpar{\@marginragged #1\par}}
+\let\marginpar\@foilmarginpar
+\def\Black#1{#1}
+\def\globalColor#1{#1}
+\newcommand\today{\ifcase\month\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
+ \space\number\day, \number\year}
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{1}
+\setlength\parskip{18\p@ \@plus 4\p@ \@minus 4\p@}
+\if@compatibility
+ \setlength\parindent{15\p@}
+ \setlength\jot{3\p@}
+\else
+ \setlength\parindent{30\p@}
+ \setlength\jot{10\p@}
+\fi
+\righthyphenmin=100
+\lefthyphenmin=100
+\def\@eqnnum{\hbox{\reset@font\sffamily (\theequation)}}
+\renewcommand\theequation{\arabic{equation}}
+\if@compatibility
+  \newenvironment{titlepage}{%
+    \@restonecolfalse \newpage \thispagestyle{empty}
+      \setcounter{page}{0}}{\newpage}
+ \newcommand\@pnumwidth{1.55em}
+ \newcommand\@tocrmarg {2.55em}
+ \newcommand\@dotsep{4.5}
+\fi
+\def\sloppyfoils{\tolerance 9000 \hfuzz 2\p@ \vfuzz 2\p@ \hbadness 2000}
+\sloppyfoils
+\setlength\leftmargini{25\p@}
+\setlength\leftmarginii{22\p@}
+\setlength\leftmarginiii{18.7\p@}
+\setlength\leftmarginiv{17\p@}
+\setlength\leftmarginv{10\p@}
+\setlength\leftmarginvi{10\p@}
+\setlength\leftmargin\leftmargini
+\if@compatibility
+  \setlength\labelwidth\leftmargini\advance\labelwidth-\labelsep
+  \setlength\labelsep{.5em}
+\else
+  \setlength\labelsep{10\p@}
+  \setlength\labelwidth\leftmargini\advance\labelwidth-\labelsep
+\fi
+\setlength\partopsep{2\p@ \@plus 1\p@ \@minus 1\p@}
+\newcommand\@listIa{\leftmargin\leftmargini
+\topsep 14\p@ \@plus 2\p@ \@minus 4\p@
+\parsep 14\p@ \@plus 4\p@ \@minus 4\p@
+\itemsep 14\p@ \@plus 4\p@ \@minus 2\p@}
+\newcommand\@listIb{\leftmargin\leftmargini
+\topsep 8\p@ \@plus 2\p@ \@minus 2\p@
+\parsep 2\p@ \@plus 1\p@ \@minus 1\p@
+\itemsep \parsep}
+\newcommand\@listIc{\leftmargin\leftmargini
+\topsep 6\p@ \@plus 1\p@ \@minus 1\p@
+\parsep 2\p@ \@plus 1\p@ \@minus 1\p@
+\itemsep \parsep}
+\newcommand\@listId{\leftmargin\leftmargini
+\topsep 4\p@ \@plus 1\p@ \@minus 1\p@
+\parsep 2\p@ \@plus 1\p@ \@minus 1\p@
+\itemsep \parsep}
+\newcommand\@listii{\leftmargin\leftmarginii
+ \labelwidth\leftmarginii\advance\labelwidth-\labelsep
+ \topsep \z@
+ \parsep \z@
+ \itemsep \parsep}
+\newcommand\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
+ \partopsep 1\p@ \@plus 0\p@ \@minus 1\p@
+ \topsep \z@
+ \parsep \z@
+ \itemsep \topsep}
+\newcommand\@listiv{\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
+\newcommand\@listv{\leftmargin\leftmarginv
+ \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
+\newcommand\@listvi{\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
+\normalsize
+\if@compatibility
+ \let\zerolistvertdimens\relax
+\else
+ \def\zerolistvertdimens{\parskip0pt\topsep0pt\partopsep0pt%
+    \parsep0pt\itemsep0pt}
+\fi
+\if@compatibility
+ \def\@item[#1]{%
+   \if@noparitem
+     \@donoparitem
+   \else
+     \if@inlabel \indent \par \fi
+     \ifhmode \unskip\unskip \par \fi
+     \if@newlist
+       \if@nobreak
+         \@nbitem
+       \else
+         \addpenalty\@beginparpenalty
+         \addvspace\@topsep \addvspace{-\parskip}
+       \fi
+     \else
+       \addpenalty\@itempenalty \addvspace\itemsep
+     \fi
+     \global\@inlabeltrue
+   \fi
+ \everypar{\global\@minipagefalse\global\@newlistfalse
+   \if@inlabel
+     \global\@inlabelfalse \hskip -\parindent \box\@labels \penalty\z@
+   \fi
+   \everypar{}}
+ \global\@nobreakfalse
+ \if@noitemarg \@noitemargfalse
+   \if@nmbrlist \refstepcounter{\@listctr}\fi
+ \fi
+ \sbox\@tempboxa{\globalColor{\makelabel{#1}}} \global\setbox\@labels
+ \hbox{\unhbox\@labels \hskip \itemindent
+   \hskip -\labelwidth \hskip -\labelsep
+   \ifdim
+     \wd\@tempboxa >\labelwidth \box\@tempboxa
+   \else
+     \hbox to\labelwidth {\unhbox\@tempboxa}
+   \fi
+   \hskip \labelsep}
+ \ignorespaces
+ }
+\fi
+\renewcommand\theenumi{\arabic{enumi}}
+\renewcommand\theenumii{\alph{enumii}}
+\renewcommand\theenumiii{\roman{enumiii}}
+\renewcommand\theenumiv{\Alph{enumiv}}
+\renewcommand\p@enumii{\theenumi}
+\renewcommand\p@enumiii{\theenumi(\theenumii)}
+\renewcommand\p@enumiv{\p@enumiii\theenumiii}
+\newcommand\labelenumi{\theenumi.}
+\newcommand\labelenumii{(\theenumii)}
+\newcommand\labelenumiii{\theenumiii.}
+\newcommand\labelenumiv{\theenumiv.}
+\newcommand\labelitemi{$\m@th\bullet$}
+\newcommand\labelitemii{{\normalfont\bfseries --}}
+\newcommand\labelitemiii{$\m@th\ast$}
+\newcommand\labelitemiv{$\m@th\cdot$}
+\newcommand\descriptionlabel[1]{\hspace\labelsep \normalfont\bfseries #1}
+\newenvironment{description}{\list{}{\labelwidth\z@
+  \itemindent-\leftmargin \let\makelabel\descriptionlabel}}{\endlist}
+\newenvironment{verse}{\let\\=\@centercr
+ \list{}{\itemsep\z@ \itemindent -1.5em\listparindent \itemindent
+ \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}{\endlist}
+\newenvironment{quotation}{\list{}{\listparindent 1.5em
+ \itemindent\listparindent
+ \rightmargin\leftmargin \parsep 0\p@ \@plus 1\p@}\item[]}{\endlist}
+\newenvironment{quote}{\list{}{\rightmargin\leftmargin}\item[]}{\endlist}
+\setlength\oddsidemargin{0\p@}
+\setlength\evensidemargin{0\p@}
+\setlength\topmargin{0\p@}
+\setlength\headsep{14\p@}
+\setlength\headheight{15\p@}
+\if@compatibility
+ \setlength\footheight{25\p@}
+ \setlength\footskip{45\p@}
+ \setlength\@maxsep{20\p@}
+ \setlength\@dblmaxsep{20\p@}
+\else
+ \newdimen\head@footskip
+ \setlength\head@footskip{1in}
+ \setlength\footskip{\head@footskip}
+ \addtolength\footskip{-\headsep}
+ \addtolength\footskip{-\headheight}
+\fi
+\setlength\footnotesep{10\p@}
+\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
+\skip\@mpfootins = \skip\footins
+\setlength\marginparwidth{54\p@}
+\setlength\marginparsep{10\p@}
+\setlength\marginparpush{5\p@}
+\if@compatibility
+ \setlength\textheight{7.6in}
+ \setlength\textwidth{6.5in}
+ \let\@rotdimens\relax
+ \let\@defaultdimens\relax
+\else
+ \newdimen\@foilheight
+ \newdimen\@foilwidth
+ \setlength\textheight{\paperheight}
+ \addtolength\textheight{-2in}
+ \addtolength\textheight{-\head@footskip}
+ \setlength\textwidth{\paperwidth}
+ \addtolength\textwidth{-2in}
+ \def\setp@gelayoutdimens{%
+  \setlength\head@footskip{\footskip}
+  \addtolength\head@footskip{\headsep}
+  \addtolength\head@footskip{\headheight}
+  \setlength\@foilheight{\textheight}
+  \addtolength\@foilheight{\head@footskip}
+  \setlength\@foilwidth{\textwidth}
+  \def\@rotdimens{\textheight\@foilwidth \textwidth\@foilheight
+        \addtolength\textheight{-\head@footskip}
+        \vsize\textheight \hsize\textwidth \linewidth\textwidth
+        \columnwidth\textwidth \@colroom\textheight \@colht\textheight}
+  \def\@rotdimens@pdf{%
+        \setlength{\pdfpagewidth}{\strip@pt\paperheight truept}%
+        \setlength{\pdfpageheight}{\strip@pt\paperwidth truept}}
+  \def\@defaultdimens{\textheight\@foilheight \textwidth\@foilwidth
+        \addtolength\textheight{-\head@footskip}
+        \vsize\textheight \hsize\textwidth \linewidth\textwidth
+        \columnwidth\textwidth \@colroom\textheight \@colht\textheight}
+   \def\@defaultdimens@pdf{%
+        \setlength{\pdfpagewidth}{\strip@pt\paperwidth truept}%
+        \setlength{\pdfpageheight}{\strip@pt\paperheight truept}}
+   \@defaultdimens
+   \if@pdftex\@defaultdimens@pdf\fi}   % end of \def\setp@gelayoutdimens
+\fi
+\AtBeginDocument{\if@compatibility\else\setp@gelayoutdimens\fi
+  \if@dvips
+    \AtBeginDvi{\special{%
+    papersize=\the\paperwidth,\the\paperheight}}%
+  \fi
+  \@ifpackageloaded{hyperref}{%
+    \@ifpackagelater{hyperref}{2007/10/29}{}{%
+      \def\@begindvi{\foil@begindvi \unvbox \@begindvibox
+        \ifHy@pageanchor \@hyperfixhead
+           \gdef\@begindvi{\foil@begindvi\@hyperfixhead}%
+        \else
+           \gdef\@begindvi{\foil@begindvi\HyPL@EveryPage}%
+        \fi}}}{}%
+}
+\@lowpenalty   51
+\@medpenalty  151
+\@highpenalty 301
+\@beginparpenalty -\@lowpenalty
+\@endparpenalty -\@lowpenalty
+\@itempenalty -\@lowpenalty
+\setlength\arraycolsep{10\p@}
+\setlength\tabcolsep{12\p@}
+\setlength\arrayrulewidth{1\p@}
+\setlength\doublerulesep{3\p@}
+\setlength\tabbingsep\labelsep
+\if@compatibility
+ \setlength\fboxsep{6\p@}
+\else
+ \setlength\fboxsep{10\p@}
+\fi
+\setlength\fboxrule{1\p@}
+\newlength\abovetitleskip
+\newlength\titleauthorskip
+\newlength\authorauthorskip
+\newlength\authordateskip
+\newlength\dateabstractskip
+\setlength\abovetitleskip{2em}
+\setlength\titleauthorskip{1.5em}
+\setlength\authorauthorskip{.5em}
+\setlength\authordateskip{1em}
+\setlength\dateabstractskip{1em}
+\def\maketitle{\par
+  \begingroup
+    \setcounter{page}{0}
+    \def\thefootnote{\fnsymbol{footnote}} \newpage
+    \@maketitle
+    \thispagestyle{foilheadings}
+    \@thanks
+  \endgroup
+  \setcounter{footnote}{0}
+  \let\maketitle\relax \let\@maketitle\relax
+  \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax%
+}
+\def\@maketitle{\newpage
+  \zerolistvertdimens
+  \if@compatibility\else
+    \advance\abovetitleskip -\baselineskip % \null adds this space
+  \fi
+  \null\vskip\abovetitleskip
+  \begin{center}
+     {\Large\bfseries \@title \par}
+     \vskip\titleauthorskip
+     {\lineskip \authorauthorskip
+       \begin{tabular}[t]{c}\@author\end{tabular}
+       \par}
+     \vskip\authordateskip {\@date}
+  \end{center}
+  \par\vfil
+}
+\newcommand\abstractname{Abstract}
+\newenvironment{abstract}{%
+  \if@compatibility
+    \dateabstractskip\parskip
+    \advance\dateabstractskip\topsep
+    \advance\dateabstractskip\baselineskip
+  \fi
+  \vskip\dateabstractskip
+  \centerline{\reset@font\bfseries\abstractname}
+  \if@compatibility\vspace{-.5em}\vspace{0\p@}\fi
+  \list{}{\listparindent 1.5em
+          \itemindent\listparindent \rightmargin\leftmargin
+          \zerolistvertdimens
+         }\item[]%
+  }{\endlist\vfill}
+\newcommand\leftheader[1]{\gdef\@leftheader{#1}}
+\newcommand\rightheader[1]{\gdef\@rightheader{#1}}
+\newcommand\rightfooter[1]{\gdef\@rightfooter{#1}}
+\leftheader{}
+\rightheader{}
+\rightfooter{\quad\textsf{\thepage}}
+\newif\ifLogo \Logotrue
+\newcommand\LogoOff{\Logofalse}
+\newcommand\LogoOn{\Logotrue}
+\newcommand\Restriction[1]{\gdef\@Restriction{#1}}
+\Restriction{}
+\newcommand\MyLogo[1]{\gdef\@MyLogo{\ifLogo{#1}\else\fi}}
+\MyLogo{-- Typeset by \FoilTeX\ --}
+\newsavebox\@tempfootbox
+\newdimen\@tempfootht
+\newcommand\ps@foilheadings{\let\@mkboth\@gobbletwo
+  \def\@oddhead{%
+    \ifnum \c@page>0
+      {\Black{%
+      \if@header@rule\hbox to\z@{\rule[-5\p@]{\textwidth}{1\p@}\hss}\fi
+      \reset@font\tiny
+      \@leftheader\hfil\@rightheader}}%
+    \else
+      \hfill
+    \fi}%
+  \def\@oddfoot{%
+    \ifnum \c@page>0
+      {\Black{%
+      \sbox\@tempfootbox{\tiny\@MyLogo\ \@Restriction\hfil\@rightfooter}%
+      \@tempfootht\ht\@tempfootbox
+      \advance\@tempfootht 5.66666\p@
+      \if@footer@rule%
+      \hbox to\z@{\rule[\@tempfootht]{\textwidth}{1\p@}\hss}%
+      \fi%
+      \reset@font\tiny
+     \@MyLogo\ \@Restriction\hfil\@rightfooter}}%
+    \else
+      {\Black{\hfil\reset@font\footnotesize%
+       \@MyLogo\ \@Restriction\hfil}}%
+    \fi}%
+  \let\@evenhead\@oddhead%
+  \let\@evenfoot\@oddfoot%
+}
+\ps@foilheadings
+\pagenumbering{arabic}
+\onecolumn
+\mark{{}{}}
+\newcommand\refname{References}
+\newdimen\bibindent
+\setlength\bibindent{1.5em}
+\newcommand\newblock{}
+\newenvironment{thebibliography}[1]{
+ \vskip 3.5ex \@plus -1ex \@minus -.2ex
+ \noindent{\large\bfseries\refname}
+ \vskip 2.3ex \@plus .2ex
+ \list{\@biblabel{\arabic{enumiv}}}%
+ {\settowidth\labelwidth{\@biblabel{#1}}%
+ \leftmargin\labelwidth
+ \advance\leftmargin\labelsep
+ \if@openbib
+   \advance\leftmargin\bibindent
+   \itemindent -\bibindent
+   \listparindent \itemindent
+   \parsep \z@
+ \fi
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty
+ \renewcommand\theenumiv{\arabic{enumiv}}}
+ \if@openbib
+   \renewcommand\newblock{\par}
+ \else
+   \renewcommand\newblock{\hskip .11em \@plus .33em \@minus -.07em}
+ \fi
+ \sloppy\clubpenalty4000\widowpenalty4000%
+ \sfcode`\.=\@m\relax}%
+ {\def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}%
+ \endlist}
+\newlength\abovecaptionskip
+\newlength\belowcaptionskip
+\newlength\@captionwidth
+\newlength\captionwidth
+\newcommand\captionfraction{1.0}
+\newlength\abovefloatskip
+\setlength\abovecaptionskip{15\p@ \@plus 5\p@ \@minus 5\p@}
+\setlength\belowcaptionskip{0\p@}
+\setlength\captionwidth\z@
+\setlength\abovefloatskip{20\p@ \@plus 5\p@ \@minus 10\p@}
+\providecommand*\ext@table{lot}%
+\providecommand*\ext@figure{lof}%
+\newif\if@starmode\@starmodefalse
+\newcommand\@makecaption[2]{%
+ \ifdim\captionwidth>\z@
+   \ifdim\captionwidth>\hsize
+     \setlength\@captionwidth\hsize
+   \else
+     \setlength\@captionwidth\captionwidth
+   \fi
+ \else
+   \setlength\@captionwidth{\captionfraction\hsize}
+ \fi
+ \vskip \abovecaptionskip
+ \if@starmode\sbox\@tempboxa{#2}\else\sbox\@tempboxa{#1: #2}\fi%
+ \ifdim \wd\@tempboxa >\@captionwidth
+   \centering\parbox[t]{\@captionwidth}{\unhbox\@tempboxa\par}
+ \else
+   \hbox to\hsize{\hfil\box\@tempboxa\hfil}
+ \fi
+ \vskip\belowcaptionskip}
+\long\def\@caption#1[#2]#3{\par \begingroup \@parboxrestore \normalsize
+ \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
+ \endgroup}
+\def\caption{\if@starmode\else\refstepcounter\@captype\fi%
+ \@dblarg{\@caption\@captype}}
+\def\@xfloat#1[#2]{%
+   \def \@captype {#1}%
+   \ifhmode \@bsphack \fi \vskip\abovefloatskip
+   \vbox\bgroup \color@begingroup \normalcolor
+   \hsize\columnwidth \@parboxrestore
+   \if@nobreak
+     \def\outer@nobreak{\global\@nobreaktrue}\global\@nobreakfalse
+   \fi}
+\def\end@nonfloat{\par\vskip\z@skip
+   \color@endgroup
+   \outer@nobreak
+   \egroup}
+\newcommand\newnonfloat[2]{%
+  \expandafter\newcommand\csname#1name\endcsname{#2}%
+  \expandafter\newcounter{#1}%
+  \expandafter\renewcommand\csname the#1\endcsname
+        {\@arabic\csname c@#1\endcsname}%
+  \expandafter\newcommand\csname fnum@#1\endcsname
+    {\csname#1name\endcsname~\csname the#1\endcsname}%
+  \expandafter\newenvironment{#1}{\@float{#1}}{\end@nonfloat}%
+  \expandafter\newenvironment{#1*}{\@float{#1}\@starmodetrue}%
+                                  {\end@nonfloat}%
+}
+\newnonfloat{table}{Table}
+\newnonfloat{figure}{Figure}
+\newlength\foilheadskip
+\if@compatibility
+  \setlength\foilheadskip{.25in}
+\else
+  \setlength\foilheadskip{18\p@ \@plus 0\p@ \@minus 18\p@}
+\fi
+\if@dvips
+\def\foil@rot@start{\special{ps:
+  0 \strip@pt\@foilheight\space 72.27 div Resolution mul translate
+  90 neg rotate}}%
+\else\if@dvipsone
+\def\foil@rot@start{\special{ps:
+  0 \strip@pt\@foilheight\space 72.27 mul 65536 mul rmoveto
+  90 rotate}}%
+\else\if@vtex
+\def\foil@rot@start{\special{pS:
+  \strip@pt\@foilwidth\space 72.27 div 72 mul 0 translate
+  90 neg rotate}}%
+\else\if@pdftex
+\def\foil@rot@start{}%
+\fi\fi\fi\fi
+\newif\ifcur@rot@state
+\newif\ifnew@rot@state
+\newcommand\foilhead{\new@rot@statefalse%        set state for the page
+   \@ifnextchar[{\@foilhead}{\@foilhead[0\p@]}}
+\if@compatibility
+\else
+  \newcommand\rotatefoilhead{%
+    \if@dvips
+      \new@rot@statetrue
+    \else\if@dvipsone
+      \new@rot@statetrue
+    \else\if@vtex
+      \new@rot@statetrue
+    \else\if@pdftex
+      \new@rot@statetrue
+    \else
+      \ClassWarningNoLine{FoilTex}{%
+       Without the 'dvips', 'dvipsone' or 'vtex' option \MessageBreak
+       (when running LaTeX), rotation is not supported}
+      \new@rot@statefalse
+    \fi\fi\fi\fi
+    \@ifnextchar[{\@foilhead}{\@foilhead[0\p@]}}
+\fi
+\def\@foilhead[#1]#2{\vfill\eject
+  \ifnew@rot@state
+    \cur@rot@statetrue\@rotdimens
+    \if@pdftex\@rotdimens@pdf\fi % add this if pdftex
+  \else
+    \cur@rot@statefalse\@defaultdimens
+    \if@pdftex\@defaultdimens@pdf\fi % add this if pdftex
+  \fi
+  {\color@begingroup\normalcolor
+   \reset@font\large\bfseries\centering#2\par\null\color@endgroup}%
+  \advance\foilheadskip by #1 \vspace{\foilheadskip}
+  \advance\foilheadskip by -#1}
+ %\let\old@shipoutsetup\@shipoutsetup
+ %\def\@shipoutsetup{%
+ %  \ifcur@rot@state\foil@rot@start\fi
+ %  \old@shipoutsetup}
+\CheckCommand*\@begindvi{%
+  \unvbox \@begindvibox
+ \global\let \@begindvi \@empty}
+ % the old definitions
+ %\def \@begindvi{%
+ %  \ifcur@rot@state\foil@rot@start\fi
+ %  \unvbox \@begindvibox
+ % %\global\let \@begindvi \@empty
+ %  \gdef\@begindvi{\ifcur@rot@state\foil@rot@start\fi\@empty}
+ %}
+\def\foil@begindvi{%
+  \ifcur@rot@state\foil@rot@start\fi
+}
+\def\@begindvi{%
+  \foil@begindvi
+  \unvbox \@begindvibox
+  \gdef\@begindvi{\foil@begindvi\@empty}
+}
+ %\CheckCommand*\@outputpage{%
+ %\begingroup
+ % \set@typeset@protect
+ % \@shipoutsetup
+ % \let \protect \noexpand
+ % \shipout \vbox{%
+ %   \set@typeset@protect
+ %   \aftergroup\set@typeset@protect
+ %   \@begindvi
+ %   \vskip \topmargin
+ %   \moveright\@themargin \vbox {%
+ %     \setbox\@tempboxa \vbox to\headheight{%
+ %       \vfil
+ %       \color@hbox
+ %         \normalcolor
+ %         \hb@xt@\textwidth {%
+ %           \let \label \@gobble
+ %           \let \index \@gobble
+ %           \let \glossary \@gobble %% 21 Jun 91
+ %           \@thehead
+ %           }%
+ %       \color@endbox
+ %       }%                        %% 22 Feb 87
+ %     \dp\@tempboxa \z@
+ %     \box\@tempboxa
+ %     \vskip \headsep
+ %     \box\@outputbox
+ %     \baselineskip \footskip
+ %     \color@hbox
+ %       \normalcolor
+ %       \hb@xt@\textwidth{%
+ %         \let \label \@gobble
+ %         \let \index \@gobble      %% 22 Feb 87
+ %         \let \glossary \@gobble   %% 21 Jun 91
+ %         \@thefoot
+ %         }%
+ %     \color@endbox
+ %     }%
+ %   }%
+ % \endgroup
+ % \global \@colht \textheight
+ % \stepcounter{page}%
+ % \let\firstmark\botmark
+ %}
+ %\def\@outputpage{%
+ %\begingroup
+ % \set@typeset@protect
+ % \@shipoutsetup
+ % \let \protect \noexpand
+ % \shipout \vbox{%
+ %   \set@typeset@protect
+ %  \aftergroup\set@typeset@protect
+ %   \@begindvi
+ % \ifcur@rot@state\foil@rot@start\fi  %% added by for foils.cls
+ %   \vskip \topmargin
+ %   \moveright\@themargin \vbox {%
+ %     \setbox\@tempboxa \vbox to\headheight{%
+ %       \vfil
+ %       \color@hbox
+ %         \normalcolor
+ %         \hb@xt@\textwidth {%
+ %           \let \label \@gobble
+ %           \let \index \@gobble
+ %           \let \glossary \@gobble %% 21 Jun 91
+ %           \@thehead
+ %           }%
+ %       \color@endbox
+ %       }%                        %% 22 Feb 87
+ %     \dp\@tempboxa \z@
+ %     \box\@tempboxa
+ %     \vskip \headsep
+ %     \box\@outputbox
+ %     \baselineskip \footskip
+ %     \color@hbox
+ %       \normalcolor
+ %       \hb@xt@\textwidth{%
+ %         \let \label \@gobble
+ %         \let \index \@gobble      %% 22 Feb 87
+ %         \let \glossary \@gobble   %% 21 Jun 91
+ %         \@thefoot
+ %         }%
+ %     \color@endbox
+ %     }%
+ %   }%
+ % \endgroup
+ % \global \@colht \textheight
+ % \stepcounter{page}%
+ % \let\firstmark\botmark
+ %}
+\def\newtheorem#1{\@ifnextchar[{\@Othm{#1}}{\@Nthm{#1}}}
+\def\@Othm#1[#2]#3{\@Sthm{#1}{#3}\@othm{#1}[#2]{#3}}
+\def\@Nthm#1#2{\@Sthm{#1}{#2}\@nthm{#1}{#2}}
+\def\@Sthm#1#2{{{\global\@namedef{#1*}{\@starthm{#2}}
+   \global\@namedef{end#1*}{\@endtheorem}}}}
+\def\@starthm#1{\@ifnextchar[{\@ystarthm{#1}}{\@xstarthm{#1}}}
+\def\@xstarthm#1{\@beginstartheorem{#1} \ignorespaces}
+\def\@ystarthm#1[#2]{\@opargbeginstartheorem{#1}{#2}\ignorespaces}
+\def\@begintheorem#1#2{\trivlist
+      \item[\hskip\labelsep{\bfseries #1\ #2. }]\slshape}
+\def\@opargbegintheorem#1#2#3{\trivlist
+      \item[\hskip\labelsep{\bfseries #1\ #2.\ [#3] }]\slshape}
+\def\@beginstartheorem#1{\trivlist
+      \item[\hskip\labelsep{\bfseries #1. }]\slshape}
+\def\@opargbeginstartheorem#1#2{\trivlist
+      \item[\hskip\labelsep{\bfseries #1.\ [#2] }]\slshape}
+\newtheorem{Theorem}{Theorem}
+\newtheorem{Lemma}{Lemma}
+\newtheorem{Corollary}{Corollary}
+\newtheorem{Proposition}{Proposition}
+\newtheorem{Definition}{Definition}
+\newenvironment{Proof}{\begin{trivlist}\item[] {\bfseries Proof.}}{%
+  \ifhmode\nolinebreak[4]~$\ProofBox$\else$\ProofBox$\fi \end{trivlist}}
+\DeclareMathSymbol\ProofBox{0}{flasy}{"32}
+\def\bm#1{\mathpalette\bmstyle{#1}}
+\def\bmstyle#1#2{\mbox{\boldmath$#1#2$}}
+\@namedef{boldequation*}{\boldmath$$}
+\@namedef{endboldequation*}{$$\global\@ignoretrue\unboldmath}
+\def\boldequation{\boldmath$$\refstepcounter{equation}}
+\def\endboldequation{\eqno\@eqnnum%
+    $$\global\@ignoretrue\unboldmath}
+\endinput
+%%
+%% End of file `foils.cls'.
diff --git a/talk/mdwslides.sty b/talk/mdwslides.sty
new file mode 100644
index 0000000..cff42e7
--- /dev/null
+++ b/talk/mdwslides.sty
@@ -0,0 +1,122 @@
+% mdwslides.sty by Matt Welsh <mdw cs berkeley edu>
+% Last updated 22 Nov 00
+%
+% This is a LaTeX package with a set of helper routines for generating
+% PDF-based presentations with pdflatex and the foiltex macros. To use 
+% it just
+%    \usepackage{mdwslides}
+% at the top of your document.
+%
+% Basic usage:
+%
+% \slide{Slide title}
+% \begin{list1}
+% \item This is a list item
+% \item This is another list item
+%      \begin{list2}
+%      \item Second-level list
+%              \begin{list3}
+%              \item Third-level list
+%              \end{list3}
+%      \end{list2}
+% \end{list1}
+%
+% Macros for commonly-used TTF fonts are included. Margins, colors,
+% etc. all set for my regular presentation format; these are easy to
+% tweak.
+
+\RequirePackage{color}
+\RequirePackage{background}
+\RequirePackage{hyperref}
+\RequirePackage{pagetrans}
+
+% Define page margins
+\setlength{\topmargin}{-1.0in}
+%\addtolength{\oddsidemargin}{-0.5in}
+%\addtolength{\textwidth}{1.0in}
+\setlength{\oddsidemargin}{-0.5in}
+\setlength{\textwidth}{10.0in}
+\setlength{\textheight}{7in} 
+\setlength{\foilheadskip}{-0.5in}
+
+% Define colors
+\definecolor{topcol}{rgb}{1.0,1.0,1.0}
+%\definecolor{botcol}{rgb}{0.75,0.905,1.0}
+%\definecolor{medcol}{rgb}{0.90,0.95,1.0}
+\definecolor{botcol}{rgb}{1.0,0.905,0.75}
+\definecolor{medcol}{rgb}{1.0,0.95,0.90}
+% Use following for gradient:
+% \vpagecolor[topcol]{botcol}
+% Use following for solid color:
+%\pagecolor{medcol}
+\definecolor{mdwblue}{rgb}{0.2,0.2,0.6}
+\definecolor{gray}{rgb}{0.7,0.7,0.7}
+\definecolor{darkgreen}{rgb}{0.2,0.7,0.2}
+% Set default color (used for title, footer, etc.)
+\renewcommand\normalcolor{\color{mdwblue}}
+
+% Set up fonts
+\newcommand{\verdana}{\fontencoding{T1}\usefont{T1}{verdana}{m}{n}}
+\newcommand{\verdanai}{\fontencoding{T1}\usefont{T1}{verdanai}{m}{n}}
+\newcommand{\verdanab}{\fontencoding{T1}\usefont{T1}{verdanab}{m}{n}}
+\newcommand{\trebuc}{\fontencoding{T1}\usefont{T1}{trebuc}{m}{n}}
+\newcommand{\trebucbd}{\fontencoding{T1}\usefont{T1}{trebucbd}{m}{n}}
+\newcommand{\trebucit}{\fontencoding{T1}\usefont{T1}{trebucit}{m}{n}}
+\newcommand{\slingbold}{\fontencoding{T1}\usefont{T1}{slingbold}{m}{n}}
+\newcommand{\monotype}{\fontencoding{T1}\usefont{T1}{monotype}{m}{n}}
+\newcommand{\yikatu}{\fontencoding{T1}\usefont{T1}{yikatu}{m}{n}}
+
+% Set default fonts
+\def\rm{\trebuc}
+\def\bf{\trebucbd}
+\def\em{\trebucit}
+\rm
+
+% Define various macros
+\newcommand{\slide}[1]{\foilhead{\slingbold #1}}
+\newcommand{\mdwmed}{\fontsize{24pt}{24pt}\trebuc}
+\newcommand{\mdwsmall}{\fontsize{18pt}{18pt}\trebuc}
+\newcommand{\mdwtiny}{\fontsize{14pt}{14pt}\trebuc}
+\newcommand{\blueem}{\trebucit\color{mdwblue}}
+
+% Define list1, list2, list3 environments
+\newenvironment{list1}%
+{\begin{list}{}{\setlength{\leftmargin}{-0.0in}\setlength{\itemsep}{0.5ex}}\mdwmed}
+{\end{list}\normalsize}
+
+\newenvironment{list1a}%
+{\begin{list}{\textcolor{darkgreen}{$\bullet$}}{\setlength{\leftmargin}{0.75in}\setlength{\itemsep}{0.5ex}}}
+{\end{list}\normalsize}
+
+\newenvironment{list2}%
+{\begin{list}{\small\textcolor{darkgreen}{$\bullet$}}{\setlength{\leftmargin}{0.75in}\setlength{\itemsep}{0.5ex}}\small}
+{\end{list}\normalsize}
+
+\newenvironment{list2a}%
+{\begin{list}{\small\textcolor{darkgreen}{$\bullet$}}{\setlength{\leftmargin}{0.0in}\setlength{\itemsep}{0.5ex}}\small}
+{\end{list}\normalsize}
+
+\newenvironment{list2aa}%
+{\begin{list}{\large\textcolor{darkgreen}{$\bullet$}}{\setlength{\leftmargin}{0.0in}\setlength{\itemsep}{0.5ex}}\small}
+{\end{list}\normalsize}
+
+\newenvironment{list2b}%
+{\begin{list}{\small\textcolor{red}{\boldmath 
$\triangleright$}}{\setlength{\leftmargin}{0.5in}\setlength{\itemsep}{0.5ex}}\small}
+{\end{list}\normalsize}
+
+\newenvironment{list2c}%
+{\begin{list}{\small\textcolor{darkgreen}{$\bullet$}}{\setlength{\leftmargin}{0.75in}\setlength{\itemsep}{0.5ex}}\mdwmed}
+{\end{list}\normalsize}
+
+
+\newenvironment{list3}%
+{\begin{list}{\small\textcolor{red}{$\triangleright$}}{\setlength{\leftmargin}{0.75in}\setlength{\itemsep}{0.5ex}\setlength{\topsep}{0.75ex}\setlength{\parskip}{0.5ex}}\mdwsmall\trebucit\color{mdwblue}}
+{\end{list}\normalsize\color{black}}
+
+\newenvironment{list3a}%
+{\begin{list}{\small\textcolor{red}{$\triangleright$}}{\setlength{\leftmargin}{0.0in}\setlength{\itemsep}{0.5ex}\setlength{\topsep}{0.75ex}\setlength{\parskip}{0.5ex}}\mdwsmall\trebucit\color{mdwblue}}
+{\end{list}\normalsize\color{black}}
+
+% Turn of bullets on top-level list items (only used with itemize)
+\renewcommand\labelitemi{}
+
diff --git a/talk/pagetrans.sty b/talk/pagetrans.sty
new file mode 100644
index 0000000..e4a45be
--- /dev/null
+++ b/talk/pagetrans.sty
@@ -0,0 +1,55 @@
+%% Transition commands for use with hyperref.
+%% Thanks to Marc van Dongen <dongen cs ucc ie> for preparing this.
+\newcommand{\pagetransition}[1]{%
+  \hypersetup{pdfpagetransition={#1}}
+}
+
+\newcommand{\HOSplit}[0]{%
+  \pagetransition{Split /Dm /H /M /O}
+}
+
+\newcommand{\HISplit}[0]{%
+  \pagetransition{Split /Dm /H /M /I}
+}
+
+\newcommand{\VOSplit}[0]{%
+  \pagetransition{Split /Dm /V /M /O}
+}
+
+\newcommand{\VISplit}[0]{%
+  \pagetransition{Split /Dm /V /M /I}
+}
+
+\newcommand{\HBlinds}[0]{%
+  \pagetransition{Blinds /Dm /H}
+}
+
+\newcommand{\VBlinds}[0]{%
+  \pagetransition{Blinds /Dm /V}
+}
+
+\newcommand{\OBox}[0]{%
+  \pagetransition{Box /M /O}
+}
+
+\newcommand{\IBox}[0]{%
+  \pagetransition{Box /M /I}
+}
+
+% argument must be number from 0 to 360
+\newcommand{\Wipe}[1]{%
+  \pagetransition{Wipe /Di #1}
+}
+
+\newcommand{\Dissolve}[0]{%
+  \pagetransition{Dissolve}
+}
+
+% argument must be number 0, 270 or 315
+\newcommand{\pageTransitionGlitter}[1]{%
+  \pagetransition{Glitter /Di #1}
+}
+
+\newcommand{\Replace}[0]{%
+  \pagetransition{Replace}
+}
diff --git a/talk/pause.sty b/talk/pause.sty
new file mode 100644
index 0000000..3f31153
--- /dev/null
+++ b/talk/pause.sty
@@ -0,0 +1,185 @@
+%% pause.sty                                      18 Jun 2002
+%%-----------------------------------------------------------
+%% History:
+%% The initial version was created                11 Jun 1999
+%% Updated to allow options                       10 Mar 2000
+%% Restructured after tests                       03 Apr 2000
+%% Added procesing for random builds              07 May 2000
+%% Supply test for new enough pdftex              09 May 2000
+%% No need for pdftex 14 any more                 31 May 2000
+%% Added commands for highligthing etc.           12 Jun 2000
+%% Added options ignore, nomarkers and dvipdfm
+%% runs with vlatex and dvipdfm                   10 Nov 2001
+%% Update comment section                         13 Jun 2002
+%% Make catcodes safe for pdfliteral              18 Jun 2002
+%%
+%%   Because we need a color definition this can be used
+%%   primarily with LaTeX. Thus we can also rely on \@ifnextchar
+%%   and LaTeX option processing.
+%%
+%% insert small colored chunks to mark spots in the pdf file,
+%% where a break should be made during display.
+%% This method needs postprocessing by another program.
+%% But one can preview the formatted text, where stops are indicated
+%% as small colored chunks. These will vanish during postprocessing.
+%%
+%% Take care: because we have to insert pdf comments starting with
+%% the letter '%' the catcode of '%' will be changed temporarily.
+
+%% must define all optional variants to support creating a file
+%% without pdf elements
+
+
+%% Options
+\newif\ifpause@ignore    \pause@ignorefalse
+\newif\ifpause@nomarkers \pause@nomarkersfalse
+\newif\ifpause@dvipdfm   \pause@dvipdfmfalse
+
+\DeclareOption{ignore}{\pause@ignoretrue}
+\DeclareOption{nomarkers}{\pause@nomarkerstrue}
+\DeclareOption{dvipdfm}{\pause@dvipdfmtrue}
+
+\ProcessOptions
+
+
+%% warning if ignore and nomarkers
+\ifpause@ignore
+  \ifpause@nomarkers
+    \message{Warning, options ignore and nomarkers used together}
+  \fi
+\fi
+
+%% We need to make sure that , and : are not active characters while
+%% we read these macro definitions.
+%% Save their current catcode settings now and restore them at the end
+\def\pppp@x#1{\catcode`\noexpand#1=\the\catcode`#1\relax}%
+\xdef\pppp@restoreCatcodes{\relax
+  \pppp@x\:\relax
+  \pppp@x\,\relax
+}
+\catcode`\,=12\relax
+\catcode`\:=12\relax
+
+\def\pauseDissolve{\pause[trans='Dissolve']}
+\def\pauseReplace{\pause[trans='Replace']}
+\def\pauseHBlinds{\pause[trans='Blinds,H']}
+\def\pauseVBlinds{\pause[trans='Blinds,V']}
+\def\pauseHOSplit{\pause[trans='Split,H,O']}
+\def\pauseHISplit{\pause[trans='Split,H,I']}
+\def\pauseVOSplit{\pause[trans='Split,V,O']}
+\def\pauseVISplit{\pause[trans='Split,V,I']}
+\def\pauseOBox{\pause[trans='Box,O']}
+\def\pauseIBox{\pause[trans='Box,I']}
+\def\pauseWipe#1{\pause[trans='Wipe,#1']}
+\def\pauseGlitter#1{\pause[trans='Glitter,#1']}
+\def\pause{\@ifnextchar [{\pppp@pause}{\pppp@pause[]}}
+
+
+
+%% dvipdfm support
+\ifpause@dvipdfm
+  {\catcode`\^^M=12
+  \gdef\pdfliteral#1{\special{pdf: content
+      #1
+  }}}
+
+  \message{Using color settings for dvipdfm}
+
+  \RequirePackage[dvipdfm]{color}
+
+  %% This is for the support of the dvipdfm color philosophy
+  \def\pppp@gettail #1 #2:{#2}
+  \def\pppp@gethead #1 #2:{#1}
+  \def\pppp@tail #1{\expandafter\pppp@gettail #1:}
+  \def\pppp@tailtail #1{\expandafter\pppp@gettail\pppp@gettail #1::}
+  \def\pppp@head #1{\expandafter\pppp@gethead #1:}
+  \def\pppp@removebrackets[#1]{#1}
+
+
+  % maps dvipdfm color arguments to pdf color commands
+  \def\pppp@dvipdfmmap #1{\expandafter\pppp@grayorother#1:}
+  \def\pppp@dvipdfmmapper#1{\csname dvipdfmmapel@#1\endcsname}
+  \def\pppp@dvipdfmmapvalue#1{\expandafter\def\csname dvipdfmmapel@#1\endcsname}
+
+  \def\pppp@grayorother#1#2:{\pppp@dvipdfmmapper{#1}[#1#2]}
+  \def\pppp@rgborcmyk #1 #2 #3 #4 #5 #6:{\pppp@dvipdfmmapper{#6}[#2 #3 #4 #5]}
+
+  % for the latest dvipdfm.def-File
+  \pppp@dvipdfmmapvalue{c}[#1]{\pppp@tail{#1} k \pppp@tail{#1} K}
+  \pppp@dvipdfmmapvalue{r}[#1]{\pppp@tail{#1} rg \pppp@tail{#1} RG}
+  \pppp@dvipdfmmapvalue{g}[#1]{\pppp@tail{#1} g \pppp@tail{#1} G}
+
+  % for dvipdfm.def with bg-error
+  \pppp@dvipdfmmapvalue{b}[#1]{\pppp@tail{#1} g \pppp@tail{#1} G}
+
+  % support of the older format ([...],...)
+  \pppp@dvipdfmmapvalue{0}[#1]{#1 g #1 G}
+  \pppp@dvipdfmmapvalue{1}[#1]{#1 g #1 G}
+  \pppp@dvipdfmmapvalue{[}[#1]{\expandafter\pppp@removebrackets[\expandafter\pppp@rgborcmyk #1 :}
+  \pppp@dvipdfmmapvalue{}[#1]{#1rg #1RG}
+  \pppp@dvipdfmmapvalue{ }[#1]{#1 k #1 K}
+
+  \def\pppp@colortostring #1{\expandafter\pppp@dvipdfmmap\csname\string\color@#1\endcsname}
+\else
+  \RequirePackage{color}
+  \def\pppp@colortostring #1{\csname\string\color@#1\endcsname}
+\fi
+
+
+\definecolor{pp4red}{rgb}{0.9,0.5,0}
+
+%% We need to make sure that our argument parameters do not contain
+%% active characters when we are called. This means we better set the
+%% catcodes for some common delimiters in our arguments. Let's hope
+%% that nobody is going to change the letters and digits, too.
+\gdef\pppp@catcodes{%
+  \catcode`\+12\relax
+  \catcode`\-12\relax
+  \catcode`\:12\relax
+  \catcode`\=12\relax
+  }
+%% now we need a section where % can be written to pdf files.
+%% thus make ! a comment character
+{\catcode`\%=11\catcode`\!=14
+\gdef\pppp@marker#1{!
+     \ifpause@ignore
+       \relax
+     \else
+       \pdfliteral{%pause}!
+       \ifpause@nomarkers
+         \relax
+       \else
+         \color{pp4red}\vrule width 2truemm height 5truemm\hss ! the marker
+       \fi
+       \pdfliteral{%esuap #1}!
+     \fi}
+ \gdef\pppp@pause[#1]{!
+      \ifvmode
+        \vbox to 0pt{\vss\hsize0pt\noindent\hbox to 0pt{\pppp@marker{#1}}}\else!hmode or mmode
+        \null\hbox to 0pt{\pppp@marker{#1}}\null!
+        !\null\hbox to 0pt{\pppp@marker{#1}}\null
+      \fi}
+
+
+ \ifpause@ignore
+   !! define dummies, if \pause should be ignored
+   \gdef\pauselevel#1{\relax}!
+   \gdef\pausecolors#1#2#3{}!
+   \gdef\pausecolorreset{\relax}
+   \gdef\pausebuild{\relax}
+   \gdef\pausehighlight{\relax}
+ \else
+   \gdef\pauselevel{\bgroup\pppp@catcodes\pppp@pauselevel}!
+   \gdef\pppp@pauselevel#1{\pdfliteral{%pauselevel #1}\egroup}!
+   \gdef\pausecolors#1#2#3{!
+     \pdfliteral{%pausecolor \pppp@colortostring{#1}\space \pppp@colortostring{#2}\space 
\pppp@colortostring{#3}}}!
+   \gdef\pausecolorreset{!
+     \pdfliteral{%pausecolor reset}}!
+   \gdef\pausebuild{!
+     \pdfliteral{%pausecolor appear}}!
+   \gdef\pausehighlight{!
+     \pdfliteral{%pausecolor highlight}}!
+ \fi
+}
+
+\pppp@restoreCatcodes


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]