Browse Source

add lebenslauf to bewerbungs unterlagen.

Maximilian Ronniger 11 years ago
commit
544240c0fb

+ 153 - 0
lebenslauf/CV_Ronniger.tex

@@ -0,0 +1,153 @@
+%% start of file `template_en.tex'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+%TODO: letter format explizit angeben
+%\documentclass[11pt,a4paper]{moderncv}
+\documentclass[10pt]{moderncv}
+
+% moderncv themes
+%\moderncvtheme[blue]{casual}                 % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and 'roman' (for roman fonts, instead of sans serif fonts)
+%\moderncvtheme[green]{classic}                % idem
+\moderncvstyle{classic}       % idem
+
+% character encoding
+\usepackage[utf8]{inputenc}                   % replace by the encoding you are using
+
+%\usepackage[footnote]{glosstex}
+
+% adjust the page margins
+\usepackage[scale=0.8]{geometry}
+\recomputelengths                             % required when changes are made to page layout lengths
+
+% personal data
+\firstname{Maximilian~Ronniger}
+\familyname{}
+\title{Curriculum Vitae}               % optional, remove the line if not wanted
+%\address{Georg Bilgeri Strasse 50}{1220 Wien, Austria}    % optional, remove the line if not wanted
+\address{270 Overpeck Ave}{Ridgefield Park,  NJ 076660}    % optional, remove the line if not wanted
+%\mobile{mobile +43 660 7367226}                    % optional, remove the line if not wanted
+\phone{(201) 775-4443}                      % optional, remove the line if not wanted
+\email{maximilian.ronniger  (a) gmail.com}                      % optional, remove the line if not wanted
+%\extrainfo{additional information (optional)} % optional, remove the line if not wanted
+%\photo[64pt]{my_photo_smaller}                         % '64pt' is the height the picture must be resized to and 'picture' is the name of the picture file; optional, remove the line if not wanted
+%\quote{}                 % optional, remove the line if not wanted
+
+%\nopagenumbers{}                             % uncomment to suppress automatic page numbering for CVs longer than one page
+
+
+%----------------------------------------------------------------------------------
+%            content
+%----------------------------------------------------------------------------------
+\begin{document}
+\maketitle
+%\makequote
+\section{\textsc{Personal Information}}
+\cvitem{Date of Birth}{January 25, 1984}
+\cvitem{Place of Birth}{Vienna, Austria}
+\cvitem{Nationality}{Austrian}
+%\cvitem{Marital Status}{Engaged to a us citizen}
+
+
+%Citizenship/
+
+\section{Education}
+\cventry{2005 - 2010}{Bachelor Software \& Information Engineering}{Vienna University of Technology}{Vienna}{Austria}
+%\cventry{\hfill}{\textsc{Undergraduate Thesis}}{}
+\cvitem{}{}{}
+\vspace{-.20em}
+\cvitem{}{\textsc{Undergraduate Thesis}}{}
+% \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
+%      \raggedleft\hintfont{#2} &{#3}%
+%  \end{tabular}\\[#1]}
+\cvitem{title}{\emph{A Robust and Flexible Test Environment for VoIP Security Tests}}{}
+%\cvitem{supervisors}{Florian Frankhauser}
+\cvitem{description}{\small More research on VoIP security is needed to enhance the level of security of VoIP systems and show the implications of failing to take appropriate security measures. This work describes a robust and flexible VoIP test environment to study known vulnerabilities and research new attacks.}
+
+\cventry{1999 – 2004}{Matura}{HTL Donaustadt (Higher Technical Institute - technology orientated higher colleges)}{Vienna}{Austria}{Computer engineering specialization\, Cum Laude}  % arguments 3 to 6 are optional
+
+
+%\section{Master thesis}
+%\cvline{title}{\emph{Title}}
+%\cvline{supervisors}{Supervisors}
+%\cvline{description}{\small Short thesis abstract}
+
+\section{Experience, Working Experience}
+\subsection{Vocational}
+\cventry{2006 - 2010}{Undergraduate Tutor}{INSO Industrial Software Department}{Vienna University of Technology}{Austria}{Assisted the graduate Teaching Assistant with preparation and grading of security courses. Laboratory and Capture the Flag Contest Preparation. Held a Lesson on system Hardening in 2009.}                % arguments 3 to 6 are optional
+
+
+
+\cventry{2008 - 2009}{IT-Security division of RISE}{Research Industrial Systems Engineering GmbH}{Schwechat}{Austria}{Conducted Project work for external Clients, details listed below.}                % arguments 3 to 6 are optional
+
+
+\cventry{}{Security Consultant}{Bundesrechenzentrum GmbH (Austrian federal data center ltd.)}{Vienna}{Austria}{Penetration testing of eVoting System for the Austrian Students Association Election, junior Administrator for eVoting System (Feb 2010-Mai 2009)}                % arguments 3 to 6 are optional
+
+\cventry{}{Security Consultant}{Gesellschaft für Telematikanwendungen
+der Gesundheitskarte mbH (gematik, Society for applications of telematics health card ltd.)}{Berlin}{Germany}{review of Security documents, Penetration testing a live test environment before launch (Juni 2008-Jan 2009)}                % arguments 3 to 6 are optional
+
+\cventry{2005-2006}{Zivildienst (compulsory paid community service)}{Bundespolizeidirektion Wien (federal police head office Vienna)}{Vienna}{Austria}{ traffic  regulation 1 - 3 times a day, clerical  activity the rest of the day}                % arguments 3 to 6 are optional
+
+\subsection{Internships}
+\cventry{July 2002}{Intern}{IT,  Austrian Research Centers Seibersdorf (ARCS, renamed to Austrian Institute of Technology in 2009)}{Seibersdorf}{Austria}{research student on embedded system papers}                % arguments 3 to 6 are optional
+\cventry{July 2001}{Intern}{PICS, ARCS}{Seibersdorf}{Austria}{development of a online questionnaire}                % arguments 3 to 6 are optional
+\cventry{July 2000}{Intern}{Silver Server ISP}{Vienna}{Austria}{registration of Domanins through various registrars, experience with the DNS system}                % arguments 3 to 6 are optional
+
+%\subsection{Miscellaneous}
+%\cventry{year--year}{Job title}{Employer}{City}{}{Description line 1\newline{}Description line 2}% arguments 3 to 6 are optional
+
+\vspace{.4in}\section{ADDITIONAL INFORMATION, Computer skills} 
+\cvcomputer{Languages}{Java, C, C++, Assembler (x86-64, Alpha)
+	PHP, Perl, Python} {Academic}{Prolog, Haskell}
+\cvline{Programming tools}{gcc, make, flex, yacc, Version Control (svn), Eclipse} {}{}
+
+\cvcomputer{Platforms}{Linux (Unix), MacOS X, Windows various versions}  {Databases}{SQL, XML, XSLT, DNS} 
+\cvcomputer{Web technologies}{(X)HTML, CSS, JavaScript, AJAX, XSLT}{Services}{HTTP, Filtering-Proxy, DNS (Bind)}
+\cvcomputer{Networking}{IP, Ethernet, VPN, WLAN}{Penetration testing}{nikto, w3af, nmap,...}
+\cvcomputer{Tools}{\LaTeX, Vim, Word, Excel, PowerPoint} {Misc} {ECAD EAGLE Layout editor}
+%\cvcomputer{}{} {}{}
+
+\section{Soft Skills}
+\cvlistdoubleitem{Patient}{Balanced}
+\cvlistdoubleitem{Works well under stress}{Dependable}
+\cvlistdoubleitem{Easy-Going}{fun to work with}
+
+
+\section{Languages}
+\cvlanguage{German}{Fluent}{My mother tongue.}
+\cvlanguage{English}{Fluent}{Speaking, reading, and writing.}
+%\cvlanguage{language 3}{Skill level}{Comment}
+
+\section{Interests}
+\cvline{Inline Skating}{\small My lifelong sport.}
+\cvline{Bicycling}{\small A fun alternative to running.}
+%\cvline{Meditation}{\small A excellent way to balance a hectic live.}
+%\cvline{Audio Live Mixing}{\small Volunteered to help in 2003, when my meditation group got portable audio equipment,  my passion since than.}
+\cvline{Embedded Systems}{\small Making slim Appliances and increasing efficiently and practice my Electrical engineering skills by extending/modifying embedded systems.}
+
+\closesection{}                   % needed to renewcommands
+\renewcommand{\listitemsymbol}{-} % change the symbol for lists
+
+%\section{Extra 2}
+%\cvlistitem[\Neutral]{Item 1}
+%\cvlistitem[\Neutral]{Item 2}
+%\cvlistitem[\Neutral]{Item 3}
+%\cvlistitem[+]{Item 3}            % optional other symbol
+
+%\section{Extra 2}
+%\cvlistdoubleitem[\Neutral]{Item 1}{Item 4}
+%\cvlistdoubleitem[\Neutral]{Item 2}{Item 5}
+%cvlistdoubleitem[\Neutral]{Item 3}{}
+
+% Publications from a BibTeX file
+%\nocite{*}
+%\bibliographystyle{plain}
+%\bibliography{publications}       % 'publications' is the name of a BibTeX file
+
+\end{document}
+
+
+%% end of file `template_en.tex'.

+ 153 - 0
lebenslauf/CV_Ronniger_de.tex

@@ -0,0 +1,153 @@
+%% start of file `template_en.tex'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+%TODO: letter format explizit angeben
+\documentclass[10pt,a4paper]{moderncv}
+%\documentclass[10pt]{moderncv}
+
+% moderncv themes
+%\moderncvtheme[blue]{casual}                 % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and 'roman' (for roman fonts, instead of sans serif fonts)
+%\moderncvtheme[green]{classic}                % idem
+\moderncvstyle{classic}       % idem
+
+% character encoding
+\usepackage[utf8]{inputenc}                   % replace by the encoding you are using
+
+%\usepackage[footnote]{glosstex}
+
+% adjust the page margins
+\usepackage[scale=0.8]{geometry}
+\recomputelengths                             % required when changes are made to page layout lengths
+
+% personal data
+\firstname{Maximilian~Ronniger}
+\familyname{}
+\title{Curriculum Vitae}               % optional, remove the line if not wanted
+\address{Georg Bilgeri Strasse 50}{1220 Wien, Österreich}    % optional, remove the line if not wanted
+%\address{270 Overpeck Ave}{Ridgefield Park,  NJ 076660}    % optional, remove the line if not wanted
+\mobile{mobile +43 660 7367226}                    % optional, remove the line if not wanted
+%\phone{(201) 775-4443}                      % optional, remove the line if not wanted
+\email{maximilian.ronniger  (a) gmail.com}                      % optional, remove the line if not wanted
+%\extrainfo{additional information (optional)} % optional, remove the line if not wanted
+%\photo[64pt]{my_photo_smaller}                         % '64pt' is the height the picture must be resized to and 'picture' is the name of the picture file; optional, remove the line if not wanted
+%\quote{}                 % optional, remove the line if not wanted
+
+%\nopagenumbers{}                             % uncomment to suppress automatic page numbering for CVs longer than one page
+
+
+%----------------------------------------------------------------------------------
+%            content
+%----------------------------------------------------------------------------------
+\begin{document}
+\maketitle
+%\makequote
+\section{\textsc{Angaben zur Person}}
+\cvitem{Geburtstag}{Jänner 25, 1984}
+\cvitem{Geburtsort}{Wien, Österreich}
+\cvitem{Staatsangehörigkeit}{Österreich}
+%\cvitem{Marital Status}{Engaged to a us citizen}
+
+
+%Citizenship/
+
+\section{Ausbildung}
+\cventry{2004 - 2009}{Bachelor Studium Software \& Information Engineering}{Technische Universität}{Wien}{Österreich}
+%\cventry{\hfill}{\textsc{Undergraduate Thesis}}{}
+\cvitem{}{}{}
+\vspace{-.20em}
+\cvitem{}{\textsc{Bachelor Arbeit}}{}
+% \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
+%      \raggedleft\hintfont{#2} &{#3}%
+%  \end{tabular}\\[#1]}
+\cvitem{title}{\emph{A Robust and Flexible Test Environment for VoIP Security Tests}}{}
+%\cvitem{supervisors}{Florian Frankhauser}
+\cvitem{description}{\small More research on VoIP security is needed to enhance the level of security of VoIP systems and show the implications of failing to take appropriate security measures. This work describes a robust and flexible VoIP test environment to study known vulnerabilities and research new attacks.}
+
+\cventry{1999 – 2004}{Matura}{HTL Donaustadt}{Wien}{Österreich}{Fachrichtung Technische Informatik\, Cum Laude}  % arguments 3 to 6 are optional
+
+
+%\section{Master thesis}
+%\cvline{title}{\emph{Title}}
+%\cvline{supervisors}{Supervisors}
+%\cvline{description}{\small Short thesis abstract}
+
+\section{Erfahrung}
+\subsection{Berufserfahrung}
+\cventry{2006 - 2010}{Tutor}{INSO Industrial Software Department}{TU Wien}{Österreich}{
+    Vorbereiten der Laboraufgaben, mehrerer CTF Herausforderungen, Mithilfe bei der Beurteilung der Prüfungen. Ein Vortrag über System Hardening in 2009}                % arguments 3 to 6 are optional
+
+
+\cventry{2008 - 2009}{IT-Sicherheitsabteilung RISE}{Research Industrial Systems Engineering GmbH}{Schwechat}{Österreich}{Einsatz in Projekten für externe Kunden, Details unten.}                % arguments 3 to 6 are optional
+
+
+\cventry{}{Security Consultant}{Bundesrechenzentrum GmbH}{Wien}{Österreich}{Sicherheitstests des eVoting Systems für die  Österreichischen Hochschülerschafts Wahlen (Feb 2010-Mai 2009)}                % arguments 3 to 6 are optional
+
+\cventry{}{Security Consultant}{Gesellschaft für Telematikanwendungen
+der Gesundheitskarte mbH)}{Berlin}{Deutschland}{Prüfen von Sicherheits-Dokumenten, Sicherheits-Tests eines Prototypen Systems (Juni 2008-Jan 2009)}                % arguments 3 to 6 are optional
+
+\cventry{2005-2006}{Zivildienst}{Bundespolizeidirektion Wien}{Wien}{Österreich}{Verkehrs Sicherung vor Schulen, Bürotätigkeiten}                % arguments 3 to 6 are optional
+
+\subsection{Praktika}
+\cventry{Juli 2002}{Intern}{IT,  Austrian Research Centers Seibersdorf (ARCS, seid 2009 Austrian Institute of Technology)}{Seibersdorf}{Österreich}{Vorbereitungs Arbeiten für embedded systems Paper}                % arguments 3 to 6 are optional
+\cventry{Juli 2001}{Intern}{PICS, ARCS}{Seibersdorf}{Österreich}{Erstellen einer online Umfrage}                % arguments 3 to 6 are optional
+\cventry{Juli 2000}{Intern}{Silver Server ISP}{Wien}{Österreich}{DNS, Domain Registrierungen, Domain Grundlagen}                % arguments 3 to 6 are optional
+
+%\subsection{Miscellaneous}
+%\cventry{year--year}{Job title}{Employer}{City}{}{Description line 1\newline{}Description line 2}% arguments 3 to 6 are optional
+
+\vspace{.4in}\section{Detailierte Qualifikationen} 
+\cvcomputer{Programmier-Sprachen}{Java, C, C++, Assembler (x86-64, Alpha)
+	PHP, Perl, Python} {Academic}{Prolog, Haskell}
+\cvline{Programmier-Werkzeuge}{gcc, make, flex, yacc, Version Control (svn), Eclipse} {}{}
+
+\cvcomputer{Plattformen}{Linux (Unix), MacOS X, Windows}  {Datenbanken}{SQL, XML, XSLT, DNS} 
+\cvcomputer{Web Technologien}{(X)HTML, CSS, JavaScript, AJAX, XSLT}{Server}{HTTP, Filtering-Proxy, DNS (Bind)}
+\cvcomputer{Netzwerk}{IP, Ethernet, VPN, WLAN}{Penetration testing}{nikto, w3af, nmap,...}
+\cvcomputer{Allgemeine Werkzeuge}{\LaTeX, Vim, Word, Excel, PowerPoint, EAGLE Layout editor}{}{}
+%\cvcomputer{}{} {}{}
+
+\section{Soft Skills}
+\cvlistdoubleitem{Geduldig}{Ausgeglichen}
+\cvlistdoubleitem{Gute Leistung auch in stressigen Situationen}{Zuverlässig}
+%\cvlistdoubleitem{Easy-Going}{fun to work with}
+
+
+\section{Sprachen}
+\cvlanguage{Deutsch}{fließend}{Muttersprache}
+\cvlanguage{Englisch}{fließend}{Sprechen, Lesen und Schreiben}
+%\cvlanguage{language 3}{Skill level}{Comment}
+
+%\section{Interressen}
+%\cvline{Inline Skating}{\small lieblingssport}
+%\cvline{Bicycling}{\small A fun alternative to running.}
+%\cvline{Meditation}{\small A excellent way to balance a hectic live.}
+%\cvline{Audio Live Mixing}{\small Volunteered to help in 2003, when my meditation group got portable audio equipment,  my passion since than.}
+%\cvline{Embedded Systems}{\small Making slim Appliances and increasing efficiently and practice my Electrical engineering skills by extending/modifying embedded systems.}
+
+\closesection{}                   % needed to renewcommands
+\renewcommand{\listitemsymbol}{-} % change the symbol for lists
+
+%\section{Extra 2}
+%\cvlistitem[\Neutral]{Item 1}
+%\cvlistitem[\Neutral]{Item 2}
+%\cvlistitem[\Neutral]{Item 3}
+%\cvlistitem[+]{Item 3}            % optional other symbol
+
+%\section{Extra 2}
+%\cvlistdoubleitem[\Neutral]{Item 1}{Item 4}
+%\cvlistdoubleitem[\Neutral]{Item 2}{Item 5}
+%cvlistdoubleitem[\Neutral]{Item 3}{}
+
+% Publications from a BibTeX file
+%\nocite{*}
+%\bibliographystyle{plain}
+%\bibliography{publications}       % 'publications' is the name of a BibTeX file
+
+\end{document}
+
+
+%% end of file `template_en.tex'.

+ 80 - 0
lebenslauf/moderncv/CHANGELOG

@@ -0,0 +1,80 @@
+version 0.6 (28 May 2007)
+  - corrected some spacing bugs and cleaned up the code.
+  - corrected a bug in the bibliography file of the examples spotted by
+  U. Stöhr.
+  - added color variants to the classic and casual style, as suggested by
+  U. Stöhr.
+  - added a requested by A. Martin.
+  - added commands to include a mobile phone and fax number.
+  - made the symbols used for the phone number, the email, ... customizable.
+  To modify those symbols, just redefine \phonesymbol, emailsymbol, ...
+  - corrected the pdf information given to hyperref as pointed out by
+  C. Knuepfer.
+  - rewrote the examples.
+
+version 0.5 (9 September 2006)
+  - added a \photo command to display a picture. That command takes the name of
+  the file with the picture as argument, and the desired height as optional
+  argument.
+  - implemented the needed commands to make moderncv compatible with BibTeX, as
+  suggested by J. Lie. This makes it possible to display one's publications,
+  stored in the BibTeX file 'publications.bib'
+  by using:
+    \nocite{*}
+    \bibliographystyle{plain}
+    \bibliography{publications}
+  As usual, the name of the section title can be changed by redefining the
+  command \refname.
+  - added the \today command, useful for example if one need to add the date the
+  resumé was produced with
+    \closesection{}
+    \vfill{\hfill{\scriptsize Produced \today.}}
+  at the end of your CV, as suggested by F. Hammann.
+
+version 0.4 (2 May 2006)
+  - removed the dependency on the geometry package, so that users can now invoke
+  it themselve, and easily change the geometry of the page.
+
+version 0.3 (10 April 2006)
+  - moderncv now uses the 'longtable' class, allowing cv sections to split
+  across multiple pages.
+  - the different lengths used by moderncv are now customizable! In particular,
+  the first column (the one containing the date in the examples), can now be set
+  to any width, for people needing a smaller or larger one. To do that, either
+  use
+    \sethintscolumnlength{<length>},
+  where <length> is the desired length in a unit LaTeX understands, or
+    \sethintscolumntowidth{<string>},
+  where <string> is a string of the desired length (usually, the longest string
+  that has to appear in the column). Thanks to A. Pöge for pointing out the need
+  of such a feature.
+  - added the command \emptysection{}, which makes it possible to start a
+  section without name. In combination with \closesection{}, this makes it
+  possible to drop out of the layout of moderncv, and come back to it later.
+  This should make the inclusion of arbitrary elements not covered by moderncv
+  code possible.
+  - corrected a spacing problem in the cventry command, as pointed out and
+  solved by B. Eßmann.
+
+version 0.2 (6 March 2006)
+  - rewrite of the code to have the styles (fonts, colours, headers and footers)
+  be defined in different files than the class. The styles are now defined in a
+  separate file per style, named moderncvstyle<style_name>. It should now be
+  easy to write your own style, starting from moderncvstyleempty.sty. If you
+  feel you have created a nice style, just email it to me and I'll include it in
+  the next version.
+  - due to the previous point, styles are now loaded by the command
+  \moderncvstyle{style_name}. I couldn't figure out a way to preserve the old
+  "casual" and "classic" class options, so these are now broken! Use
+  \moderncvstyle{casual} or \moderncvstyle{classic} at the beginning of your
+  document. This should be the only incompatibility with version 0.1.
+  - added class option "nolmodern" for people without the latin modern fonts.
+  - corrected some English mistakes in the examples. Thanks to M. H. Prager for
+  pointing them out.
+  - added a \cvlistitem to produce items with a bullet (or whatever is defined
+  in \listitemsymbol), and renamed \cvresume to \cvlistdoubleitem for
+  consistency purpose. For compatibility reasons, the command \cvresume still
+  works, but should be avoided.
+
+version 0.1 (1 March 2006)
+  - first release.

