summaryrefslogtreecommitdiff
path: root/2005/flow-accounting-ols2005/OLS2005/EXAMPLE
diff options
context:
space:
mode:
Diffstat (limited to '2005/flow-accounting-ols2005/OLS2005/EXAMPLE')
l---------2005/flow-accounting-ols2005/OLS2005/EXAMPLE/EXAMPLE.tex1
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/Makefile.inc6
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography.tex180
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography2.tex41
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.c18
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.ll22
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Makefile41
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/complexFigure.tex88
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/cprog.sty249
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-c.tex22
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex24
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/lgrind.sty228
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/llvm.lst15
l---------2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols-fonts.tex1
l---------2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols.sty1
l---------2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/zrl.sty1
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/conditional.tex15
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/figures.tex40
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/includegraphics.tex15
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/legalese.tex19
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/multipleAuthors.tex68
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/myPaper.tex539
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/references.tex29
-rw-r--r--2005/flow-accounting-ols2005/OLS2005/EXAMPLE/tables.tex79
24 files changed, 1742 insertions, 0 deletions
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/EXAMPLE.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/EXAMPLE.tex
new file mode 120000
index 0000000..501b897
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/EXAMPLE.tex
@@ -0,0 +1 @@
+myPaper.tex \ No newline at end of file
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/Makefile.inc b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/Makefile.inc
new file mode 100644
index 0000000..00016e6
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/Makefile.inc
@@ -0,0 +1,6 @@
+PAPERS += EXAMPLE/EXAMPLE.dvi
+
+## Add any additional .tex or .eps files below:
+EXAMPLE/EXAMPLE.dvi EXAMPLE/EXAMPLE-proc.dvi: \
+ EXAMPLE/EXAMPLE.tex
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography.tex
new file mode 100644
index 0000000..78340bc
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography.tex
@@ -0,0 +1,180 @@
+
+This example is based on Keith Packard's 2003 paper for
+the Linux Symposium Proceedings.
+
+The easiest way to do a bibliography is to use BiBTeX.
+In the body of the paper, you \cite{} various references.
+The citation name is the first name following the opening
+curly brace in the .bib file. For example, with the list below,
+I could \cite{autoconf} and \cite{freetype2}.
+
+Near the end of your main .tex file, you include a section like so:
+\begin{flushleft}
+\bibliography{keithp}
+\bibliographystyle{plain}
+\end{flushleft}
+(this comes *before* \end{document}.)
+
+And in a separate file whose name matches the \bibliography{}
+declaration above (e.g., keithp.bib in this case), you define all
+the references. Note that \url is a valid way to typeset web
+references.
+
+Note that the makefiles are already set up to process this form
+of bibliography, so using it is indeed easy. (It's also one
+reason why the input files are processed multiple times, though.)
+
+Here are some sample entries for various types
+of publications:
+
+@book{autoconf,
+ title = "GNU Autoconf, Automake and Libtool",
+ author = "Gary V. Vaughan and Ben Elliston and Tom Tromey and Ian Lance Taylor",
+ publisher = "New Riders",
+ year = 2000,
+ note = {ISBN 1-57870-190-2}, },
+
+@article{blinn:1994,
+ title = "Compositing Theory",
+ author = "Jim Blinn",
+ journal = "IEEE Computer Graphics and Applications",
+ year = 1994,
+ month = "September",
+ note = "Republished in~\cite{blinn:1998}" }
+
+@book{blinn:1998,
+ title = "{Jim Blinn's Corner: Dirty Pixels}",
+ author = "Jim Blinn",
+ year = 1998,
+ publisher = "Morgan Kaufmann",
+ isbn = "1-55860-455-3", }
+
+@techreport{dbe,
+ title = "{Double Buffer Extension Protocol}",
+ author = "Ian Elliott and David P. Wiggins",
+ institution = "X Consortium, Inc.",
+ type = "X Consortium Standard",
+ year = 1994, }
+@manual{dc,
+ title = "DC - An Interactive Desk Calculator",
+ author = "Robert Morris and Lorinda Cherry",
+ organization = "AT\&T Bell Laboratories",
+ note = "Unix Programmer's Manual Volume 2, 7th Edition",
+ year = 1978, },
+
+@misc{freetype2,
+ title = "The design of {FreeType} 2",
+ author = "David Turner and The FreeType Development Team",
+ year = 2000,
+ note = "\url{http://www.freetype.org/freetype2/docs/design/}",
+},
+
+@inproceedings{gj,
+ title = "Making the future safe for the past: Adding Genericity to the Java Programming Language",
+ author = "Gilad Bracha and Martin Odersky and David Stoutamire and Phillip Wadler",
+ month = "October",
+ booktitle = "Conference on Object-Oriented Programing systems, Languages and Applications (OOPSLA '98)",
+ year = 1998,
+ publisher = "ACM",
+ organization = "SIGPLAN", }
+
+@phdthesis{Hobby85,
+ author = {John D. Hobby},
+ title = {Digitized Brush Trajectories},
+ school = {Stanford University},
+ year = {1985},
+ note = {Also {\it Stanford Report STAN-CS-85-1070}}
+}
+
+@article{itsy,
+ title = "{Itsy: Stretching the Bounds of Mobile Computing}",
+ author = "William R. Hamburgen and Deborah A. Wallach and Marc A. Viredaz and Lawrence S. Brakmo and Carl A. Waldspurger and Joel F. Bartlett and Timothy Mann and Keith I. Farkas",
+ journal = "IEEE Computer",
+ year = 2001,
+ publisher = "Institute of Electrical and Electronics Engineers, Inc.",
+ volume = 34,
+ number = 4,
+ month = "April",
+ pages = "28-35", }
+
+@inproceedings{lbx:1993,
+ title = "{An Update on Low Bandwidth X (LBX): A Standard For X and Serial Lines}",
+ author = "Jim Fulton and Chris Kent Kantarjiev",
+ booktitle = "Proceedings of the Seventh Annual X Technical Conference",
+ month = "January",
+ year = 1993,
+ pages = "251-266",
+ address = "Boston, MA",
+ organization = "MIT X Consortium",
+},
+
+@inproceedings{lmbench:1996,
+ title = "{lmbench: Portable tools for performance analysis}",
+ author = "Larry McVoy and Carl Staelin",
+ booktitle = "Technical Conference Proceedings",
+ month = "January",
+ year = 1996,
+ pages = "279-284",
+ address = "San Diego, CA",
+ organization = "USENIX", }
+
+@Article{Nistnet00,
+ author = "NIST Internetworking Technology Group",
+ title = "{NISTNet} network emulation package",
+ journal = "\url{http://www.antd.nist.gov/itg/nistnet/}",
+ month = jun,
+ year = "2000",
+ bibdate = "Thursday, June 29, 2000 at 16:40:15 (MEST)",
+ submitter = "Katarina Asplund",
+}
+
+@TechReport{AMD:2000:XTW,
+ author = "{AMD Corporation}",
+ title = "{x86-64$^{\mathrm{TM}}$ Technology White Paper}",
+ institution = "{AMD Corporation}",
+ address = "One AMD Place, Sunnyvale, CA 94088, USA",
+ pages = "12",
+ day = "17",
+ month = aug,
+ year = "2000",
+ bibdate = "Fri May 04 12:53:45 2001",
+ bibsource = "\url{http://www.amd.com/products/cpg/64bit/index.html}",
+ URL = "\url{http://www.amd.com/products/cpg/64bit/pdf/x86-64_wp.pdf};
+ \url{http://www1.amd.com/products/cpg/x8664bit/faq}",
+ acknowledgement = ack-nhfb,
+ annote = "The x86-64 architecture is definitely not an IA-64
+ implementation, but rather, an extension of IA-32 by
+ widening the integer registers to 64-bits.",
+}
+
+@unpublished{pinzari,
+ author = "Gian Filippo Pinzari",
+ title = "The NX X Protocol Compressor",
+ note = "Electronic Communication",
+ month = "March",
+ year = "2003",
+ }
+
+@inproceedings{Gettys:2002,
+ title = "{The Future is Coming, Where the X Window System Should Go}",
+ author = "James Gettys",
+ booktitle = "FREENIX Track, 2002 Usenix Annual Technical Conference",
+ month = "June",
+ year = 2002,
+ organization = "USENIX",
+ address = "Monterey, CA",
+ url = "\url{http://www.usenix.org/publications/library/proceedings/usenix02/tech/freenix/full_papers/gettys/gettys_html/index.html}",
+}
+
+@misc{ewing,
+ title = "Linux 2.0 Penguins",
+ author = "Larry Ewing",
+ note = "\url{http://www.isc.tamu.edu/~lewing/linux}",
+}
+
+@misc{gimp,
+ title = "The {GIMP}: The {GNU} Image Manipulation Program",
+ author = "Peter Mattis and Spencer Kimball and the GIMP developers",
+ note = "\url{http://www.gimp.org}",
+}
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography2.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography2.tex
new file mode 100644
index 0000000..c838404
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/bibliography2.tex
@@ -0,0 +1,41 @@
+
+Here's another way of handling bibliographies; it does
+not use a .bib file, but includes the items at the end
+of the paper, before \end{document}.
+
+Each item has the format
+\bibitem[printName]{citeName} details
+
+The "printName" will be printed at the point of your citation,
+and again in the list of references. The "citeName" is what
+you use in the source to create the citation. For example,
+using the first entry below, I could \cite{menyhart} and
+have the author's name print out properly in the appropriate
+places.
+
+The bibliography below comes from Tony Luck's 2003 Linux
+Symposium paper:
+
+
+\begin{thebibliography}{99}
+\raggedright
+\bibitem[Menyh\'{a}rt]{menyhart} Z.\ Menyh\'{a}rt and D.\ Song,
+{\em OS Machine Check Recovery on Itanium Architecture-base Platforms},
+Intel Developer Forum, Fall 2002
+
+\bibitem[Ziegler]{ziegler} J.F.\ Ziegler,
+{\em Terrestrial cosmic ray intensities},
+IBM Journal of Research and Development, Volume 42, Number 1, 1998
+
+\bibitem[SDV]{SDV} Intel,
+{\em Intel Itanium Architecture Software Developer's Manual, Volume 1--3}
+
+\bibitem[EHG]{EHG} Intel,
+{\em Itanium Processor Family Error Handling Guide}, August 2001
+
+\bibitem[SAL]{SAL} Intel,
+{\em Itanium Processor Family System Abstraction Layer (SAL) Specification}, November 2002
+
+\end{thebibliography}
+
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.c b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.c
new file mode 100644
index 0000000..34d1726
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.c
@@ -0,0 +1,18 @@
+typedef struct QuadTree {
+ double Data;
+ struct QuadTree *Children[4];
+} QT;
+
+void Sum3rdChildren(QT *T,
+ double *Result) {
+ double Ret;
+ if (T == 0) { Ret = 0;
+ } else {
+ QT *Child3 =
+ T[0].Children[3];
+ double V;
+ Sum3rdChildren(Child3, &V);
+ Ret = V + T[0].Data;
+ }
+ *Result = Ret;
+}
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.ll b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.ll
new file mode 100644
index 0000000..f9ce373
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Figures/example.ll
@@ -0,0 +1,22 @@
+%struct.QuadTree = type { double, [4 x %QT*] }
+%QT = type %struct.QuadTree
+
+void %Sum3rdChildren(%QT* %T, double* %Result) {
+entry: %V = alloca double ;; %V is type 'double*'
+ %tmp.0 = seteq %QT* %T, null ;; type 'bool'
+ br bool %tmp.0, label %endif, label %else
+
+else: ;;tmp.1 = &T[0].Children[3] 'Children' = Field #1
+ %tmp.1 = getelementptr %QT* %T, long 0, ubyte 1, long 3
+ %Child3 = load %QT** %tmp.1
+ call void %Sum3rdChildren(%QT* %Child3, double* %V)
+ %tmp.2 = load double* %V
+ %tmp.3 = getelementptr %QT* %T, long 0, ubyte 0
+ %tmp.4 = load double* %tmp.3
+ %tmp.5 = add double %tmp.2, %tmp.4
+ br label %endif
+
+endif: %Ret = phi double [ %tmp.5, %else ], [ 0.0, %entry ]
+ store double %Ret, double* %Result
+ ret void ;; Return with no value
+}
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Makefile b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Makefile
new file mode 100644
index 0000000..9777b58
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/Makefile
@@ -0,0 +1,41 @@
+
+.SUFFIXES: .tex .dvi .aux .eps .fig .dia .ps .pdf .bib .bbl
+
+TOP=complexFigure
+TEXFILES=$(TOP).tex
+FIGFILES:=$(wildcard *.fig)
+EPSFILES:=$(wildcard *.eps)
+EPSFILES+=$(FIGFILES:.fig=.eps)
+PDFFILES=$(EPSFILES:.eps=.pdf)
+
+.fig.eps:
+ fig2dev -L eps $< >$@
+
+.fig.pdf:
+ fig2dev -L pdf $< >$@
+
+.eps.pdf:
+ epstopdf $<
+
+all: $(TOP).ps $(TOP).pdf
+
+$(TOP).ps: $(TOP).dvi
+ dvips -o $(TOP).ps $(TOP)
+
+$(TOP).dvi: $(TEXFILES) $(EPSFILES)
+ latex $(TOP) || true
+ bibtex $(TOP) || true
+ latex $(TOP) || true
+ latex $(TOP)
+
+$(TOP).pdf: $(TEXFILES) $(PDFFILES)
+ pdflatex $(TOP) || true
+ bibtex $(TOP) || true
+ pdflatex $(TOP) || true
+ pdflatex $(TOP)
+
+clean:
+ rm -f *.aux *.dvi *.log
+ rm -f $(TOP).ps $(TOP).pdf $(TOP).bbl $(TOP).blg
+
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/complexFigure.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/complexFigure.tex
new file mode 100644
index 0000000..6fe6c94
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/complexFigure.tex
@@ -0,0 +1,88 @@
+\documentclass[twocolumn,12pt]{article}
+\usepackage{ols}
+\ifpdf
+\usepackage[pdftex]{epsfig}
+\else
+\usepackage{epsfig}
+\fi
+\input{ols-fonts}
+
+% These packages are Proceedings-friendly.
+\usepackage{cprog}
+\usepackage[nolineno,norules]{lgrind}
+\usepackage[hang,scriptsize]{subfigure}
+
+% These ones are only suitable for standalone
+\usepackage{subfigure}
+%%% both of these break the Proceedings and are thus evil
+\usepackage{listings}
+\input{llvm.lst} % Get listing support for llvm code
+%%%%
+
+
+\begin{document}
+
+\date{}
+
+%make title bold and 14 pt font (Latex default is non-bold, 16 pt)
+\title{Architecture for a Next-Generation GCC}
+
+\author{
+Chris Lattner \hspace*{0.5in} Vikram Adve\\
+\emph{University of Illinois at Urbana, Champaign}\\
+\texttt{\em\normalsize \{lattner, vadve\}@cs.uiuc.edu}\\
+\emph{\normalsize \url{http://llvm.cs.uiuc.edu}}}
+
+\maketitle
+
+% You have to do this to suppress page numbers. Don't ask.
+\thispagestyle{empty}
+
+Formatting team's note: The two figures here illustrate two ways of presenting
+the same information, and are hopefully more complex
+than you'll require. The first is set using Proceedings-friendly
+packages; the second works only as a standalone paper.
+
+%%% Figure typeset in a Proceedings-friendly fashion
+%%% (thanks to Diego Novillo for inspiration)
+\begin{figure*}[t]
+\scriptsize
+%%% \centering
+\subfigure[Example function]{%
+\label{figure:example_c}
+\parbox{0.65\columnwidth}{\input{example-c}}
+}\hspace*{5pt}\vrule\hspace*{5pt}
+\subfigure[Corresponding LLVM code] {%
+\label{figure:example_llvm}
+\parbox{1.35\columnwidth}{\input{example-ll}}}
+%%% }%
+\caption{C and LLVM code for a function}
+\label{figure:example}
+\end{figure*}
+
+%%===------------------------
+% Code example figure
+%
+\begin{figure*} [t]
+\scriptsize
+\centering
+\subfigure[Example function] {
+\label{figure2:example_c}
+\lstset{language=c}
+\lstinputlisting{Figures/example.c}
+}\hspace*{5pt}\vrule\hspace*{5pt}
+\subfigure[Corresponding LLVM code] {
+\label{figure2:example_llvm}
+\lstset{language=LLVM}
+\lstinputlisting{Figures/example.ll}
+}%
+\caption{C and LLVM code for a function}
+\label{figure2:example}
+\end{figure*}
+%
+%%===------------------------
+
+
+\end{document}
+
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/cprog.sty b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/cprog.sty
new file mode 100644
index 0000000..a336397
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/cprog.sty
@@ -0,0 +1,249 @@
+% This is CSTY.STY as received by email at december 1990
+%
+% The cprog macros allow programs in C, C++, Pascal, and Modula-2 to be
+% included directly into TeX documents. Program text is set in a Roman
+% font, comments in slanted, and strings in typewriter. Operators such as
+% <= are optionally combined into single symbols like $\le$. Keywords are
+% *not* emphasised---I find this ugly and distracting. (By purest
+% coincidence it would also be very hard to do.)
+%
+% These macros can be \input in plain TeX or used as a style file in LaTeX.
+% They provide a convenient alternative to tgrind, particularly for program
+% fragments embedded in documents. Full instructions for use appear in the
+% macro package itself.
+%
+%
+% \'Eamonn McManus <emcmanus@cs.tcd.ie> <emcmanus%cs.tcd.ie@cunyvm.cuny.edu>
+%
+% ASCII: !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~
+%
+
+% BEGIN: cprog.tex (or cprog.sty) - formatting of C programs
+% By \'Eamonn McManus <emcmanus@cs.tcd.ie>. This file is not copyrighted.
+% $Id: cprog.tex,v 1.4 90/09/12 23:21:26 emcmanus Exp $
+
+% This allows C programs to be formatted directly by TeX. It can be
+% invoked by \cprogfile{filename} or (in LaTeX) \begin{cprog} ...
+% \end{cprog} or (in plain TeX) \cprog ... \end{cprog}. In LaTeX, the
+% alternative form \begin{cprog*} is allowed, where spaces in C strings
+% are printed using the `square u' character (like LaTeX {verbatim*}).
+% In plain TeX, you have to use \csname cprog*\endcsname for this (sorry).
+% If you are using \cprogfile, say \cprogttspacetrue beforehand if you
+% want this effect.
+
+% The formatting is (necessarily) simple. C text is set in a normal Roman
+% font, comments in a slanted font, and strings in a typewriter font, with
+% spaces optionally made visible as the `square u' symbol. Tabs are
+% expanded to four spaces (this does not look good when comments are
+% aligned to the right of program text). Some pairs of input characters
+% appear as single output characters: << <= >> >= != -> are respectively
+% TeX's \ll \le \gg \ge \ne \rightarrow. Say \cprogpairsfalse to disable
+% this.
+
+% You can escape to TeX within cprog text by defining an escape character.
+% The character @ is suitable for C and Pascal. I have not tested other
+% characters so they may interact badly with their existing definitions here.
+% To define @ as the escape character, do \cprogescape@. Then within text
+% you can do @ followed by TeX commands. These commands will be in a TeX
+% group with the \catcodes of \{}% as normal. The commands are terminated
+% by a newline, which is not considered part of the program text.
+
+% The fonts below can be changed to alter the setting of the various parts
+% of the program. The \cprogbaselineskip parameter can be altered to
+% change the line spacing. LaTeX's \baselinestretch is taken into account
+% too. The indentation applied to the whole program is \cprogindent,
+% initially 0. Before and after the program there are skips of
+% \beforecprogskip and \aftercprogskip; the default values are \parskip
+% and 0 respectively (since there will often be a \parskip after the
+% program anyway).
+
+% If the source text is Pascal or Modula-2, say \pascaltrue or \modulatrue
+% (respectively) before formatting it. This makes (* *) be recognised for
+% comments instead of /* */. Braces {} are also recognised for Pascal.
+% \pascalfalse or \modulafalse as appropriate restores the default of C.
+
+% This package works by making a large number of characters active. Since
+% even spaces are active, it is possible to examine the next character in
+% a macro by making it a parameter, rather than using \futurelet as one
+% would normally do. This is more convenient, but the coding does mean
+% that if the next character itself wants to examine a character it may
+% look at a token from the macro rather than the input text. I think that
+% all cases that occur in practice have been looked after.
+
+% The macros could still do with some work. For example, the big macro
+% defined with [] taking the place of {} could be recoded to use {} and so
+% be more legible. The internal macros etc should have @ in their names,
+% and should be checked against LaTeX macros for clashes.
+
+% Allow multiple inclusion to go faster.
+
+\ifx\undefined\cprogsetup % The whole file.
+
+% Define the fonts used for program text, comments, and strings.
+% Note that if \it is used for \ccommentfont, something will need to
+% be done about $ signs, which come out as pounds sterling.
+\let\ctextfont=\tt \let\ccommentfont=\sl \let\cstringfont=\tt
+
+% Parameters. Unfortunately \newdimen is \outer (\outerness is a mistake)
+% so we need a subterfuge in case we are skipping the file.
+\csname newdimen\endcsname\cprogbaselineskip \cprogbaselineskip=\baselineskip
+\csname newdimen\endcsname\cprogindent \cprogindent=0pt
+\csname newdimen\endcsname\cprogwidth % Gets default=\hsize when cprog invoked.
+\csname newskip\endcsname\beforecprogskip \beforecprogskip=\parskip
+\csname newskip\endcsname\aftercprogskip \aftercprogskip=0pt
+\csname newif\endcsname\ifcprogttspace
+\csname newif\endcsname\ifcprogpairs \cprogpairstrue
+\csname newif\endcsname\ifpascal
+\csname newif\endcsname\ifmodula % Same as Pascal but no {comments}.
+{\def\junk{\fi\fi\fi\fi}} % If skipping.
+
+\let\cprogesc\relax
+\begingroup \catcode`~=\active
+\gdef\cprogescape#1{%
+ {\catcode`~=\active \uccode`~=`#1 \aftergroup\cprogescont
+ \uppercase{\aftergroup~}}}
+\gdef\cprogescont#1{%
+ \def\cprogesc{%
+ \makeactive#1\def#1{%
+ \begingroup \catcode`\\0 \catcode`{1 \catcode`}2 \catcode`\%14
+ \catcode` 10 \clinegroup{}}}}
+\endgroup
+
+\def\makeactive#1{\catcode`#1=\active} \def\makeother#1{\catcode`#1=12}
+{\obeyspaces\gdef\activespace{ } \obeylines\gdef\activecr{^^M}}
+{\catcode`|=\catcode`\\ \makeactive\\ |gdef|activebackslash{\}}
+{\catcode9=\active \gdef\activetab{^^I}}
+
+% The following group makes many characters active, so that their catcodes
+% in the \cprogchars macro are active, allowing them to be defined. We
+% could alternatively define more stuff like \activebackslash and use
+% \expandafter or (carefully) \edef to expand these in the macro.
+\begingroup
+\catcode`[=\catcode`{ \catcode`]=\catcode`}
+\makeactive! \makeactive" \makeactive' \makeactive( \makeactive* \makeactive-
+\makeactive/ \makeactive< \makeactive> \makeactive? \makeactive^ \makeactive_
+\makeactive\{ \makeactive| \makeactive\}
+\gdef\activestar[*]
+\gdef\cprogchars[%
+ \makeother##\makeother$\makeother&\makeother\%\makeother^%
+ \makeactive"\makeactive'\makeactive*\makeactive?\makeactive{\makeactive}%
+ \makeactive}\makeactive\\\makeactive_\expandafter\makeactive\activetab%
+ \makeactive!\makeactive<\makeactive>\makeactive-\makeactive|%
+ \ifcprogpairs
+ \def!##1[\ifx=##1$\ne$\else\string!\null##1\fi]%
+ \def-##1[\ifx>##1$\rightarrow$\else$\string-$##1\fi]%
+ % We use \aftergroup in < and > to deal with the fact that #1 might
+ % itself examine the following character.
+ \def<##1[[$\ifx<##1\ll$\else\ifx=##1\le$\else
+ \ifx>##1\ifpascal\ne$\else\string<$\aftergroup>\fi
+ \else \string<$\aftergroup##1\fi\fi\fi]]%
+ \def>##1[[$\ifx>##1\gg$\else\ifx=##1\ge$\else
+ \string>$\aftergroup##1\fi\fi]]%
+ \else \def![\string!\null]% Avoid !` ligature.
+ \def-[$\string-$]\def<[$\string<$]\def>[$\string>$]%
+ \fi
+ \def?[\string?\null]% Avoid ?` ligature.
+ \def"[\cquote"[\tt\string"]]\def'[\cquote'[\tt\ttquote]]\def*[$\string*$]%
+ \ifmodula \pascaltrue \fi % Except that {...} is used for sets.
+ \ifpascal
+ \ifmodula \dulllbrace \else
+ \def{[\begingroup \dulllbrace{\ccommentsetup\def}[\/\endgroup }]]%
+ \fi \makeactive(\let(=\pascalcomment \makeactive^\def^[$\uparrow$]%
+ \else \dulllbrace\makeactive/\let/=\ccomment
+ \fi
+ \def}[$\}$]\def|[$\string|$]\def~[$\sim$]\let_\_%
+ \expandafter\def\activebackslash[$\backslash$]%
+ \obeyspaces \expandafter\def\activespace[\leavevmode\space]%
+ \expandafter\def\activetab[\ \ \ \ ]%
+ \obeylines \expandafter\def\activecr[\strut\par]]
+\gdef\cprogarg[\expandafter\def\activebackslash##1[\ifx##1e\let\next\cprogend
+ \else$\backslash$\let\next##1\fi\next]\eatcr]
+\gdef\cprogend nd#1{cprog#2}[\endcprogarg] % #1 can be space, #2 *.
+\gdef\dulllbrace[\def{[$\{$]]
+\endgroup
+
+\chardef\ttquote=13 % Undirected single quote.
+\begingroup \makeactive" \makeactive' \makeactive!
+\gdef\cquote#1#2{% #1 is the quote, " or ', #2 how to set it.
+ \begingroup #2\cstringfont \makeactive\\%
+ \ifpascal \makeother\\\makeother^%
+ \else \expandafter\let\activebackslash\quotebackslash
+ \fi
+ \expandafter\edef\activespace{\ifcprogttspace\char`\ \else\ \fi}%
+ \expandafter\let\activecr=\unclosedstring
+ \def!{\string!\null}% No !` ligature.
+ \makeother*\makeother-\makeother/\makeother<\makeother>%
+ \makeother_\makeother\{\makeother\}\makeother|\makeother~%
+ \ifx"#1\let'\ttquote \else \makeother"\fi
+ \def#1{#2\endgroup}}
+\endgroup
+\csname newhelp\endcsname\cprogunclosedstr{%
+A string or character constant earlier in the line was unclosed.^^JSo
+I'm closing it now.}
+\def\unclosedstring{%
+ \escapechar-1%
+ \errhelp\cprogunclosedstr
+ \errmessage{Unclosed string}%
+ \endgroup}
+\newlinechar=`^^J
+\def\quotebackslash#1{\char`\\%
+ \expandafter\ifx\activecr#1\strut\par
+ \else\if'\noexpand#1\ttquote\else\string#1\fi\fi}
+
+% In a comment, we shrink the width of the opening / to that of a space so
+% that the stars in multiline comments will line up. We also shrink the
+% closing * for symmetry, but not in Pascal where it looks nasty.
+% Note that \end{cprog} is not recognised in strings or comments.
+\def\spacebox#1{\leavevmode \hbox to \spaceskip{#1\hss}}
+
+\begingroup \makeactive* \makeactive! \makeother/
+\gdef\ccommentsetup{\ccommentfont \makeother-\makeother'\makeother"\makeother/%
+ \def!{\string!\null}\expandafter\def\activebackslash{$\backslash$}}
+\gdef\ccomment#1{%
+ \let\next\relax
+ \ifx#1*\bgroup \ccommentsetup
+ \spacebox{\ctextfont\string/}*%
+ \makeactive*\def*{\commentstar/}%
+ \else\if\noexpand#1/\begingroup //\ccommentsetup \clinegroup\activecr
+ \else \string/\let\next#1%
+ \fi\fi\next}
+\gdef\pascalcomment#1{%
+ \ifx#1*\bgroup \ccommentsetup \let\next\dulllbrace \makeother(%
+ \spacebox{\ctextfont\string(}*\makeactive*\def*{\commentstar)}%
+ \else (\let\next#1\fi \next}
+\obeylines \long\gdef\clinegroup#1#2^^M{#2\endgroup#1}%
+\endgroup
+\def\commentstar#1#2{%
+ {\if#1\noexpand#2\egroup \ifpascal\else\aftergroup\spacebox\fi\fi}{$*$}#2}
+
+% We usually have an active ^^M after \cprog or \begin{cprog}.
+\def\eatcr#1{{\expandafter\ifx\activecr#1\else\aftergroup#1\fi}}
+
+% Expand to stretch and shrink (plus and minus) of parameter #1.
+\def\stretchshrink#1{\expandafter\eatdimenpart\the#1 \end}
+\def\eatdimenpart#1 #2\end{#2}
+
+\ifx\undefined\baselinestretch \def\baselinestretch{1}\fi
+
+\def\cprogsetup{\ctextfont \cprogchars \parskip=0pt\stretchshrink\parskip
+ \ifdim \cprogwidth=0pt \else \hsize\cprogwidth \fi
+ \cprogesc \spaceskip\fontdimen2\font \xspaceskip\spaceskip
+ \baselineskip=\baselinestretch\cprogbaselineskip \parindent=\cprogindent
+ \vskip\beforecprogskip}
+\def\endcprog{\endgroup \vskip\aftercprogskip}
+\def\cprogfile#1{\begingroup \cprogsetup \input#1\endcprog}
+\def\cprog{\begingroup \cprogttspacefalse \cprogsetup \cprogarg}
+% Like {verbatim*}, {cprog*} uses `square u' for spaces in quoted strings.
+\expandafter\def\csname cprog*\endcsname{%
+ \begingroup \cprogttspacetrue \cprogsetup \cprogarg}
+\expandafter\let\csname endcprog*\endcsname=\endcprog
+% In LaTeX we need to call \end{cprog} properly to close the environment,
+% whereas in plain TeX this will end the job. The test for LaTeX is not
+% bulletproof, but most plain TeX documents don't refer to the LaTeX logo.
+\ifx\undefined\LaTeX \let\endcprogarg=\endcprog
+\else \def\endcprogarg{\ifcprogttspace\end{cprog*}\else\end{cprog}\fi}
+\fi
+
+\fi % \ifx\undefined\cprogsetup
+
+\endinput
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-c.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-c.tex
new file mode 100644
index 0000000..2f8bf0d
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-c.tex
@@ -0,0 +1,22 @@
+\begin{cprog}
+typedef struct QuadTree {
+ double Data;
+ struct QuadTree
+ *Children[4];
+} QT;
+
+void Sum3rdChildren(QT *T,
+ double *Result) {
+ double Ret;
+ if (T == 0) { Ret = 0;
+ } else {
+ QT *Child3 =
+ T[0].Children[3];
+ double V;
+ Sum3rdChildren(Child3,
+ &V);
+ Ret = V + T[0].Data;
+ }
+ *Result = Ret;
+}
+\end{cprog}
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex
new file mode 100644
index 0000000..681b759
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/example-ll.tex
@@ -0,0 +1,24 @@
+\begin{verbatim}
+%struct.QuadTree = type { double, [4 x %QT*] }
+%QT = type %struct.QuadTree
+
+void %Sum3rdChildren(%QT* %T, double* %Result) {
+entry: %V = alloca double ;; %V is type 'double*'
+ %tmp.0 = seteq %QT* %T, null ;; type 'bool'
+ br bool %tmp.0, label %endif, label %else
+
+else: ;;tmp.1 = &T[0].Children[3] 'Children' = Field #1
+ %tmp.1 = getelementptr %QT* %T, long 0, ubyte 1, long 3
+ %Child3 = load %QT** %tmp.1
+ call void %Sum3rdChildren(%QT* %Child3, double* %V)
+ %tmp.2 = load double* %V
+ %tmp.3 = getelementptr %QT* %T, long 0, ubyte 0
+ %tmp.4 = load double* %tmp.3
+ %tmp.5 = add double %tmp.2, %tmp.4
+ br label %endif
+
+endif: %Ret = phi double [ %tmp.5, %else ], [ 0.0, %entry ]
+ store double %Ret, double* %Result
+ ret void ;; Return with no value
+}
+\end{verbatim}
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/lgrind.sty b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/lgrind.sty
new file mode 100644
index 0000000..2d04753
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/lgrind.sty
@@ -0,0 +1,228 @@
+%%
+%% This is file `lgrind.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% lgrind.dtx (with options: `package')
+%%
+%% LGrind is used to format source code of different programming
+%% languages for LaTeX.
+%%
+%% LGrind is a minor adaptation of Jerry Leichter's tgrind for LaTeX,
+%% which was a notable improvement upon Van Jacobsen's tgrind for
+%% plain TeX, which was adapted from vgrind, a troff prettyprinter.
+%%
+%% Based on Van Jacobson's ``tgrindmac'', a macro package for TeX.
+%% Modified, 1987 by Jerry Leichter. Put '@' in all internal names.
+%% Modified, 1991 by George Reilly. Changed name from tgrind to lgrind.
+%% Modified, 1995 by Michael Piefel. Made it work with \LaTeXe.
+\NeedsTeXFormat{LaTeX2e}[1995/06/01]
+\ProvidesPackage{lgrind}
+ [1997/01/30 v3.4 LGrind environment and supporting stuff]
+\newcount\lc@unt
+\newcount\ln@xt
+\newcount\LGnuminterval
+\LGnuminterval=10
+\DeclareOption{nolineno}{\LGnuminterval=50000}
+\DeclareOption{lineno5}{\LGnuminterval=5}
+\newif\ifLGleftnum
+\DeclareOption{leftnum}{\LGleftnumtrue}
+\newskip\LGindent
+\LGindent=1.6667\parindent
+\DeclareOption{noindent}{\LGindent=0pt}
+\newif\ifLGnorules
+\DeclareOption{norules}{\LGnorulestrue}
+\newlength{\LGsloppy}
+\setlength{\LGsloppy}{7.2pt}
+\DeclareOption{fussy}{\LGsloppy=0pt}
+\newcommand{\DefaultProc}{\@gobble}
+\newcommand{\DefaultProcCont}{\@gobble}
+\DeclareOption{procnames}{
+\renewcommand{\DefaultProc}[1]{\renewcommand{\Procname}{#1}%
+\global\setbox\procbox=\hbox{\PNsize #1}}
+\renewcommand{\DefaultProcCont}[1]{\renewcommand\Procname{#1}
+\global\setbox\procbox=\hbox{\PNsize\dots #1}}}
+\newbox\procbox
+\newcommand{\Procname}{}
+\ProcessOptions
+\def\BGfont{\sffamily}
+\def\CMfont{\rmfamily\itshape}
+\def\NOfont{\sffamily}
+\def\KWfont{\rmfamily\bfseries}
+\def\STfont{\ttfamily}
+\def\VRfont{\rmfamily}
+\def\PNsize{\BGfont\small}
+\def\LGsize{\small}
+\def\LGfsize{\footnotesize}
+\newif\ifLGinline
+\newif\ifLGd@fault
+\def\LGbegin{\ifLGinline$\hbox\else$$\vbox\fi\bgroup\LGd@faulttrue}
+\def\LGend{\ifLGd@fault\egroup\ifLGinline$\else$$\fi\LGd@faultfalse\fi}
+\newif\ifc@mment
+\newif\ifstr@ng
+\newif\ifright@
+\newbox\ls@far
+\newbox\tb@x
+\newdimen\TBw@d
+\newdimen\@ts
+{\catcode`\_=\active \gdef\@setunder{\let_=\sp@ce}}
+\newcommand{\lgrindheader}{}
+\newcommand{\lgrindfilename}{}\newcommand{\lgrindfilesize}{}
+\newcommand{\lgrindmodyear}{}\newcommand{\lgrindmodmonth}{}
+\newcommand{\lgrindmodday}{}\newcommand{\lgrindmodtime}{}
+\newenvironment{lgrind}[1][1]{%
+\def\Line##1{\L{\LB{##1}}}%
+\newcommand{\Head}[1]{\gdef\lgrindhead{##1}}%
+\newcommand{\File}[6]{\gdef\lgrindfilename{##1}\message{(LGround: ##1)}%
+ \gdef\lgrindmodyear{##2}\gdef\lgrindmodmonth{##3}%
+ \gdef\lgrindmodday{##4}\gdef\lgrindmodtime{##5}%
+ \gdef\lgrindfilesize{##6}}%
+\let\Proc=\DefaultProc%
+\let\ProcCont=\DefaultProcCont%
+\hfuzz=\LGsloppy
+\def\NewPage{\filbreak\bigskip}%
+\ifLGinline
+ \def\L##1{\setbox\ls@far\null{\CF\strut##1}\ignorespaces}%
+\else
+ \let\r@ghtlno\relax\let\l@ftlno\relax
+ \ifnum\LGnuminterval>\z@
+ \ifLGleftnum
+ \def\l@ftlno{\ifvoid\procbox\ifnum\lc@unt>\ln@xt
+ \global\advance\ln@xt by\LGnuminterval
+ \llap{{\normalfont\scriptsize\the\lc@unt\quad}}\fi
+ \else\llap{\box\procbox\quad}\fi}%
+ \else
+ \def\r@ghtlno{\ifvoid\procbox\ifnum\lc@unt>\ln@xt
+ \global\advance\ln@xt by\LGnuminterval
+ \rlap{{\normalfont\scriptsize\enspace\the\lc@unt}}\fi
+ \else\rlap{\enspace\box\procbox}\fi}%
+ \fi
+ \fi
+ \def\L##1{\@@par\setbox\ls@far=\null\strut
+ \global\advance\lc@unt by1%
+ \hbox to \hsize{\hskip\LGindent\l@ftlno ##1\egroup%
+ \hfil\r@ghtlno}%
+ \ignorespaces}%
+\fi
+\lc@unt=#1\advance\lc@unt by-1%
+\ln@xt=\LGnuminterval\advance\ln@xt by-1%
+\loop\ifnum\lc@unt>\ln@xt\advance\ln@xt by\LGnuminterval\repeat%
+\def\LB{\hbox\bgroup\bgroup\box\ls@far\CF\let\next=}%
+\def\Tab##1{\egroup\setbox\tb@x=\lastbox\TBw@d=\wd\tb@x%
+ \advance\TBw@d by 1\@ts\ifdim\TBw@d>##1\@ts
+ \setbox\ls@far=\hbox{\box\ls@far \box\tb@x \sp@ce}\else
+ \setbox\ls@far=\hbox to ##1\@ts{\box\ls@far \box\tb@x \hfil}\fi\LB}%
+\ifLGinline\def\sp@ce{\hskip .3333em}%
+\else \setbox\tb@x=\hbox{\texttt{0}}%
+ \@ts=0.8\wd\tb@x \def\sp@ce{\hskip 1\@ts}\fi
+\catcode`\_=\active \@setunder
+\def\CF{\ifc@mment\CMfont\else\ifstr@ng\STfont\fi\fi}
+\def\N##1{{\NOfont ##1}\global\futurelet\next\ic@r}%
+\def\K##1{{\KWfont ##1}\global\futurelet\next\ic@r}%
+\def\V##1{{\VRfont ##1}\global\futurelet\next\ic@r}%
+\def\ic@r{\let\@tempa\/\ifx.\next\let\@tempa\relax%
+ \else\ifx,\next\let\@tempa\relax\fi\fi\@tempa}%
+\def\C{\egroup\bgroup\CMfont \global\c@mmenttrue \global\right@false}%
+\def\CE{\egroup\bgroup \global\c@mmentfalse}%
+\def\S{\egroup\bgroup\STfont \global\str@ngtrue}%
+\def\SE{\egroup\bgroup \global\str@ngfalse}%
+\def\,{\relax \ifmmode\mskip\thinmuskip \else\thinspace \fi}%
+\def\!{\relax \ifmmode\mskip-\thinmuskip \else\negthinspace \fi}%
+\def\CH##1##2##3{\relax\ifmmode ##1\relax
+\else\ifstr@ng ##2\relax\else$##3$\fi\fi }%
+\def\{{\CH\lbrace {\char'173}\lbrace }%
+\def\}{\CH\rbrace {\char'175}\rbrace }%
+\def\1{\CH///}% % /
+\def\2{\CH\backslash {\char'134}\backslash }% % \
+\def\|{\CH|{\char'174}|}%
+\def\<{\CH<<<}%
+\def\>{\CH>>>}%
+\def\*{\CH***}\relax %\relax for DOCSTY
+\def\-{\CH---}%
+\def\_{\ifstr@ng {\char'137}\else
+ \leavevmode \kern.06em \vbox{\hrule width.35em}%
+ \ifdim\fontdimen\@ne\font=\z@ \kern.06em \fi\fi }%
+\def\&{\textsf{\char'046}}%
+\def\#{{\STfont\char'043}}%
+\def\%{{\char'045}}%
+\def\~{{\char'176}}%
+\def\3{\ifc@mment\ifright@ ''\global\right@false%
+ \else``\global\right@true \fi
+ \else{\texttt{\char'042}}\fi}%
+\def\4{\ifc@mment'\else {\texttt{\char'015}}\fi}%
+\def\5{{\texttt{\char'136}}}%
+\def\${{\ifmmode\slshape\else\ifdim\fontdimen\@ne\font>\z@\slshape\fi\fi
+ \char'044}}% %No $ in \it, use \sl
+\parindent\z@\parskip\z@ plus 1pt\hsize\linewidth%
+\bgroup\BGfont
+}
+{\egroup\@@par} % end of environment lgrind
+\def\lgrinde{\ifLGinline\else\LGsize\fi\begin{lgrind}}
+\def\endlgrinde{\end{lgrind}}
+\def\lagrind{\@ifstar{\@slagrind}{\@lagrind}}
+
+\def\@lagrind{\@ifnextchar[{\@@lagrind}{\@@lagrind[t]}}
+\def\@slagrind{\@ifnextchar[{\@@slagrind}{\@@slagrind[t]}}
+\def\@@lagrind[#1]#2#3#4{%
+ \begin{figure}[#1]
+\ifLGnorules\else\hrule\fi
+\vskip .5\baselineskip
+\begin{minipage}\columnwidth\LGsize\LGindent\z@
+ \begin{lgrind}
+\input #2\relax
+ \end{lgrind}
+\end{minipage}
+\vskip .5\baselineskip plus .5\baselineskip
+\ifLGnorules\else\hrule\fi\vskip .5\baselineskip
+\begingroup
+ \setbox\z@=\hbox{#4}%
+ \ifdim\wd\z@>\z@
+\caption{#3}%
+\label{#4}%
+ \else
+\captcont{#3}%
+ \fi
+\endgroup
+\vskip 2pt
+ \end{figure}
+}
+\def\@@slagrind[#1]#2#3#4{%
+ \begin{figure*}[#1]
+\ifLGnorules\else\hrule\fi
+\vskip .5\baselineskip
+\begin{minipage}\linewidth\LGsize\LGindent\z@
+ \begin{lgrind}
+\input #2\relax
+ \end{lgrind}
+\end{minipage}
+\vskip .5\baselineskip plus .5\baselineskip
+\ifLGnorules\else\hrule\fi\vskip .5\baselineskip
+\begingroup
+ \setbox\z@=\hbox{#4}%
+ \ifdim\wd\z@>\z@
+\caption{#3}%
+\label{#4}%
+ \else
+\captcont{#3}%
+ \fi
+\endgroup
+\vskip 2pt
+ \end{figure*}
+}
+\def\lgrindfile#1{%
+ \par\addvspace{0.1in}
+ \ifLGnorules\else\hrule\fi
+ \vskip .5\baselineskip
+ \begingroup\LGfsize\LGindent\z@
+\begin{lgrind}
+ \input #1\relax
+\end{lgrind}
+ \endgroup
+ \vskip .5\baselineskip
+ \ifLGnorules\else\hrule\fi
+ \addvspace{0.1in}
+}
+\endinput
+%%
+%% End of file `lgrind.sty'.
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/llvm.lst b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/llvm.lst
new file mode 100644
index 0000000..8adbb23
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/llvm.lst
@@ -0,0 +1,15 @@
+\lstdefinelanguage{LLVM}
+ {morekeywords={
+ begin,end,true,false,declare,global,constant,const,internal,implementation,
+ null,to,except,not,
+ void,bool,sbyte,ubyte,short,ushort,int,uint,long,ulong,float,double,type,label,opaque,
+ add,sub,mul,div,rem,and,or,xor,setne,seteq,setlt,setgt,setle,setge,
+ phi,call,cast,shl,shr,
+ ret,br,switch,invoke,
+ malloc,alloca,free,load,store,getelementptr
+ },
+ sensitive=true,
+% morecomment=[l]{;},
+% morestring=[b]",
+ }
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols-fonts.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols-fonts.tex
new file mode 120000
index 0000000..adfec4b
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols-fonts.tex
@@ -0,0 +1 @@
+../../TEMPLATES/ols-fonts.tex \ No newline at end of file
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols.sty b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols.sty
new file mode 120000
index 0000000..d8c7f0c
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/ols.sty
@@ -0,0 +1 @@
+../../TEMPLATES/ols.sty \ No newline at end of file
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/zrl.sty b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/zrl.sty
new file mode 120000
index 0000000..d96dacf
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/complexCode/zrl.sty
@@ -0,0 +1 @@
+../../TEMPLATES/zrl.sty \ No newline at end of file
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/conditional.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/conditional.tex
new file mode 100644
index 0000000..39dd102
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/conditional.tex
@@ -0,0 +1,15 @@
+
+Sometimes you have to do things differently depending on whether
+you're building the entire Proceedings... here's an example...
+
+\ifols
+\usepackage{cprog}
+\usepackage[nolineno,norules]{lgrind}
+\usepackage[hang,scriptsize]{subfigure}
+\else
+\usepackage{subfigure}
+%%% both of these break the Proceedings and are thus evil
+\usepackage{listings}
+\input{llvm.lst} % Get listing support for llvm code
+\fi
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/figures.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/figures.tex
new file mode 100644
index 0000000..0f96dd6
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/figures.tex
@@ -0,0 +1,40 @@
+
+\begin{figure}[tb]
+ \begin{center}
+ \includegraphics[height=4cm]{ndp_table}\includegraphics[height=4cm]{ndp_table2}
+ \end{center}
+ \caption{NDP Table: Linux vs USAGI\label{ndp_table}}
+\end{figure}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+Need the whole page? Note the asterisk after 'figure'...
+
+\begin{figure*}[t]
+\begin{center}
+\includegraphics[width=0.65\textwidth]{chaos} \ \\
+(a) Chip \hspace{3cm} (b) CPU
+\caption{A micrograph of an on-chip-multiprocessor M32R prototype chip}
+\label{chaos}
+\end{center}
+\end{figure*}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{figure*}
+\begin{center}
+\begin{minipage}{16cm}
+\begin{center}
+\includegraphics[width=0.475\textwidth]{mappi}
+\hspace{1cm}
+\includegraphics[scale=0.7]{mappi_diagram}
+\end{center}
+\end{minipage}
+\caption{Mappi: the M32R FPGA evaluation board; it has the M32R
+softmacro on FPGA (CPU, MMU, Cache, SDI, SDRAMC, UART, Timer), FPGA
+Xilinx XCV2000E $\times$2, SDRAM(64MB), FlashROM, 10BaseT Ethernet,
+Serial 2ch, PC-card slot $\times$2, and Display I/F(VGA)} \label{mappi}
+\end{center}
+\end{figure*}
+
+
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/includegraphics.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/includegraphics.tex
new file mode 100644
index 0000000..01ab098
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/includegraphics.tex
@@ -0,0 +1,15 @@
+
+Various options can be used for scaling and cropping. Note
+that \textwidth and \columnwidth can be your friends for such
+operations -- most often, \columnwidth.
+
+\includegraphics[clip,width=\columnwidth]{ols2003-ipsec-fig-input}
+\includegraphics[scale=0.9]{scsi-ds}
+\includegraphics[clip,height=3.0in]{relayarch}
+\includegraphics[width=2cm]{tpch-host-based-component}
+\includegraphics[width=\linewidth]{tpcw-component}
+\includegraphics{efi-fig5}
+
+This one uses 90 percent of the column width:
+\includegraphics[width=0.9\columnwidth]{rmap_shadow_pages}
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/legalese.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/legalese.tex
new file mode 100644
index 0000000..8d6e10e
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/legalese.tex
@@ -0,0 +1,19 @@
+
+% Legalese should be avoided unless your lawyers insist. Even
+% then, it is typeset in small print because, although it may
+% need to be there, there isn't a programmer on the planet
+% who actively wants to read such stuff :-)
+\begin{small}
+\copyright ~2003 Your Lawyers, Inc.
+Permission to redistribute in accordance with Linux Symposium
+submission guidelines is granted; all other rights reserved.
+A Bunch Of Things, and the Bunch Of Things logo are
+registered trademarks and
+NameOne, NameTwo, and NameThree are trademarks of Your Lawyers, Inc.,
+in the United States and/or other countries worldwide.
+Linux is a registered trademark of Linus Torvalds.
+Intel and Itanium are registered trademarks
+of Intel Corporation.
+All other trademarks mentioned herein are the property of their
+respective owners.
+\end{small}
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/multipleAuthors.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/multipleAuthors.tex
new file mode 100644
index 0000000..fd89e77
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/multipleAuthors.tex
@@ -0,0 +1,68 @@
+
+Sometimes there are more than two authors, or the authors wish to have
+a slightly different layout of names. That's fine, and here are some
+examples. Just keep the font sizes and families consistent.
+Note that we use Name, Institution, and Email address; postal addresses
+are generally omitted for this conference. (Examples below use
+fictitional email addresses, although they are otherwise from
+the 2003 Linux Symposium.)
+
+
+\title{Linux Support for NUMA Hardware}
+
+\author{
+Matthew Dobson, Patricia Gaughen, Michael Hohnbaum \\
+{\em IBM LTC, Beaverton, Oregon, USA}\\
+{\tt\normalsize one@email.addr, two@email.addr, three@email.addr} \\
+%
+\smallskip
+Erich Focht \\
+{\em NEC HPCE, Stuttgart, Germany}\\
+{\tt\normalsize four@other.email.addr}
+} % end author
+
+\maketitle
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\title{Linux\textregistered ~Scalability for Large NUMA Systems}
+
+\author{
+Ray Bryant and John Hawkes \\
+{\em Silicon Graphics, Inc.}\\
+{\tt\normalsize one@email.addr ~~~~~~~ two@email.addr}\\
+} % end author
+
+\maketitle
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+The 'and' construct may be used for more than two authors:
+
+\title{Linux IPv6 Networking \\
+{\normalsize Past, Present, and Future}}
+
+\author{
+Hideaki Yoshifuji \\
+{\em The University of Tokyo}\\
+{\tt\normalsize one@email.addr} \\
+\and
+Kazunori Miyazawa \\
+{\em Yokogawa Electric Corporation} \\
+{\tt\normalsize two@email.addr} \\
+\and
+Yuji Sekiya \\
+{\em The University of Tokyo}\\
+{\tt\normalsize three@email.addr} \\
+\and
+Hiroshi Esaki \\
+{\em The University of Tokyo}\\
+{\tt\normalsize four@another.email.addr}
+\and
+Jun Murai \\
+{\em Keio University}\\
+{\tt\normalsize five@a.different.email.addr}
+}
+
+\maketitle
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/myPaper.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/myPaper.tex
new file mode 100644
index 0000000..9b74ae5
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/myPaper.tex
@@ -0,0 +1,539 @@
+\documentclass[final]{ols}
+\usepackage{url}
+\usepackage{zrl}
+
+\begin{document}
+
+% Required: Do not print the date.
+\date{}
+
+\title{Formatting Tips and Tricks}
+\subtitle{Some potentially helpful examples}
+
+\author{
+John W.\ Lockhart \\
+{\em Red Hat, Inc.}\\
+{\tt\normalsize lockhart@\{oco.net,redhat.com\}}\\
+\and
+Optional Second Author\\
+{\em Second Institution}\\
+{\tt\normalsize another@address.for.email.com}\\
+} % end author section
+\shortauthor{J.W.\ Lockhart}
+
+\maketitle
+
+% Required: Suppress page numbers on title page
+\thispagestyle{empty}
+
+\section*{Abstract}
+This example paper contains tips and tricks to ensure that what you
+write is what appears in the \textit{Proceedings} with as little
+editing as possible. The most important parts are at the end; please
+read them. (Okay, okay: Section~\ref{lockhart-subrules} and
+Figure~\ref{lockhart-fig1}.)
+
+If you are new to {\LaTeX}, please read this paper in its entirety,
+and check out its source and any other \texttt{.tex} files in the
+\texttt{\small EXAMPLE} directory.
+
+If you have a paper from the Linux Symposium or GCC Summit
+(2002--2004), and would like to crib from its final formatting, please
+drop me a note and I'll be happy to send along the edited source.
+Likewise, if you would like a copy of the final edited form of this
+year's source, just let me know.
+
+The tree was created based on the information on the conference
+website. If you don't have a subdirectory, create one along the same
+lines. Blank materials are in the \texttt{\small TEMPLATES}
+directory; \texttt{ProtoMake} and \texttt{Blank.tex} are probably the
+most interesting files. Likewise, if your Abstract was available when
+I looked, it has been included. Feel free to edit it; it's just there
+to get you started and to provide an example of how to properly
+include files should you need to.
+
+Many thanks go to Zack Weinberg for studying prior years' templates
+and proceeding to write the \texttt{ols.cls} class and other crucial
+bits of infrastructure. The new system should provide for a lot more
+flexibility than the old.
+
+\section{Simple Formatting Tricks}
+
+\LaTeX\ is just a fancy markup language\ldots \textit{most} of the
+time.
+
+Some of the more common font and layout conventions follow:
+\begin{itemize}
+\item \texttt{texttt} produces \texttt{typewriter} style.
+\item \texttt{textit} produces \textit{italics}.
+\item \texttt{textbf} produces \textbf{boldface}.
+\item \texttt{textsc} produces \textsc{small caps}.
+\item \texttt{\textit{Font}} \textbf{\textsc{styles}} can be
+ \textit{\textbf{combined}}\footnote{Often eye-breakingly. Restraint is Good.}
+\end{itemize}
+
+Paragraphs
+ can be awfully messy
+in the source, and even
+% what, a comment?
+have comments interspersed. Be careful with % unintentional
+percent signs---75\% of the time you'll accidentally comment out the
+rest of the text on the line.
+
+Unescaped dollar signs will put you into math mode, so be likewise
+careful. Of course, that's sometimes exactly where you \textit{want}
+to be.
+
+Tildes do not produce tildes in \LaTeX ---think instead of
+\textsc{html}'s \texttt{\&nbsp;} and you'll get the picture. Instead,
+you can use \texttt{{\textbackslash}{\~{}}\{\}} or
+\texttt{{\textbackslash}textasciitilde} to produce a tilde.
+Table~\ref{lockhart-tab1} provides a list of characters that require
+special handling. Note that tables may ``float''---that is, {\LaTeX}
+might move your table to a place where it all fits on a single page,
+rather than putting it exactly where you have included it in your
+source. Be aware that it's easier to include references to tables and
+figures than it is to force each into a particular position and adjust
+the surrounding typesetting.
+%
+% that's
+% \~{}
+% or
+% \textasciitilde
+% for a tilde (without all the extra typesetting).
+% Escape anything but a backslash by using a backslash. Backslash
+% itself is \textbackslash (as seen above).
+
+\begin{table}[!th]
+\centering
+\begin{small}
+\begin{tabular}[b]{c|c|p{2.3cm}}
+Char & Command & Otherwise \\
+\hline
+% #
+\# & \texttt{{\textbackslash}\#} & argument number \tabularnewline
+\hline
+% $
+\$ & \texttt{{\textbackslash}\$} & toggle math mode \tabularnewline
+\hline
+% %
+\% & \texttt{{\textbackslash}\%} & comment: ignore rest of line \tabularnewline
+\hline
+% &
+\& & \texttt{{\textbackslash}\&} & tabstop \tabularnewline
+\hline
+% _
+\_ & \texttt{{\textbackslash}{\_}} & subscript in math mode \tabularnewline
+\hline
+% {
+\{ & \texttt{{\textbackslash}\{} & open environment \tabularnewline
+\hline
+% }
+\} & \texttt{{\textbackslash}\}} & close environment \tabularnewline
+\hline
+% ~
+{\~{}} & \texttt{{\textbackslash}{\~{}}\{\}} & non-breaking space \tabularnewline
+{\textasciitilde} & \texttt{{\textbackslash}textasciitilde} & non-breaking space \tabularnewline
+\hline
+% \
+{\textbackslash} & \texttt{{\textbackslash}textbackslash} & begin command \tabularnewline
+\end{tabular}
+\end{small}
+\caption{{\LaTeX} characters that require special handling}
+\label{lockhart-tab1}
+\end{table}
+
+\subsection{New Macros}\label{lockhart-newmacros}
+
+A number of macros based on the \texttt{url} package are available
+for this year. They are:
+\begin{itemize}
+\item \ident{ident} -- intended for identifiers,
+ \texttt{{\textbackslash}ident\{some\_text\}} sets the text in
+ \texttt{tt} and may break the line at any punctuation. Spaces are deleted.
+\item \ident{lident} -- intended for long identifiers, this works the
+ same as \ident{ident}, but sets the text in a smaller font.
+\item \ident{code} -- intended for short excerpts of code, this works
+ like \ident{ident}, except that spaces are preserved. Lines are not
+ broken on spaces.
+\item \ident{lcode} -- intended for longer excerpts of code, this works
+ like \ident{code}, except that text is set in a smaller font. This
+ probably does not work correctly for multi-line code fragments;
+ consider using the \texttt{cprog} package for that.
+\item \ident{brcode} -- intended for excerpts of source code, this works
+ like \ident{code}, except that line breaks may occur at spaces.
+\item \ident{lbrcode} -- intended for excerpts of source code, this works
+ like \ident{brcode}, except that text is set in a smaller font.
+\end{itemize}
+
+Examples are shown in Table~\ref{lockhart-macro-examples}.
+
+\begin{table*}[tb]
+\begin{itemize}
+\item \verb|\ident{a_long_identifier}| --- this example in turn yields \ident{a_long_identifier}
+
+\item \texttt{{\textbackslash}lident|an\_even\_lon ger\_identifier|} --- this
+ in turn
+ yields \lident|an_even_lon ger_identifier|
+
+\item \verb|\lcode{int un_useful(int *a) { return *a; }}| --- this
+ yields
+ \lcode{int un_useful(int *a) { return *a; }}
+
+\item \verb|\lbrcode{int un_useful(int *a) { return *a; }}| --- this
+ yields
+ \lbrcode{int un_useful(int *a) { return *a; }}
+
+\end{itemize}
+\caption{Examples of New Macros}
+\label{lockhart-macro-examples}
+\end{table*}
+
+\section{Typesetting conventions}
+
+You shouldn't have to worry too much here, but I'll illustrate a few
+things.
+
+Quotation marks, both `single' and ``double,'' look good in body text,
+while other \texttt{"styles"} might look better for other uses. Note
+that when you're typesetting for a compiler, punctuation goes outside
+the \texttt{"quotation marks",} but punctuation is placed
+\textit{inside} the quotation marks for ``narrative.''
+
+There are multiple flavors of dashes---the em dash, the en--dash, the
+oft-used hyphen, and the minus sign (math mode: $2x - 3$). Note that
+the preceding sentence contains them all.
+
+\subsection{Choices for uniformity}
+
+For source code, we have chosen the common style of not beginning a
+line with a comma. The compiler doesn't care, but keeping the printed
+page consistent between papers is useful.
+
+Identifiers may need to be split between lines, so we use a typewriter font
+and mark up the string appropriately:
+\texttt{sys\_\linebreak[0]sched\_\linebreak[0]yield()} or
+\texttt{\small A\_\linebreak[0]REALLY\_\linebreak[0]LONG\_\linebreak[0]IDENTIFIER\_\linebreak[0]THAT\_\linebreak[0]NEEDS\_\linebreak[0]TO\_\linebreak[0]BE\_\linebreak[0]THIS\_\linebreak[0]LONG}
+would be good examples\footnote{Alternatively, see the macros in
+Section~\ref{lockhart-newmacros}.}. To tell {\LaTeX} that an unhyphenated line
+break is okay if required, just use \texttt{{\textbackslash}linebreak[0]}.
+
+\subsection{Points of English}
+
+A few nitpicks:
+\begin{enumerate}
+\item \textit{it's} is a macro which expands to \textit{it is}. It
+ has no other meaning.
+\item \textit{its} is possessive.
+\item Items in a series are: \textit{a}, \textit{b}, and \textit{c}.
+ Never \textit{a}, \textit{b} and \textit{c}. This rule makes it
+ much simpler when you must use complex values of (for example)
+ \textit{b}. For truly long constructs, you may use a semicolon
+ as a delimiter rather than a comma.
+\item Some phrases should be hyphenated---for instance, when you're
+ using an adjective to modify another adjective, or a noun that
+ appears before another. A high-performance system; a win-win
+ situation; a high-level loop transformation; a slow-moving train,
+ but a slowly moving car; that sort of thing. Most of the time,
+ people will still be able to parse the results easily if the sentence isn't
+ perfect.
+\item Be happy, know your homonyms. There, they're, their. To, two,
+ too. Your, you're. And so forth. Spelling checkers show their
+ limitations on this\ldots
+\end{enumerate}
+
+Of course, proofreading is a wonderful thing, and every bit of it you
+(or any guinea pigs you can persuade) do is a Good Thing. I'll
+correct what I notice, but I have only two eyes and there's a lot of
+margin-crunching formatting to be done. There are certain
+times, often with non-native speakers, where I'm not clear on the
+meaning. If I catch something like that in time, I'll ask; if not,
+chances are that I'll keep my hands off of the section in question so
+as not to insert a woefully incorrect meaning.
+
+\section{Tools}
+
+It helps to have the following installed on your system:
+\begin{itemize}
+\item \textbf{\tt tetex}. The most common \TeX\ package for Linux.
+\item \textbf{\tt dviutils}. Required for building the 2005
+ Proceedings. Can combine DVI files as well as other useful tasks.
+\item \textbf{\tt transfig}. Graphics in \texttt{.fig} format,
+ useful for figures.
+\item \textbf{\tt dia}. Also useful for figures.
+\item \textbf{\tt ImageMagick}. Great for photographs and graphics
+ manipulation \& conversion.
+\item \textbf{\tt xpdf} or \textbf{\tt acroread} for viewing PDF
+ files. Other viewers can also do a nice job.
+\item Utilites often found in {\tt tetex}, but which your distribution
+ may have packaged separately: \texttt{xdvi}, \texttt{dvips},
+ \texttt{pdflatex}.
+\item \textbf{\tt ghostscript} for handling Postscript.
+\end{itemize}
+
+\section{Examples}
+
+Some examples from previous conferences have been included
+in this package; hopefully they'll be useful in handling code
+examples. Reducing everything to \texttt{footnotesize} or setting it
+\texttt{verbatim} won't magically make it fit on the page, alas. Have
+a look in the \texttt{EXAMPLE} directory to find these items:
+\begin{itemize}
+\item {\raggedright \texttt{\small bibli\-og\-raphy.tex}, \texttt{\small bibli\-og\-ra\-phy2.tex}, and
+ \texttt{\small ref\-er\-ences.tex}. Different ways of citing any relevant
+ works external to your paper.}
+\item \texttt{conditional.tex}. If you have {\LaTeX} code that works
+ only by itself and need to do conditional processing, here's an example.
+\item \texttt{\small complexCode/complexFigure.tex}. An example of a complex
+ figure containing side-by-side C code.
+\item \texttt{figures.tex}. Different ways of doing figures.
+\item \texttt{includegraphics.tex}. Different ways to include graphics.
+\item \texttt{legalese.tex}. Legal disclaimers.
+\item \texttt{multipleAuthors.tex}. Formatting examples for multiple authors.
+\item \texttt{tables.tex}. Different ways to do tables.
+\end{itemize}
+
+\subsection{Bad Examples}
+
+A prior year's paper gave the example of setting \texttt{verbatim}
+sections in \texttt{tt}. Repetitiously and redundantly enough, that's
+the default. So, please, no instances of
+\begin{verbatim}
+ {\tt
+ \begin{verbatim}
+ ...
+\end{verbatim}
+
+\begin{small}
+\centering
+\textbf{Corrected.} You might, however, wish to do something like this instead:
+\begin{verbatim}
+ \begin{small}
+ \centering
+ \textbf{Corrected.} You ...
+ \begin{verbatim}
+ ...
+\end{verbatim}
+\end{small}
+Of course, check the source of this document
+(\lident{EXAMPLE/myPaper.tex}) for more ideas. Valid font sizes, for
+instance, include \texttt{normalsize}, \texttt{small},
+\texttt{footnotesize}, \texttt{scriptsize}, and \texttt{tiny}. Please
+don't use anything larger than \texttt{normalsize}.
+
+
+Another extant bad example is the practice of ending paragraphs with a
+double backslash (\texttt{\textbackslash\textbackslash}) \textit{and}
+a blank line. This creates unwanted, superfluous whitespace between
+paragraphs. \LaTeX\ is, believe it or not, supposed to be easy. Just
+leave one or more blank lines between paragraphs and you'll be fine.
+
+
+\section{Style packages}
+
+For 2005, we are no longer using the \texttt{combine} package. You
+will find some additional useful packages in the \texttt{Texmf}
+directory, however. The empty papers are set up to use the
+\texttt{url}, \texttt{zrl}, and \texttt{graphicx} packages by default,
+in hopes that this will be useful for most papers.
+
+You may also find it helpful to set the \texttt{TEXINPUTS} environment
+variable as follows:
+\begin{center}
+{\footnotesize \texttt{export TEXINPUTS='.//:\$\{LOCALTEX\}//:'}}
+\end{center}
+%
+% or for those of you who'd like to cut'n'paste from the source:
+% export TEXINPUTS='.//:${LOCALTEX}//:'
+%
+Adding the above to your \texttt{\textasciitilde/.bashrc} can
+save you the trouble of typing it for future runs.
+
+% well, since 'combine' is gone, so should this problem be...
+%% The most common cause of build problems is including style packages
+%% that aren't compatible with \texttt{combine}. Unfortunately, this
+%% includes\footnote{At least using last year's versions, that was the case.}
+%% things like \texttt{hyperref} and \texttt{html}---two
+%% otherwise-wonderful packages for handling URLs and such.
+
+To build your paper, you should be able to \texttt{cd} to the toplevel
+directory (the one that contains your individual directory)
+and type the following at a shell prompt:
+
+\begin{small}
+\begin{verbatim}
+ DIRS=yourname make
+\end{verbatim}
+\end{small}
+
+Ambitious authors are encouraged to install the \texttt{dviutils}
+and \texttt{pdftk} packages and type \texttt{make} from the top-level directory.
+If all goes well, you'll get something that looks quite like the finished \textit{Proceedings}.
+
+\section{Graphics and Symbols}
+
+For importing graphics, don't forget to omit any file extensions.
+That's because \texttt{latex} and \texttt{pdflatex} look for
+different formats. The output formats we generate are PDF, PS, and
+DVI; you will thus want to generate both EPS and PDF copies of any
+figures that use structured graphics.
+
+The easiest ways to get special symbols such as
+Registered\textregistered\ and Trademark\texttrademark\
+is to use the \LaTeX2e\ \texttt{{\textbackslash}text} constructs:
+thus, \texttt{{\textbackslash}textregistered} and
+\texttt{{\textbackslash}texttrademark}.
+
+\section{\TeX\ References}
+
+If you aren't familiar with {\LaTeX}, there are many sources of
+information available. Your distribution might have additional
+documentation in \brcode{/usr/share/texmf}, or you might find manuals
+for a package (such as \texttt{cprog}) out at {\small\url{http://www.ctan.org}}.
+
+If you are completely new to {\TeX} and {\LaTeX}, you will probably
+find it highly useful to visit \texttt{\small http://www.tug.org/} and
+especially \texttt{\small http://www.tug.org/begin.html} for online
+and paper references.
+
+For a free and extremely useful document, try:
+\texttt{\small http://www.tug.org\linebreak[0]/tex-archive\linebreak[0]/info\linebreak[0]/lshort\linebreak[0]/english\linebreak[0]/lshort.pdf}.
+Note that translations\footnote{French, for instance:
+\url{http://www.tug.org/tex-archive/info/lshort/french/flshort-3.20.pdf};
+note also that this section of the Example paper shows different ways
+of handling URLs.}
+are available, for those more comfortable in something other than
+English:
+\texttt{\small http://www.tug.org\linebreak[0]/tex-archive\linebreak[0]/info\linebreak[0]/lshort/}
+
+%%% Cut'n'paste versions of those URLs:
+% http://www.tug.org/tex-archive/info/lshort/english/lshort.pdf
+% http://www.tug.org/tex-archive/info/lshort/french/flshort-3.20.pdf
+% http://www.tug.org/tex-archive/info/lshort/
+
+I tend to use \textit{A Guide to \LaTeX} (Kopka \& Daly, ISBN 0-201-39825-7) and the
+\textit{\LaTeX\ Graphics Companion} (Goossens, Rahtz, \& Mittelbach)
+the most these days.
+
+You are also welcome to send questions to me at
+\texttt{{lockhart}{@}{redhat.com}} (work) or
+\texttt{{lockhart}{@}{oco.net}} (home).
+%
+% {}'s begin a new environment in TeX, as in C.
+% A few extra {}'s might let an email address escape notice
+% by spammers' collecting 'bots, should the .tex file wind
+% up on a website somewhere at some point.
+%
+
+As usual, please refrain from submitting anything remotely resembling
+a Microsoft Word \texttt{.doc} file\ldots \texttt{<grimace>}. It's a
+\textit{lot} easier for me to fix up plain ASCII text and
+convert/insert accompanying graphics, if you find yourself terminally
+confused or in a dire emergency.
+
+\begin{figure}[!ht]
+\begin{center}
+\hrule
+\vspace*{2mm}
+\textbf{\textsc{Submitting a Paper}}
+\begin{footnotesize}
+\begin{verbatim}
+ cd OLS2005
+ make clean
+ tar zcf yourLastName.tar.gz \
+ yourLastName
+\end{verbatim}
+
+E-mail the resulting tarball to
+\texttt{papers{@}linuxsymposium{.}org}.
+\end{footnotesize}
+\vspace*{2mm}
+\hrule
+
+\caption{Submitting a paper}
+\label{lockhart-fig1}
+
+\end{center}
+\end{figure}
+
+\section{Simple rules to keep your formatting team happy}
+\label{lockhart-subrules}
+\begin{enumerate}
+\item To submit your paper, just \texttt{make clean} in your
+ directory, \texttt{tar} it up, and send the resulting gzipped tarball to
+ \texttt{papers@linuxsymposium.org} or \texttt{papers@gccsummit.org},
+ as appropriate. See Figure~\ref{lockhart-fig1} for an example.
+\item Updates. If you need to change something, please send both
+ a patch and an updated tarball. The most convenient form depends on
+ how many changes have been made since you submitted your paper.
+ However, if your change is trivial---a line or two, for instance---a
+ simple email will do.
+\item Use the existing directory structure, please. The directory
+ names are intended to be the last name of the presenter (lowercase,
+ punctuation omitted); the main paper should be
+ \texttt{lastname.tex} and any additional files should be
+ \texttt{lastname-file.extension}. This is basically to keep
+ the file owners straight, and to allow us the option to
+ instruct {\LaTeX} to search the entire (sub)directory hierarchy for
+ input files. You don't want someone else's file by mistake, right?
+ Putting your name on it helps to keep things straight. The same
+ goes for \verb|\label{}| and \verb|\ref{}| commands.
+\item Omit file extensions and pathnames in your {\LaTeX} source,
+ please. By omitting the path and just saying
+ \texttt{{\textbackslash}input\{lockhart-abstract\}},
+ a paper can be built from both its directory and from its
+ parent directory. For graphics, omitting the extension lets
+ \texttt{latex} or
+ \texttt{pdflatex} pick its preferred input format for the best
+ possible results.
+\item No proprietary document/graphics formats, please. This
+ especially means MS
+ Office, Visio, or other such tools. \LaTeX\ can, however, import
+ EPS and PDF, if you can save in those formats.
+\item Originals, please. For example, if you have photographs, send
+ along the full-resolution JPG (crop out any undesired elements if
+ necessary, but use the maximum resolution). For diagrams, please
+ send the XFig or Dia files.
+ This ensures the best possible print quality. Printing will be in
+ black and white, but the online PDF's will be in full color. Your
+ screen is probably about 72dpi, but the typesetter is probably using
+ something that's at least 1200dpi. The more resolution, the better.
+ (If, however, your originals are outrageously huge, feel free to ask!)
+ Since hardcopy will be printed in Ottawa, the papersize will be
+ North American ``letter.'' Please keep that in mind if you are
+ concerned about page breaks and such.
+\item Do \textbf{\textit{not}} use sans-serif fonts, or go changing
+ global font sizes. We're using 12-point Times Roman for body text.
+ Likewise, please don't go haywire with italics. I once received a
+ huge collection of tables, each of which set the font size and face
+ on an item-by-item basis. \textit{Incorrectly}.
+\item Those of you who like to begin lines of code with commas: as
+ previously mentioned, we're
+ typesetting the code with the comma attached to the preceding
+ identifier (as most publishers do). Feel free to post your
+ preferred version to the web and to refer to it in the paper.
+\item If possible, please avoid trivial new macros. Should you need
+ to add something, though, please use
+ \texttt{{\textbackslash}providecommand} rather than
+ \texttt{{\textbackslash}newcommand}, and try for a relatively
+ unique name (papers tend to blur together during long editing sessions).
+\item Trivia note: generally speaking, it takes longer to edit a
+ submission from a {\TeX}spert than plain, unmarked ASCII. If you
+ consider yourself a {\LaTeX} expert and love to write fancy new
+ commands, please consider contributing clean-ups or well-tested
+ new features for the infrastructure rather than customizing the
+ daylights out of your submission. Thanks!
+\end{enumerate}
+
+This paper builds correctly using the tetex-2.0.2-14FC2.2 package on
+Fedora Core 2, and the Fedora Core 3 tetex package. Please note that
+if you are using FC3, you may wish to update your \texttt{urw-fonts}
+package to 2.2-8 or better before viewing PDF files.
+
+Other distributions haven't been tested, but should work. If you run
+into problems, please let me know.
+
+And remember, it's only typesetting, not rocket science. Or hacking
+compilers or kernels. \texttt{:-)} Have some fun along the way\ldots
+
+\end{document}
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/references.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/references.tex
new file mode 100644
index 0000000..9359956
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/references.tex
@@ -0,0 +1,29 @@
+
+For those who don't want to use BiBTeX, a simple References section
+can do the trick. The following is from Rik van Riel's 2003
+Linux Symposium paper:
+
+\section{References}
+\raggedright
+Draves, Richard P. \textit{Page Replacement and Reference Bit
+Emulation in Mach.} In Proceedings of the USENIX Mach Symposium,
+Monterey, CA, November 1991.
+
+Y.\ Smaragdakis, S.\ Kaplan, and P.\ Wilson, \textit{EELRU: Simple and
+Effective Adaptive Page Replacement} in Proceeding of the 1999 ACM
+SIGMETRICS Conference, 1999.
+
+Gideon Glass and Pei Cao. \textit{Adaptive Page Replacement Based on
+Memory Reference Behavior.} In Proceedings of ACM SIGMETRICS 1997,
+June, 1997.
+
+D.\ Lee, J.\ Choi, J.-H.\ Kim, S.H.\ Noh, S.L.\ Min, Y.\ Cho, and
+C.S.\ Kim, \textit{LRFU: A spectrum of policies that subsumes the
+least recently used and least frequently used policies} IEEE
+Trans.\ Computers, vol.\ 50, no.\ 12, pp. 1352--1360, 2001.
+
+S.\ Jiang and X.\ Zhuang. \textit{LIRS: An efficient low inter-reference
+recency set replacement policy to improve buffer cache performance.}
+In Proc.\ of SIGMETRICS 2002.
+
+
diff --git a/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/tables.tex b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/tables.tex
new file mode 100644
index 0000000..e2cfb6c
--- /dev/null
+++ b/2005/flow-accounting-ols2005/OLS2005/EXAMPLE/tables.tex
@@ -0,0 +1,79 @@
+
+A simple table....
+
+\begin{table}[tbph]
+\begin{center}
+\caption{Summary of TAHI Conformance Test (usagi24-s20020401, \%)\label{tahi-usagi24}}
+\begin{tabular}{|c|c|c|c|}
+\hline
+Test Series & Pass & Warn & Fail \\
+\hline
+\hline
+Spec. & 100 & 0 & 0 \\
+ICMPv6 & 100 & 0 & 0 \\
+Neighbor Discovery & 79 & 5 & 15 \\
+Autoconf & 98 & 2 & 0 \\
+PMTU & 50 & 0 & 50 \\
+IPv6/IPv4 Tunnel & 100 & 0 & 0 \\
+Robustness & 100 & 0 & 0 \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+A full-page, far more complex table....
+
+\begin{table*}[t]
+\begin{center}
+\footnotesize
+\begin{tabular}{|l|l||r|r|r|r|r|r|r|r|r||r|}
+ \hline
+ \multicolumn{2}{|c||}{} & & \multicolumn{2}{|c|}{ANSI.os}
+ & & \multicolumn{2}{|c|}{POSIX.os} & \multicolumn{2}{|c|}{LSB.os}
+ & & RedHat7.3 \\
+ \cline{4-5} \cline{7-10}
+ \multicolumn{2}{|c||}{\raisebox{1.3ex}[0pt]{Section}}
+ & \multicolumn{1}{|c|}{\raisebox{1.3ex}[0pt]{ANSI.hdr}}
+ & \multicolumn{1}{|c|}{F} & \multicolumn{1}{|c|}{M}
+ & \multicolumn{1}{|c|}{\raisebox{1.3ex}[0pt]{POSIX.hdr}}
+ & \multicolumn{1}{|c|}{F} & \multicolumn{1}{|c|}{M}
+ & \multicolumn{1}{|c|}{F} & \multicolumn{1}{|c|}{M}
+ & \multicolumn{1}{|c||}{\raisebox{1.3ex}[0pt]{Total}} & Total \\
+ \hline
+ \hline
+ & Expect
+ & 386 & 1244 & 1244 & 394 & 1600 & 1600 & 908 & 908 & 8284 & 8284 \\
+ \cline{2-12}
+ \multicolumn{1}{|c|}{\raisebox{1.3ex}[0pt]{Total}}
+ & Actual
+ & 386 & 1244 & 1244 & 394 & 1600 & 1600 & 908 & 908 & 8284 & 8284 \\
+ \hline
+ \multicolumn{2}{|l||}{Succeeded}
+ & 176 & 1112 & 86 & 207 & 1333 & 0 & 695 & 0 & 3609 & 3583 \\
+ \multicolumn{2}{|l||}{Failed}
+ & 4 & 0 & 0 & 5 & 2 & 0 & 49 & 0 & 60 & 45 \\
+ \multicolumn{2}{|l||}{Warnings}
+ & 0 & 12 & 0 & 0 & 5 & 0 & 2 & 0 & 19 & 18 \\
+ \multicolumn{2}{|l||}{FIP}
+ & 2 & 0 & 0 & 2 & 2 & 0 & 1 & 0 & 7 & 7 \\
+ \multicolumn{2}{|l||}{Unresolved}
+ & 0 & 0 & 0 & 0 & 0 & 0 & 5 & 0 & 5 & 4 \\
+ \multicolumn{2}{|l||}{Uninitiated}
+ & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
+ \multicolumn{2}{|l||}{Unsupported}
+ & 203 & 0 & 0 & 179 & 72 & 0 & 59 & 0 & 513 & 513 \\
+ \multicolumn{2}{|l||}{Untested}
+ & 0 & 4 & 0 & 0 & 7 & 0 & 39 & 0 & 50 & 43 \\
+ \multicolumn{2}{|l||}{NotInUse}
+ & 1 & 116 & 1158 & 1 & 179 & 1600 & 58 & 908 & 4021 & 4021 \\
+ \hline
+\end{tabular}
+Key: F:function, M:macro;\ FIP: Further Information Provided
+\end{center}
+\hspace{5mm}
+\caption{LSB 1.2 testsuites result}
+\label{lsb_result}
+\end{table*}
+
personal git repositories of Harald Welte. Your mileage may vary