From 5502f423db4815a726e358601ba80b8c0b88a703 Mon Sep 17 00:00:00 2001 From: Joseph Timothy Foley Date: Wed, 14 Sep 2022 13:37:23 +0000 Subject: [PATCH] Migrating from old repo https://repository.cs.ru.is/svn/foley-publish/ --- .gitignore | 9 + cv-reference-test.tex | 18 + cv.txt | 38 + embeddedcv.cls | 232 ++++ etoolbox.sty | 1708 +++++++++++++++++++++++++++++ etoolbox/README | 84 ++ etoolbox/etoolbox.def | 73 ++ etoolbox/etoolbox.pdf | Bin 0 -> 188352 bytes etoolbox/etoolbox.sty | 1708 +++++++++++++++++++++++++++++ etoolbox/etoolbox.tex | 1482 +++++++++++++++++++++++++ foley-bio.txt | 17 + foley-crop-lowres.jpg | Bin 0 -> 39155 bytes foley-embedded_cv.tex | 230 ++++ foley-europass-bibliography.tex | 44 + foley-europass.tex | 253 +++++ foley-main_cv-publish.pdf | Bin 0 -> 373699 bytes foley-main_cv.tex | 588 ++++++++++ foley-short_cv.bbl | 669 +++++++++++ foley-short_cv.pdf | Bin 0 -> 93088 bytes foley-short_cv.synctex.gz | Bin 0 -> 7632 bytes foley-short_cv.tex | 207 ++++ foley_cv-old.tex | 278 +++++ graphics/fp7-logo.png | Bin 0 -> 4323 bytes graphics/mariecurie-logo.png | Bin 0 -> 5992 bytes graphics/rannis-logo.png | Bin 0 -> 5017 bytes graphics/rannsoknasjodur-logo.png | Bin 0 -> 4696 bytes graphics/start-logo.png | Bin 0 -> 3248 bytes jdoe_casual.tex | 97 ++ marketa_cv.tex | 98 ++ references-collections.bib | 161 +++ references-foley.bib | 644 +++++++++++ references.bib | 564 ++++++++++ references.tex | 23 + resume/dist-resume.sh | 7 + resume/foleyresume.cls | 312 ++++++ resume/oldresume.tex | 75 ++ resume/res.cls | 803 ++++++++++++++ resume/resume-ccp.tex | 39 + resume/resume-full.tex | 40 + resume/resume-garfinkle.tex | 125 +++ resume/resume-mech.tex | 39 + resume/resume-software.tex | 39 + resume/resume-sports.tex | 86 ++ resume/resume-template.tex | 39 + resume/resume.cls | 145 +++ resume/resume.sty | 100 ++ resume/resume.tex | 138 +++ short-bio.txt | 2 + tweaklist.sty | 52 + 49 files changed, 11266 insertions(+) create mode 100644 .gitignore create mode 100644 cv-reference-test.tex create mode 100644 cv.txt create mode 100644 embeddedcv.cls create mode 100644 etoolbox.sty create mode 100644 etoolbox/README create mode 100644 etoolbox/etoolbox.def create mode 100644 etoolbox/etoolbox.pdf create mode 100644 etoolbox/etoolbox.sty create mode 100644 etoolbox/etoolbox.tex create mode 100644 foley-bio.txt create mode 100644 foley-crop-lowres.jpg create mode 100644 foley-embedded_cv.tex create mode 100644 foley-europass-bibliography.tex create mode 100644 foley-europass.tex create mode 100644 foley-main_cv-publish.pdf create mode 100644 foley-main_cv.tex create mode 100644 foley-short_cv.bbl create mode 100644 foley-short_cv.pdf create mode 100644 foley-short_cv.synctex.gz create mode 100644 foley-short_cv.tex create mode 100644 foley_cv-old.tex create mode 100644 graphics/fp7-logo.png create mode 100644 graphics/mariecurie-logo.png create mode 100644 graphics/rannis-logo.png create mode 100644 graphics/rannsoknasjodur-logo.png create mode 100644 graphics/start-logo.png create mode 100644 jdoe_casual.tex create mode 100644 marketa_cv.tex create mode 100644 references-collections.bib create mode 100644 references-foley.bib create mode 100644 references.bib create mode 100644 references.tex create mode 100644 resume/dist-resume.sh create mode 100644 resume/foleyresume.cls create mode 100644 resume/oldresume.tex create mode 100644 resume/res.cls create mode 100644 resume/resume-ccp.tex create mode 100644 resume/resume-full.tex create mode 100644 resume/resume-garfinkle.tex create mode 100644 resume/resume-mech.tex create mode 100644 resume/resume-software.tex create mode 100644 resume/resume-sports.tex create mode 100644 resume/resume-template.tex create mode 100644 resume/resume.cls create mode 100644 resume/resume.sty create mode 100644 resume/resume.tex create mode 100644 short-bio.txt create mode 100644 tweaklist.sty diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..195fcee --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +~* +*~ +auto/* +*.bcf +*.blg +*.log +*.out +*.run.xml +*.aux \ No newline at end of file diff --git a/cv-reference-test.tex b/cv-reference-test.tex new file mode 100644 index 0000000..390b533 --- /dev/null +++ b/cv-reference-test.tex @@ -0,0 +1,18 @@ +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} % allows UTF encoding, needed for Icelandic characters +\usepackage[backend=biber, bibencoding=utf8, style=apa]{biblatex} +\usepackage[american]{babel} +\DeclareLanguageMapping{american}{american-apa} % after biblatex and babel +\addbibresource{references.bib} + +\begin{document} +\nocite{*} + +\printbibliography{} +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/cv.txt b/cv.txt new file mode 100644 index 0000000..7a9d649 --- /dev/null +++ b/cv.txt @@ -0,0 +1,38 @@ +2.739J - ereceipts: + +2.812 - System Analysis and Design of the +Insight M3/M5 Tactical Illuminator. Vince E. Carballo, Miguesl A. Chavez, Joe Foley. + +2.890 Wireless Friends: Company Business Plan. Sofy Tarud, Joe Foley, Oscar Lopez, Omri Pedatzur + +6.857 Flingetty: Secure Multiparty Computation for a Dating Match-Up System + +6.871 Automotive Diagnosis Assistant + +@MASTERSTHESIS{foley99microwave, + author = {Joseph Timothy Foley}, + title = {An Infrastructure for Electromechanical Appliances on the Internet}, + tablabel = {foley MEng Thesis}, + school = {Massachusetts Institute of Technology}, + year = {1999}, + address = {Cambridge, MA 02139}, + month = may +} + +@ARTICLE{foley03klite, + author = {Joseph Timothy Foley}, + title = {KLite: A RFID Tag Anti-Counterfeit System}, + tablabel = {KLite}, + journal = {AutoID Center}, + year = 2003, + month = nov, +} + +@ARTICLE{foley03trackntrace, + author = {Joseph Timothy Foley}, + title = {EPC Reductionism}, + tablabel = {EPC Reductionism}, + journal = {AutoID Center}, + year = 2003, + month = nov, +} diff --git a/embeddedcv.cls b/embeddedcv.cls new file mode 100644 index 0000000..887794d --- /dev/null +++ b/embeddedcv.cls @@ -0,0 +1,232 @@ +%% --------------------------------------------------------------------------------------------- +%% LaTeX ModernCV stripped down version for embedding in proposals +%% --------------------------------------------------------------------------------------------- +%% Initial version by Joe Foley +%% Questions, comments, complaints: latex@LIST.RU.IS +%% Created on 2015-02-27 +%% This code is distributed under the Perl Artistic License +%% http://language.per.com/misc/Artistic.html +%% This template is heavily derived from the RUCSMSc.sty developed by Bjorn Thor Jonsson, bjorn@ru.is +%% +%% Reference for class/package writers +%% http://ctan.uib.no/macros/latex/doc/clsguide.pdf +%% + +\newcommand{\fileversion@embeddedcv}{Rev 1} +\newcommand{\filedate@embeddedcv}{2016/03/05}% must be YYYY/MM/DD! +\newcommand{\fileauthor@embeddedcv}{Joseph Timothy Foley, foley at R U dot I S} + +\ProvidesClass{embeddedcv}[\filedate@embeddedcv by \fileauthor@embeddedcv] +\NeedsTeXFormat{LaTeX2e} +\typeout{Embedded CV Class \fileversion@embeddedcv <\filedate@embeddedcv>, by \fileauthor@embeddedcv} + +%% ---------------- Critical packages ----------------------------- +% This package allows you to create conditionals on booleans +\RequirePackage{ifthen} + +% detect pdflatex vs latex +\RequirePackage{ifpdf} + +%% XeTeX can allow for nicer fonts, but we really don't need it +%% Because we use standard fonts to be consistent +%% Doing the XeTeX tests causes AUCTex to keep asking if you want XeTeX, which is annoying +%\RequirePackage{ifxetex} + +%% Morewrites packages allows more programs to generate external files +%% because there is an internal limit +%% Needed if you get a "No room for a new \write" error +%% Unfortunately, it appears to be incompatible with DropBox. Bug filed with developed 2016-2-17 --foley +%\RequirePackage{morewrites} + +%% Command to remove things if we are draft mode +\RequirePackage{ifdraft} + +% ignore warnings and errors temporarily +%\RequirePackage{silence} + +%% LaTeX3 +%% Some of this may already be included as a dependancy from another package +% Better handling of arguments, particularly for defaults +\RequirePackage{xargs} + +% Specialized commands for constructing macros +\RequirePackage{xparse} + +%% ---------------- Execution of Options ----------------------------- +\ProcessOptions\relax% this stops searching for a * in + % \ProcessOtions* + +%% Alternative way to subclass. Disable the other option processing +%% if you enable it. This will dump all options onto the parent class +%\ProcessOptions\LoadClassWithOptions{article} +%% Read page 20 of http://latex-project.org/guides/clsguide.pdf +%% carefully before modifying any of the execution and previous section. +%% ---------------- Package Loading ----------------------------- +\LoadClass{article} % our parent class. + +%% ---------------- XeTeX setup ----------------------------- +%% Embedding is often needed in MS Word documents, so we need XeTeX +%\ifxetex% + \RequirePackage{fontspec} % font selecting commands + \RequirePackage{xunicode} % unicode character macros + \RequirePackage{xltxtra} % a few fixes and extras +%\else % pdftex or latex +% \RequirePackage[T1]{fontenc} +% \RequirePackage[utf8]{inputenc} % allows UTF encoding, needed for Icelandic characters +%\fi + +%% ---------------- Internationalization ----------------------------- +%\RequirePackage[autostyle,strict]{csquotes} +%% http://mirrors.concertpass.com/tex-archive/macros/latex/contrib/csquotes/csquotes.pdf +%% You invoke with \enquote{} and \blockquote{} +%% csquotes must be loaded before babel for AUCTeX +%% autostyle: update style as language changes in document +%% strict: any warnings become errors +%\DeclareQuoteAlias{german}{icelandic} +%% Unfortunately, csquotes does not understand Icelandic quotation marks +%% so we must create an alias. German is close enough. + +%\@nameuse{RequirePackage}[english,german,icelandic]{babel} +%% Babel allows various automatic text to be in selected languages +%% But to use the options, you have to always load it, even for english +%% The languages must be specified in order. + +%% We load german because it seems to be needed for the special Icelandic quotation marks. +%% Smart quotation marks +%% The \@nameuse magic is to prevent AUCTeX from using the semi-broken icelandic mode. +%% If you don't have a keyboard to type the Icelandic characters, there are macros: +%% "` or \glqq (startquote) +%% "' or \grqq (endquote) +%% \TH Þ +%% \th þ +%% \DH Ð +%% \dh ð +%% + +% set language based upon the class setting +% \newcommand{\resetlanguage}{% +% \ifthenelse{\boolean{icelandic}}% +% {\selectlanguage{icelandic}}% +% {\selectlanguage{english}}}% +% \resetlanguage{} + +\RequirePackage{iflang} +%% iflang allows us to put multiple translations together +%% e.g. \IfLanguageName{icelandic}{Já}{Yes} + + +\RequirePackage{etoolbox} +\RequirePackage{ifthen} +\RequirePackage{xcolor} +\RequirePackage{url} +\RequirePackage{graphicx} +\RequirePackage{fancyhdr} +%\RequirePackage{tweaklist} +% Definition of "description" causes conflicts, weird. +\RequirePackage{calc} + + +%% XeLaTeX needed!! +%\setmainfont[Mapping=tex-text]{Arial} +\setmainfont[Mapping=tex-text]{Times New Roman} + + +\usepackage[margin=10mm]{geometry} + + +\definecolor{myblue}{rgb}{0,0,0.5} +\newcommand{\bluerule}{\textcolor{myblue}{\hrule}\vspace{\baselineskip}} +\newcommand*{\listitemsymbol}{{\fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}}} +\newcommand*{\hintfont}{\small\sffamily} + +% length used by the moderncv layout +% quote length +\newlength{\quotewidth} +% section lengths +\newlength{\hintscolumnwidth} +\newlength{\separatorcolumnwidth} +\setlength{\separatorcolumnwidth}{0.025\textwidth} +\newlength{\maincolumnwidth} +% doubleitem lengths +\newlength{\doubleitemmaincolumnwidth} +% listitem lengths +\newlength{\listitemsymbolwidth} +\settowidth{\listitemsymbolwidth}{\listitemsymbol{}~} +\newlength{\listitemmaincolumnwidth} +% listdoubleitem lengths +\newlength{\listdoubleitemmaincolumnwidth} +% recompute all the lengths that depends on the text width +\newcommand*{\recomputethemelengths}{} +\newcommand*{\recomputelengths}{% + \setlength{\quotewidth}{0.65\textwidth}% + % main lenghts + \setlength{\maincolumnwidth}{\textwidth}% + \addtolength{\maincolumnwidth}{-\separatorcolumnwidth}% + \addtolength{\maincolumnwidth}{-\hintscolumnwidth}% + % listitem lengths + \setlength{\listitemmaincolumnwidth}{\maincolumnwidth}% + \addtolength{\listitemmaincolumnwidth}{-\listitemsymbolwidth}% + % 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}% + \recomputethemelengths} +\setlength{\hintscolumnwidth}{0.15\textwidth} +\recomputelengths + + +% usage: \cvline{margintext}{linetext} +\newcommand*{\cvline}[3][.25em]{% + \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}% + \raggedleft\hintfont{#2} &{#3}% + \end{tabular}\\[#1]} + +% usage: \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: \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}% + .% + \ifx&% + \else{\newline{}\begin{minipage}[t]{\linewidth}\small#6\end{minipage}}\fi% + }}% +\newcommand*{\cvitem}[2]{\cvline{#1}{#2}} + +% 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: \cvlistdoubleitem[symbol]{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 (inside 'computer skills' cvsection environment): \cvcomputer{category}{programs}{category}{programs} +\newcommand*{\cvcomputer}[4]{% + \cvdoubleitem{#1}{\small#2}{#3}{\small#4}} + +%% Some commands so that we can use the same .tex file as a full CV +%% Disabled because they are before \begin{document} +\newcommand{\firstname}[1]{} +\newcommand{\familyname}[1]{} +\newcommand{\address}[2]{} +\newcommand{\phone}[1]{} +\newcommand{\email}[1]{} diff --git a/etoolbox.sty b/etoolbox.sty new file mode 100644 index 0000000..d50e739 --- /dev/null +++ b/etoolbox.sty @@ -0,0 +1,1708 @@ +% $Id$ + +% Copyright (c) 2007-2011 Philipp Lehman. +% +% Permission is granted to copy, distribute and/or modify this +% software under the terms of the LaTeX Project Public License +% (LPPL), version 1.3. +% +% The LPPL maintenance status of this software is +% 'author-maintained'. +% +% This software is provided 'as is', without warranty of any kind, +% either expressed or implied, including, but not limited to, the +% implied warranties of merchantability and fitness for a +% particular purpose. + +\def\etb@rcsid$#1: #2 #3 #4 #5${#4 v#3} + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{etoolbox} +[\etb@rcsid $Id: etoolbox.sty,v 2.1 2011/01/03 19:14:10 lehman stable $ + e-TeX tools for LaTeX] + +\begingroup +\@ifundefined{eTeXversion} + {\PackageError{etoolbox} + {Not running under e-TeX} + {This package requires e-TeX. Try compiling the document + with\MessageBreak 'elatex' instead of 'latex'. When using + pdfTeX, try 'pdfelatex'\MessageBreak instead of 'pdflatex'. + This is a fatal error. I'm aborting now.}% + \aftergroup\endinput} + {} +\endgroup + +\RequirePackage{etex} + +\def\etb@catcodes{\do\&\do\|\do\:\do\-\do\=\do\<\do\>} +\def\do#1{\catcode\number`#1=\the\catcode`#1\relax} +\edef\etb@catcodes{\etb@catcodes} +\let\do\noexpand +\AtEndOfPackage{\etb@catcodes\undef\etb@catcodes} + +\catcode`\&=3 +\catcode`\|=3 +\@makeother\: +\@makeother\- +\@makeother\= +\@makeother\< +\@makeother\> + +\protected\def\etb@error{\PackageError{etoolbox}} +\protected\def\etb@warning{\PackageWarning{etoolbox}} +\protected\def\etb@info{\PackageInfo{etoolbox}} +\newcount\etb@tempcnta + +% {}[][]{} + +\newcommand*{\newrobustcmd}{} +\protected\def\newrobustcmd{\@star@or@long\etb@new@command} + +\def\etb@new@command#1{\@testopt{\etb@newcommand#1}0} + +\def\etb@newcommand#1[#2]{% + \@ifnextchar[%] + {\etb@xargdef#1[#2]} + {\ifx\l@ngrel@x\relax + \let\l@ngrel@x\protected + \else + \protected\def\l@ngrel@x{\protected\long}% + \fi + \@argdef#1[#2]}} + +\long\def\etb@xargdef#1[#2][#3]#4{% + \@ifdefinable#1{% + \expandafter\protected + \expandafter\def + \expandafter#1% + \expandafter{% + \expandafter\@testopt + \csname\string#1\endcsname{#3}}% + \expandafter\@yargdef\csname\string#1\endcsname\tw@{#2}{#4}}} + +% {}[][]{} + +\newrobustcmd*{\renewrobustcmd}{\@star@or@long\etb@renew@command} + +\def\etb@renew@command#1{% + \ifundef{#1} + {\etb@error{\string#1 undefined}\@ehc} + {}% + \let\@ifdefinable\@rc@ifdefinable + \etb@new@command#1} + +% {}[][]{} + +\newrobustcmd*{\providerobustcmd}{\@star@or@long\etb@provide@command} + +\def\etb@provide@command#1{% + \ifundef{#1} + {\def\reserved@a{\etb@new@command#1}} + {\def\reserved@a{\etb@renew@command\reserved@a}}% + \reserved@a} + +% {} + +\newrobustcmd*{\csshow}[1]{% + \begingroup\expandafter\endgroup + \expandafter\show\csname#1\endcsname} + +% {}{}{} + +\newcommand{\ifdef}[1]{% + \ifdefined#1% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newcommand{\ifundef}[1]{% + \ifdefined#1% + \ifx#1\relax + \expandafter\expandafter + \expandafter\@firstoftwo + \else + \expandafter\expandafter + \expandafter\@secondoftwo + \fi + \else + \expandafter\@firstoftwo + \fi} + +% {}{}{} + +\newcommand*{\ifcsdef}[1]{% + \ifcsname#1\endcsname + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newcommand*{\ifcsundef}[1]{% + \ifcsname#1\endcsname + \expandafter\ifx\csname#1\endcsname\relax + \expandafter\expandafter + \expandafter\@firstoftwo + \else + \expandafter\expandafter + \expandafter\@secondoftwo + \fi + \else + \expandafter\@firstoftwo + \fi} + +% {}{} + +\newcommand{\ifdefmacro}{} +\long\edef\ifdefmacro#1{% + \noexpand\expandafter\noexpand\etb@ifdefmacro + \noexpand\meaning#1\detokenize{macro}:&} +\edef\etb@ifdefmacro{% + \def\noexpand\etb@ifdefmacro##1\detokenize{macro}:##2&} +\etb@ifdefmacro{\notblank{#2}} + +% {}{}{} + +\newcommand*{\ifcsmacro}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefmacro\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefprefix}[1]{% + \ifdefmacro{#1} + {\etb@ifdefprefix{#1}} + {\@secondoftwo}} +\long\edef\etb@ifdefprefix#1{% + \noexpand\expandafter\noexpand\etb@ifdefprefix@i + \noexpand\meaning#1\detokenize{macro}:&} +\edef\etb@ifdefprefix@i{% + \def\noexpand\etb@ifdefprefix@i##1\detokenize{macro}:##2&} +\etb@ifdefprefix@i{\notblank{#1}} + +% {}{}{} + +\newcommand*{\ifcsprefix}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefprefix\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefparam}{} +\long\edef\ifdefparam#1{% + \noexpand\expandafter\noexpand\etb@ifdefparam + \noexpand\meaning#1\detokenize{macro}:->&} +\edef\etb@ifdefparam{% + \def\noexpand\etb@ifdefparam##1\detokenize{macro}:##2->##3&} +\etb@ifdefparam{\notblank{#2}} + +% {}{}{} + +\newcommand*{\ifcsparam}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefparam\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefprotected}{} +\long\edef\ifdefprotected#1{% + \noexpand\expandafter\noexpand\etb@ifdefprotected + \noexpand\meaning#1\string\protected&} +\edef\etb@ifdefprotected{% + \def\noexpand\etb@ifdefprotected##1\string\protected##2&} +\etb@ifdefprotected{\notblank{#2}} + +% {}{}{} + +\newcommand*{\ifcsprotected}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefprotected\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newrobustcmd{\ifdefltxprotect}[1]{% + \begingroup + \edef\etb@resrvda{% + \noexpand\protect\expandafter\noexpand + \csname\expandafter\@gobble\string#1 \endcsname}% + \expandafter\endgroup\ifx#1\etb@resrvda + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newrobustcmd*{\ifcsltxprotect}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefltxprotect\csname#1\endcsname} + {\@secondoftwo}} + +% {}{}{} + +\newcommand{\ifdefempty}[1]{% + \ifundef{#1} + {\@secondoftwo} + {\ifdefmacro{#1} + {\ifdefparam{#1} + {\@secondoftwo} + {\etb@ifdefempty{#1}}} + {\@secondoftwo}}} + +\def\etb@ifdefempty#1{% + \expandafter\expandafter + \expandafter\ifblank + \expandafter\expandafter + \expandafter{% + \expandafter\strip@prefix\meaning#1}} + +% {}{}{} + +\newcommand*{\ifcsempty}[1]{% + \ifcsundef{#1} + {\@secondoftwo} + {\expandafter\ifdefparam\csname#1\endcsname + {\@secondoftwo} + {\expandafter\etb@ifdefempty\csname#1\endcsname}}} + +% {}{}{} + +\newcommand{\ifdefvoid}[1]{% + \ifundef{#1} + {\@firstoftwo} + {\ifdefmacro{#1} + {\ifdefparam{#1} + {\@secondoftwo} + {\etb@ifdefempty{#1}}} + {\@secondoftwo}}} + +% {}{}{} + +\newcommand*{\ifcsvoid}[1]{% + \ifcsundef{#1} + {\@firstoftwo} + {\expandafter\ifdefparam\csname#1\endcsname + {\@secondoftwo} + {\expandafter\etb@ifdefempty\csname#1\endcsname}}} + +% {}{}{}{} + +\newcommand{\ifdefequal}[2]{% + \ifundef{#1} + {\@secondoftwo} + {\ifundef{#2} + {\@secondoftwo} + {\ifx#1#2% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi}}} + +% {}{}{}{} + +\newcommand*{\ifcsequal}[2]{% + \ifcsundef{#1} + {\@secondoftwo} + {\ifcsundef{#2} + {\@secondoftwo} + {\expandafter\ifx + \csname#1\expandafter\endcsname + \csname#2\endcsname + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi}}} + +% {}{}{}{} + +\newrobustcmd{\ifdefstrequal}[2]{% + \ifdefmacro{#1} + {\ifdefmacro{#2} + {\begingroup + \edef\etb@tempa{\expandafter\strip@prefix\meaning#1}% + \edef\etb@tempb{\expandafter\strip@prefix\meaning#2}% + \ifx\etb@tempa\etb@tempb + \aftergroup\@firstoftwo + \else + \aftergroup\@secondoftwo + \fi + \endgroup} + {\@secondoftwo}} + {\@secondoftwo}} + +% {}{}{}{} + +\newcommand*{\ifcsstrequal}[2]{% + \ifcsundef{#1} + {\@secondoftwo} + {\ifcsundef{#2} + {\@secondoftwo} + {\expandafter\ifdefstrequal + \csname#1\expandafter\endcsname + \csname#2\endcsname}}} + +% {}{}{}{} + +\newrobustcmd{\ifdefstring}[2]{% + \ifdefmacro{#1} + {\begingroup + \edef\etb@tempa{\expandafter\strip@prefix\meaning#1}% + \edef\etb@tempb{\detokenize{#2}}% + \ifx\etb@tempa\etb@tempb + \aftergroup\@firstoftwo + \else + \aftergroup\@secondoftwo + \fi + \endgroup} + {\@secondoftwo}} + +% {}{}{}{} + +\newrobustcmd{\ifcsstring}[2]{% + \ifcsundef{#1} + {\@secondoftwo} + {\expandafter\ifdefstring\csname#1\endcsname{#2}}} + +% {}{} + +\newcommand{\ifdefcounter}[1]{\etb@ifcounter#1&} +\long\def\etb@ifcounter#1#2&{% + \ifx\count#1% + \expandafter\@secondoftwo + \else + \expandafter\etb@ifcounter@i\meaning#1:% + \fi} +\edef\etb@ifcounter@i#1:#2\fi{\noexpand\fi + \noexpand\etb@ifcounter@ii#1\string\count&} +\edef\etb@ifcounter@ii{% + \def\noexpand\etb@ifcounter@ii##1\string\count##2&} +\etb@ifcounter@ii{\ifblank{#1}} + +% {}{}{} + +\newcommand*{\ifcscounter}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefcounter\csname#1\endcsname} + {\@secondoftwo}} + +% {}{}{} + +\newcommand*{\ifltxcounter}[1]{% + \ifcsdef{c@#1} + {\expandafter\ifdefcounter\csname c@#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdeflength}[1]{\etb@iflength#1&} +\long\def\etb@iflength#1#2&{% + \ifx\skip#1% + \expandafter\@secondoftwo + \else + \expandafter\etb@iflength@i\meaning#1:% + \fi} +\edef\etb@iflength@i#1:#2\fi{\noexpand\fi + \noexpand\etb@iflength@ii#1\string\skip&} +\edef\etb@iflength@ii{% + \def\noexpand\etb@iflength@ii##1\string\skip##2&} +\etb@iflength@ii{\ifblank{#1}} + +% {}{}{} + +\newcommand*{\ifcslength}[1]{% + \ifcsdef{#1} + {\expandafter\ifdeflength\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefdimen}[1]{\etb@ifdimen#1&} +\long\def\etb@ifdimen#1#2&{% + \ifx\dimen#1% + \expandafter\@secondoftwo + \else + \expandafter\etb@ifdimen@i\meaning#1:% + \fi} +\edef\etb@ifdimen@i#1:#2\fi{\noexpand\fi + \noexpand\etb@ifdimen@ii#1\string\dimen&} +\edef\etb@ifdimen@ii{% + \def\noexpand\etb@ifdimen@ii##1\string\dimen##2&} +\etb@ifdimen@ii{\ifblank{#1}} + +% {}{}{} + +\newcommand*{\ifcsdimen}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefdimen\csname#1\endcsname} + {\@secondoftwo}} + +% {}{}{}{} + +\newrobustcmd{\ifstrequal}[2]{% + \begingroup + \edef\etb@tempa{\detokenize{#1}}% + \edef\etb@tempb{\detokenize{#2}}% + \ifx\etb@tempa\etb@tempb + \aftergroup\@firstoftwo + \else + \aftergroup\@secondoftwo + \fi + \endgroup} + +% {}{}{} + +\newcommand{\ifstrempty}[1]{% + \expandafter\ifx\expandafter&\detokenize{#1}&% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newcommand{\ifblank}[1]{% from url.sty + \etb@ifblank@i#1&&\@secondoftwo\@firstoftwo:} +\long\def\etb@ifblank@i#1#2#4#5:{#4} + +\newcommand{\notblank}[1]{% + \etb@ifblank@i#1&&\@firstoftwo\@secondoftwo:} + +% {}{}{}{}{} + +\newcommand*{\ifnumcomp}[3]{% + \ifnum\numexpr#1\relax#2\numexpr#3\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{}{} + +\newcommand*{\ifnumequal}[1]{% + \ifnumcomp{#1}=} + +\newcommand*{\ifnumgreater}[1]{% + \ifnumcomp{#1}>} + +\newcommand*{\ifnumless}[1]{% + \ifnumcomp{#1}<} + +% {}{}{} + +\newcommand*{\ifnumodd}[1]{% + \ifodd\numexpr#1\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{}{}{} + +\newcommand*{\ifdimcomp}[3]{% + \ifdim\dimexpr#1\relax#2\dimexpr#3\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{}{} + +\newcommand*{\ifdimequal}[1]{% + \ifdimcomp{#1}=} + +\newcommand*{\ifdimgreater}[1]{% + \ifdimcomp{#1}>} + +\newcommand*{\ifdimless}[1]{% + \ifdimcomp{#1}<} + +% {}{}{} + +\newcommand{\ifboolexpe}[1]{% + \etb@be@beg\etb@be@bgroup#1(&\etb@be@end} + +\let\etb@be@true\@empty +\def\etb@be@false{-\@ne} + +\def\etb@be@beg{% + \ifnum\numexpr\z@\ifnum\numexpr\z@} + +\def\etb@be@end{% + <\z@ + \expandafter\etb@be@false + \fi + <\z@ + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi} + +\long\def\etb@be@bgroup#1(#2&{% + \etb@be@egroup#1)&% + \ifblank{#2} + {} + {\etb@be@beg + \etb@be@bgroup#2&}} + +\long\def\etb@be@egroup#1)#2&{% + \etb@be@and#1and&% + \ifblank{#2} + {} + {\etb@be@end\etb@be@true\etb@be@false + \etb@be@egroup#2&}} + +\long\def\etb@be@and#1and#2&{% + \etb@be@or#1or&% + \ifblank{#2} + {} + {<\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {=\z@\fi\ifnum\numexpr\m@ne}% + \ifnum\numexpr\z@ + \etb@be@and#2&}} + +\long\def\etb@be@or#1or#2&{% + \etb@be@not#1not&% + \ifblank{#2} + {} + {<\z@ + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi + {=\z@\fi\ifnum\numexpr\z@ + \ifnum\numexpr\@ne} + {=\z@\fi\ifnum\numexpr\z@ + \ifnum\numexpr\z@}% + \etb@be@or#2&}} + +\long\def\etb@be@not#1not#2&{% + \etb@be@togl#1togl&% + \ifblank{#2} + {} + {>\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {\unless\ifnum\numexpr\m@ne} + {\unless\ifnum\numexpr\z@}% + \etb@be@not#2&}} + +\long\def\etb@be@togl#1togl#2&{% + \etb@be@bool#1bool&% + \ifblank{#2} + {} + {\etb@be@togl@i#2&}} + +\long\def\etb@be@togl@i#1#2&{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname\etb@be@true\etb@be@false} + {\etb@be@err{Toggle '#1' undefined}{}}% + \etb@be@togl#2&} + +\long\def\etb@be@bool#1bool#2&{% + \etb@be@test#1test&% + \ifblank{#2} + {} + {\etb@be@bool@i#2&}} + +\long\def\etb@be@bool@i#1#2&{% + \ifcsundef{if#1} + {\etb@be@err{Boolean '#1' undefined}{}} + {\csname if#1\endcsname + \else + \etb@be@false + \fi}% + \etb@be@bool#2&} + +\long\def\etb@be@test#1test#2&{% + \ifblank{#1} + {} + {\etb@be@err{The invalid part is: '\detokenize{#1}'}{}}% + \ifblank{#2} + {} + {\etb@be@test@i#2&}} + +\long\def\etb@be@test@i#1#2&{% + #1\etb@be@true\etb@be@false + \etb@be@test#2&} + +\long\def\etb@be@err#1#2{% + \expandafter\ifnum\the\numexpr + \expandafter\ifnum\the\currentiftype=-3 + \expandafter\thr@@ + \else + \expandafter\currentiftype + \fi + =\thr@@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {=\z@\fi + \etb@be@err{#1}{#2\ifnum\numexpr\m@ne}} + {\etb@err@expr{#1}#2}} + +% {}{}{} + +\newrobustcmd{\ifboolexpr}[1]{\etb@boolexpr{#1}} + +\long\def\etb@boolexpr#1{% + \begingroup + \let\etb@br@neg\@firstoftwo + \etb@tempcnta\z@ + \etb@br@beg + \etb@br@bgroup#1(&% + \etb@br@end + \etb@br@eval} + +\def\etb@br@beg{% + \begingroup + \let\etb@br@neg\@firstoftwo + \etb@tempcnta\z@} + +\def\etb@br@end{% + \etb@br@eval\etb@br@true\etb@br@false} + +\def\etb@br@eval{% + \ifnum\etb@tempcnta<\z@ + \aftergroup\@secondoftwo + \else + \aftergroup\@firstoftwo + \fi + \endgroup} + +\def\etb@br@true{% + \advance\etb@tempcnta\etb@br@neg\z@\m@ne + \let\etb@br@neg\@firstoftwo} + +\def\etb@br@false{% + \advance\etb@tempcnta\etb@br@neg\m@ne\z@ + \let\etb@br@neg\@firstoftwo} + +\long\def\etb@br@bgroup#1(#2&{% + \etb@br@egroup#1)&% + \ifblank{#2} + {} + {\etb@br@beg + \etb@br@bgroup#2&}} + +\long\def\etb@br@egroup#1)#2&{% + \etb@br@and#1and&% + \ifblank{#2} + {} + {\etb@br@end + \etb@br@egroup#2&}} + +\long\def\etb@br@and#1and#2&{% + \etb@br@or#1or&% + \ifblank{#2} + {} + {\ifnum\etb@tempcnta<\z@ + \etb@tempcnta\m@ne + \else + \etb@tempcnta\z@ + \fi + \etb@br@and#2&}} + +\long\def\etb@br@or#1or#2&{% + \etb@br@not#1not&% + \ifblank{#2} + {} + {\ifnum\etb@tempcnta<\z@ + \etb@tempcnta\z@ + \else + \etb@tempcnta\@ne + \fi + \etb@br@or#2&}} + +\long\def\etb@br@not#1not#2&{% + \etb@br@togl#1togl&% + \ifblank{#2} + {} + {\let\etb@br@neg\@secondoftwo + \etb@br@not#2&}} + +\long\def\etb@br@togl#1togl#2&{% + \etb@br@bool#1bool&% + \ifblank{#2} + {} + {\etb@br@togl@i#2&}} + +\long\def\etb@br@togl@i#1#2&{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname\etb@br@true\etb@br@false} + {\etb@err@expr{Toggle '#1' undefined}\etb@br@false}% + \etb@br@togl#2&} + +\long\def\etb@br@bool#1bool#2&{% + \etb@br@test#1test&% + \ifblank{#2} + {} + {\etb@br@bool@i#2&}} + +\long\def\etb@br@bool@i#1#2&{% + \ifcsundef{if#1} + {\etb@err@expr{Boolean '#1' undefined}\etb@br@false} + {\csname if#1\endcsname + \etb@br@true + \else + \etb@br@false + \fi}% + \etb@br@bool#2&} + +\long\def\etb@br@test#1test#2&{% + \ifblank{#1} + {} + {\etb@err@expr{The invalid part is: '\detokenize{#1}'}}% + \ifblank{#2} + {} + {\etb@br@test@i#2&}} + +\long\def\etb@br@test@i#1#2&{% + \ignorespaces#1\etb@br@true\etb@br@false + \etb@br@test#2&} + +\long\def\etb@err@expr#1{% + \etb@error + {Invalid boolean expression} + {#1.}} + +% {}{} + +\newrobustcmd{\whileboolexpr}[2]{% + \etb@boolexpr{#1}{#2\whileboolexpr{#1}{#2}}{}} + +% {}{} + +\newrobustcmd{\unlessboolexpr}[2]{% + \etb@boolexpr{#1}{}{#2\unlessboolexpr{#1}{#2}}} + +% {} + +\newcommand{\expandonce}[1]{% + \unexpanded\expandafter{#1}} + +% {} + +\newcommand*{\csexpandonce}[1]{% + \expandafter\expandonce\csname#1\endcsname} + +% {} + +\newcommand*{\protecting}{} +\def\protecting#{% + \ifx\protect\@typeset@protect + \etb@protecting\@firstofone + \fi + \ifx\protect\@unexpandable@protect + \etb@protecting\etb@unexpandable + \fi + \ifx\protect\noexpand + \etb@protecting\unexpanded + \fi + \ifx\protect\string + \etb@protecting\detokenize + \fi + \relax\@firstofone} + +\def\etb@protecting#1#2\relax\@firstofone{\fi#1} +\long\def\etb@unexpandable#1{\unexpanded{\protecting{#1}}} + +% {} + +\newrobustcmd*{\csdef}[1]{\expandafter\def\csname#1\endcsname} +\newrobustcmd*{\csedef}[1]{\expandafter\edef\csname#1\endcsname} +\newrobustcmd*{\csgdef}[1]{\expandafter\gdef\csname#1\endcsname} +\newrobustcmd*{\csxdef}[1]{\expandafter\xdef\csname#1\endcsname} +\newrobustcmd*{\protected@csedef}{\etb@protected\csedef} +\newrobustcmd*{\protected@csxdef}{\etb@protected\csxdef} + +\def\etb@protected{% + \let\@@protect\protect + \let\protect\@unexpandable@protect + \afterassignment\restore@protect} + +% {}{} + +\newrobustcmd{\cslet}[2]{% + \expandafter\let\csname#1\endcsname#2} + +% {}{} + +\newrobustcmd{\letcs}[2]{% + \ifcsdef{#2} + {\expandafter\let\expandafter#1\csname#2\endcsname} + {\undef#1}} + +% {}{} + +\newrobustcmd*{\csletcs}[2]{% + \ifcsdef{#2} + {\expandafter\let + \csname#1\expandafter\endcsname + \csname#2\endcsname} + {\csundef{#1}}} + +% {} + +\newcommand*{\csuse}[1]{% + \ifcsname#1\endcsname + \csname#1\expandafter\endcsname + \fi} + +% {} + +\newrobustcmd{\undef}[1]{\let#1\etb@undefined} + +% {} + +\newrobustcmd*{\csundef}[1]{\cslet{#1}\etb@undefined} + +% {}{} + +\newrobustcmd{\appto}[2]{% + \ifundef{#1} + {\edef#1{\unexpanded{#2}}} + {\edef#1{\expandonce#1\unexpanded{#2}}}} +\newrobustcmd{\eappto}[2]{% + \ifundef{#1} + {\edef#1{#2}} + {\edef#1{\expandonce#1#2}}} +\newrobustcmd{\gappto}[2]{% + \ifundef{#1} + {\xdef#1{\unexpanded{#2}}} + {\xdef#1{\expandonce#1\unexpanded{#2}}}} +\newrobustcmd{\xappto}[2]{% + \ifundef{#1} + {\xdef#1{#2}} + {\xdef#1{\expandonce#1#2}}} + +\newrobustcmd*{\protected@eappto}{\etb@protected\eappto} +\newrobustcmd*{\protected@xappto}{\etb@protected\xappto} + +% {}{} + +\newrobustcmd{\preto}[2]{% + \ifundef{#1} + {\edef#1{\unexpanded{#2}}} + {\edef#1{\unexpanded{#2}\expandonce#1}}} +\newrobustcmd{\epreto}[2]{% + \ifundef{#1} + {\edef#1{#2}} + {\edef#1{#2\expandonce#1}}} +\newrobustcmd{\gpreto}[2]{% + \ifundef{#1} + {\xdef#1{\unexpanded{#2}}} + {\xdef#1{\unexpanded{#2}\expandonce#1}}} +\newrobustcmd{\xpreto}[2]{% + \ifundef{#1} + {\xdef#1{#2}} + {\xdef#1{#2\expandonce#1}}} + +\newrobustcmd*{\protected@epreto}{\etb@protected\epreto} +\newrobustcmd*{\protected@xpreto}{\etb@protected\xpreto} + +% {}{} + +\newrobustcmd*{\csappto}[1]{\expandafter\appto\csname#1\endcsname} +\newrobustcmd*{\cseappto}[1]{\expandafter\eappto\csname#1\endcsname} +\newrobustcmd*{\csgappto}[1]{\expandafter\gappto\csname#1\endcsname} +\newrobustcmd*{\csxappto}[1]{\expandafter\xappto\csname#1\endcsname} +\newrobustcmd*{\protected@cseappto}{\etb@protected\cseappto} +\newrobustcmd*{\protected@csxappto}{\etb@protected\csxappto} + +% {}{} + +\newrobustcmd*{\cspreto}[1]{\expandafter\preto\csname#1\endcsname} +\newrobustcmd*{\csepreto}[1]{\expandafter\epreto\csname#1\endcsname} +\newrobustcmd*{\csgpreto}[1]{\expandafter\gpreto\csname#1\endcsname} +\newrobustcmd*{\csxpreto}[1]{\expandafter\xpreto\csname#1\endcsname} +\newrobustcmd*{\protected@csepreto}{\etb@protected\csepreto} +\newrobustcmd*{\protected@csxpreto}{\etb@protected\csxpreto} + +% {}{} + +\newrobustcmd*{\numdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \edef#1{\the\numexpr#2}} +\newrobustcmd*{\numgdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \xdef#1{\the\numexpr#2}} + +% {}{} + +\newrobustcmd*{\csnumdef}[1]{% + \expandafter\numdef\csname#1\endcsname} +\newrobustcmd*{\csnumgdef}[1]{% + \expandafter\numgdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\dimdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \edef#1{\the\dimexpr#2}} +\newrobustcmd*{\dimgdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \xdef#1{\the\dimexpr#2}} + +% {}{} + +\newrobustcmd*{\csdimdef}[1]{% + \expandafter\dimdef\csname#1\endcsname} +\newrobustcmd*{\csdimgdef}[1]{% + \expandafter\dimgdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\gluedef}[2]{% + \ifundef#1{\let#1\z@skip}{}% + \edef#1{\the\glueexpr#2}} +\newrobustcmd*{\gluegdef}[2]{% + \ifundef#1{\let#1\z@skip}{}% + \xdef#1{\the\glueexpr#2}} + +% {}{} + +\newrobustcmd*{\csgluedef}[1]{% + \expandafter\gluedef\csname#1\endcsname} +\newrobustcmd*{\csgluegdef}[1]{% + \expandafter\gluegdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\mudef}[2]{% + \ifundef#1{\def#1{0mu}}{}% + \edef#1{\the\muexpr#2}} +\newrobustcmd*{\mugdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \xdef#1{\the\muexpr#2}} + +% {}{} + +\newrobustcmd*{\csmudef}[1]{% + \expandafter\mudef\csname#1\endcsname} +\newrobustcmd*{\csmugdef}[1]{% + \expandafter\mugdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\defcounter}[2]{% + \ifcsundef{c@#1} + {\etb@noglobal\@nocounterr{#1}}% + {\csname c@#1\endcsname\numexpr#2\relax}} + +% {}{} + +\newrobustcmd*{\deflength}[2]{% + \ifundef{#1} + {\etb@noglobal\etb@err@nolen{#1}}% + {#1\glueexpr#2\relax}} + +\protected\def\etb@err@nolen#1{% + \etb@error{Length '\string#1' undefined}\@eha} + +% {} + +\newrobustcmd*{\newbool}[1]{% + \expandafter\@ifdefinable\csname if#1\endcsname{% + \expandafter\newif\csname if#1\endcsname}} + +% {} + +\newrobustcmd*{\providebool}[1]{% + \ifcsundef{if#1} + {\expandafter\newif\csname if#1\endcsname} + {\begingroup + \edef\@tempa{\expandafter\meaning\csname if#1\endcsname}% + \ifx\@tempa\etb@isfalse + \else + \ifx\@tempa\etb@istrue + \else + \etb@error{\@backslashchar if#1 not a boolean}\@eha + \fi + \fi + \endgroup}} + +% {}{|} + +\newrobustcmd*{\setbool}[2]{% + \ifcsundef{if#1} + {\etb@noglobal\etb@err@nobool{#1}} + {\ifcsundef{#1#2} + {\etb@noglobal\etb@err@boolval{#2}} + {\csname#1#2\endcsname}}} + +% {} + +\newrobustcmd*{\booltrue}[1]{% + \ifcsundef{if#1} + {\etb@noglobal\etb@err@nobool{#1}} + {\csname#1true\endcsname}} + +% {} + +\newrobustcmd*{\boolfalse}[1]{% + \ifcsundef{if#1} + {\etb@noglobal\etb@err@nobool{#1}} + {\csname#1false\endcsname}} + +\edef\etb@istrue{\meaning\iftrue} +\edef\etb@isfalse{\meaning\iffalse} +\protected\def\etb@noglobal{\let\relax\relax} + +% {}{} + +\newcommand*{\ifbool}[1]{% + \ifcsundef{if#1} + {\etb@err@nobool{#1}\@gobbletwo} + {\csname if#1\endcsname + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi}} + +% {}{} + +\newcommand*{\notbool}[1]{% + \ifcsundef{if#1} + {\etb@err@nobool{#1}\@gobbletwo} + {\csname if#1\endcsname + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi}} + +\protected\def\etb@err@nobool#1{% + \etb@error{Boolean '\@backslashchar if#1' undefined}\@eha} + +\def\etb@err@boolval#1{% + \etb@error + {Invalid boolean value '#1'} + {Valid boolean values are 'true' and 'false'.}} + +% {} + +\newrobustcmd*{\newtoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {\etb@error{Toggle '#1' already defined}\@eha} + {\cslet{etb@tgl@#1}\@secondoftwo}} + +% {} + +\newrobustcmd*{\providetoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {} + {\cslet{etb@tgl@#1}\@secondoftwo}} + +% {}{|} + +\newrobustcmd*{\settoggle}[2]{% + \ifcsdef{etb@tgl@#1} + {\ifcsdef{etb@toggle#2} + {\csletcs{etb@tgl@#1}{etb@toggle#2}} + {\etb@noglobal\etb@err@boolval{#2}}} + {\etb@noglobal\etb@err@notoggle{#1}}} + +% {} + +\newrobustcmd*{\toggletrue}[1]{% + \ifcsdef{etb@tgl@#1} + {\cslet{etb@tgl@#1}\etb@toggletrue} + {\etb@noglobal\etb@err@notoggle{#1}}} + +% {} + +\newrobustcmd*{\togglefalse}[1]{% + \ifcsdef{etb@tgl@#1} + {\cslet{etb@tgl@#1}\etb@togglefalse} + {\etb@noglobal\etb@err@notoggle{#1}}} + +\let\etb@toggletrue\@firstoftwo +\let\etb@togglefalse\@secondoftwo + +% {}{} + +\newcommand*{\iftoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname} + {\etb@err@notoggle{#1}\@gobbletwo}} + +% {}{} + +\newcommand*{\nottoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname\@secondoftwo\@firstoftwo} + {\etb@err@notoggle{#1}\@gobbletwo}} + +\protected\def\etb@err@notoggle#1{% + \etb@error{Toggle '#1' undefined}\@eha} + +% {}{} + +\protected\def\etb@ifscanable#1{% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{macro}:####2->####3&{% + ####1\def\string\etb@resrvda####2{####3}}% + \edef\noexpand\etb@resrvda{\noexpand\etb@resrvda\meaning#1&}}% + \etb@resrvda + \makeatletter + \scantokens\expandafter{\etb@resrvda}% + \expandafter\endgroup\ifx#1\etb@resrvda + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\protected\long\def\etb@ifpattern#1#2{% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{#2}####2&{% + \endgroup\noexpand\noexpand\noexpand\ifblank{####2}}% + \edef\noexpand\etb@resrvda{\noexpand\etb@resrvda + \expandafter\strip@prefix\meaning#1\detokenize{#2}&}% + \noexpand\etb@resrvda} + \etb@resrvda\@secondoftwo\@firstoftwo} + +% {}{} + +\protected\long\def\etb@ifhashcheck#1{% + \begingroup + \edef\etb@resrvda{\detokenize{#1}}% + \expandafter\endgroup + \expandafter\etb@ifhashcheck@i\meaning\etb@resrvda&} + +\edef\etb@ifhashcheck@i#1&{% + \noexpand\expandafter + \noexpand\etb@ifhashcheck@ii + \noexpand\strip@prefix#1\string#\string#&} + +\edef\etb@ifhashcheck@ii{% + \def\noexpand\etb@ifhashcheck@ii##1\string#\string###2&} +\etb@ifhashcheck@ii{\ifblank{#2}} + +% {} + +\newrobustcmd*{\robustify}[1]{% + \ifundef{#1} + {\etb@error{\string#1 undefined}\@eha} + {\ifdefmacro{#1} + {\ifdefltxprotect{#1} + {\letcs\etb@resrvda{\expandafter\@gobble\string#1 }% + \@tempswatrue} + {\let\etb@resrvda#1% + \@tempswafalse}% + \ifdefparam\etb@resrvda + {\etb@ifscanable\etb@resrvda + {\etb@robustify\etb@resrvda + \let#1\etb@resrvda} + {\etb@error{Failed to robustify \string#1} + {The command is special and cannot be + handled by \string\robustify.}% + \@tempswafalse}} + {\protected\edef#1{\expandonce\etb@resrvda}} + \if@tempswa + \ifcsdef{\string#1 } + {} + {\csundef{\expandafter\@gobble\string#1 }}% + \fi + \undef\etb@resrvda} + {\etb@error{\string#1 not a macro}\@eha}}} + +\def\etb@robustify#1{% + \begingroup + \edef\etb@resrvdb{% + \def\noexpand\etb@resrvdb####1\detokenize{macro}:####2->####3&{% + \protected####1\def\string#1\space####2{####3}}% + \edef\noexpand\etb@resrvdb{% + \noexpand\etb@resrvdb\meaning#1&}}% + \etb@resrvdb + \etb@patchcmd@scantoks\etb@resrvdb} + +% {}{}{} +% *{}{} + +\newrobustcmd{\ifpatchable}{% + \etb@dbg@trce\ifpatchable + \begingroup + \@makeother\#% + \@ifstar\etb@ifpatchable@i\etb@ifpatchable} + +\long\def\etb@ifpatchable#1#2{% + \endgroup + \etb@dbg@init#1% + \ifundef{#1} + {\etb@dbg@fail{def}\@secondoftwo} + {\etb@dbg@info{def}% + \ifdefmacro{#1} + {\etb@dbg@info{mac}% + \etb@ifscanable{#1} + {\etb@ifhashcheck{#2} + {\etb@dbg@info{tok}% + \etb@ifpattern#1{#2} + {\etb@dbg@info{pat}% + \etb@dbg@info{pos}\@firstoftwo} + {\etb@dbg@fail{pat}\@secondoftwo}} + {\etb@dbg@fail{hsh}\@secondoftwo}} + {\etb@dbg@fail{tok}\@secondoftwo}} + {\etb@dbg@fail{mac}\@secondoftwo}}} + +\long\def\etb@ifpatchable@i#1{% + \endgroup + \etb@dbg@init#1% + \ifundef{#1} + {\etb@dbg@fail{def}\@secondoftwo} + {\etb@dbg@info{def}% + \ifdefmacro{#1} + {\etb@dbg@info{mac}% + \ifdefparam{#1} + {\etb@dbg@info{prm}% + \etb@ifscanable{#1} + {\etb@dbg@info{tok}% + \etb@dbg@info{pos}\@firstoftwo} + {\etb@dbg@fail{tok}\@secondoftwo}} + {\etb@dbg@info{prl}% + \ifdefprotected{#1} + {\etb@dbg@info{pro}} + {}% + \etb@dbg@info{pos}\@firstoftwo}} + {\etb@dbg@fail{mac}\@secondoftwo}}} + +% []{}{}{}{}{} + +\newrobustcmd*{\patchcmd}{% + \etb@dbg@trce\patchcmd + \begingroup + \@makeother\#% + \etb@patchcmd} + +\newcommand{\etb@patchcmd}[4][########1]{% + \etb@ifpatchable#2{#3} + {\etb@dbg@succ{ret}% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{macro:}####2->####3&{% + #1\def\string\etb@resrvda\space####2{\noexpand\etb@resrvdb####3&}}% + \def\noexpand\etb@resrvdb####1\detokenize{#3}####2&{% + ####1\detokenize{#4}####2}% + \edef\noexpand\etb@resrvda{% + \noexpand\etb@resrvda\meaning#2&}}% + \etb@resrvda + \etb@patchcmd@scantoks\etb@resrvda + \let#2\etb@resrvda + \undef\etb@resrvda + \@firstoftwo} + {\@secondoftwo}} + +\def\etb@patchcmd@scantoks#1{% + \edef\etb@resrvda{\endgroup + \unexpanded{\makeatletter\scantokens}{#1}% + \catcode\number`\@=\the\catcode`\@\relax}% + \etb@resrvda} + +% {}{}{}{} + +\newrobustcmd*{\apptocmd}{% + \etb@dbg@trce\apptocmd + \begingroup + \@makeother\#% + \etb@hooktocmd\etb@append} + +\newrobustcmd*{\pretocmd}{% + \etb@dbg@trce\pretocmd + \begingroup + \@makeother\#% + \etb@hooktocmd\etb@prepend} + +\long\def\etb@hooktocmd#1#2#3{% + \endgroup + \etb@dbg@init#2% + \ifundef{#2} + {\etb@dbg@fail{def}\@secondoftwo} + {\etb@dbg@info{def}% + \ifdefmacro{#2} + {\etb@dbg@info{mac}% + \ifdefparam{#2} + {\etb@dbg@info{prm}% + \etb@ifscanable{#2} + {\etb@ifhashcheck{#3} + {\etb@dbg@info{tok}% + \etb@dbg@succ{ret}% + \etb@hooktocmd@i#1#2{#3}% + \@firstoftwo} + {\etb@dbg@fail{hsh}\@secondoftwo}} + {\etb@dbg@fail{tok}\@secondoftwo}} + {\etb@dbg@info{prl}% + \ifdefprotected{#2} + {\etb@dbg@info{pro}% + \etb@dbg@succ{red}% + \protected} + {\etb@dbg@succ{red}}% + \edef#2{#1{\expandonce#2}{\unexpanded{#3}}}% + \@firstoftwo}} + {\etb@dbg@fail{mac}\@secondoftwo}}} + +\long\def\etb@hooktocmd@i#1#2#3{% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{macro}:####2->####3&{% + ####1\def\string\etb@resrvda\space####2{#1{####3}{\detokenize{#3}}}}% + \edef\noexpand\etb@resrvda{% + \noexpand\etb@resrvda\meaning#2&}}% + \etb@resrvda + \etb@patchcmd@scantoks\etb@resrvda + \let#2\etb@resrvda + \undef\etb@resrvda} + +\long\def\etb@append#1#2{#1#2} +\long\def\etb@prepend#1#2{#2#1} + +\newrobustcmd*{\tracingpatches}{% + \etb@info{Enabling tracing}% + \input{etoolbox.def}% + \global\let\tracingpatches\relax} +\@onlypreamble\tracingpatches + +\let\etb@dbg@trce\@gobble +\let\etb@dbg@init\@gobble +\let\etb@dbg@info\@gobble +\let\etb@dbg@succ\@gobble +\let\etb@dbg@fail\@gobble + +% {} + +\newcommand{\rmntonum}[1]{% + \ifblank{#1} + {} + {\expandafter\etb@rti@end\number\numexpr + \expandafter\etb@rti@prs\detokenize{#1}&\relax}} + +\def\etb@rti@prs#1#2{% + \ifx% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {#1#2} + {\ifx% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {\etb@rti@chk#1+\etb@rti@num#1#2} + {\etb@rti@chk#1\etb@rti@chk#2% + \ifnum\etb@rti@num#1<\etb@rti@num#2 % + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {+\etb@rti@num#2-\etb@rti@num#1\etb@rti@prs} + {+\etb@rti@num#1\etb@rti@prs#2}}}} + +\def\etb@rti@chk#1{% + \ifcsname etb@rmn@#1\endcsname + \else + \expandafter\etb@rti@brk + \fi} + +\def\etb@rti@brk#1&{+\z@&-1} +\def\etb@rti@end#1\relax{\ifblank{#2}{#1}{#2}} +\def\etb@rti@num#1{\csname etb@rmn@#1\endcsname} + +\chardef\etb@rmn@i=1 +\chardef\etb@rmn@I=1 +\chardef\etb@rmn@v=5 +\chardef\etb@rmn@V=5 +\chardef\etb@rmn@x=10 +\chardef\etb@rmn@X=10 +\chardef\etb@rmn@l=50 +\chardef\etb@rmn@L=50 +\chardef\etb@rmn@c=100 +\chardef\etb@rmn@C=100 +\mathchardef\etb@rmn@d=500 +\mathchardef\etb@rmn@D=500 +\mathchardef\etb@rmn@m=1000 +\mathchardef\etb@rmn@M=1000 + +% {}{}{} + +\newcommand{\ifrmnum}[1]{% + \ifblank{#1} + {\@secondoftwo} + {\expandafter\etb@ifr@prs\detokenize{#1}\relax}} + +\def\etb@ifr@prs#1{% + \ifx\relax#1% + \expandafter\@firstoftwo + \else + \ifcsname etb@rmn@#1\endcsname + \expandafter\expandafter + \expandafter\etb@ifr@prs + \else + \expandafter\expandafter + \expandafter\etb@ifr@brk + \fi + \fi} + +\def\etb@ifr@brk#1\relax{\@secondoftwo} + +% <*>{}{} + +\newrobustcmd*{\DeclareListParser}{% + \@ifstar + {\etb@defparser\etb@defparser@arg} + {\etb@defparser\etb@defparser@do}} + +\def\etb@defparser#1#2#3{% + \@ifdefinable#2{#1{#2}{#3}}} + +\def\etb@defparser@do#1#2{% + \begingroup + \edef\@tempa{\endgroup + \long\def\noexpand#1####1{% + \expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + \space####1\noexpand#2&}% + \long\csdef{etb@lst@\expandafter\@gobble\string#1}####1\noexpand#2####2&{% + \noexpand\etb@listitem\noexpand\do{####1}% + \noexpand\ifblank{####2} + {\noexpand\listbreak} + {\expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + \space####2}&}}% + \@tempa} + +\def\etb@defparser@arg#1#2{% + \begingroup + \edef\@tempa{\endgroup + \long\def\noexpand#1####1####2{% + \expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + {####1}\space####2\noexpand#2&}% + \long\csdef{etb@lst@\expandafter\@gobble\string#1}####1####2\noexpand#2####3&{% + \noexpand\etb@listitem{####1}{####2}% + \noexpand\ifblank{####3} + {\noexpand\listbreak} + {\expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + {####1}\space####3}&}}% + \@tempa} + +\long\def\etb@listitem#1#2{% + \ifblank{#2} + {} + {\expandafter\etb@listitem@i + \expandafter{\@firstofone#2}{#1}}} +\long\def\etb@listitem@i#1#2{#2{#1}} + +\newcommand*{\listbreak}{} +\long\def\listbreak#1&{} + +% {,,...} => \do{}\do{}... + +\DeclareListParser{\docsvlist}{,} + +% {}{,,...} => {}{}... + +\DeclareListParser*{\forcsvlist}{,} + +% {}{} + +\newrobustcmd{\listadd}[2]{% + \ifblank{#2}{}{\appto#1{#2|}}} +\newrobustcmd{\listeadd}[2]{% + \begingroup + \edef\etb@tempa{\endgroup\noexpand\ifblank{#2}}% + \etb@tempa{}{\eappto#1{#2|}}} +\newrobustcmd{\listgadd}[2]{% + \ifblank{#2}{}{\gappto#1{#2|}}} +\newrobustcmd{\listxadd}[2]{% + \begingroup + \edef\etb@tempa{\endgroup\noexpand\ifblank{#2}}% + \etb@tempa{}{\xappto#1{#2|}}} + +% {}{} + +\newrobustcmd{\listcsadd}[1]{% + \expandafter\listadd\csname#1\endcsname} +\newrobustcmd{\listcseadd}[1]{% + \expandafter\listeadd\csname#1\endcsname} +\newrobustcmd{\listcsgadd}[1]{% + \expandafter\listgadd\csname#1\endcsname} +\newrobustcmd{\listcsxadd}[1]{% + \expandafter\listxadd\csname#1\endcsname} + +% {}{}{}{} + +\newrobustcmd{\ifinlist}[2]{% + \begingroup + \def\etb@tempa##1|#1|##2&{\endgroup + \ifblank{##2}\@secondoftwo\@firstoftwo}% + \expandafter\etb@tempa\expandafter|#2|#1|&} + +\newrobustcmd{\xifinlist}[1]{% + \begingroup + \edef\etb@tempa{\endgroup\ifinlist{#1}}% + \etb@tempa} + +% {}{}{}{} + +\newrobustcmd{\ifinlistcs}[2]{% + \expandafter\etb@ifinlistcs@i\csname #2\endcsname{#1}} +\long\def\etb@ifinlistcs@i#1#2{\ifinlist{#2}{#1}} + +\newrobustcmd{\xifinlistcs}[1]{% + \begingroup + \edef\etb@tempa{\endgroup\ifinlistcs{#1}}% + \etb@tempa} + +% {}{} => {}{}... + +\newcommand*{\forlistloop}[2]{% + \expandafter\etb@forlistloop\expandafter{#2}{#1}} + +\long\def\etb@forlistloop#1#2{\etb@forlistloop@i{#2}#1|&} + +\long\def\etb@forlistloop@i#1#2|#3&{% + \ifblank{#2} + {} + {#1{#2}}% + \ifblank{#3} + {\listbreak} + {\etb@forlistloop@i{#1}#3}% + &} + +% {}{} => {}{}... + +\newcommand*{\forlistcsloop}[2]{% + \expandafter\expandafter\expandafter\etb@forlistloop + \expandafter\expandafter\expandafter{\csname#2\endcsname}{#1}} + +% {} => \do{}\do{}... + +\newcommand*{\dolistloop}{\forlistloop\do} + +% {} => \do{}\do{}... + +\newcommand*{\dolistcsloop}{\forlistcsloop\do} + +% {} + +\newrobustcmd*{\AtEndPreamble}{\gappto\@endpreamblehook} +\newcommand*{\@endpreamblehook}{} + +\preto\document{% + \endgroup + \let\AtEndPreamble\@firstofone + \@endpreamblehook + \protected\def\AtEndPreamble{\@notprerr\@gobble}% + \undef\@endpreamblehook + \begingroup} + +% {} + +\newrobustcmd*{\AfterPreamble}{\AtBeginDocument} +\AtEndPreamble{\let\AfterPreamble\@firstofone} + +% {} + +\newrobustcmd*{\AfterEndPreamble}{\gappto\@afterendpreamblehook} +\newcommand*{\@afterendpreamblehook}{} + +\appto\document{% + \let\AfterEndPreamble\@firstofone + \@afterendpreamblehook + \protected\def\AfterEndPreamble{\@notprerr\@gobble}% + \undef\@afterendpreamblehook + \ignorespaces} + +\AtEndDocument{\let\AfterEndPreamble\@gobble} + +% {} + +\newrobustcmd*{\AfterEndDocument}{\gappto\@afterenddocumenthook} +\newcommand*{\@afterenddocumenthook}{} + +\patchcmd\enddocument + {\deadcycles} + {\let\AfterEndDocument\@firstofone + \@afterenddocumenthook + \deadcycles} + {} + {\let\etb@@end\@@end + \def\@@end{% + \let\AfterEndDocument\@firstofone + \@afterenddocumenthook + \etb@@end}} + +% {}{} + +\newrobustcmd{\AtBeginEnvironment}[1]{% + \csgappto{@begin@#1@hook}} + +\patchcmd\begin + {\csname #1\endcsname} + {\csuse{@begin@#1@hook}% + \csname #1\endcsname} + {} + {\etb@warning{% + Patching '\string\begin' failed!\MessageBreak + '\string\AtBeginEnvironment' will not work\@gobble}} + +% {}{} + +\newrobustcmd{\AtEndEnvironment}[1]{% + \csgappto{@end@#1@hook}} + +\patchcmd\end + {\csname end#1\endcsname} + {\csuse{@end@#1@hook}% + \csname end#1\endcsname} + {} + {\etb@warning{% + Patching '\string\end' failed!\MessageBreak + '\string\AtEndEnvironment' will not work\@gobble}} + +% {}{} + +\newrobustcmd{\BeforeBeginEnvironment}[1]{% + \csgappto{@beforebegin@#1@hook}} + +\pretocmd\begin + {\csuse{@beforebegin@#1@hook}} + {} + {\etb@warning{% + Patching '\string\begin' failed!\MessageBreak + '\string\BeforeBeginEnvironment' will not work\@gobble}} + +% {}{} + +\newrobustcmd{\AfterEndEnvironment}[1]{% + \csgappto{@afterend@#1@hook}} + +\patchcmd\end + {\if@ignore} + {\csuse{@afterend@#1@hook}% + \if@ignore} + {} + {\etb@warning{% + Patching '\string\end' failed!\MessageBreak + '\string\AfterEndEnvironment' will not work\@gobble}} + +\endinput diff --git a/etoolbox/README b/etoolbox/README new file mode 100644 index 0000000..db96fdf --- /dev/null +++ b/etoolbox/README @@ -0,0 +1,84 @@ +$Id: README,v 2.1 2011/01/03 19:14:10 lehman stable $ + +ABOUT + +The etoolbox package is a toolbox of programming facilities geared +primarily towards LaTeX class and package authors. It provides LaTeX +frontends to some of the new primitives provided by e-TeX as well as +some generic tools which are not related to e-TeX but match the +profile of this package. The package is work in progress. Note that +previous versions of this package were released under the name +elatex. + +LICENSE + +Copyright (c) 2007-2010 Philipp Lehman. This package is author- +maintained. Permission is granted to copy, distribute and/or modify +this software under the terms of the LaTeX Project Public License +(LPPL), version 1.3. This software is provided 'as is', without +warranty of any kind, either expressed or implied, including, but +not limited to, the implied warranties of merchantability and +fitness for a particular purpose. + +REQUIREMENTS + +- e-TeX +- etex.sty + +AUTOMATIC INSTALLATION + +TeX Live: The etoolbox package is included in TeX Live. + Use the TeX Live package manager to install it. + +MiKTeX: The etoolbox package is included in MiKTeX. + Use the MiKTeX package manager to install it. + +SEMI-AUTOMATIC INSTALLATION + +1. Download the file + + http://www.ctan.org/tex-archive/install/macros/latex/contrib/etoolbox.tds.zip + +2. Unpack the archive in the root directory of the local TeX + installation tree, for example + + /usr/local/share/texmf/ + or + /usr/share/texmf-local/ + or + C:\Local TeX Files\ + +3. Update the file hash tables (also known as the file name + database). + + On teTeX and TeX Live systems, run texhash as root ('sudo + texhash'). On MiKTeX, run 'initexmf --update-fndb' in a command + window or use the 'Refresh FNDB' button of the MiKTeX Options + window. + +MANUAL INSTALLATION + +1. Copy the files 'etoolbox.sty' and 'etoolbox.def' to + + /tex/latex/etoolbox/ + + where denotes the root of the local TeX installation + tree, for example + + /usr/local/share/texmf/ + or + /usr/share/texmf-local/ + or + C:\Local TeX Files\ + +2. The file 'etoolbox.pdf' goes to + + /doc/latex/etoolbox/ + +3. Update the file hash tables (also known as the file name + database). + + On teTeX and TeX Live systems, run texhash as root ('sudo + texhash'). On MiKTeX, run 'initexmf --update-fndb' in a command + window or use the 'Refresh FNDB' button of the MiKTeX Options + window. diff --git a/etoolbox/etoolbox.def b/etoolbox/etoolbox.def new file mode 100644 index 0000000..0102a51 --- /dev/null +++ b/etoolbox/etoolbox.def @@ -0,0 +1,73 @@ +% $Id: etoolbox.def,v 2.1 2011/01/03 19:14:10 lehman stable $ + +\ProvidesFile{etoolbox.def} +[\csname etb@rcsid\endcsname $Id: etoolbox.def,v 2.1 2011/01/03 19:14:10 lehman stable $ + etoolbox debug messages] + +\begingroup +\makeatletter +\@makeother\+ +\@makeother\- +\@makeother\= +\@makeother\> + +\long\gdef\etb@dbg@trce#1{\typeout{% + [debug] tracing \string#1\on@line}}% +\long\gdef\etb@dbg@init#1{\typeout{% + [debug] analyzing '\detokenize\expandafter{\string#1}'}}% +\gdef\etb@dbg@info#1{\typeout{% + [debug] ++ \csuse{etb@msg@i@#1}}}% +\gdef\etb@dbg@succ#1{\typeout{% + [debug] == \csuse{etb@msg@s@#1}}}% +\gdef\etb@dbg@fail#1{\typeout{% + [debug] -- \csuse{etb@msg@f@#1}}}% + +\gdef\etb@msg@ex{^^J[debug] -> }% +\gdef\etb@msg@br{^^J[debug]\@spaces} + +\gdef\etb@msg@i@def{% + control sequence is defined} +\gdef\etb@msg@i@mac{% + control sequence is a macro} +\gdef\etb@msg@i@prm{% + control sequence is a macro with parameters} +\gdef\etb@msg@i@prl{% + control sequence is a macro without parameters} +\xdef\etb@msg@i@pro{% + control sequence is a \string\protected\space macro} +\gdef\etb@msg@i@tok{% + macro can be retokenized cleanly} +\gdef\etb@msg@i@pat{% + search pattern found in replacement text} +\gdef\etb@msg@i@pos{% + patching possible} +\gdef\etb@msg@s@red{% + redefining macro now} +\gdef\etb@msg@s@ret{% + retokenizing macro now} +\xdef\etb@msg@f@def{% + control sequence is undefined or \string\relax} +\gdef\etb@msg@f@mac{% + control sequence is not a macro} +\xdef\etb@msg@f@tok{% + macro cannot be retokenized cleanly\noexpand\etb@msg@ex + the macro may have been defined under a category\noexpand\etb@msg@br + code regime different from the current one\noexpand\etb@msg@ex + the replacement text may contain special control\noexpand\etb@msg@br + sequence tokens formed with + \string\csname...\string\endcsname;\noexpand\etb@msg@ex + the replacement text may contain carriage return,\noexpand\etb@msg@br + newline, or similar characters} +\xdef\etb@msg@f@hsh{% + nested patching command and parameters in patch\noexpand\etb@msg@ex + the patching command seems to be nested in the\noexpand\etb@msg@br + argument to some other command\noexpand\etb@msg@ex + the patch text seems to contain \string# characters\noexpand\etb@msg@ex + either avoid nesting or use \string# characters with\noexpand\etb@msg@br + category code 12 in the patch text\noexpand\etb@msg@ex + simply doubling the \string# characters will not work} +\gdef\etb@msg@f@pat{% + search pattern not found in replacement text} + +\endgroup +\endinput diff --git a/etoolbox/etoolbox.pdf b/etoolbox/etoolbox.pdf new file mode 100644 index 0000000000000000000000000000000000000000..78f8d15be9d96ca72bdfad7507bd21ab4ec8460a GIT binary patch literal 188352 zcma&tLy#!Z7B1+r?W$9@ZQHhO+qP}nwvAJ^ZQFk5b@bqN#~s{RPIg3&a((+>f0D=x zi_$RAvOtl<2ZzQ%u`)B_)8pG2T5@yKiCS1Yn>f;mS{pc<2%8w$8Jo~ao7kE;o8vPw zu`%-UIypO<7}!9$Z(M6mCvCQ(_I=jP)fkfvAN(*;k&5MhG@_bnQv^iLO;+{dxW{6QeepLbN{&2PHx=r%+sP zt)1NbC?LYQXUWE}8VPP$BI zKwI}a#1I4Y&+DjadwZyy$^z4Sv<#rb0pN4*uu^+&T|b-=pHMvE7nc;S1PCO}m;?N( zB#)W~d+lwia?uTe=O8%+0R@y3NS=zHE`8Ga?bYUspJ*l0kj{(7GF-4`-TJLlulQ@5 zRR~A8A54He$bVAQ|AjVx@>Bh`){%5d~jS*xklG7a)TL5i<< zh%%Y-6j>7RN6eO57DKA(tgLc-l)DnW%j2@w;_sJHA$y#7Ho3!S5RPmkb<(_(9<=01 zXbj1iA#DI4IxZP#Hl2XyyiJc483ak084>q4J2W{@Xu_C;sq<59`etPVvc2ZHT`VOB zDc?wXxpUn=V9%ySgr06*SA-p78fn z6Pq0M3Gppq`>Ao_}=p10rgfL2DLL|#*Ln9o1=F$mWq#DIw? z2)0!wm+rz<7UF&?x0J(>p{9iuoJy6wU(TRqX55}Svu;-5-tK#GF5i$lYXb^|EOI_Q zvBM>&R&RvtzcQ#yI6k!9x|K}v#hNiQXd1+F#FyNL0e~tkhjZ7h6Kp- zwB*IU8v~dnPaLbJ8L0`K{bfPpkv&q2b(affdl}|Z?rC7J9*_0oRX(1s8jDo5*`ua8 zxLlaLiaq9+z(#l za5lKf_d*$T@UY6|P67U&bkLQ9pY;9iR#fQu{3IjYR60uJN15uv*C>gFSAvidi(YT* zK#chK;vu(CaRexTca%?CE#O+po1Q$_d8bI%OB!V3QRd`vz7?6Bv{F4xE_Ij?P|WY~ zCn#Kx%pt-~q$ttOFS)UN?mCE55$s-Nzl`D$f%pB{x%&27>Q*&+nz-D$TT<5j(L=F+msow{^ zC@LIHF%GiuEvv_}ONunF;GC0=tv!xYFhCW+8&A3@vr`?APB?^fI(r+Xd-u0|z@fA4 ze5CaYi_K^hdH1;b(r;kC?PI>9QIF7mT<;95dbm^M(C`rQ*v1jO?2K^&K_Q1|XP8Uu zRf(;<(Z&&!7=-()s?9NH8u3w;4;+k5=e*grCBr{5Es21%{Vav%6#SJMm_ctH7$+** zF_;fPO`W{Sm3qUFn_s%LFGeP+{RkSeHre;O4f237GNPju-^epM2{ITg=)y5_8Vq4Q zSvgJ@^KO%R9F$1k%*W9Y<0nI}i9YOoDB^HmAfMoagiIn+d@ zH0s+soy0C_;t#~n8hCY;yf&!%`8jY!2fFQ)%VXb}oQshsWb1}8va9#1Bov+~I^m~{ zrmZ(#T2soXve9N|UopXbdJp<8?BZB+mxB=0tIb9n9EMec*<~-0tv&(!3SYz^B#FwH zwFWBvtU?!yRHFj{zwOz!?!j0Q2}0bYVNYm3oy(}wl>^H9(`=BQ1@6z#Y`nX_1SI6^ zfAw_qI9Pxg#H9OP41hD=sf*$kccTOAa+r!$$CM6ta|=5`b5$7vy9pk9h#6cv>Z7%H zpkpma0sn=@YDD-8o5@D((bq+jqu}MZbl`^JlYR2ECeP=l7}7p}%HM5^P#m>xZ5r+z z(Jyj173K!``C3#z3QS8gdzgkAaq=qiuNv)%i!{AXH>o=CyP`RK~pFJD&;GBi-m|ocSP)d)-m3^XhQ4 ztJEqY!NL88=*XVc7@ZGv9h45`J1mBlPVVxIepkB~ku#RPn~Go7#pQI1kCH(#c}2KN z!nmuW;_AD#cbnzfyNBI#u$LPWMsWJxtKL4hQ;9M2{Z?MMv6)E2rI%2w1e$rpCxJ=q z57&g0BcZaKhIC{JV%D!W_XMD>QURTRQdfP$Qyb2-gLLgpqM5^F;LZrbf}4rg69R0VWH$KYYaLN%jg-Et(uq@7U!jGOGXf3|Hn?T}(#i=pPM*&_ zFN1f1P9OcbTdcb8Ex!2us@awR;^=hr?>VfW=g{x;AGk(_*?#GAjw|K@i!j0~h9wwy zTWUcfQ0O+-lrE|1SWH%iVn zVGRC}-2AWfzv0qkEq6I=N44=tqM@no*I<@(I}N=8ewmX!oqAg2^{p>Kacy>FI#>ES-s zCV^1(1m9sB)}mfHsQa4W_JguaXqLJkj68bmt3i^S?YIN;e36#6_sddvx$+}yZ>*iX zZ&69E>f}Ov03WiFelF*qZAfZtVtzA^QdWO%upcVTSJ>UkMM=Rexy?fq2|XxZ`R=4h zLvi+!OrSsqBBt!|%)})>rAAaXZGT){T>SjxPH31vpItqcH^PWzn=j)}st%fZG*2IG zwzX3@s%Uu7yvjE=2Bh#>;^@tceMN7=s*P6*q}^ojsIUx z{d@YyFDOX!q@9_&Qf z{9V*nJK5~!Y@WVOY+fx`1m@9`-+ zmY;tlHYH_j>IhFqk)3B_`|O^$ePLfV=+N;nT0|C&GzA;87ZQHDH{1NY=1Mr=p6hRj zGmR{>Nz+;tsVX3kge2LZo%HOQu3SD+m!z-g$`#>CPcmhmvg4DB1*oft&cl}t&D_Oy zFv_&ZV2(0+CeQHo$dzuqR=gDi1}n_5Hzus|#(BW!N(~#AFmzvja4_`!;jG*&Iy~xP z)QY|06sSXVxUPi)x)LLT&br_R<$S}&`g$*kln>I$L=&$Eo+pS1I_Zu605O6ko|eFQ zN)H-k$nf&);M|hnow6HFnfKD9?!TBxrhXJ8JNXU!tO~VN_UEdWTnfo~9&)QGfG+lz zFj1P=_iOk1GH!&@j~ZAUxnA~p0zen>_BR@^m_GI%vcLGA3;CBv3BXrE<6)UVm!e+- z3O@x~0iXgz0l*qV3BXzq%AW=p%6}OLw7<2ru?XO400nd|5RxMwUHPV=YbDDCLH{U|u`*#`ONzhDA5y{yxqcyrA#oUdK z{&vICn6zjhYXIdyk>6yT)VB1)tjKOTh>uL*{S-1xxr^1`zapALZ_Yu;Hbx>?# zr7)BS@?B#Ihy@$W^JGPYHhUk6E8}Xkq~L6MUM{MM_eP>!kmPeYB@Mi>*(C#UM#a_w zZDQ{mF0(*b3ASIQ5iJ2BY=dE4JvOZm9h0B7t?K{>`a97+2^2T_0ls(ZHcO$`s9-SX zq_6^*dwz{$pii(o`NI-S(LHPr!!a)oSua~i%l^nlpL`P5H;e*)L-)0rhW zyE+OjLKzlkB>CycF|-OkV09LZL&)vdZ77^v**6OEFw_b83dPYCUjAxa1TBs`9ZF6u3FD5$ z`jT40%ER#eObD2`gi4iAvz%}sib#f@aPW%cBa@eS9)yQjw^2oHwMc8$Dt=@~9IzQ7 z_Y_WaZ59UEP^-;cwdUZhUnE&^0wKj?y>-gzL#jY#!aCOQ()+j7LgulFoS)gq#nB98 ziT=s$$M*ED7jQ~nqC62u!2*oFs0F7fsuf2Ac)D3ZBq894Tdp(W&ACP&2^ek-qYI<$ zW%1t~ogymG+wJTwfwO@TOo#{j>nKF0JE%dpxqZAm!J>7QIOOyvHFXT|ZVj15xl;%{ z+kA7*3|#$lOwL~`_kwPngzWSD-4frxl^vBG7Oj~{$}Gv>A;IL@XsXTEq4{qfH$urh z%=DpM7<^f>9xS6kB~L@XlCg11%`#%K8^&!cvwL`>T-r}P8<_i2fml#3c@QI>Zqnj> zx#vX#A*!^+%@}|P!`@i;2Da_yVd~=3YyJ~3BR%z3gGHpw@@a?X-HZM_;N&Ixed0N^=XUO6ySzSG&K7(R)&hBfOITWwjw0;R?SOM@ zlPM%*J~FNG{c;4aaexOAXw<-bK@hyA2Xli!_#c_Yme}7LrW|^P=&CoZ+a*YUSDwG= zi1<+-Yt1lVA$0T#sVO6V)X%arc~WT=#i** zKnnS-34e!&w9qWKOff`mE9&j_j2C&s8~BMYAXC4smB>T^Q& zpsE-6Mf3^mmt0bi#eg>}ih}v+n3G0BEO{DqG&_IY#fNtXf3AfPYvvulRuLlH_ek>U zSH53`T>#)*GDh5@Ts2?pci=rt`ILd~UYn)T&4k=x=9k=mXXX;U6{`q#!!!@5u5pOd zxqzz0Ue8r&uuKRF+NUOt8>Zqh3N;251o4ga7e6Ol06`ahThVDQU|J0$bD$s1t#QC3 zs}lS>aq@ssYuzu&|f7 z8(kX(67R`*U7(L2oFv`Pmrzx5gOH8X^8mX$){~zHzeiT{Gy?e|-62RNo6&0s)$yuI zKK<%x+Bl%@fRziK_#sa+voXT)UNo??%Hn-WJd;`k?$m2L{ZKtNLhC7u`*y%vY>@!A z0psB;nDb#45vooZ-l$yL#2OUR`n3Dr>B0wzUjGXtS?T{5Mslz+{YRd+ttl1vkCDBz zb$1G2quTc}+l*0HwyY3=B6H$E*0%yS72AUwiergoWlib7xs+(n`P8q?W{CocK?D)A zgc@HLRg`@aYF#Rw9|kTz(i#4F8aQrAaeZI)A1^1y2g&rXhBTFI}UjXN&zmwL88Z>GF}(FwJTS2Y~Ss)7Z#uUU5A)31a3FdCT-yP*^} zAEfXF5vocAD9DmeGGD`19LzCd$e|n-AFV2U+VTG=IsD#E4c{#*>K?-1#ezQmqg=~2 z*a?D1`hMrG?Ub8rqs8)kz%1GT!}C>(QYXfYx> zV$A$B4J;lS!=_jwy$%yAz*xg**nc0cGWBo8_s+dqBx) z$>MC4XGPv9@e@Efm@p!RSYeuxe5kn5=w(5XT0woO6-0Y>G^ANPt_-3K*JtIiDtE;< ziLVMth~DgKK&+%VY!!wYY3#58wV-hB~5ynDqh8td7sqapTwedgKSf}b9~3|BoG zXMVB$-j#Y2p}w4`)CU#Ch5GnG1O>E0BFKTp?bsUUXY$ob?lTsPg9W=aX)@ZPe+>ici}vO3-q${43dtv!Xkj6ja;KRmxNCwJV*T`X1y_)RurAk5 zae7R)0p6Cm!Hn~~oaO?yv6gMfm~iLcn*)&<01px8xGXO9k%grNK_#4RL-Y)U8O1rs zJ~dBMfjiOI!3}(BZaEMZv=k=pa|L&5&#gV4e!IT%F`r(Vp&6m|Z%(Pq!>x32ShxP} zjr3vH1dKfrNywaIN~2h=K+1haQYB>ZsA2(-Mg4pJZZ{Ey0#%P1|Jz-*%|-Gryv&nT zR>N$k`Gs_tZwkFl<_-<6oMb<6krY}0R>9fNN^&jAtK1d)IanX=erkF=Il*HTkGnt3 z)4)dzPdK-6Q>3LWTeRoc+LUThCAO{gO3F-%UT3B4Uz`olSL<`EZ{${C5LdQ{>Z%I!+PN- zwmoGSq4N}0_%FtG;XPF5+9iwwq=X%xl)*=34GwHP4ixT0`e57>*m>PgX6}5I%zV-a z?0}%NDMs3luqkF$5L&sYb2)9O*@X!S?jOxk z$Zp+n$G8a)Lp*(~wsObYLjAgH1<6h53IsJz{hkDYyLWOV*|P$KYgp6klQ_I+pYrs+ z8_*pn>~5t&VjSB#1JE)2!Nkjy?!jbS5v0%Ubms$~o9P$WQ0oe_wU;g^#yD|cGMj>Z zJ*-0)2F&7axB9W~MjOiin_*9;CAyoI4U|t&v7#2t&})8+jVznzK%G4MDD6(G;7#|d zpTl%*0&)2P*+N+c7l!oO5vHqn3$s-*HM|uu<$TtRlaEC(iyWSd+4Fb1#zfP%C8miQ zhi73eMAUS3SIXUQxWs=g3~KFZn>QIwyMfkAQ=P5dMP~{t>IB3GiWPcIr_{y)!+r>G zrR9Xd4%o?lH)Sj@*2I@TLKhBfgS_$S77|Ri<8{)Z|M)I5IeIqGDz`HT^MvPZP)jdy z@vvu=m;W%^Js7;JLk5&8vGdX+$#pUSlK0ut{m#<;mb~2mAa?;|`p!0{E>jT$7rWqV zZZm$0vBE6?FCN44b-8Y>C_85ujGmY@xsDrVC^{arAbAIrN)kV!ukGW?A3XOSOsH>>vPl4KUEl|i zF7=imC11ad*Axfe!FO4yFoUP_ttr zs-x;W8;WA2J%Dfwj-bOkJxhv4I*B3eW@N=zS3ygM1Q@J(r99FgOF^)R*}bz@-70ve zg8kt-m&pK`2`|xFtczb0R^nqUQ}2o>89~(R%gNi)QSx(ZA2~H`Irs-*rMAl1%`|Z?2FN zI9rAeIYx5ou|c~1jsw}tYDOJ@YRYCKOV*W7$@0+awHd3HR)L(r-BzUsu#dICoT@dn z2SfovB`ZuLxNiwy_Q7D*k#Z-mwrCau?<1C<5D#}fD}U}A@#ryn+L-SY^W8BoP_|%A z>Ry4DvCs5FLGzR53yOZ*Y&>UW)km_kJ3!Li1<&T7&MX#FpEhi>#_lBV&1*i~nY$GR z5r`%L-&%(Z44wgeI48u+Sz59UCZOM00ojekAUb-!b(C)N@XGF-MB({Mnlsw*DBFF_ zzcbP`nmG9%dn??m)CJ{M#>c0se0YVma{rETg>4|f*W2Dfq@uhvHL&NOfs)6foc!WM zlCbeqg|jd$KKh_TyR#Rcu5_d)lvAcUf3m^k8X9U|QHG zBZi;ruf_Edtu8v?lx>8k5ayC15H0=drah6jLB34>9QX~xz$44h!!CF7$QoqvRM9ex zbIg*vB1r5!l~lY|AUC$W881^cC~sWiz3NIai#FSsoW`Xr(mu53`9S zr_lc0!RK3JEO5V(lrU57vzc&fHd;K8<_SuvEgfDEW-B6Zu5%kT4pUv3TDmvK2q~kk z8(Ya}CRH4+t}GQ+-}GI-tLZpWb*kYDB$R8fF-M?gQ0D)<@kK;-rJEvNF^+AcGaM5Y zrkSh{|LSWvU08~O0HKJoxNd=bqZtl@kwQ^kThnDl(Y*Nkt?Y@i}lHmuC@vjH~ zs)<*d{&?QmSVLjakae8!aoNKmkHo%$7B^T*D1dzz2BIH|fHFSEeBA|R6p>ZT@KCme zJN`i`(6^+3hd3V81pRu3SQa{T5PZW0FKTI$X3}iE1pfx}0zJXz5U z1{jFN3>IoEpCcVms#wnnx>SLcEs`oDbYz7<^Xkvx(e8h2Y<7b0Li)l*gL~7Qx4Rh+ zOL&CLpP4h41xO3C%Bt)b!W?=ZuZndFJf%C(<|OPqTp0sdZweCyQ=EP{YwsEeyNzO( zy8C|MV}EX4kT1z|&1BDaKn|+7nugTU#w?#FYSLXjyAO5j0vBHGVeq`NzwuL9RMA}Z zckqM03Xez*=f;DvsF**^F?xQL-~#HC3v=Ub%Qj*Lh@JxcY+BE@NIsYm$-uVxw4mjP z(v2a27^lI)A;Sd{T#Pp6@G8_Y9fu$p3sxNJ#IU%6$@z_~Xe`9h=2+BM#i=Z;^`(MS z*>v|@KYZMy@(k`R%(ER>rk~ntZ>1HoSi*&0kz6@0WnTfmT{@XtXK8*!?T8Uu0wXww zVcQid&TK5Nc^L+X1>AVJf?_Wnhls6F&LiIIP-m!}&3LoPPZzu+Rt8$nS=jW4gFT7EB#jiZKu~w&Hcg*F z#ff@%Q$5dC3-4$?jVTX%0XUcMV384cu4A;M&$=zMT*pRel>eG6VNp#b3~=Tzcs*ad z4A3|Lj`3q$YXzPw`ut4P^(GC-(VS~LAqDbm?cXX#M1f>!IcAPB`%Gn8@3n<}Ef{@) zGsWR3EqOBSaLo+jjw_Ro3ZeVcGTUs6wTE@@Qu6n5F&+v@-TI7G+P2JO4Fe-QtH=)& zn{V$QSCzC8T*0H}bN@K9ZZ+d5&B!?|V6Rz7V)j)7lWo^y8uk3+PuQd5gXkSxP`CpcphRhJy-1iQl}V|V*tS}^U_5@@~030pO_szCuw|F?&Z z`=|Tdej@kEbnLQ2I&}T$Q%+{srwL4{BH#P-2X0P`}M(8R0VS3}}(|_Ol76HadHmFAlI26l@Gfb^?b6rmDj0?078|n#wA(Ic~suW>j12G`;@~df?Dl0;%^xa&4zBL5n zqELJsYv3+Q6iF3KXPoE({(0HEZ_t-hjJTW4ml!|3xLBPIj+L9-0x=7yltNy(?*@Ma z+#2YmKAw8W7myAZW7CL4wY^5N1KqIFMZ{*&b%`<~^U}uN3{7neYnF+Qfwb^!lt@f<_z<#flI9=x358uP@VZ1obK9H%i5YRYdk12Nn3aH{ zKwU;oN-ok_BZOEDPsP~j4hws@Jp9NOQ{<^zv0#-VhQ-j}n7B)c3uW4#YOKs`YkKtiNp@Ne`*sBei!2{zD8$~jLxGO=^l8>TT0%xbxENY<5fGZ7?!J?In`a)k=54l?>Jp5px4%`)r<;LPNjF7<=`TFOwDYQ zZi}_2b{?jC*L=k9Sl{2jly}>PhSC@J$-cOQYZZpR>VS6Zkz7M=bZTWx=J4;c}^^LiUil zdYt_;Aj3KMYTcK8x#PpWY|4MNfvnOaSQjnD2?~<@yjvZDhE+FhI%=&o^)7$$;xkMv z7WreO1X2OjQ@wT#f9-d9O_IW_H|PR0o9^ArWkL5f%5~QgMM>LuZmbu*EwKN}yMw(u#&2o^kOwto;TSd_E+35i0zv`K4F5O9vHcHbv5yzmUzrfHqZ>EYDvhnP~LBG9Lwb< zwQgOJiDTeH%lFNhkEXnYV(bL%u0wYI+&*C;f%UC%ReQ1Zb>HjG*yZ-1Z581oD_l*h z;UWi^dC`Q*tLYn?8^y!zkzqyTRa%prdEvBLNZlNwUJJj5e;wZ&qbm*LncuM|Rz-gB0Z6e*R;jX*W6ht~B!6dlH-Wk&mn=%}Z2G3|w?^a*_ zxT{p>1-P7AMV7IG1{(N2@(@kXDhUc zgx|{v>cC{BXFGJF4~sb_xYdW_;_N^{OK6`o26&yS4EWQZs}Q_~&b~S1(-~NGH$N~m zCiFvEgH;HK$~DnyvYgQGaVJ!bTv*=}n3_QS-=72L^4!UcI1^lV(eMjd;qLzwqD{%(0-!y#B}=9@F@grqTp$ zaU8nG0{3D8b{pyamj^;B5-ewCzQZ7u>ieQ#^E7o^h=L4-?H;^GU&MArSx0Gu9XrS9Z7`MuHiRf!hi}5@cB)h*`ASCe zq*~otQ7EBAaYG3EIHFwib6L8ALOH~ceBx4?yfT`cW)=nlhwSKR94eoHhMWk_;lIa^ z6FXO>D=$h|f9LYRq1qqVPbvW_ zC9|GcIndx3vR$ujq;8xlFwsMcWLs_Y?#<ljlW-nNlMHMt{9^BTYn! zOov~zj0jXc?mT1)ouc0@3oDKk0~cD*!g+%J5}I7JzaUwc;>4;91Fh=DiwIX)to`zW za7&w?A&|HlJn&f~HXsOJ?&dH(m+t?*oI{>bH2H{Bo{@TXH2bJI{@9wBW-KDWsGJZ( zoET@}GsxKo)DzWQS-=b*$=owKnDaf!UbY*1U)RA`1X@GUd{y zR&;vLV5{LGL`X%BtIl}y-zuDq@hVr?{OIZV#_zCEdgV!Gqnp`+>*|6=A;feD-faul;_5u!%^4w<+ z{mPL{LA3DUVmi3-?X>V`r7A`(f&>2936lo<<9BpLv;KAOD0;g(?;jJZa?`7BYP~;( z@0#3!wYNWf&fB7I=Wm&m{KzRg)L_+;uVx(><=vUPU%*S%aX$ZL0gHAY>o!nWUCj8|QL8C}$+}h^KxSu-G7e6Rc zuO3qyDcqf39*V5()ynz5ZU4op)3B?<+1(mnr^lNtyA*W>b0x((TUV-4b_L0re{Fxx zj?NCf@1D+{Z8#k#?cc+bxZ9JZ0012hJ{5Vx=HOBK(=z&xEW3{9BOI5hI0a$GtWfSz z0?89>@j((fp;jTi+bj{qK*VVktTj^21WY-R;+bD+Cg3{Nv%H~cgTA`YPZ7gJc z8BnIUo42bloTlCM@!2g!g|>D{mZ#VbBFulr1~e-_45lqwY;sqkJ#ph}`Xzm|53W*y z*-Eii3M0Sk|LF2$zsTU7wgK~6UG3t26yZ6Z)q9w;26VtGg^HUA$Oe+1$5;4yWMpUh zLSH)AP}$Ld=>67fEhQxcL%mC+=t?RepN=8|Ke%4pW@+uPz4mDnR}Fv^eAHup{f}ZXKw}p11->;;&dyTHo0r>75dPOwTGvn6?6^Dq0HY4iO6nLK0 z2r2PbFA)t(x6E>rVjd1LC}Q`=_{SnIo>EE-DB4Nv5a-2GxBlg1M50L=n6 z`LANz6>#j)Fvqz^tyQ8RI+xa9LV(wQ2HvaM3sAGH4r@tpFy!ZA?u355s0^n>&q2!m z(lKqxLAJ{xTO5H7A1}m&N8J{!53Yu{{~WpuA0r*K`vM;TZGMfwuo;!a=DCHj7*!x< zF_zk|Lz?6uH4R@(nNo)h`EAG6C!NxyUqaVG#aeQhy?5(0_$v zr~0rBHr`?xth1GkBBlDk!v)kLrutaz;pCdtUy11k9>a#frhImSF$~|JZ6Bnbm$D2XYDv+UK2*~+9dAC7qWFtgde>0bW&o&NeQkCbyu!C^CG^M{T_ev) zzSnz>W@a=Gk{QPU*AJMiq!NiVw1E8AUK~>gCW+wBkXe%+)8AgfrAP`5fG`Zo&#?5B z>(s~Slmnm|syRT|&_J|W{ip+2es;H7b zN~yMcO*xq|XdgaGF>!?$wkHYd=_nsV$pi{A%%yX2s*Md$!l*@26NgV`lx>dusw8!q zwjoTQ%Z1D!cF#kH``=a;q{cR}J~g6#s{6%@9$IsRc?Ihpn||H<-8KYsCU-27kJ2$e zE?Z06=jj*}JOFPM4P|!#Z@C@-E#tuDLh$}%p8jP4xb+zqS=!UG>lH|(Lm`OVG728) z$D;dlI%vX0b>du99I?)duSa@wX_3DDzLlgPis>UR*J#?IDmi1Zcn#2U;U1MZJngYJ zYfInhCpfN;PiX?wr%8diS+zd~8bXwGs;3pEpMWGoN9AcaDAjB4QiQ3J!W#_>JOs>0 za9}{ie&1WTc(2n9+Xsq$k3is6+)pOwH&dwOE0R&bt47^BgFLvM_BF?Xk+IWBAI-B7 zZN4~P?vWnfyu_&V7FuqbN@_%8?iQ^1tj##^2n}O$H5bMvv*P$6q3!&uPw+}16w*N2 zKIY)fCZ4(Pjh;mhV(Pt*AG{NE~vyhlI2qNwPz#Pq4QIZSy2=)=G)!gpT*`0 zgXA9*El@asYJUx&;dSS3Op75H361CRp7( zTVwmTc$@eB7kxdVUsJc2wLNh%JiJWQqFCp1V;ImPo1o+{VAvBC1ja0HNcK+^Rc$ie z=p&vJ?6_L=YhXctFK7nW(qMBrgqls&sAc_~9yLZdO%Fkv7FWWQ&|lrxP=hXvI@N+r zVyG3PsXIM9I788qV*9A!pigR#$V5Inm>Z9f?7B2OpaH4>9cUJF7|=pUyS=Xf!PxB! zI>6BaQ!f2i(CBkI12s!9RNmG>wyN0|g@EkCZ;jDs<##Yx(gOfWzl-btD#VfVCh|>< z2m$V9_HLQ4k2GMHLMQU|d%WpuW1LFOs0Z0XEc7gQaJ4rvUqP_r|_AXel4onz zQA#Z_-v0pvSy!CFaH;Zl)let7BEc`B7p(gvFU_a z<2w7a_mx8uzyGv&2SBUr(mNTIDBsE9?^-p>OFR7?M$;LG4^t-DO|zY-_XHcJ8FDX$ z0+3neaTbV!?_ZW_(i$s9+3!LkDZXzae3)i^@d}Luo62ogfB{LN+DE>W?0q|e*fIa_ z4<0aGQn32;=m6Q{@69J&7~ya!M|y}SS{;P`=Ci*&_yCHQp}GkD-UuN44FdVR6@O}9 z3=lxl;REpv$dQhM1^PiE2aJR8)zL0HSi(*2f>!YD=ej-ft(<~I9*P%&Mmjw+>}@E> zw7I}G-D-2>-dTV(xJY6@T6PK_tuS3&#?BHbB0IHTah9>*mpAw{q9JY^^=;rBtAc2N zSKb%0k8A78Fv;ml!=uU<^Ai;zSu?RQ40U1|_fZ?ei7+R9-)Kma!A4UM`M^u|%XywS zVZ-l!RXq)VRBT6^p~S7jQ68pM0N<&Idn;HnN7hX((ss8|FuPCfNqN{p^?&p%G^k;d z3K@y5!c0RXV?kzhEow$&{EQarZ-YV)?4WFD77sWPX96{K@&tnc=!%^T&x zzp(^ZQ5udr{ApMpkHTgO4d3{_iELz6)IA2a=xSR1T)=g7su4X9ttB+Gu%H8n5&^` z3Vwh4Nf3M%J`>-+3p@kOP_ggbm@r^9-%obqqcz`mwg#VEZUffLrjFn)mjh0duJ@)? zb@)rN+Yl*HePG|~^RJnO+0N@lEWDq2*CK#&08(o=84Re{L;3o?NzSY~!EC<~=E3G% zDKVIPw9PD#I3F<#*RmVzCUlWBj-4KeFAArMWg1tzP9V0yF`j>zN>{vLAT(rBmlqK8 z!5>m64TO5K(O=snM}#VmB>F@l4hkrgbgJ-&Z==rH$1F-kKEkD{Y!t0(E(x((a2{5* zAXmFua9V~Y@=vv3(o>IscJ<&LhCXWMMmfDSNF;xqZR#IE)E6N8e5fS3KjniR_*=}p z21Gb&Pnceg5o-vQ`mLuo5>;k!$_1rRmGW#ud!`c$jX^{(#sQdy7i#LOa;TyMdtE_L z1xOK#2Qy;N1Q6E&aroI$3gsQWUIPL(z5a#IB|GgHAspKnqJRp6T*8t8C~%Ov-k6i)YVvMV%3dhh_=NsF?%3@RkUr!Q|XIjKR@2Xbb9Bvv&5tJ z*Zj|zV-O!kJ(4e~U(M}rc&UXdGXL!>&+)$`r0oB{gjDMPCZxTmYH#Ggh(x@^iet@x zi$FasUeR9jTUvC9{;jxG6I;*zpFg1FsXTh%iA55E1nzmV-%rlb=MB5U(QeV)Hp3y` zNTLp1=iZ;U55lU@>vl#R2MnlH#}6({4UkeFoC`{f6)MrxvPQ!6TQpZU3&-2CzD(ag zmuKll+4>3Q2}iCS22o(vZTvP{>UN-l(2Er&uAxfXEz-6+NgA*g^3&xDbsB3Yt@Gq? zNjRj0w`jLo%s3S9P}XICm}FqQu`;;*Gp`e)0Mr{`LRbM=CGL*xwH z7L;{G%d?a{#fAQgOu)n=Muto5A3bc^_E9wwAr%B6E2_rCfjJ0of2vZ+MIK5S&K#6` zQFPP5^-_zVR6h4#&l`Bn<*@Q<(j%AbMz{Su!W{PCR7ZRSsdTbr zXWN+{Js6|*El2n&`n=@Fb}M-bmn|8Znh76ch9fqD>1sBvm`XJ+LN z7G>O>OB8 z(#O^{3wcBaG6V&^j~*L$Q8Fe2KnPk^!2WU;y7sZebNW$PC;Ybp-4r)evVBMasOT-` zrDSc5wYf7{4`n*OX$F4#HbK1xz0P|Z*z`o9sP~>-0Dc)3B)wf*CZ%l0WcPKde zKa9OouqeT{EIMu5wr$(C?KN%Nwr$&7)3$BferunvbK{+l9nlfp{aaBnGDlX9ECNH$ zhvnThTPq01I4jx!grUv z1B~!q`frjkZL95x@~RRc+fjo*PbLYeYb0u_{hH+il0kQvmV&qo1DgsJ?TsFxDu~ES zD$6UZnbEkn%xNNl(^km6=x0pnpoVTsXY4YK+);c!ZETy8W4(ErdZ?(yF%ZR==%!60 ze5<=cmgjLLWUu=rG^xWyVywlJJl2S#lWT%vX;fn4wpGF_r4RZHDW5qD`@9~a5onCD z9QYmEi5$ecx$(FP(YHsY%@#|etV<}R+gB=BR!LW;Br ztmTy7=}ELgox#1)cTQun2p^G5Wz#2muApb&3A(AcdP@ThxO%r5$+17fNh%HNOdQ1u zC$<{J#+Xwcw;RQJ!?uAz=tler8q4vH=TqIr+kjt$p>&vH6#{i8! zB4C@oN=fV(w+Wc`4 zL)P_Zx016J*Zyh#WUBN5dT`gaaBhgpA>Rb;8k?vMRt?#jhLbL8w>TZa*3KD8U{mX# zcTq(lFbykC2y0zdLwp?w$#+Z(W@uX-@ZLs$DYkl3_n+@fXAE_Wy<^$Q`i}+y6}qY0mR#)Q-2F5c zKJ&K|K8)jtkr`h&+OMva9HFA~o9r&#oMq){9p~X*dvyl)k%)XJ1DFjp> zUxJ)py64{wR)sW9G7!G<2IRU&4#<2t)HRjk=B`qf!qhk5P{k}=v=N?Nr{4-Bg0KFjnWj2Cq;}dYg*D8ipjVn0q|5 zT$nU+Ps<<_Gr*aVh$X8i=J1z_vKVuOMzn2`XbTdr5C(6UR8^9%{~NsG%QSq8G)oTg zi{l;xy~64txInLM>B9-Zux@RSW`KO0*uIY;37=mT7TImfB|X~yxE}~>4Hme#bMW3r z5yFUC4Vqj;aHTQb%Y;c{se0v&s;^}85;G1lk_*Hv4QIX{y+VSIs%f|nlMNRJMj}#e z4~9eIQ-hi;l@A@}uA2uD>c^2w#B8eUeSk2oGQ@rz`K^5z{2r-}xAQpatgt%T5To4^ z2MGTZMx3t~2`Xkxi466y5aR@Kus1@BdIpUc!)_-nG$cA;tobX|b76PRwyn{O@b~hN zr+y01eHyBBb-*5IBHqdy;O_1Y198mW%v@1p#fjsMw3bqfrE{j3V!@@ARkP$u0aVM{ zf03+Do^5QB8bL@NS_r`|3BoDN%7Wu9aHIghxvQzzU|Z96(zx{}zFN)n$1scL^{^ocYP>zEpi7(@TjoTI zpFAOY(4*Mhg3oI{4MN#%O^}v3t11p35o136HK0)=ee>OmmPmlr`gMy9>))F<55oSf z)XpsmF(gc+|D8`1gu&p#`&3R?h-VhWA`DWa?*uuGKS2WWS?KFLF@Kr+R{0o?ZFgx? z|07zoSqNigqw8DUOt7(8=Fvv2RNGj&kZhlReZ)*N>kEJ>M+eX+qvz@u%MCM@D(RtS ztq4SV`&j$7bJCCfs^)6|90__%LgyLSBN55SUiG}q zs1^xNrx`sxHKvE~UI|B1Ds<@5UHXe&qI)ggy`#z}+8vT4+(t4u!%PnbZ|9m2uSAbF zKw^TCZ@x$mSI4D%H6{OVBB8B^I=*U`k6xy!r5ZjR0h$z%cNK$9Fn#3^NUwpOFJ3o; zl2lG$T3&Ggx@x1mLSNHW$(<*6TIHAU;>l%6&xH5t%F^vB4Q=a=oED2Uz;TTa_U%I` ztf4|VJzv$I#*EoFtXL3SlCPmY<2u<`Jg+1Mz8!wF!zq2BVT53es{Kt{ z&1@h$WGns`(z~UFaiS)d>iJ5XQ0VwPA(fzsy2F|NvciMsvFmpF!!tD$$%U)?-#qCymR}lee!dcl+BJM= zLuq)#TC;f?+LuAcn5)Q8Lz^`*{QF%( zXUOhZ*xkSAcWmtL`oOn`use2;cAm7|al16#@6h?$(qX-TeYW}$v&Hv6sp=!Pw?ons zmY$v2D`v3~AB*;M)A48r&W5tD(AFDCR`fRsRtTg&W#W|uyadYx6%sADN~i}kg+8>{ zavA+Wzeo%Q8?E{5!_5s#5>(-NN))NS?KhTR41J&I2ug8Z|5vSM{ck!eMuz`KKTH3g zT0MIEN$DH~A_9{~HP{PdSN-)@~T)|0T(J_ z#lej8^OQD@jbj1`w*xk+{!c?oG)Q~K;_rj?)!FLyB-Rkfm%k&?@P=s@z)BKe3avjG zFhc!8+u5;oJKmvrHG3XxI>CLq8E z5lLQLDW>7~s45_rLLhBqoWz#rm=ovw;W`)4NrkkQNj;v(b{0WV($Y^JSO1Nl^iAg| zkT5_SLLnCOiSQd|f9Kj3WlZ7P5)TeNUULdW+EL5zBk2Lf99_UUC$R+k7sIemSjeH1 z`A38S#*eom#9+9l0Y^U4kJsNMB?;>%L`$0oAGfmgJ%;#MVH zEoQY+j*%=oKe+!3QaI3>AHTC{zB0U{*dQA=-e)J>D2~TQ8Dp?oGe3c-Qjd^_hE^Cx z(H@SE|B9$ksEKu$ik=A_oa*$TW3nr>KlXh7A;7xY8{$NW=H}Xj@`YNxmU?w6sNaF+GOYS}5gmK)h*R3WX^`+ai4jg&V@dWpO`Gwz&X=BxCj0^&eNzIiLk{ z=DArw=Qb#L=;q%gH4n8l`ci9l4bwYS-88rJj{zA(11U*PG)ZRRXIcT%Qq#o2QOOBS zGWjtQ({K{2>ZCBtb334O%K~qlg<0CEjH-gGIlx4`xT zrf!ITrEYK%)bid)D)e?y;=mq}5;0R>e{EX!_^S1pjgx4)cEaxKswhS?kgyFqw|j$w z-(z_OFq+-9t&?`Mh5#_A#phvIGmFSo+X}W01pCk8%}N}Cc-+o>ZaJ@GI;F2zN_XbOBU4PQ-m9m$;p_HTw&tzm=he+H=PmrFwKfxI(sYf!PyhLBDcM|h7Ibxit+aEvd?Ztfg$ z_jL4YUj(}s#m-6Bur?3tc6HGw!{T=y!tLO%LU%-Rt+Ny%O%7@V2IPJJ)$_rL-Nv6H zo&T#M{Wn?<6FUpr|5o&|CLIsk@A>o#h*KKthk^hcHYHVEtsNywkWQO-fMpe#n2{>d z4|ozc{N&lONCYDrYcONV9yrQDSne&Jy0G1m>06`R?;j7I_|1TPJ@4CLx%}Qe?msu# z`M;9KK*2Q%pAKA`6d;=z^)VM^{@pon1 zKK98I4vg4ZanPGWDRcjlw@n3Q0b^IrhssdQ!&h9s`YySX4rJ_=Vyn4Q4?}x3j`W$K zOX!70T!kJzcc$xxm(jGmh^Bv?@KYh%HZ25_Ht1A~Ocmde{8)F;yR9EOl19hGO4Aj3 zb~c)6J)=NqA~BeBrm0R@ZOc-nR*`%(qc|j^hmpn^68G&!Zk`c7ZaV^GQF!$oF;QUw znLeehF5f#qa@>^fqWlUZZx&8K2db>^v@B3qcdBBC9Yj*ku!KE2jU$@{pq5wB+i1^n4PP)e{CV;->@8%NtV2JM{~h?7twS(*YKpODra7TJ zn(r>7IgUaDOZ~&ieFAUVf-89g>11HWgZR4%&Jl_7_pxM$b%~bx>lF803f|VA+EiB& zJhp&{zvoY+Y!`G|;k(?~cO)>*58k<-e%<7>xfL?Bv^WJ%6mVfRlh)<6?dre_H5Vl= zMKjK4wH9zA725p3{whkl0}iTnARh|ewLOGUQ4zd!uCxBvK$inWFOSfOlbe9XtP^VQ zBm`Sd&Pi$?vK$?BoLW!D?tVJ30H6VHRo4AmHa!D}09ogP!9}gutBO_=snYJ=vl_-Q^2}N!F$`narkhpoehPE%VW&`GtzF(`v`-XV}nV z_`hJXXZI1DPQ$i4DjL|Pz&I86e(~alMc9N`XW)SzTZ2>Mh`*6Vp23LOEyW<8R~jdn zFo4B;pQ>4qD+iZce-=81Ta&GeaMn{*w7o1n}Sus)a&`=}-~EOJ#U*&F^Unf2NeC!T)ganQ_7h=klXW z^T?tI&(6P+9=nTj;QR79Cev10rs((r>VNt52k0Qi(sQors zI7VHth>}sH0GE1Ym@5)`FVaJ$G}JUmH+dS98I9@3wUMeWRKc&cc*3cX?E$4(s&rq8 z@?kXTCn-f#ZLqOsxuyLvSCeG2T7a;Go%(ea7Mze7o!#NAbKMlyZprl_Jf*dM2ZMZ9`^V{&G!(k4P!n&)&E-y(XoCtM; z3}_Lr{3jFW+e)}zG2f$-Cw?|k`k>T0JQ(J{OJx2yXbr%8wT#o>S#-_^Utg*3iF}e7 ztJ}pRConzX06Z56oP0kBI<7dxz+HPe`RW+Ye`s)|9ySq zGsuRF`Sch}M5j{yj%87URpTLfDcnsnCzpq;LCfQ!G<4WZXs4e+vW7fV@*?=`pqGa- zI-68TUl}7$l8x}Z@jJd(3BbJ*2mUVi#Qn~a3= z$XBela6lp>*2`~?Hiv%!6Uv=aHX~z#GSev|v%F@d_5*0zUwKa0r_=_rWh0KSg&Bk_ zE3uTtQ~Tzd2=iokT%lfYO#%dC!1hx&Z>OKY+6?Iu;F%=Cx45r#OKr*VxT$#1I42%v*DiPXx zQlH#7v_ud=%R?DF8Q_!QnWW408j3&(gcO+*QH0+h9ABrcvMR+5A50YU&7hFgCo2Ik zd^H<}g?$^&hX{(7iU_a%XE6m~wpJK*+DtC|<&QeCTnMw*TVBoY4%{>55JQSZWA>5) zs$qG%kr&ktgjd`72y8^(6*TJM`}Rl>N)4nymZU*sRT>oD!O^Ilj>fX8SWrpOAsIQ< zVfE)b(B)oB;%PUU$VdIprKZT8mavc0oz{5uYG;O@7UgHv1sbs8F@Mep4CJRlh!j0C04eA$a6!~4uc#5z z2-sX2&~&NoK@LH)K>s5sR5At__OKsyf3> zU5gPo)R2S{#TY}v2`d_=6JtA31lU{sbUjuv>jHW0;u6`GqQOi3@q3lK((ewvw8fqa=Imb6dB=A!M$XfsZs?P7~{~pMr}|sT8a$ zq!;=#Xt}wp0Mp=DCb_jJOCpm^Z#AVg(#44xOHaX0WatV2~p;h=)$INc2jdqdu41T9~KHC47C|sxAShb-irTD%tUglOH@|uTgnVz3rqE93$#fE@nD2cKL>nZs|H+Y(i52Y3Zj=QLWqMV&3F2x;XuGe+H`FSEx;T_BZMm)2 zj3Lt_Zsbqb2@F@NOJ?0)?Cy)bp2iJ^HZq5b*csT!^Y9heZhRG zSLhQ+Lo(p`UY&27VgEUg>Z|C}w=y;QM9X)ggD2=Ag zTS@K*QH#&PnXcIdhRAY4oT;+&KJ!^^#twFOXxw6^VC-9V)MKp8a7GJW$1d;TC(=lQ z!C>&O)axt%i6zOMGO77)XXc}wu7|;Su56ji+lBd0hBcS(i4~dRmBJZ})P*(HdqI_e zc}iYaEp(mo;36wPmn5Ip6FtSYw%W(VRMC}`S}(;gsxld_=6S{RAPIfz{O+A7BHLdY z_)ZnMl1%g-?wFux#El%UbA1ECIS>D}o--HYk0bil0b`-Ftxw%iUns)UFO^dd&lf=^ zk81ssaxQ5$i>tflD9fDC+q|g9C@Kj1r{aS-O&k~%j^vHoG5K z^Cqac|AYQ={x=Od6DJeH|DwOsTD$*AeDvMz`x}RZ@HnJj_~gp*^inUHw~sfr@|e~W?((9jOdEeK)1#Ul%5ol2W1+f$HuzV6T0hHpO`#=PIN9$x4hF< z?9OHB=;EaYm_M?>G%9o&(FrzrY$R2ycDDB=$$^wfe_N$WRex-efQL+XgwD8$fZYb9 zv3Sws37k}}q_)T!`P!Y)mNBedPii%IhwDSwmug;~j(pw~hIGX8jBAS)rfaJB?W?oj zxMo2nJK*WT>zn>c0mxvS7ftngh)1~{Tj{sN03Rz8{C1_tF^wA$65|Q9Z!_pzAlEda zh%wML*-NYaX(F$3ZW!W4?YP+HSds>|g86h-qaAQQFg`Hrgqxf)N%?uopeyEN241>` zYW{(aEH5g&(L#FZExs(EUUjaE6T+J^Kzlq+LabymV4sUDA4u3g|wPk$ui%(inX%eG8Bd zdkbhn;14uEEzlZ}^QA{|X!ZB0Q~W}2Yz|hCD6?m5^~bnAf`wgM?B6^|CJbTj3WuA< za*L*6*Yj|3Z}jPsv)fV?JlSrwSEjmjyQA|`TZ43cY28SP{%G^hD&HEuvftNpRTu%@e(s%{{+*Z~N zvO(t6X1r8Sk}{eA2c*SqXLEAzTrF?W;t@Pb;DS&tP`L%#T$)z!U7~nuEGDEp(H4#Q z<2f}pKOTjo1wSY@U!aeGAaRP#q1RSb=$gdO*%De`kx47twr<*SV+%C=DLRr!&n&RV zk_SXUBuCTVS_Qn`&RuZ|uv->GMla`8$C8=2P(tl!1&*^JAQvUp@7hv!IXvNDPs*8X zvda{eOO|bUlJW$u;bjkXwc*m@anA*&2YUzdX-W3E&h@pXCaXB>)n`c6XN14I@g6d+ zL+Vef4{1<_-`uhIJwV22qco8_kz4xAs39u2z(px|bAy*Rf!`{0a;pWQ2YJ7%l3G`l zuv=-8#xE5^hx4*`2Ed&@?+kJ(0oo;3d>ZMz*J_NSe!Wf?E}nY+3<{0g$5wCQv30ntK#l zLdC7T=iw@F;ynd7mJJ1s!)FA3cS7k3AT{AU1-CY6+8ZsGfp!p%+t02y0hdo;z6PiR zHK~^EDgv@M?a@AmP|wvT5z-{nuT*NkLxr2^=eRRt4^)&iq7KC*iA(NJdjxVPl?~AP zkqNkIEC=ujOzz)KvL&q8|%AHe(N{*$-;M ztmB`92q1aV?tg_!=YNU?m;B^~%EnG|AOJRHfxYt0v3cUVuDIQIWz8eexKKX=eN};~ z2xNav35bi5Xn&ZF)IWeJ1rSz|yvkJ!(oDTZ=dQ%LlqYr1tV;vQFi5D9Q+BCW1Y)ov z00{$w-+Ua5G`1`$>iXsoJB(Q(t#q*O7_(<#t66&cXPzs5A&)~{Q3!o%5vs+}JE+);l=Pm)A z4@9g5&?Ow5pIXNZphKD3FZnGD*55`BMsT`Xk@*1hS!M)^CW`K9e`7xdCvyQ05nizL z(L#A+oy7n}!3a%IFt z^;8*?f*X=9UqZ-<;ixKxga8d0hk4hjYv`oz6|{hF zvz{z_G~e_%%qyCab-KvD`O+K3%cQ+nvlY|}6O!dtIMRfXRVyWC$mNMl5|$O@<<*j* zy_w4_dWv*y`d1}hm4|Ys&H7tQuGpX#VT;h^F)aMggKh&80ZaN>IbB0rDdU-E@U*g^7XC@XPj zlMK_JIyKVle!tOjYf5ES-hsgD3t&{izH0dV^;16dbUW=y6m+6H!mP=nbMzE_cnn}9 z<>Hzuc{&SGtE7Sf%C;zEZ_2PADg_kVf2}oPZk5!iZ(h$SSJ=>pJ%ZV!xL`Lri|B4> z_2_GZQPuu>)*`iDx|=r0ruCsT0B(gdQ(XKC8Yv;(MB7BL(XW$)mmJZsdqW(QdV|G# z^hogeEw$)ke!L9#A^Uff_obi39)|hO2hv&NPp@mp#r9!iLqzoD8R!Q;SqgC`|C^mI z*?cIh=-f_e0CyeJfD26zB{)P0Zrc;wvRyJ&Ob-TpW9MLY_U zHUp|l#V2eYX17NMsRf5k5%rmoUW%WnfEwi%y$&ge*zufmf=@3$gM{)<6(D%rEAmtc z<@dsHw+I-&e2`-)@md#{kzvA?P)$bEN3wO@*0!T!1>&pHUFCv4jyJ;p_6#*ZWWwUf zzW;Q*%R(9+4TIl$T8qj_kmb&_iBe3FiBh~}AT!^)+<|5L3~S6#R|5QaTYMkN2(&9) zRJm6SfGtXePpdFy*_I(U7TiX_9T&o3fPVOhFXrG%G%$@HHgB8zLFd{iaNdG2jbY#s zpies^VC&gb{j?&`GDJ&`{vp|a`{R9q1xeCl$knn5+dWi#5idi<>I%nqA`IqcZ1e`< zxU$K@EUXI_k;f|-DPVGGTO`7jhP*}osp6`KF3qjlW+JT8v!r&nLqfJJLr1J zvk*r`f!5c~_jgzF-bM>QKy_|c|I9Ot|gdA4-aU8v!Uo*V% zzJQXCU|Lkbqx6O1qJ@>EMGau<_yc4=S?6Ulf?oCg>y}56>(fOXG}(mUTX>#YM_H`L z*I^^IM0r{8RkmIsZ};$)MEQ>#$=d?P#4)$krZ;M>>Fgww2z(lOW-rxn7#09TH1O3F z4*y8I{#Uwh6oB-Xhw;=|H)92VK{d-FN?Z`oAo%Zexe`R!HX`pviJ=l*XgPrB#-Mb`ftt(uXOjpcul^=mCzyF)hQ-rIk< znm|TsUq~f*`pw!l^U7Jm0iEEarMLx+$yzUFLBl_UP=1xS)wuD~FI7Xg#5!0b%>OwtBT2zTdI?B%0?UmG0 zYfKsux?(^`v=w&QJh19M)mmX`XbMfMijTHRitg;ic#8=WqWd(e$^P-rMOjlLu+Yji*_(;(Z^+1ql+@FM=Il=h2cc$QdK#pEw(OQ#X7+i z6UB9o~ZY0fa19)}90k$s0o{wma)e#3vht+&G4uec{s$-=(1^r$m` zX{twv*0|I8oDlYu=r4rKZ2Xz?6zb9=W*vFH*}s#yX@Q{MR(J}}WEv1N8Dq}$3xA9_ z;`eA+dsd=tob}FR@NwWOyCxb26`>;p7Hh*hV(}_oM(TEZ9=}uG5TZyP61t8m004+z zS6DuU&sTXFKv#${)m&RP)TU(>r!#@Iv!a}B;6TQ@fK%X2Rb2`e@o0HFeL@y)wzpB^ZFIUqI^(9L-Ez(a_#FXb(35pud!~LKS4+ss;j2&S_{stm!fQ z5M{r!TliIL;D6O*dwT`D@zd2Bh^~_My?kw+l-; zlbLbuAx53&z_tu+F4+8=U~oF~5+2Ic5>XqPzcn^=U#<5bR}m3^hhAy`$;?y7tTSSH9Z{PnC>%3O7&-7kNh;K z@p}c{moX|pxMV^U$SMKw6{m4^pfybL<>OC95($=WNDemE=jPpzT+b-^yYx2uvCRPv zlEvN&K%1mM)_9EySy5weO|13hjsbJLwgIbWd);HK?DOdvEPK8ITOoUk55OGHpsmV= zu+ILodw57Vjcnb=#!lMZF&_J_$Z;)Ca_p_ER@-Q9b)gO-5oUTWqyLHjbwA&Y>$E4{ z3JM8z$w)QRa=i^(u?yH87xomNF>}5$-_|JX(0t4V5zYh{Oc8*F^6((89?;=p1MMX( zZ)`lo4iA!{-B2wH?1ud6)T}0W5vN)@ISu3<;*rZ!0E_KrW5u`T_a7P$KLBz<3`Qz% ziVb?WhV8=;f=5P{;Ask~ndxw4`&75Ih{bEab(AzA zmBY^wb@dw}<|N7_EuLEfr<0?60@L8v0RT(YhFhf1DbOk@O|CBhE>5Rhf1kh6=c0D8 zJJlPu#@h*>t~ap`L+Wcu{$&hL%tzf8Dqw7+1C|i>X^{ES3=i_6Hb`TBIBONe%HbWT zWXBFNJb=8nTR9Z~HyTC1_A)U;2Qc^+gb>j+NV*TBqcO(C+!ym3o4_XiWpjfrBFg_! zAo9nSw}OkMlv`NjHRXe)>ZI9wyc{6U<*(dmwwYc2Tm)eJjc>_0oot(-k>oymV`sgpyvGiEcC zG?!W0O7Ht7H~6RN@{n_`9W(#9b?jk2e52RNXsD=vR&KqCB{kXP%^JS*k#j&Rw^ILB z%hENqaU!md#P+`SNH^uTKoZetbhsi(#FPDg9*`>t?`5kAsM=y7mkwnr zfkL$|a(N8;I*qU>$;_Mt6Ari-fmcF#HF|NC(A(uGjnUpr!;}r=WnZrZjo8tf6VPE# zFsXx71kRlNbJ_$gqeo?JzsR<*d|rF@FpjVMtY6}~LVSE-tCWWDiW$pZ;RJ9{Zcx@~ z4c-@!;3)1~E2XWPITKIB2kIMYrE~{c#QloJz^{lYHEHbMZgaPqEwfNx2es_%b<(wM z#x&5GgIB}9-BdX?0nTD1B|+So$=s@Cfw!Jkui=34G*g6U|^{`Sb zqE!NH(j+Rzg3Cb&&p?hIE#Nq~()A_f3z|>&p!#HC1R{t)&&yis?*oz`k)Yxl6fV!d z=PUQPv7gy;huxfrf1zM>($Pltz4oLH__EJDqCe@%0e++nbdib%dY+>FJhiFTdlf>h z0l%i|(yU}%laiz|y6i1mQH5OyxPP_3&bBR^ErP+3u>3CesJoB6Pt9t*pY~(tqbgV+ z__n#A|Amj{6{7rm*GiOTGgvokzIaa#iJ|PXQjs4gFf!hM(z+~4aQGwvf+k_)!FHtH zlX-|JA=q&MSPg>mf@tCQECQoq$9)LV%xegBPCU0h{pP|4bV~S;yev2BQ4%+UKy_F! zmJ+i<&xw=~j9#@UvX=fWnJfcvLG=PTvfoZ|*JSV-k$`2 zgfYgzx~T>abEIJvYA}3c(@zkN0~$K?f|8)@PURDQ4KI3G_l|{f|4ur$(se z0x@@pfcTQdYu3mKP1V0eiB9$Sh;w9xYXOakJTV5Wfg_bG+oS~1KRcvel_DCKMKHtd zfn>+H$gpt?M!B&gn4$IOB*_UC`Xdkd5Zv1yE*yqy5d7tOYcL!NH9XQXE}_1bRtIY9kP^>o6;%>SjUgoWfnC%J7b;9#2@t-OtkiW=1-v+u7YL_su%S!r@ zYiKIQ5NKtjrR|~b@y46B3rpIFuFH^P)>dcsv1k~1oC0yYyjD-WFj+r|rRa2XMj^t$ z*E^h{+fpu3`aOZA~8lsr1e+>=UlcGTGc8@6hi z5sgZp)^KhS4oW<3ehosxLPe9P*0P^1y*V-D?{AuL%L%J%*&$83yU-h|x>Uq*NJcTyXOP<$!A%XS&#(_HbIzx?@^4Jr6+Dk5)8QzFCl4% zQ7SC6AWcDTRsvv)9C8{ZPJ~}X6Nwtr`M#dm(um(^3v(tg&AJKVR^6}sk(Wy+&t*{g z7)2Pd>B2Nf*N2ufEtqDXDBb4x(wNKH?yAAvh`DyX+_Y8(hvTNNuVN9Odm1;2px84T z39}=Kta>Z4Pp3IADhM9nQ;9`^zTW;Q5*SbGcjvD{BI1pBc&I=sG!Unx4+7w!KUOV| zM?8Ke!Yk^o5B9T}z>dPD;jXr491xDUZ69Y9@8lpqk0I&HdZHpV68L!;A*E`IHq5Qj zQEPvJ9aZBNx8e=$n<(`v14Sr1%`lP$A1h&B3Xv6X?H`911m!+*`Hz1ws3 zL{~^;Lx?z^gZZ2OHcPOPlt$oJZHAQK{&;n?sG0yv+>$N?l_I*x^`b& zCV}=0B$6j?t8WkDU~z{!0i+}w2m}c$&a9{1{e{2E={NZQq8Iv9|1&v}Dg94R zK=8l)r1nnsXHAn&=tlk17KJ7Xul=7SIEvP6h!)e;#w?o1pI126ViU>-;)tYeTWgrEp^xjc=`Q?YJO-)u#Bl=_YzE431K0czf~AQ83$8a_EtBEU zA>kPlmd1Ivc{s9fP+Fgbg zOeTR8mJR!4W-JpE8tnn?Y>K4l#n0`kH>WHsELg*0qU&}VPv%o1$u(70qHN^L`7tSm z25+Q6&(Crvhhc!_1X@NF!4e3uNCTz{WO)H(QO=EeuAalqjKa%nn|t_mZ0xmu(zI1p z2;(y4j>y#%ZldwQ(s-3Jsl#U1SN!6vlUH?XBAeCeCOzNQQppAdE;|{eYOB95(hz`)oCZAP*~h#CCRT41hap zN|4*a4dtKZ`N^Xzz^8tRqc>C4ku#T|>GD7!wY%E4DdqDU-2De;o5bKFu3@>SN4m># zGSm>ccqoR;DjzK3T|SrIo7-}%z|BG=h4UwXOOMa6ki(X-BZCpGWHvu(jYlpz0wU0v zI;SVE?t7yHv<`aNvy#a_AkgreVTxT&TwTvm} zO=lV5mbfRUX(Ss3@`bANjU4C10UFMatB@}L{Yz$gw)~6v*m8-{@E4NTBpQ+W>qVKu z`r@N+hscmO2Tx?upvpOij_&DhcmbGy7S9`t2f`BmZx8`w5}OFsMxb%zCj_|+ayCTz2=e~DHoC`KDu4G5%qedN6O+1+K&5*dp;e=# zkCNJpH3jqm(?H@J;TQrgLk~LH>l?Jpo4#(wY9FuZogX~UgEx%}U`dZ2H(I@<1}ZH> z*skv9#0vTObFLz2!a$0l0GaWC56f9+A2AWr>NP{GTFu!a(yX`gP}HGXb$ha zHFaL4#%U!JwUFb_a>{Z`4 z)q(0D^{`)&Ec@7VHbcVpdmpNMt(Rcc7^07z$T~#n=2Hw857Wip)0R>F;rv+3x6hNebi6zRWA zW7w3fWHDC8CPpdF!qUMbc8U~ay&9=}yc#KB<(8&9^R+vvszWfjoEbNcr-81}*)_g@ z)wr>Mjg;YvABLW@b`!2NqI=J$_|HnnK|K5G!{%u}Y|qkqpg>Vu>-?eKJ=gwfA9!NR zo4wz4K4slAS-hBbbMi`(7XUin;q3g9z2N!XrP~XVg4+jZ>_i^znqd0PIhr9?GNYHm zvX~Hc3iZj8-J6@_<9cV`^|=0+I=*Rxtjn=^RxFQV;2iXMFdl(({YEd3*Pr>4JWzMw zFvto|UTquuzJERo3blS+*3dV&IC47Cq#H+{_%x!7i|W~@T;B5guq@$DEdfWY!>SbI z`Ok_%-~VStL)_zU3GkBLhn)ViqA~8}L&k`4mS0qk>HUTFRGlwVmL*!xJ8?T-;D_iy zCI1&T{WmG4OiV2Q+n92#HTfT{yYE)tFkgTWkdc~CR8QME>O}$Nk8NIG(282O&>zZ{ zM6*SLUoZ2wxyc9WOOr)5aA7pbgu#6tU*>GLaT88SGJcuXJV?Vk<)rDx$A?S!Bs=;|EL8QVFDiZg-L28zzOVCbd(d=}42&-w zDx&;x-xq^X-^W}_oqm$g4MY(I+)(c);o`Fe0tjRpm<;vfX)-p&mdG-iWyPFd#LF`_ z`qTHbFH0ekvi(aUn!WQ&*>4Ux!mni=T(X2PLV?|6Qh~)cXG+O+>AA%zC)7m>?PcyU z#^6VvBbJ=FUghHLlu{MaU?$E0TI8ATaPQx9E^2gEJVmVSp=8nJw{vEpV@PceAnVVg zQj&St+sG<`z2wZZ!?$7?#L{QT(O(is-Vm$V6;VE8(_Z^1fHqz0v+1ovF5uXK`#L8c z5RM3v33kTid8#_=*K@8cy90Xx;RUxPKu3b>o!<)hR+rDv4z#j{RYo3?UX_Rq{qOWpNJB zx*>c31TX#sKb|8*01Vfvk($Cw=QkIVzS(BI$!eTul*%GpSv4@HDCaoG?36gIS9d=& zN`@S5?;&96m6Q-Lxqdtqnrk!BPPmcYTkzK@eO0`JNlIg4_G;<^iPg!53eKqi$RYGy z#`hrQt>$n!BV*Q4C*Lv}?r6WwNVj^<>>)Y!vSH4k)>J*tOT%Ka)Sf6Y6vdoG@$jUh zDbkR%$}Yo?cEhaxsBbh`8+N#KiZ^@PaAkatn+ua*#RGHGh;-6NDNOS_4|8*GXhwyj z3VvkVew&>Fldis7l>67DDf0gqaU{w||k=SVqa`S!?Esy)|nCcR~3t5huK$V>0I$#aw?op+(CT?7}bf zBg@|a6d}v9iNm4L)XeNr{h_ix{h_pR z^8Yqu{4N1eeK7--BXMjso5Rfll`-V47~28l`)!$3wV7-&zb~*8JFsjRgWG@r|6#AV z=!(9jI@M^3uiXPfy~-#X7jUk%33N+{fp zMv*yTa=$Z&cj^d)Uo?kh35DcYBqjQ$m*Bw@Rb6amBVCmHw=+$ zgu}XtMAf1oO#n=>?xKHKc3*+%91!)kWYK)H*$<Kwx1F%xBX+--oO2WlkGCf5xFxN+$X_her7IpjQW@PlWNC0Ul z>i=Wx9l|sXwr$zKfI9;QXr7zJCVN~!0C=V@7G7K3EpGZq z1{sx)i|^p48CjMZ9Z7wNyR?q{ca7DTTqD`-y*HX?`*>eOh1b9dWEVGoq$4E2oPtcw zHmSw)ugOKn&A3SXU8`FZY0Vv3KGe}%?*?w{k!w{qd@%gh&12q^2IkpUSloTXW;b|g z!@jUnq!DLJ)un!+UopQfh)ytBG?&&;Hlj-i42NlP7u1b5P+hicy*0?q%V1b0elFf1 ze5)M8^mQOcrMNT*eBF3=SN)w(d4sFWwSJ1`vB!n#<(lsqzHQ3yyMn>l5$j;H_9b-M z5ZTxfl-=*o=Bv4n(xv=8kA~dhc|LK1DzgWB$h3q&B3l75X9VJ^t8(nfHU%s&XL{k) z9aGg?sMip-J`Mc0ju2P2Xjpm&|Q?Tm!Lt^Y1SLn^ewDNV0i zXT3ORJ;^2^5zpvy&TXvQM;oHqu*!a_^<%Qn*CTD+fzpzmax{qy&6QGweCJ_{fE+2_ z%nRDc1#hK03LEP+MgA>##dlqUVeES+-2%d2{PD5Cs6vOz0$EXPrQBAf(T38Dq%_76 zVL?{bWb0s>o$=wl9Ow?))=*c)_gF1Y=D>vOqZ|5Y_>)2*1rR{FO1yMfq*ruD(E{N~nS5&>7(Xpvbw1Nm8 zKMyS_$;$OwnR&(vJ^rCSPPNC$@i)8eHpQWc!XUsr{j(T2aA5FpjA%f9zLgf?q;?D? zVN`bgs;Hc+HZEsJDBt)?Q#80a#~NAsf-O(j5ce$J>%qO!xvKA^&(1PUW+@me@-6u= zs%sh=aP8li_wW1dT?M)*sQ(~>n3(?y|DTbK{r?(H)0F%dZGiSKi0I7xp9H!-Y7xZA zAFsG85GaF;q4f%OKZ-ChO2qiO@zHK}0IcV%6K}zt&ODjGx*K=hIn|OSa27qN;tuTtasGb-XH(cO6{`It@d864HqJo zF<<77D)YW)C7UqL-5%ixko?qEihm<}8o7{-c2GI56rf_#xGHl^q(nv`jTBLmK{nff z_sv4*R)fB;eLaiZB1r|+!4TdnLZRv2 z4FV}e@?Suc&3U-8B`t?hc_L9=8zIQ^)7h5|6MbVDbBs%>GVLOBV*a#Hr>$d>obgeg zWK=Qg9&?v1H-R#xV_Dr3#8(XZa7+s};80dqV<*skO`v}~smlxnqP4{5Q1F^2iY-CQ*tfotPP(Q`cqYhK{ng{bHg_Dbm z^L*9%V?tZ63HJB>c$!HBuSb}$?}1*R0z!D`Ga>2&%4;3S^i)walg|i~q1=yu2ENN2 z<{2A$43!=jkn3InAH4PWDip}wg37p!Jw{5gB3JUMJJpWTig2-}TKub?JsD-Smis3? zbJT;&IoRVEA}#$oc-@^;jUNWY`k?WJt=pSGdt%z*APq+E$+$$k#*recIvd@Km5~9O zlb7?42-47%Mn0d{64N8$sBekq+lb=jXATE&{nP{D0;4N)W#MuVugL;Z<^J+5yk`Mw zO2atG7ez|8wV86rCA2yB%Z;LCGAe%wY*bBp&l;%~hdNU~hW#=(i{ZHR5^Av53=+)L zi5iM^jPC%`NHs}iDi_9gSSUUI8()?w5=n^L6LUpwZOanbD^&gCvc?gqApa0 zj6g1UOyV_~%0sh|%0ohMCh`4~d&TC%Ygn!VE~6su{WGUEuQ&31_I(F5Ewc;lXWX`DXK{GnSdv(9{~{;==e&U48fZ; zu$>V2_#^?r+RRi@eHQGnF6vmC6AFJOry^G}XCMIzig7GS134NX_V8zQUhY7G()INA zQSiV#Q*m{HGd9f89uE;;=fHg9(t_tHqR8T}Bp&0Q?4W!e$435nk#rQ^Xpi@Bk7LQ| z;T@(skFUDrw@%riY%|~f`D;DW+?jLs*$`S-4lO@A%5!t?;$6`m#^%tFTI2(N0S5}A zF56x*B$^q=D;V#%J>Z%F?;Ja}>VFn21RgFp$VuR#1lA$OyyWHb?~=HE{o)F)aeD$k z@PJNgsJyN18dN>Dvr`4}9SbhrI4Yy_Kxk)OJ!M!nzE~7*jlYl8#a!rTpXNVs_TUa= zof^+wvnqmqoQ*DZiR}{Lq6QW+r(R1hl(@eqPQ1iPCVlU~#h{5XOM?gAG@O2zqDGFg zwDesV7wE=_H9CDatD9a3p=0WMFZVsHXp4@Fr3QLYL@Wp`W^AYRQh<&Tt0ft%YD0y> z3URhrI4*D|?d%eSoOIh$HDg*^nRsgWoZ%1`^YtzaD^v2fUiU9$l@HoTHG+}z><)!GI+ziKFS=$p6}Q!&J*?P}{a zI!EV?L9B>A;JtHD%Z11EV~mWGN!^9teKa=xFIbU!aVG}@vzt<`em zKJ}6b{X?5~J&?Uo;%-ImkB8=8I3yr`hRxkpU#~B5MN?I7r~LL@gSXMljGdkMq#%^l zVu^}q)NGxZ(Z2AtbxoUv+JDyzz2Sb`o)){lVFUmKl*~D>!+Qxi&&Ff9KLRLC{*mad zBuGP&tVcVD`_(g`!odla63CPJ+M&n;f~mXki2%G2EH%`|$WpV3-$lz)rv{~aYy}5E zwKU=m^$SBsfJ9?l{v(OcCCBYh4vDf62v@X1k*hMopTvo0MdVSqi1auCQ=;STgO6QI z3qH!h@KOCjq$GVlYlpxi;>K=)HXT>e!b*p*&By_$sy*Ly3SW8Rho@oQ2}idY-svBZkMm!}f)SpQPD)(Y zrw8E%@xRW+awJFD7g>I6#L1qW`i>6zT4Vhk8Z7$7lQzSd#DVWL8I_q ze&t!G$}XB*b<0LtyhRW-{@NCW|00c+XN7(-JwBd%(isnGj*R&dm_1H(W-c z3`7y?R8#BpXPG#3xsKvso4;7ore%&4n(nz2fVl9oFlc=q9cM_3fPg9{P>(% zX`h<-V!mm8zui!scL+M#5CN$$Oua9Qn+9Amdi_$U1Zpzuj{wy}kXBaaqa&uFMU17` zEBv-B6WJ5<;vH6eIvklPs8cf=D1E;P1s|0A)#-yHx3=U){ff#%j7V<^h@&0-jnRFp z?@C*aKNkvv5iUevA>;&dF@?{jP(|DipawksEM&IlO#{zA=dxwJo?`29Ly_SEg$alC)2*75K?WV;PWZ|z!pXrY=8(;riTaRohy zZWzoG4~-PSW(6li7D-`bli+_pQhy9B$ao6*x=`iD+%PpGvIu6rRbA4;!angfuhnl( z5LFAla4c)O02^Fig>S=46L{xcxV=5p18kR$eSxArsIv6yHC?VLqN`;D3nK-y9U0Hu zUA$hEt-%sP2Wv4Cw~2^D!elgq4SJDSl&4!5tFR?IR$84nQ84qE;MOJBX@tiy^QWw} zc`L5jMQ_@yQ^zzACvfS?Qc1^KX??w4mn!{C~f~)H#%NMgwZEN(m&{M2h-C!`}#^DMNZW$04aKy^#tt4dif=Hn7jA?Cp znAv~ zltkAdtSQ0pPcjjK8w~f5CxJ)%97=G&Z%E|0D^AR0C8sgJbv(4C8im-*+TDU>)bM`= zHLe%Y0??mkO8AAwJ{+;`bGA!$Iiel&(baH)&D2n8EAA}?zVfzfwDzwg@Q8B{lv31eED zC&T?I3M&m&_Guo@O$o-fz1{iWF-P2Ps7Ac@(S8}euuE06w1agPmWYsB@fN8cW2#xf z&k$u|_ki0S8%Q{GRkI7&`PdFNy5HvIA7nO@v?&M^>N%7`-Ps*oatcFS<)BkjPdsXb}gc!bdZ^oTqpkD1X_Yg8l#IM^$VZr?SNyTl742 zeJ>W-8Gh;J2vfzGMa%zq?3`ka63XF@0tBTF26C`~H19Zlh3`m1`-X4JV)pIy2!~wl z1F?!ZNeaUhipgp;i2w<%hrT|~7szG_6aW7pNm%|X7!5Ng z$Nz4s$6a^a9KYMv8xSY5ie+RsopMb{zPDvdDHBPNN=bnX$CE7gCrS%zp-cJZdRb?lpT&hXD(3z3fO?XVXVrY1jAIA)_m2lRVsq)ga zUKS$Fi>xG;P0?GgY_404U}uu6K>z4)qa~RewFNDTG=<&nkBy!(l`5!KyXG4~oeqto zLWJ1fu#`$6+ltv64r;`w%Ih^6Ce;{a0$KTEK_F3VCwb_0URR}C8k50+FqfQ`l&hbg znjSYZBisPv^y|-iUj$&K1eZDT`@EvQE|&z5RTJ-ZEECX^D`tTD1c4$;Iqp7dsoAxB$S$vjly zH)WUumi{xCfV+kw*QD;w85BFUCh}kc$wJ_q9mpx;oVEc^Q_l_yDJ}j+qj#!j2m{Ki zqYy2j2^-mzmeO#U6h1Uv-0EkC?5iusW6GmBjeO;ztNZlA@Gl1sHXh@m*>saE5S31Z zHSMwbna=Ky8@LgfQlYtg&-Q-l8(e$C+95oEROaE(6Lf7o6_N{B5XC}w37SX>+};6F zZcm3*S`V%42XXRC{W@t#y3h;e`SgvZRNsl|5%*3VpkHrm$e`}z4PA{E(Rsr&^l5!S z6B$~eFOD=Qtg8g7aRwY~nC^cO)*}j2AY22w)5y)keeH{QK$Ks)e(W(^HOC|>nfR>z z;N5{wK%U%SmeT4=V~FF^2CMb!qXTT7a+}#Egsip=K^7`DSLbFeOE`P%=pn0r`!vI3 z_Rd$doBkaE>sHA^Hs?jFz{PuJv)7HZap2@I{z+oR1QEera@qO4o)AHhqwLBY+9N>o z8Wb&8!mz);VJ@hPWrybG{@J%06-h1iRuCR|QV2-MWD5FRDSVNo-Ou=?JLp2!K&%uZb-iRd3TP(*e8za0;QiRrOVQ z)X(?G=`^I>#vMM2Ap83K;ob1&myuHZ;?DY?@0^*_TuK)Vdj+h72zrBxzW|Gd47yQI z`&rd#1JW&OI$SsQYRs`HB*!Eao&@J(2fbc@f%J_s0Q2(Vq2zIXX!*arjcIoAu?e`f z3wL(41~D$Ww8+gtRrOW^Bw+`U0rMfi_a6yjP-p9HbP385LM0%r321|6b1nS%@SRO> zj!PguXbRh1BK#vb{2Gv>$}r(X7Qew&%q%Wt4W_D|p03_F+2mX)W+rQIX7KDS@7*mn zEBam%`0%42&w+};=f}j~iHexDFQ|0A4^7L+eqJv3`4A#za*4F$2QnDRmnk=tpS;;r zcsEL~VJXIiO~XY3dGK|<(kb2F$b?gp^t)AqWoT=m=>K$BNaU_p{FJ`PHU!O~9@+3!zuJYt{8 z(H#VIF(e=*l*Y*@F^&}Z0YPA7VdgApxe-!A-{3d)zILXqC;_gDn{G%UNSAH&k4-7+ zsh&XA*v{`R3+wF~noLV7nbc&Mf1w0{rSy2G$)BQCakkP4QI$1Utpzxqmz~dfp&5F) zhGkrpSvi~fBd$C2aTs4UdAolB@>u5{!aq@EbJ0mWUlWV_jML>Mb9WK=4>oX}<^2m* z0F0$Y@6Ru?s+V1lu2Fvd)HilGQ=pYToh+!(e6R1ug20;G*eNE&Q}&1L5go$nlDw1^jMz_VtjtkVzz7k8G>siEG6!2 zH4#ib!{FYZsL*Gi2W1Z)22Df>dEE@9E^mTb5ri_~V0Atx7l{j8a}9&+YBc+~HO5f# zD$R|kdOAmAm3GFf&oiP4vNUItTtF3ygtP)*)uD$*mC9Lr7gkyuV)mZLv$ra> zdwwV;>Q3_Zt4;CLx0|)zF0GN4Z)iD3NZmC|dN;sMm|2x_9_XWVY*yAX7l~QTBz{CA zEEP(kKU)eMv+lAIG;3n5UZ0ja9$G2K41=QdS}Yl9s9p9{ZLS)~x+&wrBz00s*&OZ? za<)(i->L_T=%f0*(2GR9O-f#C#*SzO-u1~6!o}x+ex5zm(a{%~(^r}*=VY(*NEw%E z)ew}Vg|vAW35Bm`kl6iTy-IW6h&jv6EeCB&Ab8dH(qX|l$<;I1;EO4cVmM4)&taj4 z#3E*)m!(1ckL4c@-9yp(3jp3Is7=hFc~|@-2}HD34s+LrYA4H`<01RVeQ9k0xEA9C z%;h7*fm_%W*~^ta`Ib7lwCeFFTdyO6^po&6jf{C#pVvPOB0`)HOd%%j+e{_PsdOn( zs2I*IDOt343`_3Ki>kK%(;X;(yW?>&ul&M@P{+-&urG-V(#ObmqV5jmyX$KxlaPLK zj&)^{^+*o#r0(;nPU*)7U6^ez!d&E*xd$7YGC2GCk1l{t5;dadH!sKThgUUHJwRki zx8kDK(H_cnSkRiI6ikpqI*YRQETd~f4Y_4WKeDGv|7f7|^yxU0Q1FL!C~dHF_v%eA zq+@k5ro*)zs;kqrrM-42tUNHxy^-Qi&_Nvy9zh7c+jP@i-v$mWreYXH+UTzc8MBqL zCiWk2d(cPJ{~*y=|0~ysiS_>;gOH9pWJBql`=7bT4edM9$gVQ@cra)TuQiT-kUIk7 zELT_(X|bu?+|m4>57h*;r}|6RxknigKv<|~B$X<9Rj+6LE@{&?O~x08m0zD$_s1rp z(2TiII@-B)Lyp1#beU%<2YCcW(}?M_Rx|r@Lr2u9cIkYn`AS(SBQ84))o03luWz`h z@h1+d5(fTZN928>vlF$_3Zr!4n0n;+;-uH^5##YZq=%S10@34+cNz z5RGuCOCcrGG#V)g0qWS_9zB4l9+hCa{uN68?84dMK5;1vldRIxGQfn`zuvl!>NB&T z6C(JB&u}%)9HeU)FE@TLn>oMA)M+vTZNo={a2nJb{a9QXuN;MCwK);MY}1wq2zc_X zGwPux=QK<%rmA;l|Mg3fDzH}7QYd&_ zvrvV%hgEhzLC=W)HbpIqo)oxRPEkT)^jN}o%T@?^#sXY^VFSP+!t9nhs4S(Q7f_;Z z1^%J3XKd0ypY6dLjU@wKpi!R^j)WplnD|SwEtX@j5AVK3(9O)^B**hC8_|}gi2R@LqLxjgxwp77X(na-Ua<`nx2fb;Z|UIr`^pezDTj)MRK`SD zMLPt%GTc-T9(~wF`L{@e{Uc%INphO*k#b>bheYAcWVa_`oVJz@n=KpBFBvt~Mn`A* zY_~IWJs>LtVuJ`#33o4iVoDMz)4n9Sc!nDdtj4Z(dK|>iU&LsGGkf~0Prf(2q*0Nh zUwp&*WK~JviiZ5xh1i!6e&?44tGJ)1W7tp=AKlZW981=-C?G_a&zf{mvTD zpk&E2;Jz&TpKM<;IF#vx<>{ruo3G@aYKdY5SpxtcTM#Egq|@jqMT|s;#+_JD42sAq zeH31!ECd`%cPh23`>_v0_*hy2-c)ZOHN0vb637cIpfx&DX>X}iBGtGxaWNnB0x8s# zn5OtjaMM|)+rde2%#Sx@CALx$P&yglO1Gm~+NQ1nJKda#Stw}{@~-vttKucRLeDUH ztat7~9F!qq9SNC`vjiV+idfUkT0jO2+X^XGKE%QEs~g-0Teu*QTRM-$36;~0d0B+w7G+Mr0vxgGvIi05~WXRKpk?DQp-qVeLwMO zW!+CZoT~?&;-$YWOg`Q2$D`|MUIjI}#~Rn7(SQd@lXnPIUfYivxauoT2AcWM>-D5> zkkxCmp3YrI6lU|Uf7dZAsA&%VgK5IF__0yJR__i3nD5jzHituyrq&hdC&)4=FipEt z81oFz(9=OvvLH*o*90ryE)hFZ)cFsjq`~gRnO*_XJsTVzqBw$*KI^i^$|IA0CXG_y z^oYHN{ZLSxWRTidKxw`_Jvh-i^OG0@b1P90{;EQ`0KNnN)PWTAp?wq%-)EO~)2@pr zGmkr)(9?3m`kAHHL?{E(sFoEK>1OEA6cK2beRBP!K#Dx)7XrPVb~aa`0O62)$7XlRZ)=KRF4mt6LNtEe5;xEKSwe zmA`Nu^6(3_1zE92{(g8{|>Qi8215V?e)p($|Id~yB-;((FiGlmgC3BUEy#t z0_jh2VbI7Bk2h13Qxiq`Xzw|}PW&c5X|~~->)12acJWltc%axdGPS3W^%_?LWdi$D zR;NQHN=F{)`fMCKoGM)i-PKaP&eN5A_ozo{<>Jepekh}T4$ZY|>@hZPq6Y0Z98?(! zCP?R#Z|3jGpWi)UlAQe-knMZDYu5bj{_*v25t17;Ea{36SyYL?)p!A^?aCquFiOLR zzpIm0F{r=aJF^4Xt8hYU%cp%L_YQ@*y`XF9Dv2QLjB30NEh9J1G-Y=q0~Awso(AVZ zrm0ufTQ7MdVA|&ar)mF*vagWXkglfNxi`oprpqhb92hWh11HvjdTK+qRk_AcXWghR z!U~|4tL`WIwOSmkaFvEX+1)b?B?>*uE}t^A6X$kq!(Y+($BbLd8Ole8k_COKD)qu1 z{}2TwE|HDgy^%7Lec`w73yJ5vH)m#RTB)$QK$$NxcB=HE>p+;E-GlA-#_6Wv!jUc{ zUb=4t9Mh(yPA=PMZ16?$0gIR@|7wV6dLJ4_1qeiwfjSKxOB6b?#W=X*+?dg{y7AWY zuW5*=!2w`IJyCZv&Gwy=(|XPjI_}!3v9?(vt`)W-X)2zvuU_e5aY_vGZYxEjHqI1O z_o?Kbl}o|-N1aBp&LE;RF8XzG@#SZ!{Wge!&Swf4o}JBW8lD`Stn&k-n>K98($I?!_k<(%59uI_N)k1-?=MGsJn_w^* z54)&!Q>N29qKG(PK-knMQAK#MB~T(}P?rSsmFA2zR5xEFZN_hUOMJ{g%%t?Y@Yu(; z=pMu$<(Pv)`o#wY_e>Icb;`-;@oC24#DT;c%$sjSzZbFW{~(Fj|0_wv@PE5j|DYHD zuOvzU(S*zMJc=Iz;U0kCB*ixlI_E9lZWLG7VA8yoLB#pmRT>G~A(+a^AR50Oh?l^K zI#QEQ{S38v#%+D`UF63`zl~yx`w%=VyJ7!n_xYb72zJVp1S$5mE_k&>sa#t_N=oVF zlV^j6*sX2!u8&T-pr5Vp+Y_c$w<8bM2yTM=x zwx@kNzQ>8P(?}1Uc6;Z(GS)|>_(~jLvh3Sm;bk(QMO)6s{~CQ`1!o)E^n+LI>kLD4 z8UwE$CE0A9K6_Z+Lw-Crm>bAR?QjQj?Pb5#PLw8>LcdhOi`KVyNc=8Ak{!!oS(eePlNcQEalZ+DwIsw zzpUUEHJvV|Ea9RX?h05NDXUh&$E?;~rSaq5~d>E{1GEbQ3RKnbNd4X~#e< zUF>F=P8dJmPz@U3qm5D*YjUTz*h~v)J@4%`Ad}V;a;aiPcHl-WLm1;_`I=^iZN~6` zS@!}j3aT%WOh-Ouq;XVx!`+kizfd?T55XV9?VI*F* zUnF|Dwtu8NV+-@<%rsoXS%L{oz-qFBM2Z#mx24yK)iOM+P{?JcM$~U~oKo*-%m@l0 zw^_ZJ+315N!<^!sw8(1e1Fb)eT+P}EQt>aEeyj9vg||1IQKWP3L^y+;JOs|kG3$k! z71&~j)CE|By<YFdUR=#+@;^?l*q ztbajMI-m-KE|tC==GqrY85wuJY$+OZZnirYPQ?$&XAK;(Ed&B8c$3{0C-yCGN*@jG z=DU47Qxb%mKSgW;HC*^a5j?XBAMq(=pV%rkT6vXhe%>A)-v~&bA4P7AXB751MfndG zA9#f!%IOps%LIBx3)!uE@@S@!98BRqF;|pS{7h0|WOTnRCl9Q6s5#>vMuUAl-N#?sebX+O+4^;9J9XFMZaFyU7#NIuzmyA zXh+KHL6Bk|^um188P}%ubF_YssQlbV*kfNM#+=E_@8L+l<*k5hB7~)Pg3T($a@8!* z#CqR#X6+%V7O|4z&KAujTi4T}v z_15f`4g(CKUre0>&xDbiC~Dmv+WZRC9|gs9T#mOo*E;!^aGYeqz6ZIoHzNT_LGk?X z#5l#%dTIef_}0e-|8x2;;NC~3AkLJ!%Y*Trtjl2tyVGH^43MD+J&n>H2W$fX@#>Nh zgA>OPaV!c=jBRT`u+M4oe0f(OHWpALokj7bw0eB6g zyswEau&!0tQ`s1H=k(UzPX@F_jZ9_GY+>iM@sewwlobQJss>aCgn2obTtjv!iH zm>F8ugIP|jmOxmNEmh!NTRIAPj+U? zTa0FDp1SD|F5T2iE-x9Bs|z8xtV&3dj~gGM`LkavowbP?kn8v8;B8`*9z|UCxYdz$ zg7LJVr3tgX#;ZqvDa-*%WoBtyIvk0Jj@;aiaum9Qw)d%iBjW+ZLkOYpIh>FG>wL6; zFefwna|Cz59M?ydecH!C*WYougUSC&$tKiQ^YU>ogBKtpGk1rfpI3E@p^4Q!0%m2b z&jaA$u1;{rzEGZTt{ck>)0E2>dp^xqWlZT=0fw;3FHJ3L@Y%Xw%#IaT!f2d`L_unK8NuM!*}LUgkBu<0 zc_0`%*csu@x@DuA7-7tN2#Y9&VdLUzx*IKVStpE{V%r6Ly{~aJ^?pVGeI$T7s}`@2Jj577WnlPQrWbyvlL)m(tzc~s+kT+flUC0 ze;%G^Zcg4YQU3q3gM;C}Vr{W7{ck5`S$)Fxf(>o^l)5?DKYX9Zc@;=DfG+AXx62-d zR30%F&)wYu>1fxBQv!q3(~}Lw*+8POe2P0~NLX+0l5%K0Ps6LHx2L@mnT9!B(zbDP zEZRO4i!s9x&S0o%Gwf1}FJmdr?cuHZ{l(-?_tWWP6?~SV@HT0EP}7p|Ur+H4-w+*H zVkYHw>MPm{hd8s$w)2{JDFL*&e0}mtR%YdQg+2i*U==q`vT_TD;g$f9}VgSNbpa zT?X-FHzifr`tS#rlx8tB#pWE%Fv^B3n8{_0D#A^4hm%Q5B(iRwf0tA9Aef<$n`tVa zOd72px6Q&GOk{JhIM}Cp{8onSC@iU|9%daiM1Y|-LQrhIqT*~q=$v$6f}vh;iqf=K zw(R}(UQ=72-)q=gp+ryb_Zq6@zj%CAF7Sza0HEmyIWfo2?IAGUTP1neIvZ+cmZEU2 zS+Cua6kaI^j{K@yR|%5apNrCEclL?c6$5;(ia;SBbaRom8kv-jIi4jboQQF?Rrk7z z793!>{_gzIgEM9tjWtG~)zBT(1vjlnRZjY6sgh{Pg^zV3l*$pPEylB>I@Qe z1$IWiHe{RV#6z9ofRclOb-|}>lr~8>c8o+sd(3uY-hRW1n5?$Vv_8jT;-eO_@=av@ ztw6Fx^TxTR$|Na$)y0!+zxv~PPP@9tmq1nb#{`JGtRII3!fWv))e@Z?=O`4{c?o!R zN5+4v&>xHD)prFk7G8gpWm>!TW&kWq)1&G_|Jy?oDWNZ9eo_yTTZqBMY}NC@swU0l zfn^+)70aR$fjC{(ZAtc)8H`1a2Y^5#Bbr@w{7(0bV*ZAvJBUpDg|o^s7C*!1+Rw;p z{nxlfN&iS~v-=M`bzU9WCGr&SPN{I&i8`lm@){qz24Tf?n;xQylWOEz5ps(o+YwCX zWxQsnyqg8*43`+Rn7CNF&D@og++uQKkOCwvgp19jKg1fswHeTUUTYZ@|3!iBb1(s% z%zdQ_%JQ#{nSN~GyO|2-tmz`D7$Mwp9+)zt9;-o=mccM@bYKHF^rcN(G8sbB_w2Nt^7~jbvC(o=R+_e zh;`7^+@Ek1Xxc&&K92OgI8|aQ4rAwED<+;%>O)zn7nCA)yDiwPptOH=M=TfQ{>m{q z+b0%qjf_Wk^|YlVZ88)jtl^!Z6wA11%7P&5twn+&b@C6kGO?Tu^9k#{Bh!d;y?Wo(3MI|K>-73>xfarSbsTq-4SL4dMf;fL!Fu9znC&$ zVq*N?9T3}^(n*{D?DY?|Gbq&<{X`(WokgzLCdm@TiWz{{_+>yMMTAx4Qe+~z(!Zw6 zD@cI=G)_gb+8Sj9g8g}OXV7guw;*e^Tix;i{R;Fm@=&6*{2*gW| z?XT9`6NAzbK7Myiw5Rzj$c!}%oB8|U%JNAakKtGp&bXE`aGI!LJ1@5ZMfKGlCHkW~zL&d?(A4{GI{yk?1s%N(rk=oDIa`+KL`t;0cPHnUoF=Zku&eSIcL~^ExrGnR{z13b!XrqbmTq{$R z#Jvv;^9Kj%fVdwP$3P0L!eP3XKnWg3e8qh`_|Vee`H@@qn+gFINH-EYgq603K;_G- zgV;CDF)p${xJ4t$RyuBc^^*UN*~mM%m8HnN--;O&d`Xb=4;^}^2{%!qi^>EodQYHK2P12H@f8;4?t|}t4QyPArRkx zn9&4+S{^{U3Mf{2y3LW;xemuFT(@KrG863kZ)fenVBrtc(e7*ez}-ons(zVy{VR>I zdG}AikH0ZDlGdwN05!uQBossss-#Qs&(LgN0OQg!muQpOiDyulm*V5^Cn9Gu$X2M2 zYHYo@sU=NYChA(Eh%#MA+%6Xrv{l{NO2MO(;&->vXu63fl73qJwPZfEWNx?%1QV$7 zU$#e434wYX#H1-&-mq>AJ9P3?WHHab-tGoZA zc`m{D@Q+6tlPsHt5duk{tr0M*8`Fj4YERL5V;`zWvoDCG^K2ezB(6qKA`wY%Kw{W~ zLB=80PX|GM#DC?hldCaDt^T)(itdE;csvcpEhtKD{F4&suiXa@Tgx+?*Do#`?3`C z$D6zyX=Xre{z1@iY2;A3cDAiU^+i2=zLDDYo~X+eY1 z#zhpQ1-mWc;*nEs&R7hgNJ>YnZelmW8A7rZ!#!$Pxof4fapXxXw*o1vSxU2SBGhA+ zWtgIJie;5+n6lffg+uBbPh|&ZtZNW{x^+>7h?@tnA)QrOHaDVq}UEN(7~LVd;!jnF3zHW%}r~nwH}rqtU@~TcSU46^UgSJ8a=Kl>SyQK0&lXd0J#&Q?=zs>NF|rGoP_pyYq5e!YEW%d&`N4$bQ19hPS+=yL z(q0&gu|?x=iDXPAKG3HE&1j!Fb||gJPUmQ;W4sbW*~&e^GzZ9U&3f48HJ$tT_wDs( zXYDdhRIqw=zVXR%kWX$hCGZYfeMegT@hwyyx8DmJFRN;kIGMMj$tJ5lr^Y-bRxV%I zG~g~rHoV~Ks6pmh^=~R{x{QSI#v@Wp;&rYAs@2P<<~PaQ$TDYaTTO*1iVz$DWaLyKKJBH(^Qeox7KeE^GTbTL__-C{$5&{}%S( zEoZ~v!9zRqd+{9ppc&lP8{7!|&(y5ss{oxInXi48_8~p3Akq|tiZBat{&?c`@BE~| zAO2t$15?Lu#^-)83Px2{^Ae8rRHOsP#q--=Su{LC6#BombvA~EDm7XOslm1x_lwXn z=WoBwn?wz22={(wd2ot>?$-0o(_zG`FCHxJvgW(h{|d%BT5RXx&G7kkdMQZ0fo_C8 zEG;I{{^K#>JG+VAt#nXRiG=0-+9n31h{okoa zBN`WWN3F;|zJ4Phf(jM4Ob5cn$?`UTwEzBs4;&n6;eagfmaYp~l-f*r_O3nrAMA-# zp>fS22;KX>?Z~PcroV<%ivWIm%^fV>%447cW(Ibvr&^d@0ljP8ADP zRhubN8o9SA{}1#;$3~5?=;DHZLskXv3ejZqOBqkgE84I3{h>>nA>m;;vx#TU;^Jm& zFdMWTpm8k0XQG|1V!t}i{IfQ{#(b^V#DEQ@6#6yZBnx_%So*(D(j zO}1!YwvPG$Cp*qV>javYvGfDZUBinumR?nUcEDp9JLOF}?O&`nlBTCj*6ldcVQN99 zW|hD|+1*%sZQZTP6Stu*rqj)aT;CXa$EcdHJ(wv`IA=R6Vxr*I+|`l8*pE6BjP=TG z2I^GmKBxiF{c5D;MQgdafDf*to07|#Ei4EeClT9D_hJ&_)ZP@;5sssIwneh%pv1O+ zg^fDu&jOHE*>UpP#AClQYp>KYR)Q^6W@FE5VbE|ksv--Wx;a!9#bj~wQ?uRk1)p>? zau4_@IeiOKd80gGYGk?pOub^~9dk@!u0U_78GuZLYoAR=ew$*N?Z;vY@l6eQ0P`(P zhj@ZqjN2c|BcRX4*uGm0Fo=b@b;bgM9R#9*yR^;vJxcG+3yD6VyJ2^DZ-SXMe%%vT zN;0~3j~{x>Nry2Iz&bFJ zNuqr_%vnM5=Oco|LAsCBX1y&JVY_tx@4^}EM$LA%dE71&N9?9rc5m`>=Hp0lQ-8mm z)RA!I8SpoxZCU-sl%yFA;~Ny*rYSbGV`-ycZW~x|Y&AFlrV!bk$nzP)695H-Xs(%fxhv(t#hNux`=nt4c(wp4MQ#YO!64kjTIaSf2d z5hlxJCU&myyRXkCRZxkHW(IOfY>2p14&u6Y--6*Ej5`a^8Oe;aw`&0kjJWS@Qx(OT z>NKRxq_8f%2W4B>G(WG|8ANjl^!$5EITe|n(D2kNmKPKs3vBF}^5DUhCzq`fa^Ri6`iPeslcDsfC&k2F~`RKw8Fm1v5TB~T=kWGnM zN%?8@I9&E_boE+I4{w=#PRW;;*|S9aS&$Mj-XmRHA<@8bc1eV%t>UMg!{20=jQS-81B5kn(_;ny#9gC=w#Va~WX4GHy{ES{tzR&NzvS9H8 zW_rl=^ayQiZidiAg>y{7jwd{G$)i*lzQSMc9}|Ay2;HHfxFrkgIJTQtD1kyVciF*Y z$1wZygwnqh1}1Plp!hGnX`NO)DsN4&fZ|`#l*>lqOnXe@$Fg+kt3`QA zn!+A)Q%LodDt60-U&lKqH?NDB2DL?k$C;0Lo~TGqhRe7F zg&+KX82g4G!J=);v~AnAS!vt0ZQHhOv(mP0+qSc-BYNQEYn!=K?OK^0X6jz5s~uRl>L*v zst^|u9i0ZS4RVhN-jse5W!J|#5!ub%mOP|(U53Z(mZa&E%LPfNo?697-p(Hgl*ZhH z67MKppB40+4=rcRY}4Cuk_y?TNL7Y*SKV~~XBjr*adTzMZSN~Z$JR^&63N}f=3CUJ zl@!bLgLnM0`j_1mV0YW4oujLc zbJL_^zwk>Y5FeufYBYVSkM$OEm{;2J3zh>@t&WdDKo0Xv_|5zC-!x}?S$3- z1P_A3{Jfn+JJcVMCQ5J8NQb7aP9pRcZP+meX7!Yypq>H4W36tOiMNJUu9c>@>`I%n zNtKrD2^ox*7d>-3axJC)1O%GL;?|{?fv{y9V)i_!nEK_C;o}vTIAr8>RG7g)aCGp` z(f-yA=`Wp??m281Huf!qc4oV{}MZ^l0>jgDv6s$|nR*&g^(JFVMgfXC9sN2ZD` zCQG%I-o$Ha-ft~6CG?d9_TV@hp0xSAts>}KKRiImfgxw zsn7EKhR_g$7fl@Pl$8@RSsoeA+mC?IFYsoJVnEK3{Tpdb9&{YY<2+gTLMy~B1d-P* zy%*=!M8}F{PPkW(3d)2+n6vJA6h@O=#Hu9B(*D~4EOeJM64clwAvUkBj=Rjp_q>Z{ ze*d&W?!;(WRiuQ}Dq{WGD88Mo*g=>$2zbt3`PKH#3270Xc+u0h(T@0{L;dcae%i%J z@UH=S{IDC-rq{DrvuD^Mb*9r58qO1`#o+l~heH{FMc>!p&1G}=6^eFw-<)>HU(ih0 z>u{YsJKCIR%LlL3%1Z3{7)-jYxNm*z0S?DuzKLS!LEYAzrFKvx)gYGaFC*PC zErHQwznuk*&<(Sv3}%{6^x81-!my#`^d)o-X>-lPacUQnD$C_;6=N9*Pm}BZB&Wz% zzp33F_j)&I3#uSqecGE@by#LfD5)_`o(oXqDQ%`Dl`Nj@FToC;wlT|m`1r19a!+=D zn?Du!>)x^yS2^|k&R>J#$0>;e7$K14xj&AE^S<7|{IM+ctoCQ&o9}*G(ZqDL3p0#Ef z7P`EYf$whDVp=FD`^;p@je_9_Nz;##eoqsC3G`YH?sHSS{Q-_h)HC=G6)O9Gr_0I8 z`9CR1no>@iYzY4ba`vU@jmShp*jF_<77H&68LDZr*}yXWOyndbk%|XPhrhYQK?g#~ z#^erH&fa$j>HtyO!(s5yV`dWd5Q%#(^}jL*0sM&7=-m@~bwPTjX7qXvSo-k}WP$6X zD3FDaa3m!Z5*iFy;C2I#kB#PR>)v?XIo}R!EAUi_1gt@rqL8Wt%|*7>w`q0ZOvuF& zkuvzP>Z`{SZu`}C|Cb=$0zHK@Zm(qW&Luf`Tr8VO6td_lJWpj)b5Yfq(*hM48M$aW zzfFQ&FR8XTfg)MpOzz}Oob;V>fPxmVPe2A)I7B~i1x19YBt77*p`yX-mSX*P;d!fN zkD;mzmI%f`7JsR`033;N~`IG7KFV#$FSoR8S-VD`pI!SuOPVmO*e zV$n<8iz)rcn4$As6Jco*0?qqykSp)9J;*<5NI7%pF)Fr$&XP@YI&iV>y5!j+;p(v>3nK@+Js z`6JZ079rJ8;6%US(HJzWqr`!M>#=9*nX@8FrlI;!M#18!*l(re{{q8x=5a|V2GV}8foeSkOAxk_--KlF2W>;_mcrz(I@ozhemYfZkImCxeX+UGrmEgSuk{{qt zL`PfhluyQxSQ8w#RGN#x-?Jg6sU4B@&<=;fDW3FV=Lz4nW|OvFykwhxQR8v|8zhizy7Ydf;?TC<@?!Ldm&r|5{xX6 zOSSqVQI44Xcw1ysrA;my72H*A*O#K_GAGA7UzDMbB;NeH*_#*c9ozq^?0-T$%Gc$P zP)n^s+e1ZFQ13RC`+Tz4D^Wn-L%?H0N%UME=tz6!FTJmDE^xGR;b_{mtcqx?1!rC7 zmSDI*Tr3)5_kA08{ep4m$!>%z-Fc_wX=C|KyGk>zjd$E>Aqz;mHn`{E17TmuuZ{2)u<(6!czrC`qTccj`BiS-XB_9wfGOQBokbaN+zywH{0a0z)9 zFeI6OUJ{3=?X3ASL$20id8(MUw@e+)2{0x?V)rT@pc%b%Ct-&OT~dY^e37u|cP7%= ztbHFrVCh`R_#A^!XMrDW&^IHt>nRm5&}ZVPDu(v#JVINp)KO7e^2a~3x1Q@GwD4QM zu9#T$T2zgQgea{Q7nNyEvaabOPn&HTM?pv-lPNuOGnE>sVlHT;^z09+Bn&pgh!3vx zPh*6lK95`=qg9jwlB}HlWo?|1B)3(tq~@GU!@E@k%7&A5vr_P3k%D~rfLg0vvPACX)|bbslom%5k{9Q*dQG%FB{EZ29f1Q7)qzm{!; z?xwiF=0C3CpEitE*tnT|eEeJc9L8tTk1H$zv>i`0@cc2)#z2As>3M(+yu8W&MvF2< zQg1DR^y6>G3v0jjW6h)I*0Iw(&#RAl)z@(S`h6SMO^jbI(FYSRkWV5L#&$f7JL6rq z2YH$cKI0vNp%CWVR`{?7omkjBD;>0CPQO`X@5B2KYRv3XC%&X(O@Zq5@2P7&Wp)=S zJc^FZywXdQK`2x8cbTzmL_aBr+V=u4h?FC?06RWSI^|OIEq}JIsY&h=su}S=vPx{dJl<4Q5)X@ zEfNE4dZMV{=OsnlK8{74b0JvzzL>ndiKGB4svuq7kYK!0rUJgHOF$MAZYnZ2BL!@I z%=f`S7t5TC$up2cACmuNLnjsgYpLpVSW;tPQOXeZ3h$~oa+I6S1EGOK98C(5f$~aX zYpZ`piZCT@wG%fzgzH;h=_-@~g6 zZ4NyU{i;_UczxKm<+u_@scWOwScc-gd(*m%`v6hBn;lKnRKHs8PMSt-O{!I%(=G4c zCXK35eJVU(#o5g4L=a$5$ZVuE8fD6PHm@9X>HtS62Bh?1@2H8>gx8hRg{sGD+6$=B z_Ej|Q>F}cy+1bx>$$nuqj*2h!%wg$>eR0=}Ss|8gg)(bP%Nkb7c!kz^zx+v;jtSP7 zC9MxlGaKE^nm#p@D5M)K8^61G9gl-gkLD-*l9yAB5oEm@JMnQFJCNvuv7IwT6UWDyrDGx?EC+p?oCh}sc$6DSS%*-ZrVU`jTQHrn`u??q*ZL0n$JR-iofh?hNL_51J(Gq!*yw1Jpd6Wwi0@-*Q?=O;Hi#L`oqk%id$61UKu*TIL1mGL4KR)x!z z=KU8=+9EKwaoE{kU|+rw=rbYm}G zGS_=kzHvhn8<6eyZio#G*&Jej-)mdrwTq=iC(d3;2u4R_|#7MwyT0x-l1x@5 zm1pGbCW_-;dekI9AgK;ObE23j9;=9TmVHw@!~Jif$;?$6%|Fii8#+%;F{tPNi`f)gxFmP5 zyL#lsN>=*)9^@qG>#4_*z6gox{(IkkAu$)@kj!m2S79Y9395U0H&SEYW7V9qVOE1Y zw)jP7<#a}^AAkvhRNFLy!#cHs3cLLVSuEb`6XPKxq*OE-W}eAYmFn~^9m1VhmX(IJ zG0~J|`O(vm%i4_;+B{#McBO_8GLL{7fHO6QTM@NWiIdwHcaHh&NujVKYo>AtVE_~3 zt?8Cld(IFC6x5TaV!^>Wpg-**SsUdf7v zxw#aDQ;gD>qU*EMkV7xK_f;^mgPNUXdzU+f<2aAQgbE`Pwl^D)g%BKI*~4n_yMe(C zRDufZ+Kr`wwPAB6r-<^&)%i-^Bl_f5WnG>&U`?qs&8{O5?A#sTZV(6@hV*bV8U+k_ zI;DTyp!r4$WiH^e`&yEyt(RE^24nkd3Ju>rkFbeNc}0bWxw@I+5K+Sbz0<8K|&0ZV{R)>Hrv40f!4bx$BW+7hUAb*(N3 zcYE|r*_jY5b*TcFwP`tkG}Wkq>}m-DZbKQ8!hJvmG1v!TkcLw#SmwKz5n0_8Icok6 zvF70}^Vjz)vWqWRnLq;n_+zt__lzHaGVb??ZG|T>?pQl|D~rCW0d}vP>o9ZS7R!)djuAN*c{2 zvYAG?ynF4EVV`;J5>k5!+Gtf-mOs6iwr+J(wg9~qIR;0WYx00q7SFzXUKZg#ZmMi3 z2vH)L7l0zN+sOEx;d1S@selhk)9*DC9E&=63< zZU{a8mjPF(fP~{^kz*h|(~;R7sev}h>OqvhfS~pO`i5B_`W0H)z5_1$KcIl=h>P}> zoNq%gV&$RX!~g7`r!}?g zHo1^||M_GVfh<*vM;11JI%_tYb*^oP<^Hp^Z-kGeCI2TMKAN~`8uj&>vmcK{IT_(4 z5&*`;DdfoUbuwU(M-p`@()i}X==*<7?X|Azx<|5h(P!y%dAw34MEV_bABTrc`<2E? z=+QJKQ&G+j47=Z$6KUeoG*9PyFKtz9T1}MxhSBLloppqBo+@nGcE0tZ|9U(AY|QFX zw(rdqEWoJgmSP^>IZ+~!h3LFLIQCk7v~XUTnuT#DiUbs0?*)hYux-uiM&PJXBo183 zG$fzK9*;DZFQF5e5TV9`s@A+P$`v_sbLUN^1E^@+Y{;CE1XdIi?`RoT2GLdp1Hxac zBb^S*fJUNXp=4E+dxpi(bZn1G)fRcGy*`Jf0~<7I<}&a?z-d~!nHU}68^foq1X`4A z`>SjY@kE)Ms!QIL--<^!5<*^-#(5yAtTK)nxcfus5LreP6xXsdrXkkKb{7wlis52? zEEkYRZsJR}9!WCgqDGOXNmC+KhBzQ${Hly_VJ;I&;I`4t7QsJv4DjKy($1@1!>Q^i z9UjVb2QDjd*e>?iR>iIfLg@;#qdvE`w%VvI!d;JHw1RxJMKPl`M0A9#_|ci&{YEMeW( zcXM%q{j!f&@~&VR;2nhVTbizHl@k z=5t=&pq1HG@v8rG6;X24@zEhT?K}kNmANit5wl38uU4Sw34+HZp4kvZN^xuF`WD33 zpwA=)J7J%bZSkH@@4R#KRP86)xqP#DF=)K@U5`EkW#*igrn8JKqWn4g;`RFmv`erV zzU?XT?OM?@p@#q;J?|4YzV zke3Hd)mLON%FiVk0(3&7Aant?uNg zBk-ke*SfE4#e{JvIab2@{2T26G%v!34BKo(?3Zy|J+?51VKAx(g72OO-jt}@wiURjDgSiet@21$cpSKYmvN-f25BNCyH8mpc$4?MJx~QhZ!1T9Vh)qb}?g!Nw15UgworvIsre_ceZ5}NHWG|E_F~@O2g&6cwQ(Y>oFm!Fl8khrq)`Vj z$R3hS3Ea9364uZKrz%*V?_E=KIuXM<*=p{3j2PHB@G&0BpB6zO30*9gYe**6e-L* zKFDvV2V!vwqzdmP3n3Ln?@d_lv|=jMn~D!tbQ4aWwxk63qdh^s3;~>n0%t5P&TT2j ztT(v0rxx>PrjR&fkixeI74*%7FA4Lm>>}Pm}PD?%r${O8{tElla@$JiU#e`i&;&dTQxs54nnb zy1cD=>;=F{#Xr1xj0n~gSfZI1A$Y7uyHbi0xw!Ijc{7U2ir=gW+au^F;d;NFU5zF* z5c>m43c6-_SLa3E`kZt3shDnM48=IVl;hBf{rUG=1v)lv!f9nF*fb(@sn9__l^dFN zd_z^}8n{^$#hO2HZzLKd&)BMe@Cs=z`zsbnc2jA&-E zZr+YE{za|rHPUZ+XV3O7=xRj9fL0)60RQ@MOuyHRMbaJn6qFA;2q-Y&1dsh^J1det z#lN_sLlF`xD8{!{KN%Xi_QRyrB)`6f2rRn)T7ZpsB*WGNn{FFkc|))-EvXrRcpcJO ztN@;Z{SC}oQX8lX359#DsYXx5gne0kC)3T8=5=N_@xxGmen$&BcA5GyN)(i_t7(Jx zVFg?EA#OaDj`3J#xy-#E3Itj$(lPMkNwaKZE4<8h#$KihQinL_rLvtIE}yhRQeW3IEmTLq6T|F*PQsJ5~)0~So%GPO(y zq}HvW;yO@BI6;Q5D>qIvvBWYQ>IL+~+_gW_FdVvc1kLAykV<*_W2lQjuAoHiK?xjp_FEquje{rBh&D~ZdBpy`n~OTk!kg({?T64=Gvxg8kl;bATb z1so{vAJpaf0P{R;8^Al0Lna*0%w)cq4*Ek zeo98s+r)g!Q%Cv7k4$M@d9q zF|YK>Zw0OaXk=Lt6ce4el}~R1^-kNhrg~^_FSN+Eh{-(ttyXTyTjcXHURpMAMoaAd zR^v5RP15dqR~X-=o1|a%%@ZN8SGzZ|*4`Ywl zOox~h++Omn`pN^zi@*#yH4ACe9||F41AYT6RuF#&kWBe`l*?I_qYH zXtowm`0*R~Rc3d=iz@XCAs)k>2s_TJzBwt5>p{|bOObl(==yt6^}r`Qn`+r~dh33; zvfpN%+nN5U255eGh7|19q> zJZo_NK%>5Z(!Xe!Mq*=cZa-Wf_!8`EnObWf#yOro?ClGsN;#y_kxzmt5 zB>8syanu+*e?ppVIc4dW=?BrisNNo{yZ*etom`S%W?drAnvMyfOGYG@SExbPKFIWT9Xj7*8v}N7Z z7Cujq4HnL<$dOI;#iR)|-k?CPjeoije1CON6E|$U9M_|ptoD<0zRh^JbC&xz7=W7^}&-`kGfrHz$kndI0hvrS1z z?l4b1*$W@EHaj@0px}G|Xm~mIR~U%p0I8S__SX^y%^P27pi-;*gyZiZ9d3apA$fLf zR4QJJL+Y{MJu%q9$f$FPZ$KX473w3$WNPRqpBop46Gf7&f*O#8jNhiWUv886bcVRU z+Z1PP(?sgF-IV${LcMv&;1!ePsn}hAVv^6BRIf*Sh@>P#Zx`UXQp0+DJSHUnCr36x`rb?Yz zDjRjNB5p@z@CmxdOVeS_lKx(~VLhBStC3G3?ZufxGIZy8QXP4KQPMv@pi_D@0ll^_ zLL~O{IW6P6MMri7HVh+LYxO_a1%IKs_c3VwFD+|Jb$-;jcA$A$|uN#0felxs;gzv zoN`V*wU;+;7kvG`rlRPEqBM9iGBrFV9k)yW z+UaeLPl~eZ_4qk`XgBbZ#R4HoD7#{C@rC;Dv2ua5UE>AM4I@b6JK`UXfZGAro88_H z2`%KD;<+|8He<$eIZObY7z2B=Of-dw7#!R?>eTIkl%?Lau-$o!-rd75wV&8jAjt__wDlJ~k zw^Zx9Ww?v5synEm})v1lLaKY*CJT&mt+sw>l+*r8FdB%98!=w zGH~$c0Fn=P`}6g%XA?}0d3$@o)`c-D7gV=9w+eoAN@&L0#WNOUOyDa;Zb!}s@! z%gn{X_0b0C#t!a>=lZI6AMp6hsTG!+QO0^Hx)2FeeYBaBBtAhD~u-VFK#qsz;0Sco^Ycxl*xTaf_ zqtl-j)3jHP9GD-ULD((-FQ&22Yk~(7R*epEx`rTk_^)HsSGZIc?6Ww$sR`zRHL6$H z&6h25B~s3^&i*||`s1YAP-DE9tRxE(ghV^bb=a|4k}+Q4?YtJsBeW_o8>M4mt+Xnf zo3?TjMRwkVy7KMMrq--X8LI^H2S#4i!8K)wGe63v&89aemYBFTV2Yx3)g9~E_c*sLHIvc8)-pwWHR z6S%7`YA188OWNTHnEZpRMjiUZrxkKlSo{F>e>%|l`$o9ZP&5(-kOElWei3tRiDp4H-3Rwzb*fN zuw!Ik`fmo5|Bn4HbHgkdyDR~O(A#%Zoc+CPUwRxZ(i-Jwd6gbkUU@zo5^QY(n~&R0 z>}*k4KzeKf7xi(pmagb~W;;`|$th50HaKTK4xLfA%P98S3VQ^QbcLI0C2$2G2q+vu z2!BAAm4?UV?*qa!GLJSX!`sb|BAy6Aa`{P0P(b5_weOD0%L_GCF?JV^EF3gEty2v7 z3x1k9-r((n2$5ibSA5u&VbdlV7FgX*g#0U!B!X=`AbVQT4hQwyP1RN$l~1Uw)%DeUI$lQGK5Y%B>E(E}QQ6T_LPj<_~} zco;ys>1RZ>lR3%*lKjvi?)SJ5%`xU9IZngxl_Fc5U*Jpv0^vLH6C0nD(Y#5LEuY)` zLuLdJzhmCi3DYLWOhzY0eR2q5!Uo)>sZc=K%i`o{`lvJ4v?CX4BM`>DxI{kS4z7ja zKA{`R#$ccWBj#(WX4OuiX72bq8$5CgYK;NFgEQ;#3$6L6c|0<@hx!SG*E&yLqDwLj z{;W6R$`0OvdhMuLir{FSM3{#FITHf*&!REK^T0e2v{v+C2mwOfH0-B0C)}GxxK~Ve ziDC^bm7FDXdSAY>8nNv2~(m0@i$%pDG<46l`RVo4vr z(|Tzf8L}sv)s=&5q0g!h14`J*>ipGB{a47)el%}j6T9jk^y0rW3x0wh3d zuVyIhu&*=ey?qCwQEv(XgD~NCH1}o*>`3o9B7FD{G}DeD+op?YW2J80Z#HZ>wpIE4 zcq(jjQ%N$nG!N@WUfL9Un}usyM@>X=m9l4l0B)k3!hUczbj&imiO!M4o~hr(`%`M6 z0gjo-^&uemp16oSARmw+bYKe9$H6al|Mj)Z?$&a>*p~P!^D@d;t_C~0^H4zba$(NG ztYmHts?eDoqIMx6x1yW%9SYm>5QcnW=#WW2Wn4ZS+v>c9GQTxw(I84#KE% zVMBMBVd~dpz}P(a|CmK5jHmL+>UWLMO(E(KaP%c-kZu&VM7)$B)l@rrnhK`kxRq|M z@u0BtZlTX<)-ih;@nJYx5;#U29|m(VyujYAXLD{(_x-F(WYL$6rKL$U z!%iM4sV?UYHcC!_#=P@d&$+1uCpH>XbXX+Ox zq~q)vAJQ=A@^l)%+!<%QvL_6+o;fClkSVMfd(sS!fnU_NJ zy}G=Lk%giP?meD`*C;zQqH!^;QdjN!86CoTJ(kT4;w;R1^^bQK6#B zJ1DOzZ7C{kg~&Hh&G~(US{^#`D!n&52;Zo0 zE8t#jmhDwkHL`y2PT*dU^{#lEGw*=S`=C+W>ytDFGse_&c;}#MB;ItTr%Y?yOThB@ zK9*hP`@r`&>j23wVC&{C$THC7A=r}{JB7I$e)rb#r04cXHz8MK;xq3t9zZO7!v9=^ ztlgm}-DEZH`#qEC3j zaXgkwjGpj?aPtv~1VMy@|JXqaLI{PgSfql%<_bu>!f}Zp|9+iCuxmP-x%b{?Kb~;^ z&SbJS<*s|}uKs=PdFffL-alnyLsoKou=ls{B49K`BB&?IcfgMv=#yuk9&WbBz(9h1 z6#&w&M}dGzEj~J373j~$=#oH=44?$spy0@dbpjv(tnVsJZZ1rwA%Fyv+B>wx)}NP0 z_YN;kPVV9%pd=RD?ZY_U4-D)${Kmq|<)dhu^noEL z$Ok~<1_#bJ2Z#iz7niFB28!*0cLM6-mACZ|n*IF~M1U(;=nuBE4G8My7!Uyjc0s_C z%>@Lg-B$pJ0s|}L(Vs1VP9tvCh71!CAcW{{P2PumydM!b$RM8#?|=UWjPBP5WDEx6 z9BpfrfrVv`nF(B~X?jwM0P936(}z-6WMvx~$Jh%m25b&*7R`?iG~=E28m-Z%I@P+?K*5fD3aP(;UZFP`{&kO(X#o|Co*^81NG05RMoIkv~Y zbe~B;H+CE{6Y;|=DGL$z6vr{w-iCp)gm@T$KmE{`y^K57aSmRJ5peke~D0xU9* z(4`pKH@wd;YtP(<1Mb8aW|U(GJi7qmYfE>HHeQwi1t>Nc(<^@;-HV6}5bSqQm-C~J`>MAWTi|{( z4EV-h@U+o?R`1uh@jFNZ`uuDkM66@)RRGPuP+lHik^v9OPY%cz>CMGCa325zPVX-V z#CbqJJ|Is+y8oj}DNi1j2dKc7f~Mxp)<>)0%K(9&!P_j6-Of`VpsyhkQ=)%*aTg2$ zU~1w}kU01kGp!g6R7hTM)c%m$B=bf%6eVnzS)t{CPRv2EU-(kF|bN6UgE|(5RknLeB_i&W~eMp0#UD8oCDcxjBReY-p}z zw+1)R!`K0Tjw)l9yu>d=RAG99m>qcOc z>>YWw3h}0)l=4CKF4b7lw*$W|bt3bHi+qXYk0BWMbxnNi6eLN?H6#nx046chpQe&^ z?AizS(gTN5uBGP$HrnPOvKa_q&G%Hz?3qT1z^9zE)yj!OL^VtOX2~E^ei~Z5E#AJ2 zqf_}}`y+>EBnZBi37pmGm>IySpf<9e#;-&){Hv{Yk9-zeXnw8GsYS0!%XdPG#N*dK zPAb*@A2i0T+{r?@MULq|s@Xb6kpK-dl5oO%yqu?d6GRvuYo%=N8e5cOdD#IJW$3F_ z@xSkiH+r{_S5CyZL4sf-7lBD(T+1(>QnMjsXRi5v89gm*w%#)eQPMOmr4NNc_V}_Z zi~Jk=wCXSpFH>=rEr+fjCtk$jdCX6*KVePhE0zAY#n#`U(pR8#LMmIORg{m7SaZr2 zcWT24@A%L*!8fp0+ciL;M32GK?BBQK;aPHNN4Ql9^x+%x#+#0!o|TWd8@+`5FAiaU zaGC!hIEFKwKq&0n(o*?Mf*Cj(FDALhhyo+5Yx8^Y7Pj?3PQqL|hLyJ5W%==G3F~qr zt~<5YH~z`{C!TLz{@_Vr1WvXa@v9MAl?<84`ua_OmR;wpkQc2&f-}+GyQ?OG*#In*ed>_o5c_+TI$Z6m4^M6^Ltz*J0hP}IG@1(Nn2!J z(eB3z#Q)${zhWDl1F33I^_MkO)&HvJ{JwBlp$FFkgqdExGZnH)(hM5`^$J_hkIvnh zaVB;${@FPCjNiMuVu9mOyOz;oXUh4iHOTcKERO)Cw{Z2_ATBl zK5?Nb^5h1c_vkW-+ZZxa1DZ~(N#EuBd^usG-z_&-jiimscM6<;UR*`~l+={FJRh;C zbk35}C9!OoessQNQAFVQbzWK4d*g%0^|JaFHlU4= zw_;M0y+cZt{2J-k6SOg>5}9_y& z$z{Bz`0z#WxP8CIzW3ElF8Eo~8%L-`=v^$Yk3$7MG_Bz$fQ+##sloM$M84Ti*F&-B zmo6Rv2qhr99yJiw_{v90JO4O0W>EW~^-yl}mCIYB$&!`2g`urkPvJcwm+~Qea5IAv z=IT;ON*!!@G^q|6h?6_x!h}Lrv28<-$ux=C;Tkznzvl{(FPY~ft}bpO=4fu-kA_0Q zMe5~IFUU!88IHM>+*f%xeo&QNd=;(mww{+(#5V`EE)@<#$7PF%p+(#+JmqOZ1?mLl zbV?$nkarDIFmM8ldI&gV4bazA@oJ@@p?tOp-9a`_+i^=21Spz3GNo^r7ujATrD;oT z*Y0p|9r`iAMesQ*{i;=7wJ*~wO7LBxgdj{Yb&e=_dgPTN2=Tk7=_LDC9ZhavIi+v) z$QVYB@n^dnJs|rAs zU#FCdQlDQP!#GERu1XkSAn`XQ!=y+2F|H8zcuso%TMM)Z>$;dcviUyoa?kN#Nqe%o zHCspv=`D+dPl*-tXEPk?7^4JSvptr_XO~~P<~Cr;b;t8z`fL+vyh(06&^9kZW68Vo z!8Df^d`zU%w@j~g5y1&`qgAZie#NgNCBl~6~<^8Y{YMevsc}7uggkKycNIKIXXEkth zzz{lU2~<6Wf~W<3h_|Qe%p^&LEwViMLL4o{q584k&S9H;9h)pdO>HLk9<>q3)SlGZ ztm{*`8Wo&Fw{>TpA@DM(%R@wqcgoY%JD@gX-Z!!y(z51Bi9GCMC^ft1ef3+WPLd^| zrh(kp5mu%lI#p=GV8cGxUKa3_)V5g(pOkMIZJ4UibExz zbc5qEpjz+)%4krq21{WqKo2TVp;}e33->8iLp9VpqDcNm5^9woLW6?C{jv}K(vIjO z+#xeMRi zjFwb*dCk-I!}7GpsmHA6Nc_squl|;JbZOes2oG$wnT}9#S432`WPB}@wStiUPThpv zzPCVbEG-Nc=AeRwi)U0|*IbqE(i&9K*Nc(l9GMvCS@pTt@xayXLJCTV|2WtfkGmU_ zV)TB8C7ASLOA_77(J+hval+9fY?rHUU}W;?M|h;NKc!ck9RbyG?yacV3ImGTS1 zAeZ+kM?Jc0L4K9^VP{YF_Ls9Oh3 z0WOBh`bMAbv{0Xm^wDTaN78-Y*ZBzM)dWyQJ-JBDeMTV}K4vT}zhN6p-u_f99&U(438$=NpqGwomXFJ(QtMST-n zRV%ZJzGqO)YC@sEO`7^!ZT7B)K_)*NrO`!j|I(TzUXE_EAKR~Rtfya3YfOB{>fh?= z*x2j+;yj+%-AZ-|J(PO^VK)12j27p2+#Gyiy5+X+1n|!J4k{-vVBJfvRqh%wK;IU4 z${j(Q6S7OKh-s^Nl850=+{AT$4cnyR6I?50!BZ=U4$wM&juRo;#3w(ClJz#Pp%-G> zKPShm2e1@{@w+jiL6~{g$|kaMd?&d zT>fLfAG*(d&HnFu%!8@8aT3JW&)Uv2hC$ido^7EC8fR{4E{*MfleCO{w)}KV5oe)& z`&Hz|O#COmfd(QL@L}DCol__z(V(D5Io={Qn&u87$9d;if6j+neXNQ~X`au;alN;7p%>pd#s07peIJwP@ zkSweQ9&t@C_)bENeq=Kh#+~R>R%3nZd5rhIK|Nbk(G2=t8*5u0Ki_?2?5Ydd56tR! zMdrp;nuf$^TSe!%7Q*G2akzGwUxB^SM_HPSgf#VWupxbqrn1tz5^qnT!T(|G9C!l( z6fIrbwr$(CZQC}cwr$%}+qP}nZg-N+P2MIq+4nC_j=qd38$WB~| z-{c9IYuH~DiKIeXuze+Z&qDyrGNf0p7_D8i;jECAw5vX>t_y6sgyz1;-->S9OF z$Izs2ibGQ5_l3S~cf|1y9KOEVcO&+_n<9@U#BFX&-Jn-JrAAEo!BtSL%8qTv%5^a9 zP23IAov4UrdOSpRj?+AHNUoFFPqvS+mB9#uF6Lw*p@xEdlFOJa4EJR+wRURz*OThr zP2H9CVK1SqvDjyw^?gx$b@g&rkXBs88bO7hYjE zs_<#L&hBOqRcY_2EsQ=lWL_1q|6eD!c)eS#ZjN6ILh84iLJ&7fEq1pLH|FAfRS7Ft zt~+VZlM9hE*@mn*2)v3j2mai5oVB!5qo&5nj(~NYn{~g`@ASo$+)Cz3<@{Ul`BeR| z6KN7chiJVFWG(8%U0-7U14YZ0pAmX(I7&=%aZ7=?Jz~F)AG^&77gxmI4wi2U**G-x zBm!Qam$l@YgM1k>84VFjb9cvXGvU+92}!%kHR;y!;i-l4j0|1y-{3`Yut)x;p}3PQ zTg*RR_AoaI2@NVDU9M5>$B%kCx|6!J2OCG-3;ng9(h6g_i1?ItT#`76YsD?UL>j3 zZswaXXD1f9`aX2_eKGr>H!s2*+}H&di4C-jO{i%;`;rwz!tZbc;3z{7WiD`PXs2}APoS%!Rno}^^lb6? z%X6f@e?JJ-Ea9d6_z}sJa{1PCO4vL<7b*|eS$_v4gWBFz<&c-Q^|pnSfF&!a{{p>C zZ_0j!_XDXna1~~nHXzjw4wknu*3+YRicqoBvKASWCVr?nB|1oeu+0eX31dO_qT?{Z zgkVGL{Mc0h-C#pWoO>91B`f}f$Ayr0b?%vKM-@yf06%6NU$35zw@>D1uKE0n^VIAM!+9bWEIWwCCh1a_Yi`|(6vQz)pXqT=Yuvz-tmT}aYA?@0fCla5ey zLa}lNFRygRn>Bc&^(AHKw~Lz=RZ zDYcSzD%W^Dr>O{893o}qE|AuAH2ihPam;0H!^So(mJS?Ptj?Ui7xm%T*b}HZsODPz zxG%Xn3bVg`xKmew0lDMyh7W^wEmRU-e|C%6O>knFZGd;Sz4CwlfmD??d(|ZeagdIJlufW#D%DD_?8t~UaYD78r&Qbd{A&J);qDC zc;D49HeFKBOzW|zSNa-o+kGLc^P>OJDN0-MWR-F8|F)yA*%Fjp6?6hn0hP8RgAPmA zewEeOUGyQ!?YL-O;ehq>%?|0lEM2iwnAoPY0gx=81-SfrlAv}vZTm^NT?qTrX*}6P ze~g}KhhSI{3C*9LvPF8y{EdPf?2VP!`8yDxT%;g`KKbTRjb>*{|7CS-g`3p6Hkeyo zbZl8>p>t0LDmL(-Me&@;b;^`2QZY2bDgl;`Ff_hCJdd5Jj{Q{4#9=l)Be z?d_~){r$b(V}L4OH1+3XJS>SR10D*;w&MFhuL3UTaQ7CLrl(6PvpG-JJ)@1$PwSgq zA_6UKcjB(&p1H0?5`qmHoz(Khg2-{-c<7#`F;L>ykgP71oX5Kj+UJ>s%q2s#_JEKh zj^i)+!h6N*C^}YQ7c?zFQGmJFgZ!Xc-Vtf+h3gM#W%e5!L)YnqZi^pMXN;{U+|}_3 z#oyCu_kpR)LY+ocyaq9`YWh~w#1X9n7ou4krFbMAd_2&PxWxYV^ftu0 za}XLBW7tg3LyFxhx4;bYWn%3fy!xiCo^1?MRq;OH}C$OvYpYKc|0qLUFtO`!Dv{C&lAs z+)20;U1;ECA|Lj{0qW?RJP*h$f1(BFUjhx=PT$3|8{nDh9vpP#_nT0#kV6jT3yLq08zIm$EH38arJgT29~q$1G#cZvqtVb1 z*iK&}1yJ;{ux}x*A8f1?@*YQU^3c7;{KGLlW^s=2Jn9~{1&8U!C{d-NRZkY9tKfNK zc5mAozeB5l?y!bDs&9Lw{a;>dXS7U#6JouwZ-fwx9uaPi%#nwb z)g>zt(hmP3c(Y+J6;0He2G#gPUS;{}Uj>isY}-MX@O-UfYqPn!>xrq7o4Cj(w2U2S zuQUJP-_Tec+QI7YV7G83%hEIO{nL)1{_}-mJoISqHUup1$nD183G(B~^gh;~3kp*? zX70R2LLy3{lo6ih&fm(N)F|>7C_01CU4C5)mcECXb`;u)&)$=TX;N;H#mTO9R)U?y z`hGM97Z55*dgQB5FOhI`!v4MrUyx*l|H|7+0|;(xb#vzt-s(E}9@=(Nfy-1&I&~q$ ztBvg9daJUQKNE8bC3=hgfKW`KdjB<-WBvb!&rAf2EKHpLHJ4*#{!cE)#LV$O3wtaql;SHj^7Dz7BSrHR zM5~vn2$VpVCX`A}COB)J} zx`7p#Ad})j4yRA=z69c-3NWIfl08S`v4R13a^nXN??>gb&_oO&f|5iS1`PZJg!T!5 z3IYts_MpE#c=!VW?uLyRU83XW=EIRbAUv5thzL*~h8gfc4q&DQU|{1-Eg1X2!ITh0 z6QrQ#1-ua|rt=+2A{qDYx?l|e3IL}B#VuSVt+Le&DI|z1P~wyC@huF4vkyW4Ajl$x z6iH1%i-0%~=mcoNMmw5C_JFciQc zPX#VcxF=+UCK5s$6OfUprXiz|KtqBt8YnJk)Hown-e<{|1WgK6z%VfIgc6Cx%va3G z2AqS?S0<#L!Z%m(AKeS!z?dipW}co0_*_@Cs=5#g15m+$6+|2q zbM_a`3zL&DaSt{PK8~IxIpCnK2mm{<+6VCqIv}$==BNh`tgzSn-9w<*{fh(45fdtb znPfPmsVazwq24vQK$-YtI383VgoHzsnE(xo!E6WyFgJi-xX;tvfe;P|yJpC;jYvU8 zBGd>AM2>{Uedy@!U4fTE7RiNt#0ho~PmDr>z|R*Z#LxQApPt&w=~_<#C=gOeS1dwm6ayRhDNA}pPpdwwqZp=j26^!Q{j z#kjwrj1bwS078(X5w9N*WuzWlpv_9~5L^8& zcZjq3#4f?Tt@hI5^`Qt(NW+k%*?esw5FtOFcjQ_I1Q~El-R}&}_JIg`e|;Jd!p))7 zd!R{I6;YPvIMnJpT6dvvS`Y>o7~j`!qKbXI%CGMNXLE1pjLJF`m+Q2W3Z2Ae^A25} zweVXD*}h)zy<=&nxVO!Sc(?h^_jHyI2LC|a{#dhLY{=l*;neFEU1$VO%MxQyhvn9LQ3SOw4Yjoufuu0K&uNw@)+=^Wh4;22#Zch8Vi9q1{&u|>?|taIn7U)&z)c+puCi|P;^jWQb3 zQgoh2`?xU^U$roAQP|nX^AWN@y+udXt@>!UzjP~Yu(x|D^}G!7<3+t~v$jjH$d0MD z;njM3^Dw^pnVy7)b<4JK=uT~CEh)GXeH$Sg=2deDMHSEi%gcMYKI`7ny1QEoeqWq@ z4~j3u%xsSGmgx52s2=>L#A>LeyFE`xoX^EDMHqriEloISLL^`RA9@o?0#%4)n95o3(MQs{)qMSr+B^_ zsyHARC7abLEAvIKHrvSIw$?{nwION|AD%VarI2rfR+2Y`e3iRt*WF#J^ORrc5%=-tX$ml5uCCPZT-Cqe^ukO-eI%Ht47CsJdCAW#j1TH zv&QKAg0R`|WBaInjww}FF7-WJVIAhjU9p9Bu=aiD(g?e3k!hSbB-8!7?LbWLTA{R> z|50EfV@|35BiTQV)}cnzv3S2Ua%^@&yBawnrT515bozIEBJe9N?W+-z+d|8cTP?jx z{)6`NY(LldRPCw}6F<=X8jf+XIXA~u?aGXdilH^TYC5s*oK{t%vBhU1_Ns1<{lo`y zVLCz@eJd(~U~^Z8yISW7G~^hXJ-D`h^DR0@VZLMfz3dU+s%7^5{T1-@HaFVIy7>&U zce``Z_9Er#)vG7dFQ4?iSl^$C;q~#%1Es0j@Pc!6?~vKPab=1K%(+V+cZ>^@se9_f z>=a%c%Kxu9jyyi}u-Xp7`nx@@S{j-rtzvZhZIgX&uljd(ZA)TRX^WYMeb?=+{?ZWS zRwWrLfh!~E()BXOy0N}jfIpye!@BQG`~wII2Gp0Q6Jo7 zREMRcEV)k_JLwhMX}@)jaI4v*iP77_G|$g_6ZWLdmdGdim9}Ya)_h+Co^WB`hYz=D z!@l`(JUamuE#qz>-yQpfER+15K87QHt#h4%vPs8sS&J7FY)4VI{8-t)u0~h9+Mi>a zFO2&^!{c`9S2$Wnl-+0%!sE{o*aOsAFMQ`!N1NsswBA3k7xUF7|5dmBFQAc31T2iK zO#e-{u`w|IN4K#uG5*hY?0>qAC;59-ZmcIH`MJe3oRJxV){SX>mBb{PQLM=VO}Y^s zQj)@?j6^d^$YfVCx$vqpxtr*I=ZWX`*4NALw>wXh@6~taU2m21l+DqzUyWg!nBh72TB5TQm%iR(B93aU8KML~HwasVJE zIEH}^00@9GcOXD70{~!9e?NydG8SkEs4xPAsq0*2bz$)o73|qwISLhoAV9S*FCzfX zS_$aXI0+4=D8P3IiM&1&+@&1o-o*t&h%N(wD4>E!fY?)U`<^3;do=Z)ERjBtj?XVV zR$_SQ1aJq%A85?e$l)QC9L|T*2Wf*3$4pbz|=A3&=oa<=w|L% zAO#6K6?+s+V1@pNEd`4yy1&%0vY-OwZ)czjf8GzvZ+=GtfY?x?dBTsR9)}L+ylufG zO!`p81rH@ru)?8MWL!r9%q8?Nm=XZc>Y=3z+C2;ez!)6sC8#jNc6cQL1N&wa8C3dW zM8Mu1hPs;wm_jA`0VrrNgVuxAYyr+#=2}2h5EMX!Q~_(@1m+q6KmdPa6nY-=F{~;Z zJ1aapjl%&Zoay<|dDhGsdUcn6)BV&X*QWsp+OIjEr=DKsC|MY+;*dpzzJ^Pnf~c=k z_aZ-ip#t&+)Y_ol%3!Vj>=LUdZIgbuCs)#h|Laek)wZcHLCKOPph8j*!J-60wZwL9 zR`8#gvO~8)83Yh3mj|Gp^(p+O69R+=P!s3>V(1`%gR)^o6$MBGMM5UF8$nPw5cNC# zrsHtnsK6(WfWnYBQr*CDC!UD`E%|2&7W}#e{`slBtW!+_rBtXTA=*KA7;bBz%1kWJ zcK|s0znbo+0cMWh64t__i!!oa`s-5-;N=FSUOM*|N)*w-W7i+#7t;x@DUEX|Sp-b+ z=ZUC-!Xfl;goZ=7L9Z-FB;XAAp;c^A;Wi*U3SRamZzt?Ls_@8RIEFJ4XlpAulmo^U zJbqjJnY75it3#aM>w$ovAMu%d0&h&}4Xv#7b8XyDdiPzud`>9w;u~Gf`rquYOQ_FX zcVv_{AHF_N3>S6OwVTsh@=^Zq=Lm~L>ez75)jf^?q9nzhY6b+Tfz}=!-zj8S;-voZHEgwdZ~xxTeSruD41AbO*ZjQTRA!#HCWeF2AdK)d ziguH-@nN3i9SPyP#kq2$nWm|WBRx;U-p^s{5F-IM$Z2ZtTqKIbn6&Eg>&4ez5d zDFx2`<+ddc?|A}Xi`Ti=3qkPm&EY)r}mj7Og<18yg>$-ctWQU{?oG}*A zv>(bvt+%da9OB}1mlGl~$G8XmoE7Bz>*exNvIY`J1&1@&ktP3Rj}*j=1BX%a# zJ3KYC;!u0p?w1XQMh+x4E8-D?WtWS^VlY#=xINhE74{Jk-%kjX`B{brAB;=sb$XXC z^^tpSUt;s2ty|JS3Sk!7ei9hEjpM^C7A*i=63ho82AY}<-;}cE#3bS4IC3+OG1|$? z`ttKgcWtn1Y*=>gRk6(<Yai9YV1jju%wTA9MeWfe^2{3Ip1mAaDBe-(OJs{L0m#OU>BSNN>NV`)$djSF`RE z3S#Ye6n;RRVQ##eaMW8!x+_~W6Js?h0wNBpn1VZzuS2$N=N66PG;Wu79$rep$Z z*PZxbb@y)aQMoWnnxlOTYY!x}tYi+jP7e{{vG0)C6`yZaRCJRe--*qr@|w*jW9Wxp z1RDd;EAhzty*>)=Bhm>yF9ztj{3zwjz#WG$9e}oC@d}R;iB?htP}bTbflUg<h$prLedqYE4pbs zWNcTNT@QvdT8-J$V$lzA;so($`I4Jmm0Mky`C%UBwv7}O%9I60sYwr#exUDw>Wz|g zm7zs(aEQ{t$J^z1ILOqWy_&<>Ge6e8ofZxrM5c5&wLeZ5|jF=ASc+aaGTIlXsw z&t69X)150WHl5+#$lBLp*S^6$(aYcj-apV&z^~L#>&}qHU(n#icOkupDoXn21;Bm^ z^MSH$uJTRuMnT758e1RyxC*>@1C+e00~rr6LQ*!l%XBqRNV|wB<@5S*uRC;Htp$;!U$L=|+T@w7hOu#^}?_Oq@OMcUwTiVOTjj`zmmmUch&dg6YbJjRvuHA?Y3 z?-lR%tk6KyCG0KH^v?tJ7UKP$oZW>2jA)RzEV+81Z>NaQNV@Q`qJw>qCT}S>0qC5x z!+2n-G@B$nB?wa~T#BixBHRitMvcmV=GgKRbLQf=+-}N|kNSn)?NWTN z7U1&}f$1aA+&4TzFNx!oqoCs8SwRnf4&fv`U8Nt;nPg77ohTjmwO zZ+<%oSz!5Oo&09wczsWvoEWhkOQ0qW>t1#aum2`LO$zJ-8X6v%PaoI9)qX)P4&xW{ zX2XkWyyMLzq_|GQZ;ZW*=egv@I8vf1VrS6mqhVE&bm3a|PZC6#a9Xl^h}u0#T|2dG z{0G%NZtbecm?w`owZ@N$>z=*n>#f3S?|D+@T^4h)Z0Guh|TUIAB^9@bbzf+@6HCrInrb>QG7p2n}Byn-J!=XQz#W6WcjzZ49Wl{YI z;BU!YFY-7HMGx5Kyqx?#IFEvj*&^iS$|4M#m~`0*3G-slhj&q zG<{r@V1;5~Gsn!cE#}$JcS@^~fH-2${0Uz}4!h0@@2)JjX;xLw z?!p`n1zVMK`=yP0BZ+Q?koBg+RVoX=>6;j}pN``C8CiyrcTQiJKSW7K8qr4a7!e|jXAJsWgQDOWzHT>idUD*iz%)^b(3%l@?5Q4QD5Zlr_I zeAug0eKd;xR$dGirDSj^TFVXtNqb;!e6_e%(nhlf+yUlhn|WQ& z1V`El)eQT^G|=v?VfFeH)RJ92sqD`mWasFD)fLHee)I0*`c!o(bCR9Z41?o0BMwp4 zTWlhtv#*F3l_oK&16%V(O>v#)KUbSIIJ=?0Ijqm6lE9FjYQst6n0ams$L* zGx*Uo=`pl*d^!Oo+o$5cpB30j?s=&w?v6Zx-055lQV&@0mAeNo5wGP1V}T+@`si-SF$&zp;I+>p~)J> zeVtbg<0njzD@_HE-13FFF(PV1!u6P#@UC*4$)r2ZFsHLi4)2JXb=$RVSMA`$2$W1gFPBmf>n+IdxX?^q9;o?-y^>{nAE*w~L~5)wwnI!-$cweK zTDmf>6H=Z0<7D4Y{Pyq3tMp^UvcPk#eIgV(3@&2vp9-U0az;nZ=0eIhm}7&veGS~( zwSOzaE;HE{qnPQN{N5jT%gl4<81(#@&^|WyyL2=4#58}~DcbF~qF^)7vALv5-{Cs9 zG&}9+zb?tI-_8eLd1L7*HW=@mVE?KdI|5yg>0f~7)=7PW@+Wn3ZkqG@31@lUoOZc) zs)jS}Y&acMf1HI(JG0(G$AEyK+vCd^z@KWG?BO)V_Xsj|Vai@ZF(sxtyv<|ZSBFTE%lf4-OttIujPol^* zddE{1H0~JhXcX-=ovL^mwBaw>-Y7B)Cf8!E$}BuBFf)htESp==U&#=od5mJ8QG;gz zw?7n7H+9{lUUVWdGJT7C6_ak&zT?03O)y~`rbr+?*><^n!F}nUwP$$^`@qb%W)#K&K`c}u5rwGzpBF1^oH zSuGV&%!D*K@IFYJ(1xbc=0Iq=Uz?kv9XHo`#IVy9cKpM+p${`c#q#f;um!8Wn-I2) z(|1*TSJJJagt%SDju&lXro9=J{@id!VXMB6Hk*=~zT#nmcFsc8j(L7;^Jv%$0WVZO|kp2+hJmIltbQJ?NE5Qsd>szQ&Vw+&>kly`xd>S-;kLmqvRYt9AF8C z#QUL-_qxYuoSljDn}t*GOtQySa2znL?|m@P8eEQgj@@Q=wBJ()_((9{XBbRQJnQE2risPggu~i1v`kXKE zm#02P=L{|@W$}e*n6W(fB?1nH;oqc`tZzDD(ou_)(Pu&h7L!r1$&Hpud)bq0ghQu^ zY6(L}PhJ?yUxtDw*?ijM8!G4PNyV1R$&i~X<325{FU4=#Q2C_cJ<*z3_No>JvUR288%-87K>w@e3oRLf`WssM1SL@ zkDsXaj!0VW5|jC$wk&G%sGJg>CH4n?795%TzuK7pi|zBj_?eN3;Xgt1|GNuiX8(_m z$;iaS`ae(TOWa*mHm#fJ)V7)}f;zc}x3_r(0t6h~TMv}-+t4WF0)d7jQ7CWpwzetV znqFUXoNv}ow|Z|Tq*mx}r+8+$AE&0IEGUEbCidg1wNkHaa002<}V*%*w0La4-=vxuU z*#j>1V>_tu>;$mO;n~vw*x3WJ)B}_OQqTw>-Q1nSj5q-P`eq9P$o1(D0l2D@W2@%_ zFVP(zT^&NTG`NC0KtVax|A2x4bO7e#;Kk11p&`^~(T+jw9Uoc2*WbPO&Y|GYu4@1& z34lYZ*QdaSgXRV?YENX#-~K=49*k z6S(JB{lkTx4D2qvJD+@|#i(%zg5Rli^fIiQ+fOZ0I zWmj)^2hf71a8w1%Gu#5s94P0v=9VjCy|dW&jV)m>DSxgp}7%I06!hfk!SLf&y_!x}#8W)Tah_fRASR6tDeZ$_X1LliqLdpWrqhq6^^HY}*1oS5&_Vt1K zRsr~GP1Dt)me$x=laS7kPqF?yqep5@g_SykBH2!Q-)R29%cVvMt zUE0f0Ag%Vczj5Zv{=@7*ebrF_03%FHj6;9N2Ur2UXXymo(-;1p56?n~e%Slj_(xp+ z8+p69JDIuzaCr%cI)tUpJl9Em7wP|WfRfV-pj};@z|H-^61e$2BLo0PCx=Jh^taZb zfJ4x-z^=!3k;yj_8m|_B6R;2$TKpD2b#M||4w5nkbafXo{jFL@#i_{w`18vZ3iXXo zR-XSmak<+x0#O2>#mOn;1E5A=t>UIi?q2Qy5c-=3_^v;?-wO-8$!}@OOMsx751jng zoBz{I2=J>1Hz#|~Ul;&q5I*}$e3LihmEXH)sNm}43Lx}j`HdbCTm<{KNrSThJMvKf z)PP;Ho_$OT_sY%^x*kj@ANTvUJ+=sS3>C-?q=LIW@Hdx0O%AT#e=Wbr%JLS%$rhJbq2FVCAii=-sEeE`0Sj~@UvIy-(qQc@l` z0Yx9;-EIL5ua0g($IrIa9L(=wCo6`QG{P9RNkj+7smVA=+@}Vzvwr5-p5(sP?}mK= z9#|cTRAXbujNU?do4@KxAv!Au2r)Z{kPfw(_1ci?Ku2fCIuD3*hD$i+40PwE9MNjf ziCJEz80B%7AdNK1-MybIFV$NtZc|N$MXL;3gP~xy;fD3!R{JP_=y@diK}F%z#@VQr z0UKrWT0-%0mh}{cq9`4A7Z#rrc|N2^GlCyuY6lZU>~@EzYQRChh3-njV_;1un_fvB zZ%cabJ99(ZY@5syGq>dGBiHm4ijJ~%sUa`>sx;`&;u5${HNcZWdS6>ZaKb+Ho0CCt z0YIgNA!*G;Jq&q&e--f}@WIz#=c0pBCV|Mr*tYJ?I zd`W1EPy-C2=O(nH$HNDJjeeA<-UvF6wb73{Qv4nI^Z@-=6t?=DVUsTc3QM3?98aPT z!XK{tsp>^YkO zH)qwRxth&Z-$h}m5hJs8DD?_U>aevF7;*jCCR}A^{u7lUe)9!Se%7K!*mNfu0 zp!3;{-B0O5qjYpyUBf84Oxvr$i-$|gvR`W@V(p^I^mjisJ}qTE#f8*HFtx2**&d41 z!IJJ640{HpW)@nECR?<29UqudQZBkDOdi=JaL(hvOn;oz)oqyLd7O(kywglw`)O@o zA_D5je;p^`g`(EpmdYr~l;w}LiLa^D{{+8E{Zf^Wuo~aRSJ7;C@LXAf{J0I=7b!81 zcd-G$SGh*XH|tO%N}qP*Ba^DGJ-q(4a^P@`RlDw7oY)b+X7I0hEuGEo^p)&J9QBFP znN}@QRGK2ks%awvbvJ?RZX9WKP1+DVd>6w}qu_|RHs7QV+!YGu|Gsw)z^+5+LretU zGIVLZV@E2@qP;6*PA8v-2wSZVw9s8;`;i%UcbRJE&Gr9FofQYNe$l@M@fpSr?E_)H zN)voX<#S;|qz;Rw)a!;5hvWTdmYnLbjFrsqPrs|&(oVez6c~kws@aRDSqJ@@=8H6338*Bd1ZmD*>gK5pMavIe=z z;0McLNmzx3=Nz(*v$3{$U(pk#Tk&H5J`2sGb=7oB!LysS?NU}!Y`gImHcnW714Dri zIRd4Vk#^pUCIK@Io?*}tdncaZZPR5fL04*#o1%c%H^V4qHG&zAl3LHl*ex!x1(AMV z(X{to6^!IQajPDM<`E_sCLpEp73L{$hN7RFMly6Eb#&%38(= z;)&KOX+&c*?a4ha{1z0Sv@(>ZUB6n%ZMy5_%eLo;y`Ej#{J8J}t~5IHq10EZhkA`J zuS7+#Qk~<=Nd6!Y!A1YB*#27W_6=lmBX{%LnL-M^# zpSf2Tl@7dDR+g{5psk@~Wbp@EIJ96^gdpaAufsuHoK^lbm`FJsw1|cG<%%d#zqW@RH~BgCnovmMpwM)%($5|^X}>yjF9>DSf=k& zNnfOTB~Rj8R)t;|vP8?hYGsiSNxCgMdD(XR*~pA+9wHJFafy({CFW9Y_W-?x>05Or z{$J*dq9=mODoead%2!A0S2UILX^bvw!A82T!1DqdXo|xwcPts-zy*9l-KP*4beDzh zT3IQ5d*PtA1X5Na)UV*YI?1GWN|?Ruk~>zE7EN$nW9S?Mc5UYiiIi zSCehP9VdGszSq4*}w7X+4t@Q8Bj z1DoZXa0gfyr63o>&`bP=0#AxT8G|`=;l+1)NQ1@%-dFz!bybWvii!tA@bik6EC(xw zo*jcf<*xa)IGC53j5ih8@ldL^p_(2bIntlR4p)nsyFET&bEgpYZ^?oN_EYMC@sBv+8a{$XX_DDtR8qiAYH40XC4J zbe6W2G27G%*RIT<{mr`skp#G+z~1?t<(9-0-RoIY#JGa;xni6qj2+o=k|{4_)>41X z{#hIB-PWS)o)a^B<`D#_D*?q=;}izBcsIQohnYraiLg93h-z+rZW5WJ%hid4{ZM2* z^C64aEIy5vB{}_0!6<`a?5dKn-*N4ISnl!aXjY}p-(28m&O-_N>hKxB{nx;^fNT~c zMz1HbuF0>RO?8XMY}CBORC$%_dMzccLODF2%ieesdEV8QlD zxWE`2fUK2k78vF6OCr5_D;gtLA7nOS!a2!!uG*fzj!u%8ABO&41ai`QCH+~_mqeCn zS@iRZ-VL39nK?9De&=IE)PRJ)(QgB=Fx|(1eCU)$ZF_W+rq4!+KbbCeV>wZJyLyzf zk0j2ep>lM6>-Gi9QR$D10x#vQ>f95|=TH6`28$vN4`^aKBV}Nu`10`?9RH=7Z?a%j z7fm%;*MIBT$wUsU#b6Qr+3e*RfJ-;|jfrfwpSFq2kB#Bn0>V4Th)@*7A#4EGAKskI z4bHApq%b(%?88j#Ajuy;;}VEw4wB+Hm861Ml4B|V>2PgL`g^L_h=^&EePScqzxrI*U~?Q>I@8gW+X4|Jt*rdN}~xjOA;Bw)u)cwE)UHUhzSGkCRR_ z4U&xt<>kxrVzzAx*?((uvusIa8mxpdb6^*A|r0zHrFQsq5vVBlAWJhn@ne9iyXT6b6 z9~2pe!5kLhJ**Lk@^PpV0wM_C&C=4z+~NTIh+rt+H8;sA3jG-NiY4Vc_@hR+u%6M@ zW54_Yz8jY5zqI2uTr#9<j<^xj-q0HP6MX@11mWwxc5-C9zvID=XFLWT6g=9scbc!0$W?rpmAq{S;{_r*DS z=(Qy-22RiAdP9`(5zoIaH##bBTX|qXocVXnHb{i41It+VS+EnKu?1G+!Nd>9?aX&~ zX!jbM{xe!B?U$ieQ1D1SUj*i5g!JfeYd;9#Zna!gduGwvU@(_)N$nY8NC)X1c38Q|&ZKs@t%%iSK4$<;sOMLY@MCLViPvM0r(!E>N32Oa#sSb`aeN+bD7?i zDO32_95mY14bY0sc4cx(vCfrvH(s_L(@GfQh|OAeB-WxCsiGwk2U@f{aE2o+r4hTIhZiF{f1eX+?M->F?#9+^Z|fMY;v%Lz&k@7vU=jyfaB z3MLAM0&d8&%lu|Vt}{9z>243`r+n(_NZR4ZfeL?+2m>a^BXz@^WX(e zT$ctKs6fR=cBam&{~$Kpe!>r&*xFl=zHNzWgWcsoXyl!_r3*XPoT zN>@Q=9E?z4sYq#=TcQWeW_5!HVLQCjpdw<9=%3vHzbnD|Zib=goz8Ns>>xbHNVgR? zT(O-N9ftK^_ggMMO>6n4O#0^U_Mn_^#KxExu&ARbMmmHGaXM-(n>32`ZWBJP>n=5E zZX+?*zqqAnwwKq6c4B8}R=cdst@o3_<)glDoVIV4^3)L9H&Tjsk?o{8p(76KzVmGk zm9bbmUDaG>b(Q5J+VBQ;A4CScRW-dkjf*}LX9+h9u(kxYz#y|+EAGG(rHMQPShaa= z52^cK8}uEu$T(%ERL1JWMewbw6$){8i$`$$5}RD6DD0BQ9>k_ij|@BmJo?@|)SJ{>Lg!}DeJ^DDC=UqCsP zoEiK(N$QC%A3a%k|5Ujf#@aL|+Rr04MU=gNnyQhrbZny8Mf7?^2iNff59_TT8*PKB z#4i~H)=`7+#&_+2?a>L|xb^Zw^x;s%I?Pdb$BClogfnykPZ$4(Kn?A;EW2b{*v!-u z5a*$OJ2sbX9i)Jn*gG|?B%r&Sh^cvWq=!u=rF^Zqa)03K9nwxl5*KHbTD6huoYNqK zzJETc(zOtbt%SQ>7a4b_-e@^ajx)A*6>$`xX3G}0yDxa%qVp9Qi(C}(y$r31 zLXgN9gkUvLlBc4$c;&?`_+}ktB(lA^*?#C}1nf7lA9H-THbD139v1AL`Si24rY=(hzlJ2O4l*ip z;Bp97Ur~~xdn6R7<#i#U72xcP8Y+pT-+2OwFVV68B1r;j_yM_?b`*n)$cR;Q$4H0b z(K=bq_H*afNlgnF&0~@P6|BEFYQzSd(^HsuhM%$XJ*XR8ON#RHOL)f@}%5rRsJazTL#PE^`dPxC(wA8@KdnsXCn=$qOlRS@{No7 z0&;Jj>huGzVGk;h;0O*Kt4dUuD1wr|yb-VSr3qtpsAG^m!@ zJ`f`M9-yHLv#u<8Az{`?qCC>>7o60Gn7aoxF9mardcS%ZiYf71i;v#M97ryIUU&{( z0Iq`>aUI?-I!R9Vllm|Gr4P;{5StuP60x+udC$S8QMo40kkb6w8+(DP)#7zq?1+IN zxU%P;?K`R6+N_>UF>k@n^QMTN_gkHO2BwHD{MrVT70zvJ>-M_5%1)GSsOmQVb0;(Y z0$P~!d&MMYB>z^99U zeH!WyJ(P;ltSzUo>!jU{(fi&qj7&l&w{B=lnQg1xFGt6dT~N-L(o*i@LJucr3!TsF zuM*IML&5G7A%8y8X;Khx4YXe_4Ql_txper@;!Yu2jxJroVbEF`fgl|_-HY@XYdg{b zr_(s1qkAC|BJ!J_grH4XLN(-7EV@wZWfD}N&2g!j;f~Iogero;z2Cay#M8`gNT5F8 zTos{su{=a>5B;BvY>OI?Fw_>7_s`-|`LLk1w5Z~T7ZDNxMzOKGV((vZojTjzb&*x~ z)sd~Sm3Q~{z-tO5;fxQOjBP&86vtbq+zD7oEa06&JJn3S?dhD%PHmkZdj=M* zi5fI~Y}>xawr$(CZQHhO+qP}nw$FSM{8ckm6HL zainSxKD-x3nwFK~(pgMzT1dpeHbX8pZD57sz>~R?4A(Q@^CQCjNY*x|5*}blmT} zJs>h@G))!pg94~wvg2sQLSDGkMKFguD@^N$@^9s#Wr!ic6k{*od?`Tp#rSQMoJ>K8 z@%rCyJfG75f0w~4x?Q&29FvHdfVrISf>7=FHV+}By3G^TeOd%LEhWW0%3~1Vy6Q#p zc3~RE?N7*hle>i1el9og?B+BE@7iul7vrsu;j(OsiA?_8qodX2M>Zja2}r#%C_Kan4i3rJ+vw~CL&#~Bx*^6y~WD>wx3`@ zhk+0rkI?5mQ~bN^NdIl-S}$;y2#7^5l3~pZ26%?4$3{V2x+8y;bb59HFYuq`4XEYI*G3w^$TMoy7mp@J2g{hENzO!G*+ED zTTf8^Qhs!$fLX~4()at6k{~z_GgmfXZSWVG-==BIB;t1B6a7|)7etxfU1H0+P^Kbz zk%1LkrT8>CooD-C>Yg_fW(q1NyW~!&%)eE6igcR|Y_PWJ7#yun`--=+q-x09RQ+g+ zWqF8$T#I>;fy2Tnv_R-w=5z-9jRGGv-$!Rcbzr7ATiaZub+aN96IEKbL>qrJCh zjt9;K?x|SpAJ)THbJtnsv&pD4roMR^S^}}J()JfLs71!-y>6OuW1Lwt#FXaZ&wX!G zpA3OwY`;C)=}7N9&w}SMAH={q@k}QDS7&8{uUp*U}6O&_+A_t+T)o`fii(j)( zrkF%bCW!6+Wz!}2;M%buEzv72j)iB6x|C8$5o0&WZ1@gW|bi^Hv@r{}2H6 z*u1VqtfX{RRQE3EoT~cghZe>EW-0iXl2o44CBRD0Eg5T3R!R6ch zrcivti(lB+@TF)bWaG@(mY-mbeM?@6s=;1In}^o8lopIzUOZPi;;HXQ$_Uq>!>@DszI3hhE4`aeOr2-k50E zsdYXvPjr zO+3kE*>A0Ty4WgqIQMewMAbCJqzjImO!tgTO**G`H{SQ^U})fcs~?ps#|wi5^mL+o z{`ZVfu@?P_j*Em&69|QoFknYtc1+D}3YzRSM04`Vd;do02BwGng^Gsp2p=;iIh_ro zQ3?{D+9nU}!gOmq!PvG8Zjm)FUg3K$NNth3f0dz6uJ*b&TUR1y*~$9j$U!6x&tZ0h zjXEe_(tjy&f#oB*o~E#& zh14z;-AnT1$NpuRIreH8M@*{`H%wQQ$97wMX2CZCFqr|7mqc(c{v6IK&yQ|Fercqo zh5t|NwZy&nSKP6Ex-R*PjNO}K>=w1{UmjbkEzuZc^&uh6d#&SP5O?2;z!JZS2!-F* zTC8a_yUSZ)#@>@;ePTGh?}Mi&t{3ao*J9eJBzCPyq;3-Lx+$)D%?vW6e}{#;-b{WG zBb*QR%rqfhDtQ#Yuew3eaXlTgSsQPEq5 z%JZa2j}L0V;Fb)av>hCkm%uqUliTCwkw#5EU5vECMt#JgN?l&!lpJY~TfJ9o7 z6!b1cVViEsWsO<)Kla56&!y$gm-$3k)liKSY#=AeN$A!JV~_mv0$9}>S*1Y`N-;Id zRIdgm3=pgORvmhnX(Fa{Hwzol-d4?62(%30-S7AA$ga51>6#X!s?-qlf^HalB==aK z^1TKDeHXSfxG)BpaJcB;^GS!K#K4ZoyL6QILM&;)B2}oig^a8ES@4wDNFVp5mZ_OL zD8oVQ_-l$GP>@rRG9i1?iq;BJ9|YMJq!+@i7^YFH_d~wo^^`pI~ zpp1As=6qH6un>SH{0gma5Znp6NddYk>Ej3c@@89J+_2C$xj79#>$c@3deQMj#(!jO z|6LI~Q<()%*uSy8w>UP`;r3rMcG}|7Bg2F;{E0+xn>?2YpY*WZ2AWpiZ2Npf&UZ&a zB1vAYwFMhV%~fIx>i2Celas~(yhv%~dv@C9_<+6vze@NsbK-}JpBhhsqlftrmw)<0 z{Le)l#_=@0(C{2uoV5szRt>*X>d+v2-J9cQ$(t`%`=^m~Mzx~xtL|QTGjgd@A(EKN zI4K$&`b>BWQuthw{O?h|EZTafkzh?2&{8Kh+;B*v)c0=}( znVVrKyaQ{^wK>t78NG+x33iH!*Sh{&I4(rq5L_RfE{c~lKs#EORv|}~7B6nCdmNco z@Or&o+rC=SwO7zPY2UwM9WzPFU{rizQ6Ys&CaZtTJk>#00+B8ZbZrv49Y1n?)R{@|{5N_BJZrty~(dnxps5fG_wJBIcR6b16@w8IBfJ{{|I5)1q}p-yE>AGTzN z9Ydc!yAXEqY1?BOmD(c&ineNR_8|F&m;n?*Msz#n`H2($|2)q3GI*Uw5PWzu<0dmX zN&k5i4aMF)Yc)Grq4Ddmih=x4Db&jl2lw^vh{&3r&nrnULKzeuiN9-d#7Dt=2@Dz} z5j-gK8-nJJ06C@{*5mg@rO-NUUz+tnxHu)5E{^r#fW!>jx@f$7c8k^j%6;TjUIxBVN2Tv~4i1 z`f#lm#`!plVFJoxXaVpL99nvd$w730=bvW3q8(^~*j~b(!rF3Q4#V{M zjt43XOu(%{fxoXq2iKg0S9b5LF-TKSm3rGxGA_~8E)~C*f*t13I-wBBwTE0>dLS|& z2HoB`0049*QIoqxgr)YiMsJ(#DVF0l8GUoB2U6UNev3L1=nFI1IKnc%O~l|iY&b+N z;Y3xb*m?46F{fLnR#6j}z57f~o{)?c+J6W37#sRLQj!SdKwRjGWjQGvwIgWx(FsL# z?9!3@raAsw2SeG~GLP`0=oU8asGs4L#3)~#PK3SXb$@*a zsUeY!vm}TJ>D50h$~LJMukP6fR}~vm>;JtRXqtW}{$OP;ik2Ns&Z&BTZ?eAH0w{Qg zK3rIfsRu(DXp+WbazIC*4gg(~k|gE$>)zpx_Axr|j(@qkdCaI9G(Fmuve(%aUJPRW zCz5os%}()A%R|j-QjX`bTa%P{`59X8#Q`)?!-2X6m)*blq0K`LF{Qt{S`sGm@!V|m z-mCOzLpr!_F$aF>aPz)AP@b&%G4)0%%v9T#6EU=Ck_=74!kFjhgcaua>EkyHe1Ty$?461 zj>%SNr*Vsx>r}()+~oSgTysS+rd|4m+>{pXm6+)ZXIkTFUbwGLzn5t?meUI%SzkHm zxfXF?F*0SEx_{FozImUe4}UCQ-6$LY|LE1hU{d8p(S-6R;J*RreZ?wC*@9`5 zCun<>4bUewhPsgJ%l4i<9|W{A7(vJg7wb9M-Xp8FlZsVMn6B(s2c#fdaGIo74WUvePk}IA9b(D z;uf3b;%KyoV$UzD0gMi~z>AOtBR zYijaMlCJ=p))cdYt`?%R#MGC$D7%{R4PfudMfYb!^N~H~>^Omg?;5h_{4flhS0Q60 z-p;%U^ilne)QF0ptgB8agCwJ@0Srmff^cU|_gLTe%JWN2_2tH0l!Xg?>&rFI8b#G& zvj6lYp=kb*&`uI-Nn5T`o{b#f>Z{yv@d^WUSw60T0?_i#;C@td+Um$Wn{_Uq6dXM> zYaT*k=C^=B4#p6juJ1+=18>%N3?N73T78xJ%#Wk$Tbx=#o+}_>*wU38 z4={{PB?9=!I^CrzclGgCU(6R#NJpe5*%zX07RZj10`2!4lVVkC?6BTd6epCXGDAvq z(wmT=8>Cim=F!~X01OmO8{d#VJJog{5iQ=IeKCX1SArL@-1k$wxvT(+?TCgwJ*?i1 zhx)gfFpFseg7<%b;o|#OXlfzEH4V|bOsE;NbWEj=olwX^B?+UAlwBspK?cie%&-6F ztx9rgDST2YIB6;jHWaP3w?ne7G4nQBNSP*TE`6uOVEN5i-)J0iC~RX^N@gv1XLa^%;DP|IqjH)a)@ImFc&-eT_{phA1V>M zt z!BiR9Gf(xJZ0{`QM$U5E43{wVhi;@oj%5Zl8 zSQN*I%-mwg*YUR$&NW9$nP5Ei(Bm4TO6+RYu$*+=SxMZY#O*uV5&B6dUl^~(sx*}W zZhuOEzpdTG(+5VX99Ke+9Y>4Q<4A?rRJ7-VSq?7-1sw*}qpS@!O5jpa>e-WDNiyk; z%!2*5Di%|tM$py8E9JeOUKfUix`4)iMg(o~m8s{Z#x{Af43Wg_Vk8HwgY6OivQst^ zmL`;FzHwp&_%Fh;oyk=pzcsTsXFE=J_|L7+?#pm&>I>Kbe7}#0a|4$XAxXmfKcxUOKX6wylqs>;Ujz;T$=Zc9-!<4Ao zM(f6kPUlPS9vhRJFVkCHm!nDT83&@-UHCep*+~I`f~pY$gBvrbBq!&8mMJ~s6VPzA zwDz_?t)yjQ;U!FE>?@n{w*BHxbKF>1_1SR z_qBF6^)_lN13Dzd-N!=xJ70H=u3oU%*$3K#)QVB0)(pML}gbK|wj3e2To1S_-048UlFvq_{*? zmCr}HmPQwlHZILJw~V$wKwI52we+g!C%|-#&dfEA&Q70vpQCFN5Ku7=k3TKks~+Sx@YSWQCGfZ5JJdIo z1RJ_llb>s+FQAXgEb2K}y}k3tVUz2-+Z{UN`~WHheS&h8~}2e-w{*GSLKtM_h0^RUCH0%;!7R` zKrGrH)=0|mpNN~w-{WW66LiE&Uq^eo#`=F~)AnbdD`2@yuet_%udi?~bHi6!cGf9= z;onkJ)G73Z-;>d|m^K?aG83B^dTHIR%OBFfO_ek4pYkQ&=Sd#9Iy*q(Ds8PTKnor4 z{0*NcME~^U;OyjkAImLz?1WkYO^r@p>9N!_9ivlz&xD$oZ^;*a&d}gv$!;2RsopJ| zz4RY*S9DMavHw|LYG3d#ekq;6A64C7E=wjI6ta^TIG3G2$2?H1#KOXj6g$An{|*ZJ zVu$`%VWR&es4i^H%FGS_M85wk3cmaSymJu#!nz`QT5{h0#zOzwvjX&+1>RCv6x9>4 zo!gYTx*61?1cE<0t(0Z?3O_$zr0)N^)x9M=y5J4>v`o8h87b zr$7B~ZT63M{`agaaAJ+z6Yx3xFX3tG;p&Mm7v?ueeQ;oUVSDqxkAUn8T^Jtu_M`ol zV^&ZQqw}W&h6bnd4@ikY?jIZ+0^2_@e)`)hnBLaW?k)aq>*_`N#=k>b)l&fh>hU+V zx0;GIZC*65ds(16iCD%Hrj^MfE}bmccMNpT(&~~nsc9^OPs!0tI6@{+JX&gp6;$oC zsWyQb)B3tWCU}!L6F0!gAG38=47#svt*{_5l=W&)T;IN++nP)e=*x)j+-!)W`iGpQ z7E*!EZ5A2|-wu~QJG0PtVRQa7JPmbR)XhTdOj}@{#ec zy-7y%uH|D^#!Z)L8`Trd`f*^@_ZNyhP&V_=T(k;dJQH|y&=xZhjz{_c?x5v^EcS=q zOWVPh^tm7SP+pFNO(h2MPD>ng&db8>2=95M)cPxzf%8B_+G}SFVVD(^1u6y4_=s>K z4DPI&qaV9FYj^@-c!`E+H%d+zO4yo3_&7X$Jy@J51BRHCvV$QP&s5pWV2_{ky;??! z89jmV!KJ{;Eb|zARb`I%=RuKz#$RTPjwlnLAa;IMBZW4a3ZNVuvF1j9uYqYMmOJwI zK#QgRmpfrY$N?$wz9mTJ$k&t>VIJ;vDV)rKvtVwDL>`)_rT(}Qgg%=2a0?W}NdtsU z706)FjwC}aeLCn{f4(1zw42mj(k~Ew7cLM3bu=B6iIO}@zV0u@k|B|Ywm?J3m$^g5 zW>MjmcEHX_yka$=s<#NqdHCJn{R-V7o zzI%Nkom7^h@6T$ZtUAA@_n=|mSsycS2TrL?%jB_7ylJ=^ zO+kLTgh-b{cdv4&+2o7dj|HorfKtfj6o8}p6B)6+IBIHMl|NCoj;IsouU+9q3i$a* zvkCbQ=zS)m+fP9u&}c~xej{g@bKUb-Z(L3+M)g&1l?V9XjaZP!P$*d&SeXI z>F_PwxH(-PY;ci)v1^eX^9!^8%=8vH9x{v}Mqdm((DW-Qb5s!yI$cQaGh?#zda6!^ z2A6hqhuHO1`B+uJyACmXsp7!)w;drag^rVEdfTBSWAa(X0C}@7GSN=mcHS4rr0spb ze4!MHGV~~77Y=QED=c+z8)mxot;2r0+a-DWX_0oD9AmJF0X#;ki)mSjs3gVUv7eVu zA8y%sA%$Oxy{8Zh+iBvIQkqY*L2vs8fv;0$MK)m$%WX^h~W9{vq3Mz7FLYAfDiz?bH(~?IG0pT6l z?XcDz$r*%h>N@~nVLP-Tg)iA$g+P|HT4&^0aP4kikChP@A)<9InBdsPgP9%by5s9Z z=9R1JMh10`1$$@wM}&aETkqD(I)n^45dOGuw2Gqx%gH@+1<~GG(9A`2*Q)zY?uG|- z6hkzMip^xpP{p;%fW7>9IQuBGCOaiS4MsJPx$L7^-sSRT0ezse_J$Ub(gpuyD$(Q(ZtgnexskxnBO_Ae21kx zGVhtEQSR-j8E;E2eeF>(E)?19wu2XTUT}*482+DnTUQ+ELg9u(JciCo(d?fH&m)(}g z0be8=5S?3|8;YLdid z4|uKd1el+`u7B=hx60&$r>QVoIKnC{0teA&g*FJj=-Eo*-Oj^Whg|cF|3ZeOCh>|) z!>m=QkGeb@=03*SElF(iWjCLF%u`h0hT0sZ1 zn3(Erkw6Gfz|K|vjP2KOqsCt207UJBCkOBGwI)TAArDtSR~(!a>0bWK7gujWr}+mD zsnOebi6&Q_e{d~2=c)eTsTZaE%SHLONzN^e6JBr$PD^`LvUR|R7TS#o8P4ovdS62} zQ@cd`!&&&64)gr?G-S}lkv^z%}Rv8NtS z>BwE9zCveUT?N9lYR+;ZC$-9flz^cq&PB2_5!o==k0U!8Bm{jtMR3{QTX6q{`*Hwy zrmH=B2Zp|%5&xY$u9LCHS~L|!r=CVc!#P2pC(aI8f(|QvaFc7{@VT)Q4WiJd+|J=y zh94e|cxZZJ5RZ0VO&cO_C31x1KrJ6%v&5&o3jsemvk)w+Cynb>Ouh8U%WtFxQE~_A z`x4z2y#z&-jBW|t@!UqgN0~u@y?EYn>R~K^MSEd!BCoKXw*=1djOBIqT=>!4$L(Mk z8Wr&LR9dkdIz{6^iYJHSG=`M)xvDDWmi_9*x^0NI?2tDn^}A5X63;(shy@?-a-uQ3 zXICFzT1pMb5Y2Nq^{FvvFSc)!%4Pn(nUE>jL2PCBKC<1OUa9>1gsO=N=p_;@L|R`4 ziU;~U<3|2shlvn*n@+pt_RQfd-#eA2NG9l zZ9V*J<&md2z@tDiT(u7Nx%EC86f5M5Li39tG>Sbu;_NJc15=k{qU|}KB4uEG$KuJ z6ADEoSDJ=X?xz!lvz$J~J78E{m=Ywmp;$+u{Z~gr%fen)1CG|O*-ry2$n}f*W{FL; zxeQ+EUxjE?J^?@yt;UEmRz17!1=nly+gkrv^fc62h}p#Tt49a|Bg2+J)F1v~?;h>B zBzn`5&R>wY7VwPos|dr+0Nj`JIc}0MaiDMm%~QMQI@Y0%KcV6dv3kX^w*=c7BwN8g zDW-?v5`%@`@L;BQPLfmpw-DG~rkY_0OAFqV{Bi)}MH+!GP9%rQGtqixros{92pd83 ztIV6npgsExl^!t{P1D|7RvHtGj&aa+IdRrYre`llahU~Wo);mq!urJr zo`OHSUitx@D03;pt2Z;0;2!7rlaem?FK}d30bgAkjr0ahLQ zGAcn^ff)q0wf4M%NbIEni0krr_f<~h6miDL#Hqk2LL*sahh~W)Ow{GTg!s(k6jZKA zc)xNZxjLzA7(MJ&z!ohrWh48k@hc6SgC=a_c6~C>$;$2xoZ6Z7$#CJg%%)Bua}y`7 z3oj!{#DpY1w<+=}eyg78rmoZwahvNpzbFCE2@-kO;H(kc#?2O(#sW~`6T<=^B%f7J zOwxi4(Cm|4*#T8XQ1;Q9L};?ZM-xi%q(D?NI1C4)a> zmLH>hGpfV$LvIXY(BsK0x{+b?m;kT5HU6PGQ#bv2Y!#w2G20SUKZDBEsJ^}lpZ`l% z+{Z;uEnrb6a@blVXiq+u7?{-edgDMHhTwjOGK8biKrr+y5P~v0dxh#03Sme5W1v*Z z(N^;3DjaFAnJ=4-7yIlNrnkrEyapO!%^+vkY)r@EE#Yi%$5||qsQ5e`(UjPf!eZ=? z7S?u=oQBn-B3SbMBLy(n|_T+qou~VkKm^|jGwdS6b!mo2?5WF_ z{l)8G(DUss_Q2e#&%>QB^ts__5b+L|sf4y$6Fo|WWLv-}6>}d;*u~@ry>N*g$coSB zecDFW8b6}k;3x!J^uj6rn5St8ApMliZ!03s;C=_UF@3TpHy`+G5+QX)9=M4Jw(ZCe z3Q$c?3oS-XMWWQxg@s>nW#HmhVcC16qKSZf?NeL<^{m}6{553V6f%NivW$YwpCj3t zrflfPK}zB>;fgKV3MaN3Bm$w>r%_X!$m1BGt$IZE4QMU9BF${zjslDCbUu11vXn_+ z_c)VmMya66WZyS=?WlbbAA12`Ar z-)6E`4POfk@<=o=>%}KZBg>C>sg{33-x$q`-zi`U)0` z(abJxc9G?i4tM?GB|q%96dwPEJ4}SjVC>=nVrw+dJJXRlA9a2@A3X&{~{A+ z*q4(RC~E^HwI}_TIU3@`3~ptoWzd^l#V$+z8 z7sY^FIkWLNBY1YXzclw`%w|!5uBhgsnA9XS3T0HIt*!K2e01tV4{xK6e~%pnQy&+@ zyff8Zh?M$()T=>Q{u$GjPoI$RR-5YYQA+)kPxSdzAV68XT*fj_I9=fMablXB#07V; z)cWkL2w4b^0WI58&$JDgUistnH22fC9$rTL#MheV9eW3Dxi202POjwGg#o+htK;Z|FbKhYhwVR{sWlri8i-AcK(JDqn zvvKX*sl%m(xri9{DpRl4)pv|||A)h&H2-ogBLeKpa3RqxXnTcHzh@YK`BVX-HGlv> z^7_>~rEgdrf945}C5vR#no>ND95Dz0XhZ9zk1QfJ;b-62)hlM=l9Us$(f%ea-paekl zzZFLvu6TEb#X$<#_7gOP+Po1q*M;Hj$%#gsj+!Pb^0qMNa)8pr7fz&r6dLx7`srZK zbH{iW4h2{4TL{V>sArgBFM}z@5^Cue279nb;!=3kdFvnrYU*^iQM_(`S+Tp3 zxtxUIIR_-HPuL%dpRj&O6W9J-gYj_pzAlpz)vQwwjzeeN?!%vs;}vH!vk;fH(BL%dui!3L zP%LT2VwcyR=U|7-RN`mEQ`rb_p(8GFyV|RUM>Ft)4=;A*0a-Mf4Vv^SpxxP$Vm@io zyp$dYFTD@<)FGo9Z&GR;C@$j&?b9n&@PY7E?;?j{IoxTH6T2>xZp72*zLG*&uK{dk zK>)Z3u2J@nP|fb?!OHHm@RLE1AL)~W2xNkJ%4t19CPPU?MQiNKXL)^WE;=PQLuiu% zE+ss|5+*kj^{>mfT9_hL$!h{G1hZ&ZEMkBi-^cWMXH|RA=Rg@?50DVg`Lc{_GNpkMz$7-O0T<4s(#|jFEj~DihBl z^QxyDi(dP9FZRxBrTt{IKHLlRH#wrql|f69EZFg@GhzJl=3}$uVA98E38jYm@wJ$Ae6?Ha?yD<7 z7+#8``u8c1cz4c@{fvIW9Jd+UF_VNQo#QuMouwbQl$f1)krW3O+pd3*F*1B6==!5w zZwG5BvkwPVahcKxVX*&J!`17VtBi|Vw<#7!gC3y%3;9IAQD$6j&N;&453ripKVm9a zw!(DT!(E!BpI4ol?XlyB8c0L_b?3LPV(6dFf60nmd$m+7-!)fTJjNIwZU&rSr5J;V zL#QsFDBmk}PB-AwesEH>m1(j>EArVWjOGlPI9w+FPHUCxmRG!y2VigI$MmG6=b&W>%JiSt?;?am2gRloo zRO_#rl36A_ll7a0DEHv6+_OJh&LQOO3xI?oTqVBx4w10sY*Rp(X}XE}RS>E8 zvw4k(+l3ObCUTvp*Z0eFxF=xQ>WK;L?xz=zzN&eG5`VgIDJws_rv_2&dhc-#RH#f; z*$4XTCuX=!6*?+Fz#?=b=fZ?bUijwf7W1T}z#`Ym-JCdKyaJP5=6U9mIt)mN1gqYY zvkb)&95R-e%X`CKN-5lD*^hpsL<9D7hc7i3;~ovEJ>nMN5(k|1#m| zV<9!}P_9`gn;3#~N{Yx;Q71Hc{haVy9)aGRU2;Xi0I*-Er@;CE)ItoA9w<*gd{N;G z1P>CLu}vrkuJ*0NS8v*pt6cxc9H#h!al138Ub6yo5_#?nSgU=wh2BWi8w9OBrT}kt z6jSOU>BNnrfLhwPdE?AozSiborC4xUwg-qV386S%c~Zris%S+^bO2YLH# z?Df9#h^NNSRZS3@EYBW;+6>|bphzk_nIs4nxW!OAu?FL3|nju4l{Ounv}M=`LFdapb4mKe1r%SB`WO$@!uMm zJ?tEUS9gc{z7?hZ%!o0S8lUDen}}3_KuhrPSbC`^w5)`PLNW=Pi8{yr(2=apgn!_u z)a_93O$8^IoV^Eh0BSX+!UgIN|J|HgD{Ck+jA!W+T$#sI&VRLk0zKztE+dVEGAW3g z^TNYWmx!DJ&CSJb0gq}T@|{Z-kTM=L@as;-!T|$9$Tgr~Xh)_-?Jrv*U3$kS#EE5X z4N1&nos3kF@(QaEZKLfAhEH9D!;?-18-;{sRbqRnLvldZqJ460lE%ak(_>5}xt9k` z&Q%ngBx_aLgfjNlvQ1j^a>itY3D_U9e6T^{p}kB31zHPxDtiL;V-8;c5?&Q0NVo=$ zerK*2O+wAnyLdHI38DhG;*i>6Fiora_Q;E21FejZb}! zIQ72g4LUXNyO*tIo}%_zt}zz$3Rjh&d1jV44IL>}xyvrMxWp%)gtYv@i^Eg~hHb*c z0X?oWJJ!4f7iRY(?n645L{N!fogh2=*Lot}&Jli!=(XtPun^kgdzFzdoX#Qm^xYlu z`5~hb>>Oy)8MigXlmU52Aytit89Zsl1qp?8QW#k(OI)v*BZmgu3`xl!J&d#2u@*ltU3*D0l)j<%nFiu4;F28%%LLf zx;6y5W=3CFGvdA;ub1(}I=7+6LgxyJodd)p%e53>2mRTf3fY*r<&K zpxBRc z2y40~E>ia;ec6M1LLQ*TH+jQmjiszuLaL|}iwLoLZ6&QdQECS7xB%|g1niOBCV8h! z&p1tIRhkaNwbOqPg)DVr1=fR7{Bnnl24TuI4U;g=q-ksM1fX>1tK|+8{a33cH;JzGN1Rws67wFL^oiZ^N)xG0I?cCwJva7( zB9dv&uCbJ{6CK!BxNBQ|UqFBZ4d&sf04Q%^BbO57ESU5(UtT5ekIxJjC_e4d16O1$Sc zvbFXnQ{owHAOQpgl3cbi5>Nw#15wg~Z&6f)TX$#cYwLQ;vW;Y$ypsdDwrzEM<8#X| z)XD74I8f##!r7EZV$xQ&SKqQ-bdyF)ub+H>dZ(M5gWU?Eqc_~@%dq>BwT*2`RoVV%6 zmiZfozC*^MwAGbq{sWfqEpkc6qtb5+;ZRLA=w}{7Oy9jT4eLre(n8!bBvRH8*LlGL zXOXX^1KE2;oE(8ReuyZo)27ZXDOMEJCv`l>SVyr6XH;T^4nv^tBs9Zt6hTM{z}GvZOv``8tht#Z zhwiu1s{>kZ;e=)AD2*l1zQ^VTzI*tJ>~x^gT0u9O@#Z&`r1x=>eW>uwuIf2WJ%07k zW}!Av+Udp#HB9bO%LC1Q#`=2wrm@= z(^hy`mxfyyzR?JBaDOw&d#wUwJ*XIcwbT{K2kQ7~kEXoy**_loL{AFMqeok=1?7J&r=3(t9+D zbYLZj>#6^E=*Ck=kLz+q1~pJb|MNGA-h77cIE|6p&%7w76Xq1Z9KQYE34|A5oRdqhAM4n4Sc7iQx9HT+E{`I~zxyi~^|U1pcG*Bx`O)oMG>R)?v2x z-X>@Qm+*9QPo#epB!=d2E61Y>E{z|;MNO|Z_EXO9%vMyZt#U~(2|rZtRhs$?2B2$< z?05Gx67w=JO=eAVKbe7xEHDxDD$M3ApO3$=Th zT@PC4Gk1G+^P+yN(|iZFsKzbo0Z=R6rZ>TMn`;yW1X``80!Lpn zT9%K^xe&&w;m;|kfR4}UxoyuzV>+d(O&jaS`x!D$u%TWxnXLsj011g;$SuvW zz8B8sVGGPd`k{Me&I^7|$d95?jqq%^&~Fch1I|i3K3=UuRs3Jh?uG?TZWK>{5%$~S z(Wvo3lO@$8$OU`@?3_M#0;1-zO|C=9%R8`9t~i zX6)7rT&Y=l=M;V5$(A?f`~p-cgN$Ss%&WrNGG2O?LzkFar|A92UvCYpq#^#|#Y=BC z2du@^H~~0^TRO`|sJ7))13e`!KE#&Yfqut~HyB zOO8>qqSm{8%V^^|npbQZI`T`ypldB3{J2U*#i*grob(b&dO7Gy?z@W&xB9HUA&`O@ zubA7rwT2H8SgG)OGsWGh|8-$ZEFiO88Hww16!)g}$+lA*p!~fZb?`b;f?_DB8b2tA zx>UDgx4%{8{vvtqR*zTyO$<}s^iX*)KV}LCSDZ1Sv9!ze`Z-YStW=CdH!7*@8UsR( z35tiY6==i$Iq6Rn&s2kzyq{|kOVfxoaqpAy98Aij~$2Z|P$t$Kr# zmA!l)Gh~7xBU~6wb?DBj~c&$AY4NQs2y)k%FBVlP%)NOtc#NbXa7nth0Ag( z$|FEUfJJitH#WtEk9b8dO+mFc_`@<^pSs>w^2n~)^+@RacJx@_nIF{ueAT=2mtKXx>O6C8aM?aFIt=>Uah#z=oCp>IW>$EsNa&~Li ze<~wJiuauC^lK{sHX+%U4jyBB5K|Vdda0L3(kB(8ELt9j?Vawu9W)2mh=cn0?QXu$ zh0uND=cU28nci<9eZdXMA)=L5zB+gh^lVqe60wVDx3a$Ck!2hAYr$zxxcfl*=$z<9 zz~UbVXRI=#Y}Ar&XhMHSlD!hoFGnVwNNm`{*_LRj^Jk~;lu%q8%v(uqylsVW0Eb#G z7GY|`gj{`F%E2t@qrlY~1Skji)}onuF1-QNV&ommEds*1E*p63wpoPRY6%7dZi3D+e(t$wK`H)!+=NIRJ-#0P3?n$kDe|S%$f|a+LIul){1f_^On| z$nut(&i>-tWOi6;x5RZd0zJ(eqL55!ma|Q;$I9gp@8493x1-~c^lX1_dE#YiD|lgL z;4;Gw!}dK8Z12uh`1A0gLdDnwSM`!yALj2*JJN}}x@pP*y@i$$$LVkIURx1-71-sN z#Ox=qCMmY>$O7|@7S1FFgKv;}4+UlBn`rW#_B3c?ErIV__9dn*qZ?i)O0t=n$aYw#MKF$ObJ?*8_PFn^Y zIuq*OPXMy>Nxq^b;I^qfs@Xb))ZSgNq_z&+KZeAk4Eyl!PiLftL%55ims{HZJUlib zy!h>Z-MYppledR(1(ESY*6A<=z;dc88=&0!Lb>qE6e#NUvjUQzXU&kYB=U&Neodfq z;Yq?=!mmGh(1cTK`bBTQ^h`P{e0$sk83@988aOvKYt4)gdXK|xh^(%rj6_d3XAKx?U#@>>eha@+%J?f=mL;?ybp+4-TbskmtX5Z)DeB6x zb}#5SD;PXIqKj2oZut$QjLtb$AhgZ0!D_uIyh-vtDYDJfBb20V`vV9FC1`(Y~ z0q@W8ZdFaNkaFNQBhYV*(nn&zX78 zZ>UMhR@Sa9s)i0Z?TJ0c`mw5s*^(Z3x|XDX(`a%;$0JD)@^lZLbzEOB%$DDCg`&{1N&Gf4%xr z;3P&fVHZmy59pno6!d{X?`A5)VvpZT9!;&ZbPIYfh(lJxs$Ndcokt3Q&2XWli7)6` zk)L{Q3>rmV43o-Id^#nJ#o+gh5}IyS?%7!)%m@v*sLuYn(>VS(W8I$i3D9GM=s8ro zAN*THpwR}s@Og@bR4%M|yDfZk!9ORBbOnY}DqZMC%>2YKmrU_=stE3OCn{Y0dmC^x z4a-ShT7Hp~o-@(pyby4Q>6(ZOQE7c0(x=>UM%|-3Hn2gaKCzQM|5xMf6;$9XO!mwL zpKyzF>f8@q({C{vvq=JwG!rq#!wZfWkOrye)ax6YwZT>c7;QE|4Z(ZLNa*ILYOEdU0u{=#TkqfB0$(~71B0L5*>k}wJ&*)=G^%t55RW-sy#H^ zmM7lJ-{0ya3D<6#fGEW5z5n2|0Jq63jT4mSJD3h8^BL2y;#-s1rr^M}r80ZiH&@q= z6Op&u>b5%KWhpYc8LZz+?~vX0p;0_4p?_>oqH`J5y+yB@WT6cLhc23#0bjtx9^*h6 zXo=CSNL{ybZAngpf*VCQK@Qd{#oonC%rqC>r5*@RmWOJ(N5zq7IPaG9o1XgpiH3F* zuG1_eFPIjX)yh@MQ`hyV_G9QR68 zI#of5qqw%m)gNST+^msn7e3&w`$=BR`GHc~N+KZ1sk+;PnCnTZm8Vg?h7gg;1TsH& z?(7_ln6~A7=~)Nc4NLbcZ<`Y`i4E`sg^=%mUrS@ywg^CtQB1EngLrv0VWr?sKneb6 zY4BMjInJp=i}BVhPYf!FN4v zrC?Cca1ToAjCj6*exs75PAFGnI%a}H5hzFI^toW%@FRrKCqW3jTBsd=U|-;L>1^O9 zPEt-ma?$5QBxglw)r*5wkLJ~&3DxCYkCZIuDfB2_v3)V%95FNZ4g+#l>-%PU zf+qDw+BM#l1$A?wvRc=RH9k`{$ELPv#L>u4S1(SQ;K6CHxxPaS^wUu|z^%CxQ0tsN z?X{hbt(LAzrgOGY&Kkz7c*)*Wy8-IB2OSk}8lEwp`LUJ)PGLG*(mWew*cl@X4S~1j zTTrl>A`aPV-w<|>d2uMO@Pi_?iWx(ez51%x7Wm;JM?o~VkvRGoqqN9jn0mX1L!SiU zF}Dyr)reGx*6%XI%-2$p=c*gUyShDc7M%GA5jLFE@?DCg@9nsz72OBk-x1Z2Vuem1 z`+Y`=(!eo5Uu1Ac%c_Ls*y@Lzy3l|=Gc8y4vL}w#ij!Q;ktH<0K+07TD)aH?ui-6+ zM7dcT`Vn=p>!|0<(>C3DP9%`-rwU}>;LMXcKg`Eur!sjy*|b+uY_;O-JcT=;WN)3) z3XjuNYumhOAd*ZZJ@~^}TlvWT6QErjTTdn{H}RmSE6SSB0PTWj#>}Y9xNYeC-U)=Xi;SX#zET zZ&LD{>RHd|Y^gQUGYKOdX5M=sIpNG!uVeW&AueEIUtG$!*%X1{8>8_~7%CCHK&yLX zMjQe?C9PaeoIG)8{o78=R^T3G5&v7W9jCa;WF0{)LDpi4E!(uoCkcP_%xmh(0Cy86 zlCXktY8jT`@y&OUxH-!j>wYJ43PxL!3mpp4Z2Sx|o0Nn2h2r_rmeqD!f+Y@RM>z zq3K^BrY)sT629I#?ii+oA5P{g;OsyheKJ3_6S(iEJ$l=ns_c60dl^W99a-(1YL?xY zU%)LW6UO;tUdSXfGu|2Mj)I$~vkA0C>7m!`ywiJ31tRZS_>`C6gB4WsOzL)xejlvX zPtz5Nqc8H7EP{a_|DwL zOzgdO7vUC(DJ7=OUPxNpR(|WrZVWdpL)gUV50#f~_XMef+NDv^kiWerMlV;E9Ur#D zp5A?dhM7$q+u>X2`v>rC5AqNIe>zF+$>UKt=rc$w(5Y|NwfDcseqE5iMQkk0I2(e* zw%(OX%zZnwM3;eU9*7{JfYlC@EGi9?RBqMW@`u*)|3tb7TL=(P2TN!Fg&b9|LtOUb z%0xeIc$Kya&$kZ$}k5tm4$um0OHVAJ(YNo5h#b z^ErBdId<=^zQF2Y@6;yqS;XV8#MMng?_Nbme{(3M2nM2os{`R1$hRAH-0R~ySo?Y_Vhpb^4E$~+|d&+T0PS^FA|x__Rk zQ`rmYiKWKKHu=yr{WqqC575ku*I^Fy{pF27mMN!=+nGRY9g{9MYTLw6cMkIXi#Taa z)e2`j-+m9e4swS}{3NB}Df>7Jx?h?qnR^KSJ*yf`bmA0N6)|Uh-LIy&i-{awXsyr* z@nVDDrkKQaVmV;)qmh3z@Uof8&(D))uAa_er1;ojE_+P~qE8~dke_}!lJr-xazlax zxm*@~<=)inuRRpSqxs^hj6BtmECM>ht5NoCS^OW7WT=S3+klXKWpWJXEOk#>L0VGe zKP6PBO>~JvY~J<-pdf!plbzaBPR)E>EY2#daGO!vtQ9D2J8g+pu)fh?yI=urP+yWW zeVw1-B-8hG6N%^bL9@vERyWu2rS%Tp3@CL%)q^FKnF$4ka%$aCi%$p->wla}6hSK- zP4cZ>j}7Q9uX9zTE$Iey(B}qpXJlk7l-x_^u%HbJVux|Ou2)moc28K~#X+Q>uNe5l z;2S}T`}zotZ0(3U*OH%4whB(k#0+u;@4NSG6E1iRDLa{_Qzf{(g=bY_EJ|APu;?V_ z<%1;Cb~yqF>IZhp} zXB!k94kiEbnkRctE}ikF4t1FkvC{*kHvQhU_-dUDfKNQX|2%$CXbn#H25G|?Q3>*G z!PQxGq7l;h2#zKV`T#da#yS4bpS|(D4Q_Tb02MdzXU;Q!3sj)vIEt)7KD|yCZD4N2 z|21ifoaMeUZP*}TBx}^T2=b9}58OSB#3SXdw|@Xbu$BgyOLJY)#~veZ6i_@eQPp}c z=g4q`-s6&y`$P7*t=9vOUmMj3(fv@GSat_q5_V4g09Z2Xa@dE#X#c@&w-rHGT7lt9 zkk2G+=x=~36?-c(2MlM?P)>q~pP;~P?kR$N?5Xr6>eS#pW8vdmW)7-bS6TM=c^i@R zE4>yPxo12lFy**i(XiiFUW~t%uB637-+v1x*<=3uHa6?c>XvO5?7Bcgym&0SCPn2$ ze5&wH#p0*HMeTs58!+QvI@;V`taFeD62`6U64cR1uDjJ?+}=t%*5Vti9Oz#bhL_&q zPdC{=6Zwk!xi=j>8jqru3_a8%>aFX33KH*6H$dy#JtEXGttY(@ZJB-yhCmHv^{4r8 zvg}v>c82dU!Cf>q=4#MniwoOCUgd{&)4GB&x)L;D;4Qhu$RS4MG=OXXEwm3k8+Mk#O)? z-tD&CKuq>DA7e;oP25Wy7@GTbEbz#_1p*3-&g|+GoW{lFg|%g3iDC-OCPdNgCqnW+ zTYFJj{=(!)&DuPHntE|m@fnU zIj@3dGYM8+6KNdJW|N`%e*(-0Gx!1954)0uuwjng3Zq3Nk1~B3(-jT5)x(=v&TwMv zdEZH&4K1;h^eN5F6-5L>!Q^hprzER{`_&wsF4X+G3ND5ME zc+Hlp9ySFRhAqug@@Jq~Iytm6DZ(#<^^9^63k-(gLm1V9GFdmM|=8u4s9GXF1pmeL4iE2-*-Z@~g$pyjR4mK;1PL_%%}V-bolX z4y{f=xMOsFd{TgD83L#Jd>H87vzIYgx{M!+f>|J&yu-D(pSm{Q*muxt5JvxOr!*z~ zwS+h>U(Q=Zdafnna>9>vTi@gF=11w&W(YJ4)S32)GnJ5e(pC)vstSgM&aev8?vHb? z#V=)`p)-CJEhYgPBa^$oukkZJPa^!PIx4H@Bi^^20UZUDO_Tzf^}C-DtuXu)k^gkh z%jigJ7)LgqwpLkx0E(CQ0ct$W32kh@-j&gpP)pw8Qd&SKnp#KR2LA`<288NpONJoJ zKsQ-f9P8U7@g+5ZmngEgZP~ngdMv&+IE^Q6o#B%&b~3#FT^A2{0x{IQ*7l;%G9tG{ z&{Ia#WkosUesPC|*8~u*O~NVv2ub{2 z7DLifE8hJI?EL130U%c^Yw9GZhBq`1Q3#zScUzCv?9$Tr8M-IsexOE*uwzCeuFbTVi8ZhIgv zWH)nh$83l${@wijv~nLp`qYE$orz`YT^_e?UkRJ7*%~;VQ6@p(tX)mvBQjt?mZGwF zy_}(=+qfwbsi-93FXmO()Fzksnd;G!PXwzMM5)VpVId-b7`zV~rmk<_cmtV~Rpd** z@1<6tSKdKoo7<(aWpFPfNM+Vh(k(0-nQ6{n1~ot^W~+tD_=@aXDM5&Ie-P>xsJZG+ z(;rS=DvRUG-0NX=-e5Mc!(?PFrK_*wd1(@-%Q6+BTt5Bb_(HScuaumY)?^xoPL~G` znWH5*5DDNF;q9qJC-+(1m{W*x8sc#fxrljp)Y9<`8~h_+sp?IyICY+D)0f9y>;xyr z6pp3Zg?rN9*25|Zhd3;CP?5rBY|$+Se5)1<39~GV92=55PYrzDaY%*g?x(fx1_P0Z z`0&vVN{cn)gP3eqlSkqsrTP=gl|F@_+OaIpWc09nd9{J}u}F?2Sr@U`7Xve*uMaq~v6Q-fTPZxs6nixWCq8(LQ5)$Lj#Z|~i9l~8xRp~No+9>{x zp1-W^JiC&_M72=!4YhIDWRD&h1~t5eklRe|?2s`amfO`&=MdUu9Yp?D?9bcxua9ON zRxl!{3|yd}ikUfWE+Ye~S z#S>0I%2}qO3}Ft6Q0<%Yivr zP^}iu?geqFV!F_4w8EnkrBOMA6C;&l+@1z9{~IJdfSBsH1`1R!X{B!17P<&7Ad4S8 zCdd1q9z$Dsh8#l)-~o+Et5zST>!H<g_u0K#b_dO2 zZ|%Z`e_gwtN-Y0XIDnq+pH`BNoeUY(Kh7=12wiwNOkDsEV%Go^^n^T1*bUUZO(SM4 z-Ub|uHQ2tHK2?L7<)-)t5afL{6@vqrBY$qe)rJ?2s?%7EFDfm@Yw!Lg48RIyZe(+G za%Ev{3T19&Z(?c+F)%kXATS_rVro1*FGgu>bY*fcMr>hpWkh9TZ)9aJOl59obZ9al zF*7$eH7`tMZfA68GaxW8Ol59obZ9XkF*P(ZFHB`_XLM*FF*G3UoEo*hxP?9RCGKiSi8ktJk+JG5Y7@2tia;9Lgse_a)*uv77g;mKCY-}N_ z#-L(r4YUC;GqW)=GqWI4Qi?g40>PHHHsV0ADK9|M!4e=3bO5k&0$5mi*;sj*c>pXt zJUkzc8uCt#K=ThDR!$xkHUKLR8^^~nK-3cK2>!sZ2B^8&nF3e<|0DoVa{<5FT(f%CjtTi{)KY{IG8$`Iyjq}F#a3G#>~>h)COz`1btwe0PGxW?Hnvk z!9WK$0ND1wa6c}nGpaHIq!cwIR21YT6x0AJ5~^w{GGb~H;s6yHDQPv;4<9uPOGkjC ztr^$_=wJ!}f0SniG&cPQ+Qi8i4EQj9JUV}b{m9=EZ1I0%Fap#aP3b?7Oq}dMmd5|~ z8DQ%GFtKzr2H83~eV~5S47M-@NZC4@I@nl$6z~tMqm$7O(~k%riGLIccCa-5=ceNa z&`0MSO~C*&TZfN$mNx(1{XjOgaWn-0%^gfl|AqLc0Ut(55fuOjDzZ!L|-eAKG>LAOZZ*I){Hc^%mxch$tSs!T zjQ@vlKX8B_jW)M*{Fs*yGCzWum|6or6!}r^e<_EB<%7KsYK%VIZ4jCM5xb0ynJs|l zKgS9$fRHk{vZxO{r}H^{C^yW|6>>!|2wRt z69}XLwEhVEpZx&%&w}_Ecfh|Z;{WmoT3dqL{(rflY5H$9)C#r^)t_l6SC(gytRHe>$Z5dUMl{jYa<;Ky9L z0(6-F;r7Gv= z@iDL5JRDyCCy=p|gTn`_{|fD+&j0ytX8F-dQ&U${W5neJTVq;j%$KUL$HEwDXA+0n z_W>iN0O)Um1Z(SCOa%?HM>oaInjym@5K_bA_|-xd+KsFQ3tAo=;fIs{tQGxv^F^XWuqrK$PRNM;~8~5dLiMkvzCcajz?;%lAW>ZFD;!2@eoLBKJLW zmcVyEPxUBLyF>b)DMYFPM`q?+#Q=tZ8bXk_A(xq7O|dC_(3TBM^fcW5&36tqf<>Hc^s-ROl~4Knxvcz5sAEqOrs5;X4H`8n+|4Cx3F zM*b0;VVuvLcEl>ZnA9+cdZO+T0=i)mRcpZnyzy2bP7-m^J*wR!t+yhbSu>eazR3&U z<|PM7%8RcTgxjoA3~N4@&zU6M=NUyU(Nf{NgtstJ7VS{bVPGg#DD~1qhZ+aC_`iJ`E=BT$ z+#MWvGtk1>GbEZ#a84YB3|39nXnzth2}^CbGjGAV`!v;ARgMMY?Usv2V zncXzN-%Z-Wd*NbP1Bd=As@*OhjR7CEEv>8M)+e>ReiNSB-gMDd(q-4kfEO_Bb#RP0 z7Qo#Ya3S5OhSo;2$yDplig9^})@;;E3?CU%g>{>LGxI2XnW?}tc|P70+ag-|R0iEG zD0aWaBYEkBM!>pm#r=5{R7)x}lMyBX(GL>Ifo&0dZDC1V#IiVbBhjNen< zY=~Srlm-I7PrRO3a+GvuQxVG{56M2Kuu%{s5!$?4a*)%-{8rDu!aRJ&C|yN}3ZeoS zm`cS;2B?t?dz)}mhfm2JVEa5=sCwtXXkqdRHPsnznf0b&(RXeQDOqJR*3G{)dhI)| zTsJ5erDKOg;t_};jI{`l2!oJZWnT%(*VgyQ`OyA&O z)6(g&x<@`zl zHe_{F)BGM#ag>PK>q;*&iaPwBX;q)zjQd%A=ljsB=UGQvJImqr4#2<|(Sihh4eu=Q zPx<^O#`&F`IkB-+w+sfNGghC=GN7*-Qb>WMYR5`+dl83M_N)W{-@`Aj@axD}#I4g& zUjr~L7sa^{tRv(~Nnc>Sax3B+ENV{0eN7so2dgg83pmk2(F)AVX?w28y>!-NHMd<2 zyg$u6y1%O;z}2rK>~bRgsbypyeP0+mkzeXst$e1kHhS+&NUltN|Mb7%OEw^h#J+vQX zG8WWo3Q(Az&lmq9_&eh`1Ka-2=AX5o7wD#Xg)H97kj}Z&>2|V#x?^ih%6DLi?q>wvT6hs93JY{9P+VM0UAB9WzAzD;)%y&{_?kUjke0$lT)6h~bwC&+iRO zBnrNJl}mlP_`8C*kOGQ3@Qksme?yYP@F38}_ZG@nq;n`;P>Fh7X?l--nQ4}&7OH)J zgG$r%!9N+^eLo>c$3(vyKJKSZN6lCxfkOi* zftbv>Fld6q_ICG2?C}6Q+yW!lT;wWD_`_j%qDY777Ml`tdr$ZpPXb#d_1J>zF}+i7`L1_~Ewp^aEHC5!MUi@IZk zy$v!81m9!b$LdNfHvSyEmdY{-()l(sA1*u`&|@rm*Vuol9TrX^#zU2qJ5!%LJA}}| z8qg%AWDWztBe1dD6SAC{>)hO6+8Y?_3CQ=p);vK`ie&$+DW5jbqx4>%8fY?s- zk23-wZ>6N0s!O1=O`g%`n4c7s!_6!Z8T4~@7Z}( zce6}z!eObTieCKG6FaEAGPq^giWW~vHs@1A5^>ESo@N)@=BM!kIiIV1wnhI5Zi;kQ zzG`uNBzM7^-NiJps^+f!4hNfXzO_)d=a!gc-ZR}Fr5M=`f%4-Q-&NXVW#(MYqqY|p z0P`j#kn#Dme>+Wp3)nYKLDiV- zowGL(dW$9*&`aaPQsFc?2*)9#40khHkJ{V3O11U{tI$JwJp3w^m`S(DGt`7}hvsll zjL|j#HQ_5FJ-S(+5vrpV@xJoL6C9baH}txNH=V1bYG;|6;81_)E}E)q={CssQcn!u z38i3Z7`$3&rOlM*cxgg#!&Z!e->u+jj!GWZej%0W@`a&_%Rbg}9tl54gG|Ny`Fo=J zuWl!)-E^_Qy01J0oL}~@={GO*p0WNSuN90t3)k|gBJ|iHUdS*j-AAXC5$>ilyH;yqeI;AE+L4B&XrB`=HD88by6N^55fop)g-uM zd|tKHI}Bv_936UWviL&pykCcs?$btdYy~L6l;dATCqEg_5$(O8Dy(7!J(l;9aT`0p z7AF#2P9&1g@j8XP{oY{gwQli@JcK7Qc_YY8TE1e0mgHfc)+Xi;P}W_0#vT&>ny#od z3JC<13bU5e5<{>OIJpBLWv*L2?6^FW*UaJ2De@KQj+JreLk~vdoSr4wkkH!S>OXIK zC+PM_OgCpE}&3^*t!bu{7PecGjG!iMF8*&~yjQGEENpjdK4_$|AhLom9blHP> z6ZTlBE788ocd$7_Kwje?fhmr-e!e&Re%c{SeIGy6=865$8!nLNcyWHQwXJ_ZhffF% zV^t2`vH46Oa0O|t3RHBE#=_`-Z?W4WO^7HZ>+mWy*Na^t?z z4$(GSP5BM`;;v(X^)hVG63UHxER1a%5&T;%g$;b4J`Q9q@?hDu^+%R3tkTTWnf-)H zy2t=qKij@2ccWF)hiG#*WeWUcxiMd1>=QIwP51J50@;T6%jmB_bb1`5S`VWyz5QJl zZK{18^t3Aj0ctR@X9qtX#*Ms6F2NGN6LcOLK*KQ0an?P)iFvwBhd}( z*Yt3wM6fN=r#_O3?Fd36wjwa*bvOm$0Y8Hbj}S0Bm@9hY`h(R*BM#~(pzGLp(V-iS z%P?<-zR>$UY3 zOqU3!9geW>ubij(T^7?S9?UzhD3Bh@Fl+0?>t(+zaJn@YE1fB_wpOwJKvbyp{s~7?Ym!aV6#4#*)~?|BoMG6{5M5F@O!?Apr^{?u!$Pp(Al$eSxx(a&9fA|&Cgk;Z?O~;^344*{ z)K7%sFcC4Uys?Qy4qPxo7@!?#V5ceo_VY#)7G0RI?upU4(Moeiz(hcc@OmN4xjdZi2FiuYH*D`L&4^_{cy=;^HmUazJ ziyP|o$7iu~r@HdecfWjjP{jHSlwq9=C)=X-1~`y;TA1RL$_FR`+)xUFH8{3dOA7I@ zBj3L$M!WdG^YaXtHu{*m-&8eN?DFLj=9tmu9>p(UBxhLUn7Z8BIGc<1VQrUn{2qX5 zhg4sNcu&TbRwdM=F1*`-5V@#5;^YlujBUQmi#82&7D*fkB=s-jzUb7yzs?{@FvX8_4ytX#e?z$Y zJS3O`acSt9*mu_bn-LwcGyr0>bD7R&ez$H$J@VdqFJ0am?hnsk7#n zbha%Khc$Z?4RP|T6!I#?^{+dY*Crh5%20r(CB#BDr+X`_(1KZWzWiK^hr~T%!~XVU zuaPTRG)NJ`t!~*g=N41%H9L$40e&~lWW9$qH06nsl|Nx1+vccfunALy7$_2=!FvUI zjCo$MthCf~Fh*R~RL1a5wk+a1GQkQ&a>b0h^%?puQ50x|A-@cy#4^ihn-+(XTS-*N z-~JS>4mtJc8**%~(h7w{%WPt}!SiE8n}6wnMe)wmnruEJCyjpmE~S_zL3_=Ga+3qk z*^Kup(<0^QtB>+5mTvjW;JT`X0J0%R*L z%kLrw$=3n}`7GO=;O|AqoCx6LOT3gHCqh3+su39|ugES0TFtG#zhBe`AUM^89QD?^ zD|-)`bjE$wUN2e0@_QfYweY3juD6~oA&RkeG3D;Rx1`EK=Wp1^5c8d-b&o-F+359T zDB$&THhQ}%HN6!1K7@FkZ-#)5^QlX0988gN&?)1S#hWxbJB#6bO!=d5%nbwE;CROr z5=)a15i&wUUv!)m3uJt)Ge+;NNy9|yGyDBt zwtUs4;oW)v{6Ze4AB$B`W!gpDWU6Cy!T!~(f+%PXfr5>CXQ={FkK(&-KPCd^97e00 zrA2QV2GtDI`h-kccc)hB}KVe{q=Awvq8GjaxUXNHTJP7g~;TsYKz1jOihG8gB z7i{ZFyHCXBXXK~002&>VYEOd-gd8~nbx>hzT?wC?a(-WU|Cn&*{PK+2H8BZa`R)xh z5BG)!G~pONZ;Z8aCe(Y5s8E$q@LoTE$vR8pNaM^lKe!vUL^yX(EhU`iKTWs-eZza|S>Dwf4kEf~W*a$8_onPIE@a{CX9ob}PA82kD ztRmA>rYx(1tuJ*P7pv~=RArpT+&zTz+_wuzZjPRu!WQ4R+k2ANICzRB-F#{KF|qRJ zwvyDe4r;gtRJwfh;36YPL-@%R>8=H4Y}1C@nox$tmM{J|8-`>vYOf-cK<&T|WsRV&0{n;ySop8)J}>CTIYQpb`4TX{5+ zt^5;*Q0@1U{0}S8)V@qeZH4uu5o6cQ_XB}!LjZ&=u^rgt?UDWe}0)L+Z7cx^@K9@$5CJNvDr|l6_xSsWnRW_D3 zwS&`W&Jm&xmz=c1);ja;wD|VXKeM}=0b_2?yF9a zS27Tqu?#?8I7=@&cJ{Nte$Ip7wWtu8Y~mpADNK4{)G^Lyo<-^M&q;;uqXuqTt%P0r(Vjx4$o<^{(#ruBouqGXMt8D5QXk}+RTk`}vM^`1*rtql zxAc=)5|2ZBc{%K7uddoMO}X~7=aPZ>P3g+6U%B{G zDf4g6CZD?#6Xw9U=chAg-t-XBZ@Qznq#l0ZYyKKn}L*&16FvZ< zm8qZ|8Q;#e?x#UTl&f7 zls^)%y@hWEjPW##CL;!nxhA!K_k@GG$G8^pcIA*@QWA%CmM=5Eg-N=N19!}Ool9!O zToixja3a<$CO#(JsZLNq4ixug9=>Xat(u`|V@fdvSgQt=NnoSyJ^xXT?JEELEP8!y zGU;=^BztPOJA~hP24X(IuUnfO*=#r^4k*($y-i`COHBb>!h-$c^gG4|+C^{CG z%(!@u#`3Rm!pYV#s?S3^Io5K&XKXC|mZKk~0D)z5Wc{obs~L9X6(g@z;r4k$$MCg; ziE)vx2o#@yxvKXX=vJ61z{~oL^kk7{;#a-vHLGrvaRy2o5IRsfH?7>7(pDv^?`89$n`LqX8P`o>PRZ5N$Nk7BcCpHwt zn-<#WF^Bb#Uu)?Wb;;Hqzswgg)T3zE4RAV*GRn~dZ1&V&4c-e0pHdptUdD``5D|T; zkS}as27xc?FVYYLBhl(pF%`R|yqeGr=9NcDI2t}+l_|-L0Wg{?U}if6Gr=F>-EL1p`j(G za(0Obxn^!Zy6E4b0@J&q80tjhEj{9FF)8GtQBl9zsAc)d`Fr#f`&>0&3={9lwq?sv(f5FPiNLqdg-8dp-z$r7f=NQS)1x;agL?nOK? zZ?=2|yR)Us`S17Ap024~-#}={I$9yDC_af9$Bumx!xeQs;i)4N+Y#)5`pxj)dUC{L z^k!6U3r+Dk^1+6-di$QB+ar&2&BuMIsXrUX5B5Z{4d-tuReE@eV1iC5249F7)f`Ih z8(5L^$}q9;0aS^m3Lla46%i|FOZU{1rX$rO%o6G8AZ?)ga;O)U8F}E&9`r zNIj88LA!pZolD;j>(M;YG$O|43k4o7bxi$`Df_N!%35DVsLvUdkAoFH7a`9EoUPuG zP>d+C4MC`Y!iDV+g>FY&a(w4&^wZGFaLz_0wp{F6>a)@AJsAv!5$=bk-jq4=D%p8| zuYuTC*$GDjjJ;#8FkG;0xoz9FZQHhO+qSJ|+qP}nwr%6SH|b8glk?&HinXfd9HRtB z#WpRdl5ab3_$eKZ5H3KKdEpYHP{B4lunS7i`-*7bOF_~8FzT-HHC6(^%E=*1Uti35 zj3pG-s7Df4ySy*pLpw64-Ia$igPhpYefKhj=vsj)f9t@mwEv?-Dn`^VYPkAQ>=w9Q zPI2yzXyLAtoj5{U-Z4^MF2--tiDq;0df#xQJori0=P1>L4*v;k zNjytymR8w)>?Wm_a-$BW?{h*)pA_&W?xSogV2P1gJX4O6fG~%Q-~7T zW@u65hIqIxEc?g2ngmrHO)&TK8Dft&4!L}n`}YP=jFoA>7RgHzE(QaQ9Vn%Xqf|@% z*Cl#CY9`&(Awt-D4{B7SH)s_2NT)$7gDMg@oHcpIrA@A;-0o{(*Dlb9DRu*SLK99rM#KTy2p25hZ-geeZ>C|i7hJih> zF)+X&l{AMKnjFf#S^z#4BCjg$rAYH{Y(YWSodG&Tn+`?qD#fgCK7J>;;6Z9U(F^|# zd&ypX>?y7$)3(as9+@JYGI z`5{JPw!+XYB(a2C>5bm1XL*s;i{~op?^Jq*qW$;Rq{C0C@6Kdn@N#4Mihozvq!PSb zgY6`x|MJ0&p_~2I5U^|D;G7!+>#GTT2bZdJ%Y)uXikYL4;=nLz#z)$FGE;62!e?%2 z00;KG;&_^xLN*chAvRVuerd9oGM0y0H9f;{|8GmvMBBlEI|wEOObf4$-TOC7l5_BM zc|nl0L-*Zd6IPd`py*(*U=VQu`XNWoA^1asMP`;bl6ncDy3f@4s>`TnDDxwk)|izR z+-j+C!zWaD<_EIZK#K?8YjeL|h5(=Ud$4UrDnzu+RH+iCmK?cP-3-lK6iLR)^pTZG zv}qX5%P&Q36v6@7TB&u-Mrd&_Jj{&`7k+bp;Sl?}tjQxNb-qF9s~bB~&V}sr>peIC zQW%Nw)hRx!uPoJ`Z=`SGI^)GQM^q>`_myn}{J|#w+C74ETeO3@xiu3Zp_nAd;+nMU zUpZA?^FCQ*e*LNZRIN0W4Sx&lp&hjPw&liF{TPn^agFKWOw3fWkA0e9{*1}=+3~_x z>C2+Ic*L_h2G;A+pqS4JJ;!%QZNRK}80*IyVwo)Gf*v=Gf@J->*p$6g0zaqNvPco| ziPgzqZS`ozZ9kh|r%HM1pT(+eGs_YS!J<_<`^}i?3zRZVYxH#!rNVDCov0IqE7SK%eTqyehA#v!}B2kHZY3QU;fivL& z)TOTWdH~oQhZ(CPxE9a8rSE`Np5IT;{}9$)ZpkZq5cpSCgsu7Cp<2Wyo!9 zR0@^1opTMQtj_1PQIIwv^nkLtxVy}3-PZ1soB&p;)#rMO6=^#Nom2u(e>n-XkJPuE z@Yn_{YvKfB`gjg?o#x3sHs#RB`TwBH_AI8<8>iIoMIMFHW*|cA3X}ndhSVJ*2KH-M z*(|B{Qxr3m{0>cRGcJW%Y%YPZ=EZ{Ak2Aa0_MV_SO06hz9G&omA8w`CXj)Unk6hKt z_3p`CEj46OF)*b&b)K!aNiCVxCI^OC%R*<%kyN|AJY+n4Y32Ho_hzwwcs-;MIWIUu zSz;3wIvYEzU=$eYegg<(8)bC=D0rHc$Me2dWxm6&HsL-kuaD!LQ)N*W#t?V-jYEnM z-H96X z*-Go-%K_`jX+kR_JmSss>z3c|^TO9#XgG(MLBYM>)qJB7 z{u9-Y1z;>}FU7f!2&$Z8{Fx!c$aS@mpA{1i2KP=c>3ls|zkvLYazp1t$q&?fADzrToW$YD)1cQ&JFwc_aPp~G1S!rj zz`Hsr(iD$gZmaLw%?&!Ty;QTNu!qf)A?hH(J%7HSLRS34TIr=Rzy&p~sZ-fby9 z5O_gI##Nzjvoh8@@9={6pQ)>t2!&gcZ(8M424_n`MOAvN8-cHZQ`%_%ug&{9vr}Xy zY`Iblw|p^@)A!xsl5|L_!PaHbp=+>y|GaGYtr`97uuYV~=vRj({nW@t{UbG z2L$9X0TatCwRSe1lWB`lMhna@{bd^dDi7`)4G~u}=;WAQY z%;(@F+S4Q|WDkutW?dzc@p$C zZ9it?zX`P}6GPVt)O0PFP~<}l{;e3CS2AP`Dx*}G*#VjmtAojnFT08{o(@fO&%f%K zmOw`z%qReNLdCvxNA&*=1#DzU%bStRMWyxz9tMhsDtRelOnFK z_MwQ<-u$SVEln13`M77t{H$*)`!j~@ia?lu5wylY$B|Pyo z%W&mj;qe@(2kQOVmiQ>0&SEY9Sm9Z2KV;@#Hyhd#BYE7s$4GdCxDwUeyF<$Cg(9~J zF#J%fett~-l7q{ltRER|LmU2t1dOV7-M8gCS+CJGB`5$t7B9g1#@jDZfo3jLrYd7E z_6g40h0?XxPU%jRZbm(fmJfe%D6IgI-`vt}sx>1bAp2SbG>Y#$^rVKfM%(OBb|ZKw zu*b)wRr#I5XW2=Dl=b~Yb)!IYQVg=2GW^LoJl`#7c3L~LbA~D^#gjX9RO=s2&87fT zE6mB!3Rq{C2!=Eg27=N4`m1DnPXtq3ZuQKfh?1EzT7s@*9dAyQ>#GSrTIG0HfKA~6 zPfvm5rMJ&dys2QQnMT%b8b?dNIu9^l-DK<^khq9_!V)7m(I_IlBHjF!U8#cKYB~(| z8$7I^{I(c#WoXY{}cM ztzsi_KU=34-X4uREFN_#1`JNU2z7bwBz@7LOLOjD%l9~3e+K|q8D7`EI9)~xk&t$P z&`OO;#IRw*EX^Y*D)z)QqceqFSU>wUAGZTLCUjA(BxVqgg&8Y`h%8x zp2)>xJSCIHhJL)5hYiXE0f{lSc%t_IyIJf=h$jdfi6yGbrO)+OQKS475dBYMs-eH( zP>abyPZ3MT)k78+pBl;aIwnY7P1YJKStvtH9A|$mj^M!JT-hTYas<~lD4b?Sm@P|U z;4>x)gt{(zrq!4A;8I_QrWWd~qKj6FLRltyNK@^8@eY0Ew;z)Uj-+Hy-l(uz)bQI6 zmr<*8FQ3=Osz)k#m@2KK_Ka=OUEAP@xkBU$_;Eq#F4Ut?jT!#b+<8oEw}%k13D+6b zsFvrB=P=kw*SUUjaAcY=JAtEtADUnk+|QK&9IO2H`*ZT>{ek~Q3H(Mga5}yp&a!zl z?)54AeXyOTL`DC#swJ)?Z~I17QK;n`bL6MQvM68DrvN6D&%HtZM!%af;xQUGyFk9A zX4aXVI~KGUgo*32r+m1zqm1rE`~+ieE7n%2ZyB^mO~^A?LUUUjen|t?jpRn`+beCb z;TTCm%HXx53P&}nelk{e;t2tAT+KMh-xkKVqUbWT+%zGi_ zHRysWSJOE_FdAgXhzm5M;9jUUY&d$1r~`UpGRsa?j+p5jIV#l7)y1FZR|oU`4F~dP zO`o%uf4o*aFYXek{q0fhD!7G7Q~c8f>qzza2=Qo~Gu#(nj_Tb%GEny2E|7?;a|$R; zX~PZbajd1vz6!O)!3k=33LAd)#I-|X_Dv7z)eTxaVXr?a0g#A4xta{sK*AJ{j=5=D zUfqt}3sQ64@3}nN577Z|nU*#=Dqxv#`Y@%ax919od&8zq`XYnDvd=fyu!$Z*T(gNm z|6Pu1+@pt;!pR!9S~az(WUJS!jhu z@ZodGvim6l;nFLiPE95$TqMY%IU7}37#>jxyfo5QhV{NbhY`ao(tT6@`+@K4HTpd_ zCO@>VRc&mZa2UU?Wul9V=KnMW5U9;|8}Krw zzEODm;ygBQR-@zbL36~-sLS3!k>`hsncI3P+N9S1 z_VOu|_VuL0^XJrXVpOk{XHNRbD}e7{#Gvk5TkysC{x>*ML#mz5CW2WIkjr$P9H>Sm zJ}7SdUXv5DN?iuT#0|otvQzsE{l-wb(#;C$*gL{N?;FGsY%IHxIx=pWD(g^)1G-rO z@Oy4ZYdjEZQ3Ilg#GLr5Y}441^Wa`DfqNnit=OHI0V>6CWyp$|_44fo4DLEiwALr$ zN(Yq|yv}I*nq2Xoe2jROHRLK?4hL6bSA!XKpz+XbHU)}*q(!6sASHCA)nUCn7^D5K zzEo;r3xn235%1;|yLLovuy)a~y+N;A4wvZ)%LaZmyp=(f6lyzyP4%Fdbc(Dj^(~}Z zEihZue{)9%S#KGPeHum+8etfl)helG)|7j^2X((KRRh)cuw@#9BX*velb@|BxK_#n z)c#Q4{p-{)#(X(ixmKpzQV~pYPpkVkAl{Bm8r^77V8CK=;_! z^=q#78E;x)9Nr0MOMSfyrfXH2B9jA|BKHF56tQlW&7C4KKgJK#O6q*>hL9;A8r13y zg(K;Kl5dX+qN*NK@Q6kn+Ne_x#uFk9Byk_~nDFa~p5I*KeH8;9*Xj6*H>7MbzQTO6 z3}}^$AgaT%rKn)ay&?hR6;-r}pe&-qNYzm3r#smYQcv|lO=n#Ezl~0I`o@3nWoY=V zOuV&22BqCmwQY4C16S6_3T#mz7cm2UZ5dBy%oO&HTH^S#@lIK17eOuLs2JD}ccwO> z&%^G3{@!*5L#wWsp5)rvgB5*0v6p%e4H|UEG?%m4jnz|I2xl~2#*cVP+_aV{AC^zx zsJ@`h^bzFV68`!vNgAGbMD7A-=*^3}X3*BnlB7X)B==q7!5pstuT7QEaqeX(Y_;Ir zyNOo)`?MQXHq-MO=;Ss7<6-z+zytn8o$bpgBRY(}RSsq74O|daL+Kp6{6uLYFaYFR z#xHI1-nwF|fE%Qd7Sw+seF}z~?I0ZjVpMDh=yt421jV2?F8L<&Qy%jHfABXqaFqkJ zUi7eAP8mvyyve)F5py@$ir}@#a)@ExqFevlB67%%3zxm^-R>t|w6MM77uWnIgfq#3 zBBspj_bc;DWlt`OW3UawMD_}-VV7DIELA_Ah%NY4$Ug6oy;1j_P&Am;sFe}rKg1X< zIbr!$mQqwhXlUv=c-e$TcKGrL?(f|CMK^1U=52Tta58$x3S$+Mk!!9kC54%amn`C= zP_A$-;7DyTPnm50JY6=mfXlN4RsPo^buS{ki@xztjtdk_{u&;VDWIA!J<>TR2oFD< zFdEGdx78jB_JkiAr(2UR6}B(w^vkJfsMi*KV5x*;S>x4Yv)B_Xy;~G_8jvpIF@){& znF|v>XwqPO5pr_xMEdN=JD9n}+6?LhGVo3UinYPk_uS-+7W+lX{T@D~nBolEC_n!Y zduI!wG6B%meeziE?D~}ed8*2MjR1$hLzmdf@{_ZiuNIcdXj>6G(7Kv-5|*!^lc+2> zCo?ALup)+tMpa=`(FtLod-wn9f&$uNXv^R0%Je9%Koe0(FTK&R#OrZ z;o6L3%^Qh-nJS7bx6~|ziKL29O^C&b1#WWV64;Ka8EeF{G*WEwj-b4d(NHel#-n$D zZKew?$|nWJKCKWTB>v|RVC@Gl<5N(hc_GjGN>L)m(|P9B5wQ2w?d`3-JH(6{;l^qG zdbf_Ab;3#GmoRB6MXXeh!z20dzh19G%c-6NU(G}7^d%uljy0?*u2M19Ww?&1Pal7P znge}D|07$<`oCdI*_c`XXS9@w@&6%C3D}w0|9@nunybdr&u$u>;D3AL6ch~FogLVq z5MvmOh66UPVqpOR5XzFSM5F{de68YQ?i4w|gB-rI>^I)rr#9>c;2=eTm@w?^m6=h@ zFsFb`AYKFs^8DDfKSSkkVF4Zi(fVjuBr|LH6F{q}UK-gu~l^7UC3}SE$s0g9;0^WWJ3WQk5IXIZW-@;bc;QT-g;?o6O;^+tbFt>Mk zID~l&(31g%jm{3PA%eaq7!iWNRtA(|%s{81dLtt-Zh^o`2zLsk+aSn&blS<8QN$?4 zevUXuq}UKaza0_72!>2y!36~a`1%h=v$k5-?_f&uwMbTXV3L*$3 z6qFNG1aK#z_JHi5j5@aUXmDj1M#WnFT2Bsv1A+Q0`#+m(M$ggrx9AuD_}@6BmnmR^ z!P_=PN%aeM?n&6-&zeX>r0?)FioSsPIs_X-|2-h5AjV1{q6~ab8QEEAKVz>`#W&h_XdU_C%04fF&C|H(ZjQn$cFNkq^ z3IZC4&$iK#`vAts*6@OP1(MPX3`Xs8XpE)A42QpS96&&s7lx9Cf&PPGpS~LXkx%t(f*vCfK~-=BR*UZEM*RYvp;iz-z$#qErx*K6jeuO zw^hI{gAjjuu>HE3d+TdP<{(X&zd*3A{_LJ#>RhWKFw*z|$ybLgLzdb$ge{Z+^ts8y2Edv>x&mepUf2z_j z2u~kp$tU=WlMWDrXkcw)E(B&s0}@;R5u?$vf`A8*&mXL5-9bX}0rBsl0YKmJ??1me zkcVL+Mw9PdO$>;?Pdjj7lEf&Nkf8|j@&p9%D-`ro#B)zZoI9C`s_Z*#UIQFiOwUcu z(LNolSpUR9VM`Bu^Xw{KVYh1%Tp8+6r%!bAv}?ayt{Ck8(TIRpbprT5DOwI^O# zP5N9M8(N?&WUu_p7X5bRJh%8Y^w=gGO_-O-+&(J+oRz&-4(fH7aRb$g@xbddh^d0AOrBO3&nH`gx|hfeNz(WS6|GZGn|if>-HW>oflSBww-i8WT= zZg*eYXUGDx+uVds3-IWs&cyM>kJ2AdK>0{CR5D7}L8JN=` zxX*Z?>a3S9Zl?cQCW(6q^QC|y%{u1989SF=m&H$g_8Lw^PGp`;wat1zG8dzkm(j9} zfN#muposiUk@7&)Ve;zn@xpB>8Vi(FUDzIIUr@U(B~LHOBRhI>S+01bnF9V?I^6?9 zqlP6_8R+se=J;+0u1dB*jnz5#MWMZeN@|hWyH``JE>o_*28uF3dL^<5*V6Iqj=^=S zrHu2%UnI@ubV%3zEp7hFyb8XuB;TbE#SY;Y=ikPU2tX548OMuv&kQ2IJhkl5Aqg`>1D~qPSAhe_lqp zQ|YbTA=mxOB{fV1uiV(tCRrzuAk_S!m){cO12Py|)>bcsCviY(QiF$<&X9F(!oQx{ zbKG$koIYAGME1>hQ03%d>Lv!(7j7{yzmq-s!Dc z{?4#~GPT~|MKww8G%0*leWLp2@5Vc&l8TuNGftb4NKkWwfxkpmr$^Wl=3`l)w#D?+ zg(uFD6-vy;>K%ejW6j^vLn9*4h1Iyu$uQPS?t=pNLj`JgDQHN%7E=zeFi7eym!1FQ z{dr1^R~ByaW4(O0HOtP;yE{?AYn8ogq79rWu~XjI8Ws z1%%1!nXZV9W-U3ROu|t5`Cca0J;kfImvRscSqLK4-3N>G-gyz;@nSbCxo}%k=;7p3 zaYM11FXaMyQs2=t$;`nx=GB(bA&MZbdVH&}#PkvbIMiAGXGY@{&o@SMUigsK{&59T zQR*38rogp{!x7bhIF!w#eto)*ex)!M= znb>|WVz(1cc%(}%2@hR2j;@BqTii|4dQl=I53ZIz27c-Fe0fEQ%x;gK#&vIq0_8^b z+;7g)F&RH+mT|?9y_8g{K__XTi=ETMbpv2To99D}o%Hp_A8*;!PgUHGsP+NF$9Mea z-e_zWwEOf{#b3^Lw_-~=^sP}TEpYrnWI5H-R&YAJBB@}qeIt92vq1WRxjRs*Mn?v1 z{V!MX^)7?D6hfu`=nJ8~fG;KslCaR$)ENp}y#uB$oA@p7ugaPXZT=-hlUi-s(|?)~ z2Ow2>>;zVJlB(XLd%7H5vTT;Uj8*T3F>T^;f zs;Ydb*?b< zU()3r8x&*4?{QbJ4JYKp-51mr{p{kS?4d5m?Hft6;j&Jj%W|Ba0#0Y)XlgTHoF6x#PJg}tOmX7Xy30Sog+8@P^TATXwG0R#~{oc!{p(~Pzn}b1R zSxCRob9&2r%{VKQdgC_5i}vU>`Ps@fBjHKjhJr7U#4b?Qw+$2w-n|z0-&v>B+{mX~iEtq1Xp84%#Hcd4RzU`G?K# z=9hW6UAiccJkBt`<)T7~mL3UCv+|Ny0$+Lx&r-lCoCGN@MsV$8w@Pq}imxA}4MnY> zg)iP?ijZ85p4%cq^%F@3p}$f37Rp)p^bJX+OlYFN2V#7k<9s;QVn3GV8uOj9&??r$ z(YG)VypsP6e6L-lD@7~2^NCA@tPH<4GNyRDl{MbqiRg0vZl!!inm||ELDf@QOyQ

9}g#cwF9IHsK*BqI1rpiSx`15;e(%IDz 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 literal 0 HcmV?d00001 diff --git a/foley-embedded_cv.tex b/foley-embedded_cv.tex new file mode 100644 index 0000000..f55a1ea --- /dev/null +++ b/foley-embedded_cv.tex @@ -0,0 +1,230 @@ +% $Id: foley-embedded_cv.tex 86a91d83c4a8 2011/10/01 16:05:21 foley $ +\hyphenpenalty=5000 +\tolerance=1000 + +\subsection{Education} +% june 21, 2007 +\cventry{2000-2007}{Doctor of Philosophy in Mechanical + Engineering}{Massachusetts Institute of Technology}{}{}{} +% june 1, 1999 +\cventry{1998-1999}{Master of Engineering in Computer Science and + Electrical Engineering}{Massachusetts Institute of Technology}{}{}{} +\cventry{1994-1999}{Bachelor of Science in Computer Science and + Electrical Engineering}{Massachusetts Institute of Technology}{}{}{} + +\subsection{Doctor of Philosophy Dissertation} +\cvitem{title}{\emph{Security Approaches for Radio Frequency + Identification Systems}} +\cvitem{supervisor}{Professor Sanjay Sarma} +\cvitem{description}{\small Describes preventative measures +and protection from the privacy invasion potential associated with +ubiquitous Radio Frequency Identification (RFID) while still +maintaining current capabilities.} + +\subsection{Master Thesis} +\cvitem{title}{\emph{An Infrastructure for Electromechanical +Appliances on the Internet}} +\cvitem{supervisor}{Professor Sanjay Sarma} +\cvitem{description}{\small Design and implementation of an Radio +Frequency Identification(RFID) and internet enabled appliance. The +design focused on general methods applicable to a wide variety of +intelligent devices. Fundamental development of ONS and EPC technologies.} + +\subsection{Published Work} +\cventry{2010}{Exploitable Assumptions}{A. Brooks, E. Schmiedl, + J. Foley}{DEFCON 2011}{}{} +\cventry{2009}{Micro artificial muscle fiber using + NiTi spring for soft robotics}{S. Kim, E. Hawkes, K. Cho, M. Jolda, + J. Foley, and R. Wood}{IROS 2009}{}{} +\cventry{2008}{TurbSim: Reliability-based Wind Turbine + Simulator}{J. Foley, T. Gutowski}{2008 ISEE}{}{} +\cventry{2001}{The Networked Physical World: An Automated + Identification Architecture}{D. Engels, J. Foley, J. Waldrop, + S. Sarma, D. Brock}{WIAPP '01}{}{} + +\subsection{Invited Talks and Presentations} +\cventry{2012}{Digital Manufacturing and Personal Sustainability}{Joe + Foley}{Alþjóðlegi Umhverfisdagurinn (World Environment Day)} + {Reykjavík University, June 5}{}{} +\cventry{2006}{Security Approaches for Radio Frequency Identification + Systems}{Dr. Joseph T. Foley}{EPCglobaUS Conference}{Los Angeles, October 19}{} +\cventry{2003}{Happy Trails: Automated Lifting Trailer}{MIT 2.009 Team + Purple '99}{Lemelson Inventor Conference}{Washington DC}{} +\cventry{2002}{AutoID Technology Demonstration}{Distributed + Information System Center MIT}{Cambridge University UK}{}{} + +\subsection{Intellectual Property} +\cventry{2011}{Google Code ``arduino-roomba''}{Joe Foley}{}{}{Library + for interfacing an Arduino and iRobot Create/Roomba. GPL2.} +\cventry{2009}{US Patent Pending ``Manufacture of Inverted SMA + Springs''}{M. Jolda and J. Foley, iRobot Patent }{}{}{} +\cventry{2007}{US Patent Pending ``Tag Anti-Counterfeit Systems''}{Joe + Foley \& Sanjay Sarma, MIT TLO 10695}{}{}{} +\cventry{2000}{US Patent 7,765,253 ``Object Name Service''}{Joseph + Foley, Erik Nygren, \& Sanjay Sarma. MIT TLO 9789}{}{}{} + +\subsection{Collaboration} +\cventry{2011-Current}{RU-LHÍ Music, Art, Software, Engineering + Collaboration}{RU Lead}{Reykjavik University and Listaháskolinn Islands}{}{Ongoing collaboration efforts are underway between the LHÍ + Music and Visual Arts and the RU Computer Science and Science and + Engineering department. This + collaboration is expected to develop an + interdiscipline project incorporating Music, Art, Software, and + Engineering by building upon the last program's success.} +\cventry{2011}{``Emerging and Imposing Spaces'' (``Vaxandi og + uppáþrengjandi rými'')}{co-organized with Sigrún + Harðardóttir}{RU and LHÍ}{Electro-mechanical Interactive Art}{Visual + Arts class ``Interactivity'' LHÍ \& RU VT + HUN1013 ``Design'' cooperated to produce 7 unique art installation + works shown at LHÍ. Selected pieces +shown at Hreindirland Festival 2011 and covered by RÚV 2.} +\cventry{2010--Current}{Faculty Advisor}{RU and Hakkavélin}{Hackspace}{}{} +\cventry{2003--2004}{Internet Engineering Task Force (IETF) ONS Working Group}{founding member}{AutoID Center MIT, Verisign, + \& EPC Global}{}{} +\cventry{2005}{ONS 1.0}{architect}{AutoID + Center MIT \& OATsystems}{}{} + +\subsection{Teaching} +\cventry{August 2011-Present}{Lecturer}{Reykjavik + University}{Reykjavik 101, Iceland}{}{Teaching T-865-MADE + ``Precision Machine Design'', developing low-cost precision lab + equipment to be used by RU bioengineering department. Teaching + T-411-MECH ``Mechatronics 1'', building affordable circuit prototyping and + automation education using the Arduino architecture.} +\cventry{January 2010-May 2010}{Lecturer}{Reykjavik + University}{Reykjavik 101, Iceland}{}{Taught VT + HUN1013 (Hönnun) Mechanical Design, which produced designs for + research equipment and interactive art installations. (See collaborations). + Co-taught T-420-HON (Hönnun X): class project that developed an aluminum + smelter pot inspection robot for Rio Tinto Alcan.} +\cventry{September 2005-January 2006}{Teaching Assistant}{CSCI-E-170: + Computer Security and Privacy}{Harvard Extension School}{Cambridge, + MA}{Lectures, problem set generation, and grading on security + material.} +\cventry{September 2002-August 2005}{Head Instructor}{MIT Faculty + Pistol \& Rifle Club}{Cambridge, MA}{}{Revised NRA pistol safety + curriculum to integrate international target pistol trends. Taught + Marksmanship and Pistol Safety course every semester.} +\cventry{September 1999-December 1999}{Teaching Assistant}{MIT 2.007 + Introduction to Mechanical Design}{Cambridge, MA}{}{Revised + curriculum, developed control system and scoring system for + ``Ballcano'' robotics competition.} +\subsection{Research Grants} +\cventry{June 2011-September 2011}{Advisor}{Rannis Student Innovaton + Fund (Nýsköpunarsjóður námsmanna)}{Menntavegur 1, + Reykjavik 101, Iceland}{}{Grant: ``CNC foam-cutter for micro air + vehicle wings'' for student research salary during summer. Advised software and mechanical + undergraduates in the design and construction of a high-precision, + low-cost computer-controlled (CNC) hot-wire foam cutter for the prototyping of small-scale + foam-composite aircraft wings. Materials funded from RANNIS ``Flapping-wing + Unmanned Air Vehicle''. } +\subsection{Experience} +\cventry{January 2010-Current}{Specialist}{Reykjavik + University}{Menntavegur 1, Reykjavik 101, Iceland}{}{Research into + simplified robotics infrastructure to solve many sensing problems + and rapid prototyping capabilities.} +\cventry{September 2011-February 2012}{Consultant}{Icelandair + Technical Services, Design Department}{Building 8, 235 Keflavik + Airport, Iceland}{}{Designing and prototyping ATMega/Arduino avionics interface to + convert and filter data between A757 and A429 data buses. This + interface will allow real-time monitoring of flight data, with + particular focus on the accelerometer inputs.} +\cventry{June 2011-September 2011}{Consultant}{3Z ehf.}{Menntavegur 1, + Reykjavik 101, Iceland}{}{Designed and implemented prototype + zebrafish embryo dispensing robot for pharmacology and toxicity studies.} +\cventry{September 2010-March 2011}{Consultant}{Brass Drift, + Inc.}{Emeryville, CA}{}{Designed custom low-cost flexture locking mechanism + for an electronic security box.} +\cventry{September 2010-January 2011}{Consultant}{MIT Biomimetic Robotics + Lab}{Cambridge, MA USA \& Reykjavik, Iceland}{}{Finite element analysis of advanced + structural composites used to develop a high speed quadruped robot + for Professor Sangbae Kim.} +\cventry{November 2007-August 2010}{Senior Research Scientist}{iRobot + G \& I Research}{Bedford, MA}{}{Designing new + robotics concepts and mechanisms in the DARPA ChemBots program. + iRobot research \& development in government and industrial applications/proposals.} +\cventry{November 2006-November 2007}{PostDoctoral Research + Associate}{MIT}{Cambridge, MA}{}{``Energy Efficiency in + Manufacturing'' Investigated energy usage in the manufacturing + industries and created wind turbine reliability simulator.} +\cventry{January 2004-March 2004}{Web software engineer}{SigMantra + LLC}{Bedford, MA}{}{Developed social-media website ``Uffinity'' for + connecting recently graduated young-professionals to others offering +employment.} +\cventry{May 2000 - September 2000}{Magic Mechanic}{Emode, + Inc.}{Cambridge, MA}{}{Developed world's largest fully-indexed quote + database. Developed and installed network security policies and + equipment} +\cventry{May 1997 - September 1997}{Mechanical Design Engineer}{Brute + Force Games}{Cambridge, MA}{}{Designed full immersion game simulator + platform leveraging vection research.} +\cventry{September 1996 - September 1999}{Network Programmer}{MIT + Network Operations}{Cambridge, MA}{}{Security operations and + emergency paging system development.} + +\subsection{Unpublished and Project Works, available upon request} +\subsubsection{Manufacturing} +\cventry{2011}{Bio-tensegrity: A New Design Paradigm for Hyperdynamic + Legged Robots}{A. Ananthanarayanan, J. Foley, and S. Kim}{}{}{} +\cventry{2000}{System Analysis and Design of the Insight M3/M5 Tactical +Illuminator}{Vince E. Carballo, Miguel A. Chavez, Joe Foley}{}{}{} +\cventry{1998}{Cambridge Heart}{Joe Foley, Marc Lebovitz, Ranjini +Srikantiah, Victor Su}{}{}{} +\cventry{1998}{Low-Cost Pine Car Derby Timing System}{Joe +Foley}{Advanced Undergraduate Project}{Advisor: Professor Alex Slocum}{} +\subsubsection{Design} +\cventry{2001}{Wireless Friends: Company Business Plan}{Sofy Tarud, Joe +Foley, Oscar Lopez, Omri Pedatzur}{}{}{} +\cventry{2001}{Automotive Diagnosis Assistant}{Joe Foley, Ariel Segall}{}{}{} +\cventry{1999}{Kraken: Distributed Cooperative Web Caching}{Joe Foley, Amy +Vandiver, Ben Vandiver}{}{}{} +\cventry{1998}{Evolved PacMan: Genetic Algorithm for Design of Control +Systems}{Joe Foley \& Mike Phillips}{}{}{} +\cventry{1996}{An Ad-Hoc FPGA - Xilinx Type}{Joe Foley \& Mark Roh}{}{}{} +\cventry{1996}{A Partly Read-Only, Portable Web Site}{Joe Foley}{}{}{} +\subsubsection{Security} +\cventry{2006}{ONS Deployment and Visibility Challenges}{Dan Engles and Joe Foley}{}{}{} +\cventry{2004}{Flingetty: Secure Multiparty Computation for a Dating Match-Up +System}{Natan Cliffer, Joe Foley, Hongyi Hu}{}{}{}{} +\cventry{2003}{KLite: A RFID Tag Anti-Counterfeit System}{Joe Foley}{}{}{} +\cventry{2003}{EPC Reductionism}{Joe Foley}{}{}{} +\cventry{1996}{WhoRU: Anyonymous Encrypted Remailer}{Daniel Derksen, Joe Foley, Matthew Rimer}{}{}{} + +%\subsection{Languages} +%\cvlanguage{English}{Native}{} +%\cvlanguage{Spanish}{Novice}{High School education, 1990-1994} +%\cvlanguage{Chinese}{Novice}{MIT 2005} +%\cvlanguage{Icelandic}{Elementary}{Taking classes at University of Reykjavík} +%\pagebreak + +%\subsection{Skills} +%\cvcomputer{programming}{\textsc{Java}, C/C++}{scripting}{PHP, Shell, python, perl} +%\cvcomputer{scientific}{Matlab, Maple}{Modeling}{ProEngineer, +%SolidWorks} +%\cvcomputer{simulation}{ABAQUS, CFDesigner}{typography}{\LaTeX, PostScript}{}{} +%\cvcomputer{control}{Arduino/Atmega, PIC}{Rapid prototyping}{FDM, +% Laser templates, silicone molding} +%\cvcomputer{OS}{Linux, UNIX, Windows, OSX}{administration}{Apache, +% DNS, ONS} +%\cvcomputer{web design}{PostNuke, Turbogears}{database}{MySQL, PostgreSQL} + +%\section{Interests} +%\cvitem{design}{\small I am a design fan, especially when it comes to typography and photography.} +%\cvitem{adventure sports}{\small I like practicing adventure sports like skiing, rock climbing and scuba diving, and have been a boy scout for five years.} +%\cvitem{travelling}{\small I have been living abroad during my childhood, and love travelling around the world.} + +%\section{Section with a list} +%\cvlistitem{lol} +%\cvlistitem{lol} +%\cvlistdoubleitem{lol}{relol} +%\cvlistdoubleitem{lol}{relol} + +%\section{Section with your own content}\closesection +%Your content here,\\ +%inside the normal \LaTeX{} environment. + +%\emptysection{} +%\cvitem{Now}{Back to moderncv layout, without making a new section :-)} + +\hyphenpenalty=50 +\tolerance=100 diff --git a/foley-europass-bibliography.tex b/foley-europass-bibliography.tex new file mode 100644 index 0000000..f19cb97 --- /dev/null +++ b/foley-europass-bibliography.tex @@ -0,0 +1,44 @@ +%\nocite{foley2021ad-software-engineering} +\nocite{sudermann2021mobile} +%\nocite{foley2021dindesign} +\nocite{des2021} +%\nocite{foley2021descomplexitykitchen} +%\nocite{foley2019complexitykitchen} +\nocite{icad2018book} +%\nocite{vossebeld2018customer}%01015 +%\nocite{helgason2018tablet}%01015 +\nocite{foley2017antenna}%01015 +%\nocite{foley2017faucet}%01009 +%\nocite{foley2017motorcyclelift}%01008 +%\nocite{foley2017adjustadesk}%01002 +\nocite{breznik2017collaborative} +\nocite{foley2017msddontology} +\nocite{petursson2017smaspring} +%\nocite{erlingsson2016roboclaw} +\nocite{foley2016desirable} +\nocite{guls2016auvlight} +%\nocite{gerhard2016suretrack} +\nocite{omarsdottir2016chessmate} +%\nocite{puik2016ignorance} +%\nocite{foley2016evaluating} +%\nocite{foley2016creative} +%\nocite{cochran2016hospital} +\nocite{cochran2016msdd} +\nocite{bragason2015parachuterelease} +\nocite{jonsson2015uget} +%\nocite{solvason2015spectrometer} +%\nocite{thompson2014additive} +\nocite{gudmundsdottir2014extendingviametricity} +%\nocite{gudmundsdottir2014wirelessscheduling} +%\nocite{foley2011colliding} +%\nocite{foley2012vitro} +\nocite{foley2012epd} +%\nocite{foley2012epdposter} +\nocite{kim2009microartificialmuscle} +\nocite{foley2008turbsim} +\nocite{engels2001networkedworld} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "foley-europass" +%%% End: diff --git a/foley-europass.tex b/foley-europass.tex new file mode 100644 index 0000000..c7ffd88 --- /dev/null +++ b/foley-europass.tex @@ -0,0 +1,253 @@ +% -*- coding: utf-8 -*- +\documentclass[english,a4paper]{europasscv} +\usepackage[main=english]{babel} +\usepackage{amssymb} +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} + +\usepackage{enumitem} +\usepackage{graphicx} +\usepackage{csquotes} +\usepackage[mode=text]{siunitx} +\usepackage{doi} +\usepackage{url} +\usepackage{hyperref} +\usepackage{ifthen} + +\usepackage[backend=biber,citestyle=numeric,bibstyle=authoryear,sorting=ydnt,maxnames=99]{biblatex} +% biber --mincrossrefs=9999 --output-encoding=ascii foley-europass +\addbibresource{../references-foley.bib} +\addbibresource{../references-collections.bib} + +\usepackage{europasscv-bibliography} + +\newboolean{notes}\setboolean{notes}{false} +\newboolean{photo}\setboolean{photo}{false} +\newboolean{long}\setboolean{long}{false} +\newboolean{private}\setboolean{private}{false} +\newboolean{bibliography}\setboolean{bibliography}{true} +\newboolean{bibliographylong}\setboolean{bibliographylong}{true} +\newboolean{references}\setboolean{references}{false} +\newboolean{reviewing}\setboolean{reviewing}{true} +\newboolean{skills}\setboolean{skills}{false} +\newboolean{software}\setboolean{software}{false} +\newboolean{supervision}\setboolean{supervision}{true} +\newboolean{teaching}\setboolean{teaching}{true} + +\begin{document} + +\begin{europasscv} + \ecvname{Joseph Timothy Foley} + \ecvaddress{Álakvísl 39, 110 Reykjavík, Ísland} + \ecvmobile{(+354) 661 7658} + \ecvemail{foley@ru.is} + % \ecvhomepage{ http://www.ru.is/starfsfolk/Marcel https://scholar.google.com/citations?user=fGCgk\_EAAAAJ} + \ecvhomepage{https://www.ru.is/haskolinn/starfsfolk/foley https://scholar.google.com/citations?user=k_g9VkkAAAAJ} + \ecvorcid[label,link]{0000-0003-2515-1799} + \ecvdateofbirth{29 July 1977} + \ecvnationality{United States of America} + \ecvgender{Male} + + \ecvpersonalinfo + + \ecvsection{Work Experience} + + \ecvtitle{since 08/2013}{\foreignlanguage{icelandic}{Lektor} + (Assistant Professor)} + \ecvitem{}{\foreignlanguage{icelandic}{H{\'a}sk{\'o}linn {\'i} + Reykjav{\'\i}k}(Reykjavík University), Menntavegur 1, 102 Reykjav{\'i}k, Iceland} + \ecvitem{}{Teacher of \enquote{Mechatronics}, + \enquote{Precision Machine Design}, + \enquote{EngineeringX}, + \enquote{Design}, + \enquote{Integrated Project}, and + \enquote{Introduction to Engineering}. + } + \ecvitem{2017 to 2021}{Head Advisor for Laboratory for Unmanned Vehicles which became the RIOT Lab in 2022} + \ecvtitle{01/2011 to 08/2013}{Specialist} + \ecvitem{}{\foreignlanguage{icelandic}{H{\'a}sk{\'o}linn {\'i} + Reykjav{\'\i}k}(Reykjavík University), Menntavegur 1, 102 Reykjav{\'i}k, Iceland} + \ecvitem{}{Teacher of \enquote{Mechatronics}, + \enquote{Design}, and + \enquote{Integrated Project}. + } + \ecvtitle{09/2010 to 01/2011}{Consultant} + \ecvitem{}{Biomimetic Robotics Lab, Massachusetts Institute of Technology (MIT), Cambridge, Massachusetts, U.S.A.} + + \ecvtitle{11/2007 to 08/2010}{Senior Research Scientist} + \ecvitem{}{iRobot, + Government and Industrial Department, Bedford, Massachusetts + U.S.A.} + \ecvtitle{11/2006 to 11/2007}{Postdoctoral research associate} + \ecvitem{}{Massachusetts Institute of Technology (MIT) and SKF:\@``Energy Efficiency in Manufacturing''} + \ecvtitle{01/2001--04/2006}{Doctoral researcher} + \ecvitem{}{AutoID Center, Massachusetts Institute of Technology (MIT), Cambridge, Massachusetts, U.S.A.} + + \ecvsection{Education} + + \ecvtitle{06/2007}{Philosophical Doctor} + \ecvitem{}{Massachusetts Institute of Technology, U.S.A.} + \ecvitem{}{Dissertation: ``Security Approaches for Radio Frequency + Identification Systems''} + + \ecvtitle{06/1999}{Master of Engineering} + \ecvitem{}{Massachusetts Institute of Technology, U.S.A.} + \ecvitem{}{Thesis: ``An Infrastructure for Electromechanical + Appliances on the Internet''} + + \ecvtitle{06/1999}{Bachelor of Science} + \ecvitem{}{Massachusetts Institute of Technology, U.S.A.} + \ecvitem{}{Advanced Undergraduate Project: ``Low-Cost Pine Car Derby Timing System''} + + % \ecvsection{Language skills} + % \ecvmothertongue{English} + % \ecvlanguageheader + % \ecvlanguage{Icelandic}{A1}{A1}{A1}{A1}{A1} + % \ecvlanguage{Spanish}{A1}{A1}{A1}{A1}{A1} + % \ecvlanguage{Chinese}{A1}{A1}{A1}{A1}{A1} + % \ecvlanguagefooter + +% \ecvsection{Professional memberships} +% \ecvitem{2011-2013}{IEEE} + + \ecvsection{Supervision} + \ecvtitle{Doctoral Students}{} + \ecvitem{08/2020--}{Joshua David Springer, Reykjavik University} + + \ecvtitle{MSc Students}{} +% \ecvitem{06/2020}{Joshua David Springer, \enquote{Autonomous landing of a multicopter +% using computer vision}} + \ecvitem{06/2022}{Rakel Hrönn Sveinsdóttir, Closed thesis for Marel, ehf. Iceland} + \ecvitem{06/2021}{Danila Kraivenko, Closed thesis for Össur, ehf. Iceland.} + \ecvitem{02/2019}{Einar Pétursson, \enquote{NB-IoT Tracking device}} + \ecvitem{01/2018}{Vladimir Omelianov, ``Automated 3-axis multi-Ghz antenna testing unit''} + \ecvitem{09/2017}{Nicholas Randall, ``Improving power-grid stability with real-time analysis of PMU data''} + \ecvitem{06/2016}{Sævar Örn Einarsson, ``Shape Memory Alloy resistive heating degradation analysis''} + \ecvitem{01/2016}{Krisján Gerhard, ``Redesign of the SureTrack Grader Transfer Bin Using Axiomatic Design Theory''} + \ecvitem{06/2015}{Gunnar Óli Sölvason, ``Low cost spectrometer for Icelandic chemistry education''} + \ecvitem{06/2015}{Eiður Örn Þórsson, ``Dust Maker: a Volcanic Ash Dispersion Unit''} + \ecvitem{06/2015}{Sigurður Ingi Einarsson, ``Cabin Air Flow in Icelandair Boeing 757--200 Airplanes''} + \ecvitem{06/2015}{Georgios Petropoulos, ``Automated Flight Data Bus Testing System''} + % \ifthenelse{\boolean{teaching}}{ + % \ecvsection{Teaching Experience} + + % \ecvtitle{Háskolinn i Reykjavík}{} + % \ecvitem{}{Introduction to Embedded Systems and the Internet of Things (Fall 2018)} + + % \ecvtitle{Massachusetts Institute of Technology}{} + % \ecvitem{}{2.007 \enquote{Introduction to Design} (Spring 1999)} + + % }{} + +% \ifthenelse{\boolean{bibliography}}{% + \input{foley-europass-bibliography} + \renewcommand{\section}[2]{\ecvsection{#2}} + \printbibtabular[title=Publications]%% Getting errors on the bib +% }{% +% \relax +% } +\end{europasscv} + +\end{document} + +\ifskills +% \section{Skills} + +% \cvitem{}{Modelling and analysing systems with the equational rewriting +% system \textsc{maude}} +% \cvitem{}{Modelling and verifying systems with the interactive theorem +% prover \textsc{pvs}} +% \cvitem{}{Modelling and verifying systems with the model checkers +% \textsc{spin} and \textsc{NuSMV}} +% \cvitem{}{Modelling and verifying real-time systems with the model +% che\-cker \textsc{uppaal}} +% \cvitem{}{Programming applications in Java, C, C++, Python, Objective +% Caml, Erlang, and Haskell} +% \cvitem{}{Modelling software systems with UML and OCL} +% % & Data modelling with XML and data processing with XSLT. +% % & Knowledge in administrating the data base PostgreSQL. +% % & Knowledge in administrating the Linux-distribution +% % \emph{Fedora} +% % & Knowledge of the operating systems GNU/Linux and +% % Solaris. +% \fi + +% \section{Memberships} + +% \ifthenelse{\boolean{reviewing}}{% +% % \newpage +% \input{reviewing} +% }{% +% \relax +% } + +% \ifthenelse{\boolean{software}}{% +% \input{en-software} +% }{% +% \relax +% } + + +% \ifthenelse{\boolean{supervision}}{ +% \pagebreak +% \section{Supervision} + +% \input{supervision}}{} + + +% \ifreferences +% \newpage +% \section*{References} + +% \begin{trivlist} +% \item Prof.\ Sanjay Sarma\\ +% % \foreignlanguage{german}{Christian-""Albrechts-""Universität zu +% % Kiel\\ Institut für Informatik\\ D-24098 Kiel}\\ Germany\\ +% % % Phone (direct): +49 431 880-3732\\ +% % Phone (secretary Kirsten Kriegel): +49 431 880-3734\\ +% % Fax: +49 431 880-7617\\ +% % e-mail: \href{mailto:wpr@informatik.uni-kiel.de}{wpr@informatik.uni-kiel.de} +% \item Prof.\ Alexander Slocum\\ +% % Department of Informatics\\ +% % University of Oslo\\ +% % Postboks 1139 Forskningsparken I\\ +% % 0316 Oslo\\ +% % Norway\\ +% % Phone (office): +47 22 85 24 49 \\ +% % Fax: +47 22 85 24 01 \\ +% % e-mail: \href{mailto:olaf@ifi.uio.no}{olaf@ifi.uio.no} +% \item Prof. Ágúst Vafells\\ +% % Centrum voor Wiskunde en Informatica (CWI)\\ +% % Department of Software Engineering\\ +% % % Kruislaan 413\\ +% % P.O.\ Box 94079\\ +% % 1090 GB Amsterdam\\ +% % The Netherlands\\ +% % % Phone (direct): +31 20 592 4139\\ +% % Phone (secretary Susanne van Dam) +31 20 592 4189\\ +% % Fax: +31 20 592 4199\\ +% % e-mail: \href{mailto:F.S.de.Boer@cwi.nl}{F.S.de.Boer@cwi.nl} +% \end{trivlist} +% \fi + +% % \vskip 7\baselineskip +% % \noindent\rule{4in}{1pt}\par +% % \noindent\hbox to 4in {\hss Dr.\ Marcel Kyas\hss} + +% %\vskip 5\baselineskip +% %\noindent\rule{4in}{1pt}\par +% %\noindent\hbox to 4in {\hss Witnessed by Dr.\ habil.\ Martin Steffen\hss} +% %\par\noindent\hbox to 4in {\hss University of Oslo\hss} +% %\par\noindent\hbox to 4in {\hss Phone: +47 22\,85\,04\,17 (office), +% %+47 94\,24\,59\,46 (mobile)\hss} + +% \label{lastpage} +% \end{document} + +% LocalWords: Foley + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: + diff --git a/foley-main_cv-publish.pdf b/foley-main_cv-publish.pdf new file mode 100644 index 0000000000000000000000000000000000000000..4fcd4fc93555edbd0d625a040c35203bb1325355 GIT binary patch literal 373699 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≧j$I6saE?qYCBbxkRTZW( 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

>Xg{phT**Xm{92}#~Eq`qYO0C~#B&vi%3EO^lx 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 literal 0 HcmV?d00001 diff --git a/foley-main_cv.tex b/foley-main_cv.tex new file mode 100644 index 0000000..f3d4549 --- /dev/null +++ b/foley-main_cv.tex @@ -0,0 +1,588 @@ + +\documentclass[11pt]{moderncv} +%% embedded when included in another document +%% You may need XeLatex, as it was optimized for certain fonts +%\documentclass[11pt]{embeddedcv} + +% moderncv styles +%\moderncvstyle{casual} +%\moderncvstyle[nocolor]{casual} +%\moderncvstyle{classic} +%\moderncvstyle[roman]{classic} +\moderncvtheme[blue]{casual} + +% character encoding +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} % allows UTF encoding, needed for Icelandic characters + +% biblatex/biber citations +%% We set when etal is used in maxnames=XX +\usepackage[backend=biber, bibencoding=utf8, style=ieee, maxnames=99]{biblatex} +%\usepackage[backend=biber, bibencoding=utf8, style=apa]{biblatex} +%\usepackage[american]{babel} +%\DeclareLanguageMapping{american}{american-apa} % after biblatex and babel +\usepackage[margin=20mm]{geometry} +\addbibresource{references-foley.bib} +\addbibresource{references-collections.bib} + + +% resize margins if needed, mostly for A4 +%\usepackage[scale=0.8]{geometry} +\hyphenpenalty=5000 +\tolerance=500 + +% personal data +\firstname{Dr.\ Joseph T.} +\familyname{Foley} +\title{Assistant Professor, Reykjavík University} +%\address{12 somestreet}{3456 somecity} % for classic style +%\address{11 Ticklefancy Lane}{Salem, NH 03079 USA} % for casual style +%\phone{(617)395-0383} %Vonage +%\mobile{(617)233-4590} %Cellphone +%\email{foley@alum.mit.edu} +\address{Menntavegur 1}{101 Reykjavík, Iceland} % for casual style +%\address{Álakvísl 39}{110 Reykjavík, Iceland} % for casual style +%\phone{+1(617)395--0383} %Vonage° +\phone{+354--599--6569} %RU +%\mobile{+354--661--7658} %Cellphone +%\email{foley@ru.is} +\email{foley@ru.is} +\photo{foley-crop-lowres} +%\extrainfo{{\small married with childrens}} +%\quote{} + +%\renewcommand{\listsymbol}{{\fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}}} +%\definecolor{see}{rgb}{0.5,0.5,0.5} + +% command for text subscripts +%\newcommand{\up}[1]{\ensuremath{^\textrm{\scriptsize#1}}} + + +% slanted small caps (only with roman family; the sans serif font doesn't exists :-() +%\usepackage{slantsc} +%\DeclareFontFamily{T1}{myfont}{} +%\DeclareFontShape{T1}{myfont}{m}{scsl}{ <-> cork-lmssqbo8}{} +%\usefont{T1}{myfont}{m}{scsl}Testing the font +\setlength{\footskip}{36.8pt} + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} +\maketitle +%\makequote + +\section{Education} +% june 21, 2007 +\cventry{2000--2007}{Doctor of Philosophy in Mechanical + Engineering}{Massachusetts Institute of Technology}{}{}{} +% june 1, 1999 +\cventry{1998--1999}{Master of Engineering in Computer Science and + Electrical Engineering}{Massachusetts Institute of Technology}{}{}{} +\cventry{1994--1999}{Bachelor of Science in Computer Science and + Electrical Engineering}{Massachusetts Institute of Technology}{}{}{} + +\section{Doctor of Philosophy Dissertation} +\cvitem{title}{\emph{Security Approaches for Radio Frequency + Identification Systems}} +\cvitem{supervisor}{Professor Sanjay Sarma} +\cvitem{description}{\small Describes preventative measures +and protection from the privacy invasion potential associated with +ubiquitous Radio Frequency Identification (RFID) while still +maintaining capabilities to track items and prevent theft. The unified RFID protection system is called TinFoil.} + +\section{Master Thesis} +\cvitem{title}{\emph{An Infrastructure for Electromechanical +Appliances on the Internet}} +\cvitem{supervisor}{Professor Sanjay Sarma} +\cvitem{description}{\small Design and implementation of an Radio +Frequency Identification (RFID) and Internet enabled appliance. The +design focused on general methods applicable to a wide variety of +intelligent devices. Fundamental development of ONS and EPC technologies.} + +%\newcommand{\cvbibentry}[1]{\cventry{\citeyear{#1}}{\citetitle{#1}}{\fullcite{#1}}{}{}{}} +\newcommand{\cvbibentry}[1]{\fullcite{#1}\vspace{\baselineskip}\\} + +\section{Published Work} + +\cvbibentry{foley2022embracingfailure} +\cvbibentry{foley2021ad-software-engineering} +\cvbibentry{sudermann2021mobile} +\cvbibentry{foley2021dindesign} +\cvbibentry{des2021} +\cvbibentry{foley2021descomplexitykitchen} +\cvbibentry{foley2019complexitykitchen} +\cvbibentry{icad2018book} +\cvbibentry{vossebeld2018customer}%01015 +\cvbibentry{helgason2018tablet}%01015 +\cvbibentry{foley2017antenna}%01015 +\vbox{ + \cvbibentry{foley2017faucet}%01009 + } +\cvbibentry{foley2017motorcyclelift}%01008 +\cvbibentry{foley2017adjustadesk}%01002 +\cvbibentry{breznik2017collaborative} +\cvbibentry{foley2017msddontology} +\cvbibentry{petursson2017smaspring} +\cvbibentry{erlingsson2016roboclaw} +\cvbibentry{foley2016desirable} +\cvbibentry{guls2016auvlight} +\cvbibentry{gerhard2016suretrack} +\cvbibentry{omarsdottir2016chessmate} +\cvbibentry{puik2016ignorance} +\cvbibentry{foley2016evaluating} +\cvbibentry{foley2016creative} +\cvbibentry{cochran2016hospital} +\cvbibentry{cochran2016msdd} +\cvbibentry{bragason2015parachuterelease} +\cvbibentry{jonsson2015uget} +\cvbibentry{solvason2015spectrometer} +\cvbibentry{thompson2014additive} +\cvbibentry{gudmundsdottir2014extendingviametricity} +\cvbibentry{gudmundsdottir2014wirelessscheduling} +\cvbibentry{foley2011colliding} +\cvbibentry{foley2012vitro} +\cvbibentry{foley2012epd} +\cvbibentry{foley2012epdposter} +\cvbibentry{kim2009microartificialmuscle} +\cvbibentry{foley2008turbsim} +\cvbibentry{engels2001networkedworld} + +\section{Invited Talks and Presentations} +\cventry{2018}{Axiomatic Design and Desirable Complexity}{Joe +Foley}{IWSSIP 2018 --- 25th International Conference on Systems, Signals, and Image Processing}{Maribor, Slovenia, June 20}{}{} + +\cventry{2017}{Axiomatic Design for Everyone}{Joe +Foley}{International Conference on Axiomatic Design Tutorial}{ +Iasi, Romania, September 11}{}{} +\cventry{2014}{Raspberry Pi: Affordable Embedded Linux}{Joe +Foley}{Félag rafeindavirkja (Icelandic Electronics Association) Keynote}{Stórhöfði 29, +Reykjavík 110, May 29}{}{} +\cventry{2013}{Introduction to Axiomatic Design}{Joe Foley}{MPM + Product Course Guest Lecturer}{Reykajvík University, February 15}{}{} +\cventry{2012}{RU High Altitude Balloon Project}{Joe Foley}{RU Lecture +Marathon Series}{Reykjavík University, March 23}{}{} +\cventry{2012}{RU High Altitude Balloon Project}{Joe Foley}{Icelandic + Rotary Club Guest Speaker}{August 17}{}{} +\cventry{2012}{APRS Basics and Tracking}{Joe Foley}{Icelandic Radio + Amateur Club}{Reykjavik, May 31}{} +\cventry{2011}{Digital Manufacturing and Personal Sustainability}{Joe + Foley}{Alþjóðlegi Umhverfisdagurinn (World Environment + Day)}{Reykjavík University, June 5}{}{} +\cventry{2011}{Exploitable Assumptions}{A. Brooks, E. Schmiedl, + J. Foley}{DEFCON 2011}{}{} +\cventry{2007}{U.S.Industrial Energy Use: Making Less with + More?}{Jeffrey Dahmus, Alissa Jones, Lynette Cheah, Matthew Branham, + Joseph Foley and Young Song}{MIT Energy Conference Poster Session, + March 9 2007}{}{} +\cventry{2006}{Security Approaches for Radio Frequency Identification + Systems}{Dr.\ Joseph T. Foley}{EPCglobal US Conference}{Los Angeles, + October 19}{} +\cventry{2003}{Happy Trails: Automated Lifting Trailer}{MIT 2.009 Team + Purple '99}{Lemelson Inventor Conference}{Washington DC, USA}{} +\cventry{2002}{AutoID Technology Demonstration}{Distributed + Information System Center MIT}{Cambridge University, UK}{}{} + +\section{Advising} +\cventry{2017--2021}{Lab for Unmanned Vehicles}{Joseph T. Foley}{Reykjavík University}{}{} +%% Marcel's student? +\cventry{2021}{ME Master's thesis advisor for Danila Krapivenko}{Joseph T. Foley}{Reykjavík University}{Completed June 2021}{Proprietary Information released in 10 years} +\cventry{2021}{ME Master's thesis advisor for Patrekur Smári Þrastarson ``International Pistol Training Tool --- Competition Shooting Device''}{Joseph T. Foley}{Reykjavík University}{Completed June 2021}{} +\cventry{2018}{ME Master's thesis advisor for Sævar Örn Einarsson ``Development of a Dynamic Multi-Belt Scale for IQF sorting''}{Joseph T. Foley}{Reykjavík University}{Completed June 2019}{} +\cventry{2018}{MSc.\ Master's thesis advisor for Shahab Ali Shah ``Using the Collective System Design Approach to Facilitate Sustainable Manufacturing''}{David S. Cochran, Todor Cooklev, Behin Elahi, Joseph Timothy Foley}{Purdue Fort Wayne and Reykjavík University}{Completed June 2019}{} +%\cventry{2018}{ME Master's thesis advisor for Páll Pálsson ``Reduced fatigue tattoo needle system''}{Joseph T. Foley}{Reykjavík University}{Expected graduation: June 2019}{} +\cventry{2018}{EE Master's thesis advisor for Einar Pétursson ``Low-power recovery system for patients with dementia''}{Marcel Kyas and Joseph T. Foley}{Reykjavík University}{Completed: January 2019}{} +\cventry{2017}{ME Master's thesis advisor for Vladimir Omelianov ``Automated 3-axis multi-Ghz antenna testing unit''} +{Joe Foley and Slawomir Koziel}{Reykjavík University}{Completed January 2018}{} +\cventry{2017}{ME Master's thesis advisor for Nicholas Randall ``Improving power-grid stability with real-time analysis of PMU data''} +{Joe Foley and Ragnar Kristjansson}{Reykjavík University}{Completed September 2017}{} +\cventry{2016} +{ME Bachelors's thesis advisor for Sævar Örn Einarsson ``Shape Memory Alloy resistive heating degradation analysis''} +{Joe Foley}{Reykjavík University}{Completed June 2016}{} +\cventry{2016}{ME Master's thesis advisor for Krisján Gerhard + ``Redesign of the SureTrack Grader Transfer Bin Using Axiomatic Design Theory''}{Joe + Foley}{Reykjavík University}{Completed January 2016}{} +\cventry{2016}{EE Bachelor's thesis evaluator for Borys Niekurzak + ``Yaw angle measurement using inertial measurement unit''} +{Advisor: Baldur Þorgilsson, Evaluator: Joe Foley}{Reykjavík University}{}{} +\cventry{2015}{ME Master's thesis advisor for Gunnar Óli Sölvason + ``Low cost spectrometer for Icelandic chemistry education''}{Joe + Foley}{Reykjavík University}{Completed June 2015}{} +\cventry{2015}{ME Master's thesis advisor for Eiður Örn Þórsson + ``Dust Maker: a Volcanic Ash Dispersion Unit''}{Joe + Foley \& Þorgeir Palsson}{Reykjavík University}{Expected + completion June 2015}{} +\cventry{2015}{ME Master's thesis advisor for Sigurður Ingi Einarsson + ``Cabin Air Flow in Icelandair Boeing 757--200 Airplanes''}{Joe + Foley \& Þorgeir Palsson}{Reykjavík University/Icelandair Technical Services} +{Expected completion June 2015}{} +\cventry{2014}{EE Batchelor's thesis advisor for Sigríður Árný Júlíusdóttir + ``Movement measurement device for airplanes''}{Joe + Foley}{Reykjavík University/Icelandair Technical Services}{Completed May 2014}{} +\cventry{2013}{Independant Study for Björgvin Rúnar Þórhallsson + ``DustLoop'' for T-870-INTE Integrated Project}{Joe Foley \& Þorgeir + Palsson}{Reykajvík University/University of Iceland}{Completed + August 2013}{} +\cventry{2013}{CS Master's thesis advisor for Georgios Petropoulos + ``Automated Flight Data Bus Testing System'' (working title)}{Joe + Foley \& Þorgeir Palsson}{Reykjavík University/Icelandair Technical + Services hosting for University of Camerino, Italy}{Completed June + 2015}{} +\cventry{2012}{Independant study for Guðmundur Viktorsson + ``Development of a Flight Data Acquisition and Converter System''}{Joe Foley + \& Þorgeir Palsson}{Reykjavík University and Icelandair Technical Services}{}{} +\cventry{2012}{Master's thesis evaluator for Guðjón Hugberg Björnsson + ``Automatic thermal inspection of aluminum reduction + cell''}{Evaluators: Joe Foley, Jón Guðnason, Agni + Asgeirsson}{Reykjavík University}{}{} + +\section{Referee} +\cventry{2018}{International Conference on Axiomatic Design 12 (ICAD2018)}{Head Organizer, Scientific Chair, Editor}{Reykjavik, Iceland}{}{} +\cventry{2017}{International Conference on Axiomatic Design 11 (ICAD2017)}{Scientific Chair}{Iasi, Romania}{}{} +\cventry{2017}{27th CIRP Design Conference}{Session Chair}{Cranfield University, UK}{}{} +\cventry{2016}{International Conference on Axiomatic Design 10 (ICAD2016)}{Reviewer}{Xi'an, Shaanxi, China}{}{} +\cventry{2016}{CDIO Annual International Conference}{Session Chair}{Turku, Finland}{}{} +\cventry{2016--2017}{International Journal of Production Research}{Reviewer}{}{}{} +\cventry{2016}{Journal of Engineering Design}{Reviewer}{}{}{} +\cventry{2016}{International Journal of Numerical Modelling: Electronic Networks, Devices and Fields}{Reviewer}{}{}{} +\cventry{2015}{International Conference on Axiomatic Design 9 (ICAD2015)}{Reviewer}{Florence, Italy}{}{} +\cventry{2014}{ASME 2014 12th Biennial Conference on Engineering Systems Design and Analysis (ESDA2014)}{External reviewer}{Copenhagen, Denmark}{}{} +\cventry{2003}{IEEE Workshop on Pervasive Computing and Communication Security (PerSec)}{External reviewer}{Fort Worth, Texas}{}{} + +\section{Intellectual Property} +\cventry{2017}{Portable escape-room media platform}{Joe Foley and Vladimir Omelianov}{}{}{Raspberri pi based media display system for interfacing with ``escape room'' type games. + Developed for Escape Reykjavik.} +\cventry{2014}{iPad Video Control}{Joe + Foley}{}{}{Modular cgi-based iPad Video control system for use with + Raspberry Pi. Developed for the Reykjavík Art Museum, Icelandic National Gallery, and Listasafn Árnesinga} +\cventry{2013}{DVD and Blue-ray Art Installation Synchronizer}{Joe + Foley}{}{}{Arduino system for video synchronization. Developed for the Reykjavík Art Museum} +\cventry{2013}{US Patent 8,384,546 ``Tag Anti-Countefeit + Systems''}{Joseph T. Foley, Sanjay E. Sarma, and Steve Weis}{}{}{} +\cventry{2011}{US Patent 20110083325 A ``Method of Manufacturing a + Nickel Titanium Coil Actuator''}{M. Jolda and J. Foley, iRobot Patent }{}{}{} +\cventry{2011}{Google Code ``arduino-roomba''}{Joe Foley}{}{}{Library + for interfacing an Arduino and iRobot Create/Roomba. GPL2.} +\cventry{2000}{US Patent 7,765,253 ``Object Name Service''}{Joseph + Foley, Erik Nygren, \& Sanjay Sarma. MIT TLO 9789}{}{}{} + +\section{Collaboration} +\cventry{2018}{``Huglæg rými'' aka. ``Subjective Spaces'' Video Art Installation}{Ólafur Sveinn Gíslason, Inga Jónsdóttir, and Joseph T. Foley}{}{}{2 pair of dual-screen synchronized video players deployed in the info-beamer hosted framework. Developed for Lístasafn Árnesinga in Hveragerði, Iceland.} +\cventry{2018}{``Hver-gerði'' Interactive Art Installation}{Sigrun Harðardóttir and Joseph T. Foley}{}{}{Adafruit Feather LoRA based interactive furniture, room, and instrument system. Developed for Lístasafn Árnesinga in Hveragerði, Iceland.} +\cventry{2016--}{Mjolnir 2 rocket launch project}{Rocket flight system architect}{Reykjavík University and Thorildsplan Gymnasium in Stockholm, Sweden}{}{Developing a liquid-fuel rocket platform for high altitude launch in Iceland.} +\cventry{2011--2014}{RU-LHÍ Music, Art, Software, Engineering + Collaboration}{RU Lead}{Reykjavik University and Listaháskolinn + Islands}{}{ +Co-teaching T-428-EMIR, Gagnvirk rafvélræn list + ``Electromechanical Interactive Art'' with faculty in RU Computer + Science, LHÍ Music, and LHÍ Visual Arts. This class will create + teams of engineers, programmers, musicians, and visual artists to + create collaborative inter-disciplinary interactive art.} +\cventry{2011}{``Emerging and Imposing Spaces'' (``Vaxandi og + uppáþrengjandi rými'')}{co-organized with Sigrún + Harðardóttir}{RU and LHÍ}{Electro-mechanical Interactive Art}{Visual + Arts class ``Interactivity'' LHÍ \& RU VT + HUN1013 ``Design'' cooperated to produce 7 unique art installation + works shown at LHÍ. Selected pieces +shown at Hreindirland Festival 2011 and covered by RÚV 2.} +\cventry{2010--2016}{Faculty Advisor}{RU and Hakkavélin}{Hackspace}{}{} +\cventry{2003--2004}{Internet Engineering Task Force (IETF) ONS Working Group}{founding member}{AutoID Center MIT, Verisign, + \& EPC Global}{}{} +\cventry{2005}{ONS 1.0}{architect}{AutoID + Center MIT \& OATsystems}{}{} + +\section{Teaching} +% \cventry{Fall 2021}{Lecturer}{Reykjavík +% University}{Reykjavík 101, Iceland}{}{T-411-MECH +% ``Mechatronics 1'', T-865-MADE ``Precision Machine Design''} +\cventry{Spring 2021}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-620-ENGX ``EngineeringX''} +\cventry{Fall 2017-2020}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-411-MECH + ``Mechatronics 1'', T-865-MADE ``Precision Machine Design'', T-102-VERK ``Intro to Engineering'' (2017-2018)} +\cventry{Spring 2019}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{VT HUN1013 ``Design''} +\cventry{Fall 2016--2020}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-411-MECH + ``Mechatronics 1'' and T-865-MADE ``Precision Machine Design'': Instrument for simultaneous testing of 6 SMA spring actuators} +\cventry{Spring 2016}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{VT HUN1013 ``Design'': Adjustable desk and motorcycle lift} +\cventry{Fall 2015}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-411-MECH + ``Mechatronics 1'' and T-865-MADE ``Precision Machine Design'': class project improving rocket parachute release mechanisms.} +\cventry{Spring 2015}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{VT HUN1013 + ``Design'': students developed gunpowderless parachute release and SMA spring winder.} +\cventry{Fall 2014}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-411-MECH + ``Mechatronics 1'' and T-865-MADE ``Precision Machine Design'': class projects related to fuel-mixing for internal combustion engines.} +\cventry{Spring 2014}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{VT HUN1013 + ``Design'': class project to develop 2.3 meter synchronized + suspended rotating project cube + for Reykjavík City Theater. T-820-INTE ``Integrated Project'': + Master's class performed 2 high-altitude rocket launches (2+ km). + See collaboration section for info on T-420-EMIR.} +\cventry{Fall 2013}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-411-MECH + ``Mechatronics 1'' and T-865-MADE ``Precision Machine Design'': class + project is to designed an XYZ robot capable of FDM printing and + magnetic field measurement.} +\cventry{Spring 2013}{Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{VT HUN1013 ``Design'': class project is to redesign and reimplement the RU AUV + for competition in RoboSub 2013.} +\cventry{Fall 2012}{Part-time Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{T-411-MECH + ``Mechatronics'' 1 and Lab instructor for T-722-WNMO ``Wireless Networks + and Mobility''.} +\cventry{Spring 2012}{Part-time Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{VT~HUN1013 ``Hönnun'' Mechanical Design: industry collaboration with + CCP games to develop high-altitude balloon platform capable of + multiple high-definition video capture. + Co-teaching T-420-HON ``Hönnun X'': integrated project class + developing a walking robot for doing prosthesis gait testing at + Össur HF.\@ See collaboration section for information on T-428-EMIR.} +\cventry{2011--2013}{Advisor/Consultant}{Icelandair + Technical Services, Design Department}{Building 8, 235 Keflavik + Airport, Iceland}{}{Designing and prototyping ATMega/Arduino avionics interface to + convert and filter data between A757 and A429 data buses. This + interface will allow real-time monitoring of flight data, with + particular focus on the accelerometer inputs. Co-advising bachelor's +student Guðmundur Viktorsson in this project with Þorgeir Pállson of RU.} +\cventry{Fall 2011}{Part-time Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{Teaching T-865-MADE + ``Precision Machine Design'', developing low-cost precision spectrometer + equipment to be used by RU bioengineering department. Teaching + T-411-MECH ``Mechatronics 1'', building affordable circuit prototyping and + automation education using the Arduino architecture.} +\cventry{Spring 2010}{Part-time Lecturer}{Reykjavík + University}{Reykjavík 101, Iceland}{}{Taught VT + HUN1013 ``Hönnun'' Mechanical Design, which produced designs for + research equipment and interactive art installations. (See collaborations). + Co-taught T-420-HON ``Hönnun X'': class project that developed an aluminum + smelter pot inspection robot for Rio Tinto Alcan.} +\cventry{Spring 2006}{Teaching Assistant}{CSCI-E-170: + Computer Security and Privacy}{Harvard Extension School}{Cambridge, + MA}{Lectures, problem set generation, and grading on security + material.} +\cventry{2002--2005}{Head Instructor}{MIT Faculty + Pistol \& Rifle Club}{Cambridge, MA}{}{Revised NRA pistol safety + curriculum to integrate international target pistol trends. Taught + Marksmanship and Pistol Safety course every semester.} +\cventry{Fall 1999}{Teaching Assistant}{MIT 2.007 + Introduction to Mechanical Design}{Cambridge, MA}{}{Revised + curriculum, developed control system and scoring system for + ``Ballcano'' robotics competition.} + +\section{Grants} +\cventry{June~2021--August~2021}{Advisor}{Student Innovation Fund}{Menntavegur 1, Reykjavík 101, Iceland}{} +{Grants: DUFL enhanced bouy tracking system} +\cventry{June~2021--August~2021}{Advisor}{Iceland Summer Student Fund}{Menntavegur 1, Reykjavík 101, Iceland}{} +{Grants: Integrate Robot Operating System and Python into Mechatronics teaching; Implement convolutional neural networking for MARS feature recognition; Airborn sensor deployment} + +\cventry{June~2020--August~2020}{Advisor}{Iceland Summer Student Fund}{Menntavegur 1, Reykjavík 101, Iceland}{} +{Grant: Lab Designers to re-design Mechatronics 1 to be more suitable during COVID-19} +\cventry{Sept~2014--Jan~2014}{Advisor}{Icelandair Group Research + Fund}{Menntavegur 1, Reykjavík 101, Iceland}{}{Grant: Cabin Air Flow + in Icelandair Boeing 757--200 Airplanes} + +\cventry{Sept~2012--Jan~2013}{Advisor}{RANNIS Technology Fund + (Tækjniróunarsjóður)}{Menntavegur 1, Reykjavík 101, + Iceland}{}{Grant: Automated Pinbone Removal in Cod and Whitefish + (APRICOT). PI:\@ Kristinn Andersen (Marel)} + +\cventry{June~2011--Sept~2011}{Advisor}{RANNIS Student Innovation Fund + (Nýsköpunarsjóður námsmanna)}{Menntavegur 1, Reykjavík 101, + Iceland}{}{Grant: ``CNC foam-cutter for micro air vehicle wings'' + for student research salary during summer. Advised software and + mechanical undergraduates in the design and construction of a + high-precision, low-cost computer-controlled (CNC) hot-wire foam + cutter for the prototyping of small-scale foam-composite aircraft + wings. Materials funded from RANNIS ``Flapping-wing Unmanned Air + Vehicle''. } + +\section{Experience} + +\cventry{2018--Current}{Assistant Professor} +{Reykjavík University School of Technology, Department of Engineering} +{Menntavegur 1, Reykjavík 102, Iceland}{}{Teaching + and researching mechatronics devices, focusing on avionics and + wireless. Product and Axiomatic Design is a common technique used in all of these fields.} + +\cventry{2013--2018}{Assistant Professor}{Reykjavík University Science + and Engineering}{Menntavegur 1, Reykjavík 101, Iceland}{}{Teaching + and researching mechatronics devices, focusing on avionics and + wireless. Axiomatic Design is a common technique used in all of these fields.} + +\cventry{2013--2014}{IT Researcher}{Reykjavík University + UTS}{Menntavegur 1, Reykjavík 101, Iceland}{}{Researching into + file/media servers, better help-desk experience, collaboration + tools, and DNS management.} + +\cventry{2012--Sept~2012}{Research Engineer}{MIT + Laboratory for Manufacturing and Productivity: Distributed Quality + Control Project}{77 Massachusetts Ave, Cambridge MA}{}{Researching + automation technology on NIST manufacturing grant on decentralized + manufacturing and quality control practices. PI:\@ Sanjay Sarma} + +\cventry{2010--2012}{Specialist}{Reykjavík University + Science and Engineering}{Menntavegur 1, Reykjavík 101, + Iceland}{}{Research into simplified robotics infrastructure to solve + sensing problems and improve rapid prototyping capabilities. Also + developing cross-discipline programs and classes with Iceland + Academy of the Arts (LHÍ)} + +\cventry{June~2011--Sept~2011}{Consultant}{3Z ehf.}{Menntavegur 1, + Reykjavík 101, Iceland}{}{Designed and implemented prototype + zebrafish embryo dispensing robot for pharmacology and toxicity studies.} + +\cventry{Sept~2010--March~2011}{Consultant}{Brass Drift, + Inc.}{Emeryville, CA}{}{Designed custom low-cost flexure locking mechanism + for an electronic security box.} + +\cventry{Sept~2010--Jan~2011}{Consultant}{MIT Biomimetic Robotics + Lab}{Cambridge, MA USA \& Reykjavík, Iceland}{}{Finite element analysis of advanced + structural composites used to develop a high speed quadruped robot + for Professor Sangbae Kim.} + +\cventry{Nov~2007--Aug~2010}{Senior Research Scientist}{iRobot + G \& I Research}{Bedford, MA}{}{Designing new + robotics concepts and mechanisms in the DARPA ChemBots program. + iRobot research \& development in government and industrial applications/proposals.} + +\cventry{Nov~2006--Nov~2007}{PostDoctoral Research + Associate}{MIT}{Cambridge, MA}{}{``Energy Efficiency in + Manufacturing'' Investigated energy usage in the manufacturing + industries and created wind turbine reliability simulator.} + +\cventry{2004--March~2004}{Web software engineer}{SigMantra + LLC}{Bedford, MA}{}{Developed social-media website ``Uffinity'' for + connecting recently graduated young-professionals to others offering +employment.} + +\cventry{May~2000--Sept~2000}{Magic Mechanic}{Emode, + Inc.}{Cambridge, MA}{}{Developed world's largest fully-indexed quote + database. Developed and installed network security policies and + equipment} + +\cventry{May~1997--Sept~1997}{Mechanical Design Engineer}{Brute + Force Games}{Cambridge, MA}{}{Designed full immersion game simulator + platform leveraging vection research.} + +\cventry{Sept~1996--Sept~1999}{Network Programmer}{MIT + Network Operations}{Cambridge, MA}{}{Security operations and + emergency paging system development.} + +\cventry{July~1994--Sept~1994}{Network Administrator}{Brooks Automation}{Lowell, MA}{}{Installation and configuration of network infrastructure, development of automated FAX document server.} + +\cventry{July~1993--Sept~1993}{Intern}{Solar Cell Lab, University of Massachusetts, Lowell}{Lowell, MA}{}{Programming of HPGIB-based electrical analyzer for solar cell efficiency} + + +\section{Pending, Unpublished, and Project Works, available upon request} + +\subsection{Mechanical Design} + +\cventry{2018}{PLASBAR:\@ Heat-activated Parachute Release System} +{J. Foley, H. Gunnarson, T. Semmler, O. Vasques, J. Holfelder, M. Ariaudo, M. Jafri, D. Cochran}{}{}{} + +\cventry{2011}{Low-cost high-accuracy spectroscope}{ Arnar + Þ. Stefánsson, Elín A. Steinarsdottir, Guðjón H. Björnsson, Matthías + Stefánsson, Máni Ólafsson, Ólöf K. Hrafnsdóttir, and Joe + Foley}{}{}{\url{http://afs.rnd.ru.is/course/T-865-MADE/2011/Projects/Spectrometer/Documentation/Report/report.pdf}} + +\cventry{2011}{Bio-tensegrity: A New Design Paradigm for Hyperdynamic + Legged Robots}{A. Ananthanarayanan, J. Foley, and S. Kim}{}{}{} + +\cventry{2001}{Wireless Friends: Company Business Plan}{Sofy Tarud, Joe + Foley, Oscar Lopez, Omri Pedatzur}{}{}{} + +\cventry{2000}{System Analysis and Design of the Insight M3/M5 + Tactical Illuminator}{Vince E. Carballo, Miguel A. Chavez, Joe + Foley}{}{}{} + +\cventry{1998}{Low-Cost Pine Car Derby Timing System}{Joe + Foley}{Advanced Undergraduate Project}{Advisor: Professor Alex + Slocum}{} + +\subsection{Software Engineering} + +\cventry{2001}{Automotive Diagnosis Assistant}{Joe Foley, Ariel Segall}{}{}{} + +\cventry{1999}{Kraken: Distributed Cooperative Web Caching}{Joe Foley, Amy + Vandiver, \& Ben Vandiver}{}{}{} + +\cventry{1998}{Evolved PacMan: Genetic Algorithm for Design of Control + Systems}{Joe Foley \& Mike Phillips}{}{}{} + +\cventry{1996}{An Ad-Hoc FPGA --- Xilinx Type}{Joe Foley \& Mark Roh}{}{}{} + +\cventry{1996}{A Partly Read-Only, Portable Web Site}{Joe Foley}{}{}{} + +\subsection{Security} + +\cventry{2006}{ONS Deployment and Visibility Challenges}{Dan Engles + and Joe Foley}{}{}{} + +\cventry{2004}{Flingetty: Secure Multiparty Computation for a Dating Match-Up + System}{Natan Cliffer, Joe Foley, Hongyi Hu}{}{}{}{} + +\cventry{2003}{KLite: A RFID Tag Anti-Counterfeit System}{Joe Foley}{}{}{} + +\cventry{2003}{EPC Reductionism}{Joe Foley}{}{}{} + +\cventry{1996}{WhoRU:\@ Anonymous Encrypted Remailer}{Daniel Derksen, + Joe Foley, Matthew Rimer}{}{}{} + +\subsection{Miscellaneous} + +\cventry{1998}{Cambridge Heart}{Joe Foley, Marc Lebovitz, Ranjini + Srikantiah, Victor Su}{}{}{} + + +\section{Languages} +\cvlanguage{English}{Native}{} +\cvlanguage{Spanish}{Novice}{High School education, 1990--1994} +\cvlanguage{Chinese}{Novice}{MIT 2005} +\cvlanguage{Icelandic}{Novice}{RU Islenska fýrir Útlendingur 1--3} +%\pagebreak + +\section{Skills} +\cvcomputer{programming}{Rust, C/C++, Java}{scripting}{PHP, Bash, + python, perl} +\cvcomputer{scientific}{Matlab, Maple}{Modeling}{Creo, +SolidWorks, Inventor} +\cvcomputer{simulation}{AutoDesk SimulateCFD}{typography}{\LaTeX, PostScript}{}{} +\cvcomputer{control}{Arduino/Atmega, Raspberry Pi, BeagleBone, PIC}{Rapid prototyping}{FDM, + Laser templates, silicone molding} +\cvcomputer{OS}{Linux, UNIX, Windows, OSX}{administration}{Apache, + DNS, ONS} +\cvcomputer{web design}{PostNuke, Turbogears}{database}{MySQL, PostgreSQL} +\cvcomputer{EEA}{IS Explosives certification (class B), Amateur Radio License}{SCUBA}{PADI Rescue Diver, Dry Suit, Nitrox} + +%\section{Interests} +%\cvitem{design}{\small I am a design fan, especially when it comes to typography and photography.} +%\cvitem{adventure sports}{\small I like practicing adventure sports like skiing, rock climbing and scuba diving, and have been a boy scout for five years.} +%\cvitem{travelling}{\small I have been living abroad during my childhood, and love travelling around the world.} + +%\section{Section with a list} +%\cvlistitem{lol} +%\cvlistitem{lol} +%\cvlistdoubleitem{lol}{relol} +%\cvlistdoubleitem{lol}{relol} + +%\section{Section with your own content}\closesection +%Your content here,\\ +%inside the normal \LaTeX{} environment. + +%\emptysection{} +%\cvitem{Now}{Back to moderncv layout, without making a new section :-)} + +%\hyphenpenalty=50 +%\tolerance=100 +\end{document} +%\printbibliography{} %biblatex invocation if needed +% if you give it keyword options type={foo} then it will only put items of type foo +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/foley-short_cv.bbl b/foley-short_cv.bbl new file mode 100644 index 0000000..42191a1 --- /dev/null +++ b/foley-short_cv.bbl @@ -0,0 +1,669 @@ +% $ biblatex auxiliary file $ +% $ biblatex bbl format version 2.9 $ +% Do not modify the above lines! +% +% This is an auxiliary file used by the 'biblatex' package. +% This file may safely be deleted. It will be recreated by +% biber as required. +% +\begingroup +\makeatletter +\@ifundefined{ver@biblatex.sty} + {\@latex@error + {Missing 'biblatex' package} + {The bibliography requires the 'biblatex' package.} + \aftergroup\endinput} + {} +\endgroup + + +\refsection{0} + \datalist[entry]{none/global//global/global} + \entry{foley2017antenna}{inproceedings}{} + \name{author}{4}{}{% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=fd8fcfa65c244c162859baa18ec82992}{% + family={Omelianov}, + familyi={O\bibinitperiod}, + given={Vladimir}, + giveni={V\bibinitperiod}}}% + {{hash=1cdcbbffa8433936aa212c361d36fff6}{% + family={Koziel}, + familyi={K\bibinitperiod}, + given={Slawomir}, + giveni={S\bibinitperiod}}}% + {{hash=4aac32dfa5b18ee401c3d2e608d5eb85}{% + family={Bekasiewcz}, + familyi={B\bibinitperiod}, + given={Adrian}, + giveni={A\bibinitperiod}}}% + } + \name{editor}{1}{}{% + {{hash=c26c17e81feb0143e0f94c28b75cc9d5}{% + family={Dodoun}, + familyi={D\bibinitperiod}, + given={Oana}, + giveni={O\bibinitperiod}}}% + } + \list{location}{1}{% + {Iasi, Romania}% + } + \list{publisher}{1}{% + {MATEC Web of Conferences}% + } + \strng{namehash}{74270433499e9c0af7afc10385380642} + \strng{fullhash}{74270433499e9c0af7afc10385380642} + \strng{bibnamehash}{74270433499e9c0af7afc10385380642} + \strng{authorbibnamehash}{74270433499e9c0af7afc10385380642} + \strng{authornamehash}{74270433499e9c0af7afc10385380642} + \strng{authorfullhash}{74270433499e9c0af7afc10385380642} + \strng{editorbibnamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editornamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editorfullhash}{c26c17e81feb0143e0f94c28b75cc9d5} + \field{sortinit}{1} + \field{sortinithash}{2174f786c6195e7fe2ee1c229b416e29} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{11th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \strng{crossref}{icad2017} + \field{note}{Sep. 15--18} + \field{title}{Low-cost Antenna Positioning System Designed with {A}xiomatic {D}esign} + \field{year}{2017} + \field{pages}{7} + \range{pages}{1} + \endentry + \entry{foley2017faucet}{inproceedings}{} + \name{author}{3}{}{% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=1dcc7d4f53f8ee5b8b070beb07f68eb4}{% + family={Puik}, + familyi={P\bibinitperiod}, + given={Erik}, + giveni={E\bibinitperiod}}}% + {{hash=5119295c62e2f13b65c887fe3d23f34a}{% + family={Cochran}, + familyi={C\bibinitperiod}, + given={David\bibnamedelima S.}, + giveni={D\bibinitperiod\bibinitdelim S\bibinitperiod}}}% + } + \name{editor}{1}{}{% + {{hash=c26c17e81feb0143e0f94c28b75cc9d5}{% + family={Dodoun}, + familyi={D\bibinitperiod}, + given={Oana}, + giveni={O\bibinitperiod}}}% + } + \list{location}{1}{% + {Iasi, Romania}% + } + \list{publisher}{1}{% + {MATEC Web of Conferences}% + } + \strng{namehash}{52580fd33c688c03deac9ca72b403a67} + \strng{fullhash}{52580fd33c688c03deac9ca72b403a67} + \strng{bibnamehash}{52580fd33c688c03deac9ca72b403a67} + \strng{authorbibnamehash}{52580fd33c688c03deac9ca72b403a67} + \strng{authornamehash}{52580fd33c688c03deac9ca72b403a67} + \strng{authorfullhash}{52580fd33c688c03deac9ca72b403a67} + \strng{editorbibnamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editornamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editorfullhash}{c26c17e81feb0143e0f94c28b75cc9d5} + \field{sortinit}{2} + \field{sortinithash}{cbff857e587bcb4635511624d773949e} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{11th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \strng{crossref}{icad2017} + \field{note}{Sep. 15--18} + \field{title}{The Faucet Reloaded: Improving {A}xiomatic {D}esign by Example} + \field{year}{2017} + \field{pages}{7} + \range{pages}{1} + \endentry + \entry{breznik2017collaborative}{inproceedings}{} + \name{author}{3}{}{% + {{hash=3d22ef9fda7908fe09c4b2e8a66f3dd2}{% + family={Breznik}, + familyi={B\bibinitperiod}, + given={Aleš}, + giveni={A\bibinitperiod}}}% + {{hash=a746bfceae6d90eaf88e6f51ca0d8079}{% + family={Planišič}, + familyi={P\bibinitperiod}, + given={Peter}, + giveni={P\bibinitperiod}}}% + {{hash=cca4d1118bd2e1fa7eac5246398bdf81}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima T.}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + } + \list{location}{1}{% + {Portorož, Slovenia}% + } + \strng{namehash}{d68e81d50cd8490ae8f64184f1b248b9} + \strng{fullhash}{d68e81d50cd8490ae8f64184f1b248b9} + \strng{bibnamehash}{d68e81d50cd8490ae8f64184f1b248b9} + \strng{authorbibnamehash}{d68e81d50cd8490ae8f64184f1b248b9} + \strng{authornamehash}{d68e81d50cd8490ae8f64184f1b248b9} + \strng{authorfullhash}{d68e81d50cd8490ae8f64184f1b248b9} + \field{sortinit}{3} + \field{sortinithash}{a4b52e5432884761f50fb9571273b93e} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{IEEE 26th International Electrotechnical and Computer Science Conference ERK 2017} + \field{title}{Collaborative development of an open-source rocket control system} + \field{year}{2017} + \field{pages}{4} + \range{pages}{1} + \endentry + \entry{foley2017msddontology}{inproceedings}{} + \name{author}{2}{}{% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=5119295c62e2f13b65c887fe3d23f34a}{% + family={Cochran}, + familyi={C\bibinitperiod}, + given={David\bibnamedelima S.}, + giveni={D\bibinitperiod\bibinitdelim S\bibinitperiod}}}% + } + \list{location}{1}{% + {Cranfield University, UK}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{8e63c565eb21c60e2582ca792a7d5a41} + \strng{fullhash}{8e63c565eb21c60e2582ca792a7d5a41} + \strng{bibnamehash}{8e63c565eb21c60e2582ca792a7d5a41} + \strng{authorbibnamehash}{8e63c565eb21c60e2582ca792a7d5a41} + \strng{authornamehash}{8e63c565eb21c60e2582ca792a7d5a41} + \strng{authorfullhash}{8e63c565eb21c60e2582ca792a7d5a41} + \field{sortinit}{4} + \field{sortinithash}{11cdaee3b18e01d77f3f428b13c1fc76} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{Complex Systems Engineering and Development Proceedings of the 27th CIRP Design Conference} + \strng{crossref}{cirpdc2017} + \field{note}{May 10--12} + \field{title}{Manufacturing System Design Decomposition: An Ontology for Data Analytics and System Design Evaluation} + \field{year}{2017} + \field{pages}{175\bibrangedash 180} + \range{pages}{6} + \endentry + \entry{petursson2017smaspring}{inproceedings}{} + \name{author}{6}{}{% + {{hash=6abe9d1376f5cee9cc8ebed000959a6a}{% + family={Pétursson}, + familyi={P\bibinitperiod}, + given={Einar}, + giveni={E\bibinitperiod}}}% + {{hash=8a2af5749b3712209c543433fd28d93f}{% + family={Karlsson}, + familyi={K\bibinitperiod}, + given={Ingi\bibnamedelima N\'\iels}, + giveni={I\bibinitperiod\bibinitdelim N\bibinitperiod}}}% + {{hash=d8860ef0c98968d00566c4cdd2f74883}{% + family={Garðarsson}, + familyi={G\bibinitperiod}, + given={Olaf\bibnamedelima Garðar}, + giveni={O\bibinitperiod\bibinitdelim G\bibinitperiod}}}% + {{hash=e6d0127896d6ac1d943181d95b0952c2}{% + family={Pálsson}, + familyi={P\bibinitperiod}, + given={Páll}, + giveni={P\bibinitperiod}}}% + {{hash=e1b2c7eac813f357670ef5596f320dce}{% + family={Saulius\bibnamedelima Genutis}, + familyi={S\bibinitperiod\bibinitdelim G\bibinitperiod}, + given={Vladimir\bibnamedelima Omelianov}, + giveni={V\bibinitperiod\bibinitdelim O\bibinitperiod}}}% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + } + \list{location}{1}{% + {Cranfield University, UK}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{f4b65e5bfb1e61f14880aa383a0b4124} + \strng{fullhash}{f4b65e5bfb1e61f14880aa383a0b4124} + \strng{bibnamehash}{f4b65e5bfb1e61f14880aa383a0b4124} + \strng{authorbibnamehash}{f4b65e5bfb1e61f14880aa383a0b4124} + \strng{authornamehash}{f4b65e5bfb1e61f14880aa383a0b4124} + \strng{authorfullhash}{f4b65e5bfb1e61f14880aa383a0b4124} + \field{sortinit}{5} + \field{sortinithash}{3c19c3776b658b3558e9e2e4840c01e2} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{Complex Systems Engineering and Development Proceedings of the 27th CIRP Design Conference} + \strng{crossref}{cirpdc2017} + \field{note}{May 10--12} + \field{title}{{A}xiomatic {D}esign of Equipment for Analysis of {SMA} Spring Degradation During Electronic Actuation} + \field{year}{2017} + \field{pages}{261\bibrangedash 266} + \range{pages}{6} + \endentry + \entry{foley2016desirable}{inproceedings}{} + \name{author}{3}{}{% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=1dcc7d4f53f8ee5b8b070beb07f68eb4}{% + family={Puik}, + familyi={P\bibinitperiod}, + given={Erik}, + giveni={E\bibinitperiod}}}% + {{hash=5119295c62e2f13b65c887fe3d23f34a}{% + family={Cochran}, + familyi={C\bibinitperiod}, + given={David\bibnamedelima S.}, + giveni={D\bibinitperiod\bibinitdelim S\bibinitperiod}}}% + } + \name{editor}{1}{}{% + {{hash=fc503e8b62eecf2c1f583b4191d838e1}{% + family={Liu}, + familyi={L\bibinitperiod}, + given={Ang}, + giveni={A\bibinitperiod}}}% + } + \list{location}{1}{% + {Xi'an, Shaanxi, China}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{52580fd33c688c03deac9ca72b403a67} + \strng{fullhash}{52580fd33c688c03deac9ca72b403a67} + \strng{bibnamehash}{52580fd33c688c03deac9ca72b403a67} + \strng{authorbibnamehash}{52580fd33c688c03deac9ca72b403a67} + \strng{authornamehash}{52580fd33c688c03deac9ca72b403a67} + \strng{authorfullhash}{52580fd33c688c03deac9ca72b403a67} + \strng{editorbibnamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editornamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editorfullhash}{fc503e8b62eecf2c1f583b4191d838e1} + \field{sortinit}{6} + \field{sortinithash}{57e57fb8451e7fcfa45d1e069f6d3136} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \strng{crossref}{icad2016} + \field{note}{Sep. 21--23} + \field{title}{Desirable Complexity} + \field{volume}{53} + \field{year}{2016} + \field{pages}{101\bibrangedash 106} + \range{pages}{6} + \endentry + \entry{guls2016auvlight}{inproceedings}{} + \name{author}{5}{}{% + {{hash=ee8bb7985c97fd158d3242232f988037}{% + family={Guls}, + familyi={G\bibinitperiod}, + given={Jevgenij}, + giveni={J\bibinitperiod}}}% + {{hash=0ee6927655ea4d891b7fbba8e9d21ede}{% + family={Bjarnason}, + familyi={B\bibinitperiod}, + given={Ólafur\bibnamedelima Ingi}, + giveni={Ó\bibinitperiod\bibinitdelim I\bibinitperiod}}}% + {{hash=ad7a805204d6598a69436ac748837e87}{% + family={Pétursson}, + familyi={P\bibinitperiod}, + given={Óskar}, + giveni={Ó\bibinitperiod}}}% + {{hash=89004433f1373e4e12090cd0c1915f7d}{% + family={Einarsson}, + familyi={E\bibinitperiod}, + given={Sævar\bibnamedelima Örn}, + giveni={S\bibinitperiod\bibinitdelim Ö\bibinitperiod}}}% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + } + \name{editor}{1}{}{% + {{hash=fc503e8b62eecf2c1f583b4191d838e1}{% + family={Liu}, + familyi={L\bibinitperiod}, + given={Ang}, + giveni={A\bibinitperiod}}}% + } + \list{location}{1}{% + {Xi'an, Shaanxi, China}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{0c164ab76408eebf5355169fd8ae2962} + \strng{fullhash}{0c164ab76408eebf5355169fd8ae2962} + \strng{bibnamehash}{0c164ab76408eebf5355169fd8ae2962} + \strng{authorbibnamehash}{0c164ab76408eebf5355169fd8ae2962} + \strng{authornamehash}{0c164ab76408eebf5355169fd8ae2962} + \strng{authorfullhash}{0c164ab76408eebf5355169fd8ae2962} + \strng{editorbibnamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editornamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editorfullhash}{fc503e8b62eecf2c1f583b4191d838e1} + \field{sortinit}{7} + \field{sortinithash}{c818dd9105a2852444fc9f5e145c294e} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \strng{crossref}{icad2016} + \field{note}{Sep. 21--23} + \field{title}{Application of {A}xiomatic {D}esign in designing Autonomous Underwater photography lighting} + \field{volume}{53} + \field{year}{2016} + \field{pages}{278\bibrangedash 283} + \range{pages}{6} + \endentry + \entry{puik2016ignorance}{inproceedings}{} + \name{author}{3}{}{% + {{hash=1dcc7d4f53f8ee5b8b070beb07f68eb4}{% + family={Puik}, + familyi={P\bibinitperiod}, + given={Erik}, + giveni={E\bibinitperiod}}}% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=c913156b569446a68cd7689a7c2c3fe8}{% + family={Ceglarek}, + familyi={C\bibinitperiod}, + given={Darek}, + giveni={D\bibinitperiod}}}% + } + \name{editor}{1}{}{% + {{hash=fc503e8b62eecf2c1f583b4191d838e1}{% + family={Liu}, + familyi={L\bibinitperiod}, + given={Ang}, + giveni={A\bibinitperiod}}}% + } + \list{location}{1}{% + {Xi'an, Shaanxi, China}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{c221015e4281d5a0df5f60b0cc9dbef4} + \strng{fullhash}{c221015e4281d5a0df5f60b0cc9dbef4} + \strng{bibnamehash}{c221015e4281d5a0df5f60b0cc9dbef4} + \strng{authorbibnamehash}{c221015e4281d5a0df5f60b0cc9dbef4} + \strng{authornamehash}{c221015e4281d5a0df5f60b0cc9dbef4} + \strng{authorfullhash}{c221015e4281d5a0df5f60b0cc9dbef4} + \strng{editorbibnamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editornamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editorfullhash}{fc503e8b62eecf2c1f583b4191d838e1} + \field{sortinit}{8} + \field{sortinithash}{07edf88d4ea82509b9c4b4d13f41c452} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \strng{crossref}{icad2016} + \field{note}{Sep. 21--23} + \field{title}{Ignorance is bliss: sudden appearance of previously unrecognized information and its effect} + \field{volume}{53} + \field{year}{2016} + \field{pages}{70\bibrangedash 77} + \range{pages}{8} + \endentry + \entry{foley2016creative}{inproceedings}{} + \name{author}{2}{}{% + {{hash=51c12315034df22572adffe45728ebdc}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima Timothy}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=b957e9f8ccecba6788a0e30e99259f40}{% + family={Harðardóttir}, + familyi={H\bibinitperiod}, + given={Sigrún}, + giveni={S\bibinitperiod}}}% + } + \list{location}{1}{% + {Stockholm, Sweden}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{dc8d7343da1ffe3c72efce3c358a6bc7} + \strng{fullhash}{dc8d7343da1ffe3c72efce3c358a6bc7} + \strng{bibnamehash}{dc8d7343da1ffe3c72efce3c358a6bc7} + \strng{authorbibnamehash}{dc8d7343da1ffe3c72efce3c358a6bc7} + \strng{authornamehash}{dc8d7343da1ffe3c72efce3c358a6bc7} + \strng{authorfullhash}{dc8d7343da1ffe3c72efce3c358a6bc7} + \field{sortinit}{9} + \field{sortinithash}{1dd72ab054147731c9d824b49aba0534} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{26th CIRP Design Conference} + \strng{crossref}{cirpdc2016} + \field{note}{Jun. 15--17} + \field{title}{Creative {A}xiomatic {D}esign} + \field{year}{2016} + \field{pages}{688\bibrangedash 694} + \range{pages}{7} + \endentry + \entry{cochran2016hospital}{inproceedings}{} + \name{author}{4}{}{% + {{hash=5119295c62e2f13b65c887fe3d23f34a}{% + family={Cochran}, + familyi={C\bibinitperiod}, + given={David\bibnamedelima S.}, + giveni={D\bibinitperiod\bibinitdelim S\bibinitperiod}}}% + {{hash=508f0a4e80af71a1970f575437811489}{% + family={Li}, + familyi={L\bibinitperiod}, + given={Jia}, + giveni={J\bibinitperiod}}}% + {{hash=4776cfd5afe29c5cd830889a15806865}{% + family={Vanover}, + familyi={V\bibinitperiod}, + given={Kyle}, + giveni={K\bibinitperiod}}}% + {{hash=cca4d1118bd2e1fa7eac5246398bdf81}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima T.}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + } + \list{location}{1}{% + {Stockholm, Sweden}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{9a487eabdf3a79ecdcbfd65b035a9979} + \strng{fullhash}{9a487eabdf3a79ecdcbfd65b035a9979} + \strng{bibnamehash}{9a487eabdf3a79ecdcbfd65b035a9979} + \strng{authorbibnamehash}{9a487eabdf3a79ecdcbfd65b035a9979} + \strng{authornamehash}{9a487eabdf3a79ecdcbfd65b035a9979} + \strng{authorfullhash}{9a487eabdf3a79ecdcbfd65b035a9979} + \field{sortinit}{1} + \field{sortinithash}{2174f786c6195e7fe2ee1c229b416e29} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{booktitle}{26th CIRP Design Conference} + \strng{crossref}{cirpdc2016} + \field{note}{Jun. 15--17} + \field{title}{{A} {S}ystem {D}esign of a {R}ural {H}ospital {O}perating {R}oom} + \field{year}{2016} + \field{pages}{597\bibrangedash 603} + \range{pages}{7} + \endentry + \entry{cochran2016msdd}{article}{} + \name{author}{3}{}{% + {{hash=5119295c62e2f13b65c887fe3d23f34a}{% + family={Cochran}, + familyi={C\bibinitperiod}, + given={David\bibnamedelima S.}, + giveni={D\bibinitperiod\bibinitdelim S\bibinitperiod}}}% + {{hash=cca4d1118bd2e1fa7eac5246398bdf81}{% + family={Foley}, + familyi={F\bibinitperiod}, + given={Joseph\bibnamedelima T.}, + giveni={J\bibinitperiod\bibinitdelim T\bibinitperiod}}}% + {{hash=93c8b1c5accaeea2d4c801365e52e2ba}{% + family={Bi}, + familyi={B\bibinitperiod}, + given={Zhuming}, + giveni={Z\bibinitperiod}}}% + } + \strng{namehash}{f96c1f4ac3296bad84a4cb31e480dbc9} + \strng{fullhash}{f96c1f4ac3296bad84a4cb31e480dbc9} + \strng{bibnamehash}{f96c1f4ac3296bad84a4cb31e480dbc9} + \strng{authorbibnamehash}{f96c1f4ac3296bad84a4cb31e480dbc9} + \strng{authornamehash}{f96c1f4ac3296bad84a4cb31e480dbc9} + \strng{authorfullhash}{f96c1f4ac3296bad84a4cb31e480dbc9} + \field{sortinit}{1} + \field{sortinithash}{2174f786c6195e7fe2ee1c229b416e29} + \field{labelnamesource}{author} + \field{labeltitlesource}{title} + \field{issue}{3} + \field{journaltitle}{International Journal of Production Research} + \field{title}{{U}se of the {M}anufacturing {S}ystem {D}esign {D}ecomposition for {C}omparative {A}nalysis and {E}ffective {D}esign of {P}roduction {S}ystems} + \field{volume}{55} + \field{year}{2016} + \field{pages}{870\bibrangedash 890} + \range{pages}{21} + \endentry + \entry{cirpdc2016}{proceedings}{} + \list{location}{1}{% + {Stockholm, Sweden}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \true{crossrefsource} + \field{labeltitlesource}{title} + \field{booktitle}{26th CIRP Design Conference} + \field{note}{Jun. 15--17} + \field{title}{26th CIRP Design Conference} + \field{year}{2016} + \endentry + \entry{icad2016}{proceedings}{} + \name{editor}{1}{}{% + {{hash=fc503e8b62eecf2c1f583b4191d838e1}{% + family={Liu}, + familyi={L\bibinitperiod}, + given={Ang}, + giveni={A\bibinitperiod}}}% + } + \list{location}{1}{% + {Xi'an, Shaanxi, China}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \strng{namehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{fullhash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{bibnamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editorbibnamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editornamehash}{fc503e8b62eecf2c1f583b4191d838e1} + \strng{editorfullhash}{fc503e8b62eecf2c1f583b4191d838e1} + \true{crossrefsource} + \field{labelnamesource}{editor} + \field{labeltitlesource}{title} + \field{booktitle}{10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \field{note}{Sep. 21--23} + \field{title}{10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \field{volume}{53} + \field{year}{2016} + \endentry + \entry{icad2017}{proceedings}{} + \name{editor}{1}{}{% + {{hash=c26c17e81feb0143e0f94c28b75cc9d5}{% + family={Dodoun}, + familyi={D\bibinitperiod}, + given={Oana}, + giveni={O\bibinitperiod}}}% + } + \list{location}{1}{% + {Iasi, Romania}% + } + \list{publisher}{1}{% + {MATEC Web of Conferences}% + } + \strng{namehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{fullhash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{bibnamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editorbibnamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editornamehash}{c26c17e81feb0143e0f94c28b75cc9d5} + \strng{editorfullhash}{c26c17e81feb0143e0f94c28b75cc9d5} + \true{crossrefsource} + \field{labelnamesource}{editor} + \field{labeltitlesource}{title} + \field{booktitle}{11th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \field{note}{Sep. 15--18} + \field{title}{11th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})} + \field{year}{2017} + \endentry + \entry{cirpdc2017}{proceedings}{} + \list{location}{1}{% + {Cranfield University, UK}% + } + \list{organization}{1}{% + {Procedia CIRP}% + } + \list{publisher}{1}{% + {Elsevier ScienceDirect}% + } + \true{crossrefsource} + \field{labeltitlesource}{title} + \field{booktitle}{Complex Systems Engineering and Development Proceedings of the 27th CIRP Design Conference} + \field{note}{May 10--12} + \field{title}{Complex Systems Engineering and Development Proceedings of the 27th CIRP Design Conference} + \field{year}{2017} + \endentry + \enddatalist +\endrefsection +\endinput + diff --git a/foley-short_cv.pdf b/foley-short_cv.pdf new file mode 100644 index 0000000000000000000000000000000000000000..929099625bf221047b55971c025570aa70386a9e GIT binary patch literal 93088 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 cork-lmssqbo8}{} +%\usefont{T1}{myfont}{m}{scsl}Testing the font + + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\hyphenpenalty=5000 +\tolerance=500 +\begin{document} +%\maketitle +%\makequote +\textbf{Dr.\ Joseph T. Foley , Assistant Professor\\Reykjavík University Science and Engineering Department} +\section{Education} +% june 21, 2007 +\cventry{2000--2007}{Ph.D.\ in Mechanical + Engineering}{Massachusetts Institute of Technology~(MIT)}{}{}{} +% june 1, 1999 +\cventry{1998--1999}{M.Eng.\ in Computer Science and + Electrical Engineering}{MIT}{}{}{} +\cventry{1994--1999}{B.Sc.\ in Computer Science and + Electrical Engineering}{MIT}{}{}{} + +% \section{Doctor of Philosophy Dissertation} +% \cvitem{title}{\emph{Security Approaches for Radio Frequency +% Identification Systems}} +% \cvitem{supervisor}{Professor Sanjay Sarma} +% \cvitem{description}{\small Describes preventative measures +% and protection from the privacy invasion potential associated with +% ubiquitous Radio Frequency Identification (RFID) while still +% maintaining capabilities to track items and prevent theft. The unified RFID protection system is called TinFoil.} + +% \section{Master Thesis} +% \cvitem{title}{\emph{An Infrastructure for Electromechanical +% Appliances on the Internet}} +% \cvitem{supervisor}{Professor Sanjay Sarma} +% \cvitem{description}{\small Design and implementation of an Radio +% Frequency Identification(RFID) and Internet enabled appliance. The +% design focused on general methods applicable to a wide variety of +% intelligent devices. Fundamental development of ONS and EPC technologies.} + +\setlength{\parskip}{0.7\baselineskip} +%\newcommand{\cvbibentry}[1]{\cventry{\citeyear{#1}}{\citetitle{#1}}{\fullcite{#1}}{}{}{}} +\newcommand{\cvbibentry}[1]{\fullcite{#1}\par} + +\section{Published Work} +\cvbibentry{foley2017antenna}%01015 +\cvbibentry{foley2017faucet}%01009 +%\cvbibentry{foley2017motorcyclelift}%01008 +%\cvbibentry{foley2017adjustadesk}%01002 +\cvbibentry{breznik2017collaborative} +\cvbibentry{foley2017msddontology} +\cvbibentry{petursson2017smaspring} +%\cvbibentry{erlingsson2016roboclaw} +\cvbibentry{foley2016desirable} +\cvbibentry{guls2016auvlight} +%\cvbibentry{gerhard2016suretrack} +%\cvbibentry{omarsdottir2016chessmate} +\cvbibentry{puik2016ignorance} +%\cvbibentry{foley2016evaluating} +\cvbibentry{foley2016creative} +\cvbibentry{cochran2016hospital} +\cvbibentry{cochran2016msdd} + +\end{document} +\section{Invited Talks and Presentations} +%\cventry{2018}{Axiomatic Design and Desirable Complexity}{Joe +%Foley}{IWSSIP 2018 --- 25th International Conference on Systems, Signals, and Image Processing}{Maribor, Slovenia, June 20}{}{} + +\cventry{2017}{Axiomatic Design for Everyone}{Joe +Foley}{International Conference on Axiomatic Design Tutorial}{ +Iasi, Romania, September 11}{}{} +\cventry{2014}{Raspberry Pi: Affordable Embedded Linux}{Joe +Foley}{Félag rafeindavirkja (Icelandic Electronics Association) Keynote}{Stórhöfði 29, +Reykjavík 110, May 29}{}{} + +\section{Intellectual Property} +\cventry{2014}{iPad Video Control}{Joe + Foley}{}{}{Modular cgi-based iPad Video control system for use with + Raspberry Pi. Developed for the Reykjavík Art Museum.} +\cventry{2013}{DVD and Blue-ray Art Installation Synchronizer}{Joe + Foley}{}{}{Arduino system for video synchronization. Developed for + the Reykjavík Art Museum} +\cventry{2013}{US Patent 8,384,546 ``Tag Anti-Countefeit + Systems''}{Joseph T. Foley, Sanjay E. Sarma, and Steve Weis}{}{}{} +\cventry{2011}{US Patent 20110083325 A ``Method of Manufacturing a + Nickel Titanium Coil Actuator''}{M. Jolda and J. Foley, iRobot Patent }{}{}{} +\cventry{2011}{Google Code ``arduino-roomba''}{Joe Foley}{}{}{Library + for interfacing an Arduino and iRobot Create/Roomba. GPL2.} +\cventry{2000}{US Patent 7,765,253 ``Object Name Service''}{Joseph + Foley, Erik Nygren, \& Sanjay Sarma. MIT TLO 9789}{}{}{} + + +\section{Research Grants} +\cventry{September 2012-January 2013}{Advisor}{RANNIS Technology Fund + (Tækjniróunarsjóður)}{Menntavegur 1, + Reykjavík 101, Iceland}{}{Grant: Automated Pinbone Removal in Cod + and Whitefish (APRICOT). PI:~Kristinn Andersen (Marel)} +\cventry{June 2011-September 2011}{Advisor}{RANNIS Student Innovation + Fund (Nýsköpunarsjóður námsmanna)}{Menntavegur 1, + Reykjavík 101, Iceland}{}{Grant: ``CNC foam-cutter for micro air + vehicle wings'' for student research salary during summer. Advised software and mechanical + undergraduates in the design and construction of a high-precision, + low-cost computer-controlled (CNC) hot-wire foam cutter for the prototyping of small-scale + foam-composite aircraft wings. Materials funded from RANNIS ``Flapping-wing + Unmanned Air Vehicle''. } + + +%\section{Section with a list} +%\cvlistitem{lol} +%\cvlistitem{lol} +%\cvlistdoubleitem{lol}{relol} +%\cvlistdoubleitem{lol}{relol} + +%\section{Section wit h your own content}\closesection +%Your content here,\\ +%inside the normal \LaTeX{} environment. + +%\emptysection{} +%\cvitem{Now}{Back to moderncv layout, without making a new section :-)} + +%\hyphenpenalty=50 +%\tolerance=100 +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% TeX-engine: xetex +%%% End: diff --git a/foley_cv-old.tex b/foley_cv-old.tex new file mode 100644 index 0000000..47766e2 --- /dev/null +++ b/foley_cv-old.tex @@ -0,0 +1,278 @@ +\documentclass[11pt]{moderncv} +\hyphenpenalty=5000 +\tolerance=1000 +% moderncv styles +%\moderncvstyle{casual} +%\moderncvstyle[nocolor]{casual} +%\moderncvstyle{classic} +%\moderncvstyle[roman]{classic} +\moderncvtheme[blue]{classic} + +% character encoding +\usepackage[utf8]{inputenc} + +% resize margins if needed, mostly for A4 +%\usepackage[scale=0.8]{geometry} + +% personal data +\firstname{Dr. Joseph} +\familyname{Foley} +\title{Mechanical, Manufacturing and Security Designer\dots} +%\address{12 somestreet}{3456 somecity} % for classic style +%\address{11 Ticklefancy Lane}{Salem, NH 03079 USA} % for casual style +\address{Ásvegur 15}{104 Reykavík, Iceland} % for casual style +\phone{+1 (617) 395-0383} +\mobile{+354-661-7658} +\email{foley@objid.net} +%\extrainfo{{\small married with childrens}} +%\quote{} + +%\renewcommand{\listsymbol}{{\fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}}} +%\definecolor{see}{rgb}{0.5,0.5,0.5} + +% command for text subscripts +%\newcommand{\up}[1]{\ensuremath{^\textrm{\scriptsize#1}}} + + +% slanted small caps (only with roman family; the sans serif font doesn't exists :-() +%\usepackage{slantsc} +%\DeclareFontFamily{T1}{myfont}{} +%\DeclareFontShape{T1}{myfont}{m}{scsl}{ <-> cork-lmssqbo8}{} +%\usefont{T1}{myfont}{m}{scsl}Testing the font + + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} +\maketitle +%\makequote + +\section{Education} +% june 21, 2007 +\cventry{2000-2007}{Doctor of Philosophy in Mechanical + Engineering}{Massachusetts Institute of Technology}{}{}{} +% june 1, 1999 +\cventry{1998-1999}{Master of Engineering in Computer Science and + Electrical Engineering}{Massachusetts Institute of Technology}{}{}{} +\cventry{1994-1999}{Bachelor of Science in Computer Science and + Electrical Engineering}{Massachusetts Institute of Technology}{}{}{} + +\section{Doctor of Philosophy Dissertation} +\cvitem{title}{\emph{Security Approaches for Radio Frequency + Identification Systems}} +\cvitem{supervisor}{Professor Sanjay Sarma} +\cvitem{description}{\small Describes preventative measures +and protection from the privacy invasion potential associated with +ubiquitous Radio Frequency Identification (RFID) while still +maintaining current capabilities.} + +\section{Master Thesis} +\cvitem{title}{\emph{An Infrastructure for Electromechanical +Appliances on the Internet}} +\cvitem{supervisor}{Professor Sanjay Sarma} +\cvitem{description}{\small Design and implementation of an Radio +Frequency Identification(RFID) and internet enabled appliance. The +design focused on general methods applicable to a wide variety of +intelligent devices. Fundamental development of ONS and EPC technologies.} + +\section{Published Work} +\cventry{2009}{Micro artificial muscle fiber using + NiTi spring for soft robotics}{S. Kim, E. Hawkes, K. Cho, M. Jolda, + J. Foley, and R. Wood}{IROS 2009}{}{} +\cventry{2008}{TurbSim: Reliability-based Wind Turbine + Simulator}{J. Foley, T. Gutowski}{2008 ISEE}{}{} +\cventry{2001}{The Networked Physical World: An Automated + Identification Architecture}{D. Engels, J. Foley, J. Waldrop, + S. Sarma, D. Brock}{WIAPP '01}{}{} + +\section{Invited Talks and Presentations} +\cventry{2012}{Digital Manufacturing and Personal Sustainability}{Joe + Foley}{Alþjóðlegi Umhverfisdagurinn (World Environment Day)} + {Reykjavík University, June 5}{}{} +\cventry{2010}{Exploitable Assumptions}{A. Brooks, E. Schmiedl, + J. Foley}{DEFCON 2011}{}{} +\cventry{2006}{Security Approaches for Radio Frequency Identification + Systems}{Dr. Joseph T. Foley}{EPCglobaUS Conference}{Los Angeles, October 19}{} +\cventry{2003}{Happy Trails: Automated Lifting Trailer}{MIT 2.009 Team + Purple '99}{Lemelson Inventor Conference}{Washington DC}{} +\cventry{2002}{AutoID Technology Demonstration}{Distributed + Information System Center MIT}{Cambridge University UK}{}{} + +\section{Intellectual Property} +\cventry{2011}{Google Code ``arduino-roomba''}{Joe Foley}{}{}{Library + for interfacing an Arduino and iRobot Create/Roomba. GPL2.} +\cventry{2009}{US Patent Pending ``Manufacture of Inverted SMA + Springs''}{M. Jolda and J. Foley, iRobot Patent }{}{}{} +\cventry{2007}{US Patent Pending ``Tag Anti-Counterfeit Systems''}{Joe + Foley \& Sanjay Sarma, MIT TLO 10695}{}{}{} +\cventry{2000}{US Patent 7,765,253 ``Object Name Service''}{Joseph + Foley, Erik Nygren, \& Sanjay Sarma. MIT TLO 9789}{}{}{} + +\section{Collaboration} +\cventry{2011-Current}{RU-LHÍ Music, Art, Software, Engineering + Collaboration}{RU Lead}{Reykjavik University and Listaháskolinn Islands}{}{Ongoing collaboration efforts are underway between the LHÍ + Music and Visual Arts and the RU Computer Science and Science and + Engineering department. This + collaboration is expected to develop an + interdiscipline project incorporating Music, Art, Software, and + Engineering by building upon the last program's success.} +\cventry{2011}{``Emerging and Imposing Spaces'' (``Vaxandi og + uppáþrengjandi rými'')}{co-organized with Sigrún + Harðardóttir}{RU and LHÍ}{Electro-mechanical Interactive Art}{Visual + Arts class ``Interactivity'' LHÍ \& RU VT + HUN1013 ``Design'' cooperated to produce 7 unique art installation + works shown at LHÍ. Selected pieces +shown at Hreindirland Festival 2011 and covered by RÚV 2.} +\cventry{2010--Current}{Faculty Advisor}{RU and Hakkavélin}{Hackspace}{}{} +\cventry{2003--2004}{Internet Engineering Task Force (IETF) ONS Working Group}{founding member}{AutoID Center MIT, Verisign, + \& EPC Global}{}{} +\cventry{2005}{ONS 1.0}{architect}{AutoID + Center MIT \& OATsystems}{}{} + +\section{Teaching} +\cventry{August 2011-Present}{Lecturer}{Reykjavik + University}{Reykjavik 101, Iceland}{}{Teaching T-865-MADE + ``Precision Machine Design'', developing low-cost precision lab + equipment to be used by RU bioengineering department. Teaching + T-411-MECH ``Mechatronics 1'', building affordable circuit prototyping and + automation education using the Arduino architecture.} +\cventry{January 2010-May 2010}{Lecturer}{Reykjavik + University}{Reykjavik 101, Iceland}{}{Taught VT + HUN1013 (Hönnun) Mechanical Design, which produced designs for + research equipment and interactive art installations. (See collaborations). + Co-taught T-420-HON (Hönnun X): class project that developed an aluminum + smelter pot inspection robot for Rio Tinto Alcan.} +\cventry{September 2005-January 2006}{Teaching Assistant}{CSCI-E-170: + Computer Security and Privacy}{Harvard Extension School}{Cambridge, + MA}{Lectures, problem set generation, and grading on security + material.} +\cventry{September 2002-August 2005}{Head Instructor}{MIT Faculty + Pistol \& Rifle Club}{Cambridge, MA}{}{Revised NRA pistol safety + curriculum to integrate international target pistol trends. Taught + Marksmanship and Pistol Safety course every semester.} +\cventry{September 1999-December 1999}{Teaching Assistant}{MIT 2.007 + Introduction to Mechanical Design}{Cambridge, MA}{}{Revised + curriculum, developed control system and scoring system for + ``Ballcano'' robotics competition.} +\section{Research Grants} +\cventry{June 2011-September 2011}{Advisor}{Rannis Student Innovaton + Fund (Nýsköpunarsjóður námsmanna)}{Menntavegur 1, + Reykjavik 101, Iceland}{}{Grant: ``CNC foam-cutter for micro air + vehicle wings'' for student research salary during summer. Advised software and mechanical + undergraduates in the design and construction of a high-precision, + low-cost computer-controlled (CNC) hot-wire foam cutter for the prototyping of small-scale + foam-composite aircraft wings. Materials funded from RANNIS ``Flapping-wing + Unmanned Air Vehicle''. } +\section{Experience} +\cventry{January 2010-Current}{Specialist}{Reykjavik + University}{Menntavegur 1, Reykjavik 101, Iceland}{}{Research into + simplified robotics infrastructure to solve many sensing problems + and rapid prototyping capabilities.} +\cventry{September 2011-February 2012}{Consultant}{Icelandair + Technical Services, Design Department}{Building 8, 235 Keflavik + Airport, Iceland}{}{Designing and prototyping ATMega/Arduino avionics interface to + convert and filter data between A757 and A429 data buses. This + interface will allow real-time monitoring of flight data, with + particular focus on the accelerometer inputs.} +\cventry{June 2011-September 2011}{Consultant}{3Z ehf.}{Menntavegur 1, + Reykjavik 101, Iceland}{}{Designed and implemented prototype + zebrafish embryo dispensing robot for pharmacology and toxicity studies.} +\cventry{September 2010-March 2011}{Consultant}{Brass Drift, + Inc.}{Emeryville, CA}{}{Designed custom low-cost flexture locking mechanism + for an electronic security box.} +\cventry{September 2010-January 2011}{Consultant}{MIT Biomimetic Robotics + Lab}{Cambridge, MA USA \& Reykjavik, Iceland}{}{Finite element analysis of advanced + structural composites used to develop a high speed quadruped robot + for Professor Sangbae Kim.} +\cventry{November 2007-August 2010}{Senior Research Scientist}{iRobot + G \& I Research}{Bedford, MA}{}{Designing new + robotics concepts and mechanisms in the DARPA ChemBots program. + iRobot research \& development in government and industrial applications/proposals.} +\cventry{November 2006-November 2007}{PostDoctoral Research + Associate}{MIT}{Cambridge, MA}{}{``Energy Efficiency in + Manufacturing'' Investigated energy usage in the manufacturing + industries and created wind turbine reliability simulator.} +\cventry{January 2004-March 2004}{Web software engineer}{SigMantra + LLC}{Bedford, MA}{}{Developed social-media website ``Uffinity'' for + connecting recently graduated young-professionals to others offering +employment.} +\cventry{May 2000 - September 2000}{Magic Mechanic}{Emode, + Inc.}{Cambridge, MA}{}{Developed world's largest fully-indexed quote + database. Developed and installed network security policies and + equipment} +\cventry{May 1997 - September 1997}{Mechanical Design Engineer}{Brute + Force Games}{Cambridge, MA}{}{Designed full immersion game simulator + platform leveraging vection research.} +\cventry{September 1996 - September 1999}{Network Programmer}{MIT + Network Operations}{Cambridge, MA}{}{Security operations and + emergency paging system development.} + +\section{Unpublished and Project Works, available upon request} +\subsection{Manufacturing} +\cventry{2011}{Bio-tensegrity: A New Design Paradigm for Hyperdynamic + Legged Robots}{A. Ananthanarayanan, J. Foley, and S. Kim}{}{}{} +\cventry{2000}{System Analysis and Design of the Insight M3/M5 Tactical +Illuminator}{Vince E. Carballo, Miguel A. Chavez, Joe Foley}{}{}{} +\cventry{1998}{Cambridge Heart}{Joe Foley, Marc Lebovitz, Ranjini +Srikantiah, Victor Su}{}{}{} +\cventry{1998}{Low-Cost Pine Car Derby Timing System}{Joe +Foley}{Advanced Undergraduate Project}{Advisor: Professor Alex Slocum}{} +\subsection{Design} +\cventry{2001}{Wireless Friends: Company Business Plan}{Sofy Tarud, Joe +Foley, Oscar Lopez, Omri Pedatzur}{}{}{} +\cventry{2001}{Automotive Diagnosis Assistant}{Joe Foley, Ariel Segall}{}{}{} +\cventry{1999}{Kraken: Distributed Cooperative Web Caching}{Joe Foley, Amy +Vandiver, Ben Vandiver}{}{}{} +\cventry{1998}{Evolved PacMan: Genetic Algorithm for Design of Control +Systems}{Joe Foley \& Mike Phillips}{}{}{} +\cventry{1996}{An Ad-Hoc FPGA - Xilinx Type}{Joe Foley \& Mark Roh}{}{}{} +\cventry{1996}{A Partly Read-Only, Portable Web Site}{Joe Foley}{}{}{} +\subsection{Security} +\cventry{2006}{ONS Deployment and Visibility Challenges}{Dan Engles and Joe Foley}{}{}{} +\cventry{2004}{Flingetty: Secure Multiparty Computation for a Dating Match-Up +System}{Natan Cliffer, Joe Foley, Hongyi Hu}{}{}{}{} +\cventry{2003}{KLite: A RFID Tag Anti-Counterfeit System}{Joe Foley}{}{}{} +\cventry{2003}{EPC Reductionism}{Joe Foley}{}{}{} +\cventry{1996}{WhoRU: Anyonymous Encrypted Remailer}{Daniel Derksen, Joe Foley, Matthew Rimer}{}{}{} + +\section{Languages} +\cvlanguage{English}{Native}{} +\cvlanguage{Spanish}{Novice}{High School education, 1990-1994} +\cvlanguage{Chinese}{Novice}{MIT 2005} +\cvlanguage{Icelandic}{Elementary}{Taking classes at University of Reykjavík} +%\pagebreak + +\section{Skills} +\cvcomputer{programming}{\textsc{Java}, C/C++}{scripting}{PHP, Shell, + python, perl} +\cvcomputer{scientific}{Matlab, Maple}{Modeling}{ProEngineer, +SolidWorks} +\cvcomputer{simulation}{ABAQUS, CFDesigner}{typography}{\LaTeX, PostScript}{}{} +\cvcomputer{control}{Arduino/Atmega, PIC}{Rapid prototyping}{FDM, + Laser templates, silicone molding} +\cvcomputer{OS}{Linux, UNIX, Windows, OSX}{administration}{Apache, + DNS, ONS} +\cvcomputer{web design}{PostNuke, Turbogears}{database}{MySQL, PostgreSQL} + +%\section{Interests} +%\cvitem{design}{\small I am a design fan, especially when it comes to typography and photography.} +%\cvitem{adventure sports}{\small I like practicing adventure sports like skiing, rock climbing and scuba diving, and have been a boy scout for five years.} +%\cvitem{travelling}{\small I have been living abroad during my childhood, and love travelling around the world.} + +%\section{Section with a list} +%\cvlistitem{lol} +%\cvlistitem{lol} +%\cvlistdoubleitem{lol}{relol} +%\cvlistdoubleitem{lol}{relol} + +%\section{Section with your own content}\closesection +%Your content here,\\ +%inside the normal \LaTeX{} environment. + +%\emptysection{} +%\cvitem{Now}{Back to moderncv layout, without making a new section :-)} + +%\hyphenpenalty=50 +%\tolerance=100 +\end{document} diff --git a/graphics/fp7-logo.png b/graphics/fp7-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..22fea680210a190a26dc780004a6e6a04f7d7cf9 GIT binary patch literal 4323 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 cork-lmssqbo8}{} +%\usefont{T1}{myfont}{m}{scsl}Testing the font + + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} +\maketitle +\makequote + +\section{Education} +\cventry{2003--2006}{Master of Design}{Valparezzo School of Design}{}{}{1\up{st} year: 79\%\hspace{2em}2\up{nd} year: 84\%\hspace{2em}3\up{rd} year: ---\hspace{2em}(graduation expected in June 2006)} +\cventry{2001--2003}{Bachelor of Design}{Beijing Drawing University}{}{}{1\up{st} year: 63\%\hspace{2em}2\up{nd} year: 76\%} + +\section{Master thesis} +\cvitem{title}{\emph{On the design of modern curriculum vit\ae{}s}} +\cvitem{supervisors}{Pr P. Picasso and Pr G. Klimt} +\cvitem{description}{\small Study of the complex design of a curriculum vit\ae{}, also known as ``résumé''. In my opinion, a good design needs to be show the personality of its author. Some people will thus prefer a more classic style, and others will be more audacious\dots} + +\section{Experience} +\cventry{February 2006--\\current}{Maintainer of the a CTAN package}{CTAN}{World}{}{Maintainer of the {\ttfamily moderncv} package, meant to ease the production of beautiful curriculum vit\ae{}s.} +\cventry{2005--2006}{Mathematics tutor}{UCL}{Louvain-la-Neuve}{}{Supervision of practical sessions for a mathematical course given to second year engineering students (course \emph{FSAB1104: Numerical Methods}).\hfill{\itshape\color{see}\footnotesize{}See \httplink{www.legat-online.be/b2q1/num}.}} +\cventry{2004--2006}{Cultural project leader}{Tchouque-Tschouk Kot}{Louvain-la-Neuve}{}{Leader of a student home with a cultural project, requiring day to day management as well as the organization of public events.\hfill{\itshape\color{see}\footnotesize{}See \httplink{www.organe.be}.}} +\cventry{1999--2001}{IMO preselected}{SBPMef}{Wépion}{}{Advanced mathematical training, as Belgian preselected candidate for the International Mathematical Olympiads, selected by the Belgian mathematical society.\hfill{\itshape\color{see}\footnotesize{}See \weblink{imo.math.ca/belgium.html}.}} + +\section{Languages} +\cvlanguage{French}{Native}{} +\cvlanguage{Dutch}{Near-native}{Primary education degree obtained in a Dutch college\\(Sint-Jozefscollege te Sint-Pieters-Woluwe).} +\cvlanguage{English}{Very good}{Many journeys in English speaking countries, including the United States,\\the United Kingdom and Kenya.} +\cvlanguage{Mandarin}{Elementary}{Taking classes at the ``Institut des Langues Vivantes'' (UCL), for the second year now.} +\closesection +\pagebreak + +\section{Computer skills} +\cvcomputer{OS}{Linux, Unix, Windows}{administration}{Apache, Mailman} +\cvcomputer{programming}{\textsc{Java}, C/C++}{scripting}{PHP, Shell, Ruby} +\cvcomputer{scientific}{Matlab, Autocad, Abaqus}{typography}{\LaTeX, \ConTeXt, Scribus, QuarkXPress} +\cvcomputer{web design}{XHTML, CSS, AJAX}{database}{MySQL, PostgreSQL} + +\section{Interests} +\cvitem{design}{\small I am a design fan, especially when it comes to typography and photography.} +\cvitem{adventure sports}{\small I like practicing adventure sports like skiing, rock climbing and scuba diving, and have been a boy scout for five years.} +\cvitem{travelling}{\small I have been living abroad during my childhood, and love travelling around the world.} + +%\section{Section with a list} +%\cvlistitem{lol} +%\cvlistitem{lol} +%\cvlistdoubleitem{lol}{relol} +%\cvlistdoubleitem{lol}{relol} + +%\section{Section with your own content}\closesection +%Your content here,\\ +%inside the normal \LaTeX{} environment. + +%\emptysection{} +%\cvitem{Now}{Back to moderncv layout, without making a new section :-)} +\end{document} diff --git a/marketa_cv.tex b/marketa_cv.tex new file mode 100644 index 0000000..6187ce7 --- /dev/null +++ b/marketa_cv.tex @@ -0,0 +1,98 @@ +\documentclass{moderncv} + +% moderncv styles +%\moderncvstyle{casual} +%\moderncvstyle[nocolor]{casual} +%\moderncvstyle{classic} +%\moderncvstyle[roman]{classic} +\moderncvtheme[blue]{classic} + +% character encoding +\usepackage[icelandic]{babel} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} + +% resize margins if needed, mostly for A4 +%\usepackage[a4paper, scale=0.8]{geometry} +%\usepackage[scale=0.8]{geometry} + +\hyphenpenalty=5000 +\tolerance=1000 +%\raggedright + +% personal data +\firstname{Mark\'eta} +\familyname{Foley} +\title{Biochemical Engineer and Consultant\hfil} +%\address{12 somestreet}{3456 somecity} % for classic style +%\address{11 Ticklefancy Lane}{Salem, NH 03079 USA} % for casual style +\address{\'Alakv\'isl 39}{110 Reykav\'ik, Iceland} % for casual style +\mobile{+354-661-2086} +\email{marketa@alum.mit.edu} +%\extrainfo{{\small married with childrens}} +%\quote{} + +%\renewcommand{\listsymbol}{{\fontencoding{U}\fontfamily{ding}\selectfont\tiny\symbol{'102}}} +%\definecolor{see}{rgb}{0.5,0.5,0.5} + +% command for text subscripts +%\newcommand{\up}[1]{\ensuremath{^\textrm{\scriptsize#1}}} + + +% slanted small caps (only with roman family; the sans serif font doesn't exists :-() +%\usepackage{slantsc} +%\DeclareFontFamily{T1}{myfont}{} +%\DeclareFontShape{T1}{myfont}{m}{scsl}{ <-> cork-lmssqbo8}{} +%\usefont{T1}{myfont}{m}{scsl}Testing the font + + +%---------------------------------------------------------------------------------- +% content +%---------------------------------------------------------------------------------- +\begin{document} +\maketitle +%\makequote + +\section{Education} +\cventry{1996-2000}{Bachelor of Science in Chemical Engineering}{Massachusetts Institute of Technology (Cambridge MA)}{}{}{} +\cventry{1996-2000}{Bachelor of Science in Biology}{Massachusetts Institute of Technology (Cambridge, MA)}{Minors: Biomedical engineering, Theatre Arts}{}{} + +\section{Continuing Education} +\cventry{2012}{``Circuits and Electronics (6.002x)''}{Massachusetts Institute of Technology}{semester-long distance-learning course}{}{} +\cventry{2007}{``Electronics Project Laboratory''}{Massachusetts Institute of Technology}{semester-long project class}{}{} +\cventry{2007}{``Basic Life Support for the Healthcare Provider''}{Massachusetts Institute of Technology}{1-day CPR class}{}{} +\cventry{2003}{``Regulatory Compliance Solutions Including 21CFR Section 11''}{IBM Life Sciences}{1-day course}{}{} +\cventry{2003}{``Decision Points in Drug Development''}{Pharmaceutical Education and Research Institute}{distance-learning course}{}{} + +\section{Teaching} +\cventry{2011-2012}{Reykjav\'ik University (Reykjav\'ik, Iceland)}{Developed and taught the laboratory portion of an introductory molecular biology course (T-106-LIFV) as part of an effort to incorporate more hands-on exercises into the curriculum}{}{}{} +\cventry{2004-2007}{Massachusetts Institute of Technology (Cambridge, MA)}{Designed and taught hands-on summer courses in fermentation and cell culture technology to industry professionals}{}{}{} +\cventry{2004-2006}{Massachusetts Institute of Technology (Cambridge, MA)}{Redesigned a non-biological facility to accommodate an undergraduate course in experimental biological techniques. Equipped the laboratory with necessary equipment, tested all experiments, wrote protocols and documentation, and successfully taught the course}{}{}{} +\cventry{2003-2007}{Massachusetts Institute of Technology (Cambridge, MA)}{Designed and taught new senior-level undergraduate laboratory courses in biochemical engineering focusing on molecular biology techniques, fermentation, and cell culture. Developed and tested experiments, wrote protocols and documentation, designed problem sets, managed other teaching staff, and successfully taught the course}{}{}{} + + +\section{Experience} +\cventry{2011-2013}{University of Iceland (Reykjav\'ik, Iceland)}{Project Manager}{Developed methods for assessing red blood cell and platelet quality during storage. Developed and implemented SOP procedures (ERC-funded project between the Center for Systems Biology at the University of Iceland and the Icelandic Bloodbank)}{}{} +\cventry{2011-2012}{Reykjav\'ik University (Reykjav\'ik, Iceland)}{Researcher}{Developed an electrophoretic deposition method for attaching chitosan to titanium implants (collaborative project between Reykjav\'ik University, Icelandic Bloodbank, Innovation Center Iceland - Nýsköpunarmiðstöð Íslands, and Genís ehf.)}{}{} +\cventry{2010-2011}{Foley Consulting (Reykjav\'ik, Iceland)}{Translator}{Translated a university-level textbook for the Institute of Chemical Technology in Prague (Czech Republic) from Czech to English. The subject matter was the science and engineering of beer manufacturing}{}{} +\cventry{2007-2010}{Percivia (Cambridge, MA)}{Associate Scientist (Upstream Processing)}{Developed and optimized media and bioreactor processes for the PER.C6 human cell line. Worked with customers to demonstrate PER.C6 technology and troubleshoot processes}{}{} +\cventry{2002-2003}{Scion Pharmaceuticals (Medford, MA)}{Associate Scientist (Electrophysiology)}{Led an ion channel drug screening project using Scion's high-throughput electrophysiology platform. Introduced an automated liquid handler into the workflow. Developed and implemented SOP procedures}{}{} +\cventry{2000-2002}{Alkermes (Cambridge, MA)}{Research Engineer (Aerosol Engineering)}{Lead engineer on the Alkermes - Eli Lilly hGH development project team. Optimized spray drying processes to produce large porous particles for delivery through the lungs. Assistant to the team Project Manager (assisted with a project development plan, compiled control matrices to track milestones in support of FDA requirements through product launch). Ran feasibility studies as proof of concept to assess potential drug candidates}{}{} +\cventry{1999-2000}{Massachusetts Institute of Technology (Cambridge, MA)}{Student Researcher (Biotechnology Process Engineering Center)}{Designed a continuous culture fermentation process for the production of tailspike protein by E. coli. Analyzed an expanded-bed chromatography step for tailspike purification}{}{} +\cventry{1994-1996}{Academy of Sciences of the Czech Republic (Prague, Czech Republic)}{}{Member of the Institute of Macromolecular Chemistry organizing committee for annual IUPAC symposia}{}{} + + +\section{Publications} +\cventry{2012}{``In vitro bioactivity of chitosan attached to titanium constructs using a novel electrophoretic deposition method''}{Foley M., Lieder R., Foley J. T., Örlygsson G., Sigurj\'onsson O. E.}{Journal of Tissue Engineering and Regenerative Medicine (Special Issue: 3rd TERMIS World Congress 2012, 5-8 September 2012, Vienna, Austria) 6:Supplement s1, 187}{}{} +\cventry{2012}{``Notkun á electrophoretic deposition aðferðum til húðunar á títanígræðum með kítósani''}{Foley M., Lieder R., Foley J. T., Örlygsson G., Sigurj\'onsson O. E.}{Læknablaðið: Vísandi á vordögum (25 Apríl til 4 Maí, 2012, LSH)}{}{} +\cventry{2011 (in press)}{``Beer Brewing - The Theory and Practice of Beer Manufacturing''}{Basa\v{r}ov\'a, G., \v{S}avel, J., Basa\v{r}, P., Lejsek, T. (English translation by M. Foley)}{Vydavatelstv\'i V\v{S}CHT Praha}{}{} +\cventry{2009}{``High level expression of functional human IgMs in human PER.C6® cells''}{Tchoudakova, A., Hensel, F., Murillo, A., Eng, B., Foley, M., Smith, L., Schoenen, F., Hildebrand, A., Kelter, A.-R., Ilag, L. L., Vollmers, H. P., Brandlein, S., McInich, J., Chon, J., Lee, G., Cacciuttolo, M.}{mAbs 1:2, 163-171}{}{} +\cventry{2009}{``Development of a Platform Fed Batch Process for Production of Antibodies in the PER.C6® Human Cell Line''}{Kral, K. M., Erskine, B., Foley, M., Powers, D. E., Hoff, R. F., Chon, J. H.}{Proceedings of the 21st Annual Meeting of the European Society for Animal Cell Technology (ESACT), Dublin, Ireland, June 7-10, 2009. ESACT Proceedings Vol. 5, Springer}{}{} + + +\section{Awards} +\cventry{2000}{The Joseph D. Everingham Award}{Awarded to a graduating MIT student in recognition of a single creative outstanding performance or notable creative accomplishments in theater arts}{}{}{} + + + +\end{document} \ No newline at end of file diff --git a/references-collections.bib b/references-collections.bib new file mode 100644 index 0000000..496a342 --- /dev/null +++ b/references-collections.bib @@ -0,0 +1,161 @@ +%% the collections must be at the end + + +@Proceedings{icad2013, + Title = {7th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD} 2013)}, + Editor = {Mary Kathryn Thompson}, + Year = {2013}, + Month = {Jun. 27--28}, + Organization = {CIRP}, + Publisher = {Axiomatic Design Solutions, Inc.}, + Volume = {32}, + + Address = {Worchester, MA}, + Booktitle = {7th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD} 2013)}, + Optmonth = {#jun#}, + Owner = {foley}, + Timestamp = {2016.02.23} +} + +@Proceedings{icad2014, + Title = {8th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD} 2014)}, + Editor = {Mary Kathryn Thompson}, + Year = {2014}, + Month = {Sep. 24--26}, + Organization = {CIRP}, + Publisher = {Axiomatic Design Solutions, Inc.}, + Volume = {33}, + + Address = {Lisboa, Portugal}, + Booktitle = {8th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD} 2014)}, + Optmonth = {#sep#}, + Owner = {foley}, + Timestamp = {2016.02.23} +} + +@Proceedings{icad2015, + Title = {9th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Editor = {Mary Kathryn Thompson and Alessandro Giorgetti and Paolo Citti and Dominik Matt and Nam P. Suh}, + Year = {2015}, + Doi = {10.1016/j.procir.2015.07.061}, + Organization = {Procedia CIRP}, + Publisher = {Elsevier ScienceDirect}, + Volume = {34}, + Note = {Sep. 16--18}, + + Address = {Florence, Italy}, + Booktitle = {9th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Owner = {foley}, + Timestamp = {2016-03-09} +} + +@Proceedings{icad2016, + Title = {10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Editor = {Ang Liu}, + Year = {2016}, + OPTDoi = {}, + Organization = {Procedia CIRP}, + Publisher = {Elsevier ScienceDirect}, + Volume = {53}, + Note = {Sep. 21--23}, + + Address = {Xi'an, Shaanxi, China}, + Booktitle = {10th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Owner = {foley}, + Timestamp = {2016-07-15} +} + +@Proceedings{icad2017, + Title = {11th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Editor = {Oana Dodoun}, + Year = {2017}, + OPTDoi = {}, + Publisher = {MATEC Web of Conferences}, + OPTVolume = {}, + Note = {Sep. 15--18}, + + Address = {Iasi, Romania}, + Booktitle = {11th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Owner = {foley}, + Timestamp = {2016-07-15} +} + +@Proceedings{icad2018, + Title = {12th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Editor = {Erik Puik and Joseph T. Foley and David Cochran and Mirzi Betasolo}, + Year = {2018}, + OPTDoi = {}, + Publisher = {MATEC Web of Conferences}, + OPTVolume = {}, + Note = {October. 9--11}, + + Address = {Reykjavík, Iceland}, + Booktitle = {12th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Owner = {foley}, + Timestamp = {20186-09-29} +} + +@Proceedings{icad2019, + Title = {13th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Editor = {Ang Liu and Erik Puik and Joseph T. Foley}, + Year = {2019}, + OPTDoi = {}, + Publisher = {MATEC Web of Conferences}, + OPTVolume = {}, + Note = {October. 18--20}, + + Address = {Sydney, Australia}, + Booktitle = {13th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + URL = {https://www.matec-conferences.org/articles/matecconf/abs/2019/50/contents/contents.html}, + Owner = {foley}, + Timestamp = {20186-09-29} +} + + +@Proceedings{icad2021, + Title = {14th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + Editor = {Joao Fradinho and A. M. Gonçalves-Coelho and Miguel Cavique}, + Year = 2021, + Publisher = {IOP Conference Series: Materials Science and Engineering}, + Volume = {1174}, + Note = {June 23--25}, + Address = {Lisbon, Portugal}, + Booktitle = {14th {I}nternational {C}onference on {A}xiomatic {D}esign ({ICAD})}, + URL = {https://iopscience.iop.org/issue/1757-899X/1174/1}, + Owner = {foley}, + Timestamp = {2021-06-29}, +} + + +@Proceedings{cirpdc2016, + Title = {26th CIRP Design Conference}, + OPTEditor = {}, + Year = {2016}, + OPTDoi = {}, + Organization = {Procedia CIRP}, + Publisher = {Elsevier ScienceDirect}, + OPTVolume = {}, + Note = {Jun. 15--17}, + + Address = {Stockholm, Sweden}, + Booktitle = {26th CIRP Design Conference}, + Owner = {foley}, + Timestamp = {2016-07-15} +} + +@Proceedings{cirpdc2017, + Title = {Complex Systems Engineering and Development Proceedings of the 27th CIRP Design Conference}, + OPTEditor = {}, + Year = {2017}, + OPTDoi = {}, + Organization = {Procedia CIRP}, + Publisher = {Elsevier ScienceDirect}, + OPTVolume = {}, + Note = {May 10--12}, + + Address = {Cranfield University, UK}, + Booktitle = {Complex Systems Engineering and Development Proceedings of the 27th CIRP Design Conference}, + Owner = {foley}, + Timestamp = {2017-05-30} +} + diff --git a/references-foley.bib b/references-foley.bib new file mode 100644 index 0000000..2a886fb --- /dev/null +++ b/references-foley.bib @@ -0,0 +1,644 @@ +% Encoding: UTF-8 + +@InProceedings{foley2022embracingfailure, + author = {Mark\'eta Foley and Joseph Timothy Foley and Marcel Kyas}, + title = {Embracing Failure as an Integral Aspect of Engineering Education}, + booktitle = {CDIO Annual International Conference}, + pages = 12, + owner = {foley}, + author = {Joseph Timothy Foley}, + year = 2022, + address = {Reykjavík, Iceland}, + note = {June 13--15, Advances in CDIO, Accepted for Publication}, +} + +@InProceedings{sudermann2021mobile, + author = {Fynn Sudermann and Kristján Már Kjartansson and Sigurður Ágúst Jakobsson and Joseph T. Foley}, + title = {Mobile High Voltage Power Line Thermometer}, + crossref = {icad2021}, + year = 2021, + url = {https://iopscience.iop.org/article/10.1088/1757-899X/1174/1/012026/meta}, + owner = {foley}, + timestamp = {2021.06.29} +} + +@InProceedings{foley2021ad-software-engineering, + author = {Joseph Timothy Foley and Marcel Kyas}, + title = {{AD} Software Engineering}, + crossref = {icad2021}, + year = 2021, + url = {https://iopscience.iop.org/article/10.1088/1757-899X/1174/1/012025/meta}, + owner = {foley}, + timestamp = {2021.06.29} +} + +@InProceedings{foley2021dindesign, + author = {Joseph Timothy Foley and Marcel Kyas}, + title = {Choosing the Right {D} for Design}, + booktitle = {CDIO Annual International Conference}, + pages = 12, + owner = {foley}, + author = {Joseph Timothy Foley}, + year = 2021, + address = {Bangkok, Thailand}, + note = {June 21--23, Advances in CDIO}, +} + +@Book{des2021, + editor = {Nam Pyo Suh and Miguel Cavique and Joseph Timothy Foley}, + title = {Design Engineering and Science}, + year = {2021}, + publisher = {Springer Nature}, + ISBN = {978-3030492311} +} + +@InBook{foley2021descomplexitykitchen, + author = {Joseph T. Foley and Erik Puik and Lindy Puik and Joseph Smith and David S. Cochran}, + title = {Complexity in the Kitchen}, + chapter = 15, + pages = 31, + crossref = {des2021}, + owner = {foley}, + timestamp = {2020.09.25}, +} + +@Book{icad2018book, + editor = {Eric C. N. Puik and Joseph Timothy Foley and David S. Cochrand and Mirzi L. Betasolo}, + title = {Reports on Axiomatic Design 2018: Proceedings of the 12th International Conference on Axiomatic Design}, + year = 2018, + ISBN = {978-94-91903-02-1}, + publisher = {HU University of Applied Sciences Utrecht, the Netherlands}, +} + +@InProceedings{foley2019complexitykitchen, + author = {Joseph T. Foley and Erik Puik and Lindy Puik and Joseph Smith and David S. Cochran}, + title = {Complexity in the Kitchen}, + pages = {12}, + crossref = {icad2019}, + owner = {foley}, + timestamp = {2019.11.20}, +} + + +@InProceedings{vossebeld2018customer, + author = {Danielle M. Vossebeld and Joseph T. Foley and Erik Puik}, + title = {The Complexity of Mapping Customer Needs ... (and the myth of a Unanimous Customer)}, + pages = {7}, + crossref = {icad2018}, + owner = {foley}, + timestamp = {2018.09.29}, +} + +@InProceedings{helgason2018tablet, + author = {Haraldur Helgason and \TH{}r\'{a}inn \TH{}\'{o}rarinsson and Sindri Ingvason and Joseph T. Foley}, + title = {Design of a tablet holder with the help of Axiomatic Design}, + pages = {7}, + crossref = {icad2018}, + owner = {foley}, + timestamp = {2018.09.29}, +} + + +@InProceedings{foley2017antenna, + author = {Joseph Timothy Foley and Vladimir Omelianov and Slawomir Koziel and Adrian Bekasiewcz}, + title = {Low-cost Antenna Positioning System Designed with {A}xiomatic {D}esign}, + pages = {7}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + +@InProceedings{foley2017faucet, + author = {Joseph Timothy Foley and Erik Puik and David S. Cochran}, + title = {The Faucet Reloaded: Improving {A}xiomatic {D}esign by Example}, + pages = {7}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + + +@InProceedings{foley2017motorcyclelift, + author = {Joseph Timothy Foley and Gu\dh{}mundur \TH{}\'orir Sigur\dh{}sson and J\'{o}hann Sm\'ari Gunnarsson and J\'on Gautason and \'Olafur J\'osef \'Olafsson}, + title = {Mobile Motorcycle Lift for the Common Man}, + pages = {7}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + + + +@InProceedings{foley2017adjustadesk, + author = {Joseph Timothy Foley and Arn\'or Freyr S\'imonarson and Hilmar Þ\'or S\'imonarson and L\'u\dh{}v\'ik Fri\dh{}rik \AE{}gisson and Andri Þ\'or Goethe}, + title = {{AD}justadesk --- An adjustable height desk}, + pages = {7}, + number = {01002}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + +@InProceedings{breznik2017collaborative, + author = {Ale\v{s} Breznik and Peter Plani\v{s}i\v{c} and Joseph T. Foley}, + utf8author = {Aleš Breznik and Peter Planinšič and Joseph T. Foley}, + title = {Collaborative development of an open-source rocket control system}, + year = {2017}, + booktitle = {IEEE 26th International Electrotechnical and Computer Science Conference ERK 2017}, + address = {Portoro\v{z}, Slovenia}, + OPTurl = {http://www.ieee.si/erk/}, + pages = {4}, +} + +@InProceedings{petursson2017smaspring, + author = {Einar P\'etursson and Ingi N\'\iels Karlsson and Olaf Gar\dh{}ar Gar\dh{}arsson and P\'all P\'alsson and Saulius Genutis, Vladimir Omelianov and Joseph Timothy Foley}, + title = {{A}xiomatic {D}esign of Equipment for Analysis of {SMA} Spring Degradation During Electronic Actuation}, + year = {2017}, + pages = {261--266}, + crossref = {cirpdc2017}, + timestamp = {2017.05.30}, +} + +@InProceedings{foley2017msddontology, + author = {Joseph Timothy Foley and David S. Cochran}, + title = {Manufacturing System Design Decomposition: An Ontology for Data Analytics and System Design Evaluation}, + year = {2017}, + pages = {175--180}, + crossref = {cirpdc2017}, + timestamp = {2017.05.30} +} + + +@InProceedings{erlingsson2016roboclaw, + author = {Bjartmar Freyr Erlingsson and Ingólfur Hreimsson and Páll Indriði Pálsson and Sigurður Jóhann Hjálmarsson and Joseph Timothy Foley}, + title = {{A}xiomatic {D}esign of a linear motion robotic claw with interchangeable grippers}, + pages = {213--218}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{foley2016desirable, + author = {Joseph Timothy Foley and Erik Puik and David S. Cochran}, + title = {Desirable Complexity}, + pages = {101--106}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{guls2016auvlight, + author = {Jevgenij Guls and Ólafur Ingi Bjarnason and Óskar Pétursson and Sævar Örn Einarsson and Joseph Timothy Foley}, + title = {Application of {A}xiomatic {D}esign in designing Autonomous Underwater photography lighting}, + pages = {278--283}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{gerhard2016suretrack, + author = {Kristján Gerhard and Joseph Timothy Foley}, + title = {Redesign of the {S}ureTrack grader transfer bin using {A}xiomatic {D}esign}, + pages = {267--272}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{omarsdottir2016chessmate, + author = {Freyja Yeatman Ómarsdóttir and Róbert Bjarnar Ólafsson and Joseph Timothy Foley}, + title = {The axiomatic design of Chessmate: a chess-playing robot}, + pages = {213--236}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{puik2016ignorance, + author = {Erik Puik and Joseph Timothy Foley and Darek Ceglarek}, + title = {Ignorance is bliss: sudden appearance of previously unrecognized information and its effect}, + pages = {70--77}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + + +@InProceedings{foley2016evaluating, + author = {Joseph Timothy Foley}, + title = {{E}valuating {E}ngineering {N}otebooks}, + year = {2016}, + booktitle = {CDIO Annual International Conference}, + address = {Turku, Finland}, + note = {June 12--16, Project in Progress}, +} + +@InProceedings{foley2016creative, + Title = {Creative {A}xiomatic {D}esign}, + Author = {Joseph Timothy Foley and Sigrún Harðardóttir}, + pages = {688--694}, + crossref = {cirpdc2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{cochran2016hospital, + title = {{A} {S}ystem {D}esign of a {R}ural {H}ospital {O}perating {R}oom}, + author = {David S. Cochran and Jia Li and Kyle Vanover and Joseph T. Foley}, + pages = {597--603}, + crossref = {cirpdc2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@Article{cochran2016msdd, + title = {{U}se of the {M}anufacturing {S}ystem {D}esign {D}ecomposition for {C}omparative {A}nalysis and {E}ffective {D}esign of {P}roduction {S}ystems}, + author = {David S. Cochran and Joseph T. Foley and Zhuming Bi}, + year = {2016}, + journal = {International Journal of Production Research}, + volume = {55}, + issue = {3}, + pages = {870--890}, + owner = {foley}, + timestamp = {2016.07.12}, +} + + +@INPROCEEDINGS{solvason2015spectrometer, + author = {Gunnar Óli Sölvason and Joseph Timothy Foley}, + title = {Low-cost spectrometer for Icelandic chemistry education}, + booktitle = {Proceedings of College International Pour La Recherche en Productique + (CIRP), 9th International Conference on {A}xiomatic {D}esign (ICAD)}, + year = {2015}, + volume = {34}, + pages = {156--161}, + address = {Florence, Italy}, + month = sep, + doi = {10.1016/j.procir.2015.07.061}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.sciencedirect.com/science/article/pii/S2212827115008203} +} + +@INPROCEEDINGS{jonsson2015uget, + author = {Berg\th{}\'{o}r L\'{a}r J\'{o}nsson and Gar\dh{}ar \"{O}rn Gar\dh{}arsson and \'{O}skar P\'{e}tursson + and Sigur\dh{}ur Bjarki Hlynsson and Joseph Timothy Foley}, + title = {Ultrasonic gasoline evaporation transducer --- reduction of internal + combustion engine fuel consumption using axiomatic design}, + booktitle = {Proceedings of College International Pour La Recherche en Productique + (CIRP), 9th International Conference on {A}xiomatic {D}esign (ICAD)}, + year = {2015}, + volume = {34}, + pages = {168--172}, + address = {Florence, Italy}, + month = sep, + doi = {10.1016/j.procir.2015.07.061}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.sciencedirect.com/science/article/pii/S2212827115008203} +} + +@ARTICLE{gudmundsdottir2014wirelessscheduling, + author = {Helga Gudmundsdottir and Eyjólfur I Ásgeirsson and Marijke HL Bodlaender + and Joseph T Foley and Magnús M Halldórsson and Ymir Vigfusson}, + title = {Wireless Scheduling Algorithms in Complex Environments}, + journal = {arXiv preprint}, + year = {2014}, + number = {1401.1723}, + month = {1}, + abstract = {Abstract: Efficient spectrum use in wireless sensor networks through + spatial reuse requires effective models of packet reception at the + physical layer in the presence of interference. Despite recent progress + in analytic and simulations research into worst-case behavior from + interference effects, these efforts generally assume geometric path + loss and isotropic transmission, assumptions which have not been + borne out in experiments.}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://arxiv.org/pdf/1401.1723.pdf} +} + +@ARTICLE{gudmundsdottir2014measurement, + author = {Helga Gudmundsdottir and Eyjólfur I Ásgeirsson and Marijke HL Bodlaender + and Joseph T Foley and Magnús M Halldórsson and Geir M Järvelä and Henning + Ulfarsson and Ymir Vigfusson}, + title = {Measurement based interference models for wireless scheduling algorithms}, + journal = {MSWiM}, + year = {2014}, + volume = {1401.1723}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@INPROCEEDINGS{gudmundsdottir2014extendingviametricity, + author = {Helga Gudmundsdottir and Eyjólfur I Ásgeirsson and Marijke HL Bodlaender + and Joseph T Foley and Magnús M Halldórsson and Ymir Vigfusson}, + title = {Extending wireless algorithm design to arbitrary environments via + metricity}, + booktitle = {Proceedings of the 17th ACM international conference on Modeling, + analysis and simulation of wireless and mobile systems (MSWiM)}, + year = {2014}, + month = sep, + days = {21--26}, + pages = {275--284}, + publisher = {ACM}, + address = {Montreal, Canada}, + doi = {10.1145/2641798.2641811}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.ymsir.com/papers/wireless-mswim.pdf} +} + +@INPROCEEDINGS{thompson2014additive, + author = {Mary Kathryn Thompson and Joseph Timothy Foley}, + title = {Coupling and Complexity in Additive Manufacturing Processes}, + booktitle = {8th International Conference on {A}xiomatic {D}esign}, + year = {2014}, + pages = {177--182}, + address = {Lisbon, Portugal}, + month = sep, + abstract = {This work analyzes and compares traditional subtractive machining + processes (milling and turning) and additive manufacturing processes + (fused deposition modeling, selective sintering, stereolithography, + and 3D printing) in an {A}xiomatic {D}esign context. The processes are + examined from a local and isothermal perspective then as time-varying + systems to determine the degree of coupling and time-dependent complexity + they exhibit. It is shown that subtractive processes exhibit more + coupling within the design matrix than}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.axiomaticdesign.com/technology/icad/icad2014/26-Thompson-et-al-paper.pdf}, +} + + +@INPROCEEDINGS{foley2012vitro, + author = {Markéta Foley and Ramona Lieder and Joseph T. Foley and Gissur Örlygsson and Ólafur E. Sigurjónsson}, + title = {In vitro bioactivity of chitosan attached to titanium constructs + using a novel electrophoretic deposition method}, + booktitle = {Journal of Tissue Engineering and Regenerative Medicine}, + year = 2012, + volume = 6, + pages = {187-187}, + month = sep, + organization = {Wiley-Blackwell}, + address = {111 RIVER ST, HOBOKEN 07030-5774, NJ USA}, + journal = {Journal of Tissue Engineering and Regenerative Medicine: 3rd TERMIS Wordl Congress 2012 ``Tissue Engineering and Regenerative Medicine''}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@ARTICLE{foley2012epdposter, + author = {Markéta Foley and Ramona Lieder and Joseph T. Foley and Gissur Örlygsson and Ólafur E. Sigurjónsson}, + title = {Notkun á electrophoretic deposition aðferðum til + húðunar á títanígræðum með kítósani}, + booktitle = {Læknablaðið: Vísandi á vordögum 2012}, + year = 2012, + note = {25 April -- 4 May Poster session.}, + owner = {foley}, + timestamp = {2015.09.21} + +} + +@INPROCEEDINGS{foley2012epd, + author = {Markéta Foley and Ramona Lieder and Joseph T. Foley and Gissur Örlygsson and Ólafur E. Sigurjónsson}, + title = {Development of a Novel Electrophoretic Deposition {(EPD)} + Method for Coating Titanium Implants with Chitosan}, + boboktitle = {{NAMABIO} {COST} 2012 proceedings}, + year = 2012, + month = sep, + address = {Vienna, Austria}, + days = {4--5}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@PATENT{foley2012enhancedsecurity, + nationality = {US}, + number = {8384546}, + year = {2013}, + author = {Joseph T Foley and Sanjay Sarma and Stephen A Weis}, + title = {Enhanced security protocol for radio frequency systems}, + language = {English}, + assignee = {Joseph T Foley and Sanjay Sarma and Stephen A Weis}, + day = {26}, + month = {2}, + abstract = {This invention relates to security protocols for RFID systems. Systems + and methods are presented to protect the system from hackers attempting + to compromise the RFID system. Also, methods and systems for improving + RFID security are disclosed. The systems utilize mechanisms to determine + the authenticity of the RFID tags used in such systems. The systems + and methods also reduce unauthorized access to the RFID system. A + system and method to make tags more difficult to compromise or counterfeit + is also described.}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@ARTICLE{foley2011colliding, + title = {The sound of art and engineering colliding}, + author = {Joseph Timothy Foley}, + year = {2011}, + month = {12}, + day = {7}, + volume = {1}, + number = {36}, + journal = {Tölvumál}, + publisher = {Skýrslutæknifélag Íslands}, + url = {http://www.sky.is/index.php/toelvumal/item/1581-the-sound-of-art-and-engineering-colliding}, +} + +@MISC{foley2011method, + author = {Joseph T Foley and Matthew S Jolda}, + title = {Method of Manufacturing a Nickel Titanium Coil Actuator}, + howpublished = {Google patents}, + month = {apr}, + year = {2011}, + note = {US Patent App. 12/849,000}, + nationality = {US}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {https://www.google.com/patents/US20110083325}, + yearfiled = {2011} +} + +@INPROCEEDINGS{kim2009microartificialmuscle, + author = {Sangbae Kim and E. Hawkes and Kyujin Cho and Matthew Jolda and Joseph + Timothy Foley and Robert J. Wood}, + title = {Micro artificial muscle fiber using NiTi spring for soft robotics}, + booktitle = {Intelligent Robots and Systems (IROS) 2009. IEEE/RSJ International + Conference}, + year = {2009}, + pages = {2228--2234}, + address = {St. Louis, MO}, + month = oct, + organization = {IEEE}, + publisher = {IEEE}, + doi = {10.1109/IROS.2009.5354178}, + keywords = {annealing;microactuators;microrobots;nickel compounds;shape memory + effects;springs (mechanical);NiTi spring;annealing temperatures;bioinspired + antagonistic actuation;coil actuators;discrete displacement control;enhanced-performance + inverted-spring manufacturing method;flexible actuator;force-displacement + characteristics;high energy density;manufacturing process;martensite + deformation;mesh-worm prototype;mesoscale applications;micro artificial + muscle fiber;microcoil spring;micromuscle fiber;nickel titanium;robust + actuators;scalability;shape memory alloy coiled springs;shape memory + effect;soft robotic platforms;Actuators;Geometry;Muscles;Nickel;Resilience;Robots;Robustness;Scalability;Shape + memory alloys;Springs}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@PATENT{sarma2008ons, + nationality = {US}, + number = {7765253}, + year = {2010}, + yearfiled = {2008}, + author = {Sanja Sarma and Dan W. Engels and Erik L. Nygren and Joseph Timothy + Foley and Daniel L. Brock and K. Y. Sai}, + title = {Object Name System}, + assignee = {Massachusetts Institute Of Technology}, + day = {27}, + dayfiled = {31}, + month = {July}, + monthfiled = {October}, + url = {https://www.google.com/patents/US7765253}, + owner = {foley}, + timestamp = {2015.09.21} +} + + +@INPROCEEDINGS{foley2008turbsim, + author = {Joseph Timothy Foley and Timothy G. Gutowski}, + title = {TurbSim: Reliability-based wind turbine simulator}, + booktitle = {IEEE International Symposium on Electronics and the Environment (ISEE), + 2008}, + year = {2008}, + pages = {1-5}, + month = may, + abstract = {Wind turbine farms are an effective generator of electricity in windy + parts of the world, with prices progressing to levels competitive + with other sources. Choosing the correct turbine for a given installation + requires significant engineering and the current trend leads towards + groups of large horizontal axis turbines. Unfortunately, large wind + turbines have to contend with large forces and other sources of failure. + With the new push to move generation farms offshore where they are + less accessible, the issue of reliability becomes more critical. + This work investigates the impact of reliability in a life-cycle + analysis simulation of a theoretical wind farm in Massachusetts based + upon reliability information from a number of academic sources. The + simulator, TurbSim, is designed with significant modularity to enable + reliability simulation of any turbine with available wind information. + Our simulation of a turbine indicated that reliability makes a small + but noticeable impact of 1.24\% in its output.}, + doi = {10.1109/ISEE.2008.4562872}, + keywords = {power generation reliability;remaining life assessment;wind power + plants;wind turbines;Massachusetts;TurbSim;generation farms;installation;large + horizontal axis turbines;life-cycle analysis simulation;reliability + simulation;reliability-based wind turbine simulator;Analytical models;Information + analysis;Investments;Large-scale systems;Power generation;Reliability + engineering;Reliability theory;Wind energy generation;Wind farms;Wind + turbines} +} + +@PHDTHESIS{foley2007phd, + author = {Joseph Timothy Foley}, + title = {Security Approaches for Radio Frequency Identification Systems}, + school = {Massachusetts Institute of Technology}, + year = {2007}, + department = {Department of Mechanical Engineering}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@TechReport{sarma2002onsbeta, + author = {Sanjay Sarma and David Brock and Joseph Timothy Foley and L. Putta and S. Ramachandran and G. Nassar}, + title = {{T}he {O}bject {N}ame {S}ervice: {V}ersion 0.5 (beta),}, + institution = {MIT Auto-ID Center}, + year = {2002}, + type = {Technical Report}, + number = {MIT-AUTOID-TM-004}, + address = {Cambridge, Massachusetts, USA}, + month = {February}, + owner = {foley}, + timestamp = {2016-03-09} +} + + + +@MASTERSTHESIS{foley1999msc, + author = {Joseph Timothy Foley}, + title = {An Infrastructure for Electromechanical Appliances on the Internet}, + school = {Massachusetts Institute of Technology}, + year = {1999}, + month = {June}, + department = {Department of Computer Science and Electrical Engineering}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@MISC{foley1998aup, + author = {Joseph Timothy Foley}, + title = {Low-cost Pine-car Derby Timing System}, + howpublished = {Department of Computer Science and Electrical Engineering}, + month = {June}, + year = {1998}, + owner = {foley}, + school = {Massachusetts Institute of Technology}, + timestamp = {2015.09.21} +} + +@TECHREPORT{epc2005onsspec1, + author = {EPCglobal}, + title = {Object Naming Service (ONS) Version 1.0 Specification.}, + institution = {EPCglobal, USA}, + year = {2005}, + number = {1.0}, + month = {October}, + note = {Named contributor.}, + day = {4}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@CONFERENCE{engels2001networkedworld, + author = {Dan Engels and Joseph Timothy Foley and Jim Waldrop and Sanjay Sarma + and David Brock}, + title = {The Networked Physical World: An Automated Identification Architecture}, + booktitle = {IEEE Workshop on Internet Applications (WIAPP) 2001}, + year = {2001}, + pages = {76--77}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@MISC{dahmus2007usindustrialenergyuse, + author = {Jeffrey Dahmus and Alissa Jones and Lynette Cheah and Matthew Branham + and Joseph Foley and Young Song}, + title = {{U.S.} Industrial Energy Use: Making Less with More?}, + howpublished = {MIT Energy Conference Poster Session}, + month = {March}, + year = 2007, + day = 9, + owner = {foley}, + timestamp = {2015.09.21} +} + +@INPROCEEDINGS{bragason2015parachuterelease, + author = {Gu\dh{}mundur Bragason and Steinar Þorsteinsson and R\'{i}tur Ingi Karlsson + and Nico Grosse and Joseph Timothy Foley}, + title = {Heat-activated Parachute Release System}, + booktitle = {Proceedings of College International Pour La Recherche en Productique + (CIRP), 9th International Conference on {A}xiomatic {D}esign (ICAD)}, + crossref = {icad2015}, + OPTyear = {2015}, + OPTvolume = {34}, + pages = {131--136}, + OPTaddress = {Florence, Italy}, + OPTmonth = {September}, + doi = {10.1016/j.procir.2015.07.061}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.sciencedirect.com/science/article/pii/S2212827115008203}, +} + +%% Collections must be included after diff --git a/references.bib b/references.bib new file mode 100644 index 0000000..fa41e4a --- /dev/null +++ b/references.bib @@ -0,0 +1,564 @@ +% Encoding: UTF-8 + +@InProceedings{vossebeld2018customer, + author = {Danielle M. Vossebeld and Joseph T. Foley and Erik Puik}, + title = {The Complexity of Mapping Customer Needs ... (and the myth of a Unanimous Customer)}, + pages = {7}, + crossref = {icad2018}, + owner = {foley}, + timestamp = {2018.09.29}, +} + +@InProceedings{helgason2018tablet, + author = {Haraldur Helgason and \TH{}r\'{a}inn \TH{}\'{o}rarinsson and Sindri Ingvason and Joseph T. Foley}, + title = {Design of a tablet holder with the help of Axiomatic Design}, + pages = {7}, + crossref = {icad2018}, + owner = {foley}, + timestamp = {2018.09.29}, +} + + +@InProceedings{foley2017antenna, + author = {Joseph Timothy Foley and Vladimir Omelianov and Slawomir Koziel and Adrian Bekasiewcz}, + title = {Low-cost Antenna Positioning System Designed with {A}xiomatic {D}esign}, + pages = {7}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + +@InProceedings{foley2017faucet, + author = {Joseph Timothy Foley and Erik Puik and David S. Cochran}, + title = {The Faucet Reloaded: Improving {A}xiomatic {D}esign by Example}, + pages = {7}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + + +@InProceedings{foley2017motorcyclelift, + author = {Joseph Timothy Foley and Gu\dh{}mundur \TH{}\'orir Sigur\dh{}sson and J\'{o}hann Sm\'ari Gunnarsson and J\'on Gautason and \'Olafur J\'osef \'Olafsson}, + title = {Mobile Motorcycle Lift for the Common Man}, + pages = {7}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + + + +@InProceedings{foley2017adjustadesk, + author = {Joseph Timothy Foley and Arn\'or Freyr S\'imonarson and Hilmar Þ\'or S\'imonarson and L\'u\dh{}v\'ik Fri\dh{}rik \AE{}gisson and Andri Þ\'or Goethe}, + title = {{AD}justadesk --- An adjustable height desk}, + pages = {7}, + number = {01002}, + crossref = {icad2017}, + owner = {foley}, + timestamp = {2017.09.15}, +} + +@InProceedings{breznik2017collaborative, + author = {Ale\v{s} Breznik and Peter Plani\v{s}i\v{c} and Joseph T. Foley}, + utf8author = {Aleš Breznik and Peter Planinšič and Joseph T. Foley}, + title = {Collaborative development of an open-source rocket control system}, + year = {2017}, + booktitle = {IEEE 26th International Electrotechnical and Computer Science Conference ERK 2017}, + address = {Portoro\v{z}, Slovenia}, + OPTurl = {http://www.ieee.si/erk/}, + pages = {4}, +} + +@InProceedings{petursson2017smaspring, + author = {Einar P\'etursson and Ingi N\'\iels Karlsson and Olaf Gar\dh{}ar Gar\dh{}arsson and P\'all P\'alsson and Saulius Genutis, Vladimir Omelianov and Joseph Timothy Foley}, + title = {{A}xiomatic {D}esign of Equipment for Analysis of {SMA} Spring Degradation During Electronic Actuation}, + year = {2017}, + pages = {261--266}, + crossref = {cirpdc2017}, + timestamp = {2017.05.30}, +} + +@InProceedings{foley2017msddontology, + author = {Joseph Timothy Foley and David S. Cochran}, + title = {Manufacturing System Design Decomposition: An Ontology for Data Analytics and System Design Evaluation}, + year = {2017}, + pages = {175--180}, + crossref = {cirpdc2017}, + timestamp = {2017.05.30} +} + + +@InProceedings{erlingsson2016roboclaw, + author = {Bjartmar Freyr Erlingsson and Ingólfur Hreimsson and Páll Indriði Pálsson and Sigurður Jóhann Hjálmarsson and Joseph Timothy Foley}, + title = {{A}xiomatic {D}esign of a linear motion robotic claw with interchangeable grippers}, + pages = {213--218}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{foley2016desirable, + author = {Joseph Timothy Foley and Erik Puik and David S. Cochran}, + title = {Desirable Complexity}, + pages = {101--106}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{guls2016auvlight, + author = {Jevgenij Guls and Ólafur Ingi Bjarnason and Óskar Pétursson and Sævar Örn Einarsson and Joseph Timothy Foley}, + title = {Application of {A}xiomatic {D}esign in designing Autonomous Underwater photography lighting}, + pages = {278--283}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{gerhard2016suretrack, + author = {Kristján Gerhard and Joseph Timothy Foley}, + title = {Redesign of the {S}ureTrack grader transfer bin using {A}xiomatic {D}esign}, + pages = {267--272}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{omarsdottir2016chessmate, + author = {Freyja Yeatman Ómarsdóttir and Róbert Bjarnar Ólafsson and Joseph Timothy Foley}, + title = {The axiomatic design of Chessmate: a chess-playing robot}, + pages = {213--236}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{puik2016ignorance, + author = {Erik Puik and Joseph Timothy Foley and Darek Ceglarek}, + title = {Ignorance is bliss: sudden appearance of previously unrecognized information and its effect}, + pages = {70--77}, + crossref = {icad2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + + +@InProceedings{foley2016evaluating, + author = {Joseph Timothy Foley}, + title = {{E}valuating {E}ngineering {N}otebooks}, + year = {2016}, + booktitle = {CDIO Annual International Conference}, + address = {Turku, Finland}, + note = {June 12--16, Project in Progress}, +} + +@InProceedings{foley2016creative, + Title = {Creative {A}xiomatic {D}esign}, + Author = {Joseph Timothy Foley and Sigrún Harðardóttir}, + pages = {688--694}, + crossref = {cirpdc2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@InProceedings{cochran2016hospital, + title = {{A} {S}ystem {D}esign of a {R}ural {H}ospital {O}perating {R}oom}, + author = {David S. Cochran and Jia Li and Kyle Vanover and Joseph T. Foley}, + pages = {597--603}, + crossref = {cirpdc2016}, + owner = {foley}, + timestamp = {2016.07.15}, +} + +@Article{cochran2016msdd, + title = {{U}se of the {M}anufacturing {S}ystem {D}esign {D}ecomposition for {C}omparative {A}nalysis and {E}ffective {D}esign of {P}roduction {S}ystems}, + author = {David S. Cochran and Joseph T. Foley and Zhuming Bi}, + year = {2016}, + journal = {International Journal of Production Research}, + volume = {55}, + issue = {3}, + pages = {870--890}, + owner = {foley}, + timestamp = {2016.07.12}, +} + + +@INPROCEEDINGS{solvason2015spectrometer, + author = {Gunnar Óli Sölvason and Joseph Timothy Foley}, + title = {Low-cost spectrometer for Icelandic chemistry education}, + booktitle = {Proceedings of College International Pour La Recherche en Productique + (CIRP), 9th International Conference on {A}xiomatic {D}esign (ICAD)}, + year = {2015}, + volume = {34}, + pages = {156--161}, + address = {Florence, Italy}, + month = sep, + doi = {10.1016/j.procir.2015.07.061}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.sciencedirect.com/science/article/pii/S2212827115008203} +} + +@INPROCEEDINGS{jonsson2015uget, + author = {Berg\th{}\'{o}r L\'{a}r J\'{o}nsson and Gar\dh{}ar \"{O}rn Gar\dh{}arsson and \'{O}skar P\'{e}tursson + and Sigur\dh{}ur Bjarki Hlynsson and Joseph Timothy Foley}, + title = {Ultrasonic gasoline evaporation transducer --- reduction of internal + combustion engine fuel consumption using axiomatic design}, + booktitle = {Proceedings of College International Pour La Recherche en Productique + (CIRP), 9th International Conference on {A}xiomatic {D}esign (ICAD)}, + year = {2015}, + volume = {34}, + pages = {168--172}, + address = {Florence, Italy}, + month = sep, + doi = {10.1016/j.procir.2015.07.061}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.sciencedirect.com/science/article/pii/S2212827115008203} +} + +@ARTICLE{gudmundsdottir2014wirelessscheduling, + author = {Helga Gudmundsdottir and Eyjólfur I Ásgeirsson and Marijke HL Bodlaender + and Joseph T Foley and Magnús M Halldórsson and Ymir Vigfusson}, + title = {Wireless Scheduling Algorithms in Complex Environments}, + journal = {arXiv preprint}, + year = {2014}, + number = {1401.1723}, + month = {1}, + abstract = {Abstract: Efficient spectrum use in wireless sensor networks through + spatial reuse requires effective models of packet reception at the + physical layer in the presence of interference. Despite recent progress + in analytic and simulations research into worst-case behavior from + interference effects, these efforts generally assume geometric path + loss and isotropic transmission, assumptions which have not been + borne out in experiments.}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://arxiv.org/pdf/1401.1723.pdf} +} + +@ARTICLE{gudmundsdottir2014measurement, + author = {Helga Gudmundsdottir and Eyjólfur I Ásgeirsson and Marijke HL Bodlaender + and Joseph T Foley and Magnús M Halldórsson and Geir M Järvelä and Henning + Ulfarsson and Ymir Vigfusson}, + title = {Measurement based interference models for wireless scheduling algorithms}, + journal = {MSWiM}, + year = {2014}, + volume = {1401.1723}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@INPROCEEDINGS{gudmundsdottir2014extendingviametricity, + author = {Helga Gudmundsdottir and Eyjólfur I Ásgeirsson and Marijke HL Bodlaender + and Joseph T Foley and Magnús M Halldórsson and Ymir Vigfusson}, + title = {Extending wireless algorithm design to arbitrary environments via + metricity}, + booktitle = {Proceedings of the 17th ACM international conference on Modeling, + analysis and simulation of wireless and mobile systems (MSWiM)}, + year = {2014}, + month = sep, + days = {21--26}, + pages = {275--284}, + publisher = {ACM}, + address = {Montreal, Canada}, + doi = {10.1145/2641798.2641811}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.ymsir.com/papers/wireless-mswim.pdf} +} + +@INPROCEEDINGS{thompson2014additive, + author = {Mary Kathryn Thompson and Joseph Timothy Foley}, + title = {Coupling and Complexity in Additive Manufacturing Processes}, + booktitle = {8th International Conference on {A}xiomatic {D}esign}, + year = {2014}, + pages = {177--182}, + address = {Lisbon, Portugal}, + month = sep, + abstract = {This work analyzes and compares traditional subtractive machining + processes (milling and turning) and additive manufacturing processes + (fused deposition modeling, selective sintering, stereolithography, + and 3D printing) in an {A}xiomatic {D}esign context. The processes are + examined from a local and isothermal perspective then as time-varying + systems to determine the degree of coupling and time-dependent complexity + they exhibit. It is shown that subtractive processes exhibit more + coupling within the design matrix than}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.axiomaticdesign.com/technology/icad/icad2014/26-Thompson-et-al-paper.pdf}, +} + + +@INPROCEEDINGS{foley2012vitro, + author = {Markéta Foley and Ramona Lieder and Joseph T. Foley and Gissur Örlygsson and Ólafur E. Sigurjónsson}, + title = {In vitro bioactivity of chitosan attached to titanium constructs + using a novel electrophoretic deposition method}, + booktitle = {Journal of Tissue Engineering and Regenerative Medicine}, + year = 2012, + volume = 6, + pages = {187-187}, + month = sep, + organization = {Wiley-Blackwell}, + address = {111 RIVER ST, HOBOKEN 07030-5774, NJ USA}, + journal = {Journal of Tissue Engineering and Regenerative Medicine: 3rd TERMIS Wordl Congress 2012 ``Tissue Engineering and Regenerative Medicine''}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@ARTICLE{foley2012epdposter, + author = {Markéta Foley and Ramona Lieder and Joseph T. Foley and Gissur Örlygsson and Ólafur E. Sigurjónsson}, + title = {Notkun á electrophoretic deposition aðferðum til + húðunar á títanígræðum með kítósani}, + booktitle = {Læknablaðið: Vísandi á vordögum 2012}, + year = 2012, + note = {25 April -- 4 May Poster session.}, + owner = {foley}, + timestamp = {2015.09.21} + +} + +@INPROCEEDINGS{foley2012epd, + author = {Markéta Foley and Ramona Lieder and Joseph T. Foley and Gissur Örlygsson and Ólafur E. Sigurjónsson}, + title = {Development of a Novel Electrophoretic Deposition {(EPD)} + Method for Coating Titanium Implants with Chitosan}, + boboktitle = {{NAMABIO} {COST} 2012 proceedings}, + year = 2012, + month = sep, + address = {Vienna, Austria}, + days = {4--5}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@PATENT{foley2012enhancedsecurity, + nationality = {US}, + number = {8384546}, + year = {2013}, + author = {Joseph T Foley and Sanjay Sarma and Stephen A Weis}, + title = {Enhanced security protocol for radio frequency systems}, + language = {English}, + assignee = {Joseph T Foley and Sanjay Sarma and Stephen A Weis}, + day = {26}, + month = {2}, + abstract = {This invention relates to security protocols for RFID systems. Systems + and methods are presented to protect the system from hackers attempting + to compromise the RFID system. Also, methods and systems for improving + RFID security are disclosed. The systems utilize mechanisms to determine + the authenticity of the RFID tags used in such systems. The systems + and methods also reduce unauthorized access to the RFID system. A + system and method to make tags more difficult to compromise or counterfeit + is also described.}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@ARTICLE{foley2011colliding, + title = {The sound of art and engineering colliding}, + author = {Joseph Timothy Foley}, + year = {2011}, + month = {12}, + day = {7}, + volume = {1}, + number = {36}, + journal = {Tölvumál}, + publisher = {Skýrslutæknifélag Íslands}, + url = {http://www.sky.is/index.php/toelvumal/item/1581-the-sound-of-art-and-engineering-colliding}, +} + +@MISC{foley2011method, + author = {Joseph T Foley and Matthew S Jolda}, + title = {Method of Manufacturing a Nickel Titanium Coil Actuator}, + howpublished = {Google patents}, + month = {apr}, + year = {2011}, + note = {US Patent App. 12/849,000}, + nationality = {US}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {https://www.google.com/patents/US20110083325}, + yearfiled = {2011} +} + +@INPROCEEDINGS{kim2009microartificialmuscle, + author = {Sangbae Kim and E. Hawkes and Kyujin Cho and Matthew Jolda and Joseph + Timothy Foley and Robert J. Wood}, + title = {Micro artificial muscle fiber using NiTi spring for soft robotics}, + booktitle = {Intelligent Robots and Systems (IROS) 2009. IEEE/RSJ International + Conference}, + year = {2009}, + pages = {2228--2234}, + address = {St. Louis, MO}, + month = oct, + organization = {IEEE}, + publisher = {IEEE}, + doi = {10.1109/IROS.2009.5354178}, + keywords = {annealing;microactuators;microrobots;nickel compounds;shape memory + effects;springs (mechanical);NiTi spring;annealing temperatures;bioinspired + antagonistic actuation;coil actuators;discrete displacement control;enhanced-performance + inverted-spring manufacturing method;flexible actuator;force-displacement + characteristics;high energy density;manufacturing process;martensite + deformation;mesh-worm prototype;mesoscale applications;micro artificial + muscle fiber;microcoil spring;micromuscle fiber;nickel titanium;robust + actuators;scalability;shape memory alloy coiled springs;shape memory + effect;soft robotic platforms;Actuators;Geometry;Muscles;Nickel;Resilience;Robots;Robustness;Scalability;Shape + memory alloys;Springs}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@PATENT{sarma2008ons, + nationality = {US}, + number = {7765253}, + year = {2010}, + yearfiled = {2008}, + author = {Sanja Sarma and Dan W. Engels and Erik L. Nygren and Joseph Timothy + Foley and Daniel L. Brock and K. Y. Sai}, + title = {Object Name System}, + assignee = {Massachusetts Institute Of Technology}, + day = {27}, + dayfiled = {31}, + month = {July}, + monthfiled = {October}, + url = {https://www.google.com/patents/US7765253}, + owner = {foley}, + timestamp = {2015.09.21} +} + + +@INPROCEEDINGS{foley2008turbsim, + author = {Joseph Timothy Foley and Timothy G. Gutowski}, + title = {TurbSim: Reliability-based wind turbine simulator}, + booktitle = {IEEE International Symposium on Electronics and the Environment (ISEE), + 2008}, + year = {2008}, + pages = {1-5}, + month = may, + abstract = {Wind turbine farms are an effective generator of electricity in windy + parts of the world, with prices progressing to levels competitive + with other sources. Choosing the correct turbine for a given installation + requires significant engineering and the current trend leads towards + groups of large horizontal axis turbines. Unfortunately, large wind + turbines have to contend with large forces and other sources of failure. + With the new push to move generation farms offshore where they are + less accessible, the issue of reliability becomes more critical. + This work investigates the impact of reliability in a life-cycle + analysis simulation of a theoretical wind farm in Massachusetts based + upon reliability information from a number of academic sources. The + simulator, TurbSim, is designed with significant modularity to enable + reliability simulation of any turbine with available wind information. + Our simulation of a turbine indicated that reliability makes a small + but noticeable impact of 1.24\% in its output.}, + doi = {10.1109/ISEE.2008.4562872}, + keywords = {power generation reliability;remaining life assessment;wind power + plants;wind turbines;Massachusetts;TurbSim;generation farms;installation;large + horizontal axis turbines;life-cycle analysis simulation;reliability + simulation;reliability-based wind turbine simulator;Analytical models;Information + analysis;Investments;Large-scale systems;Power generation;Reliability + engineering;Reliability theory;Wind energy generation;Wind farms;Wind + turbines} +} + +@PHDTHESIS{foley2007phd, + author = {Joseph Timothy Foley}, + title = {Security Approaches for Radio Frequency Identification Systems}, + school = {Massachusetts Institute of Technology}, + year = {2007}, + department = {Department of Mechanical Engineering}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@TechReport{sarma2002onsbeta, + author = {Sanjay Sarma and David Brock and Joseph Timothy Foley and L. Putta and S. Ramachandran and G. Nassar}, + title = {{T}he {O}bject {N}ame {S}ervice: {V}ersion 0.5 (beta),}, + institution = {MIT Auto-ID Center}, + year = {2002}, + type = {Technical Report}, + number = {MIT-AUTOID-TM-004}, + address = {Cambridge, Massachusetts, USA}, + month = {February}, + owner = {foley}, + timestamp = {2016-03-09} +} + + + +@MASTERSTHESIS{foley1999msc, + author = {Joseph Timothy Foley}, + title = {An Infrastructure for Electromechanical Appliances on the Internet}, + school = {Massachusetts Institute of Technology}, + year = {1999}, + month = {June}, + department = {Department of Computer Science and Electrical Engineering}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@MISC{foley1998aup, + author = {Joseph Timothy Foley}, + title = {Low-cost Pine-car Derby Timing System}, + howpublished = {Department of Computer Science and Electrical Engineering}, + month = {June}, + year = {1998}, + owner = {foley}, + school = {Massachusetts Institute of Technology}, + timestamp = {2015.09.21} +} + +@TECHREPORT{epc2005onsspec1, + author = {EPCglobal}, + title = {Object Naming Service (ONS) Version 1.0 Specification.}, + institution = {EPCglobal, USA}, + year = {2005}, + number = {1.0}, + month = {October}, + note = {Named contributor.}, + day = {4}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@CONFERENCE{engels2001networkedworld, + author = {Dan Engels and Joseph Timothy Foley and Jim Waldrop and Sanjay Sarma + and David Brock}, + title = {The Networked Physical World: An Automated Identification Architecture}, + booktitle = {IEEE Workshop on Internet Applications (WIAPP) 2001}, + year = {2001}, + pages = {76--77}, + owner = {foley}, + timestamp = {2015.09.21} +} + +@MISC{dahmus2007usindustrialenergyuse, + author = {Jeffrey Dahmus and Alissa Jones and Lynette Cheah and Matthew Branham + and Joseph Foley and Young Song}, + title = {{U.S.} Industrial Energy Use: Making Less with More?}, + howpublished = {MIT Energy Conference Poster Session}, + month = {March}, + year = 2007, + day = 9, + owner = {foley}, + timestamp = {2015.09.21} +} + +@INPROCEEDINGS{bragason2015parachuterelease, + author = {Gu\dh{}mundur Bragason and Steinar Þorsteinsson and R\'{i}tur Ingi Karlsson + and Nico Grosse and Joseph Timothy Foley}, + title = {Heat-activated Parachute Release System}, + booktitle = {Proceedings of College International Pour La Recherche en Productique + (CIRP), 9th International Conference on {A}xiomatic {D}esign (ICAD)}, + crossref = {icad2015}, + OPTyear = {2015}, + OPTvolume = {34}, + pages = {131--136}, + OPTaddress = {Florence, Italy}, + OPTmonth = {September}, + doi = {10.1016/j.procir.2015.07.061}, + owner = {foley}, + timestamp = {2015.09.21}, + url = {http://www.sciencedirect.com/science/article/pii/S2212827115008203}, +} + +%% Collections must be included after diff --git a/references.tex b/references.tex new file mode 100644 index 0000000..b8fb532 --- /dev/null +++ b/references.tex @@ -0,0 +1,23 @@ +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} % allows UTF encoding, needed for Icelandic characters +% biblatex/biber citations +%% We set when etal is used in maxnames=XX +\usepackage[backend=biber, bibencoding=utf8, style=ieee, maxnames=99]{biblatex} +%\usepackage[backend=biber, bibencoding=utf8, style=apa]{biblatex} +%\usepackage[american]{babel} +%\DeclareLanguageMapping{american}{american-apa} % after biblatex and babel +\usepackage[margin=20mm]{geometry} + +\addbibresource{references.bib} + +\begin{document} +\nocite{*} + +\printbibliography{} +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/resume/dist-resume.sh b/resume/dist-resume.sh new file mode 100644 index 0000000..a39ee75 --- /dev/null +++ b/resume/dist-resume.sh @@ -0,0 +1,7 @@ +#!/bin/bash +DISTDIR=/mit/foley/www/ +FILES="resume-full resume-mech resume-software" +for file in ${FILES}; +do pdflatex ${file}.tex && cp ${file}.pdf ${DISTDIR}; +done + diff --git a/resume/foleyresume.cls b/resume/foleyresume.cls new file mode 100644 index 0000000..07bec71 --- /dev/null +++ b/resume/foleyresume.cls @@ -0,0 +1,312 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{foleyresume}[2007/06/19] + +%\def\mystretch{1.5} % Double spacing hack +% We base our version on the default resume format +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{res}} +\ProcessOptions +\LoadClass{res} +\usepackage[margin=0.75in,right=1.25in]{geometry} +\usepackage[T1]{fontenc} +\usepackage{ae,aecompl} +\begin{format} +\title{l}\employer{r}\\ +\dates{l}\location{r}\\ +\body\\ +\end{format} + +\newcommand{\resinfo}{ +\begin{tabular}{l} +{\Large \textbf {Dr. Joseph T. Foley}}\\ +11 Ticklefancy Lane\\ +Salem, NH 03079\\ +\end{tabular} +\begin{tabular}{l} +H\'omlasl\'o\dh\ 4\\ +101 Reykjav\'{\i}k\\ +Iceland\\ +\end{tabular}\hfill +\begin{tabular}{ll} +US: &(617)395-0383 \\ +Iceland: &+354-661-7658\\ +\texttt{Email:} &\texttt{foley@objid.net}\\ +\end{tabular} +} + +\newcommand{\respromech}{ +\section{Professional} Mechanical Design, Radio Frequency +Identification, Manufacturing Design and Process Control, Computer +Automation, Distributed System Design, Network Administration and +Security, Database Applications. +} +\newcommand{\resprosoft}{ +\section{Professional} Computer Automation, Distributed +System Design, Network Administration and Security, High-Availability/Backup +Systems, Database Applications. +} + +\newcommand{\resproall}{ +\section{Professional} Mechanical Design, Radio Frequency +Identification, Manufacturing Design and Process Control, Computer +Automation, Distributed System Design, Network Administration and +Security, Distributed System Design, High-Availability and Backup Systems, +Database Applications. +} + +\newcommand{\resintmech}{ +\section{Interests} Robotics, Automatic Identification and Information +Collection, Wireless Communications, Computer-CAM/Instrument +Interfaces, Digital Design, Home Automation. +} +\newcommand{\resintsoft}{ +\section{Interests} Automatic Identification and Information +Collection, Wireless Communications, Digital Design, Home Automation, +VLSI Design. +} +\newcommand{\resintall}{ +\section{Interests} Robotics, Automatic Identification and Information +Collection, Wireless Communications, Computer Instrument +Interfaces, Digital Design, Home Automation. +} + +\newcommand{\resedu}{ +\section{Education} +Bachelor in Computer Science and Electrical Engineering (MIT, June +1999)\\ +\hspace*{0.25in}{\em ``Low-cost Automated Pine-Car Derby System''}\\ +Master of Engineering in Computer Science and Electrical +Engineering (MIT, June 1999)\\ +\hspace*{0.25in}{\em ``An Infrastructure for Electromechanical Appliances on the Internet''} US Patent 7,765,253\\ +MIT Doctorate of Philosophy in +Mechanical Engineering (MIT, February 2007)\\ +\hspace*{0.25in}{\em ``Security Approaches for Radio Frequency Identification Systems''} +} + +\newcommand{\resexpcurrent}{ +\title{Consultant} +\employer{\bf Foley Consulting} +\dates{\it September 2010 -- Current} +\location{Salem, NH USA \& Reykjavik, Iceland} +\begin{position} +Finite Element Analysis of advanced structural composites used to +develop a high speed quadraped robot in Professor Sangbae Kim's Bioinspired Robotics Laboritory. +\end{position}} + +\newcommand{\resexplast}{\resirobot} +\newcommand{\resirobot}{ +\title{Senior Research Scientist, Government \& Industrial Research Division} +\employer{\bf iRobot Corporation} +\dates{\it November 2007 -- August 2010} +\location{Bedford, MA} + +\begin{position} +Creating and implementing mechanical designs for robot platforms. +Tech lead for DARPA DSO ChemBots project. Software developer on DARPA NOSTRA project. +\end{position} +} + +\newcommand{\resexppostdoc}{ +\title{Post-Doctoral Associate} +\employer{\bf Massachusetts Institute of Technology} +\dates{\it October 2006 -- October 2007} +\location{Cambridge, MA} + +\begin{position} +Analyst for energy efficiency in industrial applications. Building +models for energy calculations and product design to reduce energy +utilization and generation of pollutants. +\end{position} +} + +\newcommand{\resexpphd}{ +\title{Graduate Research Assistant} +\employer{\bf Massachusetts Institute of Technology} +\dates{\it September 1999 -- October 2006} +\location{Cambridge, MA} + +\begin{position} +Researcher for Professor Sanjay Sarma in the MIT AutoID Labs.\\ +Designed and implemented demonstrations of AutoID technology in Cambridge, UK Exposition.\\ +Focused on research into Internet-enabled RFID Privacy and Security. +\end{position} +} + + +% Boss: Simson Garfinkel +\newcommand{\resexpharv}{ +\title{Teaching Faculty} +\employer{\bf Harvard Extension School} \location{Cambridge, MA} +\dates{\it September 2005 -- January 2006} +\begin{position} +Teaching Assistant for CSCI-E-170: Computer Security and Privacy. +\end{position} +} + +% Boss: Yu-Feng Wei +\newcommand{\resexpuff}{ +\title{Consultant} +\employer{\bf Uffinity} \location{Cambridge, MA} +\dates{\it January 2004 -- May 2004} +\begin{position} +Designed prototype of website for Uffinity: a University/career based +social-networking website. +\end{position} +} + +% Boss: Cochran +\newcommand{\resexpinsight}{ +\title{Consultant} +\employer{\bf Insight + Technologies} \location{Londonderry, NH} +\dates{\it February 2000 -- June 2001} +\begin{position} +Consulted on manufacturing M3/M5 Tactical Illuminator as part +of graduate manufacturing coursework (2.810). Focus was on increasing +part quality and throughput using Japanese manufacturing techniques. +\end{position} +} + +% Boss: Ron Peacetree +\newcommand{\resexpemode}{ +\title{Software Developer and Network Administrator} +\employer{\bf Emode, Inc.} \location{Cambridge, MA} +\dates{\it June 1999 -- Sept 1999} +\begin{position} +Developed world's largest fully-indexed Quote Database.\\ +Developed and installed network security policies and equipment. +\end{position} +} + +% Boss: Jack E. Greene +\newcommand{\resexpbfg}{ +\title{Lead Mechanical Designer} +\employer{\bf Brute Force Games}\location{Cambridge, MA} +\dates{\it July 1998 -- September 1998} +\begin{position} +Designed full immersion game simulator mechanical platform leveraging +MIT Aero-Astro vection research. +\end{position} +} + +% Boss: Tom Coppetto (NetOps) +% Boss: Bob Mahoney (Net Security) +\newcommand{\resexpnetops}{ +\title{Network Programmer} +\employer{\bf MIT Information Systems} \location{Cambridge, MA} +\dates{\it June 1996 -- September 2000} +\begin{position} +Development of network event paging system (Network Operations). +Implemented intrusion and packet-sniffer detection (Network +Security). Created DNS configuration parser/checker. +\end{position} +} + +% Boss: Alica Allen +% Boss: Thomas Oliver +\newcommand{\resexprcc}{ +\title{Residential Computing Consultant} +\employer{\bf MIT Information Systems} \location{Cambridge, MA} +\dates{\it September 1995 -- September 2000} +\begin{position} +Assisted students with network connectivity and access to computing +resources in dormitories. +\end{position} +} + +% Boss: ??? +\newcommand{\resexpesg}{ +\title{Computer Cluster Sysadmin} +\employer{\bf MIT Experimental Study Group} \location{Cambridge, MA} +\dates{\it September 1995 -- June 1995} +\begin{position} +Maintained and upgraded Athena cluster hardware: Solaris, Irix, AIX, and Linux. +Maintained computer teaching services, backups, and printers. +\end{position} +} + +\newcommand{\resexpcompstruct}{ +\title{Lab Assistant} +\employer{\bf MIT Department of Electrical Engineering and Computer Science} \location{Cambridge, MA} +\dates{\it January 1996 -- May 1997} +\begin{position} +6.004 (Computation Structures) in the MIT EECS Department. Instructed + students how to build a DEC Beta architecture from LS logic and + assisted with debugging. +\end{position} +} +\newcommand{\resexpinvent}{ +\title{Researcher} +\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +\dates{\it September 1995 - August 1996} +\begin{position} +The Invention Group under Professor Alex Slocum (Mech E) focused on +simple innovative ideas for existing problems. Focused on developing +a low-cost after-market shock absorber for bicycles. Also developed an +electronic Mancala game. +\end{position} +} + +\newcommand{\resexpbrooks}{ +\title{Network and Computer Administrator} +\employer{\bf Brooks Automation} \location{Lowell, MA} +\dates{\it March 1994 - August 1995} +\begin{position} +Network Installation: Analysis, Design, Upgrading/Installing.\\ +Computer Equipment Service: Software and Hardware Repair/Administration/Migration. +\end{position} +} + +\newcommand{\resexpsolar}{ +\title{Hardware Interface Programmer} +\employer{\bf University of Massachusetts, Lowell} \location{Lowell, +MA} \dates{\it October 1993 - February 1994} +\begin{position} +Programming HP-GPIB interface to network the Solar Cell Research Lab's +instruments (microammeter, multimeter, etc.) together. This was used +to collect, organize and analyze solar cell performance data. +\end{position} +} + +\newcommand{\resbackground}{ +\section{Background} High school: Saludatorian 1994, Salem High +School, NH.; Rensselaer Medalist, Bausch and Lomb Scholar, Tandy +Technology Scholar, Dollars for Scholars and Admiral C. Byrd +Scholarship winner. +%Director of Publicity for MIT's Lecture Series Committee. +} + +\newcommand{\reshobby}{ +\section{Hobbies} +Martial Arts, Firearms (MA State Safety Instructor, NRA Certified Coach), +Archery (NAA Level 2 Instructor), SCUBA (Rescue Diver), Live Action Roleplaying, +Eastern Square Dancing(C1), MA EMT-B, Photography, Music(Cello, Piano, +Fiddle), Public Service (APO), HAM +Radio (Tech Plus), Locksmithing \& Security +} + +\newcommand{\resexpshort}{ +\section{Skills} +{\em Project Management:} 8D, Total Project Control, Toyoda +Manufacturing Methods\\ +{\em Computer languages:} C(++), Perl, Python, PHP, Java, XML, lexx, SQL, PICASM\\ +{\em UN\_X/Media development tools:} HTML/CGI, \LaTeX, PostScript, sh, CVS/Subversion, Kerberos\\ +{\em Mech E Tools:} Matlab, Maple, ProEngineer, Windchill, SolidWorks, +Rapid Prototyping, CNC Machining\\ +{\em Digital System Design:} Logic Analyzer, Serial Protocol Analyzer, Controller Simulators +} + +\newcommand{\resexpall}{ +\section{Skills} +{\em Project Management:} 8D, Total Project Control, Toyoda +Manufacturing Methods\\ +{\em Computer languages:} C(++), Perl, Python, PHP, Java, XML, lexx, SQL, PICASM\\ +{\em UN\_X/Media development tools:} HTML/CGI, \LaTeX, PostScript, sh, CVS/Subversion, Kerberos\\ +{\em Technician:} IPC Class 2 Soldering, Locksmithing, Telephone/Network Cable Wiring\\ +{\em Mech E Tools:} Matlab, Maple, ProEngineer, Windchill, SolidWorks, +CFDesigner, Rapid Prototyping, CNC Machining\\ +{\em Digital System Design:} Logic Analyzer, Serial Protocol Analyzer, Controller Simulators +} + + +%\newcommand{\resexp}{ + diff --git a/resume/oldresume.tex b/resume/oldresume.tex new file mode 100644 index 0000000..4e49ed7 --- /dev/null +++ b/resume/oldresume.tex @@ -0,0 +1,75 @@ +\documentstyle[simplemargins,10pt,resume]{article} +\settopmargin{1in} +\begin{document} +\name{JOSEPH T. FOLEY} +\addresses +{{\it School/Mailing Address} \\ +(valid through 5/2/95) \\ +201C Nichols \\ +Senior House \\ +3 Ames St. \\ +Cambridge, MA 02139 \\ +(617)225-6150 \\ +foley@mit.edu, foley@nowhere.mit.edu} +{{\it Home Address} \\ +3 Salem St. \\ +Salem, NH 03079 \\ +(603) 893-1033\\} + +\begin{llist} +\sectiontitle{Professional} +Network Administration: Novell, Lantastic, TCP-IP. +\sectiontitle{Interests} +Computer Multimedia Simulations, Network Protocols, Linux, Computer-CAM/Instrument Interfaces. + +\sectiontitle{Education} +\employer{\bf Massachusetts Institute of Technology} \location{\it Cambridge, MA} +Currently a Sophomore, majoring in 6.2 +Following the Masters of Engineering course. + +\sectiontitle{Experience} +\employer{\bf Brooks Automation} \location{\it Lowell, MA} +\dates{\it March 1994 - August 1995} +Assorted network installation and upgrading, as well as design and +implementation of a whole new network for when the company relocates. +Also installed a remote Troubleshooting database and FaxonDemand service. +General computer servicing/troubleshooting/installation/ +upgrades. +The most recent consultation involved a complete Novell/TCP-IP network overhaul, almost finished at present. + +\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +\dates{\it October 1994 - present} +Operating/fixing an OMAX abrasivejet system to make assorted parts/artwork. +Designing new and innovative tools for working in a variety of environments. +Also a subset of the Invention Group at MIT. +A work-study/UROP under Alex Slocum + +\employer{\bf University of Massachusetts, Lowell} \location{Lowell, MA} +\dates{\it October 1993 - February 1994} +Programming using the HP-GPIB interface to network some of the Solar Cell +Research Lab's instruments (microammeter, multimeter, etc.). The program +was used to collect/organize data more efficiently as well as port it +to an easy to analyze form. + + +\employer{\bf Bull, Inc.} \location{Lawrence, MA} +\dates{\it January 1991 - March 1992} +Created a front end for a Barcoding Inventory System currently in use at Bull, Inc. + +\sectiontitle{Background} +High school: Saludatorian, 1994, Salem High School, Salem, NH.; also chosen +as Rensselaer Medalist, Bausch and Lomb Scholar, Tandy Technology +Scholar, and Admiral C. Byrd Scholarship winner. Currently active in +strategy/simulation gaming and Alpha Phi Omega, the coed service fraternity. + +\parskip = 0pt +\sectiontitle{Skills} +Computer languages: C, C++(currently learning), PASCAL, SCHEME/LISP, Assembly and Machine Code (esp. of a 6502), BASIC. + +UN\_X/Media development tools: PERL, Latex, HTML, LaTeX, shell scripts +ThingWorld +Certified for Class 2 Soldering +Simple Analog Circuit Design, Troubleshooting +Knowledge of use of oscilloscope, curve-tracer, serial-line analyzer, Fox and Hound, etc. +\end{llist} +\end{document} diff --git a/resume/res.cls b/resume/res.cls new file mode 100644 index 0000000..e033d4a --- /dev/null +++ b/resume/res.cls @@ -0,0 +1,803 @@ +% RESUME DOCUMENT STYLE -- Released 23 Nov 1989 +% for LaTeX version 2.09 +% Copyright (C) 1988,1989 by Michael DeCorte + +\typeout{Document Style `res' <26 Sep 89>.} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% res.sty +% +% \documentstyle{res} +% +% Copyright (c) 1988 by Michael DeCorte +% Permission to copy all or part of this work is granted, provided +% that the copies are not made or distributed for resale, and that +% the copyright notice and this notice are retained. +% +% THIS WORK IS PROVIDED ON AN "AS IS" BASIS. THE AUTHOR PROVIDES NO +% WARRANTY WHATSOEVER, EITHER EXPRESS OR IMPLIED, REGARDING THE WORK, +% INCLUDING WARRANTIES WITH RESPECT TO ITS MERCHANTABILITY OR FITNESS +% FOR ANY PARTICULAR PURPOSE. +% +% If you make any improvements, I'd like to hear about them. +% +% Michael DeCorte +% P.O. Box 652 +% Potsdam NY 13676 +% mrd@sun.soe.clarkson.edu +% mrd@clutx.bitnet +% +% Changes for LaTeX2e -- Venkat Krishnamurthy (Aug 7, 2001) +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% You can have multiple style options the legal options ones are: +% +% centered the name and address are centered at the top of the +% page (default) +% +% line the name is the left with a horizontal line then +% the address to the right +% +% overlapped the section titles overlap the body text (default) +% +% margin the section titles are to the left of the body text +% +% 11pt use 11 point fonts instead of 10 point fonts +% +% 12pt use 12 point fonts instead of 10 point fonts +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Commands +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \Resume prints the word resume but typeset nicely +% +% \newsectionwidth{dimen} +% defines the amount of space the labels extend +% into the left margin. +% DO NOT TRY to change any of the dimensions +% yourself. You will probably confuse the style file. +% +% \name{text} defines your name +% +% \address{text} +% defines your address +% this can be called twice if you have two addresses +% use \\'s to indicate where either line breaks or +% comas should go +% +% \opening this prints your name and address at that spot +% this is not normally needed, as \begin{resume} +% does this but is provided just in case you need +% to do something odd +% +% \begin{resume} ... \end{resume} +% all of the resume should go inside of this +% environment +% +% \section{text} +% This prints 'text' in the left hand margin. +% Its exact placement depends on what the style +% options has been set to. (overlapped or margin) +% You should use \\ to start a new line. If the +% style option is margin, the \\ is converted +% to a space. +% To use this in any of the list environments, put +% the \section after the \item[] but before the +% text. +% Eg. +% \begin{itemize} +% \item\section{text} +% text +% \end{itemize} +% +% \begin{ncolumn}{n} ... \end{ncolumn} +% creates a tabular environment with n equally +% spaced columns. Separate columns by & and +% end them with \\ +% +% \begin{position} ... \end{position} +% this is used to print a job description. There should +% be only one job description in it. Information +% related to the job (such as title, dates...) will +% be printed. +% +% \begin{format} ... \end{format} +% used to change the default format for the position +% environment. Within it the recognized commands are: +% \title{option} +% \employer{option} +% \location{option} +% \dates{option} +% \body +% \\ +% where option is one of l,r,c standing for left, right, center. +% The format will eventually be used to make several +% tabular environments and you are defining the number of columns +% and the placement of text within the columns of the tabulars. +% Each row is terminated by a \\. Any number of options can +% be on a line, they will each be set in their own columns. +% Any of the options except \body may be left out. +% +% Eg. +% \begin{format} +% \title{l}\employer{r}\\ +% \dates{r}\\ +% \body\\ +% \location{l}\\ +% \end{format} +% +% In this example the title and employer information +% are set in 2 columns left justified and right justified +% respectively. Then the date is set right justified. +% Then the body is set. Then the location is set left +% justified. +% +% \employer{text} +% \title{text} +% \dates{text} +% \location{text} +% declare text for the next invocation of the position +% environment +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Glue +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% sectionskip the amount of horizontal before a section +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Dimensions +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% sectionwidth the amount that the section titles go in the +% left margin +% +% resumewidth the width of the total resume from the left +% margin to the right. Don't use textwidth +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Definitions +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% sectionfont the font used to print section titles +% use \renewcommand to change it +% +% namefont the font used to print your name +% use \renewcommand to change it +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% THINGS TO DO +% +% add lm,rm options to format style to allow things to be placed +% in the left or right margin respectivly +% +% add capability so that \body doesn't have to be proceeded (followed) +% by a \\ allowing part of the description (eg. location) to be the +% first (last) thing of the body +% +% clean up the list building procedures +% +% write docs to tell people how to use this + +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{res}[2000/05/19 v1.4b Resume class] + +%\DeclareOption{11pt}{\renewcommand\@ptsize{1}} +%\DeclareOption{12pt}{\renewcommand\@ptsize{2}} + +\PassOptionsToClass{11pt,12pt}{article} +\LoadClassWithOptions{article} + +\newif\if@line +\newif\if@margin + +\DeclareOption{line}{\@linetrue} +\DeclareOption{centered}{\@linefalse} + +\DeclareOption{margin}{\@margintrue} +\DeclareOption{overlapped}{\@marginfalse} + +\ExecuteOptions{overlapped,centered} +\ProcessOptions\relax + +\nofiles % resume's don't need .aux files + + +\newtoks\tabular@text % holds the current list being processed +\newtoks\tabular@head % holds the head tabular list +\newtoks\tabular@tail % holds the tail tabular list +\newtoks\@ta % used by \@append +\newtoks\undefined@token\undefined@token={} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% prints a centered name with the address centered +% or the two address on opposite sides of the page +% +\def\@printcentername{\begingroup + % print the name centered + \leavevmode\hbox to \textwidth{\hfil\@tablebox{\namefont\@name}\hfil}\par + \@ifundefined{@addressone}{% + % do nothing + }{% + \@ifundefined{@addresstwo}{ + % only one address + \leavevmode\hbox to \textwidth{\hfil\@tablebox{\@addressone}\hfil}\par + }{ + % two addresses + \leavevmode\hbox to \textwidth{\@tablebox{\@addressone}\hfil + \@tablebox{\@addresstwo}}\par + }% + }% +\endgroup} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% this is used to print the name and address at the top of +% the page with a hline in between +% +\def\namefont{\large\bf} +\def\@linename{\begingroup + \def\\{, } + {\namefont\@name} + \vskip 2pt + \fullline + \vskip 2pt + % where do you live? + \@ifundefined{@addressone}{% + % do nothing + }{% + \leavevmode\hbox to \textwidth + {\hfill\vbox{\hbox{\@addressone} + \hbox{\@addresstwo} + }% + }\par + } +\endgroup} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% HEADINGS: +% There are two types of headings: +% 1) one with the name centered and the address centered or +% in the left and right side if there are two address +% 2) one where the name is in the upper left corner +% the a line accross the paper +% then the address all on one line in the right corner +% the second address will be directly below the first if defined +% +\let\print@name\relax +\def\ds@centered{\ifx\print@name\relax\let\print@name\@printcentername\fi} +\def\ds@line{\ifx\print@name\relax\let\print@name\@linename\fi} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Use this to set the sectionwidth. +% It adjust the width of the text as well as the hoffset +% You probably shouldn't touch any of the size paramaters +% unless you really understand all of this but it is not +% hard. Either way, it can only be executed once +% +\def\sectionfont{\bf} +\newdimen\sectionwidth +\newskip\sectionskip +\newdimen\resumewidth + +\resumewidth=6.5in +\sectionskip=3.5ex plus 1ex minus -.2ex % values stolen from LaTeX + +\def\newsectionwidth#1{% + \sectionwidth=#1 + \textwidth=\resumewidth + \advance\textwidth-\sectionwidth + \hsize=\textwidth + \hoffset=\sectionwidth +} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This is for sectiontitles that are entirely in the left margin. +% multiline sectiontitles are permited and will be broken by +% \TeX{} to fit into a box \verb|\sectionwidth| wide. It is advised +% that \verb|\\| be used to break the lines by hand as \TeX{} will +% probably not do what you want. +% +% When using this with {\tt tabbing} and {\tt list} (or anything +% that is made out of {\tt list}) put the \section's inside of +% the \verb|\begin{}| and the \verb|\item|Eg. +% \begin{verbatim} +% \begin{trivlist} +% \item[] +% \section{foo} +% text +% \end{trivlist} +% \end{verbatim} +% +\def\boxed@sectiontitle#1{% + % this macro may be called in a tabular. Special code must be written + % to accomodate this. In LaTeX, a tabular is made out of hboxes. + % TeX never goes into horizontal mode because of this; it only + % gets into vertical mode and restricted horizontal mode. Certain + % indenting problems must be handled because of this. They + % are delt with at the end of this routine. + % It is also necessary to close the hbox that was created before + % the \section and create a new one when this macro has ended. + % This macro therefore simulates a \kill, so that any text before + % the \section not be printed. The proper use is therefore + % ... + % text\\ + % \section{foo} + % more text\\ + % ... + \ifx\\\@tabcr % is this in a tabular? (this *should* work but is a cludge) + \@stopfield % the is the first part of a \kill + \else + \@@par % This will end the previous paragraph if needed and + % go into vertical mode. If this was already in + % vertical mode then the \par does nothing. + + \fi + \begingroup + \everypar={}% + \def\par{\@@par}% + \let\\=\@normalcr + \addpenalty{\@secpenalty} % this would be a good place for a page break + % \@secpenalty is what LaTeX uses before its + % section's. It happens to be -300 + \addvspace{\sectionskip} % put in a bit of glue + % The following hbox will be contributed to the page list without going + % into horizontal mode. Therefore, any \parindent's, \parshape's, \leftskip + % will be ignored but \hoffset's are not. The result is that the box will + % only by \hoffset. This is what I want + \hbox to 0pt{% + \hss % this is an llap. In other words, this glue + % will shrink by the width of the stuff in the vbox + % (\sectionwidth) into the left margin and then + % insert the contents of the vbox. + \vtop to 0pt{% make a 0pt height paragraph, with the baseline at the + % lined up with the baseline of the first box in the list + \leftskip=0pt + \hsize=\sectionwidth + \textwidth=\sectionwidth + \raggedright % you don't want this filled out to the right margin + \sectionfont + #1\vss % Go into horizontal mode; do the paragraph; + % go into vertical mode; add some negative glue + % to give a box of 0pt height and depth + }% + }% + \addpenalty{-\@secpenalty} % this would be a bad place for a page break + \vskip-\baselineskip % when the next box is processed, baselineskip glue + % glue will be added (the box has no depth because of + % the \vss; therefore, we don't have to worry about + % \lineskiplimit). This -\baselineskip glue + % is to undo this. \nointerlineskip doesn't + % work because the baseline of this line would be lined + % up with the top of the top of the next box. We + % want the baselines lined up. + % + % It may have been possible to do this by forcing the + % baseline of this box to be the top of the box but + % then the interline skip between this box and the + % previous box would be off as the baselines of the + % this box (the one that being made above) and the + % previous line would be separated by \baselineskip + % (probably, it may be separted by the depth of the + % previous box + \lineskip) but as the baseline of + % this box has been moved to the top, the box's would + % separted by to much glue. The exact amount being + % the height of this box. + \endgroup + \ifx\\\@tabcr % is this in a tabular? (this *should* work but is a cludge) + % this is the second part of the \kill; it starts the next tabbing line + % Because this routine will never get into paragraph mode when used in + % tabbing the \parskip that is discussed below will never be inserted. + % Therefore it should not be negated as done below. + \@startline + \ignorespaces + \else + \vskip-\parskip % The next thing to be contributed will be a paragraph. + % Right before being contributed though a \vskip\parskip + % will be inserted. This is to negate it. + % + % I do consider this to be a bit of a cludge but + % I can not find a way to write \unskipfutureskip + % or a way to make TeX think that nothing has + % been contributed to the page list. + \fi +} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This is for sectiontitles that are entirely above the section text +% +\def\unboxed@sectiontitle#1{% + \ifx\\\@tabcr % see boxed@sectiontitle for explation + \@stopfield + \else + \@@par + \fi + \begingroup + \everypar={}% + \def\par{\@@par}% + \def\\{ } + \addpenalty{\@secpenalty} + \addvspace{\sectionskip} + \hbox to 0pt{\hss\hbox to \sectionwidth{\sectionfont#1\hss}} + \addpenalty{-\@secpenalty} % this would be a bad place for a page break + \endgroup + \ifx\\\@tabcr % see boxed@sectiontitle for explation + \@startline + \else + \vskip-\parskip + \fi + \ignorespaces +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% There are two types of section headings: +% 1) the section heading is all on one line and directly +% below it, is the body of the text +% 2) the section heading is entirely in the left margin +% (possibly taking multiple lines) with the body of +% the text next to it +% +\let\@@section\relax +\def\ds@overlapped{\ifx\@@section\relax\newsectionwidth{0.5in}\let + \@@section\unboxed@sectiontitle\fi} +\def\ds@margin{\ifx\@@section\relax\newsectionwidth{1.3in}\let + \@@section\boxed@sectiontitle\fi} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% DEFAULTS: (some of them) +% +% centered name +% overlapped section titles +% +% format is: +% title employer +% location dates +% body +% with everything in the left of its column + +%\input article.sty + +\if@line\ds@line\else\ds@centered\fi +\if@margin\ds@margin\else\ds@overlapped\fi + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% typeset resume all nice and pretty +% +\def\Resume{{R\'{e}sum\'{e}}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% makes a line of width \textwidth starting at -\hoffset +% +\def\fullline{ % hrules only listen to \hoffset + \nointerlineskip % so I have this code + \moveleft\hoffset\vbox{\hrule width\textwidth} + \nointerlineskip +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% create a multiline box. +% +\def\@tablebox#1{\begin{tabular}[t]{@{}l@{\extracolsep{\fill}}}#1\end{tabular}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% use this to define your name +% +\def\name#1{\def\@name{#1}} + +\def\@name{} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% use this to define your address, this may be called more than once. +% +\let\@addressone\relax +\let\@addresstwo\relax + +\def\address#1{ + \@ifundefined{@addressone}{\def\@addressone{#1}}{\def\@addresstwo{#1}}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% if you want to print your name and address is a slightly +% different format than sugessted, then this can be used +% to place it exactly where you want +% +\def\opening{\def\@opening{} + \begingroup + \leftskip=-\hoffset % I use leftskip to move things to the left as + \advance\textwidth\hoffset % changing hoffset doesn't work. But this + \hsize=\textwidth % doesn't really work as hboxes are rules + % are unaffeted + \let\par=\@@par + \parindent=0pt + \parskip=0pt + \print@name + \endgroup +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% all of the resume goes in the resume environment +% +\newenvironment{resume}{\begingroup + \@ifundefined{@opening}{\opening}{} +}{\endgroup} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% gives you a tabular environment with n equally spaced columns +% \begin{ncolumn}{#} ... \end{ncolumn} +% +% The p option of LaTeX is broken in all but the newest verion +% of latex.tex, this is how to fix it +% +\def\@endpbox{\par\egroup\hfil} +\let\@@endpbox=\@endpbox + +\newdimen\@columnwidth % the width of each column equal to +\def\ncolumn#1{% + % \@columnwidth = \textwidth / #1 + \@columnwidth=\textwidth \divide\@columnwidth by #1 + \begin{tabular*}{\textwidth}[t]% + {*{#1}{@{}p{\@columnwidth}@{\extracolsep{\fill}}}} +} + +\def\endncolumn{\end{tabular*}} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \employer{text} defines employer to be text +% \location{text} defines location to be text +% \dates{text} defines dates to be text +% \title{text} defines title to be text +% \body +% + +\def\employer#1{\def\@employer{\print@employer{#1}}} +\def\location#1{\def\@location{\print@location{#1}}} +\def\dates#1{\def\@dates{\print@dates{#1}}} +\def\title#1{\def\@title{\print@title{#1}}} + +\let\l@justify\raggedright +\let\r@justify\raggedleft +\let\c@justify\centering + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \@format{name}{justify} +% will define \print@#1 to print it's one argument +% justified according to #2 which can be +% l = left +% r = right +% c = center +% +% eg. +% \@format{employer}{c} +% is the same as \def\print@employer#1{{\centering #1\par}} +% +\def\@format#1#2{% + \expandafter\gdef\csname print@#1\endcsname##1{% + {\csname#2@justify\endcsname##1\par}} +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% this is used to define how the position environment should +% formated. +% +% \begin{format} positioning text \end{format} +% where positioning text may be +% \employer{pos} +% \location{pos} +% \dates{pos} +% \title{pos} +% \body (for the body of the position environment) +% where pos is +% l for left +% r for right +% c for center +% use \\ to break the line +% you don't have to use all of the options. +% on any one line, you should indicate what you want on that line +% and where it should go within its column. +% eg. +% the following prints the employer in the left with the location +% centered within that its column. It then prints the date on the +% right. Then it prints the body of the position environment. Then +% it prints the title centered within its column; as there is only +% one column here it is really just centered. +% +% \begin{format} +% \employer{l}\location{c}\\ +% \dates{r}\\ +% \body\\ +% \title{c}\\ +% \end{format} + +\newcounter{numberofcolumns} +\newenvironment{format}{% + \def\end@line@head{\append@tabular@head{tabular@text}\tabular@text={}% + \c@numberofcolumns 0} + \def\end@line@tail{\append@tabular@tail{tabular@text}\tabular@text={}% + \c@numberofcolumns 0} + \tabular@text={} + \tabular@head={} + \tabular@tail={} + \c@numberofcolumns 0 + \let\\=\end@line@head + \def\employer##1{\advance\c@numberofcolumns 1 + \@format{employer}{##1} + \append@tabular@text{employer}} + \def\location##1{\advance\c@numberofcolumns 1 + \@format{location}{##1} + \append@tabular@text{location}} + \def\dates##1{\advance\c@numberofcolumns 1 + \@format{dates}{##1} + \append@tabular@text{dates}} + \def\title##1{\advance\c@numberofcolumns 1 + \@format{title}{##1} + \append@tabular@text{title}} + \def\body{\iftoks\tabular@head\undefined@token\then + \else + \@append{\noexpand\\}\to\tabular@head + \skotfi + \let\\=\end@line@tail}}{} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%taken from page 378 of TeXbook but freely hacked +% +% appends the expansion of #1 to the token list #2 + +\def\@append#1\to#2{% + \@ta=\expandafter{#1}% + \xdef\@append@temp{\the#2\the\@ta} + \global#2=\expandafter{\@append@temp}% +} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% CHAA006%vaxb.rhbnc.ac.uk@NSS.Cs.Ucl.AC.UK +% texhax.88.078 +% is used to see if two token lists are equal +% there must be a better way +% + +\let \then = \empty +\def \iftoks #1#2\then #3\else #4\skotfi{ + \edef \1{\the #1} + \edef \2{\the #2} + \ifx \1\2\then #3\else #4\fi} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% \append@tabular@text{command} +% +% appends command to the end of \tabular@text. +% NOTE: command MUST be a command but without the \ +% Eg. \append@tabular@text{relax} +% +% used to define \tabular@text for the tabular environment +% used by append@tabular@head and append@tabular@tail +% + +\def\append@tabular@text#1{% +\iftoks\tabular@text\undefined@token\then + \global\tabular@text=\expandafter{\csname @#1\endcsname} +\else + \@append{&}\to\tabular@text + \@append{\csname @#1\endcsname}\to\tabular@text +\skotfi +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% append@tabular@head +% +% appends command to the end of \tabular@text@head +% NOTE: command MUST be a command but without the \ +% Eg. \append@tabular@head{relax} +% +% used to define \tabular@head for the tabular environment +% used by the position environment +% +\def\append@tabular@head#1{% + \ifnum\the\c@numberofcolumns=0\relax + \else + \iftoks\tabular@head\undefined@token\then + \relax + \else + \@append{\noexpand\\}\to\tabular@head + \@append{\noexpand\penalty-\@secpenalty}\to\tabular@head + \skotfi + \@append{\noexpand\begin{ncolumn}}\to\tabular@head + \@append{\expandafter{\the\c@numberofcolumns}}\to\tabular@head + \@append{\the\csname#1\endcsname}\to\tabular@head + \@append{\noexpand\end{ncolumn}}\to\tabular@head + \fi +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% append@tabular@tail +% +% appends command to the end of \tabular@text@htail +% NOTE: command MUST be a command but without the \ +% Eg. \append@tabular@tail{relax} +% +% used to define \tabular@tail for the tabular environment +% used by the position environment +% +\def\append@tabular@tail#1{% + \ifnum\the\c@numberofcolumns=0\relax + \else + \iftoks\tabular@tail\undefined@token\then + \else + \@append{\noexpand\\}\to\tabular@tail + \@append{\noexpand\penalty-\@secpenalty}\to\tabular@tail + \skotfi + \@append{\noexpand\begin{ncolumn}}\to\tabular@tail + \@append{\expandafter{\the\c@numberofcolumns}}\to\tabular@tail + \@append{\the\csname#1\endcsname}\to\tabular@tail + \@append{\noexpand\end{ncolumn}}\to\tabular@tail + \fi +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% put the actual job descriptions here +% \begin{postion} ... \end{position} +% in the ... describe the position. +% don't put the \dates \location etc in here. define them before hand +\newenvironment{position}% + {% + \begingroup + \par + \the\tabular@head +% \addpenalty{-\@secpenalty}% bad place for a page break + \penalty -\@secpenalty % bad place for a page break + \penalty 10000 + \ignorespaces + }{% + \the\tabular@tail +% \addpenalty{\@secpenalty}% good place for a page break + \penalty \@secpenalty % good place for a page break + \endgroup +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% DEFAULTS: (the rest of them) +% +% centered name +% overlapped section titles +% +% format is: +% title employer +% location dates +% body +% with everything in the left of its column + +\@secpenalty = -500 +\topmargin 0pt +\headheight 0pt +\headsep 0pt +\textheight 9in +\parindent 0pt +\topmargin 0in +\oddsidemargin 0pt +\evensidemargin 0pt +\marginparwidth 0pt +\parindent 0pt +\parskip \baselineskip +\setcounter{secnumdepth}{0} +\def\@listI{\leftmargin\leftmargini +\topsep 0pt +\parskip 0pt +\partopsep 2pt plus 2pt +\parsep 2pt plus 2pt +\itemsep \parsep} + +\pagestyle{empty} % don't want page numbers + +\begin{format} +\title{l}\employer{r}\\ +\location{l}\dates{r}\\ +\body\\ +\end{format} + +\let\section\@@section + diff --git a/resume/resume-ccp.tex b/resume/resume-ccp.tex new file mode 100644 index 0000000..ca1ee38 --- /dev/null +++ b/resume/resume-ccp.tex @@ -0,0 +1,39 @@ +\documentclass{foleyresume} + +\begin{document} +\resinfo + +\begin{resume} +%\respromech +%\resprosoft +\resproall + +%\resintmech +%\resintsoft +\resintall + +\resedu + +\section{Experience} +\resexpcurrent +\resexplast +\resexppostdoc +\resexpphd +\resexpharv +\resexpuff +\resexpinsight +\resexpemode +\resexpbfg +\resexpnetops +\resexprcc +\resexpesg +\resexpcompstruct +\resexpinvent +\resexpbrooks +\reshobby + +\parskip = 0pt +%\resexpshort +\resexpall +\end{resume} +\end{document} diff --git a/resume/resume-full.tex b/resume/resume-full.tex new file mode 100644 index 0000000..9661592 --- /dev/null +++ b/resume/resume-full.tex @@ -0,0 +1,40 @@ +\documentclass{foleyresume} + +\begin{document} +\resinfo + +\begin{resume} +%\respromech +%\resprosoft +\resproall + +%\resintmech +%\resintsoft +\resintall + +\resedu + +\section{Experience} +\resexpcurrent +\resexplast +\resexppostdoc +\resexpphd +\resexpharv +\resexpuff +\resexpinsight +\resexpemode +\resexpbfg +\resexpnetops +\resexprcc +\resexpesg +\resexpcompstruct +\resexpinvent +\resexpbrooks +\resexpsolar +\reshobby + +\parskip = 0pt +%\resexpshort +\resexpall +\end{resume} +\end{document} diff --git a/resume/resume-garfinkle.tex b/resume/resume-garfinkle.tex new file mode 100644 index 0000000..cda973a --- /dev/null +++ b/resume/resume-garfinkle.tex @@ -0,0 +1,125 @@ +\documentclass{res} +\usepackage[margin=.75in]{geometry} + +\begin{format} +\title{l}\employer{r}\\ +\dates{r}\\ +\body\\ +\location{l}\\ +\end{format} + +\begin{document} +\name{Joseph T Foley} +\address{ +70 Amherst St, \#104.\\ +Cambridge, MA 02139\\ +\end{tabular}\hfill +\begin{tabular}{ll} +Home: &(617)225-6696 \\ +Cell: &(617)233-4590\\ +\texttt{Email:} &\texttt{foley@mit.edu}\\ +} + +\begin{resume} +\section{Professional} Mechanical Design, Computer Automation and +Control, Distributed System Design, Network Administration and +Security, Database Applications. + +%\section{Interests} Network Protocols, Linux, High Speed +%Networking, Network Security and Cryptography, Distributed File +%Systems, Backup/High Availability Systems, Computer-CAM/Instrument +%Interfaces, Robotics, Digital Design, Home Automation, VLSI Design, +%Very Large Databases. + +\section{Education: {\it Massachusetts Institute of +Technology, Cambridge, MA}} +Bachelors and Masters of Engineering in Computer Science and Electrical with minor in Mechanical Engineering as of June 1999.\\ +Currently a PhD candidate in Mechanical Engineering graduating in February 2006. + +\title{Research Assistant} +\employer{\bf Massachusetts Institute of Technology} +\dates{\it January 1998 - present} +\location{Cambridge, MA} + +\section{Experience} +\begin{position} +Research Assistantship for Professor Sanjay Sarma doing RFID development.\\ +Designed and Implemented demonstrations of AutoID Technology in Cambridge, UK Exposition.\\ +Currently doing research into Internet-enabled RFID Privacy and Security. +\end{position} + +\title{Student} +\employer{\bf MIT 6.857 Security and Privacy} \location{Cambridge, MA} +\dates{\it September 2004 - December 2004} +\begin{position} +Developed a secure +no-trusted-third-party dating matchup system using the Fairplay Secure +Function Evaluation system.\\ Debugged and augmented the Fairplay +library. +\end{position} + +\title{Web Architect and Security Consultant} +\employer{\bf Uffinity} \location{Cambridge, MA} +\dates{\it January 2004 - March 2004} +\begin{position} +Designed web application for connecting employers with potential +employees via social networking under contract.\\ Designed security +architecture. +\end{position} + +\title{Software Developer and Network Administrator} +\employer{\bf Emode, Inc.} \location{Cambridge, MA} +\dates{\it May 2000 - Sept 2000} +\begin{position} +Developed World's Largest Fully-Indexed Quote Database\\ +Developed and Installed Network Security Policies and Equipment +\end{position} + +\title{Various Computer Related Positions} +\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +\dates{\it September 1996 - September 2000} +\begin{position} +Residential Computing Consultant (Information Systems)\\ +MIT Network Operations Employee (Information Systems)\\ +MIT Network Security Employee (Information Systems)\\ +Redesigned Undergraduate Design Course(2.007) under Professor Alex Slocum (Mech E)\\ +6.004 (Computation Structures) Lab Assistant (MIT EECS Department) +\end{position} + +%\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +%\dates{\it January 1996 - May 1997} +%6.004 (Computation Structures) Lab Assistant (MIT EECS Department) + +%\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +%\dates{\it September 1995 - August 1996} +%The Invention Group under Alex Slocum (Mech E)0 +% +%\employer{\bf Brooks Automation} \location{Lowell, MA} +%\dates{\it March 1994 - August 1995} +%Network Installation: Analysis, Design, Upgrading/Installing\\ +%Computer Equipment Service: Software and Hardware Repair/Administration/Migration + +%\employer{\bf University of Massachusetts, Lowell} \location{Lowell, +%MA} \dates{\it October 1993 - February 1994} Programming using the +%HP-GPIB interface to network the Solar Cell Research Lab's +%instruments (microammeter, multimeter, etc.). This was used +%to collect, organize and analyze the data more efficiently. + +%\section{Background} High school: Saludatorian, 1994, Salem High +%School, Salem, NH.; also chosen as Rensselaer Medalist, Bausch and +%Lomb Scholar, Tandy Technology Scholar, and Admiral C. Byrd +%Scholarship winner. Director of Publicity for MIT's Lecture Series +%Committee. + +\parskip = 0pt +\section{Skills} +{\em Computer languages:} C(++), Perl, Java, XML, lexx, SCHEME, SQL, PICASM\\ +{\em UN\_X/Media development tools:} HTML/CGI, \LaTeX, PostScript, sh, CVS, Eclipse\\ +{\em Cryptography:} Secure Function Evaluation, Zero Knowledge Proofs, Kerberos. +%Certified for IPC Class 2 Soldering\\ +%{\em Mech E Tools:} Matlab, Maple, ProEngineer, Solidworks, Abacus, CNC Machining\\ +%{\em Digital System Design:} Logic Analyzer, Serial Protocol Analyzer, Controller Simulators +%Instruments: Oscilloscopes, Multimeters, Digital Analyzers, Serial-line Analyzers, Signal Generators +%and Inductive Receivers. +\end{resume} +\end{document} diff --git a/resume/resume-mech.tex b/resume/resume-mech.tex new file mode 100644 index 0000000..9678d66 --- /dev/null +++ b/resume/resume-mech.tex @@ -0,0 +1,39 @@ +\documentclass{foleyresume} + +\begin{document} +\resinfo + +\begin{resume} +\respromech +%\resprosoft +%\resproall + +\resintmech +%\resintsoft +%\resintall + +\resedu + +\section{Experience} +\resexpcurrent +\resexplast + +%\resexpharv +%\resexpuff +\resexpinsight +%\resexpemode +\resexpbfg +%\resexpnetops +%\resexpcompstruct +%\resexpinvent +\resexpbrooks +%\resexpsolar + +%\resbackground +%\reshobby + +\parskip = 0pt +\resexpshort +%\resexpall +\end{resume} +\end{document} diff --git a/resume/resume-software.tex b/resume/resume-software.tex new file mode 100644 index 0000000..f0cef20 --- /dev/null +++ b/resume/resume-software.tex @@ -0,0 +1,39 @@ +\documentclass{foleyresume} + +\begin{document} +\resinfo + +\begin{resume} +\respromech +%\resprosoft +%\resproall + +\resintmech +%\resintsoft +%\resintall + +\resedu + +\section{Experience} +\resexpcurrent +\resexplast + +\resexpharv +%\resexpuff +%\resexpinsight +\resexpemode +%\resexpbfg +\resexpnetops +%\resexpcompstruct +%\resexpinvent +%\resexpbrooks +%\resexpsolar + +%\resbackground +%\reshobby + +\parskip = 0pt +\resexpshort +%\resexpall +\end{resume} +\end{document} diff --git a/resume/resume-sports.tex b/resume/resume-sports.tex new file mode 100644 index 0000000..14f864a --- /dev/null +++ b/resume/resume-sports.tex @@ -0,0 +1,86 @@ +\documentstyle[simplemargins,10pt,resume]{article} +\settopmargin{.75in} +\begin{document} +\begin{tabular}{l} +{\Large \textbf {Joseph T Foley}}\\ +283 Washington St.\\ +Cambridge, MA 02139\\ +\end{tabular}\hfill +\begin{tabular}{ll} +Home: &(617)864-4739 \\ +Cell: &(617)233-4590\\ +\texttt{Email:} &\texttt{foley@mit.edu}\\ +\end{tabular} + +\begin{llist} +\sectiontitle{Accomplishments} +Varsity Member of the MIT Pistol Team (1998-2000)\\ +Placed 23rd in the NRA National Collegiate Pistol Finals (2000)\\ +Built prototype pistol light timer for MIT Pistol Range (2002)\\ +Placed 3rd in GBPL team (2002) + +\sectiontitle{Interests} NRA Bullseye Pistol, UIT Pistol Disciplines, +Air Pistol, Smallbore Rifle, High-Power Rifle, Trap Shooting, Recurve +Archery, Running, Coaching. + +\sectiontitle{Education} \employer{\bf Massachusetts Institute of +Technology} \location{Cambridge, MA} Graduated in June of 1999 with a +Bachelors and Masters of Engineering in Computer Science and Electrical +Engineering with a minor in Mechanical Engineering.\\ +Currently a PhD candidate in Mechanical Engineering estimated to complete in June 2005. + +\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +\dates{\it January 1998 - present} +Research Assistantship for Professor Sanjay Sarma (Mechanical Engineering)\\ +Branched into the Auto-ID Center(www.autoidcenter.org)\\ +Designed and Implemented Demonstrations of AutoID Technology in Cambridge, UK Exposition +Based Upon my Master's Research. + +\employer{\bf Insight Technologies} \location{Londonderry, NH} +\dates{\it February 2000 - June 2001} Consulted on Manufacturing M3/M5 +Tactical Firearm Illuminator as Part of Graduate Manufacturing Course +(2.810). + +\employer{\bf Emode, Inc.} \location{Cambridge, MA} +\dates{\it May 2000 - Sept 2000} +Software Developer and Network Administrator\\ +Developed World's Largest Fully-Indexed Quote Database\\ +Developed and Installed Network Security Policies and Equipment + +\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +\dates{\it September 1996 - September 2000} +Residential Computing Consultant (Information Systems)\\ +MIT Network Operations Employee (Information Systems)\\ +MIT Network Security Employee (Information Systems)\\ +2.007 (Introduction to Design) Teaching Assistant (MIT Mechanical Engineering) )\\ +6.004 (Computation Structures) Lab Assistant (MIT EECS) ) + + +%\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +%\dates{\it September 1995 - August 1996} +%The Invention Group under Alex Slocum (Mech E)0 +% +%\employer{\bf Brooks Automation} \location{Lowell, MA} +%\dates{\it March 1994 - August 1995} +%Network Installation: Analysis, Design, Upgrading/Installing\\ +%Computer Equipment Service: Software and Hardware Repair/Administration/Migration + +%\employer{\bf University of Massachusetts, Lowell} \location{Lowell, +%MA} \dates{\it October 1993 - February 1994} Programming using the +%HP-GPIB interface to network the Solar Cell Research Lab's +%instruments (microammeter, multimeter, etc.). This was used +%to collect, organize and analyze the data more efficiently. + +%\sectiontitle{Background} High school: Saludatorian, 1994, Salem High +%School, Salem, NH.; also chosen as Rensselaer Medalist, Bausch and +%Lomb Scholar, Tandy Technology Scholar, and Admiral C. Byrd +%Scholarship winner. Director of Publicity for MIT's Lecture Series +%Committee. + +\parskip = 0pt +\sectiontitle{Certifications:} +NAA Archery Instructor (Class 1)\\ +NRA Certified Pistol Instructor\\ +NRA Certified Pistol Coach (pending) +\end{llist} +\end{document} diff --git a/resume/resume-template.tex b/resume/resume-template.tex new file mode 100644 index 0000000..3758fa3 --- /dev/null +++ b/resume/resume-template.tex @@ -0,0 +1,39 @@ +\documentclass{foleyresume} + +\begin{document} +\resinfo + +\begin{resume} +\respromech +\resprosoft +\resproall + +\resintmech +\resintsoft +\resintall + +\resedu + +\section{Experience} +\resexplast + +\resexpharv +\resexpuff +\resexpinsight +\resexpemode +\resexpbfg +\resexpnetops +\resexprcc +\resexpcompstruct +\resexpinvent +\resexpbrooks +\resexpsolar + +\resbackground +\reshobby + +\parskip = 0pt +\resexpshort +\resexpall +\end{resume} +\end{document} diff --git a/resume/resume.cls b/resume/resume.cls new file mode 100644 index 0000000..a07d7b9 --- /dev/null +++ b/resume/resume.cls @@ -0,0 +1,145 @@ +% resume.cls +% +% Copyright 2005 Daniel Burrows +% +% You may use, modify, and redistribute this file in any way you please, so +% long as this copyright notice is maintained. + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{resume} + +\LoadClassWithOptions{article} + +% No page numbers by default. +\pagestyle{empty} + +\RequirePackage{calc} +\RequirePackage{ifthen} +\RequirePackage{url} +\RequirePackage{tabularx} +\RequirePackage{pgf} +\RequirePackage{pgfshade} +\RequirePackage{xxcolor} + +\RequirePackage{times} +\RequirePackage[T1]{fontenc} + +\RequirePackage[tmargin=1in,bmargin=1in]{geometry} + +\definecolor{rulestartcolor}{rgb}{0,0,0} +\definecolor{ruleendcolor}{rgb}{0.4,0.4,0.4} + +\newlength{\headerbuffer} +\setlength{\headerbuffer}{2pt} +\newlength{\secskip} +\setlength{\secskip}{6pt} + +\newlength{\@headerscratch} + +% Usage: \@setupshading{width}{height}{start}{end} +\newcommand{\@setupshading}[4]{% + \pgfdeclarehorizontalshading{@ruleshading}{#2}{% + color(0pt)=(#3); color(#1)=(#4)% + } +} + +\newcommand{\pgfrule}[4]{% + \begin{pgfpicture}{0pt}{0pt}{#1}{#2}% + \pgfdeclarehorizontalshading{@ruleshading}{#2}{% + color(0pt)=(#3); color(#1)=(#4)% + } + \pgfputat{\pgfxy(0,0)}{\pgfbox[left,bottom]{\pgfuseshading{@ruleshading}}} + \end{pgfpicture}% +} + +\newcommand{\lrule}[2]{\pgfrule{#1}{#2}{rulestartcolor}{ruleendcolor}} +\newcommand{\rrule}[2]{\pgfrule{#1}{#2}{ruleendcolor}{rulestartcolor}} + +\newcommand{\@authorname}{} +\newcommand{\@email}{} +\newcommand{\@streetaddress}{} +\newcommand{\@citystatezip}{} +\newcommand{\@phone}{} +\newcommand{\@webpage}{} + +\renewcommand{\author}[1]{\renewcommand{\@authorname}{#1}} +\newcommand{\email}[1]{\urldef{\@email}{\url}{<#1>}} +\newcommand{\streetaddress}[1]{\renewcommand{\@streetaddress}{#1}} +\newcommand{\citystatezip}[1]{\renewcommand{\@citystatezip}{#1}} +\newcommand{\phone}[1]{\renewcommand{\@phone}{#1}} +\newcommand{\webpage}[1]{\urldef{\@webpage}{\url}{#1}} + +\renewcommand{\maketitle}{{% + \setlength{\@headerscratch}{\linewidth*2/3}% + \noindent \lrule{\@headerscratch}{1.5pt}% + \vspace{\headerbuffer}% + \ifthenelse{\equal{\@email}{}}{% + \par\nointerlineskip\noindent\makebox[\linewidth]{\textbf{\Large{\@authorname}}}% + } {% + \par\nointerlineskip\noindent\makebox[\linewidth]{\textbf{\Large{\@authorname\ \@email}}}% + }% + \vspace{\headerbuffer}% + \par\nointerlineskip\noindent% + \hspace{\linewidth}% + \hspace{-\@headerscratch}% + \rrule{\@headerscratch}{1.5pt}% + \par\nointerlineskip\noindent% + % Typeset webpage/phone in columns if both are specified, or + % just on the LHS if only one is. + \begin{small}% + \ifthenelse{\equal{\@webpage}{}}{% + \ifthenelse{\equal{\@phone}{}}{}{\@phone\par\nointerlineskip\noindent}% + } {% + \ifthenelse{\equal{\@phone}{}}{\@webpage\par\nointerlineskip\noindent}{% + \begin{tabular*}{\linewidth}{l@{\extracolsep{\fill}}r}% + \@phone & \@webpage% + \end{tabular*}% + \par\nointerlineskip\noindent% + }% + }% + \ifthenelse{\equal{\@streetaddress}{} \and% + \equal{\@citystatezip}{}}{}{% + \ifthenelse{\equal{\@streetaddress}{} \or % + \equal{\@citystatezip}{}}{% + \ClassError{resume}{% + Only one of \protect\streetaddress and \protect\citystatezip given + }{% + You must either define both \protect\streetaddress and \protect\citystatezip, + or define neither of them. + }% + }{% +% + \begin{tabular*}{\linewidth}{l@{\extracolsep{\fill}}r}% + \@streetaddress & \@citystatezip% + \end{tabular*}% + }}% +% \ifthenelse{\equal{\@webpage}{}}{}{% +% \@webpage% +% }% + \end{small} +}} + +\renewcommand{\section}[1]{% + \goodbreak\vspace{\secskip}% + \par\nointerlineskip\noindent\textbf{\textsc{\large\makebox[\linewidth][l]{#1}}}\vspace{\headerbuffer}\par\nointerlineskip\noindent% + \lrule{\linewidth}{0.4pt}% + \vspace{\headerbuffer}\par\nointerlineskip} + +\renewcommand{\subsection}[1]{% + \goodbreak\vspace{\secskip}\par\nointerlineskip\vspace{-1em}\textbf{\flushleft{#1}:}\par% +} + +% General catch-all for either educational or job affiliation. +% +% Usage: +% \affiliation[title]{institution}{years} +\newcommand{\affiliation}[3][]{% + \goodbreak\vspace{\secskip}\par\noindent\begin{tabularx}{\linewidth}{Xr}% + {\bfseries #2} & \textit{#3}% + \ifthenelse{\equal{#1}{}}{}{% + \\ \textit{#1}% + }% + \end{tabularx}% +}% + diff --git a/resume/resume.sty b/resume/resume.sty new file mode 100644 index 0000000..e70ec0c --- /dev/null +++ b/resume/resume.sty @@ -0,0 +1,100 @@ +% resume.sty 08 Mar 89 +% style option for formatting resumes. + +% This style option is designed to work with the article document +% style of LaTeX version 2.09. Use +% \documentstyle[resume]{article} + +% Copyright (c) 1987 by Stephen Gildea +% Permission to copy all or part of this work is granted, provided +% that the copies are not made or distributed for resale, and that +% the copyright notice and this notice are retained. +% +% THIS WORK IS PROVIDED ON AN "AS IS" BASIS. THE AUTHOR PROVIDES NO +% WARRANTY WHATSOEVER, EITHER EXPRESS OR IMPLIED, REGARDING THE WORK, +% INCLUDING WARRANTIES WITH RESPECT TO ITS MERCHANTABILITY OR FITNESS +% FOR ANY PARTICULAR PURPOSE. + +% If you make any improvements, I'd like to hear about them. + +% Stephen Gildea +% MIT Earth Resources Lab +% Cambridge, Mass. 02139 +% mit-erl!gildea +% gildea@erl.mit.edu + +% 23 May 87 version 1 +% 08 Jun 88 center single \address lines +% 02 Sep 88 enhancement to \employer from Jerry Leichter +% LEICHTER-JERRY@cs.yale.edu or +% 08 Mar 89 allow \\ in \sectiontitle to make multi-line titles + +\topmargin 0pt +\headheight 0pt +\headsep 0pt +\textheight 9in +\pagestyle{empty} +\parindent 0pt +\parskip \baselineskip +\topmargin 0in +\oddsidemargin 0in +\evensidemargin 0in +\textwidth 6.5in + +\setcounter{secnumdepth}{0} + +% use this to print your name at the top of the page +\def\name#1{{\large\centering#1\\[2\baselineskip]}} + +% one address +\def\address#1{{\centering #1\par}} + +% two addresses (say, home and work). They get printed side by side +\def\addresses#1#2{\hbox to \hsize{\@tablebox{#1}\hfil\@tablebox{#2}}} + +\def\@tablebox#1{\begin{tabular}[t]{@{}l@{}}#1\end{tabular}} + +\newbox\@title + +% Most of the resume goes inside a llist environment. Within it, use +% the \sectiontitle{title} command to begin new sections. The title +% of the section is put in the left margin. The section text begins +% on the next line if the sectiontitle is too long. +\newenvironment{llist}{\begin{list}{}{\setlength + \labelwidth{1in}\setlength\leftmargin{\labelwidth}\addtolength + \leftmargin{\labelsep}\itemsep 5pt plus 2pt minus 2pt + \parsep 10pt plus 2pt minus 2pt + %% Set the depth of the title to 0 in case more than one line. + %% If the title takes more lines than the body, you lose. + \def\sectiontitle##1{\setbox\@title=\hbox{{\bf\@tablebox{##1}}}\dp\@title=0pt + \item[\copy\@title]\ifdim\wd\@title>\labelwidth + \leavevmode \\* \else \fi} + \def\makelabel##1{##1\hfill}}}{\end{list}} + +% like itemize but bullets are at the left margin +\newenvironment{items}{\begin{list}{$\bullet$} + {\setlength\labelwidth{.5em}\setlength\leftmargin{1em} + \def\makelabel##1{##1\hfill}}}{\end{list}} + +% Use the \employer and \location commands to print the names and +% cities of your employers. \employer always starts a new paragraph, +% and should be followed by \location. +% +% \employer* is like \employer but is used for additional information +% about the employer. It does NOT start a new paragraph, must +% NOT be followed by \location, and always forces a new line after itself. +\def\employer{\@ifstar{\@semployer}{\@employer}} +\def\@employer#1{\par{\sc #1}} +\def\@semployer#1{{\sc #1}\\} + +% The location is always flush right. It is moved to the next +% line if there is not room left on this one. +% See the TeXbook Chapter 14. +\def\location#1{{\unskip\nobreak\hfill\penalty50\hskip2em + \hbox{}\nobreak\hfill \hbox{#1}\finalhyphendemerits=0 \\}} + +% This prints the date flush left. +% The major shortcoming of this file: +% There needs to be an option to print the date in the left margin, +% because many people like to do it that way. +\def\dates#1{#1\\[2pt]} diff --git a/resume/resume.tex b/resume/resume.tex new file mode 100644 index 0000000..35bab00 --- /dev/null +++ b/resume/resume.tex @@ -0,0 +1,138 @@ +%\documentstyle[simplemargins,10pt,resume]{article} +%\settopmargin{.75in} +\documentclass{res} +\usepackage[margin=.75in]{geometry} + +\begin{format} +\title{l}\employer{r}\\ +\dates{r}\\ +\body\\ +\location{l}\\ +\end{format} + +\begin{document} +\begin{tabular}{l} +{\Large \textbf {Joseph T Foley}}\\ +70 Amherst St.\\ +Cambridge, MA 02142\\ +\end{tabular}\hfill +\begin{tabular}{ll} +Home: &(617)225-6696 \\ +Cell: &(617)233-4590\\ +\texttt{Email:} &\texttt{foley@mit.edu}\\ +\end{tabular} + +\begin{resume} +\section{Professional} Mechanical Design, Manufacturing Design +and Process Control, Computer Automation, Distributed +System Design, Network Administration and Security, Database +Applications. + +\section{Interests} Robotics, Network Protocols, Unix, High Speed +Networking, Network Security and Cryptography, Distributed File +Systems, Backup/High Availability Systems, Computer-CAM/Instrument +Interfaces, Digital Design, Home Automation, VLSI Design, +Very Large Databases. + +\section{Education} \employer{\bf Massachusetts Institute of +Technology} \location{Cambridge, MA} Graduated in June of 1999 with a +Bachelors and Masters of Engineering in Computer Science and +Electrical Engineering with a minor in Mechanical Engineering.\\ +Currently a PhD Research Assistant in Mechanical Engineering estimated +to complete in June 2006. + +\title{Research Assistant} +\employer{\bf Massachusetts Institute of Technology} +\dates{\it January 1998 - present} +\location{Cambridge, MA} + +\section{Experience} +\begin{position} +Researcher for Professor Sanjay Sarma (Mechanical Engineering) as part of AutoID Center\\ +Designed and Implemented Demonstrations of AutoID Technology in Cambridge, UK Exposition.\\ +Currently doing research into Internet-enabled RFID Privacy and Security. +\end{position} + +\title{Teaching Faculty} +\employer{\bf Harvard Extension School} \location{Cambridge, MA} +\dates{\it September 2005-January 2006} +\begin{position} +Teaching Assistant for CSCI-E-170: Computer Security and Privacy. +\end{position} + +\title{Consultant} +\employer{\bf Insight Technologies} \location{Londonderry, NH} +\dates{\it February 2000 - June 2001} +\begin{position} +Consulted on Manufacturing M3/M5 Tactical Illuminator as Part +of Graduate Manufacturing Course (2.810). +\end{position} + +\title{Software Developer and Network Administrator} +\employer{\bf Emode, Inc.} \location{Cambridge, MA} +\dates{\it May 2000 - Sept 2000} +\begin{position} +Software Developer and Network Administrator.\\ +Developed World's Largest Fully-Indexed Quote Database.\\ +Developed and Installed Network Security Policies and Equipment. +\end{position} + +\title{Mechanical Design} +\employer{\bf Brute Force Games}\location{Cambridge, MA} +\dates{\it May 1997 - September 1997} +\begin{position} +Designed full immersion game simulator platform leveraging vection research. +\end{position} + +\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +\dates{\it September 1996 - September 2000} +\begin{position} +Residential Computing Consultant (Information Systems).\\ +MIT Network Operations Employee (Information Systems).\\ +MIT Network Security Employee (Information Systems).\\ +Redesigned Undergraduate Design Course(2.007) under Professor Alex Slocum (Mech E).\\ +6.004 (Computation Structures) Lab Assistant (MIT EECS Department). +\end{position} + +%\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +%\dates{\it January 1996 - May 1997} +%6.004 (Computation Structures) Lab Assistant (MIT EECS Department) + +%\employer{\bf Massachusetts Institute of Technology} \location{Cambridge, MA} +%\dates{\it September 1995 - August 1996} +%The Invention Group under Alex Slocum (Mech E)0 +% +\title{Network and Computer Administrator} +\employer{\bf Brooks Automation} \location{Lowell, MA} +\dates{\it March 1994 - August 1995} +\begin{position} +Network Installation: Analysis, Design, Upgrading/Installing.\\ +Computer Equipment Service: Software and Hardware Repair/Administration/Migration. +\end{position} + +\title{Hardware Interface Programmer} +\employer{\bf University of Massachusetts, Lowell} \location{Lowell, +MA} \dates{\it October 1993 - February 1994} +\begin{position} +Programming using the HP-GPIB interface to network the Solar Cell Research Lab's +instruments (microammeter, multimeter, etc.). This was used +to collect, organize and analyze cell data. +\end{position} + +%\sectiontitle{Background} High school: Saludatorian, 1994, Salem High +%School, Salem, NH.; also chosen as Rensselaer Medalist, Bausch and +%Lomb Scholar, Tandy Technology Scholar, and Admiral C. Byrd +%Scholarship winner. Director of Publicity for MIT's Lecture Series +%Committee. + +\parskip = 0pt +\section{Skills} +{\em Computer languages:} C(++), Perl, Java, XML, lexx, SCHEME, SQL, PICASM\\ +{\em UN\_X/Media development tools:} HTML/CGI, \LaTeX, PostScript, sh, CVS/Subversion, Kerberos\\ +%Certified for IPC Class 2 Soldering\\ +{\em Mech E Tools:} Matlab, Maple, ProEngineer, SolidWorks, Abacus, CNC Machining\\ +{\em Digital System Design:} Logic Analyzer, Serial Protocol Analyzer, Controller Simulators +%Instruments: Oscilloscopes, Multimeters, Digital Analyzers, Serial-line Analyzers, Signal Generators +%and Inductive Receivers. +\end{resume} +\end{document} diff --git a/short-bio.txt b/short-bio.txt new file mode 100644 index 0000000..69b6322 --- /dev/null +++ b/short-bio.txt @@ -0,0 +1,2 @@ +Joseph T. Foley has a varied career stretching across multiple startups and consulting jobs. His first startup position was with the founding of Brute Force Games in Cambridge who’s intent was to build a modular immersive gaming system that could be deployed in gaming parlors across the country. Due to Disney’s entry into the market, he moved on to another startup: Emode. This company promised better understanding of employees for HR divisions of companies through carefully constructed surveys developed by a Harvard Doctor of Psychology. His position there was as a “Magic Mechanic”, in short IT manager, software developer, and designer. Joseph returned back to his graduate career focus and instead did small consulting jobs on the side. A former colleague hired him to develop a web interface for a startup called “Uffinity” which was to be a social network aggregation site for businesses to connect to newly graduate young professionals. Upon graduation, Joseph worked at iRobot’s Government and Industrial division overseeing the DARPA Chembots project. Once that project was completed, Joseph moved to Iceland but acted as a consultant for Professor Sanbae Kim at the MIT Biomimetic Robotics Lab at MIT performing FEA analysis on the Cheeta-bot’s major leg elements. +He was also a consultant for the small machining and design firm Brass Drift on the west coast. Owner Peter Luka hired Joseph to apply design methodologies to redesigning machine elements he was manufacturing. Joseph was soon hired as a lecturer at Reykjavík University which he progressed to the position of Assistant Professor. He has continued to do consulting while maintaining his position at the University: designing an automated zebrafish embryo dispensing robot for the startup 3Z, developing a Distributed Quality Control concept with Professor Sanjay Sarma, developing microcontroller based IoT systems for Icelandic museums and Escape Room companies. Joseph’s latest IoT consulting project was a collaboration with the artist Sigrún Harðardóttir to develop an interactive art piece that instrumented a room, instrument, and furniture into an immersive experience. diff --git a/tweaklist.sty b/tweaklist.sty new file mode 100644 index 0000000..096bc3f --- /dev/null +++ b/tweaklist.sty @@ -0,0 +1,52 @@ +%% start of file `tweaklist.sty'. +%% Original by Jakob Schiøtz, downloaded from http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty; not found on ctan. +%% Modified by Xavier Danaux (xdanaux@gmail.com). +% +% The tweaklist.sty package redefines the itemize, enumerate and description packages, so that all parameters can be adjusted. +% This was done by copying the original definitions, and adding "hook commands" that are executed when entering the environment. +% The hook commands are initially empty, but can be redefined with \renewcommand. +% +% 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/. + + +% hooks for the itemize environment +\def\itemhook{} +\def\itemhooki{} +\def\itemhookii{} +\def\itemhookiii{} +\def\itemhookiv{} +% hooks for the enumerate environment +\def\enumhook{} +\def\enumhooki{} +\def\enumhookii{} +\def\enumhookiii{} +\def\enumhookiv{} +% hook for the description environment +\def\deschook{} +% original environment definitions, with hooks added +\def\enumerate{% + \ifnum \@enumdepth >\thr@@\@toodeep\else + \advance\@enumdepth\@ne + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + \expandafter + \list + \csname label\@enumctr\endcsname + {\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}% + \enumhook \csname enumhook\romannumeral\the\@enumdepth\endcsname}% + \fi} +\def\itemize{% + \ifnum \@itemdepth >\thr@@\@toodeep\else + \advance\@itemdepth\@ne + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + \expandafter + \list + \csname\@itemitem\endcsname + {\def\makelabel##1{\hss\llap{##1}}% + \itemhook \csname itemhook\romannumeral\the\@itemdepth\endcsname}% + \fi} +\newenvironment{description} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel\deschook}} + {\endlist}

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
n{fnOZM9a7?mM+DBrfOi8~#QXgDa^q0MY_Py(x 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 z
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 E06f3PDgXcg literal 0 HcmV?d00001 diff --git a/etoolbox/etoolbox.sty b/etoolbox/etoolbox.sty new file mode 100644 index 0000000..ae37d94 --- /dev/null +++ b/etoolbox/etoolbox.sty @@ -0,0 +1,1708 @@ +% $Id: etoolbox.sty,v 2.1 2011/01/03 19:14:10 lehman stable $ + +% Copyright (c) 2007-2011 Philipp Lehman. +% +% Permission is granted to copy, distribute and/or modify this +% software under the terms of the LaTeX Project Public License +% (LPPL), version 1.3. +% +% The LPPL maintenance status of this software is +% 'author-maintained'. +% +% This software is provided 'as is', without warranty of any kind, +% either expressed or implied, including, but not limited to, the +% implied warranties of merchantability and fitness for a +% particular purpose. + +\def\etb@rcsid$#1: #2 #3 #4 #5${#4 v#3} + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{etoolbox} +[\etb@rcsid $Id: etoolbox.sty,v 2.1 2011/01/03 19:14:10 lehman stable $ + e-TeX tools for LaTeX] + +\begingroup +\@ifundefined{eTeXversion} + {\PackageError{etoolbox} + {Not running under e-TeX} + {This package requires e-TeX. Try compiling the document + with\MessageBreak 'elatex' instead of 'latex'. When using + pdfTeX, try 'pdfelatex'\MessageBreak instead of 'pdflatex'. + This is a fatal error. I'm aborting now.}% + \aftergroup\endinput} + {} +\endgroup + +\RequirePackage{etex} + +\def\etb@catcodes{\do\&\do\|\do\:\do\-\do\=\do\<\do\>} +\def\do#1{\catcode\number`#1=\the\catcode`#1\relax} +\edef\etb@catcodes{\etb@catcodes} +\let\do\noexpand +\AtEndOfPackage{\etb@catcodes\undef\etb@catcodes} + +\catcode`\&=3 +\catcode`\|=3 +\@makeother\: +\@makeother\- +\@makeother\= +\@makeother\< +\@makeother\> + +\protected\def\etb@error{\PackageError{etoolbox}} +\protected\def\etb@warning{\PackageWarning{etoolbox}} +\protected\def\etb@info{\PackageInfo{etoolbox}} +\newcount\etb@tempcnta + +% {}[][]{} + +\newcommand*{\newrobustcmd}{} +\protected\def\newrobustcmd{\@star@or@long\etb@new@command} + +\def\etb@new@command#1{\@testopt{\etb@newcommand#1}0} + +\def\etb@newcommand#1[#2]{% + \@ifnextchar[%] + {\etb@xargdef#1[#2]} + {\ifx\l@ngrel@x\relax + \let\l@ngrel@x\protected + \else + \protected\def\l@ngrel@x{\protected\long}% + \fi + \@argdef#1[#2]}} + +\long\def\etb@xargdef#1[#2][#3]#4{% + \@ifdefinable#1{% + \expandafter\protected + \expandafter\def + \expandafter#1% + \expandafter{% + \expandafter\@testopt + \csname\string#1\endcsname{#3}}% + \expandafter\@yargdef\csname\string#1\endcsname\tw@{#2}{#4}}} + +% {}[][]{} + +\newrobustcmd*{\renewrobustcmd}{\@star@or@long\etb@renew@command} + +\def\etb@renew@command#1{% + \ifundef{#1} + {\etb@error{\string#1 undefined}\@ehc} + {}% + \let\@ifdefinable\@rc@ifdefinable + \etb@new@command#1} + +% {}[][]{} + +\newrobustcmd*{\providerobustcmd}{\@star@or@long\etb@provide@command} + +\def\etb@provide@command#1{% + \ifundef{#1} + {\def\reserved@a{\etb@new@command#1}} + {\def\reserved@a{\etb@renew@command\reserved@a}}% + \reserved@a} + +% {} + +\newrobustcmd*{\csshow}[1]{% + \begingroup\expandafter\endgroup + \expandafter\show\csname#1\endcsname} + +% {}{}{} + +\newcommand{\ifdef}[1]{% + \ifdefined#1% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newcommand{\ifundef}[1]{% + \ifdefined#1% + \ifx#1\relax + \expandafter\expandafter + \expandafter\@firstoftwo + \else + \expandafter\expandafter + \expandafter\@secondoftwo + \fi + \else + \expandafter\@firstoftwo + \fi} + +% {}{}{} + +\newcommand*{\ifcsdef}[1]{% + \ifcsname#1\endcsname + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newcommand*{\ifcsundef}[1]{% + \ifcsname#1\endcsname + \expandafter\ifx\csname#1\endcsname\relax + \expandafter\expandafter + \expandafter\@firstoftwo + \else + \expandafter\expandafter + \expandafter\@secondoftwo + \fi + \else + \expandafter\@firstoftwo + \fi} + +% {}{} + +\newcommand{\ifdefmacro}{} +\long\edef\ifdefmacro#1{% + \noexpand\expandafter\noexpand\etb@ifdefmacro + \noexpand\meaning#1\detokenize{macro}:&} +\edef\etb@ifdefmacro{% + \def\noexpand\etb@ifdefmacro##1\detokenize{macro}:##2&} +\etb@ifdefmacro{\notblank{#2}} + +% {}{}{} + +\newcommand*{\ifcsmacro}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefmacro\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefprefix}[1]{% + \ifdefmacro{#1} + {\etb@ifdefprefix{#1}} + {\@secondoftwo}} +\long\edef\etb@ifdefprefix#1{% + \noexpand\expandafter\noexpand\etb@ifdefprefix@i + \noexpand\meaning#1\detokenize{macro}:&} +\edef\etb@ifdefprefix@i{% + \def\noexpand\etb@ifdefprefix@i##1\detokenize{macro}:##2&} +\etb@ifdefprefix@i{\notblank{#1}} + +% {}{}{} + +\newcommand*{\ifcsprefix}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefprefix\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefparam}{} +\long\edef\ifdefparam#1{% + \noexpand\expandafter\noexpand\etb@ifdefparam + \noexpand\meaning#1\detokenize{macro}:->&} +\edef\etb@ifdefparam{% + \def\noexpand\etb@ifdefparam##1\detokenize{macro}:##2->##3&} +\etb@ifdefparam{\notblank{#2}} + +% {}{}{} + +\newcommand*{\ifcsparam}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefparam\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefprotected}{} +\long\edef\ifdefprotected#1{% + \noexpand\expandafter\noexpand\etb@ifdefprotected + \noexpand\meaning#1\string\protected&} +\edef\etb@ifdefprotected{% + \def\noexpand\etb@ifdefprotected##1\string\protected##2&} +\etb@ifdefprotected{\notblank{#2}} + +% {}{}{} + +\newcommand*{\ifcsprotected}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefprotected\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newrobustcmd{\ifdefltxprotect}[1]{% + \begingroup + \edef\etb@resrvda{% + \noexpand\protect\expandafter\noexpand + \csname\expandafter\@gobble\string#1 \endcsname}% + \expandafter\endgroup\ifx#1\etb@resrvda + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newrobustcmd*{\ifcsltxprotect}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefltxprotect\csname#1\endcsname} + {\@secondoftwo}} + +% {}{}{} + +\newcommand{\ifdefempty}[1]{% + \ifundef{#1} + {\@secondoftwo} + {\ifdefmacro{#1} + {\ifdefparam{#1} + {\@secondoftwo} + {\etb@ifdefempty{#1}}} + {\@secondoftwo}}} + +\def\etb@ifdefempty#1{% + \expandafter\expandafter + \expandafter\ifblank + \expandafter\expandafter + \expandafter{% + \expandafter\strip@prefix\meaning#1}} + +% {}{}{} + +\newcommand*{\ifcsempty}[1]{% + \ifcsundef{#1} + {\@secondoftwo} + {\expandafter\ifdefparam\csname#1\endcsname + {\@secondoftwo} + {\expandafter\etb@ifdefempty\csname#1\endcsname}}} + +% {}{}{} + +\newcommand{\ifdefvoid}[1]{% + \ifundef{#1} + {\@firstoftwo} + {\ifdefmacro{#1} + {\ifdefparam{#1} + {\@secondoftwo} + {\etb@ifdefempty{#1}}} + {\@secondoftwo}}} + +% {}{}{} + +\newcommand*{\ifcsvoid}[1]{% + \ifcsundef{#1} + {\@firstoftwo} + {\expandafter\ifdefparam\csname#1\endcsname + {\@secondoftwo} + {\expandafter\etb@ifdefempty\csname#1\endcsname}}} + +% {}{}{}{} + +\newcommand{\ifdefequal}[2]{% + \ifundef{#1} + {\@secondoftwo} + {\ifundef{#2} + {\@secondoftwo} + {\ifx#1#2% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi}}} + +% {}{}{}{} + +\newcommand*{\ifcsequal}[2]{% + \ifcsundef{#1} + {\@secondoftwo} + {\ifcsundef{#2} + {\@secondoftwo} + {\expandafter\ifx + \csname#1\expandafter\endcsname + \csname#2\endcsname + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi}}} + +% {}{}{}{} + +\newrobustcmd{\ifdefstrequal}[2]{% + \ifdefmacro{#1} + {\ifdefmacro{#2} + {\begingroup + \edef\etb@tempa{\expandafter\strip@prefix\meaning#1}% + \edef\etb@tempb{\expandafter\strip@prefix\meaning#2}% + \ifx\etb@tempa\etb@tempb + \aftergroup\@firstoftwo + \else + \aftergroup\@secondoftwo + \fi + \endgroup} + {\@secondoftwo}} + {\@secondoftwo}} + +% {}{}{}{} + +\newcommand*{\ifcsstrequal}[2]{% + \ifcsundef{#1} + {\@secondoftwo} + {\ifcsundef{#2} + {\@secondoftwo} + {\expandafter\ifdefstrequal + \csname#1\expandafter\endcsname + \csname#2\endcsname}}} + +% {}{}{}{} + +\newrobustcmd{\ifdefstring}[2]{% + \ifdefmacro{#1} + {\begingroup + \edef\etb@tempa{\expandafter\strip@prefix\meaning#1}% + \edef\etb@tempb{\detokenize{#2}}% + \ifx\etb@tempa\etb@tempb + \aftergroup\@firstoftwo + \else + \aftergroup\@secondoftwo + \fi + \endgroup} + {\@secondoftwo}} + +% {}{}{}{} + +\newrobustcmd{\ifcsstring}[2]{% + \ifcsundef{#1} + {\@secondoftwo} + {\expandafter\ifdefstring\csname#1\endcsname{#2}}} + +% {}{} + +\newcommand{\ifdefcounter}[1]{\etb@ifcounter#1&} +\long\def\etb@ifcounter#1#2&{% + \ifx\count#1% + \expandafter\@secondoftwo + \else + \expandafter\etb@ifcounter@i\meaning#1:% + \fi} +\edef\etb@ifcounter@i#1:#2\fi{\noexpand\fi + \noexpand\etb@ifcounter@ii#1\string\count&} +\edef\etb@ifcounter@ii{% + \def\noexpand\etb@ifcounter@ii##1\string\count##2&} +\etb@ifcounter@ii{\ifblank{#1}} + +% {}{}{} + +\newcommand*{\ifcscounter}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefcounter\csname#1\endcsname} + {\@secondoftwo}} + +% {}{}{} + +\newcommand*{\ifltxcounter}[1]{% + \ifcsdef{c@#1} + {\expandafter\ifdefcounter\csname c@#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdeflength}[1]{\etb@iflength#1&} +\long\def\etb@iflength#1#2&{% + \ifx\skip#1% + \expandafter\@secondoftwo + \else + \expandafter\etb@iflength@i\meaning#1:% + \fi} +\edef\etb@iflength@i#1:#2\fi{\noexpand\fi + \noexpand\etb@iflength@ii#1\string\skip&} +\edef\etb@iflength@ii{% + \def\noexpand\etb@iflength@ii##1\string\skip##2&} +\etb@iflength@ii{\ifblank{#1}} + +% {}{}{} + +\newcommand*{\ifcslength}[1]{% + \ifcsdef{#1} + {\expandafter\ifdeflength\csname#1\endcsname} + {\@secondoftwo}} + +% {}{} + +\newcommand{\ifdefdimen}[1]{\etb@ifdimen#1&} +\long\def\etb@ifdimen#1#2&{% + \ifx\dimen#1% + \expandafter\@secondoftwo + \else + \expandafter\etb@ifdimen@i\meaning#1:% + \fi} +\edef\etb@ifdimen@i#1:#2\fi{\noexpand\fi + \noexpand\etb@ifdimen@ii#1\string\dimen&} +\edef\etb@ifdimen@ii{% + \def\noexpand\etb@ifdimen@ii##1\string\dimen##2&} +\etb@ifdimen@ii{\ifblank{#1}} + +% {}{}{} + +\newcommand*{\ifcsdimen}[1]{% + \ifcsdef{#1} + {\expandafter\ifdefdimen\csname#1\endcsname} + {\@secondoftwo}} + +% {}{}{}{} + +\newrobustcmd{\ifstrequal}[2]{% + \begingroup + \edef\etb@tempa{\detokenize{#1}}% + \edef\etb@tempb{\detokenize{#2}}% + \ifx\etb@tempa\etb@tempb + \aftergroup\@firstoftwo + \else + \aftergroup\@secondoftwo + \fi + \endgroup} + +% {}{}{} + +\newcommand{\ifstrempty}[1]{% + \expandafter\ifx\expandafter&\detokenize{#1}&% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\newcommand{\ifblank}[1]{% from url.sty + \etb@ifblank@i#1&&\@secondoftwo\@firstoftwo:} +\long\def\etb@ifblank@i#1#2#4#5:{#4} + +\newcommand{\notblank}[1]{% + \etb@ifblank@i#1&&\@firstoftwo\@secondoftwo:} + +% {}{}{}{}{} + +\newcommand*{\ifnumcomp}[3]{% + \ifnum\numexpr#1\relax#2\numexpr#3\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{}{} + +\newcommand*{\ifnumequal}[1]{% + \ifnumcomp{#1}=} + +\newcommand*{\ifnumgreater}[1]{% + \ifnumcomp{#1}>} + +\newcommand*{\ifnumless}[1]{% + \ifnumcomp{#1}<} + +% {}{}{} + +\newcommand*{\ifnumodd}[1]{% + \ifodd\numexpr#1\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{}{}{} + +\newcommand*{\ifdimcomp}[3]{% + \ifdim\dimexpr#1\relax#2\dimexpr#3\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{}{} + +\newcommand*{\ifdimequal}[1]{% + \ifdimcomp{#1}=} + +\newcommand*{\ifdimgreater}[1]{% + \ifdimcomp{#1}>} + +\newcommand*{\ifdimless}[1]{% + \ifdimcomp{#1}<} + +% {}{}{} + +\newcommand{\ifboolexpe}[1]{% + \etb@be@beg\etb@be@bgroup#1(&\etb@be@end} + +\let\etb@be@true\@empty +\def\etb@be@false{-\@ne} + +\def\etb@be@beg{% + \ifnum\numexpr\z@\ifnum\numexpr\z@} + +\def\etb@be@end{% + <\z@ + \expandafter\etb@be@false + \fi + <\z@ + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi} + +\long\def\etb@be@bgroup#1(#2&{% + \etb@be@egroup#1)&% + \ifblank{#2} + {} + {\etb@be@beg + \etb@be@bgroup#2&}} + +\long\def\etb@be@egroup#1)#2&{% + \etb@be@and#1and&% + \ifblank{#2} + {} + {\etb@be@end\etb@be@true\etb@be@false + \etb@be@egroup#2&}} + +\long\def\etb@be@and#1and#2&{% + \etb@be@or#1or&% + \ifblank{#2} + {} + {<\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {=\z@\fi\ifnum\numexpr\m@ne}% + \ifnum\numexpr\z@ + \etb@be@and#2&}} + +\long\def\etb@be@or#1or#2&{% + \etb@be@not#1not&% + \ifblank{#2} + {} + {<\z@ + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi + {=\z@\fi\ifnum\numexpr\z@ + \ifnum\numexpr\@ne} + {=\z@\fi\ifnum\numexpr\z@ + \ifnum\numexpr\z@}% + \etb@be@or#2&}} + +\long\def\etb@be@not#1not#2&{% + \etb@be@togl#1togl&% + \ifblank{#2} + {} + {>\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {\unless\ifnum\numexpr\m@ne} + {\unless\ifnum\numexpr\z@}% + \etb@be@not#2&}} + +\long\def\etb@be@togl#1togl#2&{% + \etb@be@bool#1bool&% + \ifblank{#2} + {} + {\etb@be@togl@i#2&}} + +\long\def\etb@be@togl@i#1#2&{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname\etb@be@true\etb@be@false} + {\etb@be@err{Toggle '#1' undefined}{}}% + \etb@be@togl#2&} + +\long\def\etb@be@bool#1bool#2&{% + \etb@be@test#1test&% + \ifblank{#2} + {} + {\etb@be@bool@i#2&}} + +\long\def\etb@be@bool@i#1#2&{% + \ifcsundef{if#1} + {\etb@be@err{Boolean '#1' undefined}{}} + {\csname if#1\endcsname + \else + \etb@be@false + \fi}% + \etb@be@bool#2&} + +\long\def\etb@be@test#1test#2&{% + \ifblank{#1} + {} + {\etb@be@err{The invalid part is: '\detokenize{#1}'}{}}% + \ifblank{#2} + {} + {\etb@be@test@i#2&}} + +\long\def\etb@be@test@i#1#2&{% + #1\etb@be@true\etb@be@false + \etb@be@test#2&} + +\long\def\etb@be@err#1#2{% + \expandafter\ifnum\the\numexpr + \expandafter\ifnum\the\currentiftype=-3 + \expandafter\thr@@ + \else + \expandafter\currentiftype + \fi + =\thr@@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {=\z@\fi + \etb@be@err{#1}{#2\ifnum\numexpr\m@ne}} + {\etb@err@expr{#1}#2}} + +% {}{}{} + +\newrobustcmd{\ifboolexpr}[1]{\etb@boolexpr{#1}} + +\long\def\etb@boolexpr#1{% + \begingroup + \let\etb@br@neg\@firstoftwo + \etb@tempcnta\z@ + \etb@br@beg + \etb@br@bgroup#1(&% + \etb@br@end + \etb@br@eval} + +\def\etb@br@beg{% + \begingroup + \let\etb@br@neg\@firstoftwo + \etb@tempcnta\z@} + +\def\etb@br@end{% + \etb@br@eval\etb@br@true\etb@br@false} + +\def\etb@br@eval{% + \ifnum\etb@tempcnta<\z@ + \aftergroup\@secondoftwo + \else + \aftergroup\@firstoftwo + \fi + \endgroup} + +\def\etb@br@true{% + \advance\etb@tempcnta\etb@br@neg\z@\m@ne + \let\etb@br@neg\@firstoftwo} + +\def\etb@br@false{% + \advance\etb@tempcnta\etb@br@neg\m@ne\z@ + \let\etb@br@neg\@firstoftwo} + +\long\def\etb@br@bgroup#1(#2&{% + \etb@br@egroup#1)&% + \ifblank{#2} + {} + {\etb@br@beg + \etb@br@bgroup#2&}} + +\long\def\etb@br@egroup#1)#2&{% + \etb@br@and#1and&% + \ifblank{#2} + {} + {\etb@br@end + \etb@br@egroup#2&}} + +\long\def\etb@br@and#1and#2&{% + \etb@br@or#1or&% + \ifblank{#2} + {} + {\ifnum\etb@tempcnta<\z@ + \etb@tempcnta\m@ne + \else + \etb@tempcnta\z@ + \fi + \etb@br@and#2&}} + +\long\def\etb@br@or#1or#2&{% + \etb@br@not#1not&% + \ifblank{#2} + {} + {\ifnum\etb@tempcnta<\z@ + \etb@tempcnta\z@ + \else + \etb@tempcnta\@ne + \fi + \etb@br@or#2&}} + +\long\def\etb@br@not#1not#2&{% + \etb@br@togl#1togl&% + \ifblank{#2} + {} + {\let\etb@br@neg\@secondoftwo + \etb@br@not#2&}} + +\long\def\etb@br@togl#1togl#2&{% + \etb@br@bool#1bool&% + \ifblank{#2} + {} + {\etb@br@togl@i#2&}} + +\long\def\etb@br@togl@i#1#2&{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname\etb@br@true\etb@br@false} + {\etb@err@expr{Toggle '#1' undefined}\etb@br@false}% + \etb@br@togl#2&} + +\long\def\etb@br@bool#1bool#2&{% + \etb@br@test#1test&% + \ifblank{#2} + {} + {\etb@br@bool@i#2&}} + +\long\def\etb@br@bool@i#1#2&{% + \ifcsundef{if#1} + {\etb@err@expr{Boolean '#1' undefined}\etb@br@false} + {\csname if#1\endcsname + \etb@br@true + \else + \etb@br@false + \fi}% + \etb@br@bool#2&} + +\long\def\etb@br@test#1test#2&{% + \ifblank{#1} + {} + {\etb@err@expr{The invalid part is: '\detokenize{#1}'}}% + \ifblank{#2} + {} + {\etb@br@test@i#2&}} + +\long\def\etb@br@test@i#1#2&{% + \ignorespaces#1\etb@br@true\etb@br@false + \etb@br@test#2&} + +\long\def\etb@err@expr#1{% + \etb@error + {Invalid boolean expression} + {#1.}} + +% {}{} + +\newrobustcmd{\whileboolexpr}[2]{% + \etb@boolexpr{#1}{#2\whileboolexpr{#1}{#2}}{}} + +% {}{} + +\newrobustcmd{\unlessboolexpr}[2]{% + \etb@boolexpr{#1}{}{#2\unlessboolexpr{#1}{#2}}} + +% {} + +\newcommand{\expandonce}[1]{% + \unexpanded\expandafter{#1}} + +% {} + +\newcommand*{\csexpandonce}[1]{% + \expandafter\expandonce\csname#1\endcsname} + +% {} + +\newcommand*{\protecting}{} +\def\protecting#{% + \ifx\protect\@typeset@protect + \etb@protecting\@firstofone + \fi + \ifx\protect\@unexpandable@protect + \etb@protecting\etb@unexpandable + \fi + \ifx\protect\noexpand + \etb@protecting\unexpanded + \fi + \ifx\protect\string + \etb@protecting\detokenize + \fi + \relax\@firstofone} + +\def\etb@protecting#1#2\relax\@firstofone{\fi#1} +\long\def\etb@unexpandable#1{\unexpanded{\protecting{#1}}} + +% {} + +\newrobustcmd*{\csdef}[1]{\expandafter\def\csname#1\endcsname} +\newrobustcmd*{\csedef}[1]{\expandafter\edef\csname#1\endcsname} +\newrobustcmd*{\csgdef}[1]{\expandafter\gdef\csname#1\endcsname} +\newrobustcmd*{\csxdef}[1]{\expandafter\xdef\csname#1\endcsname} +\newrobustcmd*{\protected@csedef}{\etb@protected\csedef} +\newrobustcmd*{\protected@csxdef}{\etb@protected\csxdef} + +\def\etb@protected{% + \let\@@protect\protect + \let\protect\@unexpandable@protect + \afterassignment\restore@protect} + +% {}{} + +\newrobustcmd{\cslet}[2]{% + \expandafter\let\csname#1\endcsname#2} + +% {}{} + +\newrobustcmd{\letcs}[2]{% + \ifcsdef{#2} + {\expandafter\let\expandafter#1\csname#2\endcsname} + {\undef#1}} + +% {}{} + +\newrobustcmd*{\csletcs}[2]{% + \ifcsdef{#2} + {\expandafter\let + \csname#1\expandafter\endcsname + \csname#2\endcsname} + {\csundef{#1}}} + +% {} + +\newcommand*{\csuse}[1]{% + \ifcsname#1\endcsname + \csname#1\expandafter\endcsname + \fi} + +% {} + +\newrobustcmd{\undef}[1]{\let#1\etb@undefined} + +% {} + +\newrobustcmd*{\csundef}[1]{\cslet{#1}\etb@undefined} + +% {}{} + +\newrobustcmd{\appto}[2]{% + \ifundef{#1} + {\edef#1{\unexpanded{#2}}} + {\edef#1{\expandonce#1\unexpanded{#2}}}} +\newrobustcmd{\eappto}[2]{% + \ifundef{#1} + {\edef#1{#2}} + {\edef#1{\expandonce#1#2}}} +\newrobustcmd{\gappto}[2]{% + \ifundef{#1} + {\xdef#1{\unexpanded{#2}}} + {\xdef#1{\expandonce#1\unexpanded{#2}}}} +\newrobustcmd{\xappto}[2]{% + \ifundef{#1} + {\xdef#1{#2}} + {\xdef#1{\expandonce#1#2}}} + +\newrobustcmd*{\protected@eappto}{\etb@protected\eappto} +\newrobustcmd*{\protected@xappto}{\etb@protected\xappto} + +% {}{} + +\newrobustcmd{\preto}[2]{% + \ifundef{#1} + {\edef#1{\unexpanded{#2}}} + {\edef#1{\unexpanded{#2}\expandonce#1}}} +\newrobustcmd{\epreto}[2]{% + \ifundef{#1} + {\edef#1{#2}} + {\edef#1{#2\expandonce#1}}} +\newrobustcmd{\gpreto}[2]{% + \ifundef{#1} + {\xdef#1{\unexpanded{#2}}} + {\xdef#1{\unexpanded{#2}\expandonce#1}}} +\newrobustcmd{\xpreto}[2]{% + \ifundef{#1} + {\xdef#1{#2}} + {\xdef#1{#2\expandonce#1}}} + +\newrobustcmd*{\protected@epreto}{\etb@protected\epreto} +\newrobustcmd*{\protected@xpreto}{\etb@protected\xpreto} + +% {}{} + +\newrobustcmd*{\csappto}[1]{\expandafter\appto\csname#1\endcsname} +\newrobustcmd*{\cseappto}[1]{\expandafter\eappto\csname#1\endcsname} +\newrobustcmd*{\csgappto}[1]{\expandafter\gappto\csname#1\endcsname} +\newrobustcmd*{\csxappto}[1]{\expandafter\xappto\csname#1\endcsname} +\newrobustcmd*{\protected@cseappto}{\etb@protected\cseappto} +\newrobustcmd*{\protected@csxappto}{\etb@protected\csxappto} + +% {}{} + +\newrobustcmd*{\cspreto}[1]{\expandafter\preto\csname#1\endcsname} +\newrobustcmd*{\csepreto}[1]{\expandafter\epreto\csname#1\endcsname} +\newrobustcmd*{\csgpreto}[1]{\expandafter\gpreto\csname#1\endcsname} +\newrobustcmd*{\csxpreto}[1]{\expandafter\xpreto\csname#1\endcsname} +\newrobustcmd*{\protected@csepreto}{\etb@protected\csepreto} +\newrobustcmd*{\protected@csxpreto}{\etb@protected\csxpreto} + +% {}{} + +\newrobustcmd*{\numdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \edef#1{\the\numexpr#2}} +\newrobustcmd*{\numgdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \xdef#1{\the\numexpr#2}} + +% {}{} + +\newrobustcmd*{\csnumdef}[1]{% + \expandafter\numdef\csname#1\endcsname} +\newrobustcmd*{\csnumgdef}[1]{% + \expandafter\numgdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\dimdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \edef#1{\the\dimexpr#2}} +\newrobustcmd*{\dimgdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \xdef#1{\the\dimexpr#2}} + +% {}{} + +\newrobustcmd*{\csdimdef}[1]{% + \expandafter\dimdef\csname#1\endcsname} +\newrobustcmd*{\csdimgdef}[1]{% + \expandafter\dimgdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\gluedef}[2]{% + \ifundef#1{\let#1\z@skip}{}% + \edef#1{\the\glueexpr#2}} +\newrobustcmd*{\gluegdef}[2]{% + \ifundef#1{\let#1\z@skip}{}% + \xdef#1{\the\glueexpr#2}} + +% {}{} + +\newrobustcmd*{\csgluedef}[1]{% + \expandafter\gluedef\csname#1\endcsname} +\newrobustcmd*{\csgluegdef}[1]{% + \expandafter\gluegdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\mudef}[2]{% + \ifundef#1{\def#1{0mu}}{}% + \edef#1{\the\muexpr#2}} +\newrobustcmd*{\mugdef}[2]{% + \ifundef#1{\let#1\z@}{}% + \xdef#1{\the\muexpr#2}} + +% {}{} + +\newrobustcmd*{\csmudef}[1]{% + \expandafter\mudef\csname#1\endcsname} +\newrobustcmd*{\csmugdef}[1]{% + \expandafter\mugdef\csname#1\endcsname} + +% {}{} + +\newrobustcmd*{\defcounter}[2]{% + \ifcsundef{c@#1} + {\etb@noglobal\@nocounterr{#1}}% + {\csname c@#1\endcsname\numexpr#2\relax}} + +% {}{} + +\newrobustcmd*{\deflength}[2]{% + \ifundef{#1} + {\etb@noglobal\etb@err@nolen{#1}}% + {#1\glueexpr#2\relax}} + +\protected\def\etb@err@nolen#1{% + \etb@error{Length '\string#1' undefined}\@eha} + +% {} + +\newrobustcmd*{\newbool}[1]{% + \expandafter\@ifdefinable\csname if#1\endcsname{% + \expandafter\newif\csname if#1\endcsname}} + +% {} + +\newrobustcmd*{\providebool}[1]{% + \ifcsundef{if#1} + {\expandafter\newif\csname if#1\endcsname} + {\begingroup + \edef\@tempa{\expandafter\meaning\csname if#1\endcsname}% + \ifx\@tempa\etb@isfalse + \else + \ifx\@tempa\etb@istrue + \else + \etb@error{\@backslashchar if#1 not a boolean}\@eha + \fi + \fi + \endgroup}} + +% {}{|} + +\newrobustcmd*{\setbool}[2]{% + \ifcsundef{if#1} + {\etb@noglobal\etb@err@nobool{#1}} + {\ifcsundef{#1#2} + {\etb@noglobal\etb@err@boolval{#2}} + {\csname#1#2\endcsname}}} + +% {} + +\newrobustcmd*{\booltrue}[1]{% + \ifcsundef{if#1} + {\etb@noglobal\etb@err@nobool{#1}} + {\csname#1true\endcsname}} + +% {} + +\newrobustcmd*{\boolfalse}[1]{% + \ifcsundef{if#1} + {\etb@noglobal\etb@err@nobool{#1}} + {\csname#1false\endcsname}} + +\edef\etb@istrue{\meaning\iftrue} +\edef\etb@isfalse{\meaning\iffalse} +\protected\def\etb@noglobal{\let\relax\relax} + +% {}{} + +\newcommand*{\ifbool}[1]{% + \ifcsundef{if#1} + {\etb@err@nobool{#1}\@gobbletwo} + {\csname if#1\endcsname + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi}} + +% {}{} + +\newcommand*{\notbool}[1]{% + \ifcsundef{if#1} + {\etb@err@nobool{#1}\@gobbletwo} + {\csname if#1\endcsname + \expandafter\@secondoftwo + \else + \expandafter\@firstoftwo + \fi}} + +\protected\def\etb@err@nobool#1{% + \etb@error{Boolean '\@backslashchar if#1' undefined}\@eha} + +\def\etb@err@boolval#1{% + \etb@error + {Invalid boolean value '#1'} + {Valid boolean values are 'true' and 'false'.}} + +% {} + +\newrobustcmd*{\newtoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {\etb@error{Toggle '#1' already defined}\@eha} + {\cslet{etb@tgl@#1}\@secondoftwo}} + +% {} + +\newrobustcmd*{\providetoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {} + {\cslet{etb@tgl@#1}\@secondoftwo}} + +% {}{|} + +\newrobustcmd*{\settoggle}[2]{% + \ifcsdef{etb@tgl@#1} + {\ifcsdef{etb@toggle#2} + {\csletcs{etb@tgl@#1}{etb@toggle#2}} + {\etb@noglobal\etb@err@boolval{#2}}} + {\etb@noglobal\etb@err@notoggle{#1}}} + +% {} + +\newrobustcmd*{\toggletrue}[1]{% + \ifcsdef{etb@tgl@#1} + {\cslet{etb@tgl@#1}\etb@toggletrue} + {\etb@noglobal\etb@err@notoggle{#1}}} + +% {} + +\newrobustcmd*{\togglefalse}[1]{% + \ifcsdef{etb@tgl@#1} + {\cslet{etb@tgl@#1}\etb@togglefalse} + {\etb@noglobal\etb@err@notoggle{#1}}} + +\let\etb@toggletrue\@firstoftwo +\let\etb@togglefalse\@secondoftwo + +% {}{} + +\newcommand*{\iftoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname} + {\etb@err@notoggle{#1}\@gobbletwo}} + +% {}{} + +\newcommand*{\nottoggle}[1]{% + \ifcsdef{etb@tgl@#1} + {\csname etb@tgl@#1\endcsname\@secondoftwo\@firstoftwo} + {\etb@err@notoggle{#1}\@gobbletwo}} + +\protected\def\etb@err@notoggle#1{% + \etb@error{Toggle '#1' undefined}\@eha} + +% {}{} + +\protected\def\etb@ifscanable#1{% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{macro}:####2->####3&{% + ####1\def\string\etb@resrvda####2{####3}}% + \edef\noexpand\etb@resrvda{\noexpand\etb@resrvda\meaning#1&}}% + \etb@resrvda + \makeatletter + \scantokens\expandafter{\etb@resrvda}% + \expandafter\endgroup\ifx#1\etb@resrvda + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi} + +% {}{}{} + +\protected\long\def\etb@ifpattern#1#2{% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{#2}####2&{% + \endgroup\noexpand\noexpand\noexpand\ifblank{####2}}% + \edef\noexpand\etb@resrvda{\noexpand\etb@resrvda + \expandafter\strip@prefix\meaning#1\detokenize{#2}&}% + \noexpand\etb@resrvda} + \etb@resrvda\@secondoftwo\@firstoftwo} + +% {}{} + +\protected\long\def\etb@ifhashcheck#1{% + \begingroup + \edef\etb@resrvda{\detokenize{#1}}% + \expandafter\endgroup + \expandafter\etb@ifhashcheck@i\meaning\etb@resrvda&} + +\edef\etb@ifhashcheck@i#1&{% + \noexpand\expandafter + \noexpand\etb@ifhashcheck@ii + \noexpand\strip@prefix#1\string#\string#&} + +\edef\etb@ifhashcheck@ii{% + \def\noexpand\etb@ifhashcheck@ii##1\string#\string###2&} +\etb@ifhashcheck@ii{\ifblank{#2}} + +% {} + +\newrobustcmd*{\robustify}[1]{% + \ifundef{#1} + {\etb@error{\string#1 undefined}\@eha} + {\ifdefmacro{#1} + {\ifdefltxprotect{#1} + {\letcs\etb@resrvda{\expandafter\@gobble\string#1 }% + \@tempswatrue} + {\let\etb@resrvda#1% + \@tempswafalse}% + \ifdefparam\etb@resrvda + {\etb@ifscanable\etb@resrvda + {\etb@robustify\etb@resrvda + \let#1\etb@resrvda} + {\etb@error{Failed to robustify \string#1} + {The command is special and cannot be + handled by \string\robustify.}% + \@tempswafalse}} + {\protected\edef#1{\expandonce\etb@resrvda}} + \if@tempswa + \ifcsdef{\string#1 } + {} + {\csundef{\expandafter\@gobble\string#1 }}% + \fi + \undef\etb@resrvda} + {\etb@error{\string#1 not a macro}\@eha}}} + +\def\etb@robustify#1{% + \begingroup + \edef\etb@resrvdb{% + \def\noexpand\etb@resrvdb####1\detokenize{macro}:####2->####3&{% + \protected####1\def\string#1\space####2{####3}}% + \edef\noexpand\etb@resrvdb{% + \noexpand\etb@resrvdb\meaning#1&}}% + \etb@resrvdb + \etb@patchcmd@scantoks\etb@resrvdb} + +% {}{}{} +% *{}{} + +\newrobustcmd{\ifpatchable}{% + \etb@dbg@trce\ifpatchable + \begingroup + \@makeother\#% + \@ifstar\etb@ifpatchable@i\etb@ifpatchable} + +\long\def\etb@ifpatchable#1#2{% + \endgroup + \etb@dbg@init#1% + \ifundef{#1} + {\etb@dbg@fail{def}\@secondoftwo} + {\etb@dbg@info{def}% + \ifdefmacro{#1} + {\etb@dbg@info{mac}% + \etb@ifscanable{#1} + {\etb@ifhashcheck{#2} + {\etb@dbg@info{tok}% + \etb@ifpattern#1{#2} + {\etb@dbg@info{pat}% + \etb@dbg@info{pos}\@firstoftwo} + {\etb@dbg@fail{pat}\@secondoftwo}} + {\etb@dbg@fail{hsh}\@secondoftwo}} + {\etb@dbg@fail{tok}\@secondoftwo}} + {\etb@dbg@fail{mac}\@secondoftwo}}} + +\long\def\etb@ifpatchable@i#1{% + \endgroup + \etb@dbg@init#1% + \ifundef{#1} + {\etb@dbg@fail{def}\@secondoftwo} + {\etb@dbg@info{def}% + \ifdefmacro{#1} + {\etb@dbg@info{mac}% + \ifdefparam{#1} + {\etb@dbg@info{prm}% + \etb@ifscanable{#1} + {\etb@dbg@info{tok}% + \etb@dbg@info{pos}\@firstoftwo} + {\etb@dbg@fail{tok}\@secondoftwo}} + {\etb@dbg@info{prl}% + \ifdefprotected{#1} + {\etb@dbg@info{pro}} + {}% + \etb@dbg@info{pos}\@firstoftwo}} + {\etb@dbg@fail{mac}\@secondoftwo}}} + +% []{}{}{}{}{} + +\newrobustcmd*{\patchcmd}{% + \etb@dbg@trce\patchcmd + \begingroup + \@makeother\#% + \etb@patchcmd} + +\newcommand{\etb@patchcmd}[4][########1]{% + \etb@ifpatchable#2{#3} + {\etb@dbg@succ{ret}% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{macro:}####2->####3&{% + #1\def\string\etb@resrvda\space####2{\noexpand\etb@resrvdb####3&}}% + \def\noexpand\etb@resrvdb####1\detokenize{#3}####2&{% + ####1\detokenize{#4}####2}% + \edef\noexpand\etb@resrvda{% + \noexpand\etb@resrvda\meaning#2&}}% + \etb@resrvda + \etb@patchcmd@scantoks\etb@resrvda + \let#2\etb@resrvda + \undef\etb@resrvda + \@firstoftwo} + {\@secondoftwo}} + +\def\etb@patchcmd@scantoks#1{% + \edef\etb@resrvda{\endgroup + \unexpanded{\makeatletter\scantokens}{#1}% + \catcode\number`\@=\the\catcode`\@\relax}% + \etb@resrvda} + +% {}{}{}{} + +\newrobustcmd*{\apptocmd}{% + \etb@dbg@trce\apptocmd + \begingroup + \@makeother\#% + \etb@hooktocmd\etb@append} + +\newrobustcmd*{\pretocmd}{% + \etb@dbg@trce\pretocmd + \begingroup + \@makeother\#% + \etb@hooktocmd\etb@prepend} + +\long\def\etb@hooktocmd#1#2#3{% + \endgroup + \etb@dbg@init#2% + \ifundef{#2} + {\etb@dbg@fail{def}\@secondoftwo} + {\etb@dbg@info{def}% + \ifdefmacro{#2} + {\etb@dbg@info{mac}% + \ifdefparam{#2} + {\etb@dbg@info{prm}% + \etb@ifscanable{#2} + {\etb@ifhashcheck{#3} + {\etb@dbg@info{tok}% + \etb@dbg@succ{ret}% + \etb@hooktocmd@i#1#2{#3}% + \@firstoftwo} + {\etb@dbg@fail{hsh}\@secondoftwo}} + {\etb@dbg@fail{tok}\@secondoftwo}} + {\etb@dbg@info{prl}% + \ifdefprotected{#2} + {\etb@dbg@info{pro}% + \etb@dbg@succ{red}% + \protected} + {\etb@dbg@succ{red}}% + \edef#2{#1{\expandonce#2}{\unexpanded{#3}}}% + \@firstoftwo}} + {\etb@dbg@fail{mac}\@secondoftwo}}} + +\long\def\etb@hooktocmd@i#1#2#3{% + \begingroup + \edef\etb@resrvda{% + \def\noexpand\etb@resrvda####1\detokenize{macro}:####2->####3&{% + ####1\def\string\etb@resrvda\space####2{#1{####3}{\detokenize{#3}}}}% + \edef\noexpand\etb@resrvda{% + \noexpand\etb@resrvda\meaning#2&}}% + \etb@resrvda + \etb@patchcmd@scantoks\etb@resrvda + \let#2\etb@resrvda + \undef\etb@resrvda} + +\long\def\etb@append#1#2{#1#2} +\long\def\etb@prepend#1#2{#2#1} + +\newrobustcmd*{\tracingpatches}{% + \etb@info{Enabling tracing}% + \input{etoolbox.def}% + \global\let\tracingpatches\relax} +\@onlypreamble\tracingpatches + +\let\etb@dbg@trce\@gobble +\let\etb@dbg@init\@gobble +\let\etb@dbg@info\@gobble +\let\etb@dbg@succ\@gobble +\let\etb@dbg@fail\@gobble + +% {} + +\newcommand{\rmntonum}[1]{% + \ifblank{#1} + {} + {\expandafter\etb@rti@end\number\numexpr + \expandafter\etb@rti@prs\detokenize{#1}&\relax}} + +\def\etb@rti@prs#1#2{% + \ifx% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {#1#2} + {\ifx% + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {\etb@rti@chk#1+\etb@rti@num#1#2} + {\etb@rti@chk#1\etb@rti@chk#2% + \ifnum\etb@rti@num#1<\etb@rti@num#2 % + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {+\etb@rti@num#2-\etb@rti@num#1\etb@rti@prs} + {+\etb@rti@num#1\etb@rti@prs#2}}}} + +\def\etb@rti@chk#1{% + \ifcsname etb@rmn@#1\endcsname + \else + \expandafter\etb@rti@brk + \fi} + +\def\etb@rti@brk#1&{+\z@&-1} +\def\etb@rti@end#1\relax{\ifblank{#2}{#1}{#2}} +\def\etb@rti@num#1{\csname etb@rmn@#1\endcsname} + +\chardef\etb@rmn@i=1 +\chardef\etb@rmn@I=1 +\chardef\etb@rmn@v=5 +\chardef\etb@rmn@V=5 +\chardef\etb@rmn@x=10 +\chardef\etb@rmn@X=10 +\chardef\etb@rmn@l=50 +\chardef\etb@rmn@L=50 +\chardef\etb@rmn@c=100 +\chardef\etb@rmn@C=100 +\mathchardef\etb@rmn@d=500 +\mathchardef\etb@rmn@D=500 +\mathchardef\etb@rmn@m=1000 +\mathchardef\etb@rmn@M=1000 + +% {}{}{} + +\newcommand{\ifrmnum}[1]{% + \ifblank{#1} + {\@secondoftwo} + {\expandafter\etb@ifr@prs\detokenize{#1}\relax}} + +\def\etb@ifr@prs#1{% + \ifx\relax#1% + \expandafter\@firstoftwo + \else + \ifcsname etb@rmn@#1\endcsname + \expandafter\expandafter + \expandafter\etb@ifr@prs + \else + \expandafter\expandafter + \expandafter\etb@ifr@brk + \fi + \fi} + +\def\etb@ifr@brk#1\relax{\@secondoftwo} + +% <*>{}{} + +\newrobustcmd*{\DeclareListParser}{% + \@ifstar + {\etb@defparser\etb@defparser@arg} + {\etb@defparser\etb@defparser@do}} + +\def\etb@defparser#1#2#3{% + \@ifdefinable#2{#1{#2}{#3}}} + +\def\etb@defparser@do#1#2{% + \begingroup + \edef\@tempa{\endgroup + \long\def\noexpand#1####1{% + \expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + \space####1\noexpand#2&}% + \long\csdef{etb@lst@\expandafter\@gobble\string#1}####1\noexpand#2####2&{% + \noexpand\etb@listitem\noexpand\do{####1}% + \noexpand\ifblank{####2} + {\noexpand\listbreak} + {\expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + \space####2}&}}% + \@tempa} + +\def\etb@defparser@arg#1#2{% + \begingroup + \edef\@tempa{\endgroup + \long\def\noexpand#1####1####2{% + \expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + {####1}\space####2\noexpand#2&}% + \long\csdef{etb@lst@\expandafter\@gobble\string#1}####1####2\noexpand#2####3&{% + \noexpand\etb@listitem{####1}{####2}% + \noexpand\ifblank{####3} + {\noexpand\listbreak} + {\expandafter\noexpand + \csname etb@lst@\expandafter\@gobble\string#1\endcsname + {####1}\space####3}&}}% + \@tempa} + +\long\def\etb@listitem#1#2{% + \ifblank{#2} + {} + {\expandafter\etb@listitem@i + \expandafter{\@firstofone#2}{#1}}} +\long\def\etb@listitem@i#1#2{#2{#1}} + +\newcommand*{\listbreak}{} +\long\def\listbreak#1&{} + +% {,,...} => \do{}\do{}... + +\DeclareListParser{\docsvlist}{,} + +% {}{,,...} => {}{}... + +\DeclareListParser*{\forcsvlist}{,} + +% {}{} + +\newrobustcmd{\listadd}[2]{% + \ifblank{#2}{}{\appto#1{#2|}}} +\newrobustcmd{\listeadd}[2]{% + \begingroup + \edef\etb@tempa{\endgroup\noexpand\ifblank{#2}}% + \etb@tempa{}{\eappto#1{#2|}}} +\newrobustcmd{\listgadd}[2]{% + \ifblank{#2}{}{\gappto#1{#2|}}} +\newrobustcmd{\listxadd}[2]{% + \begingroup + \edef\etb@tempa{\endgroup\noexpand\ifblank{#2}}% + \etb@tempa{}{\xappto#1{#2|}}} + +% {}{} + +\newrobustcmd{\listcsadd}[1]{% + \expandafter\listadd\csname#1\endcsname} +\newrobustcmd{\listcseadd}[1]{% + \expandafter\listeadd\csname#1\endcsname} +\newrobustcmd{\listcsgadd}[1]{% + \expandafter\listgadd\csname#1\endcsname} +\newrobustcmd{\listcsxadd}[1]{% + \expandafter\listxadd\csname#1\endcsname} + +% {}{}{}{} + +\newrobustcmd{\ifinlist}[2]{% + \begingroup + \def\etb@tempa##1|#1|##2&{\endgroup + \ifblank{##2}\@secondoftwo\@firstoftwo}% + \expandafter\etb@tempa\expandafter|#2|#1|&} + +\newrobustcmd{\xifinlist}[1]{% + \begingroup + \edef\etb@tempa{\endgroup\ifinlist{#1}}% + \etb@tempa} + +% {}{}{}{} + +\newrobustcmd{\ifinlistcs}[2]{% + \expandafter\etb@ifinlistcs@i\csname #2\endcsname{#1}} +\long\def\etb@ifinlistcs@i#1#2{\ifinlist{#2}{#1}} + +\newrobustcmd{\xifinlistcs}[1]{% + \begingroup + \edef\etb@tempa{\endgroup\ifinlistcs{#1}}% + \etb@tempa} + +% {}{} => {}{}... + +\newcommand*{\forlistloop}[2]{% + \expandafter\etb@forlistloop\expandafter{#2}{#1}} + +\long\def\etb@forlistloop#1#2{\etb@forlistloop@i{#2}#1|&} + +\long\def\etb@forlistloop@i#1#2|#3&{% + \ifblank{#2} + {} + {#1{#2}}% + \ifblank{#3} + {\listbreak} + {\etb@forlistloop@i{#1}#3}% + &} + +% {}{} => {}{}... + +\newcommand*{\forlistcsloop}[2]{% + \expandafter\expandafter\expandafter\etb@forlistloop + \expandafter\expandafter\expandafter{\csname#2\endcsname}{#1}} + +% {} => \do{}\do{}... + +\newcommand*{\dolistloop}{\forlistloop\do} + +% {} => \do{}\do{}... + +\newcommand*{\dolistcsloop}{\forlistcsloop\do} + +% {} + +\newrobustcmd*{\AtEndPreamble}{\gappto\@endpreamblehook} +\newcommand*{\@endpreamblehook}{} + +\preto\document{% + \endgroup + \let\AtEndPreamble\@firstofone + \@endpreamblehook + \protected\def\AtEndPreamble{\@notprerr\@gobble}% + \undef\@endpreamblehook + \begingroup} + +% {} + +\newrobustcmd*{\AfterPreamble}{\AtBeginDocument} +\AtEndPreamble{\let\AfterPreamble\@firstofone} + +% {} + +\newrobustcmd*{\AfterEndPreamble}{\gappto\@afterendpreamblehook} +\newcommand*{\@afterendpreamblehook}{} + +\appto\document{% + \let\AfterEndPreamble\@firstofone + \@afterendpreamblehook + \protected\def\AfterEndPreamble{\@notprerr\@gobble}% + \undef\@afterendpreamblehook + \ignorespaces} + +\AtEndDocument{\let\AfterEndPreamble\@gobble} + +% {} + +\newrobustcmd*{\AfterEndDocument}{\gappto\@afterenddocumenthook} +\newcommand*{\@afterenddocumenthook}{} + +\patchcmd\enddocument + {\deadcycles} + {\let\AfterEndDocument\@firstofone + \@afterenddocumenthook + \deadcycles} + {} + {\let\etb@@end\@@end + \def\@@end{% + \let\AfterEndDocument\@firstofone + \@afterenddocumenthook + \etb@@end}} + +% {}{} + +\newrobustcmd{\AtBeginEnvironment}[1]{% + \csgappto{@begin@#1@hook}} + +\patchcmd\begin + {\csname #1\endcsname} + {\csuse{@begin@#1@hook}% + \csname #1\endcsname} + {} + {\etb@warning{% + Patching '\string\begin' failed!\MessageBreak + '\string\AtBeginEnvironment' will not work\@gobble}} + +% {}{} + +\newrobustcmd{\AtEndEnvironment}[1]{% + \csgappto{@end@#1@hook}} + +\patchcmd\end + {\csname end#1\endcsname} + {\csuse{@end@#1@hook}% + \csname end#1\endcsname} + {} + {\etb@warning{% + Patching '\string\end' failed!\MessageBreak + '\string\AtEndEnvironment' will not work\@gobble}} + +% {}{} + +\newrobustcmd{\BeforeBeginEnvironment}[1]{% + \csgappto{@beforebegin@#1@hook}} + +\pretocmd\begin + {\csuse{@beforebegin@#1@hook}} + {} + {\etb@warning{% + Patching '\string\begin' failed!\MessageBreak + '\string\BeforeBeginEnvironment' will not work\@gobble}} + +% {}{} + +\newrobustcmd{\AfterEndEnvironment}[1]{% + \csgappto{@afterend@#1@hook}} + +\patchcmd\end + {\if@ignore} + {\csuse{@afterend@#1@hook}% + \if@ignore} + {} + {\etb@warning{% + Patching '\string\end' failed!\MessageBreak + '\string\AfterEndEnvironment' will not work\@gobble}} + +\endinput diff --git a/etoolbox/etoolbox.tex b/etoolbox/etoolbox.tex new file mode 100644 index 0000000..9cd5375 --- /dev/null +++ b/etoolbox/etoolbox.tex @@ -0,0 +1,1482 @@ +% $Id: etoolbox.tex fea70947ae80 2013/05/29 01:53:47 foley $ +\documentclass{ltxdockit}[2010/09/26] +\usepackage[latin9]{inputenc} +\usepackage[american]{babel} +\usepackage[strict]{csquotes} +\usepackage{shortvrb} +\MakeAutoQuote{}{} +\MakeAutoQuote*{<}{>} +\MakeShortVerb{\|} + +\rcsid{$Id: etoolbox.tex fea70947ae80 2013/05/29 01:53:47 foley $} + +\titlepage{% + title={The \sty{etoolbox} Package}, + subtitle={An \etex Toolbox for Class and Package Authors}, + url={http://www.ctan.org/tex-archive/macros/latex/contrib/etoolbox/}, + author={Philipp Lehman}, + email={plehman@gmx.net}, + revision={\rcsrevision}, + date={\rcstoday}} + +\hypersetup{% + pdftitle={The etoolbox Package}, + pdfsubject={An e-TeX Toolbox for Class and Package Authors}, + pdfauthor={Philipp Lehman}, + pdfkeywords={tex, e-tex, latex, class, package, programming}} + +\begin{document} + +\printtitlepage +\tableofcontents + +\section{Introduction} +\label{int} + +\subsection[About]{About \sty{etoolbox}} + +The \sty{etoolbox} package is a toolbox of programming tools geared primarily towards \latex class and package authors. It provides \latex frontends to some of the new primitives provided by \etex as well as some generic tools which are not related to \etex but match the profile of this package. + +\subsection{License} + +Copyright \textcopyright\ 2007--2011 Philipp Lehman. Permission is granted to copy, distribute and\slash or modify this software under the terms of the \lppl, version 1.3.\fnurl{http://www.ctan.org/tex-archive/macros/latex/base/lppl.txt} This package is author"=maintained. + +\section{User Commands} +\label{use} + +The tools in this section are geared towards regular users as well as class and package authors. + +\subsection{Definitions} +\label{use:def} + +\begin{ltxsyntax} + +\cmditem{newrobustcmd}{command}[arguments][optarg default]{replacement text} +\cmditem*{newrobustcmd*}{command}[arguments][optarg default]{replacement text} + +The syntax and behavior of this command is similar to \cmd{newcommand} except that the newly defined \prm{command} will be robust. The behavior of this command differs from the \cmd{DeclareRobustCommand} command from the \latex kernel in that it issues an error rather than just an informational message if the \prm{command} is already defined. Since it uses \etex's low-level protection mechanism rather than the corresponding higher-level \latex facilities, it does not require an additional macro to implement the . + +\cmditem{renewrobustcmd}{command}[arguments][optarg default]{replacement text} +\cmditem*{renewrobustcmd*}{command}[arguments][optarg default]{replacement text} + +The syntax and behavior of this command is similar to \cmd{renewcommand} except that the redefined \prm{command} will be robust. + +\cmditem{providerobustcmd}{command}[arguments][optarg default]{replacement text} +\cmditem*{providerobustcmd*}{command}[arguments][optarg default]{replacement text} + +The syntax and behavior of this command is similar to \cmd{providecommand} except that the newly defined \prm{command} will be robust. Note that this command will provide a robust definition of the \prm{command} only if it is undefined. It will not make an already defined \prm{command} robust. + +\end{ltxsyntax} + +\subsection{Patching} +\label{use:pat} + +\begin{ltxsyntax} + +\cmditem{robustify}{command} + +Redefines a \prm{command} defined with \cmd{newcommand} such that it is robust, without altering its parameters, its prefixes, or its replacement text. If the \prm{command} has been defined with \cmd{DeclareRobustCommand}, this will be detected automatically and \latex's high-level protection mechanism will be replaced by the corresponding low-level \etex feature. + +\end{ltxsyntax} + +\subsection{Protection} +\label{use:pro} + +\begin{ltxsyntax} + +\cmditem{protecting}{code} + +This command applies \latex's protection mechanism, which normally requires prefixing each fragile command with \cmd{protect}, to an entire chunk of arbitrary \prm{code}. Its behavior depends on the current state of \cmd{protect}. Note that the braces around the \prm{code} are mandatory even if it is a single token. + +\end{ltxsyntax} + +\subsection[Lengths and Counters]{Length and Counter Assignments} +\label{use:cal} + +The tools in this section are replacements for \cmd{setcounter} and \cmd{setlength} which support arithmetic expressions. + +\begin{ltxsyntax} + +\cmditem{defcounter}{counter}{integer expression} + +Assigns a value to a \latex \prm{counter} previously initialized with \cmd{newcounter}. This command is similar in concept and syntax to \cmd{setcounter} except for two major differences. 1) The second argument may be an \prm{integer expression} which will be processed with \cmd{numexpr}. The \prm{integer expression} may be any arbitrary code which is valid in this context. The value assigned to the \prm{counter} will be the result of that calculation. 2) In contrast to \cmd{setcounter}, the assignment is local by default but \cmd{defcounter} may be prefixed with \cs{global}. The functional equivalent of \cmd{setcounter} would be \cs{global}\cmd{defcounter}. + +\cmditem{deflength}{length}{glue expression} + +Assigns a value to a \prm{length} register previously initialized with \cmd{newlength}. This command is similar in concept and syntax to \cmd{setlength} except that the second argument may be a \prm{glue expression} which will be processed with \cmd{glueexpr}. The \prm{glue expression} may be any arbitrary code which is valid in this context. The value assigned to the \prm{length} register will be the result of that calculation. The assignment is local by default but \cmd{deflength} may be prefixed with \cs{global}. This command may be used as a drop-in replacement for \cmd{setlength}. + +\end{ltxsyntax} + +\subsection[Document Hooks]{Additional Document Hooks} +\label{use:pre} + +\latex provides two hooks which defer the execution of code either to the beginning or to the end of the document body. Any \cmd{AtBeginDocument} code is executed towards the beginning of the document body, after the main \file{aux} file has been read for the first time. Any \cmd{AtEndDocument} code is executed at the end of the document body, before the main \file{aux} file is read for the second time. The hooks introduced here are similar in concept but defer the execution of their \prm{code} argument to slightly different locations. The \prm{code} may be arbitrary \tex code. Parameter characters in the \prm{code} argument are permissible and need not be doubled. + +\begin{ltxsyntax} + +\cmditem{AfterPreamble}{code} + +This hook is a variant of \cmd{AtBeginDocument} which may be used in both the preamble and the document body. When used in the preamble, it behaves exactely like \cmd{AtBeginDocument}. When used in the document body, it immediately executes its \prm{code} argument. \cmd{AtBeginDocument} would issue an error in this case. This hook is useful to defer code which needs to write to the main \file{aux} file. + +\cmditem{AtEndPreamble}{code} + +This hook differs from \cmd{AtBeginDocument} in that the \prm{code} is executed right at the end of the preamble, before the main \file{aux} file (as written on the previous \latex pass) is read and prior to any \cmd{AtBeginDocument} code. Note that it is not possible to write to the \file{aux} file at this point. + +\cmditem{AfterEndPreamble}{code} + +This hook differs from \cmd{AtBeginDocument} in that the \prm{code} is executed at the very end of |\begin{document}|, after any \cmd{AtBeginDocument} code. Note that commands whose scope has been restricted to the preamble with \cmd{@onlypreamble} are no longer available when this hook is executed. + +\cmditem{AfterEndDocument}{code} + +This hook differs from \cmd{AtEndDocument} in that the \prm{code} is executed at the very end of the document, after the main \file{aux} file (as written on the current \latex pass) has been read and after any \cmd{AtEndDocument} code. + +\end{ltxsyntax} + +In a way, \cmd{AtBeginDocument} code is part neither of the preamble nor the document body but located in-between them since it gets executed in the middle of the initialization sequence performed prior to typesetting. It is sometimes desirable to move code to the end of the preamble because all requested packages have been loaded at this point. \cmd{AtBeginDocument} code, however, is executed too late if it is required in the \file{aux} file. In contrast to that, \cmd{AtEndPreamble} code is part of the preamble; \cmd{AfterEndPreamble} code is part of the document body and may contain printable text to be typeset at the very beginning of the document. To sum that up, \latex will perform the following tasks |\begin{document}|: + +\begin{itemize} +\setlength{\itemsep}{0pt} +\item Execute any \cmd{AtEndPreamble} code +\item Start initialization for document body (page layout, default fonts, etc.) +\item Load the main \file{aux} file written on the previous \latex pass +\item Open the main \file{aux} file for writing on the current pass +\item Continue initialization for document body +\item Execute any \cmd{AtBeginDocument} code +\item Complete initialization for document body +\item Disable all \cmd{@onlypreamble} commands +\item Execute any \cmd{AfterEndPreamble} code +\end{itemize} +% +Inside |\end{document}|, \latex will perform the following tasks: + +\begin{itemize} +\setlength{\itemsep}{0pt} +\item Execute any \cmd{AtEndDocument} code +\item Perform a final \cmd{clearpage} operation +\item Close the main \file{aux} file for writing +\item Load the main \file{aux} file written on the current \latex pass +\item Perform final tests and issue warnings, if applicable +\item Execute any \cmd{AfterEndDocument} code +\end{itemize} +% +Any \cmd{AtEndDocument} code may be considered as being part of the document body insofar as it is still possible to perform typesetting tasks and write to the main \file{aux} file when it gets executed. \cmd{AfterEndDocument} code is not part of the document body. This hook is useful to evaluate the data in the \file{aux} file at the very end of a \latex pass. + +\subsection[Environment Hooks]{Environment Hooks} +\label{use:env} + +The tools in this section provide hooks for arbitrary environments. Note that they will not modify the definition of the \prm{environment}. They hook into the \cmd{begin} and \cmd{end} commands instead. Redefining the \prm{environment} will not clear the corresponding hooks. The \prm{code} may be arbitrary \tex code. Parameter characters in the \prm{code} argument are permissible and need not be doubled. + +\begin{ltxsyntax} + +\cmditem{AtBeginEnvironment}{environment}{code} + +Appends arbitrary \prm{code} to a hook executed by the \cmd{begin} command at the beginning of a given \prm{environment}, immediately before \cmd{\prm{environment}}, inside the group opened by \cmd{begin}. + +\cmditem{AtEndEnvironment}{environment}{code} + +Appends arbitrary \prm{code} to a hook executed by the \cmd{end} command at the end of a given \prm{environment}, immediately before \cmd{end\prm{environment}}, inside the group opened by \cmd{begin}. + +\cmditem{BeforeBeginEnvironment}{environment}{code} + +Appends arbitrary \prm{code} to a hook executed at a very early point by the \cmd{begin} command, before the group holding the environment is opened. + +\cmditem{AfterEndEnvironment}{environment}{code} + +Appends arbitrary \prm{code} to a hook executed at a very late point by the \cmd{end} command, after the group holding the environment has been closed. + +\end{ltxsyntax} + +\section{Author Commands} + +The tools in this section are geared towards class and package authors. + +\subsection{Definitions} + +\subsubsection{Macro Definitions} +\label{aut:def:def} + +The tools in this section are simple but frequently required shorthands which extend the scope of the \cmd{@namedef} and \cmd{@nameuse} macros from the \latex kernel. + +\begin{ltxsyntax} + +\cmditem{csdef}{csname}{replacement text} + +Similar to the \tex primitive \cmd{def} except that it takes a control sequence name as its first argument. This command is robust and corresponds to \cmd{@namedef}. + +\cmditem{csgdef}{csname}{replacement text} + +Similar to the \tex primitive \cmd{gdef} except that it takes a control sequence name as its first argument. This command is robust. + +\cmditem{csedef}{csname}{replacement text} + +Similar to the \tex primitive \cmd{edef} except that it takes a control sequence name as its first argument. This command is robust. + +\cmditem{csxdef}{csname}{replacement text} + +Similar to the \tex primitive \cmd{xdef} except that it takes a control sequence name as its first argument. This command is robust. + +\cmditem{protected@csedef}{csname}{replacement text} + +Similar to \cmd{csedef} except that \latex's protection mechanism is temporarily enabled. To put it in other words: this command is similar to the \latex kernel command \cmd{protected@edef} except that it takes a control sequence name as its first argument. This command is robust. + +\cmditem{protected@csxdef}{csname}{replacement text} + +Similar to \cmd{csxdef} except that \latex's protection mechanism is temporarily enabled. To put it in other words: this command is similar to the \latex kernel command \cmd{protected@xdef} except that it takes a control sequence name as its first argument. This command is robust. + +\cmditem{cslet}{csname}{command} + +Similar to the \tex primitive \cmd{let} except that the first argument is a control sequence name. If \prm{command} is undefined, \prm{csname} will be undefined as well after the assignment. This command is robust and may be prefixed with \cs{global}. + +\cmditem{letcs}{command}{csname} + +Similar to the \tex primitive \cmd{let} except that the second argument is a control sequence name. If \prm{csname} is undefined, the \prm{command} will be undefined as well after the assignment. This command is robust and may be prefixed with \cs{global}. + +\cmditem{csletcs}{csname}{csname} + +Similar to the \tex primitive \cmd{let} except that both arguments are control sequence names. If the second \prm{csname} is undefined, the first \prm{csname} will be undefined as well after the assignment. This command is robust and may be prefixed with \cs{global}. + +\cmditem{csuse}{csname} + +Takes a control sequence name as its argument and forms a control sequence token. This command differs from the \cmd{@nameuse} macro in the \latex kernel in that it expands to an empty string if the control sequence is undefined. + +\cmditem{undef} + +Clears a \prm{command} such that \etex's \cmd{ifdefined} and \cmd{ifcsname} tests will consider it as undefined. This command is robust and may be prefixed with \cs{global}. + +\cmditem{csundef}{csname} + +Similar to \cmd{undef} except that it takes a control sequence name as its argument. This command is robust and may be prefixed with \cs{global}. + +\cmditem{csshow}{csname} + +Similar to the \tex primitive \cmd{show} but takes a control sequence name as its argument. If the control sequence is undefined, this command will not implicitly assign a meaning of \cmd{relax} to it. This command is robust. + +\end{ltxsyntax} + +\subsubsection{Arithmetic Definitions} +\label{aut:def:cal} + +The tools in this section permit calculations using macros rather than length registers and counters. + +\begin{ltxsyntax} + +\cmditem{numdef}{integer expression} + +Similar to \cmd{edef} except that the \prm{integer expression} is processed with \cmd{numexpr}. The \prm{integer expression} may be any arbitrary code which is valid in this context. The replacement text assigned to the \prm{command} will be the result of that calculation. If the \prm{command} is undefined, it will be initialized to \texttt{0} before the \prm{integer expression} is processed. + +\cmditem{numgdef}{integer expression} + +Similar to \cmd{numdef} except that the assignment is global. + +\cmditem{csnumdef}{csname}{integer expression} + +Similar to \cmd{numdef} except that it takes a control sequence name as its first argument. + +\cmditem{csnumgdef}{csname}{integer expression} + +Similar to \cmd{numgdef} except that it takes a control sequence name as its first argument. + +\cmditem{dimdef}{dimen expression} + +Similar to \cmd{edef} except that the \prm{dimen expression} is processed with \cmd{dimexpr}. The \prm{dimen expression} may be any arbitrary code which is valid in this context. The replacement text assigned to the \prm{command} will be the result of that calculation. If the \prm{command} is undefined, it will be initialized to \texttt{0pt} before the \prm{dimen expression} is processed. + +\cmditem{dimgdef}{dimen expression} + +Similar to \cmd{dimdef} except that the assignment is global. + +\cmditem{csdimdef}{csname}{dimen expression} + +Similar to \cmd{dimdef} except that it takes a control sequence name as its first argument. + +\cmditem{csdimgdef}{csname}{dimen expression} + +Similar to \cmd{dimgdef} except that it takes a control sequence name as its first argument. + +\cmditem{gluedef}{glue expression} + +Similar to \cmd{edef} except that the \prm{glue expression} is processed with \cmd{glueexpr}. The \prm{glue expression} may be any arbitrary code which is valid in this context. The replacement text assigned to the \prm{command} will be the result of that calculation. If the \prm{command} is undefined, it will be initialized to \texttt{0pt plus 0pt minus 0pt} before the \prm{glue expression} is processed. + +\cmditem{gluegdef}{glue expression} + +Similar to \cmd{gluedef} except that the assignment is global. + +\cmditem{csgluedef}{csname}{glue expression} + +Similar to \cmd{gluedef} except that it takes a control sequence name as its first argument. + +\cmditem{csgluegdef}{csname}{glue expression} + +Similar to \cmd{gluegdef} except that it takes a control sequence name as its first argument. + +\cmditem{mudef}{muglue expression} + +Similar to \cmd{edef} except that the \prm{muglue expression} is processed with \cmd{muexpr}. The \prm{muglue expression} may be any arbitrary code which is valid in this context. The replacement text assigned to the \prm{command} will be the result of that calculation. If the \prm{command} is undefined, it will be initialized to \texttt{0mu} before the \prm{muglue expression} is processed. + +\cmditem{mugdef}{muglue expression} + +Similar to \cmd{mudef} except that the assignment is global. + +\cmditem{csmudef}{csname}{muglue expression} + +Similar to \cmd{mudef} except that it takes a control sequence name as its first argument. + +\cmditem{csmugdef}{csname}{muglue expression} + +Similar to \cmd{mugdef} except that it takes a control sequence name as its first argument. + +\end{ltxsyntax} + +\subsection{Expansion Control} +\label{aut:exp} + +The tools in this section are useful to control expansion in an \cmd{edef} or a similar context. + +\begin{ltxsyntax} + +\cmditem{expandonce} + +This command expands a \prm{command} once and prevents further expansion of the replacement text. This command is expandable. + +\cmditem{csexpandonce}{csname} + +Similar to \cmd{expandonce} except that it takes a control sequence name as its argument. + +\end{ltxsyntax} + +\subsection{Hook Management} +\label{aut:hok} + +The tools in this section are intended for hook management. A \prm{hook} in this context is a plain macro without any parameters and prefixes which is used to collect code to be executed later. These tools may also be useful to patch simple macros by appending code to their replacement text. For more complex patching operations, see section \ref{aut:pat}. All commands in this section will initialize the \prm{hook} if it is undefined. + +\subsubsection{Appending to a Hook} +\label{aut:hok:app} + +The tools in this section append arbitrary code to a hook. + +\begin{ltxsyntax} + +\cmditem{appto}{code} + +This command appends arbitrary \prm{code} to a \prm{hook}. If the \prm{code} contains any parameter characters, they need not be doubled. This command is robust. + +\cmditem{gappto}{code} + +Similar to \cmd{appto} except that the assignment is global. This command may be used as a drop-in replacement for the \cmd{g@addto@macro} command in the \latex kernel. + +\cmditem{eappto}{code} + +This command appends arbitrary \prm{code} to a \prm{hook}. The \prm{code} is expanded at definition"=time. Only the new \prm{code} is expanded, the current replacement text of the \prm{hook} is not. This command is robust. + +\cmditem{xappto}{code} + +Similar to \cmd{eappto} except that the assignment is global. + +\cmditem{protected@eappto}{code} + +Similar to \cmd{eappto} except that \latex's protection mechanism is temporarily enabled. + +\cmditem{protected@xappto}{code} + +Similar to \cmd{xappto} except that \latex's protection mechanism is temporarily enabled. + +\cmditem{csappto}{csname}{code} + +Similar to \cmd{appto} except that it takes a control sequence name as its first argument. + +\cmditem{csgappto}{csname}{code} + +Similar to \cmd{gappto} except that it takes a control sequence name as its first argument. + +\cmditem{cseappto}{csname}{code} + +Similar to \cmd{eappto} except that it takes a control sequence name as its first argument. + +\cmditem{csxappto}{csname}{code} + +Similar to \cmd{xappto} except that it takes a control sequence name as its first argument. + +\cmditem{protected@cseappto}{code} + +Similar to \cmd{protected@eappto} except that it takes a control sequence name as its first argument. + +\cmditem{protected@csxappto}{code} + +Similar to \cmd{protected@xappto} except that it takes a control sequence name as its first argument. + +\end{ltxsyntax} + +\subsubsection{Prepending to a Hook} +\label{aut:hok:pre} + +The tools in this section arbitrary code to a hook, \ie the code is inserted at the beginning of the hook rather than being added at the end. + +\begin{ltxsyntax} + +\cmditem{preto}{code} + +Similar to \cmd{appto} except that the \prm{code} is prepended. + +\cmditem{gpreto}{code} + +Similar to \cmd{preto} except that the assignment is global. + +\cmditem{epreto}{code} + +Similar to \cmd{eappto} except that the \prm{code} is prepended. + +\cmditem{xpreto}{code} + +Similar to \cmd{epreto} except that the assignment is global. + +\cmditem{protected@epreto}{code} + +Similar to \cmd{epreto} except that \latex's protection mechanism is temporarily enabled. + +\cmditem{protected@xpreto}{code} + +Similar to \cmd{xpreto} except that \latex's protection mechanism is temporarily enabled. + +\cmditem{cspreto}{csname}{code} + +Similar to \cmd{preto} except that it takes a control sequence name as its first argument. + +\cmditem{csgpreto}{csname}{code} + +Similar to \cmd{gpreto} except that it takes a control sequence name as its first argument. + +\cmditem{csepreto}{csname}{code} + +Similar to \cmd{epreto} except that it takes a control sequence name as its first argument. + +\cmditem{csxpreto}{csname}{code} + +Similar to \cmd{xpreto} except that it takes a control sequence name as its first argument. + +\cmditem{protected@csepreto}{code} + +Similar to \cmd{protected@epreto} except that it takes a control sequence name as its first argument. + +\cmditem{protected@csxpreto}{code} + +Similar to \cmd{protected@xpreto} except that it takes a control sequence name as its first argument. + +\end{ltxsyntax} + +\subsection{Patching} +\label{aut:pat} + +The tools in this section are useful to hook into or modify existing code. All commands presented here preserve the parameters and the prefixes of the patched \prm{command}. Note that \cs{outer} commands may not be patched. Also note that the commands in this section will not automatically issue any error messages if patching fails. Instead, they take a \prm{failure} argument which should provide suitable fallback code or an error message. Issuing \cmd{tracingpatches} in the preamble will cause the commands to write debugging information to the transcript file. + +\begin{ltxsyntax} + +\cmditem{patchcmd}[prefix]{command}{search}{replace}{success}{failure} + +This command extracts the replacement text of a \prm{command}, replaces \prm{search} with \prm{replace}, and reassembles the \prm{command}. The pattern match is category code agnostic and matches the first occurence of the \prm{search} pattern in the replacement text of the \prm{command} to be patched. Note that the patching process involves detokenizing the replacement text of the \prm{command} and retokenizing it under the current category code regime after patching. The category code of the @ sign is temporarily set to 11. If the replacement text of the \prm{command} includes any tokens with non"=standard category codes, the respective category codes must be adjusted prior to patching. If the code to be replaced or inserted refers to the parameters of the \prm{command} to be patched, the parameter characters need not be doubled. If an optional \prm{prefix} is specified, it replaces the prefixes of the \prm{command}. An empty \prm{prefix} argument strips all prefixes from the \prm{command}. The assignment is local. This command implicitly performs the equivalent of an \cmd{ifpatchable} test prior to patching. If this test succeeds, the command applies the patch and executes \prm{success}. If the test fails, it executes \prm{failure} without modifying the original \prm{command}. This command is robust. + +\cmditem{ifpatchable}{command}{search}{true}{false} + +This command executes \prm{true} if the \prm{command} may be patched with \cmd{patchcmd} and if the \prm{search} pattern is found in its replacement text, and \prm{false} otherwise. This command is robust. + +\cmditem*{ifpatchable*}{command}{true}{false} + +Similar to \cmd{ifpatchable} except that the starred variant does not require a search pattern. Use this version to check if a command may be patched with \cmd{apptocmd} and \cmd{pretocmd}. + +\cmditem{apptocmd}{command}{code}{success}{failure} + +This command appends \prm{code} to the replacement text of a \prm{command}. If the \prm{command} is a parameterless macro, it behaves like \cmd{appto} from section \ref{aut:hok:app}. In contrast to \cmd{appto}, \cmd{apptocmd} may also be used to patch commands with parameters. In this case, it will detokenize the replacement text of the \prm{command}, apply the patch, and retokenize it under the current category code regime. The category code of the @ sign is temporarily set to 11. The \prm{code} may refer to the parameters of the \prm{command}. The assignment is local. If patching succeeds, this command executes \prm{success}. If patching fails, it executes \prm{failure} without modifying the original \prm{command}. This command is robust. + +\cmditem{pretocmd}{command}{code}{success}{failure} + +This command is similar to \cmd{apptocmd} except that the \prm{code} is inserted at the beginning of the replacement text of the \prm{command}. If the \prm{command} is a parameterless macro, it behaves like \cmd{preto} from section \ref{aut:hok:app}. In contrast to \cmd{preto}, \cmd{pretocmd} may also be used to patch commands with parameters. In this case, it will detokenize the replacement text of the \prm{command}, apply the patch, and retokenize it under the current category code regime. The category code of the @ sign is temporarily set to 11. The \prm{code} may refer to the parameters of the \prm{command}. The assignment is local. If patching succeeds, this command executes \prm{success}. If patching fails, it executes \prm{failure} without modifying the original \prm{command}. This command is robust. + +\csitem{tracingpatches} + +Enables tracing for all patching commands, including \cmd{ifpatchable}. The debugging information will be written to the transcript file. This is useful if the reason why a patch is not applied or \cmd{ifpatchable} yields \prm{false} is not obvious. This command must be issued in the preamble. + +\end{ltxsyntax} + +\subsection{Boolean Flags} +\label{aut:bol} + +This package provides two interfaces to boolean flags which are completely independent of each other. The tools in section \ref{aut:bo1:bol} are a \latex frontend to \cmd{newif}. Those in section \ref{aut:bo1:tgl} use a different mechanism. + +\subsubsection{\tex Flags} +\label{aut:bo1:bol} + +Since the tools in this section are based on \cmd{newif} internally, they may be used to test and alter the state of flags previously defined with \cmd{newif}. They are also compatible with the boolean tests of the \sty{ifthen} package and may serve as a \latex interface for querying \tex primitives such as \cmd{ifmmode}. The \cmd{newif} approach requires a total of three macros per flag. + +\begin{ltxsyntax} + +\cmditem{newbool}{name} + +Defines a new boolean flag called \prm{name}. If the flag has already been defined, this command issues an error. The initial state of newly defined flags is \texttt{false}. This command is robust. + +\cmditem{providebool}{name} + +Defines a new boolean flag called \prm{name} unless it has already been defined. This command is robust. + +\cmditem{booltrue}{name} + +Sets the boolean flag \prm{name} to \texttt{true}. This command is robust and may be prefixed with \cs{global}. It will issue an error if the flag is undefined. + +\cmditem{boolfalse}{name} + +Sets the boolean flag \prm{name} to \texttt{false}. This command is robust and may be prefixed with \cs{global}. It will issue an error if the flag is undefined. + +\cmditem{setbool}{name}{value} + +Sets the boolean flag \prm{name} to \prm{value} which may be either \texttt{true} or \texttt{false}. This command is robust and may be prefixed with \cs{global}. It will issue an error if the flag is undefined. + +\cmditem{ifbool}{name}{true}{false} + +Expands to \prm{true} if the state of the boolean flag \prm{name} is \texttt{true}, and to \prm{false} otherwise. If the flag is undefined, this command issues an error. This command may be used to perform any boolean test based on plain \tex syntax, \ie any test normally employed like this: + +\begin{ltxcode} +<<\iftest>> true<<\else>> false<<\fi>> +\end{ltxcode} + +This includes all flags defined with \cmd{newif} as well as \tex primitives such as \cmd{ifmmode}. The \cmd{if} prefix is omitted when using the flag or the primitive in the expression. For example: + +\begin{ltxcode} +<<\ifmytest>> true\else false\fi +<<\ifmmode>> true\else false\fi +\end{ltxcode} +% +becomes + +\begin{ltxcode} +\ifbool{<>}{true}{false} +\ifbool{<>}{true}{false} +\end{ltxcode} + +\cmditem{notbool}{name}{not true}{not false} + +Similar to \cmd{ifbool} but negates the test. + +\end{ltxsyntax} + +\subsubsection{\latex Flags} +\label{aut:bo1:tgl} + +In contrast to the flags from section \ref{aut:bo1:bol}, the tools in this section require only one macro per flag. They also use a separate namespace to avoid name clashes with regular macros. + +\begin{ltxsyntax} + +\cmditem{newtoggle}{name} + +Defines a new boolean flag called \prm{name}. If the flag has already been defined, this command issues an error. The initial state of newly defined flags is \texttt{false}. This command is robust. + +\cmditem{providetoggle}{name} + +Defines a new boolean flag called \prm{name} unless it has already been defined. This command is robust. + +\cmditem{toggletrue}{name} + +Sets the boolean flag \prm{name} to \texttt{true}. This command is robust and may be prefixed with \cs{global}. It will issue an error if the flag is undefined. + +\cmditem{togglefalse}{name} + +Sets the boolean flag \prm{name} to \texttt{false}. This command is robust and may be prefixed with \cs{global}. It will issue an error if the flag is undefined. + +\cmditem{settoggle}{name}{value} + +Sets the boolean flag \prm{name} to \prm{value} which may be either \texttt{true} or \texttt{false}. This command is robust and may be prefixed with \cs{global}. It will issue an error if the flag is undefined. + +\cmditem{iftoggle}{name}{true}{false} + +Expands to \prm{true} if the state of the boolean flag \prm{name} is \texttt{true}, and to \prm{false} otherwise. If the flag is undefined, this command issues an error. + +\cmditem{nottoggle}{name}{not true}{not false} + +Similar to \cmd{iftoggle} but negates the test. + +\end{ltxsyntax} + +\subsection{Generic Tests} +\label{aut:tst} + +\subsubsection{Macro Tests} +\label{aut:tst:def} + +\begin{ltxsyntax} + +\cmditem{ifdef}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is defined, and to \prm{false} otherwise. Note that control sequences will be considered as defined even if their meaning is \cmd{relax}. This command is a \latex wrapper for the \etex primitive \cmd{ifdefined}. + +\cmditem{ifcsdef}{csname}{true}{false} + +Similar to \cmd{ifdef} except that it takes a control sequence name as its first argument. This command is a \latex wrapper for the \etex primitive \cmd{ifcsname}. + +\cmditem{ifundef}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is undefined, and to \prm{false} otherwise. Apart from reversing the logic of the test, this command also differs from \cmd{ifdef} in that commands will be considered as undefined if their meaning is \cmd{relax}. + +\cmditem{ifcsundef}{csname}{true}{false} + +Similar to \cmd{ifundef} except that it takes a control sequence name as its first argument. This command may be used as a drop-in replacement for the \cmd{@ifundefined} test in the \latex kernel. + +\cmditem{ifdefmacro}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is defined and is a macro, and to \prm{false} otherwise. + +\cmditem{ifcsmacro}{csname}{true}{false} + +Similar to \cmd{ifdefmacro} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefparam}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is defined and is a macro with one or more parameters, and to \prm{false} otherwise. + +\cmditem{ifcsparam}{csname}{true}{false} + +Similar to \cmd{ifdefparam} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefprefix}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is defined and is a macro prefixed with \cs{long} and\slash or \cs{protected}, and to \prm{false} otherwise. Note that \cs{outer} macros may not be tested. + +\cmditem{ifcsprefix}{csname}{true}{false} + +Similar to \cmd{ifdefprefix} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefprotected}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is defined and is a macro prefixed with \cs{protected}, and to \prm{false} otherwise. + +\cmditem{ifcsprotected}{csname}{true}{false} + +Similar to \cmd{ifdefprotected} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefltxprotect}{control sequence}{true}{false} + +Executes \prm{true} if the \prm{control sequence} is defined and is a \latex protection shell, and \prm{false} otherwise. This command is robust. It will detect commands which have been defined with \cmd{DeclareRobustCommand} or by way of a similar technique. + +\cmditem{ifcsltxprotect}{csname}{true}{false} + +Similar to \cmd{ifdefltxprotect} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefempty}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is defined and is a parameterless macro whose replacement text is empty, and to \prm{false} otherwise. In contrast to \cmd{ifx}, this test ignores the prefixes of the \prm{command}. + +\cmditem{ifcsempty}{csname}{true}{false} + +Similar to \cmd{ifdefempty} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefvoid}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is undefined, if is a macro whose meaning is \cmd{relax}, or a parameterless macro whose replacement text is empty, and to \prm{false} otherwise. + +\cmditem{ifcsvoid}{csname}{true}{false} + +Similar to \cmd{ifdefvoid} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefequal}{control sequence}{control sequence}{true}{false} + +Compares two control sequences and expands to \prm{true} if they are equal in the sense of \cmd{ifx}, and to \prm{false} otherwise. In contrast to \cmd{ifx}, this test will also yield \prm{false} if both control sequences are undefined or have a meaning of \cmd{relax}. + +\cmditem{ifcsequal}{csname}{csname}{true}{false} + +Similar to \cmd{ifdefequal} except that it takes control sequence names as arguments. + +\cmditem{ifdefstring}{command}{string}{true}{false} + +Compares the replacement text of a \prm{command} to a \prm{string} and executes \prm{true} if they are equal, and \prm{false} otherwise. Neither the \prm{command} nor the \prm{string} is expanded in the test and the comparison is category code agnostic. Control sequence tokens in the \prm{string} argument will be detokenized and treated as strings. This command is robust. Note that it will only consider the replacement text of the \prm{command}. For example, this test + +\begin{ltxcode} +\long\edef\mymacro#1#2{\string&} +\ifdefstring{\mymacro}{&}{true}{false} +\end{ltxcode} +% +would yield \prm{true}. The prefix and the parameters of \cmd{mymacro} as well as the category codes in the replacement text are ignored. + +\cmditem{ifcsstring}{csname}{string}{true}{false} + +Similar to \cmd{ifdefstring} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefstrequal}{command}{command}{true}{false} + +Performs a category code agnostic string comparison of the replacement text of two commands. This command is similar to \cmd{ifdefstring} except that both arguments to be compared are macros. This command is robust. + +\cmditem{ifcsstrequal}{csname}{csname}{true}{false} + +Similar to \cmd{ifdefstrequal} except that it takes control sequence names as arguments. + +\end{ltxsyntax} + +\subsubsection{Counter and Length Tests} +\label{aut:tst:cnt} + +\begin{ltxsyntax} + +\cmditem{ifdefcounter}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is a \tex \cmd{count} register allocated with \cmd{newcount}, and to \prm{false} otherwise. + +\cmditem{ifcscounter}{csname}{true}{false} + +Similar to \cmd{ifdefcounter} except that it takes a control sequence name as its first argument. + +\cmditem{ifltxcounter}{name}{true}{false} + +Expands to \prm{true} if \prm{name} is a \latex counter allocated with \cmd{newcounter}, and to \prm{false} otherwise. + +\cmditem{ifdeflength}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is a \tex \cmd{skip} register allocated with \cmd{newskip} or \cmd{newlength}, and to \prm{false} otherwise. + +\cmditem{ifcslength}{csname}{true}{false} + +Similar to \cmd{ifdeflength} except that it takes a control sequence name as its first argument. + +\cmditem{ifdefdimen}{control sequence}{true}{false} + +Expands to \prm{true} if the \prm{control sequence} is a \tex \cmd{dimen} register allocated with \cmd{newdimen}, and to \prm{false} otherwise. + +\cmditem{ifcsdimen}{csname}{true}{false} + +Similar to \cmd{ifdefdimen} except that it takes a control sequence name as its first argument. + +\end{ltxsyntax} + +\subsubsection{String Tests} +\label{aut:tst:str} + +\begin{ltxsyntax} + +\cmditem{ifstrequal}{string}{string}{true}{false} + +Compares two strings and executes \prm{true} if they are equal, and \prm{false} otherwise. The strings are not expanded in the test and the comparison is category code agnostic. Control sequence tokens in any of the \prm{string} arguments will be detokenized and treated as strings. This command is robust. + +\cmditem{ifstrempty}{string}{true}{false} + +Expands to \prm{true} if the \prm{string} is empty, and to \prm{false} otherwise. The \prm{string} is not expanded in the test. + +\cmditem{ifblank}{string}{true}{false} + +Expands to \prm{true} if the \prm{string} is blank (empty or spaces), and to \prm{false} otherwise. The \prm{string} is not expanded in the test.\footnote{This macro is based on code by Donald Arseneau.} + +\cmditem{notblank}{string}{not true}{not false} + +Similar to \cmd{ifblank} but negates the test. + +\end{ltxsyntax} + +\subsubsection{Arithmetic Tests} +\label{aut:tst:num} + +\begin{ltxsyntax} + +\cmditem{ifnumcomp}{integer expression}{relation}{integer expression}{true}{false} + +Compares two integer expressions according to \prm{relation} and expands to \prm{true} or \prm{false} depending on the result. The \prm{relation} may be |<|, |>|, or |=|. Both integer expressions will be processed with \cmd{numexpr}. An \prm{integer expression} may be any arbitrary code which is valid in this context. All arithmetic expressions may contain spaces. Here are some examples: + +\begin{ltxcode} +\ifnumcomp{<<3>>}{<<>>>}{<<6>>}{true}{<>} +\ifnumcomp{<<(7 + 5) / 2>>}{<<=>>}{<<6>>}{<>}{false} +\ifnumcomp{<<(7+5) / 4>>}{<<>>>}{<<3*(12-10)>>}{true}{<>} +\newcounter{countA} +\setcounter{countA}{<<6>>} +\newcounter{countB} +\setcounter{countB}{<<5>>} +\ifnumcomp{<<\value{countA} * \value{countB}/2}>>{<<=>>}{<<15>>}{<>}{false} +\ifnumcomp{<<6/2>>}{<<=>>}{<<5/2>>}{<>}{false} +\end{ltxcode} +% +Technically, this command is a \latex wrapper for the \tex primitive \cmd{ifnum}, incorporating \cmd{numexpr}. Note that \cmd{numexpr} will round the result of all integer expressions, \ie both expressions will be processed and rounded prior to being compared. In the last line of the above examples, the result of the second expression is 2.5, which is rounded to 3, hence \cmd{ifnumcomp} will expand to \prm{true}. + +\cmditem{ifnumequal}{integer expression}{integer expression}{true}{false} + +Alternative syntax for |\ifnumcomp{...}{=}{...}{...}{...}|. + +\cmditem{ifnumgreater}{integer expression}{integer expression}{true}{false} + +Alternative syntax for |\ifnumcomp{...}{>}{...}{...}{...}|. + +\cmditem{ifnumless}{integer expression}{integer expression}{true}{false} + +Alternative syntax for |\ifnumcomp{...}{<}{...}{...}{...}|. + +\cmditem{ifnumodd}{integer expression}{true}{false} + +Evaluates an integer expression and expands to \prm{true} if the result is an odd number, and to \prm{false} otherwise. Technically, this command is a \latex wrapper for the \tex primitive \cmd{ifodd}, incorporating \cmd{numexpr}. + +\cmditem{ifdimcomp}{dimen expression}{relation}{dimen expression}{true}{false} + +Compares two dimen expressions according to \prm{relation} and expands to \prm{true} or \prm{false} depending on the result. The \prm{relation} may be |<|, |>|, or |=|. Both dimen expressions will be processed with \cmd{dimexpr}. A \prm{dimen expression} may be any arbitrary code which is valid in this context. All arithmetic expressions may contain spaces. Here are some examples: + +\begin{ltxcode} +\ifdimcomp{<<1cm>>}{<<=>>}{<<28.45274pt>>}{<>}{false} +\ifdimcomp{<<(7pt + 5pt) / 2>>}{<<<>>}{2pt}{true}{<>} +\ifdimcomp{<<(3.725pt + 0.025pt) * 2>>}{<<<>>}{<<7pt>>}{true}{<>} +\newlength{\lengthA} +\setlength{\lengthA}{<<7.25pt>>} +\newlength{\lengthB} +\setlength{\lengthB}{<<4.75pt>>} +\ifdimcomp{<<(\lengthA + \lengthB) / 2>>}{<<>>>}{<<2.75pt * 2>>}{<>}{false} +\ifdimcomp{<<(\lengthA + \lengthB) / 2>>}{<<>>>}{<<25pt / 6>>}{<>}{false} +\end{ltxcode} +% +Technically, this command is a \latex wrapper for the \tex primitive \cmd{ifdim}, incorporating \cmd{dimexpr}. Since both \cmd{ifdimcomp} and \cmd{ifnumcomp} are expandable, they may also be nested: + +\begin{ltxcode} +<<\ifnumcomp>>{<<\ifdimcomp>>{<<5pt+5pt>>}{<<=>>}{<<10pt>>}{<<1>>}{<<0>>}}{<<>>>}{<<0>>}{<>}{false} +\end{ltxcode} + +\cmditem{ifdimequal}{dimen expression}{dimen expression}{true}{false} + +Alternative syntax for |\ifdimcomp{...}{=}{...}{...}{...}|. + +\cmditem{ifdimgreater}{dimen expression}{dimen expression}{true}{false} + +Alternative syntax for |\ifdimcomp{...}{>}{...}{...}{...}|. + +\cmditem{ifdimless}{dimen expression}{dimen expression}{true}{false} + +Alternative syntax for |\ifdimcomp{...}{<}{...}{...}{...}|. + +\end{ltxsyntax} + +\subsubsection{Boolean Expressions} +\label{aut:tst:bol} + +The commands in this section are replacements for the \cmd{ifthenelse} command provided by the \sty{ifthen} package. They serve the same purpose but differ in syntax, concept, and implementation. In contrast to \cmd{ifthenelse}, they do not provide any tests of their own but serve as a frontend to other tests. Any test which satisfies certain syntactical requirements may be used in a boolean expression. + +\begin{ltxsyntax} + +\cmditem{ifboolexpr}{expression}{true}{false} + +Evaluates the \prm{expression} and executes \prm{true} if it is true, and \prm{false} otherwise. The \prm{expression} is evaluated sequentially from left to right. The following elements, discussed in more detail below, are available in the \prm{expression}: the test operators \texttt{togl}, \texttt{bool}, \texttt{test}; the logical operators \texttt{not}, \texttt{and}, \texttt{or}; and the subexpression delimiter \texttt{(...)}. Spaces, tabs, and line endings may be used freely to arrange the \prm{expression} visually. Blank lines are not permissible in the \prm{expression}. This command is robust. + +\cmditem{ifboolexpe}{expression}{true}{false} + +An expandable version of \cmd{ifboolexpr} which may be processed in an expansion-only context, \eg in an \cmd{edef} or in a \cmd{write} operation. Note that all tests used in the \prm{expression} must be expandable, even if \cmd{ifboolexpe} is not located in an expansion-only context. + +\cmditem{whileboolexpr}{expression}{code} + +Evaluates the \prm{expression} like \cmd{ifboolexpr} and repeatedly executes the \prm{code} while the expression is true. The \prm{code} may be any valid \tex or \latex code. This command is robust. + +\cmditem{unlessboolexpr}{expression}{code} + +Similar to \cmd{whileboolexpr} but negates the \prm{expression}, \ie it keeps executing the \prm{code} repeatedly unless the expression is true. This command is robust. + +\end{ltxsyntax} +% +The following test operators are available in the \prm{expression}: + +\begin{marglist} +\appto\marglistfont{\verbatimfont} + +\item[togl] + +Use the \texttt{togl} operator to test the state of a flag defined with \cmd{newtoggle}. For example: + +\begin{ltxcode} +<<\iftoggle{mytoggle}>>{true}{false} +\end{ltxcode} +% +becomes + +\begin{ltxcode} +\ifboolexpr{ <> {<>} }{true}{false} +\end{ltxcode} +% +The \texttt{togl} operator may be used with both \cmd{ifboolexpr} and \cmd{ifboolexpe}. + +\item[bool] + +Use the \texttt{bool} operator to perform a boolean test based on plain \tex syntax, \ie any test normally employed like this: + +\begin{ltxcode} +<<\iftest>> true<<\else>> false<<\fi>> +\end{ltxcode} +% +This includes all flags defined with \cmd{newif} as well as \tex primitives such as \cmd{ifmmode}. The \cmd{if} prefix is omitted when using the flag or the primitive in the expression. For example: + +\begin{ltxcode} +<<\ifmmode>> true\else false\fi +<<\ifmytest>> true\else false\fi +\end{ltxcode} +% +becomes + +\begin{ltxcode} +\ifboolexpr{ <> {<>} }{true}{false} +\ifboolexpr{ <> {<>} }{true}{false} +\end{ltxcode} +% +This also works with flags defined with \cmd{newbool} (see \secref{aut:bo1:bol}). In this case + +\begin{ltxcode} +<<\ifbool{mybool}>>{true}{false} +\end{ltxcode} +% +becomes + +\begin{ltxcode} +\ifboolexpr{ <> {<>} }{true}{false} +\end{ltxcode} +% +The \texttt{bool} operator may be used with both \cmd{ifboolexpr} and \cmd{ifboolexpe}. + +\item[test] + +Use the \texttt{test} operator to perform a test based on \latex syntax, \ie any test normally employed like this: + +\begin{ltxcode} +<<\iftest>>{<>}{<>} +\end{ltxcode} +% +This applies to all macros based on \latex syntax, \ie the macro must take a \prm{true} and a \prm{false} argument and these must be the final arguments. For example: + +\begin{ltxcode} +<<\ifdef>>{\somemacro}<<{true}{false}>> +<<\ifdimless>>{\textwidth}{365pt}<<{true}{false}>> +<<\ifnumcomp>>{\value{somecounter}}{>}{3}<<{true}{false}>> +\end{ltxcode} + +When using such tests in the \prm{expression}, their \prm{true} and \prm{false} arguments are omitted. For example: + +\begin{ltxcode} +<<\ifcsdef{mymacro}>>{true}{false} +\end{ltxcode} +% +becomes + +\begin{ltxcode} +\ifboolexpr{ <> {<<\ifcsdef{mymacro}>>} }{true}{false} +\end{ltxcode} +% +and + +\begin{ltxcode} +<<\ifnumcomp{\value{mycounter}}{>}{3}>>{true}{false} +\end{ltxcode} +% +becomes + +\begin{ltxcode} +\ifboolexpr{ + <> {<<\ifnumcomp{\value{mycounter}}{>}{3}>>} +} +{true} +{false} +\end{ltxcode} +% +The \texttt{test} operator may be used with \cmd{ifboolexpr} without any restrictions. It may also be used with \cmd{ifboolexpe}, provided that the test is expandable. Some of the generic tests in \secref{aut:tst} are robust and may not be used with \cmd{ifboolexpe}, even if \cmd{ifboolexpe} is not located in an expansion-only context. Use \cmd{ifboolexpr} instead if the test is not expandable. + +\end{marglist} + +Since \cmd{ifboolexpr} and \cmd{ifboolexpe} imply processing overhead, there is generally no benefit in employing them for a single test. The stand-alone tests in \secref{aut:tst} are more efficient than \texttt{test}, \cmd{ifbool} from \secref{aut:bo1:bol} is more efficient than \texttt{bool}, and \cmd{iftoggle} from \secref{aut:bo1:tgl} is more efficient than \texttt{togl}. The point of \cmd{ifboolexpr} and \cmd{ifboolexpe} is that they support logical operators and subexpressions. The following logical operators are available in the \prm{expression}: + +\begin{marglist} +\appto\marglistfont{\verbatimfont} + +\item[not] + +The \texttt{not} operator negates the truth value of the immediately following element. You may prefix \texttt{togl}, \texttt{bool}, \texttt{test}, and subexpressions with \texttt{not}. For example: + +\begin{ltxcode} +\ifboolexpr{ + <> bool {mybool} +} +{true} +{false} +\end{ltxcode} +% +will yield \prm{true} if \texttt{mybool} is false and \prm{false} if \texttt{mybool} is true, and + +\begin{ltxcode} +\ifboolexpr{ + <> bool {boolA} or bool {boolB} <<)>> +} +{true} +{false} +\end{ltxcode} +% +will yield \prm{true} if both \texttt{boolA} and \texttt{boolB} are false. + +\item[and] + +The \texttt{and} operator expresses a conjunction (both \emph{a} and \emph{b}). The \prm{expression} is true if all elements joined with \texttt{and} are true. For example: + +\begin{ltxcode} +\ifboolexpr{ + bool {boolA} <> bool {boolB} +} +{true} +{false} +\end{ltxcode} +% +will yield \prm{true} if both \texttt{bool} tests are true. The \texttt{nand} operator (negated \texttt{and}, \ie not both) is not provided as such but may be expressed by using \texttt{and} in a negated subexpression. For example: + +\begin{ltxcode} +bool {boolA} <> bool {boolB} +\end{ltxcode} +% +may be written as + +\begin{ltxcode} +<> <<(>> bool {boolA} <> bool {boolB} <<)>> +\end{ltxcode} + +\item[or] + +The \texttt{or} operator expresses a non-exclusive disjunction (either \emph{a} or \emph{b} or both). The \prm{expression} is true if at least one of the elements joined with \texttt{or} is true. For example: + +\begin{ltxcode} +\ifboolexpr{ + togl {toglA} <> togl {toglB} +} +{true} +{false} +\end{ltxcode} +% +will yield \prm{true} if either \texttt{togl} test or both tests are true. The \texttt{nor} operator (negated non-exclusive disjunction, \ie neither \emph{a} nor \emph{b} nor both) is not provided as such but may be expressed by using \texttt{or} in a negated subexpression. For example: + +\begin{ltxcode} +bool {boolA} <> bool {boolB} +\end{ltxcode} +% +may be written as + +\begin{ltxcode} +<> <<(>> bool {boolA} <> bool {boolB} <<)>> +\end{ltxcode} + +\item[(...)] + +The parentheses delimit a subexpression in the \prm{expression}. The subexpression is evaluated and the result of this evaluation is treated as a single truth value in the enclosing expression. Subexpressions may be nested. For example, the expression: + +\begin{ltxcode} + <<(>> bool {boolA} or bool {boolB} <<)>> + and + <<(>> bool {boolC} or bool {boolD} <<)>> +\end{ltxcode} +% +is true if both subexpressions are true, \ie if at least one of \texttt{boolA}/\texttt{boolB} and at least one of \texttt{boolC}/\texttt{boolD} is true. Subexpressions are generally not required if all elements are joined with \texttt{and} or with \texttt{or}. For example, the expressions + +\begin{ltxcode} +bool {boolA} <> bool {boolB} <> {boolC} <> bool {boolD} +bool {boolA} <> bool {boolB} <> {boolC} <> bool {boolD} +\end{ltxcode} +% +will yield the expected results: the first one is true if all elements are true; the second one is true if at least one element is true. However, when combining \texttt{and} and \texttt{or}, it is advisable to always group the elements in subexpressions in order to avoid potential misconceptions which may arise from differences between the semantics of formal boolean expressions and the semantics of natural languages. For example, the following expression + +\begin{ltxcode} +bool {<>} <> bool {<>} <> bool {<>} +\end{ltxcode} +% +is always true if \texttt{sugar} is true since the \texttt{or} operator will take the result of the \texttt{and} evaluation as input. In contrast to the meaning of this expression when pronounced in English, it is not processed like this + +\begin{ltxcode} +bool {<>} <> <<(>> bool {<>} <> bool {<>} <<)>> +\end{ltxcode} +% +but evaluated strictly from left to right: + +\begin{ltxcode} +<<(>> bool {<>} <> bool {<>} <<)>> <> bool {<>} +\end{ltxcode} +% +which is probably not what you meant to order. + +\end{marglist} + +\subsection{List Processing} +\label{aut:lst} + +\subsubsection{User Input} +\label{aut:lst:inp} + +The tools in this section are primarily designed to handle user input. When building lists for internal use by a package, using the tools in section \ref{aut:lst:int} may be preferable as they allow testing if an element is in a list. + +\begin{ltxsyntax} + +\cmditem{DeclareListParser}{command}{separator} + +This command defines a list parser similar to the \cmd{docsvlist} command below, which is defined like this: + +\begin{ltxcode} +\DeclareListParser{\docsvlist}{,} +\end{ltxcode} +% +Note that the list parsers are sensitive to the category code of the \prm{separator}. + +\cmditem*{DeclareListParser*}{command}{separator} + +The starred variant of \cmd{DeclareListParser} defines a list parser similar to the \cmd{forcsvlist} command below, which is defined like this: + +\begin{ltxcode} +\DeclareListParser*{\forcsvlist}{,} +\end{ltxcode} + +\cmditem{docsvlist}{item, item, ...} + +This command loops over a comma"=separated list of items and executes the auxiliary command \cmd{do} for every item in the list, passing the item as an argument. In contrast to the \cmd{@for} loop in the \latex kernel, \cmd{docsvlist} is expandable. With a suitable definition of \cmd{do}, lists may be processed in an \cmd{edef} or a comparable context. You may use \cmd{listbreak} at the end of the replacement text of \cmd{do} to stop processing and discard the remaining items in the list. Whitespace after list separators is ignored. If an item contains a comma or starts with a space, it must be wrapped in curly braces. The braces will be removed as the list is processed. Here is a usage example which prints a comma"=separated list as an \env{itemize} environment: + +\begin{ltxcode} +\begin{itemize} +\renewcommand*{\do}[1]{\item #1} +\docsvlist{item1, item2, {item3a, item3b}, item4} +\end{itemize} +\end{ltxcode} +% +Here is another example: + +\begin{ltxcode} +\renewcommand*{\do}[1]{* #1\MessageBreak} +\PackageInfo{mypackage}{% + Example list:\MessageBreak + \docsvlist{item1, item2, {item3a, item3b}, item4}} +\end{ltxcode} +% +In this example, the list is written to the log file as part of an informational message. The list processing takes place during the \cmd{write} operation. + +\cmditem{forcsvlist}{handler}{item, item, ...} + +This command is similar to \cmd{docsvlist} except that \cmd{do} is replaced by a \prm{handler} specified at invocation time. The \prm{handler} may also be a sequence of commands, provided that the command given last takes the item as trailing argument. For example, the following code will convert a comma"=separated list of items into an internal list called \cmd{mylist}: + +\begin{ltxcode} +\forcsvlist{\listadd\mylist}{item1, item2, item3} +\end{ltxcode} + +\end{ltxsyntax} + +\subsubsection{Internal Lists} +\label{aut:lst:int} + +The tools in this section handle internal lists of data. An in this context is a plain macro without any parameters and prefixes which is employed to collect data. These lists use a special character as internal list separator.\footnote{The character \texttt{\string|} with category code 3. Note that you may not typeset a list by saying \cmd{listname}. Use \cmd{show} instead to inspect the list.} When processing user input in list format, see the tools in section \ref{aut:lst:inp}. + +\begin{ltxsyntax} + +\cmditem{listadd}{listmacro}{item} + +This command appends an \prm{item} to a \prm{listmacro}. A blank \prm{item} is not added to the list. + +\cmditem{listgadd}{listmacro}{item} + +Similar to \cmd{listadd} except that the assignment is global. + +\cmditem{listeadd}{listmacro}{item} + +Similar to \cmd{listadd} except that the \prm{item} is expanded at definition"=time. Only the new \prm{item} is expanded, the \prm{listmacro} is not. If the expanded \prm{item} is blank, it is not added to the list. + +\cmditem{listxadd}{listmacro}{item} + +Similar to \cmd{listeadd} except that the assignment is global. + +\cmditem{listcsadd}{listcsname}{item} + +Similar to \cmd{listadd} except that it takes a control sequence name as its first argument. + +\cmditem{listcsgadd}{listcsname}{item} + +Similar to \cmd{listcsadd} except that the assignment is global. + +\cmditem{listcseadd}{listcsname}{item} + +Similar to \cmd{listeadd} except that it takes a control sequence name as its first argument. + +\cmditem{listcsxadd}{listcsname}{item} + +Similar to \cmd{listcseadd} except that the assignment is global. + +\cmditem{dolistloop}{listmacro} + +This command loops over all items in a \prm{listmacro} and executes the auxiliary command \cmd{do} for every item in the list, passing the item as an argument. The list loop itself is expandable. You may use \cmd{listbreak} at the end of the replacement text of \cmd{do} to stop processing and discard the remaining items in the list. Here is a usage example which prints an internal list called \cmd{mylist} as an \env{itemize} environment: + +\begin{ltxcode} +\begin{itemize} +\renewcommand*{\do}[1]{\item #1} +\dolistloop{\mylist} +\end{itemize} +\end{ltxcode} + +\cmditem{dolistcsloop}{listcsname} + +Similar to \cmd{dolistloop} except that it takes a control sequence name as its argument. + +\cmditem{forlistloop}{handler}{listmacro} + +This command is similar to \cmd{dolistloop} except that \cmd{do} is replaced by a \prm{handler} specified at invocation time. The \prm{handler} may also be a sequence of commands, provided that the command given last takes the item as trailing argument. For example, the following code will prefix all items in the internal list \cmd{mylist} with \cmd{item}, count the items as the list is processed, and append the item count at the end: + +\begin{ltxcode} +\newcounter{itemcount} +\begin{itemize} +\forlistloop{\stepcounter{itemcount}\item}{\mylist} +\item Total: \number\value{itemcount} items +\end{itemize} +\end{ltxcode} + +\cmditem{forlistcsloop}{handler}{listcsname} + +Similar to \cmd{forlistloop} except that it takes a control sequence name as its second argument. + +\cmditem{ifinlist}{item}{listmacro}{true}{false} + +This command executes \prm{true} if the \prm{item} is included in a \prm{listmacro}, and \prm{false} otherwise. Note that this test uses pattern matching based on \tex's argument scanner to check if the search string is included in the list. This means that it is usually faster than looping over all items in the list, but it also implies that the items must not include curly braces which would effectively hide them from the scanner. In other words, this macro is most useful when dealing with lists of plain strings rather than printable data. When dealing with printable text, it is safer to use \cmd{dolistloop} to check if an item is in the list as follows: + +\begin{ltxcode} +\renewcommand*{\do}[1]{% + \ifstrequal{#1}{<>} + {item found!\listbreak} + {}} +\dolistloop{\mylist} +\end{ltxcode} + +\cmditem{xifinlist}{item}{listmacro}{true}{false} + +Similar to \cmd{ifinlist} except that the \prm{item} is expanded prior to the test. + +\cmditem{ifinlistcs}{item}{listcsname}{true}{false} + +Similar to \cmd{ifinlist} except that it takes a control sequence name as its second argument. + +\cmditem{xifinlistcs}{item}{listcsname}{true}{false} + +Similar to \cmd{xifinlist} except that it takes a control sequence name as its second argument. + +\end{ltxsyntax} + +\subsection{Miscellaneous Tools} +\label{aut:msc} + +\begin{ltxsyntax} + +\cmditem{rmntonum}{numeral} + +The \tex primitive \cmd{romannumeral} converts an integer to a Roman numeral but \tex or \latex provide no command which goes the opposite way. \cmd{rmntonum} fills this gap. It takes a Roman numeral as its argument and converts it to the corresponding integer. Since it is expandable, it may also be used in counter assignments or arithmetic tests: + +\begin{ltxcode} +<<\rmntonum>>{<>} +\setcounter{counter}{<<\rmntonum>>{<>}} +\ifnumless{<<\rmntonum>>{<>}}{2000}{true}{false} +\end{ltxcode} +% +The \prm{numeral} argument must be a literal string. It will be detokenized prior to parsing. The parsing of the numeral is case"=insensitive and whitespace in the argument is ignored. If there is an invalid token in the argument, \cmd{rmntonum} will expand to~\texttt{-1}; an empty argument will yield an empty string. Note that \cmd{rmntonum} will not check the numeral for formal validity. For example, both \texttt{V} and \texttt{VX} would yield \texttt{5}, \texttt{IC} would yield \texttt{99}, etc. + +\cmditem{ifrmnum}{string}{true}{false} + +Expands to \prm{true} if \prm{string} is a Roman numeral, and to \prm{false} otherwise. The \prm{string} will be detokenized prior to performing the test. The test is case"=insensitive and ignores whitespace in the \prm{string}. Note that \cmd{ifrmnum} will not check the numeral for formal validity. For example, both \texttt{V} and \texttt{VXV} will yield \prm{true}. Strictly speaking, what \cmd{ifrmnum} does is parse the \prm{string} in order to find out if it consists of characters which may form a valid Roman numeral, but it will not check if they really are a valid Roman numeral. + +\end{ltxsyntax} + +\section{Revision History} + +This revision history is a list of changes relevant to users of this package. Changes of a more technical nature which do not affect the user interface or the behavior of the package are not included in the list. If an entry in the revision history states that a feature has been \emph{improved} or \emph{extended}, this indicates a syntactically backwards compatible modification, such as the addition of an optional argument to an existing command. Entries stating that a feature has been \emph{modified} demand attention. They indicate a modification which may require changes to existing documents in some, hopefully rare, cases. The numbers on the right indicate the relevant section of this manual. + +\begin{changelog} + +\begin{release}{2.1}{2011-01-03} +\item Added \cmd{AtBeginEnvironment}\see{use:env} +\item Added \cmd{AtEndEnvironment}\see{use:env} +\item Added \cmd{BeforeBeginEnvironment}\see{use:env} +\item Added \cmd{AfterEndEnvironment}\see{use:env} +\item Added \cmd{ifdefstrequal}\see{aut:tst:def} +\item Added \cmd{ifcsstrequal}\see{aut:tst:def} +\item Added \cmd{ifdefcounter}\see{aut:tst:cnt} +\item Added \cmd{ifcscounter}\see{aut:tst:cnt} +\item Added \cmd{ifltxcounter}\see{aut:tst:cnt} +\item Added \cmd{ifdeflength}\see{aut:tst:cnt} +\item Added \cmd{ifcslength}\see{aut:tst:cnt} +\item Added \cmd{ifdefdimen}\see{aut:tst:cnt} +\item Added \cmd{ifcsdimen}\see{aut:tst:cnt} +\end{release} + +\begin{release}{2.0a}{2010-09-12} +\item Fixed bug in \cmd{patchcmd}, \cmd{apptocmd}, \cmd{pretocmd}\see{aut:pat} +\end{release} + +\begin{release}{2.0}{2010-08-21} + +\item Added \cmd{csshow}\see{aut:def:def} +\item Added \cmd{DeclareListParser*}\see{aut:lst:inp} +\item Added \cmd{forcsvlist}\see{aut:lst:inp} +\item Added \cmd{forlistloop}\see{aut:lst:int} +\item Added \cmd{forlistcsloop}\see{aut:lst:int} +\item Allow testing \cmd{par} in macro tests\see{aut:tst:def} +\item Fixed some bugs + +\end{release} + +\begin{release}{1.9}{2010-04-10} + +\item Improved \cmd{letcs}\see{aut:def:def} +\item Improved \cmd{csletcs}\see{aut:def:def} +\item Improved \cmd{listeadd}\see{aut:lst:int} +\item Improved \cmd{listxadd}\see{aut:lst:int} +\item Added \cmd{notblank}\see{aut:tst:str} +\item Added \cmd{ifnumodd}\see{aut:tst:num} +\item Added \cmd{ifboolexpr}\see{aut:tst:bol} +\item Added \cmd{ifboolexpe}\see{aut:tst:bol} +\item Added \cmd{whileboolexpr}\see{aut:tst:bol} +\item Added \cmd{unlessboolexpr}\see{aut:tst:bol} + +\end{release} + +\begin{release}{1.8}{2009-08-06} + +\item Improved \cmd{deflength}\see{use:cal} +\item Added \cmd{ifnumcomp}\see{aut:tst:num} +\item Added \cmd{ifnumequal}\see{aut:tst:num} +\item Added \cmd{ifnumgreater}\see{aut:tst:num} +\item Added \cmd{ifnumless}\see{aut:tst:num} +\item Added \cmd{ifdimcomp}\see{aut:tst:num} +\item Added \cmd{ifdimequal}\see{aut:tst:num} +\item Added \cmd{ifdimgreater}\see{aut:tst:num} +\item Added \cmd{ifdimless}\see{aut:tst:num} + +\end{release} + +\begin{release}{1.7}{2008-06-28} + +\item Renamed \cmd{AfterBeginDocument} to \cmd{AfterEndPreamble} (name clash)\see{use:pre} +\item Resolved conflict with \sty{hyperref} +\item Rearranged manual slightly + +\end{release} + +\begin{release}{1.6}{2008-06-22} + +\item Improved \cmd{robustify}\see{use:pat} +\item Improved \cmd{patchcmd} and \cmd{ifpatchable}\see{aut:pat} +\item Modified and improved \cmd{apptocmd}\see{aut:pat} +\item Modified and improved \cmd{pretocmd}\see{aut:pat} +\item Added \cmd{ifpatchable*}\see{aut:pat} +\item Added \cmd{tracingpatches}\see{aut:pat} +\item Added \cmd{AfterBeginDocument}\see{use:pre} +\item Added \cmd{ifdefmacro}\see{aut:tst:def} +\item Added \cmd{ifcsmacro}\see{aut:tst:def} +\item Added \cmd{ifdefprefix}\see{aut:tst:def} +\item Added \cmd{ifcsprefix}\see{aut:tst:def} +\item Added \cmd{ifdefparam}\see{aut:tst:def} +\item Added \cmd{ifcsparam}\see{aut:tst:def} +\item Added \cmd{ifdefprotected}\see{aut:tst:def} +\item Added \cmd{ifcsprotected}\see{aut:tst:def} +\item Added \cmd{ifdefltxprotect}\see{aut:tst:def} +\item Added \cmd{ifcsltxprotect}\see{aut:tst:def} +\item Added \cmd{ifdefempty}\see{aut:tst:def} +\item Added \cmd{ifcsempty}\see{aut:tst:def} +\item Improved \cmd{ifdefvoid}\see{aut:tst:def} +\item Improved \cmd{ifcsvoid}\see{aut:tst:def} +\item Added \cmd{ifstrempty}\see{aut:tst:str} +\item Added \cmd{setbool}\see{aut:bo1:bol} +\item Added \cmd{settoggle}\see{aut:bo1:tgl} + +\end{release} + +\begin{release}{1.5}{2008-04-26} + +\item Added \cmd{defcounter}\see{use:cal} +\item Added \cmd{deflength}\see{use:cal} +\item Added \cmd{ifdefstring}\see{aut:tst:def} +\item Added \cmd{ifcsstring}\see{aut:tst:def} +\item Improved \cmd{rmntonum}\see{aut:msc} +\item Added \cmd{ifrmnum}\see{aut:msc} +\item Added extended \pdf bookmarks to this manual +\item Rearranged manual slightly + +\end{release} + +\begin{release}{1.4}{2008-01-24} + +\item Resolved conflict with \sty{tex4ht} + +\end{release} + +\begin{release}{1.3}{2007-10-08} + +\item Renamed package from \sty{elatex} to \sty{etoolbox}\see{int} +\item Renamed \cmd{newswitch} to \cmd{newtoggle} (name clash)\see{aut:bo1:tgl} +\item Renamed \cmd{provideswitch} to \cmd{providetoggle} (consistency)\see{aut:bo1:tgl} +\item Renamed \cmd{switchtrue} to \cmd{toggletrue} (consistency)\see{aut:bo1:tgl} +\item Renamed \cmd{switchfalse} to \cmd{togglefalse} (consistency)\see{aut:bo1:tgl} +\item Renamed \cmd{ifswitch} to \cmd{iftoggle} (consistency)\see{aut:bo1:tgl} +\item Renamed \cmd{notswitch} to \cmd{nottoggle} (consistency)\see{aut:bo1:tgl} +\item Added \cmd{AtEndPreamble}\see{use:pre} +\item Added \cmd{AfterEndDocument}\see{use:pre} +\item Added \cmd{AfterPreamble}\see{use:pre} +\item Added \cmd{undef}\see{aut:def:def} +\item Added \cmd{csundef}\see{aut:def:def} +\item Added \cmd{ifdefvoid}\see{aut:tst:def} +\item Added \cmd{ifcsvoid}\see{aut:tst:def} +\item Added \cmd{ifdefequal}\see{aut:tst:def} +\item Added \cmd{ifcsequal}\see{aut:tst:def} +\item Added \cmd{ifstrequal}\see{aut:tst:str} +\item Added \cmd{listadd}\see{aut:lst:int} +\item Added \cmd{listeadd}\see{aut:lst:int} +\item Added \cmd{listgadd}\see{aut:lst:int} +\item Added \cmd{listxadd}\see{aut:lst:int} +\item Added \cmd{listcsadd}\see{aut:lst:int} +\item Added \cmd{listcseadd}\see{aut:lst:int} +\item Added \cmd{listcsgadd}\see{aut:lst:int} +\item Added \cmd{listcsxadd}\see{aut:lst:int} +\item Added \cmd{ifinlist}\see{aut:lst:int} +\item Added \cmd{xifinlist}\see{aut:lst:int} +\item Added \cmd{ifinlistcs}\see{aut:lst:int} +\item Added \cmd{xifinlistcs}\see{aut:lst:int} +\item Added \cmd{dolistloop}\see{aut:lst:int} +\item Added \cmd{dolistcsloop}\see{aut:lst:int} + +\end{release} + +\begin{release}{1.2}{2007-07-13} + +\item Renamed \cmd{patchcommand} to \cmd{patchcmd} (name clash)\see{aut:pat} +\item Renamed \cmd{apptocommand} to \cmd{apptocmd} (consistency)\see{aut:pat} +\item Renamed \cmd{pretocommand} to \cmd{pretocmd} (consistency)\see{aut:pat} +\item Added \cmd{newbool}\see{aut:bo1:bol} +\item Added \cmd{providebool}\see{aut:bo1:bol} +\item Added \cmd{booltrue}\see{aut:bo1:bol} +\item Added \cmd{boolfalse}\see{aut:bo1:bol} +\item Added \cmd{ifbool}\see{aut:bo1:bol} +\item Added \cmd{notbool}\see{aut:bo1:bol} +\item Added \cmd{newswitch}\see{aut:bo1:tgl} +\item Added \cmd{provideswitch}\see{aut:bo1:tgl} +\item Added \cmd{switchtrue}\see{aut:bo1:tgl} +\item Added \cmd{switchfalse}\see{aut:bo1:tgl} +\item Added \cmd{ifswitch}\see{aut:bo1:tgl} +\item Added \cmd{notswitch}\see{aut:bo1:tgl} +\item Added \cmd{DeclareListParser}\see{aut:lst:inp} +\item Added \cmd{docsvlist}\see{aut:lst:inp} +\item Added \cmd{rmntonum}\see{aut:msc} + +\end{release} + +\begin{release}{1.1}{2007-05-28} + +\item Added \cmd{protected@csedef}\see{aut:def:def} +\item Added \cmd{protected@csxdef}\see{aut:def:def} +\item Added \cmd{gluedef}\see{aut:def:cal} +\item Added \cmd{gluegdef}\see{aut:def:cal} +\item Added \cmd{csgluedef}\see{aut:def:cal} +\item Added \cmd{csgluegdef}\see{aut:def:cal} +\item Added \cmd{mudef}\see{aut:def:cal} +\item Added \cmd{mugdef}\see{aut:def:cal} +\item Added \cmd{csmudef}\see{aut:def:cal} +\item Added \cmd{csmugdef}\see{aut:def:cal} +\item Added \cmd{protected@eappto}\see{aut:hok:app} +\item Added \cmd{protected@xappto}\see{aut:hok:app} +\item Added \cmd{protected@cseappto}\see{aut:hok:app} +\item Added \cmd{protected@csxappto}\see{aut:hok:app} +\item Added \cmd{protected@epreto}\see{aut:hok:pre} +\item Added \cmd{protected@xpreto}\see{aut:hok:pre} +\item Added \cmd{protected@csepreto}\see{aut:hok:pre} +\item Added \cmd{protected@csxpreto}\see{aut:hok:pre} +\item Fixed bug in \cmd{newrobustcmd}\see{use:def} +\item Fixed bug in \cmd{renewrobustcmd}\see{use:def} +\item Fixed bug in \cmd{providerobustcmd}\see{use:def} + +\end{release} + +\begin{release}{1.0}{2007-05-07} + +\item Initial public release + +\end{release} + +\end{changelog} + +\end{document} diff --git a/foley-bio.txt b/foley-bio.txt new file mode 100644 index 0000000..f1a8a67 --- /dev/null +++ b/foley-bio.txt @@ -0,0 +1,17 @@ +Dr. Joseph T. Foley (MIT B.Sc, M.Eng, Ph.D) has worked on analyzing how to make manufacturing processes use less energy. At iRobot, he developed shape-changing robots to fit through small holes. As a professor at Reykjavík University, Joseph is continuing to expand his interests into engineer and artist collaborative works, Shape Memory Alloy research, and the Axiomatic Design method. He is a member of the scientific committee for the International Conference on Axiomatic Design 2017 and has published an article on how Axiomatic Design can be applied to artistic endeavors. His personal projects with Icelandic museums resulted in development of low-cost synchronizers for video installations and a wireless tablet-based interface for playing video works on screens. + + +Joseph Timothy Foley (MIT BSc ‘99, MEng, ‘99, PhD ‘07) previously worked at iRobot's Government and Industrial division designing and building shape-changing robots. At Reykjavik University, he focuses on Mechatronics and Mechanical Design for teaching. His research interests include Axiomatic Design, aircraft maintenance, product design, embedded smart devices, wireless communication, physical security, and engineering-artist collaborations. + + +Dr. Joseph Timothy Foley (MIT BSc ‘99, MEng, ‘99, PhD ‘07) has worked as a researcher and designer in a large variety of fields with a heavy emphasis on infrastructure and mechatronics. +His graduate research at MIT focused on integrating RFID into smart devices in a scalable and secure way. +He worked as a postgraduate researcher in the Environmentally Benign Manufacturing group at MIT in partnership with SKF, investigating methods of reducing the impact and energy usage of manufacturing processes. +At iRobot's Government and Industrial division, he developed shape-changing robots as the technical lead for the Harvard-MIT-iRobot DARPA ChemBots team. +This research resulted in a US patent on the manufacture of enhanced Shape Memory Alloy springs, a topic he still is researching. + +He is now an assistant professor at Reykjavik University teaching topics in mechatronics and mechanical design. +He has integrated Axiomatic Design into the courses he currently teaches to provide students with a common framework for the heavily multi-disciplinary nature of modern computer-controlled manufacturing and smart devices. +His research interests include aircraft maintenance automation, product design, embedded smart devices, wireless communication, physical security, and engineering-artist collaborations. +His most recent developments in Axiomatic Design research include Creative Axiomatic Design (CIRP DC 2016), Desirable Complexity (ICAD 2017), and Axiomatic Design as an Ontology (CIRP DC 2017). +In addition, he was the head organizer for the 12th International Conference on Axiomatic Design 2018 at Reykjavík University. diff --git a/foley-crop-lowres.jpg b/foley-crop-lowres.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e9887a2893a91cb64c2bff9586a7d0cba2e8ae99 GIT binary patch literal 39155 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