+ 3 - 0
lebenslauf/moderncv/KNOWN_BUGS

@@ -0,0 +1,3 @@
+- moderncv doesn't work with natbib
+- The \cvsection command seems to be unable to handle a Chinese argument, using
+CJK.

+ 27 - 0
lebenslauf/moderncv/README

@@ -0,0 +1,27 @@
+moderncv -- a modern curriculum vitae class
+
+Moderncv provides a documentclass for typesetting modern curriculum vitaes in
+various styles. It is fairly customizable, allowing you to define your own style
+by changing the colors, the fonts, ... and provides two default styles: classic
+and casual.
+
+The moderncv documentclass need it's input to be formatted with regular
+commands like:
+  \section,
+  \subsection,
+  \maketitle,
+but also defines its own special commands:
+  \cventry,
+  \firstname,
+  \familyname,
+  ...
+Most commands are defined in such a way that the arguments are optional.
+
+Documents can be compiled into dvi, ps or pdf.
+
+Until a decent manual is written, you can always look in the "examples"
+directory for some examples.
+
+
+Author: Xavier Danaux <xdanaux@gmail.com>
+Date: 28 May 2007

BIN
lebenslauf/moderncv/examples/letter.pdf


File diff suppressed because it is too large
+ 84 - 0
lebenslauf/moderncv/examples/letter.tex


+ 1047 - 0
lebenslauf/moderncv/examples/picture.eps

