--- /dev/null
+%%h-physrev3.bst
+%%Modified to avoid extra comma at end of citations
+%%h-physrev2.bst
+%%Jonathan Flynn's h-physrev.bst modified to allow citation information
+%%for SPIRES processing by Heath O'Connell following suggestions by
+%%Jacques Distler.
+
+ENTRY
+{ address
+eprint
+author
+booktitle
+chapter
+collaboration
+SLACcitation
+edition
+editor
+howpublished
+institution
+journal
+key
+month
+note
+number
+organization
+pages
+publisher
+school
+series
+title
+type
+volume
+year
+abstract
+}
+{}
+{ label }
+INTEGERS { output.state before.all mid.sentence after.sentence after.block }
+FUNCTION {init.state.consts}
+{ #0 'before.all :=
+#1 'mid.sentence :=
+#2 'after.sentence :=
+#3 'after.block :=
+}
+STRINGS { s t }
+FUNCTION {output.nonnull}
+{ 's :=
+output.state mid.sentence =
+{ ", " * write$ }
+{ output.state after.block =
+{ "\\ " * write$
+newline$
+"\newblock " write$
+}
+{ output.state before.all =
+'write$
+{ add.period$ " " * write$ }
+if$
+}
+if$
+mid.sentence 'output.state :=
+}
+if$
+s
+}
+FUNCTION {output}
+{ duplicate$ empty$
+'pop$
+'output.nonnull
+if$
+}
+FUNCTION {output.check}
+{ 't :=
+duplicate$ empty$
+{ pop$ "empty " t * " in " * cite$ * warning$ }
+'output.nonnull
+if$
+}
+FUNCTION {output.newline}
+{ newline$
+"\newline" write$
+newline$
+""
+before.all 'output.state :=
+}
+FUNCTION {output.bibitem}
+{ newline$
+"\bibitem{" write$
+cite$ write$
+"}" write$
+newline$
+""
+before.all 'output.state :=
+}
+FUNCTION {fin.entry}
+{ add.period$
+write$
+% modified to add SLACcitation field if present
+SLACcitation empty$
+ 'skip$
+ { newline$ SLACcitation write$ }
+ if$
+% end of modification
+newline$
+}
+FUNCTION {new.block}
+{ output.state before.all =
+'skip$
+{ after.block 'output.state := }
+if$
+}
+FUNCTION {new.sentence}
+{ skip$
+}
+FUNCTION {not}
+{ { #0 }
+{ #1 }
+if$
+}
+FUNCTION {and}
+{ 'skip$
+{ pop$ #0 }
+if$
+}
+FUNCTION {or}
+{ { pop$ #1 }
+'skip$
+if$
+}
+FUNCTION {new.block.checka}
+{ empty$
+'skip$
+'new.block
+if$
+}
+FUNCTION {new.block.checkb}
+{ empty$
+swap$ empty$
+and
+'skip$
+'new.block
+if$
+}
+FUNCTION {new.sentence.checka}
+{ empty$
+'skip$
+'new.sentence
+if$
+}
+FUNCTION {new.sentence.checkb}
+{ empty$
+swap$ empty$
+and
+'skip$
+'new.sentence
+if$
+}
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+{ pop$ "" }
+'skip$
+if$
+}
+FUNCTION {printabstract}
+{ duplicate$ empty$
+{ pop$ "" }
+{ "{\footnotesize{\bf Abstract} " swap$ * "}" * }
+if$
+}
+FUNCTION {printsmall}
+{ duplicate$ empty$
+{ pop$ "" }
+{ "{\footnotesize " swap$ * "}" * }
+if$
+}
+FUNCTION {boldsmall}
+{ duplicate$ empty$
+{ pop$ "" }
+{ "{\bf\footnotesize " swap$ * "}" * }
+if$
+}
+FUNCTION {emphasize}
+{ duplicate$ empty$
+{ pop$ "" }
+{ "{\em\footnotesize " swap$ * "}" * }
+if$
+}
+FUNCTION {embolden}
+{ duplicate$ empty$
+{ pop$ "" }
+{ "{\bf " swap$ * "}" * }
+if$
+}
+FUNCTION {paren}
+{ duplicate$ empty$
+{ pop$ "" }
+{ "(" swap$ * ")" * }
+if$
+}
+INTEGERS { nameptr namesleft numnames }
+INTEGERS { etal }
+FUNCTION {format.names}
+{ 's :=
+#1 'nameptr :=
+s num.names$ 'numnames :=
+numnames #15 >
+s numnames "{ll}" format.name$ "others" = numnames #1 > and
+or 'etal :=
+etal
+{ #1 #1 + 'namesleft := }
+{ numnames 'namesleft := }
+if$
+{ namesleft #0 > }
+{ s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't :=
+nameptr #1 >
+{ namesleft #1 >
+{ ", " * t * }
+{ nameptr #2 >
+{ "," * }
+'skip$
+if$
+t "others" =
+etal or
+{ " {\em et~al.}" * }
+{ " and " * t * }
+if$
+}
+if$
+}
+'t
+if$
+nameptr #1 + 'nameptr :=
+namesleft #1 - 'namesleft :=
+}
+while$
+}
+FUNCTION {format.authors}
+{ author empty$
+{ "" }
+{ author format.names }
+if$
+}
+FUNCTION {format.editors}
+{ editor empty$
+{ "" }
+{ editor format.names
+editor num.names$ #1 >
+{ ", editors" * }
+{ ", editor" * }
+if$
+}
+if$
+}
+FUNCTION {format.edited}
+{ editor empty$
+{ "" }
+{ "edited by " editor format.names * }
+if$
+}
+FUNCTION {format.title}
+{ title empty$
+{ "" }
+{ title "t" change.case$ }
+if$
+}
+FUNCTION {n.dashify}
+{ 't :=
+""
+{ t empty$ not }
+{ t #1 #1 substring$ "-" =
+{ t #1 #2 substring$ "--" = not
+{ "--" *
+t #2 global.max$ substring$ 't :=
+}
+{ { t #1 #1 substring$ "-" = }
+{ "-" *
+t #2 global.max$ substring$ 't :=
+}
+while$
+}
+if$
+}
+{ t #1 #1 substring$ *
+t #2 global.max$ substring$ 't :=
+}
+if$
+}
+while$
+}
+FUNCTION {first.page}
+{ 't :=
+""
+{ t empty$ not t #1 #1 substring$ "-" = not and }
+{ t #1 #1 substring$ *
+t #2 global.max$ substring$ 't :=
+}
+while$
+}
+FUNCTION {format.date}
+{ year empty$
+{ "" }
+'year
+if$
+}
+%FUNCTION {format.SLACcitation}
+%{ SLACcitation empty$
+% {""}
+% { SLACcitation }
+% if$
+%}
+FUNCTION {format.btitle}
+{ title emphasize
+}
+FUNCTION {tie.or.space.connect}
+{ duplicate$ text.length$ #3 <
+{ "~" }
+{ " " }
+if$
+swap$ * *
+}
+FUNCTION {either.or.check}
+{ empty$
+'pop$
+{ "can't use both " swap$ * " fields in " * cite$ * warning$ }
+if$
+}
+FUNCTION {format.bvolume}
+{ volume empty$
+{ "" }
+{ series empty$
+'skip$
+{ ", " series * }
+if$
+" Vol." volume tie.or.space.connect *
+"volume and number" number either.or.check
+}
+if$
+}
+FUNCTION {format.number.series}
+{ volume empty$
+{ number empty$
+{ series field.or.null }
+{ series empty$
+{ "there's a number but no series in " cite$ * warning$ }
+{ ", " series * }
+if$
+" No. " number tie.or.space.connect *
+}
+if$
+}
+{ "" }
+if$
+}
+FUNCTION {format.edition}
+{ edition empty$
+{ "" }
+{ output.state mid.sentence =
+{ ", " edition "l" change.case$ * }
+{ ", " edition "t" change.case$ * }
+if$
+" ed." *
+}
+if$
+}
+INTEGERS { multiresult }
+FUNCTION {multi.page.check}
+{ 't :=
+#0 'multiresult :=
+{ multiresult not
+t empty$ not
+and
+}
+{ t #1 #1 substring$
+duplicate$ "-" =
+swap$ duplicate$ "," =
+swap$ "+" =
+or or
+{ #1 'multiresult := }
+{ t #2 global.max$ substring$ 't := }
+if$
+}
+while$
+multiresult
+}
+FUNCTION {format.pages}
+{ pages empty$
+{ "" }
+{ pages multi.page.check
+{ "pp." pages n.dashify tie.or.space.connect }
+{ "p." pages tie.or.space.connect }
+if$
+}
+if$
+}
+FUNCTION {format.pages.a}
+{ pages empty$
+{ "" }
+{ "p." pages first.page tie.or.space.connect }
+if$
+}
+FUNCTION {format.vol.num.pages}
+{ volume field.or.null embolden
+" " swap$ * *
+pages empty$
+'skip$
+{ duplicate$ empty$
+{ pop$ format.pages.a }
+{ ", " * pages first.page * }
+if$
+}
+if$
+}
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+'format.pages
+{ type empty$
+{ "chap." }
+{ type "l" change.case$ }
+if$
+chapter tie.or.space.connect
+pages empty$
+'skip$
+{ ", " * format.pages * }
+if$
+}
+if$
+}
+FUNCTION {format.pub.addr.date}
+{ publisher empty$
+{ "" "empty publisher in " cite$ * warning$ }
+{ publisher
+address empty$
+'skip$
+{ ", " * address * }
+if$
+}
+if$
+year empty$
+{ "empty year in " cite$ * warning$ }
+{ ", " * year * }
+if$
+paren " " swap$ *
+}
+FUNCTION {format.book.entry}
+{ format.btitle
+format.bvolume *
+format.number.series *
+format.edition *
+format.pub.addr.date *
+}
+FUNCTION {format.inbook.entry}
+{ format.book.entry
+", " *
+format.chapter.pages *
+}
+FUNCTION {format.in.ed.booktitle}
+{ booktitle empty$
+{ "" }
+{ editor empty$
+{ "in " booktitle emphasize * }
+{ "in " booktitle emphasize * ", " * format.edited * }
+if$
+}
+if$
+}
+FUNCTION {empty.misc.check}
+{ author empty$ title empty$ howpublished empty$
+month empty$ year empty$ note empty$
+and and and and and
+{ "all relevant fields are empty in " cite$ * warning$ }
+'skip$
+if$
+}
+FUNCTION {format.thesis.type}
+{ type empty$
+'skip$
+{ pop$
+type "t" change.case$
+}
+if$
+}
+FUNCTION {format.inst.tr.num.date}
+{ institution empty$
+{ "" "empty institution in " cite$ * warning$ }
+{ institution }
+if$
+" Report No." *
+number empty$
+{ "" }
+{ number tie.or.space.connect }
+if$
+year empty$
+{ "empty year in " cite$ * warning$ }
+{ ", " * year * " (unpublished)" * }
+if$
+}
+FUNCTION {format.article.crossref}
+{ key empty$
+{ journal empty$
+{ "need key or journal for " cite$ * " to crossref " * crossref *
+warning$
+""
+}
+{ "In " journal * }
+if$
+}
+{ "In " key * }
+if$
+" \cite{" * crossref * "}" *
+}
+FUNCTION {format.crossref.editor}
+{ editor #1 "{vv~}{ll}" format.name$
+editor num.names$ duplicate$
+#2 >
+{ pop$ " {\em et~al.}" * }
+{ #2 <
+'skip$
+{ editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+{ " {\em et~al.}" * }
+{ " and " * editor #2 "{vv~}{ll}" format.name$ * }
+if$
+}
+if$
+}
+if$
+}
+FUNCTION {format.book.crossref}
+{ volume empty$
+{ "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+"In "
+}
+{ "Volume" volume tie.or.space.connect
+" of " *
+}
+if$
+editor empty$
+editor field.or.null author field.or.null =
+or
+{ key empty$
+{ series empty$
+{ "need editor, key, or series for " cite$ * " to crossref " *
+crossref * warning$
+"" *
+}
+{ "{\em " * series * "\/}" * }
+if$
+}
+{ key * }
+if$
+}
+{ format.crossref.editor * }
+if$
+" \cite{" * crossref * "}" *
+}
+FUNCTION {format.incoll.inproc.crossref}
+{ editor empty$
+editor field.or.null author field.or.null =
+or
+{ key empty$
+{ booktitle empty$
+{ "need editor, key, or booktitle for " cite$ * " to crossref " *
+crossref * warning$
+""
+}
+{ "In {\em " booktitle * "\/}" * }
+if$
+}
+{ "In " key * }
+if$
+}
+{ "In " format.crossref.editor * }
+if$
+" \cite{" * crossref * "}" *
+}
+FUNCTION {article}
+{ output.bibitem
+%collaboration output
+%format.authors "author" output.check
+format.authors "author" output.check
+new.block
+format.title "title" output.check embolden
+new.block
+%
+crossref missing$
+{ journal field.or.null
+format.vol.num.pages
+format.date empty$
+'skip$
+{ duplicate$ empty$
+{ pop$ format.date paren }
+{ " " * format.date paren * }
+if$
+}
+if$
+output
+}
+{ format.article.crossref output.nonnull
+format.pages output
+}
+if$
+% printsmall
+%new.block
+%abstract printabstract output
+fin.entry
+}
+FUNCTION {book}
+{ output.bibitem
+collaboration output
+author empty$
+{ format.editors "author and editor" output.check }
+{ format.authors output.nonnull
+crossref missing$
+{ "author and editor" editor either.or.check }
+'skip$
+if$
+}
+if$
+new.block
+crossref missing$
+{ format.book.entry output }
+{ new.block
+format.book.crossref output.nonnull
+}
+if$
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {booklet}
+{ output.bibitem
+collaboration output
+format.authors output
+new.block
+format.title "title" output.check
+howpublished address new.block.checkb
+howpublished output
+address output
+format.date output
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {inbook}
+{ output.bibitem
+collaboration output
+author empty$
+{ format.editors "author and editor" output.check }
+{ format.authors output.nonnull
+crossref missing$
+{ "author and editor" editor either.or.check }
+'skip$
+if$
+}
+if$
+new.block
+crossref missing$
+{ format.inbook.entry output }
+{ format.chapter.pages "chapter and pages" output.check
+new.block
+format.book.crossref output.nonnull
+}
+if$
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {incollection}
+{ output.bibitem
+collaboration output
+format.authors "author" output.check
+%new.block
+%format.title "title" output.check
+new.block
+crossref missing$
+{ format.in.ed.booktitle "booktitle" output.check
+format.bvolume output
+format.number.series output
+format.chapter.pages output
+new.sentence
+publisher "publisher" output.check
+address output
+format.edition output
+format.date "year" output.check
+}
+{ format.incoll.inproc.crossref output.nonnull
+format.chapter.pages output
+}
+if$
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {inproceedings}
+{ output.bibitem
+collaboration output
+format.authors "author" output.check
+%new.block
+%format.title "title" output.check
+new.block
+crossref missing$
+{ format.in.ed.booktitle "booktitle" output.check
+format.bvolume output
+format.number.series output
+format.pages output
+address empty$
+{ organization publisher new.sentence.checkb
+organization output
+publisher output
+format.date "year" output.check
+}
+{ address output.nonnull
+format.date "year" output.check
+new.sentence
+organization output
+publisher output
+}
+if$
+}
+{ format.incoll.inproc.crossref output.nonnull
+format.pages output
+}
+if$
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {conference} { inproceedings }
+FUNCTION {manual}
+{ output.bibitem
+collaboration output
+author empty$
+{ organization empty$
+'skip$
+{ organization output.nonnull
+address output
+}
+if$
+}
+{ format.authors output.nonnull }
+if$
+new.block
+format.btitle "title" output.check
+author empty$
+{ organization empty$
+{ address new.block.checka
+address output
+}
+'skip$
+if$
+}
+{ organization address new.block.checkb
+organization output
+address output
+}
+if$
+format.edition output
+format.date output
+eprint output
+new.block
+note output
+fin.entry
+}
+FUNCTION {mastersthesis}
+{ output.bibitem
+format.authors "author" output.check
+new.block
+format.title "title" output.check
+new.block
+"Master's thesis" format.thesis.type output.nonnull
+school "school" output.check
+address output
+format.date "year" output.check
+eprint output
+new.block
+note output
+fin.entry
+}
+FUNCTION {misc}
+{ output.bibitem
+collaboration output
+format.authors output
+title howpublished new.block.checkb
+format.title output
+howpublished new.block.checka
+howpublished output
+format.date output
+eprint output
+new.block
+note output
+fin.entry
+empty.misc.check
+}
+FUNCTION {phdthesis}
+{ output.bibitem
+format.authors "author" output.check
+new.block
+format.btitle "title" output.check
+new.block
+"PhD thesis" format.thesis.type output.nonnull
+school "school" output.check
+address output
+format.date "year" output.check
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {proceedings}
+{ output.bibitem
+collaboration output
+editor empty$
+{ organization output }
+{ format.editors output.nonnull }
+if$
+new.block
+format.btitle "title" output.check
+format.bvolume output
+format.number.series output
+address empty$
+{ editor empty$
+{ publisher new.sentence.checka }
+{ organization publisher new.sentence.checkb
+organization output
+}
+if$
+publisher output
+format.date "year" output.check
+}
+{ address output.nonnull
+format.date "year" output.check
+new.sentence
+editor empty$
+'skip$
+{ organization output }
+if$
+publisher output
+}
+if$
+eprint output
+new.block
+note output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {techreport}
+{ output.bibitem
+collaboration output
+format.authors "author" output.check
+new.block
+format.inst.tr.num.date output.nonnull
+eprint output
+new.block
+note output
+fin.entry
+}
+FUNCTION {unpublished}
+{ output.bibitem
+collaboration output
+format.authors "author" output.check
+new.block
+format.title "title" output.check
+new.block
+note "note" output.check
+format.date output
+%format.SLACcitation output
+fin.entry
+}
+FUNCTION {default.type} { misc }
+MACRO {jan} {"Jan."}
+MACRO {feb} {"Feb."}
+MACRO {mar} {"Mar."}
+MACRO {apr} {"Apr."}
+MACRO {may} {"May"}
+MACRO {jun} {"June"}
+MACRO {jul} {"July"}
+MACRO {aug} {"Aug."}
+MACRO {sep} {"Sept."}
+MACRO {oct} {"Oct."}
+MACRO {nov} {"Nov."}
+MACRO {dec} {"Dec."}
+MACRO {acmcs} {"ACM Comput. Surv."}
+MACRO {acta} {"Acta Inf."}
+MACRO {cacm} {"Commun. ACM"}
+MACRO {ibmjrd} {"IBM J. Res. Dev."}
+MACRO {ibmsj} {"IBM Syst.~J."}
+MACRO {ieeese} {"IEEE Trans. Softw. Eng."}
+MACRO {ieeetc} {"IEEE Trans. Comput."}
+MACRO {ieeetcad}
+{"IEEE Trans. Comput.-Aided Design Integrated Circuits"}
+MACRO {ipl} {"Inf. Process. Lett."}
+MACRO {jacm} {"J.~ACM"}
+MACRO {jcss} {"J.~Comput. Syst. Sci."}
+MACRO {scp} {"Sci. Comput. Programming"}
+MACRO {sicomp} {"SIAM J. Comput."}
+MACRO {tocs} {"ACM Trans. Comput. Syst."}
+MACRO {tods} {"ACM Trans. Database Syst."}
+MACRO {tog} {"ACM Trans. Gr."}
+MACRO {toms} {"ACM Trans. Math. Softw."}
+MACRO {toois} {"ACM Trans. Office Inf. Syst."}
+MACRO {toplas} {"ACM Trans. Prog. Lang. Syst."}
+MACRO {tcs} {"Theoretical Comput. Sci."}
+MACRO {advp} {"Adv. Phys."}
+MACRO {ajp} {"Am. J. Phys."}
+MACRO {ao} {"Appl. Opt."}
+MACRO {apj} {"Astrophys. J."}
+MACRO {apl} {"Appl. Phys. Lett."}
+MACRO {arnps} {"Ann. Rev. Nucl. Sci."}
+MACRO {arns} {"Ann. Rev. Nucl. Part. Sci."}
+MACRO {baps} {"Bull. Am. Phys. Soc."}
+MACRO {cpc} {"Computer Phys. Comm."}
+MACRO {cppcf} {"Comments Plasma Phys. Controlled Fusion"}
+MACRO {fed} {"Fusion Eng. Design"}
+MACRO {ft} {"Fusion Tech."}
+MACRO {ieeens} {"IEEE Trans. Nucl. Sci."}
+MACRO {ieeeps} {"IEEE Trans. Plasma Sci."}
+MACRO {ijimw} {"Int. J. Infrared Millimeter Waves"}
+MACRO {ip} {"Infrared Phys."}
+MACRO {jap} {"J. Appl. Phys."}
+MACRO {jcp} {"J. Comput. Phys."}
+MACRO {jetp} {"Sov. Phys.-JETP"}
+MACRO {jfe} {"J. Fusion Energy"}
+MACRO {jfm} {"J. Fluid Mech."}
+MACRO {jgr} {"J. Geophys. Res."}
+MACRO {jmp} {"J. Math. Phys."}
+MACRO {jne} {"J. Nucl. Energy"}
+MACRO {jnm} {"J. Nucl. Mater."}
+MACRO {josa} {"J. Opt. Soc. Am."}
+MACRO {jpg} {"J. Phys.~G: Nucl. and Part. Phys."}
+MACRO {jphys} {"J. Phys"}
+MACRO {jpp} {"J. Plasma Phys."}
+MACRO {jpsj} {"J. Phys. Soc. Jpn"}
+MACRO {jvst} {"J. Vac. Sci. Technol."}
+MACRO {modphyslettA} {"Mod. Phys. Lett. A"}
+MACRO {nedf} {"Nucl. Eng. Design/Fusion"}
+MACRO {nf} {"Nucl. Fusion"}
+MACRO {nim} {"Nucl. Instrum. Methods"}
+MACRO {np} {"Nucl. Phys."}
+MACRO {npb} {"Nucl. Phys.~B"}
+MACRO {npbps} {"Nucl. Phys. B (Proc. Suppl.)"}
+MACRO {nt/f} {"Nucl. Tech./Fusion"}
+MACRO {pf} {"Phys. Fluids"}
+MACRO {pl} {"Phys. Lett."}
+MACRO {plb} {"Phys. Lett.~B"}
+MACRO {pnas} {"Proc. Nat. Acad. Sci. USA"}
+MACRO {pp} {"Plasma Phys."}
+MACRO {physrep} {"Phys. Rep."}
+MACRO {physrev} {"Phys. Rev."}
+MACRO {pr} {"Phys. Rev."}
+MACRO {prd} {"Phys. Rev.~D"}
+MACRO {prl} {"Phys. Rev. Lett."}
+MACRO {procroysoc} {"Proc. Roy. Soc"}
+MACRO {ps} {"Physica Scripta"}
+MACRO {rmp} {"Rev. Mod. Phys."}
+MACRO {rsi} {"Rev. Sci. Instrum."}
+MACRO {sjnp} {"Sov. J. Nucl. Phys."}
+MACRO {sjpp} {"Sov. J. Plasma Phys."}
+MACRO {spd} {"Sov. Phys.-Dokl."}
+MACRO {sptp} {"Sov. Phys.-Tech. Phys."}
+MACRO {spu} {"Sov. Phys.-Usp."}
+MACRO {zp} {"Z. Phys."}
+MACRO {zpc} {"Z. Phys.~C"}
+READ
+STRINGS { longest.label }
+INTEGERS { number.label longest.label.width }
+FUNCTION {initialize.longest.label}
+{ "" 'longest.label :=
+#1 'number.label :=
+#0 'longest.label.width :=
+}
+FUNCTION {longest.label.pass}
+{ number.label int.to.str$ 'label :=
+number.label #1 + 'number.label :=
+label width$ longest.label.width >
+{ label 'longest.label :=
+label width$ 'longest.label.width :=
+}
+'skip$
+if$
+}
+EXECUTE {initialize.longest.label}
+ITERATE {longest.label.pass}
+FUNCTION {begin.bib}
+{ preamble$ empty$
+'skip$
+{ preamble$ write$ newline$ }
+if$
+"\begin{thebibliography}{" longest.label * "}" * write$ newline$
+}
+EXECUTE {begin.bib}
+EXECUTE {init.state.consts}
+ITERATE {call.type$}
+FUNCTION {end.bib}
+{ newline$
+"\end{thebibliography}" write$ newline$
+}
+EXECUTE {end.bib}
--- /dev/null
+\documentclass[a4paper,10pt]{article}
+
+ %A Few Useful Packages
+\usepackage{marvosym}
+\usepackage{fontspec} %load fonts
+\usepackage{url,parskip} %formatting
+\usepackage{xunicode,xltxtra} %other packages for XeTeX
+
+%Graphics - Colors
+\RequirePackage{color,graphicx}
+\usepackage[usenames,dvipsnames]{xcolor}
+%better formatting of the A4 page
+%\usepackage[big]{layaureo}
+\usepackage[empty]{fullpage}
+%An alternative to Layaureo can be usepackage{fullpage}
+
+\usepackage{supertabular} %for Grades
+\usepackage{titlesec} %custom section
+
+%Setup hyperref package, and colours for links
+\usepackage{hyperref}
+\definecolor{linkcolour}{rgb}{0,0.2,0.6}
+\hypersetup{colorlinks,breaklinks, urlcolor=linkcolour, linkcolor=linkcolour}
+
+%FONTS
+\defaultfontfeatures{Mapping=tex-text}
+\setmainfont[SmallCapsFont = Fontin SmallCaps]{Fontin}
+
+%CV Sections inspired by:
+%http://stefano.italians.nl/archives/26
+\titleformat{\section}{\Large\scshape\raggedright}{}{0em}{}[\titlerule]
+\titlespacing{\section}{0pt}{3pt}{3pt}
+
+%-------BEGIN DOCUMENT--------
+\begin{document}
+
+ \pagestyle{empty} % non-numbered pages
+
+ %--------------------TITLE-------------
+\par{\centering
+{\Huge\textsc{Frank Zirkelbach} }
+\bigskip\par}
+
+ %Section: Personal Data
+\section{Personal Data}
+\begin{tabular}{rl}
+\textsc{Place and Date of Birth:} & Berlin, Germany | 17 November 1977\\
+\textsc{Address:} & Vorderer Lech 49, 86150 Augsburg, Germany\\
+\textsc{Phone:} & +49 821 598 3008 (work)\\
+ & +49 175 5228066 (mobile)\\
+\textsc{Fax:} & +49 821 598 3425 (work)\\
+\textsc{email:} & \href{mailto:frank.zirkelbach@physik.uni-augsburg.de}{frank.zirkelbach@physik.uni-augsburg.de}\\
+\textsc{http:} & \href{http://www.physik.uni-augsburg.de/~zirkelfr}{http://www.physik.uni-augsburg.de/\textasciitilde{}zirkelfr}\\
+\end{tabular}
+\begin{picture}(0,0)(-5,38)
+\includegraphics[height=3.0cm]{frank_app_mountain.eps}
+\end{picture}
+
+%Section: Work Experience at the top
+\section{Work Experience}
+\begin{tabular}{r|p{11cm}}
+\textsc{Jan 2006 - Present} & \textbf{Research assistent \& Doctoral candidate}\newline
+ Physics Department, University of Augsburg \\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Jul 2009 - Dec 2009} & \textbf{Research scientist}\newline
+ Physics Department, University of Paderborn\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+%some other job here
+\end{tabular}
+
+%Section: Education
+\section{Basic education}
+\begin{tabular}{r|p{11cm}}
+\textsc{Sep 1984 - Jul 1988} & \textbf{Elementary school}\newline
+ Ernst-Habermann-Grundschule, Berlin, Wilmersdorf\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Sep 1988 - Jul 1994} & \textbf{Grammar school}\newline
+ Justus-von-Liebig-Gymnasium, Neus\"ass\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Sep 1994 - Jul 1998} & \textbf{Grammar school}\newline
+ Holbein-Gymnasium, Augsburg\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\end{tabular}
+
+\section{Conscription}
+\begin{tabular}{r|p{11cm}}
+\textsc{Aug 1998 - Sep 1999} & \textbf{Alternative civilian service}\newline
+ Hessing-Klinik, Augsburg\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\end{tabular}
+
+\section{Scientific education}
+\begin{tabular}{r|p{11cm}}
+\textsc{Oct 1999 - Dec 2005} & \textbf{Studies in physics}\newline
+ Physics Department, University of Augsburg\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Jan 2006 - Present} & \textbf{Doctoral studies in physics}\newline
+ Physics Department, University of Augsburg\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Jan 2006 - Dec 2008} & \textbf{Scholarship student}\newline
+ Bayerische Forschungsstiftung\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Oct/Nov 2007} & \textbf{Research period at the University of Helsinki}\\
+\textsc{Aug/Sep 2008} & Division of Materials Physics, Department of Physics\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Jul 2009 - Present} & \textbf{Scientific collaboration with the University of Paderborn}\newline
+ Theoretical Physics, Physics Department\\
+\end{tabular}
+
+\section{Knowledge of languages}
+\begin{tabular}{r|p{11cm}}
+\textsc{German} & Native language\\
+\textsc{English} & Excellent (written \& spoken)\\
+\textsc{French} & Basic knowledge\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\end{tabular}
+
+\section{Computer literacy}
+\begin{tabular}{r|p{11cm}}
+\textsc{Operating systems} & Linux, Unix, Windows\\
+%\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Programming} & C, RISC Assembler (Atmel, Mips), VHDL, Fortran (reading \& modifying)\\
+%\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Scripting} & Bash, Sed, Awk, Make\\
+%\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Revision control} & CVS, Git, SVN\\
+%\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Text \& Layout} & Latex, Postscript, GNUPlot, Xmgrace, Gimp, XFig,
+ Inkscape, Openoffice\\
+%\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\textsc{Others} & Eagle (PCB Design), Xilinx ISE (VHDL Design)\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\end{tabular}
+
+\section{Leisure activities}
+\begin{tabular}{r|p{11cm}}
+\textsc{Sports} & Hiking, Trekking, Basketball, Volleyball\\
+\textsc{Technical} & Programming, Microcontroller, Hardware and logic designs\\
+\textsc{Reading} & Social-scientific texts\\
+\multicolumn{2}{c}{}\\ %this clears the space between two jobs
+\end{tabular}
+
+% lop
+\addcontentsline{toc}{chapter}{List of publications}
+\renewcommand{\refname}{List of publications}
+\bibliography{../bibdb/bibdb}{}
+\bibliographystyle{cv}
+\nocite{zirkelbach11,zirkelbach10,zirkelbach09}
+\nocite{zirkelbach2007,zirkelbach2006,zirkelbach2005}
+
+\end{document}
+
--- /dev/null
+\documentclass[10pt]{report}
+\usepackage{a4}
+\usepackage[german]{babel}
+\usepackage{amsmath}
+\usepackage{ae}
+
+\newcommand{\aquatre}{
+ \setlength{\oddsidemargin}{-1cm}
+ \setlength{\evensidemargin}{0cm}\setlength{\textwidth}{17cm}
+ \setlength{\topmargin}{-8mm}\setlength{\textheight}{24cm}
+ \setlength{\parindent}{0cm}
+}
+\newcommand{\name}[1]{{\LARGE \center \bf #1\\\markright{#1}}}
+%\renewcommand{\today}{
+% \ifcase\month\or
+% January\or February\or March\or April\or May\or June\or
+% July\or August\or September\or October\or November\or December\fi,
+% \space\number\year
+%}
+\newcommand{\address}[1]{{\center #1}}
+\newcommand{\hometel}[1]{{\tiny{(home)}} #1\\}
+\newcommand{\worktel}[1]{{\tiny{(work)}} #1\\}
+\newcommand{\mail}[1]{{\it #1}\\}
+\newcommand{\url}[1]{{\it #1}\\}
+\newcommand{\hligne}{\begin{tabular}{p{\textwidth}}\hline\ \\\end{tabular}}
+\newcommand{\parag}[1]{\section*{\em #1}\hligne}
+
+\aquatre
+
+\begin{document}
+\pagestyle{headings}
+\thispagestyle{empty}
+
+\name{Frank Zirkelbach}
+
+\address{Vorderer Lech 49\\
+86150 Augsburg\\
+Deutschland\\}
+
+\begin{flushright}
+\hometel{+49-821-8075502}
+\worktel{+49-821-5983008}
+
+\medskip
+
+\mail{frank.zirkelbach@physik.uni-augsburg.de}
+\url{http://www.physik.uni-augsburg.de/\~{}zirkelfr/}
+\end{flushright}
+
+\parag{Pers"onliche Daten}
+\begin{itemize}
+
+\item {\bf Geburtsdaten} \\
+17.11.1977, Berlin, Neuk"olln.
+
+\item {\bf Umzug} \\
+1988, nach Augsburg.
+
+\end{itemize}
+
+\parag{Schulbildung}
+\begin{itemize}
+
+\item {\bf Grundschule} \\
+1984-1988 \\
+Ernst-Habermann-Grundschule, Berlin, Wilmersdorf.
+
+\item {\bf Allgemeine Hochschulreife} \\
+1988-1994 \\
+Justus-von-Liebig-Gymnasium, Neus"a"s. \\
+1994-1998 \\
+Holbein-Gymnasium, Augsburg.
+
+\end{itemize}
+
+\parag{Wehrersatzdienst}
+
+Hessing Klinik, Augsburg. \\
+August 1998 bis September 1999
+
+\parag{Studium}
+\begin{itemize}
+
+\item {\bf Physik Studium} \\
+Oktober 1999 bis Dezember 2005 \\
+Universit"at Augsburg.
+
+\item {\bf Diplom-Vorpr"ufung} \\
+Oktober 2001
+
+\item {\bf Diplom-Hauptpr"ufung} \\
+Dezember 2005
+
+%\pagebreak
+
+\item {\bf Thema der Diplomarbeit} \\
+{\em Monte-Carlo-Simulation von selbstorganisierten nanometrischen
+ $SiC_x$-Ausscheidungen in $C^+$-implantierten Silizium}. \\
+
+\item {\bf Promotion im Studiengang Physik}\\
+seit Januar 2006\\
+Stipendiat der Bayerischen Forschungsstiftung.\\
+Universit"at Augsburg / University of Helsinki.\\
+
+\item {\bf Thema der Doktorarbeit}\\
+{\em Molekulardynamische Simulation des Ausscheidungsvorgangs von $SiC$
+ in kristallinen Silizium}.\\
+
+\end{itemize}
+
+\parag{Sprachkenntnisse}
+Deutsch, Englisch, Grundlagen Franz"osisch.
+
+\parag{EDV-Kenntnisse}
+\begin{itemize}
+
+\item Betriebssysteme: Linux, Unix, Grundlagen Windows.
+\item Programmiersprachen: Bash, C, RISC Assembler (Atmel, Mips), VHDL.
+\item weitere Anwendungen: Eagle, Latex, Gimp, XFig, GNUPlot, Xmgrace,
+ Openoffice.
+
+\end{itemize}
+
+ \par\nopagebreak\vfill\hfill \today
+
+\end{document}