@@ -0,0 +1,1047 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: (ImageMagick)
+%%Title: (jdoe_picture.eps)
+%%CreationDate: (Sat Sep  9 12:44:46 2006)
+%%BoundingBox: 0 0 96 96
+%%HiResBoundingBox: 0 0 96 96
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 1
+%%Pages: 1
+%%EndComments
+
+%%BeginDefaults
+%%EndDefaults
+
+%%BeginProlog
+%
+% Display a color image.  The image is displayed in color on
+% Postscript viewers or printers that support color, otherwise
+% it is displayed as grayscale.
+%
+/DirectClassPacket
+{
+  %
+  % Get a DirectClass packet.
+  %
+  % Parameters:
+  %   red.
+  %   green.
+  %   blue.
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile color_packet readhexstring pop pop
+  compression 0 eq
+  {
+    /number_pixels 3 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add 3 mul def
+  } ifelse
+  0 3 number_pixels 1 sub
+  {
+    pixels exch color_packet putinterval
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/DirectClassImage
+{
+  %
+  % Display a DirectClass image.
+  %
+  systemdict /colorimage known
+  {
+    columns rows 8
+    [
+      columns 0 0
+      rows neg 0 rows
+    ]
+    { DirectClassPacket } false 3 colorimage
+  }
+  {
+    %
+    % No colorimage operator;  convert to grayscale.
+    %
+    columns rows 8
+    [
+      columns 0 0
+      rows neg 0 rows
+    ]
+    { GrayDirectClassPacket } image
+  } ifelse
+} bind def
+
+/GrayDirectClassPacket
+{
+  %
+  % Get a DirectClass packet;  convert to grayscale.
+  %
+  % Parameters:
+  %   red
+  %   green
+  %   blue
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile color_packet readhexstring pop pop
+  color_packet 0 get 0.299 mul
+  color_packet 1 get 0.587 mul add
+  color_packet 2 get 0.114 mul add
+  cvi
+  /gray_packet exch def
+  compression 0 eq
+  {
+    /number_pixels 1 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add def
+  } ifelse
+  0 1 number_pixels 1 sub
+  {
+    pixels exch gray_packet put
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/GrayPseudoClassPacket
+{
+  %
+  % Get a PseudoClass packet;  convert to grayscale.
+  %
+  % Parameters:
+  %   index: index into the colormap.
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile byte readhexstring pop 0 get
+  /offset exch 3 mul def
+  /color_packet colormap offset 3 getinterval def
+  color_packet 0 get 0.299 mul
+  color_packet 1 get 0.587 mul add
+  color_packet 2 get 0.114 mul add
+  cvi
+  /gray_packet exch def
+  compression 0 eq
+  {
+    /number_pixels 1 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add def
+  } ifelse
+  0 1 number_pixels 1 sub
+  {
+    pixels exch gray_packet put
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/PseudoClassPacket
+{
+  %
+  % Get a PseudoClass packet.
+  %
+  % Parameters:
+  %   index: index into the colormap.
+  %   length: number of pixels minus one of this color (optional).
+  %
+  currentfile byte readhexstring pop 0 get
+  /offset exch 3 mul def
+  /color_packet colormap offset 3 getinterval def
+  compression 0 eq
+  {
+    /number_pixels 3 def
+  }
+  {
+    currentfile byte readhexstring pop 0 get
+    /number_pixels exch 1 add 3 mul def
+  } ifelse
+  0 3 number_pixels 1 sub
+  {
+    pixels exch color_packet putinterval
+  } for
+  pixels 0 number_pixels getinterval
+} bind def
+
+/PseudoClassImage
+{
+  %
+  % Display a PseudoClass image.
+  %
+  % Parameters:
+  %   class: 0-PseudoClass or 1-Grayscale.
+  %
+  currentfile buffer readline pop
+  token pop /class exch def pop
+  class 0 gt
+  {
+    currentfile buffer readline pop
+    token pop /depth exch def pop
+    /grays columns 8 add depth sub depth mul 8 idiv string def
+    columns rows depth
+    [
+      columns 0 0
+      rows neg 0 rows
+    ]
+    { currentfile grays readhexstring pop } image
+  }
+  {
+    %
+    % Parameters:
+    %   colors: number of colors in the colormap.
+    %   colormap: red, green, blue color packets.
+    %
+    currentfile buffer readline pop
+    token pop /colors exch def pop
+    /colors colors 3 mul def
+    /colormap colors string def
+    currentfile colormap readhexstring pop pop
+    systemdict /colorimage known
+    {
+      columns rows 8
+      [
+        columns 0 0
+        rows neg 0 rows
+      ]
+      { PseudoClassPacket } false 3 colorimage
+    }
+    {
+      %
+      % No colorimage operator;  convert to grayscale.
+      %
+      columns rows 8
+      [
+        columns 0 0
+        rows neg 0 rows
+      ]
+      { GrayPseudoClassPacket } image
+    } ifelse
+  } ifelse
+} bind def
+
+/DisplayImage
+{
+  %
+  % Display a DirectClass or PseudoClass image.
+  %
+  % Parameters:
+  %   x & y translation.
+  %   x & y scale.
+  %   label pointsize.
+  %   image label.
+  %   image columns & rows.
+  %   class: 0-DirectClass or 1-PseudoClass.
+  %   compression: 0-none or 1-RunlengthEncoded.
+  %   hex color packets.
+  %
+  gsave
+  /buffer 512 string def
+  /byte 1 string def
+  /color_packet 3 string def
+  /pixels 768 string def
+
+  currentfile buffer readline pop
+  token pop /x exch def
+  token pop /y exch def pop
+  x y translate
+  currentfile buffer readline pop
+  token pop /x exch def
+  token pop /y exch def pop
+  currentfile buffer readline pop
+  token pop /pointsize exch def pop
+  /Times-Roman findfont pointsize scalefont setfont
+  x y scale
+  currentfile buffer readline pop
+  token pop /columns exch def
+  token pop /rows exch def pop
+  currentfile buffer readline pop
+  token pop /class exch def pop
+  currentfile buffer readline pop
+  token pop /compression exch def pop
+  class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
+  grestore
+} bind def
+%%EndProlog
+%%Page:  1 1
+%%PageBoundingBox: 0 0 96 96
+userdict begin
+DisplayImage
+0 0
+96 96
+12.000000
+96 96
+0
+0
+BDC1C2D1D5D6CDD1D4C7CBCECCCFD4CCCFD4CBCED3C9CCD1CACFD3CACFD3CACFD3C9CED2
+C9CED2C8CDD1C8CDD1C7CCD0CDD0D9CDD0D9CDD0D9CCCFD8CCCFD8CBCED7CBCED7CBCED7
+CBD0D3CBD0D3CACFD2CACFD2C9CED1C8CDD0C8CDD0C7CCCFCBD0D6CBD0D6CACFD5C9CED4
+C8CDD3C8CDD3C7CCD2C7CCD2C9D0D8C9D0D8C9D0D8C8CFD7C7CED6C6CDD5C6CDD5C5CCD4
+C7CFDAC6CED9C6CED9C5CDD8C4CCD7C4CCD7C3CBD6C3CBD6C5CBD7C5CBD7C4CAD6C4CAD6
+C3C9D5C2C8D4C2C8D4C1C7D3C8CCD5C8CCD5C7CBD4C6CAD3C5C9D2C5C9D2C4C8D1C4C8D1
+C9CED4C9CED4C8CDD3C7CCD2C7CCD2C6CBD1C5CAD0C5CAD0C7D0D5C6CFD4C6CFD4C5CED3
+C4CDD2C3CCD1C3CCD1C2CBD0C6CAD6C5CCD4C3CED2BDCAD3C2CBDCC1C7D5C2C6C5D6DACB
+D2D6D7E9EDEEE8ECEFE4E8EBE9ECF1E8EBF0E7EAEFE5E8EFE5EAEEE5EAEEE4E9EDE4E9ED
+E3E8ECE3E8ECE2E7EBE2E7EBE0E3ECDFE2EBDFE2EBDFE2EBDEE1EADDE0E9DDE0E9DDE0E9
+DCE1E7DBE0E6DBE0E6DADFE5D9DEE4D8DDE3D8DDE3D7DCE2D4D8E3D4D8E3D3D7E2D3D7E2
+D2D6E1D1D5E0D0D4DFD0D4DFCBD1DDCBD1DDCAD0DCCAD0DCC9CFDBC8CEDAC8CEDAC7CDD9
+C7CFDCC6CEDBC6CEDBC5CDDAC4CCD9C3CBD8C3CBD8C3CBD8C2CAD7C2CAD7C1C9D6C1C9D6
+C0C8D5BFC7D4BEC6D3BEC6D3BBC2D5BBC2D5BAC1D4BAC1D4B9C0D3B8BFD2B8BFD2B7BED1
+B4BAD0B4BAD0B3B9CFB3B9CFB2B8CEB1B7CDB1B7CDB0B6CCABB6CAAAB5C9AAB5C9A9B4C8
+A8B3C7A7B2C6A7B2C6A6B1C5A9AECBA9B1C6A6B1C3A1ADC5A4AFCFA5ACC9A8AEBCC0C4C3
+D0D4D7E9EDF0EDF1F4EBEEF3EEF1F6ECEFF6EBEEF5EAEDF4E8EDF3E8EDF3E8EDF3E7ECF2
+E7ECF2E6EBF1E6EBF1E6EBF1E1E5EEE1E5EEE1E5EEE0E4EDE0E4EDDFE3ECDFE3ECDEE2EB
+DAE0ECDAE0ECD9DFEBD8DEEAD7DDE9D7DDE9D6DCE8D6DCE8D4DAE8D4DAE8D3D9E7D3D9E7
+D2D8E6D1D7E5D0D6E4D0D6E4CDD4E4CCD3E3CCD3E3CBD2E2CAD1E1C9D0E0C9D0E0C8CFDF
+C6CDE0C6CDE0C6CDE0C5CCDFC4CBDEC3CADDC3CADDC2C9DCBDC8DABCC7D9BCC7D9BBC6D8
+BAC5D7B9C4D6B9C4D6B9C4D6B6BFDEB6BFDEB5BEDDB4BDDCB3BCDBB3BCDBB2BBDAB2BBDA
+B0B8DDAFB7DCAFB7DCAEB6DBADB5DAACB4D9ACB4D9ABB3D8A6B3D6A6B3D6A5B2D5A4B1D4
+A3B0D3A3B0D3A2AFD2A2AFD2A2A9D5A2ACD09FAECF99A8CF9CA9D69EA7D2A5ACC9C0C8D5
+CACED1E6EAEDEBEEF3E8EBF0EBEEF3E8EBF2E8EBF2E8EBF2E5EAF0E5EAF0E4E9EFE4E9EF
+E3E8EEE3E8EEE2E7EDE2E7EDE1E5F0E1E5F0E0E4EFE0E4EFDFE3EEDFE3EEDFE3EEDEE2ED
+D9DFEFD9DFEFD8DEEED7DDEDD6DCECD6DCECD5DBEBD5DBEBD2D7EAD2D7EAD1D6E9D1D6E9
+D0D5E8CFD4E7CED3E6CED3E6CDD4E7CDD4E7CCD3E6CBD2E5CBD2E5CAD1E4C9D0E3C9D0E3
+C5CDE4C5CDE4C4CCE3C4CCE3C3CBE2C2CAE1C1C9E0C1C9E0B9C8DFB8C7DEB8C7DEB7C6DD
+B6C5DCB5C4DBB5C4DBB4C3DAB4C1E1B4C1E1B4C1E1B3C0E0B2BFDFB1BEDEB1BEDEB0BDDD
+ADB9E1ADB9E1ACB8E0ACB8E0ABB7DFAAB6DEA9B5DDA9B5DDA7B6DDA7B6DDA6B5DCA6B5DC
+A5B4DBA4B3DAA3B2D9A3B2D9A1ACDAA0AFD69FB1D599ACD69BABDE9BA9D6A5B0D0C2CEDE
+CED1D6E9ECF1EDF0F5EAEDF4EBEEF5E8EBF2E9ECF5EAEDF6E7EBF4E6EAF3E6EAF3E6EAF3
+E5E9F2E4E8F1E4E8F1E4E8F1DFE6F0DFE6F0DFE6F0DEE5EFDEE5EFDDE4EEDDE4EEDCE3ED
+D9E0F2D8DFF1D8DFF1D7DEF0D6DDEFD5DCEED5DCEED5DCEED3DAEDD3DAEDD2D9ECD1D8EB
+D0D7EAD0D7EACFD6E9CFD6E9CCD2E8CCD2E8CBD1E7CBD1E7CAD0E6C9CFE5C8CEE4C8CEE4
+C5CCE6C5CCE6C4CBE5C3CAE4C2C9E3C2C9E3C1C8E2C1C8E2B9C7E1B9C7E1B8C6E0B7C5DF
+B6C4DEB6C4DEB5C3DDB5C3DDB1C1DAB1C1DAB0C0D9B0C0D9AFBFD8AEBED7ADBDD6ADBDD6
+ACBBDAACBBDAABBAD9AAB9D8A9B8D7A9B8D7A8B7D6A8B7D6A2B5D5A2B5D5A1B4D4A0B3D3
+A0B3D39FB2D29EB1D19EB1D19DABD09DADCE9BB0CD96ADCF98ABD594A6CC9EADC4BDCBD4
+CDD0D5E7EAEFEAEDF2E6E9F0E7EAF1E4E7F0E6E9F2E6E9F2E4E8F1E3E7F0E3E7F0E3E7F0
+E2E6EFE1E5EEE1E5EEE1E5EEDCE2EEDCE2EEDCE2EEDBE1EDDBE1EDDAE0ECDAE0ECDAE0EC
+D7DEEED6DDEDD6DDEDD5DCECD4DBEBD3DAEAD3DAEAD2D9E9D2D9ECD2D9ECD1D8EBD1D8EB
+D0D7EACFD6E9CED5E8CED5E8CAD2E7CAD2E7C9D1E6C9D1E6C8D0E5C7CFE4C6CEE3C6CEE3
+C3CDE6C2CCE5C2CCE5C1CBE4C0CAE3BFC9E2BFC9E2BFC9E2B9C7E1B9C7E1B8C6E0B8C6E0
+B7C5DFB6C4DEB6C4DEB5C3DDB1C2D6B1C2D6B0C1D5B0C1D5AFC0D4AEBFD3AEBFD3ADBED2
+AEBED7ADBDD6ADBDD6ACBCD5ABBBD4AABAD3AABAD3AABAD3A4B8D3A3B7D2A3B7D2A2B6D1
+A1B5D0A0B4CFA0B4CF9FB3CEA0AFCE9FB0CA9DB3CA9BB0CD9BAFD298A8C99EAEBEBDCCCF
+CDD0D5E7EAF1EAEDF4E6E9F0E8EBF4E6E9F2E7E9F5E6E8F4E4E8F1E4E8F1E4E8F1E3E7F0
+E3E7F0E2E6EFE2E6EFE1E5EEDDE5F0DDE5F0DDE5F0DCE4EFDCE4EFDBE3EEDBE3EEDAE2ED
+D8E0EDD8E0EDD7DFECD7DFECD6DEEBD5DDEAD4DCE9D4DCE9D0D7E9D0D7E9CFD6E8CED5E7
+CED5E7CDD4E6CCD3E5CCD3E5CAD2E5CAD2E5C9D1E4C9D1E4C8D0E3C7CFE2C6CEE1C6CEE1
+C2CDE3C2CDE3C2CDE3C1CCE2C0CBE1BFCAE0BFCAE0BEC9DFBCC6DFBCC6DFBBC5DEBAC4DD
+BAC4DDB9C3DCB8C2DBB8C2DBB4C2DCB4C2DCB3C1DBB3C1DBB2C0DAB1BFD9B0BED8B0BED8
+ACBAD5ABB9D4ABB9D4AAB8D3A9B7D2A8B6D1A8B6D1A7B5D0A5B6D4A4B5D3A4B5D3A3B4D2
+A2B3D1A1B2D0A1B2D0A1B2D0A1AED09EADCA9CB0C99BAECE9BADD398A6C99FACBFBECBD1
+CBCED5E5E8EFE9ECF3E7EAF1EAEDF6E7EAF3E7E9F5E6E8F4E4E8F3E4E8F3E4E8F3E3E7F2
+E3E7F2E2E6F1E2E6F1E1E5F0DBE3EEDBE3EEDAE2EDDAE2EDD9E1ECD9E1ECD8E0EBD8E0EB
+D4DEE8D4DEE8D3DDE7D3DDE7D2DCE6D1DBE5D1DBE5D0DAE4D1DAE9D0D9E8D0D9E8CFD8E7
+CED7E6CED7E6CDD6E5CDD6E5CBD4E5CAD3E4CAD3E4C9D2E3C8D1E2C7D0E1C7D0E1C6CFE0
+C2CDE1C2CDE1C1CCE0C1CCE0C0CBDFBFCADEBFCADEBEC9DDBDC4DEBDC4DEBDC4DEBCC3DD
+BBC2DCBAC1DBBAC1DBB9C0DAB4BEE1B4BEE1B3BDE0B3BDE0B2BCDFB1BBDEB0BADDB0BADD
+AFB9DCAFB9DCAEB8DBADB7DAADB7DAACB6D9ABB5D8ABB5D8A6B4D9A6B4D9A5B3D8A4B2D7
+A3B1D6A3B1D6A2B0D5A2B0D5A4ADD69FACCE9DAECC9CACD09EACD99AA6D0A2ACC7C3CDD7
+CCD1D7E5EAF0E7EBF4E4E8F1E7EBF4E4E8F3E5E9F4E4E8F3E3E7F3E3E7F3E3E7F3E2E6F2
+E2E6F2E1E5F1E1E5F1E0E4F0DCE2F0DCE2F0DBE1EFDBE1EFDAE0EEDAE0EED9DFEDD9DFED
+D7DDEDD7DDEDD7DDEDD6DCECD5DBEBD4DAEAD4DAEAD3D9E9D4DBEED1D8EBCED5E8CED5E8
+D0D7EAD0D7EACDD4E7C9D0E3CDD5ECC9D1E8C5CDE4C6CEE5CAD2E9CBD3EAC8D0E7C5CDE4
+C1CCE2C1CCE2BFCAE0BEC9DFBDC8DEBDC8DEBCC7DDBCC7DDBBC7E1BAC6E0BAC6E0B9C5DF
+B8C4DEB7C3DDB7C3DDB6C2DCB3C1DEB2C0DDB2C0DDB1BFDCB0BEDBAFBDDAAFBDDAAEBCD9
+ABBAD9AAB9D8AAB9D8A9B8D7A8B7D6A8B7D6A7B6D5A7B6D5A5B4D5A4B3D4A4B3D4A3B2D3
+A2B1D2A2B1D2A1B0D1A1B0D1A0AFCE9DACD39BADD19AADCB9CACD099A4D2A2ABCCC4CDD2
+CBD0D6E5EAF0E7EBF4E3E7F0E6EAF3E4E8F3E4E8F3E4E8F3E3E7F3E3E7F3E2E6F2E2E6F2
+E1E5F1E1E5F1E0E4F0E0E4F0DCE2F0DCE2F0DBE1EFDBE1EFDAE0EEDAE0EED9DFEDD9DFED
+D7DDEDD7DDEDD6DCECD6DCECD5DBEBD4DAEAD3D9E9D3D9E9D0D7EAD0D7EAD0D7EAD0D7EA
+D0D7EAD0D7EAD0D7EAD0D7EAC9D1E6C9D1E6C9D1E6C8D0E5C5CDE2C4CCE1C3CBE0C4CCE1
+C4CFE5C4CFE5C2CDE3C1CCE2BFCAE0BEC9DFBCC7DDBCC7DDBAC6E0BAC6E0BAC6E0B9C5DF
+B8C4DEB7C3DDB7C3DDB6C2DCB2C0DDB2C0DDB2C0DDB1BFDCB0BEDBAFBDDAAFBDDAAEBCD9
+ABBAD9AAB9D8AAB9D8A9B8D7A8B7D6A7B6D5A7B6D5A7B6D5A5B4D5A4B3D4A4B3D4A3B2D3
+A2B1D2A1B0D1A1B0D1A1B0D1A0AFCE9DACD39BADD19AADCB9CACD099A4D2A2ABCCC4CDD2
+CBD0D6E4E9EFE6EAF3E3E7F0E6EAF3E3E7F2E4E8F3E3E7F2E2E6F2E2E6F2E2E6F2E1E5F1
+E1E5F1E0E4F0E0E4F0E0E4F0DBE1EFDBE1EFDBE1EFDAE0EEDAE0EED9DFEDD9DFEDD9DFED
+D7DDEDD7DDEDD6DCECD5DBEBD4DAEAD4DAEAD3D9E9D3D9E9CFD6E9D0D7EAD0D7EACED5E8
+CBD2E5C9D0E3C9D0E3CAD1E4C5CDE2C8D0E5CBD3E8CCD4E9CAD2E7C8D0E5C6CEE3C5CDE2
+BDC8DEBDC8DEBDC8DEBDC8DEBDC8DEBDC8DEBDC8DEBEC9DFBAC6E0BAC6E0B9C5DFB9C5DF
+B8C4DEB7C3DDB6C2DCB6C2DCB2C0DDB2C0DDB1BFDCB1BFDCB0BEDBAFBDDAAEBCD9AEBCD9
+AAB9D8AAB9D8AAB9D8A9B8D7A8B7D6A7B6D5A7B6D5A6B5D4A4B3D4A4B3D4A4B3D4A3B2D3
+A2B1D2A1B0D1A1B0D1A0AFD09FAECD9DACD39BADD199ACCA9CACD099A4D2A2ABCCC4CDD2
+CACFD5E3E8EEE5E9F2E2E6EFE5E9F2E3E7F2E3E7F2E2E6F1E2E6F2E1E5F1E1E5F1E0E4F0
+E0E4F0DFE3EFDFE3EFDFE3EFDBE1EFDBE1EFDAE0EEDAE0EED9DFEDD9DFEDD8DEECD8DEEC
+D6DCECD6DCECD5DBEBD5DBEBD4DAEAD3D9E9D3D9E9D2D8E8CFD6E9CFD6E9CFD6E9CED5E8
+CDD4E7CCD3E6CCD3E6CCD3E6CBD3E8C6CEE3C1C9DEC0C8DDC2CADFC5CDE2C5CDE2C4CCE1
+C3CEE4C2CDE3C0CBE1BFCAE0BEC9DFBDC8DEBDC8DEBEC9DFBAC6E0BAC6E0B9C5DFB8C4DE
+B7C3DDB7C3DDB6C2DCB6C2DCB2C0DDB2C0DDB1BFDCB0BEDBAFBDDAAFBDDAAEBCD9AEBCD9
+AAB9D8AAB9D8A9B8D7A9B8D7A8B7D6A7B6D5A6B5D4A6B5D4A4B3D4A4B3D4A3B2D3A3B2D3
+A2B1D2A1B0D1A0AFD0A0AFD09FAECD9CABD29BADD199ACCA9CACD099A4D2A1AACBC3CCD1
+C9CED4E2E7EDE4E8F1E1E5EEE4E8F1E2E6F1E2E6F1E1E5F0E1E5F1E1E5F1E0E4F0E0E4F0
+DFE3EFDFE3EFDEE2EEDEE2EEDAE0EEDAE0EEDAE0EED9DFEDD9DFEDD8DEECD8DEECD8DEEC
+D6DCECD5DBEBD5DBEBD4DAEAD3D9E9D3D9E9D2D8E8D2D8E8D1D8EBCFD6E9CDD4E7CDD4E7
+CDD4E7CCD3E6CAD1E4C8CFE2CCD4E7CAD2E5C7CFE2C7CFE2C8D0E3C8D0E3C6CEE1C4CCDF
+C3CEE4C1CCE2BFCAE0BDC8DEBCC7DDBCC7DDBDC8DEBEC9DFBAC6E0B9C5DFB9C5DFB8C4DE
+B7C3DDB6C2DCB6C2DCB6C2DCB2C0DDB1BFDCB1BFDCB0BEDBAFBDDAAEBCD9AEBCD9AEBCD9
+AAB9D8AAB9D8A9B8D7A8B7D6A7B6D5A7B6D5A6B5D4A6B5D4A4B3D4A4B3D4A3B2D3A2B1D2
+A1B0D1A1B0D1A0AFD0A0AFD09FAECD9CABD29BADD199ACCA9CACD099A4D2A1AACBC3CCD1
+C8CDD3E2E7EDE4E8F1E0E4EDE3E7F0E1E5F0E1E5F0E1E5F0E0E4F0E0E4F0DFE3EFDFE3EF
+DEE2EEDEE2EEDDE1EDDDE1EDDAE0EEDAE0EED9DFEDD9DFEDD8DEECD8DEECD7DDEBD7DDEB
+D5DBEBD5DBEBD4DAEAD4DAEAD3D9E9D2D8E8D1D7E7D1D7E7D1D8EBCFD6E9CED5E8CDD4E7
+CDD4E7CCD3E6CAD1E4C9D0E3C6CEE1C8D0E3C9D1E4C6CEE1C1C9DCBFC7DAC1C9DCC4CCDF
+C1CCE2C1CCE2C0CBE1BFCAE0BEC9DFBDC8DEBDC8DEBDC8DEB9C5DFB9C5DFB9C5DFB8C4DE
+B7C3DDB6C2DCB6C2DCB5C1DBB1BFDCB1BFDCB1BFDCB0BEDBAFBDDAAEBCD9AEBCD9ADBBD8
+AAB9D8A9B8D7A9B8D7A8B7D6A7B6D5A6B5D4A6B5D4A6B5D4A4B3D4A3B2D3A3B2D3A2B1D2
+A1B0D1A0AFD0A0AFD0A0AFD09FAECD9CABD29AACD099ACCA9BABCF98A3D1A1AACBC3CCD1
+C8CDD3E1E6ECE3E7F0E0E4EDE3E7F0E1E5F0E1E5F0E0E4EFDFE3EFDFE3EFDFE3EFDEE2EE
+DEE2EEDDE1EDDDE1EDDDE1EDD9DFEDD9DFEDD9DFEDD8DEECD8DEECD7DDEBD7DDEBD7DDEB
+D5DBEBD5DBEBD4DAEAD3D9E9D2D8E8D2D8E8D1D7E7D1D7E7CCD3E6CFD6E9D0D7EACED5E8
+C8CFE2C5CCDFC7CEE1CAD1E4CCD5E6C3CCDDB2BBCC9EA7B88E97A88992A38E97A8949DAE
+B8C3D9BAC5DBBDC8DEBFCAE0BFCAE0BEC9DFBBC6DCBAC5DBB9C5DFB9C5DFB8C4DEB8C4DE
+B7C3DDB6C2DCB5C1DBB5C1DBB1BFDCB1BFDCB0BEDBB0BEDBAFBDDAAEBCD9ADBBD8ADBBD8
+A9B8D7A9B8D7A9B8D7A8B7D6A7B6D5A6B5D4A6B5D4A5B4D3A3B2D3A3B2D3A3B2D3A2B1D2
+A1B0D1A0AFD0A0AFD09FAECF9EADCC9CABD29AACD098ABC99BABCF98A3D1A1AACBC3CCD1
+C7CCD2E1E6ECE3E7F0E0E4EDE2E6EFE0E4EFE0E4EFE0E4EFDFE3EFDFE3EFDEE2EEDEE2EE
+DDE1EDDDE1EDDCE0ECDCE0ECD9DFEDD9DFEDD9DFEDD8DEECD8DEECD7DDEBD7DDEBD6DCEA
+D5DBEBD4DAEAD4DAEAD3D9E9D2D8E8D1D7E7D1D7E7D1D7E7CCD3E6D0D7EACFD6E9C2C9DC
+B0B7CAA3AABDA2A9BCA6ADC098A1B2929BAC8992A3818A9B7D86977D86977F889980899A
+8B96AC939EB49FAAC0ABB6CCB5C0D6BAC5DBBCC7DDBCC7DDB9C5DFB9C5DFB8C4DEB7C3DD
+B7C3DDB6C2DCB5C1DBB5C1DBB1BFDCB1BFDCB0BEDBAFBDDAAFBDDAAEBCD9ADBBD8ADBBD8
+A9B8D7A9B8D7A8B7D6A8B7D6A7B6D5A6B5D4A6B5D4A5B4D3A3B2D3A3B2D3A2B1D2A2B1D2
+A1B0D1A0AFD0A0AFD09FAECF9EADCC9CABD29AACD098ABC99BABCF98A3D1A1AACBC3CCD1
+CDD0D9DFE2EBE0E4EDE0E4EFDEE5EFDBE1EDDDE5F0DBE3EEDCE2F0DCE2F0DBE1EFDBE1EF
+DAE0EEDAE0EED9DFEDD9DFEDD7DDEDD7DDEDD7DDEDD6DCECD6DCECD5DBEBD5DBEBD5DBEB
+D4DBEDCFD6E8D3DAECD5DCEECFD6E8CED5E7D1D8EACDD4E6D1D7E5BBC1CFA3A9B79298A6
+858B997C82907B818F8086948187978187978086968086968086968086967F85957F8595
+808799777E9072798B7B82949198AAAAB1C3BAC1D3C1C8DABCC7DDB8C2DBB9C5DDB4C0DA
+B3BEDAB3C1DEB1BEDEB5C2E2B0BEDBAFBDDAAFBDDAAEBCD9ADBBD8ACBAD7ACBAD7ABB9D6
+A9B8D7A9B8D7A8B7D6A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A3B1D4A3B1D4A2B0D3A2B0D3
+A1AFD2A0AED19FADD09FADD09DADCF99AAD598ABD397ACCB99ABD197A3D3A0ABC9C2CDCF
+CDD0D9DFE2EBE0E4EDDFE3EEDDE4EEDBE1EDDCE4EFDAE2EDDCE2F0DBE1EFDBE1EFDBE1EF
+DAE0EED9DFEDD9DFEDD9DFEDD7DDEDD7DDEDD7DDEDD6DCECD5DBEBD5DBEBD5DBEBD4DAEA
+CFD6E8D6DDEFD3DAECCED5E7CFD6E8CFD6E8CED5E7D2D9EBB4BAC89CA2B0868C9A838997
+888E9C878D9B8187957D83918187978086968086968086968086967F85957F85957F8595
+7980927C83957E85977B82947980928087999198AA9EA5B7B4BFD5B7C2D8BDC7E0B7C3DD
+B6C1DDB8C6E3B3C1DEB2BFDFAFBDDAAFBDDAAFBDDAAEBCD9ADBBD8ACBAD7ACBAD7ABB9D6
+A9B8D7A9B8D7A8B7D6A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A3B1D4A3B1D4A2B0D3A2B0D3
+A1AFD2A0AED19FADD09FADD09CACCE99AAD598ABD397ACCB99ABD197A3D3A0ABC9C2CDCF
+CCCFD8DEE1EADFE3ECDFE3EEDDE4EEDAE0ECDCE4EFDAE2EDDBE1EFDBE1EFDAE0EEDAE0EE
+D9DFEDD9DFEDD9DFEDD8DEECD7DDEDD6DCECD6DCECD5DBEBD5DBEBD4DAEAD4DAEAD4DAEA
+CED5E7D6DDEFD4DBEDCCD3E5CCD3E5D0D7E9CED5E7CAD1E38D93A18389977C82907F8593
+848A988389978288968389978086968086968086968086968086967F85957F85957F8595
+7C83957E85977E8597798092747B8D747B8D7A81938087998D95AA9AA5B9B3BED4B9C3DC
+B5C1DBB2BDD9ACBAD7B3C1DEAFBDDAAFBDDAAEBCD9AEBCD9ADBBD8ACBAD7ABB9D6ABB9D6
+A9B8D7A9B8D7A8B7D6A7B6D5A6B5D4A6B5D4A5B4D3A5B4D3A3B1D4A3B1D4A2B0D3A1AFD2
+A0AED1A0AED19FADD09FADD09CACCE99AAD598ABD397ACCB99ABD197A3D3A0ABC9C2CDCF
+CCCFD8DDE0E9DFE3ECDEE2EDDCE3EDDAE0ECDBE3EED9E1ECDAE0EEDAE0EEDAE0EED9DFED
+D9DFEDD8DEECD8DEECD8DEECD6DCECD6DCECD5DBEBD5DBEBD4DAEAD4DAEAD3D9E9D3D9E9
+D3DAECCDD4E6D3DAECD2D9EBCAD1E3D1D8EACCD3E5AFB6C87F8593808694848A98858B99
+8187957C82907E8492858B998086968086968086968086967F85957F85957F85957F8595
+81889A7C83957980927980927D84967E85977B8294777E90737B8E7F879C9DA8BCB5C0D6
+BCC6DFB6C2DCAFBAD6B6C1DDAFBDDAAFBDDAAEBCD9ADBBD8ACBAD7ACBAD7ABB9D6ABB9D6
+A9B8D7A8B7D6A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A5B4D3A3B1D4A2B0D3A2B0D3A1AFD2
+A0AED19FADD09FADD09FADD09CACCE98A9D498ABD396ABCA98AAD097A3D3A0ABC9C2CDCF
+CBCED7DDE0E9DEE2EBDDE1ECDBE2ECD9DFEBDAE2EDD8E0EBD9DFEDD9DFEDD9DFEDD8DEEC
+D8DEECD7DDEBD7DDEBD7DDEBD5DBEBD5DBEBD4DAEAD4DAEAD3D9E9D3D9E9D2D8E8D2D8E8
+D5DCEECAD1E3CED5E7D3DAECCED5E7CDD4E6B8BFD19299AB878D9B848A98838997858B99
+858B998187957E84927E84928086968086968086967F85957F85957F85957F85957E8494
+7C83957B82947B82947A81937A8193798092787F91777E90778091727A8D80889B949FB3
+AFBAD0BEC8E1B4C0DAADB9D3AFBDDAAEBCD9AEBCD9ADBBD8ACBAD7ABB9D6ABB9D6ABB9D6
+A8B7D6A8B7D6A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A4B3D2A2B0D3A2B0D3A2B0D3A1AFD2
+A0AED19FADD09FADD09EACCF9CACCE98A9D498ABD396ABCA98AAD096A2D29FAAC8C1CCCE
+CACDD6DCDFE8DDE1EADCE0EBDBE2ECD8DEEAD9E1ECD7DFEAD9DFEDD8DEECD8DEECD8DEEC
+D7DDEBD7DDEBD6DCEAD6DCEAD4DAEAD4DAEAD4DAEAD3D9E9D3D9E9D2D8E8D2D8E8D1D7E7
+D0D7E9D1D8EACBD2E4CCD3E5D2D9EBBCC3D5989FB1838A9C878D9B838997818795828896
+848A98848A988187957E84928086967F85957F85957F85957F85957E84947E84947E8494
+7A81937A81937A8193798092787F91787F91777E90777E90798090747B8D727B8C747C8F
+8C97ABAFBAD0B6C0D9B2BED6AEBCD9AEBCD9AEBCD9ADBBD8ACBAD7ABB9D6ABB9D6AAB8D5
+A8B7D6A8B7D6A7B6D5A7B6D5A6B5D4A5B4D3A4B3D2A4B3D2A2B0D3A2B0D3A1AFD2A1AFD2
+A0AED19FADD09EACCF9EACCF9BABCD98A9D497AAD296ABCA98AAD096A2D29FAAC8C1CCCE
+C9CCD5DBDEE7DCE0E9DCE0EBDAE1EBD8DEEAD9E1ECD7DFEAD8DEECD8DEECD8DEECD7DDEB
+D6DCEAD6DCEAD6DCEAD5DBE9D4DAEAD3D9E9D3D9E9D3D9E9D2D8E8D1D7E7D1D7E7D1D7E7
+CDD4E6D3DAECCDD4E6CAD1E3C6CDDFA2A9BB81889A82899B818795828896838997828896
+8086948086948187958288967F85957F85957F85957F85957F85957E84947E84947E8494
+7B8294798092787F917980927B82947D84967B8294798092787F8F7980907B8294727A8D
+788095919CB0A8B3C9BAC5DBAEBCD9AEBCD9ADBBD8ADBBD8ACBAD7ABB9D6AAB8D5AAB8D5
+A8B7D6A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A4B3D2A4B3D2A2B0D3A2B0D3A1AFD2A0AED1
+9FADD09FADD09EACCF9EACCF9BABCD98A9D497AAD296ABCA98AAD096A2D29FAAC8C1CCCE
+C9CCD5DBDEE7DCE0E9DBDFEADAE1EBD7DDE9D9E1ECD7DFEAD8DEECD8DEECD7DDEBD7DDEB
+D6DCEAD6DCEAD5DBE9D5DBE9D3D9E9D3D9E9D3D9E9D2D8E8D2D8E8D1D7E7D1D7E7D1D7E7
+CED5E7CFD6E8D1D8EACED5E7B5BCCE8C93A57A8193858C9E848A98838997828896808694
+8086948086948086947F85937F85957F85957F85957F85957E84947E84947E84947E8494
+787F917B82947C83957B8294787F91777E90787F917A819378808D737A8A798090778091
+727A8D777F948893A9A7B2C8AEBCD9AEBCD9ADBBD8ACBAD7ACBAD7ABB9D6AAB8D5AAB8D5
+A8B7D6A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A4B3D2A4B3D2A2B0D3A2B0D3A1AFD2A0AED1
+9FADD09FADD09EACCF9EACCF9BABCD97A8D397AAD296ABCA98AAD096A2D29FAAC8C1CCCE
+CBD0D4D8DCE5DAE0ECD6DBEED6DDEFD7DEF0D5DCECD4DEEAD5DCEED5DCEED4DBEDD4DBED
+D3DAECD3DAECD2D9EBD2D9EBD1D8EBD1D8EBD1D8EBD0D7EAD0D7EACFD6E9CFD6E9CED5E8
+D1D6E9CCD1E4D2D8E8C3C9D99399A97C8290858B99808694818795818795818795818795
+8187958086948086948086948086968086967F85957F85957E84947E84947D83937D8393
+7B82947B82947A81937A8193798092798092798092787F91747B8E7B8295787F92787F92
+79809370778A798093989FB2B5C1D9B0BCD6ADB9D3ADBBD6ACBAD7AAB7D7A8B7D8A7B6D7
+A6B5D6A6B5D6A5B4D5A5B4D5A4B3D4A3B2D3A2B1D2A2B1D29FAFD39FAFD39EAED29EAED2
+9DADD19CACD09BABCF9BABCF9BABCD97A8D398ABD392A7C697A9CF97A3D39AA5C3C2CDCF
+CBD0D4D8DCE5DAE0ECD6DBEED5DCEED6DDEFD5DCECD4DEEAD5DCEED4DBEDD4DBEDD4DBED
+D3DAECD2D9EBD2D9EBD2D9EBD1D8EBD1D8EBD0D7EAD0D7EACFD6E9CFD6E9CED5E8CED5E8
+CED3E6CDD2E5D3D9E9B3B9C98A90A0828896818795838997818795818795818795818795
+8086948086948086948086948086967F85957F85957E84947E84947D83937D83937D8393
+7B82947B82947A81937A8193798092798092787F91787F91777E91787F92757C8F777E91
+798093737A8D767D90888FA2A8B4CCADB9D3AEBAD4A9B7D2ABB9D6ACB9D9A9B8D9A7B6D7
+A6B5D6A6B5D6A5B4D5A5B4D5A4B3D4A3B2D3A2B1D2A2B1D29FAFD39FAFD39EAED29EAED2
+9DADD19CACD09BABCF9BABCF9BABCD97A8D397AAD292A7C697A9CF97A3D39AA5C3C2CDCF
+CACFD3D8DCE5D9DFEBD5DAEDD5DCEED6DDEFD4DBEBD3DDE9D4DBEDD4DBEDD3DAECD3DAEC
+D2D9EBD2D9EBD2D9EBD1D8EAD0D7EAD0D7EAD0D7EACFD6E9CFD6E9CED5E8CED5E8CED5E8
+CACFE2CDD2E5CAD0E09CA2B2818797868C9A7E8492878D9B818795818795818795818795
+8086948086948086948086947F85957F85957F85957E84947E84947D83937D83937C8292
+7B82947B82947A81937A8193798092798092787F91787F91798093757C8F747B8E767D90
+787F92767D90757C8F767D90919DB5A9B5CFB1BDD7A8B6D1A9B7D4ADBADAAAB9DAA7B6D7
+A6B5D6A6B5D6A5B4D5A4B3D4A3B2D3A3B2D3A2B1D2A2B1D29FAFD39FAFD39EAED29DADD1
+9CACD09CACD09BABCF9BABCF9AAACC97A8D397AAD291A6C597A9CF97A3D39AA5C3C2CDCF
+CACFD3D7DBE4D8DEEAD4D9ECD4DBEDD5DCEED3DAEAD3DDE9D3DAECD3DAECD3DAECD2D9EB
+D2D9EBD1D8EAD1D8EAD1D8EAD0D7EACFD6E9CFD6E9CED5E8CED5E8CDD4E7CDD4E7CDD4E7
+CBD0E3CBD0E3B4BACA898F9F7F8595868C9A7F8593878D9B818795818795818795808694
+8086948086948086947F85937F85957E84947E84947E84947D83937C82927C82927C8292
+7B82947A81937A8193798092798092787F91787F91787F91798093747B8E757C8F767D90
+757C8F767D90757C8F6D74877B879FA1ADC7B4C0DAAAB8D3A8B6D3ACB9D9A9B8D9A7B6D7
+A6B5D6A5B4D5A5B4D5A4B3D4A3B2D3A2B1D2A2B1D2A2B1D29FAFD39EAED29EAED29DADD1
+9CACD09BABCF9BABCF9BABCF9AAACC96A7D297AAD291A6C596A8CE97A3D39AA5C3C2CDCF
+C9CED2D6DAE3D8DEEAD3D8EBD3DAECD4DBEDD3DAEAD2DCE8D2D9EBD2D9EBD2D9EBD1D8EA
+D1D8EAD0D7E9D0D7E9D0D7E9CFD6E9CFD6E9CED5E8CED5E8CDD4E7CDD4E7CCD3E6CCD3E6
+CDD2E5C4C9DC979DAD7F8595848A9A818795828896848A98818795808694808694808694
+8086947F85937F85937F85937E84947E84947E84947D83937C82927C82927C82927B8191
+7A81937A81937A8193798092798092787F91787F91777E90787F92747B8E777E91777E91
+72798C757C8F777E916F76896C789096A2BCB1BDD7ADBBD6A9B7D4A9B6D6A7B6D7A7B6D7
+A5B4D5A5B4D5A5B4D5A4B3D4A3B2D3A2B1D2A2B1D2A1B0D19EAED29EAED29EAED29DADD1
+9CACD09BABCF9BABCF9AAACE9AAACC96A7D297AAD291A6C596A8CE96A2D299A4C2C2CDCF
+C8CDD1D5D9E2D7DDE9D3D8EBD2D9EBD3DAECD2D9E9D1DBE7D2D9EBD1D8EAD1D8EAD1D8EA
+D0D7E9D0D7E9CFD6E8CFD6E8CED5E8CED5E8CDD4E7CDD4E7CCD3E6CCD3E6CBD2E5CBD2E5
+CED3E6B7BCCF8389997E8494878D9D7E8492848A98828896808694808694808694808694
+7F85937F85937F85937F85937E84947D83937D83937C82927C82927B81917B81917B8191
+7A81937A8193798092798092787F91787F91777E90777E90777E91757C8F777E91777E91
+71788B737A8D767D90737A8D68748C8490AAA2AEC8ACBAD5AAB8D5A7B4D4A6B5D6A6B5D6
+A5B4D5A5B4D5A4B3D4A4B3D4A3B2D3A2B1D2A1B0D1A1B0D19EAED29EAED29DADD19DADD1
+9CACD09BABCF9AAACE9AAACE9AAACC96A7D296A9D191A6C596A8CE96A2D299A4C2C1CCCE
+C7CCD0D5D9E2D6DCE8D2D7EAD2D9EBD3DAECD1D8E8D0DAE6D1D8EAD1D8EAD1D8EAD0D7E9
+CFD6E8CFD6E8CFD6E8CED5E7CDD4E7CDD4E7CDD4E7CCD3E6CCD3E6CBD2E5CBD2E5CBD2E5
+CDD2E5A8ADC07F8595808696868C9C7F8593838997818795808694808694808694808694
+7F85937F85937F85937F85937D83937D83937D83937C82927C82927B81917B81917A8090
+7A81937A8193798092798092787F91787F91777E90777E90787F92757C8F757C8F767D90
+737A8D72798C737A8D737A8D6D7991717D978B97B1A5B3CEABB9D6A8B5D5A7B6D7A5B4D5
+A5B4D5A5B4D5A4B3D4A3B2D3A2B1D2A2B1D2A1B0D1A1B0D19EAED29EAED29DADD19CACD0
+9BABCF9BABCF9AAACE9AAACE99A9CB96A7D296A9D190A5C496A8CE96A2D299A4C2C1CCCE
+C7CCD0D4D8E1D6DCE8D2D7EAD2D9EBD3DAECD1D8E8D0DAE6D1D8EAD1D8EAD0D7E9D0D7E9
+CFD6E8CFD6E8CED5E7CED5E7CDD4E7CDD4E7CCD3E6CCD3E6CBD2E5CBD2E5CAD1E4CAD1E4
+CBD0E39EA3B68389998288988288988288968086948187958086948086948086947F8593
+7F85937F85937F85937F85937D83937D83937C82927C82927B81917B81917A80907A8090
+7A8193798092798092798092787F91787F91777E90777E90798093747B8E72798C747B8E
+767D9072798C70778A72798C737F9764708A79859F9FADC8ABB9D6A9B6D6A8B7D8A4B3D4
+A5B4D5A5B4D5A4B3D4A3B2D3A2B1D2A2B1D2A1B0D1A1B0D19EAED29EAED29DADD19CACD0
+9BABCF9BABCF9AAACE9AAACE99A9CB95A6D196A9D190A5C496A8CE96A2D299A4C2C1CCCE
+CCD1D7D1D5E0D2D8E6D0D5E8CFD6E9D0D7EAD0D7E9CDD6E5CDD5E8CDD5E8CDD5E8CDD5E8
+CCD4E7CCD4E7CCD4E7CCD4E7CBD3E6CBD3E6CAD2E5CAD2E5C9D1E4C9D1E4C8D0E3C8D0E3
+B4BACA8A90A07D83938389998389998288987E84948086968086968086967F85957F8595
+7E84947E84947D83937D83937A81937A81937A81937A81937A8193798092798092798092
+798093798093787F92787F92777E91777E91767D90767D90737B8E737B8E737B8E727A8D
+727A8D71798C71798C71798C6F778C6C778D717B9499A5BFA6B4CFA9B8D7A7B7D8A3B3D4
+A4B2D5A4B2D5A3B1D4A2B0D3A1AFD2A1AFD2A0AED1A0AED19DACD39DACD39CABD29BAAD1
+9BAAD19AA9D099A8CF99A8CF98A8CC94A5D196A9D38FA3C494A6CE94A0D299A4C4C2CDD1
+CCD1D7D0D4DFD1D7E5D0D5E8CFD6E9D0D7EACFD6E8CCD5E4CDD5E8CDD5E8CDD5E8CCD4E7
+CCD4E7CCD4E7CCD4E7CCD4E7CBD3E6CAD2E5CAD2E5CAD2E5C9D1E4C8D0E3C8D0E3C8D0E3
+A1A7B78389997E84948288988187978389998187978187978086967F85957F85957E8494
+7E84947D83937D83937D83937A81937A81937A81937A8193798092798092798092798092
+798093787F92787F92777E91777E91767D90767D90767D90737B8E737B8E737B8E727A8D
+727A8D71798C71798C70788B6E768B6E798F737D9698A4BEAAB8D3ADBCDBA6B6D7A2B2D3
+A4B2D5A3B1D4A3B1D4A2B0D3A1AFD2A1AFD2A0AED1A0AED19DACD39DACD39CABD29BAAD1
+9AA9D09AA9D099A8CF99A8CF97A7CB94A5D196A9D38FA3C493A5CD94A0D299A4C4C2CDD1
+CBD0D6D0D4DFD1D7E5D0D5E8CED5E8CFD6E9CFD6E8CCD5E4CCD4E7CCD4E7CCD4E7CCD4E7
+CCD4E7CBD3E6CBD3E6CBD3E6CAD2E5CAD2E5C9D1E4C9D1E4C8D0E3C8D0E3C8D0E3C7CFE2
+9197A77E84948086968288987E84948288988187977F85957F85957F85957F85957E8494
+7E84947D83937D83937C82927A81937A81937A81937A8193798092798092798092798092
+787F92787F92787F92777E91777E91767D90767D90757C8F737B8E737B8E727A8D727A8D
+71798C71798C70788B70788B70788D6E798F68728B828EA89CAAC5A6B5D4A2B2D3A5B5D6
+A3B1D4A3B1D4A2B0D3A2B0D3A1AFD2A0AED1A0AED19FADD09DACD39CABD29CABD29BAAD1
+9AA9D099A8CF99A8CF99A8CF97A7CB94A5D195A8D28FA3C493A5CD94A0D298A3C3C2CDD1
+CACFD5CFD3DED0D6E4CFD4E7CDD4E7CED5E8CED5E7CBD4E3CCD4E7CBD3E6CBD3E6CBD3E6
+CBD3E6CBD3E6CAD2E5CAD2E5C9D1E4C9D1E4C9D1E4C8D0E3C8D0E3C7CFE2C7CFE2C7CFE2
+9399A97F85958086968389997E84947F85957E84947D83937F85957E84947E84947E8494
+7D83937C82927C82927C82927A81937A81937A8193798092798092798092798092787F91
+787F92777E91777E91777E91767D90757C8F757C8F757C8F737B8E737B8E727A8D727A8D
+71798C71798C70788B70788B6E768B707B916A748D7C88A29EACC7A9B8D7A0B0D1A3B3D4
+A3B1D4A3B1D4A2B0D3A1AFD2A0AED1A0AED19FADD09FADD09CABD29CABD29CABD29BAAD1
+9AA9D099A8CF99A8CF98A7CE97A7CB94A5D195A8D28FA3C493A5CD939FD198A3C3C2CDD1
+C9CED4CED2DDCFD5E3CED3E6CCD3E6CED5E8CDD4E6CAD3E2CBD3E6CBD3E6CAD2E5CAD2E5
+CAD2E5CAD2E5CAD2E5C9D1E4C8D0E3C8D0E3C8D0E3C7CFE2C7CFE2C6CEE1C6CEE1C6CEE1
+9DA3B38187977E84948389998086967F85957D83937E84947E84947E84947E84947D8393
+7C82927C82927C82927B81917A8193798092798092798092798092787F91787F91787F91
+777E91777E91777E91767D90757C8F757C8F757C8F747B8E737B8E727A8D727A8D71798C
+71798C70788B70788B70788B6E768B707B9169738C727E9899A7C2A8B7D69FAFD0A3B3D4
+A2B0D3A2B0D3A1AFD2A1AFD2A0AED19FADD09EACCF9EACCF9CABD29CABD29BAAD19BAAD1
+9AA9D099A8CF98A7CE98A7CE97A7CB94A5D195A8D28EA2C393A5CD939FD198A3C3C2CDD1
+C9CED4CDD1DCCED4E2CDD2E5CCD3E6CDD4E7CCD3E5C9D2E1CAD2E5CAD2E5CAD2E5C9D1E4
+C9D1E4C9D1E4C9D1E4C9D1E4C8D0E3C7CFE2C7CFE2C7CFE2C6CEE1C6CEE1C5CDE0C5CDE0
+9EA4B47F85957B81918187978187978187977F85958086967E84947D83937D83937C8292
+7C82927B81917B81917B8191798092798092798092798092787F91787F91787F91787F91
+777E91767D90767D90757C8F757C8F747B8E747B8E747B8E727A8D727A8D727A8D71798C
+71798C70788B70788B6F778A6F778C6D788E66708965718B8D9BB6A2B1D09FAFD0A3B3D4
+A2B0D3A1AFD2A1AFD2A0AED19FADD09FADD09EACCF9EACCF9CABD29CABD29BAAD19AA9D0
+99A8CF99A8CF98A7CE98A7CE96A6CA93A4D095A8D28EA2C392A4CC939FD198A3C3C1CCD0
+C8CDD3CDD1DCCED4E2CDD2E5CBD2E5CCD3E6CCD3E5C9D2E1C9D1E4C9D1E4C9D1E4C9D1E4
+C9D1E4C8D0E3C8D0E3C8D0E3C7CFE2C7CFE2C7CFE2C6CEE1C5CDE0C5CDE0C5CDE0C4CCDF
+959BAB7D83937C82928086967E84948288988086967D83937D83937D83937D83937C8292
+7C82927B81917B81917A8090798092798092798092798092787F91787F91787F91787F91
+767D90767D90767D90757C8F757C8F747B8E747B8E737A8D727A8D727A8D71798C71798C
+70788B70788B6F778A6F778A6C74896D788E6F79926D799393A1BCA8B7D6A3B3D49FAFD0
+A1AFD2A1AFD2A0AED1A0AED19FADD09EACCF9EACCF9DABCE9CABD29BAAD19BAAD19AA9D0
+99A8CF98A7CE98A7CE98A7CE96A6CA93A4D094A7D18EA2C392A4CC939FD197A2C2C1CCD0
+C8CDD3CDD1DCCDD3E1CCD1E4CBD2E5CCD3E6CBD2E4C8D1E0C9D1E4C9D1E4C9D1E4C9D1E4
+C8D0E3C8D0E3C8D0E3C8D0E3C7CFE2C7CFE2C6CEE1C6CEE1C5CDE0C5CDE0C4CCDFC4CCDF
+8C92A27D83938086967F85957B81918187977E8494787E8E7D83937D83937C82927C8292
+7B81917B81917A80907A8090798092798092798092787F91787F91787F91787F91787F91
+767D90767D90757C8F757C8F747B8E747B8E737A8D737A8D727A8D727A8D71798C71798C
+70788B70788B6F778A6F778A6D758A6A758B6D779066728C8A98B3A3B2D1A3B3D4A0B0D1
+A1AFD2A1AFD2A0AED1A0AED19FADD09EACCF9DABCE9DABCE9CABD29BAAD19BAAD19AA9D0
+99A8CF98A7CE98A7CE97A6CD96A6CA93A4D094A7D18EA2C392A4CC939FD197A2C2C1CCD0
+C8D1DAC9D1DEC9D0E2C9D1E6C9D1E8C6D1E7C6D1E5C5D0E2C5D0E4C5D0E4C5D0E4C5D0E4
+C4CFE3C4CFE3C4CFE3C4CFE3C4CFE5C2CDE3C1CCE2C2CDE3C3CEE4C2CDE3BEC9DFBAC5DB
+7E85977D84967B82947C83957D84967B82947A81937E85977A81937A81937A81937A8193
+7A8193798092798092798092798093798093787F92787F92777E91777E91767D90767D90
+737B8E737B8E737B8E737B8E737B8E727A8D727A8D727A8D6F7A8C6F7A8C6E798B6E798B
+6D788A6D788A6D788A6C77896B768A6E7B8E6571876C7A948D9DB79EAFCB9CAFCDA0B3D3
+9FAFD39FAFD39EAED29EAED29DADD19CACD09BABCF9BABCF98AAD298AAD297A9D196A8D0
+95A7CF95A7CF94A6CE94A6CE93A5CB91A3D18EA3CE8FA6C88FA2CA92A0D1949EC1C1CED4
+C8D1DAC8D0DDC9D0E2C8D0E5C8D0E7C6D1E7C5D0E4C5D0E2C5D0E4C5D0E4C5D0E4C4CFE3
+C4CFE3C4CFE3C4CFE3C4CFE3C4CFE5C2CDE3C1CCE2C2CDE3C3CEE4C2CDE3BEC9DFBAC5DB
+7F86987E85977F86987F86987C83957C83957C83957A81937A81937A81937A81937A8193
+798092798092798092798092798093787F92787F92777E91777E91767D90767D90767D90
+737B8E737B8E737B8E737B8E727A8D727A8D727A8D727A8D6F7A8C6F7A8C6E798B6E798B
+6D788A6D788A6C77896C77896E798D6B778D68748C77859F96A6C0A4B5D39EB1D19CAFCF
+9FAFD39FAFD39EAED29DADD19DADD19CACD09BABCF9BABCF98AAD297A9D197A9D196A8D0
+95A7CF95A7CF94A6CE94A6CE93A5CB91A3D18DA2CD8FA6C88FA2CA92A0D1949EC1C0CDD3
+C8D1DAC8D0DDC8CFE1C8D0E5C8D0E7C5D0E6C5D0E4C5D0E2C4CFE3C4CFE3C4CFE3C4CFE3
+C4CFE3C3CEE2C3CEE2C3CEE2C3CEE4C2CDE3C1CCE2C1CCE2C2CDE3C1CCE2BEC9DFBBC6DC
+8087997980927B82947D84967980927B82947D8496777E907A81937A81937A81937A8193
+798092798092798092798092787F92787F92787F92777E91777E91767D90767D90757C8F
+737B8E737B8E737B8E737B8E727A8D727A8D727A8D727A8D6F7A8C6F7A8C6E798B6E798B
+6D788A6D788A6C77896C77896E798D68748A717D958997B19FAECBA5B6D49FB2D29BAECF
+9FAFD39EAED29EAED29DADD19CACD09BABCF9BABCF9AAACE97A9D197A9D196A8D096A8D0
+95A7CF94A6CE94A6CE93A5CD93A5CB91A3D18DA2CD8EA5C78FA2CA92A0D1949EC1C0CDD3
+C7D0D9C7CFDCC8CFE1C7CFE4C7CFE6C5D0E6C4CFE3C4CFE1C4CFE3C3CEE2C3CEE2C3CEE2
+C3CEE2C3CEE2C2CDE1C2CDE1C2CDE3C1CCE2C0CBE1C0CBE1C1CCE2C0CBE1BEC9DFBBC6DC
+939AAC7D8496777E907D84967980927B82947D8496767D8F7A81937A81937A8193798092
+798092798092798092787F91787F92777E91777E91777E91767D90757C8F757C8F757C8F
+737B8E737B8E737B8E727A8D727A8D727A8D727A8D71798C6F7A8C6E798B6E798B6D788A
+6D788A6C77896C77896C77896A758B6571877D89A19BA9C4A2B1CE9FB0CE9FB2D29FB2D3
+9EAED29EAED29DADD19CACD09CACD09BABCF9AAACE9AAACE97A9D197A9D196A8D095A7CF
+94A6CE94A6CE93A5CD93A5CD93A5CB91A3D18DA2CD8EA5C78EA1C992A0D1949EC1C0CDD3
+C6CFD8C6CEDBC7CEE0C6CEE3C6CEE5C4CFE5C3CEE2C3CEE0C3CEE2C3CEE2C2CDE1C2CDE1
+C2CDE1C2CDE1C2CDE1C1CCE0C1CCE2C0CBE1C0CBE1C0CBE1C0CBE1BFCAE0BEC9DFBCC7DD
+B2B9CB8A91A3787F917D84967C83957A81937C8395787F917A8193798092798092798092
+798092787F91787F91787F91777E91777E91777E91767D90757C8F757C8F757C8F747B8E
+737B8E727A8D727A8D727A8D727A8D71798C71798C71798C6E798B6E798B6E798B6D788A
+6D788A6C77896C77896B768869748A647088818DA7A2B0CBA2B1D09CACCD9FB2D39FB1D5
+9EAED29DADD19DADD19CACD09BABCF9AAACE9AAACE99A9CD96A8D096A8D095A7CF95A7CF
+94A6CE93A5CD92A4CC92A4CC92A4CA90A2D08DA2CD8EA5C78EA1C992A0D1939DC0C0CDD3
+C5CED7C6CEDBC6CDDFC5CDE2C5CDE4C3CEE4C3CEE2C2CDDFC2CDE1C2CDE1C2CDE1C1CCE0
+C1CCE0C1CCE0C1CCE0C1CCE0C0CBE1C0CBE1BFCAE0BFCAE0BFCAE0BEC9DFBEC9DFBDC8DE
+BAC1D38F96A8757C8E777E907A81937980927B82947B8294798092798092798092798092
+787F91787F91787F91787F91777E91767D90767D90757C8F757C8F747B8E747B8E747B8E
+727A8D727A8D727A8D727A8D71798C71798C71798C71798C6E798B6E798B6D788A6D788A
+6C77896C77896B76886B76886C768F636F877F8BA5A1AFCCA3B2D19EAECF9EB1D29CAED2
+9DADD19DADD19CACD09BABCF9BABCF9AAACE99A9CD99A9CD96A8D095A7CF95A7CF94A6CE
+93A5CD93A5CD92A4CC92A4CC92A4CA90A2D08CA1CC8EA5C78EA1C9919FD0939DC0BFCCD2
+C5CED7C5CDDAC6CDDFC5CDE2C5CDE4C3CEE4C2CDE1C2CDDFC1CCE0C1CCE0C1CCE0C1CCE0
+C1CCE0C0CBDFC0CBDFC0CBDFC0CBE1BFCAE0BFCAE0BEC9DFBEC9DFBDC8DEBEC9DFBEC9DF
+B9C0D299A0B27C8395757C8E777E90787F917980927B8294798092798092798092798092
+787F91787F91787F91787F91767D90767D90767D90757C8F757C8F747B8E747B8E737A8D
+727A8D727A8D727A8D727A8D71798C71798C71798C71798C6E798B6E798B6D788A6D788A
+6C77896C77896B76886B76886A748D66728C818CA8A1AFCCA3B2D19DADCF9DAFD39CAED2
+9DADD19CACD09CACD09BABCF9AAACE99A9CD99A9CD98A8CC95A7CF95A7CF94A6CE94A6CE
+93A5CD92A4CC92A4CC91A3CB92A4CA90A2D08CA1CC8DA4C68EA1C9919FD0939DC0BFCCD2
+C4CDD6C5CDDAC5CCDEC5CDE2C5CDE4C2CDE3C2CDE1C1CCDEC1CCE0C1CCE0C1CCE0C1CCE0
+C0CBDFC0CBDFC0CBDFC0CBDFBFCAE0BFCAE0BFCAE0BEC9DFBDC8DEBDC8DEBEC9DFBEC9DF
+C2C9DBADB4C69097A97E85977B82947A8193787F91777E90798092798092798092787F91
+787F91787F91787F91787F91767D90767D90757C8F757C8F747B8E747B8E737A8D737A8D
+727A8D727A8D727A8D71798C71798C71798C71798C71798C6E798B6D788A6D788A6D788A
+6C77896C77896B76886B768866708968748E8792AEA3B1CEA1B0D19AAACC9CAED29FB1D5
+9CACD09CACD09CACD09BABCF9AAACE99A9CD99A9CD98A8CC95A7CF95A7CF94A6CE94A6CE
+93A5CD92A4CC91A3CB91A3CB92A4CA90A2D08CA1CC8DA4C68DA0C8919FD0939DC0BFCCD2
+C5CED7C5CDDAC4CBDEC2C9E3C1C8E4BFC9E4BFC9E2BFC9E2BECAE2BECAE2BECAE2BECAE2
+BDC9E1BDC9E1BDC9E1BDC9E1BBC7E1BBC7E1BBC7E1BBC7E1BAC6E0BAC6E0BAC6E0BAC6E0
+B8C2DBBAC4DDBEC6DD868EA3777F92787F92787F917D8494777E91777E91777E91777E91
+767D90767D90767D90767D90737B8E737B8E737B8E737B8E737B8E727A8D727A8D727A8D
+6F7A8C6F7A8C6F7A8C6F7A8C6E798B6E798B6E798B6E798B6F7A906C778D6D788E6F7A90
+6D788E69748A69748A6B768C6C779367728E8A98B59EABCB9FAECFA3B2D39CAACD9FADD0
+99ABD199ABD199ABD198AAD097A9CF96A8CE96A8CE95A7CD95A7CF95A7CF94A6CE93A5CD
+92A4CC92A4CC91A3CB91A3CB8FA1C78D9FCD8BA0CB8BA2C48B9EC68F9DCE939DC0C0CDD3
+C5CED7C4CCD9C3CADDC1C8E2C1C8E4BFC9E4BFC9E2BFC9E2BECAE2BECAE2BECAE2BDC9E1
+BDC9E1BDC9E1BDC9E1BDC9E1BBC7E1BBC7E1BBC7E1BAC6E0BAC6E0BAC6E0BAC6E0BAC6E0
+B9C3DEB6C0D9B9C4DA9098AF767E937A8194787F91757C8E777E91777E91777E91777E91
+767D90767D90767D90767D90737B8E737B8E737B8E737B8E727A8D727A8D727A8D727A8D
+6F7A8C6F7A8C6F7A8C6E798B6E798B6E798B6E798B6D788A6D788E6C778D6C778D6C778D
+6B768C6A758B6A758B6B768C646F8B66718D8B99B69FACCCA0AFD0A4B2D59DABCE9DADD1
+99ABD199ABD198AAD098AAD097A9CF96A8CE95A7CD95A7CD95A7CF94A6CE94A6CE93A5CD
+92A4CC92A4CC91A3CB91A3CB8EA0C68D9FCD8A9FCA8BA2C48B9EC68F9DCE929CBFC0CDD3
+C4CDD6C4CCD9C3CADDC1C8E2C0C7E3BEC8E3BEC8E1BEC8E1BDC9E1BDC9E1BDC9E1BDC9E1
+BDC9E1BCC8E0BCC8E0BCC8E0BAC6E0BAC6E0BAC6E0BAC6E0BAC6E0B9C5DFB9C5DFB9C5DF
+BCC8E2B8C2DBBBC5DE9FAAC0777F94788093798092767D8F777E91777E91767D90767D90
+767D90767D90757C8F757C8F737B8E737B8E737B8E737B8E727A8D727A8D727A8D727A8D
+6E798B6E798B6E798B6E798B6E798B6D788A6D788A6D788A6B768C6C778D6B768C69748A
+6A758B6A758B6A758B6A758B5F6D88697794909EBB9FAECD9FAECFA3B3D59CACD09BABCF
+99ABD199ABD198AAD097A9CF96A8CE96A8CE95A7CD95A7CD94A6CE94A6CE93A5CD93A5CD
+92A4CC91A3CB91A3CB90A2CA8EA0C68D9FCD8A9FCA8BA2C48B9EC68F9DCE929CBFC0CDD3
+C3CCD5C3CBD8C2C9DCC0C7E1BFC6E2BDC7E2BEC8E1BEC8E1BDC9E1BCC8E0BCC8E0BCC8E0
+BCC8E0BCC8E0BBC7DFBBC7DFBAC6E0B9C5DFB9C5DFB9C5DFB9C5DFB9C5DFB8C4DEB8C4DE
+BAC6E0B9C5DFB9C3DCACB7CD788397727A8D727A8D7A8394767D90767D90767D90767D90
+757C8F757C8F757C8F757C8F737B8E737B8E737B8E727A8D727A8D727A8D727A8D71798C
+6E798B6E798B6E798B6D788A6D788A6D788A6D788A6D788A6A758B6E798F6C778D69748A
+6A758B6A758B68738969748A6C7A977A88A598A7C6A0AFD09DACCDA0B0D29CACD09AAACE
+98AAD098AAD097A9CF97A9CF96A8CE95A7CD95A7CD94A6CC94A6CE94A6CE93A5CD92A4CC
+91A3CB91A3CB90A2CA90A2CA8EA0C68D9FCD8A9FCA8BA2C48A9DC58E9CCD929CBFC0CDD3
+C3CCD5C2CAD7C1C8DBBFC6E0BFC6E2BDC7E2BDC7E0BDC7E0BCC8E0BCC8E0BBC7DFBBC7DF
+BBC7DFBBC7DFBBC7DFBAC6DEB9C5DFB9C5DFB8C4DEB8C4DEB8C4DEB8C4DEB8C4DEB7C3DD
+B4BFDBB6C2DCB1BDD7B1BBD48A95AB77829671798C767E91767D90767D90757C8F757C8F
+757C8F757C8F747B8E747B8E737B8E727A8D727A8D727A8D727A8D71798C71798C71798C
+6D788A6D788A6D788A6D788A6D788A6C77896C77896C778969748A6F7A906C778D69748A
+6B768C69748A6671876B768C8392AF8F9EBBA0AFCE9FAFD09AAACC9CACD099ABD198AAD0
+98AAD097A9CF97A9CF96A8CE95A7CD95A7CD94A6CC94A6CC93A5CD93A5CD92A4CC92A4CC
+91A3CB90A2CA8FA1C98FA1C98EA0C68D9FCD8A9FCA8BA2C48A9DC58E9CCD929CBFC0CDD3
+C2CBD4C1C9D6C0C7DABEC5DFBEC5E1BCC6E1BCC6DFBCC6DFBBC7DFBBC7DFBBC7DFBAC6DE
+BAC6DEBAC6DEBAC6DEBAC6DEB8C4DEB8C4DEB8C4DEB7C3DDB7C3DDB7C3DDB7C3DDB7C3DD
+B4C2DDB5C3DEB0BCD6B7C3DBA8B3C9949FB3848FA3737B8E757C8F757C8F757C8F757C8F
+747B8E747B8E747B8E747B8E727A8D727A8D727A8D727A8D71798C71798C71798C71798C
+6D788A6D788A6D788A6C77896C77896C77896C77896C778969748A6E798F6C778D6A758B
+6C778D677288677288737E9498A7C69EADCCA3B2D39EAECF99A9CB98AACE99ABD198AAD0
+97A9CF97A9CF96A8CE96A8CE95A7CD94A6CC93A5CB93A5CB93A5CD92A4CC92A4CC91A3CB
+90A2CA90A2CA8FA1C98FA1C98D9FC58C9ECC899EC98AA1C38A9DC58E9CCD919BBEBFCCD2
+C1CAD3C1C9D6C0C7DABEC5DFBDC4E0BBC5E0BBC5DEBCC6DFBAC6DEBAC6DEBAC6DEBAC6DE
+BAC6DEB9C5DDB9C5DDB9C5DDB7C3DDB7C3DDB7C3DDB7C3DDB7C3DDB6C2DCB6C2DCB6C2DC
+B5C3E0B5C3DEB2C0DBB7C3DDB7C3DBB0BBD1A6B1C5747F93757C8F757C8F747B8E747B8E
+747B8E747B8E737A8D737A8D727A8D727A8D727A8D727A8D71798C71798C71798C71798C
+6D788A6C77896C77896C77896C77896B76886B76886B76886A758B6D788E69748A69748A
+6B768C6671876B768C808BA19FAECDA0B1CF9EAECF9CACCE98AACE98AAD098ACD198ABD3
+97A9CF97A9CF96A8CE95A7CD94A6CC94A6CC93A5CB93A5CB92A4CC92A4CC91A3CB91A3CB
+90A2CA8FA1C98FA1C98EA0C88D9FC58C9ECC899EC98AA1C38A9DC58E9CCD919BBEBFCCD2
+C1CAD3C0C8D5BFC6D9BEC5DFBDC4E0BBC5E0BBC5DEBBC5DEBAC6DEBAC6DEBAC6DEBAC6DE
+B9C5DDB9C5DDB9C5DDB9C5DDB7C3DDB7C3DDB7C3DDB7C3DDB6C2DCB6C2DCB6C2DCB6C2DC
+AFBDDAB0BED9B3C1DCAFBBD5B2BED6B6C2D8BAC5D9768195757C8F747B8E747B8E747B8E
+747B8E737A8D737A8D737A8D727A8D727A8D727A8D71798C71798C71798C71798C71798C
+6C77896C77896C77896C77896B76886B76886B76886B76886B768C6C778D677288677288
+6B768C6570866E798F8A95AB9DAECC9DAECC99A9CA9AAACC9AACD099ABD199ACD498ABD3
+97A9CF96A8CE96A8CE95A7CD94A6CC93A5CB93A5CB93A5CB92A4CC92A4CC91A3CB91A3CB
+90A2CA8FA1C98EA0C88EA0C88D9FC58C9ECC899EC98AA1C3899CC48D9BCC919BBEBFCCD2
+C6CDD3BFC6D8B8C1DEB6C4E1B8C7DEB6C5D8B9C3DEBBC1E3B6C4DFB5C3DEB5C3DEB5C3DE
+B5C3DEB4C2DDB4C2DDB4C2DDB3C1DCB3C1DCB3C1DCB3C1DCB2C0DBB2C0DBB2C0DBB2C0DB
+B1BFDCB3C1DEB2C0DDB0BEDBB3C1DEB3C1DEA6B4D196A4C16E768B737B90767E93737B8E
+727A8D757E8F747D8E6E77886E798D6E798D6E798D6E798D6D788C6D788C6D788C6D788C
+6C778B6C778B6C778B6C778B6B768A6B768A6B768A6B768A6D75886873856A7589656F88
+67738D66718F6D7A9A99A6C69CABD29BAAD19BAAD19AA9D09AA9D099A8CF99A8CF99A8CF
+96A8D095A7CF95A7CF94A6CE93A5CD92A4CC92A4CC92A4CC90A3CD8FA2CC8FA2CC8EA1CB
+8EA1CB8DA0CA8DA0CA8DA0CA8C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C6CDD3BFC6D8B8C1DEB6C4E1B7C6DDB6C5D8B8C2DDBBC1E3B5C3DEB5C3DEB5C3DEB5C3DE
+B4C2DDB4C2DDB4C2DDB4C2DDB3C1DCB3C1DCB3C1DCB2C0DBB2C0DBB2C0DBB2C0DBB2C0DB
+B0BEDBB2C0DDB0BEDBAEBCD9B0BEDBB2C0DDAAB8D59FADCA6F778C777F94727A8F6D7588
+737B8E70788B6C7586747D8E6E798D6E798D6E798D6E798D6D788C6D788C6D788C6D788C
+6C778B6C778B6C778B6B768A6B768A6B768A6B768A6A75896873856A75896873896A748D
+67738D626D8B7683A39BA8C89BAAD19BAAD19BAAD19AA9D09AA9D099A8CF99A8CF99A8CF
+96A8D095A7CF95A7CF94A6CE93A5CD92A4CC92A4CC91A3CB8FA2CC8FA2CC8FA2CC8EA1CB
+8EA1CB8DA0CA8DA0CA8DA0CA8C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C6CDD3BFC6D8B7C0DDB5C3E0B7C6DDB6C5D8B8C2DDBAC0E2B5C3DEB5C3DEB4C2DDB4C2DD
+B4C2DDB4C2DDB3C1DCB3C1DCB2C0DBB2C0DBB2C0DBB2C0DBB2C0DBB1BFDAB1BFDAB1BFDA
+B0BEDBB1BFDCAFBDDAACBAD7AEBCD9B2C0DDAFBDDAA9B7D47A8299767E956F778C70788D
+747C8F6E76896B7386747D8E6E798D6E798D6D788C6D788C6D788C6D788C6C778B6C778B
+6B768A6B768A6B768A6B768A6B768A6A75896A75896A75896671836C778B6671876B778F
+66718D616F8C8491B19DAACC9BAAD19BAAD19AA9D09AA9D099A8CF99A8CF98A7CE98A7CE
+95A7CF95A7CF94A6CE93A5CD93A5CD92A4CC91A3CB91A3CB8FA2CC8FA2CC8EA1CB8EA1CB
+8DA0CA8DA0CA8C9FC98C9FC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C5CCD2BEC5D7B7C0DDB5C3E0B6C5DCB5C4D7B7C1DCBAC0E2B4C2DDB4C2DDB4C2DDB3C1DC
+B3C1DCB3C1DCB3C1DCB2C0DBB2C0DBB1BFDAB1BFDAB1BFDAB1BFDAB1BFDAB0BED9B0BED9
+AFBDDAB1BFDCB0BEDBACBAD7ADBBD8B0BEDBB1BFDCAEBCD9929DB3717C926B768C747F93
+707B8F6F7A8C727D8F6B76886D788C6D788C6D788C6D788C6C778B6C778B6C778B6C778B
+6B768A6B768A6B768A6A75896A75896A75896A75896A75896772866A758965718765718B
+606E896F7C9C909FC09DACCD9AA9D09AA9D09AA9D099A8CF99A8CF98A7CE98A7CE98A7CE
+95A7CF94A6CE94A6CE93A5CD92A4CC91A3CB91A3CB90A2CA8EA1CB8EA1CB8EA1CB8DA0CA
+8DA0CA8C9FC98C9FC98C9FC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C4CBD1BDC4D6B6BFDCB4C2DFB5C4DBB4C3D6B6C0DBB9BFE1B3C1DCB3C1DCB3C1DCB2C0DB
+B2C0DBB2C0DBB2C0DBB2C0DBB1BFDAB1BFDAB0BED9B0BED9B0BED9B0BED9B0BED9AFBDD8
+AEBCD9B1BFDCB1BFDCAEBCD9ADBBD8AEBCD9AFBDDAAEBCD9A9B3CC7D87A069748A6F7A90
+6E798D717C90747F916974866D788C6D788C6C778B6C778B6C778B6C778B6B768A6B768A
+6A75896A75896A75896A75896A75896974886974886974886A778A64708667738B5D6B85
+63718E8392B197A6C79CAACD9AA9D09AA9D099A8CF99A8CF98A7CE98A7CE97A6CD97A6CD
+94A6CE94A6CE93A5CD92A4CC92A4CC91A3CB90A2CA90A2CA8EA1CB8EA1CB8DA0CA8DA0CA
+8C9FC98C9FC98B9EC88B9EC88C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C3CAD0BCC3D5B5BEDBB3C1DEB4C3DAB3C2D5B5BFDAB8BEE0B2C0DBB2C0DBB2C0DBB2C0DB
+B1BFDAB1BFDAB1BFDAB1BFDAB0BED9B0BED9B0BED9AFBDD8AFBDD8AFBDD8AFBDD8AFBDD8
+AEBCD9B0BEDBB0BEDBAFBDDAADBBD8ACBAD7ACBAD7ACBAD7B1BDD595A1B9727E96667288
+6E7A906E7B8E6A778A6D7A8D6C778B6C778B6C778B6C778B6B768A6B768A6B768A6B768A
+6A75896A75896A75896974886974886974886974886974886B778D616D8366758C63718C
+72819E95A4C59BA9CC99A9CB99A8CF99A8CF99A8CF98A7CE98A7CE97A6CD97A6CD97A6CD
+94A6CE93A5CD93A5CD92A4CC91A3CB90A2CA90A2CA8FA1C98DA0CA8DA0CA8DA0CA8C9FC9
+8C9FC98B9EC88B9EC88B9EC88C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C3CAD0BCC3D5B5BEDBB3C1DEB4C3DAB3C2D5B5BFDAB8BEE0B2C0DBB2C0DBB1BFDAB1BFDA
+B1BFDAB1BFDAB0BED9B0BED9AFBDD8AFBDD8AFBDD8AFBDD8AFBDD8AEBCD7AEBCD7AEBCD7
+ADBBD8AEBCD9AEBCD9AEBCD9ACBAD7ABB9D6AAB8D5ABB9D6AFBBD3A8B4CC8D99B176829A
+717D936B778D6673866F7C8F6C778B6C778B6B768A6B768A6B768A6B768A6A75896A7589
+6A758969748869748869748869748868738768738768738766758A606F8666748E75859F
+8B9AB99DACCD9CACCE97A7C999A8CF99A8CF98A7CE98A7CE97A6CD97A6CD96A5CC96A5CC
+93A5CD93A5CD92A4CC91A3CB91A3CB90A2CA8FA1C98FA1C98DA0CA8DA0CA8C9FC98C9FC9
+8B9EC88B9EC88A9DC78A9DC78C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C2C9CFBBC2D4B4BDDAB2C0DDB3C2D9B2C1D4B4BED9B7BDDFB1BFDAB1BFDAB1BFDAB1BFDA
+B1BFDAB0BED9B0BED9B0BED9AFBDD8AFBDD8AFBDD8AFBDD8AEBCD7AEBCD7AEBCD7AEBCD7
+ADBBD8ADBBD8ADBBD8ACBAD7ABB9D6AAB8D5AAB8D5ABB9D6AAB6D0AFBBD3A9B5CD909CB4
+7480966A768C6B788B6D7A8D6C778B6B768A6B768A6B768A6B768A6A75896A75896A7589
+69748869748869748869748868738768738768738768738761708562718865738D8696B0
+9EADCC9CACCD9EAED096A6CA99A8CF99A8CF98A7CE98A7CE97A6CD97A6CD96A5CC96A5CC
+93A5CD93A5CD92A4CC91A3CB90A2CA90A2CA8FA1C98FA1C98DA0CA8DA0CA8C9FC98C9FC9
+8B9EC88B9EC88A9DC78A9DC78C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C9CDD8B6BCD2B3BCDDB0BFE0AEBED7B0C0D7AEBCD7B2BCE0B0BEDBAFBDDAAFBDDAAFBDDA
+AFBDDAAEBCD9AEBCD9AEBCD9ACBCD6ACBCD6ACBCD6ACBCD6ABBBD5ABBBD5ABBBD5ABBBD5
+AAB9D8AAB9D8AAB9D8A9B8D7A9B8D7A9B8D7A9B8D7A9B8D7A6B6D7A6B6D7ACBBDAA6B4CF
+7C88A26E78916C778D6C74896B768C6B768C6B768C6B768C6A758B6A758B6A758B6A758B
+68738968738968738968738967728867728867728867728868748C636F87606E8994A3C0
+99A9CA98AACE95A9CE95A8D095A7CF95A7CF94A6CE94A6CE93A5CD93A5CD92A4CC92A4CC
+90A3CD8FA2CC8FA2CC8EA1CB8EA1CB8DA0CA8DA0CA8DA0CA8B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C9CDD8B6BCD2B2BBDCAFBEDFAEBED7AFBFD6AEBCD7B2BCE0AFBDDAAFBDDAAFBDDAAFBDDA
+AEBCD9AEBCD9AEBCD9AEBCD9ACBCD6ACBCD6ACBCD6ABBBD5ABBBD5ABBBD5ABBBD5ABBBD5
+AAB9D8AAB9D8A9B8D7A9B8D7A9B8D7A9B8D7A8B7D6A8B7D6A7B7D8A5B5D6A9B8D7A5B3CE
+7B87A16C768F6A758B6D758A6B768C6B768C6B768C6B768C6A758B6A758B6A758B6A758B
+68738968738968738968738967728867728867728867728867738B647088616F8A94A3C0
+99A9CA98AACE95A9CE95A8D095A7CF95A7CF94A6CE94A6CE93A5CD93A5CD92A4CC92A4CC
+8FA2CC8FA2CC8FA2CC8EA1CB8EA1CB8DA0CA8DA0CA8DA0CA8B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C8CCD7B5BBD1B2BBDCAFBEDFADBDD6AFBFD6ADBBD6B1BBDFAFBDDAAFBDDAAEBCD9AEBCD9
+AEBCD9AEBCD9ADBBD8ADBBD8ABBAD7ABBAD7ABBAD7ABBAD7ABBAD7AAB9D6AAB9D6AAB9D6
+A9B8D7A9B8D7A9B8D7A9B8D7A8B7D6A8B7D6A8B7D6A8B7D6A8B8D9A3B3D4A7B6D5A4B2CD
+7A86A06A748D69748A6E768B6B768C6B768C6A758B6A758B6A758B6A758B69748A69748A
+68738968738967728867728867728867728866718766718765718964708863718C92A1BE
+9AAACB97A9CD94A8CD95A8D094A6CE94A6CE94A6CE93A5CD93A5CD92A4CC92A4CC92A4CC
+8FA2CC8FA2CC8EA1CB8EA1CB8DA0CA8DA0CA8C9FC98C9FC98B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C7CBD6B4BAD0B1BADBAEBDDEADBDD6AEBED5ACBAD5B1BBDFAEBCD9AEBCD9AEBCD9ADBBD8
+ADBBD8ADBBD8ADBBD8ACBAD7ABBAD7AAB9D6AAB9D6AAB9D6AAB9D6AAB9D6A9B8D5A9B8D5
+A8B7D6A8B7D6A8B7D6A8B7D6A8B7D6A7B6D5A7B6D5A7B6D5A7B7D8A2B2D3A6B5D4A4B2CD
+7A86A069738C6873896D758A6A758B6A758B6A758B6A758B69748A69748A69748A69748A
+677288677288677288677288667187667187667187667187636F8764708864728D8F9EBB
+9AAACB95A7CB94A8CD95A8D094A6CE94A6CE93A5CD93A5CD92A4CC92A4CC91A3CB91A3CB
+8EA1CB8EA1CB8EA1CB8DA0CA8DA0CA8C9FC98C9FC98C9FC98B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C7CBD6B3B9CFB0B9DAADBCDDACBCD5ADBDD4ABB9D4B0BADEADBBD8ADBBD8ADBBD8ACBAD7
+ACBAD7ACBAD7ACBAD7ACBAD7AAB9D8AAB9D8A9B8D7A9B8D7A9B8D7A9B8D7A9B8D7A8B7D6
+A8B7D6A7B6D5A7B6D5A7B6D5A7B6D5A6B5D4A6B5D4A6B5D4A6B6D7A2B2D3A7B6D5A4B2CD
+7B87A16A748D6873896C74896A758B6A758B69748A69748A69748A69748A687389687389
+677288677288667187667187667187667187657086657086636F8764708863718C8A99B6
+9AAACB94A6CA94A8CD94A7CF93A5CD93A5CD93A5CD92A4CC92A4CC91A3CB91A3CB91A3CB
+8EA1CB8EA1CB8DA0CA8DA0CA8C9FC98C9FC98B9EC88B9EC88B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C6CAD5B3B9CFB0B9DAACBBDCABBBD4ACBCD3ABB9D4AFB9DDACBAD7ACBAD7ACBAD7ACBAD7
+ABB9D6ABB9D6ABB9D6ABB9D6A9B8D7A9B8D7A9B8D7A8B7D6A8B7D6A8B7D6A8B7D6A8B7D6
+A7B6D5A7B6D5A6B5D4A6B5D4A6B5D4A6B5D4A5B4D3A5B4D3A5B5D6A3B3D4A7B6D5A1AFCA
+77839D6A748D69748A6B738869748A69748A69748A69748A687389687389687389687389
+667187667187667187667187657086657086657086657086636F87647088616F8A8493B0
+99A9CA93A5C993A7CC93A6CE93A5CD93A5CD92A4CC92A4CC91A3CB91A3CB90A2CA90A2CA
+8DA0CA8DA0CA8DA0CA8C9FC98C9FC98B9EC88B9EC88B9EC88B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C5C9D4B2B8CEAFB8D9ACBBDCAABAD3ACBCD3AAB8D3AEB8DCACBAD7ACBAD7ABB9D6ABB9D6
+ABB9D6ABB9D6AAB8D5AAB8D5A8B7D8A8B7D8A8B7D8A8B7D8A8B7D8A7B6D7A7B6D7A7B6D7
+A6B5D4A6B5D4A6B5D4A6B5D4A5B4D3A5B4D3A5B4D3A5B4D3A4B4D5A4B4D5A6B5D49BA9C4
+717D9769738C6A758B69718669748A69748A687389687389687389687389677288677288
+667187667187657086657086657086657086646F85646F856470886470885E6C877F8EAB
+98A8C993A5C993A7CC91A4CC92A4CC92A4CC92A4CC91A3CB91A3CB90A2CA90A2CA90A2CA
+8DA0CA8DA0CA8C9FC98C9FC98B9EC88B9EC88A9DC78A9DC78B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C5C9D4B2B8CEAFB8D9ACBBDCAABAD3ABBBD2AAB8D3AEB8DCABB9D6ABB9D6ABB9D6ABB9D6
+ABB9D6AAB8D5AAB8D5AAB8D5A8B7D8A8B7D8A8B7D8A8B7D8A7B6D7A7B6D7A7B6D7A7B6D7
+A6B5D4A6B5D4A6B5D4A5B4D3A5B4D3A5B4D3A5B4D3A4B3D2A3B3D4A4B4D5A4B3D295A3BE
+6B779167718A6A758B69718669748A687389687389687389687389677288677288677288
+667187657086657086657086657086646F85646F85646F85657189636F875D6B867C8BA8
+97A7C892A4C893A7CC91A4CC92A4CC92A4CC92A4CC91A3CB91A3CB90A2CA90A2CA8FA1C9
+8DA0CA8DA0CA8C9FC98C9FC98B9EC88B9EC88A9DC78A9DC78B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C5CCD4B1B9D0ACB6DAA9B6E0A7B7D8A9BAD4A7B6D3AAB7DAA8B7D8A8B7D8A8B7D8A8B7D8
+A8B7D8A8B7D8A8B7D8A8B7D8A8B7D6A8B7D6A8B7D6A7B6D5A7B6D5A6B5D4A6B5D4A6B5D4
+A9B7DCA6B4D9A2B0D5A2B0D5A5B3D6A7B5D8A5B4D5A3B2D3ABB5CE9FA9C28B95AE77819A
+68728B646E8768728B6D779068728B67718A67718A67718A67718A667089667089667089
+64708A64708A64708A64708A636F89636F89636F89636F8963718B5D6B855B6983677590
+7D8BA6909EB999A7C499A7C48BA1C88EA4CB90A6CD8FA5CE8BA1CA8AA0C98CA1CC8FA4CF
+8FA0CC8E9FCB8D9ECA8C9DC98B9CC88C9DC98C9DC98D9ECA8B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C5CCD4B1B9D0ABB5D9A8B5DFA7B7D8A9BAD4A7B6D3AAB7DAA8B7D8A8B7D8A8B7D8A8B7D8
+A8B7D8A8B7D8A8B7D8A8B7D8A8B7D6A7B6D5A6B5D4A5B4D3A5B4D3A4B3D2A3B2D1A3B2D1
+A0AED3A5B3D8A8B6D9A6B4D7A1B0D19FAECFA3B2D3A8B7D8949EB7838DA6707A9368728B
+6A748D6D77906A748D656F8867718A67718A67718A67718A67718A667089667089667089
+64708A64708A64708A64708A636F89636F89636F89636F89606E8862708A62708A606E89
+616F8A6C7A95808EAB8F9DBA92A6CB8FA3C88DA0C88EA1C990A3CB90A3CD8EA1CB8B9EC8
+8B9CC88B9CC88B9CC88B9CC88C9DC98C9DC98C9DC98C9DC98B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C4CBD3B0B8CFABB5D9A8B5DFA6B6D7A8B9D3A6B5D2A9B6D9A7B6D7A7B6D7A7B6D7A7B6D7
+A7B6D7A7B6D7A7B6D7A7B6D7A6B5D4A6B5D4A6B5D4A5B4D3A5B4D3A6B5D4A6B5D4A6B5D4
+ABB8DBA4B1D4A0ADCFA4B1D3A8B5D5A3B0D094A1C18593B0717B946C768F667089646E87
+67718A69738C69738C67718A67718A67718A67718A667089667089667089667089667089
+64708A64708A636F89636F89636F89636F89626E88626E885E6C86606E88606E885D6B86
+5967825C6A856573906E7C998498BB889CBF8CA0C38EA2C78CA0C58B9EC68B9EC68C9FC7
+8C9DC98D9ECA8D9ECA8E9FCB8D9ECA8C9DC98B9CC88B9CC88B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C4CBD3B0B8CFAAB4D8A7B4DEA5B5D6A7B8D2A6B5D2A8B5D8A6B5D6A6B5D6A6B5D6A6B5D6
+A6B5D6A6B5D6A6B5D6A6B5D6A5B4D3A5B4D3A5B4D3A5B4D3A4B3D2A4B3D2A5B4D3A5B4D3
+A4B1D3A7B4D4A9B6D6A5B2D299A7C48593B0717F9A64728D626C8567718A6A748D69738C
+656F88646E876670896A748D667089667089667089667089667089656F88656F88656F88
+636F89636F89636F89636F89626E88626E88626E88626E885D6B855C6A845C6A845E6C87
+606E895F6D885B69865765825E71926D80A18093B48D9FC38FA1C58D9FC58B9DC38B9DC3
+8B9CC88B9CC88C9DC98C9DC98C9DC98B9CC88B9CC88A9BC78B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C3CAD2AFB7CEA9B3D7A6B3DDA5B5D6A7B8D2A5B4D1A8B5D8A5B4D5A5B4D5A5B4D5A5B4D5
+A5B4D5A5B4D5A5B4D5A5B4D5A4B3D2A5B4D3A5B4D3A4B3D2A4B3D2A3B2D1A1B0CFA1B0CF
+A6B1CFA3AECC99A4C28691AD717C9865718B65718B69758F6A748D68728B68728B69738C
+6A748D6A748D67718A646E87667089667089667089656F88656F88656F88656F88656F88
+636F89636F89626E88626E88626E88626E88616D87616D875F6D875F6D875F6D875E6C87
+5C6A855C6A855C6A875D6B885566845869876070916D7D9E7C8CAE8999BB90A0C292A2C6
+8A9BC78A9BC78A9BC78A9BC78A9BC78B9CC88B9CC88B9CC88B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C2C9D1AEB6CDA8B2D6A6B3DDA4B4D5A6B7D1A4B3D0A7B4D7A5B4D5A5B4D5A5B4D5A5B4D5
+A5B4D5A5B4D5A5B4D5A5B4D5A2B1D0A3B2D1A5B4D3A6B5D4A6B5D4A4B3D2A2B1D0A1B0CF
+9AA5C18792AE6F7B95626E88626E8667738B69758D68748A6C768F69738C66708967718A
+69738C6A748D667089636D86656F88656F88656F88656F88656F88646E87646E87646E87
+626E88626E88626E88626E88616D87616D87616D87616D87606E885F6D875E6C865C6A85
+5B69845A68835C6A875D6B885E6D8A5968855564815564835D6C8B6D7C9D7E8DAE8998B9
+8E9FCB8E9FCB8E9FCB8E9FCB8D9ECA8C9DC98B9CC88A9BC78B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C2C9D1ADB5CCA8B2D6A5B2DCA3B3D4A5B6D0A3B2CFA6B3D6A4B3D4A4B3D4A4B3D4A4B3D4
+A4B3D4A4B3D4A4B3D4A4B3D4A1B0CFA2B1D0A1B0CF9FAECD9BAAC994A3C28E9DBC8A99B8
+6C78926A769068748C6A768E6B778D6A768C667288626F8266708968728B68728B67718A
+656F88646E87656F8867718A656F88656F88656F88646E87646E87646E87646E87646E87
+626E88626E88616D87616D87616D87616D87606C86606C865F6D875C6A845B69835C6A85
+5F6D885E6C875B69865765825866815C6A855F6D885C6A875866835966865F6C8C667393
+7B8CB87E8FBB8394C08899C58B9CC88C9DC98C9DC98B9CC88B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C1C8D0ADB5CCA8B2D6A5B2DCA3B3D4A5B6D0A3B2CFA6B3D6A4B3D4A4B3D4A4B3D4A4B3D4
+A4B3D4A4B3D4A4B3D4A4B3D4A3B2D1A1B0CF9CABCA92A1C08594B37685A4697897627190
+636F8764708865718965718764708665728566738668758867718A67718A667089667089
+656F88656F8866708967718A656F88656F88656F88646E87646E87646E87646E87636D86
+626E88616D87616D87616D87616D87606C86606C86606C865C6A845D6B855D6B855D6B86
+5C6A855B69845C6A875D6B885C6A845A6882586681576580576582576582566481546181
+5566925C6D99697AA67788B48293BF899AC68C9DC98D9ECA8B9EC98B9EC98B9EC98B9EC9
+8B9EC98B9EC98B9EC98B9EC98C9DC88B9DCF889DCA8AA0C58A9DC78E9BCF929CBFC0CDD3
+C1CDCDAAB5D1A5B2DEA0B3D39BAFC8A4B4D6A5B3D6A1AFCAA1AED0A5B2D4A6B3D5A3B0D2
+A2AFD1A2AFD19DAACC96A3C5818BA47A849D707A9367718A626C85636D8667718A6A748D
+68728B67718A67718A67718A67718A667089667089667089657189657189657189657189
+647088647088647088647088636F89636F89636F89626E88626E88626E88626E88616D87
+616C88606B87606B87606B87606B875F6A865F6A865F6A865C6A875C6A875B69865B6986
+5B69865B69865A68855A68855A68855A68855A68855A68855A68855A68855A68855A6885
+5A688557658254627F54627F59678463718E6E7C997583A08D9CC38B9AC18A99C08C9BC4
+8F9EC791A0CB8F9EC98C9BC68B9AC38797CA8FA1D38A9DC7899AC88C97CD99A4C4C3CED0
+C2CECEAAB5D1A2AFDB9FB2D29FB3CCA3B3D5A2B0D3A5B3CEA5B2D2A4B1D19EABCB929FBF
+8592B27A87A7727F9F6D7A9A6B758E69738C68728B66708966708968728B69738C6B758E
+67718A67718A67718A67718A67718A667089667089667089657189657189657189647088
+647088647088647088636F87636F89636F89626E88626E88626E88626E88616D87616D87
+606B87606B87606B87606B87606B875F6A865F6A865F6A865C6A875B69865B69865B6986
+5B69865A68855A68855A68855A68855A68855A68855A68855A68855A68855A68855A6885
+5B69865A68855967845866835967845B69865D6B885E6C895E6E906575976F7FA37989AD
+8190B78796BD8B9AC18E9DC6909FC68A9ACB8D9FCF899CC68C9DCB8C97CD96A1C1C2CDCF
+C3CFCFA9B4D09FACD89FB2D2A0B4CDA2B2D4A0AED1A6B4CFA0AEC88C9AB474829C66748E
+62708A62708A62708A62708A636D86646E87656F8867718A68728B68728B67718A67718A
+67718A67718A67718A667089667089667089667089667089647088647088647088647088
+647088636F87636F87636F87626E88626E88626E88626E88616D87616D87616D87616D87
+606B87606B87606B875F6A865F6A865F6A865F6A865F6A865B69865B69865B69865B6986
+5B69865A68855A68855A68855A68855A68855A68855A68855A68855A68855A68855A6885
+5967845967845A68855A6885596784586683566481556380546382566584576685586788
+5C6B8C69779A7C8AAD8A98BB90A0C48C9DCB8C9ECC889BC58FA0CE8D98CE929CBFC1CCCE
+C4D0D0A6B1CDA0ADD99FB2D29DB1CAA2B2D4A0AED19CAAC57C889E6C788E5F6B815E6A80
+65718767738967738966728869738C68728B67718A67718A667089667089667089667089
+667089667089667089667089667089656F88656F88656F88647088647088647088636F87
+636F87636F87636F87636F87626E88626E88616D87616D87616D87616D87606C86606C86
+5F6A865F6A865F6A865F6A865F6A865E69855E69855E69855B69865B69865B69865B6986
+5A68855A68855A68855A68855A68855A68855A68855A68855A68855A68855A68855A6885
+5A68855A68855967845967845967845A68855A68855B69865969835A6A84596983546380
+52617E566582606F8E6978978494B58B9CC88FA2CD879AC28FA0CE8E99CF919BBEC1CCD0
+C4D0D0A4AFCBA1AEDA9FB2D297ABC4A2B2D49EACCF8896B16370836471846976896D7A8D
+6A778A637083626F8266738668728B67718A66708966708966708967718A68728B68728B
+667089667089667089656F88656F88656F88656F88656F88636F87636F87636F87636F87
+636F87626E86626E86626E86616D87616D87616D87616D87606C86606C86606C86606C86
+5F6A865F6A865F6A865E69855E69855E69855E69855E69855B69865B69865B69865A6885
+5A68855A68855A68855967845A68855A68855A68855A68855A68855A68855A68855A6885
+5D6B885C6A875B69865A68855967845967845967845A68855967815B69835D6B855D6B86
+5B69845866815664815563806E7F9D8395BD91A4CE899DC28E9FCD8F9AD0949EC2C1CCD2
+C3CFCFA4AFCBA1AEDA9EB1D196AAC3A0B0D293A1C472809B69748A69748A69748A687389
+657086636E846570866A758B646E87646E87656F88667089667089656F88646E87646E87
+656F88656F88656F88656F88656F88646E87646E87646E87636F87636F87636F87626E86
+626E86626E86626E86626E86616D87616D87606C86606C86606C86606C865F6B855F6B85
+5E69855E69855E69855E69855E69855D68845D68845D68845B69865A68855A68855A6885
+5A68855967845967845967845A68855A68855A68855A68855A68855A68855A68855A6885
+5967845967845A68855A68855A68855967845765825765825A6882596781596781596782
+5B69845B69865A68855967845C6D877587AD8DA0C88A9EC18D9ECA8E99CF959FC3C2CDD3
+C2CECEA7B2CE9DAAD69BAECE9DB1CA9CACCE808EB162708B667089656F88646E87646E87
+67718A6A748D69738C656F88656F88656F88667089667089656F88646E87626C85616B84
+656F88656F88656F88646E87646E87646E87646E87646E87636F87626E86626E86626E86
+626E86616D85616D85616D85606C86606C86606C86606C865F6B855F6B855F6B855F6B85
+5E69855E69855E69855D68845D68845D68845D68845D68845A68855A68855A68855A6885
+5A68855967845967845967845A68855A68855A68855A68855A68855A68855A68855A6885
+5664815765825866835A68855A68855A68855967845967845765805866815A68835B6986
+5B69865B68885A678759668654667E65779B8296BB8B9FC28E9FCB8C97CD959FC3C3CDD6
+C1CDCDA9B4D099A6D298ABCBA4B8D199A9CB717FA25A6883646E8968728D69738E656F8A
+636D88656F8A66708B656F8A667089656F88646E87646E87646E8766708967718A69738C
+656F88656F88656F88646E87646E87646E87646E87636D86626E86626E86626E86626E86
+616D85616D85616D85616D85606C86606C86606C86606C865F6B855F6B855F6B855F6B85
+5E69855E69855E69855D68845D68845D68845D68845C67835A68855A68855A68855A6885
+5967845967845967845967845A68855A68855A68855A68855A68855A68855A68855A6885
+5D6B885C6A875A68855967845866835967845A68855B69865B66845D68865D68865C6787
+5964845963865C66895E688B54667C5A6D8E798DB28CA0C38FA0CC8A95CB939CC3C3CDD6
+C2C9DB9EA4C49EA6D4A0ABD99EAAD08B96B4666C8C6B6F95676F86676F86676F86676F86
+676F86676F86676F86676F86676E8A676E8A676E8A676E8A676E8A676E8A676E8A676E8A
+666C8E666C8E666C8E666C8E666C8E656B8D656B8D656B8D646A8C646A8C646A8C63698B
+63698B63698B63698B63698B62688C62688C61678B61678B61678B61678B61678B60668A
+5D68865D68865D68865D68865D68865D68865D68865D68865B65885B65885B65885B6588
+5B65885B65885B65885B65885B65885B65885B65885B65885B65885B65885B65885B6588
+5B65885B65885B65885B65885B65885B65885B65885B65885B65885B65885B65885B6588
+5B65885B65885B65885B6588616A8B5C67856C7B9C909FCA929FD38A96C6919CBABECAD8
+C5CFD8A1ACC2A1ADD39FADD49CABCA8897AE646E87676E8B657086657086657086657086
+657086657086657086657086646E89646E89646E89646E89646E89646E89646E89646E89
+646E89636D88636D88636D88636D88626C87626C87626C87626C87626C87626C87616B86
+616B86616B86616B86616B86606A85606A85606A855F69845F69845F69845F69845E6883
+5A68825A68825A68825A68825A68825A68825A68825A6882596781596781596781596781
+596781596781596781596781596781596781596781596781596781596781596781596781
+596781596781596781596781596781596781596781596781596781596781596781596781
+59678159678159678159678159648056647E687993899BC18D9ECC8A99C291A0B7BDCCD3
+BFCDD09CACBC9CABCA97AACA94A8C08192A25F6F7F626D8362708A62708A62708A62708A
+62708A62708A62708A62708A616F8A616F8A616F8A616F8A616F8A616F8A616F8A616F8A
+617083617083606F82606F82606F82606F825F6E815F6E81606F825F6E815F6E815F6E81
+5F6E815E6D805E6D805E6D805E6D825E6D825D6C815D6C815D6C815D6C815C6B805C6B80
+5A6A815A6A815A6A815A6A815A6A815A6A815A6A815A6A815A6B7F5A6B7F5A6B7F5A6B7F
+5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F
+5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F5A6B7F
+5A6B7F5A6B7F5A6B7F5A6B7F59687F58687F677B93879BBC8C9FCA8B9DC393A4B8BBCDD1
+C2D1D89DACC19BABCD98AACE95A9C4788A9E5D6C81616D875F6D875F6D875F6D875F6D87
+5F6D875F6D875F6D875F6D875E6C875E6C875E6C875E6C875E6C875E6C875E6C875E6C87
+5D6C835D6C835D6C835D6C835D6C835C6B825C6B825C6B825C6B825C6B825B6A815B6A81
+5B6A815B6A815A69805A69805A68825A68825A68825A6882596781596781596781596781
+566582566582566582566582566582566582566582566582576780576780576780576780
+576780576780576780576780576780576780576780576780576780576780576780576780
+576780576780576780576780576780576780576780576780576780576780576780576780
+57678057678057678057678058668354647E6275938598C08C9ECE8B9CC893A3BDBCCDD5
+C1CFDC99A7C297A6CF97A8D396A9CA72839D5D6B86667191637289637289637289637289
+637289637289637289637289616F89616F89616F89616F89616F89616F89616F89616F89
+616F8C616F8C616F8C616F8C606E8B606E8B606E8B606E8B5F6D8A5E6C895E6C895E6C89
+5E6C895D6B885D6B885D6B885D6A8A5D6A8A5D6A8A5D6A8A5C69895C69895C69895C6989
+5B688B5B688B5B688B5B688B5B688B5B688B5B688B5B688B5B68885B68885B68885B6888
+5B68885B68885B68885B68885B68885B68885B68885B68885B68885B68885B68885B6888
+5B68885B68885B68885B68885B68885B68885B68885B68885B68885B68885B68885B6888
+5B68885B68885B68885B68885E688C5461836171958495C38B9AD18997C88F9CBEBBC8D8
+C7D1DD9FA9C49BA7CF99A6D097A6C76E7C965E6883666C8C626D81626D81626D81626D81
+626D81626D81626D81626D81616C80616C80616C80616C80616C80616C80616C80616C80
+616A87616A87616A87616A876069866069866069866069865F68855F68855E67845E6784
+5E67845E67845D66835D66835E67865E67865D66855D66855D66855D66855C65845C6584
+5C65865C65865C65865C65865C65865C65865C65865C65865C65845C65845C65845C6584
+5C65845C65845C65845C65845C65845C65845C65845C65845C65845C65845C65845C6584
+5C65845C65845C65845C65845C65845C65845C65845C65845C65845C65845C65845C6584
+5C65845C65845C65845C65845F658557607D626F8F8592BC8F9BCD909BC998A1BEC2CCD8
+C1C9CBA2A9B99FA8C598A3C19AA6BC7884926E75857075896C73836C73836C73836C7383
+6C73836C73836C73836C73836B72826B72826B72826B72826B72826B72826B72826B7282
+6C73856C73856C73856B72846B72846B72846B72846B72846B72846B72846B72846B7284
+6A71836A71836A71836A71836A71846A71846A71846A7184697083697083697083697083
+697082697082697082697082697082697082697082697082697083697083697083697083
+697083697083697083697083697083697083697083697083697083697083697083697083
+697083697083697083697083697083697083697083697083697083697083697083697083
+697083697083697083697083696F7F676F7C6F7B8B8894AE8F99BC959EBD9BA3B0BAC3C0
+CFD5CBBBC3C6C5CCDEC4CFE1D6E3ECC9D3D5CBD3D6CED1DACFD5E3CFD5E3CFD5E3CFD5E3
+CFD5E3CFD5E3CFD5E3CFD5E3CFD5E1CFD5E1CFD5E1CFD5E1CFD5E1CFD5E1CFD5E1CFD5E1
+CFD6DCCFD6DCCFD6DCCFD6DCCED5DBCED5DBCED5DBCED5DBD0D7DDD0D7DDD0D7DDCFD6DC
+CFD6DCCFD6DCCFD6DCCFD6DCCFD6DECFD6DECFD6DECFD6DECED5DDCED5DDCED5DDCED5DD
+D0D5D9D0D5D9D0D5D9D0D5D9D0D5D9D0D5D9D0D5D9D0D5D9D0D4DDD0D4DDD0D4DDD0D4DD
+D0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DD
+D0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DD
+D0D4DDD0D4DDD0D4DDD0D4DDD1D5D6CFD5D5CBD5D6CED8E2C6CEE3C5CCDCC0C6C4D1D8C6
+
+end
+%%PageTrailer
+%%Trailer
+%%EOF

BIN
lebenslauf/moderncv/examples/picture.jpg


+ 24 - 0
lebenslauf/moderncv/examples/publications.bib

@@ -0,0 +1,24 @@
+%% start of file `jdoe_publications.bib'.
+%% Copyright 2006 Xavier Danaux (xdanaux<AT>gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+@BOOK{publication1,
+  author = {Author 1 and Author 2},
+  title = {Title},
+  publisher = {Publisher},
+  edition = {edition},
+  year = {year},
+}
+
+@MISC{publication2,
+  author = {Author},
+  title = {Title},
+  year = {year},
+}
+
+
+%% end of file `jdoe_publications.bib'.

+ 96 - 0
lebenslauf/moderncv/examples/template_en.tex

@@ -0,0 +1,96 @@
+%% start of file `template_en.tex'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+\documentclass[11pt,a4paper]{moderncv}
+
+% moderncv themes
+\moderncvtheme[blue]{casual}                 % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and 'roman' (for roman fonts, instead of sans serif fonts)
+%\moderncvtheme[green]{classic}                % idem
+
+% character encoding
+\usepackage[utf8]{inputenc}                   % replace by the encoding you are using
+
+% adjust the page margins
+\usepackage[scale=0.8]{geometry}
+\recomputelengths                             % required when changes are made to page layout lengths
+
+% personal data
+\firstname{John}
+\familyname{Doe}
+\title{Resumé title (optional)}               % optional, remove the line if not wanted
+\address{street and number}{postcode city}    % optional, remove the line if not wanted
+\mobile{mobile (optional)}                    % optional, remove the line if not wanted
+\phone{phone (optional)}                      % optional, remove the line if not wanted
+\fax{fax (optional)}                          % optional, remove the line if not wanted
+\email{email (optional)}                      % optional, remove the line if not wanted
+\extrainfo{additional information (optional)} % optional, remove the line if not wanted
+\photo[64pt]{picture}                         % '64pt' is the height the picture must be resized to and 'picture' is the name of the picture file; optional, remove the line if not wanted
+\quote{Some quote (optional)}                 % optional, remove the line if not wanted
+
+%\nopagenumbers{}                             % uncomment to suppress automatic page numbering for CVs longer than one page
+
+
+%----------------------------------------------------------------------------------
+%            content
+%----------------------------------------------------------------------------------
+\begin{document}
+\maketitle
+
+\section{Education}
+\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}  % arguments 3 to 6 are optional
+\cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}  % arguments 3 to 6 are optional
+
+\section{Master thesis}
+\cvline{title}{\emph{Title}}
+\cvline{supervisors}{Supervisors}
+\cvline{description}{\small Short thesis abstract}
+
+\section{Experience}
+\subsection{Vocational}
+\cventry{year--year}{Job title}{Employer}{City}{}{Description}                % arguments 3 to 6 are optional
+\cventry{year--year}{Job title}{Employer}{City}{}{Description}                % arguments 3 to 6 are optional
+\subsection{Miscellaneous}
+\cventry{year--year}{Job title}{Employer}{City}{}{Description line 1\newline{}Description line 2}% arguments 3 to 6 are optional
+
+\section{Languages}
+\cvlanguage{language 1}{Skill level}{Comment}
+\cvlanguage{language 2}{Skill level}{Comment}
+\cvlanguage{language 3}{Skill level}{Comment}
+
+\section{Computer skills}
+\cvcomputer{category 1}{XXX, YYY, ZZZ}{category 4}{XXX, YYY, ZZZ}
+\cvcomputer{category 2}{XXX, YYY, ZZZ}{category 5}{XXX, YYY, ZZZ}
+\cvcomputer{category 3}{XXX, YYY, ZZZ}{category 6}{XXX, YYY, ZZZ}
+
+\section{Interests}
+\cvline{hobby 1}{\small Description}
+\cvline{hobby 2}{\small Description}
+\cvline{hobby 3}{\small Description}
+
+\closesection{}                   % needed to renewcommands
+\renewcommand{\listitemsymbol}{-} % change the symbol for lists
+
+\section{Extra 1}
+\cvlistitem{Item 1}
+\cvlistitem{Item 2}
+\cvlistitem[+]{Item 3}            % optional other symbol
+
+\section{Extra 2}
+\cvlistdoubleitem[\Neutral]{Item 1}{Item 4}
+\cvlistdoubleitem[\Neutral]{Item 2}{Item 5}
+\cvlistdoubleitem[\Neutral]{Item 3}{}
+
+% Publications from a BibTeX file
+\nocite{*}
+\bibliographystyle{plain}
+\bibliography{publications}       % 'publications' is the name of a BibTeX file
+
+\end{document}
+
+
+%% end of file `template_en.tex'.

BIN
lebenslauf/moderncv/examples/template_en_casual_blue.pdf


BIN
lebenslauf/moderncv/examples/template_en_classic_green.pdf


+ 461 - 0
lebenslauf/moderncv/moderncv.cls

@@ -0,0 +1,461 @@
+%% start of file `moderncv.cls'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+%                identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{moderncv}[2007/05/28 v0.6 modern curriculum vitae document class]
+
+
+%-------------------------------------------------------------------------------
+%                debugging
+%-------------------------------------------------------------------------------
+\newif\if@DEBUG\@DEBUGfalse
+
+
+%-------------------------------------------------------------------------------
+%                class options
+%
+% (need to be done before the external package loading, for example because
+% we need \paperwidth, \paperheight and \@ptsize to be defined before loading
+% geometry and fancyhdr)
+%-------------------------------------------------------------------------------
+% paper size option
+\DeclareOption{a4paper}{
+  \setlength\paperheight{297mm}
+  \setlength\paperwidth{210mm}}
+\DeclareOption{a5paper}{
+  \setlength\paperheight{210mm}
+  \setlength\paperwidth{148mm}}
+\DeclareOption{b5paper}{
+  \setlength\paperheight{250mm}
+  \setlength\paperwidth{176mm}}
+\DeclareOption{letterpaper}{
+  \setlength\paperheight{11in}
+  \setlength\paperwidth{8.5in}}
+\DeclareOption{legalpaper}{
+  \setlength\paperheight{14in}
+  \setlength\paperwidth{8.5in}}
+\DeclareOption{executivepaper}{
+  \setlength\paperheight{10.5in}
+  \setlength\paperwidth{7.25in}}
+\DeclareOption{landscape}{
+  \setlength\@tempdima{\paperheight}
+  \setlength\paperheight{\paperwidth}
+  \setlength\paperwidth{\@tempdima}}
+
+% font size options
+\newcommand\@ptsize{}
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}
+
+% draft/final option
+\DeclareOption{draft}{\setlength\overfullrule{5pt}}
+\DeclareOption{final}{\setlength\overfullrule{0pt}}
+
+% nolmodern option
+\newif\if@lmodern\@lmoderntrue
+\DeclareOption{nolmodern}{\@lmodernfalse}
+
+% nocolor option
+\newif\if@color\@colortrue
+\DeclareOption{nocolor}{\@colorfalse}
+
+% execute default options
+\ExecuteOptions{a4paper,11pt,color,final}
+
+% process given options
+\ProcessOptions\relax
+\input{size1\@ptsize.clo}
+
+
+%-------------------------------------------------------------------------------
+%                required packages
+%-------------------------------------------------------------------------------
+% ifthen package
+\RequirePackage{ifthen}
+
+% ifpdf package
+\RequirePackage{ifpdf}
+
+% color package
+\ifpdf
+  \RequirePackage[pdftex]{color}
+\else
+  \RequirePackage[dvips]{color}
+\fi
+
+% fontenc package
+\RequirePackage[T1]{fontenc}
+
+% scalable Computer Modern fonts
+%\usepackage{type1cm}
+
+% latin modern fonts
+\AtEndOfClass{%
+  \if@lmodern
+    \RequirePackage{lmodern}\fi}
+
+% symbols like \Telefon, \Mobilefone, \Letter and \Email
+\RequirePackage{marvosym}
+
+% extended characters of T1 in .ps + other guillemets
+%\RequirePackage{ae,aecompl,aeguill}
+
+% page geometry
+\addtolength{\oddsidemargin}{-54pt}
+\addtolength{\textwidth}{109pt}
+\addtolength{\topmargin}{-70pt}
+\addtolength{\textheight}{122pt}
+\addtolength{\marginparsep}{-5pt}
+\addtolength{\marginparwidth}{-10pt}
+
+% hyperrefs
+\RequirePackage{url}
+\ifpdf
+  \RequirePackage[pdftex]{hyperref}
+\else
+  \RequirePackage[dvips]{hyperref}\fi
+\AtEndOfClass{%
+  \AtBeginDocument{%
+    \hypersetup{%
+      breaklinks,
+      baseurl       = http://,
+      pdfborder     = 0 0 0,
+      pdfpagemode   = None,
+      pdfstartview  = XYZ,
+      pdfstartpage  = 1,
+      pdfauthor     = \@firstname~\@familyname,%
+      pdftitle      = \@title,%
+      pdfsubject    = \@firstname~\@familyname,%
+      pdfkeywords   = \@firstname~\@familyname{} curriculum vit\ae{},%
+      pdfcreator    = \LaTeX{} with `moderncv' package,%
+      pdfproducer   = \LaTeX}}}
+\urlstyle{tt}
+
+% tables that split across multiple pages
+\RequirePackage[]{longtable}
+% spacing between sections
+\setlength{\LTpre}{\smallskipamount}
+\setlength{\LTpost}{\smallskipamount}
+\setlength{\LTleft}{0pt}
+\setlength{\LTright}{0pt}
+
+% graphics
+\ifpdf
+  \RequirePackage[pdftex]{graphicx}
+\else
+  \RequirePackage[dvips]{graphicx}\fi
+
+% headers and footers
+\usepackage{fancyhdr}
+\fancypagestyle{plain}{%
+  \renewcommand{\headrulewidth}{0pt}
+  \renewcommand{\footrulewidth}{0pt}
+  \fancyhf{}}
+\pagestyle{plain}
+
+% compatibility package with older versions of moderncv
+\RequirePackageWithOptions{moderncvcompatibility}
+
+
+%-------------------------------------------------------------------------------
+%                class definition
+%-------------------------------------------------------------------------------
+% minimal base settings
+\setlength\lineskip{1\p@}
+\setlength\normallineskip{1\p@}
+\renewcommand\baselinestretch{}
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{0pt}
+\setlength\columnsep{10\p@}
+\setlength\columnseprule{0\p@}
+\pagestyle{empty}
+\pagenumbering{arabic}
+\raggedbottom
+\onecolumn
+
+
+%-------------------------------------------------------------------------------
+%                style commands definitions
+%-------------------------------------------------------------------------------
+% symbols used 
+\providecommand*{\listitemsymbol}{\textbullet}
+\providecommand*{\addresssymbol}{}
+\providecommand*{\mobilesymbol}{\Mobilefone}
+\providecommand*{\phonesymbol}{\Telefon}
+\providecommand*{\faxsymbol}{\FAX}
+\providecommand*{\emailsymbol}{\Letter}
+
+% colors
+\definecolor{firstnamecolor}{rgb}{0,0,0}
+\definecolor{familynamecolor}{rgb}{0,0,0}
+\definecolor{titlecolor}{rgb}{0,0,0}
+\definecolor{addresscolor}{rgb}{0,0,0}
+\definecolor{quotecolor}{rgb}{0,0,0}
+\definecolor{sectionrectanglecolor}{rgb}{0,0,0}
+\definecolor{sectiontitlecolor}{rgb}{0,0,0}
+\definecolor{subsectioncolor}{rgb}{0,0,0}
+\definecolor{hintcolor}{rgb}{0,0,0}
+
+% fonts
+\providecommand*{\firstnamefont}{}
+\providecommand*{\familynamefont}{}
+\providecommand*{\titlefont}{}
+\providecommand*{\addressfont}{}
+\providecommand*{\quotefont}{}
+\providecommand*{\sectionfont}{}
+\providecommand*{\subsectionfont}{}
+\providecommand*{\hintfont}{\small\sffamily}
+
+% styles
+\providecommand*{\firstnamestyle}[1]{{\firstnamefont\color{firstnamecolor}#1}}
+\providecommand*{\familynamestyle}[1]{{\familynamefont\color{familynamecolor}#1}}
+\providecommand*{\titlestyle}[1]{{\titlefont\color{titlecolor}#1}}
+\providecommand*{\addresstyle}[1]{{\addressfont\color{addresscolor}#1}}
+\providecommand*{\quotestyle}[1]{{\quotefont\color{quotecolor}#1}}
+\providecommand*{\sectionstyle}[1]{{\sectionfont\color{sectiontitlecolor}#1}}
+\providecommand*{\subsectionstyle}[1]{{\subsectionfont\color{subsectioncolor}#1}}
+\providecommand*{\hintstyle}[1]{{\hintfont\color{hintcolor}#1}}
+
+% themes: casual (default), classic, ...
+\newcommand*{\moderncvtheme}[2][]{
+  \def\@moderncvtheme{#2}
+  \def\@moderncvthemeoptions{#1}}
+\moderncvtheme{casual}   % default theme
+\AtBeginDocument{\RequirePackage[\@moderncvthemeoptions]{moderncvtheme\@moderncvtheme}}
+
+
+%-------------------------------------------------------------------------------
+%                structure commands definitions
+%-------------------------------------------------------------------------------
+\newcommand*{\firstname}[1]{\def\@firstname{#1}}
+\newcommand*{\familyname}[1]{\def\@familyname{#1}}
+\renewcommand*{\title}[1]{\def\@title{#1}}
+\newcommand*{\address}[2]{\def\@addressstreet{#1}\def\@addresscity{#2}}
+\newcommand*{\mobile}[1]{\def\@mobile{#1}}
+\newcommand*{\phone}[1]{\def\@phone{#1}}
+\renewcommand*{\fax}[1]{\def\@fax{#1}}
+\newcommand*{\email}[1]{\def\@email{#1}}
+\newcommand*{\extrainfo}[1]{\def\@extrainfo{#1}}
+\newcommand*{\photo}[2][64pt]{\def\@photoheight{#1}\def\@photo{#2}}
+\newcommand*{\quote}[1]{\def\@quote{#1}}
+
+% length used by the moderncv layout
+% quote length
+\newlength{\quotewidth}
+% section lengths
+\newlength{\hintscolumnwidth}
+\newlength{\separatorcolumnwidth}
+\setlength{\separatorcolumnwidth}{0.025\textwidth}
+\newlength{\maincolumnwidth}
+\newcommand*{\sethintscolumnlength}[1]{
+  \setlength{\hintscolumnwidth}{#1}%
+  \setlength{\maincolumnwidth}{\textwidth}%
+  \addtolength{\maincolumnwidth}{-\separatorcolumnwidth}%
+  \addtolength{\maincolumnwidth}{-\hintscolumnwidth}}
+\newcommand*{\sethintscolumntowidth}[1]{
+  \settowidth{\hintscolumnwidth}{#1}%
+  \setlength{\maincolumnwidth}{\textwidth}%
+  \addtolength{\maincolumnwidth}{-\separatorcolumnwidth}%
+  \addtolength{\maincolumnwidth}{-\hintscolumnwidth}}
+% doubleitem lengths
+\newlength{\doubleitemmaincolumnwidth}
+% listitem lengths
+\newlength{\listitemsymbolwidth}
+\settowidth{\listitemsymbolwidth}{\listitemsymbol{}~}
+% listdoubleitem lengths
+\newlength{\listdoubleitemmaincolumnwidth}
+% recompute all the lengths that depends on the text width
+\newcommand*{\recomputelengths}{%
+  \setlength{\quotewidth}{0.65\textwidth}%
+  \sethintscolumnlength{\hintscolumnwidth}%
+  % doubleitem lengths
+  \setlength{\doubleitemmaincolumnwidth}{\maincolumnwidth}%
+  \addtolength{\doubleitemmaincolumnwidth}{-\hintscolumnwidth}%
+  \addtolength{\doubleitemmaincolumnwidth}{-\separatorcolumnwidth}%
+  \setlength{\doubleitemmaincolumnwidth}{0.5\doubleitemmaincolumnwidth}%
+  % listdoubleitem lengths
+  \setlength{\listdoubleitemmaincolumnwidth}{\maincolumnwidth}%
+  \addtolength{\listdoubleitemmaincolumnwidth}{-\listitemsymbolwidth}%
+  \setlength{\listdoubleitemmaincolumnwidth}{0.475\listdoubleitemmaincolumnwidth}%
+  % fancyhdr lengths
+  \renewcommand{\headwidth}{\textwidth}}
+\sethintscolumnlength{0.15\textwidth}
+\recomputelengths
+
+% makes the cv title
+\renewcommand*{\maketitle}{}%
+
+% draws a colored rectangle
+% usage: \colorrule[optional height]{width}
+%\newcommand*{\colorrule}[2][1ex]{{\color{sectionrectanglecolor}{\rule{#2}{#1}}}}
+
+\newif\if@sectionopen\@sectionopenfalse
+\newif\if@firstcvlineofsection\@firstcvlineofsectionfalse % bug if initially set to true...
+% usage: \closesection{} to force a section to be closed (and the tabular layout it generates)
+\newcommand*{\closesection}{%
+  \if@sectionopen%
+    \end{longtable}%
+%    \phantomsection% reset the anchor for hyperrefs
+%    \par\null%
+    \@sectionopenfalse\fi}
+\AtEndDocument{\closesection{}}
+% usage: \section{<title>}, or \emptysection{}
+\newcommand*{\section}[1]{%
+  \closesection{}%
+  \@sectionopentrue%
+  \phantomsection{}% reset the anchor for hyperrefs
+  \addcontentsline{toc}{part}{#1}%
+  \begin{longtable}[l]{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
+  {\color{sectionrectanglecolor}\rule{\hintscolumnwidth}{1ex}} &\sectionstyle{#1}\\[1ex]%
+  \@firstcvlineofsectiontrue%
+  }
+\newcommand*{\emptysection}{%
+  \closesection{}%
+  \@sectionopentrue%
+  \begin{longtable}[l]{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
+  \@firstcvlineofsectiontrue%
+  }
+
+% usage (inside section): \subsection{title}
+\newcommand*{\subsection}[1]{%
+  \cvline[0.65em]{}{\subsectionstyle{#1}}}
+
+% usage (inside section): \cvline{leftmark}{text}
+\newcommand*{\cvline}[3][.25em]{%
+  \if@firstcvlineofsection%
+    \@firstcvlineofsectionfalse%
+  \else%
+    \\[#1]\fi%
+  \raggedleft\hintfont{#2} &#3}
+
+% usage (inside section}: \cvdoubleitem{subtitle}{text}{subtitle}{text}
+\newcommand*{\cvdoubleitem}[4]{%
+ \cvline{#1}{\begin{minipage}[t]{\doubleitemmaincolumnwidth}#2\end{minipage}%
+ \hfill%
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintfont{#3}\end{minipage}\hspace*{\separatorcolumnwidth}\begin{minipage}[t]{\doubleitemmaincolumnwidth}#4\end{minipage}}}
+
+% usage (inside section): \cvlistitem{point1}
+\newcommand*{\cvlistitem}[2][\listitemsymbol{}]{%
+  \cvline[0pt]{}{#1~#2}}
+
+% usage (inside section): \cvlistdoubleitem{point1}{point2}
+\newcommand*{\cvlistdoubleitem}[3][\listitemsymbol{}]{%
+  \cvline[0pt]{}{#1~\begin{minipage}[t]{\listdoubleitemmaincolumnwidth}#2\end{minipage}%
+  \hfill%
+  \ifthenelse{\equal{#3}{}}%
+    {}%
+    {#1~\begin{minipage}[t]{\listdoubleitemmaincolumnwidth}#3\end{minipage}}}}
+
+% usage : \cventry{years}{degree/job title}{institution/employer}{localization}{optionnal: grade/...}{optional: comment/job description}
+\newcommand*{\cventry}[6]{%
+  \cvline{#1}{%
+    {\bfseries#2}%
+    \ifthenelse{\equal{#3}{}}{}{, {\slshape#3}}%
+    \ifthenelse{\equal{#4}{}}{}{, #4}%
+    \ifthenelse{\equal{#5}{}}{}{, #5}%
+    .%
+    \ifthenelse{\equal{#6}{}}{}{\newline{}\small#6}
+    }}%
+%  \ifthenelse{\equal{#6}{}}{}{\cvline[0pt]{}{\small#6}}}
+
+% usage (inside 'language' cvsection environment): \cvlanguage{name}{level}{comment}
+\newcommand*{\cvlanguage}[3]{%
+  \cvline{#1}{\begin{minipage}[t]{.225\maincolumnwidth}\textbf{#2}\end{minipage}\hfill\begin{minipage}[t]{0.725\maincolumnwidth}\raggedleft\footnotesize\itshape #3\end{minipage}}}
+
+% usage (inside 'computer skills' cvsection environment): \cvcomputer{category}{programs}{category}{programs}
+\newcommand*{\cvcomputer}[4]{%
+  \cvdoubleitem{#1}{\small#2}{#3}{\small#4}}
+
+% usage: \weblink[optional text]{link}
+\newcommand*{\weblink}[2][]{%
+  \ifthenelse{\equal{#1}{}}%
+    {\def\@linktext{#2}}%
+    {\def\@linktext{#1}}%
+  \href{#2}{\@linktext{}}}
+
+% usage: \httplink[optional text]{link}
+\newcommand*{\httplink}[2][]{%
+  \ifthenelse{\equal{#1}{}}%
+    {\def\@linktext{#2}}%
+    {\def\@linktext{#1}}%
+  \href{http://#2}{\@linktext{}}}
+
+% usage: \emaillink[optional text]{link}
+\newcommand*{\emaillink}[2][]{%
+  \ifthenelse{\equal{#1}{}}%
+    {\def\@linktext{#2}}%
+    {\def\@linktext{#1}}%
+  \href{mailto:#2}{\@linktext{}}}
+
+% usage: \nopagenumbers{}
+\newif\if@displaypagenumbers\@displaypagenumberstrue
+\newcommand*{\nopagenumbers}{\@displaypagenumbersfalse}
+\AtBeginDocument{%
+  \if@displaypagenumbers%
+    \@ifundefined{r@lastpage}{}{%
+      \ifthenelse{\pageref{lastpage} > 1}{%
+      \fancypagestyle{plain}{%
+        \fancyfoot[r]{\addressfont\color{quotecolor}\footnotesize\thepage/\pageref{lastpage}}}%
+      \pagestyle{plain}}{}}%
+  \AtEndDocument{\label{lastpage}}%
+  \fi}
+
+% thebibliography environment, for use with BibTeX
+\newcommand{\refname}{Publications}
+\newlength{\bibindent}
+\setlength{\bibindent}{1.5em}
+% trick to force the previous section to close before the thebibliography environment
+\let\oldbibliography\bibliography
+\renewcommand*{\bibliography}[1]{%
+  \closesection{}%
+  \oldbibliography{#1}}
+% bibliography item label
+\newcommand*{\bibliographyitemlabel}{}% use \@biblabel{\arabic{enumiv}} for BibTeX labels
+\newenvironment{thebibliography}[1]%
+  {%
+    \section{\refname}%
+    \closesection{}%
+    \vspace*{-1.65em}%
+    \small%
+    \begin{list}{\bibliographyitemlabel}%
+      {%
+        \setlength{\topsep}{0pt}%
+        \setlength{\labelwidth}{\hintscolumnwidth}%
+        \setlength{\labelsep}{\separatorcolumnwidth}%
+        \leftmargin\labelwidth%
+        \advance\leftmargin\labelsep%
+        \@openbib@code%
+        \usecounter{enumiv}%
+        \let\p@enumiv\@empty%
+        \renewcommand\theenumiv{\@arabic\c@enumiv}}%
+        \sloppy\clubpenalty4000\widowpenalty4000%
+%        \sfcode`\.\@m%
+%        \sfcode `\=1000\relax%
+  }%
+  {%
+    \def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}%
+    \end{list}%
+  }
+\newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em}
+\let\@openbib@code\@empty
+
+% the classical \today definition
+\def\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}
+
+
+\endinput
+
+
+%% end of file `moderncv.cls'.

+ 62 - 0
lebenslauf/moderncv/moderncvcompatibility.sty

@@ -0,0 +1,62 @@
+%% start of file `moderncvcompatibility.sty'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+%                identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvcompatibility}[2007/05/28 v0.6 modern curriculum vitae compatibility patches]
+
+
+%-------------------------------------------------------------------------------
+%                required packages
+%-------------------------------------------------------------------------------
+
+
+%-------------------------------------------------------------------------------
+%                package options
+%-------------------------------------------------------------------------------
+% old casual option (version 0.1)
+%\DeclareOption{casual}{\input{moderncvstylecasual.sty}}
+
+% old classic option (version 0.1)
+%\DeclareOption{classic}{\input{moderncvstyleclassic.sty}}
+
+\DeclareOption*{}
+
+% process given options
+\ProcessOptions\relax
+
+%-------------------------------------------------------------------------------
+%                definitions
+%-------------------------------------------------------------------------------
+% compatibility with version 0.1
+\newcommand*{\cvresume}[2]{\cvlistdoubleitem{#1}{#2}}
+
+% compatibility with versions <= 0.2
+% section, cvline, ... with width argument...
+%\newcommand*{\section}[2][0.825]{%
+%  \closesection{}%
+%  \@sectionopentrue%
+%  \addcontentsline{toc}{part}{#2}
+%  \begin{longtable}[t]{@{}r@{\hspace{.025\textwidth}}@{}p{#1\textwidth}@{}}%
+%%  \colorrule{.15\textwidth}&\mbox{\color{sectiontitlecolor}\sectionfont#2}\\[1ex]}%
+%  {\color{sectionrectanglecolor}\rule{0.15\textwidth}{1ex}}&\mbox{\color{sectiontitlecolor}\sectionfont#2}\\[1ex]}%
+%\newcommand*{\cvline}[3][.825]{%
+%  \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\small\sffamily#2\end{minipage}&\begin{minipage}[t]{\maincolumnwidth}#3\end{minipage}\\}
+%\newcommand*{\cvitem}[3][.825]{%
+%  \cvline[#1]{#2}{#3\vspace*{.75em}}}   % the \vspace*{} inside the cvline environment is a hack... (should conceptually be outside the environment)
+
+% compatibility with versions <= 0.5
+\newcommand*{\cvitem}[2]{\cvline{#1}{#2}}
+\newcommand*{\moderncvstyle}[1]{\moderncvtheme{#1}}
+
+\endinput
+
+
+%% end of file `moderncvcompatibility.sty'.

+ 153 - 0
lebenslauf/moderncv/moderncvthemecasual.sty

@@ -0,0 +1,153 @@
+%% start of file `moderncvthemecasual.sty'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+%                identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvthemecasual}[2007/05/28 v0.6 modern curriculum vitae style: casual]
+
+
+%-------------------------------------------------------------------------------
+%                required packages
+%-------------------------------------------------------------------------------
+
+
+%-------------------------------------------------------------------------------
+%                package options
+%-------------------------------------------------------------------------------
+% color options
+% blue (default option)
+\DeclareOption{blue}{}
+% orange
+\newif\if@colororange\@colororangefalse
+\DeclareOption{orange}{\@colororangetrue}
+% green
+\newif\if@colorgreen\@colorgreenfalse
+\DeclareOption{green}{\@colorgreentrue}
+% red
+\newif\if@colorred\@colorredfalse
+\DeclareOption{red}{\@colorredtrue}
+% grey
+\newif\if@colorgrey\@colorgreyfalse
+\DeclareOption{grey}{\@colorgreytrue}
+
+% roman option
+\newif\if@roman\@romanfalse
+\DeclareOption{roman}{\@romantrue}
+
+% unused options
+\DeclareOption*{
+  \PackageWarning{moderncvthemecasual}{Unknown option ‘\CurrentOption’}}
+
+% execute default options
+\ExecuteOptions{color}
+
+% process given options
+\ProcessOptions\relax
+
+
+%-------------------------------------------------------------------------------
+%                style definition
+%-------------------------------------------------------------------------------
+% symbols used
+\renewcommand*{\listitemsymbol}{\textbullet}
+
+% colors
+\definecolor{firstnamecolor}{rgb}{0.65,0.65,0.65}
+\definecolor{familynamecolor}{rgb}{0.45,0.45,0.45}
+\definecolor{quotecolor}{rgb}{0.35,0.35,0.35}
+\definecolor{addresscolor}{rgb}{0.35,0.35,0.35}
+% default blue color
+  \definecolor{sectionrectanglecolor}{rgb}{0.25,0.50,0.75}
+  \definecolor{sectiontitlecolor}{rgb}{0.20,0.40,0.65}
+  \definecolor{subsectioncolor}{rgb}{0.20,0.40,0.65}
+  \definecolor{footersymbolcolor}{rgb}{0.25,0.50,0.75}
+\if@colororange
+  \definecolor{sectionrectanglecolor}{rgb}{1.00,0.65,0.20}
+  \definecolor{sectiontitlecolor}{rgb}{0.95,0.55,0.15}
+  \definecolor{subsectioncolor}{rgb}{0.95,0.55,0.15}
+  \definecolor{footersymbolcolor}{rgb}{0.95,0.55,0.15}\fi
+\if@colorgreen
+  \definecolor{sectionrectanglecolor}{rgb}{0.55,0.85,0.35}
+  \definecolor{sectiontitlecolor}{rgb}{0.30,0.65,0.15}
+  \definecolor{subsectioncolor}{rgb}{0.30,0.65,0.15}
+  \definecolor{footersymbolcolor}{rgb}{0.30,0.65,0.15}\fi
+\if@colorred
+  \definecolor{sectionrectanglecolor}{rgb}{1.00,0.30,0.30}
+  \definecolor{sectiontitlecolor}{rgb}{0.95,0.20,0.20}
+  \definecolor{subsectioncolor}{rgb}{0.95,0.20,0.20}
+  \definecolor{footersymbolcolor}{rgb}{0.95,0.20,0.20}\fi
+\if@colorgrey
+  \definecolor{sectionrectanglecolor}{rgb}{0.75,0.75,0.75}
+  \definecolor{sectiontitlecolor}{rgb}{0.35,0.35,0.35}
+  \definecolor{subsectioncolor}{rgb}{0.35,0.35,0.35}
+  \definecolor{footersymbolcolor}{rgb}{0.35,0.35,0.35}\fi
+
+% fonts
+\if@roman
+  \AtBeginDocument{\rmfamily}
+\else
+  \AtBeginDocument{\sffamily}\fi
+\renewcommand*{\ttdefault}{pcr}
+\renewcommand*{\firstnamefont}{\fontsize{38}{40}\sffamily\mdseries\upshape}
+\renewcommand*{\familynamefont}{\firstnamefont}
+\renewcommand*{\addressfont}{\normalsize\sffamily\mdseries\slshape}
+\renewcommand*{\quotefont}{\large\slshape}
+\renewcommand*{\sectionfont}{\Large\sffamily\mdseries\upshape}
+\renewcommand*{\subsectionfont}{\large\sffamily\mdseries\upshape}
+
+% styles
+
+% maketitle
+\renewcommand*{\maketitle}{%
+  {%
+    \ifthenelse{\isundefined{\@photo}}%
+      {}%
+      {{\color{firstnamecolor}\framebox{\includegraphics[height=\@photoheight]{\@photo}}}}%
+    \hfill%
+    \raggedleft{\firstnamestyle{\MakeLowercase{\@firstname}}\familynamestyle{\MakeLowercase{\@familyname}}}\\[-.35em]}%
+  {\color{firstnamecolor}\rule{\textwidth}{.25ex}\\[2.5em]}%
+% optional quote
+  \ifthenelse{\isundefined{\@quote}}%
+    {}%
+    {\centering{\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}}\\[2.5em]}%
+  }%
+
+% cv footer
+\newif\if@firstfooterelement\@firstfooterelementtrue
+\providecommand*{\footersymbol}{}
+\renewcommand*{\footersymbol}{%
+  \if@firstfooterelement%
+  \else%
+    { ~~\color{footersymbolcolor}\textbullet~~~}\fi}
+\providecommand*{\makefooter}{}
+\renewcommand*{\makefooter}{%
+  \fancypagestyle{plain}{%
+    \fancyfoot[c]{%
+      \parbox{0.8\textwidth}{%
+      \centering%
+      \addressfont\color{addresscolor}%
+      \ifthenelse{\isundefined{\@addressstreet}}{}{%
+        \addresssymbol~\@addressstreet%
+        \@firstfooterelementfalse%
+        \ifthenelse{\isundefined{\@addresscity}}{}{\footersymbol\@addresscity}\\\@firstfooterelementtrue}%
+      \ifthenelse{\isundefined{\@mobile}}{}{\footersymbol\mobilesymbol~\@mobile\@firstfooterelementfalse}%
+      \ifthenelse{\isundefined{\@phone}}{}{\footersymbol\phonesymbol~\@phone\@firstfooterelementfalse}%
+      \ifthenelse{\isundefined{\@fax}}{}{\footersymbol\faxsymbol~\@fax\@firstfooterelementfalse}%
+      \ifthenelse{\isundefined{\@email}}{}{\footersymbol\emailsymbol~\emaillink{\@email}\@firstfooterelementfalse}%
+      \ifthenelse{\isundefined{\@extrainfo}}{}{\footersymbol\@extrainfo\@firstfooterelementfalse}}}%
+  }%
+  \pagestyle{plain}}
+\AtBeginDocument{\makefooter}
+
+
+\endinput
+
+
+%% end of file `moderncvthemecasual.sty'.

+ 149 - 0
lebenslauf/moderncv/moderncvthemeclassic.sty

@@ -0,0 +1,149 @@
+%% start of file `moderncvthemeclassic.sty'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+%                identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvthemeclassic}[2007/05/28 v0.6 modern curriculum vitae style: classic]
+
+
+%-------------------------------------------------------------------------------
+%                required packages
+%-------------------------------------------------------------------------------
+
+
+%-------------------------------------------------------------------------------
+%                package options
+%-------------------------------------------------------------------------------
+% color options
+% blue (default option)
+\DeclareOption{blue}{}
+% orange
+\newif\if@colororange\@colororangefalse
+\DeclareOption{orange}{\@colororangetrue}
+% green
+\newif\if@colorgreen\@colorgreenfalse
+\DeclareOption{green}{\@colorgreentrue}
+% red
+\newif\if@colorred\@colorredfalse
+\DeclareOption{red}{\@colorredtrue}
+% grey
+\newif\if@colorgrey\@colorgreyfalse
+\DeclareOption{grey}{\@colorgreytrue}
+
+% roman option
+\newif\if@roman\@romanfalse
+\DeclareOption{roman}{\@romantrue}
+
+% unused options
+\DeclareOption*{
+  \PackageWarning{moderncvthemeclassic}{Unknown option ‘\CurrentOption’}}
+
+% execute default options
+\ExecuteOptions{color}
+
+% process given options
+\ProcessOptions\relax
+
+
+%-------------------------------------------------------------------------------
+%                style definition
+%-------------------------------------------------------------------------------
+% symbols used
+\renewcommand*{\listitemsymbol}{\textbullet}
+
+% colors
+\definecolor{firstnamecolor}{rgb}{0,0,0}
+\definecolor{familynamecolor}{rgb}{0,0,0}
+\definecolor{titlecolor}{rgb}{0.35,0.35,0.35}
+\definecolor{quotecolor}{rgb}{0.35,0.35,0.35}
+% default blue color
+  \definecolor{addresscolor}{rgb}{0.25,0.5,0.75}
+  \definecolor{sectionrectanglecolor}{rgb}{0.25,0.5,0.75}
+  \definecolor{sectiontitlecolor}{rgb}{0.2,0.4,0.65}
+  \definecolor{subsectioncolor}{rgb}{0.2,0.4,0.65}
+\if@colororange
+  \definecolor{addresscolor}{rgb}{0.95,0.55,0.15}
+  \definecolor{sectionrectanglecolor}{rgb}{1,0.65,0.20}
+  \definecolor{sectiontitlecolor}{rgb}{0.95,0.55,0.15}
+  \definecolor{subsectioncolor}{rgb}{0.95,0.55,0.15}\fi
+\if@colorgreen
+  \definecolor{addresscolor}{rgb}{0.30,0.65,0.15}
+  \definecolor{sectionrectanglecolor}{rgb}{0.55,0.85,0.35}
+  \definecolor{sectiontitlecolor}{rgb}{0.30,0.65,0.15}
+  \definecolor{subsectioncolor}{rgb}{0.30,0.65,0.15}\fi
+\if@colorred
+  \definecolor{addresscolor}{rgb}{0.95,0.20,0.20}
+  \definecolor{sectionrectanglecolor}{rgb}{1.00,0.30,0.30}
+  \definecolor{sectiontitlecolor}{rgb}{0.95,0.20,0.20}
+  \definecolor{subsectioncolor}{rgb}{0.95,0.20,0.20}\fi
+\if@colorgrey
+  \definecolor{addresscolor}{rgb}{0.35,0.35,0.35}
+  \definecolor{sectionrectanglecolor}{rgb}{0.75,0.75,0.75}
+  \definecolor{sectiontitlecolor}{rgb}{0.35,0.35,0.35}
+  \definecolor{subsectioncolor}{rgb}{0.35,0.35,0.35}\fi
+
+% fonts
+\if@roman
+  \AtBeginDocument{\rmfamily}
+\else
+  \AtBeginDocument{\sffamily}\fi
+\renewcommand*{\ttdefault}{pcr}
+\renewcommand*{\firstnamefont}{\fontsize{34}{36}\sffamily\mdseries\upshape}
+\renewcommand*{\titlefont}{\LARGE\sffamily\mdseries\slshape}
+\renewcommand*{\addressfont}{\normalsize\rmfamily\mdseries\slshape}
+\renewcommand*{\familynamefont}{\firstnamefont}
+\renewcommand*{\quotefont}{\large\slshape}
+\renewcommand*{\sectionfont}{\Large\sffamily\mdseries\upshape}
+\renewcommand*{\subsectionfont}{\large\sffamily\mdseries\upshape}
+
+% styles
+
+% maketitle
+\renewcommand*{\maketitle}{%
+  % name and title
+  \if@DEBUG\framebox{\fi
+  \begin{minipage}[b]{.725\textwidth}%
+    \firstnamestyle{\@firstname~}\familynamestyle{\@familyname}%
+    \ifthenelse{\isundefined{\@title}}%
+      {}%
+      {\\[1.25em]\titlestyle{\@title}}%
+  \end{minipage}%
+  \if@DEBUG}\fi
+  \hfill%
+  \if@DEBUG\framebox{\fi%
+  % optional data
+  \begin{minipage}[b]{.525\textwidth}%
+    \raggedleft\addressfont\color{addresscolor}%
+    \ifthenelse{\isundefined{\@addressstreet}}{}{%
+      \addresssymbol~\@addressstreet%
+      \ifthenelse{\isundefined{\@addresscity}}{}{\\\@addresscity}%
+      \\[.2em]}%
+    \ifthenelse{\isundefined{\@mobile}}{}{\mobilesymbol~\@mobile\\[.2em]}%
+    \ifthenelse{\isundefined{\@phone}}{}{\phonesymbol~\@phone\\[.2em]}%
+    \ifthenelse{\isundefined{\@fax}}{}{\faxsymbol~\@fax\\[.2em]}%
+    \ifthenelse{\isundefined{\@email}}{}{\emailsymbol~\emaillink{\@email}\\[.2em]}%
+    \ifthenelse{\isundefined{\@extrainfo}}{}{\@extrainfo\\[.2em]}%
+  \end{minipage}%
+  % optional photo
+  \ifthenelse{\isundefined{\@photo}}%
+    {}%
+    {\hspace*{0.75em}\color{firstnamecolor}\framebox{\includegraphics[height=\@photoheight]{\@photo}}}\\[3em]%
+  \if@DEBUG}\fi%
+  % optional quote
+  \ifthenelse{\isundefined{\@quote}}%
+    {}%
+    {\centering{\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}}\\[2.5em]}%
+  }
+
+
+\endinput
+
+
+%% end of file `moderncvthemeclassic.sty'.

+ 43 - 0
lebenslauf/moderncv/moderncvthemeempty.sty

@@ -0,0 +1,43 @@
+%% start of file `moderncvthemeempty.sty'.
+%% Copyright 2007 Xavier Danaux (xdanaux@gmail.com).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+%                identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvthemeempty}[2007/05/28 v0.6 modern curriculum vitae style: empty]
+
+
+%-------------------------------------------------------------------------------
+%                required packages
+%-------------------------------------------------------------------------------
+
+
+%-------------------------------------------------------------------------------
+%                package options
+%-------------------------------------------------------------------------------
+% unused options
+\DeclareOption*{
+  \PackageWarning{moderncvthemeempty}{Unknown option ‘\CurrentOption’}}
+
+% execute default options
+\ExecuteOptions{}
+
+% process given options
+\ProcessOptions\relax
+
+
+%-------------------------------------------------------------------------------
+%                style definition
+%-------------------------------------------------------------------------------
+
+
+\endinput
+
+
+%% end of file `moderncvthemeempty.sty'.

Some files were not shown because too many files changed in this diff