From 2cc37cc67fd3435de65b48099b7e30a46fc73e1e Mon Sep 17 00:00:00 2001 From: Joseph Timothy Foley Date: Wed, 2 Feb 2022 16:01:21 +0000 Subject: [PATCH] Grabbed latest IEEEtran from https://ctan.org/pkg/ieeetran --- IEEEtran/IEEEtran.cls | 6347 ++++++++++++++++++++++++ IEEEtran/IEEEtran_HOWTO.pdf | Bin 0 -> 671626 bytes IEEEtran/README | 140 + IEEEtran/bare_adv.tex | 943 ++++ IEEEtran/bare_conf.tex | 576 +++ IEEEtran/bare_conf_compsoc.tex | 599 +++ IEEEtran/bare_jrnl.tex | 717 +++ IEEEtran/bare_jrnl_compsoc.tex | 787 +++ IEEEtran/bare_jrnl_comsoc.tex | 744 +++ IEEEtran/bare_jrnl_transmag.tex | 714 +++ IEEEtran/bibtex/IEEEabrv.bib | 489 ++ IEEEtran/bibtex/IEEEexample.bib | 1203 +++++ IEEEtran/bibtex/IEEEfull.bib | 486 ++ IEEEtran/bibtex/IEEEtran.bst | 2409 +++++++++ IEEEtran/bibtex/IEEEtranN.bst | 2735 ++++++++++ IEEEtran/bibtex/IEEEtranS.bst | 2607 ++++++++++ IEEEtran/bibtex/IEEEtranSA.bst | 2806 +++++++++++ IEEEtran/bibtex/IEEEtranSN.bst | 2878 +++++++++++ IEEEtran/bibtex/IEEEtran_bst_HOWTO.pdf | Bin 0 -> 286900 bytes IEEEtran/bibtex/README | 138 + IEEEtran/bibtex/changelog.txt | 173 + IEEEtran/changelog.txt | 783 +++ IEEEtran/extras/README | 53 + IEEEtran/extras/tux.eps | 1958 ++++++++ IEEEtran/extras/tux.pdf | Bin 0 -> 19349 bytes IEEEtran/testflow/README | 82 + IEEEtran/testflow/testflow.tex | 592 +++ IEEEtran/testflow/testflow_ctl_A4.pdf | Bin 0 -> 74762 bytes IEEEtran/testflow/testflow_ctl_A4.ps | 3000 +++++++++++ IEEEtran/testflow/testflow_ctl_LTR.pdf | Bin 0 -> 74715 bytes IEEEtran/testflow/testflow_ctl_LTR.ps | 3001 +++++++++++ IEEEtran/testflow/testflow_doc.pdf | Bin 0 -> 389625 bytes IEEEtran/tools/IEEEtrantools.sty | 2799 +++++++++++ IEEEtran/tools/IEEEtrantools_doc.txt | 329 ++ IEEEtran/tools/README | 121 + IEEEtran/tools/changelog.txt | 119 + 36 files changed, 40328 insertions(+) create mode 100644 IEEEtran/IEEEtran.cls create mode 100644 IEEEtran/IEEEtran_HOWTO.pdf create mode 100644 IEEEtran/README create mode 100644 IEEEtran/bare_adv.tex create mode 100644 IEEEtran/bare_conf.tex create mode 100644 IEEEtran/bare_conf_compsoc.tex create mode 100644 IEEEtran/bare_jrnl.tex create mode 100644 IEEEtran/bare_jrnl_compsoc.tex create mode 100644 IEEEtran/bare_jrnl_comsoc.tex create mode 100644 IEEEtran/bare_jrnl_transmag.tex create mode 100644 IEEEtran/bibtex/IEEEabrv.bib create mode 100644 IEEEtran/bibtex/IEEEexample.bib create mode 100644 IEEEtran/bibtex/IEEEfull.bib create mode 100644 IEEEtran/bibtex/IEEEtran.bst create mode 100644 IEEEtran/bibtex/IEEEtranN.bst create mode 100644 IEEEtran/bibtex/IEEEtranS.bst create mode 100644 IEEEtran/bibtex/IEEEtranSA.bst create mode 100644 IEEEtran/bibtex/IEEEtranSN.bst create mode 100644 IEEEtran/bibtex/IEEEtran_bst_HOWTO.pdf create mode 100644 IEEEtran/bibtex/README create mode 100644 IEEEtran/bibtex/changelog.txt create mode 100644 IEEEtran/changelog.txt create mode 100644 IEEEtran/extras/README create mode 100644 IEEEtran/extras/tux.eps create mode 100644 IEEEtran/extras/tux.pdf create mode 100644 IEEEtran/testflow/README create mode 100644 IEEEtran/testflow/testflow.tex create mode 100644 IEEEtran/testflow/testflow_ctl_A4.pdf create mode 100644 IEEEtran/testflow/testflow_ctl_A4.ps create mode 100644 IEEEtran/testflow/testflow_ctl_LTR.pdf create mode 100644 IEEEtran/testflow/testflow_ctl_LTR.ps create mode 100644 IEEEtran/testflow/testflow_doc.pdf create mode 100644 IEEEtran/tools/IEEEtrantools.sty create mode 100644 IEEEtran/tools/IEEEtrantools_doc.txt create mode 100644 IEEEtran/tools/README create mode 100644 IEEEtran/tools/changelog.txt diff --git a/IEEEtran/IEEEtran.cls b/IEEEtran/IEEEtran.cls new file mode 100644 index 0000000..8d2b1c6 --- /dev/null +++ b/IEEEtran/IEEEtran.cls @@ -0,0 +1,6347 @@ +%% +%% IEEEtran.cls 2015/08/26 version V1.8b +%% +%% This is the IEEEtran LaTeX class for authors of the Institute of +%% Electrical and Electronics Engineers (IEEE) Transactions journals and +%% conferences. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ +%% +%% Based on the original 1993 IEEEtran.cls, but with many bug fixes +%% and enhancements (from both JVH and MDS) over the 1996/7 version. +%% +%% +%% Contributors: +%% Gerry Murray (1993), Silvano Balemi (1993), +%% Jon Dixon (1996), Peter N"uchter (1996), +%% Juergen von Hagen (2000), and Michael Shell (2001-2014) +%% +%% +%% Copyright (c) 1993-2000 by Gerry Murray, Silvano Balemi, +%% Jon Dixon, Peter N"uchter, +%% Juergen von Hagen +%% and +%% Copyright (c) 2001-2015 by Michael Shell +%% +%% Current maintainer (V1.3 to V1.8b): Michael Shell +%% See: +%% http://www.michaelshell.org/ +%% for current contact information. +%% +%% Special thanks to Peter Wilson (CUA) and Donald Arseneau +%% for allowing the inclusion of the \@ifmtarg command +%% from their ifmtarg LaTeX package. +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%% +%% File list of work: IEEEtran.cls, IEEEtran_HOWTO.pdf, bare_adv.tex, +%% bare_conf.tex, bare_jrnl.tex, bare_conf_compsoc.tex, +%% bare_jrnl_compsoc.tex +%% +%% Major changes to the user interface should be indicated by an +%% increase in the version numbers. If a version is a beta, it will +%% be indicated with a BETA suffix, i.e., 1.4 BETA. +%% Small changes can be indicated by appending letters to the version +%% such as "IEEEtran_v14a.cls". +%% In all cases, \Providesclass, any \typeout messages to the user, +%% \IEEEtransversionmajor and \IEEEtransversionminor must reflect the +%% correct version information. +%% The changes should also be documented via source comments. +%%************************************************************************* +%% +% +% Available class options +% e.g., \documentclass[10pt,conference]{IEEEtran} +% +% *** choose only one from each category *** +% +% 9pt, 10pt, 11pt, 12pt +% Sets normal font size. The default is 10pt. +% +% conference, journal, technote, peerreview, peerreviewca +% determines format mode - conference papers, journal papers, +% correspondence papers (technotes), or peer review papers. The user +% should also select 9pt when using technote. peerreview is like +% journal mode, but provides for a single-column "cover" title page for +% anonymous peer review. The paper title (without the author names) is +% repeated at the top of the page after the cover page. For peer review +% papers, the \IEEEpeerreviewmaketitle command must be executed (will +% automatically be ignored for non-peerreview modes) at the place the +% cover page is to end, usually just after the abstract (keywords are +% not normally used with peer review papers). peerreviewca is like +% peerreview, but allows the author names to be entered and formatted +% as with conference mode so that author affiliation and contact +% information can be easily seen on the cover page. +% The default is journal. +% +% draft, draftcls, draftclsnofoot, final +% determines if paper is formatted as a widely spaced draft (for +% handwritten editor comments) or as a properly typeset final version. +% draftcls restricts draft mode to the class file while all other LaTeX +% packages (i.e., \usepackage{graphicx}) will behave as final - allows +% for a draft paper with visible figures, etc. draftclsnofoot is like +% draftcls, but does not display the date and the word "DRAFT" at the foot +% of the pages. If using one of the draft modes, the user will probably +% also want to select onecolumn. +% The default is final. +% +% letterpaper, a4paper, cspaper +% determines paper size: 8.5in X 11in, 210mm X 297mm or 7.875in X 10.75in. +% Changing the paper size in the standard journal and conference modes +% will not alter the typesetting of the document - only the margins will +% be affected. In particular, documents using the a4paper option will +% have reduced side margins (A4 is narrower than US letter) and a longer +% bottom margin (A4 is longer than US letter). For both cases, the top +% margins will be the same and the text will be horizontally centered. +% For the compsoc conference and draft modes, it is the margins that will +% remain constant, and thus the text area size will vary, with changes in +% the paper size. +% The cspaper option is the special ``trim'' paper size (7.875in x 10.75in) +% used in the actual publication of Computer Society journals. Under +% compsoc journal mode, this option does not alter the typesetting of the +% document. Authors should invoke the cspaper option only if requested to +% do so by the editors of the specific journal they are submitting to. +% For final submission to the IEEE, authors should generally use US letter +% (8.5 X 11in) paper unless otherwise instructed. Note that authors should +% ensure that all post-processing (ps, pdf, etc.) uses the same paper +% specificiation as the .tex document. Problems here are by far the number +% one reason for incorrect margins. IEEEtran will automatically set the +% default paper size under pdflatex (without requiring any change to +% pdftex.cfg), so this issue is more important to dvips users. Fix +% config.ps, config.pdf, or ~/.dvipsrc for dvips, or use the +% dvips -t papersize option instead as needed. For the cspaper option, +% the corresponding dvips paper name is "ieeecs". +% See the testflow documentation +% http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/testflow +% for more details on dvips paper size configuration. +% The default is letterpaper. +% +% oneside, twoside +% determines if layout follows single sided or two sided (duplex) +% printing. The only notable change is with the headings at the top of +% the pages. +% The default is oneside. +% +% onecolumn, twocolumn +% determines if text is organized into one or two columns per page. One +% column mode is usually used only with draft papers. +% The default is twocolumn. +% +% comsoc, compsoc, transmag +% Use the format of the IEEE Communications Society, IEEE Computer Society +% or IEEE Transactions on Magnetics, respectively. +% +% romanappendices +% Use the "Appendix I" convention when numbering appendices. IEEEtran.cls +% now defaults to Alpha "Appendix A" convention - the opposite of what +% v1.6b and earlier did. +% +% captionsoff +% disables the display of the figure/table captions. Some IEEE journals +% request that captions be removed and figures/tables be put on pages +% of their own at the end of an initial paper submission. The endfloat +% package can be used with this class option to achieve this format. +% +% nofonttune +% turns off tuning of the font interword spacing. Maybe useful to those +% not using the standard Times fonts or for those who have already "tuned" +% their fonts. +% The default is to enable IEEEtran to tune font parameters. +% +% +%---------- +% Available CLASSINPUTs provided (all are macros unless otherwise noted): +% \CLASSINPUTbaselinestretch +% \CLASSINPUTinnersidemargin +% \CLASSINPUToutersidemargin +% \CLASSINPUTtoptextmargin +% \CLASSINPUTbottomtextmargin +% +% Available CLASSINFOs provided: +% \ifCLASSINFOpdf (TeX if conditional) +% \CLASSINFOpaperwidth (macro) +% \CLASSINFOpaperheight (macro) +% \CLASSINFOnormalsizebaselineskip (length) +% \CLASSINFOnormalsizeunitybaselineskip (length) +% +% Available CLASSOPTIONs provided: +% all class option flags (TeX if conditionals) unless otherwise noted, +% e.g., \ifCLASSOPTIONcaptionsoff +% point size options provided as a single macro: +% \CLASSOPTIONpt +% which will be defined as 9, 10, 11, or 12 depending on the document's +% normalsize point size. +% also, class option peerreviewca implies the use of class option peerreview +% and classoption draft implies the use of class option draftcls + + + + + +\ProvidesClass{IEEEtran}[2015/08/26 V1.8b by Michael Shell] +\typeout{-- See the "IEEEtran_HOWTO" manual for usage information.} +\typeout{-- http://www.michaelshell.org/tex/ieeetran/} +\NeedsTeXFormat{LaTeX2e} + +% IEEEtran.cls version numbers, provided as of V1.3 +% These values serve as a way a .tex file can +% determine if the new features are provided. +% The version number of this IEEEtrans.cls can be obtained from +% these values. i.e., V1.4 +% KEEP THESE AS INTEGERS! i.e., NO {4a} or anything like that- +% (no need to enumerate "a" minor changes here) +\def\IEEEtransversionmajor{1} +\def\IEEEtransversionminor{8} + + +% hook to allow easy changeover to IEEEtran.cls/tools.sty error reporting +\def\@IEEEclspkgerror{\ClassError{IEEEtran}} + + +% These do nothing, but provide them like in article.cls +\newif\if@restonecol +\newif\if@titlepage + + +% class option conditionals +\newif\ifCLASSOPTIONonecolumn \CLASSOPTIONonecolumnfalse +\newif\ifCLASSOPTIONtwocolumn \CLASSOPTIONtwocolumntrue + +\newif\ifCLASSOPTIONoneside \CLASSOPTIONonesidetrue +\newif\ifCLASSOPTIONtwoside \CLASSOPTIONtwosidefalse + +\newif\ifCLASSOPTIONfinal \CLASSOPTIONfinaltrue +\newif\ifCLASSOPTIONdraft \CLASSOPTIONdraftfalse +\newif\ifCLASSOPTIONdraftcls \CLASSOPTIONdraftclsfalse +\newif\ifCLASSOPTIONdraftclsnofoot \CLASSOPTIONdraftclsnofootfalse + +\newif\ifCLASSOPTIONpeerreview \CLASSOPTIONpeerreviewfalse +\newif\ifCLASSOPTIONpeerreviewca \CLASSOPTIONpeerreviewcafalse + +\newif\ifCLASSOPTIONjournal \CLASSOPTIONjournaltrue +\newif\ifCLASSOPTIONconference \CLASSOPTIONconferencefalse +\newif\ifCLASSOPTIONtechnote \CLASSOPTIONtechnotefalse + +\newif\ifCLASSOPTIONnofonttune \CLASSOPTIONnofonttunefalse + +\newif\ifCLASSOPTIONcaptionsoff \CLASSOPTIONcaptionsofffalse + +\newif\ifCLASSOPTIONcomsoc \CLASSOPTIONcomsocfalse +\newif\ifCLASSOPTIONcompsoc \CLASSOPTIONcompsocfalse +\newif\ifCLASSOPTIONtransmag \CLASSOPTIONtransmagfalse + +\newif\ifCLASSOPTIONromanappendices \CLASSOPTIONromanappendicesfalse + + +% class info conditionals + +% indicates if pdf (via pdflatex) output +\newif\ifCLASSINFOpdf \CLASSINFOpdffalse + + +% V1.6b internal flag to show if using a4paper +\newif\if@IEEEusingAfourpaper \@IEEEusingAfourpaperfalse +% V1.6b internal flag to show if using cspaper +\newif\if@IEEEusingcspaper \@IEEEusingcspaperfalse + + +% IEEEtran class scratch pad registers +% dimen +\newdimen\@IEEEtrantmpdimenA +\newdimen\@IEEEtrantmpdimenB +\newdimen\@IEEEtrantmpdimenC +% count +\newcount\@IEEEtrantmpcountA +\newcount\@IEEEtrantmpcountB +\newcount\@IEEEtrantmpcountC +% token list +\newtoks\@IEEEtrantmptoksA + +% we use \CLASSOPTIONpt so that we can ID the point size (even for 9pt docs) +% as well as LaTeX's \@ptsize to retain some compatability with some +% external packages +\def\@ptsize{0} +% LaTeX does not support 9pt, so we set \@ptsize to 0 - same as that of 10pt +\DeclareOption{9pt}{\def\CLASSOPTIONpt{9}\def\@ptsize{0}} +\DeclareOption{10pt}{\def\CLASSOPTIONpt{10}\def\@ptsize{0}} +\DeclareOption{11pt}{\def\CLASSOPTIONpt{11}\def\@ptsize{1}} +\DeclareOption{12pt}{\def\CLASSOPTIONpt{12}\def\@ptsize{2}} + + + +\DeclareOption{letterpaper}{\setlength{\paperwidth}{8.5in}% + \setlength{\paperheight}{11in}% + \@IEEEusingAfourpaperfalse + \@IEEEusingcspaperfalse + \def\CLASSOPTIONpaper{letter}% + \def\CLASSINFOpaperwidth{8.5in}% + \def\CLASSINFOpaperheight{11in}} + + +\DeclareOption{a4paper}{\setlength{\paperwidth}{210mm}% + \setlength{\paperheight}{297mm}% + \@IEEEusingAfourpapertrue + \@IEEEusingcspaperfalse + \def\CLASSOPTIONpaper{a4}% + \def\CLASSINFOpaperwidth{210mm}% + \def\CLASSINFOpaperheight{297mm}} + +% special paper option for compsoc journals +\DeclareOption{cspaper}{\setlength{\paperwidth}{7.875in}% + \setlength{\paperheight}{10.75in}% + \@IEEEusingcspapertrue + \@IEEEusingAfourpaperfalse + \def\CLASSOPTIONpaper{ieeecs}% + \def\CLASSINFOpaperwidth{7.875in}% + \def\CLASSINFOpaperheight{10.75in}} + +\DeclareOption{oneside}{\@twosidefalse\@mparswitchfalse + \CLASSOPTIONonesidetrue\CLASSOPTIONtwosidefalse} +\DeclareOption{twoside}{\@twosidetrue\@mparswitchtrue + \CLASSOPTIONtwosidetrue\CLASSOPTIONonesidefalse} + +\DeclareOption{onecolumn}{\CLASSOPTIONonecolumntrue\CLASSOPTIONtwocolumnfalse} +\DeclareOption{twocolumn}{\CLASSOPTIONtwocolumntrue\CLASSOPTIONonecolumnfalse} + +% If the user selects draft, then this class AND any packages +% will go into draft mode. +\DeclareOption{draft}{\CLASSOPTIONdrafttrue\CLASSOPTIONdraftclstrue + \CLASSOPTIONdraftclsnofootfalse} +% draftcls is for a draft mode which will not affect any packages +% used by the document. +\DeclareOption{draftcls}{\CLASSOPTIONdraftfalse\CLASSOPTIONdraftclstrue + \CLASSOPTIONdraftclsnofootfalse} +% draftclsnofoot is like draftcls, but without the footer. +\DeclareOption{draftclsnofoot}{\CLASSOPTIONdraftfalse\CLASSOPTIONdraftclstrue + \CLASSOPTIONdraftclsnofoottrue} +\DeclareOption{final}{\CLASSOPTIONdraftfalse\CLASSOPTIONdraftclsfalse + \CLASSOPTIONdraftclsnofootfalse} + +\DeclareOption{journal}{\CLASSOPTIONpeerreviewfalse\CLASSOPTIONpeerreviewcafalse + \CLASSOPTIONjournaltrue\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotefalse} + +\DeclareOption{conference}{\CLASSOPTIONpeerreviewfalse\CLASSOPTIONpeerreviewcafalse + \CLASSOPTIONjournalfalse\CLASSOPTIONconferencetrue\CLASSOPTIONtechnotefalse} + +\DeclareOption{technote}{\CLASSOPTIONpeerreviewfalse\CLASSOPTIONpeerreviewcafalse + \CLASSOPTIONjournalfalse\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotetrue} + +\DeclareOption{peerreview}{\CLASSOPTIONpeerreviewtrue\CLASSOPTIONpeerreviewcafalse + \CLASSOPTIONjournalfalse\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotefalse} + +\DeclareOption{peerreviewca}{\CLASSOPTIONpeerreviewtrue\CLASSOPTIONpeerreviewcatrue + \CLASSOPTIONjournalfalse\CLASSOPTIONconferencefalse\CLASSOPTIONtechnotefalse} + +\DeclareOption{nofonttune}{\CLASSOPTIONnofonttunetrue} + +\DeclareOption{captionsoff}{\CLASSOPTIONcaptionsofftrue} + +\DeclareOption{comsoc}{\CLASSOPTIONcomsoctrue\CLASSOPTIONcompsocfalse\CLASSOPTIONtransmagfalse} + +\DeclareOption{compsoc}{\CLASSOPTIONcomsocfalse\CLASSOPTIONcompsoctrue\CLASSOPTIONtransmagfalse} + +\DeclareOption{transmag}{\CLASSOPTIONtransmagtrue\CLASSOPTIONcomsocfalse\CLASSOPTIONcompsocfalse} + +\DeclareOption{romanappendices}{\CLASSOPTIONromanappendicestrue} + + +% default to US letter paper, 10pt, twocolumn, one sided, final, journal +\ExecuteOptions{letterpaper,10pt,twocolumn,oneside,final,journal} +% overrride these defaults per user requests +\ProcessOptions + + + +%% -- Command Argument Scanning Support Functions -- + +% Sets the category codes for punctuation to their normal values. +% For local use with argument scanning. +\def\IEEEnormalcatcodespunct{\catcode`\!=12 \catcode`\,=12 \catcode`\:=12 +\catcode`\;=12 \catcode`\`=12 \catcode`\'=12 \catcode`\"=12 \catcode`\.=12 +\catcode`\/=12 \catcode`\?=12 \catcode`\*=12 \catcode`\+=12 \catcode`\-=12 +\catcode`\<=12 \catcode`\>=12 \catcode`\(=12 \catcode`\)=12 \catcode`\[=12 +\catcode`\]=12 \catcode`\==12 \catcode`\|=12} +% Sets the category codes for numbers to their normal values. +% For local use with argument scanning. +\def\IEEEnormalcatcodesnum{\catcode`\0=12 \catcode`\1=12 \catcode`\2=12 +\catcode`\3=12 \catcode`\4=12 \catcode`\5=12 \catcode`\6=12 \catcode`\7=12 +\catcode`\8=12 \catcode`\9=12} +% combined action of \IEEEnormalcatcodespunct and \IEEEnormalcatcodesnum +\def\IEEEnormalcatcodes{\IEEEnormalcatcodespunct\IEEEnormalcatcodesnum} + + +% usage: \@IEEEextracttoken*{} +% \@IEEEextracttoken fully expands its argument (which it then stores in +% \@IEEEextracttokenarg) via \edef and then the meaning of the first +% nonbrace (but including the empty group) token found is assigned via \let +% to \@IEEEextractedtoken as well as stored in the macro +% \@IEEEextractedtokenmacro. Tokens that would otherwise be discarded during +% the acquisition of the first are stored in \@IEEEextractedtokensdiscarded, +% however their original relative brace nesting depths are not guaranteed to +% be preserved. +% If the argument is empty, or if a first nonbrace token does not exist (or +% is an empty group), \@IEEEextractedtoken will be \relax and +% \@IEEEextractedtokenmacro and \@IEEEextractedtokensdiscarded will be empty. +% +% For example: +% \@IEEEextracttoken{{{ab}{cd}}{{ef}g}} +% results in: +% +% \@IEEEextracttokenarg ==> a macro containing {{ab}{cd}}{{ef}g} +% \@IEEEextractedtoken ==> the letter a +% \@IEEEextractedtokenmacro ==> a macro containing a +% \@IEEEextractedtokensdiscarded ==> a macro containing bcd{ef}g +% +% the *-star form, \@IEEEextracttoken*, does not expand its argument +% contents during processing. +\def\@IEEEextracttoken{\@ifstar{\let\@IEEEextracttokendef=\def\@@IEEEextracttoken}{\let\@IEEEextracttokendef=\edef\@@IEEEextracttoken}} + +\def\@@IEEEextracttoken#1{\@IEEEextracttokendef\@IEEEextracttokenarg{#1}\relax +\def\@IEEEextractedtokensdiscarded{}\relax % initialize to empty +% if the macro is unchanged after being acquired as a single undelimited argument +% with anything after it being stripped off as a delimited argument +% we know we have one token without any enclosing braces. loop until this is true. +\let\@IEEEextracttokencurgroup\@IEEEextracttokenarg +\loop + % trap case of an empty argument as this would cause a problem with + % \@@@IEEEextracttoken's first (nondelimited) argument acquisition + \ifx\@IEEEextracttokencurgroup\@empty + \def\@IEEEextractedtokenmacro{}\relax + \else + \expandafter\@@@IEEEextracttoken\@IEEEextracttokencurgroup\@IEEEgeneralsequenceDELIMITER\relax + \fi + \ifx\@IEEEextractedtokenmacro\@IEEEextracttokencurgroup + \else + \let\@IEEEextracttokencurgroup=\@IEEEextractedtokenmacro +\repeat +% we can safely do a \let= here because there should be at most one token +% the relax is needed to handle the case of no token found +\expandafter\let\expandafter\@IEEEextractedtoken\@IEEEextractedtokenmacro\relax} + +\def\@@@IEEEextracttoken#1#2\@IEEEgeneralsequenceDELIMITER{\def\@IEEEextractedtokenmacro{#1}\relax +\def\@@IEEEextractedtokensdiscarded{#2}\expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter +\@IEEEextractedtokensdiscarded\expandafter\expandafter\expandafter +{\expandafter\@@IEEEextractedtokensdiscarded\@IEEEextractedtokensdiscarded}} +%% +%% -- End of Command Argument Scanning Support Functions -- + + + +% Computer Society conditional execution command +\long\def\@IEEEcompsoconly#1{\relax\ifCLASSOPTIONcompsoc\relax#1\relax\fi\relax} +% inverse +\long\def\@IEEEnotcompsoconly#1{\relax\ifCLASSOPTIONcompsoc\else\relax#1\relax\fi\relax} +% compsoc conference +\long\def\@IEEEcompsocconfonly#1{\relax\ifCLASSOPTIONcompsoc\ifCLASSOPTIONconference\relax#1\relax\fi\fi\relax} +% compsoc not conference +\long\def\@IEEEcompsocnotconfonly#1{\relax\ifCLASSOPTIONcompsoc\ifCLASSOPTIONconference\else\relax#1\relax\fi\fi\relax} + + +% comsoc verify that newtxmath, mtpro2, mt11p or mathtime has been loaded +\def\@IEEEcomsocverifymathfont{\typeout{-- Verifying Times compatible math font.}\relax + \@ifpackageloaded{newtxmath}{\typeout{-- newtxmath loaded, OK.}}{\@@IEEEcomsocverifymathfont}} +\def\@@IEEEcomsocverifymathfont{\@ifpackageloaded{mtpro2}{\typeout{-- mtpro2 loaded, OK.}}{\@@@IEEEcomsocverifymathfont}} +\def\@@@IEEEcomsocverifymathfont{\@ifpackageloaded{mt11p}{\typeout{-- mt11p2 loaded, OK.}}{\@@@@IEEEcomsocverifymathfont}} +\def\@@@@IEEEcomsocverifymathfont{\@ifpackageloaded{mathtime}{\typeout{-- mathtime loaded, OK.}}{\@IEEEcomsocenforcemathfont}} + +% comsoc, if a Times math font was not loaded by user, enforce it +\def\@IEEEcomsocenforcemathfont{\typeout{** Times compatible math font not found, forcing.}\relax +\IfFileExists{newtxmath.sty}{\typeout{-- Found newtxmath, loading.}\RequirePackage{newtxmath}}{\@@IEEEcomsocenforcemathfont}} +\def\@@IEEEcomsocenforcemathfont{\IfFileExists{mtpro2.sty}{\typeout{-- Found mtpro2, loading.}\RequirePackage{mtpro2}}{\@@@IEEEcomsocenforcemathfont}} +\def\@@@IEEEcomsocenforcemathfont{\IfFileExists{mt11p.sty}{\typeout{-- Found mt11p, loading.}\RequirePackage{mt11p}}{\@@@@IEEEcomsocenforcemathfont}} +\def\@@@@IEEEcomsocenforcemathfont{\IfFileExists{mathtime.sty}{\typeout{-- Found mathtime, loading.}\RequirePackage{mathtime}}{\@@@@@IEEEcomsocenforcemathfont}} +% if no acceptable Times math font package found, error with newtxmath requirement +\def\@@@@@IEEEcomsocenforcemathfont{\typeout{** No Times compatible math font package found. newtxmath is required.}\RequirePackage{newtxmath}} + + +\ifCLASSOPTIONcomsoc + % ensure that if newtxmath is used, the cmintegrals option is also invoked + \PassOptionsToPackage{cmintegrals}{newtxmath} + % comsoc requires a Times like math font + % ensure this requirement is satisfied at document start + \AtBeginDocument{\@IEEEcomsocverifymathfont} +\fi + + + +% The IEEE uses Times Roman font, so we'll default to Times. +% These three commands make up the entire times.sty package. +\renewcommand{\sfdefault}{phv} +\renewcommand{\rmdefault}{ptm} +\renewcommand{\ttdefault}{pcr} + +% V1.7 compsoc nonconference papers, use Palatino/Palladio as the main text font, +% not Times Roman. +\@IEEEcompsocnotconfonly{\renewcommand{\rmdefault}{ppl}} + +% enable the selected main text font +\normalfont\selectfont + + +\ifCLASSOPTIONcomsoc + \typeout{-- Using IEEE Communications Society mode.} +\fi + +\ifCLASSOPTIONcompsoc + \typeout{-- Using IEEE Computer Society mode.} +\fi + + +% V1.7 conference notice message hook +\def\@IEEEconsolenoticeconference{\typeout{}% +\typeout{** Conference Paper **}% +\typeout{Before submitting the final camera ready copy, remember to:}% +\typeout{}% +\typeout{ 1. Manually equalize the lengths of two columns on the last page}% +\typeout{ of your paper;}% +\typeout{}% +\typeout{ 2. Ensure that any PostScript and/or PDF output post-processing}% +\typeout{ uses only Type 1 fonts and that every step in the generation}% +\typeout{ process uses the appropriate paper size.}% +\typeout{}} + + +% we can send console reminder messages to the user here +\AtEndDocument{\ifCLASSOPTIONconference\@IEEEconsolenoticeconference\fi} + + +% warn about the use of single column other than for draft mode +\ifCLASSOPTIONtwocolumn\else% + \ifCLASSOPTIONdraftcls\else% + \typeout{** ATTENTION: Single column mode is not typically used with IEEE publications.}% + \fi% +\fi + + +% V1.7 improved paper size setting code. +% Set pdfpage and dvips paper sizes. Conditional tests are similar to that +% of ifpdf.sty. Retain within {} to ensure tested macros are never altered, +% even if only effect is to set them to \relax. +% if \pdfoutput is undefined or equal to relax, output a dvips special +{\@ifundefined{pdfoutput}{\AtBeginDvi{\special{papersize=\CLASSINFOpaperwidth,\CLASSINFOpaperheight}}}{% +% pdfoutput is defined and not equal to \relax +% check for pdfpageheight existence just in case someone sets pdfoutput +% under non-pdflatex. If exists, set them regardless of value of \pdfoutput. +\@ifundefined{pdfpageheight}{\relax}{\global\pdfpagewidth\paperwidth +\global\pdfpageheight\paperheight}% +% if using \pdfoutput=0 under pdflatex, send dvips papersize special +\ifcase\pdfoutput +\AtBeginDvi{\special{papersize=\CLASSINFOpaperwidth,\CLASSINFOpaperheight}}% +\else +% we are using pdf output, set CLASSINFOpdf flag +\global\CLASSINFOpdftrue +\fi}} + +% let the user know the selected papersize +\typeout{-- Using \CLASSINFOpaperwidth\space x \CLASSINFOpaperheight\space +(\CLASSOPTIONpaper)\space paper.} + +\ifCLASSINFOpdf +\typeout{-- Using PDF output.} +\else +\typeout{-- Using DVI output.} +\fi + + +% The idea hinted here is for LaTeX to generate markleft{} and markright{} +% automatically for you after you enter \author{}, \journal{}, +% \journaldate{}, journalvol{}, \journalnum{}, etc. +% However, there may be some backward compatibility issues here as +% well as some special applications for IEEEtran.cls and special issues +% that may require the flexible \markleft{}, \markright{} and/or \markboth{}. +% We'll leave this as an open future suggestion. +%\newcommand{\journal}[1]{\def\@journal{#1}} +%\def\@journal{} + + + +% pointsize values +% used with ifx to determine the document's normal size +\def\@IEEEptsizenine{9} +\def\@IEEEptsizeten{10} +\def\@IEEEptsizeeleven{11} +\def\@IEEEptsizetwelve{12} + + + +% FONT DEFINITIONS (No sizexx.clo file needed) +% V1.6 revised font sizes, displayskip values and +% revised normalsize baselineskip to reduce underfull vbox problems +% on the 58pc = 696pt = 9.5in text height we want +% normalsize #lines/column baselineskip (aka leading) +% 9pt 63 11.0476pt (truncated down) +% 10pt 58 12pt (exact) +% 11pt 52 13.3846pt (truncated down) +% 12pt 50 13.92pt (exact) +% + +% we need to store the nominal baselineskip for the given font size +% in case baselinestretch ever changes. +% this is a dimen, so it will not hold stretch or shrink +\newdimen\@IEEEnormalsizeunitybaselineskip +\@IEEEnormalsizeunitybaselineskip\baselineskip + + + +%% ******* WARNING! ******* +%% +%% Authors should not alter font sizes, baselineskip ("leading"), +%% margins or other spacing values in an attempt to squeeze more +%% material on each page. +%% +%% The IEEE's own typesetting software will restore the correct +%% values when re-typesetting/proofing the submitted document, +%% possibly resulting in unexpected article over length charges. +%% +%% ******* WARNING! ******* + + +% 9pt option defaults +\ifx\CLASSOPTIONpt\@IEEEptsizenine +\typeout{-- This is a 9 point document.} +\def\normalsize{\@setfontsize{\normalsize}{9}{11.0476pt}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{11.0476pt} +\normalsize +\abovedisplayskip 1.5ex plus 3pt minus 1pt +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 3pt +\belowdisplayshortskip 1.5ex plus 3pt minus 1pt +\def\small{\@setfontsize{\small}{8.5}{10pt}} +\def\footnotesize{\@setfontsize{\footnotesize}{8}{9pt}} +\def\scriptsize{\@setfontsize{\scriptsize}{7}{8pt}} +\def\tiny{\@setfontsize{\tiny}{5}{6pt}} +% sublargesize is the same as large - 10pt +\def\sublargesize{\@setfontsize{\sublargesize}{10}{12pt}} +\def\large{\@setfontsize{\large}{10}{12pt}} +\def\Large{\@setfontsize{\Large}{12}{14pt}} +\def\LARGE{\@setfontsize{\LARGE}{14}{17pt}} +\def\huge{\@setfontsize{\huge}{17}{20pt}} +\def\Huge{\@setfontsize{\Huge}{20}{24pt}} +\fi +% +% 10pt option defaults +\ifx\CLASSOPTIONpt\@IEEEptsizeten +\typeout{-- This is a 10 point document.} +\def\normalsize{\@setfontsize{\normalsize}{10}{12.00pt}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{12pt} +\normalsize +\abovedisplayskip 1.5ex plus 4pt minus 2pt +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 4pt +\belowdisplayshortskip 1.5ex plus 4pt minus 2pt +\def\small{\@setfontsize{\small}{9}{10pt}} +\def\footnotesize{\@setfontsize{\footnotesize}{8}{9pt}} +\def\scriptsize{\@setfontsize{\scriptsize}{7}{8pt}} +\def\tiny{\@setfontsize{\tiny}{5}{6pt}} +% sublargesize is a tad smaller than large - 11pt +\def\sublargesize{\@setfontsize{\sublargesize}{11}{13.4pt}} +\def\large{\@setfontsize{\large}{12}{14pt}} +\def\Large{\@setfontsize{\Large}{14}{17pt}} +\def\LARGE{\@setfontsize{\LARGE}{17}{20pt}} +\def\huge{\@setfontsize{\huge}{20}{24pt}} +\def\Huge{\@setfontsize{\Huge}{24}{28pt}} +\fi +% +% 11pt option defaults +\ifx\CLASSOPTIONpt\@IEEEptsizeeleven +\typeout{-- This is an 11 point document.} +\def\normalsize{\@setfontsize{\normalsize}{11}{13.3846pt}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{13.3846pt} +\normalsize +\abovedisplayskip 1.5ex plus 5pt minus 3pt +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 5pt +\belowdisplayshortskip 1.5ex plus 5pt minus 3pt +\def\small{\@setfontsize{\small}{10}{12pt}} +\def\footnotesize{\@setfontsize{\footnotesize}{9}{10.5pt}} +\def\scriptsize{\@setfontsize{\scriptsize}{8}{9pt}} +\def\tiny{\@setfontsize{\tiny}{6}{7pt}} +% sublargesize is the same as large - 12pt +\def\sublargesize{\@setfontsize{\sublargesize}{12}{14pt}} +\def\large{\@setfontsize{\large}{12}{14pt}} +\def\Large{\@setfontsize{\Large}{14}{17pt}} +\def\LARGE{\@setfontsize{\LARGE}{17}{20pt}} +\def\huge{\@setfontsize{\huge}{20}{24pt}} +\def\Huge{\@setfontsize{\Huge}{24}{28pt}} +\fi +% +% 12pt option defaults +\ifx\CLASSOPTIONpt\@IEEEptsizetwelve +\typeout{-- This is a 12 point document.} +\def\normalsize{\@setfontsize{\normalsize}{12}{13.92pt}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{13.92pt} +\normalsize +\abovedisplayskip 1.5ex plus 6pt minus 4pt +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 6pt +\belowdisplayshortskip 1.5ex plus 6pt minus 4pt +\def\small{\@setfontsize{\small}{10}{12pt}} +\def\footnotesize{\@setfontsize{\footnotesize}{9}{10.5pt}} +\def\scriptsize{\@setfontsize{\scriptsize}{8}{9pt}} +\def\tiny{\@setfontsize{\tiny}{6}{7pt}} +% sublargesize is the same as large - 14pt +\def\sublargesize{\@setfontsize{\sublargesize}{14}{17pt}} +\def\large{\@setfontsize{\large}{14}{17pt}} +\def\Large{\@setfontsize{\Large}{17}{20pt}} +\def\LARGE{\@setfontsize{\LARGE}{20}{24pt}} +\def\huge{\@setfontsize{\huge}{22}{26pt}} +\def\Huge{\@setfontsize{\Huge}{24}{28pt}} +\fi + + + +% V1.8a compsoc font sizes +% compsoc font sizes use bp "Postscript" point units (1/72in) +% rather than the traditional pt (1/72.27) +\ifCLASSOPTIONcompsoc +% -- compsoc defaults -- +% ** will override some of these values later ** +% 9pt +\ifx\CLASSOPTIONpt\@IEEEptsizenine +\def\normalsize{\@setfontsize{\normalsize}{9bp}{11bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{11bp} +\normalsize +\abovedisplayskip 1.5ex plus 3bp minus 1bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0bp plus 3bp +\belowdisplayshortskip 1.5ex plus 3bp minus 1bp +\def\small{\@setfontsize{\small}{8.5bp}{10bp}} +\def\footnotesize{\@setfontsize{\footnotesize}{8bp}{9bp}} +\def\scriptsize{\@setfontsize{\scriptsize}{7bp}{8bp}} +\def\tiny{\@setfontsize{\tiny}{5bp}{6bp}} +% sublargesize is the same as large - 10bp +\def\sublargesize{\@setfontsize{\sublargesize}{10bp}{12bp}} +\def\large{\@setfontsize{\large}{10bp}{12bp}} +\def\Large{\@setfontsize{\Large}{12bp}{14bp}} +\def\LARGE{\@setfontsize{\LARGE}{14bp}{17bp}} +\def\huge{\@setfontsize{\huge}{17bp}{20bp}} +\def\Huge{\@setfontsize{\Huge}{20bp}{24bp}} +\fi +% +% 10pt +\ifx\CLASSOPTIONpt\@IEEEptsizeten +\def\normalsize{\@setfontsize{\normalsize}{10bp}{12bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{12bp} +\normalsize +\abovedisplayskip 1.5ex plus 4bp minus 2bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 4bp +\belowdisplayshortskip 1.5ex plus 4bp minus 2bp +\def\small{\@setfontsize{\small}{9bp}{10bp}} +\def\footnotesize{\@setfontsize{\footnotesize}{8bp}{9bp}} +\def\scriptsize{\@setfontsize{\scriptsize}{7bp}{8bp}} +\def\tiny{\@setfontsize{\tiny}{5bp}{6bp}} +% sublargesize is a tad smaller than large - 11bp +\def\sublargesize{\@setfontsize{\sublargesize}{11bp}{13.5bp}} +\def\large{\@setfontsize{\large}{12bp}{14bp}} +\def\Large{\@setfontsize{\Large}{14bp}{17bp}} +\def\LARGE{\@setfontsize{\LARGE}{17bp}{20bp}} +\def\huge{\@setfontsize{\huge}{20bp}{24bp}} +\def\Huge{\@setfontsize{\Huge}{24bp}{28bp}} +\fi +% +% 11pt +\ifx\CLASSOPTIONpt\@IEEEptsizeeleven +\def\normalsize{\@setfontsize{\normalsize}{11bp}{13.5bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{13.5bp} +\normalsize +\abovedisplayskip 1.5ex plus 5bp minus 3bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 5bp +\belowdisplayshortskip 1.5ex plus 5bp minus 3bp +\def\small{\@setfontsize{\small}{10bp}{12bp}} +\def\footnotesize{\@setfontsize{\footnotesize}{9bp}{10.5bp}} +\def\scriptsize{\@setfontsize{\scriptsize}{8bp}{9bp}} +\def\tiny{\@setfontsize{\tiny}{6bp}{7bp}} +% sublargesize is the same as large - 12bp +\def\sublargesize{\@setfontsize{\sublargesize}{12bp}{14bp}} +\def\large{\@setfontsize{\large}{12bp}{14bp}} +\def\Large{\@setfontsize{\Large}{14bp}{17bp}} +\def\LARGE{\@setfontsize{\LARGE}{17bp}{20bp}} +\def\huge{\@setfontsize{\huge}{20bp}{24bp}} +\def\Huge{\@setfontsize{\Huge}{24bp}{28bp}} +\fi +% +% 12pt +\ifx\CLASSOPTIONpt\@IEEEptsizetwelve +\def\normalsize{\@setfontsize{\normalsize}{12bp}{14bp}}% +\setlength{\@IEEEnormalsizeunitybaselineskip}{14bp}% +\normalsize +\abovedisplayskip 1.5ex plus 6bp minus 4bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 6bp +\belowdisplayshortskip 1.5ex plus 6bp minus 4bp +\def\small{\@setfontsize{\small}{10bp}{12bp}} +\def\footnotesize{\@setfontsize{\footnotesize}{9bp}{10.5bp}} +\def\scriptsize{\@setfontsize{\scriptsize}{8bp}{9bp}} +\def\tiny{\@setfontsize{\tiny}{6bp}{7bp}} +% sublargesize is the same as large - 14bp +\def\sublargesize{\@setfontsize{\sublargesize}{14bp}{17bp}} +\def\large{\@setfontsize{\large}{14bp}{17bp}} +\def\Large{\@setfontsize{\Large}{17bp}{20bp}} +\def\LARGE{\@setfontsize{\LARGE}{20bp}{24bp}} +\def\huge{\@setfontsize{\huge}{22bp}{26bp}} +\def\Huge{\@setfontsize{\Huge}{24bp}{28bp}} +\fi +% +% -- override defaults: compsoc journals use special normalsizes -- +\ifCLASSOPTIONconference +% +% compsoc conferences +% 9pt +\ifx\CLASSOPTIONpt\@IEEEptsizenine +\def\normalsize{\@setfontsize{\normalsize}{9bp}{10.8bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{10.8bp} +\normalsize +\abovedisplayskip 1.5ex plus 3bp minus 1bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0bp plus 3bp +\belowdisplayshortskip 1.5ex plus 3bp minus 1bp +\fi +% 10pt +\ifx\CLASSOPTIONpt\@IEEEptsizeten +\def\normalsize{\@setfontsize{\normalsize}{10bp}{11.2bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{11.2bp} +\normalsize +\abovedisplayskip 1.5ex plus 4bp minus 2bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 4bp +\belowdisplayshortskip 1.5ex plus 4bp minus 2bp +\fi +% 11pt +\ifx\CLASSOPTIONpt\@IEEEptsizeeleven +\def\normalsize{\@setfontsize{\normalsize}{11bp}{13.2bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{13.2bp} +\normalsize +\abovedisplayskip 1.5ex plus 5bp minus 3bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 5bp +\belowdisplayshortskip 1.5ex plus 5bp minus 3bp +\fi +% 12pt +\ifx\CLASSOPTIONpt\@IEEEptsizetwelve +\def\normalsize{\@setfontsize{\normalsize}{12bp}{14.4bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{14.4bp} +\normalsize +\abovedisplayskip 1.5ex plus 6bp minus 4bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 6bp +\belowdisplayshortskip 1.5ex plus 6bp minus 4bp +\fi +% +% compsoc nonconferences +\else +% 9pt +\ifx\CLASSOPTIONpt\@IEEEptsizenine +\def\normalsize{\@setfontsize{\normalsize}{9bp}{10.8bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{10.8bp} +\normalsize +\abovedisplayskip 1.5ex plus 3bp minus 1bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0bp plus 3bp +\belowdisplayshortskip 1.5ex plus 3bp minus 1bp +\fi +% 10pt +\ifx\CLASSOPTIONpt\@IEEEptsizeten +% the official spec is 9.5bp with 11.4bp leading for 10pt, +% but measurements of proofs suggest upto 11.723bp leading +% here we'll use 11.54bp which gives 61 lines per column +% with the standard compsoc margins +\def\normalsize{\@setfontsize{\normalsize}{9.5bp}{11.54bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{11.54bp} +\normalsize +\abovedisplayskip 1.5ex plus 4bp minus 2bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 4bp +\belowdisplayshortskip 1.5ex plus 4bp minus 2bp +\fi +% 11pt +\ifx\CLASSOPTIONpt\@IEEEptsizeeleven +\def\normalsize{\@setfontsize{\normalsize}{11bp}{13.2bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{13.2bp} +\normalsize +\abovedisplayskip 1.5ex plus 5bp minus 3bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 5bp +\belowdisplayshortskip 1.5ex plus 5bp minus 3bp +\fi +% 12pt +\ifx\CLASSOPTIONpt\@IEEEptsizetwelve +\def\normalsize{\@setfontsize{\normalsize}{12bp}{14.4bp}} +\setlength{\@IEEEnormalsizeunitybaselineskip}{14.4bp} +\normalsize +\abovedisplayskip 1.5ex plus 6bp minus 4bp +\belowdisplayskip \abovedisplayskip +\abovedisplayshortskip 0pt plus 6bp +\belowdisplayshortskip 1.5ex plus 6bp minus 4bp +\fi +\fi\fi + + + + +% V1.6 The Computer Modern Fonts will issue a substitution warning for +% 24pt titles (24.88pt is used instead, but the default and correct +% Times font will scale exactly as needed) increase the substitution +% tolerance to turn off this warning. +% +% V1.8a, the compsoc bp font sizes can also cause bogus font substitution +% warnings with footnote or scriptsize math and the $\bullet$ itemized +% list of \IEEEcompsocitemizethanks. So, increase this to 1.5pt or more. +\def\fontsubfuzz{1.7bp} + + +% warn the user in case they forget to use the 9pt option with +% technote +\ifCLASSOPTIONtechnote% + \ifx\CLASSOPTIONpt\@IEEEptsizenine\else% + \typeout{** ATTENTION: Technotes are normally 9pt documents.}% + \fi% +\fi + + +% V1.7 +% Improved \textunderscore to provide a much better fake _ when used with +% OT1 encoding. Under OT1, detect use of pcr or cmtt \ttfamily and use +% available true _ glyph for those two typewriter fonts. +\def\@IEEEstringptm{ptm} % Times Roman family +\def\@IEEEstringppl{ppl} % Palatino Roman family +\def\@IEEEstringphv{phv} % Helvetica Sans Serif family +\def\@IEEEstringpcr{pcr} % Courier typewriter family +\def\@IEEEstringcmtt{cmtt} % Computer Modern typewriter family +\DeclareTextCommandDefault{\textunderscore}{\leavevmode +\ifx\f@family\@IEEEstringpcr\string_\else +\ifx\f@family\@IEEEstringcmtt\string_\else +\ifx\f@family\@IEEEstringptm\kern 0em\vbox{\hrule\@width 0.5em\@height 0.5pt\kern -0.3ex}\else +\ifx\f@family\@IEEEstringppl\kern 0em\vbox{\hrule\@width 0.5em\@height 0.5pt\kern -0.3ex}\else +\ifx\f@family\@IEEEstringphv\kern -0.03em\vbox{\hrule\@width 0.62em\@height 0.52pt\kern -0.33ex}\kern -0.03em\else +\kern 0.09em\vbox{\hrule\@width 0.6em\@height 0.44pt\kern -0.63pt\kern -0.42ex}\kern 0.09em\fi\fi\fi\fi\fi\relax} + + + + +% set the default \baselinestretch +\def\baselinestretch{1} +\ifCLASSOPTIONdraftcls + \def\baselinestretch{1.5}% default baselinestretch for draft modes +\fi + + +% process CLASSINPUT baselinestretch +\ifx\CLASSINPUTbaselinestretch\@IEEEundefined +\else + \edef\baselinestretch{\CLASSINPUTbaselinestretch} % user CLASSINPUT override + \typeout{** ATTENTION: Overriding \string\baselinestretch\space to + \baselinestretch\space via \string\CLASSINPUT.} +\fi + +\small\normalsize % make \baselinestretch take affect + + + + +% store the normalsize baselineskip +\newdimen\CLASSINFOnormalsizebaselineskip +\CLASSINFOnormalsizebaselineskip=\baselineskip\relax +% and the normalsize unity (baselinestretch=1) baselineskip +% we could save a register by giving the user access to +% \@IEEEnormalsizeunitybaselineskip. However, let's protect +% its read only internal status +\newdimen\CLASSINFOnormalsizeunitybaselineskip +\CLASSINFOnormalsizeunitybaselineskip=\@IEEEnormalsizeunitybaselineskip\relax +% store the nominal value of jot +\newdimen\IEEEnormaljot +\IEEEnormaljot=0.25\baselineskip\relax + +% set \jot +\jot=\IEEEnormaljot\relax + + + + +% V1.6, we are now going to fine tune the interword spacing +% The default interword glue for Times under TeX appears to use a +% nominal interword spacing of 25% (relative to the font size, i.e., 1em) +% a maximum of 40% and a minimum of 19%. +% For example, 10pt text uses an interword glue of: +% +% 2.5pt plus 1.49998pt minus 0.59998pt +% +% However, the IEEE allows for a more generous range which reduces the need +% for hyphenation, especially for two column text. Furthermore, the IEEE +% tends to use a little bit more nominal space between the words. +% The IEEE's interword spacing percentages appear to be: +% 35% nominal +% 23% minimum +% 50% maximum +% (They may even be using a tad more for the largest fonts such as 24pt.) +% +% for bold text, the IEEE increases the spacing a little more: +% 37.5% nominal +% 23% minimum +% 55% maximum + +% here are the interword spacing ratios we'll use +% for medium (normal weight) +\def\@IEEEinterspaceratioM{0.35} +\def\@IEEEinterspaceMINratioM{0.23} +\def\@IEEEinterspaceMAXratioM{0.50} + +% for bold +\def\@IEEEinterspaceratioB{0.375} +\def\@IEEEinterspaceMINratioB{0.23} +\def\@IEEEinterspaceMAXratioB{0.55} + + +% compsoc nonconference papers use Palatino, +% tweak settings to better match the proofs +\ifCLASSOPTIONcompsoc +\ifCLASSOPTIONconference\else +% for medium (normal weight) +\def\@IEEEinterspaceratioM{0.28} +\def\@IEEEinterspaceMINratioM{0.21} +\def\@IEEEinterspaceMAXratioM{0.47} +% for bold +\def\@IEEEinterspaceratioB{0.305} +\def\@IEEEinterspaceMINratioB{0.21} +\def\@IEEEinterspaceMAXratioB{0.52} +\fi\fi + + +% command to revise the interword spacing for the current font under TeX: +% \fontdimen2 = nominal interword space +% \fontdimen3 = interword stretch +% \fontdimen4 = interword shrink +% since all changes to the \fontdimen are global, we can enclose these commands +% in braces to confine any font attribute or length changes +\def\@@@IEEEsetfontdimens#1#2#3{{% +\setlength{\@IEEEtrantmpdimenB}{\f@size pt}% grab the font size in pt, could use 1em instead. +\setlength{\@IEEEtrantmpdimenA}{#1\@IEEEtrantmpdimenB}% +\fontdimen2\font=\@IEEEtrantmpdimenA\relax +\addtolength{\@IEEEtrantmpdimenA}{-#2\@IEEEtrantmpdimenB}% +\fontdimen3\font=-\@IEEEtrantmpdimenA\relax +\setlength{\@IEEEtrantmpdimenA}{#1\@IEEEtrantmpdimenB}% +\addtolength{\@IEEEtrantmpdimenA}{-#3\@IEEEtrantmpdimenB}% +\fontdimen4\font=\@IEEEtrantmpdimenA\relax}} + +% revise the interword spacing for each font weight +\def\@@IEEEsetfontdimens{{% +\mdseries +\@@@IEEEsetfontdimens{\@IEEEinterspaceratioM}{\@IEEEinterspaceMAXratioM}{\@IEEEinterspaceMINratioM}% +\bfseries +\@@@IEEEsetfontdimens{\@IEEEinterspaceratioB}{\@IEEEinterspaceMAXratioB}{\@IEEEinterspaceMINratioB}% +}} + +% revise the interword spacing for each font shape +% \slshape is not often used for IEEE work and is not altered here. The \scshape caps are +% already a tad too large in the free LaTeX fonts (as compared to what the IEEE uses) so we +% won't alter these either. +\def\@IEEEsetfontdimens{{% +\normalfont +\@@IEEEsetfontdimens +\normalfont\itshape +\@@IEEEsetfontdimens +}} + +% command to revise the interword spacing for each font size (and shape +% and weight). Only the \rmfamily is done here as \ttfamily uses a +% fixed spacing and \sffamily is not used as the main text of IEEE papers. +\def\@IEEEtunefonts{{\selectfont\rmfamily +\tiny\@IEEEsetfontdimens +\scriptsize\@IEEEsetfontdimens +\footnotesize\@IEEEsetfontdimens +\small\@IEEEsetfontdimens +\normalsize\@IEEEsetfontdimens +\sublargesize\@IEEEsetfontdimens +\large\@IEEEsetfontdimens +\LARGE\@IEEEsetfontdimens +\huge\@IEEEsetfontdimens +\Huge\@IEEEsetfontdimens}} + +% if the nofonttune class option is not given, revise the interword spacing +% now - in case IEEEtran makes any default length measurements, and make +% sure all the default fonts are loaded +\ifCLASSOPTIONnofonttune\else +\@IEEEtunefonts +\fi + +% and again at the start of the document in case the user loaded different fonts +\AtBeginDocument{\ifCLASSOPTIONnofonttune\else\@IEEEtunefonts\fi} + + + + + +% -- V1.8a page setup commands -- + +% The default sample text for calculating margins +% Note that IEEE publications use \scriptsize for headers and footers. +\def\IEEEdefaultsampletext{\normalfont\normalsize gT} +\def\IEEEdefaultheadersampletext{\normalfont\scriptsize T}% IEEE headers default to uppercase +\def\IEEEdefaultfootersampletext{\normalfont\scriptsize gT} + + + +% usage: \IEEEsettextwidth{inner margin}{outer margin} +% Sets \textwidth to allow the specified inner and outer margins +% for the current \paperwidth. +\def\IEEEsettextwidth#1#2{\@IEEEtrantmpdimenA\paperwidth +\@IEEEtrantmpdimenB#1\relax +\advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\@IEEEtrantmpdimenB#2\relax +\advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\textwidth\@IEEEtrantmpdimenA} + + + +% usage: \IEEEsetsidemargin{mode: i, o, c, a}{margin/offset} +% Sets \oddsidemargin and \evensidemargin to yield the specified margin +% of the given mode. +% The available modes are: +% i = inner margin +% o = outer margin +% c = centered, with the given offset +% a = adjust the margins using the given offset +% For the offsets, positive values increase the inner margin. +% \textwidth should be set properly for the given margins before calling this +% function. +\def\IEEEsetsidemargin#1#2{\@IEEEtrantmpdimenA #2\relax +\@IEEEextracttoken{#1}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsetsidemargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `i'}{Valid modes for \string\IEEEsetsidemargin\space are: i, o, c and a.}\relax + \let\@IEEEextractedtoken=i\relax + \def\@IEEEextractedtokenmacro{i}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsetsidemargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + \advance\oddsidemargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken c\relax + \oddsidemargin\paperwidth + \advance\oddsidemargin by -\textwidth + \divide\oddsidemargin by 2\relax + \advance\oddsidemargin by -1in\relax + \advance\oddsidemargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken o\relax + \oddsidemargin\paperwidth + \advance\oddsidemargin by -\textwidth + \advance\oddsidemargin by -\@IEEEtrantmpdimenA + \advance\oddsidemargin by -1in\relax +\else + \if\@IEEEextractedtoken i\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsetsidemargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `i'}% + {Valid modes for \string\IEEEsetsidemargin\space are: i, o, c and a.}% + \fi + \oddsidemargin\@IEEEtrantmpdimenA + \advance\oddsidemargin by -1in\relax +\fi\fi\fi +% odd and even side margins both mean "inner" for single sided pages +\evensidemargin\oddsidemargin +% but are mirrors of each other when twosided is in effect +\if@twoside + \evensidemargin\paperwidth + \advance\evensidemargin by -\textwidth + \advance\evensidemargin by -\oddsidemargin + % have to compensate for both the builtin 1in LaTex offset + % and the fact we already subtracted this offset from \oddsidemargin + \advance\evensidemargin -2in\relax +\fi} + + + +% usage: \IEEEsettextheight[sample text]{top text margin}{bottom text margin} +% Sets \textheight based on the specified top margin and bottom margin. +% Takes into consideration \paperheight, \topskip, and (by default) the +% the actual height and depth of the \IEEEdefaultsampletext text. +\def\IEEEsettextheight{\@ifnextchar [{\@IEEEsettextheight}{\@IEEEsettextheight[\IEEEdefaultsampletext]}} +\def\@IEEEsettextheight[#1]#2#3{\textheight\paperheight\relax + \@IEEEtrantmpdimenA #2\relax + \advance \textheight by -\@IEEEtrantmpdimenA% subtract top margin + \@IEEEtrantmpdimenA #3\relax + \advance \textheight by -\@IEEEtrantmpdimenA% subtract bottom margin + \advance \textheight by \topskip% add \topskip + % subtract off everything above the top, and below the bottom, baselines + \settoheight{\@IEEEtrantmpdimenA}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance \textheight by -\@IEEEtrantmpdimenA + \settodepth{\@IEEEtrantmpdimenA}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance \textheight by -\@IEEEtrantmpdimenA} + + + +\newdimen\IEEEquantizedlength +\IEEEquantizedlength 0sp\relax +\newdimen\IEEEquantizedlengthdiff +\IEEEquantizedlengthdiff 0sp\relax +\def\IEEEquantizedlengthint{0} + +% usage: \IEEEquantizelength{mode: d, c, i}{base unit}{length} +% Sets the length \IEEEquantizedlength to be an integer multiple of the given +% (nonzero) base unit such that \IEEEquantizedlength approximates the given +% length. +% \IEEEquantizedlengthdiff is a length equal to the difference between the +% \IEEEquantizedlength and the given length. +% \IEEEquantizedlengthint is a macro containing the integer number of base units +% in \IEEEquantizedlength. +% i.e., \IEEEquantizedlength = \IEEEquantizedlengthint * base unit +% The mode determines how \IEEEquantizedlength is quantized: +% d = always decrease (always round down \IEEEquantizeint) +% c = use the closest match +% i = always increase (always round up \IEEEquantizeint) +% In anycase, if the given length is already quantized, +% \IEEEquantizedlengthdiff will be set to zero. +\def\IEEEquantizelength#1#2#3{\begingroup +% work in isolation so as not to externally disturb the \@IEEEtrantmp +% variables +% load the argument values indirectly via \IEEEquantizedlengthdiff +% in case the user refers to our \@IEEEtrantmpdimenX, \IEEEquantizedlength, +% etc. in the arguments. we also will work with these as counters, +% i.e., in sp units +% A has the base unit +\IEEEquantizedlengthdiff #2\relax\relax\relax\relax +\@IEEEtrantmpcountA\IEEEquantizedlengthdiff +% B has the input length +\IEEEquantizedlengthdiff #3\relax\relax\relax\relax +\@IEEEtrantmpcountB\IEEEquantizedlengthdiff +\@IEEEtrantmpdimenA\the\@IEEEtrantmpcountA sp\relax +\@IEEEtrantmpdimenB\the\@IEEEtrantmpcountB sp\relax +% \@IEEEtrantmpcountC will have the quantized int +% \IEEEquantizedlength will have the quantized length +% \@IEEEtrantmpdimenC will have the quantized diff +% initialize them to zero as this is what will be +% exported if an error occurs +\@IEEEtrantmpcountC 0\relax +\IEEEquantizedlength 0sp\relax +\@IEEEtrantmpdimenC 0sp\relax +% extract mode +\@IEEEextracttoken{#1}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEquantizelength\space (line \the\inputlineno).\MessageBreak + Defaulting to `d'}{Valid modes for \string\IEEEquantizelength\space are: d, c and i.}\relax + \let\@IEEEextractedtoken=d\relax + \def\@IEEEextractedtokenmacro{d}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEquantizelength\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% check for base unit is zero error +\ifnum\@IEEEtrantmpcountA=0\relax +\@IEEEclspkgerror{Base unit is zero in \string\IEEEquantizelength\space (line \the\inputlineno).\MessageBreak + \string\IEEEquantizedlength\space and \string\IEEEquantizedlengthdiff\space are set to zero}{Division by zero is not allowed.}\relax +\else% base unit is nonzero + % \@IEEEtrantmpcountC carries the number of integer units + % in the quantized length (integer length \ base) + \@IEEEtrantmpcountC\@IEEEtrantmpcountB\relax + \divide\@IEEEtrantmpcountC by \@IEEEtrantmpcountA\relax + % \IEEEquantizedlength has the (rounded down) quantized length + % = base * int + \IEEEquantizedlength\@IEEEtrantmpdimenA\relax + \multiply\IEEEquantizedlength by \@IEEEtrantmpcountC\relax + % \@IEEEtrantmpdimenC has the difference + % = quantized length - length + \@IEEEtrantmpdimenC\IEEEquantizedlength\relax + \advance\@IEEEtrantmpdimenC by -\@IEEEtrantmpdimenB\relax + % trap special case of length being already quantized + % to avoid a roundup under i option + \ifdim\@IEEEtrantmpdimenC=0sp\relax + \else % length not is already quantized + % set dimenA to carry the upper quantized (absolute value) difference: + % quantizedlength + base - length + \advance\@IEEEtrantmpdimenA by \IEEEquantizedlength\relax + \advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB\relax + % set dimenB to carry the lower quantized (absolute value) difference: + % length - quantizedlength + \advance\@IEEEtrantmpdimenB by -\IEEEquantizedlength\relax + % handle each mode + \if\@IEEEextractedtoken c\relax + % compare upper and lower amounts, select upper if lower > upper + \ifdim\@IEEEtrantmpdimenB>\@IEEEtrantmpdimenA\relax + % use upper + \advance\IEEEquantizedlength by \the\@IEEEtrantmpcountA sp\relax + \advance\@IEEEtrantmpcountC by 1\relax + \@IEEEtrantmpdimenC\@IEEEtrantmpdimenA + \else% <=. uselower + % no need to do anything for lower, use output values already setup + \fi + \else% not mode c + \if\@IEEEextractedtoken i\relax + % always round up under i mode + \advance\IEEEquantizedlength by \the\@IEEEtrantmpcountA sp\relax + \advance\@IEEEtrantmpcountC by 1\relax + \@IEEEtrantmpdimenC\@IEEEtrantmpdimenA + \else + \if\@IEEEextractedtoken d\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEquantizelength\space (line \the\inputlineno).\MessageBreak + Defaulting to `d'}% + {Valid modes for \string\IEEEquantizelength\space are: d, c, and i.}\relax + \fi % if d + % no need to do anything for d, use output values already setup + \fi\fi % if i, c + \fi % if length is already quantized +\fi% if base unit is zero +% globally assign the results to macros we use here to escape the enclosing +% group without needing to call \global on any of the \@IEEEtrantmp variables. +% \@IEEEtrantmpcountC has the quantized int +% \IEEEquantizedlength has the quantized length +% \@IEEEtrantmpdimenC has the quantized diff +\xdef\@IEEEquantizedlengthintmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\IEEEquantizedlength\relax +\xdef\@IEEEquantizedlengthmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\@IEEEtrantmpdimenC\relax +\xdef\@IEEEquantizedlengthdiffmacro{\the\@IEEEtrantmpcountC}\relax +\endgroup +% locally assign the outputs here from the macros +\expandafter\IEEEquantizedlength\@IEEEquantizedlengthmacro sp\relax +\expandafter\IEEEquantizedlengthdiff\@IEEEquantizedlengthdiffmacro sp\relax +\edef\IEEEquantizedlengthint{\@IEEEquantizedlengthintmacro}\relax} + + + +\newdimen\IEEEquantizedtextheightdiff +\IEEEquantizedtextheightdiff 0sp\relax + +% usage: \IEEEquantizetextheight[base unit]{mode: d, c, i} +% Sets \textheight to be an integer multiple of the current \baselineskip +% (or the optionally specified base unit) plus the first (\topskip) line. +% \IEEEquantizedtextheightdiff is a length equal to the difference between +% the new quantized and original \textheight. +% \IEEEquantizedtextheightlpc is a macro containing the integer number of +% lines per column under the quantized \textheight. i.e., +% \textheight = \IEEEquantizedtextheightlpc * \baselineskip + \topskip +% The mode determines how \textheight is quantized: +% d = always decrease (always round down the number of lines per column) +% c = use the closest match +% i = always increase (always round up the number of lines per column) +% In anycase, if \textheight is already quantized, it will remain unchanged, +% and \IEEEquantizedtextheightdiff will be set to zero. +% Depends on: \IEEEquantizelength +\def\IEEEquantizetextheight{\@ifnextchar [{\@IEEEquantizetextheight}{\@IEEEquantizetextheight[\baselineskip]}} +\def\@IEEEquantizetextheight[#1]#2{\begingroup +% use our \IEEEquantizedtextheightdiff as a scratch pad +% we need to subtract off \topskip before quantization +\IEEEquantizedtextheightdiff\textheight +\advance\IEEEquantizedtextheightdiff by -\topskip\relax +\IEEEquantizelength{#2}{#1}{\IEEEquantizedtextheightdiff} +% add back \topskip line +\advance\IEEEquantizedlength by \topskip +\@IEEEtrantmpcountC\IEEEquantizedlengthint\relax +\advance\@IEEEtrantmpcountC by 1\relax +% globally assign the results to macros we use here to escape the enclosing +% group without needing to call \global on any of the \@IEEEtrantmp variables. +\xdef\@IEEEquantizedtextheightlpcmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\IEEEquantizedlength\relax +\xdef\@IEEEquantizedtextheightmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\IEEEquantizedlengthdiff\relax +\xdef\@IEEEquantizedtextheightdiffmacro{\the\@IEEEtrantmpcountC}\relax +\endgroup +% locally assign the outputs here from the macros +\textheight\@IEEEquantizedtextheightmacro sp\relax +\IEEEquantizedtextheightdiff\@IEEEquantizedtextheightdiffmacro sp\relax +\edef\IEEEquantizedtextheightlpc{\@IEEEquantizedtextheightlpcmacro}} + + + +% usage: \IEEEsettopmargin[sample text]{mode: t, b, c, a, q}{margin/offset} +% Sets \topmargin based on the specified vertical margin. +% Takes into consideration the base 1in offset, \headheight, \headsep, +% \topskip, and (by default) the the actual height (or, for the bottom, depth) +% of the \IEEEdefaultsampletext text. +% The available modes are: +% t = top margin +% b = bottom margin +% c = vertically centered, with the given offset +% a = adjust the vertical margins using the given offset +% q = adjust the margins using \IEEEquantizedtextheightdiff and the given offset +% For the offsets, positive values increase the top margin. +% \headheight, \headsep, \topskip and \textheight should be set properly for the +% given margins before calling this function. +\def\IEEEsettopmargin{\@ifnextchar [{\@IEEEsettopmargin}{\@IEEEsettopmargin[\IEEEdefaultsampletext]}} +\def\@IEEEsettopmargin[#1]#2#3{\@IEEEtrantmpdimenA #3\relax +\@IEEEextracttoken{#2}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsettopmargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}{Valid modes for \string\IEEEsettopmargin\space are: t, b, c, a and q.}\relax + \let\@IEEEextractedtoken=t\relax + \def\@IEEEextractedtokenmacro{t}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsettopmargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + \advance\topmargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken q\relax + % we need to adjust by half the \IEEEquantizedtextheightdiff value + \@IEEEtrantmpdimenB\IEEEquantizedtextheightdiff\relax + \divide\@IEEEtrantmpdimenB by 2\relax + % a positive \IEEEquantizedtextheightdiff means we need to reduce \topmargin + % because \textheight has been lenghtened + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \advance\topmargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken c\relax + \topmargin\paperheight + \advance\topmargin by -\textheight + % \textheight includes \topskip, but we should not count topskip whitespace here, backout + \advance \topmargin by \topskip + \settoheight{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \settodepth{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \divide\topmargin by 2\relax + \advance\topmargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken b\relax + \topmargin\paperheight + \advance\topmargin by -\textheight + % \textheight includes \topskip, but we should not count topskip whitespace here, backout + \advance \topmargin by \topskip + \settodepth{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \advance\topmargin by -\@IEEEtrantmpdimenA\relax +\else + \if\@IEEEextractedtoken t\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsettopmargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}% + {Valid modes for \string\IEEEsettopmargin\space are: t, b, c, a and q.}\relax + \fi + \topmargin\@IEEEtrantmpdimenA\relax + \settoheight{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by \@IEEEtrantmpdimenB\relax +\fi\fi % if t, b, c +% convert desired top margin into actual \topmargin +% this is not done for the q or a modes because they are only adjustments +\advance \topmargin by -\topskip +\advance \topmargin by -1in +\advance \topmargin by -\headheight +\advance \topmargin by -\headsep +\fi\fi % if q, a +} + + + +% usage: \IEEEsetheadermargin[header sample][text sample]{mode: t, b, c, a}{margin/offset} +% Differentially adjusts \topmargin and \headsep (such that their sum is unchanged) +% based on the specified header margin. +% Takes into consideration the base 1in offset, \headheight, \topskip, and (by default) +% the actual height (or depth) of the \IEEEdefaultheadersampletext and +% \IEEEdefaultsampletext text. +% The available modes are: +% t = top margin (top of the header text to the top of the page) +% b = bottom margin (bottom of the header text to the top of the main text) +% c = vertically centered between the main text and the top of the page, +% with the given offset +% a = adjust the vertical position using the given offset +% For the offsets, positive values move the header downward. +% \headheight, \headsep, \topskip and \topmargin should be set properly before +% calling this function. +\def\IEEEsetheadermargin{\@ifnextchar [{\@IEEEsetheadermargin}{\@IEEEsetheadermargin[\IEEEdefaultheadersampletext]}} +\def\@IEEEsetheadermargin[#1]{\@ifnextchar [{\@@IEEEsetheadermargin[#1]}{\@@IEEEsetheadermargin[#1][\IEEEdefaultsampletext]}} +\def\@@IEEEsetheadermargin[#1][#2]#3#4{\@IEEEtrantmpdimenA #4\relax +\@IEEEextracttoken{#3}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsetheadermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}{Valid modes for \string\IEEEsetheadermargin\space are: t, b, c, and a.}\relax + \let\@IEEEextractedtoken=t\relax + \def\@IEEEextractedtokenmacro{t}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsetheadermargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + % No need to do anything here and can pass through the adjustment + % value as is. The end adjustment of \topmargin and \headsep will + % do all that is needed +\else +\if\@IEEEextractedtoken c\relax + % get the bottom margin + \@IEEEtrantmpdimenB\headsep\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + \advance\@IEEEtrantmpdimenB by \topskip + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual header bottom margin + % subtract from it the top header margin + \advance\@IEEEtrantmpdimenB -1in\relax % take into consideration the system 1in offset of the top margin + \advance\@IEEEtrantmpdimenB by -\topmargin + \advance\@IEEEtrantmpdimenB by -\headheight + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by \@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the difference between the bottom and top margins + % we need to adjust by half this amount to center the header + \divide\@IEEEtrantmpdimenB by 2\relax + % and add to offset + \advance\@IEEEtrantmpdimenA by \@IEEEtrantmpdimenB +\else +\if\@IEEEextractedtoken b\relax + \@IEEEtrantmpdimenB\headsep\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + \advance\@IEEEtrantmpdimenB by \topskip + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual header bottom margin + % get the difference between the actual and the desired + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenA + \@IEEEtrantmpdimenA\@IEEEtrantmpdimenB +\else + \if\@IEEEextractedtoken t\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsetheadermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}% + {Valid modes for \string\IEEEsetheadermargin\space are: t, b, c and a.}\relax + \fi + \@IEEEtrantmpdimenB 1in\relax % take into consideration the system 1in offset of the top margin + \advance\@IEEEtrantmpdimenB by \topmargin + \advance\@IEEEtrantmpdimenB by \headheight + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual header top margin + % get the difference between the desired and the actual + \advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\fi\fi % if t, b, c +\fi % if a +% advance \topmargin by the needed amount and reduce \headsep by the same +% so as not to disturb the location of the main text +\advance\topmargin by \@IEEEtrantmpdimenA\relax +\advance\headsep by -\@IEEEtrantmpdimenA\relax +} + + + +% usage: \IEEEsetfootermargin[footer sample][text sample]{mode: t, b, c, a}{margin/offset} +% Adjusts \footskip based on the specified footer margin. +% Takes into consideration the base 1in offset, \paperheight, \headheight, +% \headsep, \textheight and (by default) the actual height (or depth) of the +% \IEEEdefaultfootersampletext and \IEEEdefaultsampletext text. +% The available modes are: +% t = top margin (top of the footer text to the bottom of the main text) +% b = bottom margin (bottom of the footer text to the bottom of page) +% c = vertically centered between the main text and the bottom of the page, +% with the given offset +% a = adjust the vertical position using the given offset +% For the offsets, positive values move the footer downward. +% \headheight, \headsep, \topskip, \topmargin, and \textheight should be set +% properly before calling this function. +\def\IEEEsetfootermargin{\@ifnextchar [{\@IEEEsetfootermargin}{\@IEEEsetfootermargin[\IEEEdefaultfootersampletext]}} +\def\@IEEEsetfootermargin[#1]{\@ifnextchar [{\@@IEEEsetfootermargin[#1]}{\@@IEEEsetfootermargin[#1][\IEEEdefaultsampletext]}} +\def\@@IEEEsetfootermargin[#1][#2]#3#4{\@IEEEtrantmpdimenA #4\relax +\@IEEEextracttoken{#3}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsetfootermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}{Valid modes for \string\IEEEsetfootermargin\space are: t, b, c, and a.}\relax + \let\@IEEEextractedtoken=t\relax + \def\@IEEEextractedtokenmacro{t}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsetfootermargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + % No need to do anything here and can pass through the adjustment + % value as is. The end adjustment of \footskip will do all that + % is needed +\else +\if\@IEEEextractedtoken c\relax + % calculate the bottom margin + \@IEEEtrantmpdimenB 1in\relax % system 1in offset + \advance\@IEEEtrantmpdimenB\topmargin\relax + \advance\@IEEEtrantmpdimenB\headheight\relax + \advance\@IEEEtrantmpdimenB\headsep\relax + \advance\@IEEEtrantmpdimenB\textheight\relax + \advance\@IEEEtrantmpdimenB\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenC by \@IEEEtrantmpdimenB + \@IEEEtrantmpdimenB\paperheight + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual footer bottom margin + % now subtract off the footer top margin + \advance\@IEEEtrantmpdimenB -\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by \@IEEEtrantmpdimenC + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by \@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the difference between the bottom + % and top footer margins + % our adjustment must be half this value to center the footer + \divide\@IEEEtrantmpdimenB by 2\relax + % add to the offset + \advance\@IEEEtrantmpdimenA by \@IEEEtrantmpdimenB +\else +\if\@IEEEextractedtoken b\relax + % calculate the bottom margin + \@IEEEtrantmpdimenB 1in\relax % system 1in offset + \advance\@IEEEtrantmpdimenB\topmargin\relax + \advance\@IEEEtrantmpdimenB\headheight\relax + \advance\@IEEEtrantmpdimenB\headsep\relax + \advance\@IEEEtrantmpdimenB\textheight\relax + \advance\@IEEEtrantmpdimenB\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenC by \@IEEEtrantmpdimenB + \@IEEEtrantmpdimenB\paperheight + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual footer bottom margin + % get the difference between the actual and the desired + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenA + \@IEEEtrantmpdimenA\@IEEEtrantmpdimenB +\else + \if\@IEEEextractedtoken t\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsetfootermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}% + {Valid modes for \string\IEEEsetfootermargin\space are: t, b, c and a.}\relax + \fi + \@IEEEtrantmpdimenB\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual footer top margin + % get the difference between the desired and the actual + \advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\fi\fi % if t, b, c +\fi % if a +% advance \footskip by the needed amount +\advance\footskip by \@IEEEtrantmpdimenA\relax +} + +% -- End V1.8a page setup commands -- + + + + + +% V1.6 +% LaTeX is a little to quick to use hyphenations +% So, we increase the penalty for their use and raise +% the badness level that triggers an underfull hbox +% warning. The author may still have to tweak things, +% but the appearance will be much better "right out +% of the box" than that under V1.5 and prior. +% TeX default is 50 +\hyphenpenalty=750 +\ifCLASSOPTIONcompsoc +\hyphenpenalty 500 +\fi +% If we didn't adjust the interword spacing, 2200 might be better. +% The TeX default is 1000 +\hbadness=1350 +% The IEEE does not use extra spacing after punctuation +\frenchspacing + +% V1.7 increase this a tad to discourage equation breaks +\binoppenalty=1000 % default 700 +\relpenalty=800 % default 500 + +% v1.8a increase these to discourage widows and orphans +\clubpenalty=1000 % default 150 +\widowpenalty=1000 % default 150 +\displaywidowpenalty=1000 % default 50 + + +% margin note stuff +\marginparsep 10pt +\marginparwidth 20pt +\marginparpush 25pt + + +% if things get too close, go ahead and let them touch +\lineskip 0pt +\normallineskip 0pt +\lineskiplimit 0pt +\normallineskiplimit 0pt + +% The distance from the lower edge of the text body to the +% footline +\footskip 0.4in + +% normally zero, should be relative to font height. +% put in a little rubber to help stop some bad breaks (underfull vboxes) +\parskip 0ex plus 0.2ex minus 0.1ex + +\parindent 1.0em +\ifCLASSOPTIONcompsoc + \parindent 1.5em +\fi + +\headheight 12pt +\headsep 18pt +% use the normal font baselineskip +% so that \topskip is unaffected by changes in \baselinestretch +\topskip=\@IEEEnormalsizeunitybaselineskip + + +% V1.8 \maxdepth defaults to 4pt, but should be font size dependent +\maxdepth=0.5\@IEEEnormalsizeunitybaselineskip +\textheight 58pc % 9.63in, 696pt + +% set the default top margin to 58pt +% which results in a \topmargin of -49.59pt for 10pt documents +\IEEEsettopmargin{t}{58pt} +% tweak textheight to a perfect integer number of lines/column. +% standard is: 9pt/63 lpc; 10pt/58 lpc; 11pt/52 lpc; 12pt/50 lpc +\IEEEquantizetextheight{c} +% tweak top margin so that the error is shared equally at the top and bottom +\IEEEsettopmargin{q}{0sp} + + +\columnsep 1pc +\textwidth 43pc % 2 x 21pc + 1pc = 43pc + +% set the default side margins to center the text +\IEEEsetsidemargin{c}{0pt} + + +% adjust margins for default conference mode +\ifCLASSOPTIONconference + \textheight 9.25in % The standard for conferences (668.4975pt) + \IEEEsettopmargin{t}{0.75in} + % tweak textheight to a perfect integer number of lines/page. + % standard is: 9pt/61 lpc; 10pt/56 lpc; 11pt/50 lpc; 12pt/48 lpc + \IEEEquantizetextheight{c} + % tweak top margin so that the error is shared equally at the top and bottom + \IEEEsettopmargin{q}{0sp} +\fi + + +% compsoc text sizes, margins and spacings +\ifCLASSOPTIONcompsoc + \columnsep 12bp + % CS specs for \textwdith are 6.875in + % \textwidth 6.875in + % however, measurements from proofs show they are using 3.5in columns + \textwidth 7in + \advance\textwidth by \columnsep + % set the side margins to center the text + \IEEEsetsidemargin{c}{0pt} + % top/bottom margins to center + % could just set \textheight to 9.75in for all the different paper sizes + % and then quantize, but we'll do it the long way here to allow for easy + % future per-paper size adjustments + \IEEEsettextheight{0.625in}{0.625in}% 11in - 2 * 0.625in = 9.75in is the standard text height for compsoc journals + \IEEEsettopmargin{t}{0.625in} + \if@IEEEusingcspaper + \IEEEsettextheight{0.5in}{0.5in}% 10.75in - 2 * 0.5in = 9.75in + \IEEEsettopmargin{t}{0.5in} + \fi + \if@IEEEusingAfourpaper + \IEEEsettextheight{24.675mm}{24.675mm}% 297mm - 2 * 24.675mm = 247.650mm (9.75in) + \IEEEsettopmargin{t}{24.675mm} + \fi + % tweak textheight to a perfect integer number of lines/page. + % standard is: 9pt/65 lpc; 10pt/61 lpc; 11pt/53 lpc; 12pt/49 lpc + \IEEEquantizetextheight{c} + % tweak top margin so that the error is shared equally at the top and bottom + \IEEEsettopmargin{q}{0sp} + +% compsoc conference + \ifCLASSOPTIONconference + % compsoc conference use a larger value for columnsep + \columnsep 0.25in + \IEEEsettextwidth{0.75in}{0.75in} + % set the side margins to center the text (0.75in for letterpaper) + \IEEEsetsidemargin{c}{0pt} + % compsoc conferences want 1in top and bottom margin + \IEEEsettextheight{1in}{1in} + \IEEEsettopmargin{t}{1in} + % tweak textheight to a perfect integer number of lines/page. + % standard is: 9pt/58 lpc; 10pt/53 lpc; 11pt/48 lpc; 12pt/46 lpc + \IEEEquantizetextheight{c} + % tweak top margin so that the error is shared equally at the top and bottom + \IEEEsettopmargin{q}{0sp} + \fi +\fi + + + +% draft mode settings override that of all other modes +% provides a nice 1in margin all around the paper and extra +% space between the lines for editor's comments +\ifCLASSOPTIONdraftcls + % we want 1in side margins regardless of paper type + \IEEEsettextwidth{1in}{1in} + \IEEEsetsidemargin{c}{0pt} + % want 1in top and bottom margins + \IEEEsettextheight{1in}{1in} + \IEEEsettopmargin{t}{1in} + % digitize textheight to be an integer number of lines. + % this may cause the top and bottom margins to be off a tad + \IEEEquantizetextheight{c} + % tweak top margin so that the error is shared equally at the top and bottom + \IEEEsettopmargin{q}{0sp} +\fi + + + +% process CLASSINPUT inner/outer margin +% if inner margin defined, but outer margin not, set outer to inner. +\ifx\CLASSINPUTinnersidemargin\@IEEEundefined +\else + \ifx\CLASSINPUToutersidemargin\@IEEEundefined + \edef\CLASSINPUToutersidemargin{\CLASSINPUTinnersidemargin} + \fi +\fi + +\ifx\CLASSINPUToutersidemargin\@IEEEundefined +\else + % if outer margin defined, but inner margin not, set inner to outer. + \ifx\CLASSINPUTinnersidemargin\@IEEEundefined + \edef\CLASSINPUTinnersidemargin{\CLASSINPUToutersidemargin} + \fi + \IEEEsettextwidth{\CLASSINPUTinnersidemargin}{\CLASSINPUToutersidemargin} + \IEEEsetsidemargin{i}{\CLASSINPUTinnersidemargin} + \typeout{** ATTENTION: Overriding inner side margin to \CLASSINPUTinnersidemargin\space and + outer side margin to \CLASSINPUToutersidemargin\space via \string\CLASSINPUT.} +\fi + + + +% process CLASSINPUT top/bottom text margin +% if toptext margin defined, but bottomtext margin not, set bottomtext to toptext margin +\ifx\CLASSINPUTtoptextmargin\@IEEEundefined +\else + \ifx\CLASSINPUTbottomtextmargin\@IEEEundefined + \edef\CLASSINPUTbottomtextmargin{\CLASSINPUTtoptextmargin} + \fi +\fi + +\ifx\CLASSINPUTbottomtextmargin\@IEEEundefined +\else + % if bottomtext margin defined, but toptext margin not, set toptext to bottomtext margin + \ifx\CLASSINPUTtoptextmargin\@IEEEundefined + \edef\CLASSINPUTtoptextmargin{\CLASSINPUTbottomtextmargin} + \fi + \IEEEsettextheight{\CLASSINPUTtoptextmargin}{\CLASSINPUTbottomtextmargin} + \IEEEsettopmargin{t}{\CLASSINPUTtoptextmargin} + \typeout{** ATTENTION: Overriding top text margin to \CLASSINPUTtoptextmargin\space and + bottom text margin to \CLASSINPUTbottomtextmargin\space via \string\CLASSINPUT.} +\fi + + + +% default to center header and footer text in the margins +\IEEEsetheadermargin{c}{0pt} +\IEEEsetfootermargin{c}{0pt} + +% adjust header and footer positions for compsoc journals +\ifCLASSOPTIONcompsoc + \ifCLASSOPTIONjournal + \IEEEsetheadermargin{b}{\@IEEEnormalsizeunitybaselineskip} + \IEEEsetfootermargin{t}{\@IEEEnormalsizeunitybaselineskip} + \fi +\fi + + +% V1.8a display lines per column info message on user's console +\def\IEEEdisplayinfolinespercolumn{\@IEEEtrantmpdimenA=\textheight +% topskip represents only one line even if > baselineskip +\advance\@IEEEtrantmpdimenA by -1\topskip +\@IEEEtrantmpcountA=\@IEEEtrantmpdimenA +\@IEEEtrantmpcountB=\@IEEEtrantmpdimenA +\divide\@IEEEtrantmpcountB by \baselineskip +% need to add one line to include topskip (first) line +\advance\@IEEEtrantmpcountB by 1 +% save lines per column value as text +\edef\@IEEEnumlinespercolumninfotxt{\the\@IEEEtrantmpcountB} +% backout topskip advance to allow direct \@IEEEtrantmpcountA comparison +\advance\@IEEEtrantmpcountB by -1 +% restore value as text height (without topskip) rather than just as number of lines +\multiply\@IEEEtrantmpcountB by \baselineskip +% is the column height an integer number of lines per column? +\ifnum\@IEEEtrantmpcountA=\@IEEEtrantmpcountB +\edef\@IEEEnumlinespercolumnexactinfotxt{exact} +\else +\@IEEEtrantmpdimenA\@IEEEtrantmpcountA sp\relax +\advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpcountB sp\relax +\edef\@IEEEnumlinespercolumnexactinfotxt{approximate, difference = \the\@IEEEtrantmpdimenA} +\fi +\typeout{-- Lines per column: \@IEEEnumlinespercolumninfotxt\space (\@IEEEnumlinespercolumnexactinfotxt).}} +% delay execution till start of document to allow for user changes +\AtBeginDocument{\IEEEdisplayinfolinespercolumn} + + + +% LIST SPACING CONTROLS + +% Controls the amount of EXTRA spacing +% above and below \trivlist +% Both \list and IED lists override this. +% However, \trivlist will use this as will most +% things built from \trivlist like the \center +% environment. +\topsep 0.5\baselineskip + +% Controls the additional spacing around lists preceded +% or followed by blank lines. the IEEE does not increase +% spacing before or after paragraphs so it is set to zero. +% \z@ is the same as zero, but faster. +\partopsep \z@ + +% Controls the spacing between paragraphs in lists. +% The IEEE does not increase spacing before or after paragraphs +% so this is also zero. +% With IEEEtran.cls, global changes to +% this value DO affect lists (but not IED lists). +\parsep \z@ + +% Controls the extra spacing between list items. +% The IEEE does not put extra spacing between items. +% With IEEEtran.cls, global changes to this value DO affect +% lists (but not IED lists). +\itemsep \z@ + +% \itemindent is the amount to indent the FIRST line of a list +% item. It is auto set to zero within the \list environment. To alter +% it, you have to do so when you call the \list. +% However, the IEEE uses this for the theorem environment +% There is an alternative value for this near \leftmargini below +\itemindent -1em + +% \leftmargin, the spacing from the left margin of the main text to +% the left of the main body of a list item is set by \list. +% Hence this statement does nothing for lists. +% But, quote and verse do use it for indention. +\leftmargin 2em + +% we retain this stuff from the older IEEEtran.cls so that \list +% will work the same way as before. However, itemize, enumerate and +% description (IED) could care less about what these are as they +% all are overridden. +\leftmargini 2em +%\itemindent 2em % Alternative values: sometimes used. +%\leftmargini 0em +\leftmarginii 1em +\leftmarginiii 1.5em +\leftmarginiv 1.5em +\leftmarginv 1.0em +\leftmarginvi 1.0em +\labelsep 0.5em +\labelwidth \z@ + + +% The old IEEEtran.cls behavior of \list is retained. +% However, the new V1.3 IED list environments override all the +% @list stuff (\@listX is called within \list for the +% appropriate level just before the user's list_decl is called). +% \topsep is now 2pt as the IEEE puts a little extra space around +% lists - used by those non-IED macros that depend on \list. +% Note that \parsep and \itemsep are not redefined as in +% the sizexx.clo \@listX (which article.cls uses) so global changes +% of these values DO affect \list +% +\def\@listi{\leftmargin\leftmargini \topsep 2pt plus 1pt minus 1pt} +\let\@listI\@listi +\def\@listii{\leftmargin\leftmarginii\labelwidth\leftmarginii% + \advance\labelwidth-\labelsep \topsep 2pt} +\def\@listiii{\leftmargin\leftmarginiii\labelwidth\leftmarginiii% + \advance\labelwidth-\labelsep \topsep 2pt} +\def\@listiv{\leftmargin\leftmarginiv\labelwidth\leftmarginiv% + \advance\labelwidth-\labelsep \topsep 2pt} +\def\@listv{\leftmargin\leftmarginv\labelwidth\leftmarginv% + \advance\labelwidth-\labelsep \topsep 2pt} +\def\@listvi{\leftmargin\leftmarginvi\labelwidth\leftmarginvi% + \advance\labelwidth-\labelsep \topsep 2pt} + + +% The IEEE uses 5) not 5. +\def\labelenumi{\theenumi)} \def\theenumi{\arabic{enumi}} + +% The IEEE uses a) not (a) +\def\labelenumii{\theenumii)} \def\theenumii{\alph{enumii}} + +% The IEEE uses iii) not iii. +\def\labelenumiii{\theenumiii)} \def\theenumiii{\roman{enumiii}} + +% The IEEE uses A) not A. +\def\labelenumiv{\theenumiv)} \def\theenumiv{\Alph{enumiv}} + +% exactly the same as in article.cls +\def\p@enumii{\theenumi} +\def\p@enumiii{\theenumi(\theenumii)} +\def\p@enumiv{\p@enumiii\theenumiii} + +% itemized list label styles +\def\labelitemi{$\scriptstyle\bullet$} +\def\labelitemii{\textbf{--}} +\def\labelitemiii{$\ast$} +\def\labelitemiv{$\cdot$} + + + +% **** V1.3 ENHANCEMENTS **** +% Itemize, Enumerate and Description (IED) List Controls +% *************************** +% +% +% The IEEE seems to use at least two different values by +% which ITEMIZED list labels are indented to the right +% For The Journal of Lightwave Technology (JLT) and The Journal +% on Selected Areas in Communications (JSAC), they tend to use +% an indention equal to \parindent. For Transactions on Communications +% they tend to indent ITEMIZED lists a little more--- 1.3\parindent. +% We'll provide both values here for you so that you can choose +% which one you like in your document using a command such as: +% setlength{\IEEEilabelindent}{\IEEEilabelindentB} +\newdimen\IEEEilabelindentA +\IEEEilabelindentA \parindent + +\newdimen\IEEEilabelindentB +\IEEEilabelindentB 1.3\parindent +% However, we'll default to using \parindent +% which makes more sense to me +\newdimen\IEEEilabelindent +\IEEEilabelindent \IEEEilabelindentA + + +% This controls the default amount the enumerated list labels +% are indented to the right. +% Normally, this is the same as the paragraph indention +\newdimen\IEEEelabelindent +\IEEEelabelindent \parindent + +% This controls the default amount the description list labels +% are indented to the right. +% Normally, this is the same as the paragraph indention +\newdimen\IEEEdlabelindent +\IEEEdlabelindent \parindent + +% This is the value actually used within the IED lists. +% The IED environments automatically set its value to +% one of the three values above, so global changes do +% not have any effect +\newdimen\IEEElabelindent +\IEEElabelindent \parindent + +% The actual amount labels will be indented is +% \IEEElabelindent multiplied by the factor below +% corresponding to the level of nesting depth +% This provides a means by which the user can +% alter the effective \IEEElabelindent for deeper +% levels +% There may not be such a thing as correct "standard IEEE" +% values. What the IEEE actually does may depend on the specific +% circumstances. +% The first list level almost always has full indention. +% The second levels I've seen have only 75% of the normal indentation +% Three level or greater nestings are very rare. I am guessing +% that they don't use any indentation. +\def\IEEElabelindentfactori{1.0} % almost always one +\def\IEEElabelindentfactorii{0.75} % 0.0 or 1.0 may be used in some cases +\def\IEEElabelindentfactoriii{0.0} % 0.75? 0.5? 0.0? +\def\IEEElabelindentfactoriv{0.0} +\def\IEEElabelindentfactorv{0.0} +\def\IEEElabelindentfactorvi{0.0} + +% value actually used within IED lists, it is auto +% set to one of the 6 values above +% global changes here have no effect +\def\IEEElabelindentfactor{1.0} + +% This controls the default spacing between the end of the IED +% list labels and the list text, when normal text is used for +% the labels. +% compsoc uses a larger value here, but we'll set that later +% in the class so that this code block area can be extracted +% as-is for IEEEtrantools.sty +\newdimen\IEEEiednormlabelsep +\IEEEiednormlabelsep 0.6em + +% This controls the default spacing between the end of the IED +% list labels and the list text, when math symbols are used for +% the labels (nomenclature lists). The IEEE usually increases the +% spacing in these cases +\newdimen\IEEEiedmathlabelsep +\IEEEiedmathlabelsep 1.2em + +% This controls the extra vertical separation put above and +% below each IED list. the IEEE usually puts a little extra spacing +% around each list. However, this spacing is barely noticeable. +% compsoc uses a larger value here, but we'll set that later +% in the class so that this code block area can be extracted +% as-is for IEEEtrantools.sty +\newskip\IEEEiedtopsep +\IEEEiedtopsep 2pt plus 1pt minus 1pt + + +% This command is executed within each IED list environment +% at the beginning of the list. You can use this to set the +% parameters for some/all your IED list(s) without disturbing +% global parameters that affect things other than lists. +% i.e., renewcommand{\IEEEiedlistdecl}{\setlength{\labelsep}{5em}} +% will alter the \labelsep for the next list(s) until +% \IEEEiedlistdecl is redefined. +\def\IEEEiedlistdecl{\relax} + +% This command provides an easy way to set \leftmargin based +% on the \labelwidth, \labelsep and the argument \IEEElabelindent +% Usage: \IEEEcalcleftmargin{width-to-indent-the-label} +% output is in the \leftmargin variable, i.e., effectively: +% \leftmargin = argument + \labelwidth + \labelsep +% Note controlled spacing here, shield end of lines with % +\def\IEEEcalcleftmargin#1{\setlength{\leftmargin}{#1}% +\addtolength{\leftmargin}{\labelwidth}% +\addtolength{\leftmargin}{\labelsep}} + +% This command provides an easy way to set \labelwidth to the +% width of the given text. It is the same as +% \settowidth{\labelwidth}{label-text} +% and useful as a shorter alternative. +% Typically used to set \labelwidth to be the width +% of the longest label in the list +\def\IEEEsetlabelwidth#1{\settowidth{\labelwidth}{#1}} + +% When this command is executed, IED lists will use the +% IEEEiedmathlabelsep label separation rather than the normal +% spacing. To have an effect, this command must be executed via +% the \IEEEiedlistdecl or within the option of the IED list +% environments. +\def\IEEEusemathlabelsep{\setlength{\labelsep}{\IEEEiedmathlabelsep}} + +% A flag which controls whether the IED lists automatically +% calculate \leftmargin from \IEEElabelindent, \labelwidth and \labelsep +% Useful if you want to specify your own \leftmargin +% This flag must be set (\IEEEnocalcleftmargintrue or \IEEEnocalcleftmarginfalse) +% via the \IEEEiedlistdecl or within the option of the IED list +% environments to have an effect. +\newif\ifIEEEnocalcleftmargin +\IEEEnocalcleftmarginfalse + +% A flag which controls whether \IEEElabelindent is multiplied by +% the \IEEElabelindentfactor for each list level. +% This flag must be set via the \IEEEiedlistdecl or within the option +% of the IED list environments to have an effect. +\newif\ifIEEEnolabelindentfactor +\IEEEnolabelindentfactorfalse + + +% internal variable to indicate type of IED label +% justification +% 0 - left; 1 - center; 2 - right +\def\@IEEEiedjustify{0} + + +% commands to allow the user to control IED +% label justifications. Use these commands within +% the IED environment option or in the \IEEEiedlistdecl +% Note that changing the normal list justifications +% is nonstandard and the IEEE may not like it if you do so! +% I include these commands as they may be helpful to +% those who are using these enhanced list controls for +% other non-IEEE related LaTeX work. +% itemize and enumerate automatically default to right +% justification, description defaults to left. +\def\IEEEiedlabeljustifyl{\def\@IEEEiedjustify{0}}%left +\def\IEEEiedlabeljustifyc{\def\@IEEEiedjustify{1}}%center +\def\IEEEiedlabeljustifyr{\def\@IEEEiedjustify{2}}%right + + + + +% commands to save to and restore from the list parameter copies +% this allows us to set all the list parameters within +% the list_decl and prevent \list (and its \@list) +% from overriding any of our parameters +% V1.6 use \edefs instead of dimen's to conserve dimen registers +% Note controlled spacing here, shield end of lines with % +\def\@IEEEsavelistparams{\edef\@IEEEiedtopsep{\the\topsep}% +\edef\@IEEEiedlabelwidth{\the\labelwidth}% +\edef\@IEEEiedlabelsep{\the\labelsep}% +\edef\@IEEEiedleftmargin{\the\leftmargin}% +\edef\@IEEEiedpartopsep{\the\partopsep}% +\edef\@IEEEiedparsep{\the\parsep}% +\edef\@IEEEieditemsep{\the\itemsep}% +\edef\@IEEEiedrightmargin{\the\rightmargin}% +\edef\@IEEEiedlistparindent{\the\listparindent}% +\edef\@IEEEieditemindent{\the\itemindent}} + +% Note controlled spacing here +\def\@IEEErestorelistparams{\topsep\@IEEEiedtopsep\relax% +\labelwidth\@IEEEiedlabelwidth\relax% +\labelsep\@IEEEiedlabelsep\relax% +\leftmargin\@IEEEiedleftmargin\relax% +\partopsep\@IEEEiedpartopsep\relax% +\parsep\@IEEEiedparsep\relax% +\itemsep\@IEEEieditemsep\relax% +\rightmargin\@IEEEiedrightmargin\relax% +\listparindent\@IEEEiedlistparindent\relax% +\itemindent\@IEEEieditemindent\relax} + + +% v1.6b provide original LaTeX IED list environments +% note that latex.ltx defines \itemize and \enumerate, but not \description +% which must be created by the base classes +% save original LaTeX itemize and enumerate +\let\LaTeXitemize\itemize +\let\endLaTeXitemize\enditemize +\let\LaTeXenumerate\enumerate +\let\endLaTeXenumerate\endenumerate + +% provide original LaTeX description environment from article.cls +\newenvironment{LaTeXdescription} + {\list{}{\labelwidth\z@ \itemindent-\leftmargin + \let\makelabel\descriptionlabel}} + {\endlist} +\newcommand*\descriptionlabel[1]{\hspace\labelsep + \normalfont\bfseries #1} + + +% override LaTeX's default IED lists +\def\itemize{\@IEEEitemize} +\def\enditemize{\@endIEEEitemize} +\def\enumerate{\@IEEEenumerate} +\def\endenumerate{\@endIEEEenumerate} +\def\description{\@IEEEdescription} +\def\enddescription{\@endIEEEdescription} + +% provide the user with aliases - may help those using packages that +% override itemize, enumerate, or description +\def\IEEEitemize{\@IEEEitemize} +\def\endIEEEitemize{\@endIEEEitemize} +\def\IEEEenumerate{\@IEEEenumerate} +\def\endIEEEenumerate{\@endIEEEenumerate} +\def\IEEEdescription{\@IEEEdescription} +\def\endIEEEdescription{\@endIEEEdescription} + + +% V1.6 we want to keep the IEEEtran IED list definitions as our own internal +% commands so they are protected against redefinition +\def\@IEEEitemize{\@ifnextchar[{\@@IEEEitemize}{\@@IEEEitemize[\relax]}} +\def\@IEEEenumerate{\@ifnextchar[{\@@IEEEenumerate}{\@@IEEEenumerate[\relax]}} +\def\@IEEEdescription{\@ifnextchar[{\@@IEEEdescription}{\@@IEEEdescription[\relax]}} +\def\@endIEEEitemize{\endlist} +\def\@endIEEEenumerate{\endlist} +\def\@endIEEEdescription{\endlist} + + +% DO NOT ALLOW BLANK LINES TO BE IN THESE IED ENVIRONMENTS +% AS THIS WILL FORCE NEW PARAGRAPHS AFTER THE IED LISTS +% IEEEtran itemized list MDS 1/2001 +% Note controlled spacing here, shield end of lines with % +\def\@@IEEEitemize[#1]{% + \ifnum\@itemdepth>3\relax\@toodeep\else% + \ifnum\@listdepth>5\relax\@toodeep\else% + \advance\@itemdepth\@ne% + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + % get the IEEElabelindentfactor for this level + \advance\@listdepth\@ne% we need to know what the level WILL be + \edef\IEEElabelindentfactor{\csname IEEElabelindentfactor\romannumeral\the\@listdepth\endcsname}% + \advance\@listdepth-\@ne% undo our increment + \def\@IEEEiedjustify{2}% right justified labels are default + % set other defaults + \IEEEnocalcleftmarginfalse% + \IEEEnolabelindentfactorfalse% + \topsep\IEEEiedtopsep% + \IEEElabelindent\IEEEilabelindent% + \labelsep\IEEEiednormlabelsep% + \partopsep 0ex% + \parsep 0ex% + \itemsep 0ex% + \rightmargin 0em% + \listparindent 0em% + \itemindent 0em% + % calculate the label width + % the user can override this later if + % they specified a \labelwidth + \settowidth{\labelwidth}{\csname labelitem\romannumeral\the\@itemdepth\endcsname}% + \@IEEEsavelistparams% save our list parameters + \list{\csname\@itemitem\endcsname}{% + \@IEEErestorelistparams% override any list{} changes + % to our globals + \let\makelabel\@IEEEiedmakelabel% v1.6b setup \makelabel + \IEEEiedlistdecl% let user alter parameters + #1\relax% + % If the user has requested not to use the + % IEEElabelindent factor, don't revise \IEEElabelindent + \ifIEEEnolabelindentfactor\relax% + \else\IEEElabelindent=\IEEElabelindentfactor\IEEElabelindent% + \fi% + % Unless the user has requested otherwise, + % calculate our left margin based + % on \IEEElabelindent, \labelwidth and + % \labelsep + \ifIEEEnocalcleftmargin\relax% + \else\IEEEcalcleftmargin{\IEEElabelindent}% + \fi}\fi\fi}% + + +% DO NOT ALLOW BLANK LINES TO BE IN THESE IED ENVIRONMENTS +% AS THIS WILL FORCE NEW PARAGRAPHS AFTER THE IED LISTS +% IEEEtran enumerate list MDS 1/2001 +% Note controlled spacing here, shield end of lines with % +\def\@@IEEEenumerate[#1]{% + \ifnum\@enumdepth>3\relax\@toodeep\else% + \ifnum\@listdepth>5\relax\@toodeep\else% + \advance\@enumdepth\@ne% + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + % get the IEEElabelindentfactor for this level + \advance\@listdepth\@ne% we need to know what the level WILL be + \edef\IEEElabelindentfactor{\csname IEEElabelindentfactor\romannumeral\the\@listdepth\endcsname}% + \advance\@listdepth-\@ne% undo our increment + \def\@IEEEiedjustify{2}% right justified labels are default + % set other defaults + \IEEEnocalcleftmarginfalse% + \IEEEnolabelindentfactorfalse% + \topsep\IEEEiedtopsep% + \IEEElabelindent\IEEEelabelindent% + \labelsep\IEEEiednormlabelsep% + \partopsep 0ex% + \parsep 0ex% + \itemsep 0ex% + \rightmargin 0em% + \listparindent 0em% + \itemindent 0em% + % calculate the label width + % We'll set it to the width suitable for all labels using + % normalfont 1) to 9) + % The user can override this later + \settowidth{\labelwidth}{9)}% + \@IEEEsavelistparams% save our list parameters + \list{\csname label\@enumctr\endcsname}{\usecounter{\@enumctr}% + \@IEEErestorelistparams% override any list{} changes + % to our globals + \let\makelabel\@IEEEiedmakelabel% v1.6b setup \makelabel + \IEEEiedlistdecl% let user alter parameters + #1\relax% + % If the user has requested not to use the + % IEEElabelindent factor, don't revise \IEEElabelindent + \ifIEEEnolabelindentfactor\relax% + \else\IEEElabelindent=\IEEElabelindentfactor\IEEElabelindent% + \fi% + % Unless the user has requested otherwise, + % calculate our left margin based + % on \IEEElabelindent, \labelwidth and + % \labelsep + \ifIEEEnocalcleftmargin\relax% + \else\IEEEcalcleftmargin{\IEEElabelindent}% + \fi}\fi\fi}% + + +% DO NOT ALLOW BLANK LINES TO BE IN THESE IED ENVIRONMENTS +% AS THIS WILL FORCE NEW PARAGRAPHS AFTER THE IED LISTS +% IEEEtran description list MDS 1/2001 +% Note controlled spacing here, shield end of lines with % +\def\@@IEEEdescription[#1]{% + \ifnum\@listdepth>5\relax\@toodeep\else% + % get the IEEElabelindentfactor for this level + \advance\@listdepth\@ne% we need to know what the level WILL be + \edef\IEEElabelindentfactor{\csname IEEElabelindentfactor\romannumeral\the\@listdepth\endcsname}% + \advance\@listdepth-\@ne% undo our increment + \def\@IEEEiedjustify{0}% left justified labels are default + % set other defaults + \IEEEnocalcleftmarginfalse% + \IEEEnolabelindentfactorfalse% + \topsep\IEEEiedtopsep% + \IEEElabelindent\IEEEdlabelindent% + % assume normal labelsep + \labelsep\IEEEiednormlabelsep% + \partopsep 0ex% + \parsep 0ex% + \itemsep 0ex% + \rightmargin 0em% + \listparindent 0em% + \itemindent 0em% + % Bogus label width in case the user forgets + % to set it. + % TIP: If you want to see what a variable's width is you + % can use the TeX command \showthe\width-variable to + % display it on the screen during compilation + % (This might be helpful to know when you need to find out + % which label is the widest) + \settowidth{\labelwidth}{Hello}% + \@IEEEsavelistparams% save our list parameters + \list{}{\@IEEErestorelistparams% override any list{} changes + % to our globals + \let\makelabel\@IEEEiedmakelabel% v1.6b setup \makelabel + \IEEEiedlistdecl% let user alter parameters + #1\relax% + % If the user has requested not to use the + % labelindent factor, don't revise \IEEElabelindent + \ifIEEEnolabelindentfactor\relax% + \else\IEEElabelindent=\IEEElabelindentfactor\IEEElabelindent% + \fi% + % Unless the user has requested otherwise, + % calculate our left margin based + % on \IEEElabelindent, \labelwidth and + % \labelsep + \ifIEEEnocalcleftmargin\relax% + \else\IEEEcalcleftmargin{\IEEElabelindent}\relax% + \fi}\fi} + +% v1.6b we use one makelabel that does justification as needed. +\def\@IEEEiedmakelabel#1{\relax\if\@IEEEiedjustify 0\relax +\makebox[\labelwidth][l]{\normalfont #1}\else +\if\@IEEEiedjustify 1\relax +\makebox[\labelwidth][c]{\normalfont #1}\else +\makebox[\labelwidth][r]{\normalfont #1}\fi\fi} + + +% compsoc uses a larger value for the normal labelsep +% and also extra spacing above and below each list +\ifCLASSOPTIONcompsoc + \IEEEiednormlabelsep 1.2em + \IEEEiedtopsep 6pt plus 3pt minus 3pt +\fi + + +% VERSE and QUOTE +% V1.7 define environments with newenvironment +\newenvironment{verse}{\let\\=\@centercr + \list{}{\itemsep\z@ \itemindent -1.5em \listparindent \itemindent + \rightmargin\leftmargin\advance\leftmargin 1.5em}\item\relax} + {\endlist} +\newenvironment{quotation}{\list{}{\listparindent 1.5em \itemindent\listparindent + \rightmargin\leftmargin \parsep 0pt plus 1pt}\item\relax} + {\endlist} +\newenvironment{quote}{\list{}{\rightmargin\leftmargin}\item\relax} + {\endlist} + + +% \titlepage +% provided only for backward compatibility. \maketitle is the correct +% way to create the title page. +\def\titlepage{\@restonecolfalse\if@twocolumn\@restonecoltrue\onecolumn + \else \newpage \fi \thispagestyle{empty}\c@page\z@} +\def\endtitlepage{\if@restonecol\twocolumn \else \newpage \fi} + +% standard values from article.cls +\arraycolsep 5pt +\arrayrulewidth .4pt +\doublerulesep 2pt + +\tabcolsep 6pt +\tabbingsep 0.5em + + +%% FOOTNOTES +% +%\skip\footins 10pt plus 4pt minus 2pt +% V1.6 respond to changes in font size +% space added above the footnotes (if present) +\skip\footins 0.9\baselineskip plus 0.4\baselineskip minus 0.2\baselineskip + +% V1.6, we need to make \footnotesep responsive to changes +% in \baselineskip or strange spacings will result when in +% draft mode. Here is a little LaTeX secret - \footnotesep +% determines the height of an invisible strut that is placed +% *above* the baseline of footnotes after the first. Since +% LaTeX considers the space for characters to be 0.7\baselineskip +% above the baseline and 0.3\baselineskip below it, we need to +% use 0.7\baselineskip as a \footnotesep to maintain equal spacing +% between all the lines of the footnotes. The IEEE often uses a tad +% more, so use 0.8\baselineskip. This slightly larger value also helps +% the text to clear the footnote marks. Note that \thanks in IEEEtran +% uses its own value of \footnotesep which is set in \maketitle. +{\footnotesize +\global\footnotesep 0.8\baselineskip} + + +\skip\@mpfootins = \skip\footins +\fboxsep = 3pt +\fboxrule = .4pt +% V1.6 use 1em, then use LaTeX2e's \@makefnmark +% Note that the IEEE normally *left* aligns the footnote marks, so we don't need +% box resizing tricks here. +\long\def\@makefntext#1{\parindent 1em\indent\hbox{\@makefnmark}#1}% V1.6 use 1em +% V1.7 compsoc does not use superscipts for footnote marks +\ifCLASSOPTIONcompsoc +\def\@IEEEcompsocmakefnmark{\hbox{\normalfont\@thefnmark.\ }} +\long\def\@makefntext#1{\parindent 1em\indent\hbox{\@IEEEcompsocmakefnmark}#1} +\fi + +% The IEEE does not use footnote rules +\def\footnoterule{} + +% V1.7 for compsoc, the IEEE uses a footnote rule only for \thanks. We devise a "one-shot" +% system to implement this. +\newif\if@IEEEenableoneshotfootnoterule +\@IEEEenableoneshotfootnoterulefalse +\ifCLASSOPTIONcompsoc +\def\footnoterule{\relax\if@IEEEenableoneshotfootnoterule +\kern-5pt +\hbox to \columnwidth{\hfill\vrule width 0.5\columnwidth height 0.4pt\hfill} +\kern4.6pt +\global\@IEEEenableoneshotfootnoterulefalse +\else +\relax +\fi} +\fi + +% V1.6 do not allow LaTeX to break a footnote across multiple pages +\interfootnotelinepenalty=10000 + +% V1.6 discourage breaks within equations +% Note that amsmath normally sets this to 10000, +% but LaTeX2e normally uses 100. +\interdisplaylinepenalty=2500 + +% default allows section depth up to /paragraph +\setcounter{secnumdepth}{4} + +% technotes do not allow /paragraph +\ifCLASSOPTIONtechnote + \setcounter{secnumdepth}{3} +\fi +% neither do compsoc conferences +\@IEEEcompsocconfonly{\setcounter{secnumdepth}{3}} + + +\newcounter{section} +\newcounter{subsection}[section] +\newcounter{subsubsection}[subsection] +\newcounter{paragraph}[subsubsection] + +% used only by IEEEtran's IEEEeqnarray as other packages may +% have their own, different, implementations +\newcounter{IEEEsubequation}[equation] + +% as shown when called by user from \ref, \label and in table of contents +\def\theequation{\arabic{equation}} % 1 +\def\theIEEEsubequation{\theequation\alph{IEEEsubequation}} % 1a (used only by IEEEtran's IEEEeqnarray) +\ifCLASSOPTIONcompsoc +% compsoc is all arabic +\def\thesection{\arabic{section}} +\def\thesubsection{\thesection.\arabic{subsection}} +\def\thesubsubsection{\thesubsection.\arabic{subsubsection}} +\def\theparagraph{\thesubsubsection.\arabic{paragraph}} +\else +\def\thesection{\Roman{section}} % I +% V1.7, \mbox prevents breaks around - +\def\thesubsection{\mbox{\thesection-\Alph{subsection}}} % I-A +% V1.7 use I-A1 format used by the IEEE rather than I-A.1 +\def\thesubsubsection{\thesubsection\arabic{subsubsection}} % I-A1 +\def\theparagraph{\thesubsubsection\alph{paragraph}} % I-A1a +\fi + +% From Heiko Oberdiek. Because of the \mbox in \thesubsection, we need to +% tell hyperref to disable the \mbox command when making PDF bookmarks. +% This done already with hyperref.sty version 6.74o and later, but +% it will not hurt to do it here again for users of older versions. +\@ifundefined{pdfstringdefPreHook}{\let\pdfstringdefPreHook\@empty}{}% +\g@addto@macro\pdfstringdefPreHook{\let\mbox\relax} + + +% Main text forms (how shown in main text headings) +% V1.6, using \thesection in \thesectiondis allows changes +% in the former to automatically appear in the latter +\ifCLASSOPTIONcompsoc + \ifCLASSOPTIONconference% compsoc conference + \def\thesectiondis{\thesection.} + \def\thesubsectiondis{\thesectiondis\arabic{subsection}.} + \def\thesubsubsectiondis{\thesubsectiondis\arabic{subsubsection}.} + \def\theparagraphdis{\thesubsubsectiondis\arabic{paragraph}.} + \else% compsoc not conferencs + \def\thesectiondis{\thesection} + \def\thesubsectiondis{\thesectiondis.\arabic{subsection}} + \def\thesubsubsectiondis{\thesubsectiondis.\arabic{subsubsection}} + \def\theparagraphdis{\thesubsubsectiondis.\arabic{paragraph}} + \fi +\else% not compsoc + \def\thesectiondis{\thesection.} % I. + \def\thesubsectiondis{\Alph{subsection}.} % B. + \def\thesubsubsectiondis{\arabic{subsubsection})} % 3) + \def\theparagraphdis{\alph{paragraph})} % d) +\fi + +% just like LaTeX2e's \@eqnnum +\def\theequationdis{{\normalfont \normalcolor (\theequation)}}% (1) +% IEEEsubequation used only by IEEEtran's IEEEeqnarray +\def\theIEEEsubequationdis{{\normalfont \normalcolor (\theIEEEsubequation)}}% (1a) +% redirect LaTeX2e's equation number display and all that depend on +% it, through IEEEtran's \theequationdis +\def\@eqnnum{\theequationdis} + + + +% V1.7 provide string macros as article.cls does +\def\contentsname{Contents} +\def\listfigurename{List of Figures} +\def\listtablename{List of Tables} +\def\refname{References} +\def\indexname{Index} +\def\figurename{Fig.} +\def\tablename{TABLE} +\@IEEEcompsocconfonly{\def\figurename{Figure}} +\def\partname{Part} +\def\appendixname{Appendix} +\def\abstractname{Abstract} +% IEEE specific names +\def\IEEEkeywordsname{Index Terms} +\def\IEEEproofname{Proof} + + +% LIST OF FIGURES AND TABLES AND TABLE OF CONTENTS +% +\def\@pnumwidth{1.55em} +\def\@tocrmarg{2.55em} +\def\@dotsep{4.5} +\setcounter{tocdepth}{3} + +% adjusted some spacings here so that section numbers will not easily +% collide with the section titles. +% VIII; VIII-A; and VIII-A.1 are usually the worst offenders. +% MDS 1/2001 +\def\tableofcontents{\section*{\contentsname}\@starttoc{toc}} +\def\l@section#1#2{\addpenalty{\@secpenalty}\addvspace{1.0em plus 1pt}% + \@tempdima 2.75em \begingroup \parindent \z@ \rightskip \@pnumwidth% + \parfillskip-\@pnumwidth {\bfseries\leavevmode #1}\hfil\hbox to\@pnumwidth{\hss #2}\par% + \endgroup} +% argument format #1:level, #2:labelindent,#3:labelsep +\def\l@subsection{\@dottedtocline{2}{2.75em}{3.75em}} +\def\l@subsubsection{\@dottedtocline{3}{6.5em}{4.5em}} +% must provide \l@ defs for ALL sublevels EVEN if tocdepth +% is such as they will not appear in the table of contents +% these defs are how TOC knows what level these things are! +\def\l@paragraph{\@dottedtocline{4}{6.5em}{5.5em}} +\def\l@subparagraph{\@dottedtocline{5}{6.5em}{6.5em}} +\def\listoffigures{\section*{\listfigurename}\@starttoc{lof}} +\def\l@figure{\@dottedtocline{1}{0em}{2.75em}} +\def\listoftables{\section*{\listtablename}\@starttoc{lot}} +\let\l@table\l@figure + + +% Definitions for floats +% +% Normal Floats +% V1.8 floatsep et al. revised down by 0.15\baselineskip +% to account for the sideeffects of \topskip compensation +\floatsep 0.85\baselineskip plus 0.2\baselineskip minus 0.2\baselineskip +\textfloatsep 1.55\baselineskip plus 0.2\baselineskip minus 0.4\baselineskip +\@fptop 0pt plus 1fil +\@fpsep 0.75\baselineskip plus 2fil +\@fpbot 0pt plus 1fil +\def\topfraction{0.9} +\def\bottomfraction{0.4} +\def\floatpagefraction{0.8} +% V1.7, let top floats approach 90% of page +\def\textfraction{0.1} + +% Double Column Floats +\dblfloatsep 0.85\baselineskip plus 0.2\baselineskip minus 0.2\baselineskip + +\dbltextfloatsep 1.55\baselineskip plus 0.2\baselineskip minus 0.4\baselineskip +% Note that it would be nice if the rubber here actually worked in LaTeX2e. +% There is a long standing limitation in LaTeX, first discovered (to the best +% of my knowledge) by Alan Jeffrey in 1992. LaTeX ignores the stretchable +% portion of \dbltextfloatsep, and as a result, double column figures can and +% do result in an non-integer number of lines in the main text columns with +% underfull vbox errors as a consequence. A post to comp.text.tex +% by Donald Arseneau confirms that this had not yet been fixed in 1998. +% IEEEtran V1.6 will fix this problem for you in the titles, but it doesn't +% protect you from other double floats. Happy vspace'ing. + +\@dblfptop 0pt plus 1fil +\@dblfpsep 0.75\baselineskip plus 2fil +\@dblfpbot 0pt plus 1fil +\def\dbltopfraction{0.8} +\def\dblfloatpagefraction{0.8} +\setcounter{dbltopnumber}{4} + +\intextsep 0.85\baselineskip plus 0.2\baselineskip minus 0.2\baselineskip +\setcounter{topnumber}{2} +\setcounter{bottomnumber}{2} +\setcounter{totalnumber}{4} + + + +% article class provides these, we should too. +\newlength\abovecaptionskip +\newlength\belowcaptionskip +% but only \abovecaptionskip is used above figure captions and *below* table +% captions +\setlength\abovecaptionskip{0.5\baselineskip} +% compsoc journals are a little more generous +\ifCLASSOPTIONcompsoc\ifCLASSOPTIONjournal + \setlength\abovecaptionskip{0.75\baselineskip} +\fi\fi +\setlength\belowcaptionskip{0pt} +% V1.6 create hooks in case the caption spacing ever needs to be +% overridden by a user +\def\@IEEEfigurecaptionsepspace{\vskip\abovecaptionskip\relax}% +\def\@IEEEtablecaptionsepspace{\vskip\abovecaptionskip\relax}% + + +% 1.6b revise caption system so that \@makecaption uses two arguments +% as with LaTeX2e. Otherwise, there will be problems when using hyperref. +\def\@IEEEtablestring{table} + + +% V1.8 compensate for \topskip so top of top figures align with tops of the first lines of main text +% here we calculate a space equal to the amount \topskip exceeds the main text height +% we hook in at \@floatboxreset +\def\@IEEEfiguretopskipspace{\ifdim\prevdepth=-1000pt\relax +\setlength{\@IEEEtrantmpdimenA}{1\topskip}\relax +\addtolength{\@IEEEtrantmpdimenA}{-0.7\@IEEEnormalsizeunitybaselineskip}\relax +\vspace*{\@IEEEtrantmpdimenA}\fi} +% V1.8 compensate for \topskip at the top of top tables so caption text is on main text baseline +% use a strut set on the caption baseline within \@makecaption +\def\@IEEEtabletopskipstrut{\ifdim\prevdepth=-1000pt\rule{0pt}{\topskip}\fi} +% the \ifdim\prevdepth checks are always expected to be true for IEEE style float caption ordering +% because top of figure content and top of captions in tables is the first thing on the vertical +% list of these floats +% thanks to Donald Arseneau for his 2000/11/11 post "Re: caption hacking" with info on this topic. + + +\ifCLASSOPTIONcompsoc +% V1.7 compsoc \@makecaption +\ifCLASSOPTIONconference% compsoc conference +\long\def\@makecaption#1#2{% +% test if is a for a figure or table +\ifx\@captype\@IEEEtablestring% +% if a table, do table caption +\footnotesize\bgroup\par\centering\@IEEEtabletopskipstrut{\normalfont\footnotesize {#1.}\nobreakspace\scshape #2}\par\addvspace{0.5\baselineskip}\egroup% +\@IEEEtablecaptionsepspace +% if not a table, format it as a figure +\else +\@IEEEfigurecaptionsepspace +\setbox\@tempboxa\hbox{\normalfont\footnotesize {#1.}\nobreakspace #2}% +\ifdim \wd\@tempboxa >\hsize% +% if caption is longer than a line, let it wrap around +\setbox\@tempboxa\hbox{\normalfont\footnotesize {#1.}\nobreakspace}% +\parbox[t]{\hsize}{\normalfont\footnotesize \noindent\unhbox\@tempboxa#2}% +% if caption is shorter than a line, center +\else% +\hbox to\hsize{\normalfont\footnotesize\hfil\box\@tempboxa\hfil}% +\fi\fi} +% +\else% nonconference compsoc +\long\def\@makecaption#1#2{% +% test if is a for a figure or table +\ifx\@captype\@IEEEtablestring% +% if a table, do table caption +\footnotesize\bgroup\par\centering\@IEEEtabletopskipstrut{\normalfont\sffamily\footnotesize #1}\\{\normalfont\sffamily\footnotesize #2}\par\addvspace{0.5\baselineskip}\egroup% +\@IEEEtablecaptionsepspace +% if not a table, format it as a figure +\else +\@IEEEfigurecaptionsepspace +\setbox\@tempboxa\hbox{\normalfont\sffamily\footnotesize {#1.}\nobreakspace #2}% +\ifdim \wd\@tempboxa >\hsize% +% if caption is longer than a line, let it wrap around +\setbox\@tempboxa\hbox{\normalfont\sffamily\footnotesize {#1.}\nobreakspace}% +\parbox[t]{\hsize}{\normalfont\sffamily\footnotesize \noindent\unhbox\@tempboxa#2}% +% if caption is shorter than a line, left justify +\else% +\hbox to\hsize{\normalfont\sffamily\footnotesize\box\@tempboxa\hfil}% +\fi\fi} +\fi +% +\else% traditional noncompsoc \@makecaption +\long\def\@makecaption#1#2{% +% test if is a for a figure or table +\ifx\@captype\@IEEEtablestring% +% if a table, do table caption +\footnotesize\bgroup\par\centering\@IEEEtabletopskipstrut{\normalfont\footnotesize #1}\\{\normalfont\footnotesize\scshape #2}\par\addvspace{0.5\baselineskip}\egroup% +\@IEEEtablecaptionsepspace +% if not a table, format it as a figure +\else +\@IEEEfigurecaptionsepspace +% 3/2001 use footnotesize, not small; use two nonbreaking spaces, not one +\setbox\@tempboxa\hbox{\normalfont\footnotesize {#1.}\nobreakspace\nobreakspace #2}% +\ifdim \wd\@tempboxa >\hsize% +% if caption is longer than a line, let it wrap around +\setbox\@tempboxa\hbox{\normalfont\footnotesize {#1.}\nobreakspace\nobreakspace}% +\parbox[t]{\hsize}{\normalfont\footnotesize\noindent\unhbox\@tempboxa#2}% +% if caption is shorter than a line, center if conference, left justify otherwise +\else% +\ifCLASSOPTIONconference \hbox to\hsize{\normalfont\footnotesize\hfil\box\@tempboxa\hfil}% +\else \hbox to\hsize{\normalfont\footnotesize\box\@tempboxa\hfil}% +\fi\fi\fi} +\fi + + + +% V1.7 disable captions class option, do so in a way that retains operation of \label +% within \caption +\ifCLASSOPTIONcaptionsoff +\long\def\@makecaption#1#2{\vspace*{2em}\footnotesize\bgroup\par\addvspace{0.5\baselineskip}\centering{\footnotesize #1}\par\addvspace{0.5\baselineskip}\egroup% +\let\@IEEEtemporiglabeldefsave\label +\let\@IEEEtemplabelargsave\relax +\def\label##1{\gdef\@IEEEtemplabelargsave{##1}}% +\setbox\@tempboxa\hbox{#2}% +\let\label\@IEEEtemporiglabeldefsave +\ifx\@IEEEtemplabelargsave\relax\else\label{\@IEEEtemplabelargsave}\fi} +\fi + + +% V1.7 define end environments with \def not \let so as to work OK with +% preview-latex +\newcounter{figure} +\def\thefigure{\@arabic\c@figure} +\def\fps@figure{tbp} +\def\ftype@figure{1} +\def\ext@figure{lof} +\def\fnum@figure{\figurename\nobreakspace\thefigure} +% V1.8 within figures add \@IEEEfiguretopskipspace compensation to LaTeX2e's \@floatboxreset +\def\figure{\def\@floatboxreset{\reset@font\normalsize\@setminipage\@IEEEfiguretopskipspace}\@float{figure}} +\def\endfigure{\end@float} +% V1.8 also add \@IEEEfiguretopskipspace compensation to \figure* +\@namedef{figure*}{\def\@floatboxreset{\reset@font\normalsize\@setminipage\@IEEEfiguretopskipspace}\@dblfloat{figure}} +\@namedef{endfigure*}{\end@dblfloat} + +\newcounter{table} +\ifCLASSOPTIONcompsoc +\def\thetable{\arabic{table}} +\else +\def\thetable{\@Roman\c@table} +\fi +\def\fps@table{tbp} +\def\ftype@table{2} +\def\ext@table{lot} +\def\fnum@table{\tablename\nobreakspace\thetable} +% V1.6 The IEEE uses 8pt text for tables +% within tables alter LaTeX2e's \@floatboxreset to use \footnotesize +\def\table{\def\@floatboxreset{\reset@font\footnotesize\@setminipage}\@float{table}} +\def\endtable{\end@float} +% v1.6b double column tables need to default to footnotesize as well. +\@namedef{table*}{\def\@floatboxreset{\reset@font\footnotesize\@setminipage}\@dblfloat{table}} +\@namedef{endtable*}{\end@dblfloat} + + + + +%% -- Command Argument Scanning Support Functions -- +%% V1.8a + +% usage: \@IEEEstripouterbraces*{} +% \@IEEEstripouterbraces fully expands its argument (which it then stores +% in \@IEEEstripouterbracesarg) via \edef, then removes any outer enclosing +% braces, and finally stores the result in the macro +% \@IEEEstrippedouterbraces. +% +% For example: +% \@IEEEstripouterbraces{{{{ab}c}}} +% results in: +% +% \@IEEEstripouterbracesarg ==> a macro containing {{{ab}c}} +% \@IEEEstrippedouterbraces ==> a macro containing {ab}c +% +% the *-star form,\@IEEEstripouterbraces*, does not expand the argument +% contents during processing +\def\@IEEEstripouterbraces{\@ifstar{\let\@IEEEstripouterbracesdef=\def\@@IEEEstripouterbraces}{\let\@IEEEstripouterbracesdef=\edef\@@IEEEstripouterbraces}} + +\def\@@IEEEstripouterbraces#1{\@IEEEstripouterbracesdef\@IEEEstripouterbracesarg{#1}\relax +% If the macro is unchanged after being acquired as a single delimited +% argument, we know we have one sequence of tokens without any enclosing +% braces. Loop until this is true. +\loop + \expandafter\@@@IEEEstripouterbraces\@IEEEstripouterbracesarg\@IEEEgeneralsequenceDELIMITER +\ifx\@IEEEstrippedouterbraces\@IEEEstripouterbracesarg +\else + \let\@IEEEstripouterbracesarg\@IEEEstrippedouterbraces +\repeat} + +\def\@@@IEEEstripouterbraces#1\@IEEEgeneralsequenceDELIMITER{\def\@IEEEstrippedouterbraces{#1}} + + + +% usage: \@IEEEextractgroup*{} +% \@IEEEextractgroup fully expands its argument (which it then stores in +% \@IEEEextractgrouparg) via \edef and then assigns the first "brace group" +% of tokens to the macro \@IEEEextractedgroup. +% The remaining groups, if any, are stored in the macro +% \@IEEEextractedgroupremain. If the argument does not contain the requisite +% groups, the respective macros will be defined to be empty. +% There is an asymmetry in that \@IEEEextractedgroup is stripped of its first +% outer grouping while \@IEEEextractedgroupremain retains even the outer +% grouping (if present) that originally identified it as a group. +% +% For example: +% \@IEEEextractgroup{{{ab}}{c{de}}} +% results in: +% +% \@IEEEextractgrouparg ==> a macro containing {{ab}}{c{de}} +% \@IEEEextractedgroup ==> a macro containing {ab} +% \@IEEEextractedgroupremain ==> a macro containing {c{de}} +% +% The *-star form, \@IEEEextractgroup*, does not expand its argument +% contents during processing. +\def\@IEEEextractgroup{\@ifstar{\let\@IEEEextractgroupdef=\def\@@IEEEextractgroup}{\let\@IEEEextractgroupdef=\edef\@@IEEEextractgroup}} + +\def\@@IEEEextractgroup#1{\@IEEEextractgroupdef\@IEEEextractgrouparg{#1}\relax +% trap the case of an empty extracted group as this would cause problems with +% \@IEEEextractgroupremain's argument acquisition +\ifx\@IEEEextractgrouparg\@empty + \def\@IEEEextractedgroup{}\relax + \def\@IEEEextractedgroupremain{}\relax +\else + % We have to use some dirty tricks here. We want to insert {} around + % whatever remains after the first group so that TeX's argument scanner + % will preserve any originally enclosing braces as well as provide an + % empty argument to acquire even if there isn't a second group. + % In this first of two dirty tricks, we put a } at the end of the structure + % we are going to extract from. The \ifnum0=`{\fi keeps TeX happy to allow + % what would otherwise be an unbalanced macro definition for + % \@@IEEEextractgroup to be acceptable to it. + \ifnum0=`{\fi\expandafter\@IEEEextractgroupremain\@IEEEextractgrouparg}\relax +\fi} + +% In the second part of the dirty tricks, we insert a leading { right after +% the first group is acquired, but before the remainder is. Again, the +% \ifnum0=`}\fi keeps TeX happy during definition time, but will disappear +% during run time. +\def\@IEEEextractgroupremain#1{\def\@IEEEextractedgroup{#1}\expandafter\@@IEEEextractgroupremain\expandafter{\ifnum0=`}\fi} + +\def\@@IEEEextractgroupremain#1{\def\@IEEEextractedgroupremain{#1}} + + + +% \@IEEEextracttoken relocated at top because margin setting commands rely on it + + + +% usage: \@IEEEextracttokengroups*{} +% \@IEEEextracttokengroups fully expands its argument (which it then stores +% in \@IEEEextracttokengroupsarg) and then assigns the first "brace group" of +% tokens (with the outermost braces removed) to the macro +% \@IEEEextractedfirstgroup. +% The meaning of the first nonbrace (but including the empty group) token +% within this first group is assigned via \let to \@IEEEextractedfirsttoken +% as well as stored in the macro \@IEEEextractedfirsttokenmacro. If a first +% nonbrace token does not exist (or is an empty group), these will be \relax +% and empty, respectively. Tokens that would otherwise be discarded during +% the acquisition of the first token in the first group are stored in +% \@IEEEextractedfirsttokensdiscarded, however their original relative brace +% nesting depths are not guaranteed to be preserved. +% The first group within this first group is stored in the macro +% \@IEEEextractedfirstfirstgroup. +% Likewise for the next group after the first: \@IEEEextractednextgroup, +% \@IEEEextractednextfirstgroup, \@IEEEextractednextgroupfirsttoken, +% \@IEEEextractednextgroupfirsttokenmacro, and +% \@IEEEextractednextfirsttokensdiscarded. +% All tokens/groups after the first group, including any enclosing braces, +% are stored in the macro \@IEEEextractedafterfirstgroupremain which will +% be empty if none exist. +% +% For example: +% \@IEEEextracttokengroups{{{ab}{cd}}{{ef}g}} +% will result in: +% +% \@IEEEextracttokengroupsarg ==> a macro containing {{ab}{cd}}{{ef}g} +% \@IEEEextractedfirstgroup ==> a macro containing {ab}{cd} +% \@IEEEextractedafterfirstgroupremain ==> a macro containing {{ef}g} +% \@IEEEextractedfirsttoken ==> the letter a +% \@IEEEextractedfirsttokenmacro ==> a macro containing a +% \@IEEEextractedfirsttokensdiscarded ==> a macro containing bcd +% \@IEEEextractedfirstfirstgroup ==> a macro containing ab +% \@IEEEextractednextgroup ==> a macro containing {ef}g +% \@IEEEextractednextfirsttoken ==> the letter e +% \@IEEEextractednextfirsttokenmacro ==> a macro containing e +% \@IEEEextractednextfirsttokensdiscarded ==> a macro containing fg +% \@IEEEextractednextfirstgroup ==> a macro containing ef +% +% If given an empty argument, \@IEEEextractedfirsttoken and +% \@IEEEextractednextfirsttoken will be set to \relax +% and all the macros will be empty. +% the *-star form, \@IEEEextracttokengroups*, does not expand its argument +% contents during processing. +% +% Depends on: \@IEEEextractgroup, \@IEEEextracttoken +\def\@IEEEextracttokengroups{\@ifstar{\let\@IEEEextracttokengroupsdef=\def\@@IEEEextracttokengroups}{\let\@IEEEextracttokengroupsdef=\edef\@@IEEEextracttokengroups}} +\def\@@IEEEextracttokengroups#1{\@IEEEextracttokengroupsdef\@IEEEextracttokengroupsarg{#1}\relax +% begin extraction, these functions are safe with empty arguments +% first group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextracttokengroupsarg}\relax +\let\@IEEEextractedfirstgroup\@IEEEextractedgroup +\let\@IEEEextractedafterfirstgroupremain\@IEEEextractedgroupremain +\expandafter\@IEEEextracttoken\expandafter*\expandafter{\@IEEEextractedfirstgroup}\relax +\let\@IEEEextractedfirsttoken\@IEEEextractedtoken +\let\@IEEEextractedfirsttokenmacro\@IEEEextractedtokenmacro +\let\@IEEEextractedfirsttokensdiscarded\@IEEEextractedtokensdiscarded +% first first group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextractedfirstgroup}\relax +\let\@IEEEextractedfirstfirstgroup\@IEEEextractedgroup +% next group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextractedafterfirstgroupremain}\relax +\let\@IEEEextractednextgroup\@IEEEextractedgroup +\expandafter\@IEEEextracttoken\expandafter*\expandafter{\@IEEEextractednextgroup}\relax +\let\@IEEEextractednextfirsttoken\@IEEEextractedtoken +\let\@IEEEextractednextfirsttokenmacro\@IEEEextractedtokenmacro +\let\@IEEEextractednextfirsttokensdiscarded\@IEEEextractedtokensdiscarded +% next first group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextractednextgroup}\relax +\let\@IEEEextractednextfirstgroup\@IEEEextractedgroup} + + +%% -- End of Command Argument Scanning Support Functions -- + + + + +%% +%% START OF IEEEeqnarray DEFINITIONS +%% +%% Inspired by the concepts, examples, and previous works of LaTeX +%% coders and developers such as Donald Arseneau, Fred Bartlett, +%% David Carlisle, Tony Liu, Frank Mittelbach, Piet van Oostrum, +%% Roland Winkler and Mark Wooding. +%% I don't make the claim that my work here is even near their calibre. ;) + + +\newif\if@IEEEeqnarrayboxnojot% flag to indicate if the environment was called as the star form +\@IEEEeqnarrayboxnojotfalse + +\newif\if@advanceIEEEeqncolcnt% tracks if the environment should advance the col counter +% allows a way to make an \IEEEeqnarraybox that can be used within an \IEEEeqnarray +% used by IEEEeqnarraymulticol so that it can work properly in both +\@advanceIEEEeqncolcnttrue + +\newcount\@IEEEeqnnumcols % tracks how many IEEEeqnarray cols are defined +\newcount\@IEEEeqncolcnt % tracks how many IEEEeqnarray cols the user actually used + + +% The default math style used by the columns +\def\IEEEeqnarraymathstyle{\displaystyle} +% The default text style used by the columns +% default to using the current font +\def\IEEEeqnarraytextstyle{\relax} + +% like the iedlistdecl but for \IEEEeqnarray +\def\IEEEeqnarraydecl{\relax} +\def\IEEEeqnarrayboxdecl{\relax} + + + +% V1.8 flags to indicate that equation numbering is to persist +\newif\if@IEEEeqnumpersist% +\@IEEEeqnumpersistfalse +\newif\if@IEEEsubeqnumpersist% +\@IEEEsubeqnumpersistfalse +% +% V1.8 flags to indicate if (sub)equation number of last line was preadvanced +\newif\if@IEEEeqnumpreadv% +\@IEEEeqnumpreadvfalse +\newif\if@IEEEsubeqnumpreadv% +\@IEEEsubeqnumpreadvfalse + +\newcount\@IEEEsubeqnnumrollback% saves previous value of IEEEsubequation number in case we need to restore it + +% \yesnumber is the opposite of \nonumber +% a novel concept with the same def as the equationarray package +% However, we give IEEE versions too since some LaTeX packages such as +% the MDWtools mathenv.sty redefine \nonumber to something else. +% This command is intended for use in non-IEEEeqnarray math environments +\providecommand{\yesnumber}{\global\@eqnswtrue} + + +% IEEEyes/nonumber +% V1.8 add persistant * forms +% These commands can alter the type of equation an IEEEeqnarray line is. +\def\IEEEyesnumber{\@ifstar{\global\@IEEEeqnumpersisttrue\global\@IEEEsubeqnumpersistfalse\@IEEEyesnumber}{\@IEEEyesnumber}} + +\def\@IEEEyesnumber{\global\@eqnswtrue +\if@IEEEeqnarrayISinner% alter counters and label only inside an IEEEeqnarray +\ifnum\c@IEEEsubequation>0\relax + \stepcounter{equation}\setcounter{IEEEsubequation}{0}\gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label +\fi +% even if we reached this eqn num via a preadv, it is legit now +\global\@IEEEeqnumpreadvfalse\global\@IEEEsubeqnumpreadvfalse +\fi} + +\def\IEEEnonumber{\@ifstar{\global\@IEEEeqnumpersistfalse\global\@IEEEsubeqnumpersistfalse\global\@eqnswfalse}{\global\@eqnswfalse}} + + +\def\IEEEyessubnumber{\@ifstar{\global\@IEEEsubeqnumpersisttrue\@IEEEyessubnumber}{\@IEEEyessubnumber}} +% +\def\@IEEEyessubnumber{\if@IEEEeqnarrayISinner% alter counters and label only inside an IEEEeqnarray + \ifnum\c@IEEEsubequation>0\relax% if it already is a subequation, we are good to go as-is + \else% if we are a regular equation we have to watch out for two cases + \if@IEEEeqnumpreadv% if this equation is the result of a preadvance, backout and bump the sub eqnnum + \global\advance\c@equation\m@ne\global\c@IEEEsubequation=\@IEEEsubeqnnumrollback\addtocounter{IEEEsubequation}{1}\relax + \else% non-preadvanced equations just need initialization of their sub eqnnum + \setcounter{IEEEsubequation}{1}\relax + \fi + \fi% fi already is subequation + \gdef\@currentlabel{\p@IEEEsubequation\theIEEEsubequation}\relax + \gdef\@currentHref{\@IEEEtheHrefsubequation}% setup hyperref label + \global\@IEEEeqnumpreadvfalse\global\@IEEEsubeqnumpreadvfalse% no longer a preadv anymore + \global\@eqnswtrue +\fi} + + +\def\IEEEnosubnumber{\@ifstar{\global\@IEEEsubeqnumpersistfalse\@IEEEnosubnumber}{\@IEEEnosubnumber}} +% +\def\@IEEEnosubnumber{\if@IEEEeqnarrayISinner% alter counters and label only inside an IEEEeqnarray + \if@eqnsw % we do nothing unless we know we will display because we play with the counters here + % if it currently is a subequation, bump up to the next equation number and turn off the subequation + \ifnum\c@IEEEsubequation>0\relax\addtocounter{equation}{1}\setcounter{IEEEsubequation}{0}\relax + \fi + \global\@IEEEeqnumpreadvfalse\global\@IEEEsubeqnumpreadvfalse% no longer a preadv anymore + \gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \fi +\fi} + + + +% allows users to "push away" equations that get too close to the equation numbers +\def\IEEEeqnarraynumspace{\hphantom{\ifnum\c@IEEEsubequation>0\relax\theIEEEsubequationdis\else\theequationdis\fi}} + +% provides a way to span multiple columns within IEEEeqnarray environments +% will consider \if@advanceIEEEeqncolcnt before globally advancing the +% column counter - so as to work within \IEEEeqnarraybox +% usage: \IEEEeqnarraymulticol{number cols. to span}{col type}{cell text} +\long\def\IEEEeqnarraymulticol#1#2#3{\multispan{#1}\relax +% check if column is defined for the precolumn definition +% We have to be careful here because TeX scans for & even within an \iffalse +% where it does not expand macros. So, if we used only one \ifx and a #3 +% appeared in the false branch and the user inserted another alignment +% structure that uses & in the \IEEEeqnarraymulticol{}, TeX will not see that +% there is an inner alignment in the false branch yet still will see any & +% there and will think that they apply to the outer alignment resulting in an +% incomplete \ifx error. +% So, here we use separate checks for the pre and post parts in order to keep +% the #3 outside of all conditionals. +\relax\expandafter\ifx\csname @IEEEeqnarraycolDEF#2\endcsname\@IEEEeqnarraycolisdefined\relax +\csname @IEEEeqnarraycolPRE#2\endcsname +\else% if not, error and use default type +\@IEEEclspkgerror{Invalid column type "#2" in \string\IEEEeqnarraymulticol.\MessageBreak +Using a default centering column instead}% +{You must define IEEEeqnarray column types before use.}% +\csname @IEEEeqnarraycolPRE@IEEEdefault\endcsname +\fi +% The ten \relax are to help prevent misleading error messages in case a user +% accidently inserted a macro that tries to acquire additional arguments. +#3\relax\relax\relax\relax\relax\relax\relax\relax\relax\relax +% check if column is defined for the postcolumn definition +\expandafter\ifx\csname @IEEEeqnarraycolDEF#2\endcsname\@IEEEeqnarraycolisdefined\relax +\csname @IEEEeqnarraycolPOST#2\endcsname +\else% if not, use the default type +\csname @IEEEeqnarraycolPOST@IEEEdefault\endcsname +\fi +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by #1\relax\fi} + +% like \omit, but maintains track of the column counter for \IEEEeqnarray +\def\IEEEeqnarrayomit{\omit\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by 1\relax\fi} + + +% provides a way to define a letter referenced column type +% usage: \IEEEeqnarraydefcol{col. type letter/name}{pre insertion text}{post insertion text} +\def\IEEEeqnarraydefcol#1#2#3{\expandafter\def\csname @IEEEeqnarraycolPRE#1\endcsname{#2}% +\expandafter\def\csname @IEEEeqnarraycolPOST#1\endcsname{#3}% +\expandafter\def\csname @IEEEeqnarraycolDEF#1\endcsname{1}} + + +% provides a way to define a numerically referenced inter-column glue types +% usage: \IEEEeqnarraydefcolsep{col. glue number}{glue definition} +\def\IEEEeqnarraydefcolsep#1#2{\expandafter\def\csname @IEEEeqnarraycolSEP\romannumeral #1\endcsname{#2}% +\expandafter\def\csname @IEEEeqnarraycolSEPDEF\romannumeral #1\endcsname{1}} + + +\def\@IEEEeqnarraycolisdefined{1}% just a macro for 1, used for checking undefined column types + + +% expands and appends the given argument to the \@IEEEtrantmptoksA token list +% used to build up the \halign preamble +\def\@IEEEappendtoksA#1{\edef\@@IEEEappendtoksA{\@IEEEtrantmptoksA={\the\@IEEEtrantmptoksA #1}}% +\@@IEEEappendtoksA} + +% also appends to \@IEEEtrantmptoksA, but does not expand the argument +% uses \toks8 as a scratchpad register +\def\@IEEEappendNOEXPANDtoksA#1{\toks8={#1}% +\edef\@@IEEEappendNOEXPANDtoksA{\@IEEEtrantmptoksA={\the\@IEEEtrantmptoksA\the\toks8}}% +\@@IEEEappendNOEXPANDtoksA} + +% define some common column types for the user +% math +\IEEEeqnarraydefcol{l}{$\IEEEeqnarraymathstyle}{$\hfil} +\IEEEeqnarraydefcol{c}{\hfil$\IEEEeqnarraymathstyle}{$\hfil} +\IEEEeqnarraydefcol{r}{\hfil$\IEEEeqnarraymathstyle}{$} +\IEEEeqnarraydefcol{L}{$\IEEEeqnarraymathstyle{}}{{}$\hfil} +\IEEEeqnarraydefcol{C}{\hfil$\IEEEeqnarraymathstyle{}}{{}$\hfil} +\IEEEeqnarraydefcol{R}{\hfil$\IEEEeqnarraymathstyle{}}{{}$} +% text +\IEEEeqnarraydefcol{s}{\IEEEeqnarraytextstyle}{\hfil} +\IEEEeqnarraydefcol{t}{\hfil\IEEEeqnarraytextstyle}{\hfil} +\IEEEeqnarraydefcol{u}{\hfil\IEEEeqnarraytextstyle}{} + +% vertical rules +\IEEEeqnarraydefcol{v}{}{\vrule width\arrayrulewidth} +\IEEEeqnarraydefcol{vv}{\vrule width\arrayrulewidth\hfil}{\hfil\vrule width\arrayrulewidth} +\IEEEeqnarraydefcol{V}{}{\vrule width\arrayrulewidth\hskip\doublerulesep\vrule width\arrayrulewidth} +\IEEEeqnarraydefcol{VV}{\vrule width\arrayrulewidth\hskip\doublerulesep\vrule width\arrayrulewidth\hfil}% +{\hfil\vrule width\arrayrulewidth\hskip\doublerulesep\vrule width\arrayrulewidth} + +% horizontal rules +\IEEEeqnarraydefcol{h}{}{\leaders\hrule height\arrayrulewidth\hfil} +\IEEEeqnarraydefcol{H}{}{\leaders\vbox{\hrule width\arrayrulewidth\vskip\doublerulesep\hrule width\arrayrulewidth}\hfil} + +% plain +\IEEEeqnarraydefcol{x}{}{} +\IEEEeqnarraydefcol{X}{$}{$} + +% the default column type to use in the event a column type is not defined +\IEEEeqnarraydefcol{@IEEEdefault}{\hfil$\IEEEeqnarraymathstyle}{$\hfil} + + +% a zero tabskip (used for "-" col types) +\def\@IEEEeqnarraycolSEPzero{0pt plus 0pt minus 0pt} +% a centering tabskip (used for "+" col types) +\def\@IEEEeqnarraycolSEPcenter{1000pt plus 0pt minus 1000pt} + +% top level default tabskip glues for the start, end, and inter-column +% may be reset within environments not always at the top level, e.g., \IEEEeqnarraybox +\edef\@IEEEeqnarraycolSEPdefaultstart{\@IEEEeqnarraycolSEPcenter}% default start glue +\edef\@IEEEeqnarraycolSEPdefaultend{\@IEEEeqnarraycolSEPcenter}% default end glue +\edef\@IEEEeqnarraycolSEPdefaultmid{\@IEEEeqnarraycolSEPzero}% default inter-column glue + + + +% creates a vertical rule that extends from the bottom to the top a a cell +% Provided in case other packages redefine \vline some other way. +% usage: \IEEEeqnarrayvrule[rule thickness] +% If no argument is provided, \arrayrulewidth will be used for the rule thickness. +\newcommand\IEEEeqnarrayvrule[1][\arrayrulewidth]{\vrule\@width#1\relax} + +% creates a blank separator row +% usage: \IEEEeqnarrayseprow[separation length][font size commands] +% default is \IEEEeqnarrayseprow[0.25\normalbaselineskip][\relax] +% blank arguments inherit the default values +% uses \skip5 as a scratch register - calls \@IEEEeqnarraystrutsize which uses more scratch registers +\def\IEEEeqnarrayseprow{\relax\@ifnextchar[{\@IEEEeqnarrayseprow}{\@IEEEeqnarrayseprow[0.25\normalbaselineskip]}} +\def\@IEEEeqnarrayseprow[#1]{\relax\@ifnextchar[{\@@IEEEeqnarrayseprow[#1]}{\@@IEEEeqnarrayseprow[#1][\relax]}} +\def\@@IEEEeqnarrayseprow[#1][#2]{\def\@IEEEeqnarrayseprowARGONE{#1}% +\ifx\@IEEEeqnarrayseprowARGONE\@empty% +% get the skip value, based on the font commands +% use skip5 because \IEEEeqnarraystrutsize uses \skip0, \skip2, \skip3 +% assign within a bogus box to confine the font changes +{\setbox0=\hbox{#2\relax\global\skip5=0.25\normalbaselineskip}}% +\else% +{\setbox0=\hbox{#2\relax\global\skip5=#1}}% +\fi% +\@IEEEeqnarrayhoptolastcolumn\IEEEeqnarraystrutsize{\skip5}{0pt}[\relax]\relax} + +% creates a blank separator row, but omits all the column templates +% usage: \IEEEeqnarrayseprowcut[separation length][font size commands] +% default is \IEEEeqnarrayseprowcut[0.25\normalbaselineskip][\relax] +% blank arguments inherit the default values +% uses \skip5 as a scratch register - calls \@IEEEeqnarraystrutsize which uses more scratch registers +\def\IEEEeqnarrayseprowcut{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarrayseprowcut}{\@IEEEeqnarrayseprowcut[0.25\normalbaselineskip]}} +\def\@IEEEeqnarrayseprowcut[#1]{\relax\@ifnextchar[{\@@IEEEeqnarrayseprowcut[#1]}{\@@IEEEeqnarrayseprowcut[#1][\relax]}} +\def\@@IEEEeqnarrayseprowcut[#1][#2]{\def\@IEEEeqnarrayseprowARGONE{#1}% +\ifx\@IEEEeqnarrayseprowARGONE\@empty% +% get the skip value, based on the font commands +% use skip5 because \IEEEeqnarraystrutsize uses \skip0, \skip2, \skip3 +% assign within a bogus box to confine the font changes +{\setbox0=\hbox{#2\relax\global\skip5=0.25\normalbaselineskip}}% +\else% +{\setbox0=\hbox{#2\relax\global\skip5=#1}}% +\fi% +\IEEEeqnarraystrutsize{\skip5}{0pt}[\relax]\relax} + + + +% draws a single rule across all the columns optional +% argument determines the rule width, \arrayrulewidth is the default +% updates column counter as needed and turns off struts +% usage: \IEEEeqnarrayrulerow[rule line thickness] +\def\IEEEeqnarrayrulerow{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarrayrulerow}{\@IEEEeqnarrayrulerow[\arrayrulewidth]}} +\def\@IEEEeqnarrayrulerow[#1]{\leaders\hrule height#1\hfil\relax% put in our rule +% turn off any struts +\IEEEeqnarraystrutsize{0pt}{0pt}[\relax]\relax} + + +% draws a double rule by using a single rule row, a separator row, and then +% another single rule row +% first optional argument determines the rule thicknesses, \arrayrulewidth is the default +% second optional argument determines the rule spacing, \doublerulesep is the default +% usage: \IEEEeqnarraydblrulerow[rule line thickness][rule spacing] +\def\IEEEeqnarraydblrulerow{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarraydblrulerow}{\@IEEEeqnarraydblrulerow[\arrayrulewidth]}} +\def\@IEEEeqnarraydblrulerow[#1]{\relax\@ifnextchar[{\@@IEEEeqnarraydblrulerow[#1]}% +{\@@IEEEeqnarraydblrulerow[#1][\doublerulesep]}} +\def\@@IEEEeqnarraydblrulerow[#1][#2]{\def\@IEEEeqnarraydblrulerowARG{#1}% +% we allow the user to say \IEEEeqnarraydblrulerow[][] +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]\relax% +\fi% +\def\@IEEEeqnarraydblrulerowARG{#2}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\\\IEEEeqnarrayseprow[\doublerulesep][\relax]% +\else% +\\\IEEEeqnarrayseprow[#2][\relax]% +\fi% +\\\multispan{\@IEEEeqnnumcols}% +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\def\@IEEEeqnarraydblrulerowARG{#1}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]% +\fi% +} + +% draws a double rule by using a single rule row, a separator (cutting) row, and then +% another single rule row +% first optional argument determines the rule thicknesses, \arrayrulewidth is the default +% second optional argument determines the rule spacing, \doublerulesep is the default +% usage: \IEEEeqnarraydblrulerow[rule line thickness][rule spacing] +\def\IEEEeqnarraydblrulerowcut{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarraydblrulerowcut}{\@IEEEeqnarraydblrulerowcut[\arrayrulewidth]}} +\def\@IEEEeqnarraydblrulerowcut[#1]{\relax\@ifnextchar[{\@@IEEEeqnarraydblrulerowcut[#1]}% +{\@@IEEEeqnarraydblrulerowcut[#1][\doublerulesep]}} +\def\@@IEEEeqnarraydblrulerowcut[#1][#2]{\def\@IEEEeqnarraydblrulerowARG{#1}% +% we allow the user to say \IEEEeqnarraydblrulerow[][] +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]% +\fi% +\def\@IEEEeqnarraydblrulerowARG{#2}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\\\IEEEeqnarrayseprowcut[\doublerulesep][\relax]% +\else% +\\\IEEEeqnarrayseprowcut[#2][\relax]% +\fi% +\\\multispan{\@IEEEeqnnumcols}% +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\def\@IEEEeqnarraydblrulerowARG{#1}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]% +\fi% +} + + + +% inserts a full row's worth of &'s +% relies on \@IEEEeqnnumcols to provide the correct number of columns +% uses \@IEEEtrantmptoksA, \count0 as scratch registers +\def\@IEEEeqnarrayhoptolastcolumn{\@IEEEtrantmptoksA={}\count0=1\relax% +\loop% add cols if the user did not use them all +\ifnum\count0<\@IEEEeqnnumcols\relax% +\@IEEEappendtoksA{&}% +\advance\count0 by 1\relax% update the col count +\repeat% +\the\@IEEEtrantmptoksA%execute the &'s +} + + + +\newif\if@IEEEeqnarrayISinner % flag to indicate if we are within the lines +\@IEEEeqnarrayISinnerfalse % of an IEEEeqnarray - after the IEEEeqnarraydecl + +\edef\@IEEEeqnarrayTHEstrutheight{0pt} % height and depth of IEEEeqnarray struts +\edef\@IEEEeqnarrayTHEstrutdepth{0pt} + +\edef\@IEEEeqnarrayTHEmasterstrutheight{0pt} % default height and depth of +\edef\@IEEEeqnarrayTHEmasterstrutdepth{0pt} % struts within an IEEEeqnarray + +\edef\@IEEEeqnarrayTHEmasterstrutHSAVE{0pt} % saved master strut height +\edef\@IEEEeqnarrayTHEmasterstrutDSAVE{0pt} % and depth + +\newif\if@IEEEeqnarrayusemasterstrut % flag to indicate that the master strut value +\@IEEEeqnarrayusemasterstruttrue % is to be used + + + +% saves the strut height and depth of the master strut +\def\@IEEEeqnarraymasterstrutsave{\relax% +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +% remove stretchability +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% save values +\edef\@IEEEeqnarrayTHEmasterstrutHSAVE{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutDSAVE{\the\dimen2}} + +% restores the strut height and depth of the master strut +\def\@IEEEeqnarraymasterstrutrestore{\relax% +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutHSAVE\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutDSAVE\relax% +% remove stretchability +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% restore values +\edef\@IEEEeqnarrayTHEmasterstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutdepth{\the\dimen2}} + + +% globally restores the strut height and depth to the +% master values and sets the master strut flag to true +\def\@IEEEeqnarraystrutreset{\relax% +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +% remove stretchability +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% restore values +\xdef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\xdef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\global\@IEEEeqnarrayusemasterstruttrue} + + +% if the master strut is not to be used, make the current +% values of \@IEEEeqnarrayTHEstrutheight, \@IEEEeqnarrayTHEstrutdepth +% and the use master strut flag, global +% this allows user strut commands issued in the last column to be carried +% into the isolation/strut column +\def\@IEEEeqnarrayglobalizestrutstatus{\relax% +\if@IEEEeqnarrayusemasterstrut\else% +\xdef\@IEEEeqnarrayTHEstrutheight{\@IEEEeqnarrayTHEstrutheight}% +\xdef\@IEEEeqnarrayTHEstrutdepth{\@IEEEeqnarrayTHEstrutdepth}% +\global\@IEEEeqnarrayusemasterstrutfalse% +\fi} + + + +% usage: \IEEEeqnarraystrutsize{height}{depth}[font size commands] +% If called outside the lines of an IEEEeqnarray, sets the height +% and depth of both the master and local struts. If called inside +% an IEEEeqnarray line, sets the height and depth of the local strut +% only and sets the flag to indicate the use of the local strut +% values. If the height or depth is left blank, 0.7\normalbaselineskip +% and 0.3\normalbaselineskip will be used, respectively. +% The optional argument can be used to evaluate the lengths under +% a different font size and styles. If none is specified, the current +% font is used. +% uses scratch registers \skip0, \skip2, \skip3, \dimen0, \dimen2 +\def\IEEEeqnarraystrutsize#1#2{\relax\@ifnextchar[{\@IEEEeqnarraystrutsize{#1}{#2}}{\@IEEEeqnarraystrutsize{#1}{#2}[\relax]}} +\def\@IEEEeqnarraystrutsize#1#2[#3]{\def\@IEEEeqnarraystrutsizeARG{#1}% +\ifx\@IEEEeqnarraystrutsizeARG\@empty% +{\setbox0=\hbox{#3\relax\global\skip3=0.7\normalbaselineskip}}% +\skip0=\skip3\relax% +\else% arg one present +{\setbox0=\hbox{#3\relax\global\skip3=#1\relax}}% +\skip0=\skip3\relax% +\fi% if null arg +\def\@IEEEeqnarraystrutsizeARG{#2}% +\ifx\@IEEEeqnarraystrutsizeARG\@empty% +{\setbox0=\hbox{#3\relax\global\skip3=0.3\normalbaselineskip}}% +\skip2=\skip3\relax% +\else% arg two present +{\setbox0=\hbox{#3\relax\global\skip3=#2\relax}}% +\skip2=\skip3\relax% +\fi% if null arg +% remove stretchability, just to be safe +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% dimen0 = height, dimen2 = depth +\if@IEEEeqnarrayISinner% inner does not touch master strut size +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstrutfalse% do not use master +\else% outer, have to set master strut too +\edef\@IEEEeqnarrayTHEmasterstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutdepth{\the\dimen2}% +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstruttrue% use master strut +\fi} + + +% usage: \IEEEeqnarraystrutsizeadd{added height}{added depth}[font size commands] +% If called outside the lines of an IEEEeqnarray, adds the given height +% and depth to both the master and local struts. +% If called inside an IEEEeqnarray line, adds the given height and depth +% to the local strut only and sets the flag to indicate the use +% of the local strut values. +% In both cases, if a height or depth is left blank, 0pt is used instead. +% The optional argument can be used to evaluate the lengths under +% a different font size and styles. If none is specified, the current +% font is used. +% uses scratch registers \skip0, \skip2, \skip3, \dimen0, \dimen2 +\def\IEEEeqnarraystrutsizeadd#1#2{\relax\@ifnextchar[{\@IEEEeqnarraystrutsizeadd{#1}{#2}}{\@IEEEeqnarraystrutsizeadd{#1}{#2}[\relax]}} +\def\@IEEEeqnarraystrutsizeadd#1#2[#3]{\def\@IEEEeqnarraystrutsizearg{#1}% +\ifx\@IEEEeqnarraystrutsizearg\@empty% +\skip0=0pt\relax% +\else% arg one present +{\setbox0=\hbox{#3\relax\global\skip3=#1}}% +\skip0=\skip3\relax% +\fi% if null arg +\def\@IEEEeqnarraystrutsizearg{#2}% +\ifx\@IEEEeqnarraystrutsizearg\@empty% +\skip2=0pt\relax% +\else% arg two present +{\setbox0=\hbox{#3\relax\global\skip3=#2}}% +\skip2=\skip3\relax% +\fi% if null arg +% remove stretchability, just to be safe +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% dimen0 = height, dimen2 = depth +\if@IEEEeqnarrayISinner% inner does not touch master strut size +% get local strut size +\expandafter\skip0=\@IEEEeqnarrayTHEstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEstrutdepth\relax% +% add it to the user supplied values +\advance\dimen0 by \skip0\relax% +\advance\dimen2 by \skip2\relax% +% update the local strut size +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstrutfalse% do not use master +\else% outer, have to set master strut too +% get master strut size +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +% add it to the user supplied values +\advance\dimen0 by \skip0\relax% +\advance\dimen2 by \skip2\relax% +% update the local and master strut sizes +\edef\@IEEEeqnarrayTHEmasterstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutdepth{\the\dimen2}% +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstruttrue% use master strut +\fi} + + +% allow user a way to see the struts +\newif\ifIEEEvisiblestruts +\IEEEvisiblestrutsfalse + +% inserts an invisible strut using the master or local strut values +% uses scratch registers \skip0, \skip2, \dimen0, \dimen2 +\def\@IEEEeqnarrayinsertstrut{\relax% +\if@IEEEeqnarrayusemasterstrut +% get master strut size +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +\else% +% get local strut size +\expandafter\skip0=\@IEEEeqnarrayTHEstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEstrutdepth\relax% +\fi% +% remove stretchability, probably not needed +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% dimen0 = height, dimen2 = depth +% allow user to see struts if desired +\ifIEEEvisiblestruts% +\vrule width0.2pt height\dimen0 depth\dimen2\relax% +\else% +\vrule width0pt height\dimen0 depth\dimen2\relax\fi} + + +% creates an invisible strut, useable even outside \IEEEeqnarray +% if \IEEEvisiblestrutstrue, the strut will be visible and 0.2pt wide. +% usage: \IEEEstrut[height][depth][font size commands] +% default is \IEEEstrut[0.7\normalbaselineskip][0.3\normalbaselineskip][\relax] +% blank arguments inherit the default values +% uses \dimen0, \dimen2, \skip0, \skip2 +\def\IEEEstrut{\relax\@ifnextchar[{\@IEEEstrut}{\@IEEEstrut[0.7\normalbaselineskip]}} +\def\@IEEEstrut[#1]{\relax\@ifnextchar[{\@@IEEEstrut[#1]}{\@@IEEEstrut[#1][0.3\normalbaselineskip]}} +\def\@@IEEEstrut[#1][#2]{\relax\@ifnextchar[{\@@@IEEEstrut[#1][#2]}{\@@@IEEEstrut[#1][#2][\relax]}} +\def\@@@IEEEstrut[#1][#2][#3]{\mbox{#3\relax% +\def\@IEEEstrutARG{#1}% +\ifx\@IEEEstrutARG\@empty% +\skip0=0.7\normalbaselineskip\relax% +\else% +\skip0=#1\relax% +\fi% +\def\@IEEEstrutARG{#2}% +\ifx\@IEEEstrutARG\@empty% +\skip2=0.3\normalbaselineskip\relax% +\else% +\skip2=#2\relax% +\fi% +% remove stretchability, probably not needed +\dimen0\skip0\relax% +\dimen2\skip2\relax% +\ifIEEEvisiblestruts% +\vrule width0.2pt height\dimen0 depth\dimen2\relax% +\else% +\vrule width0.0pt height\dimen0 depth\dimen2\relax\fi}} + + +% enables strut mode by setting a default strut size and then zeroing the +% \baselineskip, \lineskip, \lineskiplimit and \jot +\def\IEEEeqnarraystrutmode{\IEEEeqnarraystrutsize{0.7\normalbaselineskip}{0.3\normalbaselineskip}[\relax]% +\baselineskip=0pt\lineskip=0pt\lineskiplimit=0pt\jot=0pt} + + +% equation and subequation forms to use to setup hyperref's \@currentHref +\def\@IEEEtheHrefequation{equation.\theHequation} +\def\@IEEEtheHrefsubequation{equation.\theHequation\alph{IEEEsubequation}} + + +\def\IEEEeqnarray{\@IEEEeqnumpersisttrue\@IEEEsubeqnumpersistfalse\@IEEEeqnarray} +\def\endIEEEeqnarray{\end@IEEEeqnarray} + +\@namedef{IEEEeqnarray*}{\@IEEEeqnumpersistfalse\@IEEEsubeqnumpersistfalse\@IEEEeqnarray} +\@namedef{endIEEEeqnarray*}{\end@IEEEeqnarray} + + +% \IEEEeqnarray is an enhanced \eqnarray. +% The star form defaults to not putting equation numbers at the end of each row. +% usage: \IEEEeqnarray[decl]{cols} +\def\@IEEEeqnarray{\relax\@ifnextchar[{\@@IEEEeqnarray}{\@@IEEEeqnarray[\relax]}} +% We have to be careful here to normalize catcodes just before acquiring the +% cols as that specification may contain punctuation which could be subject +% to document catcode changes. +\def\@@IEEEeqnarray[#1]{\begingroup\IEEEnormalcatcodes\@@@IEEEeqnarray[#1]} +\def\@@@IEEEeqnarray[#1]#2{\endgroup + % default to showing the equation number or not based on whether or not + % the star form was involked + \if@IEEEeqnumpersist\global\@eqnswtrue + \else% not the star form + \global\@eqnswfalse + \fi% if star form + % provide a basic hyperref \theHequation if this has not already been setup (hyperref not loaded, or no section counter) + \@ifundefined{theHequation}{\def\theHequation{\arabic{equation}}}{}\relax + % provide dummy hyperref commands in case hyperref is not loaded + \providecommand{\Hy@raisedlink}[1]{}\relax + \providecommand{\hyper@anchorstart}[1]{}\relax + \providecommand{\hyper@anchorend}{}\relax + \providecommand{\@currentHref}{}\relax + \@IEEEeqnumpreadvfalse% reset eqnpreadv flag + \@IEEEsubeqnumpreadvfalse% reset subeqnpreadv flag + \@IEEEeqnarrayISinnerfalse% not yet within the lines of the halign + \@IEEEeqnarraystrutsize{0pt}{0pt}[\relax]% turn off struts by default + \@IEEEeqnarrayusemasterstruttrue% use master strut till user asks otherwise + \IEEEvisiblestrutsfalse% diagnostic mode defaults to off + % no extra space unless the user specifically requests it + \lineskip=0pt\relax + \lineskiplimit=0pt\relax + \baselineskip=\normalbaselineskip\relax% + \jot=\IEEEnormaljot\relax% + \mathsurround\z@\relax% no extra spacing around math + \@advanceIEEEeqncolcnttrue% advance the col counter for each col the user uses, + % used in \IEEEeqnarraymulticol and in the preamble build + %V1.8 Here we preadvance to the next equation number. + % If the user later wants a continued subequation, we can roll back. + \global\@IEEEsubeqnnumrollback=\c@IEEEsubequation% + \stepcounter{equation}\@IEEEeqnumpreadvtrue% advance equation counter before first line + \setcounter{IEEEsubequation}{0}% no subequation yet + \let\@IEEEcurrentlabelsave\@currentlabel% save current label as we later change it globally + \let\@IEEEcurrentHrefsave\@currentHref% save current href label as we later change it globally + \def\@currentlabel{\p@equation\theequation}% redefine the ref label + \def\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \IEEEeqnarraydecl\relax% allow a way for the user to make global overrides + #1\relax% allow user to override defaults + \let\\\@IEEEeqnarraycr% replace newline with one that can put in eqn. numbers + \global\@IEEEeqncolcnt\z@% col. count = 0 for first line + \@IEEEbuildpreamble{#2}\relax% build the preamble and put it into \@IEEEtrantmptoksA + % put in the column for the equation number + \ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi% col separator for those after the first + \toks0={##}% + % advance the \@IEEEeqncolcnt for the isolation col, this helps with error checking + \@IEEEappendtoksA{\global\advance\@IEEEeqncolcnt by 1\relax}% + % add the isolation column + \@IEEEappendtoksA{\tabskip\z@skip\bgroup\the\toks0\egroup}% + % advance the \@IEEEeqncolcnt for the equation number col, this helps with error checking + \@IEEEappendtoksA{&\global\advance\@IEEEeqncolcnt by 1\relax}% + % add the equation number col to the preamble + \@IEEEappendtoksA{\tabskip\z@skip\hb@xt@\z@\bgroup\hss\the\toks0\egroup}% + % note \@IEEEeqnnumcols does not count the equation col or isolation col + % set the starting tabskip glue as determined by the preamble build + \tabskip=\@IEEEBPstartglue\relax + % begin the display alignment + \@IEEEeqnarrayISinnertrue% commands are now within the lines + $$\everycr{}\halign to\displaywidth\bgroup + % "exspand" the preamble + \span\the\@IEEEtrantmptoksA\cr} + +% enter isolation/strut column (or the next column if the user did not use +% every column), record the strut status, complete the columns, do the strut if needed, +% restore counters (to backout any equation setup for a next line that was never used) +% to their correct values and exit +\def\end@IEEEeqnarray{\@IEEEeqnarrayglobalizestrutstatus&\@@IEEEeqnarraycr\egroup +\if@IEEEsubeqnumpreadv\global\advance\c@IEEEsubequation\m@ne\fi +\if@IEEEeqnumpreadv\global\advance\c@equation\m@ne\global\c@IEEEsubequation=\@IEEEsubeqnnumrollback\fi +\global\let\@currentlabel\@IEEEcurrentlabelsave% restore current label +\global\let\@currentHref\@IEEEcurrentHrefsave% restore current href label +$$\@ignoretrue} + + +% IEEEeqnarray uses a modifed \\ instead of the plain \cr to +% end rows. This allows for things like \\*[vskip amount] +% These "cr" macros are modified versions of those for LaTeX2e's eqnarray +% the {\ifnum0=`} braces must be kept away from the last column to avoid +% altering spacing of its math, so we use & to advance to the next column +% as there is an isolation/strut column after the user's columns +\def\@IEEEeqnarraycr{\@IEEEeqnarrayglobalizestrutstatus&% save strut status and advance to next column + {\ifnum0=`}\fi + \@ifstar{% + \global\@eqpen\@M\@IEEEeqnarrayYCR + }{% + \global\@eqpen\interdisplaylinepenalty \@IEEEeqnarrayYCR + }% +} + +\def\@IEEEeqnarrayYCR{\@testopt\@IEEEeqnarrayXCR\z@skip} + +\def\@IEEEeqnarrayXCR[#1]{% + \ifnum0=`{\fi}% + \@@IEEEeqnarraycr + \noalign{\penalty\@eqpen\vskip\jot\vskip #1\relax}}% + +\def\@@IEEEeqnarraycr{\@IEEEtrantmptoksA={}% clear token register + \advance\@IEEEeqncolcnt by -1\relax% adjust col count because of the isolation column + \ifnum\@IEEEeqncolcnt>\@IEEEeqnnumcols\relax + \@IEEEclspkgerror{Too many columns within the IEEEeqnarray\MessageBreak + environment}% + {Use fewer \string &'s or put more columns in the IEEEeqnarray column\MessageBreak + specifications.}\relax% + \else + \loop% add cols if the user did not use them all + \ifnum\@IEEEeqncolcnt<\@IEEEeqnnumcols\relax + \@IEEEappendtoksA{&}% + \advance\@IEEEeqncolcnt by 1\relax% update the col count + \repeat + % this number of &'s will take us the the isolation column + \fi + % execute the &'s + \the\@IEEEtrantmptoksA% + % handle the strut/isolation column + \@IEEEeqnarrayinsertstrut% do the strut if needed + \@IEEEeqnarraystrutreset% reset the strut system for next line or IEEEeqnarray + &% and enter the equation number column + \if@eqnsw% only if we display something + \Hy@raisedlink{\hyper@anchorstart{\@currentHref}}% start a hyperref anchor + \global\@IEEEeqnumpreadvfalse\relax% displaying an equation number means + \global\@IEEEsubeqnumpreadvfalse\relax% the equation counters point to valid equations + % V1.8 Here we setup the counters, currentlabel and status for what would be the *next* + % equation line as would be the case under the current settings. However, there are two problems. + % One problem is that there might not ever be a next line. The second problem is that the user + % may later alter the meaning of a line with commands such as \IEEEyessubnumber. So, to handle + % these cases we have to record the current values of the (sub)equation counters and revert back + % to them if the next line is changed or never comes. The \if@IEEEeqnumpreadv, \if@IEEEsubeqnumpreadv + % and \@IEEEsubeqnnumrollback stuff tracks this. + % The logic to handle all this is surprisingly complex, but a nice feature of the approach here is + % that the equation counters and labels remain valid for what the line would be unless a + % \IEEEyessubnumber et al. later changes it. So, any hyperref links are always correct. + \ifnum\c@IEEEsubequation>0\relax% handle subequation + \theIEEEsubequationdis\relax + \if@IEEEsubeqnumpersist% setup for default type of next line + \stepcounter{IEEEsubequation}\global\@IEEEsubeqnumpreadvtrue\relax + \gdef\@currentlabel{\p@IEEEsubequation\theIEEEsubequation}\relax + \gdef\@currentHref{\@IEEEtheHrefsubequation}% setup hyperref label + \else + % if no subeqnum persist, go ahead and setup for a new equation number + \global\@IEEEsubeqnnumrollback=\c@IEEEsubequation + \stepcounter{equation}\global\@IEEEeqnumpreadvtrue\relax + \setcounter{IEEEsubequation}{0}\gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \fi + \else% display a standard equation number + \theequationdis\relax + \setcounter{IEEEsubequation}{0}\relax% not really needed + \if@IEEEsubeqnumpersist% setup for default type of next line + % subequations that follow plain equations carry the same equation number e.g, 5, 5a rather than 5, 6a + \stepcounter{IEEEsubequation}\global\@IEEEsubeqnumpreadvtrue\relax + \gdef\@currentlabel{\p@IEEEsubequation\theIEEEsubequation}\relax + \gdef\@currentHref{\@IEEEtheHrefsubequation}% setup hyperref label + \else + % if no subeqnum persist, go ahead and setup for a new equation number + \global\@IEEEsubeqnnumrollback=\c@IEEEsubequation + \stepcounter{equation}\global\@IEEEeqnumpreadvtrue\relax + \setcounter{IEEEsubequation}{0}\gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \fi + \fi% + \Hy@raisedlink{\hyper@anchorend}% end hyperref anchor + \fi% fi only if we display something + % reset the flags to indicate the default preferences of the display of equation numbers + \if@IEEEeqnumpersist\global\@eqnswtrue\else\global\@eqnswfalse\fi + \if@IEEEsubeqnumpersist\global\@eqnswtrue\fi% ditto for the subequation flag + % reset the number of columns the user actually used + \global\@IEEEeqncolcnt\z@\relax + % the real end of the line + \cr} + + + + + +% \IEEEeqnarraybox is like \IEEEeqnarray except the box form puts everything +% inside a vtop, vbox, or vcenter box depending on the letter in the second +% optional argument (t,b,c). Vbox is the default. Unlike \IEEEeqnarray, +% equation numbers are not displayed and \IEEEeqnarraybox can be nested. +% \IEEEeqnarrayboxm is for math mode (like \array) and does not put the vbox +% within an hbox. +% \IEEEeqnarrayboxt is for text mode (like \tabular) and puts the vbox within +% a \hbox{$ $} construct. +% \IEEEeqnarraybox will auto detect whether to use \IEEEeqnarrayboxm or +% \IEEEeqnarrayboxt depending on the math mode. +% The third optional argument specifies the width this box is to be set to - +% natural width is the default. +% The * forms do not add \jot line spacing +% usage: \IEEEeqnarraybox[decl][pos][width]{cols} +\def\IEEEeqnarrayboxm{\@IEEEeqnarrayboxnojotfalse\@IEEEeqnarrayboxHBOXSWfalse\@IEEEeqnarraybox} +\def\endIEEEeqnarrayboxm{\end@IEEEeqnarraybox} +\@namedef{IEEEeqnarrayboxm*}{\@IEEEeqnarrayboxnojottrue\@IEEEeqnarrayboxHBOXSWfalse\@IEEEeqnarraybox} +\@namedef{endIEEEeqnarrayboxm*}{\end@IEEEeqnarraybox} + +\def\IEEEeqnarrayboxt{\@IEEEeqnarrayboxnojotfalse\@IEEEeqnarrayboxHBOXSWtrue\@IEEEeqnarraybox} +\def\endIEEEeqnarrayboxt{\end@IEEEeqnarraybox} +\@namedef{IEEEeqnarrayboxt*}{\@IEEEeqnarrayboxnojottrue\@IEEEeqnarrayboxHBOXSWtrue\@IEEEeqnarraybox} +\@namedef{endIEEEeqnarrayboxt*}{\end@IEEEeqnarraybox} + +\def\IEEEeqnarraybox{\@IEEEeqnarrayboxnojotfalse\ifmmode\@IEEEeqnarrayboxHBOXSWfalse\else\@IEEEeqnarrayboxHBOXSWtrue\fi% +\@IEEEeqnarraybox} +\def\endIEEEeqnarraybox{\end@IEEEeqnarraybox} + +\@namedef{IEEEeqnarraybox*}{\@IEEEeqnarrayboxnojottrue\ifmmode\@IEEEeqnarrayboxHBOXSWfalse\else\@IEEEeqnarrayboxHBOXSWtrue\fi% +\@IEEEeqnarraybox} +\@namedef{endIEEEeqnarraybox*}{\end@IEEEeqnarraybox} + +% flag to indicate if the \IEEEeqnarraybox needs to put things into an hbox{$ $} +% for \vcenter in non-math mode +\newif\if@IEEEeqnarrayboxHBOXSW% +\@IEEEeqnarrayboxHBOXSWfalse + +\def\@IEEEeqnarraybox{\relax\@ifnextchar[{\@@IEEEeqnarraybox}{\@@IEEEeqnarraybox[\relax]}} +% We have to be careful here to normalize catcodes just before acquiring the +% cols as that specification may contain punctuation which could be subject +% to document catcode changes. +\def\@@IEEEeqnarraybox[#1]{\relax\begingroup\IEEEnormalcatcodes\@ifnextchar[{\@@@IEEEeqnarraybox[#1]}{\@@@IEEEeqnarraybox[#1][b]}} +\def\@@@IEEEeqnarraybox[#1][#2]{\relax\@ifnextchar[{\@@@@IEEEeqnarraybox[#1][#2]}{\@@@@IEEEeqnarraybox[#1][#2][\relax]}} + +% #1 = decl; #2 = t,b,c; #3 = width, #4 = col specs +\def\@@@@IEEEeqnarraybox[#1][#2][#3]#4{\endgroup\@IEEEeqnarrayISinnerfalse % not yet within the lines of the halign + \@IEEEeqnarraymasterstrutsave% save current master strut values + \@IEEEeqnarraystrutsize{0pt}{0pt}[\relax]% turn off struts by default + \@IEEEeqnarrayusemasterstruttrue% use master strut till user asks otherwise + \IEEEvisiblestrutsfalse% diagnostic mode defaults to off + % no extra space unless the user specifically requests it + \lineskip=0pt\relax% + \lineskiplimit=0pt\relax% + \baselineskip=\normalbaselineskip\relax% + \jot=\IEEEnormaljot\relax% + \mathsurround\z@\relax% no extra spacing around math + % the default end glues are zero for an \IEEEeqnarraybox + \edef\@IEEEeqnarraycolSEPdefaultstart{\@IEEEeqnarraycolSEPzero}% default start glue + \edef\@IEEEeqnarraycolSEPdefaultend{\@IEEEeqnarraycolSEPzero}% default end glue + \edef\@IEEEeqnarraycolSEPdefaultmid{\@IEEEeqnarraycolSEPzero}% default inter-column glue + \@advanceIEEEeqncolcntfalse% do not advance the col counter for each col the user uses, + % used in \IEEEeqnarraymulticol and in the preamble build + \IEEEeqnarrayboxdecl\relax% allow a way for the user to make global overrides + #1\relax% allow user to override defaults + \let\\\@IEEEeqnarrayboxcr% replace newline with one that allows optional spacing + \@IEEEbuildpreamble{#4}\relax% build the preamble and put it into \@IEEEtrantmptoksA + % add an isolation column to the preamble to stop \\'s {} from getting into the last col + \ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi% col separator for those after the first + \toks0={##}% + % add the isolation column to the preamble + \@IEEEappendtoksA{\tabskip\z@skip\bgroup\the\toks0\egroup}% + % set the starting tabskip glue as determined by the preamble build + \tabskip=\@IEEEBPstartglue\relax + % begin the alignment + \everycr{}% + % use only the very first token to determine the positioning + \@IEEEextracttoken{#2}\relax + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: IEEEeqnarraybox position specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi + % \@IEEEextractedtoken has the first token, the rest are ignored + % if we need to put things into and hbox and go into math mode, do so now + \if@IEEEeqnarrayboxHBOXSW \leavevmode \hbox \bgroup $\fi% + % use the appropriate vbox type + \if\@IEEEextractedtoken t\relax\vtop\else\if\@IEEEextractedtoken c\relax% + \vcenter\else\vbox\fi\fi\bgroup% + \@IEEEeqnarrayISinnertrue% commands are now within the lines + \ifx#3\relax\halign\else\halign to #3\relax\fi% + \bgroup + % "exspand" the preamble + \span\the\@IEEEtrantmptoksA\cr} + +% carry strut status and enter the isolation/strut column, +% exit from math mode if needed, and exit +\def\end@IEEEeqnarraybox{\@IEEEeqnarrayglobalizestrutstatus% carry strut status +&% enter isolation/strut column +\@IEEEeqnarrayinsertstrut% do strut if needed +\@IEEEeqnarraymasterstrutrestore% restore the previous master strut values +% reset the strut system for next IEEEeqnarray +% (sets local strut values back to previous master strut values) +\@IEEEeqnarraystrutreset% +% ensure last line, exit from halign, close vbox +\crcr\egroup\egroup% +% exit from math mode and close hbox if needed +\if@IEEEeqnarrayboxHBOXSW $\egroup\fi} + + + +% IEEEeqnarraybox uses a modifed \\ instead of the plain \cr to +% end rows. This allows for things like \\[vskip amount] +% This "cr" macros are modified versions those for LaTeX2e's eqnarray +% For IEEEeqnarraybox, \\* is the same as \\ +% the {\ifnum0=`} braces must be kept away from the last column to avoid +% altering spacing of its math, so we use & to advance to the isolation/strut column +% carry strut status into isolation/strut column +\def\@IEEEeqnarrayboxcr{\@IEEEeqnarrayglobalizestrutstatus% carry strut status +&% enter isolation/strut column +\@IEEEeqnarrayinsertstrut% do strut if needed +% reset the strut system for next line or IEEEeqnarray +\@IEEEeqnarraystrutreset% +{\ifnum0=`}\fi% +\@ifstar{\@IEEEeqnarrayboxYCR}{\@IEEEeqnarrayboxYCR}} + +% test and setup the optional argument to \\[] +\def\@IEEEeqnarrayboxYCR{\@testopt\@IEEEeqnarrayboxXCR\z@skip} + +% IEEEeqnarraybox does not automatically increase line spacing by \jot +\def\@IEEEeqnarrayboxXCR[#1]{\ifnum0=`{\fi}% +\cr\noalign{\if@IEEEeqnarrayboxnojot\else\vskip\jot\fi\vskip#1\relax}} + + + +% usage: \@IEEEbuildpreamble{column specifiers} +% starts the halign preamble build +% the assembled preamble is put in \@IEEEtrantmptoksA +\def\@IEEEbuildpreamble#1{\@IEEEtrantmptoksA={}% clear token register +\let\@IEEEBPcurtype=u%current column type is not yet known +\let\@IEEEBPprevtype=s%the previous column type was the start +\let\@IEEEBPnexttype=u%next column type is not yet known +% ensure these are valid +\def\@IEEEBPcurglue={0pt plus 0pt minus 0pt}% +\def\@IEEEBPcurcolname{@IEEEdefault}% name of current column definition +% currently acquired numerically referenced glue +% use a name that is easier to remember +\let\@IEEEBPcurnum=\@IEEEtrantmpcountA% +\@IEEEBPcurnum=0% +% tracks number of columns in the preamble +\@IEEEeqnnumcols=0% +% record the default end glues +\edef\@IEEEBPstartglue{\@IEEEeqnarraycolSEPdefaultstart}% +\edef\@IEEEBPendglue{\@IEEEeqnarraycolSEPdefaultend}% +\edef\@IEEEedefMACRO{#1}\relax% fully expand the preamble to support macro containers +% now parse the user's column specifications +% \ignorespaces is used as a delimiter, need at least one trailing \relax because +% \@@IEEEbuildpreamble looks into the future +\expandafter\@@IEEEbuildpreamble\@IEEEedefMACRO\ignorespaces\relax\relax} + + +% usage: \@@IEEEbuildpreamble{current column}{next column} +% parses and builds the halign preamble +\def\@@IEEEbuildpreamble#1#2{\let\@@nextIEEEbuildpreamble=\@@IEEEbuildpreamble% +% use only the very first token to check the end +\@IEEEextracttokengroups{#1}\relax +\ifx\@IEEEextractedfirsttoken\ignorespaces\let\@@nextIEEEbuildpreamble=\@@IEEEfinishpreamble\else% +% identify current and next token type +\@IEEEgetcoltype{#1}{\@IEEEBPcurtype}{1}% current, error on invalid +\@IEEEgetcoltype{#2}{\@IEEEBPnexttype}{0}% next, no error on invalid next +% if curtype is a glue, get the glue def +\if\@IEEEBPcurtype g\@IEEEgetcurglue{#1}{\@IEEEBPcurglue}\fi% +% if curtype is a column, get the column def and set the current column name +\if\@IEEEBPcurtype c\@IEEEgetcurcol{#1}\fi% +% if curtype is a numeral, acquire the user defined glue +\if\@IEEEBPcurtype n\@IEEEprocessNcol{#1}\fi% +% process the acquired glue +\if\@IEEEBPcurtype g\@IEEEprocessGcol\fi% +% process the acquired col +\if\@IEEEBPcurtype c\@IEEEprocessCcol\fi% +% ready prevtype for next col spec. +\let\@IEEEBPprevtype=\@IEEEBPcurtype% +% be sure and put back the future token(s) as a group +\fi\@@nextIEEEbuildpreamble{#2}} + + +% usage: \@@IEEEfinishpreamble{discarded} +% executed just after preamble build is completed +% warn about zero cols, and if prevtype type = u, put in end tabskip glue +% argument is not used +\def\@@IEEEfinishpreamble#1{\ifnum\@IEEEeqnnumcols<1\relax +\@IEEEclspkgerror{No column specifiers declared for IEEEeqnarray}% +{At least one column type must be declared for each IEEEeqnarray.}% +\fi%num cols less than 1 +%if last type undefined, set default end tabskip glue +\if\@IEEEBPprevtype u\@IEEEappendtoksA{\tabskip=\@IEEEBPendglue}\fi} + + +% usage: \@IEEEgetcoltype{col specifier}{\output}{error more} +% Identify and return the column specifier's type code in the given +% \output macro: +% n = number +% g = glue (any other char in catagory 12) +% c = letter +% e = \ignorespaces (end of sequence) +% u = undefined +% error mode: 0 = no error message, 1 = error on invalid char +\def\@IEEEgetcoltype#1#2#3{% +% use only the very first token to determine the type +\@IEEEextracttoken{#1}\relax +% \@IEEEextractedtoken has the first token, the rest are discarded +\let#2=u\relax% assume invalid until know otherwise +\ifx\@IEEEextractedtoken\ignorespaces\let#2=e\else +\ifcat\@IEEEextractedtoken\relax\else% screen out control sequences +\if0\@IEEEextractedtoken\let#2=n\else +\if1\@IEEEextractedtoken\let#2=n\else +\if2\@IEEEextractedtoken\let#2=n\else +\if3\@IEEEextractedtoken\let#2=n\else +\if4\@IEEEextractedtoken\let#2=n\else +\if5\@IEEEextractedtoken\let#2=n\else +\if6\@IEEEextractedtoken\let#2=n\else +\if7\@IEEEextractedtoken\let#2=n\else +\if8\@IEEEextractedtoken\let#2=n\else +\if9\@IEEEextractedtoken\let#2=n\else +\ifcat,\@IEEEextractedtoken\let#2=g\relax +\else\ifcat a\@IEEEextractedtoken\let#2=c\relax\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi +\if#2u\relax +\if0\noexpand#3\relax\else\@IEEEclspkgerror{Invalid character in column specifications}% +{Only letters, numerals and certain other symbols are allowed \MessageBreak +as IEEEeqnarray column specifiers.}\fi\fi} + + +% usage: \@IEEEgetcurcol{col specifier} +% verify the letter referenced column exists +% and return its name in \@IEEEBPcurcolname +% if column specifier is invalid, use the default column @IEEEdefault +\def\@IEEEgetcurcol#1{\expandafter\ifx\csname @IEEEeqnarraycolDEF#1\endcsname\@IEEEeqnarraycolisdefined% +\def\@IEEEBPcurcolname{#1}\else% invalid column name +\@IEEEclspkgerror{Invalid column type "#1" in column specifications.\MessageBreak +Using a default centering column instead}% +{You must define IEEEeqnarray column types before use.}% +\def\@IEEEBPcurcolname{@IEEEdefault}\fi} + + +% usage: \@IEEEgetcurglue{glue specifier}{\output} +% identify the predefined (punctuation) glue value +% and return it in the given output macro +\def\@IEEEgetcurglue#1#2{% +% ! = \! (neg small) -0.16667em (-3/18 em) +% , = \, (small) 0.16667em ( 3/18 em) +% : = \: (med) 0.22222em ( 4/18 em) +% ; = \; (large) 0.27778em ( 5/18 em) +% ' = \quad 1em +% " = \qquad 2em +% . = 0.5\arraycolsep +% / = \arraycolsep +% ? = 2\arraycolsep +% * = 1fil +% + = \@IEEEeqnarraycolSEPcenter +% - = \@IEEEeqnarraycolSEPzero +% Note that all em values are referenced to the math font (textfont2) fontdimen6 +% value for 1em. +% +% use only the very first token to determine the type +\@IEEEextracttoken{#1}\relax +\ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: IEEEeqnarray predefined inter-column glue type specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax +\fi +% get the math font 1em value +% LaTeX2e's NFSS2 does not preload the fonts, but \IEEEeqnarray needs +% to gain access to the math (\textfont2) font's spacing parameters. +% So we create a bogus box here that uses the math font to ensure +% that \textfont2 is loaded and ready. If this is not done, +% the \textfont2 stuff here may not work. +% Thanks to Bernd Raichle for his 1997 post on this topic. +{\setbox0=\hbox{$\displaystyle\relax$}}% +% fontdimen6 has the width of 1em (a quad). +\@IEEEtrantmpdimenA=\fontdimen6\textfont2\relax% +% identify the glue value based on the first token +% we discard anything after the first +\if!\@IEEEextractedtoken\@IEEEtrantmpdimenA=-0.16667\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if,\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.16667\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if:\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.22222\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if;\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.27778\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if'\@IEEEextractedtoken\@IEEEtrantmpdimenA=1\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if"\@IEEEextractedtoken\@IEEEtrantmpdimenA=2\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if.\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.5\arraycolsep\edef#2{\the\@IEEEtrantmpdimenA}\else +\if/\@IEEEextractedtoken\edef#2{\the\arraycolsep}\else +\if?\@IEEEextractedtoken\@IEEEtrantmpdimenA=2\arraycolsep\edef#2{\the\@IEEEtrantmpdimenA}\else +\if *\@IEEEextractedtoken\edef#2{0pt plus 1fil minus 0pt}\else +\if+\@IEEEextractedtoken\edef#2{\@IEEEeqnarraycolSEPcenter}\else +\if-\@IEEEextractedtoken\edef#2{\@IEEEeqnarraycolSEPzero}\else +\edef#2{\@IEEEeqnarraycolSEPzero}% +\@IEEEclspkgerror{Invalid predefined inter-column glue type "#1" in\MessageBreak +column specifications. Using a default value of\MessageBreak +0pt instead}% +{Only !,:;'"./?*+ and - are valid predefined glue types in the\MessageBreak +IEEEeqnarray column specifications.}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} + + +% usage: \@IEEEprocessNcol{digit} +% process a numerical digit from the column specification +% and look up the corresponding user defined glue value +% can transform current type from n to g or a as the user defined glue is acquired +\def\@IEEEprocessNcol#1{\if\@IEEEBPprevtype g% +\@IEEEclspkgerror{Back-to-back inter-column glue specifiers in column\MessageBreak +specifications. Ignoring consecutive glue specifiers\MessageBreak +after the first}% +{You cannot have two or more glue types next to each other\MessageBreak +in the IEEEeqnarray column specifications.}% +\let\@IEEEBPcurtype=a% abort this glue, future digits will be discarded +\@IEEEBPcurnum=0\relax% +\else% if we previously aborted a glue +\if\@IEEEBPprevtype a\@IEEEBPcurnum=0\let\@IEEEBPcurtype=a%maintain digit abortion +\else%acquire this number +% save the previous type before the numerical digits started +\if\@IEEEBPprevtype n\else\let\@IEEEBPprevsavedtype=\@IEEEBPprevtype\fi% +\multiply\@IEEEBPcurnum by 10\relax% +\advance\@IEEEBPcurnum by #1\relax% add in number, \relax is needed to stop TeX's number scan +\if\@IEEEBPnexttype n\else%close acquisition +\expandafter\ifx\csname @IEEEeqnarraycolSEPDEF\expandafter\romannumeral\number\@IEEEBPcurnum\endcsname\@IEEEeqnarraycolisdefined% +\edef\@IEEEBPcurglue{\csname @IEEEeqnarraycolSEP\expandafter\romannumeral\number\@IEEEBPcurnum\endcsname}% +\else%user glue not defined +\@IEEEclspkgerror{Invalid user defined inter-column glue type "\number\@IEEEBPcurnum" in\MessageBreak +column specifications. Using a default value of\MessageBreak +0pt instead}% +{You must define all IEEEeqnarray numerical inter-column glue types via\MessageBreak +\string\IEEEeqnarraydefcolsep \space before they are used in column specifications.}% +\edef\@IEEEBPcurglue{\@IEEEeqnarraycolSEPzero}% +\fi% glue defined or not +\let\@IEEEBPcurtype=g% change the type to reflect the acquired glue +\let\@IEEEBPprevtype=\@IEEEBPprevsavedtype% restore the prev type before this number glue +\@IEEEBPcurnum=0\relax%ready for next acquisition +\fi%close acquisition, get glue +\fi%discard or acquire number +\fi%prevtype glue or not +} + + +% process an acquired glue +% add any acquired column/glue pair to the preamble +\def\@IEEEprocessGcol{\if\@IEEEBPprevtype a\let\@IEEEBPcurtype=a%maintain previous glue abortions +\else +% if this is the start glue, save it, but do nothing else +% as this is not used in the preamble, but before +\if\@IEEEBPprevtype s\edef\@IEEEBPstartglue{\@IEEEBPcurglue}% +\else%not the start glue +\if\@IEEEBPprevtype g%ignore if back to back glues +\@IEEEclspkgerror{Back-to-back inter-column glue specifiers in column\MessageBreak +specifications. Ignoring consecutive glue specifiers\MessageBreak +after the first}% +{You cannot have two or more glue types next to each other\MessageBreak +in the IEEEeqnarray column specifications.}% +\let\@IEEEBPcurtype=a% abort this glue +\else% not a back to back glue +\if\@IEEEBPprevtype c\relax% if the previoustype was a col, add column/glue pair to preamble +\ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi +\toks0={##}% +% make preamble advance col counter if this environment needs this +\if@advanceIEEEeqncolcnt\@IEEEappendtoksA{\global\advance\@IEEEeqncolcnt by 1\relax}\fi +% insert the column defintion into the preamble, being careful not to expand +% the column definition +\@IEEEappendtoksA{\tabskip=\@IEEEBPcurglue}% +\@IEEEappendNOEXPANDtoksA{\begingroup\csname @IEEEeqnarraycolPRE}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname}% +\@IEEEappendtoksA{\the\toks0}% +\@IEEEappendNOEXPANDtoksA{\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\csname @IEEEeqnarraycolPOST}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\endgroup}% +\advance\@IEEEeqnnumcols by 1\relax%one more column in the preamble +\else% error: non-start glue with no pending column +\@IEEEclspkgerror{Inter-column glue specifier without a prior column\MessageBreak +type in the column specifications. Ignoring this glue\MessageBreak +specifier}% +{Except for the first and last positions, glue can be placed only\MessageBreak +between column types.}% +\let\@IEEEBPcurtype=a% abort this glue +\fi% previous was a column +\fi% back-to-back glues +\fi% is start column glue +\fi% prev type not a +} + + +% process an acquired letter referenced column and, if necessary, add it to the preamble +\def\@IEEEprocessCcol{\if\@IEEEBPnexttype g\else +\if\@IEEEBPnexttype n\else +% we have a column followed by something other than a glue (or numeral glue) +% so we must add this column to the preamble now +\ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi%col separator for those after the first +\if\@IEEEBPnexttype e\@IEEEappendtoksA{\tabskip=\@IEEEBPendglue\relax}\else%put in end glue +\@IEEEappendtoksA{\tabskip=\@IEEEeqnarraycolSEPdefaultmid\relax}\fi% or default mid glue +\toks0={##}% +% make preamble advance col counter if this environment needs this +\if@advanceIEEEeqncolcnt\@IEEEappendtoksA{\global\advance\@IEEEeqncolcnt by 1\relax}\fi +% insert the column definition into the preamble, being careful not to expand +% the column definition +\@IEEEappendNOEXPANDtoksA{\begingroup\csname @IEEEeqnarraycolPRE}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname}% +\@IEEEappendtoksA{\the\toks0}% +\@IEEEappendNOEXPANDtoksA{\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\csname @IEEEeqnarraycolPOST}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\endgroup}% +\advance\@IEEEeqnnumcols by 1\relax%one more column in the preamble +\fi%next type not numeral +\fi%next type not glue +} + + +%% +%% END OF IEEEeqnarray DEFINITIONS +%% + + + + + +% set up the running headers and footers +% +% header and footer font and size specifications +\def\@IEEEheaderstyle{\normalfont\scriptsize} +\def\@IEEEfooterstyle{\normalfont\scriptsize} +% +% compsoc uses sans-serif headers and footers +\ifCLASSOPTIONcompsoc + \def\@IEEEheaderstyle{\normalfont\sffamily\scriptsize} + \def\@IEEEfooterstyle{\normalfont\sffamily\scriptsize} +\fi + + +% standard page style, ps@headings +\def\ps@headings{% default to standard twoside headers, no footers +% will change later if the mode requires otherwise +\def\@oddhead{\hbox{}\@IEEEheaderstyle\rightmark\hfil\thepage}\relax +\def\@evenhead{\@IEEEheaderstyle\thepage\hfil\leftmark\hbox{}}\relax +\let\@oddfoot\@empty +\let\@evenfoot\@empty +\ifCLASSOPTIONtechnote + % technote twoside + \def\@oddhead{\hbox{}\@IEEEheaderstyle\leftmark\hfil\thepage}\relax + \def\@evenhead{\@IEEEheaderstyle\thepage\hfil\leftmark\hbox{}}\relax +\fi +\ifCLASSOPTIONdraftcls + % draft footers + \def\@oddfoot{\@IEEEfooterstyle\@date\hfil DRAFT}\relax + \def\@evenfoot{\@IEEEfooterstyle DRAFT\hfil\@date}\relax +\fi +% oneside +\if@twoside\else + % standard one side headers + \def\@oddhead{\hbox{}\@IEEEheaderstyle\leftmark\hfil\thepage}\relax + \let\@evenhead\@empty + \ifCLASSOPTIONdraftcls + % oneside draft footers + \def\@oddfoot{\@IEEEfooterstyle\@date\hfil DRAFT}\relax + \let\@evenfoot\@empty + \fi +\fi +% turn off headers for conferences +\ifCLASSOPTIONconference + \let\@oddhead\@empty + \let\@evenhead\@empty +\fi +% turn off footers for draftclsnofoot +\ifCLASSOPTIONdraftclsnofoot + \let\@oddfoot\@empty + \let\@evenfoot\@empty +\fi} + + +% title page style, ps@IEEEtitlepagestyle +\def\ps@IEEEtitlepagestyle{% default title page headers, no footers +\def\@oddhead{\hbox{}\@IEEEheaderstyle\leftmark\hfil\thepage}\relax +\def\@evenhead{\@IEEEheaderstyle\thepage\hfil\leftmark\hbox{}}\relax +\let\@oddfoot\@empty +\let\@evenfoot\@empty +% will change later if the mode requires otherwise +\ifCLASSOPTIONdraftcls + % draft footers + \ifCLASSOPTIONdraftclsnofoot\else + % but only if not draftclsnofoot + \def\@oddfoot{\@IEEEfooterstyle\@date\hfil DRAFT}\relax + \def\@evenfoot{\@IEEEfooterstyle DRAFT\hfil\@date}\relax + \fi +\else + % all nondraft mode footers + \if@IEEEusingpubid + % for title pages that are using a pubid + % do not repeat pubid on the title page if using a peer review cover page + \ifCLASSOPTIONpeerreview\else + % for noncompsoc papers, the pubid uses footnotesize and + % is at the same vertical position as where the last baseline would normally be + \def\@oddfoot{\hbox{}\hss\@IEEEfooterstyle\footnotesize\raisebox{\footskip}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \def\@evenfoot{\hbox{}\hss\@IEEEfooterstyle\footnotesize\raisebox{\footskip}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \ifCLASSOPTIONcompsoc + % for compsoc papers, the pubid is at the same vertical position as the normal footer + \def\@oddfoot{\hbox{}\hss\@IEEEfooterstyle\raisebox{0pt}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \def\@evenfoot{\hbox{}\hss\@IEEEfooterstyle\raisebox{0pt}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \fi + \fi + \fi +\fi +% turn off headers for conferences +\ifCLASSOPTIONconference + \let\@oddhead\@empty + \let\@evenhead\@empty +\fi} + + +% peer review cover page style, ps@IEEEpeerreviewcoverpagestyle +\def\ps@IEEEpeerreviewcoverpagestyle{% default peer review cover no headers, no footers +\let\@oddhead\@empty +\let\@evenhead\@empty +\let\@oddfoot\@empty +\let\@evenfoot\@empty +% will change later if the mode requires otherwise +\ifCLASSOPTIONdraftcls + % draft footers + \ifCLASSOPTIONdraftclsnofoot\else + % but only if not draftclsnofoot + \def\@oddfoot{\@IEEEfooterstyle\@date\hfil DRAFT}\relax + \def\@evenfoot{\@IEEEfooterstyle DRAFT\hfil\@date}\relax + \fi +\else + % all nondraft mode footers + \if@IEEEusingpubid + % for peer review cover pages that are using a pubid + % for noncompsoc papers, the pubid uses footnotesize and + % is at the same vertical position as where the last baseline would normally be + \def\@oddfoot{\hbox{}\hss\@IEEEfooterstyle\footnotesize\raisebox{\footskip}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \def\@evenfoot{\hbox{}\hss\@IEEEfooterstyle\footnotesize\raisebox{\footskip}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \ifCLASSOPTIONcompsoc + % for compsoc papers, the pubid is at the same vertical position as the normal footer + \def\@oddfoot{\hbox{}\hss\@IEEEfooterstyle\raisebox{0pt}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \def\@evenfoot{\hbox{}\hss\@IEEEfooterstyle\raisebox{0pt}[0pt][0pt]{\@IEEEpubid}\hss\hbox{}}\relax + \fi + \fi +\fi} + + + +%% Defines the command for putting the header. +%% Note that all the text is forced into uppercase, if you have some text +%% that needs to be in lower case, for instance et. al., then either manually +%% set \leftmark and \rightmark or use \MakeLowercase{et. al.} within the +%% arguments to \markboth. +%% V1.7b add \protect to work with Babel +\def\markboth#1#2{\def\leftmark{\MakeUppercase{\protect#1}}% +\def\rightmark{\MakeUppercase{\protect#2}}} + +\def\today{\ifcase\month\or + January\or February\or March\or April\or May\or June\or + July\or August\or September\or October\or November\or December\fi + \space\number\day, \number\year} + + + + +%% CITATION AND BIBLIOGRAPHY COMMANDS +%% +%% V1.6 no longer supports the older, nonstandard \shortcite and \citename setup stuff +% +% +% Modify Latex2e \@citex to separate citations with "], [" +\def\@citex[#1]#2{% + \let\@citea\@empty + \@cite{\@for\@citeb:=#2\do + {\@citea\def\@citea{], [}% + \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb}{\mbox{\reset@font\bfseries ?}% + \G@refundefinedtrue + \@latex@warning + {Citation `\@citeb' on page \thepage \space undefined}}% + {\hbox{\csname b@\@citeb\endcsname}}}}{#1}} + +% V1.6 we create hooks for the optional use of Donald Arseneau's +% cite.sty package. cite.sty is "smart" and will notice that the +% following format controls are already defined and will not +% redefine them. The result will be the proper sorting of the +% citation numbers and auto detection of 3 or more entry "ranges" - +% all in IEEE style: [1], [2], [5]--[7], [12] +% This also allows for an optional note, i.e., \cite[mynote]{..}. +% If the \cite with note has more than one reference, the note will +% be applied to the last of the listed references. It is generally +% desired that if a note is given, only one reference is listed in +% that \cite. +% Thanks to Mr. Arseneau for providing the required format arguments +% to produce the IEEE style. +\def\citepunct{], [} +\def\citedash{]--[} + +% V1.7 default to using same font for urls made by url.sty +\AtBeginDocument{\csname url@samestyle\endcsname} + +% V1.6 class files should always provide these +\def\newblock{\hskip .11em\@plus.33em\@minus.07em} +\let\@openbib@code\@empty +% V1.8b article.cls is now providing these too +% we do not use \@mkboth, nor alter the page style +\newenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \twocolumn[\section*{\indexname}]% + \parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \columnseprule \z@ + \columnsep 35\p@ + \let\item\@idxitem} + {\if@restonecol\onecolumn\else\clearpage\fi} +\newcommand\@idxitem{\par\hangindent 40\p@} +\newcommand\subitem{\@idxitem \hspace*{20\p@}} +\newcommand\subsubitem{\@idxitem \hspace*{30\p@}} +\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} + + + +% Provide support for the control entries of IEEEtran.bst V1.00 and later. +% V1.7 optional argument allows for a different aux file to be specified in +% order to handle multiple bibliographies. For example, with multibib.sty: +% \newcites{sec}{Secondary Literature} +% \bstctlcite[@auxoutsec]{BSTcontrolhak} +\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +\def\@bstctlcite[#1]#2{\@bsphack + \@for\@citeb:=#2\do{% + \edef\@citeb{\expandafter\@firstofone\@citeb}% + \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% + \@esphack} + +% \IEEEnoauxwrite{} allows for citations that do not add to or affect +% the order of the existing citation list. Can be useful for \cite +% within \thanks{}. +\DeclareRobustCommand{\IEEEnoauxwrite}[1]{\relax +\if@filesw +\@fileswfalse +#1\relax\relax\relax\relax\relax +\@fileswtrue +\else +#1\relax\relax\relax\relax\relax +\fi} + +% V1.6 provide a way for a user to execute a command just before +% a given reference number - used to insert a \newpage to balance +% the columns on the last page +\edef\@IEEEtriggerrefnum{0} % the default of zero means that + % the command is not executed +\def\@IEEEtriggercmd{\newpage} + +% allow the user to alter the triggered command +\long\def\IEEEtriggercmd#1{\long\def\@IEEEtriggercmd{#1}} + +% allow user a way to specify the reference number just before the +% command is executed +\def\IEEEtriggeratref#1{\@IEEEtrantmpcountA=#1% +\edef\@IEEEtriggerrefnum{\the\@IEEEtrantmpcountA}}% + +% trigger command at the given reference +\def\@IEEEbibitemprefix{\@IEEEtrantmpcountA=\@IEEEtriggerrefnum\relax% +\advance\@IEEEtrantmpcountA by -1\relax% +\ifnum\c@enumiv=\@IEEEtrantmpcountA\relax\@IEEEtriggercmd\relax\fi} + + +\def\@biblabel#1{[#1]} + +% compsoc journals and conferences left align the reference numbers +\@IEEEcompsoconly{\def\@biblabel#1{[#1]\hfill}} + +% controls bib item spacing +\def\IEEEbibitemsep{0pt plus .5pt} + +\@IEEEcompsocconfonly{\def\IEEEbibitemsep{0.5\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip}} + + +\def\thebibliography#1{\section*{\refname}% + \addcontentsline{toc}{section}{\refname}% + % V1.6 add some rubber space here and provide a command trigger + \footnotesize\vskip 0.3\baselineskip plus 0.1\baselineskip minus 0.1\baselineskip% + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep\relax + \itemsep \IEEEbibitemsep\relax + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \let\@IEEElatexbibitem\bibitem% + \def\bibitem{\@IEEEbibitemprefix\@IEEElatexbibitem}% +\def\newblock{\hskip .11em plus .33em minus .07em}% +% originally: +% \sloppy\clubpenalty4000\widowpenalty4000% +% by adding the \interlinepenalty here, we make it more +% difficult, but not impossible, for LaTeX to break within a reference. +% The IEEE almost never breaks a reference (but they do it more often with +% technotes). You may get an underfull vbox warning around the bibliography, +% but the final result will be much more like what the IEEE will publish. +% MDS 11/2000 +\ifCLASSOPTIONtechnote\sloppy\clubpenalty4000\widowpenalty4000\interlinepenalty100% +\else\sloppy\clubpenalty4000\widowpenalty4000\interlinepenalty500\fi% + \sfcode`\.=1000\relax} +\let\endthebibliography=\endlist + + + + +% TITLE PAGE COMMANDS +% +% +% \IEEEmembership is used to produce the sublargesize italic font used to indicate author +% IEEE membership. compsoc uses a large size sans slant font +\def\IEEEmembership#1{{\@IEEEnotcompsoconly{\sublargesize}\normalfont\@IEEEcompsoconly{\sffamily}\textit{#1}}} + + +% \IEEEauthorrefmark{} produces a footnote type symbol to indicate author affiliation. +% When given an argument of 1 to 9, \IEEEauthorrefmark{} follows the standard LaTeX footnote +% symbol sequence convention. However, for arguments 10 and above, \IEEEauthorrefmark{} +% reverts to using lower case roman numerals, so it cannot overflow. Do note that you +% cannot use \footnotemark[] in place of \IEEEauthorrefmark{} within \author as the footnote +% symbols will have been turned off to prevent \thanks from creating footnote marks. +% \IEEEauthorrefmark{} produces a symbol that appears to LaTeX as having zero vertical +% height - this allows for a more compact line packing, but the user must ensure that +% the interline spacing is large enough to prevent \IEEEauthorrefmark{} from colliding +% with the text above. +% V1.7 make this a robust command +% V1.8 transmag uses an arabic author affiliation symbol +\ifCLASSOPTIONtransmag +\DeclareRobustCommand*{\IEEEauthorrefmark}[1]{\raisebox{0pt}[0pt][0pt]{\textsuperscript{\footnotesize #1}}} +\else +\DeclareRobustCommand*{\IEEEauthorrefmark}[1]{\raisebox{0pt}[0pt][0pt]{\textsuperscript{\footnotesize\ensuremath{\ifcase#1\or *\or \dagger\or \ddagger\or% + \mathsection\or \mathparagraph\or \|\or **\or \dagger\dagger% + \or \ddagger\ddagger \else\textsuperscript{\expandafter\romannumeral#1}\fi}}}} +\fi + + +% FONT CONTROLS AND SPACINGS FOR CONFERENCE MODE AUTHOR NAME AND AFFILIATION BLOCKS +% +% The default font styles for the author name and affiliation blocks (confmode) +\def\@IEEEauthorblockNstyle{\normalfont\@IEEEcompsocnotconfonly{\sffamily}\sublargesize} +\def\@IEEEauthorblockAstyle{\normalfont\@IEEEcompsocnotconfonly{\sffamily}\@IEEEcompsocconfonly{\itshape}\normalsize} +% The default if the user does not use an author block +\def\@IEEEauthordefaulttextstyle{\normalfont\@IEEEcompsocnotconfonly{\sffamily}\sublargesize} + +% adjustment spacing from title (or special paper notice) to author name blocks (confmode) +% can be negative +\def\@IEEEauthorblockconfadjspace{-0.25em} +% compsoc conferences need more space here +\@IEEEcompsocconfonly{\def\@IEEEauthorblockconfadjspace{0.75\@IEEEnormalsizeunitybaselineskip}} + +% spacing between name and affiliation blocks (confmode) +% This can be negative. +% The IEEE doesn't want any added spacing here, but I will leave these +% controls in place in case they ever change their mind. +% Personally, I like 0.75ex. +%\def\@IEEEauthorblockNtopspace{0.75ex} +%\def\@IEEEauthorblockAtopspace{0.75ex} +\def\@IEEEauthorblockNtopspace{0.0ex} +\def\@IEEEauthorblockAtopspace{0.0ex} +\ifCLASSOPTIONtransmag +% transmag uses one line of space above first affiliation block +\def\@IEEEauthorblockAtopspace{1\@IEEEnormalsizeunitybaselineskip} +\fi + +% baseline spacing within name and affiliation blocks (confmode) +% must be positive, spacings below certain values will make +% the position of line of text sensitive to the contents of the +% line above it i.e., whether or not the prior line has descenders, +% subscripts, etc. For this reason it is a good idea to keep +% these above 2.6ex +\def\@IEEEauthorblockNinterlinespace{2.6ex} +\def\@IEEEauthorblockAinterlinespace{2.75ex} + +% This tracks the required strut size. +% See the \@IEEEauthorhalign command for the actual default value used. +\def\@IEEEauthorblockXinterlinespace{2.7ex} + +% variables to retain font size and style across groups +% values given here have no effect as they will be overwritten later +\gdef\@IEEESAVESTATEfontsize{10} +\gdef\@IEEESAVESTATEfontbaselineskip{12} +\gdef\@IEEESAVESTATEfontencoding{OT1} +\gdef\@IEEESAVESTATEfontfamily{ptm} +\gdef\@IEEESAVESTATEfontseries{m} +\gdef\@IEEESAVESTATEfontshape{n} + +% saves the current font attributes +\def\@IEEEcurfontSAVE{\global\let\@IEEESAVESTATEfontsize\f@size% +\global\let\@IEEESAVESTATEfontbaselineskip\f@baselineskip% +\global\let\@IEEESAVESTATEfontencoding\f@encoding% +\global\let\@IEEESAVESTATEfontfamily\f@family% +\global\let\@IEEESAVESTATEfontseries\f@series% +\global\let\@IEEESAVESTATEfontshape\f@shape} + +% restores the saved font attributes +\def\@IEEEcurfontRESTORE{\fontsize{\@IEEESAVESTATEfontsize}{\@IEEESAVESTATEfontbaselineskip}% +\fontencoding{\@IEEESAVESTATEfontencoding}% +\fontfamily{\@IEEESAVESTATEfontfamily}% +\fontseries{\@IEEESAVESTATEfontseries}% +\fontshape{\@IEEESAVESTATEfontshape}% +\selectfont} + + +% variable to indicate if the current block is the first block in the column +\newif\if@IEEEprevauthorblockincol \@IEEEprevauthorblockincolfalse + + +% the command places a strut with height and depth = \@IEEEauthorblockXinterlinespace +% we use this technique to have complete manual control over the spacing of the lines +% within the halign environment. +% We set the below baseline portion at 30%, the above +% baseline portion at 70% of the total length. +% Responds to changes in the document's \baselinestretch +\def\@IEEEauthorstrutrule{\@IEEEtrantmpdimenA\@IEEEauthorblockXinterlinespace% +\@IEEEtrantmpdimenA=\baselinestretch\@IEEEtrantmpdimenA% +\rule[-0.3\@IEEEtrantmpdimenA]{0pt}{\@IEEEtrantmpdimenA}} + + +% blocks to hold the authors' names and affilations. +% Makes formatting easy for conferences +% +% use real definitions in conference mode +% name block +\def\IEEEauthorblockN#1{\relax\@IEEEauthorblockNstyle% set the default text style +\gdef\@IEEEauthorblockXinterlinespace{0pt}% disable strut for spacer row +% the \expandafter hides the \cr in conditional tex, see the array.sty docs +% for details, probably not needed here as the \cr is in a macro +% do a spacer row if needed +\if@IEEEprevauthorblockincol\expandafter\@IEEEauthorblockNtopspaceline\fi +\global\@IEEEprevauthorblockincoltrue% we now have a block in this column +%restore the correct strut value +\gdef\@IEEEauthorblockXinterlinespace{\@IEEEauthorblockNinterlinespace}% +% input the author names +#1% +% end the row if the user did not already +\crcr} +% spacer row for names +\def\@IEEEauthorblockNtopspaceline{\cr\noalign{\vskip\@IEEEauthorblockNtopspace}} +% +% affiliation block +\def\IEEEauthorblockA#1{\relax\@IEEEauthorblockAstyle% set the default text style +\gdef\@IEEEauthorblockXinterlinespace{0pt}%disable strut for spacer row +% the \expandafter hides the \cr in conditional tex, see the array.sty docs +% for details, probably not needed here as the \cr is in a macro +% do a spacer row if needed +\if@IEEEprevauthorblockincol\expandafter\@IEEEauthorblockAtopspaceline\fi +\global\@IEEEprevauthorblockincoltrue% we now have a block in this column +%restore the correct strut value +\gdef\@IEEEauthorblockXinterlinespace{\@IEEEauthorblockAinterlinespace}% +% input the author affiliations +#1% +% end the row if the user did not already +\crcr +% V1.8 transmag does not use any additional affiliation spacing after the first author +\ifCLASSOPTIONtransmag\gdef\@IEEEauthorblockAtopspace{0pt}\fi} + +% spacer row for affiliations +\def\@IEEEauthorblockAtopspaceline{\cr\noalign{\vskip\@IEEEauthorblockAtopspace}} + + +% allow papers to compile even if author blocks are used in modes other +% than conference or peerreviewca. For such cases, we provide dummy blocks. +\ifCLASSOPTIONconference +\else + \ifCLASSOPTIONpeerreviewca\else + % not conference, peerreviewca or transmag mode + \ifCLASSOPTIONtransmag\else + \def\IEEEauthorblockN#1{#1}% + \def\IEEEauthorblockA#1{#1}% + \fi + \fi +\fi + + + +% we provide our own halign so as not to have to depend on tabular +\def\@IEEEauthorhalign{\@IEEEauthordefaulttextstyle% default text style + \lineskip=0pt\relax% disable line spacing + \lineskiplimit=0pt\relax% + \baselineskip=0pt\relax% + \@IEEEcurfontSAVE% save the current font + \mathsurround\z@\relax% no extra spacing around math + \let\\\@IEEEauthorhaligncr% replace newline with halign friendly one + \tabskip=0pt\relax% no column spacing + \everycr{}% ensure no problems here + \@IEEEprevauthorblockincolfalse% no author blocks yet + \def\@IEEEauthorblockXinterlinespace{2.7ex}% default interline space + \vtop\bgroup%vtop box + \halign\bgroup&\relax\hfil\@IEEEcurfontRESTORE\relax ##\relax + \hfil\@IEEEcurfontSAVE\@IEEEauthorstrutrule\cr} + +% ensure last line, exit from halign, close vbox +\def\end@IEEEauthorhalign{\crcr\egroup\egroup} + +% handle bogus star form +\def\@IEEEauthorhaligncr{{\ifnum0=`}\fi\@ifstar{\@@IEEEauthorhaligncr}{\@@IEEEauthorhaligncr}} + +% test and setup the optional argument to \\[] +\def\@@IEEEauthorhaligncr{\@testopt\@@@IEEEauthorhaligncr\z@skip} + +% end the line and do the optional spacer +\def\@@@IEEEauthorhaligncr[#1]{\ifnum0=`{\fi}\cr\noalign{\vskip#1\relax}} + + + +% flag to prevent multiple \and warning messages +\newif\if@IEEEWARNand +\@IEEEWARNandtrue + +% if in conference or peerreviewca modes, we support the use of \and as \author is a +% tabular environment, otherwise we warn the user that \and is invalid +% outside of conference or peerreviewca modes. +\def\and{\relax} % provide a bogus \and that we will then override + +\renewcommand{\and}[1][\relax]{\if@IEEEWARNand\typeout{** WARNING: \noexpand\and is valid only + when in conference or peerreviewca}\typeout{modes (line \the\inputlineno).}\fi\global\@IEEEWARNandfalse} + +\ifCLASSOPTIONconference% +\renewcommand{\and}[1][\hfill]{\end{@IEEEauthorhalign}#1\begin{@IEEEauthorhalign}}% +\fi +\ifCLASSOPTIONpeerreviewca +\renewcommand{\and}[1][\hfill]{\end{@IEEEauthorhalign}#1\begin{@IEEEauthorhalign}}% +\fi +% V1.8 transmag uses conference author format +\ifCLASSOPTIONtransmag +\renewcommand{\and}[1][\hfill]{\end{@IEEEauthorhalign}#1\begin{@IEEEauthorhalign}}% +\fi + +% page clearing command +% based on LaTeX2e's \cleardoublepage, but allows different page styles +% for the inserted blank pages +\def\@IEEEcleardoublepage#1{\clearpage\if@twoside\ifodd\c@page\else +\hbox{}\thispagestyle{#1}\newpage\if@twocolumn\hbox{}\thispagestyle{#1}\newpage\fi\fi\fi} + +% V1.8b hooks to allow adjustment of space above title +\def\IEEEtitletopspace{0.5\baselineskip} +% an added extra amount to allow for adjustment/offset +\def\IEEEtitletopspaceextra{0pt} + +% user command to invoke the title page +\def\maketitle{\par% + \begingroup% + \normalfont% + \def\thefootnote{}% the \thanks{} mark type is empty + \def\footnotemark{}% and kill space from \thanks within author + \let\@makefnmark\relax% V1.7, must *really* kill footnotemark to remove all \textsuperscript spacing as well. + \footnotesize% equal spacing between thanks lines + \footnotesep 0.7\baselineskip%see global setting of \footnotesep for more info + % V1.7 disable \thanks note indention for compsoc + \@IEEEcompsoconly{\long\def\@makefntext##1{\parindent 1em\noindent\hbox{\@makefnmark}##1}}% + \normalsize% + \ifCLASSOPTIONpeerreview + \newpage\global\@topnum\z@ \@maketitle\@IEEEstatictitlevskip\@IEEEaftertitletext% + \thispagestyle{IEEEpeerreviewcoverpagestyle}\@thanks% + \else + \if@twocolumn% + \ifCLASSOPTIONtechnote% + \newpage\global\@topnum\z@ \@maketitle\@IEEEstatictitlevskip\@IEEEaftertitletext% + \else + \twocolumn[{\IEEEquantizevspace{\@maketitle}[\IEEEquantizedisabletitlecmds]{0pt}[-\topskip]{\baselineskip}{\@IEEENORMtitlevspace}{\@IEEEMINtitlevspace}\@IEEEaftertitletext}]% + \fi + \else + \newpage\global\@topnum\z@ \@maketitle\@IEEEstatictitlevskip\@IEEEaftertitletext% + \fi + \thispagestyle{IEEEtitlepagestyle}\@thanks% + \fi + % pullup page for pubid if used. + \if@IEEEusingpubid + \enlargethispage{-\@IEEEpubidpullup}% + \fi + \endgroup + \setcounter{footnote}{0}\let\maketitle\relax\let\@maketitle\relax + \gdef\@thanks{}% + % v1.6b do not clear these as we will need the title again for peer review papers + % \gdef\@author{}\gdef\@title{}% + \let\thanks\relax} + + +% V1.8 parbox to format \@IEEEtitleabstractindextext +\long\def\@IEEEtitleabstractindextextbox#1{\parbox{1\textwidth}{#1}} +% V1.8 compsoc is partial width +\ifCLASSOPTIONcompsoc +% comparison with proofs suggests it's in the range of 92.1-92.3% +\long\def\@IEEEtitleabstractindextextbox#1{\parbox{0.922\textwidth}{\@IEEEcompsocnotconfonly{\rightskip\@flushglue\leftskip\z@skip}#1}} +\fi + +% formats the Title, authors names, affiliations and special paper notice +% THIS IS A CONTROLLED SPACING COMMAND! Do not allow blank lines or unintentional +% spaces to enter the definition - use % at the end of each line +\def\@maketitle{\newpage +\bgroup\par\vskip\IEEEtitletopspace\vskip\IEEEtitletopspaceextra\centering% +\ifCLASSOPTIONtechnote% technotes, V1.8a abstract and index terms are not treated differently for compsoc technotes + {\bfseries\large\@IEEEcompsoconly{\Large\sffamily}\@title\par}\vskip 1.3em{\lineskip .5em\@IEEEcompsoconly{\large\sffamily}\@author + \@IEEEspecialpapernotice\par}\relax +\else% not a technote + \vskip0.2em{\Huge\ifCLASSOPTIONtransmag\bfseries\LARGE\fi\@IEEEcompsoconly{\sffamily}\@IEEEcompsocconfonly{\normalfont\normalsize\vskip 2\@IEEEnormalsizeunitybaselineskip + \bfseries\Large}\@IEEEcompsocnotconfonly{\vskip 0.75\@IEEEnormalsizeunitybaselineskip}\@title\par}\relax + \@IEEEcompsocnotconfonly{\vskip 0.5\@IEEEnormalsizeunitybaselineskip}\vskip1.0em\par% + % V1.6 handle \author differently if in conference mode + \ifCLASSOPTIONconference% + {\@IEEEspecialpapernotice\mbox{}\vskip\@IEEEauthorblockconfadjspace% + \mbox{}\hfill\begin{@IEEEauthorhalign}\@author\end{@IEEEauthorhalign}\hfill\mbox{}\par}\relax + \else% peerreviewca, peerreview or journal + \ifCLASSOPTIONpeerreviewca + % peerreviewca handles author names just like conference mode + {\@IEEEcompsoconly{\sffamily}\@IEEEspecialpapernotice\mbox{}\vskip\@IEEEauthorblockconfadjspace% + \mbox{}\hfill\begin{@IEEEauthorhalign}\@author\end{@IEEEauthorhalign}\hfill\mbox{}\par + {\@IEEEcompsoconly{\vskip 1.5em\relax + \@IEEEtitleabstractindextextbox{\@IEEEtitleabstractindextext}\par\noindent\hfill + \IEEEcompsocdiamondline\hfill\hbox{}\par}}}\relax + \else% journal, peerreview or transmag + \ifCLASSOPTIONtransmag + % transmag also handles author names just like conference mode + % it also uses \@IEEEtitleabstractindextex, but with one line less + % space above, and one more below + {\@IEEEspecialpapernotice\mbox{}\vskip\@IEEEauthorblockconfadjspace% + \mbox{}\hfill\begin{@IEEEauthorhalign}\@author\end{@IEEEauthorhalign}\hfill\mbox{}\par + {\vspace{0.5\baselineskip}\relax\@IEEEtitleabstractindextextbox{\@IEEEtitleabstractindextext}\vspace{-1\baselineskip}\par}}\relax + \else% journal or peerreview + {\lineskip.5em\@IEEEcompsoconly{\sffamily}\sublargesize\@author\@IEEEspecialpapernotice\par + {\@IEEEcompsoconly{\vskip 1.5em\relax + \@IEEEtitleabstractindextextbox{\@IEEEtitleabstractindextext}\par\noindent\hfill + \IEEEcompsocdiamondline\hfill\hbox{}\par}}}\relax + \fi + \fi + \fi +\fi\par\addvspace{0.5\baselineskip}\egroup} + + +% V1.7 Computer Society "diamond line" which follows index terms for nonconference papers +% V1.8a full width diamond line for single column use +\def\@IEEEcompsocdiamondlinei{\vrule depth 0pt height 0.5pt width 4cm\nobreak\hspace{7.5pt}\nobreak +\raisebox{-3.5pt}{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\fontsize{11}{12}\selectfont\char70}\nobreak +\hspace{7.5pt}\nobreak\vrule depth 0pt height 0.5pt width 4cm\relax} +% V1.8a narrower width diamond line for double column use +\def\@IEEEcompsocdiamondlineii{\vrule depth 0pt height 0.5pt width 2.5cm\nobreak\hspace{7.5pt}\nobreak +\raisebox{-3.5pt}{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\fontsize{11}{12}\selectfont\char70}\nobreak +\hspace{7.5pt}\nobreak\vrule depth 0pt height 0.5pt width 2.5cm\relax} +% V1.8a bare core without rules to base a last resort on for very narrow linewidths +\def\@IEEEcompsocdiamondlineiii{\mbox{}\nobreak\hspace{7.5pt}\nobreak +\raisebox{-3.5pt}{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\fontsize{11}{12}\selectfont\char70}\nobreak +\hspace{7.5pt}\nobreak\mbox{}\relax} + +% V1.8a allow \IEEEcompsocdiamondline to adjust for different linewidths. +% Use \@IEEEcompsocdiamondlinei if its width is less than 0.66\linewidth (0.487 nominal for single column) +% if not, fall back to \@IEEEcompsocdiamondlineii if its width is less than 0.75\linewidth (0.659 nominal for double column) +% if all else fails, try to make a custom diamondline based on the abnormally narrow linewidth +\def\IEEEcompsocdiamondline{\settowidth{\@IEEEtrantmpdimenA}{\@IEEEcompsocdiamondlinei}\relax +\ifdim\@IEEEtrantmpdimenA<0.66\linewidth\relax\@IEEEcompsocdiamondlinei\relax +\else +\settowidth{\@IEEEtrantmpdimenA}{\@IEEEcompsocdiamondlineii}\relax +\ifdim\@IEEEtrantmpdimenA<0.75\linewidth\relax\@IEEEcompsocdiamondlineii\relax +\else +\settowidth{\@IEEEtrantmpdimenA}{\@IEEEcompsocdiamondlineiii}\relax +\@IEEEtrantmpdimenB=\linewidth\relax +\addtolength{\@IEEEtrantmpdimenB}{-1\@IEEEtrantmpdimenA}\relax +\vrule depth 0pt height 0.5pt width 0.33\@IEEEtrantmpdimenB\@IEEEcompsocdiamondlineiii\vrule depth 0pt height 0.5pt width 0.33\@IEEEtrantmpdimenB\relax +\fi\fi} + + +% V1.7 standard LateX2e \thanks, but with \itshape under compsoc. Also make it a \long\def +% We also need to trigger the one-shot footnote rule +\def\@IEEEtriggeroneshotfootnoterule{\global\@IEEEenableoneshotfootnoteruletrue} + + +\long\def\thanks#1{\footnotemark + \protected@xdef\@thanks{\@thanks + \protect\footnotetext[\the\c@footnote]{\@IEEEcompsoconly{\itshape + \protect\@IEEEtriggeroneshotfootnoterule\relax}\ignorespaces#1}}} +\let\@thanks\@empty + + +% V1.7 allow \author to contain \par's. This is needed to allow \thanks to contain \par. +\long\def\author#1{\gdef\@author{#1}} + + +% in addition to setting up IEEEitemize, we need to remove a baselineskip space above and +% below it because \list's \pars introduce blank lines because of the footnote struts. +\def\@IEEEsetupcompsocitemizelist{\def\labelitemi{$\bullet$}% +\setlength{\IEEElabelindent}{0pt}\setlength{\labelsep}{1.2em}\setlength{\parskip}{0pt}% +\setlength{\partopsep}{0pt}\setlength{\topsep}{0.5\baselineskip}\vspace{-1\baselineskip}\relax} + + +% flag for fake non-compsoc \IEEEcompsocthanksitem - prevents line break on very first item +\newif\if@IEEEbreakcompsocthanksitem \@IEEEbreakcompsocthanksitemfalse + +\ifCLASSOPTIONcompsoc +% V1.7 compsoc bullet item \thanks +% also, we need to redefine this to destroy the argument in \IEEEquantizevspace +\long\def\IEEEcompsocitemizethanks#1{\relax\@IEEEbreakcompsocthanksitemfalse\footnotemark + \protected@xdef\@thanks{\@thanks + \protect\footnotetext[\the\c@footnote]{\itshape\protect\@IEEEtriggeroneshotfootnoterule + {\let\IEEEiedlistdecl\relax\protect\begin{IEEEitemize}[\protect\@IEEEsetupcompsocitemizelist]\ignorespaces#1\relax + \protect\end{IEEEitemize}}\protect\vspace{-1\baselineskip}}}} +\DeclareRobustCommand*{\IEEEcompsocthanksitem}{\item} +\else +% non-compsoc, allow for dual compilation via rerouting to normal \thanks +\long\def\IEEEcompsocitemizethanks#1{\thanks{#1}} +% redirect to "pseudo-par" \hfil\break\indent after swallowing [] from \IEEEcompsocthanksitem[] +\DeclareRobustCommand{\IEEEcompsocthanksitem}{\@ifnextchar [{\@IEEEthanksswallowoptionalarg}% +{\@IEEEthanksswallowoptionalarg[\relax]}} +% be sure and break only after first item, be sure and ignore spaces after optional argument +\def\@IEEEthanksswallowoptionalarg[#1]{\relax\if@IEEEbreakcompsocthanksitem\hfil\break +\indent\fi\@IEEEbreakcompsocthanksitemtrue\ignorespaces} +\fi + + +% V1.6b define the \IEEEpeerreviewmaketitle as needed +\ifCLASSOPTIONpeerreview +\def\IEEEpeerreviewmaketitle{\@IEEEcleardoublepage{empty}% +\ifCLASSOPTIONtwocolumn +\twocolumn[{\IEEEquantizevspace{\@IEEEpeerreviewmaketitle}[\IEEEquantizedisabletitlecmds]{0pt}[-\topskip]{\baselineskip}{\@IEEENORMtitlevspace}{\@IEEEMINtitlevspace}}] +\else +\newpage\@IEEEpeerreviewmaketitle\@IEEEstatictitlevskip +\fi +\thispagestyle{IEEEtitlepagestyle}} +\else +% \IEEEpeerreviewmaketitle does nothing if peer review option has not been selected +\def\IEEEpeerreviewmaketitle{\relax} +\fi + +% peerreview formats the repeated title like the title in journal papers. +\def\@IEEEpeerreviewmaketitle{\bgroup\par\addvspace{0.5\baselineskip}\centering\@IEEEcompsoconly{\sffamily}% +\normalfont\normalsize\vskip0.2em{\Huge\@title\par}\vskip1.0em\par +\par\addvspace{0.5\baselineskip}\egroup} + + + +% V1.6 +% this is a static rubber spacer between the title/authors and the main text +% used for single column text, or when the title appears in the first column +% of two column text (technotes). +\def\@IEEEstatictitlevskip{{\normalfont\normalsize +% adjust spacing to next text +% v1.6b handle peer review papers +\ifCLASSOPTIONpeerreview +% for peer review papers, the same value is used for both title pages +% regardless of the other paper modes + \vskip 1\baselineskip plus 0.375\baselineskip minus 0.1875\baselineskip +\else + \ifCLASSOPTIONconference% conference + \vskip 1\baselineskip plus 0.375\baselineskip minus 0.1875\baselineskip% + \else% + \ifCLASSOPTIONtechnote% technote + \vskip 1\baselineskip plus 0.375\baselineskip minus 0.1875\baselineskip% + \else% journal uses more space + \vskip 2.5\baselineskip plus 0.75\baselineskip minus 0.375\baselineskip% + \fi + \fi +\fi}} + + +% set the nominal and minimum values for the quantized title spacer +% the quantization algorithm will not allow the spacer size to +% become less than \@IEEEMINtitlevspace - instead it will be lengthened +% default to journal values +\def\@IEEENORMtitlevspace{2.5\baselineskip} +\def\@IEEEMINtitlevspace{2\baselineskip} +% conferences and technotes need tighter spacing +\ifCLASSOPTIONconference% conference + \def\@IEEENORMtitlevspace{1\baselineskip} + \def\@IEEEMINtitlevspace{0.75\baselineskip} +\fi +\ifCLASSOPTIONtechnote% technote + \def\@IEEENORMtitlevspace{1\baselineskip} + \def\@IEEEMINtitlevspace{0.75\baselineskip} +\fi + + +% V1.8a +\def\IEEEquantizevspace{\begingroup\@ifstar{\@IEEEquantizevspacestarformtrue\@IEEEquantizevspace}{\@IEEEquantizevspacestarformfalse\@IEEEquantizevspace}} +% \IEEEquantizevspace[output dimen register]{object}[object decl] +% {top baselineskip} +% [offset][prevdepth][lineskip limit][lineskip] +% {unit height}{nominal vspace}{minimum vspace} +% +% Calculates and creates the vspace needed to make the combined height with +% the given object an integer multiple of the given unit height. This command +% is more general than the older \@IEEEdynamictitlevspace it replaces. +% +% The star form has no effect at present, but is reserved for future use. +% +% If the optional argument [output dimen register] is given, the calculated +% vspace height is stored in the given output dimen (or skip) register +% and no other action is taken, otherwise the object followed by a vspace* +% of the appropriate height is evaluated/output. +% +% The optional object decl (declarations) is code that is evaluated just +% before the object's height is evaluated. Its intented purpose is to allow +% for the alteration or disabling of code within the object during internal +% height evaluation (e.g., \long\def\thanks#1{\relax} ). +% This special code is not invoked if/when the object is rendered at the end. +% +% The nominal vspace is the target value of the added vspace and the minimum +% vspace is the lower allowed limit. The vspacer will be the value that achieves +% integral overall height, in terms of the given unit height, that is closest +% to the nominal vspace and that is not less than the specified minimum vspace. +% +% The line spacing algorithm of TeX is somewhat involved and requires special +% care with regard to the first line of a vertical list (which is indicated +% when \prevdepth is -1000pt or less). top baselineskip specifies the +% baselineskip or topskip used prior to the object. If the height of the +% first line of the object is greater than the given top baselineskip, then +% the top baselineskip is subtracted from the height of the first line and +% that difference is considered along with the rest of the object height +% (because the object will be shifted down by an amount = +% top line height - top baselineskip). Otherwise, the height of the first line +% of the object is ignored as far as the calculations are concerned. +% This algorithm is adequate for objects that appear at the top of a page +% (e.g., titles) where \topskip spacing is used. +% +% However, as explained on page 78 of the TeXbook, interline spacing is more +% complex when \baselineskip is being used (indicated by \prevdepth > +% -1000pt). The four optional parameters offset, prevdepth, lineskip limit and +% lineskip are assumed to be equal to be 0pt, \prevdepth, \lineskiplimit and +% \lineskip, respectively, if they are omitted. +% +% The prevdepth is the depth of the line before the object, the lineskip limit +% specifies how close the top of the object can come to the bottom of the +% previous line before \baselineskip is ignored and \lineskip is inserted +% between the object and the line above it. Lineskip does not come into +% play unless the first line of the object is high enough to "get too close" +% (as specified by lineskiplimit) to the line before it. The the prevdepth, +% lineskip limit, and lineskip optional parameters are not needed for the +% first object/line on a page (i.e., prevdepth <= -1000pt) where the simplier +% \topskip spacing rules are in effect. +% +% Offset is a manual adjustment that is added to the height calculations of +% object irrespective of the value of \prevdepth. It is useful when the top +% baselineskip will result in a noninteger unit height object placement even +% if the object itself has integral height. e.g., a footnotesize baselineskip +% is used before the object, thus an offset of, say -3pt, can be given as a +% correction. + +% Common combinations of these parameters include: +% +% top baselineskip: (and default values for offset, prevdepth, etc.) +% \topskip % for objects that appear at the top of a page +% \maxdimen % always ignore the height of the top line +% 0pt % always consider any positive height of the top line +% +% for objects to appear inline in normal text: +% top baselineskip = \baselineskip +% +% set prevdepth = -1000pt and top baselineskip = 0pt to consider the +% overall height of the object without any other external skip +% consideration + +\newif\if@IEEEquantizevspacestarform % flag to indicate star form +\newif\if@IEEEquantizevspaceuseoutdimenreg % flag to indicate output dimen register is to be used +% Use our own private registers because the object could contain a +% structure that uses the existing tmp scratch pad registers +\newdimen\@IEEEquantizeheightA +\newdimen\@IEEEquantizeheightB +\newdimen\@IEEEquantizeheightC +\newdimen\@IEEEquantizeprevdepth % need to save this early as can change +\newcount\@IEEEquantizemultiple +\newbox\@IEEEquantizeboxA + + +\def\@IEEEquantizevspace{\@ifnextchar [{\@IEEEquantizevspaceuseoutdimenregtrue\@@IEEEquantizevspace}{\@IEEEquantizevspaceuseoutdimenregfalse\@@IEEEquantizevspace[]}} + + +\long\def\@@IEEEquantizevspace[#1]#2{\relax +% acquire and store +% #1 optional output dimen register +% #2 object +\edef\@IEEEquantizeoutdimenreg{#1}\relax +% allow for object specifications that contain parameters +\@IEEEtrantmptoksA={#2}\relax +\long\edef\@IEEEquantizeobject{\the\@IEEEtrantmptoksA}\relax +\@ifnextchar [{\@@@IEEEquantizevspace}{\@@@IEEEquantizevspace[\relax]}} + +\long\def\@@@IEEEquantizevspace[#1]#2{\relax +% acquire and store +% [#1] optional object decl, is \relax if not given by user +% #2 top baselineskip +% allow for object decl specifications that have parameters +\@IEEEtrantmptoksA={#1}\relax +\long\edef\@IEEEquantizeobjectdecl{\the\@IEEEtrantmptoksA}\relax +\edef\@IEEEquantizetopbaselineskip{#2}\ivIEEEquantizevspace} + +% acquire optional argument set and store +% [offset][prevdepth][lineskip limit][lineskip] +\def\ivIEEEquantizevspace{\@ifnextchar [{\@vIEEEquantizevspace}{\@vIEEEquantizevspace[0pt]}} +\def\@vIEEEquantizevspace[#1]{\edef\@IEEEquantizeoffset{#1}\@ifnextchar [{\@viIEEEquantizevspace}{\@viIEEEquantizevspace[\prevdepth]}} +\def\@viIEEEquantizevspace[#1]{\@IEEEquantizeprevdepth=#1\relax\@ifnextchar [{\@viiIEEEquantizevspace}{\@viiIEEEquantizevspace[\lineskiplimit]}} +\def\@viiIEEEquantizevspace[#1]{\edef\@IEEEquantizelineskiplimit{#1}\@ifnextchar [{\@viiiIEEEquantizevspace}{\@viiiIEEEquantizevspace[\lineskip]}} +\def\@viiiIEEEquantizevspace[#1]{\edef\@IEEEquantizelineskip{#1}\@ixIEEEquantizevspace} + +% main routine +\def\@ixIEEEquantizevspace#1#2#3{\relax +\edef\@IEEEquantizeunitheight{#1}\relax +\edef\@IEEEquantizenomvspace{#2}\relax +\edef\@IEEEquantizeminvspace{#3}\relax +% \@IEEEquantizeoutdimenreg +% \@IEEEquantizeobject +% \@IEEEquantizeobjectdecl +% \@IEEEquantizetopbaselineskip +% \@IEEEquantizeoffset +% \@IEEEquantizeprevdepth +% \@IEEEquantizelineskiplimit +% \@IEEEquantizelineskip +% \@IEEEquantizeunitheight +% \@IEEEquantizenomvspace +% \@IEEEquantizeminvspace +% get overall height of object +\setbox\@IEEEquantizeboxA\vbox{\begingroup\@IEEEquantizeobjectdecl\@IEEEquantizeobject\relax\endgroup}\relax +\@IEEEquantizeheightA\ht\@IEEEquantizeboxA\relax +% get height of first line of object +\setbox\@IEEEquantizeboxA\vtop{\begingroup\@IEEEquantizeobjectdecl\@IEEEquantizeobject\relax\endgroup}\relax +\@IEEEquantizeheightB\ht\@IEEEquantizeboxA\relax +\ifdim\@IEEEquantizeprevdepth>-1000pt\relax % prevdepth > -1000pf means full baselineskip\lineskip rules in effect +% lineskip spacing rule takes effect if height of top line > baselineskip - prevdepth - lineskiplimit, +% otherwise the baselineskip rule is in effect and the height of the first line does not matter at all. +\@IEEEquantizeheightC=\@IEEEquantizetopbaselineskip\relax +\advance\@IEEEquantizeheightC-\@IEEEquantizeprevdepth\relax +\advance\@IEEEquantizeheightC-\@IEEEquantizelineskiplimit\relax % this works even though \@IEEEquantizelineskiplimit is a macro because TeX allows --10pt notation +\ifdim\@IEEEquantizeheightB>\@IEEEquantizeheightC\relax +% lineskip spacing rule is in effect i.e., the object is going to be shifted down relative to the +% baselineskip set position by its top line height (already a part of the total height) + prevdepth + lineskip - baselineskip +\advance\@IEEEquantizeheightA\@IEEEquantizeprevdepth\relax +\advance\@IEEEquantizeheightA\@IEEEquantizelineskip\relax +\advance\@IEEEquantizeheightA-\@IEEEquantizetopbaselineskip\relax +\else +% height of first line <= \@IEEEquantizetopbaselineskip - \@IEEEquantizeprevdepth - \@IEEEquantizelineskiplimit +% standard baselineskip rules are in effect, so don't consider height of first line +\advance\@IEEEquantizeheightA-\@IEEEquantizeheightB\relax +\fi +% +\else % prevdepth <= -1000pt, simplier \topskip type rules in effect +\ifdim\@IEEEquantizeheightB>\@IEEEquantizetopbaselineskip +% height of top line (already included in the total height) in excess of +% baselineskip is the amount it will be downshifted +\advance\@IEEEquantizeheightA-\@IEEEquantizetopbaselineskip\relax +\else +% height of first line is irrelevant, remove it +\advance\@IEEEquantizeheightA-\@IEEEquantizeheightB\relax +\fi +\fi % prevdepth <= -1000pt +% +% adjust height for any manual offset +\advance\@IEEEquantizeheightA\@IEEEquantizeoffset\relax +% add in nominal spacer +\advance\@IEEEquantizeheightA\@IEEEquantizenomvspace\relax +% check for nonzero unitheight +\@IEEEquantizeheightB=\@IEEEquantizeunitheight\relax +\ifnum\@IEEEquantizeheightB=0\relax +\@IEEEclspkgerror{IEEEquantizevspace unit height cannot be zero. Assuming 10pt.}% +{Division by zero is not allowed.} +\@IEEEquantizeheightB=10pt\relax +\fi +% get integer number of lines +\@IEEEquantizemultiple=\@IEEEquantizeheightA\relax +\divide\@IEEEquantizemultiple\@IEEEquantizeheightB\relax +% set A to contain the excess height over the \@IEEEquantizemultiple of lines +% A = height - multiple*unitheight +\@IEEEquantizeheightC\@IEEEquantizeheightB\relax +\multiply\@IEEEquantizeheightC\@IEEEquantizemultiple\relax +\advance\@IEEEquantizeheightA-\@IEEEquantizeheightC\relax +% set B to contain the height short of \@IEEEquantizemultiple+1 of lines +% B = unitheight - A +\advance\@IEEEquantizeheightB-\@IEEEquantizeheightA\relax +% choose A or B based on which is closer +\@IEEEquantizeheightC\@IEEEquantizenomvspace\relax +\ifdim\@IEEEquantizeheightA<\@IEEEquantizeheightB\relax +% C = nomvspace - A, go with lower +\advance\@IEEEquantizeheightC-\@IEEEquantizeheightA\relax +\else +% C = nomvspace + B, go with upper +\advance\@IEEEquantizeheightC\@IEEEquantizeheightB\relax +\fi +% if violate lower bound, use next integer bound +\ifdim\@IEEEquantizeheightC<\@IEEEquantizeminvspace\relax +% A + B = unitheight +\advance\@IEEEquantizeheightC\@IEEEquantizeheightA\relax +\advance\@IEEEquantizeheightC\@IEEEquantizeheightB\relax +\fi +% export object and spacer outside of group +\global\let\@IEEEquantizeobjectout\@IEEEquantizeobject\relax +\global\@IEEEquantizeheightC\@IEEEquantizeheightC\relax +\endgroup +\if@IEEEquantizevspaceuseoutdimenreg +\@IEEEquantizeoutdimenreg=\@IEEEquantizeheightC\relax +\else +\@IEEEquantizeobjectout\relax +\vskip\@IEEEquantizeheightC\relax +\fi} + + +% user command to disable all global assignments, possible use within object decl +\def\IEEEquantizedisableglobal{\let\global\relax +\let\gdef\def +\let\xdef\edef} +% user command to allow for the disabling of \thanks and other commands, possible use within object decl +\def\IEEEquantizedisabletitlecmds{\long\def\thanks##1{\relax}\relax +\long\def\IEEEcompsocitemizethanks##1{\relax}\def\newpage{\relax}} + + + + + +% V1.6 +% we allow the user access to the last part of the title area +% useful in emergencies such as when a different spacing is needed +% This text is NOT compensated for in the dynamic sizer. +\let\@IEEEaftertitletext=\relax +\long\def\IEEEaftertitletext#1{\def\@IEEEaftertitletext{#1}} + + +% V1.7 provide a way for users to enter abstract and keywords +% into the onecolumn title are. This text is compensated for +% in the dynamic sizer. +\let\@IEEEtitleabstractindextext=\relax +\long\def\IEEEtitleabstractindextext#1{\def\@IEEEtitleabstractindextext{#1}} + +% V1.7 provide a way for users to get the \@IEEEtitleabstractindextext if +% not in compsoc or transmag journal mode - this way abstract and keywords +% can still be placed in their conventional position if not in those modes. +\def\IEEEdisplaynontitleabstractindextext{% +% display for all conference formats +\ifCLASSOPTIONconference\@IEEEtitleabstractindextext\relax +\else% non-conferences + % V1.8a display for all technotes + \ifCLASSOPTIONtechnote\@IEEEtitleabstractindextext\relax + % V1.8a add diamond line after abstract and index terms for compsoc technotes + \@IEEEcompsoconly{\noindent\hfill\IEEEcompsocdiamondline\hfill\hbox{}\par}\relax + \else % non-conferences and non-technotes + \ifCLASSOPTIONcompsoc% display if not compsoc and not transmag + \else + \ifCLASSOPTIONtransmag + \else% not compsoc journal nor transmag journal + \@IEEEtitleabstractindextext\relax + \fi + \fi + \fi +\fi} + + +% command to allow alteration of baselinestretch, but only if the current +% baselineskip is unity. Used to tweak the compsoc abstract and keywords line spacing. +\def\@IEEEtweakunitybaselinestretch#1{{\def\baselinestretch{1}\selectfont +\global\@tempskipa\baselineskip}\ifnum\@tempskipa=\baselineskip% +\def\baselinestretch{#1}\selectfont\fi\relax} + + +% abstract and keywords are in \small, except +% for 9pt docs in which they are in \footnotesize +% Because 9pt docs use an 8pt footnotesize, \small +% becomes a rather awkward 8.5pt +\def\@IEEEabskeysecsize{\small} +\ifx\CLASSOPTIONpt\@IEEEptsizenine + \def\@IEEEabskeysecsize{\footnotesize} +\fi + +% compsoc journals use \footnotesize, compsoc conferences use normalsize +\@IEEEcompsoconly{\def\@IEEEabskeysecsize{\footnotesize}} +\@IEEEcompsocconfonly{\def\@IEEEabskeysecsize{\small}} + + +% V1.6 have abstract and keywords strip leading spaces, pars and newlines +% so that spacing is more tightly controlled. +\def\abstract{\normalfont + \if@twocolumn + \@IEEEabskeysecsize\bfseries\textit{\abstractname}---\relax + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\vspace{-1.78ex}\@IEEEabskeysecsize\textbf{\abstractname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize + \fi\@IEEEgobbleleadPARNLSP} +% V1.6 The IEEE wants only 1 pica from end of abstract to introduction heading when in +% conference mode (the heading already has this much above it) +\def\endabstract{\relax\ifCLASSOPTIONconference\vspace{0ex}\else\vspace{1.34ex}\fi\par\if@twocolumn\else\endquotation\fi + \normalfont\normalsize} + +\def\IEEEkeywords{\normalfont + \if@twocolumn + \@IEEEabskeysecsize\bfseries\textit{\IEEEkeywordsname}---\relax + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\@IEEEabskeysecsize\textbf{\IEEEkeywordsname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize + \fi\@IEEEgobbleleadPARNLSP} +\def\endIEEEkeywords{\relax\ifCLASSOPTIONtechnote\vspace{1.34ex}\else\vspace{0.67ex}\fi + \par\if@twocolumn\else\endquotation\fi% + \normalfont\normalsize} + +% V1.7 compsoc keywords index terms +\ifCLASSOPTIONcompsoc + \ifCLASSOPTIONconference% compsoc conference +\def\abstract{\normalfont\@IEEEtweakunitybaselinestretch{1.15}\bfseries + \if@twocolumn + \@IEEEabskeysecsize\noindent\textit{\abstractname}---\relax + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\vspace{-1.78ex}\@IEEEabskeysecsize\textbf{\abstractname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize% + \fi\@IEEEgobbleleadPARNLSP} +\def\IEEEkeywords{\normalfont\@IEEEtweakunitybaselinestretch{1.15}\bfseries + \if@twocolumn + \@IEEEabskeysecsize\vskip 0.5\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip\noindent + \textit{\IEEEkeywordsname}---\relax + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\@IEEEabskeysecsize\textbf{\IEEEkeywordsname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize% + \fi\@IEEEgobbleleadPARNLSP} + \else% compsoc not conference +\def\abstract{\normalfont\@IEEEtweakunitybaselinestretch{1.15}\sffamily + \if@twocolumn + \@IEEEabskeysecsize\noindent\textbf{\abstractname}---\relax + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\vspace{-1.78ex}\@IEEEabskeysecsize\textbf{\abstractname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize% + \fi\@IEEEgobbleleadPARNLSP} +\def\IEEEkeywords{\normalfont\@IEEEtweakunitybaselinestretch{1.15}\sffamily + \if@twocolumn + \@IEEEabskeysecsize\vskip 0.5\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip\noindent + \textbf{\IEEEkeywordsname}---\relax + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\@IEEEabskeysecsize\textbf{\IEEEkeywordsname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize% + \fi\@IEEEgobbleleadPARNLSP} + \fi +\fi + +% V1.8 transmag keywords index terms +% no abstract name, use indentation +\ifCLASSOPTIONtransmag +\def\abstract{\normalfont\parindent 1em\relax + \if@twocolumn + \@IEEEabskeysecsize\bfseries\indent + \else + \bgroup\par\addvspace{0.5\baselineskip}\centering\vspace{-1.78ex}\@IEEEabskeysecsize + \textbf{\abstractname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize + \fi\@IEEEgobbleleadPARNLSP} + +\def\IEEEkeywords{\normalfont\parindent 1em\relax + \if@twocolumn + \@IEEEabskeysecsize\vspace{1\baselineskip}\bfseries\indent\textit{\IEEEkeywordsname}---\relax + \else + \bgroup\par\vspace{1\baselineskip}\centering\@IEEEabskeysecsize + \textbf{\IEEEkeywordsname}\par\addvspace{0.5\baselineskip}\egroup\quotation\@IEEEabskeysecsize + \fi\@IEEEgobbleleadPARNLSP} +\fi + + + +% gobbles all leading \, \\ and \par, upon finding first token that +% is not a \ , \\ or a \par, it ceases and returns that token +% +% used to strip leading \, \\ and \par from the input +% so that such things in the beginning of an environment will not +% affect the formatting of the text +\long\def\@IEEEgobbleleadPARNLSP#1{\let\@IEEEswallowthistoken=0% +\let\@IEEEgobbleleadPARNLSPtoken#1% +\let\@IEEEgobbleleadPARtoken=\par% +\let\@IEEEgobbleleadNLtoken=\\% +\let\@IEEEgobbleleadSPtoken=\ % +\def\@IEEEgobbleleadSPMACRO{\ }% +\ifx\@IEEEgobbleleadPARNLSPtoken\@IEEEgobbleleadPARtoken% +\let\@IEEEswallowthistoken=1% +\fi% +\ifx\@IEEEgobbleleadPARNLSPtoken\@IEEEgobbleleadNLtoken% +\let\@IEEEswallowthistoken=1% +\fi% +\ifx\@IEEEgobbleleadPARNLSPtoken\@IEEEgobbleleadSPtoken% +\let\@IEEEswallowthistoken=1% +\fi% +% a control space will come in as a macro +% when it is the last one on a line +\ifx\@IEEEgobbleleadPARNLSPtoken\@IEEEgobbleleadSPMACRO% +\let\@IEEEswallowthistoken=1% +\fi% +% if we have to swallow this token, do so and taste the next one +% else spit it out and stop gobbling +\ifx\@IEEEswallowthistoken 1\let\@IEEEnextgobbleleadPARNLSP=\@IEEEgobbleleadPARNLSP\else% +\let\@IEEEnextgobbleleadPARNLSP=#1\fi% +\@IEEEnextgobbleleadPARNLSP}% + + + + +% TITLING OF SECTIONS +\def\@IEEEsectpunct{:\ \,} % Punctuation after run-in section heading (headings which are + % part of the paragraphs), need little bit more than a single space + % spacing from section number to title +% compsoc conferences use regular period/space punctuation +\ifCLASSOPTIONcompsoc +\ifCLASSOPTIONconference +\def\@IEEEsectpunct{.\ } +\fi\fi + + +\def\@seccntformat#1{\csname the#1dis\endcsname\hskip 0.5em\relax} + +\ifCLASSOPTIONcompsoc +% compsoc journals need extra spacing +\ifCLASSOPTIONconference\else +\def\@seccntformat#1{\csname the#1dis\endcsname\hskip 1em\relax} +\fi\fi + +%v1.7 put {} after #6 to allow for some types of user font control +%and use \@@par rather than \par +\def\@sect#1#2#3#4#5#6[#7]#8{% + \ifnum #2>\c@secnumdepth + \let\@svsec\@empty + \else + \refstepcounter{#1}% + % load section label and spacer into \@svsec + \protected@edef\@svsec{\@seccntformat{#1}\relax}% + \fi% + \@tempskipa #5\relax + \ifdim \@tempskipa>\z@% tempskipa determines whether is treated as a high + \begingroup #6{\relax% or low level heading + \noindent % subsections are NOT indented + % print top level headings. \@svsec is label, #8 is heading title + % The IEEE does not block indent the section title text, it flows like normal + {\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\@@par}}% + \endgroup + \addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth\relax\else + \protect\numberline{\csname the#1\endcsname}\fi#7}% + \else % printout low level headings + % svsechd seems to swallow the trailing space, protect it with \mbox{} + % got rid of sectionmark stuff + \def\@svsechd{#6{\hskip #3\relax\@svsec #8\@IEEEsectpunct\mbox{}}% + \addcontentsline{toc}{#1}{\ifnum #2>\c@secnumdepth\relax\else + \protect\numberline{\csname the#1\endcsname}\fi#7}}% + \fi%skip down + \@xsect{#5}} + + +% section* handler +%v1.7 put {} after #4 to allow for some types of user font control +%and use \@@par rather than \par +\def\@ssect#1#2#3#4#5{\@tempskipa #3\relax + \ifdim \@tempskipa>\z@ + %\begingroup #4\@hangfrom{\hskip #1}{\interlinepenalty \@M #5\par}\endgroup + % The IEEE does not block indent the section title text, it flows like normal + \begingroup \noindent #4{\relax{\hskip #1}{\interlinepenalty \@M #5\@@par}}\endgroup + % svsechd swallows the trailing space, protect it with \mbox{} + \else \def\@svsechd{#4{\hskip #1\relax #5\@IEEEsectpunct\mbox{}}}\fi + \@xsect{#3}} + + +%% SECTION heading spacing and font +%% +% arguments are: #1 - sectiontype name +% (for \@sect) #2 - section level +% #3 - section heading indent +% #4 - top separation (absolute value used, neg indicates not to indent main text) +% If negative, make stretch parts negative too! +% #5 - (absolute value used) positive: bottom separation after heading, +% negative: amount to indent main text after heading +% Both #4 and #5 negative means to indent main text and use negative top separation +% #6 - font control +% You've got to have \normalfont\normalsize in the font specs below to prevent +% trouble when you do something like: +% \section{Note}{\ttfamily TT-TEXT} is known to ... +% The IEEE sometimes REALLY stretches the area before a section +% heading by up to about 0.5in. However, it may not be a good +% idea to let LaTeX have quite this much rubber. +\ifCLASSOPTIONconference% +% The IEEE wants section heading spacing to decrease for conference mode +\def\section{\@startsection{section}{1}{\z@}{1.5ex plus 1.5ex minus 0.5ex}% +{0.7ex plus 1ex minus 0ex}{\normalfont\normalsize\centering\scshape}}% +\def\subsection{\@startsection{subsection}{2}{\z@}{1.5ex plus 1.5ex minus 0.5ex}% +{0.7ex plus .5ex minus 0ex}{\normalfont\normalsize\itshape}}% +\else % for journals +\def\section{\@startsection{section}{1}{\z@}{3.0ex plus 1.5ex minus 1.5ex}% V1.6 3.0ex from 3.5ex +{0.7ex plus 1ex minus 0ex}{\normalfont\normalsize\centering\scshape}}% +\def\subsection{\@startsection{subsection}{2}{\z@}{3.5ex plus 1.5ex minus 1.5ex}% +{0.7ex plus .5ex minus 0ex}{\normalfont\normalsize\itshape}}% +\fi + +% for both journals and conferences +% decided to put in a little rubber above the section, might help somebody +\def\subsubsection{\@startsection{subsubsection}{3}{\parindent}{0ex plus 0.1ex minus 0.1ex}% +{0ex}{\normalfont\normalsize\itshape}}% +\def\paragraph{\@startsection{paragraph}{4}{2\parindent}{0ex plus 0.1ex minus 0.1ex}% +{0ex}{\normalfont\normalsize\itshape}}% + + +% compsoc +\ifCLASSOPTIONcompsoc +\ifCLASSOPTIONconference +% compsoc conference +\def\section{\@startsection{section}{1}{\z@}{1\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip}% +{1\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip}{\normalfont\large\bfseries}}% +\def\subsection{\@startsection{subsection}{2}{\z@}{1\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip}% +{1\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip}{\normalfont\sublargesize\bfseries}}% +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{1\baselineskip plus 0.25\baselineskip minus 0.25\baselineskip}% +{0ex}{\normalfont\normalsize\bfseries}}% +\def\paragraph{\@startsection{paragraph}{4}{2\parindent}{0ex plus 0.1ex minus 0.1ex}% +{0ex}{\normalfont\normalsize}}% +\else% compsoc journals +% use negative top separation as compsoc journals do not indent paragraphs after section titles +\def\section{\@startsection{section}{1}{\z@}{-3.5ex plus -2ex minus -1.5ex}% +{0.7ex plus 1ex minus 0ex}{\normalfont\sublargesize\sffamily\bfseries\scshape}}% +% Note that subsection and smaller may not be correct for the Computer Society, +% I have to look up an example. +\def\subsection{\@startsection{subsection}{2}{\z@}{-3.5ex plus -1.5ex minus -1.5ex}% +{0.7ex plus .5ex minus 0ex}{\normalfont\normalsize\sffamily\bfseries}}% +\def\subsubsection{\@startsection{subsubsection}{3}{\z@}{-2.5ex plus -1ex minus -1ex}% +{0.5ex plus 0.5ex minus 0ex}{\normalfont\normalsize\sffamily\itshape}}% +\def\paragraph{\@startsection{paragraph}{4}{2\parindent}{-0ex plus -0.1ex minus -0.1ex}% +{0ex}{\normalfont\normalsize}}% +\fi\fi + +% transmag +\ifCLASSOPTIONtransmag +\def\subsection{\@startsection{subsection}{2}{0.75\parindent}{3.5ex plus 1.5ex minus 1.5ex}% +{0.7ex plus .5ex minus 0ex}{\normalfont\normalsize\itshape}}% +\def\subsubsection{\@startsection{subsubsection}{3}{1.25\parindent}{0.1ex plus 0.1ex minus 0.1ex}% +{0.1ex}{\normalfont\normalsize\itshape}}% +\fi + + +% V1.8a provide for a raised line Introduction section for use with Computer +% Society papers. We have to remove any spacing glue after the section +% heading and then remove the blank line for the new paragraph after it. +% LaTeX's section handler alters \everypar and we need to propogate those +% changes outside of the \parbox lest there be spacing problems at the top +% of the next section. +\def\IEEEraisesectionheading#1{\noindent\raisebox{1.5\baselineskip}[0pt][0pt]{\parbox[b]{\columnwidth}{#1\unskip\global\everypar=\everypar}}\vspace{-1\baselineskip}\vspace{-\parskip}\par} + + + +%% ENVIRONMENTS +% "box" symbols at end of proofs +\def\IEEEQEDclosed{\mbox{\rule[0pt]{1.3ex}{1.3ex}}} % for a filled box +% V1.6 some journals use an open box instead that will just fit around a closed one +\def\IEEEQEDopen{{\setlength{\fboxsep}{0pt}\setlength{\fboxrule}{0.2pt}\fbox{\rule[0pt]{0pt}{1.3ex}\rule[0pt]{1.3ex}{0pt}}}} +\ifCLASSOPTIONcompsoc +\def\IEEEQED{\IEEEQEDopen} % default to open for compsoc +\else +\def\IEEEQED{\IEEEQEDclosed} % otherwise default to closed +\fi + +%V1.8 flag to indicate if QED symbol is to be shown +\newif\if@IEEEQEDshow \@IEEEQEDshowtrue +\def\IEEEproofindentspace{2\parindent}% V1.8 allow user to change indentation amount if desired +% v1.7 name change to avoid namespace collision with amsthm. Also add support +% for an optional argument. +\def\IEEEproof{\@ifnextchar[{\@IEEEproof}{\@IEEEproof[\IEEEproofname]}} +\def\@IEEEproof[#1]{\@IEEEQEDshowtrue\par\noindent\hspace{\IEEEproofindentspace}{\itshape #1: }} +\def\endIEEEproof{\if@IEEEQEDshow\hspace*{\fill}\nobreakspace\IEEEQED\fi\par} +% qedhere for equation environments, similar to AMS \qedhere +\def\IEEEQEDhereeqn{\global\@IEEEQEDshowfalse\eqno\let\eqno\relax\let\leqno\relax + \let\veqno\relax\hbox{\IEEEQED}} +% IEEE style qedhere for IEEEeqnarray and other environments +\def\IEEEQEDhere{\global\@IEEEQEDshowfalse\IEEEQED} +% command to disable QED at end of IEEEproof +\def\IEEEQEDoff{\global\@IEEEQEDshowfalse} + + +%\itemindent is set to \z@ by list, so define new temporary variable +\newdimen\@IEEEtmpitemindent + +\ifCLASSOPTIONcompsoc +% V1.8a compsoc uses bold theorem titles, a period instead of a colon, vertical spacing, and hanging indentation +% V1.8 allow long theorem names to break across lines. +% Thanks to Miquel Payaro for reporting this. +\def\@begintheorem#1#2{\@IEEEtmpitemindent\itemindent\relax + \topsep 0.2\@IEEEnormalsizeunitybaselineskip plus 0.26\@IEEEnormalsizeunitybaselineskip minus 0.05\@IEEEnormalsizeunitybaselineskip + \rmfamily\trivlist\hangindent\parindent% + \item[]\textit{\bfseries\noindent #1\ #2.} \itemindent\@IEEEtmpitemindent\relax} +\def\@opargbegintheorem#1#2#3{\@IEEEtmpitemindent\itemindent\relax +\topsep 0.2\@IEEEnormalsizeunitybaselineskip plus 0.26\@IEEEnormalsizeunitybaselineskip minus 0.05\@IEEEnormalsizeunitybaselineskip +\rmfamily\trivlist\hangindent\parindent% +% V1.6 The IEEE is back to using () around theorem names which are also in italics +% Thanks to Christian Peel for reporting this. + \item[]\textit{\bfseries\noindent #1\ #2\ (#3).} \itemindent\@IEEEtmpitemindent\relax} +% V1.7 remove bogus \unskip that caused equations in theorems to collide with +% lines below. +\def\@endtheorem{\endtrivlist\vskip 0.25\@IEEEnormalsizeunitybaselineskip plus 0.26\@IEEEnormalsizeunitybaselineskip minus 0.05\@IEEEnormalsizeunitybaselineskip} +\else +% +% noncompsoc +% +% V1.8 allow long theorem names to break across lines. +% Thanks to Miquel Payaro for reporting this. +\def\@begintheorem#1#2{\@IEEEtmpitemindent\itemindent\relax\topsep 0pt\rmfamily\trivlist% + \item[]\textit{\indent #1\ #2:} \itemindent\@IEEEtmpitemindent\relax} +\def\@opargbegintheorem#1#2#3{\@IEEEtmpitemindent\itemindent\relax\topsep 0pt\rmfamily \trivlist% +% V1.6 The IEEE is back to using () around theorem names which are also in italics +% Thanks to Christian Peel for reporting this. + \item[]\textit{\indent #1\ #2\ (#3):} \itemindent\@IEEEtmpitemindent\relax} +% V1.7 remove bogus \unskip that caused equations in theorems to collide with +% lines below. +\def\@endtheorem{\endtrivlist} +\fi + + + +% V1.6 +% display command for the section the theorem is in - so that \thesection +% is not used as this will be in Roman numerals when we want arabic. +% LaTeX2e uses \def\@thmcounter#1{\noexpand\arabic{#1}} for the theorem number +% (second part) display and \def\@thmcountersep{.} as a separator. +% V1.7 intercept calls to the section counter and reroute to \@IEEEthmcounterinsection +% to allow \appendix(ices} to override as needed. +% +% special handler for sections, allows appendix(ices) to override +\gdef\@IEEEthmcounterinsection#1{\arabic{#1}} +% string macro +\edef\@IEEEstringsection{section} + +% redefine the #1#2[#3] form of newtheorem to use a hook to \@IEEEthmcounterinsection +% if section in_counter is used +\def\@xnthm#1#2[#3]{% + \expandafter\@ifdefinable\csname #1\endcsname + {\@definecounter{#1}\@newctr{#1}[#3]% + \edef\@IEEEstringtmp{#3} + \ifx\@IEEEstringtmp\@IEEEstringsection + \expandafter\xdef\csname the#1\endcsname{% + \noexpand\@IEEEthmcounterinsection{#3}\@thmcountersep + \@thmcounter{#1}}% + \else + \expandafter\xdef\csname the#1\endcsname{% + \expandafter\noexpand\csname the#3\endcsname \@thmcountersep + \@thmcounter{#1}}% + \fi + \global\@namedef{#1}{\@thm{#1}{#2}}% + \global\@namedef{end#1}{\@endtheorem}}} + + + +%% SET UP THE DEFAULT PAGESTYLE +\pagestyle{headings} +\pagenumbering{arabic} + +% normally the page counter starts at 1 +\setcounter{page}{1} +% however, for peerreview the cover sheet is page 0 or page -1 +% (for duplex printing) +\ifCLASSOPTIONpeerreview + \if@twoside + \setcounter{page}{-1} + \else + \setcounter{page}{0} + \fi +\fi + +% standard book class behavior - let bottom line float up and down as +% needed when single sided +\ifCLASSOPTIONtwoside\else\raggedbottom\fi +% if two column - turn on twocolumn, allow word spacings to stretch more and +% enforce a rigid position for the last lines +\ifCLASSOPTIONtwocolumn +% the peer review option delays invoking twocolumn + \ifCLASSOPTIONpeerreview\else + \twocolumn + \fi +\sloppy +\flushbottom +\fi + + + + +% \APPENDIX and \APPENDICES definitions + +% This is the \@ifmtarg command from the LaTeX ifmtarg package +% by Peter Wilson (CUA) and Donald Arseneau +% \@ifmtarg is used to determine if an argument to a command +% is present or not. +% For instance: +% \@ifmtarg{#1}{\typeout{empty}}{\typeout{has something}} +% \@ifmtarg is used with our redefined \section command if +% \appendices is invoked. +% The command \section will behave slightly differently depending +% on whether the user specifies a title: +% \section{My appendix title} +% or not: +% \section{} +% This way, we can eliminate the blank lines where the title +% would be, and the unneeded : after Appendix in the table of +% contents +\begingroup +\catcode`\Q=3 +\long\gdef\@ifmtarg#1{\@xifmtarg#1QQ\@secondoftwo\@firstoftwo\@nil} +\long\gdef\@xifmtarg#1#2Q#3#4#5\@nil{#4} +\endgroup +% end of \@ifmtarg defs + + +% V1.7 +% command that allows the one time saving of the original definition +% of section to \@IEEEappendixsavesection for \appendix or \appendices +% we don't save \section here as it may be redefined later by other +% packages (hyperref.sty, etc.) +\def\@IEEEsaveoriginalsectiononce{\let\@IEEEappendixsavesection\section +\let\@IEEEsaveoriginalsectiononce\relax} + +% neat trick to grab and process the argument from \section{argument} +% we process differently if the user invoked \section{} with no +% argument (title) +% note we reroute the call to the old \section* +\def\@IEEEprocessthesectionargument#1{% +\@ifmtarg{#1}{% +\@IEEEappendixsavesection*{\appendixname\nobreakspace\thesectiondis}% +\addcontentsline{toc}{section}{\appendixname\nobreakspace\thesection}}{% +\@IEEEappendixsavesection*{\appendixname\nobreakspace\thesectiondis\\* #1}% +\addcontentsline{toc}{section}{\appendixname\nobreakspace\thesection: #1}}} + +% we use this if the user calls \section{} after +% \appendix-- which has no meaning. So, we ignore the +% command and its argument. Then, warn the user. +\def\@IEEEdestroythesectionargument#1{\typeout{** WARNING: Ignoring useless +\protect\section\space in Appendix (line \the\inputlineno).}} + + +% remember \thesection forms will be displayed in \ref calls +% and in the Table of Contents. +% The \sectiondis form is used in the actual heading itself + +% appendix command for one single appendix +% normally has no heading. However, if you want a +% heading, you can do so via the optional argument: +% \appendix[Optional Heading] +\def\appendix{\relax} +\renewcommand{\appendix}[1][]{\@IEEEsaveoriginalsectiononce\par + % v1.6 keep hyperref's identifiers unique + \gdef\theHsection{Appendix.A}% + % v1.6 adjust hyperref's string name for the section + \xdef\Hy@chapapp{appendix}% + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \setcounter{subsubsection}{0}% + \setcounter{paragraph}{0}% + \gdef\thesection{A}% + \gdef\thesectiondis{}% + \gdef\thesubsection{\Alph{subsection}}% + \gdef\@IEEEthmcounterinsection##1{A} + \refstepcounter{section}% update the \ref counter + \@ifmtarg{#1}{\@IEEEappendixsavesection*{\appendixname}% + \addcontentsline{toc}{section}{\appendixname}}{% + \@IEEEappendixsavesection*{\appendixname\nobreakspace\\* #1}% + \addcontentsline{toc}{section}{\appendixname: #1}}% + % redefine \section command for appendix + % leave \section* as is + \def\section{\@ifstar{\@IEEEappendixsavesection*}{% + \@IEEEdestroythesectionargument}}% throw out the argument + % of the normal form +} + + + +% appendices command for multiple appendices +% user then calls \section with an argument (possibly empty) to +% declare the individual appendices +\def\appendices{\@IEEEsaveoriginalsectiononce\par + % v1.6 keep hyperref's identifiers unique + \gdef\theHsection{Appendix.\Alph{section}}% + % v1.6 adjust hyperref's string name for the section + \xdef\Hy@chapapp{appendix}% + \setcounter{section}{-1}% we want \refstepcounter to use section 0 + \setcounter{subsection}{0}% + \setcounter{subsubsection}{0}% + \setcounter{paragraph}{0}% + \ifCLASSOPTIONromanappendices% + \gdef\thesection{\Roman{section}}% + \gdef\thesectiondis{\Roman{section}}% + \@IEEEcompsocconfonly{\gdef\thesectiondis{\Roman{section}.}}% + \gdef\@IEEEthmcounterinsection##1{A\arabic{##1}} + \else% + \gdef\thesection{\Alph{section}}% + \gdef\thesectiondis{\Alph{section}}% + \@IEEEcompsocconfonly{\gdef\thesectiondis{\Alph{section}.}}% + \gdef\@IEEEthmcounterinsection##1{\Alph{##1}} + \fi% + \refstepcounter{section}% update the \ref counter + \setcounter{section}{0}% NEXT \section will be the FIRST appendix + % redefine \section command for appendices + % leave \section* as is + \def\section{\@ifstar{\@IEEEappendixsavesection*}{% process the *-form + \refstepcounter{section}% or is a new section so, + \@IEEEprocessthesectionargument}}% process the argument + % of the normal form +} + + + +% V1.7 compoc uses nonbold drop cap and small caps word style +\ifCLASSOPTIONcompsoc + \def\IEEEPARstartFONTSTYLE{\mdseries} + \def\IEEEPARstartWORDFONTSTYLE{\scshape} + \def\IEEEPARstartWORDCAPSTYLE{\relax} +\fi +% +% +% \IEEEPARstart +% Definition for the big two line drop cap letter at the beginning of the +% first paragraph of journal papers. The first argument is the first letter +% of the first word, the second argument is the remaining letters of the +% first word which will be rendered in upper case. +% In V1.6 this has been completely rewritten to: +% +% 1. no longer have problems when the user begins an environment +% within the paragraph that uses \IEEEPARstart. +% 2. auto-detect and use the current font family +% 3. revise handling of the space at the end of the first word so that +% interword glue will now work as normal. +% 4. produce correctly aligned edges for the (two) indented lines. +% +% We generalize things via control macros - playing with these is fun too. +% +% V1.7 added more control macros to make it easy for IEEEtrantools.sty users +% to change the font style. +% +% the number of lines that are indented to clear it +% may need to increase if using decenders +\providecommand{\IEEEPARstartDROPLINES}{2} +% minimum number of lines left on a page to allow a \@IEEEPARstart +% Does not take into consideration rubber shrink, so it tends to +% be overly cautious +\providecommand{\IEEEPARstartMINPAGELINES}{2} +% V1.7 the height of the drop cap is adjusted to match the height of this text +% in the current font (when \IEEEPARstart is called). +\providecommand{\IEEEPARstartHEIGHTTEXT}{T} +% the depth the letter is lowered below the baseline +% the height (and size) of the letter is determined by the sum +% of this value and the height of the \IEEEPARstartHEIGHTTEXT in the current +% font. It is a good idea to set this value in terms of the baselineskip +% so that it can respond to changes therein. +\providecommand{\IEEEPARstartDROPDEPTH}{1.1\baselineskip} +% V1.7 the font the drop cap will be rendered in, +% can take zero or one argument. +\providecommand{\IEEEPARstartFONTSTYLE}{\bfseries} +% V1.7 any additional, non-font related commands needed to modify +% the drop cap letter, can take zero or one argument. +\providecommand{\IEEEPARstartCAPSTYLE}{\MakeUppercase} +% V1.7 the font that will be used to render the rest of the word, +% can take zero or one argument. +\providecommand{\IEEEPARstartWORDFONTSTYLE}{\relax} +% V1.7 any additional, non-font related commands needed to modify +% the rest of the word, can take zero or one argument. +\providecommand{\IEEEPARstartWORDCAPSTYLE}{\MakeUppercase} +% This is the horizontal separation distance from the drop letter to the main text. +% Lengths that depend on the font (e.g., ex, em, etc.) will be referenced +% to the font that is active when \IEEEPARstart is called. +\providecommand{\IEEEPARstartSEP}{0.15em} +% V1.7 horizontal offset applied to the left of the drop cap. +\providecommand{\IEEEPARstartHOFFSET}{0em} +% V1.7 Italic correction command applied at the end of the drop cap. +\providecommand{\IEEEPARstartITLCORRECT}{\/} + +% width of the letter output, set globally. Can be used in \IEEEPARstartSEP +% or \IEEEPARstartHOFFSET, but not the height lengths. +\newdimen\IEEEPARstartletwidth +\IEEEPARstartletwidth 0pt\relax + +% definition of \IEEEPARstart +% THIS IS A CONTROLLED SPACING AREA, DO NOT ALLOW SPACES WITHIN THESE LINES +% +% The token \@IEEEPARstartfont will be globally defined after the first use +% of \IEEEPARstart and will be a font command which creates the big letter +% The first argument is the first letter of the first word and the second +% argument is the rest of the first word(s). +\def\IEEEPARstart#1#2{\par{% +% if this page does not have enough space, break it and lets start +% on a new one +\@IEEEtranneedspace{\IEEEPARstartMINPAGELINES\baselineskip}{\relax}% +% V1.7 move this up here in case user uses \textbf for \IEEEPARstartFONTSTYLE +% which uses command \leavevmode which causes an unwanted \indent to be issued +\noindent +% calculate the desired height of the big letter +% it extends from the top of \IEEEPARstartHEIGHTTEXT in the current font +% down to \IEEEPARstartDROPDEPTH below the current baseline +\settoheight{\@IEEEtrantmpdimenA}{\IEEEPARstartHEIGHTTEXT}% +\addtolength{\@IEEEtrantmpdimenA}{\IEEEPARstartDROPDEPTH}% +% extract the name of the current font in bold +% and place it in \@IEEEPARstartFONTNAME +\def\@IEEEPARstartGETFIRSTWORD##1 ##2\relax{##1}% +{\IEEEPARstartFONTSTYLE{\selectfont\edef\@IEEEPARstartFONTNAMESPACE{\fontname\font\space}% +\xdef\@IEEEPARstartFONTNAME{\expandafter\@IEEEPARstartGETFIRSTWORD\@IEEEPARstartFONTNAMESPACE\relax}}}% +% define a font based on this name with a point size equal to the desired +% height of the drop letter +\font\@IEEEPARstartsubfont\@IEEEPARstartFONTNAME\space at \@IEEEtrantmpdimenA\relax% +% save this value as a counter (integer) value (sp points) +\@IEEEtrantmpcountA=\@IEEEtrantmpdimenA% +% now get the height of the actual letter produced by this font size +\settoheight{\@IEEEtrantmpdimenB}{\@IEEEPARstartsubfont\IEEEPARstartCAPSTYLE{#1}}% +% If something bogus happens like the first argument is empty or the +% current font is strange, do not allow a zero height. +\ifdim\@IEEEtrantmpdimenB=0pt\relax% +\typeout{** WARNING: IEEEPARstart drop letter has zero height! (line \the\inputlineno)}% +\typeout{ Forcing the drop letter font size to 10pt.}% +\@IEEEtrantmpdimenB=10pt% +\fi% +% and store it as a counter +\@IEEEtrantmpcountB=\@IEEEtrantmpdimenB% +% Since a font size doesn't exactly correspond to the height of the capital +% letters in that font, the actual height of the letter, \@IEEEtrantmpcountB, +% will be less than that desired, \@IEEEtrantmpcountA +% we need to raise the font size, \@IEEEtrantmpdimenA +% by \@IEEEtrantmpcountA / \@IEEEtrantmpcountB +% But, TeX doesn't have floating point division, so we have to use integer +% division. Hence the use of the counters. +% We need to reduce the denominator so that the loss of the remainder will +% have minimal affect on the accuracy of the result +\divide\@IEEEtrantmpcountB by 200% +\divide\@IEEEtrantmpcountA by \@IEEEtrantmpcountB% +% Then reequalize things when we use TeX's ability to multiply by +% floating point values +\@IEEEtrantmpdimenB=0.005\@IEEEtrantmpdimenA% +\multiply\@IEEEtrantmpdimenB by \@IEEEtrantmpcountA% +% \@IEEEPARstartfont is globaly set to the calculated font of the big letter +% We need to carry this out of the local calculation area to to create the +% big letter. +\global\font\@IEEEPARstartfont\@IEEEPARstartFONTNAME\space at \@IEEEtrantmpdimenB% +% Now set \@IEEEtrantmpdimenA to the width of the big letter +% We need to carry this out of the local calculation area to set the +% hanging indent +\settowidth{\global\@IEEEtrantmpdimenA}{\@IEEEPARstartfont +\IEEEPARstartCAPSTYLE{#1\IEEEPARstartITLCORRECT}}}% +% end of the isolated calculation environment +\global\IEEEPARstartletwidth\@IEEEtrantmpdimenA\relax% +% add in the extra clearance we want +\advance\@IEEEtrantmpdimenA by \IEEEPARstartSEP\relax% +% add in the optional offset +\advance\@IEEEtrantmpdimenA by \IEEEPARstartHOFFSET\relax% +% V1.7 don't allow negative offsets to produce negative hanging indents +\@IEEEtrantmpdimenB\@IEEEtrantmpdimenA +\ifnum\@IEEEtrantmpdimenB < 0 \@IEEEtrantmpdimenB 0pt\fi +% \@IEEEtrantmpdimenA has the width of the big letter plus the +% separation space and \@IEEEPARstartfont is the font we need to use +% Now, we make the letter and issue the hanging indent command +% The letter is placed in a box of zero width and height so that other +% text won't be displaced by it. +\hangindent\@IEEEtrantmpdimenB\hangafter=-\IEEEPARstartDROPLINES% +\makebox[0pt][l]{\hspace{-\@IEEEtrantmpdimenA}% +\raisebox{-\IEEEPARstartDROPDEPTH}[0pt][0pt]{\hspace{\IEEEPARstartHOFFSET}% +\@IEEEPARstartfont\IEEEPARstartCAPSTYLE{#1\IEEEPARstartITLCORRECT}% +\hspace{\IEEEPARstartSEP}}}% +{\IEEEPARstartWORDFONTSTYLE{\IEEEPARstartWORDCAPSTYLE{\selectfont#2}}}} + + + + +% determines if the space remaining on a given page is equal to or greater +% than the specified space of argument one +% if not, execute argument two (only if the remaining space is greater than zero) +% and issue a \newpage +% +% example: \@IEEEtranneedspace{2in}{\vfill} +% +% Does not take into consideration rubber shrinkage, so it tends to +% be overly cautious +% Based on an example posted by Donald Arseneau +% Note this macro uses \@IEEEtrantmpdimenB internally for calculations, +% so DO NOT PASS \@IEEEtrantmpdimenB to this routine +% if you need a dimen register, import with \@IEEEtrantmpdimenA instead +\def\@IEEEtranneedspace#1#2{\penalty-100\begingroup%shield temp variable +\@IEEEtrantmpdimenB\pagegoal\advance\@IEEEtrantmpdimenB-\pagetotal% space left +\ifdim #1>\@IEEEtrantmpdimenB\relax% not enough space left +\ifdim\@IEEEtrantmpdimenB>\z@\relax #2\fi% +\newpage% +\fi\endgroup} + + + +% IEEEbiography ENVIRONMENT +% Allows user to enter biography leaving place for picture (adapts to font size) +% As of V1.5, a new optional argument allows you to have a real graphic! +% V1.5 and later also fixes the "colliding biographies" which could happen when a +% biography's text was shorter than the space for the photo. +% MDS 7/2001 +% V1.6 prevent multiple biographies from making multiple TOC entries +\newif\if@IEEEbiographyTOCentrynotmade +\global\@IEEEbiographyTOCentrynotmadetrue + +% biography counter so hyperref can jump directly to the biographies +% and not just the previous section +\newcounter{IEEEbiography} +\setcounter{IEEEbiography}{0} + +% photo area size +\def\@IEEEBIOphotowidth{1.0in} % width of the biography photo area +\def\@IEEEBIOphotodepth{1.25in} % depth (height) of the biography photo area +% area cleared for photo +\def\@IEEEBIOhangwidth{1.14in} % width cleared for the biography photo area +\def\@IEEEBIOhangdepth{1.25in} % depth cleared for the biography photo area + % actual depth will be a multiple of + % \baselineskip, rounded up +\def\@IEEEBIOskipN{4\baselineskip}% nominal value of the vskip above the biography + +\newenvironment{IEEEbiography}[2][]{\normalfont\@IEEEcompsoconly{\sffamily}\footnotesize% +\unitlength 1in\parskip=0pt\par\parindent 1em\interlinepenalty500% +% we need enough space to support the hanging indent +% the nominal value of the spacer +% and one extra line for good measure +\@IEEEtrantmpdimenA=\@IEEEBIOhangdepth% +\advance\@IEEEtrantmpdimenA by \@IEEEBIOskipN% +\advance\@IEEEtrantmpdimenA by 1\baselineskip% +% if this page does not have enough space, break it and lets start +% with a new one +\@IEEEtranneedspace{\@IEEEtrantmpdimenA}{\relax}% +% nominal spacer can strech, not shrink use 1fil so user can out stretch with \vfill +\vskip \@IEEEBIOskipN plus 1fil minus 0\baselineskip% +% the default box for where the photo goes +\def\@IEEEtempbiographybox{{\setlength{\fboxsep}{0pt}\framebox{% +\begin{minipage}[b][\@IEEEBIOphotodepth][c]{\@IEEEBIOphotowidth}\centering PLACE\\ PHOTO\\ HERE \end{minipage}}}}% +% +% detect if the optional argument was supplied, this requires the +% \@ifmtarg command as defined in the appendix section above +% and if so, override the default box with what they want +\@ifmtarg{#1}{\relax}{\def\@IEEEtempbiographybox{\mbox{\begin{minipage}[b][\@IEEEBIOphotodepth][c]{\@IEEEBIOphotowidth}% +\centering% +#1% +\end{minipage}}}}% end if optional argument supplied +% Make an entry into the table of contents only if we have not done so before +\if@IEEEbiographyTOCentrynotmade% +% link labels to the biography counter so hyperref will jump +% to the biography, not the previous section +\setcounter{IEEEbiography}{-1}% +\refstepcounter{IEEEbiography}% +\addcontentsline{toc}{section}{Biographies}% +\global\@IEEEbiographyTOCentrynotmadefalse% +\fi% +% one more biography +\refstepcounter{IEEEbiography}% +% Make an entry for this name into the table of contents +\addcontentsline{toc}{subsection}{#2}% +% V1.6 properly handle if a new paragraph should occur while the +% hanging indent is still active. Do this by redefining \par so +% that it will not start a new paragraph. (But it will appear to the +% user as if it did.) Also, strip any leading pars, newlines, or spaces. +\let\@IEEEBIOORGparCMD=\par% save the original \par command +\edef\par{\hfil\break\indent}% the new \par will not be a "real" \par +\settoheight{\@IEEEtrantmpdimenA}{\@IEEEtempbiographybox}% get height of biography box +\@IEEEtrantmpdimenB=\@IEEEBIOhangdepth% +\@IEEEtrantmpcountA=\@IEEEtrantmpdimenB% countA has the hang depth +\divide\@IEEEtrantmpcountA by \baselineskip% calculates lines needed to produce the hang depth +\advance\@IEEEtrantmpcountA by 1% ensure we overestimate +% set the hanging indent +\hangindent\@IEEEBIOhangwidth% +\hangafter-\@IEEEtrantmpcountA% +% reference the top of the photo area to the top of a capital T +\settoheight{\@IEEEtrantmpdimenB}{\mbox{T}}% +% set the photo box, give it zero width and height so as not to disturb anything +\noindent\makebox[0pt][l]{\hspace{-\@IEEEBIOhangwidth}\raisebox{\@IEEEtrantmpdimenB}[0pt][0pt]{% +\raisebox{-\@IEEEBIOphotodepth}[0pt][0pt]{\@IEEEtempbiographybox}}}% +% now place the author name and begin the bio text +\noindent\textbf{#2\ }\@IEEEgobbleleadPARNLSP}{\relax\let\par=\@IEEEBIOORGparCMD\par% +% 7/2001 V1.5 detect when the biography text is shorter than the photo area +% and pad the unused area - preventing a collision from the next biography entry +% MDS +\ifnum \prevgraf <\@IEEEtrantmpcountA\relax% detect when the biography text is shorter than the photo + \advance\@IEEEtrantmpcountA by -\prevgraf% calculate how many lines we need to pad + \advance\@IEEEtrantmpcountA by -1\relax% we compensate for the fact that we indented an extra line + \@IEEEtrantmpdimenA=\baselineskip% calculate the length of the padding + \multiply\@IEEEtrantmpdimenA by \@IEEEtrantmpcountA% + \noindent\rule{0pt}{\@IEEEtrantmpdimenA}% insert an invisible support strut +\fi% +\par\normalfont} + + + +% V1.6 +% added biography without a photo environment +\newenvironment{IEEEbiographynophoto}[1]{% +% Make an entry into the table of contents only if we have not done so before +\if@IEEEbiographyTOCentrynotmade% +% link labels to the biography counter so hyperref will jump +% to the biography, not the previous section +\setcounter{IEEEbiography}{-1}% +\refstepcounter{IEEEbiography}% +\addcontentsline{toc}{section}{Biographies}% +\global\@IEEEbiographyTOCentrynotmadefalse% +\fi% +% one more biography +\refstepcounter{IEEEbiography}% +% Make an entry for this name into the table of contents +\addcontentsline{toc}{subsection}{#1}% +\normalfont\@IEEEcompsoconly{\sffamily}\footnotesize\interlinepenalty500% +\vskip 4\baselineskip plus 1fil minus 0\baselineskip% +\parskip=0pt\par% +\noindent\textbf{#1\ }\@IEEEgobbleleadPARNLSP}{\relax\par\normalfont} + + +% provide the user with some old font commands +% got this from article.cls +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} + + +% SPECIAL PAPER NOTICE COMMANDS +% +% holds the special notice text +\def\@IEEEspecialpapernotice{\relax} + +% for special papers, like invited papers, the user can do: +% \IEEEspecialpapernotice{(Invited Paper)} before \maketitle +\def\IEEEspecialpapernotice#1{\ifCLASSOPTIONconference% +\def\@IEEEspecialpapernotice{{\sublargesize\textit{#1}\vspace*{1em}}}% +\else% +\def\@IEEEspecialpapernotice{{\\*[1.5ex]\sublargesize\textit{#1}}\vspace*{-2ex}}% +\fi} + + + + +% PUBLISHER ID COMMANDS +% to insert a publisher's ID footer +% V1.6 \IEEEpubid has been changed so that the change in page size and style +% occurs in \maketitle. \IEEEpubid must now be issued prior to \maketitle +% use \IEEEpubidadjcol as before - in the second column of the title page +% These changes allow \maketitle to take the reduced page height into +% consideration when dynamically setting the space between the author +% names and the maintext. +% +% the amount the main text is pulled up to make room for the +% publisher's ID footer +% The IEEE uses about 1.3\baselineskip for journals, +% dynamic title spacing will clean up the fraction +\def\@IEEEpubidpullup{1.3\baselineskip} +\ifCLASSOPTIONtechnote +% for technotes it must be an integer of baselineskip as there can be no +% dynamic title spacing for two column mode technotes (the title is in the +% in first column) and we should maintain an integer number of lines in the +% second column +% There are some examples (such as older issues of "Transactions on +% Information Theory") in which the IEEE really pulls the text off the ID for +% technotes - about 0.55in (or 4\baselineskip). We'll use 2\baselineskip +% and call it even. +\def\@IEEEpubidpullup{2\baselineskip} +\fi + +% V1.7 compsoc does not use a pullup +\ifCLASSOPTIONcompsoc +\def\@IEEEpubidpullup{0pt} +\fi + +% holds the ID text +\def\@IEEEpubid{\relax} + +% flag so \maketitle can tell if \IEEEpubid was called +\newif\if@IEEEusingpubid +\global\@IEEEusingpubidfalse +% issue this command in the page to have the ID at the bottom +% V1.6 use before \maketitle +\def\IEEEpubid#1{\def\@IEEEpubid{#1}\global\@IEEEusingpubidtrue} + + +% command which will pull up (shorten) the column it is executed in +% to make room for the publisher ID. Place in the second column of +% the title page when using \IEEEpubid +% Is smart enough not to do anything when in single column text or +% if the user hasn't called \IEEEpubid +% currently needed in for the second column of a page with the +% publisher ID. If not needed in future releases, please provide this +% command and define it as \relax for backward compatibility +% v1.6b do not allow command to operate if the peer review option has been +% selected because \IEEEpubidadjcol will not be on the cover page. +% V1.7 do nothing if compsoc +\def\IEEEpubidadjcol{\ifCLASSOPTIONcompsoc\else\ifCLASSOPTIONpeerreview\else +\if@twocolumn\if@IEEEusingpubid\enlargethispage{-\@IEEEpubidpullup}\fi\fi\fi\fi} + +% Special thanks to Peter Wilson, Daniel Luecking, and the other +% gurus at comp.text.tex, for helping me to understand how best to +% implement the IEEEpubid command in LaTeX. + + + +%% Lockout some commands under various conditions + +% general purpose bit bucket +\newsavebox{\@IEEEtranrubishbin} + +% flags to prevent multiple warning messages +\newif\if@IEEEWARNthanks +\newif\if@IEEEWARNIEEEPARstart +\newif\if@IEEEWARNIEEEbiography +\newif\if@IEEEWARNIEEEbiographynophoto +\newif\if@IEEEWARNIEEEpubid +\newif\if@IEEEWARNIEEEpubidadjcol +\newif\if@IEEEWARNIEEEmembership +\newif\if@IEEEWARNIEEEaftertitletext +\@IEEEWARNthankstrue +\@IEEEWARNIEEEPARstarttrue +\@IEEEWARNIEEEbiographytrue +\@IEEEWARNIEEEbiographynophototrue +\@IEEEWARNIEEEpubidtrue +\@IEEEWARNIEEEpubidadjcoltrue +\@IEEEWARNIEEEmembershiptrue +\@IEEEWARNIEEEaftertitletexttrue + + +%% Lockout some commands when in various modes, but allow them to be restored if needed +%% +% save commands which might be locked out +% so that the user can later restore them if needed +\let\@IEEESAVECMDthanks\thanks +\let\@IEEESAVECMDIEEEPARstart\IEEEPARstart +\let\@IEEESAVECMDIEEEbiography\IEEEbiography +\let\@IEEESAVECMDendIEEEbiography\endIEEEbiography +\let\@IEEESAVECMDIEEEbiographynophoto\IEEEbiographynophoto +\let\@IEEESAVECMDendIEEEbiographynophoto\endIEEEbiographynophoto +\let\@IEEESAVECMDIEEEpubid\IEEEpubid +\let\@IEEESAVECMDIEEEpubidadjcol\IEEEpubidadjcol +\let\@IEEESAVECMDIEEEmembership\IEEEmembership +\let\@IEEESAVECMDIEEEaftertitletext\IEEEaftertitletext + + +% disable \IEEEPARstart when in draft mode +% This may have originally been done because the pre-V1.6 drop letter +% algorithm had problems with a non-unity baselinestretch +% At any rate, it seems too formal to have a drop letter in a draft +% paper. +\ifCLASSOPTIONdraftcls +\def\IEEEPARstart#1#2{#1#2\if@IEEEWARNIEEEPARstart\typeout{** ATTENTION: \noexpand\IEEEPARstart + is disabled in draft mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEPARstartfalse} +\fi +% and for technotes +\ifCLASSOPTIONtechnote +\def\IEEEPARstart#1#2{#1#2\if@IEEEWARNIEEEPARstart\typeout{** WARNING: \noexpand\IEEEPARstart + is locked out for technotes (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEPARstartfalse} +\fi + + +% lockout unneeded commands when in conference mode +\ifCLASSOPTIONconference +% when locked out, \thanks, \IEEEbiography, \IEEEbiographynophoto, \IEEEpubid, +% \IEEEmembership and \IEEEaftertitletext will all swallow their given text. +% \IEEEPARstart will output a normal character instead +% warn the user about these commands only once to prevent the console screen +% from filling up with redundant messages +\def\thanks#1{\if@IEEEWARNthanks\typeout{** WARNING: \noexpand\thanks + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNthanksfalse} +\def\IEEEPARstart#1#2{#1#2\if@IEEEWARNIEEEPARstart\typeout{** WARNING: \noexpand\IEEEPARstart + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEPARstartfalse} + + +% LaTeX treats environments and commands with optional arguments differently. +% the actual ("internal") command is stored as \\commandname +% (accessed via \csname\string\commandname\endcsname ) +% the "external" command \commandname is a macro with code to determine +% whether or not the optional argument is presented and to provide the +% default if it is absent. So, in order to save and restore such a command +% we would have to save and restore \\commandname as well. But, if LaTeX +% ever changes the way it names the internal names, the trick would break. +% Instead let us just define a new environment so that the internal +% name can be left undisturbed. +\newenvironment{@IEEEbogusbiography}[2][]{\if@IEEEWARNIEEEbiography\typeout{** WARNING: \noexpand\IEEEbiography + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEbiographyfalse% +\setbox\@IEEEtranrubishbin\vbox\bgroup}{\egroup\relax} +% and make biography point to our bogus biography +\let\IEEEbiography=\@IEEEbogusbiography +\let\endIEEEbiography=\end@IEEEbogusbiography + +\renewenvironment{IEEEbiographynophoto}[1]{\if@IEEEWARNIEEEbiographynophoto\typeout{** WARNING: \noexpand\IEEEbiographynophoto + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEbiographynophotofalse% +\setbox\@IEEEtranrubishbin\vbox\bgroup}{\egroup\relax} + +\def\IEEEpubid#1{\if@IEEEWARNIEEEpubid\typeout{** WARNING: \noexpand\IEEEpubid + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEpubidfalse} +\def\IEEEpubidadjcol{\if@IEEEWARNIEEEpubidadjcol\typeout{** WARNING: \noexpand\IEEEpubidadjcol + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEpubidadjcolfalse} +\def\IEEEmembership#1{\if@IEEEWARNIEEEmembership\typeout{** WARNING: \noexpand\IEEEmembership + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEmembershipfalse} +\def\IEEEaftertitletext#1{\if@IEEEWARNIEEEaftertitletext\typeout{** WARNING: \noexpand\IEEEaftertitletext + is locked out when in conference mode (line \the\inputlineno).}\fi\global\@IEEEWARNIEEEaftertitletextfalse} +\fi + + +% provide a way to restore the commands that are locked out +\def\IEEEoverridecommandlockouts{% +\typeout{** ATTENTION: Overriding command lockouts (line \the\inputlineno).}% +\let\thanks\@IEEESAVECMDthanks% +\let\IEEEPARstart\@IEEESAVECMDIEEEPARstart% +\let\IEEEbiography\@IEEESAVECMDIEEEbiography% +\let\endIEEEbiography\@IEEESAVECMDendIEEEbiography% +\let\IEEEbiographynophoto\@IEEESAVECMDIEEEbiographynophoto% +\let\endIEEEbiographynophoto\@IEEESAVECMDendIEEEbiographynophoto% +\let\IEEEpubid\@IEEESAVECMDIEEEpubid% +\let\IEEEpubidadjcol\@IEEESAVECMDIEEEpubidadjcol% +\let\IEEEmembership\@IEEESAVECMDIEEEmembership% +\let\IEEEaftertitletext\@IEEESAVECMDIEEEaftertitletext} + + + +% need a backslash character for typeout output +{\catcode`\|=0 \catcode`\\=12 +|xdef|@IEEEbackslash{\}} + + +% hook to allow easy disabling of all legacy warnings +\def\@IEEElegacywarn#1#2{\typeout{** ATTENTION: \@IEEEbackslash #1 is deprecated (line \the\inputlineno). +Use \@IEEEbackslash #2 instead.}} + + +% provide some legacy IEEEtran commands +\def\IEEEcompsoctitleabstractindextext{\@IEEElegacywarn{IEEEcompsoctitleabstractindextext}{IEEEtitleabstractindextext}\IEEEtitleabstractindextext} +\def\IEEEdisplaynotcompsoctitleabstractindextext{\@IEEElegacywarn{IEEEdisplaynotcompsoctitleabstractindextext}{IEEEdisplaynontitleabstractindextext}\IEEEdisplaynontitleabstractindextext} +% provide some legacy IEEEtran environments + + +% V1.8a no more support for these legacy commands +%\def\authorblockA{\@IEEElegacywarn{authorblockA}{IEEEauthorblockA}\IEEEauthorblockA} +%\def\authorblockN{\@IEEElegacywarn{authorblockN}{IEEEauthorblockN}\IEEEauthorblockN} +%\def\authorrefmark{\@IEEElegacywarn{authorrefmark}{IEEEauthorrefmark}\IEEEauthorrefmark} +%\def\PARstart{\@IEEElegacywarn{PARstart}{IEEEPARstart}\IEEEPARstart} +%\def\pubid{\@IEEElegacywarn{pubid}{IEEEpubid}\IEEEpubid} +%\def\pubidadjcol{\@IEEElegacywarn{pubidadjcol}{IEEEpubidadjcol}\IEEEpubidadjcol} +%\def\specialpapernotice{\@IEEElegacywarn{specialpapernotice}{IEEEspecialpapernotice}\IEEEspecialpapernotice} +% and environments +%\def\keywords{\@IEEElegacywarn{keywords}{IEEEkeywords}\IEEEkeywords} +%\def\endkeywords{\endIEEEkeywords} +% V1.8 no more support for legacy IED list commands +%\let\labelindent\IEEElabelindent +%\def\calcleftmargin{\@IEEElegacywarn{calcleftmargin}{IEEEcalcleftmargin}\IEEEcalcleftmargin} +%\def\setlabelwidth{\@IEEElegacywarn{setlabelwidth}{IEEEsetlabelwidth}\IEEEsetlabelwidth} +%\def\usemathlabelsep{\@IEEElegacywarn{usemathlabelsep}{IEEEusemathlabelsep}\IEEEusemathlabelsep} +%\def\iedlabeljustifyc{\@IEEElegacywarn{iedlabeljustifyc}{IEEEiedlabeljustifyc}\IEEEiedlabeljustifyc} +%\def\iedlabeljustifyl{\@IEEElegacywarn{iedlabeljustifyl}{IEEEiedlabeljustifyl}\IEEEiedlabeljustifyl} +%\def\iedlabeljustifyr{\@IEEElegacywarn{iedlabeljustifyr}{IEEEiedlabeljustifyr}\IEEEiedlabeljustifyr} +% V1.8 no more support for QED and proof stuff +%\def\QED{\@IEEElegacywarn{QED}{IEEEQED}\IEEEQED} +%\def\QEDclosed{\@IEEElegacywarn{QEDclosed}{IEEEQEDclosed}\IEEEQEDclosed} +%\def\QEDopen{\@IEEElegacywarn{QEDopen}{IEEEQEDopen}\IEEEQEDopen} +%\AtBeginDocument{\def\proof{\@IEEElegacywarn{proof}{IEEEproof}\IEEEproof}\def\endproof{\endIEEEproof}} +% V1.8 no longer support biography or biographynophoto +%\def\biography{\@IEEElegacywarn{biography}{IEEEbiography}\IEEEbiography} +%\def\biographynophoto{\@IEEElegacywarn{biographynophoto}{IEEEbiographynophoto}\IEEEbiographynophoto} +%\def\endbiography{\endIEEEbiography} +%\def\endbiographynophoto{\endIEEEbiographynophoto} +% V1.7 and later no longer supports \overrideIEEEmargins +%\def\overrideIEEEmargins{% +%\typeout{** WARNING: \string\overrideIEEEmargins \space no longer supported (line \the\inputlineno).}% +%\typeout{** Use the \string\CLASSINPUTinnersidemargin, \string\CLASSINPUToutersidemargin \space controls instead.}} + +\endinput + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% End of IEEEtran.cls %%%%%%%%%%%%%%%%%%%%%%%%%%%% +% That's all folks! + diff --git a/IEEEtran/IEEEtran_HOWTO.pdf b/IEEEtran/IEEEtran_HOWTO.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c8e41daaa36290e7529058ad5c7f4b363d52d801 GIT binary patch literal 671626 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

ViArc*b6 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�QVu3Bl)Lf85491PWO7pS*_s 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 TDf)0Kmwlj#Q5hZF=_U!h~@#Iq#x(UN*V>V+L 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 literal 0 HcmV?d00001 diff --git a/IEEEtran/README b/IEEEtran/README new file mode 100644 index 0000000..0454aa4 --- /dev/null +++ b/IEEEtran/README @@ -0,0 +1,140 @@ + +August 26, 2015 + + +IEEEtran is a LaTeX class for authors of the Institute of Electrical and +Electronics Engineers (IEEE) transactions journals and conferences. +The latest version of the IEEEtran package can be found at CTAN: + +http://www.ctan.org/pkg/ieeetran + +as well as within IEEE's site: + +http://www.ieee.org/ + +For latest news, helpful tips, answers to frequently asked questions, +beta releases and other support, visit the IEEEtran home page at my +website: + +http://www.michaelshell.org/tex/ieeetran/ + +Version 1.8b has a number of significant changes over the v1.8a release. +For a full history of changes, please read the file changelog.txt. +The most notable changes in this release include: + + 1) Added new comsoc mode for the IEEE Communications Society. + This mode (at present) only invokes the use of the newtxmath math fonts. + + 2) Revised IEEEeqnarray column specifications to work with active " + (or other punctuation catcode changes) as with babel under the + german or ngerman language modes. + Thanks to Stefan M. Moser for reporting this problem. + + 3) Added \indexspace and other index related macros as newer versions of + article.cls now do. These macros are needed to avoid an error when + using the glossaries package. + Thanks to Sebastian Nyberg for suggesting this change. + + 4) Fixed odd/even page header font bug under compsoc mode and + other page style code improvements. + Thanks to Marco Paolieri for reporting this problem. + + 5) Added hooks to allow for easy control of spacing above title. + + 6) Added the \IEEEnoauxwrite command. + Thanks to Sudarshan Mukherjee for suggesting this feature. + + +NOTE: Take care not to confuse the "comsoc" and "compsoc" class +options/modes as they are very different: + +comsoc ==> IEEE Communications Society +compsoc ==> IEEE Computer Society + +The comsoc mode requires that an acceptable Times math font be available on +the LaTeX system. This requirement will be enforced by IEEEtran in comsoc +mode. Either the freely available newtxmath font by Michael Sharpe +http://www.ctan.org/pkg/newtx +(version 1.451, July 28, 2015 or later is recommended) +or the commercial MathTime font (e.g., mtpro2.sty) is acceptable. +See Section II-D (2.4) "Class Options - comsoc, compsoc, transmag" of +the IEEEtran HOWTO for more details. + + +Best wishes for all your publication endeavors, + +Michael Shell +http://www.michaelshell.org/ + + +***************************** Subdirectories ****************************** + +bibtex - The IEEEtran BibTeX style package. + +extras - Supplementary material that may be of interest. + +testflow - The testflow diagnostic suite for verifying PS/PDF output. + +tools - The IEEEtrantools.sty package which provides several commands + from the IEEEtran.cls file for use with other LaTeX classes. + + +********************************** Files ********************************** + +README - This file. + +IEEEtran.cls - The IEEEtran LaTeX class file. + +changelog.txt - The revision history. + +IEEEtran_HOWTO.pdf - The IEEEtran LaTeX class user manual. + +bare_conf.tex - A bare bones starter file for IEEE conference papers. + +bare_conf_compsoc.tex - A bare bones starter file for IEEE Computer Society + conference papers. + +bare_jrnl.tex - A bare bones starter file for IEEE journal papers. + +bare_jrnl_comsoc.tex - A bare bones starter file for IEEE Communications + Society journal papers. + +bare_jrnl_compsoc.tex - A bare bones starter file for IEEE Computer Society + journal papers. + +bare_jrnl_transmag.tex - A bare bones starter file for IEEE Transactions + on Magnetics journal papers. + +bare_adv.tex - A bare bones starter file showing advanced + techniques such as conditional compilation, + hyperlinks, PDF thumbnails, etc. The illustrated + format is for an IEEE Computer Society journal paper. + +*************************************************************************** +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** + +File list of work: IEEEtran.cls, IEEEtran_HOWTO.pdf, bare_adv.tex, + bare_conf.tex, bare_conf_compsoc.tex, + bare_jrnl.tex, bare_jrnl_comsoc.tex, + bare_jrnl_compsoc.tex, bare_jrnl_transmag.tex +*************************************************************************** diff --git a/IEEEtran/bare_adv.tex b/IEEEtran/bare_adv.tex new file mode 100644 index 0000000..44b34e7 --- /dev/null +++ b/IEEEtran/bare_adv.tex @@ -0,0 +1,943 @@ + +%% bare_adv.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% See: +%% http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the advanced use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE Computer +%% Society journal paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + +% IEEEtran V1.7 and later provides for these CLASSINPUT macros to allow the +% user to reprogram some IEEEtran.cls defaults if needed. These settings +% override the internal defaults of IEEEtran.cls regardless of which class +% options are used. Do not use these unless you have good reason to do so as +% they can result in nonIEEE compliant documents. User beware. ;) +% +%\newcommand{\CLASSINPUTbaselinestretch}{1.0} % baselinestretch +%\newcommand{\CLASSINPUTinnersidemargin}{1in} % inner side margin +%\newcommand{\CLASSINPUToutersidemargin}{1in} % outer side margin +%\newcommand{\CLASSINPUTtoptextmargin}{1in} % top text margin +%\newcommand{\CLASSINPUTbottomtextmargin}{1in}% bottom text margin + + + + +% +\documentclass[10pt,journal,compsoc]{IEEEtran} +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[10pt,journal,compsoc]{../sty/IEEEtran} + + +% For Computer Society journals, IEEEtran defaults to the use of +% Palatino/Palladio as is done in IEEE Computer Society journals. +% To go back to Times Roman, you can use this code: +%\renewcommand{\rmdefault}{ptm}\selectfont + + + + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +\ifCLASSOPTIONcompsoc + % The IEEE Computer Society needs nocompress option + % requires cite.sty v4.0 or later (November 2003) + \usepackage[nocompress]{cite} +\else + % normal IEEE + \usepackage{cite} +\fi +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. +% +% Note that some packages require special options to format as the Computer +% Society requires. In particular, Computer Society papers do not use +% compressed citation ranges as is done in typical IEEE papers +% (e.g., [1]-[4]). Instead, they list every citation separately in order +% (e.g., [1], [2], [3], [4]). To get the latter we need to load the cite +% package with the nocompress option which is supported by cite.sty v4.0 +% and later. + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + + +% *** MATH PACKAGES *** +% +%\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% +% Note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +%\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + + + + +% *** SPECIALIZED LIST PACKAGES *** +%\usepackage{acronym} +% acronym.sty was written by Tobias Oetiker. This package provides tools for +% managing documents with large numbers of acronyms. (You don't *have* to +% use this package - unless you have a lot of acronyms, you may feel that +% such package management of them is bit of an overkill.) +% Do note that the acronym environment (which lists acronyms) will have a +% problem when used under IEEEtran.cls because acronym.sty relies on the +% description list environment - which IEEEtran.cls has customized for +% producing IEEE style lists. A workaround is to declared the longest +% label width via the IEEEtran.cls \IEEEiedlistdecl global control: +% +% \renewcommand{\IEEEiedlistdecl}{\IEEEsetlabelwidth{SONET}} +% \begin{acronym} +% +% \end{acronym} +% \renewcommand{\IEEEiedlistdecl}{\relax}% remember to reset \IEEEiedlistdecl +% +% instead of using the acronym environment's optional argument. +% The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/acronym + + +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +%\usepackage{mdwmath} +%\usepackage{mdwtab} +% Also highly recommended is Mark Wooding's extremely powerful MDW tools, +% especially mdwmath.sty and mdwtab.sty which are used to format equations +% and tables, respectively. The MDWtools set is already installed on most +% LaTeX systems. The lastest version and documentation is available at: +% http://www.ctan.org/pkg/mdwtools + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + +%\usepackage{eqparbox} +% Also of notable interest is Scott Pakin's eqparbox package for creating +% (automatically sized) equal width boxes - aka "natural width parboxes". +% Available at: +% http://www.ctan.org/pkg/eqparbox + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=footnotesize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a sans serif font rather +% than the serif font used in traditional IEEE formatting and thus the need +% to invoke different subfig.sty package options depending on whether +% compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + +%\ifCLASSOPTIONcaptionsoff +% \usepackage[nomarkers]{endfloat} +% \let\MYoriglatexcaption\caption +% \renewcommand{\caption}[2][\relax]{\MYoriglatexcaption[#2]{#2}} +%\fi +% endfloat.sty was written by James Darrell McCauley, Jeff Goldberg and +% Axel Sommerfeldt. This package may be useful when used in conjunction with +% IEEEtran.cls' captionsoff option. Some IEEE journals/societies require that +% submissions have lists of figures/tables at the end of the paper and that +% figures/tables without any captions are placed on a page by themselves at +% the end of the document. If needed, the draftcls IEEEtran class option or +% \CLASSINPUTbaselinestretch interface can be used to increase the line +% spacing as well. Be sure and use the nomarkers option of endfloat to +% prevent endfloat from "marking" where the figures would have been placed +% in the text. The two hack lines of code above are a slight modification of +% that suggested by in the endfloat docs (section 8.4.1) to ensure that +% the full captions always appear in the list of figures/tables - even if +% the user used the short optional argument of \caption[]{}. +% IEEE papers do not typically make use of \caption[]'s optional argument, +% so this should not be an issue. A similar trick can be used to disable +% captions of packages such as subfig.sty that lack options to turn off +% the subcaptions: +% For subfig.sty: +% \let\MYorigsubfloat\subfloat +% \renewcommand{\subfloat}[2][\relax]{\MYorigsubfloat[]{#2}} +% However, the above trick will not work if both optional arguments of +% the \subfloat command are used. Furthermore, there needs to be a +% description of each subfigure *somewhere* and endfloat does not add +% subfigure captions to its list of figures. Thus, the best approach is to +% avoid the use of subfigure captions (many IEEE journals avoid them anyway) +% and instead reference/explain all the subfigures within the main caption. +% The latest version of endfloat.sty and its documentation can obtained at: +% http://www.ctan.org/pkg/endfloat +% +% The IEEEtran \ifCLASSOPTIONcaptionsoff conditional can also be used +% later in the document, say, to conditionally put the References on a +% page by themselves. + + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + +% NOTE: PDF thumbnail features are not required in IEEE papers +% and their use requires extra complexity and work. +%\ifCLASSINFOpdf +% \usepackage[pdftex]{thumbpdf} +%\else +% \usepackage[dvips]{thumbpdf} +%\fi +% thumbpdf.sty and its companion Perl utility were written by Heiko Oberdiek. +% It allows the user a way to produce PDF documents that contain fancy +% thumbnail images of each of the pages (which tools like acrobat reader can +% utilize). This is possible even when using dvi->ps->pdf workflow if the +% correct thumbpdf driver options are used. thumbpdf.sty incorporates the +% file containing the PDF thumbnail information (filename.tpm is used with +% dvips, filename.tpt is used with pdftex, where filename is the base name of +% your tex document) into the final ps or pdf output document. An external +% utility, the thumbpdf *Perl script* is needed to make these .tpm or .tpt +% thumbnail files from a .ps or .pdf version of the document (which obviously +% does not yet contain pdf thumbnails). Thus, one does a: +% +% thumbpdf filename.pdf +% +% to make a filename.tpt, and: +% +% thumbpdf --mode dvips filename.ps +% +% to make a filename.tpm which will then be loaded into the document by +% thumbpdf.sty the NEXT time the document is compiled (by pdflatex or +% latex->dvips->ps2pdf). Users must be careful to regenerate the .tpt and/or +% .tpm files if the main document changes and then to recompile the +% document to incorporate the revised thumbnails to ensure that thumbnails +% match the actual pages. It is easy to forget to do this! +% +% Unix systems come with a Perl interpreter. However, MS Windows users +% will usually have to install a Perl interpreter so that the thumbpdf +% script can be run. The Ghostscript PS/PDF interpreter is also required. +% See the thumbpdf docs for details. The latest version and documentation +% can be obtained at. +% http://www.ctan.org/pkg/thumbpdf + + +% NOTE: PDF hyperlink and bookmark features are not required in IEEE +% papers and their use requires extra complexity and work. +% *** IF USING HYPERREF BE SURE AND CHANGE THE EXAMPLE PDF *** +% *** TITLE/SUBJECT/AUTHOR/KEYWORDS INFO BELOW!! *** +\newcommand\MYhyperrefoptions{bookmarks=true,bookmarksnumbered=true, +pdfpagemode={UseOutlines},plainpages=false,pdfpagelabels=true, +colorlinks=true,linkcolor={black},citecolor={black},urlcolor={black}, +pdftitle={Bare Demo of IEEEtran.cls for Computer Society Journals},%.dvi->.ps->.pdf workflow if the respective packages/scripts are +% loaded/invoked with the correct driver options (dvips, etc.). +% As most IEEE papers use URLs sparingly (mainly in the references), this +% may not be as big an issue as with other publications. +% +% That said, Vilar Camara Neto created his breakurl.sty package which +% permits hyperref to easily break URLs even in dvi mode. +% Note that breakurl, unlike most other packages, must be loaded +% AFTER hyperref. The latest version of breakurl and its documentation can +% be obtained at: +% http://www.ctan.org/pkg/breakurl +% breakurl.sty is not for use under pdflatex pdf mode. +% +% The advanced features offer by hyperref.sty are not required for IEEE +% submission, so users should weigh these features against the added +% complexity of use. +% The package options above demonstrate how to enable PDF bookmarks +% (a type of table of contents viewable in Acrobat Reader) as well as +% PDF document information (title, subject, author and keywords) that is +% viewable in Acrobat reader's Document_Properties menu. PDF document +% information is also used extensively to automate the cataloging of PDF +% documents. The above set of options ensures that hyperlinks will not be +% colored in the text and thus will not be visible in the printed page, +% but will be active on "mouse over". USING COLORS OR OTHER HIGHLIGHTING +% OF HYPERLINKS CAN RESULT IN DOCUMENT REJECTION BY THE IEEE, especially if +% these appear on the "printed" page. IF IN DOUBT, ASK THE RELEVANT +% SUBMISSION EDITOR. You may need to add the option hypertexnames=false if +% you used duplicate equation numbers, etc., but this should not be needed +% in normal IEEE work. +% The latest version of hyperref and its documentation can be obtained at: +% http://www.ctan.org/pkg/hyperref + + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Advanced Demo of IEEEtran.cls for\\ IEEE Computer Society Journals} +% +% +% author names and IEEE memberships +% note positions of commas and nonbreaking spaces ( ~ ) LaTeX will not break +% a structure at a ~ so this keeps an author's name from being broken across +% two lines. +% use \thanks{} to gain access to the first footnote area +% a separate \thanks must be used for each paragraph as LaTeX2e's \thanks +% was not built to handle multiple paragraphs +% +% +%\IEEEcompsocitemizethanks is a special \thanks that produces the bulleted +% lists the Computer Society journals use for "first footnote" author +% affiliations. Use \IEEEcompsocthanksitem which works much like \item +% for each affiliation group. When not in compsoc mode, +% \IEEEcompsocitemizethanks becomes like \thanks and +% \IEEEcompsocthanksitem becomes a line break with idention. This +% facilitates dual compilation, although admittedly the differences in the +% desired content of \author between the different types of papers makes a +% one-size-fits-all approach a daunting prospect. For instance, compsoc +% journal papers have the author affiliations above the "Manuscript +% received ..." text while in non-compsoc journals this is reversed. Sigh. + +\author{Michael~Shell,~\IEEEmembership{Member,~IEEE,} + John~Doe,~\IEEEmembership{Fellow,~OSA,} + and~Jane~Doe,~\IEEEmembership{Life~Fellow,~IEEE}% <-this % stops a space +\IEEEcompsocitemizethanks{\IEEEcompsocthanksitem M. Shell was with the Department +of Electrical and Computer Engineering, Georgia Institute of Technology, Atlanta, +GA, 30332.\protect\\ +% note need leading \protect in front of \\ to get a newline within \thanks as +% \\ is fragile and will error, could use \hfil\break instead. +E-mail: see http://www.michaelshell.org/contact.html +\IEEEcompsocthanksitem J. Doe and J. Doe are with Anonymous University.}% <-this % stops a space +\thanks{Manuscript received April 19, 2005; revised August 26, 2015.}} + +% note the % following the last \IEEEmembership and also \thanks - +% these prevent an unwanted space from occurring between the last author name +% and the end of the author line. i.e., if you had this: +% +% \author{....lastname \thanks{...} \thanks{...} } +% ^------------^------------^----Do not want these spaces! +% +% a space would be appended to the last name and could cause every name on that +% line to be shifted left slightly. This is one of those "LaTeX things". For +% instance, "\textbf{A} \textbf{B}" will typeset as "A B" not "AB". To get +% "AB" then you have to do: "\textbf{A}\textbf{B}" +% \thanks is no different in this regard, so shield the last } of each \thanks +% that ends a line with a % and do not let a space in before the next \thanks. +% Spaces after \IEEEmembership other than the last one are OK (and needed) as +% you are supposed to have spaces between the names. For what it is worth, +% this is a minor point as most people would not even notice if the said evil +% space somehow managed to creep in. + + + +% The paper headers +\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2015}% +{Shell \MakeLowercase{\textit{et al.}}: Bare Advanced Demo of IEEEtran.cls for IEEE Computer Society Journals} +% The only time the second header will appear is for the odd numbered pages +% after the title page when using the twoside option. +% +% *** Note that you probably will NOT want to include the author's *** +% *** name in the headers of peer review papers. *** +% You can use \ifCLASSOPTIONpeerreview for conditional compilation here if +% you desire. + + + +% The publisher's ID mark at the bottom of the page is less important with +% Computer Society journal papers as those publications place the marks +% outside of the main text columns and, therefore, unlike regular IEEE +% journals, the available text space is not reduced by their presence. +% If you want to put a publisher's ID mark on the page you can do it like +% this: +%\IEEEpubid{0000--0000/00\$00.00~\copyright~2015 IEEE} +% or like this to get the Computer Society new two part style. +%\IEEEpubid{\makebox[\columnwidth]{\hfill 0000--0000/00/\$00.00~\copyright~2015 IEEE}% +%\hspace{\columnsep}\makebox[\columnwidth]{Published by the IEEE Computer Society\hfill}} +% Remember, if you use this you must call \IEEEpubidadjcol in the second +% column for its text to clear the IEEEpubid mark (Computer Society journal +% papers don't need this extra clearance.) + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + + +% for Computer Society papers, we must declare the abstract and index terms +% PRIOR to the title within the \IEEEtitleabstractindextext IEEEtran +% command as these need to go into the title area created by \maketitle. +% As a general rule, do not put math, special symbols or citations +% in the abstract or keywords. +\IEEEtitleabstractindextext{% +\begin{abstract} +The abstract goes here. +\end{abstract} + +% Note that keywords are not normally used for peerreview papers. +\begin{IEEEkeywords} +Computer Society, IEEE, IEEEtran, journal, \LaTeX, paper, template. +\end{IEEEkeywords}} + + +% make the title area +\maketitle + + +% To allow for easy dual compilation without having to reenter the +% abstract/keywords data, the \IEEEtitleabstractindextext text will +% not be used in maketitle, but will appear (i.e., to be "transported") +% here as \IEEEdisplaynontitleabstractindextext when compsoc mode +% is not selected if conference mode is selected - because compsoc +% conference papers position the abstract like regular (non-compsoc) +% papers do! +\IEEEdisplaynontitleabstractindextext +% \IEEEdisplaynontitleabstractindextext has no effect when using +% compsoc under a non-conference mode. + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + +\ifCLASSOPTIONcompsoc +\IEEEraisesectionheading{\section{Introduction}\label{sec:introduction}} +\else +\section{Introduction} +\label{sec:introduction} +\fi +% Computer Society journal (but not conference!) papers do something unusual +% with the very first section heading (almost always called "Introduction"). +% They place it ABOVE the main text! IEEEtran.cls does not automatically do +% this for you, but you can achieve this effect with the provided +% \IEEEraisesectionheading{} command. Note the need to keep any \label that +% is to refer to the section immediately after \section in the above as +% \IEEEraisesectionheading puts \section within a raised box. + + + + +% The very first letter is a 2 line initial drop letter followed +% by the rest of the first word in caps (small caps for compsoc). +% +% form to use if the first word consists of a single letter: +% \IEEEPARstart{A}{demo} file is .... +% +% form to use if you need the single drop letter followed by +% normal text (unknown if ever used by the IEEE): +% \IEEEPARstart{A}{}demo file is .... +% +% Some journals put the first two words in caps: +% \IEEEPARstart{T}{his demo} file is .... +% +% Here we have the typical use of a "T" for an initial drop letter +% and "HIS" in caps to complete the first word. +\IEEEPARstart{T}{his} demo file is intended to serve as a ``starter file'' +for IEEE Computer Society journal papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + +% needed in second column of first page if using \IEEEpubid +%\IEEEpubidadjcol + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. +% However, the Computer Society has been known to put floats at the bottom. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + + +% if have a single appendix: +%\appendix[Proof of the Zonklar Equations] +% or +%\appendix % for no appendix heading +% do not use \section anymore after \appendix, only \section* +% is possibly needed + +% use appendices with more than one appendix +% then use \section to start each appendix +% you must declare a \section before using any +% \subsection or using \label (\appendices by itself +% starts a section numbered zero.) +% + + +\appendices +\section{Proof of the First Zonklar Equation} +Appendix one text goes here. + +% you can choose not to have a title for an appendix +% if you want by leaving the argument blank +\section{} +Appendix two text goes here. + + +% use section* for acknowledgment +\ifCLASSOPTIONcompsoc + % The Computer Society usually uses the plural form + \section*{Acknowledgments} +\else + % regular IEEE prefers the singular form + \section*{Acknowledgment} +\fi + + +The authors would like to thank... + + +% Can use something like this to put references on a page +% by themselves when using endfloat and the captionsoff option. +\ifCLASSOPTIONcaptionsoff + \newpage +\fi + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to {\LaTeX}}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + +% biography section +% +% If you have an EPS/PDF photo (graphicx package needed) extra braces are +% needed around the contents of the optional argument to biography to prevent +% the LaTeX parser from getting confused when it sees the complicated +% \includegraphics command within an optional argument. (You could create +% your own custom macro containing the \includegraphics command to make things +% simpler here.) +%\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{mshell}}]{Michael Shell} +% or if you just want to reserve a space for a photo: + +\begin{IEEEbiography}{Michael Shell} +Biography text here. +\end{IEEEbiography} + +% if you will not have a photo at all: +\begin{IEEEbiographynophoto}{John Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% insert where needed to balance the two columns on the last page with +% biographies +%\newpage + +\begin{IEEEbiographynophoto}{Jane Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% You can push biographies down or up by placing +% a \vfill before or after them. The appropriate +% use of \vfill depends on what kind of text is +% on the last page and whether or not the columns +% are being equalized. + +%\vfill + +% Can be used to pull up biographies so that the bottom of the last one +% is flush with the other column. +%\enlargethispage{-5in} + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bare_conf.tex b/IEEEtran/bare_conf.tex new file mode 100644 index 0000000..6a912c7 --- /dev/null +++ b/IEEEtran/bare_conf.tex @@ -0,0 +1,576 @@ + +%% bare_conf.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% See: +%% http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE +%% conference paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + + +\documentclass[conference]{IEEEtran} +% Some Computer Society conferences also require the compsoc mode option, +% but others use the standard conference format. +% +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[conference]{../sty/IEEEtran} + + + + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +%\usepackage{cite} +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. + + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + + +% *** MATH PACKAGES *** +% +%\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% +% Note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +%\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + + + + +% *** SPECIALIZED LIST PACKAGES *** +% +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a larger sans serif font +% than the serif footnote size font used in traditional IEEE formatting +% and thus the need to invoke different subfig.sty package options depending +% on whether compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Demo of IEEEtran.cls\\ for IEEE Conferences} + + +% author names and affiliations +% use a multiple column layout for up to three different +% affiliations +\author{\IEEEauthorblockN{Michael Shell} +\IEEEauthorblockA{School of Electrical and\\Computer Engineering\\ +Georgia Institute of Technology\\ +Atlanta, Georgia 30332--0250\\ +Email: http://www.michaelshell.org/contact.html} +\and +\IEEEauthorblockN{Homer Simpson} +\IEEEauthorblockA{Twentieth Century Fox\\ +Springfield, USA\\ +Email: homer@thesimpsons.com} +\and +\IEEEauthorblockN{James Kirk\\ and Montgomery Scott} +\IEEEauthorblockA{Starfleet Academy\\ +San Francisco, California 96678--2391\\ +Telephone: (800) 555--1212\\ +Fax: (888) 555--1212}} + +% conference papers do not typically use \thanks and this command +% is locked out in conference mode. If really needed, such as for +% the acknowledgment of grants, issue a \IEEEoverridecommandlockouts +% after \documentclass + +% for over three affiliations, or if they all won't fit within the width +% of the page, use this alternative format: +% +%\author{\IEEEauthorblockN{Michael Shell\IEEEauthorrefmark{1}, +%Homer Simpson\IEEEauthorrefmark{2}, +%James Kirk\IEEEauthorrefmark{3}, +%Montgomery Scott\IEEEauthorrefmark{3} and +%Eldon Tyrell\IEEEauthorrefmark{4}} +%\IEEEauthorblockA{\IEEEauthorrefmark{1}School of Electrical and Computer Engineering\\ +%Georgia Institute of Technology, +%Atlanta, Georgia 30332--0250\\ Email: see http://www.michaelshell.org/contact.html} +%\IEEEauthorblockA{\IEEEauthorrefmark{2}Twentieth Century Fox, Springfield, USA\\ +%Email: homer@thesimpsons.com} +%\IEEEauthorblockA{\IEEEauthorrefmark{3}Starfleet Academy, San Francisco, California 96678-2391\\ +%Telephone: (800) 555--1212, Fax: (888) 555--1212} +%\IEEEauthorblockA{\IEEEauthorrefmark{4}Tyrell Inc., 123 Replicant Street, Los Angeles, California 90210--4321}} + + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + + + +% make the title area +\maketitle + +% As a general rule, do not put math, special symbols or citations +% in the abstract +\begin{abstract} +The abstract goes here. +\end{abstract} + +% no keywords + + + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + + +\section{Introduction} +% no \IEEEPARstart +This demo file is intended to serve as a ``starter file'' +for IEEE conference papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + +% conference papers do not normally have an appendix + + +% use section* for acknowledgment +\section*{Acknowledgment} + + +The authors would like to thank... + + + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bare_conf_compsoc.tex b/IEEEtran/bare_conf_compsoc.tex new file mode 100644 index 0000000..8465c8b --- /dev/null +++ b/IEEEtran/bare_conf_compsoc.tex @@ -0,0 +1,599 @@ + +%% bare_conf_compsoc.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% See: +%% http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE Computer +%% Society conference paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + + +\documentclass[conference,compsoc]{IEEEtran} +% Some/most Computer Society conferences require the compsoc mode option, +% but others may want the standard conference format. +% +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[conference,compsoc]{../sty/IEEEtran} + + + + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +\ifCLASSOPTIONcompsoc + % IEEE Computer Society needs nocompress option + % requires cite.sty v4.0 or later (November 2003) + \usepackage[nocompress]{cite} +\else + % normal IEEE + \usepackage{cite} +\fi +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. +% +% Note that some packages require special options to format as the Computer +% Society requires. In particular, Computer Society papers do not use +% compressed citation ranges as is done in typical IEEE papers +% (e.g., [1]-[4]). Instead, they list every citation separately in order +% (e.g., [1], [2], [3], [4]). To get the latter we need to load the cite +% package with the nocompress option which is supported by cite.sty v4.0 +% and later. + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + + +% *** MATH PACKAGES *** +% +%\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% +% Note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +%\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + + + + +% *** SPECIALIZED LIST PACKAGES *** +% +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=footnotesize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a sans serif font rather +% than the serif font used in traditional IEEE formatting and thus the need +% to invoke different subfig.sty package options depending on whether +% compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Demo of IEEEtran.cls for\\ IEEE Computer Society Conferences} + + +% author names and affiliations +% use a multiple column layout for up to three different +% affiliations +\author{\IEEEauthorblockN{Michael Shell} +\IEEEauthorblockA{School of Electrical and\\Computer Engineering\\ +Georgia Institute of Technology\\ +Atlanta, Georgia 30332--0250\\ +Email: http://www.michaelshell.org/contact.html} +\and +\IEEEauthorblockN{Homer Simpson} +\IEEEauthorblockA{Twentieth Century Fox\\ +Springfield, USA\\ +Email: homer@thesimpsons.com} +\and +\IEEEauthorblockN{James Kirk\\ and Montgomery Scott} +\IEEEauthorblockA{Starfleet Academy\\ +San Francisco, California 96678-2391\\ +Telephone: (800) 555--1212\\ +Fax: (888) 555--1212}} + +% conference papers do not typically use \thanks and this command +% is locked out in conference mode. If really needed, such as for +% the acknowledgment of grants, issue a \IEEEoverridecommandlockouts +% after \documentclass + +% for over three affiliations, or if they all won't fit within the width +% of the page (and note that there is less available width in this regard for +% compsoc conferences compared to traditional conferences), use this +% alternative format: +% +%\author{\IEEEauthorblockN{Michael Shell\IEEEauthorrefmark{1}, +%Homer Simpson\IEEEauthorrefmark{2}, +%James Kirk\IEEEauthorrefmark{3}, +%Montgomery Scott\IEEEauthorrefmark{3} and +%Eldon Tyrell\IEEEauthorrefmark{4}} +%\IEEEauthorblockA{\IEEEauthorrefmark{1}School of Electrical and Computer Engineering\\ +%Georgia Institute of Technology, +%Atlanta, Georgia 30332--0250\\ Email: see http://www.michaelshell.org/contact.html} +%\IEEEauthorblockA{\IEEEauthorrefmark{2}Twentieth Century Fox, Springfield, USA\\ +%Email: homer@thesimpsons.com} +%\IEEEauthorblockA{\IEEEauthorrefmark{3}Starfleet Academy, San Francisco, California 96678-2391\\ +%Telephone: (800) 555--1212, Fax: (888) 555--1212} +%\IEEEauthorblockA{\IEEEauthorrefmark{4}Tyrell Inc., 123 Replicant Street, Los Angeles, California 90210--4321}} + + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + + + +% make the title area +\maketitle + +% As a general rule, do not put math, special symbols or citations +% in the abstract +\begin{abstract} +The abstract goes here. +\end{abstract} + +% no keywords + + + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + + +\section{Introduction} +% no \IEEEPARstart +This demo file is intended to serve as a ``starter file'' +for IEEE Computer Society conference papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + +% conference papers do not normally have an appendix + + + +% use section* for acknowledgment +\ifCLASSOPTIONcompsoc + % The Computer Society usually uses the plural form + \section*{Acknowledgments} +\else + % regular IEEE prefers the singular form + \section*{Acknowledgment} +\fi + + +The authors would like to thank... + + + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bare_jrnl.tex b/IEEEtran/bare_jrnl.tex new file mode 100644 index 0000000..300ad00 --- /dev/null +++ b/IEEEtran/bare_jrnl.tex @@ -0,0 +1,717 @@ + +%% bare_jrnl.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% see http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE +%% journal paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + + +\documentclass[journal]{IEEEtran} +% +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[journal]{../sty/IEEEtran} + + + + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +%\usepackage{cite} +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. + + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + + +% *** MATH PACKAGES *** +% +%\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% +% Note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +%\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + + + + +% *** SPECIALIZED LIST PACKAGES *** +% +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a larger sans serif font +% than the serif footnote size font used in traditional IEEE formatting +% and thus the need to invoke different subfig.sty package options depending +% on whether compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + + + +%\ifCLASSOPTIONcaptionsoff +% \usepackage[nomarkers]{endfloat} +% \let\MYoriglatexcaption\caption +% \renewcommand{\caption}[2][\relax]{\MYoriglatexcaption[#2]{#2}} +%\fi +% endfloat.sty was written by James Darrell McCauley, Jeff Goldberg and +% Axel Sommerfeldt. This package may be useful when used in conjunction with +% IEEEtran.cls' captionsoff option. Some IEEE journals/societies require that +% submissions have lists of figures/tables at the end of the paper and that +% figures/tables without any captions are placed on a page by themselves at +% the end of the document. If needed, the draftcls IEEEtran class option or +% \CLASSINPUTbaselinestretch interface can be used to increase the line +% spacing as well. Be sure and use the nomarkers option of endfloat to +% prevent endfloat from "marking" where the figures would have been placed +% in the text. The two hack lines of code above are a slight modification of +% that suggested by in the endfloat docs (section 8.4.1) to ensure that +% the full captions always appear in the list of figures/tables - even if +% the user used the short optional argument of \caption[]{}. +% IEEE papers do not typically make use of \caption[]'s optional argument, +% so this should not be an issue. A similar trick can be used to disable +% captions of packages such as subfig.sty that lack options to turn off +% the subcaptions: +% For subfig.sty: +% \let\MYorigsubfloat\subfloat +% \renewcommand{\subfloat}[2][\relax]{\MYorigsubfloat[]{#2}} +% However, the above trick will not work if both optional arguments of +% the \subfloat command are used. Furthermore, there needs to be a +% description of each subfigure *somewhere* and endfloat does not add +% subfigure captions to its list of figures. Thus, the best approach is to +% avoid the use of subfigure captions (many IEEE journals avoid them anyway) +% and instead reference/explain all the subfigures within the main caption. +% The latest version of endfloat.sty and its documentation can obtained at: +% http://www.ctan.org/pkg/endfloat +% +% The IEEEtran \ifCLASSOPTIONcaptionsoff conditional can also be used +% later in the document, say, to conditionally put the References on a +% page by themselves. + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Demo of IEEEtran.cls\\ for IEEE Journals} +% +% +% author names and IEEE memberships +% note positions of commas and nonbreaking spaces ( ~ ) LaTeX will not break +% a structure at a ~ so this keeps an author's name from being broken across +% two lines. +% use \thanks{} to gain access to the first footnote area +% a separate \thanks must be used for each paragraph as LaTeX2e's \thanks +% was not built to handle multiple paragraphs +% + +\author{Michael~Shell,~\IEEEmembership{Member,~IEEE,} + John~Doe,~\IEEEmembership{Fellow,~OSA,} + and~Jane~Doe,~\IEEEmembership{Life~Fellow,~IEEE}% <-this % stops a space +\thanks{M. Shell was with the Department +of Electrical and Computer Engineering, Georgia Institute of Technology, Atlanta, +GA, 30332 USA e-mail: (see http://www.michaelshell.org/contact.html).}% <-this % stops a space +\thanks{J. Doe and J. Doe are with Anonymous University.}% <-this % stops a space +\thanks{Manuscript received April 19, 2005; revised August 26, 2015.}} + +% note the % following the last \IEEEmembership and also \thanks - +% these prevent an unwanted space from occurring between the last author name +% and the end of the author line. i.e., if you had this: +% +% \author{....lastname \thanks{...} \thanks{...} } +% ^------------^------------^----Do not want these spaces! +% +% a space would be appended to the last name and could cause every name on that +% line to be shifted left slightly. This is one of those "LaTeX things". For +% instance, "\textbf{A} \textbf{B}" will typeset as "A B" not "AB". To get +% "AB" then you have to do: "\textbf{A}\textbf{B}" +% \thanks is no different in this regard, so shield the last } of each \thanks +% that ends a line with a % and do not let a space in before the next \thanks. +% Spaces after \IEEEmembership other than the last one are OK (and needed) as +% you are supposed to have spaces between the names. For what it is worth, +% this is a minor point as most people would not even notice if the said evil +% space somehow managed to creep in. + + + +% The paper headers +\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2015}% +{Shell \MakeLowercase{\textit{et al.}}: Bare Demo of IEEEtran.cls for IEEE Journals} +% The only time the second header will appear is for the odd numbered pages +% after the title page when using the twoside option. +% +% *** Note that you probably will NOT want to include the author's *** +% *** name in the headers of peer review papers. *** +% You can use \ifCLASSOPTIONpeerreview for conditional compilation here if +% you desire. + + + + +% If you want to put a publisher's ID mark on the page you can do it like +% this: +%\IEEEpubid{0000--0000/00\$00.00~\copyright~2015 IEEE} +% Remember, if you use this you must call \IEEEpubidadjcol in the second +% column for its text to clear the IEEEpubid mark. + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + + + +% make the title area +\maketitle + +% As a general rule, do not put math, special symbols or citations +% in the abstract or keywords. +\begin{abstract} +The abstract goes here. +\end{abstract} + +% Note that keywords are not normally used for peerreview papers. +\begin{IEEEkeywords} +IEEE, IEEEtran, journal, \LaTeX, paper, template. +\end{IEEEkeywords} + + + + + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + + +\section{Introduction} +% The very first letter is a 2 line initial drop letter followed +% by the rest of the first word in caps. +% +% form to use if the first word consists of a single letter: +% \IEEEPARstart{A}{demo} file is .... +% +% form to use if you need the single drop letter followed by +% normal text (unknown if ever used by the IEEE): +% \IEEEPARstart{A}{}demo file is .... +% +% Some journals put the first two words in caps: +% \IEEEPARstart{T}{his demo} file is .... +% +% Here we have the typical use of a "T" for an initial drop letter +% and "HIS" in caps to complete the first word. +\IEEEPARstart{T}{his} demo file is intended to serve as a ``starter file'' +for IEEE journal papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + +% needed in second column of first page if using \IEEEpubid +%\IEEEpubidadjcol + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + + +% if have a single appendix: +%\appendix[Proof of the Zonklar Equations] +% or +%\appendix % for no appendix heading +% do not use \section anymore after \appendix, only \section* +% is possibly needed + +% use appendices with more than one appendix +% then use \section to start each appendix +% you must declare a \section before using any +% \subsection or using \label (\appendices by itself +% starts a section numbered zero.) +% + + +\appendices +\section{Proof of the First Zonklar Equation} +Appendix one text goes here. + +% you can choose not to have a title for an appendix +% if you want by leaving the argument blank +\section{} +Appendix two text goes here. + + +% use section* for acknowledgment +\section*{Acknowledgment} + + +The authors would like to thank... + + +% Can use something like this to put references on a page +% by themselves when using endfloat and the captionsoff option. +\ifCLASSOPTIONcaptionsoff + \newpage +\fi + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + +% biography section +% +% If you have an EPS/PDF photo (graphicx package needed) extra braces are +% needed around the contents of the optional argument to biography to prevent +% the LaTeX parser from getting confused when it sees the complicated +% \includegraphics command within an optional argument. (You could create +% your own custom macro containing the \includegraphics command to make things +% simpler here.) +%\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{mshell}}]{Michael Shell} +% or if you just want to reserve a space for a photo: + +\begin{IEEEbiography}{Michael Shell} +Biography text here. +\end{IEEEbiography} + +% if you will not have a photo at all: +\begin{IEEEbiographynophoto}{John Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% insert where needed to balance the two columns on the last page with +% biographies +%\newpage + +\begin{IEEEbiographynophoto}{Jane Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% You can push biographies down or up by placing +% a \vfill before or after them. The appropriate +% use of \vfill depends on what kind of text is +% on the last page and whether or not the columns +% are being equalized. + +%\vfill + +% Can be used to pull up biographies so that the bottom of the last one +% is flush with the other column. +%\enlargethispage{-5in} + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bare_jrnl_compsoc.tex b/IEEEtran/bare_jrnl_compsoc.tex new file mode 100644 index 0000000..9935254 --- /dev/null +++ b/IEEEtran/bare_jrnl_compsoc.tex @@ -0,0 +1,787 @@ + +%% bare_jrnl_compsoc.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% See: +%% http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE +%% Computer Society journal paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + +\documentclass[10pt,journal,compsoc]{IEEEtran} +% +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[10pt,journal,compsoc]{../sty/IEEEtran} + + + + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +\ifCLASSOPTIONcompsoc + % IEEE Computer Society needs nocompress option + % requires cite.sty v4.0 or later (November 2003) + \usepackage[nocompress]{cite} +\else + % normal IEEE + \usepackage{cite} +\fi +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. +% +% Note that some packages require special options to format as the Computer +% Society requires. In particular, Computer Society papers do not use +% compressed citation ranges as is done in typical IEEE papers +% (e.g., [1]-[4]). Instead, they list every citation separately in order +% (e.g., [1], [2], [3], [4]). To get the latter we need to load the cite +% package with the nocompress option which is supported by cite.sty v4.0 +% and later. Note also the use of a CLASSOPTION conditional provided by +% IEEEtran.cls V1.7 and later. + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + + + +% *** MATH PACKAGES *** +% +%\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% +% Note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +%\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + + + + +% *** SPECIALIZED LIST PACKAGES *** +% +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=footnotesize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a sans serif font rather +% than the serif font used in traditional IEEE formatting and thus the need +% to invoke different subfig.sty package options depending on whether +% compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + + + +%\ifCLASSOPTIONcaptionsoff +% \usepackage[nomarkers]{endfloat} +% \let\MYoriglatexcaption\caption +% \renewcommand{\caption}[2][\relax]{\MYoriglatexcaption[#2]{#2}} +%\fi +% endfloat.sty was written by James Darrell McCauley, Jeff Goldberg and +% Axel Sommerfeldt. This package may be useful when used in conjunction with +% IEEEtran.cls' captionsoff option. Some IEEE journals/societies require that +% submissions have lists of figures/tables at the end of the paper and that +% figures/tables without any captions are placed on a page by themselves at +% the end of the document. If needed, the draftcls IEEEtran class option or +% \CLASSINPUTbaselinestretch interface can be used to increase the line +% spacing as well. Be sure and use the nomarkers option of endfloat to +% prevent endfloat from "marking" where the figures would have been placed +% in the text. The two hack lines of code above are a slight modification of +% that suggested by in the endfloat docs (section 8.4.1) to ensure that +% the full captions always appear in the list of figures/tables - even if +% the user used the short optional argument of \caption[]{}. +% IEEE papers do not typically make use of \caption[]'s optional argument, +% so this should not be an issue. A similar trick can be used to disable +% captions of packages such as subfig.sty that lack options to turn off +% the subcaptions: +% For subfig.sty: +% \let\MYorigsubfloat\subfloat +% \renewcommand{\subfloat}[2][\relax]{\MYorigsubfloat[]{#2}} +% However, the above trick will not work if both optional arguments of +% the \subfloat command are used. Furthermore, there needs to be a +% description of each subfigure *somewhere* and endfloat does not add +% subfigure captions to its list of figures. Thus, the best approach is to +% avoid the use of subfigure captions (many IEEE journals avoid them anyway) +% and instead reference/explain all the subfigures within the main caption. +% The latest version of endfloat.sty and its documentation can obtained at: +% http://www.ctan.org/pkg/endfloat +% +% The IEEEtran \ifCLASSOPTIONcaptionsoff conditional can also be used +% later in the document, say, to conditionally put the References on a +% page by themselves. + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Demo of IEEEtran.cls for\\ IEEE Computer Society Journals} +% +% +% author names and IEEE memberships +% note positions of commas and nonbreaking spaces ( ~ ) LaTeX will not break +% a structure at a ~ so this keeps an author's name from being broken across +% two lines. +% use \thanks{} to gain access to the first footnote area +% a separate \thanks must be used for each paragraph as LaTeX2e's \thanks +% was not built to handle multiple paragraphs +% +% +%\IEEEcompsocitemizethanks is a special \thanks that produces the bulleted +% lists the Computer Society journals use for "first footnote" author +% affiliations. Use \IEEEcompsocthanksitem which works much like \item +% for each affiliation group. When not in compsoc mode, +% \IEEEcompsocitemizethanks becomes like \thanks and +% \IEEEcompsocthanksitem becomes a line break with idention. This +% facilitates dual compilation, although admittedly the differences in the +% desired content of \author between the different types of papers makes a +% one-size-fits-all approach a daunting prospect. For instance, compsoc +% journal papers have the author affiliations above the "Manuscript +% received ..." text while in non-compsoc journals this is reversed. Sigh. + +\author{Michael~Shell,~\IEEEmembership{Member,~IEEE,} + John~Doe,~\IEEEmembership{Fellow,~OSA,} + and~Jane~Doe,~\IEEEmembership{Life~Fellow,~IEEE}% <-this % stops a space +\IEEEcompsocitemizethanks{\IEEEcompsocthanksitem M. Shell was with the Department +of Electrical and Computer Engineering, Georgia Institute of Technology, Atlanta, +GA, 30332.\protect\\ +% note need leading \protect in front of \\ to get a newline within \thanks as +% \\ is fragile and will error, could use \hfil\break instead. +E-mail: see http://www.michaelshell.org/contact.html +\IEEEcompsocthanksitem J. Doe and J. Doe are with Anonymous University.}% <-this % stops an unwanted space +\thanks{Manuscript received April 19, 2005; revised August 26, 2015.}} + +% note the % following the last \IEEEmembership and also \thanks - +% these prevent an unwanted space from occurring between the last author name +% and the end of the author line. i.e., if you had this: +% +% \author{....lastname \thanks{...} \thanks{...} } +% ^------------^------------^----Do not want these spaces! +% +% a space would be appended to the last name and could cause every name on that +% line to be shifted left slightly. This is one of those "LaTeX things". For +% instance, "\textbf{A} \textbf{B}" will typeset as "A B" not "AB". To get +% "AB" then you have to do: "\textbf{A}\textbf{B}" +% \thanks is no different in this regard, so shield the last } of each \thanks +% that ends a line with a % and do not let a space in before the next \thanks. +% Spaces after \IEEEmembership other than the last one are OK (and needed) as +% you are supposed to have spaces between the names. For what it is worth, +% this is a minor point as most people would not even notice if the said evil +% space somehow managed to creep in. + + + +% The paper headers +\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2015}% +{Shell \MakeLowercase{\textit{et al.}}: Bare Demo of IEEEtran.cls for Computer Society Journals} +% The only time the second header will appear is for the odd numbered pages +% after the title page when using the twoside option. +% +% *** Note that you probably will NOT want to include the author's *** +% *** name in the headers of peer review papers. *** +% You can use \ifCLASSOPTIONpeerreview for conditional compilation here if +% you desire. + + + +% The publisher's ID mark at the bottom of the page is less important with +% Computer Society journal papers as those publications place the marks +% outside of the main text columns and, therefore, unlike regular IEEE +% journals, the available text space is not reduced by their presence. +% If you want to put a publisher's ID mark on the page you can do it like +% this: +%\IEEEpubid{0000--0000/00\$00.00~\copyright~2015 IEEE} +% or like this to get the Computer Society new two part style. +%\IEEEpubid{\makebox[\columnwidth]{\hfill 0000--0000/00/\$00.00~\copyright~2015 IEEE}% +%\hspace{\columnsep}\makebox[\columnwidth]{Published by the IEEE Computer Society\hfill}} +% Remember, if you use this you must call \IEEEpubidadjcol in the second +% column for its text to clear the IEEEpubid mark (Computer Society jorunal +% papers don't need this extra clearance.) + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + + +% for Computer Society papers, we must declare the abstract and index terms +% PRIOR to the title within the \IEEEtitleabstractindextext IEEEtran +% command as these need to go into the title area created by \maketitle. +% As a general rule, do not put math, special symbols or citations +% in the abstract or keywords. +\IEEEtitleabstractindextext{% +\begin{abstract} +The abstract goes here. +\end{abstract} + +% Note that keywords are not normally used for peerreview papers. +\begin{IEEEkeywords} +Computer Society, IEEE, IEEEtran, journal, \LaTeX, paper, template. +\end{IEEEkeywords}} + + +% make the title area +\maketitle + + +% To allow for easy dual compilation without having to reenter the +% abstract/keywords data, the \IEEEtitleabstractindextext text will +% not be used in maketitle, but will appear (i.e., to be "transported") +% here as \IEEEdisplaynontitleabstractindextext when the compsoc +% or transmag modes are not selected if conference mode is selected +% - because all conference papers position the abstract like regular +% papers do. +\IEEEdisplaynontitleabstractindextext +% \IEEEdisplaynontitleabstractindextext has no effect when using +% compsoc or transmag under a non-conference mode. + + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + + +\IEEEraisesectionheading{\section{Introduction}\label{sec:introduction}} +% Computer Society journal (but not conference!) papers do something unusual +% with the very first section heading (almost always called "Introduction"). +% They place it ABOVE the main text! IEEEtran.cls does not automatically do +% this for you, but you can achieve this effect with the provided +% \IEEEraisesectionheading{} command. Note the need to keep any \label that +% is to refer to the section immediately after \section in the above as +% \IEEEraisesectionheading puts \section within a raised box. + + + + +% The very first letter is a 2 line initial drop letter followed +% by the rest of the first word in caps (small caps for compsoc). +% +% form to use if the first word consists of a single letter: +% \IEEEPARstart{A}{demo} file is .... +% +% form to use if you need the single drop letter followed by +% normal text (unknown if ever used by the IEEE): +% \IEEEPARstart{A}{}demo file is .... +% +% Some journals put the first two words in caps: +% \IEEEPARstart{T}{his demo} file is .... +% +% Here we have the typical use of a "T" for an initial drop letter +% and "HIS" in caps to complete the first word. +\IEEEPARstart{T}{his} demo file is intended to serve as a ``starter file'' +for IEEE Computer Society journal papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + +% needed in second column of first page if using \IEEEpubid +%\IEEEpubidadjcol + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. +% However, the Computer Society has been known to put floats at the bottom. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + + +% if have a single appendix: +%\appendix[Proof of the Zonklar Equations] +% or +%\appendix % for no appendix heading +% do not use \section anymore after \appendix, only \section* +% is possibly needed + +% use appendices with more than one appendix +% then use \section to start each appendix +% you must declare a \section before using any +% \subsection or using \label (\appendices by itself +% starts a section numbered zero.) +% + + +\appendices +\section{Proof of the First Zonklar Equation} +Appendix one text goes here. + +% you can choose not to have a title for an appendix +% if you want by leaving the argument blank +\section{} +Appendix two text goes here. + + +% use section* for acknowledgment +\ifCLASSOPTIONcompsoc + % The Computer Society usually uses the plural form + \section*{Acknowledgments} +\else + % regular IEEE prefers the singular form + \section*{Acknowledgment} +\fi + + +The authors would like to thank... + + +% Can use something like this to put references on a page +% by themselves when using endfloat and the captionsoff option. +\ifCLASSOPTIONcaptionsoff + \newpage +\fi + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + +% biography section +% +% If you have an EPS/PDF photo (graphicx package needed) extra braces are +% needed around the contents of the optional argument to biography to prevent +% the LaTeX parser from getting confused when it sees the complicated +% \includegraphics command within an optional argument. (You could create +% your own custom macro containing the \includegraphics command to make things +% simpler here.) +%\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{mshell}}]{Michael Shell} +% or if you just want to reserve a space for a photo: + +\begin{IEEEbiography}{Michael Shell} +Biography text here. +\end{IEEEbiography} + +% if you will not have a photo at all: +\begin{IEEEbiographynophoto}{John Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% insert where needed to balance the two columns on the last page with +% biographies +%\newpage + +\begin{IEEEbiographynophoto}{Jane Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% You can push biographies down or up by placing +% a \vfill before or after them. The appropriate +% use of \vfill depends on what kind of text is +% on the last page and whether or not the columns +% are being equalized. + +%\vfill + +% Can be used to pull up biographies so that the bottom of the last one +% is flush with the other column. +%\enlargethispage{-5in} + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bare_jrnl_comsoc.tex b/IEEEtran/bare_jrnl_comsoc.tex new file mode 100644 index 0000000..4ff5783 --- /dev/null +++ b/IEEEtran/bare_jrnl_comsoc.tex @@ -0,0 +1,744 @@ + +%% bare_jrnl_comsoc.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% see http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE +%% Communications Society journal paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + + +\documentclass[journal,comsoc]{IEEEtran} +% +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[journal,comsoc]{../sty/IEEEtran} + + +\usepackage[T1]{fontenc}% optional T1 font encoding + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +%\usepackage{cite} +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. + + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + + +% *** MATH PACKAGES *** +% +\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% Do NOT use the amsbsy package under comsoc mode as that feature is +% already built into the Times Math font (newtxmath, mathtime, etc.). +% +% Also, note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + +% Select a Times math font under comsoc mode or else one will automatically +% be selected for you at the document start. This is required as Communications +% Society journals use a Times, not Computer Modern, math font. +\usepackage[cmintegrals]{newtxmath} +% The freely available newtxmath package was written by Michael Sharpe and +% provides a feature rich Times math font. The cmintegrals option, which is +% the default under IEEEtran, is needed to get the correct style integral +% symbols used in Communications Society journals. Version 1.451, July 28, +% 2015 or later is recommended. Also, do *not* load the newtxtext.sty package +% as doing so would alter the main text font. +% http://www.ctan.org/pkg/newtx +% +% Alternatively, you can use the MathTime commercial fonts if you have them +% installed on your system: +%\usepackage{mtpro2} +%\usepackage{mt11p} +%\usepackage{mathtime} + + +%\usepackage{bm} +% The bm.sty package was written by David Carlisle and Frank Mittelbach. +% This package provides a \bm{} to produce bold math symbols. +% http://www.ctan.org/pkg/bm + + + + + +% *** SPECIALIZED LIST PACKAGES *** +% +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a larger sans serif font +% than the serif footnote size font used in traditional IEEE formatting +% and thus the need to invoke different subfig.sty package options depending +% on whether compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + + + +%\ifCLASSOPTIONcaptionsoff +% \usepackage[nomarkers]{endfloat} +% \let\MYoriglatexcaption\caption +% \renewcommand{\caption}[2][\relax]{\MYoriglatexcaption[#2]{#2}} +%\fi +% endfloat.sty was written by James Darrell McCauley, Jeff Goldberg and +% Axel Sommerfeldt. This package may be useful when used in conjunction with +% IEEEtran.cls' captionsoff option. Some IEEE journals/societies require that +% submissions have lists of figures/tables at the end of the paper and that +% figures/tables without any captions are placed on a page by themselves at +% the end of the document. If needed, the draftcls IEEEtran class option or +% \CLASSINPUTbaselinestretch interface can be used to increase the line +% spacing as well. Be sure and use the nomarkers option of endfloat to +% prevent endfloat from "marking" where the figures would have been placed +% in the text. The two hack lines of code above are a slight modification of +% that suggested by in the endfloat docs (section 8.4.1) to ensure that +% the full captions always appear in the list of figures/tables - even if +% the user used the short optional argument of \caption[]{}. +% IEEE papers do not typically make use of \caption[]'s optional argument, +% so this should not be an issue. A similar trick can be used to disable +% captions of packages such as subfig.sty that lack options to turn off +% the subcaptions: +% For subfig.sty: +% \let\MYorigsubfloat\subfloat +% \renewcommand{\subfloat}[2][\relax]{\MYorigsubfloat[]{#2}} +% However, the above trick will not work if both optional arguments of +% the \subfloat command are used. Furthermore, there needs to be a +% description of each subfigure *somewhere* and endfloat does not add +% subfigure captions to its list of figures. Thus, the best approach is to +% avoid the use of subfigure captions (many IEEE journals avoid them anyway) +% and instead reference/explain all the subfigures within the main caption. +% The latest version of endfloat.sty and its documentation can obtained at: +% http://www.ctan.org/pkg/endfloat +% +% The IEEEtran \ifCLASSOPTIONcaptionsoff conditional can also be used +% later in the document, say, to conditionally put the References on a +% page by themselves. + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Demo of IEEEtran.cls for\\ IEEE Communications Society Journals} +% +% +% author names and IEEE memberships +% note positions of commas and nonbreaking spaces ( ~ ) LaTeX will not break +% a structure at a ~ so this keeps an author's name from being broken across +% two lines. +% use \thanks{} to gain access to the first footnote area +% a separate \thanks must be used for each paragraph as LaTeX2e's \thanks +% was not built to handle multiple paragraphs +% + +\author{Michael~Shell,~\IEEEmembership{Member,~IEEE,} + John~Doe,~\IEEEmembership{Fellow,~OSA,} + and~Jane~Doe,~\IEEEmembership{Life~Fellow,~IEEE}% <-this % stops a space +\thanks{M. Shell was with the Department +of Electrical and Computer Engineering, Georgia Institute of Technology, Atlanta, +GA, 30332 USA e-mail: (see http://www.michaelshell.org/contact.html).}% <-this % stops a space +\thanks{J. Doe and J. Doe are with Anonymous University.}% <-this % stops a space +\thanks{Manuscript received April 19, 2005; revised August 26, 2015.}} + +% note the % following the last \IEEEmembership and also \thanks - +% these prevent an unwanted space from occurring between the last author name +% and the end of the author line. i.e., if you had this: +% +% \author{....lastname \thanks{...} \thanks{...} } +% ^------------^------------^----Do not want these spaces! +% +% a space would be appended to the last name and could cause every name on that +% line to be shifted left slightly. This is one of those "LaTeX things". For +% instance, "\textbf{A} \textbf{B}" will typeset as "A B" not "AB". To get +% "AB" then you have to do: "\textbf{A}\textbf{B}" +% \thanks is no different in this regard, so shield the last } of each \thanks +% that ends a line with a % and do not let a space in before the next \thanks. +% Spaces after \IEEEmembership other than the last one are OK (and needed) as +% you are supposed to have spaces between the names. For what it is worth, +% this is a minor point as most people would not even notice if the said evil +% space somehow managed to creep in. + + + +% The paper headers +\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2015}% +{Shell \MakeLowercase{\textit{et al.}}: Bare Demo of IEEEtran.cls for IEEE Communications Society Journals} +% The only time the second header will appear is for the odd numbered pages +% after the title page when using the twoside option. +% +% *** Note that you probably will NOT want to include the author's *** +% *** name in the headers of peer review papers. *** +% You can use \ifCLASSOPTIONpeerreview for conditional compilation here if +% you desire. + + + + +% If you want to put a publisher's ID mark on the page you can do it like +% this: +%\IEEEpubid{0000--0000/00\$00.00~\copyright~2015 IEEE} +% Remember, if you use this you must call \IEEEpubidadjcol in the second +% column for its text to clear the IEEEpubid mark. + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + + + +% make the title area +\maketitle + +% As a general rule, do not put math, special symbols or citations +% in the abstract or keywords. +\begin{abstract} +The abstract goes here. +\end{abstract} + +% Note that keywords are not normally used for peerreview papers. +\begin{IEEEkeywords} +Communications Society, IEEE, IEEEtran, journal, \LaTeX, paper, template. +\end{IEEEkeywords} + + + + + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + + +\section{Introduction} +% The very first letter is a 2 line initial drop letter followed +% by the rest of the first word in caps. +% +% form to use if the first word consists of a single letter: +% \IEEEPARstart{A}{demo} file is .... +% +% form to use if you need the single drop letter followed by +% normal text (unknown if ever used by the IEEE): +% \IEEEPARstart{A}{}demo file is .... +% +% Some journals put the first two words in caps: +% \IEEEPARstart{T}{his demo} file is .... +% +% Here we have the typical use of a "T" for an initial drop letter +% and "HIS" in caps to complete the first word. +\IEEEPARstart{T}{his} demo file is intended to serve as a ``starter file'' +for IEEE Communications Society journal papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + +% needed in second column of first page if using \IEEEpubid +%\IEEEpubidadjcol + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + + +% if have a single appendix: +%\appendix[Proof of the Zonklar Equations] +% or +%\appendix % for no appendix heading +% do not use \section anymore after \appendix, only \section* +% is possibly needed + +% use appendices with more than one appendix +% then use \section to start each appendix +% you must declare a \section before using any +% \subsection or using \label (\appendices by itself +% starts a section numbered zero.) +% + + +\appendices +\section{Proof of the First Zonklar Equation} +Appendix one text goes here. + +% you can choose not to have a title for an appendix +% if you want by leaving the argument blank +\section{} +Appendix two text goes here. + + +% use section* for acknowledgment +\section*{Acknowledgment} + + +The authors would like to thank... + + +% Can use something like this to put references on a page +% by themselves when using endfloat and the captionsoff option. +\ifCLASSOPTIONcaptionsoff + \newpage +\fi + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + +% biography section +% +% If you have an EPS/PDF photo (graphicx package needed) extra braces are +% needed around the contents of the optional argument to biography to prevent +% the LaTeX parser from getting confused when it sees the complicated +% \includegraphics command within an optional argument. (You could create +% your own custom macro containing the \includegraphics command to make things +% simpler here.) +%\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{mshell}}]{Michael Shell} +% or if you just want to reserve a space for a photo: + +\begin{IEEEbiography}{Michael Shell} +Biography text here. +\end{IEEEbiography} + +% if you will not have a photo at all: +\begin{IEEEbiographynophoto}{John Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% insert where needed to balance the two columns on the last page with +% biographies +%\newpage + +\begin{IEEEbiographynophoto}{Jane Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% You can push biographies down or up by placing +% a \vfill before or after them. The appropriate +% use of \vfill depends on what kind of text is +% on the last page and whether or not the columns +% are being equalized. + +%\vfill + +% Can be used to pull up biographies so that the bottom of the last one +% is flush with the other column. +%\enlargethispage{-5in} + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bare_jrnl_transmag.tex b/IEEEtran/bare_jrnl_transmag.tex new file mode 100644 index 0000000..dfe99ae --- /dev/null +++ b/IEEEtran/bare_jrnl_transmag.tex @@ -0,0 +1,714 @@ + +%% bare_jrnl_transmag.tex +%% V1.4b +%% 2015/08/26 +%% by Michael Shell +%% see http://www.michaelshell.org/ +%% for current contact information. +%% +%% This is a skeleton file demonstrating the use of IEEEtran.cls +%% (requires IEEEtran.cls version 1.8b or later) with an IEEE +%% Transactions on Magnetics journal paper. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and +%% http://www.ieee.org/ + +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +% *** Authors should verify (and, if needed, correct) their LaTeX system *** +% *** with the testflow diagnostic prior to trusting their LaTeX platform *** +% *** with production work. The IEEE's font choices and paper sizes can *** +% *** trigger bugs that do not appear when using other class files. *** *** +% The testflow support page is at: +% http://www.michaelshell.org/tex/testflow/ + + + +\documentclass[journal,transmag]{IEEEtran} +% +% If IEEEtran.cls has not been installed into the LaTeX system files, +% manually specify the path to it like: +% \documentclass[journal]{../sty/IEEEtran} + + + + + +% Some very useful LaTeX packages include: +% (uncomment the ones you want to load) + + +% *** MISC UTILITY PACKAGES *** +% +%\usepackage{ifpdf} +% Heiko Oberdiek's ifpdf.sty is very useful if you need conditional +% compilation based on whether the output is pdf or dvi. +% usage: +% \ifpdf +% % pdf code +% \else +% % dvi code +% \fi +% The latest version of ifpdf.sty can be obtained from: +% http://www.ctan.org/pkg/ifpdf +% Also, note that IEEEtran.cls V1.7 and later provides a builtin +% \ifCLASSINFOpdf conditional that works the same way. +% When switching from latex to pdflatex and vice-versa, the compiler may +% have to be run twice to clear warning/error messages. + + + + + + +% *** CITATION PACKAGES *** +% +%\usepackage{cite} +% cite.sty was written by Donald Arseneau +% V1.6 and later of IEEEtran pre-defines the format of the cite.sty package +% \cite{} output to follow that of the IEEE. Loading the cite package will +% result in citation numbers being automatically sorted and properly +% "compressed/ranged". e.g., [1], [9], [2], [7], [5], [6] without using +% cite.sty will become [1], [2], [5]--[7], [9] using cite.sty. cite.sty's +% \cite will automatically add leading space, if needed. Use cite.sty's +% noadjust option (cite.sty V3.8 and later) if you want to turn this off +% such as if a citation ever needs to be enclosed in parenthesis. +% cite.sty is already installed on most LaTeX systems. Be sure and use +% version 5.0 (2009-03-20) and later if using hyperref.sty. +% The latest version can be obtained at: +% http://www.ctan.org/pkg/cite +% The documentation is contained in the cite.sty file itself. + + + + + + +% *** GRAPHICS RELATED PACKAGES *** +% +\ifCLASSINFOpdf + % \usepackage[pdftex]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../pdf/}{../jpeg/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.pdf,.jpeg,.png} +\else + % or other class option (dvipsone, dvipdf, if not using dvips). graphicx + % will default to the driver specified in the system graphics.cfg if no + % driver is specified. + % \usepackage[dvips]{graphicx} + % declare the path(s) where your graphic files are + % \graphicspath{{../eps/}} + % and their extensions so you won't have to specify these with + % every instance of \includegraphics + % \DeclareGraphicsExtensions{.eps} +\fi +% graphicx was written by David Carlisle and Sebastian Rahtz. It is +% required if you want graphics, photos, etc. graphicx.sty is already +% installed on most LaTeX systems. The latest version and documentation +% can be obtained at: +% http://www.ctan.org/pkg/graphicx +% Another good source of documentation is "Using Imported Graphics in +% LaTeX2e" by Keith Reckdahl which can be found at: +% http://www.ctan.org/pkg/epslatex +% +% latex, and pdflatex in dvi mode, support graphics in encapsulated +% postscript (.eps) format. pdflatex in pdf mode supports graphics +% in .pdf, .jpeg, .png and .mps (metapost) formats. Users should ensure +% that all non-photo figures use a vector format (.eps, .pdf, .mps) and +% not a bitmapped formats (.jpeg, .png). The IEEE frowns on bitmapped formats +% which can result in "jaggedy"/blurry rendering of lines and letters as +% well as large increases in file sizes. +% +% You can find documentation about the pdfTeX application at: +% http://www.tug.org/applications/pdftex + + + + +% *** MATH PACKAGES *** +% +%\usepackage{amsmath} +% A popular package from the American Mathematical Society that provides +% many useful and powerful commands for dealing with mathematics. +% +% Note that the amsmath package sets \interdisplaylinepenalty to 10000 +% thus preventing page breaks from occurring within multiline equations. Use: +%\interdisplaylinepenalty=2500 +% after loading amsmath to restore such page breaks as IEEEtran.cls normally +% does. amsmath.sty is already installed on most LaTeX systems. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/amsmath + + + + + +% *** SPECIALIZED LIST PACKAGES *** +% +%\usepackage{algorithmic} +% algorithmic.sty was written by Peter Williams and Rogerio Brito. +% This package provides an algorithmic environment fo describing algorithms. +% You can use the algorithmic environment in-text or within a figure +% environment to provide for a floating algorithm. Do NOT use the algorithm +% floating environment provided by algorithm.sty (by the same authors) or +% algorithm2e.sty (by Christophe Fiorio) as the IEEE does not use dedicated +% algorithm float types and packages that provide these will not provide +% correct IEEE style captions. The latest version and documentation of +% algorithmic.sty can be obtained at: +% http://www.ctan.org/pkg/algorithms +% Also of interest may be the (relatively newer and more customizable) +% algorithmicx.sty package by Szasz Janos: +% http://www.ctan.org/pkg/algorithmicx + + + + +% *** ALIGNMENT PACKAGES *** +% +%\usepackage{array} +% Frank Mittelbach's and David Carlisle's array.sty patches and improves +% the standard LaTeX2e array and tabular environments to provide better +% appearance and additional user controls. As the default LaTeX2e table +% generation code is lacking to the point of almost being broken with +% respect to the quality of the end results, all users are strongly +% advised to use an enhanced (at the very least that provided by array.sty) +% set of table tools. array.sty is already installed on most systems. The +% latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/array + + +% IEEEtran contains the IEEEeqnarray family of commands that can be used to +% generate multiline equations as well as matrices, tables, etc., of high +% quality. + + + + +% *** SUBFIGURE PACKAGES *** +%\ifCLASSOPTIONcompsoc +% \usepackage[caption=false,font=normalsize,labelfont=sf,textfont=sf]{subfig} +%\else +% \usepackage[caption=false,font=footnotesize]{subfig} +%\fi +% subfig.sty, written by Steven Douglas Cochran, is the modern replacement +% for subfigure.sty, the latter of which is no longer maintained and is +% incompatible with some LaTeX packages including fixltx2e. However, +% subfig.sty requires and automatically loads Axel Sommerfeldt's caption.sty +% which will override IEEEtran.cls' handling of captions and this will result +% in non-IEEE style figure/table captions. To prevent this problem, be sure +% and invoke subfig.sty's "caption=false" package option (available since +% subfig.sty version 1.3, 2005/06/28) as this is will preserve IEEEtran.cls +% handling of captions. +% Note that the Computer Society format requires a larger sans serif font +% than the serif footnote size font used in traditional IEEE formatting +% and thus the need to invoke different subfig.sty package options depending +% on whether compsoc mode has been enabled. +% +% The latest version and documentation of subfig.sty can be obtained at: +% http://www.ctan.org/pkg/subfig + + + +% *** FLOAT PACKAGES *** +% +%\usepackage{fixltx2e} +% fixltx2e, the successor to the earlier fix2col.sty, was written by +% Frank Mittelbach and David Carlisle. This package corrects a few problems +% in the LaTeX2e kernel, the most notable of which is that in current +% LaTeX2e releases, the ordering of single and double column floats is not +% guaranteed to be preserved. Thus, an unpatched LaTeX2e can allow a +% single column figure to be placed prior to an earlier double column +% figure. +% Be aware that LaTeX2e kernels dated 2015 and later have fixltx2e.sty's +% corrections already built into the system in which case a warning will +% be issued if an attempt is made to load fixltx2e.sty as it is no longer +% needed. +% The latest version and documentation can be found at: +% http://www.ctan.org/pkg/fixltx2e + + +%\usepackage{stfloats} +% stfloats.sty was written by Sigitas Tolusis. This package gives LaTeX2e +% the ability to do double column floats at the bottom of the page as well +% as the top. (e.g., "\begin{figure*}[!b]" is not normally possible in +% LaTeX2e). It also provides a command: +%\fnbelowfloat +% to enable the placement of footnotes below bottom floats (the standard +% LaTeX2e kernel puts them above bottom floats). This is an invasive package +% which rewrites many portions of the LaTeX2e float routines. It may not work +% with other packages that modify the LaTeX2e float routines. The latest +% version and documentation can be obtained at: +% http://www.ctan.org/pkg/stfloats +% Do not use the stfloats baselinefloat ability as the IEEE does not allow +% \baselineskip to stretch. Authors submitting work to the IEEE should note +% that the IEEE rarely uses double column equations and that authors should try +% to avoid such use. Do not be tempted to use the cuted.sty or midfloat.sty +% packages (also by Sigitas Tolusis) as the IEEE does not format its papers in +% such ways. +% Do not attempt to use stfloats with fixltx2e as they are incompatible. +% Instead, use Morten Hogholm'a dblfloatfix which combines the features +% of both fixltx2e and stfloats: +% +% \usepackage{dblfloatfix} +% The latest version can be found at: +% http://www.ctan.org/pkg/dblfloatfix + + + + +%\ifCLASSOPTIONcaptionsoff +% \usepackage[nomarkers]{endfloat} +% \let\MYoriglatexcaption\caption +% \renewcommand{\caption}[2][\relax]{\MYoriglatexcaption[#2]{#2}} +%\fi +% endfloat.sty was written by James Darrell McCauley, Jeff Goldberg and +% Axel Sommerfeldt. This package may be useful when used in conjunction with +% IEEEtran.cls' captionsoff option. Some IEEE journals/societies require that +% submissions have lists of figures/tables at the end of the paper and that +% figures/tables without any captions are placed on a page by themselves at +% the end of the document. If needed, the draftcls IEEEtran class option or +% \CLASSINPUTbaselinestretch interface can be used to increase the line +% spacing as well. Be sure and use the nomarkers option of endfloat to +% prevent endfloat from "marking" where the figures would have been placed +% in the text. The two hack lines of code above are a slight modification of +% that suggested by in the endfloat docs (section 8.4.1) to ensure that +% the full captions always appear in the list of figures/tables - even if +% the user used the short optional argument of \caption[]{}. +% IEEE papers do not typically make use of \caption[]'s optional argument, +% so this should not be an issue. A similar trick can be used to disable +% captions of packages such as subfig.sty that lack options to turn off +% the subcaptions: +% For subfig.sty: +% \let\MYorigsubfloat\subfloat +% \renewcommand{\subfloat}[2][\relax]{\MYorigsubfloat[]{#2}} +% However, the above trick will not work if both optional arguments of +% the \subfloat command are used. Furthermore, there needs to be a +% description of each subfigure *somewhere* and endfloat does not add +% subfigure captions to its list of figures. Thus, the best approach is to +% avoid the use of subfigure captions (many IEEE journals avoid them anyway) +% and instead reference/explain all the subfigures within the main caption. +% The latest version of endfloat.sty and its documentation can obtained at: +% http://www.ctan.org/pkg/endfloat +% +% The IEEEtran \ifCLASSOPTIONcaptionsoff conditional can also be used +% later in the document, say, to conditionally put the References on a +% page by themselves. + + + + +% *** PDF, URL AND HYPERLINK PACKAGES *** +% +%\usepackage{url} +% url.sty was written by Donald Arseneau. It provides better support for +% handling and breaking URLs. url.sty is already installed on most LaTeX +% systems. The latest version and documentation can be obtained at: +% http://www.ctan.org/pkg/url +% Basically, \url{my_url_here}. + + + + +% *** Do not adjust lengths that control margins, column widths, etc. *** +% *** Do not use packages that alter fonts (such as pslatex). *** +% There should be no need to do such things with IEEEtran.cls V1.6 and later. +% (Unless specifically asked to do so by the journal or conference you plan +% to submit to, of course. ) + + +% correct bad hyphenation here +\hyphenation{op-tical net-works semi-conduc-tor} + + +\begin{document} +% +% paper title +% Titles are generally capitalized except for words such as a, an, and, as, +% at, but, by, for, in, nor, of, on, or, the, to and up, which are usually +% not capitalized unless they are the first or last word of the title. +% Linebreaks \\ can be used within to get better formatting as desired. +% Do not put math or special symbols in the title. +\title{Bare Demo of IEEEtran.cls for\\ IEEE \textsc{Transactions on Magnetics}} + + + +% author names and affiliations +% transmag papers use the long conference author name format. + +\author{\IEEEauthorblockN{Michael Shell\IEEEauthorrefmark{1}, +Homer Simpson\IEEEauthorrefmark{2}, +James Kirk\IEEEauthorrefmark{3}, +Montgomery Scott\IEEEauthorrefmark{3}, and +Eldon Tyrell\IEEEauthorrefmark{4},~\IEEEmembership{Fellow,~IEEE}} +\IEEEauthorblockA{\IEEEauthorrefmark{1}School of Electrical and Computer Engineering, +Georgia Institute of Technology, Atlanta, GA 30332 USA} +\IEEEauthorblockA{\IEEEauthorrefmark{2}Twentieth Century Fox, Springfield, USA} +\IEEEauthorblockA{\IEEEauthorrefmark{3}Starfleet Academy, San Francisco, CA 96678 USA} +\IEEEauthorblockA{\IEEEauthorrefmark{4}Tyrell Inc., 123 Replicant Street, Los Angeles, CA 90210 USA}% <-this % stops an unwanted space +\thanks{Manuscript received December 1, 2012; revised August 26, 2015. +Corresponding author: M. Shell (email: http://www.michaelshell.org/contact.html).}} + + + +% The paper headers +\markboth{Journal of \LaTeX\ Class Files,~Vol.~14, No.~8, August~2015}% +{Shell \MakeLowercase{\textit{et al.}}: Bare Demo of IEEEtran.cls for IEEE Transactions on Magnetics Journals} +% The only time the second header will appear is for the odd numbered pages +% after the title page when using the twoside option. +% +% *** Note that you probably will NOT want to include the author's *** +% *** name in the headers of peer review papers. *** +% You can use \ifCLASSOPTIONpeerreview for conditional compilation here if +% you desire. + + + + +% If you want to put a publisher's ID mark on the page you can do it like +% this: +%\IEEEpubid{0000--0000/00\$00.00~\copyright~2015 IEEE} +% Remember, if you use this you must call \IEEEpubidadjcol in the second +% column for its text to clear the IEEEpubid mark. + + + +% use for special paper notices +%\IEEEspecialpapernotice{(Invited Paper)} + + +% for Transactions on Magnetics papers, we must declare the abstract and +% index terms PRIOR to the title within the \IEEEtitleabstractindextext +% IEEEtran command as these need to go into the title area created by +% \maketitle. +% As a general rule, do not put math, special symbols or citations +% in the abstract or keywords. +\IEEEtitleabstractindextext{% +\begin{abstract} +The abstract goes here. +\end{abstract} + +% Note that keywords are not normally used for peerreview papers. +\begin{IEEEkeywords} +IEEE, IEEEtran, IEEE Transactions on Magnetics, journal, \LaTeX, magnetics, paper, template. +\end{IEEEkeywords}} + + + +% make the title area +\maketitle + + +% To allow for easy dual compilation without having to reenter the +% abstract/keywords data, the \IEEEtitleabstractindextext text will +% not be used in maketitle, but will appear (i.e., to be "transported") +% here as \IEEEdisplaynontitleabstractindextext when the compsoc +% or transmag modes are not selected if conference mode is selected +% - because all conference papers position the abstract like regular +% papers do. +\IEEEdisplaynontitleabstractindextext +% \IEEEdisplaynontitleabstractindextext has no effect when using +% compsoc or transmag under a non-conference mode. + + + + + + + +% For peer review papers, you can put extra information on the cover +% page as needed: +% \ifCLASSOPTIONpeerreview +% \begin{center} \bfseries EDICS Category: 3-BBND \end{center} +% \fi +% +% For peerreview papers, this IEEEtran command inserts a page break and +% creates the second title. It will be ignored for other modes. +\IEEEpeerreviewmaketitle + + + +\section{Introduction} +% The very first letter is a 2 line initial drop letter followed +% by the rest of the first word in caps. +% +% form to use if the first word consists of a single letter: +% \IEEEPARstart{A}{demo} file is .... +% +% form to use if you need the single drop letter followed by +% normal text (unknown if ever used by the IEEE): +% \IEEEPARstart{A}{}demo file is .... +% +% Some journals put the first two words in caps: +% \IEEEPARstart{T}{his demo} file is .... +% +% Here we have the typical use of a "T" for an initial drop letter +% and "HIS" in caps to complete the first word. +\IEEEPARstart{T}{his} demo file is intended to serve as a ``starter file'' +for IEEE \textsc{Transactions on Magnetics} journal papers produced under \LaTeX\ using +IEEEtran.cls version 1.8b and later. +% You must have at least 2 lines in the paragraph with the drop letter +% (should never be an issue) +I wish you the best of success. + +\hfill mds + +\hfill August 26, 2015 + +\subsection{Subsection Heading Here} +Subsection text here. + +% needed in second column of first page if using \IEEEpubid +%\IEEEpubidadjcol + +\subsubsection{Subsubsection Heading Here} +Subsubsection text here. + + +% An example of a floating figure using the graphicx package. +% Note that \label must occur AFTER (or within) \caption. +% For figures, \caption should occur after the \includegraphics. +% Note that IEEEtran v1.7 and later has special internal code that +% is designed to preserve the operation of \label within \caption +% even when the captionsoff option is in effect. However, because +% of issues like this, it may be the safest practice to put all your +% \label just after \caption rather than within \caption{}. +% +% Reminder: the "draftcls" or "draftclsnofoot", not "draft", class +% option should be used if it is desired that the figures are to be +% displayed while in draft mode. +% +%\begin{figure}[!t] +%\centering +%\includegraphics[width=2.5in]{myfigure} +% where an .eps filename suffix will be assumed under latex, +% and a .pdf suffix will be assumed for pdflatex; or what has been declared +% via \DeclareGraphicsExtensions. +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure} + +% Note that the IEEE typically puts floats only at the top, even when this +% results in a large percentage of a column being occupied by floats. + + +% An example of a double column floating figure using two subfigures. +% (The subfig.sty package must be loaded for this to work.) +% The subfigure \label commands are set within each subfloat command, +% and the \label for the overall figure must come after \caption. +% \hfil is used as a separator to get equal spacing. +% Watch out that the combined width of all the subfigures on a +% line do not exceed the text width or a line break will occur. +% +%\begin{figure*}[!t] +%\centering +%\subfloat[Case I]{\includegraphics[width=2.5in]{box}% +%\label{fig_first_case}} +%\hfil +%\subfloat[Case II]{\includegraphics[width=2.5in]{box}% +%\label{fig_second_case}} +%\caption{Simulation results for the network.} +%\label{fig_sim} +%\end{figure*} +% +% Note that often IEEE papers with subfigures do not employ subfigure +% captions (using the optional argument to \subfloat[]), but instead will +% reference/describe all of them (a), (b), etc., within the main caption. +% Be aware that for subfig.sty to generate the (a), (b), etc., subfigure +% labels, the optional argument to \subfloat must be present. If a +% subcaption is not desired, just leave its contents blank, +% e.g., \subfloat[]. + + +% An example of a floating table. Note that, for IEEE style tables, the +% \caption command should come BEFORE the table and, given that table +% captions serve much like titles, are usually capitalized except for words +% such as a, an, and, as, at, but, by, for, in, nor, of, on, or, the, to +% and up, which are usually not capitalized unless they are the first or +% last word of the caption. Table text will default to \footnotesize as +% the IEEE normally uses this smaller font for tables. +% The \label must come after \caption as always. +% +%\begin{table}[!t] +%% increase table row spacing, adjust to taste +%\renewcommand{\arraystretch}{1.3} +% if using array.sty, it might be a good idea to tweak the value of +% \extrarowheight as needed to properly center the text within the cells +%\caption{An Example of a Table} +%\label{table_example} +%\centering +%% Some packages, such as MDW tools, offer better commands for making tables +%% than the plain LaTeX2e tabular which is used here. +%\begin{tabular}{|c||c|} +%\hline +%One & Two\\ +%\hline +%Three & Four\\ +%\hline +%\end{tabular} +%\end{table} + + +% Note that the IEEE does not put floats in the very first column +% - or typically anywhere on the first page for that matter. Also, +% in-text middle ("here") positioning is typically not used, but it +% is allowed and encouraged for Computer Society conferences (but +% not Computer Society journals). Most IEEE journals/conferences use +% top floats exclusively. +% Note that, LaTeX2e, unlike IEEE journals/conferences, places +% footnotes above bottom floats. This can be corrected via the +% \fnbelowfloat command of the stfloats package. + + + + +\section{Conclusion} +The conclusion goes here. + + + + + +% if have a single appendix: +%\appendix[Proof of the Zonklar Equations] +% or +%\appendix % for no appendix heading +% do not use \section anymore after \appendix, only \section* +% is possibly needed + +% use appendices with more than one appendix +% then use \section to start each appendix +% you must declare a \section before using any +% \subsection or using \label (\appendices by itself +% starts a section numbered zero.) +% + + +\appendices +\section{Proof of the First Zonklar Equation} +Appendix one text goes here. + +% you can choose not to have a title for an appendix +% if you want by leaving the argument blank +\section{} +Appendix two text goes here. + + +% use section* for acknowledgment +\section*{Acknowledgment} + + +The authors would like to thank... + + +% Can use something like this to put references on a page +% by themselves when using endfloat and the captionsoff option. +\ifCLASSOPTIONcaptionsoff + \newpage +\fi + + + +% trigger a \newpage just before the given reference +% number - used to balance the columns on the last page +% adjust value as needed - may need to be readjusted if +% the document is modified later +%\IEEEtriggeratref{8} +% The "triggered" command can be changed if desired: +%\IEEEtriggercmd{\enlargethispage{-5in}} + +% references section + +% can use a bibliography generated by BibTeX as a .bbl file +% BibTeX documentation can be easily obtained at: +% http://mirror.ctan.org/biblio/bibtex/contrib/doc/ +% The IEEEtran BibTeX style support page is at: +% http://www.michaelshell.org/tex/ieeetran/bibtex/ +%\bibliographystyle{IEEEtran} +% argument is your BibTeX string definitions and bibliography database(s) +%\bibliography{IEEEabrv,../bib/paper} +% +% manually copy in the resultant .bbl file +% set second argument of \begin to the number of references +% (used to reserve space for the reference number labels box) +\begin{thebibliography}{1} + +\bibitem{IEEEhowto:kopka} +H.~Kopka and P.~W. Daly, \emph{A Guide to \LaTeX}, 3rd~ed.\hskip 1em plus + 0.5em minus 0.4em\relax Harlow, England: Addison-Wesley, 1999. + +\end{thebibliography} + +% biography section +% +% If you have an EPS/PDF photo (graphicx package needed) extra braces are +% needed around the contents of the optional argument to biography to prevent +% the LaTeX parser from getting confused when it sees the complicated +% \includegraphics command within an optional argument. (You could create +% your own custom macro containing the \includegraphics command to make things +% simpler here.) +%\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{mshell}}]{Michael Shell} +% or if you just want to reserve a space for a photo: + +\begin{IEEEbiography}{Michael Shell} +Biography text here. +\end{IEEEbiography} + +% if you will not have a photo at all: +\begin{IEEEbiographynophoto}{John Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% insert where needed to balance the two columns on the last page with +% biographies +%\newpage + +\begin{IEEEbiographynophoto}{Jane Doe} +Biography text here. +\end{IEEEbiographynophoto} + +% You can push biographies down or up by placing +% a \vfill before or after them. The appropriate +% use of \vfill depends on what kind of text is +% on the last page and whether or not the columns +% are being equalized. + +%\vfill + +% Can be used to pull up biographies so that the bottom of the last one +% is flush with the other column. +%\enlargethispage{-5in} + + + +% that's all folks +\end{document} + + diff --git a/IEEEtran/bibtex/IEEEabrv.bib b/IEEEtran/bibtex/IEEEabrv.bib new file mode 100644 index 0000000..bcaccfc --- /dev/null +++ b/IEEEtran/bibtex/IEEEabrv.bib @@ -0,0 +1,489 @@ + +IEEEabrv.bib +V1.14 (2015/08/26) +Copyright (c) 2002-2015 by Michael Shell +See: http://www.michaelshell.org/ +for current contact information. + +BibTeX bibliography string definitions of the ABBREVIATED titles of +IEEE journals and magazines and online publications. + +This file is designed for bibliography styles that require +abbreviated titles and is not for use in bibliographies that +require full-length titles. + +Support sites: +http://www.michaelshell.org/tex/ieeetran/ +http://www.ctan.org/pkg/ieeetran +and/or +http://www.ieee.org/ + +Special thanks to Laura Hyslop, Ken Rawson, Kevin Lisankie and +Mona Mittra of the IEEE for their help in obtaining the information needed +to compile this file. Also, Volker Kuhlmann, Moritz Borgmann, +Yannick Berker, Nicolás Barabino, Chuanren Wu and Santiago Cogollos Borras +kindly provided some corrections and additions. + + +************************************************************************* +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** +************************************************************************* + + +USAGE: + +\bibliographystyle{mybstfile} +\bibliography{IEEEabrv,mybibfile} + +where the IEEE titles in the .bib database entries use the strings +defined here. e.g., + + + journal = IEEE_J_AC, + + +to yield "{IEEE} Trans. Automat. Contr." + + +The IEEE uses abbreviated journal titles in their bibliographies - +this file is suitable for work that is to be submitted to the IEEE. + +For work that requires full-length titles, you should use the full +titles provided in the companion file, IEEEfull.bib. + + +** NOTES ** + + 1. Journals have been grouped according to subject in order to make it + easier to locate and extract the definitions for related journals - + as most works use references that are confined to a single topic. + Magazines are listed in straight alphabetical order. + + 2. String names are closely based on IEEE's own internal acronyms. + + 3. Older, out-of-print IEEE titles are included (but not including titles + dating prior to the IEEE's formation from the IRE and AIEE in 1963). + + 4. Abbreviations comply with the official specifications of the IEEE. + + + + + + +IEEE Journals + + +aerospace and military +@STRING{IEEE_J_ANNE = "{IEEE} Trans. Aeronaut. Navig. Electron."} +@STRING{IEEE_J_AES = "{IEEE} Trans. Aerosp. Electron. Syst."} +@STRING{IEEE_J_ANE = "{IEEE} Trans. Aerosp. Navig. Electron."} +@STRING{IEEE_J_AS = "{IEEE} Trans. Aerosp."} +@STRING{IEEE_J_AIRE = "{IEEE} Trans. Airborne Electron."} +@STRING{IEEE_J_MIL = "{IEEE} Trans. Mil. Electron."} + + + +autos, transportation and vehicles (non-aerospace) +@STRING{IEEE_J_ITS = "{IEEE} Trans. Intell. Transp. Syst."} +@STRING{IEEE_J_IV = "{IEEE} Trans. Intell. Veh."} +@STRING{IEEE_J_TTE = "{IEEE} Trans. Transport. Electrific."} +@STRING{IEEE_J_VC = "{IEEE} Trans. Veh. Commun."} +@STRING{IEEE_J_VT = "{IEEE} Trans. Veh. Technol."} + + + +circuits, signals, systems, audio and controls +@STRING{IEEE_J_STSP = "{IEEE} J. Sel. Topics Signal Process."} +@STRING{IEEE_J_SPL = "{IEEE} Signal Process. Lett."} +@STRING{IEEE_J_SYST = "{IEEE} Syst. J."} +@STRING{IEEE_J_ASSP = "{IEEE} Trans. Acoust., Speech, Signal Process."} +@STRING{IEEE_J_AU = "{IEEE} Trans. Audio"} +@STRING{IEEE_J_AUEA = "{IEEE} Trans. Audio Electroacoust."} +in 2014 ASL became ASLP +@STRING{IEEE_J_ASLP = "{IEEE/ACM} Trans. Audio, Speech, Language Process."} +@STRING{IEEE_J_ASL = "{IEEE} Audio, Speech, Language Process."} +@STRING{IEEE_J_AC = "{IEEE} Trans. Autom. Control"} +@STRING{IEEE_J_CAS = "{IEEE} Trans. Circuits Syst."} +@STRING{IEEE_J_CASVT = "{IEEE} Trans. Circuits Syst. Video Technol."} +@STRING{IEEE_J_CASI = "{IEEE} Trans. Circuits Syst. {I}"} +@STRING{IEEE_J_CASII = "{IEEE} Trans. Circuits Syst. {II}"} +in 2004 CASI and CASII renamed part title to CASI_RP and CASII_EB, respectively +@STRING{IEEE_J_CASI_RP = "{IEEE} Trans. Circuits Syst. {I}"} +@STRING{IEEE_J_CASII_EB = "{IEEE} Trans. Circuits Syst. {II}"} +@STRING{IEEE_J_CT = "{IEEE} Trans. Circuit Theory"} +@STRING{IEEE_J_CST = "{IEEE} Trans. Control Syst. Technol."} +@STRING{IEEE_J_ETCAS = "{IEEE} Trans. Emerg. Sel. Topics Circuits Syst."} +@STRING{IEEE_J_SP = "{IEEE} Trans. Signal Process."} +@STRING{IEEE_J_SU = "{IEEE} Trans. Sonics Ultrason."} +@STRING{IEEE_J_SAP = "{IEEE} Trans. Speech Audio Process."} +@STRING{IEEE_J_UE = "{IEEE} Trans. Ultrason. Eng."} +@STRING{IEEE_J_UFFC = "{IEEE} Trans. Ultrason., Ferroelectr., Freq. Control"} + + + +communications +@STRING{IEEE_J_COML = "{IEEE} Commun. Lett."} +@STRING{IEEE_J_JSAC = "{IEEE} J. Sel. Areas Commun."} +@STRING{IEEE_J_COM = "{IEEE} Trans. Commun."} +@STRING{IEEE_J_COMT = "{IEEE} Trans. Commun. Technol."} +@STRING{IEEE_J_WCOM = "{IEEE} Trans. Wireless Commun."} +@STRING{IEEE_J_WCOML = "{IEEE} Wireless Commun. Lett."} + + + +components, packaging and manufacturing +@STRING{IEEE_J_ADVP = "{IEEE} Trans. Adv. Packag."} +@STRING{IEEE_J_CHMT = "{IEEE} Trans. Compon., Hybrids, Manuf. Technol."} +in 2011 CAPT became CPMT +@STRING{IEEE_J_CPMT = "{IEEE} Trans. Compon. Packag. Manuf. Technol."} +@STRING{IEEE_J_CPMTA = "{IEEE} Trans. Compon., Packag., Manuf. Technol. {A}"} +@STRING{IEEE_J_CPMTB = "{IEEE} Trans. Compon., Packag., Manuf. Technol. {B}"} +@STRING{IEEE_J_CPMTC = "{IEEE} Trans. Compon., Packag., Manuf. Technol. {C}"} +@STRING{IEEE_J_CAPTS = "{IEEE} Trans. Compon. Packag. Technol."} +@STRING{IEEE_J_CAPT = "{IEEE} Trans. Compon. Packag. Technol."} +@STRING{IEEE_J_CPART = "{IEEE} Trans. Compon. Parts"} +@STRING{IEEE_J_EPM = "{IEEE} Trans. Electron. Packag. Manuf."} +@STRING{IEEE_J_MFT = "{IEEE} Trans. Manuf. Technol."} +@STRING{IEEE_J_PHP = "{IEEE} Trans. Parts, Hybrids, Packag."} +@STRING{IEEE_J_PMP = "{IEEE} Trans. Parts, Mater., Packag."} + + + +CAD +@STRING{IEEE_J_TCAD = "{IEEE} J. Technol. Comput. Aided Design"} +@STRING{IEEE_J_CAD = "{IEEE} Trans. Comput.-Aided Design Integr. Circuits Syst."} + + + +coding, data, information, knowledge +@STRING{IEEE_J_BD = "{IEEE} Trans. Big Data"} +@STRING{IEEE_J_IFS = "{IEEE} Trans. Inf. Forensics Security"} +@STRING{IEEE_J_IT = "{IEEE} Trans. Inf. Theory"} +@STRING{IEEE_J_KDE = "{IEEE} Trans. Knowl. Data Eng."} + + + +computers, computation, networking and software +@STRING{IEEE_J_CAL = "{IEEE} Comput. Archit. Lett."} +@STRING{IEEE_J_ES = "{IEEE} Embedded Syst. Lett."} +@STRING{IEEE_J_IOT = "{IEEE} Internet Things J."} +@STRING{IEEE_J_XCDC = "{IEEE} J. Explor. Solid-State Computat. Devices Circuits"} +@STRING{IEEE_J_MMCT = "{IEEE} J. Multiscale and Multiphys. Comput. Techn."} +@STRING{IEEE_J_SUSC = "{IEEE} Sustain. Comput."} +@STRING{IEEE_J_CC = "{IEEE} Trans. on Cloud Comput."} +@STRING{IEEE_J_CSS = "{IEEE} Trans. Comput. Social Syst."} +@STRING{IEEE_J_C = "{IEEE} Trans. Comput."} +@STRING{IEEE_J_CNS = "{IEEE} Trans. Control Netw. Syst."} +@STRING{IEEE_J_DSC = "{IEEE} Trans. Depend. Sec. Comput."} +@STRING{IEEE_J_ECOMP = "{IEEE} Trans. Electron. Comput."} +@STRING{IEEE_J_ETC = "{IEEE} Trans. Emerg. Topics Comput."} +@STRING{IEEE_J_EVC = "{IEEE} Trans. Evol. Comput."} +@STRING{IEEE_J_FUZZ = "{IEEE} Trans. Fuzzy Syst."} +@STRING{IEEE_J_MC = "{IEEE} Trans. Mobile Comput."} +@STRING{IEEE_J_MSCS = "{IEEE} Trans. Multi-Scale Comput. Syst."} +@STRING{IEEE_J_NET = "{IEEE/ACM} Trans. Netw."} +@STRING{IEEE_J_NSE = "{IEEE} Trans. Netw. Sci. Eng."} +@STRING{IEEE_J_NSM = "{IEEE} Trans. Netw. Service Manag."} +@STRING{IEEE_J_NN = "{IEEE} Trans. Neural Netw."} +in 2012 NN became NNLS +@STRING{IEEE_J_NNLS = "{IEEE} Trans. Neural Netw. Learn. Syst."} +@STRING{IEEE_J_PDS = "{IEEE} Trans. Parallel Distrib. Syst."} +@STRING{IEEE_J_SC = "{IEEE} Trans. Serv. Comput."} +@STRING{IEEE_J_SIPN = "{IEEE} Trans. Signal Inf. Process. Netw."} +@STRING{IEEE_J_SE = "{IEEE} Trans. Softw. Eng."} + + + +computer graphics, imaging, and multimedia +@STRING{IEEE_J_JDT = "{IEEE/OSA} J. Display Technol."} +@STRING{IEEE_J_IP = "{IEEE} Trans. Image Process."} +@STRING{IEEE_J_MM = "{IEEE} Trans. Multimedia"} +@STRING{IEEE_J_VCG = "{IEEE} Trans. Vis. Comput. Graphics"} + + + +cybernetics, ergonomics, robots, man-machine, artificial intelligence and automation +@STRING{IEEE_J_JAS = "{IEEE/CAA} J. Autom. Sinica"} +@STRING{IEEE_J_JRA = "{IEEE} J. Robot. Autom."} +@STRING{IEEE_J_AFFC = "{IEEE} Trans. Affect. Comput."} +@STRING{IEEE_J_ASE = "{IEEE} Trans. Autom. Sci. Eng."} +@STRING{IEEE_J_AMD = "{IEEE} Trans. Auton. Mental Develop."} +@STRING{IEEE_J_CCN = "{IEEE} Trans. on Cogn. Commun. Netw."} +in 2015 AMD became CDS +@STRING{IEEE_J_CDS = "{IEEE} Trans. Cogn. Develop. Syst."} +@STRING{IEEE_J_CIAIG = "{IEEE} Trans. Comput. Intell. {AI} in Games"} +in 2013 SMCB became CYB +@STRING{IEEE_J_CYB = "{IEEE} Trans. Cybern."} +@STRING{IEEE_J_H = "{IEEE} Trans. Haptics"} +@STRING{IEEE_J_HFE = "{IEEE} Trans. Hum. Factors Electron."} +in 2013 SMCC became HMS +@STRING{IEEE_J_HMS = "{IEEE} Trans. Human-Mach. Syst."} +@STRING{IEEE_J_MMS = "{IEEE} Trans. Man-Mach. Syst."} +@STRING{IEEE_J_PAMI = "{IEEE} Trans. Pattern Anal. Mach. Intell."} +in 1989 JRA became RA +in August 2004, RA split into ASE and RO +@STRING{IEEE_J_RA = "{IEEE} Trans. Robot. Autom."} +@STRING{IEEE_J_RAL = "{IEEE} Robot. Autom. Lett."} +@STRING{IEEE_J_RO = "{IEEE} Trans. Robot."} +@STRING{IEEE_J_SMC = "{IEEE} Trans. Syst., Man, Cybern."} +@STRING{IEEE_J_SMCA = "{IEEE} Trans. Syst., Man, Cybern. {A}"} +@STRING{IEEE_J_SMCB = "{IEEE} Trans. Syst., Man, Cybern. {B}"} +@STRING{IEEE_J_SMCC = "{IEEE} Trans. Syst., Man, Cybern. {C}"} +in 2012 SMCA became SMCS +@STRING{IEEE_J_SMCS = "{IEEE} Trans. Syst., Man, Cybern., Syst."} +@STRING{IEEE_J_SSC = "{IEEE} Trans. Syst. Sci. Cybern."} + + + +earth, wind, fire and water +@STRING{IEEE_J_GRSL = "{IEEE} Geosci. Remote Sens. Lett."} +@STRING{IEEE_J_GE = "{IEEE} Trans. Geosci. Electron."} +@STRING{IEEE_J_GRS = "{IEEE} Trans. Geosci. Remote Sens."} +@STRING{IEEE_J_OE = "{IEEE} J. Ocean. Eng."} +@STRING{IEEE_J_STARS = "{IEEE} J. Sel. Topics Appl. Earth Observ. Remote Sens."} + + + +education, engineering, history, IEEE, professional +@STRING{IEEE_J_CJECE = "Canadian J. Elect. Comput. Eng."} +@STRING{IEEE_J_PROC = "Proc. {IEEE}"} +@STRING{IEEE_J_RITA = "{IEEE} Revista Iberoamericana de Technolog{\'{i}}as del Aprendizaje"} +@STRING{IEEE_J_EDU = "{IEEE} Trans. Educ."} +@STRING{IEEE_J_EM = "{IEEE} Trans. Eng. Manag."} +@STRING{IEEE_J_EWS = "{IEEE} Trans. Eng. Writing Speech"} +@STRING{IEEE_J_LT = "{IEEE} Trans. Learn. Technol."} +@STRING{IEEE_J_PC = "{IEEE} Trans. Prof. Commun."} + + + +electromagnetics, antennas, EMI, magnetics and microwave +@STRING{IEEE_J_AWPL = "{IEEE} Antennas Wireless Propag. Lett."} +@STRING{IEEE_J_MAGL = "{IEEE} Magn. Lett."} +@STRING{IEEE_J_MGWL = "{IEEE} Microw. Guided Wave Lett."} +@STRING{IEEE_J_MWCL = "{IEEE} Microw. Wireless Compon. Lett."} +@STRING{IEEE_J_RFIC = "{IEEE} {RFIC} J."} +@STRING{IEEE_J_RFID = "{IEEE} {RFID} J."} +@STRING{IEEE_J_AP = "{IEEE} Trans. Antennas Propag."} +@STRING{IEEE_J_EMC = "{IEEE} Trans. Electromagn. Compat."} +@STRING{IEEE_J_MAG = "{IEEE} Trans. Magn."} +@STRING{IEEE_J_MTT = "{IEEE} Trans. Microw. Theory Techn."} +@STRING{IEEE_J_RFI = "{IEEE} Trans. Radio Freq. Interference"} +@STRING{IEEE_J_TTHZ = "{IEEE} Trans. {THz} Sci. Technol."} +@STRING{IEEE_J_TJMJ = "{IEEE} Transl. J. Magn. Jpn."} + + + +energy, power and conversion +@STRING{IEEE_J_PHOT = "{IEEE} J. Photovolt."} +@STRING{IEEE_J_PEL = "{IEEE} Power Electron. Lett."} +@STRING{IEEE_J_PETS = "{IEEE} Power Energy Technol. Syst. J."} +@STRING{IEEE_J_ESTPE = "{IEEE} Trans. Emerg. Sel. Topics Power Electron."} +@STRING{IEEE_J_EC = "{IEEE} Trans. Energy Convers."} +@STRING{IEEE_J_PWRAS = "{IEEE} Trans. Power App. Syst."} +@STRING{IEEE_J_PWRD = "{IEEE} Trans. Power Del."} +@STRING{IEEE_J_PWRE = "{IEEE} Trans. Power Electron."} +@STRING{IEEE_J_PWRS = "{IEEE} Trans. Power Syst."} +@STRING{IEEE_J_SG = "{IEEE} Trans. Smart Grid"} +@STRING{IEEE_J_STE = "{IEEE} Trans. Sustain. Energy"} + + + +industrial, commercial and consumer +@STRING{IEEE_J_PSE = "{IEEE} J. Product Safety Eng."} +@STRING{IEEE_J_APPIND = "{IEEE} Trans. Appl. Ind."} +@STRING{IEEE_J_BC = "{IEEE} Trans. Broadcast."} +@STRING{IEEE_J_BCTV = "{IEEE} Trans. Broadcast Television Receivers"} +@STRING{IEEE_J_CE = "{IEEE} Trans. Consum. Electron."} +@STRING{IEEE_J_IE = "{IEEE} Trans. Ind. Electron."} +@STRING{IEEE_J_IECI = "{IEEE} Trans. Ind. Electron. Contr. Instrum."} +@STRING{IEEE_J_IA = "{IEEE} Trans. Ind. Appl."} +@STRING{IEEE_J_IGA = "{IEEE} Trans. Ind. Gen. Appl."} +@STRING{IEEE_J_IINF = "{IEEE} Trans. Ind. Informat."} + + + +instrumentation and measurement +@STRING{IEEE_J_IM = "{IEEE} Trans. Instrum. Meas."} + + + +insulation and materials +@STRING{IEEE_J_JEM = "{IEEE/TMS} J. Electron. Mater."} +@STRING{IEEE_J_DEI = "{IEEE} Trans. Dielectr. Electr. Insul."} +@STRING{IEEE_J_EI = "{IEEE} Trans. Electr. Insul."} + + + +mechanical +@STRING{IEEE_J_MEMS = "J. Microelectromech. Syst."} +in 2014 MEMS became MEMSI +@STRING{IEEE_J_MEMSI = "J. Microelectromech. Syst."} +@STRING{IEEE_J_MECH = "{IEEE/ASME} Trans. Mechatronics"} + + + +medical and biological +@STRING{IEEE_J_BHI = "{IEEE} J. Biomed. Health Inform."} +@STRING{IEEE_J_TEHM = "{IEEE} J. Transl. Eng. Health Med."} +@STRING{IEEE_J_LS = "{IEEE} Life Sci. Lett."} +@STRING{IEEE_J_RBME = "{IEEE} Rev. Biomed. Eng."} +@STRING{IEEE_J_BCAS = "{IEEE} Trans. Biomed. Circuits Syst."} +@STRING{IEEE_J_BMELC = "{IEEE} Trans. Bio-Med. Electron."} +B-ME later dropped the hyphen and became the BME +@STRING{IEEE_J_BME = "{IEEE} Trans. Biomed. Eng."} +@STRING{IEEE_J_B-ME = "{IEEE} Trans. Bio-Med. Eng."} +@STRING{IEEE_J_CBB = "{IEEE/ACM} Trans. Comput. Biol. Bioinformatics"} +@STRING{IEEE_J_ITBM = "{IEEE} Trans. Inf. Technol. Biomed."} +@STRING{IEEE_J_ME = "{IEEE} Trans. Med. Electron."} +@STRING{IEEE_J_MI = "{IEEE} Trans. Med. Imag."} +@STRING{IEEE_J_MBSC = "{IEEE} Trans. Mol. Biol. Multi-Scale Commun."} +@STRING{IEEE_J_NB = "{IEEE} Trans. Nanobiosci."} +@STRING{IEEE_J_NSRE = "{IEEE} Trans. Neural Syst. Rehabil. Eng."} +@STRING{IEEE_J_RE = "{IEEE} Trans. Rehabil. Eng."} + + + +optics, lightwave and photonics +@STRING{IEEE_J_JLT = "J. Lightw. Technol."} +@STRING{IEEE_J_OCN = "{IEEE} J. Opt. Commun. Netw."} +@STRING{IEEE_J_PJ = "{IEEE} Photon. J."} +@STRING{IEEE_J_PTL = "{IEEE} Photon. Technol. Lett."} + + + +physics, electrons, nanotechnology, nuclear and quantum electronics +@STRING{IEEE_J_EDL = "{IEEE} Electron Device Lett."} +@STRING{IEEE_J_EDS = "{IEEE} J. Electron Devices Soc."} +@STRING{IEEE_J_JQE = "{IEEE} J. Quantum Electron."} +@STRING{IEEE_J_JSTQE = "{IEEE} J. Sel. Topics Quantum Electron."} +@STRING{IEEE_J_ENANO = "{IEEE} Nanotechnol. Express"} +@STRING{IEEE_J_ED = "{IEEE} Trans. Electron Devices"} +@STRING{IEEE_J_NANO = "{IEEE} Trans. Nanotechnol."} +@STRING{IEEE_J_NS = "{IEEE} Trans. Nucl. Sci."} +@STRING{IEEE_J_PS = "{IEEE} Trans. Plasma Sci."} + + + +reliability +@STRING{IEEE_J_DMR = "{IEEE} Trans. Device Mater. Rel."} +@STRING{IEEE_J_R = "{IEEE} Trans. Rel."} + + + +semiconductors, superconductors, electrochemical and solid state +@STRING{IEEE_J_ESSL = "{IEEE/ECS} Electrochem. Solid-State Lett."} +@STRING{IEEE_J_JSSC = "{IEEE} J. Solid-State Circuits"} +@STRING{IEEE_J_ASC = "{IEEE} Trans. Appl. Supercond."} +@STRING{IEEE_J_SM = "{IEEE} Trans. Semicond. Manuf."} + + + +sensors +@STRING{IEEE_J_SENSOR = "{IEEE} Sensors J."} + + + +VLSI +@STRING{IEEE_J_VLSI = "{IEEE} Trans. {VLSI} Syst."} + + + + + + +IEEE Magazines and Online Publications + + +@STRING{IEEE_O_ACC = "{IEEE} Access"} +@STRING{IEEE_M_AES = "{IEEE} Aerosp. Electron. Syst. Mag."} +@STRING{IEEE_M_HIST = "{IEEE} Ann. Hist. Comput."} +@STRING{IEEE_M_AP = "{IEEE} Antennas Propag. Mag."} +@STRING{IEEE_M_ASSP = "{IEEE} {ASSP} Mag."} +@STRING{IEEE_M_CHINAC = "China Commun."} +@STRING{IEEE_M_CD = "{IEEE} Circuits Devices Mag."} +@STRING{IEEE_M_CAS = "{IEEE} Circuits Syst. Mag."} +@STRING{IEEE_M_COM = "{IEEE} Commun. Mag."} +@STRING{IEEE_M_COMSOC = "{IEEE} Commun. Soc. Mag."} +@STRING{IEEE_O_CSTO = "{IEEE} Commun. Surveys Tuts."} +@STRING{IEEE_M_CIM = "{IEEE} Comput. Intell. Mag."} +CSEM changed to CSE in 1999 +@STRING{IEEE_M_CSE = "{IEEE} Comput. Sci. Eng."} +@STRING{IEEE_M_CSEM = "{IEEE} Comput. Sci. Eng. Mag."} +@STRING{IEEE_M_C = "Computer"} +@STRING{IEEE_M_CAP = "{IEEE} Comput. Appl. Power"} +@STRING{IEEE_M_CGA = "{IEEE} Comput. Graph. Appl."} +@STRING{IEEE_M_CONC = "{IEEE} Concurrency"} +@STRING{IEEE_M_CS = "{IEEE} Control Syst. Mag."} +in 2012 DTC became DT +@STRING{IEEE_M_DT = "{IEEE} Des. Test"} +@STRING{IEEE_M_DTC = "{IEEE} Des. Test. Comput."} +@STRING{IEEE_O_DSO = "{IEEE} Distrib. Syst. Online"} +@STRING{IEEE_M_EI = "{IEEE} Electr. Insul. Mag."} +@STRING{IEEE_M_ETF = "{IEEE} Electrific. Mag."} +@STRING{IEEE_M_EMC = "{IEEE} Electromagn. Compat."} +@STRING{IEEE_M_ETR = "{IEEE} ElectroTechnol. Rev."} +@STRING{IEEE_M_EMR = "{IEEE} Eng. Manag. Rev."} +@STRING{IEEE_M_EMB = "{IEEE} Eng. Med. Biol. Mag."} +@STRING{IEEE_M_EXP = "{IEEE} Expert"} +@STRING{IEEE_M_GRS = "{IEEE} Geosci. Remote Sens. Mag."} +@STRING{IEEE_M_IA = "{IEEE} Ind. Appl. Mag."} +@STRING{IEEE_M_IE = "{IEEE} Ind. Electron. Mag."} +@STRING{IEEE_M_IM = "{IEEE} Instrum. Meas. Mag."} +@STRING{IEEE_M_IS = "{IEEE} Intell. Syst."} +@STRING{IEEE_M_ITS = "{IEEE} Intell. Transp. Syst. Mag."} +@STRING{IEEE_M_IC = "{IEEE} Internet Comput."} +@STRING{IEEE_M_ITP = "{IEEE} {IT} Prof."} +@STRING{IEEE_M_MICRO = "{IEEE} Micro"} +@STRING{IEEE_M_MW = "{IEEE} Microw. Mag."} +@STRING{IEEE_M_MM = "{IEEE} Multimedia"} +@STRING{IEEE_M_NANO = "{IEEE} Nanotechnol. Mag."} +@STRING{IEEE_M_NET = "{IEEE} Netw."} +IEEE's editorial manual lists "Pers. Commun.", +but "Personal Commun. Mag." seems to be what is used in the journals +@STRING{IEEE_M_PCOM = "{IEEE} Personal Commun. Mag."} +@STRING{IEEE_M_PVC = "{IEEE} Pervasive Comput."} +@STRING{IEEE_M_POT = "{IEEE} Potentials"} +@STRING{IEEE_M_PEL = "{IEEE} Power Electron. Mag."} +CAP and PER merged to form PE in 2003 +@STRING{IEEE_M_PE = "{IEEE} Power Energy Mag."} +@STRING{IEEE_M_PER = "{IEEE} Power Eng. Rev."} +@STRING{IEEE_M_PULSE = "{IEEE} Pulse"} +@STRING{IEEE_M_RA = "{IEEE} Robot. Autom. Mag."} +@STRING{IEEE_M_SAP = "{IEEE} Security Privacy"} +@STRING{IEEE_M_SP = "{IEEE} Signal Process. Mag."} +@STRING{IEEE_M_S = "{IEEE} Softw."} +@STRING{IEEE_M_SSC = "{IEEE} Solid-State Circuits Mag."} +@STRING{IEEE_M_SPECT = "{IEEE} Spectr."} +@STRING{IEEE_M_SMC = "{IEEE} Syst., Man, Cybern. Mag."} +@STRING{IEEE_M_TS = "{IEEE} Technol. Soc. Mag."} +@STRING{IEEE_M_VT = "{IEEE} Veh. Technol. Mag."} +@STRING{IEEE_M_WC = "{IEEE} Wireless Commun."} +@STRING{IEEE_M_TODAY = "Today's Engineer"} + + + + + +-- +EOF diff --git a/IEEEtran/bibtex/IEEEexample.bib b/IEEEtran/bibtex/IEEEexample.bib new file mode 100644 index 0000000..8dbc107 --- /dev/null +++ b/IEEEtran/bibtex/IEEEexample.bib @@ -0,0 +1,1203 @@ + +IEEEexample.bib +V1.14 (2015/08/26) +Copyright (c) 2002-2015 by Michael Shell +See: http://www.michaelshell.org/ +for current contact information. + +This is an example BibTeX database for the official IEEEtran.bst +BibTeX style file. + +Some entries call strings that are defined in the IEEEabrv.bib file. +Therefore, IEEEabrv.bib should be loaded prior to this file. +Usage: + +\bibliographystyle{./IEEEtran} +\bibliography{./IEEEabrv,./IEEEexample} + + +Support sites: +http://www.michaelshell.org/tex/ieeetran/ +http://www.ctan.org/pkg/ieeetran +and/or +http://www.ieee.org/ + +************************************************************************* +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** +************************************************************************* + + +Note that, because the example references were taken from actual IEEE +publications, these examples do not always contain the full amount +of information that may be desirable (for use with other BibTeX styles). +In particular, full names (not abbreviated with initials) should be +entered whenever possible as some (non-IEEE) bibliography styles use +full names. IEEEtran.bst will automatically abbreviate when it encounters +full names. + + + + +references for the IEEEtran.bst documentation +IEEEtran homepage +@electronic{IEEEhowto:IEEEtranpage, + author = "Michael Shell", + title = "{IEEE}tran Homepage", + url = "http://www.michaelshell.org/tex/ieeetran/", + year = "2015" +} + + +the distribution site for IEEEtran.bst +@electronic{IEEEexample:shellCTANpage, + author = "Michael Shell", + title = "{IEEE}tran Webpage on {CTAN}", + url = "http://www.ctan.org/pkg/ieeetran", + year = "2015" +} + + +the IEEE website +sort key is needed for sorting styles +@electronic{IEEEexample:IEEEwebsite, + title = "The {IEEE} Website", + url = "http://www.ieee.org/", + year = "2015", + key = "IEEE" +} + + +The BibTeX user's guide. +The filename could have been put in the URL instead. But, there might +be other interesting things for the user in the same directory - and +the filename might change before the directory that contains it. +@electronic{IEEEexample:bibtexuser, + author = "Oren Patashnik", + title = "{{\BibTeX}}ing", + howpublished = "{btxdoc.pdf}", + url = "http://www.ctan.org/pkg/bibtex", + month = nov, + year = "2010" +} + + +The BibTeX style designer's guide. +@electronic{IEEEexample:bibtexdesign, + author = "Oren Patashnik", + title = "Designing {{\BibTeX}} Styles", + howpublished = "{btxhak.pdf}", + url = "http://www.ctan.org/pkg/bibtex", + month = nov, + year = "2010" +} + + +A comprehensive BibTeX tutorial. +@electronic{IEEEexample:tamethebeast, + author = "Nicolas Markey", + title = "Tame the BeaST --- The B to X of {{\BibTeX}}", + url = "http://www.ctan.org/pkg/tamethebeast", + month = oct, + year = "2009" +} + + +The BibTeX Tips and FAQ guide. +@electronic{IEEEexample:bibtexFAQ, + author = "David Hoadley and Michael Shell", + title = "{{\BibTeX}} Tips and {FAQ}", + howpublished = "{btxFAQ.pdf}", + url = "http://mirror.ctan.org/biblio/bibtex/contrib/doc/btxFAQ.pdf", + month = jan, + year = "2007" +} + + +The TeX FAQ +@electronic{IEEEexample:texfaq, + author = "Robin Fairbairns", + title = "The {{\TeX}} {FAQ}", + url = "http://www.tex.ac.uk/", + month = jun, + year = "2014" +} + + +A BibTeX Guide via Examples. +@electronic{IEEEexample:bibtexguide, + author = "Ki-Joo Kim", + title = "A {{\BibTeX}} Guide via Examples", + howpublished = "{bibtex\_guide.pdf}", + url = "http://www.geocities.ws/kijoo2000/", + month = nov, + year = "2005" +} + + +TeX User Group Bibliography Archive +@electronic{IEEEexample:beebe_archive, + author = "Nelson H. F. Beebe", + title = "{{\TeX}} User Group Bibliography Archive", + url = "http://www.math.utah.edu/pub/tex/bib/index-table.html", + month = dec, + year = "2010" +} + + +@electronic{IEEEexample:natbib, + author = "Patrick W. Daly and Arthur Ogawa", + title = "The natbib package", + url = "http://www.ctan.org/pkg/natbib", + month = sep, + year = "2010" +} + + +@electronic{IEEEexample:urlsty, + author = "Donald Arseneau", + title = "The url package", + url = "http://www.ctan.org/pkg/url", + month = dec, + year = "2013" +} + + +@electronic{IEEEexample:hyperref, + author = "Sebastian Rahtz and Heiko Oberdiek", + title = "The hyperref package", + url = "http://www.ctan.org/pkg/hyperref", + month = nov, + year = "2012" +} + + +@electronic{IEEEexample:breakurl, + author = "Vilar da Camara Neto", + title = "The breakurl package", + url = "http://www.ctan.org/pkg/breakurl", + month = apr, + year = "2013", +} + + +@electronic{IEEEexample:babel, + author = "Johannes L. Braams and Javier Bezos", + title = "The {Babel} package", + url = "http://www.ctan.org/pkg/babel", + month = sep, + year = "2014" +} + + +@electronic{IEEEexample:multibib, + author = "Thorsten Hansen", + title = "The multibib package", + url = "http://www.ctan.org/pkg/multibib", + month = dec, + year = "2008" +} + + +@electronic{IEEEexample:biblatex, + author = "Philipp Lehman and Philip Kime", + title = "The biblatex package", + url = "http://www.ctan.org/pkg/biblatex", + month = apr, + year = "2015" +} + + + + +The three most common and typical types of references used in +IEEE publications: + +an article in a journal +Note the use of the IEEE_J_EDL string, defined in the IEEEabrv.bib file, +for the journal name. IEEEtran.bst defines the BibTeX standard three +letter month codes per IEEE style. +From the June 2002 issue of "IEEE Transactions on Electron Devices", +page 996, reference #16. +@article{IEEEexample:article_typical, + author = "S. Zhang and C. Zhu and J. K. O. Sin and P. K. T. Mok", + title = "A Novel Ultrathin Elevated Channel Low-temperature + Poly-{Si} {TFT}", + journal = IEEE_J_EDL, + volume = "20", + month = nov, + year = "1999", + pages = "569-571" +} + + +journal article using et al. +The (five) authors are actually: F. Delorme, S. Slempkes, G. Alibert, +B. Rose, J. Brandon +The month (July) was not given here. +From the September 1998 issue of "IEEE Journal on Selected Areas in +Communications", page 1257, reference #28. +@article{IEEEexample:articleetal, + author = "F. Delorme and others", + title = "Butt-jointed {DBR} Laser With 15 {nm} Tunability Grown + in Three {MOVPE} Steps", + journal = "Electron. Lett.", + volume = "31", + number = "15", + year = "1995", + pages = "1244-1245" +} + + +a paper in a conference proceedings +"conference" can be used as an alias for "inproceedings" +From the June 2002 issue of "Journal of Microelectromechanical Systems", +page 205, reference #16. +@inproceedings{IEEEexample:conf_typical, + author = "R. K. Gupta and S. D. Senturia", + title = "Pull-in Time Dynamics as a Measure of Absolute Pressure", + booktitle = "Proc. {IEEE} International Workshop on + Microelectromechanical Systems ({MEMS}'97)", + address = "Nagoya, Japan", + month = jan, + year = "1997", + pages = "290-294" +} + + +a book +From the May 2002 issue of "IEEE Transactions on Magnetics", +page 1466, reference #4. +@book{IEEEexample:book_typical, + author = "B. D. Cullity", + title = "Introduction to Magnetic Materials", + publisher = "Addison-Wesley", + address = "Reading, MA", + year = "1972" +} + + + + +Other examples + +journal article with large page numbers, the IEEE will divide numbers 5 digits +or longer into groups of three with small spaces between them. Page ranges +can be separated via either "-" or "--", IEEEtran.bst will automatically +convert the separator dash(es) to "--". +Authors and/or the IEEE do not always provide/use the journal number, but it +was used in this case. IEEEtran.bst can be configured to ignore journal +numbers if desired. +From the August 2000 issue of "IEEE Photonics Technology Letters", +page 1039, reference #11. +@article{IEEEexample:articlelargepages, + author = "A. Castaldini and A. Cavallini and B. Fraboni + and P. Fernandez and J. Piqueras", + title = "Midgap Traps Related to Compensation Processes in + {CdTe} Alloys", + journal = "Phys. Rev. B.", + volume = "56", + number = "23", + year = "1997", + pages = "14897-14900" +} + + +journal article with dual months +use the BibTeX "#" concatenation operator +From the March 2002 issue of "IEEE Transactions on Mechatronics", +page 21, reference #8. +@article{IEEEexample:articledualmonths, + author = "Y. Okada and K. Dejima and T. Ohishi", + title = "Analysis and Comparison of {PM} Synchronous Motor and + Induction Motor Type Magnetic Bearings", + journal = IEEE_J_IA, + volume = "31", + month = sep # "/" # oct, + year = "1995", + pages = "1047-1053" +} + + +journal article to be published as a misc entry type +date information like month and year is optional +However, the article form like that below may be a better approach. +From the May 2002 issue of "IEEE Journal of Selected Areas in +Communication", page 725, reference #3. +@misc{IEEEexample:TBPmisc, + author = "M. Coates and A. Hero and R. Nowak and B. Yu", + title = "Internet Tomography", + howpublished = IEEE_M_SP, + month = may, + year = "2002", + note = "to be published" +} + + +journal article to be published as an article entry type +year is required, so if absent, use the year field to hold +the "submitted for publication" in order to avoid a warning for +the missing year field. +From the June 2002 issue of "IEEE Transactions on Information Theory", +page 1461, reference #21. +@article{IEEEexample:TBParticle, + author = "N. Kahale and R. Urbanke", + title = "On the Minimum Distance of Parallel and Serially + Concatenated Codes", + journal = IEEE_J_IT, + year = "submitted for publication" +} + + + + + +book with editor and no author +From the June 2002 issue of "IEEE Transactions on Information Theory", +page 1725, reference #1. +@book{IEEEexample:bookwitheditor, + editor = "J. C. Candy and G. C. Temes", + title = "Oversampling Delta-Sigma Data Converters Theory, + Design and Simulation", + publisher = "{IEEE} Press.", + address = "New York", + year = "1992" +} + + +book with edition, author and editor +Note that the standard BibTeX styles do not support book entries with both +author and editor fields, but IEEEtran.bst does. +The standard BibTeX way of specifying the edition is to use capitalized +ordinal words such as "First", "Second", etc. Most .bst files can convert +up to about "Fifth" into the format needed. IEEEtran.bst can convert up +to "Tenth" to the "Arabic ordinal" form the IEEE uses (e.g., "10th"). For +editions over the tenth, it is best to use the "Arabic ordinal" form for +IEEE related work (e.g., "101st") +Note how "Jr." has to be entered. +From the May 2002 issue of "Journal of Lightwave Technology", page 856, +reference #17. +@book{IEEEexample:book, + author = "S. M. Metev and V. P. Veiko", + editor = "Osgood, Jr., R. M.", + title = "Laser Assisted Microtechnology", + edition = "Second", + publisher = "Springer-Verlag", + address = "Berlin, Germany", + year = "1998" +} + + +book with series and volume +From the January 2000 issue of "IEEE Transactions on Communications", +page 11, reference #31. +@book{IEEEexample:bookwithseriesvolume, + editor = "J. Breckling", + title = "The Analysis of Directional Time Series: Applications to + Wind Speed and Direction", + series = "Lecture Notes in Statistics", + publisher = "Springer", + address = "Berlin, Germany", + year = "1989", + volume = "61" +} + + +inbook with chapter number. The pages field could also have been given. +The chapter number could be changed to something else such as a section +number via the type field: type = "sec.". +From the May 2002 issue of "IEEE Transactions on Circuits and Systems---I: +Fundamental Applications and Theory", page 638, reference #22. +@inbook{IEEEexample:inbook, + author = "H. E. Rose", + title = "A Course in Number Theory", + publisher = "Oxford Univ. Press", + address = "New York, NY", + year = "1988", + chapter = "3" +} + + +inbook with pages and note. The language field is not set to Russian +because the title is presented here in its translated, English, form. +From the May 2002 issue of "IEEE Transactions on Magnetics", page 1533, +reference #5. +@inbook{IEEEexample:inbookpagesnote, + author = "B. K. Bul", + title = "Theory Principles and Design of Magnetic Circuits", + publisher = "Energia Press", + address = "Moscow", + year = "1964", + pages = "464", + note = "(in Russian)" +} + + + + + +incollection with author and editor +From the May 2002 issue of "Journal of Lightwave Technology", +page 807, reference #7. +@incollection{IEEEexample:incollection, + author = "W. V. Sorin", + editor = "D. Derickson", + title = "Optical Reflectometry for Component Characterization", + booktitle = "Fiber Optic Test and Measurement", + publisher = "Prentice-Hall", + address = "Englewood Cliffs, NJ", + year = "1998" +} + + +incollection with series +From the April 2000 issue of "IEEE Transactions on Communication", +page 609, reference #3. +@incollection{IEEEexample:incollectionwithseries, + author = "J. B. Anderson and K. Tepe", + title = "Properties of the Tailbiting {BCJR} Decoder", + booktitle = "Codes, Systems and Graphical Models", + series = "{IMA} Volumes in Mathematics and Its Applications", + publisher = "Springer-Verlag", + address = "New York", + year = "2000" + +} + + +incollection with author, editor, chapter and pages +From the January 2000 issue of "IEEE Transactions on Communications", +page 16, reference #9. +@incollection{IEEEexample:incollection_chpp, + author = "P. Hedelin and P. Knagenhjelm and M. Skoglund", + editor = "W. B. Kleijn and K. K. Paliwal", + title = "Theory for Transmission of Vector Quantization Data", + booktitle = "Speech Coding and Synthesis", + publisher = "Elsevier Science", + address = "Amsterdam, The Netherlands", + year = "1995", + chapter = "10", + pages = "347-396" +} + + +incollection with a large number of authors, some authors/journals will +use et al. for so many names. IEEEtran.bst can be configured to do this +if desired, or "R. M. A. Dawson and others" can be used instead. +Note that the IEEE may not include the publisher for incollection entries - +IEEEtran.bst will not issue a warning if the publisher is missing for +incollections - but other .bst files often will. +From the June 2002 issue of "IEEE Transactions on Electron Devices", +page 996, reference #12. +@incollection{IEEEexample:incollectionmanyauthors, + author = "R. M. A. Dawson and Z. Shen and D. A. Furst and + S. Connor and J. Hsu and M. G. Kane and R. G. Stewart and + A. Ipri and C. N. King and P. J. Green and R. T. Flegal + and S. Pearson and W. A. Barrow and E. Dickey and K. Ping + and C. W. Tang and S. Van. Slyke and + F. Chen and J. Shi and J. C. Sturm and M. H. Lu", + title = "Design of an Improved Pixel for a Polysilicon + Active-Matrix Organic {LED} Display", + booktitle = "{SID} Tech. Dig.", + volume = "29", + year = "1998", + pages = "11-14" +} + + + + + +A Motorola data book as a manual +It is somewhat unusual to include the data book part number. +in the title. It might be more correct to put this information +in the howpublished field instead. +From the December 2000 issue of "IEEE Transactions on Communications", +page 1986, reference #10. +@manual{IEEEexample:motmanual, + title = "{FLEXChip} Signal Processor ({MC68175/D})", + organization = "Motorola", + year = "1996" +} + + +same reference, but using IEEEtran's howpublished extension +@manual{IEEEexample:motmanualhowpub, + title = "{FLEXChip} Signal Processor", + howpublished = "{MC68175/D}", + organization = "Motorola", + year = "1996" +} + + + + +conference paper with an address and days. Some journals capitalize the +letters in "Globecom", this one did not. +From the May 2002 issue of "IEEE Transactions on Communications", +page 697, reference #12. +@inproceedings{IEEEexample:confwithadddays, + author = "M. S. Yee and L. Hanzo", + title = "Radial Basis Function Decision Feedback Equaliser + Assisted Burst-by-burst Adaptive Modulation", + booktitle = "Proc. {IEEE} Globecom '99", + address = "Rio de Janeiro, Brazil", + month = dec # " 5--9,", + year = "1999", + pages = "2183-2187" +} + + +conference paper with volume number. A conference proceedings with a vol +number is a little uncommon, note that the vol number is placed +before the address in the formatted bibliography entry +From the April 2002 issue of "IEEE/ACM Transactions on Networking", +page 181, reference #26. +@inproceedings{IEEEexample:confwithvolume, + author = "M. Yajnik and S. B. Moon and J. Kurose and D. Towsley", + title = "Measurement and Modeling of the Temporal Dependence in + Packet Loss", + booktitle = "Proc. {IEEE} {INFOCOM}'99", + volume = "1", + address = "New York, NY", + month = mar, + year = "1999", + pages = "345-352" +} + + +conference paper with a paper number, the type field can be used to +override the word "paper", e.g., type = "postdeadline paper". A type +can be given even without a paper field. +Also, IEEEtran.bst can be configured to ignore paper numbers and types. +From the May 2002 issue of "Journal of Lightwave Technology", +page 807, reference #4. +@inproceedings{IEEEexample:confwithpaper, + author = "M. Wegmuller and J. P. von der Weid and P. Oberson + and N. Gisin", + title = "High Resolution Fiber Distributed Measurements With + Coherent {OFDR}", + booktitle = "Proc. {ECOC}'00", + year = "2000", + paper = "11.3.4", + pages = "109" +} + + +conference paper with a postdeadline type paper, the paper field is +optional. +From the August 2000 issue of "IEEE Photonics Technology Letters", +page 1087, reference #12. +@inproceedings{IEEEexample:confwithpapertype, + author = "B. Mikkelsen and G. Raybon and R.-J. Essiambre and + K. Dreyer and Y. Su. and L. E. Nelson and J. E. Johnson + and G. Shtengel and A. Bond and D. G. Moodie and + A. D. Ellis", + title = "160 {Gbit/s} Single-channel Transmission Over 300 km + Nonzero-dispersion Fiber With Semiconductor Based + Transmitter and Demultiplexer", + booktitle = "Proc. {ECOC}'99", + year = "1999", + paper = "2-3", + type = "postdeadline paper", + pages = "28-29" +} + + +presented at a conference +intype overrides the default "in" and causes the booktitle not to be +emphasized (rendered in italics). +From the February 2002 issue of "IEEE/ACM Transactions on Networking", +page 163, reference #6. +@inproceedings{IEEEexample:presentedatconf, + author = "S. G. Finn and M. M{\'e}dard and R. A. Barry", + title = "A Novel Approach to Automatic Protection Switching + Using Trees", + intype = "presented at the", + booktitle = "Proc. Int. Conf. Commun.", + year = "1997" +} + + + + + +master's thesis, often the University name will be abbreviated and the +state or country will be included in the address. The type field can +used to override the default type "Master's thesis" +From the June 2002 issue of "IEEE Transactions on Microelectromechanical +Systems", page 186, reference #11. +@mastersthesis{IEEEexample:masters, + author = "Nin C. Loh", + title = "High-Resolution Micromachined Interferometric + Accelerometer", + school = "Massachusetts Institute of Technology", + address = "Cambridge", + year = "1992" +} + + +master's thesis with a type field +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 391, reference #12. +@mastersthesis{IEEEexample:masterstype, + author = "A. Karnik", + title = "Performance of {TCP} Congestion Control with Rate + Feedback: {TCP/ABR} and Rate Adaptive {TCP/IP}", + school = "Indian Institute of Science", + type = "M. Eng. thesis", + address = "Bangalore, India", + month = jan, + year = "1999" +} + + + + + +Ph.D. dissertation with a URL field, the university is abbreviated +From the October 2001 issue of "IEEE/ACM Transactions on Networking", +page 590, reference #11. +@phdthesis{IEEEexample:phdurl, + author = "Q. Li", + title = "Delay Characterization and Performance Control of + Wide-area Networks", + school = "Univ. of Delaware", + address = "Newark", + month = may, + year = "2000", + url = "http://www.ece.udel.edu/~qli" +} + + + + + +technical report +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 490, reference #15. +@techreport{IEEEexample:techrep, + author = "R. Jain and K. K. Ramakrishnan and D. M. Chiu", + title = "Congestion Avoidance in Computer Networks with a + Connectionless Network Layer", + institution = "Digital Equipment Corporation", + address = "MA", + number = "DEC-TR-506", + month = aug, + year = "1987" +} + + +technical report with type +for those times when "Tech. Rep." needs to be modified +From the February 2001 issue of "IEEE/ACM Transactions on Networking", +page 46, reference #8. +@techreport{IEEEexample:techreptype, + author = "J. Padhye and V. Firoiu and D. Towsley", + title = "A Stochastic Model of {TCP} {R}eno Congestion Avoidance + and Control", + institution = "Univ. of Massachusetts", + address = "Amherst, MA", + type = "CMPSCI Tech. Rep.", + number = "99-02", + year = "1999" +} + + +technical report with type +for those times when "Tech. Rep." needs to be modified +This reference did not have an address. +From the January 2000 issue of "IEEE Transactions on Communications", +page 117, reference #6. +@techreport{IEEEexample:techreptypeii, + author = "D. Middleton and A. D. Spaulding", + title = "A Tutorial Review of Elements of Weak Signal Detection + in Non-{G}aussian {EMI} Environments", + institution = "National Telecommunications and Information + Administration ({NTIA}), U.S. Dept. of Commerce", + type = "NTIA Report", + number = "86-194", + month = may, + year = "1986" +} + + +technical report, standards revision/change submission report +From the June 2004 issue of "IEEE Journal of Selected Areas in Communications", +page 928, reference #9. +Note that some journals do not abbreviate the task group: "TGe" => "Task Group E" +@techreport{IEEEexample:techrepstdsub, + author = "S. Kandala", + title = "Changes to {A}nnex {D}", + institution = "{IEEE} 802.11 {TGe}", + number = "02/680r0", + month = oct, + year = "2002" +} + + + + +an unpublished work +for unpublished types, the note field is required. The IEEE usually +just uses the word "unpublished" for the note. +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 391, reference #16. +@unpublished{IEEEexample:unpublished, + author = "T. J. Ott and N. Aggarwal", + title = "{TCP} over {ATM}: {ABR} or {UBR}", + note = "Unpublished" +} + + + + + +electronic with a howpublished information field +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 391, reference #7. +@electronic{IEEEexample:electronhowinfo, + author = "V. Jacobson", + title = "Modified {TCP} Congestion Avoidance Algorithm", + howpublished = "end2end-interest mailing list", + url = "ftp://ftp.isi.edu/end2end/end2end-interest-1990.mail", + month = apr, + year = "1990" +} + + +electronic with a howpublished information field +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 418, reference #31. +@electronic{IEEEexample:electronhowinfo2, + author = "V. Valloppillil and K. W. Ross", + title = "Cache Array Routing Protocol v1.1", + howpublished = "Internet draft", + url = "http://ds1.internic.net/internet-drafts/draft-vinod-carp-v1-03.txt", + year = "1998" +} + + +electronic with an organization and address +From the February 2002 issue of "IEEE/ACM Transactions on Networking", +page 114, reference #15. +@electronic{IEEEexample:electronorgadd, + author = "D. H. Lorenz and A. Orda", + title = "Optimal Partition of {QoS} Requirements on Unicast + Paths and Multicast Trees", + organization = "Dept. Elect. Eng., Technion", + address = "Haifa, Israel", + url = "ftp://ftp.technion.ac.il/pub/supported/ee/Network/lor.mopq98.ps", + month = jul, + year = "1998" +} + + + + + +U.S. patent +Use the type field to override the patent type. e.g., +type = "Patent Application" +The address is that of the assignee. Note that the IEEE does not +display the assignee, the address, and only displays one date. +(if year is not present, the filed dates are used.) However, this +information should be entered as other BibTeX styles may use it. +alternatively, nationality could be entered as "U.S." +From the April 2000 issue of "IEEE Transactions on Communications", +page 542, reference #6. +@patent{IEEEexample:uspat, + author = "Ronald E. Sorace and Victor S. Reinhardt and + Steven A. Vaughn", + assignee = "Hughes Aircraft Company", + address = "Los Angeles, CA", + title = "High-Speed Digital-to-{RF} Converter", + nationality = "United States", + number = "5668842", + dayfiled = "28", + monthfiled = feb, + yearfiled = "1995", + day = "16", + month = sep, + year = "1997" +} + + +Japanese Patent +From the April 2000 issue of "IEEE Transactions on Communications", +page 556, reference #6. +@patent{IEEEexample:jppat, + author = "U. Hideki", + title = "Quadrature Modulation Circuit", + nationality = "Japanese", + number = "152932/92", + day = "20", + month = may, + year = "1992" +} + + +French Patent request +The language field must be entered in lower case +as this is the option name Babel uses. The nationality field needs to be +capitalized. Because this is a patent request, the date filed fields are +used while the date fields are left empty/missing. In other countries, +the words "Patent Application", etc. are used instead. +From the April 2000 issue of "IEEE Transactions on Communications", +page 556, reference #9. +@patent{IEEEexample:frenchpatreq, + author = "F. Kowalik and M. Isard", + title = "Estimateur d'un D{\'e}faut de Fonctionnement + d'un Modulateur en Quadrature et {\'E}tage de Modulation + l'Utilisant", + language = "french", + nationality = "French", + type = "Patent Request", + number = "9500261", + dayfiled = "11", + monthfiled = jan, + yearfiled = "1995" +} + + + + + +a periodical +From the April 2001 issue of "IEEE/ACM Transactions on Networking", +page 160, reference #1. +sort key is needed for sorting styles +@periodical{IEEEexample:periodical, + title = IEEE_M_PCOM # ", Special Issue on Wireless {ATM}", + volume = "3", + month = aug, + year = "1996", + key = "IEEE" +} + + + + + +a standard +The IEEE does not use the address for standards, but it is good +to provide one for BibTeX styles that use it. +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 451, reference #2. +@standard{IEEEexample:standard, + title = "Wireless {LAN} Medium Access Control {(MAC)} and + Physical Layer {(PHY)} Specification", + organization = "IEEE", + address = "Piscataway, NJ", + number = "802.11", + year = "1997" +} + + +standard with type and revision, the type overrides the word standard +(or std.). Here a standard number is not available and a revision number +is used. +From the August 2000 issue of "IEEE Photonics Technology Letters", +page 1048, reference #13. +@standard{IEEEexample:standardproposed, + title = "Fiber Channel Physical Interface ({FC-PI})", + institution = "NCITS", + address = "Washington, DC", + type = "Working Draft Proposed Standard", + revision = "5.2", + year = "1999" +} + + +standard draft as a misc with author +From the May 2002 issue of "IEEE Journal of Selected Areas in +Communication", page 725, reference #16. +@misc{IEEEexample:draftasmisc, + author = "I. Widjaja and A. Elwalid", + title = "{MATE}: {MPLS} Adaptive Traffic Engineering", + howpublished = "IETF Draft", + year = "1999" +} + + + + + +misc for a techreport like reference +techreport is not perfectly suitable because this entry lacks +an institution field +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 490, reference #22. +@misc{IEEEexample:miscforum, + author = "L. Roberts", + title = "Enhanced Proportional Rate Control Algorithm {PRCA}", + howpublished = "{ATM} Forum Contribution 94-0735R1", + month = aug, + year = "1994" +} + + +misc for a white paper +From the August 2001 issue of "IEEE/ACM Transactions on Networking", +page 478, reference #4 - Note that the reference there (improperly?) +used the author field for "Cisco". +@misc{IEEEexample:whitepaper, + title = "Advanced {QoS} Services for the Intelligent Internet", + howpublished = "White Paper", + organization = "Cisco", + month = may, + year = "1997" +} + + +misc for a data sheet +From the November 2000 issue of "IEEE Photonics Technology Letters", +page 1551, reference #6. +@misc{IEEEexample:datasheet, + title = "{PDCA12-70} Data Sheet", + organization = "Opto Speed SA", + address = "Mezzovico, Switzerland" +} + + + + + +Other unusual references + +a private communication as a misc entry type +sometimes the designation "personal communication" is used instead +From the June 2002 issue of "IEEE Transactions on Information Theory", +page 1725, reference #16. +@misc{IEEEexample:private, + author = "S. Konyagin", + howpublished = "private communication", + year = "1998" +} + + +an internet request for comments (RFC) as a misc entry type +It would also be nice to add a URL to these types of things. +RFCs can also be handled as electronic references. +From the April 2002 issue of "IEEE/ACM Transactions on Networking", +page 181, reference #14. +@misc{IEEEexample:miscrfc, + author = "K. K. Ramakrishnan and S. Floyd", + title = "A Proposal to Add Explicit Congestion + Notification ({ECN}) to {IP}", + howpublished = "RFC 2481", + month = jan, + year = "1999" +} + + +a software package as a manual +From the June 2002 issue of "IEEE/ASME Journal of Microelectromechanical +Systems", page 205, reference #20. +Sometimes they put the version/release information in the title. +@manual{IEEEexample:softmanual, + title = "SaberDesigner Reference Manual", + organization = "Analogy, Inc.", + address = "Beaverton, OR", + year = "1998", + note = "Release 4.3" +} + + +a software package as an electronic reference +From the February 2003 issue of "IEEE/ACM Transactions on Networking", +page 46, reference #24. If there is no author or organization, a sorting +key is required for sorting styles. It might be a good idea to include +month and year fields as well. +@electronic{IEEEexample:softonline, + title = "Ucb/lbnl/vint Network Simulator---ns (Version 2)", + url = "http://www-mash.cs.berkeley.edu/ns/", + key = "ns" +} + + +misc for a German regulation +In German, the first letters of nouns are capitalized, so we do so here. +From the June 2002 issue of "IEEE Journal in Selected Areas in +Communication", page 892, reference #9. +@misc{IEEEexample:miscgermanreg, + title = "{M}essung von {S}t{\"o}rfeldern an {A}nlagen + und {L}eitungen der {T}elekommunikation im + {F}requenzbereich 9 {kHz} bis 3 {GHz}", + language = "german", + howpublished = "{M}e{\ss}vorschrift {R}eg {TP} {MV} 05", + organization = "Regulierungsbeh{\"o}rde f{\"u}r {T}elekommunikation und + {P}ost ({R}eg {TP})" +} + + + +Ways to handle things like CCSDS's Blue Books +journal article with a URL. However, this is not a very good approach +because the Blue Books are not really journals and the author field has +to be abused. +From the June 2002 issue of "IEEE Transactions on Information Theory", +page 1461, reference #7. +@article{IEEEexample:bluebookarticle, + author = "{Consulative Committee for Space Data Systems (CCSDS)}", + title = "Telemetry Channel Coding", + journal = "Blue Book", + number = "4", + year = "1999", + url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf" +} + + +CCSDS's Blue Book handled as a book +However, it is not a good idea to have to use the author field for +an organization (done here because the book entry type requires an +author field). +@book{IEEEexample:bluebookbook, + author = "{Consulative Committee for Space Data Systems (CCSDS)}", + title = "Telemetry Channel Coding", + series = "Blue Book", + number = "4", + publisher = "{CCSDS}", + address = "Newport Beach, {CA}", + year = "1999", + url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf" +} + + +CCSDS's Blue Book handled as a manual +This is a much better approach, but uses the howpublished field. +@manual{IEEEexample:bluebookmanual, + title = "Telemetry Channel Coding", + howpublished = "ser. Blue Book, No. 4", + organization = "Consulative Committee for Space Data Systems (CCSDS)", + address = "Newport Beach, CA", + year = "1999", + url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf" +} + + + +CCSDS's Blue Book handled as a standard +Probably the best approach for this particular case because the work +is standard related. Note that the IEEE does not display the address for +standards. +@standard{IEEEexample:bluebookstandard, + title = "Telemetry Channel Coding", + howpublished = "ser. Blue Book, No. 4", + organization = "Consulative Committee for Space Data Systems (CCSDS)", + address = "Newport Beach, CA", + type = "Recommendation for Space Data System Standard", + number = "101.0-B-4", + month = May, + year = "1999", + url = "http://www.ccsds.org/documents/pdf/CCSDS-101.0-B-4.pdf" +} + + + + + + + + +An example of a IEEEtran control entry which can change some IEEEtran.bst +settings. An entry like this must be cited via \bstctlcite{} command +before the first real \cite{}. The same entry key cannot be called twice +(just like multiple \cite{} of the same entry key place only one entry +in the bibliography.) +The available control fields are: + +CTLuse_article_number +"no" turns off the display of the number for articles. +"yes" enables + +CTLuse_paper +"no" turns off the display of the paper and type fields in inproceedings. +"yes" enables + +CTLuse_url +"no" turns off the display of the url field. +"yes" enables + +CTLuse_forced_etal +"no" turns off the forced use of "et al." +"yes" enables + +CTLmax_names_forced_etal +The maximum number of names that can be present beyond which an "et al." +usage is forced. Be sure that CTLnames_show_etal (below) +is not greater than this value! + +CTLnames_show_etal +The number of names that will be shown with a forced "et al.". +Must be less than or equal to CTLmax_names_forced_etal + +CTLuse_alt_spacing +"no" turns off the alternate interword spacing for entries with URLs. +"yes" enables +Will not have any effect (is disabled) if the display of urls is disabled. + +CTLalt_stretch_factor +If alternate interword spacing for entries with URLs is enabled, this is +the interword spacing stretch factor that will be used. For example, the +default "4" here means that the interword spacing in entries with URLs can +stretch to four times normal. Does not have to be an integer. + +CTLdash_repeated_names +"no" turns off the "dashification" of repeated (i.e., identical to those +of the previous entry) names. The IEEE normally does this. +"yes" enables + +CTLname_format_string +The name format control string as explained in the BibTeX style hacking +guide. +IEEE style "{f.~}{vv~}{ll}{, jj}" is the default, + +CTLname_latex_cmd +A LaTeX command that each name will be fed to (e.g., "\textsc"). +Leave empty if no special font is desired for the names. +The default is empty. + +CTLname_url_prefix +The prefix text used before URLs (if they are enabled). +The default is "[Online]. Available:" A space will be inserted after this +text. If this space is not wanted, just use \relax at the end of the +prefix text. + + +Those fields that are not to be changed can be left out. +@IEEEtranBSTCTL{IEEEexample:BSTcontrol, + CTLuse_article_number = "yes", + CTLuse_paper = "yes", + CTLuse_url = "yes", + CTLuse_forced_etal = "no", + CTLmax_names_forced_etal = "10", + CTLnames_show_etal = "1", + CTLuse_alt_spacing = "yes", + CTLalt_stretch_factor = "4", + CTLdash_repeated_names = "yes", + CTLname_format_string = "{f.~}{vv~}{ll}{, jj}", + CTLname_latex_cmd = "", + CTLname_url_prefix = "[Online]. Available:" +} + + diff --git a/IEEEtran/bibtex/IEEEfull.bib b/IEEEtran/bibtex/IEEEfull.bib new file mode 100644 index 0000000..ce6cc10 --- /dev/null +++ b/IEEEtran/bibtex/IEEEfull.bib @@ -0,0 +1,486 @@ + +IEEEfull.bib +V1.14 (2015/08/28) +Copyright (c) 2002-2015 by Michael Shell +See: http://www.michaelshell.org/ +for current contact information. + +BibTeX bibliography string definitions of the FULL titles of +IEEE journals and magazines and online publications. + +This file is designed for bibliography styles that require +full-length titles and is not for use in bibliographies that +abbreviate titles. + +Support sites: +http://www.michaelshell.org/tex/ieeetran/ +http://www.ctan.org/pkg/ieeetran +and/or +http://www.ieee.org/ + +Special thanks to Laura Hyslop, Ken Rawson, Kevin Lisankie and +Mona Mittra of the IEEE for their help in obtaining the information needed +to compile this file. Also, Volker Kuhlmann, Moritz Borgmann, +Yannick Berker, Nicolás Barabino, Chuanren Wu and Santiago Cogollos Borras +kindly provided some corrections and additions. + + +************************************************************************* +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** +************************************************************************* + + +USAGE: + +\bibliographystyle{mybstfile} +\bibliography{IEEEfull,mybibfile} + +where the IEEE titles in the .bib database entries use the strings +defined here. e.g., + + + journal = IEEE_J_AC, + + +to yield "{IEEE} Transactions on Automatic Control" + + +WARNING: The IEEE uses abbreviated journal titles in their bibliographies! +Because this file provides the full titles, you should NOT use this file +for work that is to be submitted to the IEEE. + +For IEEE work, you should use the abbreviated titles provided in the +companion file, IEEEabrv.bib. + + +** NOTES ** + + 1. Journals have been grouped according to subject in order to make it + easier to locate and extract the definitions for related journals - + as most works use references that are confined to a single topic. + Magazines are listed in straight alphabetical order. + + 2. String names are closely based on IEEE's own internal acronyms. + + 3. Older, out-of-print IEEE titles are included (but not including titles + dating prior to the IEEE's formation from the IRE and AIEE in 1963). + + + + + + +IEEE Journals + + +aerospace and military +@STRING{IEEE_J_ANNE = "{IEEE} Transactions on Aeronautical and Navigational Electronics"} +@STRING{IEEE_J_AES = "{IEEE} Transactions on Aerospace and Electronic Systems"} +@STRING{IEEE_J_ANE = "{IEEE} Transactions on Aerospace and Navigational Electronics"} +@STRING{IEEE_J_AS = "{IEEE} Transactions on Aerospace"} +@STRING{IEEE_J_AIRE = "{IEEE} Transactions on Airborne Electronics"} +@STRING{IEEE_J_MIL = "{IEEE} Transactions on Military Electronics"} + + + +autos, transportation and vehicles (non-aerospace) +@STRING{IEEE_J_ITS = "{IEEE} Transactions on Intelligent Transportation Systems"} +@STRING{IEEE_J_IV = "{IEEE} Transactions on Intelligent Vehicles"} +@STRING{IEEE_J_TTE = "{IEEE} Transactions on Transportation Electrification"} +@STRING{IEEE_J_VC = "{IEEE} Transactions on Vehicular Communications"} +@STRING{IEEE_J_VT = "{IEEE} Transactions on Vehicular Technology"} + + + +circuits, signals, systems, audio and controls +@STRING{IEEE_J_STSP = "{IEEE} Journal of Selected Topics in Signal Processing"} +@STRING{IEEE_J_SPL = "{IEEE} Signal Processing Letters"} +@STRING{IEEE_J_SYST = "{IEEE} Systems Journal"} +@STRING{IEEE_J_ASSP = "{IEEE} Transactions on Acoustics, Speech, and Signal Processing"} +@STRING{IEEE_J_AU = "{IEEE} Transactions on Audio"} +@STRING{IEEE_J_AUEA = "{IEEE} Transactions on Audio and Electroacoustics"} +in 2014 ASL became ASLP +@STRING{IEEE_J_ASLP = "{IEEE/ACM} Transactions on Audio, Speech, and Language Processing"} +@STRING{IEEE_J_ASL = "{IEEE} Transactions on Audio, Speech, and Language Processing"} +@STRING{IEEE_J_AC = "{IEEE} Transactions on Automatic Control"} +@STRING{IEEE_J_CAS = "{IEEE} Transactions on Circuits and Systems"} +@STRING{IEEE_J_CASVT = "{IEEE} Transactions on Circuits and Systems for Video Technology"} +@STRING{IEEE_J_CASI = "{IEEE} Transactions on Circuits and Systems---Part {I}: Fundamental Theory and Applications"} +@STRING{IEEE_J_CASII = "{IEEE} Transactions on Circuits and Systems---Part {II}: Analog and Digital Signal Processing"} +in 2004 CASI and CASII renamed part title to CASI_RP and CASII_EB, respectively +@STRING{IEEE_J_CASI_RP = "{IEEE} Transactions on Circuits and Systems---Part {I}: Regular Papers"} +@STRING{IEEE_J_CASII_EB = "{IEEE} Transactions on Circuits and Systems---Part {II}: Express Briefs"} +@STRING{IEEE_J_CT = "{IEEE} Transactions on Circuit Theory"} +@STRING{IEEE_J_CST = "{IEEE} Transactions on Control Systems Technology"} +@STRING{IEEE_J_ETCAS = "{IEEE} Transactions on Emerging and Selected Topics in Circuits and Systems"} +@STRING{IEEE_J_SP = "{IEEE} Transactions on Signal Processing"} +@STRING{IEEE_J_SU = "{IEEE} Transactions on Sonics and Ultrasonics"} +@STRING{IEEE_J_SAP = "{IEEE} Transactions on Speech and Audio Processing"} +@STRING{IEEE_J_UE = "{IEEE} Transactions on Ultrasonics Engineering"} +@STRING{IEEE_J_UFFC = "{IEEE} Transactions on Ultrasonics, Ferroelectrics, and Frequency Control"} + + + +communications +@STRING{IEEE_J_COML = "{IEEE} Communications Letters"} +@STRING{IEEE_J_JSAC = "{IEEE} Journal on Selected Areas in Communications"} +@STRING{IEEE_J_COM = "{IEEE} Transactions on Communications"} +@STRING{IEEE_J_COMT = "{IEEE} Transactions on Communication Technology"} +@STRING{IEEE_J_WCOM = "{IEEE} Transactions on Wireless Communications"} +@STRING{IEEE_J_WCOML = "{IEEE} Wireless Communications Letters"} + + + +components, packaging and manufacturing +@STRING{IEEE_J_ADVP = "{IEEE} Transactions on Advanced Packaging"} +@STRING{IEEE_J_CHMT = "{IEEE} Transactions on Components, Hybrids and Manufacturing Technology"} +in 2011 CAPT became CPMT +@STRING{IEEE_J_CPMT = "{IEEE} Transactions on Components, Packaging and Manufacturing Technology"} +@STRING{IEEE_J_CPMTA = "{IEEE} Transactions on Components, Packaging and Manufacturing Technology---Part {A}"} +@STRING{IEEE_J_CPMTB = "{IEEE} Transactions on Components, Packaging and Manufacturing Technology---Part {B}: Advanced Packaging"} +@STRING{IEEE_J_CPMTC = "{IEEE} Transactions on Components, Packaging and Manufacturing Technology---Part {C}: Manufacturing"} +@STRING{IEEE_J_CAPTS = "{IEEE} Transactions on Components and Packaging Technologies"} +@STRING{IEEE_J_CAPT = "{IEEE} Transactions on Components and Packaging Technology"} +@STRING{IEEE_J_CPART = "{IEEE} Transactions on Component Parts"} +@STRING{IEEE_J_EPM = "{IEEE} Transactions on Electronics Packaging Manufacturing"} +@STRING{IEEE_J_MFT = "{IEEE} Transactions on Manufacturing Technology"} +@STRING{IEEE_J_PHP = "{IEEE} Transactions on Parts, Hybrids and Packaging"} +@STRING{IEEE_J_PMP = "{IEEE} Transactions on Parts, Materials and Packaging"} + + + +CAD +@STRING{IEEE_J_TCAD = "{IEEE} Journal on Technology in Computer Aided Design"} +@STRING{IEEE_J_CAD = "{IEEE} Transactions on Computer-Aided Design of Integrated Circuits and Systems"} + + + +coding, data, information, knowledge +@STRING{IEEE_J_BD = "{IEEE} Transactions on Big Data"} +@STRING{IEEE_J_IFS = "{IEEE} Transactions on Information Forensics and Security"} +@STRING{IEEE_J_IT = "{IEEE} Transactions on Information Theory"} +@STRING{IEEE_J_KDE = "{IEEE} Transactions on Knowledge and Data Engineering"} + + + +computers, computation, networking and software +@STRING{IEEE_J_CAL = "{IEEE} Computer Architecture Letters"} +@STRING{IEEE_J_ES = "{IEEE} Embedded Systems Letters"} +@STRING{IEEE_J_IOT = "{IEEE} Internet of Things Journal"} +@STRING{IEEE_J_XCDC = "{IEEE} Journal on Exploratory Solid-State Computational Devices and Circuits"} +@STRING{IEEE_J_MMCT = "{IEEE} Journal on Multiscale and Multiphysics Computational Techniques"} +@STRING{IEEE_J_SUSC = "{IEEE} Sustainable Computing"} +@STRING{IEEE_J_CC = "{IEEE} Transactions on Cloud Computing"} +@STRING{IEEE_J_CSS = "{IEEE} Transactions on Computational Social Systems"} +@STRING{IEEE_J_C = "{IEEE} Transactions on Computers"} +@STRING{IEEE_J_CNS = "{IEEE} Transactions on Control of Network Systems"} +@STRING{IEEE_J_DSC = "{IEEE} Transactions on Dependable and Secure Computing"} +@STRING{IEEE_J_ECOMP = "{IEEE} Transactions on Electronic Computers"} +@STRING{IEEE_J_ETC = "{IEEE} Transactions on Emerging Topics in Computing"} +@STRING{IEEE_J_EVC = "{IEEE} Transactions on Evolutionary Computation"} +@STRING{IEEE_J_FUZZ = "{IEEE} Transactions on Fuzzy Systems"} +@STRING{IEEE_J_MC = "{IEEE} Transactions on Mobile Computing"} +@STRING{IEEE_J_MSCS = "{IEEE} Transactions on Multi-Scale Computing Systems"} +@STRING{IEEE_J_NET = "{IEEE/ACM} Transactions on Networking"} +@STRING{IEEE_J_NSE = "{IEEE} Transactions on Network Science and Engineering"} +@STRING{IEEE_J_NSM = "{IEEE} Transactions on Network and Service Management"} +@STRING{IEEE_J_NN = "{IEEE} Transactions on Neural Networks"} +in 2012 NN became NNLS +@STRING{IEEE_J_NNLS = "{IEEE} Transactions on Neural Networks and Learning Systems"} +@STRING{IEEE_J_PDS = "{IEEE} Transactions on Parallel and Distributed Systems"} +@STRING{IEEE_J_SC = "{IEEE} Transactions on Services Computing"} +@STRING{IEEE_J_SIPN = "{IEEE} Transactions on Signal and Information Processing over Networks"} +@STRING{IEEE_J_SE = "{IEEE} Transactions on Software Engineering"} + + + +computer graphics, imaging, and multimedia +@STRING{IEEE_J_JDT = "{IEEE/OSA} Journal of Display Technology"} +@STRING{IEEE_J_IP = "{IEEE} Transactions on Image Processing"} +@STRING{IEEE_J_MM = "{IEEE} Transactions on Multimedia"} +@STRING{IEEE_J_VCG = "{IEEE} Transactions on Visualization and Computer Graphics"} + + + +cybernetics, ergonomics, robots, man-machine, artificial intelligence and automation +@STRING{IEEE_J_JAS = "{IEEE/CAA} Journal of Automatica Sinica"} +@STRING{IEEE_J_JRA = "{IEEE} Journal of Robotics and Automation"} +@STRING{IEEE_J_AFFC = "{IEEE} Transactions on Affective Computing"} +@STRING{IEEE_J_ASE = "{IEEE} Transactions on Automation Science and Engineering"} +@STRING{IEEE_J_AMD = "{IEEE} Transactions on Autonomous Mental Development"} +@STRING{IEEE_J_CCN = "{IEEE} Transactions on Cognitive Communications and Networking"} +in 2015 AMD became CDS +@STRING{IEEE_J_CDS = "{IEEE} Transactions on Cognitive and Developmental Systems"} +@STRING{IEEE_J_CIAIG = "{IEEE} Transactions on Computational Intelligence and {AI} in Games"} +in 2013 SMCB became CYB +@STRING{IEEE_J_CYB = "{IEEE} Transactions on Cybernetics"} +@STRING{IEEE_J_H = "{IEEE} Transactions on Haptics"} +@STRING{IEEE_J_HFE = "{IEEE} Transactions on Human Factors in Electronics"} +in 2013 SMCC became HMS +@STRING{IEEE_J_HMS = "{IEEE} Transactions on Human-Machine Systems"} +@STRING{IEEE_J_MMS = "{IEEE} Transactions on Man-Machine Systems"} +@STRING{IEEE_J_PAMI = "{IEEE} Transactions on Pattern Analysis and Machine Intelligence"} +in 1989 JRA became RA +in August 2004, RA split into ASE and RO +@STRING{IEEE_J_RA = "{IEEE} Transactions on Robotics and Automation"} +@STRING{IEEE_J_RAL = "{IEEE} Robotics and Automation Letters"} +@STRING{IEEE_J_RO = "{IEEE} Transactions on Robotics"} +@STRING{IEEE_J_SMC = "{IEEE} Transactions on Systems, Man, and Cybernetics"} +@STRING{IEEE_J_SMCA = "{IEEE} Transactions on Systems, Man, and Cybernetics---Part {A}: Systems and Humans"} +@STRING{IEEE_J_SMCB = "{IEEE} Transactions on Systems, Man, and Cybernetics---Part {B}: Cybernetics"} +@STRING{IEEE_J_SMCC = "{IEEE} Transactions on Systems, Man, and Cybernetics---Part {C}: Applications and Reviews"} +in 2012 SMCA became SMCS +@STRING{IEEE_J_SMCS = "{IEEE} Transactions on Systems, Man, and Cybernetics: Systems"} +@STRING{IEEE_J_SSC = "{IEEE} Transactions on Systems Science and Cybernetics"} + + + +earth, wind, fire and water +@STRING{IEEE_J_GRSL = "{IEEE} Geoscience and Remote Sensing Letters"} +@STRING{IEEE_J_GE = "{IEEE} Transactions on Geoscience Electronics"} +@STRING{IEEE_J_GRS = "{IEEE} Transactions on Geoscience and Remote Sensing"} +@STRING{IEEE_J_OE = "{IEEE} Journal of Oceanic Engineering"} +@STRING{IEEE_J_STARS = "{IEEE} Journal of Selected Topics in Applied Earth Observations and Remote Sensing"} + + + +education, engineering, history, IEEE, professional +@STRING{IEEE_J_CJECE = "Canadian Journal of Electrical and Computer Engineering"} +@STRING{IEEE_J_PROC = "Proceedings of the {IEEE}"} +@STRING{IEEE_J_RITA = "{IEEE} Revista Iberoamericana de Technolog{\'{i}}as del Aprendizaje"} +@STRING{IEEE_J_EDU = "{IEEE} Transactions on Education"} +@STRING{IEEE_J_EM = "{IEEE} Transactions on Engineering Management"} +@STRING{IEEE_J_EWS = "{IEEE} Transactions on Engineering Writing and Speech"} +@STRING{IEEE_J_LT = "{IEEE} Transactions on Learning Technologies"} +@STRING{IEEE_J_PC = "{IEEE} Transactions on Professional Communication"} + + + +electromagnetics, antennas, EMI, magnetics and microwave +@STRING{IEEE_J_AWPL = "{IEEE} Antennas and Wireless Propagation Letters"} +@STRING{IEEE_J_MAGL = "{IEEE} Magnetics Letters"} +@STRING{IEEE_J_MGWL = "{IEEE} Microwave and Guided Wave Letters"} +@STRING{IEEE_J_MWCL = "{IEEE} Microwave and Wireless Components Letters"} +@STRING{IEEE_J_RFIC = "{IEEE} {RFIC} Journal"} +@STRING{IEEE_J_RFID = "{IEEE} {RFID} Journal"} +@STRING{IEEE_J_AP = "{IEEE} Transactions on Antennas and Propagation"} +@STRING{IEEE_J_EMC = "{IEEE} Transactions on Electromagnetic Compatibility"} +@STRING{IEEE_J_MAG = "{IEEE} Transactions on Magnetics"} +@STRING{IEEE_J_MTT = "{IEEE} Transactions on Microwave Theory and Techniques"} +@STRING{IEEE_J_RFI = "{IEEE} Transactions on Radio Frequency Interference"} +@STRING{IEEE_J_TTHZ = "{IEEE} Transactions on Terahertz Science and Technology"} +@STRING{IEEE_J_TJMJ = "{IEEE} Translation Journal on Magnetics in Japan"} + + + +energy, power and conversion +@STRING{IEEE_J_PHOT = "{IEEE} Journal of Photovoltaics"} +@STRING{IEEE_J_PEL = "{IEEE} Power Electronics Letters"} +@STRING{IEEE_J_PETS = "{IEEE} Power and Energy Technology Systems Journal"} +@STRING{IEEE_J_ESTPE = "{IEEE} Transactions on Emerging and Selected Topics in Power Electronics"} +@STRING{IEEE_J_EC = "{IEEE} Transactions on Energy Conversion"} +@STRING{IEEE_J_PWRAS = "{IEEE} Transactions on Power Apparatus and Systems"} +@STRING{IEEE_J_PWRD = "{IEEE} Transactions on Power Delivery"} +@STRING{IEEE_J_PWRE = "{IEEE} Transactions on Power Electronics"} +@STRING{IEEE_J_PWRS = "{IEEE} Transactions on Power Systems"} +@STRING{IEEE_J_SG = "{IEEE} Transactions on Smart Grid"} +@STRING{IEEE_J_STE = "{IEEE} Transactions on Sustainable Energy"} + + + +industrial, commercial and consumer +@STRING{IEEE_J_PSE = "{IEEE} Journal of Product Safety Engineering"} +@STRING{IEEE_J_APPIND = "{IEEE} Transactions on Applications and Industry"} +@STRING{IEEE_J_BC = "{IEEE} Transactions on Broadcasting"} +@STRING{IEEE_J_BCTV = "{IEEE} Transactions on Broadcast and Television Receivers"} +@STRING{IEEE_J_CE = "{IEEE} Transactions on Consumer Electronics"} +@STRING{IEEE_J_IE = "{IEEE} Transactions on Industrial Electronics"} +@STRING{IEEE_J_IECI = "{IEEE} Transactions on Industrial Electronics and Control Instrumentation"} +@STRING{IEEE_J_IA = "{IEEE} Transactions on Industry Applications"} +@STRING{IEEE_J_IGA = "{IEEE} Transactions on Industry and General Applications"} +@STRING{IEEE_J_IINF = "{IEEE} Transactions on Industrial Informatics"} + + + +instrumentation and measurement +@STRING{IEEE_J_IM = "{IEEE} Transactions on Instrumentation and Measurement"} + + + +insulation and materials +@STRING{IEEE_J_JEM = "{IEEE/TMS} Journal of Electronic Materials"} +@STRING{IEEE_J_DEI = "{IEEE} Transactions on Dielectrics and Electrical Insulation"} +@STRING{IEEE_J_EI = "{IEEE} Transactions on Electrical Insulation"} + + + +mechanical +@STRING{IEEE_J_MEMS = "{IEEE/ASME} Journal of Microelectromechanical Systems"} +in 2014 MEMS became MEMSI +@STRING{IEEE_J_MEMSI = "{IEEE} Journal of Microelectromechanical Systems"} +@STRING{IEEE_J_MECH = "{IEEE/ASME} Transactions on Mechatronics"} + + + +medical and biological +@STRING{IEEE_J_BHI = "{IEEE} Journal of Biomedical and Health Informatics"} +@STRING{IEEE_J_TEHM = "{IEEE} Journal of Translational Engineering in Health and Medicine"} +@STRING{IEEE_J_LS = "{IEEE} Life Sciences Letters"} +@STRING{IEEE_J_RBME = "{IEEE} Reviews in Biomedical Engineering"} +@STRING{IEEE_J_BCAS = "{IEEE} Transactions on Biomedical Circuits and Systems"} +@STRING{IEEE_J_BMELC = "{IEEE} Transactions on Bio-Medical Electronics"} +B-ME later dropped the hyphen and became the BME +@STRING{IEEE_J_BME = "{IEEE} Transactions on Biomedical Engineering"} +@STRING{IEEE_J_B-ME = "{IEEE} Transactions on Bio-Medical Engineering"} +@STRING{IEEE_J_CBB = "{IEEE/ACM} Transactions on Computational Biology and Bioinformatics"} +@STRING{IEEE_J_ITBM = "{IEEE} Transactions on Information Technology in Biomedicine"} +@STRING{IEEE_J_ME = "{IEEE} Transactions on Medical Electronics"} +@STRING{IEEE_J_MI = "{IEEE} Transactions on Medical Imaging"} +@STRING{IEEE_J_MBSC = "{IEEE} Transactions on Molecular, Biological and Multi-Scale Communications"} +@STRING{IEEE_J_NB = "{IEEE} Transactions on NanoBioscience"} +@STRING{IEEE_J_NSRE = "{IEEE} Transactions on Neural Systems and Rehabilitation Engineering"} +@STRING{IEEE_J_RE = "{IEEE} Transactions on Rehabilitation Engineering"} + + + +optics, lightwave and photonics +@STRING{IEEE_J_JLT = "{IEEE/OSA} Journal of Lightwave Technology"} +@STRING{IEEE_J_OCN = "{IEEE} Journal of Optical Communications and Networking"} +@STRING{IEEE_J_PJ = "{IEEE} Photonics Journal"} +@STRING{IEEE_J_PTL = "{IEEE} Photonics Technology Letters"} + + + +physics, electrons, nanotechnology, nuclear and quantum electronics +@STRING{IEEE_J_EDL = "{IEEE} Electron Device Letters"} +@STRING{IEEE_J_EDS = "{IEEE} Journal of Electron Devices Society"} +@STRING{IEEE_J_JQE = "{IEEE} Journal of Quantum Electronics"} +@STRING{IEEE_J_JSTQE = "{IEEE} Journal of Selected Topics in Quantum Electronics"} +@STRING{IEEE_J_ENANO = "{IEEE} Nanotechnology Express"} +@STRING{IEEE_J_ED = "{IEEE} Transactions on Electron Devices"} +@STRING{IEEE_J_NANO = "{IEEE} Transactions on Nanotechnology"} +@STRING{IEEE_J_NS = "{IEEE} Transactions on Nuclear Science"} +@STRING{IEEE_J_PS = "{IEEE} Transactions on Plasma Science"} + + + +reliability +@STRING{IEEE_J_DMR = "{IEEE} Transactions on Device and Materials Reliability"} +@STRING{IEEE_J_R = "{IEEE} Transactions on Reliability"} + + + +semiconductors, superconductors, electrochemical and solid state +@STRING{IEEE_J_ESSL = "{IEEE/ECS} Electrochemical and Solid-State Letters"} +@STRING{IEEE_J_JSSC = "{IEEE} Journal of Solid-State Circuits"} +@STRING{IEEE_J_ASC = "{IEEE} Transactions on Applied Superconductivity"} +@STRING{IEEE_J_SM = "{IEEE} Transactions on Semiconductor Manufacturing"} + + + +sensors +@STRING{IEEE_J_SENSOR = "{IEEE} Sensors Journal"} + + + +VLSI +@STRING{IEEE_J_VLSI = "{IEEE} Transactions on Very Large Scale Integration ({VLSI}) Systems"} + + + + + + +IEEE Magazines and Online Publications + + +@STRING{IEEE_O_ACC = "{IEEE} Access"} +@STRING{IEEE_M_AES = "{IEEE} Aerospace and Electronics Systems Magazine"} +@STRING{IEEE_M_HIST = "{IEEE} Annals of the History of Computing"} +@STRING{IEEE_M_AP = "{IEEE} Antennas and Propagation Magazine"} +@STRING{IEEE_M_ASSP = "{IEEE} {ASSP} Magazine"} +@STRING{IEEE_M_CHINAC = "China Communications Magazine"} +@STRING{IEEE_M_CD = "{IEEE} Circuits and Devices Magazine"} +@STRING{IEEE_M_CAS = "{IEEE} Circuits and Systems Magazine"} +@STRING{IEEE_M_COM = "{IEEE} Communications Magazine"} +@STRING{IEEE_M_COMSOC = "{IEEE} Communications Society Magazine"} +@STRING{IEEE_O_CSTO = "{IEEE} Communications Surveys and Tutorials"} +@STRING{IEEE_M_CIM = "{IEEE} Computational Intelligence Magazine"} +CSEM changed to CSE in 1999 +@STRING{IEEE_M_CSE = "{IEEE} Computing in Science and Engineering"} +@STRING{IEEE_M_CSEM = "{IEEE} Computational Science and Engineering Magazine"} +@STRING{IEEE_M_C = "Computer"} +@STRING{IEEE_M_CAP = "{IEEE} Computer Applications in Power"} +@STRING{IEEE_M_CGA = "{IEEE} Computer Graphics and Applications"} +@STRING{IEEE_M_CONC = "{IEEE} Concurrency"} +@STRING{IEEE_M_CS = "{IEEE} Control Systems Magazine"} +in 2012 DTC became DT +@STRING{IEEE_M_DT = "{IEEE} Design \&\ Test"} +@STRING{IEEE_M_DTC = "{IEEE} Design and Test of Computers"} +@STRING{IEEE_O_DSO = "{IEEE} Distributed Systems Online"} +@STRING{IEEE_M_EI = "{IEEE} Electrical Insulation Magazine"} +@STRING{IEEE_M_ETF = "{IEEE} Electrification Magazine"} +@STRING{IEEE_M_EMC = "{IEEE} Electromagnetic Compatibility Magazine"} +@STRING{IEEE_M_ETR = "{IEEE} ElectroTechnology Review"} +@STRING{IEEE_M_EMR = "{IEEE} Engineering Management Review"} +@STRING{IEEE_M_EMB = "{IEEE} Engineering in Medicine and Biology Magazine"} +@STRING{IEEE_M_EXP = "{IEEE} Expert"} +@STRING{IEEE_M_GRS = "{IEEE} Geoscience and Remote Sensing Magazine"} +@STRING{IEEE_M_IA = "{IEEE} Industry Applications Magazine"} +@STRING{IEEE_M_IE = "{IEEE} Industrial Electronics Magazine"} +@STRING{IEEE_M_IM = "{IEEE} Instrumentation and Measurement Magazine"} +@STRING{IEEE_M_IS = "{IEEE} Intelligent Systems"} +@STRING{IEEE_M_ITS = "{IEEE} Intelligent Transportation Systems Magazine"} +@STRING{IEEE_M_IC = "{IEEE} Internet Computing"} +@STRING{IEEE_M_ITP = "{IEEE} {IT} Professional"} +@STRING{IEEE_M_MICRO = "{IEEE} Micro"} +@STRING{IEEE_M_MW = "{IEEE} Microwave Magazine"} +@STRING{IEEE_M_MM = "{IEEE} Multimedia"} +@STRING{IEEE_M_NANO = "{IEEE} Nanotechnology Magazine"} +@STRING{IEEE_M_NET = "{IEEE} Network"} +@STRING{IEEE_M_PCOM = "{IEEE} Personal Communications Magazine"} +@STRING{IEEE_M_PVC = "{IEEE} Pervasive Computing"} +@STRING{IEEE_M_POT = "{IEEE} Potentials"} +@STRING{IEEE_M_PEL = "{IEEE} Power Electronics Magazine"} +CAP and PER merged to form PE in 2003 +@STRING{IEEE_M_PE = "{IEEE} Power and Energy Magazine"} +@STRING{IEEE_M_PER = "{IEEE} Power Engineering Review"} +@STRING{IEEE_M_PULSE = "{IEEE} Pulse"} +@STRING{IEEE_M_RA = "{IEEE} Robotics and Automation Magazine"} +@STRING{IEEE_M_SAP = "{IEEE} Security and Privacy"} +@STRING{IEEE_M_SP = "{IEEE} Signal Processing Magazine"} +@STRING{IEEE_M_S = "{IEEE} Software"} +@STRING{IEEE_M_SSC = "{IEEE} Solid-State Circuits Magazine"} +@STRING{IEEE_M_SPECT = "{IEEE} Spectrum"} +@STRING{IEEE_M_SMC = "{IEEE} Systems, Man, and Cybernetics Magazine"} +@STRING{IEEE_M_TS = "{IEEE} Technology and Society Magazine"} +@STRING{IEEE_M_VT = "{IEEE} Vehicular Technology Magazine"} +@STRING{IEEE_M_WC = "{IEEE} Wireless Communications"} +@STRING{IEEE_M_TODAY = "Today's Engineer"} + + + + + +-- +EOF diff --git a/IEEEtran/bibtex/IEEEtran.bst b/IEEEtran/bibtex/IEEEtran.bst new file mode 100644 index 0000000..f9c03d7 --- /dev/null +++ b/IEEEtran/bibtex/IEEEtran.bst @@ -0,0 +1,2409 @@ +%% +%% IEEEtran.bst +%% BibTeX Bibliography Style file for IEEE Journals and Conferences (unsorted) +%% Version 1.14 (2015/08/26) +%% +%% Copyright (c) 2003-2015 Michael Shell +%% +%% Original starting code base and algorithms obtained from the output of +%% Patrick W. Daly's makebst package as well as from prior versions of +%% IEEE BibTeX styles: +%% +%% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988) +%% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993) +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and/or +%% http://www.ieee.org/ +%% +%% For use with BibTeX version 0.99a or later +%% +%% This is a numerical citation style. +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% These are the defaults for the user adjustable controls. The values used +% here can be overridden by the user via IEEEtranBSTCTL entry type. + +% NOTE: The recommended LaTeX command to invoke a control entry type is: +% +%\makeatletter +%\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +%\def\@bstctlcite[#1]#2{\@bsphack +% \@for\@citeb:=#2\do{% +% \edef\@citeb{\expandafter\@firstofone\@citeb}% +% \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% +% \@esphack} +%\makeatother +% +% It is called at the start of the document, before the first \cite, like: +% \bstctlcite{IEEEexample:BSTcontrol} +% +% IEEEtran.cls V1.6 and later does provide this command. + + + +% #0 turns off the display of the number for articles. +% #1 enables +FUNCTION {default.is.use.number.for.article} { #1 } + + +% #0 turns off the display of the paper and type fields in @inproceedings. +% #1 enables +FUNCTION {default.is.use.paper} { #1 } + + +% #0 turns off the display of urls +% #1 enables +FUNCTION {default.is.use.url} { #1 } + + +% #0 turns off the forced use of "et al." +% #1 enables +FUNCTION {default.is.forced.et.al} { #0 } + + +% The maximum number of names that can be present beyond which an "et al." +% usage is forced. Be sure that num.names.shown.with.forced.et.al (below) +% is not greater than this value! +% Note: There are many instances of references in IEEE journals which have +% a very large number of authors as well as instances in which "et al." is +% used profusely. +FUNCTION {default.max.num.names.before.forced.et.al} { #10 } + + +% The number of names that will be shown with a forced "et al.". +% Must be less than or equal to max.num.names.before.forced.et.al +FUNCTION {default.num.names.shown.with.forced.et.al} { #1 } + + +% #0 turns off the alternate interword spacing for entries with URLs. +% #1 enables +FUNCTION {default.is.use.alt.interword.spacing} { #1 } + + +% If alternate interword spacing for entries with URLs is enabled, this is +% the interword spacing stretch factor that will be used. For example, the +% default "4" here means that the interword spacing in entries with URLs can +% stretch to four times normal. Does not have to be an integer. Note that +% the value specified here can be overridden by the user in their LaTeX +% code via a command such as: +% "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to +% that via the IEEEtranBSTCTL entry type. +FUNCTION {default.ALTinterwordstretchfactor} { "4" } + + +% #0 turns off the "dashification" of repeated (i.e., identical to those +% of the previous entry) names. The IEEE normally does this. +% #1 enables +FUNCTION {default.is.dash.repeated.names} { #1 } + + +% The default name format control string. +FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" } + + +% The default LaTeX font command for the names. +FUNCTION {default.name.latex.cmd}{ "" } + + +% The default URL prefix. +FUNCTION {default.name.url.prefix}{ "[Online]. Available:" } + + +% Other controls that cannot be accessed via IEEEtranBSTCTL entry type. + +% #0 turns off the terminal startup banner/completed message so as to +% operate more quietly. +% #1 enables +FUNCTION {is.print.banners.to.terminal} { #1 } + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% FILE VERSION AND BANNER %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION{bst.file.version} { "1.14" } +FUNCTION{bst.file.date} { "2015/08/26" } +FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" } + +FUNCTION {banner.message} +{ is.print.banners.to.terminal + { "-- IEEEtran.bst version" " " * bst.file.version * + " (" * bst.file.date * ") " * "by Michael Shell." * + top$ + "-- " bst.file.website * + top$ + "-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." * + top$ + } + { skip$ } + if$ +} + +FUNCTION {completed.message} +{ is.print.banners.to.terminal + { "" + top$ + "Done." + top$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING CONSTANTS %% +%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {bbl.and}{ "and" } +FUNCTION {bbl.etal}{ "et~al." } +FUNCTION {bbl.editors}{ "eds." } +FUNCTION {bbl.editor}{ "ed." } +FUNCTION {bbl.edition}{ "ed." } +FUNCTION {bbl.volume}{ "vol." } +FUNCTION {bbl.of}{ "of" } +FUNCTION {bbl.number}{ "no." } +FUNCTION {bbl.in}{ "in" } +FUNCTION {bbl.pages}{ "pp." } +FUNCTION {bbl.page}{ "p." } +FUNCTION {bbl.chapter}{ "ch." } +FUNCTION {bbl.paper}{ "paper" } +FUNCTION {bbl.part}{ "pt." } +FUNCTION {bbl.patent}{ "Patent" } +FUNCTION {bbl.patentUS}{ "U.S." } +FUNCTION {bbl.revision}{ "Rev." } +FUNCTION {bbl.series}{ "ser." } +FUNCTION {bbl.standard}{ "Std." } +FUNCTION {bbl.techrep}{ "Tech. Rep." } +FUNCTION {bbl.mthesis}{ "Master's thesis" } +FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" } +FUNCTION {bbl.st}{ "st" } +FUNCTION {bbl.nd}{ "nd" } +FUNCTION {bbl.rd}{ "rd" } +FUNCTION {bbl.th}{ "th" } + + +% This is the LaTeX spacer that is used when a larger than normal space +% is called for (such as just before the address:publisher). +FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " } + +% The LaTeX code for dashes that are used to represent repeated names. +% Note: Some older IEEE journals used something like +% "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along +% the baseline. However, the IEEE now uses a thinner, above baseline, +% six dash long sequence. +FUNCTION {repeated.name.dashes} { "------" } + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% PREDEFINED STRING MACROS %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +MACRO {jan} {"Jan."} +MACRO {feb} {"Feb."} +MACRO {mar} {"Mar."} +MACRO {apr} {"Apr."} +MACRO {may} {"May"} +MACRO {jun} {"Jun."} +MACRO {jul} {"Jul."} +MACRO {aug} {"Aug."} +MACRO {sep} {"Sep."} +MACRO {oct} {"Oct."} +MACRO {nov} {"Nov."} +MACRO {dec} {"Dec."} + + + +%%%%%%%%%%%%%%%%%% +%% ENTRY FIELDS %% +%%%%%%%%%%%%%%%%%% + +ENTRY + { address + assignee + author + booktitle + chapter + day + dayfiled + edition + editor + howpublished + institution + intype + journal + key + language + month + monthfiled + nationality + note + number + organization + pages + paper + publisher + school + series + revision + title + type + url + volume + year + yearfiled + CTLuse_article_number + CTLuse_paper + CTLuse_url + CTLuse_forced_etal + CTLmax_names_forced_etal + CTLnames_show_etal + CTLuse_alt_spacing + CTLalt_stretch_factor + CTLdash_repeated_names + CTLname_format_string + CTLname_latex_cmd + CTLname_url_prefix + } + {} + { label } + + + + +%%%%%%%%%%%%%%%%%%%%%%% +%% INTEGER VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%%% + +INTEGERS { prev.status.punct this.status.punct punct.std + punct.no punct.comma punct.period + prev.status.space this.status.space space.std + space.no space.normal space.large + prev.status.quote this.status.quote quote.std + quote.no quote.close + prev.status.nline this.status.nline nline.std + nline.no nline.newblock + status.cap cap.std + cap.no cap.yes} + +INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames } + +INTEGERS { is.use.number.for.article + is.use.paper + is.use.url + is.forced.et.al + max.num.names.before.forced.et.al + num.names.shown.with.forced.et.al + is.use.alt.interword.spacing + is.dash.repeated.names} + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%% + +STRINGS { bibinfo + longest.label + oldname + s + t + ALTinterwordstretchfactor + name.format.string + name.latex.cmd + name.url.prefix} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOW LEVEL FUNCTIONS %% +%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.controls} +{ default.is.use.number.for.article 'is.use.number.for.article := + default.is.use.paper 'is.use.paper := + default.is.use.url 'is.use.url := + default.is.forced.et.al 'is.forced.et.al := + default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al := + default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al := + default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing := + default.is.dash.repeated.names 'is.dash.repeated.names := + default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor := + default.name.format.string 'name.format.string := + default.name.latex.cmd 'name.latex.cmd := + default.name.url.prefix 'name.url.prefix := +} + + +% This IEEEtran.bst features a very powerful and flexible mechanism for +% controlling the capitalization, punctuation, spacing, quotation, and +% newlines of the formatted entry fields. (Note: IEEEtran.bst does not need +% or use the newline/newblock feature, but it has been implemented for +% possible future use.) The output states of IEEEtran.bst consist of +% multiple independent attributes and, as such, can be thought of as being +% vectors, rather than the simple scalar values ("before.all", +% "mid.sentence", etc.) used in most other .bst files. +% +% The more flexible and complex design used here was motivated in part by +% the IEEE's rather unusual bibliography style. For example, the IEEE ends the +% previous field item with a period and large space prior to the publisher +% address; the @electronic entry types use periods as inter-item punctuation +% rather than the commas used by the other entry types; and URLs are never +% followed by periods even though they are the last item in the entry. +% Although it is possible to accommodate these features with the conventional +% output state system, the seemingly endless exceptions make for convoluted, +% unreliable and difficult to maintain code. +% +% IEEEtran.bst's output state system can be easily understood via a simple +% illustration of two most recently formatted entry fields (on the stack): +% +% CURRENT_ITEM +% "PREVIOUS_ITEM +% +% which, in this example, is to eventually appear in the bibliography as: +% +% "PREVIOUS_ITEM," CURRENT_ITEM +% +% It is the job of the output routine to take the previous item off of the +% stack (while leaving the current item at the top of the stack), apply its +% trailing punctuation (including closing quote marks) and spacing, and then +% to write the result to BibTeX's output buffer: +% +% "PREVIOUS_ITEM," +% +% Punctuation (and spacing) between items is often determined by both of the +% items rather than just the first one. The presence of quotation marks +% further complicates the situation because, in standard English, trailing +% punctuation marks are supposed to be contained within the quotes. +% +% IEEEtran.bst maintains two output state (aka "status") vectors which +% correspond to the previous and current (aka "this") items. Each vector +% consists of several independent attributes which track punctuation, +% spacing, quotation, and newlines. Capitalization status is handled by a +% separate scalar because the format routines, not the output routine, +% handle capitalization and, therefore, there is no need to maintain the +% capitalization attribute for both the "previous" and "this" items. +% +% When a format routine adds a new item, it copies the current output status +% vector to the previous output status vector and (usually) resets the +% current (this) output status vector to a "standard status" vector. Using a +% "standard status" vector in this way allows us to redefine what we mean by +% "standard status" at the start of each entry handler and reuse the same +% format routines under the various inter-item separation schemes. For +% example, the standard status vector for the @book entry type may use +% commas for item separators, while the @electronic type may use periods, +% yet both entry handlers exploit many of the exact same format routines. +% +% Because format routines have write access to the output status vector of +% the previous item, they can override the punctuation choices of the +% previous format routine! Therefore, it becomes trivial to implement rules +% such as "Always use a period and a large space before the publisher." By +% pushing the generation of the closing quote mark to the output routine, we +% avoid all the problems caused by having to close a quote before having all +% the information required to determine what the punctuation should be. +% +% The IEEEtran.bst output state system can easily be expanded if needed. +% For instance, it is easy to add a "space.tie" attribute value if the +% bibliography rules mandate that two items have to be joined with an +% unbreakable space. + +FUNCTION {initialize.status.constants} +{ #0 'punct.no := + #1 'punct.comma := + #2 'punct.period := + #0 'space.no := + #1 'space.normal := + #2 'space.large := + #0 'quote.no := + #1 'quote.close := + #0 'cap.no := + #1 'cap.yes := + #0 'nline.no := + #1 'nline.newblock := +} + +FUNCTION {std.status.using.comma} +{ punct.comma 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.no 'cap.std := +} + +FUNCTION {std.status.using.period} +{ punct.period 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.yes 'cap.std := +} + +FUNCTION {initialize.prev.this.status} +{ punct.no 'prev.status.punct := + space.no 'prev.status.space := + quote.no 'prev.status.quote := + nline.no 'prev.status.nline := + punct.no 'this.status.punct := + space.no 'this.status.space := + quote.no 'this.status.quote := + nline.no 'this.status.nline := + cap.yes 'status.cap := +} + +FUNCTION {this.status.std} +{ punct.std 'this.status.punct := + space.std 'this.status.space := + quote.std 'this.status.quote := + nline.std 'this.status.nline := +} + +FUNCTION {cap.status.std}{ cap.std 'status.cap := } + +FUNCTION {this.to.prev.status} +{ this.status.punct 'prev.status.punct := + this.status.space 'prev.status.space := + this.status.quote 'prev.status.quote := + this.status.nline 'prev.status.nline := +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ { skip$ } + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + { skip$ } + if$ +} + + +% convert the strings "yes" or "no" to #1 or #0 respectively +FUNCTION {yes.no.to.int} +{ "l" change.case$ duplicate$ + "yes" = + { pop$ #1 } + { duplicate$ "no" = + { pop$ #0 } + { "unknown boolean " quote$ * swap$ * quote$ * + " in " * cite$ * warning$ + #0 + } + if$ + } + if$ +} + + +% pushes true if the single char string on the stack is in the +% range of "0" to "9" +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +% multiplies the integer on the stack by a factor of 10 +FUNCTION {bump.int.mag} +{ #0 'multiresult := + { duplicate$ #0 > } + { #1 - + multiresult #10 + + 'multiresult := + } + while$ +pop$ +multiresult +} + +% converts a single character string on the stack to an integer +FUNCTION {char.to.integer} +{ duplicate$ + is.num + { chr.to.int$ "0" chr.to.int$ - } + {"noninteger character " quote$ * swap$ * quote$ * + " in integer field of " * cite$ * warning$ + #0 + } + if$ +} + +% converts a string on the stack to an integer +FUNCTION {string.to.integer} +{ duplicate$ text.length$ 'namesleft := + #1 'nameptr := + #0 'numnames := + { nameptr namesleft > not } + { duplicate$ nameptr #1 substring$ + char.to.integer numnames bump.int.mag + + 'numnames := + nameptr #1 + + 'nameptr := + } + while$ +pop$ +numnames +} + + + + +% The output routines write out the *next* to the top (previous) item on the +% stack, adding punctuation and such as needed. Since IEEEtran.bst maintains +% the output status for the top two items on the stack, these output +% routines have to consider the previous output status (which corresponds to +% the item that is being output). Full independent control of punctuation, +% closing quote marks, spacing, and newblock is provided. +% +% "output.nonnull" does not check for the presence of a previous empty +% item. +% +% "output" does check for the presence of a previous empty item and will +% remove an empty item rather than outputing it. +% +% "output.warn" is like "output", but will issue a warning if it detects +% an empty item. + +FUNCTION {output.nonnull} +{ swap$ + prev.status.punct punct.comma = + { "," * } + { skip$ } + if$ + prev.status.punct punct.period = + { add.period$ } + { skip$ } + if$ + prev.status.quote quote.close = + { "''" * } + { skip$ } + if$ + prev.status.space space.normal = + { " " * } + { skip$ } + if$ + prev.status.space space.large = + { large.space * } + { skip$ } + if$ + write$ + prev.status.nline nline.newblock = + { newline$ "\newblock " write$ } + { skip$ } + if$ +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.warn} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +% "fin.entry" is the output routine that handles the last item of the entry +% (which will be on the top of the stack when "fin.entry" is called). + +FUNCTION {fin.entry} +{ this.status.punct punct.no = + { skip$ } + { add.period$ } + if$ + this.status.quote quote.close = + { "''" * } + { skip$ } + if$ +write$ +newline$ +} + + +FUNCTION {is.last.char.not.punct} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {is.multiple.pages} +{ '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 {capitalize}{ "u" change.case$ "t" change.case$ } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +FUNCTION {do.name.latex.cmd} +{ name.latex.cmd + empty$ + { skip$ } + { name.latex.cmd "{" * swap$ * "}" * } + if$ +} + +% IEEEtran.bst uses its own \BIBforeignlanguage command which directly +% invokes the TeX hyphenation patterns without the need of the Babel +% package. Babel does a lot more than switch hyphenation patterns and +% its loading can cause unintended effects in many class files (such as +% IEEEtran.cls). +FUNCTION {select.language} +{ duplicate$ empty$ 'pop$ + { language empty$ 'skip$ + { "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * } + if$ + } + if$ +} + +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {space.word}{ " " swap$ * " " * } + + +% Field Conditioners, Converters, Checkers and External Interfaces + +FUNCTION {empty.field.to.null.string} +{ duplicate$ empty$ + { pop$ "" } + { skip$ } + if$ +} + +FUNCTION {either.or.check} +{ empty$ + { pop$ } + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {empty.entry.warn} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ url empty$ + and and and and and and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + + +% The bibinfo system provides a way for the electronic parsing/acquisition +% of a bibliography's contents as is done by ReVTeX. For example, a field +% could be entered into the bibliography as: +% \bibinfo{volume}{2} +% Only the "2" would show up in the document, but the LaTeX \bibinfo command +% could do additional things with the information. IEEEtran.bst does provide +% a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is +% currently not used as the bogus bibinfo functions defined here output the +% entry values directly without the \bibinfo wrapper. The bibinfo functions +% themselves (and the calls to them) are retained for possible future use. +% +% bibinfo.check avoids acting on missing fields while bibinfo.warn will +% issue a warning message if a missing field is detected. Prior to calling +% the bibinfo functions, the user should push the field value and then its +% name string, in that order. + +FUNCTION {bibinfo.check} +{ swap$ duplicate$ missing$ + { pop$ pop$ "" } + { duplicate$ empty$ + { swap$ pop$ } + { swap$ pop$ } + if$ + } + if$ +} + +FUNCTION {bibinfo.warn} +{ swap$ duplicate$ missing$ + { swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" } + { duplicate$ empty$ + { swap$ "empty " swap$ * " in " * cite$ * warning$ } + { swap$ pop$ } + if$ + } + if$ +} + + +% The IEEE separates large numbers with more than 4 digits into groups of +% three. The IEEE uses a small space to separate these number groups. +% Typical applications include patent and page numbers. + +% number of consecutive digits required to trigger the group separation. +FUNCTION {large.number.trigger}{ #5 } + +% For numbers longer than the trigger, this is the blocksize of the groups. +% The blocksize must be less than the trigger threshold, and 2 * blocksize +% must be greater than the trigger threshold (can't do more than one +% separation on the initial trigger). +FUNCTION {large.number.blocksize}{ #3 } + +% What is actually inserted between the number groups. +FUNCTION {large.number.separator}{ "\," } + +% So as to save on integer variables by reusing existing ones, numnames +% holds the current number of consecutive digits read and nameptr holds +% the number that will trigger an inserted space. +FUNCTION {large.number.separate} +{ 't := + "" + #0 'numnames := + large.number.trigger 'nameptr := + { t empty$ not } + { t #-1 #1 substring$ is.num + { numnames #1 + 'numnames := } + { #0 'numnames := + large.number.trigger 'nameptr := + } + if$ + t #-1 #1 substring$ swap$ * + t #-2 global.max$ substring$ 't := + numnames nameptr = + { duplicate$ #1 nameptr large.number.blocksize - substring$ swap$ + nameptr large.number.blocksize - #1 + global.max$ substring$ + large.number.separator swap$ * * + nameptr large.number.blocksize - 'numnames := + large.number.blocksize #1 + 'nameptr := + } + { skip$ } + if$ + } + while$ +} + +% Converts all single dashes "-" to double dashes "--". +FUNCTION {n.dashify} +{ large.number.separate + '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$ +} + + +% This function detects entries with names that are identical to that of +% the previous entry and replaces the repeated names with dashes (if the +% "is.dash.repeated.names" user control is nonzero). +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = + { is.dash.repeated.names + { repeated.name.dashes } + { s 'oldname := s } + if$ + } + { s 'oldname := s } + if$ + } + if$ +} + +% Converts the number string on the top of the stack to +% "numerical ordinal form" (e.g., "7" to "7th"). There is +% no artificial limit to the upper bound of the numbers as the +% two least significant digits determine the ordinal form. +FUNCTION {num.to.ordinal} +{ duplicate$ #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ "1" = + { bbl.st * } + { duplicate$ #-1 #1 substring$ "2" = + { bbl.nd * } + { duplicate$ #-1 #1 substring$ "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +% If the string on the top of the stack begins with a number, +% (e.g., 11th) then replace the string with the leading number +% it contains. Otherwise retain the string as-is. s holds the +% extracted number, t holds the part of the string that remains +% to be scanned. +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +% Converts the word number string on the top of the stack to +% Arabic string form. Will be successful up to "tenth". +FUNCTION {word.to.num} +{ duplicate$ "l" change.case$ 's := + s "first" = + { pop$ "1" } + { skip$ } + if$ + s "second" = + { pop$ "2" } + { skip$ } + if$ + s "third" = + { pop$ "3" } + { skip$ } + if$ + s "fourth" = + { pop$ "4" } + { skip$ } + if$ + s "fifth" = + { pop$ "5" } + { skip$ } + if$ + s "sixth" = + { pop$ "6" } + { skip$ } + if$ + s "seventh" = + { pop$ "7" } + { skip$ } + if$ + s "eighth" = + { pop$ "8" } + { skip$ } + if$ + s "ninth" = + { pop$ "9" } + { skip$ } + if$ + s "tenth" = + { pop$ "10" } + { skip$ } + if$ +} + + +% Converts the string on the top of the stack to numerical +% ordinal (e.g., "11th") form. +FUNCTION {convert.edition} +{ duplicate$ empty$ 'skip$ + { duplicate$ #1 #1 substring$ is.num + { extract.num + num.to.ordinal + } + { word.to.num + duplicate$ #1 #1 substring$ is.num + { num.to.ordinal } + { "edition ordinal word " quote$ * edition * quote$ * + " may be too high (or improper) for conversion" * " in " * cite$ * warning$ + } + if$ + } + if$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LATEX BIBLIOGRAPHY CODE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {start.entry} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + initialize.prev.this.status +} + +% Here we write out all the LaTeX code that we will need. The most involved +% code sequences are those that control the alternate interword spacing and +% foreign language hyphenation patterns. The heavy use of \providecommand +% gives users a way to override the defaults. Special thanks to Javier Bezos, +% Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all +% the other gurus on comp.text.tex for their help and advice on the topic of +% \selectlanguage, Babel and BibTeX. +FUNCTION {begin.bib} +{ "% Generated by IEEEtran.bst, version: " bst.file.version * " (" * bst.file.date * ")" * + write$ newline$ + preamble$ empty$ 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * + write$ newline$ + "\providecommand{\url}[1]{#1}" + write$ newline$ + "\csname url@samestyle\endcsname" + write$ newline$ + "\providecommand{\newblock}{\relax}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}" + write$ newline$ + "\providecommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + "\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus " + write$ newline$ + "\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}" + write$ newline$ + "\providecommand{\BIBforeignlanguage}[2]{{%" + write$ newline$ + "\expandafter\ifx\csname l@#1\endcsname\relax" + write$ newline$ + "\typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}%" + write$ newline$ + "\typeout{** loaded for the language `#1'. Using the pattern for}%" + write$ newline$ + "\typeout{** the default language instead.}%" + write$ newline$ + "\else" + write$ newline$ + "\language=\csname l@#1\endcsname" + write$ newline$ + "\fi" + write$ newline$ + "#2}}" + write$ newline$ + "\providecommand{\BIBdecl}{\relax}" + write$ newline$ + "\BIBdecl" + write$ newline$ +} + +FUNCTION {end.bib} +{ newline$ "\end{thebibliography}" write$ newline$ } + +FUNCTION {if.url.alt.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + +FUNCTION {if.url.std.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%% +%% LONGEST LABEL PASS %% +%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { 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$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%% +%% FORMAT HANDLERS %% +%%%%%%%%%%%%%%%%%%%%% + +%% Lower Level Formats (used by higher level formats) + +FUNCTION {format.address.org.or.pub.date} +{ 't := + "" + year empty$ + { "empty year in " cite$ * warning$ } + { skip$ } + if$ + address empty$ t empty$ and + year empty$ and month empty$ and + { skip$ } + { this.to.prev.status + this.status.std + cap.status.std + address "address" bibinfo.check * + t empty$ + { skip$ } + { punct.period 'prev.status.punct := + space.large 'prev.status.space := + address empty$ + { skip$ } + { ": " * } + if$ + t * + } + if$ + year empty$ month empty$ and + { skip$ } + { t empty$ address empty$ and + { skip$ } + { ", " * } + if$ + month empty$ + { year empty$ + { skip$ } + { year "year" bibinfo.check * } + if$ + } + { month "month" bibinfo.check * + year empty$ + { skip$ } + { " " * year "year" bibinfo.check * } + if$ + } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + this.to.prev.status + this.status.std + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + name.format.string + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { nameptr num.names.shown.with.forced.et.al #1 + = + numnames max.num.names.before.forced.et.al > + is.forced.et.al and and + { "others" 't := + #1 'namesleft := + } + { skip$ } + if$ + namesleft #1 > + { ", " * t do.name.latex.cmd * } + { s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { " " * bbl.etal emphasize * } + { numnames #2 > + { "," * } + { skip$ } + if$ + bbl.and + space.word * t do.name.latex.cmd * + } + if$ + } + if$ + } + { t do.name.latex.cmd } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + cap.status.std + } if$ +} + + + + +%% Higher Level Formats + +%% addresses/locations + +FUNCTION {format.address} +{ address duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% author/editor names + +FUNCTION {format.authors}{ author "author" format.names } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { ", " * + get.bbl.editor + capitalize + * + } + if$ +} + + + +%% date + +FUNCTION {format.date} +{ + month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { this.to.prev.status + this.status.std + cap.status.std + swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ +} + +FUNCTION {format.date.electronic} +{ month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ + { pop$ } + { "there's a month but no year in " cite$ * warning$ + pop$ ")" * "(" swap$ * + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ + } + { swap$ + { swap$ pop$ ")" * "(" swap$ * } + { "(" swap$ * ", " * swap$ * ")" * } + if$ + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ +} + + + +%% edition/title + +% Note: The IEEE considers the edition to be closely associated with +% the title of a book. So, in IEEEtran.bst the edition is normally handled +% within the formatting of the title. The format.edition function is +% retained here for possible future use. +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + convert.edition + status.cap + { "t" } + { "l" } + if$ change.case$ + "edition" bibinfo.check + "~" * bbl.edition * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of a conference proceedings. +% Here we use the "intype" field to provide the user a way to +% override the word "in" (e.g., with things like "presented at") +% Use of intype stops the emphasis of the booktitle to indicate that +% we no longer mean the written conference proceedings, but the +% conference itself. +FUNCTION {format.in.booktitle} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + intype missing$ + { emphasize + bbl.in " " * + } + { intype " " * } + if$ + swap$ * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of collection. +% Here the "intype" field is not supported, but "edition" is. +FUNCTION {format.in.booktitle.edition} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + "l" change.case$ + * "~" * bbl.edition * + } + if$ + bbl.in " " * swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { quote.close 'this.status.quote := + is.last.char.not.punct + { punct.std 'this.status.punct := } + { punct.no 'this.status.punct := } + if$ + select.language + "``" swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title.electronic} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ + { skip$ } + { select.language } + if$ +} + +FUNCTION {format.book.title.edition} +{ title "title" bibinfo.check + duplicate$ empty$ + { "empty title in " cite$ * warning$ } + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + status.cap + { "t" } + { "l" } + if$ + change.case$ + * "~" * bbl.edition * + } + if$ + cap.status.std + } + if$ +} + +FUNCTION {format.book.title} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% journal + +FUNCTION {format.journal} +{ journal duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% how published + +FUNCTION {format.howpublished} +{ howpublished duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% institutions/organization/publishers/school + +FUNCTION {format.institution} +{ institution duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.organization} +{ organization duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.address.publisher.date} +{ publisher "publisher" bibinfo.warn format.address.org.or.pub.date } + +FUNCTION {format.address.publisher.date.nowarn} +{ publisher "publisher" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.address.organization.date} +{ organization "organization" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.school} +{ school duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% volume/number/series/chapter/pages + +FUNCTION {format.volume} +{ volume empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + bbl.volume + status.cap + { capitalize } + { skip$ } + if$ + swap$ tie.or.space.prefix + "volume" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number} +{ number empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + status.cap + { bbl.number capitalize } + { bbl.number } + if$ + swap$ tie.or.space.prefix + "number" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number.if.use.for.article} +{ is.use.number.for.article + { format.number } + { "" } + if$ +} + +% The IEEE does not seem to tie the series so closely with the volume +% and number as is done in other bibliography styles. Instead the +% series is treated somewhat like an extension of the title. +FUNCTION {format.series} +{ series empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.series " " * + series "series" bibinfo.check * + cap.status.std + } + if$ +} + + +FUNCTION {format.chapter} +{ chapter empty$ + { "" } + { this.to.prev.status + this.status.std + type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + cap.status.std + } + if$ +} + + +% The intended use of format.paper is for paper numbers of inproceedings. +% The paper type can be overridden via the type field. +% We allow the type to be displayed even if the paper number is absent +% for things like "postdeadline paper" +FUNCTION {format.paper} +{ is.use.paper + { paper empty$ + { type empty$ + { "" } + { this.to.prev.status + this.status.std + type "type" bibinfo.check + cap.status.std + } + if$ + } + { this.to.prev.status + this.status.std + type empty$ + { bbl.paper } + { type "type" bibinfo.check } + if$ + " " * paper + "paper" bibinfo.check + * + cap.status.std + } + if$ + } + { "" } + if$ +} + + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + duplicate$ is.multiple.pages + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + cap.status.std + } + if$ +} + + + +%% technical report number + +FUNCTION {format.tech.report.number} +{ number "number" bibinfo.check + this.to.prev.status + this.status.std + cap.status.std + type duplicate$ empty$ + { pop$ + bbl.techrep + } + { skip$ } + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ } + { tie.or.space.prefix * * } + if$ +} + + + +%% note + +FUNCTION {format.note} +{ note empty$ + { "" } + { this.to.prev.status + this.status.std + punct.period 'this.status.punct := + note #1 #1 substring$ + duplicate$ "{" = + { skip$ } + { status.cap + { "u" } + { "l" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + cap.yes 'status.cap := + } + if$ +} + + + +%% patent + +FUNCTION {format.patent.date} +{ this.to.prev.status + this.status.std + year empty$ + { monthfiled duplicate$ empty$ + { "monthfiled" bibinfo.check pop$ "" } + { "monthfiled" bibinfo.check } + if$ + dayfiled duplicate$ empty$ + { "dayfiled" bibinfo.check pop$ "" * } + { "dayfiled" bibinfo.check + monthfiled empty$ + { "dayfiled without a monthfiled in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + yearfiled empty$ + { "no year or yearfiled in " cite$ * warning$ } + { yearfiled "yearfiled" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + } + { month duplicate$ empty$ + { "month" bibinfo.check pop$ "" } + { "month" bibinfo.check } + if$ + day duplicate$ empty$ + { "day" bibinfo.check pop$ "" * } + { "day" bibinfo.check + month empty$ + { "day without a month in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + year "year" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + cap.status.std +} + +FUNCTION {format.patent.nationality.type.number} +{ this.to.prev.status + this.status.std + nationality duplicate$ empty$ + { "nationality" bibinfo.warn pop$ "" } + { "nationality" bibinfo.check + duplicate$ "l" change.case$ "united states" = + { pop$ bbl.patentUS } + { skip$ } + if$ + " " * + } + if$ + type empty$ + { bbl.patent "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.warn pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + + + +%% standard + +FUNCTION {format.organization.institution.standard.type.number} +{ this.to.prev.status + this.status.std + organization duplicate$ empty$ + { pop$ + institution duplicate$ empty$ + { "institution" bibinfo.warn } + { "institution" bibinfo.warn " " * } + if$ + } + { "organization" bibinfo.warn " " * } + if$ + type empty$ + { bbl.standard "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.check pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + +FUNCTION {format.revision} +{ revision empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.revision + revision tie.or.space.prefix + "revision" bibinfo.check + * * + cap.status.std + } + if$ +} + + +%% thesis + +FUNCTION {format.master.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.mthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + +FUNCTION {format.phd.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.phdthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + + + +%% URL + +FUNCTION {format.url} +{ is.use.url + { url empty$ + { "" } + { this.to.prev.status + this.status.std + cap.yes 'status.cap := + name.url.prefix " " * + "\url{" * url * "}" * + punct.no 'this.status.punct := + punct.period 'prev.status.punct := + space.normal 'this.status.space := + space.normal 'prev.status.space := + quote.no 'this.status.quote := + } + if$ + } + { "" } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%% +%% ENTRY HANDLERS %% +%%%%%%%%%%%%%%%%%%%% + + +% Note: In many journals, the IEEE (or the authors) tend not to show the number +% for articles, so the display of the number is controlled here by the +% switch "is.use.number.for.article" +FUNCTION {article} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.journal "journal" bibinfo.check "journal" output.warn + format.volume output + format.number.if.use.for.article output + format.pages output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {book} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + author empty$ + { skip$ } + { format.editors output } + if$ + format.address.publisher.date output + format.volume output + format.number output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {booklet} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {electronic} +{ std.status.using.period + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.date.electronic output + format.article.title.electronic output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {inbook} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + format.address.publisher.date output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {incollection} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle.edition "booktitle" output.warn + format.series output + format.editors output + format.address.publisher.date.nowarn output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {inproceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle "booktitle" output.warn + format.series output + format.editors output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.paper output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {manual} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title.edition "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {mastersthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.master.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {misc} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.pages output + format.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {patent} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.patent.nationality.type.number output + format.patent.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {periodical} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + format.organization "organization" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {phdthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.phd.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {proceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {standard} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization.institution.standard.type.number output + format.revision output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {techreport} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.institution "institution" bibinfo.warn output + format.address "address" bibinfo.check output + format.tech.report.number output.nonnull + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {unpublished} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.date output + format.note "note" output.warn + format.url output + fin.entry + if.url.std.interword.spacing +} + + +% The special entry type which provides the user interface to the +% BST controls +FUNCTION {IEEEtranBSTCTL} +{ is.print.banners.to.terminal + { "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." * + top$ + } + { skip$ } + if$ + CTLuse_article_number + empty$ + { skip$ } + { CTLuse_article_number + yes.no.to.int + 'is.use.number.for.article := + } + if$ + CTLuse_paper + empty$ + { skip$ } + { CTLuse_paper + yes.no.to.int + 'is.use.paper := + } + if$ + CTLuse_url + empty$ + { skip$ } + { CTLuse_url + yes.no.to.int + 'is.use.url := + } + if$ + CTLuse_forced_etal + empty$ + { skip$ } + { CTLuse_forced_etal + yes.no.to.int + 'is.forced.et.al := + } + if$ + CTLmax_names_forced_etal + empty$ + { skip$ } + { CTLmax_names_forced_etal + string.to.integer + 'max.num.names.before.forced.et.al := + } + if$ + CTLnames_show_etal + empty$ + { skip$ } + { CTLnames_show_etal + string.to.integer + 'num.names.shown.with.forced.et.al := + } + if$ + CTLuse_alt_spacing + empty$ + { skip$ } + { CTLuse_alt_spacing + yes.no.to.int + 'is.use.alt.interword.spacing := + } + if$ + CTLalt_stretch_factor + empty$ + { skip$ } + { CTLalt_stretch_factor + 'ALTinterwordstretchfactor := + "\renewcommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + } + if$ + CTLdash_repeated_names + empty$ + { skip$ } + { CTLdash_repeated_names + yes.no.to.int + 'is.dash.repeated.names := + } + if$ + CTLname_format_string + empty$ + { skip$ } + { CTLname_format_string + 'name.format.string := + } + if$ + CTLname_latex_cmd + empty$ + { skip$ } + { CTLname_latex_cmd + 'name.latex.cmd := + } + if$ + CTLname_url_prefix + missing$ + { skip$ } + { CTLname_url_prefix + 'name.url.prefix := + } + if$ + + + num.names.shown.with.forced.et.al max.num.names.before.forced.et.al > + { "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$ + max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al := + } + { skip$ } + if$ +} + + +%%%%%%%%%%%%%%%%%%% +%% ENTRY ALIASES %% +%%%%%%%%%%%%%%%%%%% +FUNCTION {conference}{inproceedings} +FUNCTION {online}{electronic} +FUNCTION {internet}{electronic} +FUNCTION {webpage}{electronic} +FUNCTION {www}{electronic} +FUNCTION {default.type}{misc} + + + +%%%%%%%%%%%%%%%%%% +%% MAIN PROGRAM %% +%%%%%%%%%%%%%%%%%% + +READ + +EXECUTE {initialize.controls} +EXECUTE {initialize.status.constants} +EXECUTE {banner.message} + +EXECUTE {initialize.longest.label} +ITERATE {longest.label.pass} + +EXECUTE {begin.bib} +ITERATE {call.type$} +EXECUTE {end.bib} + +EXECUTE{completed.message} + + +%% That's all folks, mds. diff --git a/IEEEtran/bibtex/IEEEtranN.bst b/IEEEtran/bibtex/IEEEtranN.bst new file mode 100644 index 0000000..7204eaf --- /dev/null +++ b/IEEEtran/bibtex/IEEEtranN.bst @@ -0,0 +1,2735 @@ +%% +%% IEEEtranN.bst +%% BibTeX Bibliography Style file +%% Natbib version of IEEEtran.bst +%% *** Not for normal IEEE work *** +%% Version 1.14 (2015/08/26) +%% +%% Copyright (c) 2003-2015 Michael Shell +%% +%% Original starting code base and algorithms obtained from the output of +%% Patrick W. Daly's makebst package as well as from prior versions of +%% IEEE BibTeX styles: +%% +%% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988) +%% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993) +%% +%% Added sorting and natbib code is from Patrick W Daly's unsrtnat.bst +%% +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and/or +%% http://www.ieee.org/ +%% +%% For use with BibTeX version 0.99a or later +%% +%% This is a natbib compatible citation style. +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% These are the defaults for the user adjustable controls. The values used +% here can be overridden by the user via IEEEtranBSTCTL entry type. + +% NOTE: The recommended LaTeX command to invoke a control entry type is: +% +%\makeatletter +%\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +%\def\@bstctlcite[#1]#2{\@bsphack +% \@for\@citeb:=#2\do{% +% \edef\@citeb{\expandafter\@firstofone\@citeb}% +% \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% +% \@esphack} +%\makeatother +% +% It is called at the start of the document, before the first \cite, like: +% \bstctlcite{IEEEexample:BSTcontrol} +% +% IEEEtran.cls V1.6 and later does provide this command. + + + +% #0 turns off the display of the number for articles. +% #1 enables +FUNCTION {default.is.use.number.for.article} { #1 } + + +% #0 turns off the display of the paper and type fields in @inproceedings. +% #1 enables +FUNCTION {default.is.use.paper} { #1 } + + +% #0 turns off the display of urls +% #1 enables +FUNCTION {default.is.use.url} { #1 } + + +% #0 turns off the forced use of "et al." +% #1 enables +FUNCTION {default.is.forced.et.al} { #0 } + + +% The maximum number of names that can be present beyond which an "et al." +% usage is forced. Be sure that num.names.shown.with.forced.et.al (below) +% is not greater than this value! +% Note: There are many instances of references in IEEE journals which have +% a very large number of authors as well as instances in which "et al." is +% used profusely. +FUNCTION {default.max.num.names.before.forced.et.al} { #10 } + + +% The number of names that will be shown with a forced "et al.". +% Must be less than or equal to max.num.names.before.forced.et.al +FUNCTION {default.num.names.shown.with.forced.et.al} { #1 } + + +% #0 turns off the alternate interword spacing for entries with URLs. +% #1 enables +FUNCTION {default.is.use.alt.interword.spacing} { #1 } + + +% If alternate interword spacing for entries with URLs is enabled, this is +% the interword spacing stretch factor that will be used. For example, the +% default "4" here means that the interword spacing in entries with URLs can +% stretch to four times normal. Does not have to be an integer. Note that +% the value specified here can be overridden by the user in their LaTeX +% code via a command such as: +% "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to +% that via the IEEEtranBSTCTL entry type. +FUNCTION {default.ALTinterwordstretchfactor} { "4" } + + +% #0 turns off the "dashification" of repeated (i.e., identical to those +% of the previous entry) names. The IEEE normally does this. +% #1 enables +FUNCTION {default.is.dash.repeated.names} { #1 } + + +% The default name format control string. +FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" } + + +% The default LaTeX font command for the names. +FUNCTION {default.name.latex.cmd}{ "" } + + +% The default URL prefix. +FUNCTION {default.name.url.prefix}{ "[Online]. Available:" } + + +% Other controls that cannot be accessed via IEEEtranBSTCTL entry type. + +% #0 turns off the terminal startup banner/completed message so as to +% operate more quietly. +% #1 enables +FUNCTION {is.print.banners.to.terminal} { #1 } + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% FILE VERSION AND BANNER %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION{bst.file.version} { "1.14" } +FUNCTION{bst.file.date} { "2015/08/26" } +FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" } + +FUNCTION {banner.message} +{ is.print.banners.to.terminal + { "-- IEEEtranN.bst version" " " * bst.file.version * + " (" * bst.file.date * ") " * "by Michael Shell." * + top$ + "-- " bst.file.website * + top$ + "-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." * + top$ + "** Natbib version - not for normal IEEE work." + top$ + } + { skip$ } + if$ +} + +FUNCTION {completed.message} +{ is.print.banners.to.terminal + { "" + top$ + "Done." + top$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING CONSTANTS %% +%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {bbl.and}{ "and" } +FUNCTION {bbl.etal}{ "et~al." } +FUNCTION {bbl.editors}{ "eds." } +FUNCTION {bbl.editor}{ "ed." } +FUNCTION {bbl.edition}{ "ed." } +FUNCTION {bbl.volume}{ "vol." } +FUNCTION {bbl.of}{ "of" } +FUNCTION {bbl.number}{ "no." } +FUNCTION {bbl.in}{ "in" } +FUNCTION {bbl.pages}{ "pp." } +FUNCTION {bbl.page}{ "p." } +FUNCTION {bbl.chapter}{ "ch." } +FUNCTION {bbl.paper}{ "paper" } +FUNCTION {bbl.part}{ "pt." } +FUNCTION {bbl.patent}{ "Patent" } +FUNCTION {bbl.patentUS}{ "U.S." } +FUNCTION {bbl.revision}{ "Rev." } +FUNCTION {bbl.series}{ "ser." } +FUNCTION {bbl.standard}{ "Std." } +FUNCTION {bbl.techrep}{ "Tech. Rep." } +FUNCTION {bbl.the}{ "The" } +FUNCTION {bbl.mthesis}{ "Master's thesis" } +FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" } +FUNCTION {bbl.st}{ "st" } +FUNCTION {bbl.nd}{ "nd" } +FUNCTION {bbl.rd}{ "rd" } +FUNCTION {bbl.th}{ "th" } + + +% This is the LaTeX spacer that is used when a larger than normal space +% is called for (such as just before the address:publisher). +FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " } + +% The LaTeX code for dashes that are used to represent repeated names. +% Note: Some older IEEE journals used something like +% "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along +% the baseline. However, the IEEE now uses a thinner, above baseline, +% six dash long sequence. +FUNCTION {repeated.name.dashes} { "------" } + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% PREDEFINED STRING MACROS %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +MACRO {jan} {"Jan."} +MACRO {feb} {"Feb."} +MACRO {mar} {"Mar."} +MACRO {apr} {"Apr."} +MACRO {may} {"May"} +MACRO {jun} {"Jun."} +MACRO {jul} {"Jul."} +MACRO {aug} {"Aug."} +MACRO {sep} {"Sep."} +MACRO {oct} {"Oct."} +MACRO {nov} {"Nov."} +MACRO {dec} {"Dec."} + + + +%%%%%%%%%%%%%%%%%% +%% ENTRY FIELDS %% +%%%%%%%%%%%%%%%%%% + +ENTRY + { address + assignee + author + booktitle + chapter + day + dayfiled + edition + editor + howpublished + institution + intype + journal + key + language + month + monthfiled + nationality + note + number + organization + pages + paper + publisher + school + series + revision + title + type + url + volume + year + yearfiled + CTLuse_article_number + CTLuse_paper + CTLuse_url + CTLuse_forced_etal + CTLmax_names_forced_etal + CTLnames_show_etal + CTLuse_alt_spacing + CTLalt_stretch_factor + CTLdash_repeated_names + CTLname_format_string + CTLname_latex_cmd + CTLname_url_prefix + } + {} + { label extra.label sort.label short.list} + + + + +%%%%%%%%%%%%%%%%%%%%%%% +%% INTEGER VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%%% + +INTEGERS { prev.status.punct this.status.punct punct.std + punct.no punct.comma punct.period + prev.status.space this.status.space space.std + space.no space.normal space.large + prev.status.quote this.status.quote quote.std + quote.no quote.close + prev.status.nline this.status.nline nline.std + nline.no nline.newblock + status.cap cap.std + cap.no cap.yes} + +INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames } + +INTEGERS { is.use.number.for.article + is.use.paper + is.use.url + is.forced.et.al + max.num.names.before.forced.et.al + num.names.shown.with.forced.et.al + is.use.alt.interword.spacing + is.dash.repeated.names} + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%% + +STRINGS { bibinfo + longest.label + oldname + s + t + ALTinterwordstretchfactor + name.format.string + name.latex.cmd + name.url.prefix} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOW LEVEL FUNCTIONS %% +%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.controls} +{ default.is.use.number.for.article 'is.use.number.for.article := + default.is.use.paper 'is.use.paper := + default.is.use.url 'is.use.url := + default.is.forced.et.al 'is.forced.et.al := + default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al := + default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al := + default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing := + default.is.dash.repeated.names 'is.dash.repeated.names := + default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor := + default.name.format.string 'name.format.string := + default.name.latex.cmd 'name.latex.cmd := + default.name.url.prefix 'name.url.prefix := +} + + +% This IEEEtran.bst features a very powerful and flexible mechanism for +% controlling the capitalization, punctuation, spacing, quotation, and +% newlines of the formatted entry fields. (Note: IEEEtran.bst does not need +% or use the newline/newblock feature, but it has been implemented for +% possible future use.) The output states of IEEEtran.bst consist of +% multiple independent attributes and, as such, can be thought of as being +% vectors, rather than the simple scalar values ("before.all", +% "mid.sentence", etc.) used in most other .bst files. +% +% The more flexible and complex design used here was motivated in part by +% the IEEE's rather unusual bibliography style. For example, the IEEE ends the +% previous field item with a period and large space prior to the publisher +% address; the @electronic entry types use periods as inter-item punctuation +% rather than the commas used by the other entry types; and URLs are never +% followed by periods even though they are the last item in the entry. +% Although it is possible to accommodate these features with the conventional +% output state system, the seemingly endless exceptions make for convoluted, +% unreliable and difficult to maintain code. +% +% IEEEtran.bst's output state system can be easily understood via a simple +% illustration of two most recently formatted entry fields (on the stack): +% +% CURRENT_ITEM +% "PREVIOUS_ITEM +% +% which, in this example, is to eventually appear in the bibliography as: +% +% "PREVIOUS_ITEM," CURRENT_ITEM +% +% It is the job of the output routine to take the previous item off of the +% stack (while leaving the current item at the top of the stack), apply its +% trailing punctuation (including closing quote marks) and spacing, and then +% to write the result to BibTeX's output buffer: +% +% "PREVIOUS_ITEM," +% +% Punctuation (and spacing) between items is often determined by both of the +% items rather than just the first one. The presence of quotation marks +% further complicates the situation because, in standard English, trailing +% punctuation marks are supposed to be contained within the quotes. +% +% IEEEtran.bst maintains two output state (aka "status") vectors which +% correspond to the previous and current (aka "this") items. Each vector +% consists of several independent attributes which track punctuation, +% spacing, quotation, and newlines. Capitalization status is handled by a +% separate scalar because the format routines, not the output routine, +% handle capitalization and, therefore, there is no need to maintain the +% capitalization attribute for both the "previous" and "this" items. +% +% When a format routine adds a new item, it copies the current output status +% vector to the previous output status vector and (usually) resets the +% current (this) output status vector to a "standard status" vector. Using a +% "standard status" vector in this way allows us to redefine what we mean by +% "standard status" at the start of each entry handler and reuse the same +% format routines under the various inter-item separation schemes. For +% example, the standard status vector for the @book entry type may use +% commas for item separators, while the @electronic type may use periods, +% yet both entry handlers exploit many of the exact same format routines. +% +% Because format routines have write access to the output status vector of +% the previous item, they can override the punctuation choices of the +% previous format routine! Therefore, it becomes trivial to implement rules +% such as "Always use a period and a large space before the publisher." By +% pushing the generation of the closing quote mark to the output routine, we +% avoid all the problems caused by having to close a quote before having all +% the information required to determine what the punctuation should be. +% +% The IEEEtran.bst output state system can easily be expanded if needed. +% For instance, it is easy to add a "space.tie" attribute value if the +% bibliography rules mandate that two items have to be joined with an +% unbreakable space. + +FUNCTION {initialize.status.constants} +{ #0 'punct.no := + #1 'punct.comma := + #2 'punct.period := + #0 'space.no := + #1 'space.normal := + #2 'space.large := + #0 'quote.no := + #1 'quote.close := + #0 'cap.no := + #1 'cap.yes := + #0 'nline.no := + #1 'nline.newblock := +} + +FUNCTION {std.status.using.comma} +{ punct.comma 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.no 'cap.std := +} + +FUNCTION {std.status.using.period} +{ punct.period 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.yes 'cap.std := +} + +FUNCTION {initialize.prev.this.status} +{ punct.no 'prev.status.punct := + space.no 'prev.status.space := + quote.no 'prev.status.quote := + nline.no 'prev.status.nline := + punct.no 'this.status.punct := + space.no 'this.status.space := + quote.no 'this.status.quote := + nline.no 'this.status.nline := + cap.yes 'status.cap := +} + +FUNCTION {this.status.std} +{ punct.std 'this.status.punct := + space.std 'this.status.space := + quote.std 'this.status.quote := + nline.std 'this.status.nline := +} + +FUNCTION {cap.status.std}{ cap.std 'status.cap := } + +FUNCTION {this.to.prev.status} +{ this.status.punct 'prev.status.punct := + this.status.space 'prev.status.space := + this.status.quote 'prev.status.quote := + this.status.nline 'prev.status.nline := +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ { skip$ } + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + { skip$ } + if$ +} + + +% convert the strings "yes" or "no" to #1 or #0 respectively +FUNCTION {yes.no.to.int} +{ "l" change.case$ duplicate$ + "yes" = + { pop$ #1 } + { duplicate$ "no" = + { pop$ #0 } + { "unknown boolean " quote$ * swap$ * quote$ * + " in " * cite$ * warning$ + #0 + } + if$ + } + if$ +} + + +% pushes true if the single char string on the stack is in the +% range of "0" to "9" +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +% multiplies the integer on the stack by a factor of 10 +FUNCTION {bump.int.mag} +{ #0 'multiresult := + { duplicate$ #0 > } + { #1 - + multiresult #10 + + 'multiresult := + } + while$ +pop$ +multiresult +} + +% converts a single character string on the stack to an integer +FUNCTION {char.to.integer} +{ duplicate$ + is.num + { chr.to.int$ "0" chr.to.int$ - } + {"noninteger character " quote$ * swap$ * quote$ * + " in integer field of " * cite$ * warning$ + #0 + } + if$ +} + +% converts a string on the stack to an integer +FUNCTION {string.to.integer} +{ duplicate$ text.length$ 'namesleft := + #1 'nameptr := + #0 'numnames := + { nameptr namesleft > not } + { duplicate$ nameptr #1 substring$ + char.to.integer numnames bump.int.mag + + 'numnames := + nameptr #1 + + 'nameptr := + } + while$ +pop$ +numnames +} + + + + +% The output routines write out the *next* to the top (previous) item on the +% stack, adding punctuation and such as needed. Since IEEEtran.bst maintains +% the output status for the top two items on the stack, these output +% routines have to consider the previous output status (which corresponds to +% the item that is being output). Full independent control of punctuation, +% closing quote marks, spacing, and newblock is provided. +% +% "output.nonnull" does not check for the presence of a previous empty +% item. +% +% "output" does check for the presence of a previous empty item and will +% remove an empty item rather than outputing it. +% +% "output.warn" is like "output", but will issue a warning if it detects +% an empty item. + +FUNCTION {output.nonnull} +{ swap$ + prev.status.punct punct.comma = + { "," * } + { skip$ } + if$ + prev.status.punct punct.period = + { add.period$ } + { skip$ } + if$ + prev.status.quote quote.close = + { "''" * } + { skip$ } + if$ + prev.status.space space.normal = + { " " * } + { skip$ } + if$ + prev.status.space space.large = + { large.space * } + { skip$ } + if$ + write$ + prev.status.nline nline.newblock = + { newline$ "\newblock " write$ } + { skip$ } + if$ +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.warn} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +% "fin.entry" is the output routine that handles the last item of the entry +% (which will be on the top of the stack when "fin.entry" is called). + +FUNCTION {fin.entry} +{ this.status.punct punct.no = + { skip$ } + { add.period$ } + if$ + this.status.quote quote.close = + { "''" * } + { skip$ } + if$ +write$ +newline$ +} + + +FUNCTION {is.last.char.not.punct} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {is.multiple.pages} +{ '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 {capitalize}{ "u" change.case$ "t" change.case$ } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +FUNCTION {do.name.latex.cmd} +{ name.latex.cmd + empty$ + { skip$ } + { name.latex.cmd "{" * swap$ * "}" * } + if$ +} + +% IEEEtran.bst uses its own \BIBforeignlanguage command which directly +% invokes the TeX hyphenation patterns without the need of the Babel +% package. Babel does a lot more than switch hyphenation patterns and +% its loading can cause unintended effects in many class files (such as +% IEEEtran.cls). +FUNCTION {select.language} +{ duplicate$ empty$ 'pop$ + { language empty$ 'skip$ + { "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * } + if$ + } + if$ +} + +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {space.word}{ " " swap$ * " " * } + + +% Field Conditioners, Converters, Checkers and External Interfaces + +FUNCTION {empty.field.to.null.string} +{ duplicate$ empty$ + { pop$ "" } + { skip$ } + if$ +} + +FUNCTION {either.or.check} +{ empty$ + { pop$ } + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {empty.entry.warn} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ url empty$ + and and and and and and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + + +% The bibinfo system provides a way for the electronic parsing/acquisition +% of a bibliography's contents as is done by ReVTeX. For example, a field +% could be entered into the bibliography as: +% \bibinfo{volume}{2} +% Only the "2" would show up in the document, but the LaTeX \bibinfo command +% could do additional things with the information. IEEEtran.bst does provide +% a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is +% currently not used as the bogus bibinfo functions defined here output the +% entry values directly without the \bibinfo wrapper. The bibinfo functions +% themselves (and the calls to them) are retained for possible future use. +% +% bibinfo.check avoids acting on missing fields while bibinfo.warn will +% issue a warning message if a missing field is detected. Prior to calling +% the bibinfo functions, the user should push the field value and then its +% name string, in that order. + +FUNCTION {bibinfo.check} +{ swap$ duplicate$ missing$ + { pop$ pop$ "" } + { duplicate$ empty$ + { swap$ pop$ } + { swap$ pop$ } + if$ + } + if$ +} + +FUNCTION {bibinfo.warn} +{ swap$ duplicate$ missing$ + { swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" } + { duplicate$ empty$ + { swap$ "empty " swap$ * " in " * cite$ * warning$ } + { swap$ pop$ } + if$ + } + if$ +} + + +% The IEEE separates large numbers with more than 4 digits into groups of +% three. The IEEE uses a small space to separate these number groups. +% Typical applications include patent and page numbers. + +% number of consecutive digits required to trigger the group separation. +FUNCTION {large.number.trigger}{ #5 } + +% For numbers longer than the trigger, this is the blocksize of the groups. +% The blocksize must be less than the trigger threshold, and 2 * blocksize +% must be greater than the trigger threshold (can't do more than one +% separation on the initial trigger). +FUNCTION {large.number.blocksize}{ #3 } + +% What is actually inserted between the number groups. +FUNCTION {large.number.separator}{ "\," } + +% So as to save on integer variables by reusing existing ones, numnames +% holds the current number of consecutive digits read and nameptr holds +% the number that will trigger an inserted space. +FUNCTION {large.number.separate} +{ 't := + "" + #0 'numnames := + large.number.trigger 'nameptr := + { t empty$ not } + { t #-1 #1 substring$ is.num + { numnames #1 + 'numnames := } + { #0 'numnames := + large.number.trigger 'nameptr := + } + if$ + t #-1 #1 substring$ swap$ * + t #-2 global.max$ substring$ 't := + numnames nameptr = + { duplicate$ #1 nameptr large.number.blocksize - substring$ swap$ + nameptr large.number.blocksize - #1 + global.max$ substring$ + large.number.separator swap$ * * + nameptr large.number.blocksize - 'numnames := + large.number.blocksize #1 + 'nameptr := + } + { skip$ } + if$ + } + while$ +} + +% Converts all single dashes "-" to double dashes "--". +FUNCTION {n.dashify} +{ large.number.separate + '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$ +} + + +% This function detects entries with names that are identical to that of +% the previous entry and replaces the repeated names with dashes (if the +% "is.dash.repeated.names" user control is nonzero). +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = + { is.dash.repeated.names + { repeated.name.dashes } + { s 'oldname := s } + if$ + } + { s 'oldname := s } + if$ + } + if$ +} + +% Converts the number string on the top of the stack to +% "numerical ordinal form" (e.g., "7" to "7th"). There is +% no artificial limit to the upper bound of the numbers as the +% two least significant digits determine the ordinal form. +FUNCTION {num.to.ordinal} +{ duplicate$ #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ "1" = + { bbl.st * } + { duplicate$ #-1 #1 substring$ "2" = + { bbl.nd * } + { duplicate$ #-1 #1 substring$ "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +% If the string on the top of the stack begins with a number, +% (e.g., 11th) then replace the string with the leading number +% it contains. Otherwise retain the string as-is. s holds the +% extracted number, t holds the part of the string that remains +% to be scanned. +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +% Converts the word number string on the top of the stack to +% Arabic string form. Will be successful up to "tenth". +FUNCTION {word.to.num} +{ duplicate$ "l" change.case$ 's := + s "first" = + { pop$ "1" } + { skip$ } + if$ + s "second" = + { pop$ "2" } + { skip$ } + if$ + s "third" = + { pop$ "3" } + { skip$ } + if$ + s "fourth" = + { pop$ "4" } + { skip$ } + if$ + s "fifth" = + { pop$ "5" } + { skip$ } + if$ + s "sixth" = + { pop$ "6" } + { skip$ } + if$ + s "seventh" = + { pop$ "7" } + { skip$ } + if$ + s "eighth" = + { pop$ "8" } + { skip$ } + if$ + s "ninth" = + { pop$ "9" } + { skip$ } + if$ + s "tenth" = + { pop$ "10" } + { skip$ } + if$ +} + + +% Converts the string on the top of the stack to numerical +% ordinal (e.g., "11th") form. +FUNCTION {convert.edition} +{ duplicate$ empty$ 'skip$ + { duplicate$ #1 #1 substring$ is.num + { extract.num + num.to.ordinal + } + { word.to.num + duplicate$ #1 #1 substring$ is.num + { num.to.ordinal } + { "edition ordinal word " quote$ * edition * quote$ * + " may be too high (or improper) for conversion" * " in " * cite$ * warning$ + } + if$ + } + if$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LATEX BIBLIOGRAPHY CODE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% from plainnat.bst +FUNCTION {format.full.names} +{'s := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { " " bbl.etal * * } + { " " bbl.and * " " * * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.full} +{ author empty$ + { editor empty$ + { "" } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.full} +{ author empty$ + { "" } + { author format.full.names } + if$ +} + +FUNCTION {editor.full} +{ editor empty$ + { "" } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + { author.editor.full } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.full } + { author.full } + if$ + } + if$ +} +% END from plainnat.bst + +FUNCTION {start.entry} +{ newline$ + "\bibitem[" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + initialize.prev.this.status +} + +% Here we write out all the LaTeX code that we will need. The most involved +% code sequences are those that control the alternate interword spacing and +% foreign language hyphenation patterns. The heavy use of \providecommand +% gives users a way to override the defaults. Special thanks to Javier Bezos, +% Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all +% the other gurus on comp.text.tex for their help and advice on the topic of +% \selectlanguage, Babel and BibTeX. +FUNCTION {begin.bib} +{ "% Generated by IEEEtranN.bst, version: " bst.file.version * " (" * bst.file.date * ")" * + write$ newline$ + preamble$ empty$ 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ + "\providecommand{\url}[1]{#1}" + write$ newline$ + "\csname url@samestyle\endcsname" + write$ newline$ + "\providecommand{\newblock}{\relax}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}" + write$ newline$ + "\providecommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + "\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus " + write$ newline$ + "\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}" + write$ newline$ + "\providecommand{\BIBforeignlanguage}[2]{{%" + write$ newline$ + "\expandafter\ifx\csname l@#1\endcsname\relax" + write$ newline$ + "\typeout{** WARNING: IEEEtranN.bst: No hyphenation pattern has been}%" + write$ newline$ + "\typeout{** loaded for the language `#1'. Using the pattern for}%" + write$ newline$ + "\typeout{** the default language instead.}%" + write$ newline$ + "\else" + write$ newline$ + "\language=\csname l@#1\endcsname" + write$ newline$ + "\fi" + write$ newline$ + "#2}}" + write$ newline$ + "\providecommand{\BIBdecl}{\relax}" + write$ newline$ + "\BIBdecl" + write$ newline$ +} + +FUNCTION {end.bib} +{ newline$ "\end{thebibliography}" write$ newline$ } + +FUNCTION {if.url.alt.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + +FUNCTION {if.url.std.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%% +%% FORMAT HANDLERS %% +%%%%%%%%%%%%%%%%%%%%% + +%% Lower Level Formats (used by higher level formats) + +FUNCTION {format.address.org.or.pub.date} +{ 't := + "" + year empty$ + { "empty year in " cite$ * warning$ } + { skip$ } + if$ + address empty$ t empty$ and + year empty$ and month empty$ and + { skip$ } + { this.to.prev.status + this.status.std + cap.status.std + address "address" bibinfo.check * + t empty$ + { skip$ } + { punct.period 'prev.status.punct := + space.large 'prev.status.space := + address empty$ + { skip$ } + { ": " * } + if$ + t * + } + if$ + year empty$ month empty$ and + { skip$ } + { t empty$ address empty$ and + { skip$ } + { ", " * } + if$ + month empty$ + { year empty$ + { skip$ } + { year "year" bibinfo.check * } + if$ + } + { month "month" bibinfo.check * + year empty$ + { skip$ } + { " " * year "year" bibinfo.check * } + if$ + } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + this.to.prev.status + this.status.std + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + name.format.string + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { nameptr num.names.shown.with.forced.et.al #1 + = + numnames max.num.names.before.forced.et.al > + is.forced.et.al and and + { "others" 't := + #1 'namesleft := + } + { skip$ } + if$ + namesleft #1 > + { ", " * t do.name.latex.cmd * } + { s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { " " * bbl.etal emphasize * } + { numnames #2 > + { "," * } + { skip$ } + if$ + bbl.and + space.word * t do.name.latex.cmd * + } + if$ + } + if$ + } + { t do.name.latex.cmd } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + cap.status.std + } if$ +} + + + + +%% Higher Level Formats + +%% addresses/locations + +FUNCTION {format.address} +{ address duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% author/editor names + +FUNCTION {format.authors}{ author "author" format.names } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { ", " * + get.bbl.editor + capitalize + * + } + if$ +} + + + +%% date + +FUNCTION {format.date} +{ + month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { this.to.prev.status + this.status.std + cap.status.std + swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ +} + +FUNCTION {format.date.electronic} +{ month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ + { pop$ } + { "there's a month but no year in " cite$ * warning$ + pop$ ")" * "(" swap$ * + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ + } + { swap$ + { swap$ pop$ ")" * "(" swap$ * } + { "(" swap$ * ", " * swap$ * ")" * } + if$ + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ +} + + + +%% edition/title + +% Note: The IEEE considers the edition to be closely associated with +% the title of a book. So, in IEEEtran.bst the edition is normally handled +% within the formatting of the title. The format.edition function is +% retained here for possible future use. +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + convert.edition + status.cap + { "t" } + { "l" } + if$ change.case$ + "edition" bibinfo.check + "~" * bbl.edition * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of a conference proceedings. +% Here we use the "intype" field to provide the user a way to +% override the word "in" (e.g., with things like "presented at") +% Use of intype stops the emphasis of the booktitle to indicate that +% we no longer mean the written conference proceedings, but the +% conference itself. +FUNCTION {format.in.booktitle} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + intype missing$ + { emphasize + bbl.in " " * + } + { intype " " * } + if$ + swap$ * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of collection. +% Here the "intype" field is not supported, but "edition" is. +FUNCTION {format.in.booktitle.edition} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + "l" change.case$ + * "~" * bbl.edition * + } + if$ + bbl.in " " * swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { quote.close 'this.status.quote := + is.last.char.not.punct + { punct.std 'this.status.punct := } + { punct.no 'this.status.punct := } + if$ + select.language + "``" swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title.electronic} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ + { skip$ } + { select.language } + if$ +} + +FUNCTION {format.book.title.edition} +{ title "title" bibinfo.check + duplicate$ empty$ + { "empty title in " cite$ * warning$ } + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + status.cap + { "t" } + { "l" } + if$ + change.case$ + * "~" * bbl.edition * + } + if$ + cap.status.std + } + if$ +} + +FUNCTION {format.book.title} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% journal + +FUNCTION {format.journal} +{ journal duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% how published + +FUNCTION {format.howpublished} +{ howpublished duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% institutions/organization/publishers/school + +FUNCTION {format.institution} +{ institution duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.organization} +{ organization duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.address.publisher.date} +{ publisher "publisher" bibinfo.warn format.address.org.or.pub.date } + +FUNCTION {format.address.publisher.date.nowarn} +{ publisher "publisher" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.address.organization.date} +{ organization "organization" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.school} +{ school duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% volume/number/series/chapter/pages + +FUNCTION {format.volume} +{ volume empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + bbl.volume + status.cap + { capitalize } + { skip$ } + if$ + swap$ tie.or.space.prefix + "volume" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number} +{ number empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + status.cap + { bbl.number capitalize } + { bbl.number } + if$ + swap$ tie.or.space.prefix + "number" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number.if.use.for.article} +{ is.use.number.for.article + { format.number } + { "" } + if$ +} + +% The IEEE does not seem to tie the series so closely with the volume +% and number as is done in other bibliography styles. Instead the +% series is treated somewhat like an extension of the title. +FUNCTION {format.series} +{ series empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.series " " * + series "series" bibinfo.check * + cap.status.std + } + if$ +} + + +FUNCTION {format.chapter} +{ chapter empty$ + { "" } + { this.to.prev.status + this.status.std + type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + cap.status.std + } + if$ +} + + +% The intended use of format.paper is for paper numbers of inproceedings. +% The paper type can be overridden via the type field. +% We allow the type to be displayed even if the paper number is absent +% for things like "postdeadline paper" +FUNCTION {format.paper} +{ is.use.paper + { paper empty$ + { type empty$ + { "" } + { this.to.prev.status + this.status.std + type "type" bibinfo.check + cap.status.std + } + if$ + } + { this.to.prev.status + this.status.std + type empty$ + { bbl.paper } + { type "type" bibinfo.check } + if$ + " " * paper + "paper" bibinfo.check + * + cap.status.std + } + if$ + } + { "" } + if$ +} + + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + duplicate$ is.multiple.pages + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + cap.status.std + } + if$ +} + + + +%% technical report number + +FUNCTION {format.tech.report.number} +{ number "number" bibinfo.check + this.to.prev.status + this.status.std + cap.status.std + type duplicate$ empty$ + { pop$ + bbl.techrep + } + { skip$ } + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ } + { tie.or.space.prefix * * } + if$ +} + + + +%% note + +FUNCTION {format.note} +{ note empty$ + { "" } + { this.to.prev.status + this.status.std + punct.period 'this.status.punct := + note #1 #1 substring$ + duplicate$ "{" = + { skip$ } + { status.cap + { "u" } + { "l" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + cap.yes 'status.cap := + } + if$ +} + + + +%% patent + +FUNCTION {format.patent.date} +{ this.to.prev.status + this.status.std + year empty$ + { monthfiled duplicate$ empty$ + { "monthfiled" bibinfo.check pop$ "" } + { "monthfiled" bibinfo.check } + if$ + dayfiled duplicate$ empty$ + { "dayfiled" bibinfo.check pop$ "" * } + { "dayfiled" bibinfo.check + monthfiled empty$ + { "dayfiled without a monthfiled in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + yearfiled empty$ + { "no year or yearfiled in " cite$ * warning$ } + { yearfiled "yearfiled" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + } + { month duplicate$ empty$ + { "month" bibinfo.check pop$ "" } + { "month" bibinfo.check } + if$ + day duplicate$ empty$ + { "day" bibinfo.check pop$ "" * } + { "day" bibinfo.check + month empty$ + { "day without a month in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + year "year" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + cap.status.std +} + +FUNCTION {format.patent.nationality.type.number} +{ this.to.prev.status + this.status.std + nationality duplicate$ empty$ + { "nationality" bibinfo.warn pop$ "" } + { "nationality" bibinfo.check + duplicate$ "l" change.case$ "united states" = + { pop$ bbl.patentUS } + { skip$ } + if$ + " " * + } + if$ + type empty$ + { bbl.patent "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.warn pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + + + +%% standard + +FUNCTION {format.organization.institution.standard.type.number} +{ this.to.prev.status + this.status.std + organization duplicate$ empty$ + { pop$ + institution duplicate$ empty$ + { "institution" bibinfo.warn } + { "institution" bibinfo.warn " " * } + if$ + } + { "organization" bibinfo.warn " " * } + if$ + type empty$ + { bbl.standard "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.check pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + +FUNCTION {format.revision} +{ revision empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.revision + revision tie.or.space.prefix + "revision" bibinfo.check + * * + cap.status.std + } + if$ +} + + +%% thesis + +FUNCTION {format.master.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.mthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + +FUNCTION {format.phd.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.phdthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + + + +%% URL + +FUNCTION {format.url} +{ is.use.url + { url empty$ + { "" } + { this.to.prev.status + this.status.std + cap.yes 'status.cap := + name.url.prefix " " * + "\url{" * url * "}" * + punct.no 'this.status.punct := + punct.period 'prev.status.punct := + space.normal 'this.status.space := + space.normal 'prev.status.space := + quote.no 'this.status.quote := + } + if$ + } + { "" } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%% +%% ENTRY HANDLERS %% +%%%%%%%%%%%%%%%%%%%% + + +% Note: In many journals, the IEEE (or the authors) tend not to show the number +% for articles, so the display of the number is controlled here by the +% switch "is.use.number.for.article" +FUNCTION {article} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.journal "journal" bibinfo.check "journal" output.warn + format.volume output + format.number.if.use.for.article output + format.pages output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {book} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + author empty$ + { skip$ } + { format.editors output } + if$ + format.address.publisher.date output + format.volume output + format.number output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {booklet} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {electronic} +{ std.status.using.period + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.date.electronic output + format.article.title.electronic output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {inbook} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + format.address.publisher.date output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {incollection} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle.edition "booktitle" output.warn + format.series output + format.editors output + format.address.publisher.date.nowarn output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {inproceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle "booktitle" output.warn + format.series output + format.editors output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.paper output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {manual} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title.edition "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {mastersthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.master.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {misc} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.pages output + format.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {patent} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.patent.nationality.type.number output + format.patent.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {periodical} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + format.organization "organization" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {phdthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.phd.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {proceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {standard} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization.institution.standard.type.number output + format.revision output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {techreport} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.institution "institution" bibinfo.warn output + format.address "address" bibinfo.check output + format.tech.report.number output.nonnull + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {unpublished} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.date output + format.note "note" output.warn + format.url output + fin.entry + if.url.std.interword.spacing +} + + +% The special entry type which provides the user interface to the +% BST controls +FUNCTION {IEEEtranBSTCTL} +{ is.print.banners.to.terminal + { "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." * + top$ + } + { skip$ } + if$ + CTLuse_article_number + empty$ + { skip$ } + { CTLuse_article_number + yes.no.to.int + 'is.use.number.for.article := + } + if$ + CTLuse_paper + empty$ + { skip$ } + { CTLuse_paper + yes.no.to.int + 'is.use.paper := + } + if$ + CTLuse_url + empty$ + { skip$ } + { CTLuse_url + yes.no.to.int + 'is.use.url := + } + if$ + CTLuse_forced_etal + empty$ + { skip$ } + { CTLuse_forced_etal + yes.no.to.int + 'is.forced.et.al := + } + if$ + CTLmax_names_forced_etal + empty$ + { skip$ } + { CTLmax_names_forced_etal + string.to.integer + 'max.num.names.before.forced.et.al := + } + if$ + CTLnames_show_etal + empty$ + { skip$ } + { CTLnames_show_etal + string.to.integer + 'num.names.shown.with.forced.et.al := + } + if$ + CTLuse_alt_spacing + empty$ + { skip$ } + { CTLuse_alt_spacing + yes.no.to.int + 'is.use.alt.interword.spacing := + } + if$ + CTLalt_stretch_factor + empty$ + { skip$ } + { CTLalt_stretch_factor + 'ALTinterwordstretchfactor := + "\renewcommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + } + if$ + CTLdash_repeated_names + empty$ + { skip$ } + { CTLdash_repeated_names + yes.no.to.int + 'is.dash.repeated.names := + } + if$ + CTLname_format_string + empty$ + { skip$ } + { CTLname_format_string + 'name.format.string := + } + if$ + CTLname_latex_cmd + empty$ + { skip$ } + { CTLname_latex_cmd + 'name.latex.cmd := + } + if$ + CTLname_url_prefix + missing$ + { skip$ } + { CTLname_url_prefix + 'name.url.prefix := + } + if$ + + + num.names.shown.with.forced.et.al max.num.names.before.forced.et.al > + { "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$ + max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al := + } + { skip$ } + if$ +} + + +%%%%%%%%%%%%%%%%%%% +%% ENTRY ALIASES %% +%%%%%%%%%%%%%%%%%%% +FUNCTION {conference}{inproceedings} +FUNCTION {online}{electronic} +FUNCTION {internet}{electronic} +FUNCTION {webpage}{electronic} +FUNCTION {www}{electronic} +FUNCTION {default.type}{misc} + + + +%%%%%%%%%%%%%%%%%% +%% MAIN PROGRAM %% +%%%%%%%%%%%%%%%%%% + +READ + +EXECUTE {initialize.controls} +EXECUTE {initialize.status.constants} +EXECUTE {banner.message} + + + +% BEGIN sort code based on unsrtnat.bst +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + { s } + if$ +} + +STRINGS { last.label next.extra } + +INTEGERS { last.extra.num } + +FUNCTION {format.lab.names} +{ 's := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ " " bbl.etal * * } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { " " bbl.etal * * } + { " " bbl.and * " " * * s #2 "{vv~}{ll}" format.name$ * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key } + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.label} +{ author empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.institution.label} +{ author empty$ + { key empty$ + { organization empty$ + { institution empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 institution chop.word #3 text.prefix$ } + if$ + } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.organization.label} +{ editor empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key } + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.label} +{ type$ "book" = + type$ "inbook" = + or + { author.editor.key.label } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.key.organization.label } + { type$ "manual" = + type$ "electronic" = + type$ "misc" = + or or + { author.key.organization.label } + { type$ "standard" = + { author.key.organization.institution.label } + { author.key.label } + if$ + } + if$ + } + if$ + } + if$ + duplicate$ + 'short.list := + "(" + * + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + duplicate$ + empty$ + short.list key empty.field.to.null.string = or + { pop$ "" } + { skip$ } + if$ + * + 'label := +} + + +INTEGERS { seq.num } + +FUNCTION {init.seq} +{ #0 'seq.num :=} + + +FUNCTION {int.to.fix} +{ "000000000" swap$ int.to.str$ * + #-1 #10 substring$ +} + + +FUNCTION {presort} +{ type$ "ieeetranbstctl" = + { key empty$ + { "_" } + { key sortify } + if$ + " " + * + seq.num int.to.fix + } + { calc.label + label sortify + " " + * + seq.num #1 + 'seq.num := + seq.num int.to.fix + } + if$ + 'sort.label := + sort.label * + #1 entry.max$ substring$ + 'sort.key$ := +} + + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'longest.label.width := + #0 'last.extra.num := + #0 'number.label := +} + +FUNCTION {forward.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := + } + if$ +} + +FUNCTION {reverse.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { next.extra "b" = + { "a" 'extra.label := } + { skip$ } + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + { skip$ } + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := + } + if$ +} + +FUNCTION {bib.sort.order} +{ sort.label 'sort.key$ := +} +% END sort code based on unsrtnat.bst + + + +EXECUTE {init.seq} + +ITERATE {presort} + +SORT + +EXECUTE {initialize.longest.label} + +ITERATE {forward.pass} +REVERSE {reverse.pass} + +ITERATE {bib.sort.order} + +SORT + +EXECUTE {begin.bib} +ITERATE {call.type$} +EXECUTE {end.bib} + +EXECUTE{completed.message} + + +%% That's all folks, mds. diff --git a/IEEEtran/bibtex/IEEEtranS.bst b/IEEEtran/bibtex/IEEEtranS.bst new file mode 100644 index 0000000..b9c2c64 --- /dev/null +++ b/IEEEtran/bibtex/IEEEtranS.bst @@ -0,0 +1,2607 @@ +%% +%% IEEEtranS.bst +%% BibTeX Bibliography Style file +%% Sorting version of IEEEtran.bst +%% *** Not for normal IEEE work *** +%% Version 1.14 (2015/08/26) +%% +%% Copyright (c) 2003-2015 Michael Shell +%% +%% Original starting code base and algorithms obtained from the output of +%% Patrick W. Daly's makebst package as well as from prior versions of +%% IEEE BibTeX styles: +%% +%% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988) +%% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993) +%% +%% Added sorting code is from plain.bst. +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and/or +%% http://www.ieee.org/ +%% +%% For use with BibTeX version 0.99a or later +%% +%% This is a numerical citation style. +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% These are the defaults for the user adjustable controls. The values used +% here can be overridden by the user via IEEEtranBSTCTL entry type. + +% NOTE: The recommended LaTeX command to invoke a control entry type is: +% +%\makeatletter +%\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +%\def\@bstctlcite[#1]#2{\@bsphack +% \@for\@citeb:=#2\do{% +% \edef\@citeb{\expandafter\@firstofone\@citeb}% +% \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% +% \@esphack} +%\makeatother +% +% It is called at the start of the document, before the first \cite, like: +% \bstctlcite{IEEEexample:BSTcontrol} +% +% IEEEtran.cls V1.6 and later does provide this command. + + + +% #0 turns off the display of the number for articles. +% #1 enables +FUNCTION {default.is.use.number.for.article} { #1 } + + +% #0 turns off the display of the paper and type fields in @inproceedings. +% #1 enables +FUNCTION {default.is.use.paper} { #1 } + + +% #0 turns off the display of urls +% #1 enables +FUNCTION {default.is.use.url} { #1 } + + +% #0 turns off the forced use of "et al." +% #1 enables +FUNCTION {default.is.forced.et.al} { #0 } + + +% The maximum number of names that can be present beyond which an "et al." +% usage is forced. Be sure that num.names.shown.with.forced.et.al (below) +% is not greater than this value! +% Note: There are many instances of references in IEEE journals which have +% a very large number of authors as well as instances in which "et al." is +% used profusely. +FUNCTION {default.max.num.names.before.forced.et.al} { #10 } + + +% The number of names that will be shown with a forced "et al.". +% Must be less than or equal to max.num.names.before.forced.et.al +FUNCTION {default.num.names.shown.with.forced.et.al} { #1 } + + +% #0 turns off the alternate interword spacing for entries with URLs. +% #1 enables +FUNCTION {default.is.use.alt.interword.spacing} { #1 } + + +% If alternate interword spacing for entries with URLs is enabled, this is +% the interword spacing stretch factor that will be used. For example, the +% default "4" here means that the interword spacing in entries with URLs can +% stretch to four times normal. Does not have to be an integer. Note that +% the value specified here can be overridden by the user in their LaTeX +% code via a command such as: +% "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to +% that via the IEEEtranBSTCTL entry type. +FUNCTION {default.ALTinterwordstretchfactor} { "4" } + + +% #0 turns off the "dashification" of repeated (i.e., identical to those +% of the previous entry) names. The IEEE normally does this. +% #1 enables +FUNCTION {default.is.dash.repeated.names} { #1 } + + +% The default name format control string. +FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" } + + +% The default LaTeX font command for the names. +FUNCTION {default.name.latex.cmd}{ "" } + + +% The default URL prefix. +FUNCTION {default.name.url.prefix}{ "[Online]. Available:" } + + +% Other controls that cannot be accessed via IEEEtranBSTCTL entry type. + +% #0 turns off the terminal startup banner/completed message so as to +% operate more quietly. +% #1 enables +FUNCTION {is.print.banners.to.terminal} { #1 } + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% FILE VERSION AND BANNER %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION{bst.file.version} { "1.14" } +FUNCTION{bst.file.date} { "2015/08/26" } +FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" } + +FUNCTION {banner.message} +{ is.print.banners.to.terminal + { "-- IEEEtranS.bst version" " " * bst.file.version * + " (" * bst.file.date * ") " * "by Michael Shell." * + top$ + "-- " bst.file.website * + top$ + "-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." * + top$ + "** Sorting version - not for normal IEEE work." + top$ + } + { skip$ } + if$ +} + +FUNCTION {completed.message} +{ is.print.banners.to.terminal + { "" + top$ + "Done." + top$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING CONSTANTS %% +%%%%%%%%%%%%%%%%%%%%%% +FUNCTION {bbl.a}{ "A" } +FUNCTION {bbl.an}{ "An" } +FUNCTION {bbl.and}{ "and" } +FUNCTION {bbl.etal}{ "et~al." } +FUNCTION {bbl.editors}{ "eds." } +FUNCTION {bbl.editor}{ "ed." } +FUNCTION {bbl.edition}{ "ed." } +FUNCTION {bbl.volume}{ "vol." } +FUNCTION {bbl.of}{ "of" } +FUNCTION {bbl.number}{ "no." } +FUNCTION {bbl.in}{ "in" } +FUNCTION {bbl.pages}{ "pp." } +FUNCTION {bbl.page}{ "p." } +FUNCTION {bbl.chapter}{ "ch." } +FUNCTION {bbl.paper}{ "paper" } +FUNCTION {bbl.part}{ "pt." } +FUNCTION {bbl.patent}{ "Patent" } +FUNCTION {bbl.patentUS}{ "U.S." } +FUNCTION {bbl.revision}{ "Rev." } +FUNCTION {bbl.series}{ "ser." } +FUNCTION {bbl.standard}{ "Std." } +FUNCTION {bbl.techrep}{ "Tech. Rep." } +FUNCTION {bbl.the}{ "The" } +FUNCTION {bbl.mthesis}{ "Master's thesis" } +FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" } +FUNCTION {bbl.st}{ "st" } +FUNCTION {bbl.nd}{ "nd" } +FUNCTION {bbl.rd}{ "rd" } +FUNCTION {bbl.th}{ "th" } + + +% This is the LaTeX spacer that is used when a larger than normal space +% is called for (such as just before the address:publisher). +FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " } + +% The LaTeX code for dashes that are used to represent repeated names. +% Note: Some older IEEE journals used something like +% "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along +% the baseline. However, the IEEE now uses a thinner, above baseline, +% six dash long sequence. +FUNCTION {repeated.name.dashes} { "------" } + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% PREDEFINED STRING MACROS %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +MACRO {jan} {"Jan."} +MACRO {feb} {"Feb."} +MACRO {mar} {"Mar."} +MACRO {apr} {"Apr."} +MACRO {may} {"May"} +MACRO {jun} {"Jun."} +MACRO {jul} {"Jul."} +MACRO {aug} {"Aug."} +MACRO {sep} {"Sep."} +MACRO {oct} {"Oct."} +MACRO {nov} {"Nov."} +MACRO {dec} {"Dec."} + + + +%%%%%%%%%%%%%%%%%% +%% ENTRY FIELDS %% +%%%%%%%%%%%%%%%%%% + +ENTRY + { address + assignee + author + booktitle + chapter + day + dayfiled + edition + editor + howpublished + institution + intype + journal + key + language + month + monthfiled + nationality + note + number + organization + pages + paper + publisher + school + series + revision + title + type + url + volume + year + yearfiled + CTLuse_article_number + CTLuse_paper + CTLuse_url + CTLuse_forced_etal + CTLmax_names_forced_etal + CTLnames_show_etal + CTLuse_alt_spacing + CTLalt_stretch_factor + CTLdash_repeated_names + CTLname_format_string + CTLname_latex_cmd + CTLname_url_prefix + } + {} + { label } + + + + +%%%%%%%%%%%%%%%%%%%%%%% +%% INTEGER VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%%% + +INTEGERS { prev.status.punct this.status.punct punct.std + punct.no punct.comma punct.period + prev.status.space this.status.space space.std + space.no space.normal space.large + prev.status.quote this.status.quote quote.std + quote.no quote.close + prev.status.nline this.status.nline nline.std + nline.no nline.newblock + status.cap cap.std + cap.no cap.yes} + +INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames } + +INTEGERS { is.use.number.for.article + is.use.paper + is.use.url + is.forced.et.al + max.num.names.before.forced.et.al + num.names.shown.with.forced.et.al + is.use.alt.interword.spacing + is.dash.repeated.names} + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%% + +STRINGS { bibinfo + longest.label + oldname + s + t + ALTinterwordstretchfactor + name.format.string + name.latex.cmd + name.url.prefix} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOW LEVEL FUNCTIONS %% +%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.controls} +{ default.is.use.number.for.article 'is.use.number.for.article := + default.is.use.paper 'is.use.paper := + default.is.use.url 'is.use.url := + default.is.forced.et.al 'is.forced.et.al := + default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al := + default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al := + default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing := + default.is.dash.repeated.names 'is.dash.repeated.names := + default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor := + default.name.format.string 'name.format.string := + default.name.latex.cmd 'name.latex.cmd := + default.name.url.prefix 'name.url.prefix := +} + + +% This IEEEtran.bst features a very powerful and flexible mechanism for +% controlling the capitalization, punctuation, spacing, quotation, and +% newlines of the formatted entry fields. (Note: IEEEtran.bst does not need +% or use the newline/newblock feature, but it has been implemented for +% possible future use.) The output states of IEEEtran.bst consist of +% multiple independent attributes and, as such, can be thought of as being +% vectors, rather than the simple scalar values ("before.all", +% "mid.sentence", etc.) used in most other .bst files. +% +% The more flexible and complex design used here was motivated in part by +% the IEEE's rather unusual bibliography style. For example, the IEEE ends the +% previous field item with a period and large space prior to the publisher +% address; the @electronic entry types use periods as inter-item punctuation +% rather than the commas used by the other entry types; and URLs are never +% followed by periods even though they are the last item in the entry. +% Although it is possible to accommodate these features with the conventional +% output state system, the seemingly endless exceptions make for convoluted, +% unreliable and difficult to maintain code. +% +% IEEEtran.bst's output state system can be easily understood via a simple +% illustration of two most recently formatted entry fields (on the stack): +% +% CURRENT_ITEM +% "PREVIOUS_ITEM +% +% which, in this example, is to eventually appear in the bibliography as: +% +% "PREVIOUS_ITEM," CURRENT_ITEM +% +% It is the job of the output routine to take the previous item off of the +% stack (while leaving the current item at the top of the stack), apply its +% trailing punctuation (including closing quote marks) and spacing, and then +% to write the result to BibTeX's output buffer: +% +% "PREVIOUS_ITEM," +% +% Punctuation (and spacing) between items is often determined by both of the +% items rather than just the first one. The presence of quotation marks +% further complicates the situation because, in standard English, trailing +% punctuation marks are supposed to be contained within the quotes. +% +% IEEEtran.bst maintains two output state (aka "status") vectors which +% correspond to the previous and current (aka "this") items. Each vector +% consists of several independent attributes which track punctuation, +% spacing, quotation, and newlines. Capitalization status is handled by a +% separate scalar because the format routines, not the output routine, +% handle capitalization and, therefore, there is no need to maintain the +% capitalization attribute for both the "previous" and "this" items. +% +% When a format routine adds a new item, it copies the current output status +% vector to the previous output status vector and (usually) resets the +% current (this) output status vector to a "standard status" vector. Using a +% "standard status" vector in this way allows us to redefine what we mean by +% "standard status" at the start of each entry handler and reuse the same +% format routines under the various inter-item separation schemes. For +% example, the standard status vector for the @book entry type may use +% commas for item separators, while the @electronic type may use periods, +% yet both entry handlers exploit many of the exact same format routines. +% +% Because format routines have write access to the output status vector of +% the previous item, they can override the punctuation choices of the +% previous format routine! Therefore, it becomes trivial to implement rules +% such as "Always use a period and a large space before the publisher." By +% pushing the generation of the closing quote mark to the output routine, we +% avoid all the problems caused by having to close a quote before having all +% the information required to determine what the punctuation should be. +% +% The IEEEtran.bst output state system can easily be expanded if needed. +% For instance, it is easy to add a "space.tie" attribute value if the +% bibliography rules mandate that two items have to be joined with an +% unbreakable space. + +FUNCTION {initialize.status.constants} +{ #0 'punct.no := + #1 'punct.comma := + #2 'punct.period := + #0 'space.no := + #1 'space.normal := + #2 'space.large := + #0 'quote.no := + #1 'quote.close := + #0 'cap.no := + #1 'cap.yes := + #0 'nline.no := + #1 'nline.newblock := +} + +FUNCTION {std.status.using.comma} +{ punct.comma 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.no 'cap.std := +} + +FUNCTION {std.status.using.period} +{ punct.period 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.yes 'cap.std := +} + +FUNCTION {initialize.prev.this.status} +{ punct.no 'prev.status.punct := + space.no 'prev.status.space := + quote.no 'prev.status.quote := + nline.no 'prev.status.nline := + punct.no 'this.status.punct := + space.no 'this.status.space := + quote.no 'this.status.quote := + nline.no 'this.status.nline := + cap.yes 'status.cap := +} + +FUNCTION {this.status.std} +{ punct.std 'this.status.punct := + space.std 'this.status.space := + quote.std 'this.status.quote := + nline.std 'this.status.nline := +} + +FUNCTION {cap.status.std}{ cap.std 'status.cap := } + +FUNCTION {this.to.prev.status} +{ this.status.punct 'prev.status.punct := + this.status.space 'prev.status.space := + this.status.quote 'prev.status.quote := + this.status.nline 'prev.status.nline := +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ { skip$ } + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + { skip$ } + if$ +} + + +% convert the strings "yes" or "no" to #1 or #0 respectively +FUNCTION {yes.no.to.int} +{ "l" change.case$ duplicate$ + "yes" = + { pop$ #1 } + { duplicate$ "no" = + { pop$ #0 } + { "unknown boolean " quote$ * swap$ * quote$ * + " in " * cite$ * warning$ + #0 + } + if$ + } + if$ +} + + +% pushes true if the single char string on the stack is in the +% range of "0" to "9" +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +% multiplies the integer on the stack by a factor of 10 +FUNCTION {bump.int.mag} +{ #0 'multiresult := + { duplicate$ #0 > } + { #1 - + multiresult #10 + + 'multiresult := + } + while$ +pop$ +multiresult +} + +% converts a single character string on the stack to an integer +FUNCTION {char.to.integer} +{ duplicate$ + is.num + { chr.to.int$ "0" chr.to.int$ - } + {"noninteger character " quote$ * swap$ * quote$ * + " in integer field of " * cite$ * warning$ + #0 + } + if$ +} + +% converts a string on the stack to an integer +FUNCTION {string.to.integer} +{ duplicate$ text.length$ 'namesleft := + #1 'nameptr := + #0 'numnames := + { nameptr namesleft > not } + { duplicate$ nameptr #1 substring$ + char.to.integer numnames bump.int.mag + + 'numnames := + nameptr #1 + + 'nameptr := + } + while$ +pop$ +numnames +} + + + + +% The output routines write out the *next* to the top (previous) item on the +% stack, adding punctuation and such as needed. Since IEEEtran.bst maintains +% the output status for the top two items on the stack, these output +% routines have to consider the previous output status (which corresponds to +% the item that is being output). Full independent control of punctuation, +% closing quote marks, spacing, and newblock is provided. +% +% "output.nonnull" does not check for the presence of a previous empty +% item. +% +% "output" does check for the presence of a previous empty item and will +% remove an empty item rather than outputing it. +% +% "output.warn" is like "output", but will issue a warning if it detects +% an empty item. + +FUNCTION {output.nonnull} +{ swap$ + prev.status.punct punct.comma = + { "," * } + { skip$ } + if$ + prev.status.punct punct.period = + { add.period$ } + { skip$ } + if$ + prev.status.quote quote.close = + { "''" * } + { skip$ } + if$ + prev.status.space space.normal = + { " " * } + { skip$ } + if$ + prev.status.space space.large = + { large.space * } + { skip$ } + if$ + write$ + prev.status.nline nline.newblock = + { newline$ "\newblock " write$ } + { skip$ } + if$ +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.warn} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +% "fin.entry" is the output routine that handles the last item of the entry +% (which will be on the top of the stack when "fin.entry" is called). + +FUNCTION {fin.entry} +{ this.status.punct punct.no = + { skip$ } + { add.period$ } + if$ + this.status.quote quote.close = + { "''" * } + { skip$ } + if$ +write$ +newline$ +} + + +FUNCTION {is.last.char.not.punct} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {is.multiple.pages} +{ '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 {capitalize}{ "u" change.case$ "t" change.case$ } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +FUNCTION {do.name.latex.cmd} +{ name.latex.cmd + empty$ + { skip$ } + { name.latex.cmd "{" * swap$ * "}" * } + if$ +} + +% IEEEtran.bst uses its own \BIBforeignlanguage command which directly +% invokes the TeX hyphenation patterns without the need of the Babel +% package. Babel does a lot more than switch hyphenation patterns and +% its loading can cause unintended effects in many class files (such as +% IEEEtran.cls). +FUNCTION {select.language} +{ duplicate$ empty$ 'pop$ + { language empty$ 'skip$ + { "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * } + if$ + } + if$ +} + +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {space.word}{ " " swap$ * " " * } + + +% Field Conditioners, Converters, Checkers and External Interfaces + +FUNCTION {empty.field.to.null.string} +{ duplicate$ empty$ + { pop$ "" } + { skip$ } + if$ +} + +FUNCTION {either.or.check} +{ empty$ + { pop$ } + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {empty.entry.warn} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ url empty$ + and and and and and and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + + +% The bibinfo system provides a way for the electronic parsing/acquisition +% of a bibliography's contents as is done by ReVTeX. For example, a field +% could be entered into the bibliography as: +% \bibinfo{volume}{2} +% Only the "2" would show up in the document, but the LaTeX \bibinfo command +% could do additional things with the information. IEEEtran.bst does provide +% a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is +% currently not used as the bogus bibinfo functions defined here output the +% entry values directly without the \bibinfo wrapper. The bibinfo functions +% themselves (and the calls to them) are retained for possible future use. +% +% bibinfo.check avoids acting on missing fields while bibinfo.warn will +% issue a warning message if a missing field is detected. Prior to calling +% the bibinfo functions, the user should push the field value and then its +% name string, in that order. + +FUNCTION {bibinfo.check} +{ swap$ duplicate$ missing$ + { pop$ pop$ "" } + { duplicate$ empty$ + { swap$ pop$ } + { swap$ pop$ } + if$ + } + if$ +} + +FUNCTION {bibinfo.warn} +{ swap$ duplicate$ missing$ + { swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" } + { duplicate$ empty$ + { swap$ "empty " swap$ * " in " * cite$ * warning$ } + { swap$ pop$ } + if$ + } + if$ +} + + +% The IEEE separates large numbers with more than 4 digits into groups of +% three. The IEEE uses a small space to separate these number groups. +% Typical applications include patent and page numbers. + +% number of consecutive digits required to trigger the group separation. +FUNCTION {large.number.trigger}{ #5 } + +% For numbers longer than the trigger, this is the blocksize of the groups. +% The blocksize must be less than the trigger threshold, and 2 * blocksize +% must be greater than the trigger threshold (can't do more than one +% separation on the initial trigger). +FUNCTION {large.number.blocksize}{ #3 } + +% What is actually inserted between the number groups. +FUNCTION {large.number.separator}{ "\," } + +% So as to save on integer variables by reusing existing ones, numnames +% holds the current number of consecutive digits read and nameptr holds +% the number that will trigger an inserted space. +FUNCTION {large.number.separate} +{ 't := + "" + #0 'numnames := + large.number.trigger 'nameptr := + { t empty$ not } + { t #-1 #1 substring$ is.num + { numnames #1 + 'numnames := } + { #0 'numnames := + large.number.trigger 'nameptr := + } + if$ + t #-1 #1 substring$ swap$ * + t #-2 global.max$ substring$ 't := + numnames nameptr = + { duplicate$ #1 nameptr large.number.blocksize - substring$ swap$ + nameptr large.number.blocksize - #1 + global.max$ substring$ + large.number.separator swap$ * * + nameptr large.number.blocksize - 'numnames := + large.number.blocksize #1 + 'nameptr := + } + { skip$ } + if$ + } + while$ +} + +% Converts all single dashes "-" to double dashes "--". +FUNCTION {n.dashify} +{ large.number.separate + '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$ +} + + +% This function detects entries with names that are identical to that of +% the previous entry and replaces the repeated names with dashes (if the +% "is.dash.repeated.names" user control is nonzero). +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = + { is.dash.repeated.names + { repeated.name.dashes } + { s 'oldname := s } + if$ + } + { s 'oldname := s } + if$ + } + if$ +} + +% Converts the number string on the top of the stack to +% "numerical ordinal form" (e.g., "7" to "7th"). There is +% no artificial limit to the upper bound of the numbers as the +% two least significant digits determine the ordinal form. +FUNCTION {num.to.ordinal} +{ duplicate$ #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ "1" = + { bbl.st * } + { duplicate$ #-1 #1 substring$ "2" = + { bbl.nd * } + { duplicate$ #-1 #1 substring$ "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +% If the string on the top of the stack begins with a number, +% (e.g., 11th) then replace the string with the leading number +% it contains. Otherwise retain the string as-is. s holds the +% extracted number, t holds the part of the string that remains +% to be scanned. +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +% Converts the word number string on the top of the stack to +% Arabic string form. Will be successful up to "tenth". +FUNCTION {word.to.num} +{ duplicate$ "l" change.case$ 's := + s "first" = + { pop$ "1" } + { skip$ } + if$ + s "second" = + { pop$ "2" } + { skip$ } + if$ + s "third" = + { pop$ "3" } + { skip$ } + if$ + s "fourth" = + { pop$ "4" } + { skip$ } + if$ + s "fifth" = + { pop$ "5" } + { skip$ } + if$ + s "sixth" = + { pop$ "6" } + { skip$ } + if$ + s "seventh" = + { pop$ "7" } + { skip$ } + if$ + s "eighth" = + { pop$ "8" } + { skip$ } + if$ + s "ninth" = + { pop$ "9" } + { skip$ } + if$ + s "tenth" = + { pop$ "10" } + { skip$ } + if$ +} + + +% Converts the string on the top of the stack to numerical +% ordinal (e.g., "11th") form. +FUNCTION {convert.edition} +{ duplicate$ empty$ 'skip$ + { duplicate$ #1 #1 substring$ is.num + { extract.num + num.to.ordinal + } + { word.to.num + duplicate$ #1 #1 substring$ is.num + { num.to.ordinal } + { "edition ordinal word " quote$ * edition * quote$ * + " may be too high (or improper) for conversion" * " in " * cite$ * warning$ + } + if$ + } + if$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LATEX BIBLIOGRAPHY CODE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {start.entry} +{ newline$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + initialize.prev.this.status +} + +% Here we write out all the LaTeX code that we will need. The most involved +% code sequences are those that control the alternate interword spacing and +% foreign language hyphenation patterns. The heavy use of \providecommand +% gives users a way to override the defaults. Special thanks to Javier Bezos, +% Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all +% the other gurus on comp.text.tex for their help and advice on the topic of +% \selectlanguage, Babel and BibTeX. +FUNCTION {begin.bib} +{ "% Generated by IEEEtranS.bst, version: " bst.file.version * " (" * bst.file.date * ")" * + write$ newline$ + preamble$ empty$ 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * + write$ newline$ + "\providecommand{\url}[1]{#1}" + write$ newline$ + "\csname url@samestyle\endcsname" + write$ newline$ + "\providecommand{\newblock}{\relax}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}" + write$ newline$ + "\providecommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + "\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus " + write$ newline$ + "\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}" + write$ newline$ + "\providecommand{\BIBforeignlanguage}[2]{{%" + write$ newline$ + "\expandafter\ifx\csname l@#1\endcsname\relax" + write$ newline$ + "\typeout{** WARNING: IEEEtranS.bst: No hyphenation pattern has been}%" + write$ newline$ + "\typeout{** loaded for the language `#1'. Using the pattern for}%" + write$ newline$ + "\typeout{** the default language instead.}%" + write$ newline$ + "\else" + write$ newline$ + "\language=\csname l@#1\endcsname" + write$ newline$ + "\fi" + write$ newline$ + "#2}}" + write$ newline$ + "\providecommand{\BIBdecl}{\relax}" + write$ newline$ + "\BIBdecl" + write$ newline$ +} + +FUNCTION {end.bib} +{ newline$ "\end{thebibliography}" write$ newline$ } + +FUNCTION {if.url.alt.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + +FUNCTION {if.url.std.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%% +%% LONGEST LABEL PASS %% +%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { 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$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%% +%% FORMAT HANDLERS %% +%%%%%%%%%%%%%%%%%%%%% + +%% Lower Level Formats (used by higher level formats) + +FUNCTION {format.address.org.or.pub.date} +{ 't := + "" + year empty$ + { "empty year in " cite$ * warning$ } + { skip$ } + if$ + address empty$ t empty$ and + year empty$ and month empty$ and + { skip$ } + { this.to.prev.status + this.status.std + cap.status.std + address "address" bibinfo.check * + t empty$ + { skip$ } + { punct.period 'prev.status.punct := + space.large 'prev.status.space := + address empty$ + { skip$ } + { ": " * } + if$ + t * + } + if$ + year empty$ month empty$ and + { skip$ } + { t empty$ address empty$ and + { skip$ } + { ", " * } + if$ + month empty$ + { year empty$ + { skip$ } + { year "year" bibinfo.check * } + if$ + } + { month "month" bibinfo.check * + year empty$ + { skip$ } + { " " * year "year" bibinfo.check * } + if$ + } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + this.to.prev.status + this.status.std + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + name.format.string + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { nameptr num.names.shown.with.forced.et.al #1 + = + numnames max.num.names.before.forced.et.al > + is.forced.et.al and and + { "others" 't := + #1 'namesleft := + } + { skip$ } + if$ + namesleft #1 > + { ", " * t do.name.latex.cmd * } + { s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { " " * bbl.etal emphasize * } + { numnames #2 > + { "," * } + { skip$ } + if$ + bbl.and + space.word * t do.name.latex.cmd * + } + if$ + } + if$ + } + { t do.name.latex.cmd } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + cap.status.std + } if$ +} + + + + +%% Higher Level Formats + +%% addresses/locations + +FUNCTION {format.address} +{ address duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% author/editor names + +FUNCTION {format.authors}{ author "author" format.names } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { ", " * + get.bbl.editor + capitalize + * + } + if$ +} + + + +%% date + +FUNCTION {format.date} +{ + month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { this.to.prev.status + this.status.std + cap.status.std + swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ +} + +FUNCTION {format.date.electronic} +{ month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ + { pop$ } + { "there's a month but no year in " cite$ * warning$ + pop$ ")" * "(" swap$ * + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ + } + { swap$ + { swap$ pop$ ")" * "(" swap$ * } + { "(" swap$ * ", " * swap$ * ")" * } + if$ + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ +} + + + +%% edition/title + +% Note: The IEEE considers the edition to be closely associated with +% the title of a book. So, in IEEEtran.bst the edition is normally handled +% within the formatting of the title. The format.edition function is +% retained here for possible future use. +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + convert.edition + status.cap + { "t" } + { "l" } + if$ change.case$ + "edition" bibinfo.check + "~" * bbl.edition * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of a conference proceedings. +% Here we use the "intype" field to provide the user a way to +% override the word "in" (e.g., with things like "presented at") +% Use of intype stops the emphasis of the booktitle to indicate that +% we no longer mean the written conference proceedings, but the +% conference itself. +FUNCTION {format.in.booktitle} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + intype missing$ + { emphasize + bbl.in " " * + } + { intype " " * } + if$ + swap$ * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of collection. +% Here the "intype" field is not supported, but "edition" is. +FUNCTION {format.in.booktitle.edition} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + "l" change.case$ + * "~" * bbl.edition * + } + if$ + bbl.in " " * swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { quote.close 'this.status.quote := + is.last.char.not.punct + { punct.std 'this.status.punct := } + { punct.no 'this.status.punct := } + if$ + select.language + "``" swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title.electronic} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ + { skip$ } + { select.language } + if$ +} + +FUNCTION {format.book.title.edition} +{ title "title" bibinfo.check + duplicate$ empty$ + { "empty title in " cite$ * warning$ } + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + status.cap + { "t" } + { "l" } + if$ + change.case$ + * "~" * bbl.edition * + } + if$ + cap.status.std + } + if$ +} + +FUNCTION {format.book.title} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% journal + +FUNCTION {format.journal} +{ journal duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% how published + +FUNCTION {format.howpublished} +{ howpublished duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% institutions/organization/publishers/school + +FUNCTION {format.institution} +{ institution duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.organization} +{ organization duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.address.publisher.date} +{ publisher "publisher" bibinfo.warn format.address.org.or.pub.date } + +FUNCTION {format.address.publisher.date.nowarn} +{ publisher "publisher" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.address.organization.date} +{ organization "organization" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.school} +{ school duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% volume/number/series/chapter/pages + +FUNCTION {format.volume} +{ volume empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + bbl.volume + status.cap + { capitalize } + { skip$ } + if$ + swap$ tie.or.space.prefix + "volume" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number} +{ number empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + status.cap + { bbl.number capitalize } + { bbl.number } + if$ + swap$ tie.or.space.prefix + "number" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number.if.use.for.article} +{ is.use.number.for.article + { format.number } + { "" } + if$ +} + +% The IEEE does not seem to tie the series so closely with the volume +% and number as is done in other bibliography styles. Instead the +% series is treated somewhat like an extension of the title. +FUNCTION {format.series} +{ series empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.series " " * + series "series" bibinfo.check * + cap.status.std + } + if$ +} + + +FUNCTION {format.chapter} +{ chapter empty$ + { "" } + { this.to.prev.status + this.status.std + type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + cap.status.std + } + if$ +} + + +% The intended use of format.paper is for paper numbers of inproceedings. +% The paper type can be overridden via the type field. +% We allow the type to be displayed even if the paper number is absent +% for things like "postdeadline paper" +FUNCTION {format.paper} +{ is.use.paper + { paper empty$ + { type empty$ + { "" } + { this.to.prev.status + this.status.std + type "type" bibinfo.check + cap.status.std + } + if$ + } + { this.to.prev.status + this.status.std + type empty$ + { bbl.paper } + { type "type" bibinfo.check } + if$ + " " * paper + "paper" bibinfo.check + * + cap.status.std + } + if$ + } + { "" } + if$ +} + + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + duplicate$ is.multiple.pages + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + cap.status.std + } + if$ +} + + + +%% technical report number + +FUNCTION {format.tech.report.number} +{ number "number" bibinfo.check + this.to.prev.status + this.status.std + cap.status.std + type duplicate$ empty$ + { pop$ + bbl.techrep + } + { skip$ } + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ } + { tie.or.space.prefix * * } + if$ +} + + + +%% note + +FUNCTION {format.note} +{ note empty$ + { "" } + { this.to.prev.status + this.status.std + punct.period 'this.status.punct := + note #1 #1 substring$ + duplicate$ "{" = + { skip$ } + { status.cap + { "u" } + { "l" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + cap.yes 'status.cap := + } + if$ +} + + + +%% patent + +FUNCTION {format.patent.date} +{ this.to.prev.status + this.status.std + year empty$ + { monthfiled duplicate$ empty$ + { "monthfiled" bibinfo.check pop$ "" } + { "monthfiled" bibinfo.check } + if$ + dayfiled duplicate$ empty$ + { "dayfiled" bibinfo.check pop$ "" * } + { "dayfiled" bibinfo.check + monthfiled empty$ + { "dayfiled without a monthfiled in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + yearfiled empty$ + { "no year or yearfiled in " cite$ * warning$ } + { yearfiled "yearfiled" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + } + { month duplicate$ empty$ + { "month" bibinfo.check pop$ "" } + { "month" bibinfo.check } + if$ + day duplicate$ empty$ + { "day" bibinfo.check pop$ "" * } + { "day" bibinfo.check + month empty$ + { "day without a month in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + year "year" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + cap.status.std +} + +FUNCTION {format.patent.nationality.type.number} +{ this.to.prev.status + this.status.std + nationality duplicate$ empty$ + { "nationality" bibinfo.warn pop$ "" } + { "nationality" bibinfo.check + duplicate$ "l" change.case$ "united states" = + { pop$ bbl.patentUS } + { skip$ } + if$ + " " * + } + if$ + type empty$ + { bbl.patent "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.warn pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + + + +%% standard + +FUNCTION {format.organization.institution.standard.type.number} +{ this.to.prev.status + this.status.std + organization duplicate$ empty$ + { pop$ + institution duplicate$ empty$ + { "institution" bibinfo.warn } + { "institution" bibinfo.warn " " * } + if$ + } + { "organization" bibinfo.warn " " * } + if$ + type empty$ + { bbl.standard "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.check pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + +FUNCTION {format.revision} +{ revision empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.revision + revision tie.or.space.prefix + "revision" bibinfo.check + * * + cap.status.std + } + if$ +} + + +%% thesis + +FUNCTION {format.master.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.mthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + +FUNCTION {format.phd.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.phdthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + + + +%% URL +%% +FUNCTION {format.url} +{ is.use.url + { url empty$ + { "" } + { this.to.prev.status + this.status.std + cap.yes 'status.cap := + name.url.prefix " " * + "\url{" * url * "}" * + punct.no 'this.status.punct := + punct.period 'prev.status.punct := + space.normal 'this.status.space := + space.normal 'prev.status.space := + quote.no 'this.status.quote := + } + if$ + } + { "" } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%% +%% ENTRY HANDLERS %% +%%%%%%%%%%%%%%%%%%%% + + +% Note: In many journals, the IEEE (or the authors) tend not to show the number +% for articles, so the display of the number is controlled here by the +% switch "is.use.number.for.article" +FUNCTION {article} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.journal "journal" bibinfo.check "journal" output.warn + format.volume output + format.number.if.use.for.article output + format.pages output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {book} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + author empty$ + { skip$ } + { format.editors output } + if$ + format.address.publisher.date output + format.volume output + format.number output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {booklet} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {electronic} +{ std.status.using.period + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.date.electronic output + format.article.title.electronic output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {inbook} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + format.address.publisher.date output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {incollection} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle.edition "booktitle" output.warn + format.series output + format.editors output + format.address.publisher.date.nowarn output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {inproceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle "booktitle" output.warn + format.series output + format.editors output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.paper output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {manual} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title.edition "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {mastersthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.master.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {misc} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.pages output + format.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {patent} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.patent.nationality.type.number output + format.patent.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {periodical} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + format.organization "organization" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {phdthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.phd.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {proceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {standard} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization.institution.standard.type.number output + format.revision output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {techreport} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.institution "institution" bibinfo.warn output + format.address "address" bibinfo.check output + format.tech.report.number output.nonnull + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {unpublished} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.date output + format.note "note" output.warn + format.url output + fin.entry + if.url.std.interword.spacing +} + + +% The special entry type which provides the user interface to the +% BST controls +FUNCTION {IEEEtranBSTCTL} +{ is.print.banners.to.terminal + { "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." * + top$ + } + { skip$ } + if$ + CTLuse_article_number + empty$ + { skip$ } + { CTLuse_article_number + yes.no.to.int + 'is.use.number.for.article := + } + if$ + CTLuse_paper + empty$ + { skip$ } + { CTLuse_paper + yes.no.to.int + 'is.use.paper := + } + if$ + CTLuse_url + empty$ + { skip$ } + { CTLuse_url + yes.no.to.int + 'is.use.url := + } + if$ + CTLuse_forced_etal + empty$ + { skip$ } + { CTLuse_forced_etal + yes.no.to.int + 'is.forced.et.al := + } + if$ + CTLmax_names_forced_etal + empty$ + { skip$ } + { CTLmax_names_forced_etal + string.to.integer + 'max.num.names.before.forced.et.al := + } + if$ + CTLnames_show_etal + empty$ + { skip$ } + { CTLnames_show_etal + string.to.integer + 'num.names.shown.with.forced.et.al := + } + if$ + CTLuse_alt_spacing + empty$ + { skip$ } + { CTLuse_alt_spacing + yes.no.to.int + 'is.use.alt.interword.spacing := + } + if$ + CTLalt_stretch_factor + empty$ + { skip$ } + { CTLalt_stretch_factor + 'ALTinterwordstretchfactor := + "\renewcommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + } + if$ + CTLdash_repeated_names + empty$ + { skip$ } + { CTLdash_repeated_names + yes.no.to.int + 'is.dash.repeated.names := + } + if$ + CTLname_format_string + empty$ + { skip$ } + { CTLname_format_string + 'name.format.string := + } + if$ + CTLname_latex_cmd + empty$ + { skip$ } + { CTLname_latex_cmd + 'name.latex.cmd := + } + if$ + CTLname_url_prefix + missing$ + { skip$ } + { CTLname_url_prefix + 'name.url.prefix := + } + if$ + + + num.names.shown.with.forced.et.al max.num.names.before.forced.et.al > + { "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$ + max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al := + } + { skip$ } + if$ +} + + +%%%%%%%%%%%%%%%%%%% +%% ENTRY ALIASES %% +%%%%%%%%%%%%%%%%%%% +FUNCTION {conference}{inproceedings} +FUNCTION {online}{electronic} +FUNCTION {internet}{electronic} +FUNCTION {webpage}{electronic} +FUNCTION {www}{electronic} +FUNCTION {default.type}{misc} + + + +%%%%%%%%%%%%%%%%%% +%% MAIN PROGRAM %% +%%%%%%%%%%%%%%%%%% + +READ + +EXECUTE {initialize.controls} +EXECUTE {initialize.status.constants} +EXECUTE {banner.message} + + + +% BEGIN sort code based on that of plain.bst + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + { s } + if$ +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + { skip$ } + if$ + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + bbl.a " " * #2 + bbl.an " " * #3 + bbl.the " " * #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {author.organization.institution.sort} +{ author empty$ + { organization empty$ + { institution empty$ + { key empty$ + { "to sort, need author, organization, institution or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 institution chop.word sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + + +FUNCTION {presort} +{ type$ "ieeetranbstctl" = + { key empty$ + { "_" } + { key sortify } + if$ + } + { type$ "book" = + type$ "inbook" = + or + { author.editor.sort } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.organization.sort } + { type$ "manual" = + type$ "electronic" = + type$ "misc" = + or or + { author.organization.sort } + { type$ "standard" = + { author.organization.institution.sort } + { author.sort } + if$ + } + if$ + } + if$ + } + if$ + " " + * + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + empty.field.to.null.string sortify + * + " " + * + title empty.field.to.null.string + sort.format.title + * + } + if$ + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +% END sort code based on that of plain.bst + + + +EXECUTE {initialize.longest.label} +ITERATE {longest.label.pass} + +EXECUTE {begin.bib} +ITERATE {call.type$} +EXECUTE {end.bib} + +EXECUTE{completed.message} + + +%% That's all folks, mds. diff --git a/IEEEtran/bibtex/IEEEtranSA.bst b/IEEEtran/bibtex/IEEEtranSA.bst new file mode 100644 index 0000000..9918a69 --- /dev/null +++ b/IEEEtran/bibtex/IEEEtranSA.bst @@ -0,0 +1,2806 @@ +%% +%% IEEEtranSA.bst +%% BibTeX Bibliography Style file +%% Sorting alpha version of IEEEtran.bst +%% *** Not for normal IEEE work *** +%% Version 1.14 (2015/08/26) +%% +%% Copyright (c) 2003-2015 Michael Shell +%% +%% Original starting code base and algorithms obtained from the output of +%% Patrick W. Daly's makebst package as well as from prior versions of +%% IEEE BibTeX styles: +%% +%% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988) +%% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993) +%% +%% Added sorting code is from plain.bst, alpha code is from alpha.bst. +%% +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and/or +%% http://www.ieee.org/ +%% +%% For use with BibTeX version 0.99a or later +%% +%% This is an alpha citation style. +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% These are the defaults for the user adjustable controls. The values used +% here can be overridden by the user via IEEEtranBSTCTL entry type. + +% NOTE: The recommended LaTeX command to invoke a control entry type is: +% +%\makeatletter +%\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +%\def\@bstctlcite[#1]#2{\@bsphack +% \@for\@citeb:=#2\do{% +% \edef\@citeb{\expandafter\@firstofone\@citeb}% +% \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% +% \@esphack} +%\makeatother +% +% It is called at the start of the document, before the first \cite, like: +% \bstctlcite{IEEEexample:BSTcontrol} +% +% IEEEtran.cls V1.6 and later does provide this command. + + + +% #0 turns off the display of the number for articles. +% #1 enables +FUNCTION {default.is.use.number.for.article} { #1 } + + +% #0 turns off the display of the paper and type fields in @inproceedings. +% #1 enables +FUNCTION {default.is.use.paper} { #1 } + + +% #0 turns off the display of urls +% #1 enables +FUNCTION {default.is.use.url} { #1 } + + +% #0 turns off the forced use of "et al." +% #1 enables +FUNCTION {default.is.forced.et.al} { #0 } + + +% The maximum number of names that can be present beyond which an "et al." +% usage is forced. Be sure that num.names.shown.with.forced.et.al (below) +% is not greater than this value! +% Note: There are many instances of references in IEEE journals which have +% a very large number of authors as well as instances in which "et al." is +% used profusely. +FUNCTION {default.max.num.names.before.forced.et.al} { #10 } + + +% The number of names that will be shown with a forced "et al.". +% Must be less than or equal to max.num.names.before.forced.et.al +FUNCTION {default.num.names.shown.with.forced.et.al} { #1 } + + +% #0 turns off the alternate interword spacing for entries with URLs. +% #1 enables +FUNCTION {default.is.use.alt.interword.spacing} { #1 } + + +% If alternate interword spacing for entries with URLs is enabled, this is +% the interword spacing stretch factor that will be used. For example, the +% default "4" here means that the interword spacing in entries with URLs can +% stretch to four times normal. Does not have to be an integer. Note that +% the value specified here can be overridden by the user in their LaTeX +% code via a command such as: +% "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to +% that via the IEEEtranBSTCTL entry type. +FUNCTION {default.ALTinterwordstretchfactor} { "4" } + + +% #0 turns off the "dashification" of repeated (i.e., identical to those +% of the previous entry) names. The IEEE normally does this. +% #1 enables +FUNCTION {default.is.dash.repeated.names} { #1 } + + +% The default name format control string. +FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" } + + +% The default LaTeX font command for the names. +FUNCTION {default.name.latex.cmd}{ "" } + + +% The default URL prefix. +FUNCTION {default.name.url.prefix}{ "[Online]. Available:" } + + +% Other controls that cannot be accessed via IEEEtranBSTCTL entry type. + +% #0 turns off the terminal startup banner/completed message so as to +% operate more quietly. +% #1 enables +FUNCTION {is.print.banners.to.terminal} { #1 } + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% FILE VERSION AND BANNER %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION{bst.file.version} { "1.14" } +FUNCTION{bst.file.date} { "2015/08/26" } +FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" } + +FUNCTION {banner.message} +{ is.print.banners.to.terminal + { "-- IEEEtranSA.bst version" " " * bst.file.version * + " (" * bst.file.date * ") " * "by Michael Shell." * + top$ + "-- " bst.file.website * + top$ + "-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." * + top$ + "** Sorting Alpha version - not for normal IEEE work." + top$ + } + { skip$ } + if$ +} + +FUNCTION {completed.message} +{ is.print.banners.to.terminal + { "" + top$ + "Done." + top$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING CONSTANTS %% +%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {bbl.a}{ "A" } +FUNCTION {bbl.an}{ "An" } +FUNCTION {bbl.and}{ "and" } +FUNCTION {bbl.etal}{ "et~al." } +FUNCTION {bbl.editors}{ "eds." } +FUNCTION {bbl.editor}{ "ed." } +FUNCTION {bbl.edition}{ "ed." } +FUNCTION {bbl.volume}{ "vol." } +FUNCTION {bbl.of}{ "of" } +FUNCTION {bbl.number}{ "no." } +FUNCTION {bbl.in}{ "in" } +FUNCTION {bbl.pages}{ "pp." } +FUNCTION {bbl.page}{ "p." } +FUNCTION {bbl.chapter}{ "ch." } +FUNCTION {bbl.paper}{ "paper" } +FUNCTION {bbl.part}{ "pt." } +FUNCTION {bbl.patent}{ "Patent" } +FUNCTION {bbl.patentUS}{ "U.S." } +FUNCTION {bbl.revision}{ "Rev." } +FUNCTION {bbl.series}{ "ser." } +FUNCTION {bbl.standard}{ "Std." } +FUNCTION {bbl.techrep}{ "Tech. Rep." } +FUNCTION {bbl.the}{ "The" } +FUNCTION {bbl.mthesis}{ "Master's thesis" } +FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" } +FUNCTION {bbl.st}{ "st" } +FUNCTION {bbl.nd}{ "nd" } +FUNCTION {bbl.rd}{ "rd" } +FUNCTION {bbl.th}{ "th" } + + +% This is the LaTeX spacer that is used when a larger than normal space +% is called for (such as just before the address:publisher). +FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " } + +% The LaTeX code for dashes that are used to represent repeated names. +% Note: Some older IEEE journals used something like +% "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along +% the baseline. However, the IEEE now uses a thinner, above baseline, +% six dash long sequence. +FUNCTION {repeated.name.dashes} { "------" } + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% PREDEFINED STRING MACROS %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +MACRO {jan} {"Jan."} +MACRO {feb} {"Feb."} +MACRO {mar} {"Mar."} +MACRO {apr} {"Apr."} +MACRO {may} {"May"} +MACRO {jun} {"Jun."} +MACRO {jul} {"Jul."} +MACRO {aug} {"Aug."} +MACRO {sep} {"Sep."} +MACRO {oct} {"Oct."} +MACRO {nov} {"Nov."} +MACRO {dec} {"Dec."} + + + +%%%%%%%%%%%%%%%%%% +%% ENTRY FIELDS %% +%%%%%%%%%%%%%%%%%% + +ENTRY + { address + assignee + author + booktitle + chapter + day + dayfiled + edition + editor + howpublished + institution + intype + journal + key + language + month + monthfiled + nationality + note + number + organization + pages + paper + publisher + school + series + revision + title + type + url + volume + year + yearfiled + CTLuse_article_number + CTLuse_paper + CTLuse_url + CTLuse_forced_etal + CTLmax_names_forced_etal + CTLnames_show_etal + CTLuse_alt_spacing + CTLalt_stretch_factor + CTLdash_repeated_names + CTLname_format_string + CTLname_latex_cmd + CTLname_url_prefix + } + {} + { label extra.label sort.label } + + + + +%%%%%%%%%%%%%%%%%%%%%%% +%% INTEGER VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%%% + +INTEGERS { prev.status.punct this.status.punct punct.std + punct.no punct.comma punct.period + prev.status.space this.status.space space.std + space.no space.normal space.large + prev.status.quote this.status.quote quote.std + quote.no quote.close + prev.status.nline this.status.nline nline.std + nline.no nline.newblock + status.cap cap.std + cap.no cap.yes} + +INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames } + +INTEGERS { is.use.number.for.article + is.use.paper + is.use.url + is.forced.et.al + max.num.names.before.forced.et.al + num.names.shown.with.forced.et.al + is.use.alt.interword.spacing + is.dash.repeated.names} + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%% + +STRINGS { bibinfo + longest.label + oldname + s + t + ALTinterwordstretchfactor + name.format.string + name.latex.cmd + name.url.prefix} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOW LEVEL FUNCTIONS %% +%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.controls} +{ default.is.use.number.for.article 'is.use.number.for.article := + default.is.use.paper 'is.use.paper := + default.is.use.url 'is.use.url := + default.is.forced.et.al 'is.forced.et.al := + default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al := + default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al := + default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing := + default.is.dash.repeated.names 'is.dash.repeated.names := + default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor := + default.name.format.string 'name.format.string := + default.name.latex.cmd 'name.latex.cmd := + default.name.url.prefix 'name.url.prefix := +} + + +% This IEEEtran.bst features a very powerful and flexible mechanism for +% controlling the capitalization, punctuation, spacing, quotation, and +% newlines of the formatted entry fields. (Note: IEEEtran.bst does not need +% or use the newline/newblock feature, but it has been implemented for +% possible future use.) The output states of IEEEtran.bst consist of +% multiple independent attributes and, as such, can be thought of as being +% vectors, rather than the simple scalar values ("before.all", +% "mid.sentence", etc.) used in most other .bst files. +% +% The more flexible and complex design used here was motivated in part by +% the IEEE's rather unusual bibliography style. For example, the IEEE ends the +% previous field item with a period and large space prior to the publisher +% address; the @electronic entry types use periods as inter-item punctuation +% rather than the commas used by the other entry types; and URLs are never +% followed by periods even though they are the last item in the entry. +% Although it is possible to accommodate these features with the conventional +% output state system, the seemingly endless exceptions make for convoluted, +% unreliable and difficult to maintain code. +% +% IEEEtran.bst's output state system can be easily understood via a simple +% illustration of two most recently formatted entry fields (on the stack): +% +% CURRENT_ITEM +% "PREVIOUS_ITEM +% +% which, in this example, is to eventually appear in the bibliography as: +% +% "PREVIOUS_ITEM," CURRENT_ITEM +% +% It is the job of the output routine to take the previous item off of the +% stack (while leaving the current item at the top of the stack), apply its +% trailing punctuation (including closing quote marks) and spacing, and then +% to write the result to BibTeX's output buffer: +% +% "PREVIOUS_ITEM," +% +% Punctuation (and spacing) between items is often determined by both of the +% items rather than just the first one. The presence of quotation marks +% further complicates the situation because, in standard English, trailing +% punctuation marks are supposed to be contained within the quotes. +% +% IEEEtran.bst maintains two output state (aka "status") vectors which +% correspond to the previous and current (aka "this") items. Each vector +% consists of several independent attributes which track punctuation, +% spacing, quotation, and newlines. Capitalization status is handled by a +% separate scalar because the format routines, not the output routine, +% handle capitalization and, therefore, there is no need to maintain the +% capitalization attribute for both the "previous" and "this" items. +% +% When a format routine adds a new item, it copies the current output status +% vector to the previous output status vector and (usually) resets the +% current (this) output status vector to a "standard status" vector. Using a +% "standard status" vector in this way allows us to redefine what we mean by +% "standard status" at the start of each entry handler and reuse the same +% format routines under the various inter-item separation schemes. For +% example, the standard status vector for the @book entry type may use +% commas for item separators, while the @electronic type may use periods, +% yet both entry handlers exploit many of the exact same format routines. +% +% Because format routines have write access to the output status vector of +% the previous item, they can override the punctuation choices of the +% previous format routine! Therefore, it becomes trivial to implement rules +% such as "Always use a period and a large space before the publisher." By +% pushing the generation of the closing quote mark to the output routine, we +% avoid all the problems caused by having to close a quote before having all +% the information required to determine what the punctuation should be. +% +% The IEEEtran.bst output state system can easily be expanded if needed. +% For instance, it is easy to add a "space.tie" attribute value if the +% bibliography rules mandate that two items have to be joined with an +% unbreakable space. + +FUNCTION {initialize.status.constants} +{ #0 'punct.no := + #1 'punct.comma := + #2 'punct.period := + #0 'space.no := + #1 'space.normal := + #2 'space.large := + #0 'quote.no := + #1 'quote.close := + #0 'cap.no := + #1 'cap.yes := + #0 'nline.no := + #1 'nline.newblock := +} + +FUNCTION {std.status.using.comma} +{ punct.comma 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.no 'cap.std := +} + +FUNCTION {std.status.using.period} +{ punct.period 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.yes 'cap.std := +} + +FUNCTION {initialize.prev.this.status} +{ punct.no 'prev.status.punct := + space.no 'prev.status.space := + quote.no 'prev.status.quote := + nline.no 'prev.status.nline := + punct.no 'this.status.punct := + space.no 'this.status.space := + quote.no 'this.status.quote := + nline.no 'this.status.nline := + cap.yes 'status.cap := +} + +FUNCTION {this.status.std} +{ punct.std 'this.status.punct := + space.std 'this.status.space := + quote.std 'this.status.quote := + nline.std 'this.status.nline := +} + +FUNCTION {cap.status.std}{ cap.std 'status.cap := } + +FUNCTION {this.to.prev.status} +{ this.status.punct 'prev.status.punct := + this.status.space 'prev.status.space := + this.status.quote 'prev.status.quote := + this.status.nline 'prev.status.nline := +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ { skip$ } + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + { skip$ } + if$ +} + + +% convert the strings "yes" or "no" to #1 or #0 respectively +FUNCTION {yes.no.to.int} +{ "l" change.case$ duplicate$ + "yes" = + { pop$ #1 } + { duplicate$ "no" = + { pop$ #0 } + { "unknown boolean " quote$ * swap$ * quote$ * + " in " * cite$ * warning$ + #0 + } + if$ + } + if$ +} + + +% pushes true if the single char string on the stack is in the +% range of "0" to "9" +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +% multiplies the integer on the stack by a factor of 10 +FUNCTION {bump.int.mag} +{ #0 'multiresult := + { duplicate$ #0 > } + { #1 - + multiresult #10 + + 'multiresult := + } + while$ +pop$ +multiresult +} + +% converts a single character string on the stack to an integer +FUNCTION {char.to.integer} +{ duplicate$ + is.num + { chr.to.int$ "0" chr.to.int$ - } + {"noninteger character " quote$ * swap$ * quote$ * + " in integer field of " * cite$ * warning$ + #0 + } + if$ +} + +% converts a string on the stack to an integer +FUNCTION {string.to.integer} +{ duplicate$ text.length$ 'namesleft := + #1 'nameptr := + #0 'numnames := + { nameptr namesleft > not } + { duplicate$ nameptr #1 substring$ + char.to.integer numnames bump.int.mag + + 'numnames := + nameptr #1 + + 'nameptr := + } + while$ +pop$ +numnames +} + + + + +% The output routines write out the *next* to the top (previous) item on the +% stack, adding punctuation and such as needed. Since IEEEtran.bst maintains +% the output status for the top two items on the stack, these output +% routines have to consider the previous output status (which corresponds to +% the item that is being output). Full independent control of punctuation, +% closing quote marks, spacing, and newblock is provided. +% +% "output.nonnull" does not check for the presence of a previous empty +% item. +% +% "output" does check for the presence of a previous empty item and will +% remove an empty item rather than outputing it. +% +% "output.warn" is like "output", but will issue a warning if it detects +% an empty item. + +FUNCTION {output.nonnull} +{ swap$ + prev.status.punct punct.comma = + { "," * } + { skip$ } + if$ + prev.status.punct punct.period = + { add.period$ } + { skip$ } + if$ + prev.status.quote quote.close = + { "''" * } + { skip$ } + if$ + prev.status.space space.normal = + { " " * } + { skip$ } + if$ + prev.status.space space.large = + { large.space * } + { skip$ } + if$ + write$ + prev.status.nline nline.newblock = + { newline$ "\newblock " write$ } + { skip$ } + if$ +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.warn} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +% "fin.entry" is the output routine that handles the last item of the entry +% (which will be on the top of the stack when "fin.entry" is called). + +FUNCTION {fin.entry} +{ this.status.punct punct.no = + { skip$ } + { add.period$ } + if$ + this.status.quote quote.close = + { "''" * } + { skip$ } + if$ +write$ +newline$ +} + + +FUNCTION {is.last.char.not.punct} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {is.multiple.pages} +{ '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 {capitalize}{ "u" change.case$ "t" change.case$ } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +FUNCTION {do.name.latex.cmd} +{ name.latex.cmd + empty$ + { skip$ } + { name.latex.cmd "{" * swap$ * "}" * } + if$ +} + +% IEEEtran.bst uses its own \BIBforeignlanguage command which directly +% invokes the TeX hyphenation patterns without the need of the Babel +% package. Babel does a lot more than switch hyphenation patterns and +% its loading can cause unintended effects in many class files (such as +% IEEEtran.cls). +FUNCTION {select.language} +{ duplicate$ empty$ 'pop$ + { language empty$ 'skip$ + { "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * } + if$ + } + if$ +} + +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {space.word}{ " " swap$ * " " * } + + +% Field Conditioners, Converters, Checkers and External Interfaces + +FUNCTION {empty.field.to.null.string} +{ duplicate$ empty$ + { pop$ "" } + { skip$ } + if$ +} + +FUNCTION {either.or.check} +{ empty$ + { pop$ } + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {empty.entry.warn} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ url empty$ + and and and and and and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + + +% The bibinfo system provides a way for the electronic parsing/acquisition +% of a bibliography's contents as is done by ReVTeX. For example, a field +% could be entered into the bibliography as: +% \bibinfo{volume}{2} +% Only the "2" would show up in the document, but the LaTeX \bibinfo command +% could do additional things with the information. IEEEtran.bst does provide +% a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is +% currently not used as the bogus bibinfo functions defined here output the +% entry values directly without the \bibinfo wrapper. The bibinfo functions +% themselves (and the calls to them) are retained for possible future use. +% +% bibinfo.check avoids acting on missing fields while bibinfo.warn will +% issue a warning message if a missing field is detected. Prior to calling +% the bibinfo functions, the user should push the field value and then its +% name string, in that order. + +FUNCTION {bibinfo.check} +{ swap$ duplicate$ missing$ + { pop$ pop$ "" } + { duplicate$ empty$ + { swap$ pop$ } + { swap$ pop$ } + if$ + } + if$ +} + +FUNCTION {bibinfo.warn} +{ swap$ duplicate$ missing$ + { swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" } + { duplicate$ empty$ + { swap$ "empty " swap$ * " in " * cite$ * warning$ } + { swap$ pop$ } + if$ + } + if$ +} + + +% The IEEE separates large numbers with more than 4 digits into groups of +% three. The IEEE uses a small space to separate these number groups. +% Typical applications include patent and page numbers. + +% number of consecutive digits required to trigger the group separation. +FUNCTION {large.number.trigger}{ #5 } + +% For numbers longer than the trigger, this is the blocksize of the groups. +% The blocksize must be less than the trigger threshold, and 2 * blocksize +% must be greater than the trigger threshold (can't do more than one +% separation on the initial trigger). +FUNCTION {large.number.blocksize}{ #3 } + +% What is actually inserted between the number groups. +FUNCTION {large.number.separator}{ "\," } + +% So as to save on integer variables by reusing existing ones, numnames +% holds the current number of consecutive digits read and nameptr holds +% the number that will trigger an inserted space. +FUNCTION {large.number.separate} +{ 't := + "" + #0 'numnames := + large.number.trigger 'nameptr := + { t empty$ not } + { t #-1 #1 substring$ is.num + { numnames #1 + 'numnames := } + { #0 'numnames := + large.number.trigger 'nameptr := + } + if$ + t #-1 #1 substring$ swap$ * + t #-2 global.max$ substring$ 't := + numnames nameptr = + { duplicate$ #1 nameptr large.number.blocksize - substring$ swap$ + nameptr large.number.blocksize - #1 + global.max$ substring$ + large.number.separator swap$ * * + nameptr large.number.blocksize - 'numnames := + large.number.blocksize #1 + 'nameptr := + } + { skip$ } + if$ + } + while$ +} + +% Converts all single dashes "-" to double dashes "--". +FUNCTION {n.dashify} +{ large.number.separate + '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$ +} + + +% This function detects entries with names that are identical to that of +% the previous entry and replaces the repeated names with dashes (if the +% "is.dash.repeated.names" user control is nonzero). +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = + { is.dash.repeated.names + { repeated.name.dashes } + { s 'oldname := s } + if$ + } + { s 'oldname := s } + if$ + } + if$ +} + +% Converts the number string on the top of the stack to +% "numerical ordinal form" (e.g., "7" to "7th"). There is +% no artificial limit to the upper bound of the numbers as the +% two least significant digits determine the ordinal form. +FUNCTION {num.to.ordinal} +{ duplicate$ #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ "1" = + { bbl.st * } + { duplicate$ #-1 #1 substring$ "2" = + { bbl.nd * } + { duplicate$ #-1 #1 substring$ "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +% If the string on the top of the stack begins with a number, +% (e.g., 11th) then replace the string with the leading number +% it contains. Otherwise retain the string as-is. s holds the +% extracted number, t holds the part of the string that remains +% to be scanned. +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +% Converts the word number string on the top of the stack to +% Arabic string form. Will be successful up to "tenth". +FUNCTION {word.to.num} +{ duplicate$ "l" change.case$ 's := + s "first" = + { pop$ "1" } + { skip$ } + if$ + s "second" = + { pop$ "2" } + { skip$ } + if$ + s "third" = + { pop$ "3" } + { skip$ } + if$ + s "fourth" = + { pop$ "4" } + { skip$ } + if$ + s "fifth" = + { pop$ "5" } + { skip$ } + if$ + s "sixth" = + { pop$ "6" } + { skip$ } + if$ + s "seventh" = + { pop$ "7" } + { skip$ } + if$ + s "eighth" = + { pop$ "8" } + { skip$ } + if$ + s "ninth" = + { pop$ "9" } + { skip$ } + if$ + s "tenth" = + { pop$ "10" } + { skip$ } + if$ +} + + +% Converts the string on the top of the stack to numerical +% ordinal (e.g., "11th") form. +FUNCTION {convert.edition} +{ duplicate$ empty$ 'skip$ + { duplicate$ #1 #1 substring$ is.num + { extract.num + num.to.ordinal + } + { word.to.num + duplicate$ #1 #1 substring$ is.num + { num.to.ordinal } + { "edition ordinal word " quote$ * edition * quote$ * + " may be too high (or improper) for conversion" * " in " * cite$ * warning$ + } + if$ + } + if$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LATEX BIBLIOGRAPHY CODE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {start.entry} +{ newline$ + "\bibitem[" write$ + label write$ + "]{" write$ + cite$ write$ + "}" write$ + newline$ + "" + initialize.prev.this.status +} + +% Here we write out all the LaTeX code that we will need. The most involved +% code sequences are those that control the alternate interword spacing and +% foreign language hyphenation patterns. The heavy use of \providecommand +% gives users a way to override the defaults. Special thanks to Javier Bezos, +% Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all +% the other gurus on comp.text.tex for their help and advice on the topic of +% \selectlanguage, Babel and BibTeX. +FUNCTION {begin.bib} +{ "% Generated by IEEEtranSA.bst, version: " bst.file.version * " (" * bst.file.date * ")" * + write$ newline$ + "\providecommand{\etalchar}[1]{$^{#1}$}" + write$ newline$ + preamble$ empty$ 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * + write$ newline$ + "\providecommand{\url}[1]{#1}" + write$ newline$ + "\csname url@samestyle\endcsname" + write$ newline$ + "\providecommand{\newblock}{\relax}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}" + write$ newline$ + "\providecommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + "\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus " + write$ newline$ + "\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}" + write$ newline$ + "\providecommand{\BIBforeignlanguage}[2]{{%" + write$ newline$ + "\expandafter\ifx\csname l@#1\endcsname\relax" + write$ newline$ + "\typeout{** WARNING: IEEEtranSA.bst: No hyphenation pattern has been}%" + write$ newline$ + "\typeout{** loaded for the language `#1'. Using the pattern for}%" + write$ newline$ + "\typeout{** the default language instead.}%" + write$ newline$ + "\else" + write$ newline$ + "\language=\csname l@#1\endcsname" + write$ newline$ + "\fi" + write$ newline$ + "#2}}" + write$ newline$ + "\providecommand{\BIBdecl}{\relax}" + write$ newline$ + "\BIBdecl" + write$ newline$ +} + +FUNCTION {end.bib} +{ newline$ "\end{thebibliography}" write$ newline$ } + +FUNCTION {if.url.alt.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + +FUNCTION {if.url.std.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%% +%% FORMAT HANDLERS %% +%%%%%%%%%%%%%%%%%%%%% + +%% Lower Level Formats (used by higher level formats) + +FUNCTION {format.address.org.or.pub.date} +{ 't := + "" + year empty$ + { "empty year in " cite$ * warning$ } + { skip$ } + if$ + address empty$ t empty$ and + year empty$ and month empty$ and + { skip$ } + { this.to.prev.status + this.status.std + cap.status.std + address "address" bibinfo.check * + t empty$ + { skip$ } + { punct.period 'prev.status.punct := + space.large 'prev.status.space := + address empty$ + { skip$ } + { ": " * } + if$ + t * + } + if$ + year empty$ month empty$ and + { skip$ } + { t empty$ address empty$ and + { skip$ } + { ", " * } + if$ + month empty$ + { year empty$ + { skip$ } + { year "year" bibinfo.check * } + if$ + } + { month "month" bibinfo.check * + year empty$ + { skip$ } + { " " * year "year" bibinfo.check * } + if$ + } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + this.to.prev.status + this.status.std + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + name.format.string + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { nameptr num.names.shown.with.forced.et.al #1 + = + numnames max.num.names.before.forced.et.al > + is.forced.et.al and and + { "others" 't := + #1 'namesleft := + } + { skip$ } + if$ + namesleft #1 > + { ", " * t do.name.latex.cmd * } + { s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { " " * bbl.etal emphasize * } + { numnames #2 > + { "," * } + { skip$ } + if$ + bbl.and + space.word * t do.name.latex.cmd * + } + if$ + } + if$ + } + { t do.name.latex.cmd } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + cap.status.std + } if$ +} + + + + +%% Higher Level Formats + +%% addresses/locations + +FUNCTION {format.address} +{ address duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% author/editor names + +FUNCTION {format.authors}{ author "author" format.names } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { ", " * + get.bbl.editor + capitalize + * + } + if$ +} + + + +%% date + +FUNCTION {format.date} +{ + month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { this.to.prev.status + this.status.std + cap.status.std + swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ +} + +FUNCTION {format.date.electronic} +{ month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ + { pop$ } + { "there's a month but no year in " cite$ * warning$ + pop$ ")" * "(" swap$ * + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ + } + { swap$ + { swap$ pop$ ")" * "(" swap$ * } + { "(" swap$ * ", " * swap$ * ")" * } + if$ + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ +} + + + +%% edition/title + +% Note: The IEEE considers the edition to be closely associated with +% the title of a book. So, in IEEEtran.bst the edition is normally handled +% within the formatting of the title. The format.edition function is +% retained here for possible future use. +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + convert.edition + status.cap + { "t" } + { "l" } + if$ change.case$ + "edition" bibinfo.check + "~" * bbl.edition * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of a conference proceedings. +% Here we use the "intype" field to provide the user a way to +% override the word "in" (e.g., with things like "presented at") +% Use of intype stops the emphasis of the booktitle to indicate that +% we no longer mean the written conference proceedings, but the +% conference itself. +FUNCTION {format.in.booktitle} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + intype missing$ + { emphasize + bbl.in " " * + } + { intype " " * } + if$ + swap$ * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of collection. +% Here the "intype" field is not supported, but "edition" is. +FUNCTION {format.in.booktitle.edition} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + "l" change.case$ + * "~" * bbl.edition * + } + if$ + bbl.in " " * swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { quote.close 'this.status.quote := + is.last.char.not.punct + { punct.std 'this.status.punct := } + { punct.no 'this.status.punct := } + if$ + select.language + "``" swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title.electronic} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ + { skip$ } + { select.language } + if$ +} + +FUNCTION {format.book.title.edition} +{ title "title" bibinfo.check + duplicate$ empty$ + { "empty title in " cite$ * warning$ } + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + status.cap + { "t" } + { "l" } + if$ + change.case$ + * "~" * bbl.edition * + } + if$ + cap.status.std + } + if$ +} + +FUNCTION {format.book.title} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% journal + +FUNCTION {format.journal} +{ journal duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% how published + +FUNCTION {format.howpublished} +{ howpublished duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% institutions/organization/publishers/school + +FUNCTION {format.institution} +{ institution duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.organization} +{ organization duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.address.publisher.date} +{ publisher "publisher" bibinfo.warn format.address.org.or.pub.date } + +FUNCTION {format.address.publisher.date.nowarn} +{ publisher "publisher" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.address.organization.date} +{ organization "organization" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.school} +{ school duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% volume/number/series/chapter/pages + +FUNCTION {format.volume} +{ volume empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + bbl.volume + status.cap + { capitalize } + { skip$ } + if$ + swap$ tie.or.space.prefix + "volume" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number} +{ number empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + status.cap + { bbl.number capitalize } + { bbl.number } + if$ + swap$ tie.or.space.prefix + "number" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number.if.use.for.article} +{ is.use.number.for.article + { format.number } + { "" } + if$ +} + +% The IEEE does not seem to tie the series so closely with the volume +% and number as is done in other bibliography styles. Instead the +% series is treated somewhat like an extension of the title. +FUNCTION {format.series} +{ series empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.series " " * + series "series" bibinfo.check * + cap.status.std + } + if$ +} + + +FUNCTION {format.chapter} +{ chapter empty$ + { "" } + { this.to.prev.status + this.status.std + type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + cap.status.std + } + if$ +} + + +% The intended use of format.paper is for paper numbers of inproceedings. +% The paper type can be overridden via the type field. +% We allow the type to be displayed even if the paper number is absent +% for things like "postdeadline paper" +FUNCTION {format.paper} +{ is.use.paper + { paper empty$ + { type empty$ + { "" } + { this.to.prev.status + this.status.std + type "type" bibinfo.check + cap.status.std + } + if$ + } + { this.to.prev.status + this.status.std + type empty$ + { bbl.paper } + { type "type" bibinfo.check } + if$ + " " * paper + "paper" bibinfo.check + * + cap.status.std + } + if$ + } + { "" } + if$ +} + + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + duplicate$ is.multiple.pages + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + cap.status.std + } + if$ +} + + + +%% technical report number + +FUNCTION {format.tech.report.number} +{ number "number" bibinfo.check + this.to.prev.status + this.status.std + cap.status.std + type duplicate$ empty$ + { pop$ + bbl.techrep + } + { skip$ } + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ } + { tie.or.space.prefix * * } + if$ +} + + + +%% note + +FUNCTION {format.note} +{ note empty$ + { "" } + { this.to.prev.status + this.status.std + punct.period 'this.status.punct := + note #1 #1 substring$ + duplicate$ "{" = + { skip$ } + { status.cap + { "u" } + { "l" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + cap.yes 'status.cap := + } + if$ +} + + + +%% patent + +FUNCTION {format.patent.date} +{ this.to.prev.status + this.status.std + year empty$ + { monthfiled duplicate$ empty$ + { "monthfiled" bibinfo.check pop$ "" } + { "monthfiled" bibinfo.check } + if$ + dayfiled duplicate$ empty$ + { "dayfiled" bibinfo.check pop$ "" * } + { "dayfiled" bibinfo.check + monthfiled empty$ + { "dayfiled without a monthfiled in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + yearfiled empty$ + { "no year or yearfiled in " cite$ * warning$ } + { yearfiled "yearfiled" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + } + { month duplicate$ empty$ + { "month" bibinfo.check pop$ "" } + { "month" bibinfo.check } + if$ + day duplicate$ empty$ + { "day" bibinfo.check pop$ "" * } + { "day" bibinfo.check + month empty$ + { "day without a month in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + year "year" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + cap.status.std +} + +FUNCTION {format.patent.nationality.type.number} +{ this.to.prev.status + this.status.std + nationality duplicate$ empty$ + { "nationality" bibinfo.warn pop$ "" } + { "nationality" bibinfo.check + duplicate$ "l" change.case$ "united states" = + { pop$ bbl.patentUS } + { skip$ } + if$ + " " * + } + if$ + type empty$ + { bbl.patent "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.warn pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + + + +%% standard + +FUNCTION {format.organization.institution.standard.type.number} +{ this.to.prev.status + this.status.std + organization duplicate$ empty$ + { pop$ + institution duplicate$ empty$ + { "institution" bibinfo.warn } + { "institution" bibinfo.warn " " * } + if$ + } + { "organization" bibinfo.warn " " * } + if$ + type empty$ + { bbl.standard "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.check pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + +FUNCTION {format.revision} +{ revision empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.revision + revision tie.or.space.prefix + "revision" bibinfo.check + * * + cap.status.std + } + if$ +} + + +%% thesis + +FUNCTION {format.master.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.mthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + +FUNCTION {format.phd.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.phdthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + + + +%% URL + +FUNCTION {format.url} +{ is.use.url + { url empty$ + { "" } + { this.to.prev.status + this.status.std + cap.yes 'status.cap := + name.url.prefix " " * + "\url{" * url * "}" * + punct.no 'this.status.punct := + punct.period 'prev.status.punct := + space.normal 'this.status.space := + space.normal 'prev.status.space := + quote.no 'this.status.quote := + } + if$ + } + { "" } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%% +%% ENTRY HANDLERS %% +%%%%%%%%%%%%%%%%%%%% + + +% Note: In many journals, the IEEE (or the authors) tend not to show the number +% for articles, so the display of the number is controlled here by the +% switch "is.use.number.for.article" +FUNCTION {article} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.journal "journal" bibinfo.check "journal" output.warn + format.volume output + format.number.if.use.for.article output + format.pages output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {book} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + author empty$ + { skip$ } + { format.editors output } + if$ + format.address.publisher.date output + format.volume output + format.number output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {booklet} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {electronic} +{ std.status.using.period + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.date.electronic output + format.article.title.electronic output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {inbook} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + format.address.publisher.date output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {incollection} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle.edition "booktitle" output.warn + format.series output + format.editors output + format.address.publisher.date.nowarn output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {inproceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle "booktitle" output.warn + format.series output + format.editors output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.paper output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {manual} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title.edition "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {mastersthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.master.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {misc} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.pages output + format.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {patent} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.patent.nationality.type.number output + format.patent.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {periodical} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + format.organization "organization" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {phdthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.phd.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {proceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {standard} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization.institution.standard.type.number output + format.revision output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {techreport} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.institution "institution" bibinfo.warn output + format.address "address" bibinfo.check output + format.tech.report.number output.nonnull + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {unpublished} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.date output + format.note "note" output.warn + format.url output + fin.entry + if.url.std.interword.spacing +} + + +% The special entry type which provides the user interface to the +% BST controls +FUNCTION {IEEEtranBSTCTL} +{ is.print.banners.to.terminal + { "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." * + top$ + } + { skip$ } + if$ + CTLuse_article_number + empty$ + { skip$ } + { CTLuse_article_number + yes.no.to.int + 'is.use.number.for.article := + } + if$ + CTLuse_paper + empty$ + { skip$ } + { CTLuse_paper + yes.no.to.int + 'is.use.paper := + } + if$ + CTLuse_url + empty$ + { skip$ } + { CTLuse_url + yes.no.to.int + 'is.use.url := + } + if$ + CTLuse_forced_etal + empty$ + { skip$ } + { CTLuse_forced_etal + yes.no.to.int + 'is.forced.et.al := + } + if$ + CTLmax_names_forced_etal + empty$ + { skip$ } + { CTLmax_names_forced_etal + string.to.integer + 'max.num.names.before.forced.et.al := + } + if$ + CTLnames_show_etal + empty$ + { skip$ } + { CTLnames_show_etal + string.to.integer + 'num.names.shown.with.forced.et.al := + } + if$ + CTLuse_alt_spacing + empty$ + { skip$ } + { CTLuse_alt_spacing + yes.no.to.int + 'is.use.alt.interword.spacing := + } + if$ + CTLalt_stretch_factor + empty$ + { skip$ } + { CTLalt_stretch_factor + 'ALTinterwordstretchfactor := + "\renewcommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + } + if$ + CTLdash_repeated_names + empty$ + { skip$ } + { CTLdash_repeated_names + yes.no.to.int + 'is.dash.repeated.names := + } + if$ + CTLname_format_string + empty$ + { skip$ } + { CTLname_format_string + 'name.format.string := + } + if$ + CTLname_latex_cmd + empty$ + { skip$ } + { CTLname_latex_cmd + 'name.latex.cmd := + } + if$ + CTLname_url_prefix + missing$ + { skip$ } + { CTLname_url_prefix + 'name.url.prefix := + } + if$ + + + num.names.shown.with.forced.et.al max.num.names.before.forced.et.al > + { "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$ + max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al := + } + { skip$ } + if$ +} + + +%%%%%%%%%%%%%%%%%%% +%% ENTRY ALIASES %% +%%%%%%%%%%%%%%%%%%% +FUNCTION {conference}{inproceedings} +FUNCTION {online}{electronic} +FUNCTION {internet}{electronic} +FUNCTION {webpage}{electronic} +FUNCTION {www}{electronic} +FUNCTION {default.type}{misc} + + + +%%%%%%%%%%%%%%%%%% +%% MAIN PROGRAM %% +%%%%%%%%%%%%%%%%%% + +READ + +EXECUTE {initialize.controls} +EXECUTE {initialize.status.constants} +EXECUTE {banner.message} + + + +% BEGIN sort code based on that of plain.bst + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + { s } + if$ +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + { skip$ } + if$ + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + bbl.a " " * #2 + bbl.an " " * #3 + bbl.the " " * #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {author.organization.institution.sort} +{ author empty$ + { organization empty$ + { institution empty$ + { key empty$ + { "to sort, need author, organization, institution or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 institution chop.word sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + + +% END sort code based on that of plain.bst + + + +% alpha.bst code +STRINGS { last.sort.label next.extra } + +INTEGERS { last.extra.num } + +FUNCTION {format.lab.names} +{ 's := + s num.names$ 'numnames := + numnames #1 > + { numnames #4 > + { #3 'namesleft := } + { numnames 'namesleft := } + if$ + #1 'nameptr := + "" + { namesleft #0 > } + { nameptr numnames = + { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { "{\etalchar{+}}" * } + { s nameptr "{v{}}{l{}}" format.name$ * } + if$ + } + { s nameptr "{v{}}{l{}}" format.name$ * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + numnames #4 > + { "{\etalchar{+}}" * } + 'skip$ + if$ + } + { s #1 "{v{}}{l{}}" format.name$ + duplicate$ text.length$ #2 < + { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } + 'skip$ + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key #3 text.prefix$ } + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.label} +{ author empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.institution.label} +{ author empty$ + { key empty$ + { organization empty$ + { institution empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 institution chop.word #3 text.prefix$ } + if$ + } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.organization.label} +{ editor empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #3 text.prefix$ } + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.label} +{ type$ "book" = + type$ "inbook" = + or + { author.editor.key.label } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.key.organization.label } + { type$ "manual" = + type$ "electronic" = + type$ "misc" = + or or + { author.key.organization.label } + { type$ "standard" = + { author.key.organization.institution.label } + { author.key.label } + if$ + } + if$ + } + if$ + } + if$ + duplicate$ + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + empty.field.to.null.string purify$ #-1 #2 substring$ + * + 'label := + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + empty.field.to.null.string purify$ #-1 #4 substring$ + * + sortify 'sort.label := +} + + +FUNCTION {presort} +{ type$ "ieeetranbstctl" = + { key empty$ + { "_" } + { key sortify } + if$ + } + { calc.label + sort.label + " " + * + type$ "book" = + type$ "inbook" = + or + { author.editor.sort } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.organization.sort } + { type$ "manual" = + type$ "electronic" = + type$ "misc" = + or or + { author.organization.sort } + { type$ "standard" = + { author.organization.institution.sort } + { author.sort } + if$ + } + if$ + } + if$ + } + if$ + * + " " + * + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + empty.field.to.null.string sortify + * + " " + * + title empty.field.to.null.string + sort.format.title + * + } + if$ + #1 entry.max$ substring$ + 'sort.key$ := +} + + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 int.to.chr$ 'last.sort.label := + "" 'next.extra := + #0 'longest.label.width := + #0 'last.extra.num := +} + +FUNCTION {forward.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { last.sort.label sort.label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + sort.label 'last.sort.label := + } + if$ + } + if$ +} + +FUNCTION {reverse.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { next.extra "b" = + { "a" 'extra.label := } + { skip$ } + if$ + label extra.label * 'label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + { skip$ } + if$ + extra.label 'next.extra := + } + if$ +} + +% End alpha.bst code + + +ITERATE {presort} + +SORT + +EXECUTE {initialize.longest.label} + +ITERATE {forward.pass} +REVERSE {reverse.pass} + +EXECUTE {begin.bib} +ITERATE {call.type$} +EXECUTE {end.bib} + +EXECUTE{completed.message} + + +%% That's all folks, mds. diff --git a/IEEEtran/bibtex/IEEEtranSN.bst b/IEEEtran/bibtex/IEEEtranSN.bst new file mode 100644 index 0000000..da43e61 --- /dev/null +++ b/IEEEtran/bibtex/IEEEtranSN.bst @@ -0,0 +1,2878 @@ +%% +%% IEEEtranSN.bst +%% BibTeX Bibliography Style file +%% Sorting Natbib version of IEEEtran.bst +%% *** Not for normal IEEE work *** +%% Version 1.14 (2015/08/26) +%% +%% Copyright (c) 2003-2015 Michael Shell +%% +%% Original starting code base and algorithms obtained from the output of +%% Patrick W. Daly's makebst package as well as from prior versions of +%% IEEE BibTeX styles: +%% +%% 1. Howard Trickey and Oren Patashnik's ieeetr.bst (1985/1988) +%% 2. Silvano Balemi and Richard H. Roy's IEEEbib.bst (1993) +%% +%% Added sorting and natbib code is from Patrick W Daly's plainnat.bst +%% and Oren Patashnik's plain.bst. +%% +%% +%% Support sites: +%% http://www.michaelshell.org/tex/ieeetran/ +%% http://www.ctan.org/pkg/ieeetran +%% and/or +%% http://www.ieee.org/ +%% +%% For use with BibTeX version 0.99a or later +%% +%% This is a natbib compatible citation style. +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%%************************************************************************* + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% DEFAULTS FOR THE CONTROLS OF THE BST STYLE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% These are the defaults for the user adjustable controls. The values used +% here can be overridden by the user via IEEEtranBSTCTL entry type. + +% NOTE: The recommended LaTeX command to invoke a control entry type is: +% +%\makeatletter +%\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +%\def\@bstctlcite[#1]#2{\@bsphack +% \@for\@citeb:=#2\do{% +% \edef\@citeb{\expandafter\@firstofone\@citeb}% +% \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% +% \@esphack} +%\makeatother +% +% It is called at the start of the document, before the first \cite, like: +% \bstctlcite{IEEEexample:BSTcontrol} +% +% IEEEtran.cls V1.6 and later does provide this command. + + + +% #0 turns off the display of the number for articles. +% #1 enables +FUNCTION {default.is.use.number.for.article} { #1 } + + +% #0 turns off the display of the paper and type fields in @inproceedings. +% #1 enables +FUNCTION {default.is.use.paper} { #1 } + + +% #0 turns off the display of urls +% #1 enables +FUNCTION {default.is.use.url} { #1 } + + +% #0 turns off the forced use of "et al." +% #1 enables +FUNCTION {default.is.forced.et.al} { #0 } + + +% The maximum number of names that can be present beyond which an "et al." +% usage is forced. Be sure that num.names.shown.with.forced.et.al (below) +% is not greater than this value! +% Note: There are many instances of references in IEEE journals which have +% a very large number of authors as well as instances in which "et al." is +% used profusely. +FUNCTION {default.max.num.names.before.forced.et.al} { #10 } + + +% The number of names that will be shown with a forced "et al.". +% Must be less than or equal to max.num.names.before.forced.et.al +FUNCTION {default.num.names.shown.with.forced.et.al} { #1 } + + +% #0 turns off the alternate interword spacing for entries with URLs. +% #1 enables +FUNCTION {default.is.use.alt.interword.spacing} { #1 } + + +% If alternate interword spacing for entries with URLs is enabled, this is +% the interword spacing stretch factor that will be used. For example, the +% default "4" here means that the interword spacing in entries with URLs can +% stretch to four times normal. Does not have to be an integer. Note that +% the value specified here can be overridden by the user in their LaTeX +% code via a command such as: +% "\providecommand\BIBentryALTinterwordstretchfactor{1.5}" in addition to +% that via the IEEEtranBSTCTL entry type. +FUNCTION {default.ALTinterwordstretchfactor} { "4" } + + +% #0 turns off the "dashification" of repeated (i.e., identical to those +% of the previous entry) names. The IEEE normally does this. +% #1 enables +FUNCTION {default.is.dash.repeated.names} { #1 } + + +% The default name format control string. +FUNCTION {default.name.format.string}{ "{f.~}{vv~}{ll}{, jj}" } + + +% The default LaTeX font command for the names. +FUNCTION {default.name.latex.cmd}{ "" } + + +% The default URL prefix. +FUNCTION {default.name.url.prefix}{ "[Online]. Available:" } + + +% Other controls that cannot be accessed via IEEEtranBSTCTL entry type. + +% #0 turns off the terminal startup banner/completed message so as to +% operate more quietly. +% #1 enables +FUNCTION {is.print.banners.to.terminal} { #1 } + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% FILE VERSION AND BANNER %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION{bst.file.version} { "1.14" } +FUNCTION{bst.file.date} { "2015/08/26" } +FUNCTION{bst.file.website} { "http://www.michaelshell.org/tex/ieeetran/bibtex/" } + +FUNCTION {banner.message} +{ is.print.banners.to.terminal + { "-- IEEEtranSN.bst version" " " * bst.file.version * + " (" * bst.file.date * ") " * "by Michael Shell." * + top$ + "-- " bst.file.website * + top$ + "-- See the " quote$ * "IEEEtran_bst_HOWTO.pdf" * quote$ * " manual for usage information." * + top$ + "** Sorting Natbib version - not for normal IEEE work." + top$ + } + { skip$ } + if$ +} + +FUNCTION {completed.message} +{ is.print.banners.to.terminal + { "" + top$ + "Done." + top$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING CONSTANTS %% +%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {bbl.a}{ "A" } +FUNCTION {bbl.an}{ "An" } +FUNCTION {bbl.and}{ "and" } +FUNCTION {bbl.etal}{ "et~al." } +FUNCTION {bbl.editors}{ "eds." } +FUNCTION {bbl.editor}{ "ed." } +FUNCTION {bbl.edition}{ "ed." } +FUNCTION {bbl.volume}{ "vol." } +FUNCTION {bbl.of}{ "of" } +FUNCTION {bbl.number}{ "no." } +FUNCTION {bbl.in}{ "in" } +FUNCTION {bbl.pages}{ "pp." } +FUNCTION {bbl.page}{ "p." } +FUNCTION {bbl.chapter}{ "ch." } +FUNCTION {bbl.paper}{ "paper" } +FUNCTION {bbl.part}{ "pt." } +FUNCTION {bbl.patent}{ "Patent" } +FUNCTION {bbl.patentUS}{ "U.S." } +FUNCTION {bbl.revision}{ "Rev." } +FUNCTION {bbl.series}{ "ser." } +FUNCTION {bbl.standard}{ "Std." } +FUNCTION {bbl.techrep}{ "Tech. Rep." } +FUNCTION {bbl.the}{ "The" } +FUNCTION {bbl.mthesis}{ "Master's thesis" } +FUNCTION {bbl.phdthesis}{ "Ph.D. dissertation" } +FUNCTION {bbl.st}{ "st" } +FUNCTION {bbl.nd}{ "nd" } +FUNCTION {bbl.rd}{ "rd" } +FUNCTION {bbl.th}{ "th" } + + +% This is the LaTeX spacer that is used when a larger than normal space +% is called for (such as just before the address:publisher). +FUNCTION {large.space} { "\hskip 1em plus 0.5em minus 0.4em\relax " } + +% The LaTeX code for dashes that are used to represent repeated names. +% Note: Some older IEEE journals used something like +% "\rule{0.275in}{0.5pt}\," which is fairly thick and runs right along +% the baseline. However, the IEEE now uses a thinner, above baseline, +% six dash long sequence. +FUNCTION {repeated.name.dashes} { "------" } + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% PREDEFINED STRING MACROS %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +MACRO {jan} {"Jan."} +MACRO {feb} {"Feb."} +MACRO {mar} {"Mar."} +MACRO {apr} {"Apr."} +MACRO {may} {"May"} +MACRO {jun} {"Jun."} +MACRO {jul} {"Jul."} +MACRO {aug} {"Aug."} +MACRO {sep} {"Sep."} +MACRO {oct} {"Oct."} +MACRO {nov} {"Nov."} +MACRO {dec} {"Dec."} + + + +%%%%%%%%%%%%%%%%%% +%% ENTRY FIELDS %% +%%%%%%%%%%%%%%%%%% + +ENTRY + { address + assignee + author + booktitle + chapter + day + dayfiled + edition + editor + howpublished + institution + intype + journal + key + language + month + monthfiled + nationality + note + number + organization + pages + paper + publisher + school + series + revision + title + type + url + volume + year + yearfiled + CTLuse_article_number + CTLuse_paper + CTLuse_url + CTLuse_forced_etal + CTLmax_names_forced_etal + CTLnames_show_etal + CTLuse_alt_spacing + CTLalt_stretch_factor + CTLdash_repeated_names + CTLname_format_string + CTLname_latex_cmd + CTLname_url_prefix + } + {} + { label extra.label sort.label short.list} + + + + +%%%%%%%%%%%%%%%%%%%%%%% +%% INTEGER VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%%% + +INTEGERS { prev.status.punct this.status.punct punct.std + punct.no punct.comma punct.period + prev.status.space this.status.space space.std + space.no space.normal space.large + prev.status.quote this.status.quote quote.std + quote.no quote.close + prev.status.nline this.status.nline nline.std + nline.no nline.newblock + status.cap cap.std + cap.no cap.yes} + +INTEGERS { longest.label.width multiresult nameptr namesleft number.label numnames } + +INTEGERS { is.use.number.for.article + is.use.paper + is.use.url + is.forced.et.al + max.num.names.before.forced.et.al + num.names.shown.with.forced.et.al + is.use.alt.interword.spacing + is.dash.repeated.names} + + +%%%%%%%%%%%%%%%%%%%%%% +%% STRING VARIABLES %% +%%%%%%%%%%%%%%%%%%%%%% + +STRINGS { bibinfo + longest.label + oldname + s + t + ALTinterwordstretchfactor + name.format.string + name.latex.cmd + name.url.prefix} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOW LEVEL FUNCTIONS %% +%%%%%%%%%%%%%%%%%%%%%%%%% + +FUNCTION {initialize.controls} +{ default.is.use.number.for.article 'is.use.number.for.article := + default.is.use.paper 'is.use.paper := + default.is.use.url 'is.use.url := + default.is.forced.et.al 'is.forced.et.al := + default.max.num.names.before.forced.et.al 'max.num.names.before.forced.et.al := + default.num.names.shown.with.forced.et.al 'num.names.shown.with.forced.et.al := + default.is.use.alt.interword.spacing 'is.use.alt.interword.spacing := + default.is.dash.repeated.names 'is.dash.repeated.names := + default.ALTinterwordstretchfactor 'ALTinterwordstretchfactor := + default.name.format.string 'name.format.string := + default.name.latex.cmd 'name.latex.cmd := + default.name.url.prefix 'name.url.prefix := +} + + +% This IEEEtran.bst features a very powerful and flexible mechanism for +% controlling the capitalization, punctuation, spacing, quotation, and +% newlines of the formatted entry fields. (Note: IEEEtran.bst does not need +% or use the newline/newblock feature, but it has been implemented for +% possible future use.) The output states of IEEEtran.bst consist of +% multiple independent attributes and, as such, can be thought of as being +% vectors, rather than the simple scalar values ("before.all", +% "mid.sentence", etc.) used in most other .bst files. +% +% The more flexible and complex design used here was motivated in part by +% the IEEE's rather unusual bibliography style. For example, the IEEE ends the +% previous field item with a period and large space prior to the publisher +% address; the @electronic entry types use periods as inter-item punctuation +% rather than the commas used by the other entry types; and URLs are never +% followed by periods even though they are the last item in the entry. +% Although it is possible to accommodate these features with the conventional +% output state system, the seemingly endless exceptions make for convoluted, +% unreliable and difficult to maintain code. +% +% IEEEtran.bst's output state system can be easily understood via a simple +% illustration of two most recently formatted entry fields (on the stack): +% +% CURRENT_ITEM +% "PREVIOUS_ITEM +% +% which, in this example, is to eventually appear in the bibliography as: +% +% "PREVIOUS_ITEM," CURRENT_ITEM +% +% It is the job of the output routine to take the previous item off of the +% stack (while leaving the current item at the top of the stack), apply its +% trailing punctuation (including closing quote marks) and spacing, and then +% to write the result to BibTeX's output buffer: +% +% "PREVIOUS_ITEM," +% +% Punctuation (and spacing) between items is often determined by both of the +% items rather than just the first one. The presence of quotation marks +% further complicates the situation because, in standard English, trailing +% punctuation marks are supposed to be contained within the quotes. +% +% IEEEtran.bst maintains two output state (aka "status") vectors which +% correspond to the previous and current (aka "this") items. Each vector +% consists of several independent attributes which track punctuation, +% spacing, quotation, and newlines. Capitalization status is handled by a +% separate scalar because the format routines, not the output routine, +% handle capitalization and, therefore, there is no need to maintain the +% capitalization attribute for both the "previous" and "this" items. +% +% When a format routine adds a new item, it copies the current output status +% vector to the previous output status vector and (usually) resets the +% current (this) output status vector to a "standard status" vector. Using a +% "standard status" vector in this way allows us to redefine what we mean by +% "standard status" at the start of each entry handler and reuse the same +% format routines under the various inter-item separation schemes. For +% example, the standard status vector for the @book entry type may use +% commas for item separators, while the @electronic type may use periods, +% yet both entry handlers exploit many of the exact same format routines. +% +% Because format routines have write access to the output status vector of +% the previous item, they can override the punctuation choices of the +% previous format routine! Therefore, it becomes trivial to implement rules +% such as "Always use a period and a large space before the publisher." By +% pushing the generation of the closing quote mark to the output routine, we +% avoid all the problems caused by having to close a quote before having all +% the information required to determine what the punctuation should be. +% +% The IEEEtran.bst output state system can easily be expanded if needed. +% For instance, it is easy to add a "space.tie" attribute value if the +% bibliography rules mandate that two items have to be joined with an +% unbreakable space. + +FUNCTION {initialize.status.constants} +{ #0 'punct.no := + #1 'punct.comma := + #2 'punct.period := + #0 'space.no := + #1 'space.normal := + #2 'space.large := + #0 'quote.no := + #1 'quote.close := + #0 'cap.no := + #1 'cap.yes := + #0 'nline.no := + #1 'nline.newblock := +} + +FUNCTION {std.status.using.comma} +{ punct.comma 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.no 'cap.std := +} + +FUNCTION {std.status.using.period} +{ punct.period 'punct.std := + space.normal 'space.std := + quote.no 'quote.std := + nline.no 'nline.std := + cap.yes 'cap.std := +} + +FUNCTION {initialize.prev.this.status} +{ punct.no 'prev.status.punct := + space.no 'prev.status.space := + quote.no 'prev.status.quote := + nline.no 'prev.status.nline := + punct.no 'this.status.punct := + space.no 'this.status.space := + quote.no 'this.status.quote := + nline.no 'this.status.nline := + cap.yes 'status.cap := +} + +FUNCTION {this.status.std} +{ punct.std 'this.status.punct := + space.std 'this.status.space := + quote.std 'this.status.quote := + nline.std 'this.status.nline := +} + +FUNCTION {cap.status.std}{ cap.std 'status.cap := } + +FUNCTION {this.to.prev.status} +{ this.status.punct 'prev.status.punct := + this.status.space 'prev.status.space := + this.status.quote 'prev.status.quote := + this.status.nline 'prev.status.nline := +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ { skip$ } + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + { skip$ } + if$ +} + + +% convert the strings "yes" or "no" to #1 or #0 respectively +FUNCTION {yes.no.to.int} +{ "l" change.case$ duplicate$ + "yes" = + { pop$ #1 } + { duplicate$ "no" = + { pop$ #0 } + { "unknown boolean " quote$ * swap$ * quote$ * + " in " * cite$ * warning$ + #0 + } + if$ + } + if$ +} + + +% pushes true if the single char string on the stack is in the +% range of "0" to "9" +FUNCTION {is.num} +{ chr.to.int$ + duplicate$ "0" chr.to.int$ < not + swap$ "9" chr.to.int$ > not and +} + +% multiplies the integer on the stack by a factor of 10 +FUNCTION {bump.int.mag} +{ #0 'multiresult := + { duplicate$ #0 > } + { #1 - + multiresult #10 + + 'multiresult := + } + while$ +pop$ +multiresult +} + +% converts a single character string on the stack to an integer +FUNCTION {char.to.integer} +{ duplicate$ + is.num + { chr.to.int$ "0" chr.to.int$ - } + {"noninteger character " quote$ * swap$ * quote$ * + " in integer field of " * cite$ * warning$ + #0 + } + if$ +} + +% converts a string on the stack to an integer +FUNCTION {string.to.integer} +{ duplicate$ text.length$ 'namesleft := + #1 'nameptr := + #0 'numnames := + { nameptr namesleft > not } + { duplicate$ nameptr #1 substring$ + char.to.integer numnames bump.int.mag + + 'numnames := + nameptr #1 + + 'nameptr := + } + while$ +pop$ +numnames +} + + + + +% The output routines write out the *next* to the top (previous) item on the +% stack, adding punctuation and such as needed. Since IEEEtran.bst maintains +% the output status for the top two items on the stack, these output +% routines have to consider the previous output status (which corresponds to +% the item that is being output). Full independent control of punctuation, +% closing quote marks, spacing, and newblock is provided. +% +% "output.nonnull" does not check for the presence of a previous empty +% item. +% +% "output" does check for the presence of a previous empty item and will +% remove an empty item rather than outputing it. +% +% "output.warn" is like "output", but will issue a warning if it detects +% an empty item. + +FUNCTION {output.nonnull} +{ swap$ + prev.status.punct punct.comma = + { "," * } + { skip$ } + if$ + prev.status.punct punct.period = + { add.period$ } + { skip$ } + if$ + prev.status.quote quote.close = + { "''" * } + { skip$ } + if$ + prev.status.space space.normal = + { " " * } + { skip$ } + if$ + prev.status.space space.large = + { large.space * } + { skip$ } + if$ + write$ + prev.status.nline nline.newblock = + { newline$ "\newblock " write$ } + { skip$ } + if$ +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.warn} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +% "fin.entry" is the output routine that handles the last item of the entry +% (which will be on the top of the stack when "fin.entry" is called). + +FUNCTION {fin.entry} +{ this.status.punct punct.no = + { skip$ } + { add.period$ } + if$ + this.status.quote quote.close = + { "''" * } + { skip$ } + if$ +write$ +newline$ +} + + +FUNCTION {is.last.char.not.punct} +{ duplicate$ + "}" * add.period$ + #-1 #1 substring$ "." = +} + +FUNCTION {is.multiple.pages} +{ '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 {capitalize}{ "u" change.case$ "t" change.case$ } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +FUNCTION {do.name.latex.cmd} +{ name.latex.cmd + empty$ + { skip$ } + { name.latex.cmd "{" * swap$ * "}" * } + if$ +} + +% IEEEtran.bst uses its own \BIBforeignlanguage command which directly +% invokes the TeX hyphenation patterns without the need of the Babel +% package. Babel does a lot more than switch hyphenation patterns and +% its loading can cause unintended effects in many class files (such as +% IEEEtran.cls). +FUNCTION {select.language} +{ duplicate$ empty$ 'pop$ + { language empty$ 'skip$ + { "\BIBforeignlanguage{" language * "}{" * swap$ * "}" * } + if$ + } + if$ +} + +FUNCTION {tie.or.space.prefix} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ +} + +FUNCTION {get.bbl.editor} +{ editor num.names$ #1 > 'bbl.editors 'bbl.editor if$ } + +FUNCTION {space.word}{ " " swap$ * " " * } + + +% Field Conditioners, Converters, Checkers and External Interfaces + +FUNCTION {empty.field.to.null.string} +{ duplicate$ empty$ + { pop$ "" } + { skip$ } + if$ +} + +FUNCTION {either.or.check} +{ empty$ + { pop$ } + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {empty.entry.warn} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ url empty$ + and and and and and and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + + +% The bibinfo system provides a way for the electronic parsing/acquisition +% of a bibliography's contents as is done by ReVTeX. For example, a field +% could be entered into the bibliography as: +% \bibinfo{volume}{2} +% Only the "2" would show up in the document, but the LaTeX \bibinfo command +% could do additional things with the information. IEEEtran.bst does provide +% a \bibinfo command via "\providecommand{\bibinfo}[2]{#2}". However, it is +% currently not used as the bogus bibinfo functions defined here output the +% entry values directly without the \bibinfo wrapper. The bibinfo functions +% themselves (and the calls to them) are retained for possible future use. +% +% bibinfo.check avoids acting on missing fields while bibinfo.warn will +% issue a warning message if a missing field is detected. Prior to calling +% the bibinfo functions, the user should push the field value and then its +% name string, in that order. + +FUNCTION {bibinfo.check} +{ swap$ duplicate$ missing$ + { pop$ pop$ "" } + { duplicate$ empty$ + { swap$ pop$ } + { swap$ pop$ } + if$ + } + if$ +} + +FUNCTION {bibinfo.warn} +{ swap$ duplicate$ missing$ + { swap$ "missing " swap$ * " in " * cite$ * warning$ pop$ "" } + { duplicate$ empty$ + { swap$ "empty " swap$ * " in " * cite$ * warning$ } + { swap$ pop$ } + if$ + } + if$ +} + + +% The IEEE separates large numbers with more than 4 digits into groups of +% three. The IEEE uses a small space to separate these number groups. +% Typical applications include patent and page numbers. + +% number of consecutive digits required to trigger the group separation. +FUNCTION {large.number.trigger}{ #5 } + +% For numbers longer than the trigger, this is the blocksize of the groups. +% The blocksize must be less than the trigger threshold, and 2 * blocksize +% must be greater than the trigger threshold (can't do more than one +% separation on the initial trigger). +FUNCTION {large.number.blocksize}{ #3 } + +% What is actually inserted between the number groups. +FUNCTION {large.number.separator}{ "\," } + +% So as to save on integer variables by reusing existing ones, numnames +% holds the current number of consecutive digits read and nameptr holds +% the number that will trigger an inserted space. +FUNCTION {large.number.separate} +{ 't := + "" + #0 'numnames := + large.number.trigger 'nameptr := + { t empty$ not } + { t #-1 #1 substring$ is.num + { numnames #1 + 'numnames := } + { #0 'numnames := + large.number.trigger 'nameptr := + } + if$ + t #-1 #1 substring$ swap$ * + t #-2 global.max$ substring$ 't := + numnames nameptr = + { duplicate$ #1 nameptr large.number.blocksize - substring$ swap$ + nameptr large.number.blocksize - #1 + global.max$ substring$ + large.number.separator swap$ * * + nameptr large.number.blocksize - 'numnames := + large.number.blocksize #1 + 'nameptr := + } + { skip$ } + if$ + } + while$ +} + +% Converts all single dashes "-" to double dashes "--". +FUNCTION {n.dashify} +{ large.number.separate + '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$ +} + + +% This function detects entries with names that are identical to that of +% the previous entry and replaces the repeated names with dashes (if the +% "is.dash.repeated.names" user control is nonzero). +FUNCTION {name.or.dash} +{ 's := + oldname empty$ + { s 'oldname := s } + { s oldname = + { is.dash.repeated.names + { repeated.name.dashes } + { s 'oldname := s } + if$ + } + { s 'oldname := s } + if$ + } + if$ +} + +% Converts the number string on the top of the stack to +% "numerical ordinal form" (e.g., "7" to "7th"). There is +% no artificial limit to the upper bound of the numbers as the +% two least significant digits determine the ordinal form. +FUNCTION {num.to.ordinal} +{ duplicate$ #-2 #1 substring$ "1" = + { bbl.th * } + { duplicate$ #-1 #1 substring$ "1" = + { bbl.st * } + { duplicate$ #-1 #1 substring$ "2" = + { bbl.nd * } + { duplicate$ #-1 #1 substring$ "3" = + { bbl.rd * } + { bbl.th * } + if$ + } + if$ + } + if$ + } + if$ +} + +% If the string on the top of the stack begins with a number, +% (e.g., 11th) then replace the string with the leading number +% it contains. Otherwise retain the string as-is. s holds the +% extracted number, t holds the part of the string that remains +% to be scanned. +FUNCTION {extract.num} +{ duplicate$ 't := + "" 's := + { t empty$ not } + { t #1 #1 substring$ + t #2 global.max$ substring$ 't := + duplicate$ is.num + { s swap$ * 's := } + { pop$ "" 't := } + if$ + } + while$ + s empty$ + 'skip$ + { pop$ s } + if$ +} + +% Converts the word number string on the top of the stack to +% Arabic string form. Will be successful up to "tenth". +FUNCTION {word.to.num} +{ duplicate$ "l" change.case$ 's := + s "first" = + { pop$ "1" } + { skip$ } + if$ + s "second" = + { pop$ "2" } + { skip$ } + if$ + s "third" = + { pop$ "3" } + { skip$ } + if$ + s "fourth" = + { pop$ "4" } + { skip$ } + if$ + s "fifth" = + { pop$ "5" } + { skip$ } + if$ + s "sixth" = + { pop$ "6" } + { skip$ } + if$ + s "seventh" = + { pop$ "7" } + { skip$ } + if$ + s "eighth" = + { pop$ "8" } + { skip$ } + if$ + s "ninth" = + { pop$ "9" } + { skip$ } + if$ + s "tenth" = + { pop$ "10" } + { skip$ } + if$ +} + + +% Converts the string on the top of the stack to numerical +% ordinal (e.g., "11th") form. +FUNCTION {convert.edition} +{ duplicate$ empty$ 'skip$ + { duplicate$ #1 #1 substring$ is.num + { extract.num + num.to.ordinal + } + { word.to.num + duplicate$ #1 #1 substring$ is.num + { num.to.ordinal } + { "edition ordinal word " quote$ * edition * quote$ * + " may be too high (or improper) for conversion" * " in " * cite$ * warning$ + } + if$ + } + if$ + } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LATEX BIBLIOGRAPHY CODE %% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% from plainnat.bst +FUNCTION {format.full.names} +{'s := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { " " bbl.etal * * } + { " " bbl.and * " " * * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.full} +{ author empty$ + { editor empty$ + { "" } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.full} +{ author empty$ + { "" } + { author format.full.names } + if$ +} + +FUNCTION {editor.full} +{ editor empty$ + { "" } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + { author.editor.full } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.full } + { author.full } + if$ + } + if$ +} +% END from plainnat.bst + +FUNCTION {start.entry} +{ newline$ + "\bibitem[" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + initialize.prev.this.status +} + +% Here we write out all the LaTeX code that we will need. The most involved +% code sequences are those that control the alternate interword spacing and +% foreign language hyphenation patterns. The heavy use of \providecommand +% gives users a way to override the defaults. Special thanks to Javier Bezos, +% Johannes Braams, Robin Fairbairns, Heiko Oberdiek, Donald Arseneau and all +% the other gurus on comp.text.tex for their help and advice on the topic of +% \selectlanguage, Babel and BibTeX. +FUNCTION {begin.bib} +{ "% Generated by IEEEtranSN.bst, version: " bst.file.version * " (" * bst.file.date * ")" * + write$ newline$ + preamble$ empty$ 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ + "\providecommand{\url}[1]{#1}" + write$ newline$ + "\csname url@samestyle\endcsname" + write$ newline$ + "\providecommand{\newblock}{\relax}" + write$ newline$ + "\providecommand{\bibinfo}[2]{#2}" + write$ newline$ + "\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}" + write$ newline$ + "\providecommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + "\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus " + write$ newline$ + "\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}" + write$ newline$ + "\providecommand{\BIBforeignlanguage}[2]{{%" + write$ newline$ + "\expandafter\ifx\csname l@#1\endcsname\relax" + write$ newline$ + "\typeout{** WARNING: IEEEtranSN.bst: No hyphenation pattern has been}%" + write$ newline$ + "\typeout{** loaded for the language `#1'. Using the pattern for}%" + write$ newline$ + "\typeout{** the default language instead.}%" + write$ newline$ + "\else" + write$ newline$ + "\language=\csname l@#1\endcsname" + write$ newline$ + "\fi" + write$ newline$ + "#2}}" + write$ newline$ + "\providecommand{\BIBdecl}{\relax}" + write$ newline$ + "\BIBdecl" + write$ newline$ +} + +FUNCTION {end.bib} +{ newline$ "\end{thebibliography}" write$ newline$ } + +FUNCTION {if.url.alt.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentryALTinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + +FUNCTION {if.url.std.interword.spacing} +{ is.use.alt.interword.spacing + { is.use.url + { url empty$ 'skip$ {"\BIBentrySTDinterwordspacing" write$ newline$} if$ } + { skip$ } + if$ + } + { skip$ } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%%% +%% FORMAT HANDLERS %% +%%%%%%%%%%%%%%%%%%%%% + +%% Lower Level Formats (used by higher level formats) + +FUNCTION {format.address.org.or.pub.date} +{ 't := + "" + year empty$ + { "empty year in " cite$ * warning$ } + { skip$ } + if$ + address empty$ t empty$ and + year empty$ and month empty$ and + { skip$ } + { this.to.prev.status + this.status.std + cap.status.std + address "address" bibinfo.check * + t empty$ + { skip$ } + { punct.period 'prev.status.punct := + space.large 'prev.status.space := + address empty$ + { skip$ } + { ": " * } + if$ + t * + } + if$ + year empty$ month empty$ and + { skip$ } + { t empty$ address empty$ and + { skip$ } + { ", " * } + if$ + month empty$ + { year empty$ + { skip$ } + { year "year" bibinfo.check * } + if$ + } + { month "month" bibinfo.check * + year empty$ + { skip$ } + { " " * year "year" bibinfo.check * } + if$ + } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.names} +{ 'bibinfo := + duplicate$ empty$ 'skip$ { + this.to.prev.status + this.status.std + 's := + "" 't := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + name.format.string + format.name$ + bibinfo bibinfo.check + 't := + nameptr #1 > + { nameptr num.names.shown.with.forced.et.al #1 + = + numnames max.num.names.before.forced.et.al > + is.forced.et.al and and + { "others" 't := + #1 'namesleft := + } + { skip$ } + if$ + namesleft #1 > + { ", " * t do.name.latex.cmd * } + { s nameptr "{ll}" format.name$ duplicate$ "others" = + { 't := } + { pop$ } + if$ + t "others" = + { " " * bbl.etal emphasize * } + { numnames #2 > + { "," * } + { skip$ } + if$ + bbl.and + space.word * t do.name.latex.cmd * + } + if$ + } + if$ + } + { t do.name.latex.cmd } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + cap.status.std + } if$ +} + + + + +%% Higher Level Formats + +%% addresses/locations + +FUNCTION {format.address} +{ address duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% author/editor names + +FUNCTION {format.authors}{ author "author" format.names } + +FUNCTION {format.editors} +{ editor "editor" format.names duplicate$ empty$ 'skip$ + { ", " * + get.bbl.editor + capitalize + * + } + if$ +} + + + +%% date + +FUNCTION {format.date} +{ + month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "there's a month but no year in " cite$ * warning$ } + if$ + * + } + { this.to.prev.status + this.status.std + cap.status.std + swap$ 'skip$ + { + swap$ + " " * swap$ + } + if$ + * + } + if$ +} + +FUNCTION {format.date.electronic} +{ month "month" bibinfo.check duplicate$ empty$ + year "year" bibinfo.check duplicate$ empty$ + { swap$ + { pop$ } + { "there's a month but no year in " cite$ * warning$ + pop$ ")" * "(" swap$ * + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ + } + { swap$ + { swap$ pop$ ")" * "(" swap$ * } + { "(" swap$ * ", " * swap$ * ")" * } + if$ + this.to.prev.status + punct.no 'this.status.punct := + space.normal 'this.status.space := + quote.no 'this.status.quote := + cap.yes 'status.cap := + } + if$ +} + + + +%% edition/title + +% Note: The IEEE considers the edition to be closely associated with +% the title of a book. So, in IEEEtran.bst the edition is normally handled +% within the formatting of the title. The format.edition function is +% retained here for possible future use. +FUNCTION {format.edition} +{ edition duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + convert.edition + status.cap + { "t" } + { "l" } + if$ change.case$ + "edition" bibinfo.check + "~" * bbl.edition * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of a conference proceedings. +% Here we use the "intype" field to provide the user a way to +% override the word "in" (e.g., with things like "presented at") +% Use of intype stops the emphasis of the booktitle to indicate that +% we no longer mean the written conference proceedings, but the +% conference itself. +FUNCTION {format.in.booktitle} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + intype missing$ + { emphasize + bbl.in " " * + } + { intype " " * } + if$ + swap$ * + cap.status.std + } + if$ +} + +% This is used to format the booktitle of collection. +% Here the "intype" field is not supported, but "edition" is. +FUNCTION {format.in.booktitle.edition} +{ booktitle "booktitle" bibinfo.check duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + "l" change.case$ + * "~" * bbl.edition * + } + if$ + bbl.in " " * swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ 'skip$ + { quote.close 'this.status.quote := + is.last.char.not.punct + { punct.std 'this.status.punct := } + { punct.no 'this.status.punct := } + if$ + select.language + "``" swap$ * + cap.status.std + } + if$ +} + +FUNCTION {format.article.title.electronic} +{ title duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + "t" change.case$ + } + if$ + "title" bibinfo.check + duplicate$ empty$ + { skip$ } + { select.language } + if$ +} + +FUNCTION {format.book.title.edition} +{ title "title" bibinfo.check + duplicate$ empty$ + { "empty title in " cite$ * warning$ } + { this.to.prev.status + this.status.std + select.language + emphasize + edition empty$ 'skip$ + { ", " * + edition + convert.edition + status.cap + { "t" } + { "l" } + if$ + change.case$ + * "~" * bbl.edition * + } + if$ + cap.status.std + } + if$ +} + +FUNCTION {format.book.title} +{ title "title" bibinfo.check + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% journal + +FUNCTION {format.journal} +{ journal duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + select.language + emphasize + } + if$ +} + + + +%% how published + +FUNCTION {format.howpublished} +{ howpublished duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% institutions/organization/publishers/school + +FUNCTION {format.institution} +{ institution duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.organization} +{ organization duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + +FUNCTION {format.address.publisher.date} +{ publisher "publisher" bibinfo.warn format.address.org.or.pub.date } + +FUNCTION {format.address.publisher.date.nowarn} +{ publisher "publisher" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.address.organization.date} +{ organization "organization" bibinfo.check format.address.org.or.pub.date } + +FUNCTION {format.school} +{ school duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + cap.status.std + } + if$ +} + + + +%% volume/number/series/chapter/pages + +FUNCTION {format.volume} +{ volume empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + bbl.volume + status.cap + { capitalize } + { skip$ } + if$ + swap$ tie.or.space.prefix + "volume" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number} +{ number empty.field.to.null.string + duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + status.cap + { bbl.number capitalize } + { bbl.number } + if$ + swap$ tie.or.space.prefix + "number" bibinfo.check + * * + cap.status.std + } + if$ +} + +FUNCTION {format.number.if.use.for.article} +{ is.use.number.for.article + { format.number } + { "" } + if$ +} + +% The IEEE does not seem to tie the series so closely with the volume +% and number as is done in other bibliography styles. Instead the +% series is treated somewhat like an extension of the title. +FUNCTION {format.series} +{ series empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.series " " * + series "series" bibinfo.check * + cap.status.std + } + if$ +} + + +FUNCTION {format.chapter} +{ chapter empty$ + { "" } + { this.to.prev.status + this.status.std + type empty$ + { bbl.chapter } + { type "l" change.case$ + "type" bibinfo.check + } + if$ + chapter tie.or.space.prefix + "chapter" bibinfo.check + * * + cap.status.std + } + if$ +} + + +% The intended use of format.paper is for paper numbers of inproceedings. +% The paper type can be overridden via the type field. +% We allow the type to be displayed even if the paper number is absent +% for things like "postdeadline paper" +FUNCTION {format.paper} +{ is.use.paper + { paper empty$ + { type empty$ + { "" } + { this.to.prev.status + this.status.std + type "type" bibinfo.check + cap.status.std + } + if$ + } + { this.to.prev.status + this.status.std + type empty$ + { bbl.paper } + { type "type" bibinfo.check } + if$ + " " * paper + "paper" bibinfo.check + * + cap.status.std + } + if$ + } + { "" } + if$ +} + + +FUNCTION {format.pages} +{ pages duplicate$ empty$ 'skip$ + { this.to.prev.status + this.status.std + duplicate$ is.multiple.pages + { + bbl.pages swap$ + n.dashify + } + { + bbl.page swap$ + } + if$ + tie.or.space.prefix + "pages" bibinfo.check + * * + cap.status.std + } + if$ +} + + + +%% technical report number + +FUNCTION {format.tech.report.number} +{ number "number" bibinfo.check + this.to.prev.status + this.status.std + cap.status.std + type duplicate$ empty$ + { pop$ + bbl.techrep + } + { skip$ } + if$ + "type" bibinfo.check + swap$ duplicate$ empty$ + { pop$ } + { tie.or.space.prefix * * } + if$ +} + + + +%% note + +FUNCTION {format.note} +{ note empty$ + { "" } + { this.to.prev.status + this.status.std + punct.period 'this.status.punct := + note #1 #1 substring$ + duplicate$ "{" = + { skip$ } + { status.cap + { "u" } + { "l" } + if$ + change.case$ + } + if$ + note #2 global.max$ substring$ * "note" bibinfo.check + cap.yes 'status.cap := + } + if$ +} + + + +%% patent + +FUNCTION {format.patent.date} +{ this.to.prev.status + this.status.std + year empty$ + { monthfiled duplicate$ empty$ + { "monthfiled" bibinfo.check pop$ "" } + { "monthfiled" bibinfo.check } + if$ + dayfiled duplicate$ empty$ + { "dayfiled" bibinfo.check pop$ "" * } + { "dayfiled" bibinfo.check + monthfiled empty$ + { "dayfiled without a monthfiled in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + yearfiled empty$ + { "no year or yearfiled in " cite$ * warning$ } + { yearfiled "yearfiled" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + } + { month duplicate$ empty$ + { "month" bibinfo.check pop$ "" } + { "month" bibinfo.check } + if$ + day duplicate$ empty$ + { "day" bibinfo.check pop$ "" * } + { "day" bibinfo.check + month empty$ + { "day without a month in " cite$ * warning$ + * + } + { " " swap$ * * } + if$ + } + if$ + year "year" bibinfo.check + swap$ + duplicate$ empty$ + { pop$ } + { ", " * swap$ * } + if$ + } + if$ + cap.status.std +} + +FUNCTION {format.patent.nationality.type.number} +{ this.to.prev.status + this.status.std + nationality duplicate$ empty$ + { "nationality" bibinfo.warn pop$ "" } + { "nationality" bibinfo.check + duplicate$ "l" change.case$ "united states" = + { pop$ bbl.patentUS } + { skip$ } + if$ + " " * + } + if$ + type empty$ + { bbl.patent "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.warn pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + + + +%% standard + +FUNCTION {format.organization.institution.standard.type.number} +{ this.to.prev.status + this.status.std + organization duplicate$ empty$ + { pop$ + institution duplicate$ empty$ + { "institution" bibinfo.warn } + { "institution" bibinfo.warn " " * } + if$ + } + { "organization" bibinfo.warn " " * } + if$ + type empty$ + { bbl.standard "type" bibinfo.check } + { type "type" bibinfo.check } + if$ + * + number duplicate$ empty$ + { "number" bibinfo.check pop$ } + { "number" bibinfo.check + large.number.separate + swap$ " " * swap$ * + } + if$ + cap.status.std +} + +FUNCTION {format.revision} +{ revision empty$ + { "" } + { this.to.prev.status + this.status.std + bbl.revision + revision tie.or.space.prefix + "revision" bibinfo.check + * * + cap.status.std + } + if$ +} + + +%% thesis + +FUNCTION {format.master.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.mthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + +FUNCTION {format.phd.thesis.type} +{ this.to.prev.status + this.status.std + type empty$ + { + bbl.phdthesis + } + { + type "type" bibinfo.check + } + if$ +cap.status.std +} + + + +%% URL + +FUNCTION {format.url} +{ is.use.url + { url empty$ + { "" } + { this.to.prev.status + this.status.std + cap.yes 'status.cap := + name.url.prefix " " * + "\url{" * url * "}" * + punct.no 'this.status.punct := + punct.period 'prev.status.punct := + space.normal 'this.status.space := + space.normal 'prev.status.space := + quote.no 'this.status.quote := + } + if$ + } + { "" } + if$ +} + + + + +%%%%%%%%%%%%%%%%%%%% +%% ENTRY HANDLERS %% +%%%%%%%%%%%%%%%%%%%% + + +% Note: In many journals, the IEEE (or the authors) tend not to show the number +% for articles, so the display of the number is controlled here by the +% switch "is.use.number.for.article" +FUNCTION {article} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.journal "journal" bibinfo.check "journal" output.warn + format.volume output + format.number.if.use.for.article output + format.pages output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {book} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + author empty$ + { skip$ } + { format.editors output } + if$ + format.address.publisher.date output + format.volume output + format.number output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {booklet} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {electronic} +{ std.status.using.period + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.date.electronic output + format.article.title.electronic output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {inbook} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + author empty$ + { format.editors "author and editor" output.warn } + { format.authors output.nonnull } + if$ + name.or.dash + format.book.title.edition output + format.series output + format.address.publisher.date output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {incollection} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle.edition "booktitle" output.warn + format.series output + format.editors output + format.address.publisher.date.nowarn output + format.volume output + format.number output + format.chapter output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {inproceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.in.booktitle "booktitle" output.warn + format.series output + format.editors output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.paper output + format.pages output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {manual} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title.edition "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {mastersthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.master.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {misc} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.howpublished "howpublished" bibinfo.check output + format.organization "organization" bibinfo.check output + format.address "address" bibinfo.check output + format.pages output + format.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {patent} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.article.title output + format.patent.nationality.type.number output + format.patent.date output + format.note output + format.url output + fin.entry + empty.entry.warn + if.url.std.interword.spacing +} + +FUNCTION {periodical} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + format.organization "organization" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {phdthesis} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.phd.thesis.type output.nonnull + format.school "school" bibinfo.warn output + format.address "address" bibinfo.check output + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {proceedings} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.editors output + name.or.dash + format.book.title "title" output.warn + format.series output + format.volume output + format.number output + publisher empty$ + { format.address.organization.date output } + { format.organization "organization" bibinfo.check output + format.address.publisher.date output + } + if$ + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {standard} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors output + name.or.dash + format.book.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.organization.institution.standard.type.number output + format.revision output + format.date output + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {techreport} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.howpublished "howpublished" bibinfo.check output + format.institution "institution" bibinfo.warn output + format.address "address" bibinfo.check output + format.tech.report.number output.nonnull + format.date "year" output.warn + format.note output + format.url output + fin.entry + if.url.std.interword.spacing +} + +FUNCTION {unpublished} +{ std.status.using.comma + start.entry + if.url.alt.interword.spacing + format.authors "author" output.warn + name.or.dash + format.article.title "title" output.warn + format.date output + format.note "note" output.warn + format.url output + fin.entry + if.url.std.interword.spacing +} + + +% The special entry type which provides the user interface to the +% BST controls +FUNCTION {IEEEtranBSTCTL} +{ is.print.banners.to.terminal + { "** IEEEtran BST control entry " quote$ * cite$ * quote$ * " detected." * + top$ + } + { skip$ } + if$ + CTLuse_article_number + empty$ + { skip$ } + { CTLuse_article_number + yes.no.to.int + 'is.use.number.for.article := + } + if$ + CTLuse_paper + empty$ + { skip$ } + { CTLuse_paper + yes.no.to.int + 'is.use.paper := + } + if$ + CTLuse_url + empty$ + { skip$ } + { CTLuse_url + yes.no.to.int + 'is.use.url := + } + if$ + CTLuse_forced_etal + empty$ + { skip$ } + { CTLuse_forced_etal + yes.no.to.int + 'is.forced.et.al := + } + if$ + CTLmax_names_forced_etal + empty$ + { skip$ } + { CTLmax_names_forced_etal + string.to.integer + 'max.num.names.before.forced.et.al := + } + if$ + CTLnames_show_etal + empty$ + { skip$ } + { CTLnames_show_etal + string.to.integer + 'num.names.shown.with.forced.et.al := + } + if$ + CTLuse_alt_spacing + empty$ + { skip$ } + { CTLuse_alt_spacing + yes.no.to.int + 'is.use.alt.interword.spacing := + } + if$ + CTLalt_stretch_factor + empty$ + { skip$ } + { CTLalt_stretch_factor + 'ALTinterwordstretchfactor := + "\renewcommand{\BIBentryALTinterwordstretchfactor}{" + ALTinterwordstretchfactor * "}" * + write$ newline$ + } + if$ + CTLdash_repeated_names + empty$ + { skip$ } + { CTLdash_repeated_names + yes.no.to.int + 'is.dash.repeated.names := + } + if$ + CTLname_format_string + empty$ + { skip$ } + { CTLname_format_string + 'name.format.string := + } + if$ + CTLname_latex_cmd + empty$ + { skip$ } + { CTLname_latex_cmd + 'name.latex.cmd := + } + if$ + CTLname_url_prefix + missing$ + { skip$ } + { CTLname_url_prefix + 'name.url.prefix := + } + if$ + + + num.names.shown.with.forced.et.al max.num.names.before.forced.et.al > + { "CTLnames_show_etal cannot be greater than CTLmax_names_forced_etal in " cite$ * warning$ + max.num.names.before.forced.et.al 'num.names.shown.with.forced.et.al := + } + { skip$ } + if$ +} + + +%%%%%%%%%%%%%%%%%%% +%% ENTRY ALIASES %% +%%%%%%%%%%%%%%%%%%% +FUNCTION {conference}{inproceedings} +FUNCTION {online}{electronic} +FUNCTION {internet}{electronic} +FUNCTION {webpage}{electronic} +FUNCTION {www}{electronic} +FUNCTION {default.type}{misc} + + + +%%%%%%%%%%%%%%%%%% +%% MAIN PROGRAM %% +%%%%%%%%%%%%%%%%%% + +READ + +EXECUTE {initialize.controls} +EXECUTE {initialize.status.constants} +EXECUTE {banner.message} + + + +% BEGIN sort code based on plainnat.bst +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + { s } + if$ +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { + s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { numnames #2 > nameptr #2 = and + { "zz" * + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + empty.field.to.null.string * " " * + } + { skip$ } + if$ + t sortify * + } + if$ + } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + bbl.a " " * #2 + bbl.an " " * #3 + bbl.the " " * #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {author.organization.institution.sort} +{ author empty$ + { organization empty$ + { institution empty$ + { key empty$ + { "to sort, need author, organization, institution or key in " cite$ * warning$ "" } + { key sortify } + if$ + } + { bbl.the " " * #4 institution chop.word sortify } + if$ + } + { bbl.the " " * #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + + + + +STRINGS { last.label next.extra } + +INTEGERS { last.extra.num } + +FUNCTION {format.lab.names} +{ 's := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ " " bbl.etal * * } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { " " bbl.etal * * } + { " " bbl.and * " " * * s #2 "{vv~}{ll}" format.name$ * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key } + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.label} +{ author empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.institution.label} +{ author empty$ + { key empty$ + { organization empty$ + { institution empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 institution chop.word #3 text.prefix$ } + if$ + } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.organization.label} +{ editor empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { bbl.the " " * #4 organization chop.word #3 text.prefix$ } + if$ + } + { key } + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.label} +{ type$ "book" = + type$ "inbook" = + or + { author.editor.key.label } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.key.organization.label } + { type$ "manual" = + type$ "electronic" = + type$ "misc" = + or or + { author.key.organization.label } + { type$ "standard" = + { author.key.organization.institution.label } + { author.key.label } + if$ + } + if$ + } + if$ + } + if$ + duplicate$ + 'short.list := + "(" + * + type$ "patent" = + { year empty$ + { yearfiled } + { year } + if$ + } + { year } + if$ + duplicate$ + empty$ + short.list key empty.field.to.null.string = or + { pop$ "" } + { skip$ } + if$ + * + 'label := +} + + + +FUNCTION {presort} +{ type$ "ieeetranbstctl" = + { key empty$ + { "_" } + { key sortify } + if$ + duplicate$ + } + { calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + { author.editor.sort } + { type$ "proceedings" = + type$ "periodical" = + or + { editor.organization.sort } + { type$ "manual" = + type$ "electronic" = + type$ "misc" = + or or + { author.organization.sort } + { type$ "standard" = + { author.organization.institution.sort } + { author.sort } + if$ + } + if$ + } + if$ + } + if$ + " " + * + cite$ + * + } + if$ + #1 entry.max$ substring$ + 'sort.label := + #1 entry.max$ substring$ + 'sort.key$ := +} + + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'longest.label.width := + #0 'last.extra.num := + #0 'number.label := +} + +FUNCTION {forward.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := + } + if$ +} + +FUNCTION {reverse.pass} +{ type$ "ieeetranbstctl" = + { skip$ } + { next.extra "b" = + { "a" 'extra.label := } + { skip$ } + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + { skip$ } + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := + } + if$ +} + +FUNCTION {bib.sort.order} +{ sort.label 'sort.key$ := +} +% END sort code based on plainnat.bst + + + + +ITERATE {presort} + +SORT + +EXECUTE {initialize.longest.label} + +ITERATE {forward.pass} +REVERSE {reverse.pass} + +ITERATE {bib.sort.order} + +SORT + +EXECUTE {begin.bib} +ITERATE {call.type$} +EXECUTE {end.bib} + +EXECUTE{completed.message} + + +%% That's all folks, mds. diff --git a/IEEEtran/bibtex/IEEEtran_bst_HOWTO.pdf b/IEEEtran/bibtex/IEEEtran_bst_HOWTO.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a9d1b408f7479774a6ed3b26cda249b867be3e33 GIT binary patch literal 286900 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 z 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 literal 0 HcmV?d00001 diff --git a/IEEEtran/bibtex/README b/IEEEtran/bibtex/README new file mode 100644 index 0000000..ade47cd --- /dev/null +++ b/IEEEtran/bibtex/README @@ -0,0 +1,138 @@ + +August 26, 2015 + + +IEEEtran.bst is the official BibTeX style for authors of the Institute of +Electrical and Electronics Engineers (IEEE) Transactions journals and +conferences. + +It also may have applications for other academic work such as theses and +technical reports. The alphanumeric and natbib variants extend the +applicability of the IEEEtran bibstyle family to the natural sciences +and beyond. + +The IEEEtran bibstyle is a very comprehensive BibTeX style which provides +many features beyond the standard BibTeX styles, including full support +for references of online documents, patents, periodicals and standards. +See the provided user manual for detailed usage information. + +The latest version of the IEEEtran BibTeX style can be found at CTAN: + +http://www.ctan.org/pkg/ieeetran + +as well as within IEEE's site: + +http://www.ieee.org/ + +Note that the packages at IEEE's site do not contain the natbib and +alphanumeric variants (e.g., IEEEtranN.bst, etc.) as these are not used +for IEEE related work. These files can be obtained on CTAN. + +For helpful tips, answers to frequently asked questions, and other support, +visit the IEEEtran home page at my website: + +http://www.michaelshell.org/tex/ieeetran/ + + +Enjoy! + +Michael Shell +http://www.michaelshell.org/ + +******* +Version 1.14 (2015/08/26) changes: + + 1. Added the CTLuse_url field to the IEEEtranBSTCTL control entry type + to allow user control of the display of URLs. + Thanks to Pablo Chacin, Bogdan Roman and Richard Kolacinski for + suggesting this feature. + + 2. Added functions bbl.a, bbl.an, bbl.and, bbl.etal and bbl.the + as needed to better support other languages. + Thanks to Karsten Hinz for suggesting this change. + + 3. Added mention, and an example, of reports about standards to the + documentation. + Thanks to Guido R. Hiertz for providing information on this topic. + + 4. Fixed missed comma in the BSTcontrol example in the documentation. + Thanks to Oscar Gustafsson for reporting this problem. + + 5. Corrected IEEE_J_MTT journal name string in IEEEabrv.bib. + Thanks to Nicolás Barabino, Chuanren Wu and Santiago Cogollos Borras + for suggesting this change. + + 6. Corrected IEEE_J_STARS journal name string in IEEEabrv.bib. + Thanks to Yannick Berker for suggesting this change. + + 7. Revised/enabled abbreviations for IEEE_J_DSC, IEEE_J_LT, IEEE_J_NSM, + IEEE_J_SC, IEEE_J_DSC and full and abbreviations for IEEE_M_C + and IEEE_M_WC journal name strings in IEEEfull.bib and IEEEabrv.bib. + + 8. Added new journal name strings to IEEEfull.bib and IEEEabrv.bib. + Thanks to Uwe Siart and Mona Mittra for helping with obtaining the + correct definitions. See changelog.txt for the complete list. + + +********************************** Files ********************************** + +README - This file. + +changelog.txt - The revision history. + +IEEEtran_bst_HOWTO.pdf - The user manual. + +IEEEtran.bst - The standard IEEEtran BibTeX style file. For use + with IEEE work. + +IEEEtranS.bst - A version of IEEEtran.bst that sorts the entries. + Some IEEE conferences/publications may use/allow + sorted bibliographies. + +IEEEtranSA.bst - Like IEEEtranS.bst, but with alphanumeric citation + tags like alpha.bst. Not for normal IEEE use. + +IEEEtranN.bst - Like IEEEtran.bst, but based on plainnat.bst and + is compatible with Patrick W. Daly's natbib + package. Not for normal IEEE use. + +IEEEtranSN.bst - Sorting version of IEEEtranN.bst. Not for normal + IEEE use + +IEEEexample.bib - An example BibTeX database that contains the + references shown in the user manual. + +IEEEabrv.bib - String definitions for the abbreviated names of + IEEE journals. (For use with IEEE work.) + +IEEEfull.bib - String definitions for the full names of IEEE + journals. (Do not use for IEEE work.) + +*************************************************************************** +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** + +File list of work: IEEEtran_bst_HOWTO.pdf, IEEEtran.bst, IEEEtranS.bst, + IEEEtranSA.bst, IEEEtranN.bst, IEEEtranSN.bst, + IEEEexample.bib, IEEEabrv.bib, IEEEfull.bib + +*************************************************************************** diff --git a/IEEEtran/bibtex/changelog.txt b/IEEEtran/bibtex/changelog.txt new file mode 100644 index 0000000..585faac --- /dev/null +++ b/IEEEtran/bibtex/changelog.txt @@ -0,0 +1,173 @@ + + +Changelog history of the IEEEtran BibTeX class. + 2015/08/26 + by Michael Shell (MDS) + http://www.michaelshell.org/ + + + 2015/08/26 V1.14 (MDS) changes: + 1. Added the CTLuse_url field to the IEEEtranBSTCTL control entry type + to allow user control of the display of URLs. + Thanks to Pablo Chacin, Bogdan Roman and Richard Kolacinski for + suggesting this feature. + + 2. Added functions bbl.a, bbl.an, bbl.and, bbl.etal and bbl.the + as needed to better support other languages. + Thanks to Karsten Hinz for suggesting this change. + + 3. Added mention, and an example, of reports about standards to the + documentation. + Thanks to Guido R. Hiertz for providing information on this topic. + + 4. Fixed missed comma in the BSTcontrol example in the documentation. + Thanks to Oscar Gustafsson for reporting this problem. + + 5. Corrected IEEE_J_MTT journal name string in IEEEabrv.bib. + Thanks to Nicolás Barabino, Chuanren Wu and Santiago Cogollos Borras + for suggesting this change. + + 6. Corrected IEEE_J_STARS journal name string in IEEEabrv.bib. + Thanks to Yannick Berker for suggesting this change. + + 7. Revised/enabled abbreviations for IEEE_J_DSC, IEEE_J_LT, IEEE_J_NSM, + IEEE_J_SC, IEEE_J_DSC and full and abbreviations for IEEE_M_C + and IEEE_M_WC journal name strings in IEEEfull.bib and IEEEabrv.bib. + + 8. Added new journal name strings to IEEEfull.bib and IEEEabrv.bib. + Thanks to Uwe Siart and Mona Mittra for helping with obtaining the + correct definitions. + The new journal string name definitions are (full version shown): + + @STRING{IEEE_J_AFFC = "{IEEE} Transactions on Affective Computing"} + in 2014 ASL became ASLP + @STRING{IEEE_J_ASLP = "{IEEE/ACM} Transactions on Audio, Speech, and Language Processing"} + @STRING{IEEE_J_JAS = "{IEEE/CAA} Journal of Automatica Sinica"} + @STRING{IEEE_J_AMD = "{IEEE} Transactions on Autonomous Mental Development"} + @STRING{IEEE_J_BD = "{IEEE} Transactions on Big Data"} + @STRING{IEEE_J_BHI = "{IEEE} Journal of Biomedical and Health Informatics"} + @STRING{IEEE_J_CC = "{IEEE} Transactions on Cloud Computing"} + @STRING{IEEE_J_CCN = "{IEEE} Transactions on Cognitive Communications and Networking"} + in 2015 AMD became CDS + @STRING{IEEE_J_CDS = "{IEEE} Transactions on Cognitive and Developmental Systems"} + in 2011 CAPT became CPMT + @STRING{IEEE_J_CPMT = "{IEEE} Transactions on Components, Packaging and Manufacturing Technology"} + @STRING{IEEE_J_CIAIG = "{IEEE} Transactions on Computational Intelligence and {AI} in Games"} + @STRING{IEEE_J_CSS = "{IEEE} Transactions on Computational Social Systems"} + @STRING{IEEE_J_CNS = "{IEEE} Transactions on Control of Network Systems"} + in 2013 SMCB became CYB + @STRING{IEEE_J_CYB = "{IEEE} Transactions on Cybernetics"} + @STRING{IEEE_J_EDS = "{IEEE} Journal of Electron Devices Society"} + @STRING{IEEE_J_ES = "{IEEE} Embedded Systems Letters"} + @STRING{IEEE_J_ETC = "{IEEE} Transactions on Emerging Topics in Computing"} + @STRING{IEEE_J_ETCAS = "{IEEE} Transactions on Emerging and Selected Topics in Circuits and Systems"} + @STRING{IEEE_J_ESTPE = "{IEEE} Transactions on Emerging and Selected Topics in Power Electronics"} + @STRING{IEEE_J_XCDC = "{IEEE} Journal on Exploratory Solid-State Computational Devices and Circuits"} + in 2013 SMCC became HMS + @STRING{IEEE_J_HMS = "{IEEE} Transactions on Human-Machine Systems"} + @STRING{IEEE_J_IV = "{IEEE} Transactions on Intelligent Vehicles"} + @STRING{IEEE_J_IOT = "{IEEE} Internet of Things Journal"} + @STRING{IEEE_J_LS = "{IEEE} Life Sciences Letters"} + @STRING{IEEE_J_MAGL = "{IEEE} Magnetics Letters"} + in 2014 MEMS became MEMSI + @STRING{IEEE_J_MEMSI = "{IEEE} Journal of Microelectromechanical Systems"} + @STRING{IEEE_J_MBSC = "{IEEE} Transactions on Molecular, Biological and Multi-Scale Communications"} + @STRING{IEEE_J_MSCS = "{IEEE} Transactions on Multi-Scale Computing Systems"} + @STRING{IEEE_J_MMCT = "{IEEE} Journal on Multiscale and Multiphysics Computational Techniques"} + @STRING{IEEE_J_ENANO = "{IEEE} Nanotechnology Express"} + @STRING{IEEE_J_NSE = "{IEEE} Transactions on Network Science and Engineering"} + in 2012 NN became NNLS + @STRING{IEEE_J_NNLS = "{IEEE} Transactions on Neural Networks and Learning Systems"} + @STRING{IEEE_J_OCN = "{IEEE} Journal of Optical Communications and Networking"} + @STRING{IEEE_J_PJ = "{IEEE} Photonics Journal"} + @STRING{IEEE_J_PHOT = "{IEEE} Journal of Photovoltaics"} + @STRING{IEEE_J_PETS = "{IEEE} Power and Energy Technology Systems Journal"} + @STRING{IEEE_J_RFIC = "{IEEE} {RFIC} Journal"} + @STRING{IEEE_J_RFID = "{IEEE} {RFID} Journal"} + @STRING{IEEE_J_RITA = "{IEEE} Revista Iberoamericana de Technolog{\'{i}}as del Aprendizaje"} + @STRING{IEEE_J_RAL = "{IEEE} Robotics and Automation Letters"} + @STRING{IEEE_J_SIPN = "{IEEE} Transactions on Signal and Information Processing over Networks"} + @STRING{IEEE_J_SG = "{IEEE} Transactions on Smart Grid"} + @STRING{IEEE_J_SUSC = "{IEEE} Sustainable Computing"} + @STRING{IEEE_J_STE = "{IEEE} Transactions on Sustainable Energy"} + in 2012 SMCA became SMCS + @STRING{IEEE_J_SMCS = "{IEEE} Transactions on Systems, Man, and Cybernetics: Systems"} + @STRING{IEEE_J_TEHM = "{IEEE} Journal of Translational Engineering in Health and Medicine"} + @STRING{IEEE_J_TTHZ = "{IEEE} Transactions on Terrahertz Science and Technology"} + @STRING{IEEE_J_TTE = "{IEEE} Transactions on Transportation Electrification"} + @STRING{IEEE_J_WCOML = "{IEEE} Wireless Communications Letters"} + + magazines and Online Publications + @STRING{IEEE_O_ACC = "{IEEE} Access"} + @STRING{IEEE_M_CHINAC = "China Communications Magazine"} + in 2012 DTC became DT + @STRING{IEEE_M_DT = "{IEEE} Design \&\ Test"} + @STRING{IEEE_M_ETF = "{IEEE} Electrification Magazine"} + @STRING{IEEE_M_EMC = "{IEEE} Electromagnetic Compatibility Magazine"} + @STRING{IEEE_M_GRS = "{IEEE} Geoscience and Remote Sensing Magazine"} + @STRING{IEEE_M_PEL = "{IEEE} Power Electronics Magazine"} + @STRING{IEEE_M_PULSE = "{IEEE} Pulse"} + @STRING{IEEE_M_SSC = "{IEEE} Solid-State Circuits Magazine"} + @STRING{IEEE_M_SMC = "{IEEE} Systems, Man, and Cybernetics Magazine"} + + + 2008/09/30 V1.13 (MDS) changes + 1. Fixed bug with edition number to ordinal conversion. Thanks to + Michael Roland for reporting this and correcting the algorithm. + + + 2007/01/11 V1.12 (MDS) changes + 1. Fixed bug with unwanted comma before "et al." when an entry contained + more than two author names. Thanks to Pallav Gupta for reporting this. + + 2. Fixed bug with anomalous closing quote in tech reports that have a + type, but without a number or address. Thanks to Mehrdad Mirreza for + reporting this. + + 3. Use braces in \providecommand in begin.bib to better support + latex2html. TeX style length assignments OK with recent versions + of latex2html - 1.71 (2002/2/1) or later is strongly recommended. + Use of the language field still causes trouble with latex2html. + Thanks to Federico Beffa for reporting this. + + 4. Added IEEEtran.bst ID and version comment string to .bbl output. + + 5. Provide a \BIBdecl hook that allows the user to execute commands + just prior to the first entry. + + 6. Use default urlstyle (is using url.sty) of "same" rather than rm to + better work with a wider variety of bibliography styles. + + 7. Changed month abbreviations from Sept., July and June to Sep., Jul., + and Jun., respectively, as IEEE now does. Thanks to Moritz Borgmann + for reporting this. + + 8. Fixed bug where control entry types should not be considered when + calculating longest label width. + + 9. Added alias www for electronic/online entry type. + + 10. Added CTLname_url_prefix control entry field to the BST control entry + type. + + + 2003/04/02 V1.11 (MDS) changes + 1. Fixed bug with URLs containing underscores when using url.sty. Thanks + to Ming Kin Lai for reporting this. + + + 2002/09/27 V1.10 (MDS) changes + 1. Corrected minor bug for improperly formed warning message when a + book was not given a title. Thanks to Ming Kin Lai for reporting this. + + 2. Added support for CTLname_format_string and CTLname_latex_cmd fields + in the BST control entry type. + + + 2002/08/13 V1.00 (MDS) + Initial release + + + + + diff --git a/IEEEtran/changelog.txt b/IEEEtran/changelog.txt new file mode 100644 index 0000000..0fff105 --- /dev/null +++ b/IEEEtran/changelog.txt @@ -0,0 +1,783 @@ + + + Changelog history of the IEEEtran LaTeX class. + 2015/08/26 + by Michael Shell (MDS) + http://www.michaelshell.org/ + + + 2015/08/26 V1.8b (MDS) changes: + + 1) Added new comsoc mode for the IEEE Communications Society. + This mode (at present) only invokes the use of the newtxmath math fonts. + + 2) Revised IEEEeqnarray column specifications to work with active " + (or other punctuation catcode changes) as with babel under the + german or ngerman language modes. + Thanks to Stefan M. Moser for reporting this problem. + + 3) Added \indexspace and other index related macros as newer versions of + article.cls now do. These macros are needed to avoid an error when + using the glossaries package. + Thanks to Sebastian Nyberg for suggesting this change. + + 4) Fixed odd/even page header font bug under compsoc mode and + other page style code improvements. + Thanks to Marco Paolieri for reporting this problem. + + 5) Added hooks to allow for easy control of spacing above title. + + 6) Added the \IEEEnoauxwrite command. + Thanks to Sudarshan Mukherjee for suggesting this feature. + + + 2014/09/17 V1.8a (MDS) changes: + + 1) Extensive rework of the compsoc mode to comply with the latest standards + of the IEEE Computer Society. + + 2) Internal code improvements for page setup and command argument + processing. + + 3) Fixed abstract, index terms and diamond line for compsoc technotes. + Thanks to Dimitris Schinianakis for reporting this problem. + + 4) New cspaper option to support the special trim paper size + (7.875in x 10.75in) used in actual Computer Society journals. For + compsoc journal mode, typesetting will not be altered by the use of this + option. + + 5) New \IEEEraisesectionheading{} command to provide for the special raised + first section heading of Computer Society journal papers. + + 6) Increased \clubpenalty, \widowpenalty, \displaywidowpenalty to + discourage paragraph breaks at the first and last lines. + Thanks to Dirk Beyer for suggesting this change. + + 7) Added lines per column console message. + + +******* + 2012/12/27 V1.8 (MDS) changes:: + + 1) New transmag class option to support the IEEE Transactions on Magnetics + format. Thanks to Wei Yingkang, Sangmin Suh and Benjamin Gaussens + for suggestions and beta testing. + + 2) The \IEEEcompsoctitleabstractindextext and + \IEEEdisplaynotcompsoctitleabstractindextext + commands have been deprecated in favor of their + \IEEEtitleabstractindextext and \IEEEdisplaynontitleabstractindextext + (observe that the "not" has changed to "non") equivalents. This change + generalizes and decouples them from compsoc mode because the new + transmag mode also uses them now. + + 3) Added new *-forms of \IEEEyesnumber*, \IEEEnonumber*, \IEEEyessubnumber*, + and \IEEEnosubnumber* (the non-star form of the latter is also new) which + persist across IEEEeqnarray lines until countermanded. To provide for + continued subequations across instances of IEEEeqnarrays as well as for + subequations that follow a main equation (e.g., 14, 14a, 14b ...) + \IEEEyessubnumber no longer automatically increments the equation number + on it's first invocation of a subequation group. Invoke both + \IEEEyesnumber\IEEEyessubnumber together to start a new + equation/subequation group. + + 4) Hyperref links now work with IEEEeqnarray equations. + Thanks to Stefan M. Moser for reporting this problem. + + 5) Fixed \markboth so that it does not cause an error with babel.sty. + Thanks to Frank Meier for suggesting this change. + + 6) Change all instances of ~ to \nobreakspace to avoid + + ! Argument of \language@active@arg~ has an extra } + + figure caption error with bable.sty under spanish. Thanks to + Manuel Olivares and Javier Bezos for suggesting this change. + + 7) Allow line breaks within long theorem names. + Thanks to Miquel Payaro for suggesting this change. + + 8) Revised \IEEEeqnarraymulticol{} to allow inner alignments without + requiring extra containing braces to prevent an incomplete \ifx error. + Thanks to Stefan M. Moser and Auke van der Valk for reporting this + problem. + + 9) Revised spacing at top of top figures and tables to better + align with the top main text lines as IEEE does in its journals. + Thanks to Dirk Beyer for reporting this issue and beta testing. + +10) Removed support for legacy IED list commands, legacy QED and proof + commands and the legacy biography and biographynophoto environments. + IEEEtran no longer defines or references \labelindent so as to + avoid namespace problems with list packages that define it. + Thanks to Sven Köhler for reporting the problem with enumitem.sty. + + +******* + 2007/03/05 V1.7a (MDS) changes: + + 1) Corrected problem of unwanted two column peer review title page format. + Thanks to Virgilio Rodriguez for reporting this bug. + + 2) "depreciated" -> "deprecated". Thanks to Virgilio Rodriguez for + suggesting this change. + + + +******* + 2007/01/11 V1.7 (MDS) changes: + + 1) New class option compsoc to support the IEEE Computer Society format. + + 2) New class option captionsoff disables the display of figure/table + captions. endfloat.sty is now mentioned in the docs. Thanks to Geoff + Walker for suggesting these changes. + + 3) Fixed compatibility issues with subfig.sty and caption.sty. Thanks to + Steven Douglas Cochran and Axel Sommerfeldt for suggesting this change. + + 4) New \CLASSINPUT, \CLASSOPTION and \CLASSINFO interface allows for more + user control and conditional compilation. + + 5) \ifcenterfigcaptions (\centerfigcaptionstrue, \centerfigcaptionsfalse), + \CMPARstart and \overrideIEEEmargins have been removed and no are + longer supported. The effect of \overrideIEEEmargins can be mimicked + via the more general \CLASSINPUT interface: + % US letter paper: + \newcommand{\CLASSINPUTinnersidemargin}{0.775in} + \newcommand{\CLASSINPUToutersidemargin}{0.585in} + % A4 paper: + \newcommand{\CLASSINPUTinnersidemargin}{17mm} + \newcommand{\CLASSINPUToutersidemargin}{11.647mm} + + 6) Several commands and environments have been deprecated in favor of + replacements with IEEE prefixes to better avoid potential future name + clashes with other packages. Legacy code retained to allow the use of + the obsolete forms (for now), but with a warning message to the console + during compilation: + \IEEEauthorblockA, \IEEEauthorblockN, \IEEEauthorrefmark, + \IEEEbiography, \IEEEbiographynophoto, \IEEEkeywords, \IEEEPARstart, + \IEEEproof, \IEEEpubid, \IEEEpubidadjcol, \IEEEQED, \IEEEQEDclosed, + \IEEEQEDopen, \IEEEspecialpapernotice. IEEEtran.cls now redefines + \proof in way to avoid problems with the amsthm.sty package. + For IED lists: + \IEEEiedlabeljustifyc, \IEEEiedlabeljustifyl, \IEEEiedlabeljustifyr, + \IEEEnocalcleftmargin, \IEEElabelindent, \IEEEsetlabelwidth, + \IEEEusemathlabelsep + + 7) These commands/lengths now require the IEEE prefix and do not have + legacy support: \IEEEnormaljot. + For IED lists: \ifIEEEnocalcleftmargin, \ifIEEEnolabelindentfactor, + \IEEEiedlistdecl, \IEEElabelindentfactor + + 8) \normalsizebaselineskip skip replaced by + \CLASSINFOnormalsizebaselineskip (nonrubber dimen) length. + Also, new \CLASSINFOnormalsizeunitybaselineskip (nonrubber dimen) + provided. + + 9) Now defaults to using Alpha numbering rather than Roman for appendices + numbering. This is because Alpha numbering is more common and avoids + problems with theorem numbering. \ifuseRomanappendices + (\useRomanappendicestrue, \useRomanappendicesfalse) is no longer + supported. Instead, use the new class option romanappendices if Roman + appendices numbering is desired. Thanks to Leonid Mirkin for reporting + the problem with theorems in appendices and suggesting changes. + +10) Improved paper size setting code for pdflatex. + +11) Better handling of theorem numbering when using the section counter + within the appendix(cies). Thanks to Leonid Mirkin for suggesting + this change. + +12) Fixed bug that caused equations at the end of theorems to be too + close to the line below them. + +13) Provided hook to conference mode console notice and changed notice to + better support conferences that use A4 paper. Thanks to Volker Kuhlmann + for suggesting this change. + +14) \IEEEauthorrefmark made robust to allow it to be used in \thanks + without a leading \protect + +15) Improved \textunderscore to provide a much better fake _ when used with + OT1 encoding. Under OT1, detect use of pcr or cmtt \ttfamily and use + available true _ glyph for those two typewriter fonts. + +16) Revised internal \@sect command to be more robust for users who employ + modified section heading formats. Thanks to Zarko F. Cucej for + suggesting this change. + +17) Improved \thesubsubsection definition to prevent breaks at the hyphen. + Thanks to Moritz Borgmann for suggesting this change. Thanks to + Dan Luecking and Heiko Oberdiek for explaining some of the various + alternatives and techniques to fix it. + +18) No longer provide \NAT@parse hack to get cite.sty to play (somewhat) + with hyperref.sty as this is already included in cite.sty version + 4.0 (2003-05-27) and later. + +19) At the beginning of document, set the default style of url.sty to be + the same as the current text font - as is done in IEEE journals. + +20) Corrected excessive line spacing in journal table captions. Thanks to + Moritz Borgmann for suggesting this change. + +21) Corrected \thesubsubsection to use the "I-A1" format IEEE uses rather + than "I-A.1" as was done before. Ditto for \theparagraph. Thanks to + Moritz Borgmann for suggesting this change. + +22) Enclose papersize specials within \AtBeginDvi in case someone wants + to make a format with IEEEtran. Thanks to Moritz Borgmann for + suggesting this change. + +23) Eliminated the small space after abstract and keywords dash as IEEE + now does. Thanks to Moritz Borgmann for suggesting this change. + +24) IEEEkeywords is no longer locked out in conference mode + +25) Increase defaults of \binoppenalty and \relpenalty to discourage + breaks within equations. Thanks to Moritz Borgmann for suggesting + this change. + +26) Support optional argument for IEEEproof. Thanks to Ingo Steinwart for + suggesting this change. Also, start a new \par with \IEEEproof. + +27) Add support for an optional argument to \bstctlcite. + +28) Changed \topfraction and \dbltopfraction from 1.0 to 0.9. Thanks to + Donald Arseneau for suggesting this change. + + +******* + 2005/09/13 V1.6c (MDS) changes: + + 1) Changed endfigure/endfloat definitions so as not to cause problems with + preview-LaTeX and other packages. Thanks to Stephan Heuel and David + Kastrup for reporting this problem. + + + +******* + 2002/11/18 V1.6b (MDS) changes: + + 1) Fixed problem with figure captions when using hyperref. Thanks to + Leandro Barajas and Michael Bassetti for reporting this bug. + + 2) Provide a fake nabib command \NAT@parse so that hyperref will not + interfere with the operation of cite.sty. However, as a result citation + numbers will not be hyperlinked. Also, natbib will not be able to work + with IEEEtran. However, this is perhaps the best solution until + cite.sty and hyperref.sty are able to co-exist with each other. + It easy enough to override the fake command via: + \makeatletter + \let\NAT@parse\undefined + \makeatother + + 3) Revised font selection method so as not to have problems when used + with setspace.sty. Thanks to Zhang Yan for reporting this bug. + + 4) Added \special to feed papersize to dvips. Thanks to Moritz Borgmann + for suggesting this feature. + + 5) In addition to the IEEE IED lists, the original IED style list + environments (as is done in article.cls) are now provided as + LaTeXitemize, LaTeXenumerate, and LaTeXdescription. Also, users can + now redefine \makelabel within IEEE IED list controls. There may be + some use for this in specialized applications. Thanks to Eli Barzilay + for suggesting this feature. + + 6) \table* now defaults to \footnotesize text like \table. + + 7) The draft modes now no longer force a pagebreak after the title. + Thanks to Christian Peel for suggesting this change. + + 8) New draftclsnofoot mode is like draftcls, but does not display the + date and the word "DRAFT" at the foot of the page. Thanks to + Christian Peel for suggesting this feature. + + 9) New peerreview and peerreviewca modes with \IEEEpeerreviewmaketitle + command allows for a "cover" titlepage for anonymous peer review. + Except for the cover titlepage, peerreview is much like journal mode. + peerreviewca is like peerreview, but allows the author names to be + entered and formatted as under conference mode so that author + affiliations and contact information can be easily seen on the cover + page. Thanks to Eric Benedict for suggesting this feature. + + + +******* + 2002/08/13 V1.6 (MDS) changes: + + 1) Added conference mode via conference option. Defaults to the + traditional journal mode. e.g., \documentclass[conference]{IEEEtran} + + 2) Added support for A4 paper via new a4paper option. Pdflatex's paper + size lengths are now automatically set to the proper paper size being + used. + + 3) Revised margins again. Page text is now horizontally centered. + Conference mode increases the top and bottom margins with the bottom + margin being slightly larger. For A4 paper, the top margin and text + typesetting will not change from those of US letter paper, but the side + margins will be smaller and the bottom margin will be larger than that + of US letter. All per IEEE specs. + + 4) Fixed footnote line spacing anomaly in draft mode. + Thanks to Alberto Rodriguez for reporting this bug. + + Also, slightly revised footnote and \thanks note spacing. + Set \interfootnotelinepenalty=10000 to prevent LaTeX + from breaking footnotes across multiple pages or columns. + + 5) Fixed bug that caused overwritten photo areas and sometimes anomalous + spacing when a new paragraph was started within a biography. Also, + the presence of \par's, new lines or spaces at the beginning of + abstract, keywords, biography, or biographynophoto will no longer + affect the first word spacing. + Thanks to Eric Durant for reporting this bug. + + The biography environment now does a better job in preventing + a biography photo area from being broken across pages or columns. + + 6) Fixed whitespace between \cite entries bug. i.e., + both \cite{einstein24, knuth84} and \cite{einstein24,knuth84} + are now valid. \cite is now a robust command as it should be. + IEEEtran now no longer defines the old non-standard \shortcite or + \citename. + + The base IEEEtran.cls does not sort citation numbers or produce ranges + for three or more consecutive numbers. However, V1.6 of IEEEtran.cls + now pre-defines the following format control macros to facilitate easy + use with Donald Arseneau's cite.sty package (tested with cite.sty V3.9): + + \def\citepunct{], [} + \def\citedash{]--[} + + cite.sty is standard on most LaTeX sytems and can be obtained from + www.ctan.org. Thanks to Donald Arseneau for creating cite.sty, + providing the required format arguments to produce the IEEE style + and designing a cite interface capable of handling the IEEE citation + style. + + Note: Historically, IEEE has wanted authors to "hardcode" symbolics. + (i.e., replace all \cite{} with fixed [x]). However, it now seems that + most electronic manuscript submissions to IEEE are in .pdf format, and + as such, do not require the LaTeX document reference numbers to be hard + coded. If an author is required to submit actual LaTeX files, I do + recommend that the bibliography file (.bbl) be copied into the .tex + document and the \bibliographystyle{} and \bibliography{} commands be + commented out so that the .tex file does not depend on (potentially + lengthy and/or confidential) external bibliography database files + + 7) Adjusted some spacing parameters. The spacing above and below equations + has been revised (to a typical IEEE value). \jot now has a decent value. + The title text is now exactly 24pt. (On a related note, \fontsubfuzz has + been increased to 0.9pt to prevent annoying font substitution warnings + when using the Computer Modern fonts that use the 24.88pt size.) + In V1.6, \small is now 8.5pt in 9pt docs because \footnotesize is 8pt. + For 9pt docs, you should probably go ahead and use \footnotesize when + you need text a little smaller than \normalsize. + The interword spacing has been adjusted to be extremely close to that + which IEEE uses. You can use a new class option, nofonttune, if you need + to disable the adjusting of the interword spacing. This adjustment and + an increase to \hyphenpenalty have greatly reduced the amount of + hyphenation in a typical paper. + The baselineskip for the normalsize fonts has been tweaked to reduce + underfull vboxes on journal paper columns with only paragraphs. + Conference mode does the same thing but by also tweaking the \textheight + slightly off 9.25in (IEEE spec) to ensure an integer number of lines per + page. Draft (also draftcls) mode has also been revised to reduce + underfull vbox warnings. However, draft mode can still produce underfull + vboxes (a direct result of the increase in line spacing and margins) if: + A non-normalsize font occupies an entire column (abstract and index + terms take up a whole column by themselves); or the beginning of a + section occurs near the end of a column and cannot be squeezed into the + bottom, etc. This is normal as draft mode's liberal spacings cannot + guarantee perfect formatting. + + 8) New biographynophoto environment for biographies without photos. + Usage: + + \begin{biographynophoto}{author name} + biography text here + \end{biographynophoto} + + 9) Fixed bug that produced multiple table of contents entries for papers + with more than one biography. Also, biography now works better with + hyperref. + +10) New \sublargesize font size command provides for 11pt text in a 10pt + document. (Needed for things like author names.) For documents not + using 10pt normal size text, \sublargesize is currently identical + to \large. + +11) New \IEEEmembership command to provide correct font to indicate IEEE + membership for journal papers. + +12) Fixed author name line overflow problem when in journal mode. This + problem had been introduced in V1.5 in my rush to get \and to work for + conferences. \and is unneeded (and invalid) in journal mode. For + conference mode, \and will work as expected and features an optional + spacing argument. i.e., \and[\hspace{5ex}] + \and will default (recommended) to using \hfill which will result in + equal spacing between author blocks. + +13) New \authorblockN, \authorblockA and \authorrefmark commands to + facilitate easy formatting of author names, affiliations and cross + reference symbols, respectively, when in conference mode. These + three commands are to be used only for conference papers. + In conference mode, \author text is placed within a modified tabular + environment (somewhat like article.cls). So, within \author in + conference mode, you should not try to enclose multiple \\ within an + environment or command (other than the argument braces of + \authorblockX{}). For example: + + \author{\authorblockN{{John Doe \\ Jane Doe}}} % WRONG! + + will generate an error. + + Note that font size/attribute changes will now persists across \\ + within \author. (But, not across author blocks nor across \and.) + However, with the new commands, there should be no need to alter any + font attributes within \author. All text sizing and spacing within + \author{} and the author block commands is per IEEE specs for both + conference and journal modes. (In conference mode, the author names + are only very slightly larger than the affiliations which are in normal + size.) For specialized applications you can alter the justification of + author lines by placing \hfill at the beginning or at the end of a line. + The interline spacing within \author is determined by the font + attributes that are in effect at the end of each line within author. + +14) Because the titles and author name blocks use different font + sizes/styles from the main text, it was possible that two column papers + with titles that span both columns (standard journal and conference + papers, but not technotes) with certain numbers of lines for the title + and authors' name/affiliations can cause underfull vbox problems + (paragraphs with large spacings between them) in the second column of + the main text on the title page - if there were no new sections, + equations or figures in this column (they would provide some needed + rubber spacing). The use of things like special paper notices and + publisher ID marks also affected this issue. The problem could not + happen in the first column because the first column has a rubber length + around the heading of the first section. Furthermore, problems seldom + occurred on pages after the first as the margins had been chosen not to + cause it with the popular font sizes. Rubber lengths after the author + names would not fix this problem. + Auto-calculating a "good" spacing after the title is a tad difficult + to do in LaTeX. However, I am pleased to report that V1.6 has this new + capability - "dynamically determined title spacing". IEEEtran will now + measure the height of all the title and author text in \maketitle + and then calculate a rigid (non-rubber) spacer to follow that meets + IEEE specs and also produces a \textheight on the title page that + ensures an integer number of normalsized lines on the rest of the page. + Single column papers, and two column papers with the title entirely in + column one (technotes) do not need dynamic rigid spacing and therefore + use standard rubber spacers. + + Note: This problem can still crop up if you use floats that span both + columns (i.e., figure*). It has been a decade+ long limitation with + LaTeX that the stretchable portion of \dbltextfloatsep is ignored. + If you get a problem with underful vbox warnings and paragraphs that + "are pulled apart" on page with a float that spans both columns, tweak + the space between the figure and the main text a little: + + \vskip 5pt + \end{figure*} + + If you can't find a value that fixes both columns, you are going to + have to put a rubber spacer somewhere in one or both of the columns. +15) Because of change #14 above, those of you using \pubid will, as of V1.6, + have to place it *before* \maketitle in order for it have the intended + affect. The dynamic spacer algorithm must see if you are using \pubid + when \maketitle is called. \pubidadjcol works as before except that it + now has additional logic to prevent it from doing anything if \pubid + was never called. + +16) In some unusual, non-standard circumstances, an author may desire to + alter the spacing after the title area or put some unusual text above + the main text. For instance, to stop a bad break when a new section + occurs right at the start of the second page. This is difficult to do + when the title spans both columns of two column text since LaTeX treats + such title text as a type of float. A new command, + \IEEEaftertitletext{}, gives access to the end of that produced by + \maketitle. The types of things that can go into \IEEEaftertitletext + are the same as those into \twocolumn[] - no \par, but \\ are OK. There + is no restriction on the range of spacings that can be used. e.g., + \IEEEaftertitletext{\vspace{-100pt}} will push the main text well into + the title and \IEEEaftertitletext{\vspace{100pt}} will push it far down + the page. You will have complete control. If used, place + \IEEEaftertitletext{} before \maketitle like \title and \author. + IEEEtran's dynamic title spacing intentionally does not take into + consideration the contents of \IEEEaftertitletext{} when determining + the spacer after the title area (otherwise it would try to second + guess you), so the user will have manually adjust the height of the + contents in \IEEEaftertitletext{} if the problem discussed in #14 above + should develop. A safe bet is to keep the height of contents of + \IEEEaftertitletext{} to integer multiples of \baselineskip, e.g., + \IEEEaftertitletext{\vspace{-1\baselineskip}} + + Because it can result in an IEEE nonstandard format, the use of + \IEEEaftertitletext{} is discouraged. Possible uses include (1) the use + of IEEEtran for non-IEEE work with different title spacing requirements, + or (2) as an emergency manual override if a problem should develop in + IEEEtran's automatic spacing algorithm. + +17) completely rewritten \PARstart to: + a. no longer have problems when the user begins an environment + within the paragraph that uses \PARstart. + b. auto-detect and use the current font family + c. revise handling of the space at the end of the first word so that + interword glue will now work as normal. + d. produce correctly aligned edges for the (two) indented lines. + + Because the current font family is now auto-detected, there is no + longer any need for \CMPARstart - it is now the same as \PARstart. + +18) There is now a new "open box" Q.E.D. symbol (\QEDopen) as well as the + original default (\QED) closed one (\QEDclosed). Some journals use + the open form. To make \proof use the open form, just do: + \renewcommand{\QED}{\QEDopen} + +19) Additional \typeout{} notices added to warn the user when unusual + settings/commands are detected or as reminders to avoid common errors + when in conference mode. + +20) IEEEtran now provides \abovecaptionskip and \belowcaptionskip skip + registers because article class provides them and some packages + may error if they are missing. However, IEEEtran only uses + \abovecaptionskip for actual caption spacing. + +21) Fixed bug that prevented users from redefining the section headings + to use arabic digits. Thanks to Richardt H. Wilkinson for reporting + this bug. + +22) Code cleaned up to be more efficient with the use of TeX registers; + removed some old LaTeX 2.09 code; revised option processing to + LaTeX2e standard; eliminated unwanted "phantom" spaces in some + environments. + +23) Added new \IEEEeqnarray, \IEEEeqnarraybox, \IEEEeqnarrayboxm and + \IEEEeqnarrayboxt environments to provide superior alternatives to the + standard LaTeX \eqnarray, \array and \tabular. Additional new support + commands include \IEEEeqnarraydecl, \IEEEeqnarrayboxdecl, + \IEEEeqnarraymathstyle, \IEEEeqnarraytextstyle, \yesnumber. + \IEEEnonumber, \IEEEyesnumber, \IEEEyessubnumber, \IEEEeqnarraynumspace, + \IEEEeqnarraymulticol, \IEEEeqnarrayomit, \IEEEeqnarraydefcol, + \IEEEeqnarraydefcolsep, \IEEEeqnarrayseprow, \IEEEeqnarrayseprowcut, + \IEEEeqnarrayrulerow, \IEEEeqnarraydblrulerowcut, + \IEEEeqnarraystrutmode, \IEEEeqnarraystrutsize, + \IEEEeqnarraystrutsizeadd, \IEEEvisiblestrutstrue, + \IEEEvisiblestrutsfalse and \IEEEstrut. + These are documented in the user's guide. + +24) V1.6 changed back to using () around theorem names (which are also now + in italics) as this is what IEEE is using now. Thanks to Christian Peel + for reporting this. Also, when section numbers are used as the first + part of theorem numbers, display them in arabic, not Roman. + +25) New \IEEEtriggeratref{X} command allows a page break to be triggered + just before the given reference number "X". This is most useful when + balancing the columns on the last page and a \newpage between references + is desired. \IEEEtriggercmd{X} allows a different command to be executed + at trigger. + + + +******* + 2001/07/26 V1.5 (MDS) changes: + + + 1) Fixed \and within \author bug: (! Misplaced \crcr. \endtabular ->\crcr) + Thanks to Rainer Dorsch for discovering and reporting that \and + did not work. + + 2) Fixed the biography environment so that if a biography's text is shorter + than the area allocated for the photo, a collision with the next + biography does not occur. You can now put real graphics (using the + graphicx package) into the biography photo box with a new optional + argument of the biography command! For example: + + \begin{biography}[{\includegraphics[width=1in,height=1.25in,clip, + keepaspectratio]{./tux.eps}}]{Linux Penguin} + + will use the specified graphic as the author's photo. The photo area is + exactly 1in wide by 1.25in high - as is done in IEEE Transactions. Try + to keep the same 4:5 aspect ratio if scanning/cropping your photos. + Note the need for the extra set of enclosing braces around the + \includegraphics. Without it, The LaTeX parser may get confused when it + sees the \includegraphics's brackets within the biography's optional + argument. Due to the length of the \includegraphics command, you may + wish to define your own shorthand form of it. I have not done so with + IEEEtran to prevent dependence on the graphicx package. If you do not + use the optional argument, or leave it empty, a standard frame box + with the words "Place Photo Here" will be used. If you want the space + to remain completely empty, you can do: + + \begin{biography}[\mbox{}]{The Invisible Man} + + The interface to biography's optional argument is into a + 1in X 1.25in minipage in which the argument text is centered both + horizontally and vertically: + + \begin{minipage}[b][1.25in][c]{1in}% + \centering + #1% + \end{minipage} + + Within the biography environment, \unitlength is set to 1in. + With this in mind, you can even design your own custom frameboxes. + For instance: + + \begin{biography}[\framebox(1,1.25){\parbox[][\height + ][c]{0.9in}{\centering PLACE\\ PHOTO\\ + HERE}}]{Author Name} + + will yield the same type of result as the default photo box. + + Thanks to Herbert Voss for discovering the collision bug, suggesting + the ability to handle graphics and providing some prototype code. + + + +******* + 2001/03/15 V1.4 (MDS) changes: + + + 1) New "draftcls" and "final" options have been added. + Thanks to Dragan Cvetkovic for suggesting an option like draftcls. + + 2) Documentation changes to reflect the fact that this IEEEtran.cls + is no longer beta test. + + 3) Slightly revised caption sizes. Figure and table captions are now + in \footnotesize, not \small as before. + + 4) Allow user to control figure caption justification. IEEEtran.cls + normally defaults to left justified as is done in Transactions. + However, for conferences, you may wish to issue the command: + \centerfigcaptionstrue + in the preamble. Short (less than one line long) figure captions + will then be centered. Multi-line figure captions will always be + properly left justified. V1.6: This is already done for you when + using the conference mode. + + + +******* + 2001/01/18 V1.3 + Michael Shell (MDS) made extensive changes and additions: + + + BUGS FIXED (and many others too numerous to mention!): + 1) Fixed improper alignment with itemized, enumerated and + description lists. Added new controls to these three + environments so that it is easy to get the alignment IEEE + uses. Furthermore, the itemize, enumerate and description lists + no longer force a new paragraph to begin at the end the list + (\par). (Sometimes lists are used within paragraphs.) + + 2) JVH's fixes now allow things like $\mathbf{N}(0,P(0))$ + to work properly without needing the extra braces: + ${\mathbf{N}}(0,P(0))$. There is no longer any dependence + on the "rawfonts" and "oldlfont" packages. Thanks Juergen! + + 3) Fixed underfull hbox errors and incorrect reference number + alignment when the number of references in the bibliography + exceeded 9 entries (which is almost every paper!). + + 4) Removed dependence on the LaTeX sizexx.clo files. + Now, 9pt documents should work correctly even on systems that + lack a size9.clo file. This is most often used in conjunction + with the option "technote" for "correspondence" papers like those + in IEEE Transactions on Information Theory. For virtually all + other papers, 10pt is used and so it is the default. + Some improper font sizes have been corrected. \footnotesize is + now 8pt in 9pt docs, so footnotes in technotes should be the + correct size now. + + 5) Added \interlinepenalty within the bibliography section to discourage + LaTeX from breaking within a reference. IEEE almost never breaks within + a reference and when they do it is usually in technotes + (correspondence papers). You may get an underfull vbox warning in the + bibliography indicating that the spacing just before the "REFERENCES" + section is larger than normal, but the final result will be more like + what IEEE will publish. See the comments in the BIBLIOGRAPHY section + around line 2034 below if you want to change this behavior. + + 6) No longer "blows up" when you use \paragraph and have a table + of contents. + + 7) Theorem environment changed, (but for V1.6, back to the old way, sigh). + + 8) Figure captions adjusted: IEEE left (not center) justifies + figure captions (for journals) and does not indent figure caption text. + + 9) Adjusted some spacings in the table of contents(TOC))/list-of-figures/ + list-of-tables so that section/table numbers will not so easily + collide with the titles. Section VIII was usually the worst offender. + Still doesn't right justify the section numbers, but neither does + article.cls (This must be why LaTeX likes the x.y.z section numbering + scheme unlike I, II, III, etc. of IEEE. ) + It may be "normal" as it is (left justified). sigh. + +10) Now uses "index terms" now as a heading instead of "keywords". + Furthermore, the "index terms" and "abstract" headings are in bold + italic. This is how IEEE does things. + +11) \thebibliography and \biography now put entries into + the table of contents for you. + + +******* + + + + + ******* + 2000/09/06 (JVH) changes: (now designated as V1.2) + + made some corrections to get closer to LaTeX2e + 20000906 Juergen v.Hagen + vonhagen@ihefiji.etec.uni-karlsruhe.de + + Permission to redistribute granted as of December 2000. + ******* + + + + + + ******* + + 1996 (JWD) LaTeX2e version: (now designated as V1.1) + + In the most recent TeXhax digest, there was a request for a copy of + IEEEtrans.sty modified to work with LaTeX2e. I have a version I + modified to make it IEEEtrans.cls, which I have sent to the person + making the request and am now sending to you to consider posting to + the archives. + -- + Jon Dixon + dixonj@colorado.edu + http://spot.colorado.edu/~dixonj/ + +******* + + + + + +******* + + 30-August-1993 original LaTeX 2.09 version (IEEEtran.sty), + (now designated as V1.0): + + by Gerry Murray and Silvano Balemi + Automatic Control Lab, ETH Zurich, Switzerland + balemi@aut.ee.ethz.ch + +******* + + + diff --git a/IEEEtran/extras/README b/IEEEtran/extras/README new file mode 100644 index 0000000..ae0a6ae --- /dev/null +++ b/IEEEtran/extras/README @@ -0,0 +1,53 @@ + +August 26, 2015 + + +Here are some odds and ends that may be useful. + + +Enjoy! + +Michael Shell +http://www.michaelshell.org/ + +******************************** Files ************************************ + +README - This file. + +tux.eps - "Tux" the Linux penguin in EPS format. + This bitmapped graphic is sized to 1" X 1.25" + and can be used as a test photo for the IEEEtran.cls + biography environment. + +tux.pdf - "Tux" the Linux penguin in PDF format. + This bitmapped graphic is sized to 1" X 1.25" + and can be used as a test photo for the IEEEtran.cls + biography environment. + + +*************************************************************************** +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** + +File list of work: tux.eps, tux.pdf + +*************************************************************************** \ No newline at end of file diff --git a/IEEEtran/extras/tux.eps b/IEEEtran/extras/tux.eps new file mode 100644 index 0000000..11b9a7d --- /dev/null +++ b/IEEEtran/extras/tux.eps @@ -0,0 +1,1958 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: GIMP PostScript file plugin V 1.11 by Peter Kirchgessner +%%Title: /home/mshell/IEEE/TEST/tux.ps +%%CreationDate: Fri Jul 27 14:59:35 2001 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%Pages: 1 +%%BoundingBox: 14 14 87 105 +%%EndComments +%%BeginPreview: 256 256 1 256 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 00000000000000000000000000000001c0000000000000000000000000000000 +% 00000000000000000000000000003ffffffe0000000000000000000000000000 +% 0000000000000000000000000000ffffffff8000000000000000000000000000 +% 0000000000000000000000000007fffffffff000000000000000000000000000 +% 000000000000000000000000001ffffffffffc00000000000000000000000000 +% 00000000000000000000000000ffffffffffffc0000000000000000000000000 +% 00000000000000000000000001fffffffffffff0000000000000000000000000 +% 00000000000000000000000003fffffffffffff8000000000000000000000000 +% 0000000000000000000000000ffffffffffffffe000000000000000000000000 +% 0000000000000000000000003fffffffffffffff800000000000000000000000 +% 0000000000000000000000003fffffffffffffffe00000000000000000000000 +% 0000000000000000000000007ffffffffffffffff00000000000000000000000 +% 000000000000000000000000ffffffffffffd5fff80000000000000000000000 +% 000000000000000000000001ffffffffffffef7ffc0000000000000000000000 +% 000000000000000000000003ffffffffffffb2fffe0000000000000000000000 +% 000000000000000000000003ffffffffffffd5ffff0000000000000000000000 +% 000000000000000000000007ffffffffffffab5fff0000000000000000000000 +% 00000000000000000000000fffffffffffffeeffffc000000000000000000000 +% 00000000000000000000000fffffffffffff5bffffc000000000000000000000 +% 00000000000000000000001ffffffffffffff7ffffe000000000000000000000 +% 00000000000000000000001fffffffffffffbfffffe000000000000000000000 +% 00000000000000000000003ffffffffffffffffffff000000000000000000000 +% 00000000000000000000003ffffffffffffffffffff800000000000000000000 +% 00000000000000000000003ffffffffffffffffffff800000000000000000000 +% 00000000000000000000007ffffffffffffffffffffc00000000000000000000 +% 00000000000000000000007ffffffffffffffffffffc00000000000000000000 +% 00000000000000000000007ffffffffffffffffffffe00000000000000000000 +% 00000000000000000000007ffffffffffffffffffffe00000000000000000000 +% 00000000000000000000007ffffffffffffffffffffe00000000000000000000 +% 0000000000000000000000ffffffffffffffffffffff00000000000000000000 +% 0000000000000000000000ffffffffffffffffffffff00000000000000000000 +% 0000000000000000000000ffffffffffffffffffffff00000000000000000000 +% 0000000000000000000000fffffffffffffffbffffff00000000000000000000 +% 0000000000000000000000ffffffffffffffff7fffff80000000000000000000 +% 0000000000000000000000fffffefffffff5ffffffff80000000000000000000 +% 0000000000000000000000ffffffffffffaa3fffffff80000000000000000000 +% 0000000000000000000000fffd7ffffffea48fdfffff80000000000000000000 +% 0000000000000000000000ffe00ffffff54923ffffff80000000000000000000 +% 0000000000000000000000ffd525ffffea1005ffffff80000000000000000000 +% 0000000000000000000000ffa00bffffd48212ffffff80000000000000000000 +% 0000000000000000000000ffa892ffffe80005ffffff80000000000000000000 +% 0000000000000000000000ff40007fff800000bfffffc0000000000000000000 +% 0000000000000000000000ff00007fff0004007fffffc0000000000000000000 +% 0000000000000000000000fe80003fff003f803fffffc0000000000000000000 +% 0000000000000000000000ff07c03fff007fc03fffffc0000000000000000000 +% 0000000000000000000000fe1f703fff00fcb01fffffc0000000000000000000 +% 0000000000000000000000fe1f581fff01ff781fffffc0000000000000000000 +% 0000000000000000000000fe1fbc1fff01ff581fffffc0000000000000000000 +% 0000000000000000000000fe3fac3fdf03ffb81fffffc0000000000000000000 +% 0000000000000000000000fe3ffc1fff03fffc0fffffc0000000000000000000 +% 00000000000000000000007e3fee3fff83fff80fffffc0000000000000000000 +% 00000000000000000000007e3ffc3fff83fffc1fffffc0000000000000000000 +% 00000000000000000000007e1ffe7fffc3fff80fffffc0000000000000000000 +% 00000000000000000000007e1ffe800063fff81fffffc0000000000000000000 +% 00000000000000000000007e1ffe555511fff81fffffc0000000000000000000 +% 00000000000000000000007f0ff9400aa5fff01fffffc0000000000000000000 +% 00000000000000000000007f07f6955589ffe03fffffc0000000000000000000 +% 00000000000000000000007f81d120012017803fffffe0000000000000000000 +% 00000000000000000000007f814a0aaa0485007fffffe0000000000000000000 +% 00000000000000000000007f8150a0000010a0ffffffe0000000000000000000 +% 00000000000000000000007fc6a50a9048842bffffffe0000000000000000000 +% 00000000000000000000007ff94850020010807fffffe0000000000000000000 +% 00000000000000000000007fe52282480220091fffffe0000000000000000000 +% 00000000000000000000007fda8828004802405fffffe0000000000000000000 +% 00000000000000000000007fa52282910040081fffffe0000000000000000000 +% 00000000000000000000003f5448240001092aaffffff0000000000000000000 +% 00000000000000000000003eaa9288422400553ffffff0000000000000000000 +% 00000000000000000000003ea92021080049545ffffff0000000000000000000 +% 00000000000000000000003eaa4a84004402a2bffffff8000000000000000000 +% 00000000000000000000003ea4802891089d4a5ffffffc000000000000000000 +% 00000000000000000000003f522a8000002892bffffffc000000000000000000 +% 00000000000000000000003fe880248452d5293ffffffc000000000000000000 +% 00000000000000000000003fd52a8010815292bffdfffe000000000000000000 +% 00000000000000000000003ffd0011023ea44afffd5ffe000000000000000000 +% 00000000000000000000003feb548224e94aaa3ffeb7ff000000000000000000 +% 00000000000000000000003feec0244baa9150bffeabff000000000000000000 +% 00000000000000000000003fe5bd89ba552a821fff55ff800000000000000000 +% 00000000000000000000003fc15555454954244fff55ffc00000000000000000 +% 00000000000000000000003fcad5092aaaa9008fffaaffc00000000000000000 +% 00000000000000000000003fc0b5525255504017ffd5ffe00000000000000000 +% 00000000000000000000003fca5a84aaaaa28927ffd7fff00000000000000000 +% 00000000000000000000007fc016b54aaa040007fffffff80000000000000000 +% 00000000000000000000007fd48b555554908003fffffff80000000000000000 +% 0000000000000000000000ffc122eaada8240001fffffffc0000000000000000 +% 0000000000000000000001ffc8095ddaa2800001fffffffc0000000000000000 +% 0000000000000000000003ffc0a002a408100000fffffffe0000000000000000 +% 0000000000000000000003ff80055411512000007fffffff0000000000000000 +% 0000000000000000000007ff01200142020000007fffffff8000000000000000 +% 000000000000000000000fff000a4808480000003fffffff8000000000000000 +% 000000000000000000001ffe00201242000000001fffffffc000000000000000 +% 000000000000000000003ffc00094090800000001fffffffe000000000000000 +% 000000000000000000007ff800100a04100000000ffffffff000000000000000 +% 000000000000000000007ff8000290510000000007fffffff000000000000000 +% 00000000000000000001ffe0000422000000000007fffffff800000000000000 +% 00000000000000000003ffe0000084a00000000003fffffffc00000000000000 +% 00000000000000000003ffc0000010000000000003fffffffe00000000000000 +% 00000000000000000007ffc0000000000000000001fffffffe00000000000000 +% 0000000000000000001fff80000000000000000001ffffffff80000000000000 +% 0000000000000000003fff00000000000000000000ffffffffc0000000000000 +% 0000000000000000003fff00000000000000000000ffffffffe0000000000000 +% 0000000000000000007ffe00000000000000000000fffffffff0000000000000 +% 000000000000000001fffc000000000000000000007ffffffff8000000000000 +% 000000000000000003fffc000000000000000000007ffffffffc000000000000 +% 000000000000000003fff8000000000000000000007ffffffffe000000000000 +% 000000000000000007fff8000000000000000000007fffffffff000000000000 +% 00000000000000001ffff0000000000000000000003fffffffffc00000000000 +% 00000000000000003ffffa000000000000000000003fffffffffe00000000000 +% 00000000000000007ffff0000000000000000000003ffffffffff00000000000 +% 00000000000000007ffff4000000000000000000003ffffffffff00000000000 +% 0000000000000001ffffe9000000000000000000921ffffffffffc0000000000 +% 0000000000000001ffffe440000000000000124a040ffffffffffe0000000000 +% 0000000000000003ffffea9000000000000000104807fffffffffe0000000000 +% 0000000000000003ffffe80000000000000004811103ffffffffff0000000000 +% 0000000000000007ffffe20000000000000000042041ffdfffffff8000000000 +% 000000000000000fffffd40000000000000000004480ffffffffff8000000000 +% 000000000000000fffffc000000000000000000000007ffbffffffc000000000 +% 000000000000001fffffa000000000000000000002507fffffffffc000000000 +% 000000000000001fffff0000000000000000000000001fffbfffffe000000000 +% 000000000000001fffff0000000000000000000000081fffffffffe000000000 +% 000000000000003ffffe0000000000000000000000110fffeffffff000000000 +% 000000000000003ff7fe0000000000000000000000000ffffffffff000000000 +% 000000000000003ffffc00000000000000000000000207fffffffff800000000 +% 000000000000007feff800000000000000000000000043fffdfffff800000000 +% 000000000000007ffff800000000000000000000000003fffffffffc00000000 +% 000000000000007ffff000000000000000000000000041ffff7ffffc00000000 +% 00000000000000ffffe000000000000000000000000001ffbffffffe00000000 +% 00000000000000ff7fe000000000000000000000000000ff7ffffffe00000000 +% 00000000000001ffffc000000000000000000000000000fff7dfffff00000000 +% 00000000000001feffc000000000000000000000000000fedfffffff00000000 +% 00000000000003ffff00000000000000000000000000007fffefffff80000000 +% 00000000000003fdff00000000000000000000000000007fffffffff80000000 +% 00000000000003ffff00000000000000000000000000007ffff7ffff80000000 +% 00000000000007fbfe00000000000000000000000000003fffffffffc0000000 +% 0000000000000ffffc00000000000000000000000000003ffffbffffc0000000 +% 0000000000000ff7fc00000000000000000000000000003fffffffffe0000000 +% 0000000000000ffff800000000000000000000000000001fffffffffe0000000 +% 0000000000001feff800000000000000000000000000001ffffdffffe0000000 +% 0000000000003ffff000000000000000000000000000001ffffffffff0000000 +% 0000000000003fdff000000000000000000000000000001ffffdfffff0000000 +% 0000000000007fffe000000000000000000000000000001ffffffffff0000000 +% 0000000000007fbfe000000000000000000000000000001ffffdfffff0000000 +% 000000000000ffffe000000000000000000000000000000ffffffffff8000000 +% 000000000001ffffc000000000000000000000000000000ffffffffff8000000 +% 000000000001ff7fc000000000000000000000000000000ffffffffff8000000 +% 000000000003ffffc000000000000000000000000000000ffffffffff8000000 +% 000000000007ffff8000000000000000000000000000000ffffffffff8000000 +% 00000000000fff7f8000000000000000000000000000000ffffbfffffc000000 +% 00000000000fffff8000000000000000000000000000000ffffffffffc000000 +% 00000000001fff7f8000000000000000000000000000000ffffffffffc000000 +% 00000000003fff7f0000000000000000000000000000000ffff7fffffc000000 +% 00000000007fff7f0000000000000000000000000000000ffffffffffc000000 +% 00000000007fffff0000000000000000000000000000000ffffffffffc000000 +% 0000000000ffff7f0000000000000000000000000000000ffffffffffc000000 +% 0000000000ffff7f0000000000000000000000000000000ffffffffffc000000 +% 0000000000ffff7f0000000000000000000000000000000ffffffffffc000000 +% 0000000000fffd7f0000000000000000000000000000000ffffffffffc000000 +% 0000000001ffff7e0000000000000000000000000000000ffffffffffc000000 +% 0000000001ffffbf0000000000000000000000000000000ffffffffffc000000 +% 0000000001fffffe0000000000000000000000000000000ffffffffffc000000 +% 0000000001ffffbf0000000000000000000000000000000ffffffffffc000000 +% 0000000001fffffe0000000000000000000000000000000ffffffffffc000000 +% 0000000001ffffff0000000000000000000000000000001ffffffffff8000000 +% 0000000001fffffb0000000000000000000000000000001ffffffffff8000000 +% 0000000000ffbfff0000000000000000000000000000001ffffffefff8000000 +% 0000000000fa03fc8000000000000000000000000000001fffffffd7f8000000 +% 00000000005048ff8000000000000000000000000000003ffffffff7f0000000 +% 000000000025123fc000000000000000000000000000003ffffffffdf0000000 +% 0000000000a840bfe000000000000000000000000000003ffffffff7f0000000 +% 000000000042141ff000000000000000000000000000aa8ffffffffff0000000 +% 0000000001288143fe000000000000000000000000010027ffffffffa0000000 +% 0000000002822815fe00000000000000000000000002000fffffffff80000000 +% 0000000002548282ff800000000000000000000000025497ffffffff40000000 +% 0000000005202829ffc0000000000000000000000002800fffffffff08000000 +% 00000000094a82803ff0000000000000000000000000255ffffffffe21000000 +% 00000000141024255ffc000000000000000000000002881ffffffffc44000000 +% 0000000052a288883ffe0000000000000000000000022157fffffffa08800000 +% 00000aaaaa0821110fff000000000000000000000001442ffffffff8a1000000 +% 0005525544a2882257ffe000000000000000000000021157ffffffe408800000 +% 000524892908228403fff00000000000000000000004a42fffffffe952800000 +% 0014892442224420a5fff800000000000000000000020157ffffffc200800000 +% 000a52529444088a02fffe00000000000000000000295495ffffff54aa800000 +% 002904840088a110a97fff800000000000000000008202557ffffa8800800000 +% 005251295511082200ffffc00000000000000000000954957fffeaa2aa000000 +% 0014840000222284a53ffff000000000000000000122012aaffeaa1400800000 +% 0022295554844420085ffff800000000000000000005544aa952aaa154000000 +% 005480000120888aa12ffffe0000000000000000024881295555500a01400000 +% 00292aaaa40a1110081fffff00000000000000000002aa455555255054100000 +% 0052400008a08222a24fffff800000000000000001250094a54aa80201480000 +% 0024894a420a28440897ffffc000000000000000000a55252a5482a8a4100000 +% 0015221090a082089103fffff0000000000000000122a0489292540209440000 +% 00284842040910a12225ffffe0000000000000000005151249248150a0110000 +% 00128210a14224080442fffff8000000000000000095404492492a040a848000 +% 002a28840a104142a8897ffff0000000000000000002aa912492404940294000 +% 00128221404508100110bffff800000000000000009d10244924951015021000 +% 0014508a1510428554227ffff800000000000000001aa5411249004280544000 +% 000905104045142801441ffff800000000000000005d4814449055102a011400 +% 00155022148840814808affff000000000000000003a92a11105004500a84100 +% 000905048111122812a117ffe00000000000000000fd24044450551054021420 +% 0014a85028222082800a0bffc00000000000000001faa951110500450150a108 +% 000a0105028445102aa057ff800000000000000003fd42044448491052040450 +% 0015545050208825000a81fc000000000000000007fa94511111122204515104 +% 00088104850a110055200a8000000000000000001ffd210444422044a0840452 +% 00152a21104082550045514000000000000000007ffaaa51111045080a114884 +% 0009404822142800520802600000000000000000fffa80044445084140841112 +% 002a150284a102aa04a150a00000000000000001fffaaaa11110411414212224 +% 0014a05020045000a00a0528000000000000000ffff510084445144141084490 +% 002909050aa1054a0aa05058000000000000001ffffd45421110411414520928 +% 8055525040085010a009050c000000000000007ffff55014844488412100a248 +% 00280005154205220a90505600000000000001fffffd254021111212044a0930 +% 80a555504014a044402285158000000000001ffffff54815084420845110a540 +% 005400048a400a0894841055c000000000003ffffffd22805211042084451500 +% 815155481092a0a10110a527e00000000000fffffff548290084514a11105400 +% 00a4001142040a0828240095780000000007fffffffa92824a21040084455000 +% 8292aa8210a0a0a282815525ffc0000007ffffffffed482810885154292a8000 +% 01540028440a0908282a00957ffe802afffffffffffaa2828222040142540000 +% 82a2aa829140a2228280552adfffffffffffffffffea94282888a15414a80000 +% 01540028041408442425004afffffffffffffffffffaa102422208014aa00000 +% 02a95542a94142088888552b5fffffffffffffffffed4a508888a2aa54000000 +% 814a9014001410a111110095fffffffffffffffffff5200411120844ac000000 +% 82aa4aa15541450822222a555fffffffffffffffffdaaaa14220a29550000000 +% 0155554a4814104284444155fffffffffffffffffff5480a1445092ac0000000 +% 8055555552a2a51420888aab5fffffffffffffffffeea5504110555400000000 +% 000daaaaaaa910410a2224aafffffffffffffffffffaa885144522ac00000000 +% 8000755555554a9450888957b7ffffffffffffffffed55284110955000000000 +% 00000ed5555555210422255afffffffffffffffffffb5242944aaaa000000000 +% 8000001b6aaaaaaa51489557bfffffffffffffffffed55282125558000000000 +% 00000002ddb555554a12aabd7fffe0000000001ffffb55454aaaaf0000000000 +% 80000000176edaaaa4a4aad7ff800000000000000ffed5292495540000000000 +% 0000000002dbb5555555557dfe000000000000000075aaaaaaaab80000000000 +% 8000000000036feaaaaaabd7fc00000000000000003f6aaaaaabe00000000000 +% 0000000000003abdb55576bee000000000000000003ad5555556800000000000 +% 80000000000003eb6db6ddf78000000000000000003fbb55556d800000000000 +% 000000000000007edb6db76f0000000000000000001eeab555b7000000000000 +% 8000000000000003f6db6dfc00000000000000000007df6bbb6c000000000000 +% 00000000000000007ff7fff800000000000000000003fadd6ef8000000000000 +% 80000000000000001b5edbb000000000000000000000ffb7b5e0000000000000 +% 000000000000000003fbffc000000000000000000000777d7f80000000000000 +% 80000000000000000007f0000000000000000000000001ffe000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 8000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 8000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 8000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 8000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +% 8000000000000000000000000000000000000000000000000000000000000000 +% 0000000000000000000000000000000000000000000000000000000000000000 +%%EndPreview +%%BeginProlog +% Use own dictionary to avoid conflicts +10 dict begin +%%EndProlog +%%Page: 1 1 +% Translate for offset +14.173228 14.173228 translate +% Translate to begin of first scanline +0.000000 90.000000 translate +72.000000 -90.000000 scale +% Image geometry +256 320 8 +% Transformation matrix +[ 256 0 0 320 0 0 ] +% Strings to hold RGB-samples per scanline +/rstr 256 string def +/gstr 256 string def +/bstr 256 string def +{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop} +{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop} +{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop} +true 3 +%%BeginData: 86888 ASCII Bytes +colorimage +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +K)bfOKE$H~> +K)bfOKE$H~> +K)bfOKE$H~> +N;r5GMuS;~> +N;r5GMuS;~> +N;r5GMuS;~> +O8n8BOT0h~> +O8n8BOT0h~> +O8n8BOT0h~> +OoO>@P5g%~> +OoO>@P5g%~> +OoO>@P5g%~> +PlKG=Q2c@~> +PlKG=Q2c@~> +PlKG=Q2c@~> +QN,M;QiDR~> +QN,M;QiDR~> +QN,M;QiDR~> +QiGM9RK%d~> +QiGM9RK%d~> +QiGM9RK%d~> +RK(S7S,\!~> +RK(S7S,\!~> +RK(S7S,\!~> +RfCb:!!`B'Sc=3~> +RfCb:!!`B'Sc=3~> +RfCb:!!`B'Sc=3~> +S,^e9!!`B'T)X<~> +S,^e9!!`B'T)X<~> +S,^e9!!`B'T)X<~> +Sc?\2T`9N~> +Sc?\2T`9N~> +Sc?\2T`9N~> +T)[7@rW`#sU&TW~> +T)[7@rW`#sU&TW~> +T)[7@rW`#sU&TW~> +TE!CB"q2.a)\WVgp&^ugJ,~> +TE!CB"q2.a)\WVgp&^ugJ,~> +TE!CB"q2.a)\WVgp&^ugJ,~> +TE!FC$4IRe,V1Jl)\WVap]:F"V#Pr~> +TE!FC$4IRe,V1Jl)\WVap]:F"V#Pr~> +TE!FC$4IRe,V1Jl)\WVap]:F"V#Pr~> +T`\T7'+>*@!WWG$s*t~> +T`\T7'+>*@!WWG$s*t~> +T`\T7'+>*@!WWG$s*t~> +U&WUD%La!r/3H +U&WUD%La!r/3H +U&WUD%La!r/3H +UAr^ErsTAN,V2>[>\%)>6p*">'*e76VZ2/~> +UAr^ErsTAN,V2>[>\%)>6p*">'*e76VZ2/~> +UAr^ErsTAN,V2>[>\%)>6p*">'*e76VZ2/~> +UAr^E&I&X_,W%nhA8>sk>Y6h()\WYU!iQ'K~> +UAr^E&I&X_,W%nhA8>sk>Y6h()\WYU!iQ'K~> +UAr^E&I&X_,W%nhA8>sk>Y6h()\WYU!iQ'K~> +U]8aD&I]=(1eM"gI!f^?:cp9S)[lrH!iZ-L~> +U]8aD&I]=(1eM"gI!f^?:cp9S)[lrH!iZ-L~> +U]8aD&I]=(1eM"gI!f^?:cp9S)[lrH!iZ-L~> +U]8aD&e#F!4A]R1I!g$H +U]8aD&e#F!4A]R1I!g$H +U]8aD&e#F!4A]R1I!g$H +V#SgD&e#^)4A]R1I!g$H>XU\2,T@C*q#[PqJ,~> +V#SgD&e#^)4A]R1I!g$H>XU\2,T@C*q#[PqJ,~> +V#SgD&e#^)4A]R1I!g$H>XU\2,T@C*q#[PqJ,~> +V#SgD'+>g24A]R1FDGYs:ddE&/0l/J%/Bt)s*t~> +V#SgD'+>g24A]R1FDGYs:ddE&/0l/J%/Bt)s*t~> +V#SgD'+>g24A]R1FDGYs:ddE&/0l/J%/Bt)s*t~> +V>nmD'+>g26r7E9CLg[H6p*:_/0l/J%/9n)s*t~> +V>nmD'+>g26r7E9CLg[H6p*:_/0l/J%/9n)s*t~> +V>nmD'+>g26r7E9CLg[H6p*:_/0l/J%/9n)s*t~> +V>npE%0dIb/3Ha6A6`,26p*=*/-I4;'+>*@!iu?O~> +V>npE%0dIb/3Ha6A6`,26p*=*/-I4;'+>*@!iu?O~> +V>npE%0dIb/3Ha6A6`,26p*=*/-I4;'+>*@!iu?O~> +VZ5!E"U5VZ/3H?":^]ZR1b:0s)^H@9$jQG-XT*e~> +VZ5!E"U5VZ/3H?":^]ZR1b:0s)^H@9$jQG-XT*e~> +VZ5!E"U5VZ/3H?":^]ZR1b:0s)^H@9$jQG-XT*e~> +VZ5!ErsT5R,W%nO6o6_O,UE:$rs\T&XT*e~> +VZ5!ErsT5R,W%nO6o6_O,UE:$rs\T&XT*e~> +VZ5!ErsT5R,W%nO6o6_O,UE:$rs\T&XT*e~> +VZ5!E&I] +VZ5!E&I] +VZ5!E&I] +VuP$D!Xo_]r?VCVrs\8rXoEn~> +VuP$D!Xo_]r?VCVrs\8rXoEn~> +VuP$D!Xo_]r?VCVrs\8rXoEn~> +VuP'E!X9&Ar"B&7l2gqiY5a"~> +VuP'E!X9&Ar"B&7l2gqiY5a"~> +VuP'E!X9&Ar"B&7l2gqiY5a"~> +VuP$D"U5AD',(T5!j;QR~> +VuP$D"U5AD',(T5!j;QR~> +VuP$D"U5AD',(T5!j;QR~> +W;k*DrsSr5!Y"/lYQ'+~> +W;k*DrsSr5!Y"/lYQ'+~> +W;k*DrsSr5!Y"/lYQ'+~> +W;iq#YQ'+~> +W;iq#YQ'+~> +W;iq#YQ'+~> +W;iq#YQ'+~> +W;iq#YQ'+~> +W;iq#YQ'+~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +W;in"YlB4~> +WW/q!Z2]=~> +WW/q!Z2]=~> +WW/q!Z2]=~> +WW1*B!!_B`Z2]=~> +WW1*B!!_B`Z2]=~> +WW1*B!!_B`Z2]=~> +WW2Ji"9o8C"pX,i"pP,5!X9;HrY,;?k5qpgJ,~> +WW2Ji"9o8C"pX,i"pP,5!X9;HrY,;?k5qpgJ,~> +WW2Ji"9o8C"pX,i"pP,5!X9;HrY,;?k5qpgJ,~> +WW2Vm!!`?0rY#;@#2fR_'*TX41d!#lklS-iJ,~> +WW2Vm!!`?0rY#;@#2fR_'*TX41d!#lklS-iJ,~> +WW2Vm!!`?0rY#;@#2fR_'*TX41d!#lklS-iJ,~> +WW2\or!Wi8$l^H;//o!%hZ +WW2\or!Wi8$l^H;//o!%hZ +WW2\or!Wi8$l^H;//o!%hZ +WW2_p!sT/B#5nT.$l_#k6nAu[n,`Ron,`b,1f.^N'C,_)s*t~> +WW2_p!sT/B#5nT.$l_#k6nAu[n,`Ron,`b,1f.^N'C,_)s*t~> +WW2_p!sT/B#5nT.$l_#k6nAu[n,`Ron,`b,1f.^N'C,_)s*t~> +WW2bqrs\])rsT&M/4;$hlr#580%"qqpp%/^/1$m\YS1^<7IZN#F~> +WW2bqrs\])rsT&M/4;$hlr#580%"qqpp%/^/1$m\YS1^<7IZN#F~> +WW2bqrs\])rsT&M/4;$hlr#580%"qqpp%/^/1$m\YS1^<7IZN#F~> +WW2;d"UlYE1`HYc!X]>]8mH.RCMQoq#6"Z,"rfru)s[R2s*t~> +WW2;d"UlYE1`HYc!X]>]8mH.RCMQoq#6"Z,"rfru)s[R2s*t~> +WW2;d"UlYE1`HYc!X]>]8mH.RCMQoq#6"Z,"rfru)s[R2s*t~> +WW2Sl"9oej)\`/O":QhL1_]\eG/KDh#:K3Tr9rW30@6o5SD!j_iV~> +WW2Sl"9oej)\`/O":QhL1_]\eG/KDh#:K3Tr9rW30@6o5SD!j_iV~> +WW2Sl"9oej)\`/O":QhL1_]\eG/KDh#:K3Tr9rW30@6o5SD!j_iV~> +WW2Yn#SSahFG#3]:`KB8"<00c,RjDK!"Ac,#Ri7aA9<3XN0O=3%&Bu+PXGo]!XpVB,Rj&AZN#F~> +WW2Yn#SSahFG#3]:`KB8"<00c,RjDK!"Ac,#Ri7aA9<3XN0O=3%&Bu+PXGo]!XpVB,Rj&AZN#F~> +WW2Yn#SSahFG#3]:`KB8"<00c,RjDK!"Ac,#Ri7aA9<3XN0O=3%&Bu+PXGo]!XpVB,Rj&AZN#F~> +WW2\o&K=PgN1?uNS:bT6$j$J=,U +WW2\o&K=PgN1?uNS:bT6$j$J=,U +WW2\o&K=PgN1?uNS:bT6$j$J=,U +WW2_p%3&Q"Panhg`5K?RF@m5G!rir/!WWH'!Y#f8A9<3XPa%]6XL,(9rko/f]pq\."p+i1'+F:1 +ZN#F~> +WW2_p%3&Q"Panhg`5K?RF@m5G!rir/!WWH'!Y#f8A9<3XPa%]6XL,(9rko/f]pq\."p+i1'+F:1 +ZN#F~> +WW2_p%3&Q"Panhg`5K?RF@m5G!rir/!WWH'!Y#f8A9<3XPa%]6XL,(9rko/f]pq\."p+i1'+F:1 +ZN#F~> +WW2bq'+@K\N1?u_`5K@&[#BB)'*84D%/9l(#6"Z/'1?AQN/X:&ri?+,rk/T]eBGkEUk:K;rW<*5 +mK0]oJ,~> +WW2bq'+@K\N1?u_`5K@&[#BB)'*84D%/9l(#6"Z/'1?AQN/X:&ri?+,rk/T]eBGkEUk:K;rW<*5 +mK0]oJ,~> +WW2bq'+@K\N1?u_`5K@&[#BB)'*84D%/9l(#6"Z/'1?AQN/X:&ri?+,rk/T]eBGkEUk:K;rW<*5 +mK0]oJ,~> +WW2bq'I7dQPbc"2bfn#D[%*)&6k]b+$jQA+#qTV/N1?uV[(X0O`;e$ieBGV5Ul9(."p+i1%.42& +s*t~> +WW2bq'I7dQPbc"2bfn#D[%*)&6k]b+$jQA+#qTV/N1?uV[(X0O`;e$ieBGV5Ul9(."p+i1%.42& +s*t~> +WW2bq'I7dQPbc"2bfn#D[%*)&6k]b+$jQA+#qTV/N1?uV[(X0O`;e$ieBGV5Ul9(."p+i1%.42& +s*t~> +WW2er#n0XXN23Pg`6?1!]`k3rN-llZo)]dC +WW2er#n0XXN23Pg`6?1!]`k3rN-llZo)]dC +WW2er#n0XXN23Pg`6?1!]`k3rN-llZo)]dC +WW2er#TI<,S>h!F\*q>CTkrTr=HS:"imklS3kJ,~> +WW2er#TI<,S>h!F\*q>CTkrTr=HS:"imklS3kJ,~> +WW2er#TI<,S>h!F\*q>CTkrTr=HS:"imklS3kJ,~> +WW2hs#6m;4PdJBam/-_bo_nF;X;gd5"U85%[+tO~> +WW2hs#6m;4PdJBam/-_bo_nF;X;gd5"U85%[+tO~> +WW2hs#6m;4PdJBam/-_bo_nF;X;gd5"U85%[+tO~> +WW2hs$3jLh^"i8YrUg'\qY^HU;"Oel)hYiZo_SLijKt/IeF`b=#5%lme>.1*l2n +WW2hs$3jLh^"i8YrUg'\qY^HU;"Oel)hYiZo_SLijKt/IeF`b=#5%lme>.1*l2n +WW2hs$3jLh^"i8YrUg'\qY^HU;"Oel)hYiZo_SLijKt/IeF`b=#5%lme>.1*l2n +WW2hs$k-pQjRiECm**Dlm.C5S!q_ueo`>4HUs.osr +WW2hs$k-pQjRiECm**Dlm.C5S!q_ueo`>4HUs.osr +WW2hs$k-pQjRiECm**Dlm.C5S!q_ueo`>4HUs.osr +WW2hs%3'rDo_na<>U0t%4J_?Ar;k+fq>pX$r;m*iUs/2trV[)iF;"]W$l^H24LG%b"8()J%-mu$ +s*t~> +WW2hs%3'rDo_na<>U0t%4J_?Ar;k+fq>pX$r;m*iUs/2trV[)iF;"]W$l^H24LG%b"8()J%-mu$ +s*t~> +WW2hs%3'rDo_na<>U0t%4J_?Ar;k+fq>pX$r;m*iUs/2trV[)iF;"]W$l^H24LG%b"8()J%-mu$ +s*t~> +WW2hs%O@k:rVbe>!WicU,SPRlrVZc`9)A\i%/g509!$8/rVZfiK+._\#;gOE8gGsho_n^ioSaIL +!jhoW~> +WW2hs%O@k:rVbe>!WicU,SPRlrVZc`9)A\i%/g509!$8/rVZfiK+._\#;gOE8gGsho_n^ioSaIL +!jhoW~> +WW2hs%O@k:rVbe>!WicU,SPRlrVZc`9)A\i%/g509!$8/rVZfiK+._\#;gOE8gGsho_n^ioSaIL +!jhoW~> +WW2hs!Be="oEosI!X:c/A3;-%o`"droR$iO$jHb7$k*@>!Wu9#eF`b=!qa/>rW3B1/9I,8A0a"] +o_n^hZlA<4Zi>O~> +WW2hs!Be="oEosI!X:c/A3;-%o`"droR$iO$jHb7$k*@>!Wu9#eF`b=!qa/>rW3B1/9I,8A0a"] +o_n^hZlA<4Zi>O~> +WW2hs!Be="oEosI!X:c/A3;-%o`"droR$iO$jHb7$k*@>!Wu9#eF`b=!qa/>rW3B1/9I,8A0a"] +o_n^hZlA<4Zi>O~> +WW)r&quR$ubk1kp/H,\T1lR&t//uh3r;i,arXAf.rtGA5"9r,4eF`b=!UNGV!XK2sFGu/T$tT#/ +r;tJ"%."&%s*t~> +WW)r&quR$ubk1kp/H,\T1lR&t//uh3r;i,arXAf.rtGA5"9r,4eF`b=!UNGV!XK2sFGu/T$tT#/ +r;tJ"%."&%s*t~> +WW)r&quR$ubk1kp/H,\T1lR&t//uh3r;i,arXAf.rtGA5"9r,4eF`b=!UNGV!XK2sFGu/T$tT#/ +r;tJ"%."&%s*t~> +WW)r&quR$oeEm.@%/p;;)dIc<49B>dW#Qrqul2%/L#01jjpk"t\R. +r;uUf'C5e,s*t~> +WW)r&quR$oeEm.@%/p;;)dIc<49B>dW#Qrqul2%/L#01jjpk"t\R. +r;uUf'C5e,s*t~> +WW)r&quR$oeEm.@%/p;;)dIc<49B>dW#Qrqul2%/L#01jjpk"t\R. +r;uUf'C5e,s*t~> +WW2hs"AmV7oP=@+$oE'J<=C_FrVcAa',1?a%Q$dS:dc6,>\eEp' +WW2hs"AmV7oP=@+$oE'J<=C_FrVcAa',1?a%Q$dS:dc6,>\eEp' +WW2hs"AmV7oP=@+$oE'J<=C_FrVcAa',1?a%Q$dS:dc6,>\eEp' +WW2hs"C0IKrCZth$6)fHCE"5+rVcAir=]5O,V8pW#t-=@XOQn@rTlZC!rio +WW2hs"C0IKrCZth$6)fHCE"5+rVcAir=]5O,V8pW#t-=@XOQn@rTlZC!rio +WW2hs"C0IKrCZth$6)fHCE"5+rVcAir=]5O,V8pW#t-=@XOQn@rTlZC!rio +WW2hs"BEtDoK<$Q$4JI^CFfOGrVc)Qr +WW2hs"BEtDoK<$Q$4JI^CFfOGrVc)Qr +WW2hs"BEtDoK<$Q$4JI^CFfOGrVc)Qr +W;lbs##NP1oL')lrW3H3)am:3!c.c5luWI-!X]>T$k,8"h":R+,k_<>'*85Gm/Hqbm%b'V!jhoW~> +W;lbs##NP1oL')lrW3H3)am:3!c.c5luWI-!X]>T$k,8"h":R+,k_<>'*85Gm/Hqbm%b'V!jhoW~> +W;lbs##NP1oL')lrW3H3)am:3!c.c5luWI-!X]>T$k,8"h":R+,k_<>'*85Gm/Hqbm%b'V!jhoW~> +W;lbs##NP1rF?QMrW3H3'/WN!!c.H,`%2>l!XT8:!ZR*Jo_mPjo)\r'o`"djm%b'V!jhoW~> +W;lbs##NP1rF?QMrW3H3'/WN!!c.H,`%2>l!XT8:!ZR*Jo_mPjo)\r'o`"djm%b'V!jhoW~> +W;lbs##NP1rF?QMrW3H3'/WN!!c.H,`%2>l!XT8:!ZR*Jo_mPjo)\r'o`"djm%b'V!jhoW~> +W;lbs"[p;qoR$l?!ZVk)$j'u3lt[7E(*bCi0eFn#+X%U*,[A:SrTkg$!WdE8rquobS.k5jZi>O~> +W;lbs"[p;qoR$l?!ZVk)$j'u3lt[7E(*bCi0eFn#+X%U*,[A:SrTkg$!WdE8rquobS.k5jZi>O~> +W;lbs"[p;qoR$l?!ZVk)$j'u3lt[7E(*bCi0eFn#+X%U*,[A:SrTkg$!WdE8rquobS.k5jZi>O~> +W;lbs"Z3pRoX#&'!ZM=F!c.5"3CIJ2MMdRSL6@FGH>,c%1n<@noK;^H!1a#d!p#:KliONnJ,~> +W;lbs"Z3pRoX#&'!ZM=F!c.5"3CIJ2MMdRSL6@FGH>,c%1n<@noK;^H!1a#d!p#:KliONnJ,~> +W;lbs"Z3pRoX#&'!ZM=F!c.5"3CIJ2MMdRSL6@FGH>,c%1n<@noK;^H!1a#d!p#:KliONnJ,~> +W;lbs"WOQ(o\:D[!X3,:FafXRriQd4Y,8A-Y-kF0NH&!ho^mP'!WieSo`"djjEqC&!jhoW~> +W;lbs"WOQ(o\:D[!X3,:FafXRriQd4Y,8A-Y-kF0NH&!ho^mP'!WieSo`"djjEqC&!jhoW~> +W;lbs"WOQ(o\:D[!X3,:FafXRriQd4Y,8A-Y-kF0NH&!ho^mP'!WieSo`"djjEqC&!jhoW~> +W;lbs"q6aWo_ik9q#Up><.^:&X1#UI['$_5XoPp0Xp22.L7@8J%eTl'AGuH.o[H_'!jhoW~> +W;lbs"q6aWo_ik9q#Up><.^:&X1#UI['$_5XoPp0Xp22.L7@8J%eTl'AGuH.o[H_'!jhoW~> +W;lbs"q6aWo_ik9q#Up><.^:&X1#UI['$_5XoPp0Xp22.L7@8J%eTl'AGuH.o[H_'!jhoW~> +W;l_r#&D`\o\;8BquR92/T$<'Kp&:?[^NKIriQ[&MLL"sP,u+#Y*QIrp&Y7?bl.JBm)1._liONn +J,~> +W;l_r#&D`\o\;8BquR92/T$<'Kp&:?[^NKIriQ[&MLL"sP,u+#Y*QIrp&Y7?bl.JBm)1._liONn +J,~> +W;l_r#&D`\o\;8BquR92/T$<'Kp&:?[^NKIriQ[&MLL"sP,u+#Y*QIrp&Y7?bl.JBm)1._liONn +J,~> +W;l_r#!Bijo_kj)r;mfV;L=+LD0qbT[C3NN[^<3?VN#_4<,%Z$rjDp3MF\NY!WaRRr;?]PPRQjZ +Zi>O~> +W;l_r#!Bijo_kj)r;mfV;L=+LD0qbT[C3NN[^<3?VN#_4<,%Z$rjDp3MF\NY!WaRRr;?]PPRQjZ +Zi>O~> +W;l_r#!Bijo_kj)r;mfV;L=+LD0qbT[C3NN[^<3?VN#_4<,%Z$rjDp3MF\NY!WaRRr;?]PPRQjZ +Zi>O~> +W;l_r'I9L8o_n`Q$j$JcBR>GhJpWui[C-"B%(*IMY,nLtQ@aja[(H=G"L>1n<#tl +W;l_r'I9L8o_n`Q$j$JcBR>GhJpWui[C-"B%(*IMY,nLtQ@aja[(H=G"L>1n<#tl +W;l_r'I9L8o_n`Q$j$JcBR>GhJpWui[C-"B%(*IMY,nLtQ@aja[(H=G"L>1n<#tl +W;l_r)$Y34m/?nTN#ONiI>*ZHU8G6%[C* +W;l_r)$Y34m/?nTN#ONiI>*ZHU8G6%[C* +W;l_r)$Y34m/?nTN#ONiI>*ZHU8G6%[C* +W;l\q&k'\!o_naVMfjH%NLQcFZEgmDrO)^5r4<]X]>MP,b/VK>_7dIo]sb)@P')i0m/Hqco^((( +kQ8-kJ,~> +W;l\q&k'\!o_naVMfjH%NLQcFZEgmDrO)^5r4<]X]>MP,b/VK>_7dIo]sb)@P')i0m/Hqco^((( +kQ8-kJ,~> +W;l\q&k'\!o_naVMfjH%NLQcFZEgmDrO)^5r4<]X]>MP,b/VK>_7dIo]sb)@P')i0m/Hqco^((( +kQ8-kJ,~> +W;l\q)&&OYjRhf7H\-s2QD1Fc[Bd6H[^*?M['[IE_>_@PaoTf4rlPku`l>p0]!ec=S!9GF`8o_' +S.+T_[/YX~> +W;l\q)&&OYjRhf7H\-s2QD1Fc[Bd6H[^*?M['[IE_>_@PaoTf4rlPku`l>p0]!ec=S!9GF`8o_' +S.+T_[/YX~> +W;l\q)&&OYjRhf7H\-s2QD1Fc[Bd6H[^*?M['[IE_>_@PaoTf4rlPku`l>p0]!ec=S!9GF`8o_' +S.+T_[/YX~> +W;lYp(IYX[m$E'NKoM7dVQR51[^EQL[^NQT]DfVe`lcHLb0J;\c-FSYbfIlC_nEalX/;GRMhQRu +0b!7I[/YX~> +W;lYp(IYX[m$E'NKoM7dVQR51[^EQL[^NQT]DfVe`lcHLb0J;\c-FSYbfIlC_nEalX/;GRMhQRu +0b!7I[/YX~> +W;lYp(IYX[m$E'NKoM7dVQR51[^EQL[^NQT]DfVe`lcHLb0J;\c-FSYbfIlC_nEalX/;GRMhQRu +0b!7I[/YX~> +W;ci%q>q$5Pg#&4I>*]IS"ct_Z2qD>r3cX<[/RlC_oBjucMc/oc,e,MaSs*W]aD?_[]Z[*QATN<% +-[i#s*t~> +W;ci%q>q$5Pg#&4I>*]IS"ct_Z2qD>r3cX<[/RlC_oBjucMc/oc,e,MaSs*W]aD?_[]Z[*QATN<% +-[i#s*t~> +W;ci%q>q$5Pg#&4I>*]IS"ct_Z2qD>r3cX<[/RlC_oBjucMc/oc,e,MaSs*W]aD?_[]Z[*QATN<% +-[i#s*t~> +W;lYp%h(pAG_1X*OHuH6X/iP3[JdNH] +W;lYp%h(pAG_1X*OHuH6X/iP3[JdNH] +W;lYp%h(pAG_1X*OHuH6X/iP3[JdNH] +W;lYp$lrSqH\.'8QCFVLX02B+%^raV]>;+q_8aL;cHak_rmCekrlk>^&'W,=bfJ#L_oKg+ZD)[t% +-mu%s*t~> +W;lYp$lrSqH\.'8QCFVLX02B+%^raV]>;+q_8aL;cHak_rmCekrlk>^&'W,=bfJ#L_oKg+ZD)[t% +-mu%s*t~> +W;lYp$lrSqH\.'8QCFVLX02B+%^raV]>;+q_8aL;cHak_rmCekrlk>^&'W,=bfJ#L_oKg+ZD)[t% +-mu%s*t~> +W;l\q$mT#"I=6g0P*VZ8X02H-rO**G[(Erd_8F:4b0J<2df7Sebl,W_bQl57a2>3P>8HN+[/YX~> +W;l\q$mT#"I=6g0P*VZ8X02H-rO**G[(Erd_8F:4b0J<2df7Sebl,W_bQl57a2>3P>8HN+[/YX~> +W;l\q$mT#"I=6g0P*VZ8X02H-rO**G[(Erd_8F:4b0J<2df7Sebl,W_bQl57a2>3P>8HN+[/YX~> +W;l_r&JeetH[UL%Ng?61V5po-[^*=?[f3o<_>hLTb5T]cde_/iaNV`Hrlk>^#KFg0a1\?p-gLi@ +s*t~> +W;l_r&JeetH[UL%Ng?61V5po-[^*=?[f3o<_>hLTb5T]cde_/iaNV`Hrlk>^#KFg0a1\?p-gLi@ +s*t~> +W;l_r&JeetH[UL%Ng?61V5po-[^*=?[f3o<_>hLTb5T]cde_/iaNV`Hrlk>^#KFg0a1\?p-gLi@ +s*t~> +W;lbs%0eS.H[UL%LmF@$V5pZqZMq97]`b`k25O#/8-h +V0FKplN4KoJ,~> +W;lbs%0eS.H[UL%LmF@$V5pZqZMq97]`b`k25O#/8-h +V0FKplN4KoJ,~> +W;lbs%0eS.H[UL%LmF@$V5pZqZMq97]`b`k25O#/8-h +V0FKplN4KoJ,~> +VuQ\s,9:3;I=6^-LmFU.X/iP/[C3KK[^Nfa_7RP"`l?0DdaHFhdeV,da8jH`a:#nmNHKi1ZFd]; +Bd;mE[Jta~> +VuQ\s,9:3;I=6^-LmFU.X/iP/[C3KK[^Nfa_7RP"`l?0DdaHFhdeV,da8jH`a:#nmNHKi1ZFd]; +Bd;mE[Jta~> +VuQ\s,9:3;I=6^-LmFU.X/iP/[C3KK[^Nfa_7RP"`l?0DdaHFhdeV,da8jH`a:#nmNHKi1ZFd]; +Bd;mE[Jta~> +VuQ_t%Lb+5GC>(!Lm"3tV5pZ"rNcI3s18<=]DfVJ_og.#dKIh9bfn0-bl>`cbfJ$-a:,\^L37K\ +QD1F\NE[(]!k&&Y~> +VuQ_t%Lb+5GC>(!Lm"3tV5pZ"rNcI3s18<=]DfVJ_og.#dKIh9bfn0-bl>`cbfJ$-a:,\^L37K\ +QD1F\NE[(]!k&&Y~> +VuQ_t%Lb+5GC>(!Lm"3tV5pZ"rNcI3s18<=]DfVJ_og.#dKIh9bfn0-bl>`cbfJ$-a:,\^L37K\ +QD1F\NE[(]!k&&Y~> +VuQ_t'F[BRH[U`dbfIlLrl>Sc]7tWdJrQLo +U8=NB9Fg=h[Jta~> +VuQ_t'F[BRH[U`dbfIlLrl>Sc]7tWdJrQLo +U8=NB9Fg=h[Jta~> +VuQ_t'F[BRH[U`dbfIlLrl>Sc]7tWdJrQLo +U8=NB9Fg=h[Jta~> +VuQ_t$k-$VH[UL%Ng?61X/l3)!4Dg7!OTK;_#_QurQYGlbl5ZebfJ#PaNXV(#/QjQHAIZKrLNt_ +!fBAUklS +VuQ_t$k-$VH[UL%Ng?61X/l3)!4Dg7!OTK;_#_QurQYGlbl5ZebfJ#PaNXV(#/QjQHAIZKrLNt_ +!fBAUklS +VuQ_t$k-$VH[UL%Ng?61X/l3)!4Dg7!OTK;_#_QurQYGlbl5ZebfJ#PaNXV(#/QjQHAIZKrLNt_ +!fBAUklS +VuQ_t(CX8eH[UL+QC=A=X/iP6[^ENK[_&u[]DfYGb5]lpcH+)NaN2TLqoBAh["`:HOHu3%SYDjL +SYD*3%-[i%s*t~> +VuQ_t(CX8eH[UL+QC=A=X/iP6[^ENK[_&u[]DfYGb5]lpcH+)NaN2TLqoBAh["`:HOHu3%SYDjL +SYD*3%-[i%s*t~> +VuQ_t(CX8eH[UL+QC=A=X/iP6[^ENK[_&u[]DfYGb5]lpcH+)NaN2TLqoBAh["`:HOHu3%SYDjL +SYD*3%-[i%s*t~> +VuQ_t%gG^MH\I08QCXSCX/iP7[J[K4]Do\J`l%f$"jP-4bfJ$-a8jH_a9obVF_uqtQBmu1UAUP` +O@TlF!k82[~> +VuQ_t%gG^MH\I08QCXSCX/iP7[J[K4]Do\J`l%f$"jP-4bfJ$-a8jH_a9obVF_uqtQBmu1UAUP` +O@TlF!k82[~> +VuQ_t%gG^MH\I08QCXSCX/iP7[J[K4]Do\J`l%f$"jP-4bfJ$-a8jH_a9obVF_uqtQBmu1UAUP` +O@TlF!k82[~> +VuQ\s$o(t"H\.QQU8=]eX0V`4&\>Ea]=Ynk_8aL4cHaSXaN2U'aSs0`_6er/H]=?hSc>GaSHG=O +Lc=Ju\,Us~> +VuQ\s$o(t"H\.QQU8=]eX0V`4&\>Ea]=Ynk_8aL4cHaSXaN2U'aSs0`_6er/H]=?hSc>GaSHG=O +Lc=Ju\,Us~> +VuQ\s$o(t"H\.QQU8=]eX0V`4&\>Ea]=Ynk_8aL4cHaSXaN2U'aSs0`_6er/H]=?hSc>GaSHG=O +Lc=Ju\,Us~> +VuQ\s$4J.74CO,:V5:5urjD[4s1A6G!65#\&^8>;bfJ#L`l#X4_7Q@[D1[fIQMR0PRKAdp*Vfa= +$l^H*o)cE$J,~> +VuQ\s$4J.74CO,:V5:5urjD[4s1A6G!65#\&^8>;bfJ#L`l#X4_7Q@[D1[fIQMR0PRKAdp*Vfa= +$l^H*o)cE$J,~> +VuQ\s$4J.74CO,:V5:5urjD[4s1A6G!65#\&^8>;bfJ#L`l#X4_7Q@[D1[fIQMR0PRKAdp*Vfa= +$l^H*o)cE$J,~> +VuQYr'FZ`_7T=u4X/iP6ZF.*O]">D_]>=Eb#gC<4bfJ#LaN"4q#eQaP@<.0eQC@cCs.]Oa"e(gA +Lc5b +VuQYr'FZ`_7T=u4X/iP6ZF.*O]">D_]>=Eb#gC<4bfJ#LaN"4q#eQaP@<.0eQC@cCs.]Oa"e(gA +Lc5b +VuQYr'FZ`_7T=u4X/iP6ZF.*O]">D_]>=Eb#gC<4bfJ#LaN"4q#eQaP@<.0eQC@cCs.]Oa"e(gA +Lc5b +VuQVq)BD+=:.]/hVR!V<[^roU]">er_oBU3`luHHrQ"uYrkSrRTP[A5JrPqZR[X)D"d4\%Na!1l +!X9 +VuQVq)BD+=:.]/hVR!V<[^roU]">er_oBU3`luHHrQ"uYrkSrRTP[A5JrPqZR[X)D"d4\%Na!1l +!X9 +VuQVq)BD+=:.]/hVR!V<[^roU]">er_oBU3`luHHrQ"uYrkSrRTP[A5JrPqZR[X)D"d4\%Na!1l +!X9 +VuQVq%1G!e;GL,%QEIO$[^s'L])omm_u@gT`rEj_]<%Q?9NuOhNg?!"rLNt_s.'C\Lk:G37M?4+ +!W`s&rd4lkA0_fs#5J>1s*t~> +VuQVq%1G!e;GL,%QEIO$[^s'L])omm_u@gT`rEj_]<%Q?9NuOhNg?!"rLNt_s.'C\Lk:G37M?4+ +!W`s&rd4lkA0_fs#5J>1s*t~> +VuQVq%1G!e;GL,%QEIO$[^s'L])omm_u@gT`rEj_]<%Q?9NuOhNg?!"rLNt_s.'C\Lk:G37M?4+ +!W`s&rd4lkA0_fs#5J>1s*t~> +VuQVq%La:E<*NF%>Df;\[C3]\rPJ`__og."`X]hl[$?)J7TXJULldpgRf/ccU7Ia?NeN1IOdqq( +'DV\;'.d[AI"Qf^>Y5qDq#\,,J,~> +VuQVq%La:E<*NF%>Df;\[C3]\rPJ`__og."`X]hl[$?)J7TXJULldpgRf/ccU7Ia?NeN1IOdqq( +'DV\;'.d[AI"Qf^>Y5qDq#\,,J,~> +VuQVq%La:E<*NF%>Df;\[C3]\rPJ`__og."`X]hl[$?)J7TXJULldpgRf/ccU7Ia?NeN1IOdqq( +'DV\;'.d[AI"Qf^>Y5qDq#\,,J,~> +VuQVq%La:EJo+ao;G:b]S#`p.rk\WP!64uR%D0!\eJ/KoV>pQ2mKSRgbUENKfs9[_9,_ +N$Ji.!Wj#\9)a5;K*$F*)u0QGs*t~> +VuQVq%La:EJo+ao;G:b]S#`p.rk\WP!64uR%D0!\eJ/KoV>pQ2mKSRgbUENKfs9[_9,_ +N$Ji.!Wj#\9)a5;K*$F*)u0QGs*t~> +VuQVq%La:EJo+ao;G:b]S#`p.rk\WP!64uR%D0!\eJ/KoV>pQ2mKSRgbUENKfs9[_9,_ +N$Ji.!Wj#\9)a5;K*$F*)u0QGs*t~> +VuQYrrrsbX:o'q)@: +A/"b?!Xp>bre(5u!eYSOp]A&,J,~> +VuQYrrrsbX:o'q)@: +A/"b?!Xp>bre(5u!eYSOp]A&,J,~> +VuQYrrrsbX:o'q)@: +A/"b?!Xp>bre(5u!eYSOp]A&,J,~> +VuQYr&dACNI'gS`BOkmq@96]BAo2O%ral@BAnGb"FaO(@#`+S(QBIQ"RZdZ9#`a^pL6o'V]u9f] +!Mh:A!XfE)I!gR!I"Qf=)[uQE])R9~> +VuQYr&dACNI'gS`BOkmq@96]BAo2O%ral@BAnGb"FaO(@#`+S(QBIQ"RZdZ9#`a^pL6o'V]u9f] +!Mh:A!XfE)I!gR!I"Qf=)[uQE])R9~> +VuQYr&dACNI'gS`BOkmq@96]BAo2O%ral@BAnGb"FaO(@#`+S(QBIQ"RZdZ9#`a^pL6o'V]u9f] +!Mh:A!XfE)I!gR!I"Qf=)[uQE])R9~> +VuQVq!X9pOrk/l>BkqU/H[C!dMNs0YNK&gQrJgi=!1*MF!1NkL%??6uKn>>\]u7k5bf%I!]`Q-Z +4SSsd$m]V@K7&<(HurU=#5SD5s*t~> +VuQVq!X9pOrk/l>BkqU/H[C!dMNs0YNK&gQrJgi=!1*MF!1NkL%??6uKn>>\]u7k5bf%I!]`Q-Z +4SSsd$m]V@K7&<(HurU=#5SD5s*t~> +VuQVq!X9pOrk/l>BkqU/H[C!dMNs0YNK&gQrJgi=!1*MF!1NkL%??6uKn>>\]u7k5bf%I!]`Q-Z +4SSsd$m]V@K7&<(HurU=#5SD5s*t~> +VuQYr!X9&irk/`I]oQiBDJjK8Js*4BriZ9u!hbjJrg!\MQBm]"rfRPQP)t][Kme]BrOr-Q!6"iL +!)WFl$Odt:FG"sgK7&&g2#.3bs*t~> +VuQYr!X9&irk/`I]oQiBDJjK8Js*4BriZ9u!hbjJrg!\MQBm]"rfRPQP)t][Kme]BrOr-Q!6"iL +!)WFl$Odt:FG"sgK7&&g2#.3bs*t~> +VuQYr!X9&irk/`I]oQiBDJjK8Js*4BriZ9u!hbjJrg!\MQBm]"rfRPQP)t][Kme]BrOr-Q!6"iL +!)WFl$Odt:FG"sgK7&&g2#.3bs*t~> +VuQYr!t6,2[/R`G[(VB2B5;:#G`&!iX9Gc(U7Ij@r0mSIrJh&;KnXr8V#A",`;Rp[`;[FOF:8TS +!riH3'4cKCK7%cG:a?8@!keP`~> +VuQYr!t6,2[/R`G[(VB2B5;:#G`&!iX9Gc(U7Ij@r0mSIrJh&;KnXr8V#A",`;Rp[`;[FOF:8TS +!riH3'4cKCK7%cG:a?8@!keP`~> +VuQYr!t6,2[/R`G[(VB2B5;:#G`&!iX9Gc(U7Ij@r0mSIrJh&;KnXr8V#A",`;Rp[`;[FOF:8TS +!riH3'4cKCK7%cG:a?8@!keP`~> +VuQYr!t6G;XSfaF[Ynp6CM.[:NM*#BVPTcQR[TP2r0%#7#(hY_Jr>YkrOiKD]tMA&bgaSLrk/B/ +)[?'=#n0XXI"Qf^8gFi>!knVa~> +VuQYr!t6G;XSfaF[Ynp6CM.[:NM*#BVPTcQR[TP2r0%#7#(hY_Jr>YkrOiKD]tMA&bgaSLrk/B/ +)[?'=#n0XXI"Qf^8gFi>!knVa~> +VuQYr!t6G;XSfaF[Ynp6CM.[:NM*#BVPTcQR[TP2r0%#7#(hY_Jr>YkrOiKD]tMA&bgaSLrk/B/ +)[?'=#n0XXI"Qf^8gFi>!knVa~> +W;l_r!sU#-XT#mG[(X/]Mf*0@CN>#_QBmu*R[09;OoUOAL^/N[I=d'*Mkp?cs0hm>!6"ld!o2;T +rk/AK$jQM/#R3+jA8>^\1_]Qa^&NT~> +W;l_r!sU#-XT#mG[(X/]Mf*0@CN>#_QBmu*R[09;OoUOAL^/N[I=d'*Mkp?cs0hm>!6"ld!o2;T +rk/AK$jQM/#R3+jA8>^\1_]Qa^&NT~> +W;l_r!sU#-XT#mG[(X/]Mf*0@CN>#_QBmu*R[09;OoUOAL^/N[I=d'*Mkp?cs0hm>!6"ld!o2;T +rk/AK$jQM/#R3+jA8>^\1_]Qa^&NT~> +W;l_r!t6G;V#@t8[(X/]O_A9=CNXuXM#EA6P5gRBL^J`^I`6?`\jQu7*m+g+/ +X +W;l_r!t6G;V#@t8[(X/]O_A9=CNXuXM#EA6P5gRBL^J`^I`6?`\jQu7*m+g+/ +X +W;l_r!t6G;V#@t8[(X/]O_A9=CNXuXM#EA6P5gRBL^J`^I`6?`\jQu7*m+g+/ +X +W;l_r!sT]$XS][<[(X/=D.-sfDKgO+JcggWI$%( +W;l_r!sT]$XS][<[(X/=D.-sfDKgO+JcggWI$%( +W;l_r!sT]$XS][<[(X/=D.-sfDKgO+JcggWI$%( +WW2er!sT]$V#%b2[_9ANF^\fkB5@9_!G?3IB*3@+NhlTd!4;a="iSXGm.BrLr +WW2er!sT]$V#%b2[_9ANF^\fkB5@9_!G?3IB*3@+NhlTd!4;a="iSXGm.BrLr +WW2er!sT]$V#%b2[_9ANF^\fkB5@9_!G?3IB*3@+NhlTd!4;a="iSXGm.BrLr +WrMhq"qrhh]u8.5rOiKF]tLe=EFE9dp1FPEEdEP3[f*l>[/R`B`6?`lm.C)O"SCKn>R'>[P +s*t~> +WrMhq"qrhh]u8.5rOiKF]tLe=EFE9dp1FPEEdEP3[f*l>[/R`B`6?`lm.C)O"SCKn>R'>[P +s*t~> +WrMhq"qrhh]u8.5rOiKF]tLe=EFE9dp1FPEEdEP3[f*l>[/R`B`6?`lm.C)O"SCKn>R'>[P +s*t~> +WrMkr!t5ho[/SPUbf'In!4;a="1F,1B_l6DB689BIZ^H(]aD3]]sPJkbgb_?o_/4do]3(m#3Q'f +$ig@Es*t~> +WrMkr!t5ho[/SPUbf'In!4;a="1F,1B_l6DB689BIZ^H(]aD3]]sPJkbgb_?o_/4do]3(m#3Q'f +$ig@Es*t~> +WrMkr!t5ho[/SPUbf'In!4;a="1F,1B_l6DB689BIZ^H(]aD3]]sPJkbgb_?o_/4do]3(m#3Q'f +$ig@Es*t~> +X8hqr#n.J>`8o_/bfn$#]a_EGO+DY+I=$ +X8hqr#n.J>`8o_/bfn$#]a_EGO+DY+I=$ +X8hqr#n.J>`8o_/bfn$#]a_EGO+DY+I=$ +X8hqr#mMs!m-NfoeBGl(^&PJ;XT5a*]`PXU[/IZA`6?`ljRi!@!PKH6!W`]2_>f#~> +X8hqr#mMs!m-NfoeBGl(^&PJ;XT5a*]`PXU[/IZA`6?`ljRi!@!PKH6!W`]2_>f#~> +X8hqr#mMs!m-NfoeBGl(^&PJ;XT5a*]`PXU[/IZA`6?`ljRi!@!PKH6!W`]2_>f#~> +XT/"r#n3'so^qM2gs!_5]`?"D]`?"G^&Q"Tbgb/'jRi*7r<)Ck$k2;#rt>A6_Z,,~> +XT/"r#n3'so^qM2gs!_5]`?"D]`?"G^&Q"Tbgb/'jRi*7r<)Ck$k2;#rt>A6_Z,,~> +XT/"r#n3'so^qM2gs!_5]`?"D]`?"G^&Q"Tbgb/'jRi*7r<)Ck$k2;#rt>A6_Z,,~> +XoJ(r#tj"OrUfI;jOD-;]`?"J]`>M?^&Q"Ubgb.tjQu7*n,3C&,Ra_YklLnp'+DbXJ,~> +XoJ(r#tj"OrUfI;jOD-;]`?"J]`>M?^&Q"Ubgb.tjQu7*n,3C&,Ra_YklLnp'+DbXJ,~> +XoJ(r#tj"OrUfI;jOD-;]`?"J]`>M?^&Q"Ubgb.tjQu7*n,3C&,Ra_YklLnp'+DbXJ,~> +XoAG,!XAK&!Y_[-rr)lh"74ge`;R@L`9b2;`!=N9eE#]Wm.B`E!q^7AjoYPr!!:( +XoAG,!XAK&!Y_[-rr)lh"74ge`;R@L`9b2;`!=N9eE#]Wm.B`E!q^7AjoYPr!!:( +XoAG,!XAK&!Y_[-rr)lh"74ge`;R@L`9b2;`!=N9eE#]Wm.B`E!q^7AjoYPr!!:( +Y5\V/'+>NYquQs)CZP-drVuKkm+fhK]a2R#eC +Y5\V/'+>NYquQs)CZP-drVuKkm+fhK]a2R#eC +Y5\V/'+>NYquQs)CZP-drVuKkm+fhK]a2R#eC +YQ+V2";;^f'*eC:!^+]nr;?fkrUf1+`;.(H`:LYLbgb.tjQ,\"rVcBTr;uV=)s.2'"q1ROs*t~> +YQ+V2";;^f'*eC:!^+]nr;?fkrUf1+`;.(H`:LYLbgb.tjQ,\"rVcBTr;uV=)s.2'"q1ROs*t~> +YQ+V2";;^f'*eC:!^+]nr;?fkrUf1+`;.(H`:LYLbgb.tjQ,\"rVcBTr;uV=)s.2'"q1ROs*t~> +Yl=b+$krUZ!=T23!X'1,m.BrHr;uWPeEjmK`;e +Yl=b+$krUZ!=T23!X'1,m.BrHr;uWPeEjmK`;e +Yl=b+$krUZ!=T23!X'1,m.BrHr;uWPeEjmK`;e +Yl>.6"qqpp'+>9N!X;KVm.gM]o^(AOm_&kDbgbG/m.Br5rVuKlrJVBoj9!=#J,~> +Yl>.6"qqpp'+>9N!X;KVm.gM]o^(AOm_&kDbgbG/m.Br5rVuKlrJVBoj9!=#J,~> +Yl>.6"qqpp'+>9N!X;KVm.gM]o^(AOm_&kDbgbG/m.Br5rVuKlrJVBoj9!=#J,~> +Z2ab(rXA`,""^P?o_8:do]4N?n@]1QeD0-Gm.C8KrUf7N!o,=8ir[7#J,~> +Z2ab(rXA`,""^P?o_8:do]4N?n@]1QeD0-Gm.C8KrUf7N!o,=8ir[7#J,~> +Z2ab(rXA`,""^P?o_8:do]4N?n@]1QeD0-Gm.C8KrUf7N!o,=8ir[7#J,~> +ZN'e'#7LYB!Wj$Wm.L;Zo^(AWo">=Ibgb_7m.C8Kir&uOF9Vs1!lk7j~> +ZN'e'#7LYB!Wj$Wm.L;Zo^(AWo">=Ibgb_7m.C8Kir&uOF9Vs1!lk7j~> +ZN'e'#7LYB!Wj$Wm.L;Zo^(AWo">=Ibgb_7m.C8Kir&uOF9Vs1!lk7j~> +ZiB_#!sUm+o^r(ao]4fOoXtIIeD0-Oo^q#=!Q5Z2!lt=k~> +ZiB_#!sUm+o^r(ao]4fOoXtIIeD0-Oo^q#=!Q5Z2!lt=k~> +ZiB_#!sUm+o^r(ao]4fOoXtIIeD0-Oo^q#=!Q5Z2!lt=k~> +ZiB_#!ZQdaoDS^]#41F#bfn#Dqn3-NbhV"7rq-6h!;,4J!q]:niW@4$J,~> +ZiB_#!ZQdaoDS^]#41F#bfn#Dqn3-NbhV"7rq-6h!;,4J!q]:niW@4$J,~> +ZiB_#!ZQdaoDS^]#41F#bfn#Dqn3-NbhV"7rq-6h!;,4J!q]:niW@4$J,~> +[/]e#!_Uu7nbrL["75+(eGRPjeGn;*m.Br'r;j86iW@4$J,~> +[/]e#!_Uu7nbrL["75+(eGRPjeGn;*m.Br'r;j86iW@4$J,~> +[/]e#!_Uu7nbrL["75+(eGRPjeGn;*m.Br'r;j86iW@4$J,~> +[K#n$!\C/>mJR+Ym,\0$ro=4Ko^r+Sf_kj;/E$ZPs*t~> +[K#n$!\C/>mJR+Ym,\0$ro=4Ko^r+Sf_kj;/E$ZPs*t~> +[K#n$!\C/>mJR+Ym,\0$ro=4Ko^r+Sf_kj;/E$ZPs*t~> +[f>t$!F4^Or;lQWro=(Grq$6io[Wm?CZ#9:s*t~> +[f>t$!F4^Or;lQWro=(Grq$6io[Wm?CZ#9:s*t~> +[f>t$!F4^Or;lQWro=(Grq$6io[Wm?CZ#9:s*t~> +\,Z(%!?8`:rVuKim/HY)r;rJt%,h92s*t~> +\,Z(%!?8`:rVuKim/HY)r;rJt%,h92s*t~> +\,Z(%!?8`:rVuKim/HY)r;rJt%,h92s*t~> +\,Z(%!G(Q]rVcB7r;t1V%,_32s*t~> +\,Z(%!G(Q]rVcB7r;t1V%,_32s*t~> +\,Z(%!G(Q]rVcB7r;t1V%,_32s*t~> +\Gu1&![PJOkPYDQci!q;lnmQ#c2W:~> +\Gu1&![PJOkPYDQci!q;lnmQ#c2W:~> +\Gu1&![PJOkPYDQci!q;lnmQ#c2W:~> +\c;:'":T),o^qJJs7??joZd=9CBb"$!mUaq~> +\c;:'":T),o^qJJs7??joZd=9CBb"$!mUaq~> +\c;:'":T),o^qJJs7??joZd=9CBb"$!mUaq~> +])V@'"XLeBm/?Rcr<;iloV;NshZD+'J,~> +])V@'"XLeBm/?Rcr<;iloV;NshZD+'J,~> +])V@'"XLeBm/?Rcr<;iloV;NshZD+'J,~> +]DqF'"]a(=m/?SBr;cK8r<;iloZR^Jh?)%'J,~> +]DqF'"]a(=m/?SBr;cK8r<;iloZR^Jh?)%'J,~> +]DqF'"]a(=m/?SBr;cK8r<;iloZR^Jh?)%'J,~> +]DqL)"pQ?CeE$8okktMRdJX=BrUfaC/-67:!mpst~> +]DqL)"pQ?CeE$8okktMRdJX=BrUfaC/-67:!mpst~> +]DqL)"pQ?CeE$8okktMRdJX=BrUfaC/-67:!mpst~> +]`7U*#R1r1[++1'o^qAG!;+e>qt'pUAD715s*t~> +]`7U*#R1r1[++1'o^qAG!;+e>qt'pUAD715s*t~> +]`7U*#R1r1[++1'o^qAG!;+e>qt'pUAD715s*t~> +^&R[*#7Mkg^!u-8o]Z5To_nF6rVuKlrUfaKrq$8^$jPJgdf4g~> +^&R[*#7Mkg^!u-8o]Z5To_nF6rVuKlrUfaKrq$8^$jPJgdf4g~> +^&R[*#7Mkg^!u-8o]Z5To_nF6rVuKlrUfaKrq$8^$jPJgdf4g~> +^Ama*#RhZ)[*7=lo^qDHrq+nBs7H?X!qbjOrTjX"$j$Xg!n71"~> +^Ama*#RhZ)[*7=lo^qDHrq+nBs7H?X!qbjOrTjX"$j$Xg!n71"~> +^Ama*#RhZ)[*7=lo^qDHrq+nBs7H?X!qbjOrTjX"$j$Xg!n71"~> +^]3g*#n.c3[)Cbdo_nFKrVH0Ir;cKhr;lQhrUg-Vs5X4IjSeEIga!:AgB,n)J,~> +^]3g*#n.c3[)Cbdo_nFKrVH0Ir;cKhr;lQhrUg-Vs5X4IjSeEIga!:AgB,n)J,~> +^]3g*#n.c3[)Cbdo_nFKrVH0Ir;cKhr;lQhrUg-Vs5X4IjSeEIga!:AgB,n)J,~> +_#Nm*$4Jb]UqP"5m.C8Ko)/merUfa\o^qM2m/?S +_#Nm*$4Jb]UqP"5m.C8Ko)/merUfa\o^qM2m/?S +_#Nm*$4Jb]UqP"5m.C8Ko)/merUfa\o^qM2m/?S +_#Nm*$k,t&UpS(im.BrKo^qkU!VH?io_e(Tj8eQDo`+jqo_na\rVcBeo_n^jo_nF\qXjaQroF+7 +s3qD2eD/j?jQokT$jPGfec1.~> +_#Nm*$k,t&UpS(im.BrKo^qkU!VH?io_e(Tj8eQDo`+jqo_na\rVcBeo_n^jo_nF\qXjaQroF+7 +s3qD2eD/j?jQokT$jPGfec1.~> +_#Nm*$k,t&UpS(im.BrKo^qkU!VH?io_e(Tj8eQDo`+jqo_na\rVcBeo_n^jo_nF\qXjaQroF+7 +s3qD2eD/j?jQokT$jPGfec1.~> +_>j!+$3goSS=H[o`73l7rU^-ho_n^jo_nF\rq$3Wq;hS2s5X1HrU^Boo^r+So_nF\r:KsS!T`VE +jSdm4eGRMqeD0-ON#NE7g&fk*J,~> +_>j!+$3goSS=H[o`73l7rU^-ho_n^jo_nF\rq$3Wq;hS2s5X1HrU^Boo^r+So_nF\r:KsS!T`VE +jSdm4eGRMqeD0-ON#NE7g&fk*J,~> +_>j!+$3goSS=H[o`73l7rU^-ho_n^jo_nF\rq$3Wq;hS2s5X1HrU^Boo^r+So_nF\r:KsS!T`VE +jSdm4eGRMqeD0-ON#NE7g&fk*J,~> +_Z0'+$4IT#S>;s^]u8FUr9X@R!r_cirq$9YjQ-9ps5Y'QjP8POjQuO;o_nF\o^r+SrUg'eo^qM2 +jSms5eGRMj`;RpW`!=N9h!ENQ'+EOqfDg@~> +_Z0'+$4IT#S>;s^]u8FUr9X@R!r_cirq$9YjQ-9ps5Y'QjP8POjQuO;o_nF\o^r+SrUg'eo^qM2 +jSms5eGRMj`;RpW`!=N9h!ENQ'+EOqfDg@~> +_Z0'+$4IT#S>;s^]u8FUr9X@R!r_cirq$9YjQ-9ps5Y'QjP8POjQuO;o_nF\o^r+SrUg'eo^qM2 +jSms5eGRMj`;RpW`!=N9h!ENQ'+EOqfDg@~> +_Z0*,$kj$gPan8>XL,[ZbgcXQs6TdX#Q=;no_na\rVlEim,\-#s5a.Fs7H +_Z0*,$kj$gPan8>XL,[ZbgcXQs6TdX#Q=;no_na\rVlEim,\-#s5a.Fs7H +_Z0*,$kj$gPan8>XL,[ZbgcXQs6TdX#Q=;no_na\rVlEim,\-#s5a.Fs7H +_uK0,rt>DaPl@0^Uo^r:`73;lguRhgrUg*f!;-9h"SDZko]6#,s5a.No)/pfrUfICjP8P?bfp%( +s1JENrk/BO]tO9\#0bTXoXudaf`Kh+J,~> +_uK0,rt>DaPl@0^Uo^r:`73;lguRhgrUg*f!;-9h"SDZko]6#,s5a.No)/pfrUfICjP8P?bfp%( +s1JENrk/BO]tO9\#0bTXoXudaf`Kh+J,~> +_uK0,rt>DaPl@0^Uo^r:`73;lguRhgrUg*f!;-9h"SDZko]6#,s5a.No)/pfrUfICjP8P?bfp%( +s1JENrk/BO]tO9\#0bTXoXudaf`Kh+J,~> +_uK0,ru2S5S=HCFXL,[ZbgbG'jQ,t*rUfj_#P@BDgt_8go^)MXo^(rDj9+2ebfoh"q7R!NbhVRW +Zm>GK!uid1'BB5Js*t~> +_uK0,ru2S5S=HCFXL,[ZbgbG'jQ,t*rUfj_#P@BDgt_8go^)MXo^(rDj9+2ebfoh"q7R!NbhVRW +Zm>GK!uid1'BB5Js*t~> +_uK0,ru2S5S=HCFXL,[ZbgbG'jQ,t*rUfj_#P@BDgt_8go^)MXo^(rDj9+2ebfoh"q7R!NbhVRW +Zm>GK!uid1'BB5Js*t~> +`;f9-'+?-*1n:A3XK9+ReC<:7m-O]Co^r(bm,[6om-"?IoE=OAjP8PieGmbk_uRLF`!+BGo_k!f +qZ6s14A\j2,Rif:g&HR~> +`;f9-'+?-*1n:A3XK9+ReC<:7m-O]Co^r(bm,[6om-"?IoE=OAjP8PieGmbk_uRLF`!+BGo_k!f +qZ6s14A\j2,Rif:g&HR~> +`;f9-'+?-*1n:A3XK9+ReC<:7m-O]Co^r(bm,[6om-"?IoE=OAjP8PieGmbk_uRLF`!+BGo_k!f +qZ6s14A\j2,Rif:g&HR~> +`;f9-%gEsd8t;]Y]tMY>jQ,\"o^Me^m,[7"o]c;ao_na\rUfaKm,[6_gsjjQbl5QX^&Q"TbhV:X +oOJC-!XB,r +`;f9-%gEsd8t;]Y]tMY>jQ,\"o^Me^m,[7"o]c;ao_na\rUfaKm,[6_gsjjQbl5QX^&Q"TbhV:X +oOJC-!XB,r +`;f9-%gEsd8t;]Y]tMY>jQ,\"o^Me^m,[7"o]c;ao_na\rUfaKm,[6_gsjjQbl5QX^&Q"TbhV:X +oOJC-!XB,r +`W,?-%20ZoA>H +`W,?-%20ZoA>H +`W,?-%20ZoA>H +`W,?-%4i/DPdJ-JeD0EWrVcBar;cKhr<)]jrUg*f"75+8o_SLdo`"dho`"dho^D_Yo`"ggoG$ZQ +gt^E'bf%H5`4`k&bhV:OrOj0H!XJu3'/W*6,SLUN!o*a*~> +`W,?-%4i/DPdJ-JeD0EWrVcBar;cKhr<)]jrUg*f"75+8o_SLdo`"dho`"dho^D_Yo`"ggoG$ZQ +gt^E'bf%H5`4`k&bhV:OrOj0H!XJu3'/W*6,SLUN!o*a*~> +`W,?-%4i/DPdJ-JeD0EWrVcBar;cKhr<)]jrUg*f"75+8o_SLdo`"dho`"dho^D_Yo`"ggoG$ZQ +gt^E'bf%H5`4`k&bhV:OrOj0H!XJu3'/W*6,SLUN!o*a*~> +`rGH.$k+BpCTP4neE#ugrUfITrp0g\rUg'eo`"dho_A@bo_&._o_ACbo`+7\jP887bl,Hc]u8.M +m.Bq/#5A6($nP"=/0kno!o*a*~> +`rGH.$k+BpCTP4neE#ugrUfITrp0g\rUg'eo`"dho_A@bo_&._o_ACbo`+7\jP887bl,Hc]u8.M +m.Bq/#5A6($nP"=/0kno!o*a*~> +`rGH.$k+BpCTP4neE#ugrUfITrp0g\rUg'eo`"dho_A@bo_&._o_ACbo`+7\jP887bl,Hc]u8.M +m.Bq/#5A6($nP"=/0kno!o*a*~> +`rG`6!X9&AquZm;#X"orbhV:Go^r(["8)Qjo^i%[o^2S`o_na\rVcBerUf^[s7?lhjP887bf%H5 +`5Km\o_n,EpAtO-)am:T)[u$6g])d~> +`rG`6!X9&AquZm;#X"orbhV:Go^r(["8)Qjo^i%[o^2S`o_na\rVcBerUf^[s7?lhjP887bf%H5 +`5Km\o_n,EpAtO-)am:T)[u$6g])d~> +`rG`6!X9&AquZm;#X"orbhV:Go^r(["8)Qjo^i%[o^2S`o_na\rVcBerUf^[s7?lhjP887bf%H5 +`5Km\o_n,EpAtO-)am:T)[u$6g])d~> +`rGc7!t6,")uKd;)[:].bgb_Go_n^go_&._o`"dpo_na\rUfa\o^r(^o^;Y[o_na\q>L?c"mk=* +eBH/9`!4H8m.C7`%/'`+$p7?S,Riu?h#Dm~> +`rGc7!t6,")uKd;)[:].bgb_Go_n^go_&._o`"dpo_na\rUfa\o^r(^o^;Y[o_na\q>L?c"mk=* +eBH/9`!4H8m.C7`%/'`+$p7?S,Riu?h#Dm~> +`rGc7!t6,")uKd;)[:].bgb_Go_n^go_&._o`"dpo_na\rUfa\o^r(^o^;Y[o_na\q>L?c"mk=* +eBH/9`!4H8m.C7`%/'`+$p7?S,Riu?h#Dm~> +`rGf8"; +`rGf8"; +`rGf8"; +a8bo9"<0`s,SU(W#TG%beE#]_rUfsb!;-0e!;-'b!qcH`qu$WhrVcB]r`!~> +a8bo9"<0`s,SU(W#TG%beE#]_rUfsb!;-0e!;-'b!qcH`qu$WhrVcB]r`!~> +a8bo9"<0`s,SU(W#TG%beE#]_rUfsb!;-0e!;-'b!qcH`qu$WhrVcB]r`!~> +a8br:!sUkf/G]DP)cb,;m.BrLr;cKdr;cK +a8br:!sUkf/G]DP)cb,;m.BrLr;cKdr;cK +a8br:!sUkf/G]DP)cb,;m.BrLr;cKdr;cK +a8br:"!g]"%/L#.)l2Qeo_SLdo_&._o_A@bo\fZOo_na\rUfXYs7?]cgsjQd`6@$'rQG]B!X&o_ +6lQ?s!oEs-~> +a8br:"!g]"%/L#.)l2Qeo_SLdo_&._o_A@bo\fZOo_na\rUfXYs7?]cgsjQd`6@$'rQG]B!X&o_ +6lQ?s!oEs-~> +a8br:"!g]"%/L#.)l2Qeo_SLdo_&._o_A@bo\fZOo_na\rUfXYs7?]cgsjQd`6@$'rQG]B!X&o_ +6lQ?s!oEs-~> +a8bu;!sUkm)u9U=##O[Yo_8:ao_&.bo_na\qu$Ner;@&rrVcBerUg'eo_na\mJR.ZrVcB\rbrs&E'!ujWj'C5eWs*t~> +a8bu;!sUkm)u9U=##O[Yo_8:ao_&.bo_na\qu$Ner;@&rrVcBerUg'eo_na\mJR.ZrVcB\rbrs&E'!ujWj'C5eWs*t~> +a8bu;!sUkm)u9U=##O[Yo_8:ao_&.bo_na\qu$Ner;@&rrVcBerUg'eo_na\mJR.ZrVcB\rbrs&E'!ujWj'C5eWs*t~> +aT)&;!u"L!%/L#+';YR)!;-*c"8)Qjo`"dho_JFco_JFco^_qbo_na\rVcBVr<)]jrUfpa$hWfH +eBGkTeF`^H#5SB$%/pnE$j$VY8h:D +aT)&;!u"L!%/L#+';YR)!;-*c"8)Qjo`"dho_JFco_JFco^_qbo_na\rVcBVr<)]jrUfpa$hWfH +eBGkTeF`^H#5SB$%/pnE$j$VY8h:D +aT)&;!u"L!%/L#+';YR)!;-*c"8)Qjo`"dho_JFco_JFco^_qbo_na\rVcBVr<)]jrUfpa$hWfH +eBGkTeF`^H#5SB$%/pnE$j$VY8h:D +aT)&;![LSnq#URnjSJfTo_/4`o_n^go_SLdo],lMo]uGUo_SLno^(A_bf%`\rU`q`!WicD'E/pT +'+>:+6mN3.!oO$.~> +aT)&;![LSnq#URnjSJfTo_/4`o_n^go_SLdo],lMo]uGUo_SLno^(A_bf%`\rU`q`!WicD'E/pT +'+>:+6mN3.!oO$.~> +aT)&;![LSnq#URnjSJfTo_/4`o_n^go_SLdo],lMo]uGUo_SLno^(A_bf%`\rU`q`!WicD'E/pT +'+>:+6mN3.!oO$.~> +aT)) +aT)) +aT)) +aoD2=!sU;Q,l.QD#'B5%r;cKer;cKZr;cKfr;cKbr<)]jrUf^[!;--d!;-*c!;-6g!qbj?rmV&* +rT#7&!Y,VP,V1c71b9RZ$m\h(%.42Ss*t~> +aoD2=!sU;Q,l.QD#'B5%r;cKer;cKZr;cKfr;cKbr<)]jrUf^[!;--d!;-*c!;-6g!qbj?rmV&* +rT#7&!Y,VP,V1c71b9RZ$m\h(%.42Ss*t~> +aoD2=!sU;Q,l.QD#'B5%r;cKer;cKZr;cKfr;cKbr<)]jrUf^[!;--d!;-*c!;-6g!qbj?rmV&* +rT#7&!Y,VP,V1c71b9RZ$m\h(%.42Ss*t~> +aoD2=!u"L!%/L#+)pJ6Y!;-3f"8)Qjo_&.bo_na\q>C%La!r +1d"/g1aF"K'0JYrm/l5GJ,~> +aoD2=!u"L!%/L#+)pJ6Y!;-3f"8)Qjo_&.bo_na\q>C%La!r +1d"/g1aF"K'0JYrm/l5GJ,~> +aoD2=!u"L!%/L#+)pJ6Y!;-3f"8)Qjo_&.bo_na\q>C%La!r +1d"/g1aF"K'0JYrm/l5GJ,~> +aoD5>!sUSm/G]DL%!;. +aoD5>!sUSm/G]DL%!;. +aoD5>!sUSm/G]DL%!;. +b5_;>!uk':'D_b3)pIs2r;cKfr;cKfr;cKbr<)]jrUg$d!;-*c!;,g[!;-9h!;-$a!TYg2!Y?"a +/3H'*8S!:a?85!oa00~> +b5_;>!uk':'D_b3)pIs2r;cKfr;cKfr;cKbr<)]jrUg$d!;-*c!;,g[!;-9h!;-$a!TYg2!Y?"a +/3H'*8S!:a?85!oa00~> +b5_;>!uk':'D_b3)pIs2r;cKfr;cKfr;cKbr<)]jrUg$d!;-*c!;,g[!;-9h!;-$a!TYg2!Y?"a +/3H'*8S!:a?85!oa00~> +b5_>?!sUSm/G]DL$u>M7r<)]jrUfm`!;,XV!;-!`!;,=M!;,dZ!;-'b#AXAL$kjmC4T7_T1b9RZ +"p,`?4;7,aiW"E~> +b5_>?!sUSm/G]DL$u>M7r<)]jrUfm`!;,XV!;-!`!;,=M!;,dZ!;-'b#AXAL$kjmC4T7_T1b9RZ +"p,`?4;7,aiW"E~> +b5_>?!sUSm/G]DL$u>M7r<)]jrUfm`!;,XV!;-!`!;,=M!;,dZ!;-'b#AXAL$kjmC4T7_T1b9RZ +"p,`?4;7,aiW"E~> +b5_>?!u"9p%/U)/$m`dio_A@eo_na\p&,3hrVcBerUg'eo^_q_o_na\q>C +b5_>?!u"9p%/U)/$m`dio_A@eo_na\p&,3hrVcBerUg'eo^_q_o_na\q>C +b5_>?!u"9p%/U)/$m`dio_A@eo_na\p&,3hrVcBerUg'eo^_q_o_na\q>C +bQ%D?![M"rq>p^3FS,#"#5%lmo_na\q>CBerUg'e#5%lmo_na\n,37YnbiI[kPYn?)[mAn,U>3' +/0l/J$k3+:!ukK-%.42Vs*t~> +bQ%D?![M"rq>p^3FS,#"#5%lmo_na\q>CBerUg'e#5%lmo_na\n,37YnbiI[kPYn?)[mAn,U>3' +/0l/J$k3+:!ukK-%.42Vs*t~> +bQ%D?![M"rq>p^3FS,#"#5%lmo_na\q>CBerUg'e#5%lmo_na\n,37YnbiI[kPYn?)[mAn,U>3' +/0l/J$k3+:!ukK-%.42Vs*t~> +bQ%G@!t7Ri#5\H'$ma'qr;cKhr;cKcr;cKYr<)]jo^qVN"8)Qjo^i"]o_n^go_A@ho_na\rVcBf +r!Wrj-A0gREir=N~> +bQ%G@!t7Ri#5\H'$ma'qr;cKhr;cKcr;cKYr<)]jo^qVN"8)Qjo^i"]o_n^go_A@ho_na\rVcBf +r!Wrj-A0gREir=N~> +bQ%G@!t7Ri#5\H'$ma'qr;cKhr;cKcr;cKYr<)]jo^qVN"8)Qjo^i"]o_n^go_A@ho_na\rVcBf +r!Wrj-A0gREir=N~> +bQ%G@!ZP,jqZ6j.'4gb0r<)]jrUf[Z#k\)oo_nFKm.BiH!;-*c!;,[W!;,m]!;,s_!,MNA!#,>? +!!`6#"!hYE#4DWQs*t~> +bQ%G@!ZP,jqZ6j.'4gb0r<)]jrUf[Z#k\)oo_nFKm.BiH!;-*c!;,[W!;,m]!;,s_!,MNA!#,>? +!!`6#"!hYE#4DWQs*t~> +bQ%G@!ZP,jqZ6j.'4gb0r<)]jrUf[Z#k\)oo_nFKm.BiH!;-*c!;,[W!;,m]!;,s_!,MNA!#,>? +!!`6#"!hYE#4DWQs*t~> +bl@PA!t7"d'Dhh4$lcSOr;cK]r;cK\r<)]QjRiBK!;-9h"8)Qjo^i"co_na\rVcBdr;cKdr;cKW +r.#5/*#$roCumK2GKJ,~> +bl@PA!t7"d'Dhh4$lcSOr;cK]r;cK\r<)]QjRiBK!;-9h"8)Qjo^i"co_na\rVcBdr;cKdr;cKW +r.#5/*#$roCumK2GKJ,~> +bl@PA!t7"d'Dhh4$lcSOr;cK]r;cK\r<)]QjRiBK!;-9h"8)Qjo^i"co_na\rVcBdr;cKdr;cKW +r.#5/*#$roCumK2GKJ,~> +bl@PA!ZP-%q>pg/7-+=Fo^r(^o_eXlo_na\rVcBcr +bl@PA!ZP-%q>pg/7-+=Fo^r(^o_eXlo_na\rVcBcr +bl@PA!ZP-%q>pg/7-+=Fo^r(^o_eXlo_na\rVcBcr +c2[VA!]4.$qZ6g''9r=k!;-3f!;,aY#P@uno]5*"o^i"]o]H)Po_A@bo`"dho_SLdo_JFdln%W- +![LbbmK2GKJ,~> +c2[VA!]4.$qZ6g''9r=k!;-3f!;,aY#P@uno]5*"o^i"]o]H)Po_A@bo`"dho_SLdo_JFdln%W- +![LbbmK2GKJ,~> +c2[VA!]4.$qZ6g''9r=k!;-3f!;,aY#P@uno]5*"o^i"]o]H)Po_A@bo`"dho_SLdo_JFdln%W- +![LbbmK2GKJ,~> +c2[YB!t7Rc#5\H''0Oe=r;cKcr;cK\rVuNij8nW>lhphUr;?Wfq>CEfrVcBer;cKhr;cKcr<)]j +rUfsb!;-6g!+bR#!ukJj%.42Xs*t~> +c2[YB!t7Rc#5\H''0Oe=r;cKcr;cK\rVuNij8nW>lhphUr;?Wfq>CEfrVcBer;cKhr;cKcr<)]j +rUfsb!;-6g!+bR#!ukJj%.42Xs*t~> +c2[YB!t7Rc#5\H''0Oe=r;cKcr;cK\rVuNij8nW>lhphUr;?Wfq>CEfrVcBer;cKhr;cKcr<)]j +rUfsb!;-6g!+bR#!ukJj%.42Xs*t~> +c2[YB![M#%qZ6j5)gq;Dr<)]jrUg*f!;-0e"75+(m/?k_o_\Reo_eXio_na\r;?WfrVZijrVcB] +r;cKXr;cKdr;`)O!Wrj21_]9YjSs`~> +c2[YB![M#%qZ6j5)gq;Dr<)]jrUg*f!;-0e"75+(m/?k_o_\Reo_eXio_na\r;?WfrVZijrVcB] +r;cKXr;cKdr;`)O!Wrj21_]9YjSs`~> +c2[YB![M#%qZ6j5)gq;Dr<)]jrUg*f!;-0e"75+(m/?k_o_\Reo_eXio_na\r;?WfrVZijrVcB] +r;cKXr;cKdr;`)O!Wrj21_]9YjSs`~> +cN!bC!sUka%/U)3)`5M3rUg'eo`"dho_\Reo^D_^o_n.;jRi?J"8)QjoY^V0o_nEqn,`^s:eDZ2 +mfMSMJ,~> +cN!bC!sUka%/U)3)`5M3rUg'eo`"dho_\Reo^D_^o_n.;jRi?J"8)QjoY^V0o_nEqn,`^s:eDZ2 +mfMSMJ,~> +cN!bC!sUka%/U)3)`5M3rUg'eo`"dho_\Reo^D_^o_n.;jRi?J"8)QjoY^V0o_nEqn,`^s:eDZ2 +mfMSMJ,~> +cN!hE"9no@:dk-]!Y\i*qu$Nequ$Nep&+m_r;?Wfrr!#mm,[7"o_&._o_JFco^r(^o_eXfo_A@e +o_na\o_ed^r;?ZO%.F>u:]VgGmfMSMJ,~> +cN!hE"9no@:dk-]!Y\i*qu$Nequ$Nep&+m_r;?Wfrr!#mm,[7"o_&._o_JFco^r(^o_eXfo_A@e +o_na\o_ed^r;?ZO%.F>u:]VgGmfMSMJ,~> +cN!hE"9no@:dk-]!Y\i*qu$Nequ$Nep&+m_r;?Wfrr!#mm,[7"o_&._o_JFco^r(^o_eXfo_A@e +o_na\o_ed^r;?ZO%.F>u:]VgGmfMSMJ,~> +ci +ci +ci +ci +ci +ci +d/X"F"9no9:dk-]":T\VrUg!c!;,j\!;-0e$M=;qo_na\jP8hgrV[&prVcBerUg'eo_\Reo_&._ +o_eXfo_A@bo^2SWo_n^hoLeTS!_Q9&m/lDLJ,~> +d/X"F"9no9:dk-]":T\VrUg!c!;,j\!;-0e$M=;qo_na\jP8hgrV[&prVcBerUg'eo_\Reo_&._ +o_eXfo_A@bo^2SWo_n^hoLeTS!_Q9&m/lDLJ,~> +d/X"F"9no9:dk-]":T\VrUg!c!;,j\!;-0e$M=;qo_na\jP8hgrV[&prVcBerUg'eo_\Reo_&._ +o_eXfo_A@bo^2SWo_n^hoLeTS!_Q9&m/lDLJ,~> +d/WqD!ZPAqq>p[2^&Is4o_na\p&+m_nGNR`m,Zs_o^qJJ!;,IQ"8)Qjo_A@bo_JFco`"dhFRTA3 +:]Lpk!p0H4~> +d/WqD!ZPAqq>p[2^&Is4o_na\p&+m_nGNR`m,Zs_o^qJJ!;,IQ"8)Qjo_A@bo_JFco`"dhFRTA3 +:]Lpk!p0H4~> +d/WqD!ZPAqq>p[2^&Is4o_na\p&+m_nGNR`m,Zs_o^qJJ!;,IQ"8)Qjo_A@bo_JFco`"dhFRTA3 +:]Lpk!p0H4~> +dJs"D!\@.PqZ6g<4QQ57"8)Qjo_\Reo_eXio_na\qu$]jm+gCWo^Vk[o_JFco_n^go`"dho_\Re +o`"dho^r(^o_eXio_na\r;?]hrIaS@s%i\(m/lDLJ,~> +dJs"D!\@.PqZ6g<4QQ57"8)Qjo_\Reo_eXio_na\qu$]jm+gCWo^Vk[o_JFco_n^go`"dho_\Re +o`"dho^r(^o_eXio_na\r;?]hrIaS@s%i\(m/lDLJ,~> +dJs"D!\@.PqZ6g<4QQ57"8)Qjo_\Reo_eXio_na\qu$]jm+gCWo^Vk[o_JFco_n^go`"dho_\Re +o`"dho^r(^o_eXio_na\r;?]hrIaS@s%i\(m/lDLJ,~> +dJs%E!XqIZq>p^;C\7H$!;-0e!;,UU%d`93jRi*CrUg'eo_na\nGN@ZqY^NgrVcBfr;cKar<)]j +rUfRW!VDoO!WktV%."&Xs*t~> +dJs%E!XqIZq>p^;C\7H$!;-0e!;,UU%d`93jRi*CrUg'eo_na\nGN@ZqY^NgrVcBfr;cKar<)]j +rUfRW!VDoO!WktV%."&Xs*t~> +dJs%E!XqIZq>p^;C\7H$!;-0e!;,UU%d`93jRi*CrUg'eo_na\nGN@ZqY^NgrVcBfr;cKar<)]j +rUfRW!VDoO!WktV%."&Xs*t~> +df9+E!ZOr]q>p[:XSi"so_&._o_eXfo_A@bo`"dmo^(AgjRi0E"8)Qjo`"dhoZ@%4oVCsX!^o-Z +liQ>LJ,~> +df9+E!ZOr]q>p[:XSi"so_&._o_eXfo_A@bo`"dmo^(AgjRi0E"8)Qjo`"dhoZ@%4oVCsX!^o-Z +liQ>LJ,~> +df9+E!ZOr]q>p[:XSi"so_&._o_eXfo_A@bo`"dmo^(AgjRi0E"8)Qjo`"dhoZ@%4oVCsX!^o-Z +liQ>LJ,~> +df9.F!sUS^%/U)0'/[r3rUfpa!;-'b!;-3f!;-9h!;-0e#5%9;guRhomJR%Wq>CCEfrVcBar;cKfr;j80ncAk$8hB90k5Tr~> +df9.F!sUS^%/U)0'/[r3rUfpa!;-'b!;-3f!;-9h!;-0e#5%9;guRhomJR%Wq>CCEfrVcBar;cKfr;j80ncAk$8hB90k5Tr~> +df9.F!sUS^%/U)0'/[r3rUfpa!;-'b!;-3f!;-9h!;-0e#5%9;guRhomJR%Wq>CCEfrVcBar;cKfr;j80ncAk$8hB90k5Tr~> +e,T4F!sUSS#5\H'$q0IYr;cKVr;cKcr<;i[gt_8glMU_TnGN@Zr;?Wfqu$Neq>CEfrVcB`r;jh@ +ncAk+:b:o6k5Tr~> +e,T4F!sUSS#5\H'$q0IYr;cKVr;cKcr<;i[gt_8glMU_TnGN@Zr;?Wfqu$Neq>CEfrVcB`r;jh@ +ncAk+:b:o6k5Tr~> +e,T4F!sUSS#5\H'$q0IYr;cKVr;cKcr<;i[gt_8glMU_TnGN@Zr;?Wfqu$Neq>CEfrVcB`r;jh@ +ncAk+:b:o6k5Tr~> +eGo:F!t7"Y%/U),$u>P7"8)Qjo_JFco_8:ao_n^jm+gCWrq-6h#5%lmo_na\rqurkrVcBar;cKg +r +eGo:F!t7"Y%/U),$u>P7"8)Qjo_JFco_8:ao_n^jm+gCWrq-6h#5%lmo_na\rqurkrVcBar;cKg +r +eGo:F!t7"Y%/U),$u>P7"8)Qjo_JFco_8:ao_n^jm+gCWrq-6h#5%lmo_na\rqurkrVcBar;cKg +r +eGo:F!u!Lf#5\H&)l3H2!;,s_"8)Qjo_&._o_eXko^(AgjRi-D!;-0e!;,"D!;,s_!;-9h!Se@Z +!WjWD%-muWs*t~> +eGo:F!u!Lf#5\H&)l3H2!;,s_"8)Qjo_&._o_eXko^(AgjRi-D!;-0e!;,"D!;,s_!;-9h!Se@Z +!WjWD%-muWs*t~> +eGo:F!u!Lf#5\H&)l3H2!;,s_"8)Qjo_&._o_eXko^(AgjRi-D!;-0e!;,"D!;,s_!;-9h!Se@Z +!WjWD%-muWs*t~> +ec5@F!t7:s#5eN*$nTX$o]c;So_JFco`"dho`!VGjSnf=r;cKgr;cKar;cKgr;cK_r;cKfr<)]j +rUfj_!TXpb!WjoL%-doWs*t~> +ec5@F!t7:s#5eN*$nTX$o]c;So_JFco`"dho`!VGjSnf=r;cKgr;cKar;cKgr;cK_r;cKfr<)]j +rUfj_!TXpb!WjoL%-doWs*t~> +ec5@F!t7:s#5eN*$nTX$o]c;So_JFco`"dho`!VGjSnf=r;cKgr;cKar;cKgr;cK_r;cKfr<)]j +rUfj_!TXpb!WjoL%-doWs*t~> +ec5CG"9o8k>R^N3!Y[u_qu$WhrVcB]r;cKfr<)]jrUg$d!qcH`rnIP8o_n^jo_na\qY^Edq>C +ec5CG"9o8k>R^N3!Y[u_qu$WhrVcB]r;cKfr<)]jrUg$d!qcH`rnIP8o_n^jo_na\qY^Edq>C +ec5CG"9o8k>R^N3!Y[u_qu$WhrVcB]r;cKfr<)]jrUg$d!qcH`rnIP8o_n^jo_na\qY^Edq>C +f)PFF!u!M,%/^/.'3sVtr;cKbr<)]jrUfFS!;-9G"6Ah@o_\Reo_A@bo_A@bo_eXfo`"dho^;YX +o_A@eo_na\rVZc`,k;!;6p0]8kPp&~> +f)PFF!u!M,%/^/.'3sVtr;cKbr<)]jrUfFS!;-9G"6Ah@o_\Reo_A@bo_A@bo_eXfo`"dho^;YX +o_A@eo_na\rVZc`,k;!;6p0]8kPp&~> +f)PFF!u!M,%/^/.'3sVtr;cKbr<)]jrUfFS!;-9G"6Ah@o_\Reo_A@bo_A@bo_eXfo`"dho^;YX +o_A@eo_na\rVZc`,k;!;6p0]8kPp&~> +fDkLF!u!5$%/^/.'5Q\&r;cKer;cKfr;cK]r;cKhg]?L.p\b3drVcB;r;cK\r;l71o)]!u<@e@> +!pBT6~> +fDkLF!u!5$%/^/.'5Q\&r;cKer;cKfr;cK]r;cKhg]?L.p\b3drVcB;r;cK\r;l71o)]!u<@e@> +!pBT6~> +fDkLF!u!5$%/^/.'5Q\&r;cKer;cKfr;cK]r;cKhg]?L.p\b3drVcB;r;cK\r;l71o)]!u<@e@> +!pBT6~> +fDkLF!uj(=%/^/.'7Am=r;cKJr;cKhg]cd*o_na\nbiI[p\b*ao)/[_rVcB]r;cK_r;l79o)]"& +A0_BE!pBT6~> +fDkLF!uj(=%/^/.'7Am=r;cKJr;cKhg]cd*o_na\nbiI[p\b*ao)/[_rVcB]r;cK_r;l79o)]"& +A0_BE!pBT6~> +fDkLF!uj(=%/^/.'7Am=r;cKJr;cKhg]cd*o_na\nbiI[p\b*ao)/[_rVcB]r;cK_r;l79o)]"& +A0_BE!pBT6~> +f`(pUo`>471jfu7!Wj=*m/$Y\o_\Reo_eXfo_eXfo_SLdo_n^go`!VHjRhd:"8)Qjo_JFco_n^m +o_na\rVcBcr<)]jrUfa\"8)Qjo`"dioJH.@!ZPAXklU&JJ,~> +f`(pUo`>471jfu7!Wj=*m/$Y\o_\Reo_eXfo_eXfo_SLdo_n^go`!VHjRhd:"8)Qjo_JFco_n^m +o_na\rVcBcr<)]jrUfa\"8)Qjo`"dioJH.@!ZPAXklU&JJ,~> +f`(pUo`>471jfu7!Wj=*m/$Y\o_\Reo_eXfo_eXfo_SLdo_n^go`!VHjRhd:"8)Qjo_JFco_n^m +o_na\rVcBcr<)]jrUfa\"8)Qjo`"dioJH.@!ZPAXklU&JJ,~> +f`1UG":Q4pCD6UI"<3ltrUf[Z!;-3f!;-6g"8)Qjo`"dho`"dho`!VOjRi*CrUg'eo_SLgo_na\ +q#(3bq>C +f`1UG":Q4pCD6UI"<3ltrUf[Z!;-3f!;-6g"8)Qjo`"dho`"dho`!VOjRi*CrUg'eo_SLgo_na\ +q#(3bq>C +f`1UG":Q4pCD6UI"<3ltrUf[Z!;-3f!;-6g"8)Qjo`"dho`"dho`!VOjRi*CrUg'eo_SLgo_na\ +q#(3bq>C +g&L[G":QP,F;t,Z![Ol>rquihr;?`irVcBQr;uWim/Gc@jRi9H"8)Qjo_JFco_JFfo_na\o)/R\ +q#(3bnGNC[4S&UT8hB0-kPp&~> +g&L[G":QP,F;t,Z![Ol>rquihr;?`irVcBQr;uWim/Gc@jRi9H"8)Qjo_JFco_JFfo_na\o)/R\ +q#(3bnGNC[4S&UT8hB0-kPp&~> +g&L[G":QP,F;t,Z![Ol>rquihr;?`irVcBQr;uWim/Gc@jRi9H"8)Qjo_JFco_JFfo_na\o)/R\ +q#(3bnGNC[4S&UT8hB0-kPp&~> +g&L^H"Ul>$4DQMG!Wjp[o_\Reo_&._o^;Y^o\A6_m.Br?r;cKWr<)]jrUfm`!;--d!;,p^"SDZk +oK;aI!t8!>#3c3Ps*t~> +g&L^H"Ul>$4DQMG!Wjp[o_\Reo_&._o^;Y^o\A6_m.Br?r;cKWr<)]jrUfm`!;--d!;,p^"SDZk +oK;aI!t8!>#3c3Ps*t~> +g&L^H"Ul>$4DQMG!Wjp[o_\Reo_&._o^;Y^o\A6_m.Br?r;cKWr<)]jrUfm`!;--d!;,p^"SDZk +oK;aI!t8!>#3c3Ps*t~> +g&LaI"q2.j/3I]9quQpN^%Cmo!;-*c!;-6g!;-'b"mk%"jQuO(r;cKXr<)]jrUfLU"8)Qjo_nag +oDh;O!WjoL%-RcUs*t~> +g&LaI"q2.j/3I]9quQpN^%Cmo!;-*c!;-6g!;-'b"mk%"jQuO(r;cKXr<)]jrUfLU"8)Qjo_nag +oDh;O!WjoL%-RcUs*t~> +g&LaI"q2.j/3I]9quQpN^%Cmo!;-*c!;-6g!;-'b"mk%"jQuO(r;cKXr<)]jrUfLU"8)Qjo_nag +oDh;O!WjoL%-RcUs*t~> +g&LdJ#6khe/3H=BAGcK14N-mfr;cKhr;cKcr;cKgr;cKhr>,&(rUg'eo_naTgt^uWo_nF\rUg'e +o_n^go_SLdo_n^go`"dho_n^go^Vk^o_na\qu$WhrVcB^r;lOYoE#(^1^<.FkPp&~> +g&LdJ#6khe/3H=BAGcK14N-mfr;cKhr;cKcr;cKgr;cKhr>,&(rUg'eo_naTgt^uWo_nF\rUg'e +o_n^go_SLdo_n^go`"dho_n^go^Vk^o_na\qu$WhrVcB^r;lOYoE#(^1^<.FkPp&~> +g&LdJ#6khe/3H=BAGcK14N-mfr;cKhr;cKcr;cKgr;cKhr>,&(rUg'eo_naTgt^uWo_nF\rUg'e +o_n^go_SLdo_n^go`"dho_n^go^Vk^o_na\qu$WhrVcB^r;lOYoE#(^1^<.FkPp&~> +g&LdJ#7M7k1eLSlFSu7F'4fVbrVcB[r;cKWr +g&LdJ#7M7k1eLSlFSu7F'4fVbrVcB[r;cKWr +g&LdJ#7M7k1eLSlFSu7F'4fVbrVcB[r;cKWr +gAggI#7Mk78l]tc#6"Z+'4f>ZrVZ`grquihjS];Tm+gCWm.BlI!;,[W!;-'b!;--d"8)Qjo_JFc +o_n^go_n^hoL/?R!uji@%-RcUs*t~> +gAggI#7Mk78l]tc#6"Z+'4f>ZrVZ`grquihjS];Tm+gCWm.BlI!;,[W!;-'b!;--d"8)Qjo_JFc +o_n^go_n^hoL/?R!uji@%-RcUs*t~> +gAggI#7Mk78l]tc#6"Z+'4f>ZrVZ`grquihjS];Tm+gCWm.BlI!;,[W!;-'b!;--d"8)Qjo_JFc +o_n^go_n^hoL/?R!uji@%-RcUs*t~> +gAgdH"q2/%6tD5irW3-7ABaZD!;-3f"8)Qjo^_q]o^)S4#42!\o_na\nbiI[q>C +gAgdH"q2/%6tD5irW3-7ABaZD!;-3f"8)Qjo^_q]o^)S4#42!\o_na\nbiI[q>C +gAgdH"q2/%6tD5irW3-7ABaZD!;-3f"8)Qjo^_q]o^)S4#42!\o_na\nbiI[q>C +gAgaG"U5Vs8pho`!Ws*Hbk1Z.!;,m]$2"2po_na\rVcBer<;QCguRhor;?WfrVZ`gp&+m_n,37Y +jo#2OrVZcX4SAgX)akA%!pBT6~> +gAgaG"U5Vs8pho`!Ws*Hbk1Z.!;,m]$2"2po_na\rVcBer<;QCguRhor;?WfrVZ`gp&+m_n,37Y +jo#2OrVZcX4SAgX)akA%!pBT6~> +gAgaG"U5Vs8pho`!Ws*Hbk1Z.!;,m]$2"2po_na\rVcBer<;QCguRhor;?WfrVZ`gp&+m_n,37Y +jo#2OrVZcX4SAgX)akA%!pBT6~> +gAg^F":Q5#>Whue#nq+0o_na\rVcB`r;cKUr +gAg^F":Q5#>Whue#nq+0o_na\rVcB`r;cKUr +gAg^F":Q5#>Whue#nq+0o_na\rVcB`r;cKUr +gAg^FrsSrJ8lbil!ZPq)o_ed^r;?`irVcB]r;cKgr +gAg^FrsSrJ8lbil!ZPq)o_ed^r;?`irVcB]r;cKgr +gAg^FrsSrJ8lbil!ZPq)o_ed^r;?`irVcB]r;cKgr +gAgXD#Ri7a$j$JLCXi1Y"8)Qjo_&._o_eXfo_\Rlo_nFKgt_8giV`cKoDJ[]mem.Xq#(63%/9l. +$nO4S'*877%0$P!!pBT6~> +gAgXD#Ri7a$j$JLCXi1Y"8)Qjo_&._o_eXfo_\Rlo_nFKgt_8giV`cKoDJ[]mem.Xq#(63%/9l. +$nO4S'*877%0$P!!pBT6~> +gAgXD#Ri7a$j$JLCXi1Y"8)Qjo_&._o_eXfo_\Rlo_nFKgt_8giV`cKoDJ[]mem.Xq#(63%/9l. +$nO4S'*877%0$P!!pBT6~> +gAgXDrs\oi":P>NABaWC!;-!`!;-9h!;-*c$1-I&jQuO2rVcBXr;cK^r;cKCr;iu.q>psK1d!lO +,SL@q)uV#`)[m/F!p9N5~> +gAgXDrs\oi":P>NABaWC!;-!`!;-9h!;-*c$1-I&jQuO2rVcBXr;cK^r;cKCr;iu.q>psK1d!lO +,SL@q)uV#`)[m/F!p9N5~> +gAgXDrs\oi":P>NABaWC!;-!`!;-9h!;-*c$1-I&jQuO2rVcBXr;cK^r;cKCr;iu.q>psK1d!lO +,SL@q)uV#`)[m/F!p9N5~> +gAgRB$k,6d$l`HqrVcBerUf^[!;,^X"ROq!jRi?J!;-*c"8)Qjo_eXlo_na\rVcBbr;cKhr<)]j +rUg*f!;-6g!;-*c!;-3f!;-6g"8)QjN;N_k$m[Yt4>\T.$jHbH)^H@J/2Sn')u^9=!p9N5~> +gAgRB$k,6d$l`HqrVcBerUf^[!;,^X"ROq!jRi?J!;-*c"8)Qjo_eXlo_na\rVcBbr;cKhr<)]j +rUg*f!;-6g!;-*c!;-3f!;-6g"8)QjN;N_k$m[Yt4>\T.$jHbH)^H@J/2Sn')u^9=!p9N5~> +gAgRB$k,6d$l`HqrVcBerUf^[!;,^X"ROq!jRi?J!;-*c"8)Qjo_eXlo_na\rVcBbr;cKhr<)]j +rUg*f!;-6g!;-*c!;-3f!;-6g"8)QjN;N_k$m[Yt4>\T.$jHbH)^H@J/2Sn')u^9=!p9N5~> +gAgjJ!=T2/!X06*>VnjenGN@Zr;?Wfq#(3brr!,prVc*CEfrVcBVr;cKer;cK`r;cKf +r<)]jrUg$d!;-6g!;-6g!VC1+!X&oW6o5k^$igM1!rWN7)_<6c1c-a/)\WGN!p9N5~> +gAgjJ!=T2/!X06*>VnjenGN@Zr;?Wfq#(3brr!,prVc*CEfrVcBVr;cKer;cK`r;cKf +r<)]jrUg$d!;-6g!;-6g!VC1+!X&oW6o5k^$igM1!rWN7)_<6c1c-a/)\WGN!p9N5~> +gAgjJ!=T2/!X06*>VnjenGN@Zr;?Wfq#(3brr!,prVc*CEfrVcBVr;cKer;cK`r;cKf +r<)]jrUg$d!;-6g!;-6g!VC1+!X&oW6o5k^$igM1!rWN7)_<6c1c-a/)\WGN!p9N5~> +g&LsO#n/%J@:j+N0bXuo!X/cA6sN-]qY^EdrVZ`gp&+m_o_f$em+gCWo_nF@r;cK_r;cKOr;lOY +rW363,V12S#5&$%"q1nZ/3H&o6iehIq#]^YJ,~> +g&LsO#n/%J@:j+N0bXuo!X/cA6sN-]qY^EdrVZ`gp&+m_o_f$em+gCWo_nF@r;cK_r;cKOr;lOY +rW363,V12S#5&$%"q1nZ/3H&o6iehIq#]^YJ,~> +g&LsO#n/%J@:j+N0bXuo!X/cA6sN-]qY^EdrVZ`gp&+m_o_f$em+gCWo_nF@r;cK_r;cKOr;lOY +rW363,V12S#5&$%"q1nZ/3H&o6iehIq#]^YJ,~> +g&M$Q$k>RJNM*/V[C3,q7L]1r#STg_SFlIPrUg'e!;-9h!;,s_"8)Qjo`"dho_\Rlm+gCWm/?nT +pAG!`rqurkrVcBfr;cK\r;cK`r;cKcr;cK^r +g&M$Q$k>RJNM*/V[C3,q7L]1r#STg_SFlIPrUg'e!;-9h!;,s_"8)Qjo`"dho_\Rlm+gCWm/?nT +pAG!`rqurkrVcBfr;cK\r;cK`r;cKcr;cK^r +g&M$Q$k>RJNM*/V[C3,q7L]1r#STg_SFlIPrUg'e!;-9h!;,s_"8)Qjo`"dho_\Rlm+gCWm/?nT +pAG!`rqurkrVcBfr;cK\r;cK`r;cKcr;cK^r +f`)-W0mJD +f`)-W0mJD +f`)-W0mJD +f`)(RH]=Ssq76[9X+DAj!X&]@9!%+Ar;cKdr;cKfr;cKgr<;QCguS,"jS])NrqurkrVcB^r;cK] +r;cKgr;cKfr +f`)(RH]=Ssq76[9X+DAj!X&]@9!%+Ar;cKdr;cKfr;cKgr<;QCguS,"jS])NrqurkrVcB^r;cK] +r;cKgr;cKfr +f`)(RH]=Ssq76[9X+DAj!X&]@9!%+Ar;cKdr;cKfr;cKgr<;QCguS,"jS])NrqurkrVcB^r;cK] +r;cKgr;cKfr +f`))$LmtHNpppR5Y)4J'!XJu='2YdkrVcBJr<`,po^(AgjRiECp\b*aqu$Nep&+m_p&+m_r;?Wf +q>C^4,j,46$nOeC +f`))$LmtHNpppR5Y)4J'!XJu='2YdkrVcBJr<`,po^(AgjRiECp\b*aqu$Nep&+m_p&+m_r;?Wf +q>C^4,j,46$nOeC +f`))$LmtHNpppR5Y)4J'!XJu='2YdkrVcBJr<`,po^(AgjRiECp\b*aqu$Nep&+m_p&+m_r;?Wf +q>C^4,j,46$nOeC +g&D8'Kp\^>[C,e@"1>1],Q.ZH'-pSRjSf#`o_na\rVcBerUg*f"8)Qjo_\Reo_JFgm+gCWo`"dh +o_eXfo]5rQo_na\pAG*crVcBcr;uWZe,6rd]YD+f>9ae4'B]E%$oBe'4>\T&rW;3]J,~> +g&D8'Kp\^>[C,e@"1>1],Q.ZH'-pSRjSf#`o_na\rVcBerUg*f"8)Qjo_\Reo_JFgm+gCWo`"dh +o_eXfo]5rQo_na\pAG*crVcBcr;uWZe,6rd]YD+f>9ae4'B]E%$oBe'4>\T&rW;3]J,~> +g&D8'Kp\^>[C,e@"1>1],Q.ZH'-pSRjSf#`o_na\rVcBerUg*f"8)Qjo_\Reo_JFgm+gCWo`"dh +o_eXfo]5rQo_na\pAG*crVcBcr;uWZe,6rd]YD+f>9ae4'B]E%$oBe'4>\T&rW;3]J,~> +g&D89OJ8eV[C,_>!ipo'r +g&D89OJ8eV[C,_>!ipo'r +g&D89OJ8eV[C,_>!ipo'r +gA_D4NgQQA[Bd45\cSpa/,]PL$j/>Fh":@>!;,UUs5X:;jRi*2r;cKfr;cKer;cKcr<)]jrUfd] +#k\)om^8ms]"S$Z"hhLY[?`Q1!X]Sl1d!<7)[6ra#3>f7~> +gA_D4NgQQA[Bd45\cSpa/,]PL$j/>Fh":@>!;,UUs5X:;jRi*2r;cKfr;cKer;cKcr<)]jrUfd] +#k\)om^8ms]"S$Z"hhLY[?`Q1!X]Sl1d!<7)[6ra#3>f7~> +gA_D4NgQQA[Bd45\cSpa/,]PL$j/>Fh":@>!;,UUs5X:;jRi*2r;cKfr;cKer;cKcr<)]jrUfd] +#k\)om^8ms]"S$Z"hhLY[?`Q1!X]Sl1d!<7)[6ra#3>f7~> +g]%S3Lm"4'X0T=E[Iq*4Z@sn/!X9&H1kXT^o^;Y[o_na\rr!/qrVcBejP8POo_8:ao^;Y[o_na\ +rqurkrVcBar;cKcr;cKhr +g]%S3Lm"4'X0T=E[Iq*4Z@sn/!X9&H1kXT^o^;Y[o_na\rr!/qrVcBejP8POo_8:ao^;Y[o_na\ +rqurkrVcBar;cKcr;cKhr +g]%S3Lm"4'X0T=E[Iq*4Z@sn/!X9&H1kXT^o^;Y[o_na\rr!/qrVcBejP8POo_8:ao^;Y[o_na\ +rqurkrVcBar;cKcr;cKhr +g]%M4LmXa0X0T&%\cSa\,Q.ZM$l^a>eG]%(=QEmmZs*t~> +g]%M4LmXa0X0T&%\cSa\,Q.ZM$l^a>eG]%(=QEmmZs*t~> +g]%M4LmXa0X0T&%\cSa\,Q.ZM$l^a>eG]%(=QEmmZs*t~> +h#@P0LlRppV>de#[Iq*6]t0bW'E%t9$l^a5bk1l4!;-'b!;,m]"n_0BguS,$r<)]jrUfg^!;,aY +!;,g[#kYNqX0oOP]u0ch"3.ri(?kl2"qrO5)\Wkh!Z$$W[`64lkPp&~> +h#@P0LlRppV>de#[Iq*6]t0bW'E%t9$l^a5bk1l4!;-'b!;,m]"n_0BguS,$r<)]jrUfg^!;,aY +!;,g[#kYNqX0oOP]u0ch"3.ri(?kl2"qrO5)\Wkh!Z$$W[`64lkPp&~> +h#@P0LlRppV>de#[Iq*6]t0bW'E%t9$l^a5bk1l4!;-'b!;,m]"n_0BguS,$r<)]jrUfg^!;,aY +!;,g[#kYNqX0oOP]u0ch"3.ri(?kl2"qrO5)\Wkh!Z$$W[`64lkPp&~> +h#@\:Nfoj-X/iP6[IUm2ZCknAr;m-,'-phrm/?k_o_/4`o`"dko_na\r;?fcgt^uWo_\Reo_A@b +o`"dho^i"]o_eXfo_eXfo^r(foWO^[X0oOM^&5bM_6./bkQ1f!,SU.c#m(N+QF=]PbfI0Ts*t~> +h#@\:Nfoj-X/iP6[IUm2ZCknAr;m-,'-phrm/?k_o_/4`o`"dko_na\r;?fcgt^uWo_\Reo_A@b +o`"dho^i"]o_eXfo_eXfo^r(foWO^[X0oOM^&5bM_6./bkQ1f!,SU.c#m(N+QF=]PbfI0Ts*t~> +h#@\:Nfoj-X/iP6[IUm2ZCknAr;m-,'-phrm/?k_o_/4`o`"dko_na\r;?fcgt^uWo_\Reo_A@b +o`"dho^i"]o_eXfo_eXfo^r(foWO^[X0oOM^&5bM_6./bkQ1f!,SU.c#m(N+QF=]PbfI0Ts*t~> +h>[n8LlRjnV5pZ&[C*TRost=?]!@f)#5eN*'-pDMm/6eao_na\q>CCNirVcBerUg*f!;-!`&bQ&#o_na\rVcBerUdLdV6[E+])TJC_ZRND9GZgn!X9&ArW3B1 +'6pCl_oBd=`p!GQ~> +h>[n8LlRjnV5pZ&[C*TRost=?]!@f)#5eN*'-pDMm/6eao_na\q>CCNirVcBerUg*f!;-!`&bQ&#o_na\rVcBerUdLdV6[E+])TJC_ZRND9GZgn!X9&ArW3B1 +'6pCl_oBd=`p!GQ~> +h>[n8LlRjnV5pZ&[C*TRost=?]!@f)#5eN*'-pDMm/6eao_na\q>CCNirVcBerUg*f!;-!`&bQ&#o_na\rVcBerUdLdV6[E+])TJC_ZRND9GZgn!X9&ArW3B1 +'6pCl_oBd=`p!GQ~> +hZ!q?LlRdlSY`Bm[C,V;#/.U][\f$=qZ?d2!^)Fsp\b*ap\b*ar;?W^rnRP?s8;rin,3@\rVcBW +r;cKYr<0O!V5pp#])TJD]*#4!6lY.f$OdMETY&+Z`l?*>VWn,2~> +hZ!q?LlRdlSY`Bm[C,V;#/.U][\f$=qZ?d2!^)Fsp\b*ap\b*ar;?W^rnRP?s8;rin,3@\rVcBW +r;cKYr<0O!V5pp#])TJD]*#4!6lY.f$OdMETY&+Z`l?*>VWn,2~> +hZ!q?LlRdlSY`Bm[C,V;#/.U][\f$=qZ?d2!^)Fsp\b*ap\b*ar;?W^rnRP?s8;rin,3@\rVcBW +r;cKYr<0O!V5pp#])TJD]*#4!6lY.f$OdMETY&+Z`l?*>VWn,2~> +hu=(ELlRXcSY`BfZF[I5\cf^TTRIpZ!X8i;'.e7=o^)M`o_na\o^(Z"m.BrEr;cKPr;cKfr;cK\ +r<;hsR\d'jr43*G]=Y/(4;6`V$OetW]>;+m_8F13[-@U@~> +hu=(ELlRXcSY`BfZF[I5\cf^TTRIpZ!X8i;'.e7=o^)M`o_na\o^(Z"m.BrEr;cKPr;cKfr;cK\ +r<;hsR\d'jr43*G]=Y/(4;6`V$OetW]>;+m_8F13[-@U@~> +hu=(ELlRXcSY`BfZF[I5\cf^TTRIpZ!X8i;'.e7=o^)M`o_na\o^(Z"m.BrEr;cKPr;cKfr;cK\ +r<;hsR\d'jr43*G]=Y/(4;6`V$OetW]>;+m_8F13[-@U@~> +iVs=JJqAf=R%:(MX0T%=m^`P7Y+')5qZ7'4',+3Lm.C8To_eXfo^_q\o`"1Wo_n^go`"dho_eXf +o_/4co_na\qu$NepAG*crVcBcr;cKhr<0d(V5pp#])T2C['#sR6l$!g!Y#>IFeZL[]t:ti_o'*@ +lMlA~> +iVs=JJqAf=R%:(MX0T%=m^`P7Y+')5qZ7'4',+3Lm.C8To_eXfo^_q\o`"1Wo_n^go`"dho_eXf +o_/4co_na\qu$NepAG*crVcBcr;cKhr<0d(V5pp#])T2C['#sR6l$!g!Y#>IFeZL[]t:ti_o'*@ +lMlA~> +iVs=JJqAf=R%:(MX0T%=m^`P7Y+')5qZ7'4',+3Lm.C8To_eXfo^_q\o`"1Wo_n^go`"dho_eXf +o_/4co_na\qu$NepAG*crVcBcr;cKhr<0d(V5pp#])T2C['#sR6l$!g!Y#>IFeZL[]t:ti_o'*@ +lMlA~> +mf*<>LAQQ1IYEB%JqA`;R$O23ri6./ZF[I4])TGFVNOXL!r`T07',bRr;cKfr<)]jrUfg^r:Kpc +!;,OS"8)Qjo^D_Yo_\UeoEE"#V5q#3rOW$;"g4>K;B5u'!Y#?8S$p#B]sbVc]=kY)lMlA~> +mf*<>LAQQ1IYEB%JqA`;R$O23ri6./ZF[I4])TGFVNOXL!r`T07',bRr;cKfr<)]jrUfg^r:Kpc +!;,OS"8)Qjo^D_Yo_\UeoEE"#V5q#3rOW$;"g4>K;B5u'!Y#?8S$p#B]sbVc]=kY)lMlA~> +mf*<>LAQQ1IYEB%JqA`;R$O23ri6./ZF[I4])TGFVNOXL!r`T07',bRr;cKfr<)]jrUfg^r:Kpc +!;,OS"8)Qjo^D_Yo_\UeoEE"#V5q#3rOW$;"g4>K;B5u'!Y#?8S$p#B]sbVc]=kY)lMlA~> +o)AlAJq\o7M#E;GMM6b9Knb;@OI2?)U8=okZEgn(\c]X?N@Xi,"U5AK1lUMer<)]jrUfLU!;-3f +#5%lmo_na\o)/[_rVcB]r;cKdr<0d(SZB'q])K,BZDO1H@3#j>!Y%/DVRF+K[^roY]"PP(lMlA~> +o)AlAJq\o7M#E;GMM6b9Knb;@OI2?)U8=okZEgn(\c]X?N@Xi,"U5AK1lUMer<)]jrUfLU!;-3f +#5%lmo_na\o)/[_rVcB]r;cKdr<0d(SZB'q])K,BZDO1H@3#j>!Y%/DVRF+K[^roY]"PP(lMlA~> +o)AlAJq\o7M#E;GMM6b9Knb;@OI2?)U8=okZEgn(\c]X?N@Xi,"U5AK1lUMer<)]jrUfLU!;-3f +#5%lmo_na\o)/[_rVcB]r;cKdr<0d(SZB'q])K,BZDO1H@3#j>!Y%/DVRF+K[^roY]"PP(lMlA~> +o`#DLJqf)AQCF>6R$sJ0OHBI$!g&e8rga1gX/iP6l+.#2[$u1Hq#^R)""\6+o`"dho^r(^o`"dh +o_\Reo^)MVo^D_Yo_&.jo_nFSm,YUOSZB0+rjiEDY,eCiNHHf_#3Q$j,C>`^[/RK8[C3OC\c@HL +s*t~> +o`#DLJqf)AQCF>6R$sJ0OHBI$!g&e8rga1gX/iP6l+.#2[$u1Hq#^R)""\6+o`"dho^r(^o`"dh +o_\Reo^)MVo^D_Yo_&.jo_nFSm,YUOSZB0+rjiEDY,eCiNHHf_#3Q$j,C>`^[/RK8[C3OC\c@HL +s*t~> +o`#DLJqf)AQCF>6R$sJ0OHBI$!g&e8rga1gX/iP6l+.#2[$u1Hq#^R)""\6+o`"dho^r(^o`"dh +o_\Reo^)MVo^D_Yo_&.jo_nFSm,YUOSZB0+rjiEDY,eCiNHHf_#3Q$j,C>`^[/RK8[C3OC\c@HL +s*t~> +p&>/CJrPkXrgj"^rga4^R$O2,Sc5A_X8fI*[HY7*]tpk79_SSk"q4>0jRE*Jo^;YXo^i"]o^D_\ +o_na\r;@N*rTrV#eBG@lV5pZ.[C3KOX/i(fLjM]/#3Z*q(1``-Y-bXGZF71?\cK3mlMlA~> +p&>/CJrPkXrgj"^rga4^R$O2,Sc5A_X8fI*[HY7*]tpk79_SSk"q4>0jRE*Jo^;YXo^i"]o^D_\ +o_na\r;@N*rTrV#eBG@lV5pZ.[C3KOX/i(fLjM]/#3Z*q(1``-Y-bXGZF71?\cK3mlMlA~> +p&>/CJrPkXrgj"^rga4^R$O2,Sc5A_X8fI*[HY7*]tpk79_SSk"q4>0jRE*Jo^;YXo^i"]o^D_\ +o_na\r;@N*rTrV#eBG@lV5pZ.[C3KOX/i(fLjM]/#3Z*q(1``-Y-bXGZF71?\cK3mlMlA~> +pAYAHKntnZSXlMQV>m7mSYD[LUAh"gX8fL*[HP1*]u.IVKeCNirVcBerUg*f!;,j\"8(s0bl5N`Yaq>jZMh0;ZE'guSW8;> +1)BinmK3Cm&/Jr8SZAp#['m9G[Bd6P[=7E@J,~> +pAYAHKntnZSXlMQV>m7mSYD[LUAh"gX8fL*[HP1*]u.IVKeCNirVcBerUg*f!;,j\"8(s0bl5N`Yaq>jZMh0;ZE'guSW8;> +1)BinmK3Cm&/Jr8SZAp#['m9G[Bd6P[=7E@J,~> +pAYAHKntnZSXlMQV>m7mSYD[LUAh"gX8fL*[HP1*]u.IVKeCNirVcBerUg*f!;,j\"8(s0bl5N`Yaq>jZMh0;ZE'guSW8;> +1)BinmK3Cm&/Jr8SZAp#['m9G[Bd6P[=7E@J,~> +pAY2GLm\14rh]Ros.ok!V5pGhri?"'!4Cq"s1nfERs5_G!WWH'!X&ogN84(&r;cKTr;cKPr;cKf +r;cKer;cKfr;u?8bl,Hq[[itiZF.-LZEgO-SX,([G[)U+$k +pAY2GLm\14rh]Ros.ok!V5pGhri?"'!4Cq"s1nfERs5_G!WWH'!X&ogN84(&r;cKTr;cKPr;cKf +r;cKer;cKfr;u?8bl,Hq[[itiZF.-LZEgO-SX,([G[)U+$k +pAY2GLm\14rh]Ros.ok!V5pGhri?"'!4Cq"s1nfERs5_G!WWH'!X&ogN84(&r;cKTr;cKPr;cKf +r;cKer;cKfr;u?8bl,Hq[[itiZF.-LZEgO-SX,([G[)U+$k +p\tPJJrZ.fSY`0gX8K:"X8]F'[Hb='[JdZ?]u.IZNE#QP"9pE)bk1N*!;,g[!;-!`"8)Qjo^D_Y +o_\Rio_naTh###(X.?)fZEgmGY-P+)V3[-nHZEO>#4M]o"q)G;EeTgMU8t>tY-Ru5!kP[hlMlA~> +p\tPJJrZ.fSY`0gX8K:"X8]F'[Hb='[JdZ?]u.IZNE#QP"9pE)bk1N*!;,g[!;-!`"8)Qjo^D_Y +o_\Rio_naTh###(X.?)fZEgmGY-P+)V3[-nHZEO>#4M]o"q)G;EeTgMU8t>tY-Ru5!kP[hlMlA~> +p\tPJJrZ.fSY`0gX8K:"X8]F'[Hb='[JdZ?]u.IZNE#QP"9pE)bk1N*!;,g[!;-!`"8)Qjo^D_Y +o_\Rio_naTh###(X.?)fZEgmGY-P+)V3[-nHZEO>#4M]o"q)G;EeTgMU8t>tY-Ru5!kP[hlMlA~> +p\tPJKp\="V5:5u[JI3-Ws,f:[CWcRk.1l-]"5Sk]C +p\tPJKp\="V5:5u[JI3-Ws,f:[CWcRk.1l-]"5Sk]C +p\tPJKp\="V5:5u[JI3-Ws,f:[CWcRk.1l-]"5Sk]C +q#:\IJq]S_V5po-[Bfe>!4)R2!4)R2j155urON3F_n3(;@0ZB+"9oMrSF$4Q!;,s_!;-9h!;,s_ +!;,m]!;-'b!;,s_!VFn<`"oDEV5po-X0T%3X/2AXP)+g?HZsL3/c6)#$jHn;"pPPX4C!#RI=dHE +SYDs]X0T%>]!f2X]!],?lMlA~> +q#:\IJq]S_V5po-[Bfe>!4)R2!4)R2j155urON3F_n3(;@0ZB+"9oMrSF$4Q!;,s_!;-9h!;,s_ +!;,m]!;-'b!;,s_!VFn<`"oDEV5po-X0T%3X/2AXP)+g?HZsL3/c6)#$jHn;"pPPX4C!#RI=dHE +SYDs]X0T%>]!f2X]!],?lMlA~> +q#:\IJq]S_V5po-[Bfe>!4)R2!4)R2j155urON3F_n3(;@0ZB+"9oMrSF$4Q!;,s_!;-9h!;,s_ +!;,m]!;-'b!;,s_!VFn<`"oDEV5po-X0T%3X/2AXP)+g?HZsL3/c6)#$jHn;"pPPX4C!#RI=dHE +SYDs]X0T%>]!f2X]!],?lMlA~> +p\tDKNL6H:X8]F%[0X@P[C3KN]"5<0\dGjV[^s&d]`!ETJZN1,;6q +A9.Zr&:K.dOIE#BX/iP6[^E]S]!_OK!2f&]J,~> +p\tDKNL6H:X8]F%[0X@P[C3KN]"5<0\dGjV[^s&d]`!ETJZN1,;6q +A9.Zr&:K.dOIE#BX/iP6[^E]S]!_OK!2f&]J,~> +p\tDKNL6H:X8]F%[0X@P[C3KN]"5<0\dGjV[^s&d]`!ETJZN1,;6q +A9.Zr&:K.dOIE#BX/iP6[^E]S]!_OK!2f&]J,~> +p\tDKNgcN8X8]F)[JdZ:[G&1l[Jm`A]>;+dRr&Z,!X&oF:rN#)r;cKfr;cKLr;cKUr;cKhr;l97 +qSWH9SXTPYrj)O($)3uVOH,$KJqAFMHN83eEW^H)G^016%>':iP+/#CX0T%=[C3L@\c]@O[@$:[ +J,~> +p\tDKNgcN8X8]F)[JdZ:[G&1l[Jm`A]>;+dRr&Z,!X&oF:rN#)r;cKfr;cKLr;cKUr;cKhr;l97 +qSWH9SXTPYrj)O($)3uVOH,$KJqAFMHN83eEW^H)G^016%>':iP+/#CX0T%=[C3L@\c]@O[@$:[ +J,~> +p\tDKNgcN8X8]F)[JdZ:[G&1l[Jm`A]>;+dRr&Z,!X&oF:rN#)r;cKfr;cKLr;cKUr;cKhr;l97 +qSWH9SXTPYrj)O($)3uVOH,$KJqAFMHN83eEW^H)G^016%>':iP+/#CX0T%=[C3L@\c]@O[@$:[ +J,~> +q#CAJ"H]"FX/l6*"1knO[Jm`>[CWrWoXY%1lad))rji9N_6g)!7.UH`$kjRJ[.NP[#5%lmo_na\ +n,37YrqurkrVcB`r;l97qSWZ?R[TeDX/iP3ri6C&U7IU3NeiLFKnB;Pqg89i%>':iNL$$(X/iP3 +[C3LA\cB/:\cK49li2J~> +q#CAJ"H]"FX/l6*"1knO[Jm`>[CWrWoXY%1lad))rji9N_6g)!7.UH`$kjRJ[.NP[#5%lmo_na\ +n,37YrqurkrVcB`r;l97qSWZ?R[TeDX/iP3ri6C&U7IU3NeiLFKnB;Pqg89i%>':iNL$$(X/iP3 +[C3LA\cB/:\cK49li2J~> +q#CAJ"H]"FX/l6*"1knO[Jm`>[CWrWoXY%1lad))rji9N_6g)!7.UH`$kjRJ[.NP[#5%lmo_na\ +n,37YrqurkrVcB`r;l97qSWZ?R[TeDX/iP3ri6C&U7IU3NeiLFKnB;Pqg89i%>':iNL$$(X/iP3 +[C3LA\cB/:\cK49li2J~> +q#:PFL6.mqV5sU'!P5]9\cB.n\cB/;\d,[W_7R(DGS]lP"U5AD1o0dBr;cKfr<)]jrUfOV!;,aY +!;-0e!;-0e!qbj/qSWQ4R%9eKX8T@(X8f"!SX,S'Nr=e4Kc,;jJq\f1KntG=OH>ctU8=orZF.*O +[CWrWrON->]!\i5m/MS~> +q#:PFL6.mqV5sU'!P5]9\cB.n\cB/;\d,[W_7R(DGS]lP"U5AD1o0dBr;cKfr<)]jrUfOV!;,aY +!;-0e!;-0e!qbj/qSWQ4R%9eKX8T@(X8f"!SX,S'Nr=e4Kc,;jJq\f1KntG=OH>ctU8=orZF.*O +[CWrWrON->]!\i5m/MS~> +q#:PFL6.mqV5sU'!P5]9\cB.n\cB/;\d,[W_7R(DGS]lP"U5AD1o0dBr;cKfr<)]jrUfOV!;,aY +!;-0e!;-0e!qbj/qSWQ4R%9eKX8T@(X8f"!SX,S'Nr=e4Kc,;jJq\f1KntG=OH>ctU8=orZF.*O +[CWrWrON->]!\i5m/MS~> +q#CAG"cf%JX/iQ*[Ih$1[J7<5[HkC)[C6(G"hhpfVN":=!WrifPjJ#?#5%lmo_na\oDJ[]rr!&n +rVcBerUfXY!;-9h!p%kTr58rUUR7F>V5po&ZEjJ1&uD.iQBmVoNfK*ZLkpb@LkUP=rf.5FQBn#0 +U8=pi[K!f<[J7?4[/m=omJh\~> +q#CAG"cf%JX/iQ*[Ih$1[J7<5[HkC)[C6(G"hhpfVN":=!WrifPjJ#?#5%lmo_na\oDJ[]rr!&n +rVcBerUfXY!;-9h!p%kTr58rUUR7F>V5po&ZEjJ1&uD.iQBmVoNfK*ZLkpb@LkUP=rf.5FQBn#0 +U8=pi[K!f<[J7?4[/m=omJh\~> +q#CAG"cf%JX/iQ*[Ih$1[J7<5[HkC)[C6(G"hhpfVN":=!WrifPjJ#?#5%lmo_na\oDJ[]rr!&n +rVcBerUfXY!;-9h!p%kTr58rUUR7F>V5po&ZEjJ1&uD.iQBmVoNfK*ZLkpb@LkUP=rf.5FQBn#0 +U8=pi[K!f<[J7?4[/m=omJh\~> +q#:\JJrQ7jX/iP3[C+Go$FRIR]tM7u[$uXln,`\*/>Vq:r;cK[rP8QR\d'cZE(:3ZDFUmSXTPD"-S\)P5C7?OH0=%rg*STs/Q1+[IUm3ZF[? +q#:\JJrQ7jX/iP3[C+Go$FRIR]tM7u[$uXln,`\*/>Vq:r;cK[rP8QR\d'cZE(:3ZDFUmSXTPD"-S\)P5C7?OH0=%rg*STs/Q1+[IUm3ZF[? +q#:\JJrQ7jX/iP3[C+Go$FRIR]tM7u[$uXln,`\*/>Vq:r;cK[rP8QR\d'cZE(:3ZDFUmSXTPD"-S\)P5C7?OH0=%rg*STs/Q1+[IUm3ZF[? +p\tSLNL6H:X/iP6]!]hp#/.po[$"i+n,`\*7(r6;r<)]jrUfsb"8(s0bl#Ba]q1=IR[pL[riuj2 +ZE(%&U7IjDRf8TYP*V8sP)tukOStILS"caUX0T&&\d#IJ]!\iHT^Mi1~> +p\tSLNL6H:X/iP6]!]hp#/.po[$"i+n,`\*7(r6;r<)]jrUfsb"8(s0bl#Ba]q1=IR[pL[riuj2 +ZE(%&U7IjDRf8TYP*V8sP)tukOStILS"caUX0T&&\d#IJ]!\iHT^Mi1~> +p\tSLNL6H:X/iP6]!]hp#/.po[$"i+n,`\*7(r6;r<)]jrUfsb"8(s0bl#Ba]q1=IR[pL[riuj2 +ZE(%&U7IjDRf8TYP*V8sP)tukOStILS"caUX0T&&\d#IJ]!\iHT^Mi1~> +p\tSSNL$-3X/iY6]!^"u$amRR]"5>`_mZD$/arfF"rgRlrUg*f"8)Qjo_n^jo_na\pAG*crVcBc +r<)]jrUg$d"8)Qjo_8:fo_naLgs#Z6&>"f?QCXkQX0Se3ZE(%&V5!s[s-`tSReW0KS,Sr^U8t,k +ZF087!O]N<[/m=tn,In~> +p\tSSNL$-3X/iY6]!^"u$amRR]"5>`_mZD$/arfF"rgRlrUg*f"8)Qjo_n^jo_na\pAG*crVcBc +r<)]jrUg$d"8)Qjo_8:fo_naLgs#Z6&>"f?QCXkQX0Se3ZE(%&V5!s[s-`tSReW0KS,Sr^U8t,k +ZF087!O]N<[/m=tn,In~> +p\tSSNL$-3X/iY6]!^"u$amRR]"5>`_mZD$/arfF"rgRlrUg*f"8)Qjo_n^jo_na\pAG*crVcBc +r<)]jrUg$d"8)Qjo_8:fo_naLgs#Z6&>"f?QCXkQX0Se3ZE(%&V5!s[s-`tSReW0KS,Sr^U8t,k +ZF087!O]N<[/m=tn,In~> +p\tPKLmXa-X/iP6ZHTla_nj0lRs5_ +p\tPKLmXa-X/iP6ZHTla_nj0lRs5_ +p\tPKLmXa-X/iP6ZHTla_nj0lRs5_ +p](8I#b%<\V5pZ.ZF.rg#JIac]:bHh#4MZt)dLVcrUfUX!;-!`"8)Qjo^;Y[o_na\rVZfajOF(F +#a^7$P+A/?X/l0(s/Q="X/2Y`U@t,ZV4sgcX8fL*[IUm7[CWrT[C*<;NUd%!~> +p](8I#b%<\V5pZ.ZF.rg#JIac]:bHh#4MZt)dLVcrUfUX!;-!`"8)Qjo^;Y[o_na\rVZfajOF(F +#a^7$P+A/?X/l0(s/Q="X/2Y`U@t,ZV4sgcX8fL*[IUm7[CWrT[C*<;NUd%!~> +p](8I#b%<\V5pZ.ZF.rg#JIac]:bHh#4MZt)dLVcrUfUX!;-!`"8)Qjo^;Y[o_na\rVZfajOF(F +#a^7$P+A/?X/l0(s/Q="X/2Y`U@t,ZV4sgcX8fL*[IUm7[CWrT[C*<;NUd%!~> +p\tPOKp\F%V5po-[Ec>i[^s&`_n3:HMC7lp!sU$8o_8:do_na\pAG*crVcB`r;cK_r;cKar<)]Q +eBIm0$GDd\Kohb"V5po&r3H=&qPF(`rMBLos0D[4n@JY-s1/?@ZEg$Jo)F4~> +p\tPOKp\F%V5po-[Ec>i[^s&`_n3:HMC7lp!sU$8o_8:do_na\pAG*crVcB`r;cK_r;cKar<)]Q +eBIm0$GDd\Kohb"V5po&r3H=&qPF(`rMBLos0D[4n@JY-s1/?@ZEg$Jo)F4~> +p\tPOKp\F%V5po-[Ec>i[^s&`_n3:HMC7lp!sU$8o_8:do_na\pAG*crVcB`r;cK_r;cKar<)]Q +eBIm0$GDd\Kohb"V5po&r3H=&qPF(`rMBLos0D[4n@JY-s1/?@ZEg$Jo)F4~> +p](8I#*>CHV5pZ&rjC%_#e%=X_n2e8FVF6G!Xs_RrquihgAM6JrVcBerUfj_"n_ccm+fh_`"/2d +KohUkV5pZ&ZF.!D[Bfb3r1sIhV5!sc!NW'pX8fL*[I1U+ZMh04X.+k8s*t~> +p](8I#*>CHV5pZ&rjC%_#e%=X_n2e8FVF6G!Xs_RrquihgAM6JrVcBerUfj_"n_ccm+fh_`"/2d +KohUkV5pZ&ZF.!D[Bfb3r1sIhV5!sc!NW'pX8fL*[I1U+ZMh04X.+k8s*t~> +p](8I#*>CHV5pZ&rjC%_#e%=X_n2e8FVF6G!Xs_RrquihgAM6JrVcBerUfj_"n_ccm+fh_`"/2d +KohUkV5pZ&ZF.!D[Bfb3r1sIhV5!sc!NW'pX8fL*[I1U+ZMh04X.+k8s*t~> +p\tSPKp\="V5:K'[C+Am!4Dd:#/.jh[&&pZn,`Y"AG#ct!;-*c#5%lmo_na\p&+m_r;?Wfm/7%Y +m+g+h`!X2[J?j*V5pGhqlB\$!OfE%\coLI[B$-eo`'F~> +p\tSPKp\="V5:K'[C+Am!4Dd:#/.jh[&&pZn,`Y"AG#ct!;-*c#5%lmo_na\p&+m_r;?Wfm/7%Y +m+g+h`!X2[J?j*V5pGhqlB\$!OfE%\coLI[B$-eo`'F~> +p\tSPKp\="V5:K'[C+Am!4Dd:#/.jh[&&pZn,`Y"AG#ct!;-*c#5%lmo_na\p&+m_r;?Wfm/7%Y +m+g+h`!X2[J?j*V5pGhqlB\$!OfE%\coLI[B$-eo`'F~> +p\tYRKohaoV5:5u[C*TRd(0Rl]!f2`_niLFKcT[b!Xr)qlMU_Tr;?Wflhq%[rVcBerUg'e!q,.! +rko8ZA:B,aOIMf;V6[/0ZMq67ZF.*GZLb-qZN%<5]!^q:#dq+PZF70HVOR8YJ,~> +p\tYRKohaoV5:5u[C*TRd(0Rl]!f2`_niLFKcT[b!Xr)qlMU_Tr;?Wflhq%[rVcBerUg'e!q,.! +rko8ZA:B,aOIMf;V6[/0ZMq67ZF.*GZLb-qZN%<5]!^q:#dq+PZF70HVOR8YJ,~> +p\tYRKohaoV5:5u[C*TRd(0Rl]!f2`_niLFKcT[b!Xr)qlMU_Tr;?Wflhq%[rVcBerUg'e!q,.! +rko8ZA:B,aOIMf;V6[/0ZMq67ZF.*GZLb-qZN%<5]!^q:#dq+PZF70HVOR8YJ,~> +pAYGQOI2T0V5po0[E?&b]>;=qVN>N^!X0!/o_na\r;?`irVcB[r;cKhr;cKfr;cKfr<)]jrUfXY +"8)$BeGdApPU'siLle'rV5pZ&ZMM!-ZM1C$ZF-b4ZMq8s\d,OP[C3ZSX-WJZJ,~> +pAYGQOI2T0V5po0[E?&b]>;=qVN>N^!X0!/o_na\r;?`irVcB[r;cKhr;cKfr;cKfr<)]jrUfXY +"8)$BeGdApPU'siLle'rV5pZ&ZMM!-ZM1C$ZF-b4ZMq8s\d,OP[C3ZSX-WJZJ,~> +pAYGQOI2T0V5po0[E?&b]>;=qVN>N^!X0!/o_na\r;?`irVcB[r;cKhr;cKfr;cKfr<)]jrUfXY +"8)$BeGdApPU'siLle'rV5pZ&ZMM!-ZM1C$ZF-b4ZMq8s\d,OP[C3ZSX-WJZJ,~> +pAYMSNgQB.V5po0[CWcl\cB/;\d#j[_6fbm2t@"O$ruZmr;cKcrj~> +pAYMSNgQB.V5po0[CWcl\cB/;\d#j[_6fbm2t@"O$ruZmr;cKcrj~> +pAYMSNgQB.V5po0[CWcl\cB/;\d#j[_6fbm2t@"O$ruZmr;cKcrj~> +pAYGNNfoj*X/iP3[E5ub[_9SjY*OMWo)\q$KAc\.o^)MVo_SM'o^:Ma`5Gmo,@PqQOID`:V5po- +]!\rW[Jmc9[J7'*[0!qI[H5""[K!f>[B#Vhs*t~> +pAYGNNfoj*X/iP3[E5ub[_9SjY*OMWo)\q$KAc\.o^)MVo_SM'o^:Ma`5Gmo,@PqQOID`:V5po- +]!\rW[Jmc9[J7'*[0!qI[H5""[K!f>[B#Vhs*t~> +pAYGNNfoj*X/iP3[E5ub[_9SjY*OMWo)\q$KAc\.o^)MVo_SM'o^:Ma`5Gmo,@PqQOID`:V5po- +]!\rW[Jmc9[J7'*[0!qI[H5""[K!f>[B#Vhs*t~> +pAYALNfoj%V5pp$[E6#[]*6$_VOD3/o`>1!/CaOp"8)Qjo_/4co_na\q#(3br;?WfpAG!`rqurk +rVcBfr>YCabdM$q%Ph^GLmF?tV5pZ&ZF.9O]!],W]!h:>#e%=P]!\uX]!^b5!4Dg;!4Dg;!k#(` +qu;0~> +pAYALNfoj%V5pp$[E6#[]*6$_VOD3/o`>1!/CaOp"8)Qjo_/4co_na\q#(3br;?WfpAG!`rqurk +rVcBfr>YCabdM$q%Ph^GLmF?tV5pZ&ZF.9O]!],W]!h:>#e%=P]!\uX]!^b5!4Dg;!4Dg;!k#(` +qu;0~> +pAYALNfoj%V5pp$[E6#[]*6$_VOD3/o`>1!/CaOp"8)Qjo_/4co_na\q#(3br;?WfpAG!`rqurk +rVcBfr>YCabdM$q%Ph^GLmF?tV5pZ&ZF.9O]!],W]!h:>#e%=P]!\uX]!^b5!4Dg;!4Dg;!k#(` +qu;0~> +pAYMTLmXR#V5pZ&]"5 +pAYMTLmXR#V5pZ&]"5 +pAYMTLmXR#V5pZ&]"5 +pAYGQLm"3tV5po0[EZ8_[JdZB[_'An]<7HE*VTU:/>Vq:r;cK`r;cK\r;cKZr;cK^r>>1f]j)K\ +!Y[=tH\IQPSY`BfZF.-K[^rle\d5^T]!eZ6KE(t%~> +pAYGQLm"3tV5po0[EZ8_[JdZB[_'An]<7HE*VTU:/>Vq:r;cK`r;cK\r;cKZr;cK^r>>1f]j)K\ +!Y[=tH\IQPSY`BfZF.-K[^rle\d5^T]!eZ6KE(t%~> +pAYGQLm"3tV5po0[EZ8_[JdZB[_'An]<7HE*VTU:/>Vq:r;cK`r;cK\r;cKZr;cK^r>>1f]j)K\ +!Y[=tH\IQPSY`BfZF.-K[^rle\d5^T]!eZ6KE(t%~> +pAYGQNfo]sV5:K'[F2Vd[Iq*8_8a*[Lg1/\!WsB``:Wm("8)Qjo_/4`o_&._o]?#eoY!X$$j$J? +11Y`cQBn)9X/iP6[CWc_\coLMZDIU$J,~> +pAYGQNfo]sV5:K'[F2Vd[Iq*8_8a*[Lg1/\!WsB``:Wm("8)Qjo_/4`o_&._o]?#eoY!X$$j$J? +11Y`cQBn)9X/iP6[CWc_\coLMZDIU$J,~> +pAYGQNfo]sV5:K'[F2Vd[Iq*8_8a*[Lg1/\!WsB``:Wm("8)Qjo_/4`o_&._o]?#eoY!X$$j$J? +11Y`cQBn)9X/iP6[CWc_\coLMZDIU$J,~> +pAYMXNfod#V5:K*[CWcg])K,J]>M_%Rt +pAYMXNfod#V5:K*[CWcg])K,J]>M_%Rt +pAYMXNfod#V5:K*[CWcg])K,J]>M_%Rt +pAYGTNfoj%SZAg![E?&\[JdZF]>;=qXHn)_7!t64jS8ZRo_JFio_na\rVcBfr<)]jrUg$d!;-3f +!;-*c"8)Qjo_A@go_na\X>KeU%NRiGG_M6FU8=orZF.-K^q'ZVZEg5)J,~> +pAYGTNfoj%SZAg![E?&\[JdZF]>;=qXHn)_7!t64jS8ZRo_JFio_na\rVcBfr<)]jrUg$d!;-3f +!;-*c"8)Qjo_A@go_na\X>KeU%NRiGG_M6FU8=orZF.-K^q'ZVZEg5)J,~> +pAYGTNfoj%SZAg![E?&\[JdZF]>;=qXHn)_7!t64jS8ZRo_JFio_na\rVcBfr<)]jrUg$d!;-3f +!;-*c"8)Qjo_A@go_na\X>KeU%NRiGG_M6FU8=orZF.-K^q'ZVZEg5)J,~> +pAYPTNfoj%SZAg!]!],Wbdn7k]!f2Y]>;=qU5a;?m/-_]oYUP.m$o?u!YP\X6tCFoQBn8AX/iP3 +[CWcW[Df]][CWcOX/5iH~> +pAYPTNfoj%SZAg!]!],Wbdn7k]!f2Y]>;=qU5a;?m/-_]oYUP.m$o?u!YP\X6tCFoQBn8AX/iP3 +[CWcW[Df]][CWcOX/5iH~> +pAYPTNfoj%SZAg!]!],Wbdn7k]!f2Y]>;=qU5a;?m/-_]oYUP.m$o?u!YP\X6tCFoQBn8AX/iP3 +[CWcW[Df]][CWcOX/5iH~> +pAYMVNfo^!V5:K*[CWdF\cB.^])K,C]>;+^RtY:Hrquihp\b3drVcBQr;cKfr<)]jrUfg^!;-6g +"8()j)u9UH"sZTQG_M6MSY`BmZF.9O`OZ&WrON->ZE'`"J,~> +pAYMVNfo^!V5:K*[CWdF\cB.^])K,C]>;+^RtY:Hrquihp\b3drVcBQr;cKfr<)]jrUfg^!;-6g +"8()j)u9UH"sZTQG_M6MSY`BmZF.9O`OZ&WrON->ZE'`"J,~> +pAYMVNfo^!V5:K*[CWdF\cB.^])K,C]>;+^RtY:Hrquihp\b3drVcBQr;cKfr<)]jrUfg^!;-6g +"8()j)u9UH"sZTQG_M6MSY`BmZF.9O`OZ&WrON->ZE'`"J,~> +pAYPWNfoj%V5pZ.[CWcRrON!:r42m9f"(pj]"7mLs18HAVNu[3h"gmKo_A@ko_na\rVcBerUg!c +!;-*c!;-*c#5%lmo_na\q>CB5:^m.$%gFCNA9`fkSYDs]X0T%B[E#id[CWrW]!\rOX/hfkJ,~> +pAYPWNfoj%V5pZ.[CWcRrON!:r42m9f"(pj]"7mLs18HAVNu[3h"gmKo_A@ko_na\rVcBerUg!c +!;-*c!;-*c#5%lmo_na\q>CB5:^m.$%gFCNA9`fkSYDs]X0T%B[E#id[CWrW]!\rOX/hfkJ,~> +pAYPWNfoj%V5pZ.[CWcRrON!:r42m9f"(pj]"7mLs18HAVNu[3h"gmKo_A@ko_na\rVcBerUg!c +!;-*c!;-*c#5%lmo_na\q>CB5:^m.$%gFCNA9`fkSYDs]X0T%B[E#id[CWrW]!\rOX/hfkJ,~> +p\t_TNfK9gSXlge[CWcW]!_4B!4CRm!4Da9!OfB7]*5:,Na[D/rVZ`grquihn,3@\rVcBdr;cKS +r +p\t_TNfK9gSXlge[CWcW]!_4B!4CRm!4Da9!OfB7]*5:,Na[D/rVZ`grquihn,3@\rVcBdr;cKS +r +p\t_TNfK9gSXlge[CWcW]!_4B!4CRm!4Da9!OfB7]*5:,Na[D/rVZ`grquihn,3@\rVcBdr;cKS +r +p\tYRLlRX]SY`BpZF[HOrji*;oXY%1gq!Zs]!],\[f3lE[&0CJ<5&8/o_SLgo_na\l2:VSr;?Wf +n,3=[PT0;t#S&UfA9ETfSYc=d!j]5Aa1;;Z])K,:ZMp[$R/_[~> +p\tYRLlRX]SY`BpZF[HOrji*;oXY%1gq!Zs]!],\[f3lE[&0CJ<5&8/o_SLgo_na\l2:VSr;?Wf +n,3=[PT0;t#S&UfA9ETfSYc=d!j]5Aa1;;Z])K,:ZMp[$R/_[~> +p\tYRLlRX]SY`BpZF[HOrji*;oXY%1gq!Zs]!],\[f3lE[&0CJ<5&8/o_SLgo_na\l2:VSr;?Wf +n,3=[PT0;t#S&UfA9ETfSYc=d!j]5Aa1;;Z])K,:ZMp[$R/_[~> +p\t_OLlRXeSY`Bm[C*TW[C+)es0_p7rjr?@TU9k&h"(CDo_eXfo_A@bo_JFco_eXio_na\r;?Wf +r;?]P>R^9,&Jd,qA9EKcQD14V[Bd6K]"5;k\coLQ[B$U6rhT[bs8RT~> +p\t_OLlRXeSY`Bm[C*TW[C+)es0_p7rjr?@TU9k&h"(CDo_eXfo_A@bo_JFco_eXio_na\r;?Wf +r;?]P>R^9,&Jd,qA9EKcQD14V[Bd6K]"5;k\coLQ[B$U6rhT[bs8RT~> +p\t_OLlRXeSY`Bm[C*TW[C+)es0_p7rjr?@TU9k&h"(CDo_eXfo_A@bo_JFco_eXio_na\r;?Wf +r;?]P>R^9,&Jd,qA9EKcQD14V[Bd6K]"5;k\coLQ[B$U6rhT[bs8RT~> +p\tMNLkq([SY`BmrjBn[&@K*\[CWcW[^ +p\tMNLkq([SY`BmrjBn[&@K*\[CWcW[^ +p\tMNLkq([SY`BmrjBn[&@K*\[CWcW[^ +q#CAG&;Z@,R[p:U[C*TW[CWcW]!]\ls0_p7rjr`ETTXOfV#BrarUg'eo_na\q#( +q#CAG&;Z@,R[p:U[C*TW[CWcW]!]\ls0_p7rjr`ETTXOfV#BrarUg'eo_na\q#( +q#CAG&;Z@,R[p:U[C*TW[CWcW]!]\ls0_p7rjr`ETTXOfV#BrarUg'eo_na\q#( +q#:eTLkq(SSY`Bm[C*TW[E5u[[Jd]:[L'RQ]<7unKk*Tik5>;PpAG*crVcBar<;ilrR>p.n,`k9 +4B,a0JrQ4nri?(,!P5\_\dZ!X[CWZLV59`ORZ`:$s*t~> +q#:eTLkq(SSY`Bm[C*TW[E5u[[Jd]:[L'RQ]<7unKk*Tik5>;PpAG*crVcBar<;ilrR>p.n,`k9 +4B,a0JrQ4nri?(,!P5\_\dZ!X[CWZLV59`ORZ`:$s*t~> +q#:eTLkq(SSY`Bm[C*TW[E5u[[Jd]:[L'RQ]<7unKk*Tik5>;PpAG*crVcBar<;ilrR>p.n,`k9 +4B,a0JrQ4nri?(,!P5\_\dZ!X[CWZLV59`ORZ`:$s*t~> +q#:_MLkq(WSZB'(]"5;l\cB/:\du3[[CWNJ]>]PFVS"csh[Bd3J]"5;r\dc'Y]!\rOZDFCgR[TCnr;V9~> +q#:_MLkq(WSZB'(]"5;l\cB/:\du3[[CWNJ]>]PFVS"csh[Bd3J]"5;r\dc'Y]!\rOZDFCgR[TCnr;V9~> +q#:_MLkq(WSZB'(]"5;l\cB/:\du3[[CWNJ]>]PFVS"csh[Bd3J]"5;r\dc'Y]!\rOZDFCgR[TCnr;V9~> +q>U_KLkq(SSYE0jrj;j>[CWcc\dl-VZECXEY,7M=HXn^)h"1IEo\o`Oo]25f#4;O$"sZE5@;^[V +QD14VX8]NO])B#BZE'gmR[TV"Hi*hn~> +q>U_KLkq(SSYE0jrj;j>[CWcc\dl-VZECXEY,7M=HXn^)h"1IEo\o`Oo]25f#4;O$"sZE5@;^[V +QD14VX8]NO])B#BZE'gmR[TV"Hi*hn~> +q>U_KLkq(SSYE0jrj;j>[CWcc\dl-VZECXEY,7M=HXn^)h"1IEo\o`Oo]25f#4;O$"sZE5@;^[V +QD14VX8]NO])B#BZE'gmR[TV"Hi*hn~> +q>UhNJr#GQSZB0+]"5;l\fA,h]!],\[CWrWZEC@;XJMDJIV;:g7)\`irVcB]r;cK`r;cKfr<)]j +rUg!c"73*O%."$-%OXY>>]PFVSYE0cZF.*O]!^&!!O]N:[0X(=V59`RR$*1!s*t~> +q>UhNJr#GQSZB0+]"5;l\fA,h]!],\[CWrWZEC@;XJMDJIV;:g7)\`irVcB]r;cK`r;cKfr<)]j +rUg!c"73*O%."$-%OXY>>]PFVSYE0cZF.*O]!^&!!O]N:[0X(=V59`RR$*1!s*t~> +q>UhNJr#GQSZB0+]"5;l\fA,h]!],\[CWrWZEC@;XJMDJIV;:g7)\`irVcB]r;cK`r;cKfr<)]j +rUg!c"73*O%."$-%OXY>>]PFVSYE0cZF.*O]!^&!!O]N:[0X(=V59`RR$*1!s*t~> +qYq(QJr#SQSY`Bu[C*TW[CWcc\e;E^[Bcs9Y,8%bOF:tN1(u3tm/?kbo_na\r;?Wfqu$Neq>CCNirUem84:LKV#nnmV;IO^"NL$.7WrfT7[F)Sa[0a.>V59`RR$*8Pq#>j~> +qYq(QJr#SQSY`Bu[C*TW[CWcc\e;E^[Bcs9Y,8%bOF:tN1(u3tm/?kbo_na\r;?Wfqu$Neq>CCNirUem84:LKV#nnmV;IO^"NL$.7WrfT7[F)Sa[0a.>V59`RR$*8Pq#>j~> +qYq(QJr#SQSY`Bu[C*TW[CWcc\e;E^[Bcs9Y,8%bOF:tN1(u3tm/?kbo_na\r;?Wfqu$Neq>CCNirUem84:LKV#nnmV;IO^"NL$.7WrfT7[F)Sa[0a.>V59`RR$*8Pq#>j~> +qYptULlRLaSY`Bp[^rlSrON!:b.7S\rji`MZE(./VPTrOKlUEf*=N?=SF#hF!;-3f!;,p^#5$uX +CEs;mklM5./O<-?Fb5XCU8=piZ2qPEf"(mi])K)EZE(%&V4F'DP)atas*t~> +qYptULlRLaSY`Bp[^rlSrON!:b.7S\rji`MZE(./VPTrOKlUEf*=N?=SF#hF!;-3f!;,p^#5$uX +CEs;mklM5./O<-?Fb5XCU8=piZ2qPEf"(mi])K)EZE(%&V4F'DP)atas*t~> +qYptULlRLaSY`Bp[^rlSrON!:b.7S\rji`MZE(./VPTrOKlUEf*=N?=SF#hF!;-3f!;,p^#5$uX +CEs;mklM5./O<-?Fb5XCU8=piZ2qPEf"(mi])K)EZE(%&V4F'DP)atas*t~> +qYq%WLlRLaV5pZ&[C3ZS]!_LJ!4C.a!4D^8(:CTOX/;_fSW\\NA5YT,%K[%qN6LY\rquiho)/R\ +rV[)qrUfa;`10XL$jPhq#o59^;Ik$+Ng?F=X8fR.]!^G,!4D^8#dq7O[Bcj6V5=0^".GC5L%PCq~> +qYq%WLlRLaV5pZ&[C3ZS]!_LJ!4C.a!4D^8(:CTOX/;_fSW\\NA5YT,%K[%qN6LY\rquiho)/R\ +rV[)qrUfa;`10XL$jPhq#o59^;Ik$+Ng?F=X8fR.]!^G,!4D^8#dq7O[Bcj6V5=0^".GC5L%PCq~> +qYq%WLlRLaV5pZ&[C3ZS]!_LJ!4C.a!4D^8(:CTOX/;_fSW\\NA5YT,%K[%qN6LY\rquiho)/R\ +rV[)qrUfa;`10XL$jPhq#o59^;Ik$+Ng?F=X8fR.]!^G,!4D^8#dq7O[Bcj6V5=0^".GC5L%PCq~> +qu6hDLlRLYRf9,hX0T.@]!],W[Jm`;[Fr+k[Iq*2[Jmc;[2,g>VOa3BKm7B<7OJZI!XoJg:kPjf +h#?p`rUg'eo_nF\o_na\o_nFKjP7tTK3U5H$jPbo$jI_(5uM6;KoMRmV5sU$!4Cgt&@K*W[CWcW +[CWrW]!\iLX/5fd"e(gALjaF;s*t~> +qu6hDLlRLYRf9,hX0T.@]!],W[Jm`;[Fr+k[Iq*2[Jmc;[2,g>VOa3BKm7B<7OJZI!XoJg:kPjf +h#?p`rUg'eo_nF\o_na\o_nFKjP7tTK3U5H$jPbo$jI_(5uM6;KoMRmV5sU$!4Cgt&@K*W[CWcW +[CWrW]!\iLX/5fd"e(gALjaF;s*t~> +qu6hDLlRLYRf9,hX0T.@]!],W[Jm`;[Fr+k[Iq*2[Jmc;[2,g>VOa3BKm7B<7OJZI!XoJg:kPjf +h#?p`rUg'eo_nF\o_na\o_nFKjP7tTK3U5H$jPbo$jI_(5uM6;KoMRmV5sU$!4Cgt&@K*W[CWcW +[CWrW]!\iLX/5fd"e(gALjaF;s*t~> +qu77VLlRX]R[p:UX0T.@]!],\[JdZ<[CWdE\cB.n\cB/:\cB/:])K)HZE'guSXl(&HYZk]1)'Nd +#n/(96tC\0XM)ROe.9dA[&g'nN/WC"6mNES$jPVk%1XU<7TXAPKoMRmV5pZr[/mkHik#/t'"YK^ +[C*TR[Bcj0SXl4:P)b-@nGe"~> +qu77VLlRX]R[p:UX0T.@]!],\[JdZ<[CWdE\cB.n\cB/:\cB/:])K)HZE'guSXl(&HYZk]1)'Nd +#n/(96tC\0XM)ROe.9dA[&g'nN/WC"6mNES$jPVk%1XU<7TXAPKoMRmV5pZr[/mkHik#/t'"YK^ +[C*TR[Bcj0SXl4:P)b-@nGe"~> +qu77VLlRX]R[p:UX0T.@]!],\[JdZ<[CWdE\cB.n\cB/:\cB/:])K)HZE'guSXl(&HYZk]1)'Nd +#n/(96tC\0XM)ROe.9dA[&g'nN/WC"6mNES$jPVk%1XU<7TXAPKoMRmV5pZr[/mkHik#/t'"YK^ +[C*TR[Bcj0SXl4:P)b-@nGe"~> +qu7+RLlRLWQCXkKX/iP6ZMq63])B#>]!],\[Jm`;[G\Ur[Ih$A[^EEHX/;V\QA'a)?qrm+#5J?"% +0$tK)_ +qu7+RLlRLWQCXkKX/iP6ZMq63])B#>]!],\[Jm`;[G\Ur[Ih$A[^EEHX/;V\QA'a)?qrm+#5J?"% +0$tK)_ +qu7+RLlRLWQCXkKX/iP6ZMq63])B#>]!],\[Jm`;[G\Ur[Ih$A[^EEHX/;V\QA'a)?qrm+#5J?"% +0$tK)_ +qu6\FM#ND=QC=A@X/iQ'[0aFP]!],W[CWcRrON!:e%-'tZE(%#SXYq!I<&jr5pm/V!Y?,!3D<[n +I>*ZHSYE0cZEgmu])K,;Z4=:JZF.!=X/2AUR#ZuFBC,YK~> +qu6\FM#ND=QC=A@X/iQ'[0aFP]!],W[CWcRrON!:e%-'tZE(%#SXYq!I<&jr5pm/V!Y?,!3D<[n +I>*ZHSYE0cZEgmu])K,;Z4=:JZF.!=X/2AUR#ZuFBC,YK~> +qu6\FM#ND=QC=A@X/iQ'[0aFP]!],W[CWcRrON!:e%-'tZE(%#SXYq!I<&jr5pm/V!Y?,!3D<[n +I>*ZHSYE0cZEgmu])K,;Z4=:JZF.!=X/2AUR#ZuFBC,YK~> +qu7"WJr#5CP+%r4V5=-krNZO5ZF.":[0F4M]!],\[FVo$[C3KKZDF:iSWJPREb&'61)@S*%i-`\ +:0_[bJr#_`U8t?#[H+q![JI3/X8f$rSHPCIKmR(is*t~> +qu7"WJr#5CP+%r4V5=-krNZO5ZF.":[0F4M]!],\[FVo$[C3KKZDF:iSWJPREb&'61)@S*%i-`\ +:0_[bJr#_`U8t?#[H+q![JI3/X8f$rSHPCIKmR(is*t~> +qu7"WJr#5CP+%r4V5=-krNZO5ZF.":[0F4M]!],\[FVo$[C3KKZDF:iSWJPREb&'61)@S*%i-`\ +:0_[bJr#_`U8t?#[H+q![JI3/X8f$rSHPCIKmR(is*t~> +qu?\Js,I>?Ng?6)SXlVQWr]N,qm-1.!4r-:"hM+Q[CWd&])T2;WsbYmRui>JCLC%03?>g8$PkK] +:0_R_Knu%\Sc5\i[HG.#[K!N5X0V`*rh]Xc"I>.*I9c"9J,~> +qu?\Js,I>?Ng?6)SXlVQWr]N,qm-1.!4r-:"hM+Q[CWd&])T2;WsbYmRui>JCLC%03?>g8$PkK] +:0_R_Knu%\Sc5\i[HG.#[K!N5X0V`*rh]Xc"I>.*I9c"9J,~> +qu?\Js,I>?Ng?6)SXlVQWr]N,qm-1.!4r-:"hM+Q[CWd&])T2;WsbYmRui>JCLC%03?>g8$PkK] +:0_R_Knu%\Sc5\i[HG.#[K!N5X0V`*rh]Xc"I>.*I9c"9J,~> +qu6tNJqAf=Nf]?gQN!HRV>%"kZE*u1s0W-D[CWcW[CWcWrjC^r&[epMX/2AXQB$B;DI?@63AM)Z +!YQ8(5#,?uI=d9:S"ca[ZEh'L[I1U-[CWsK[K!Q3Wski*V59oWRZ`bgJo4QNs*t~> +qu6tNJqAf=Nf]?gQN!HRV>%"kZE*u1s0W-D[CWcW[CWcWrjC^r&[epMX/2AXQB$B;DI?@63AM)Z +!YQ8(5#,?uI=d9:S"ca[ZEh'L[I1U-[CWsK[K!Q3Wski*V59oWRZ`bgJo4QNs*t~> +qu6tNJqAf=Nf]?gQN!HRV>%"kZE*u1s0W-D[CWcW[CWcWrjC^r&[epMX/2AXQB$B;DI?@63AM)Z +!YQ8(5#,?uI=d9:S"ca[ZEh'L[I1U-[CWsK[K!Q3Wski*V59oWRZ`bgJo4QNs*t~> +qu6eGI=d9/reUT7s-\eP8KoVIiU8=ok[CWcRo"+k/#.h4M]!\rOri?$prga7^QB6oVEa7`+J,~> +qu6eGI=d9/reUT7s-\eP8KoVIiU8=ok[CWcRo"+k/#.h4M]!\rOri?$prga7^QB6oVEa7`+J,~> +qu6eGI=d9/reUT7s-\eP8KoVIiU8=ok[CWcRo"+k/#.h4M]!\rOri?$prga7^QB6oVEa7`+J,~> +qZ$PC!eQ,[rJ1c?OHPoqR[Te9RerZRV>RCnZN%<9ZF.*O[CZ:DrON!:qmm!>]"5;\]!_OK't(Wa +[C*'9V4F*;NeMh#B3\M05rft#!Yl_25#,3mGC>('P+%rd"i +R[0+sLj*+as*t~> +qZ$PC!eQ,[rJ1c?OHPoqR[Te9RerZRV>RCnZN%<9ZF.*O[CZ:DrON!:qmm!>]"5;\]!_OK't(Wa +[C*'9V4F*;NeMh#B3\M05rft#!Yl_25#,3mGC>('P+%rd"i +R[0+sLj*+as*t~> +qZ$PC!eQ,[rJ1c?OHPoqR[Te9RerZRV>RCnZN%<9ZF.*O[CZ:DrON!:qmm!>]"5;\]!_OK't(Wa +[C*'9V4F*;NeMh#B3\M05rft#!Yl_25#,3mGC>('P+%rd"i +R[0+sLj*+as*t~> +q>UGAr-eNq%Y]^pNJNUVP*2,sR[Te9r13_]r2]e%"1>_J])K)<]!_OK"1>_O[Iq-0[K!9;U77I/ +Kme/_B4+e97QDL(!YcY15#,3mEd`@lOHuH6V5po0ZF[XH[Jm`;[JdZ?[CWcW[C-">s/Z-qrL3_K +"-.tW:?);(~> +q>UGAr-eNq%Y]^pNJNUVP*2,sR[Te9r13_]r2]e%"1>_J])K)<]!_OK"1>_O[Iq-0[K!9;U77I/ +Kme/_B4+e97QDL(!YcY15#,3mEd`@lOHuH6V5po0ZF[XH[Jm`;[JdZ?[CWcW[C-">s/Z-qrL3_K +"-.tW:?);(~> +q>UGAr-eNq%Y]^pNJNUVP*2,sR[Te9r13_]r2]e%"1>_J])K)<]!_OK"1>_O[Iq-0[K!9;U77I/ +Kme/_B4+e97QDL(!YcY15#,3mEd`@lOHuH6V5po0ZF[XH[Jm`;[JdZ?[CWcW[C-">s/Z-qrL3_K +"-.tW:?);(~> +q#C;5rHJ0f!JQ.)M#ND@OHPomQBmu*R[X5Hrh]Up!2]Xps0;d8]!],Wost44]"7mK(:pob]!\T8 +V4Ep6Lk:%qCM-mM8No-T^B,#g/NH9u?ugICLlI^kSY`0`ZEjJ;"hM+Q[CWsJ[0!qI])B&9X8f$r +Sc>/YP5gODLj`gls*t~> +q#C;5rHJ0f!JQ.)M#ND@OHPomQBmu*R[X5Hrh]Up!2]Xps0;d8]!],Wost44]"7mK(:pob]!\T8 +V4Ep6Lk:%qCM-mM8No-T^B,#g/NH9u?ugICLlI^kSY`0`ZEjJ;"hM+Q[CWsJ[0!qI])B&9X8f$r +Sc>/YP5gODLj`gls*t~> +q#C;5rHJ0f!JQ.)M#ND@OHPomQBmu*R[X5Hrh]Up!2]Xps0;d8]!],Wost44]"7mK(:pob]!\T8 +V4Ep6Lk:%qCM-mM8No-T^B,#g/NH9u?ugICLlI^kSY`0`ZEjJ;"hM+Q[CWsJ[0!qI])B&9X8f$r +Sc>/YP5gODLj`gls*t~> +p&G&&!,MROs)S-`!I]1kIK+otM#ND;OH,?aP5^dGSc,AcX/5frs0DX3%(`jX[CWrW]!],\[C-"F +!k#VIrj!-:V4F':Ne2\"CM.$W;GKD2*PVXe*A'9;=C>ogI=d98QCXbHV>de![04(K[CWsG[/dB. +X8f!uSXQ"1rf.):I +p&G&&!,MROs)S-`!I]1kIK+otM#ND;OH,?aP5^dGSc,AcX/5frs0DX3%(`jX[CWrW]!],\[C-"F +!k#VIrj!-:V4F':Ne2\"CM.$W;GKD2*PVXe*A'9;=C>ogI=d98QCXbHV>de![04(K[CWsG[/dB. +X8f!uSXQ"1rf.):I +p&G&&!,MROs)S-`!I]1kIK+otM#ND;OH,?aP5^dGSc,AcX/5frs0DX3%(`jX[CWrW]!],\[C-"F +!k#VIrj!-:V4F':Ne2\"CM.$W;GKD2*PVXe*A'9;=C>ogI=d98QCXbHV>de![04(K[CWsG[/dB. +X8f!uSXQ"1rf.):I +nc&u-B4l!qDJjK=GC=]6I0#.UqM597LlRLYrg!PQrga(dSc5JcWrTI([0aFP[CWcW[C*TWrj;j> +[C*UFX8e_#QB$cLGB.>/?s$/n4u+.o!YGVW/NH*l=DN,)I>*ZHR[p"Gri?()rNua=[C*UF[K!Q4 +WrTI)V>m(fRZ`^1M#Vl'CYf#@~> +nc&u-B4l!qDJjK=GC=]6I0#.UqM597LlRLYrg!PQrga(dSc5JcWrTI([0aFP[CWcW[C*TWrj;j> +[C*UFX8e_#QB$cLGB.>/?s$/n4u+.o!YGVW/NH*l=DN,)I>*ZHR[p"Gri?()rNua=[C*UF[K!Q4 +WrTI)V>m(fRZ`^1M#Vl'CYf#@~> +nc&u-B4l!qDJjK=GC=]6I0#.UqM597LlRLYrg!PQrga(dSc5JcWrTI([0aFP[CWcW[C*TWrj;j> +[C*UFX8e_#QB$cLGB.>/?s$/n4u+.o!YGVW/NH*l=DN,)I>*ZHR[p"Gri?()rNua=[C*UF[K!Q4 +WrTI)V>m(fRZ`^1M#Vl'CYf#@~> +mJdE%B4PXfCN=IoGPusfJcURWreUT7!f`5%rg!YTSYD\SV#[RqZMq65]!]-H[2?3W[Bd*=V59`K +OGJ^:Ebf;q=Ah^V4>I\e!Yl_-1-SH8B5;^>I>EoLSXlURX/iP,rNcC0rj)O(s/#adrgF(TLkpY2 +I +mJdE%B4PXfCN=IoGPusfJcURWreUT7!f`5%rg!YTSYD\SV#[RqZMq65]!]-H[2?3W[Bd*=V59`K +OGJ^:Ebf;q=Ah^V4>I\e!Yl_-1-SH8B5;^>I>EoLSXlURX/iP,rNcC0rj)O(s/#adrgF(TLkpY2 +I +mJdE%B4PXfCN=IoGPusfJcURWreUT7!f`5%rg!YTSYD\SV#[RqZMq65]!]-H[2?3W[Bd*=V59`K +OGJ^:Ebf;q=Ah^V4>I\e!Yl_-1-SH8B5;^>I>EoLSXlURX/iP,rNcC0rj)O(s/#adrgF(TLkpY2 +I +l2M#tA7T=gCN=W>rHAobGC>(!OHuH.V5=-kriuO)rNcC&s/#ad$C[9DNfJ^> +GB._*g])d~> +l2M#tA7T=gCN=W>rHAobGC>(!OHuH.V5=-kriuO)rNcC&s/#ad$C[9DNfJ^> +GB._*g])d~> +l2M#tA7T=gCN=W>rHAobGC>(!OHuH.V5=-kriuO)rNcC&s/#ad$C[9DNfJ^> +GB._*g])d~> +k5PHe@K'p>CBABoDZ"PSG632:GQ*$jJcLN(L^oT6R[ono[GC>'sLm"'mSY`1\WrTI'X8\sqSc>/YQ3`M,LjaJkEb%kt +s*t~> +k5PHe@K'p>CBABoDZ"PSG632:GQ*$jJcLN(L^oT6R[ono[GC>'sLm"'mSY`1\WrTI'X8\sqSc>/YQ3`M,LjaJkEb%kt +s*t~> +k5PHe@K'p>CBABoDZ"PSG632:GQ*$jJcLN(L^oT6R[ono[GC>'sLm"'mSY`1\WrTI'X8\sqSc>/YQ3`M,LjaJkEb%kt +s*t~> +j8T9^=BJg9AGg* +j8T9^=BJg9AGg* +j8T9^=BJg9AGg* +hZ!UO=8lJ)@/FU9CBSNqF`M^*I0tR^LlIFVP*VQ-Rf8iZV4sgbSc=ugNeiL>Id"cUAg_`Q4&e7LkUP2I +hZ!UO=8lJ)@/FU9CBSNqF`M^*I0tR^LlIFVP*VQ-Rf8iZV4sgbSc=ugNeiL>Id"cUAg_`Q4&e7LkUP2I +hZ!UO=8lJ)@/FU9CBSNqF`M^*I0tR^LlIFVP*VQ-Rf8iZV4sgbSc=ugNeiL>Id"cUAg_`Q4&e7LkUP2I +g]%CG9N"bir`B8-?sI7AB*i?kDK9cEI=6^!re:B."HAM)QBqK +g]%CG9N"bir`B8-?sI7AB*i?kDK9cEI=6^!re:B."HAM)QBqK +g]%CG9N"bir`B8-?sI7AB*i?kDK9cEI=6^!re:B."HAM)QBqK +fDc7F7S-0H;GpS$@:3JRrau@LDK9rFrdFcts+UH3s,d8@reM2=I;IEmJCNjuNI=d')reLW9OH07#!07&7!/:E#s*+K\!b>P2ec1.~> +fDc7F7S-0H;GpS$@:3JRrau@LDK9rFrdFcts+UH3s,d8@reM2=I;IEmJCNjuNI=d')reLW9OH07#!07&7!/:E#s*+K\!b>P2ec1.~> +fDc7F7S-0H;GpS$@:3JRrau@LDK9rFrdFcts+UH3s,d8@reM2=I;IEmJCNjuNI=d')reLW9OH07#!07&7!/:E#s*+K\!b>P2ec1.~> +e,KV45!_b8;HNj"$s[=RB5;:#DK9lBGC0::qLSp"GB\(?B41^@s%`Sc#=1O//KG#s!knUA/M]=P +:0:n3CN=H>rI+]tre:<,rIk6'rI+]d"D_XT=%:^>J,~> +e,KV45!_b8;HNj"$s[=RB5;:#DK9lBGC0::qLSp"GB\(?B41^@s%`Sc#=1O//KG#s!knUA/M]=P +:0:n3CN=H>rI+]tre:<,rIk6'rI+]d"D_XT=%:^>J,~> +e,KV45!_b8;HNj"$s[=RB5;:#DK9lBGC0::qLSp"GB\(?B41^@s%`Sc#=1O//KG#s!knUA/M]=P +:0:n3CN=H>rI+]tre:<,rIk6'rI+]d"D_XT=%:^>J,~> +ci4A:5t4=8:/4\h>[V+AB)l`HD?=j&FoHRbHiA6hEY3)"?tWkL=ADU_8O5X+3AMrd])Vd^%5L+= +:0_1>CN=H>I=6>Y[`:s*t~> +ci4A:5t4=8:/4\h>[V+AB)l`HD?=j&FoHRbHiA6hEY3)"?tWkL=ADU_8O5X+3AMrd])Vd^%5L+= +:0_1>CN=H>I=6>Y[`:s*t~> +ci4A:5t4=8:/4\h>[V+AB)l`HD?=j&FoHRbHiA6hEY3)"?tWkL=ADU_8O5X+3AMrd])Vd^%5L+= +:0_1>CN=H>I=6>Y[`:s*t~> +bPqr,3Bf`#:/Y1r>[V+ABE)cGDZ4GNBDu<<=T;.r8HhCD4u+lD\Glmd/M]=M:/Y2%B5@HdrceBj +!I&nhI11=JHZs[SDJj)t>Y-s(s*t~> +bPqr,3Bf`#:/Y1r>[V+ABE)cGDZ4GNBDu<<=T;.r8HhCD4u+lD\Glmd/M]=M:/Y2%B5@HdrceBj +!I&nhI11=JHZs[SDJj)t>Y-s(s*t~> +bPqr,3Bf`#:/Y1r>[V+ABE)cGDZ4GNBDu<<=T;.r8HhCD4u+lD\Glmd/M]=M:/Y2%B5@HdrceBj +!I&nhI11=JHZs[SDJj)t>Y-s(s*t~> +aSuW'3Bf`(:01P">[Uh9@/ja>B4,+[ra>_-$Vjf!:.[`;5!C_R/[k]Z/IO +aSuW'3Bf`(:01P">[Uh9@/ja>B4,+[ra>_-$Vjf!:.[`;5!C_R/[k]Z/IO +aSuW'3Bf`(:01P">[Uh9@/ja>B4,+[ra>_-$Vjf!:.[`;5!C_R/[k]Z/IO +`W$<$3CZJ5;GpRu='&Z+=9)b)=T2(q8HhCD3B8ZA[/^.X%5Kq-8PWAm?tX+iCN==dEX-Aj?sHc. +8NG/tJ,~> +`W$<$3CZJ5;GpRu='&Z+=9)b)=T2(q8HhCD3B8ZA[/^.X%5Kq-8PWAm?tX+iCN==dEX-Aj?sHc. +8NG/tJ,~> +`W$<$3CZJ5;GpRu='&Z+=9)b)=T2(q8HhCD3B8ZA[/^.X%5Kq-8PWAm?tX+iCN==dEX-Aj?sHc. +8NG/tJ,~> +_uBip3Bfo(r(d5h"'AH!=Ski!8O5X+3AN?;/$f0`-S7)65!_b<='T-GBDu]HDZ4DPDJT5a#%Ut: +:.[o8ci8L~> +_uBip3Bfo(r(d5h"'AH!=Ski!8O5X+3AN?;/$f0`-S7)65!_b<='T-GBDu]HDZ4DPDJT5a#%Ut: +:.[o8ci8L~> +_uBip3Bfo(r(d5h"'AH!=Ski!8O5X+3AN?;/$f0`-S7)65!_b<='T-GBDu]HDZ4DPDJT5a#%Ut: +:.[o8ci8L~> +_#FTo3B98h5t:iFqbI&\#!kF:3AN?;YlF\S"u82&5tOsUr`fG2r+H%;s'u@>=&MUZ5s@-Ns*t~> +_#FTo3B98h5t:iFqbI&\#!kF:3AN?;YlF\S"u82&5tOsUr`fG2r+H%;s'u@>=&MUZ5s@-Ns*t~> +_#FTo3B98h5t:iFqbI&\#!kF:3AN?;YlF\S"u82&5tOsUr`fG2r+H%;s'u@>=&MUZ5s@-Ns*t~> +^Ae9e1-%Ao4p4GC8O5rG62j%N3AN06/$8jO/cRRA3Bf`#8PW#Y=BJg0=BABq;G9PL4>Jb;s*t~> +^Ae9e1-%Ao4p4GC8O5rG62j%N3AN06/$8jO/cRRA3Bf`#8PW#Y=BJg0=BABq;G9PL4>Jb;s*t~> +^Ae9e1-%Ao4p4GC8O5rG62j%N3AN06/$8jO/cRRA3Bf`#8PW#Y=BJg0=BABq;G9PL4>Jb;s*t~> +]Di*f1,:jR5!_L555mSA1B/r+rsC,*/M](A3C,r#7fGs[:.bFSs$6]H1bHlMJ,~> +]Di*f1,:jR5!_L555mSA1B/r+rsC,*/M](A3C,r#7fGs[:.bFSs$6]H1bHlMJ,~> +]Di*f1,:jR5!_L555mSA1B/r+rsC,*/M](A3C,r#7fGs[:.bFSs$6]H1bHlMJ,~> +\GlO\pG2_"V#LNE/M\pW1&s913W:f6/]dsB~> +\GlO\pG2_"V#LNE/M\pW1&s913W:f6/]dsB~> +\GlO\pG2_"V#LNE/M\pW1&s913W:f6/]dsB~> +[/U=^-S6\n/LR.ioe",^J,~> +[/U=^-S6\n/LR.ioe",^J,~> +[/U=^-S6\n/LR.ioe",^J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +JcC<$J,~> +%%EndData +showpage +%%Trailer +end +%%EOF diff --git a/IEEEtran/extras/tux.pdf b/IEEEtran/extras/tux.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c690de7194a3a4cb6949fd2c714ecf996f8c4190 GIT binary patch literal 19349 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 J)xW<9z5#8(Hc0>g literal 0 HcmV?d00001 diff --git a/IEEEtran/testflow/README b/IEEEtran/testflow/README new file mode 100644 index 0000000..61145c3 --- /dev/null +++ b/IEEEtran/testflow/README @@ -0,0 +1,82 @@ + +January 10, 2007 + + +This is the "testflow" diagnostic suite which is designed to test LaTeX +"print work flow" and to provide lots of helpful information to assist +users in getting their LaTeX system configured and/or upgraded in order +to produce good PS/PDF output. + +Although originally designed for IEEEtran users, testflow will be of +interest to anyone who uses LaTeX to make PostScript or PDF output. + +Extensive usage documentation is contained in "testflow_doc.pdf" + +The control test reference files are available in both PostScript and PDF, +each in A4 and US Letter paper sizes. + + +For helpful tips, answers to frequently asked questions and other support, +visit the testflow home page at my website: + +http://www.michaelshell.org/tex/testflow/ + + +Enjoy! + +Michael Shell +http://www.michaelshell.org/ + +******* +Version 1.1 (2007/01/10) changes: + + 1. New duplex page test. + + 2. New test for Palladio hinting. + + 3. Updated documentation to cover the newer systems. + +********************************* Files ********************************** + +README - This file. + +testflow_doc.pdf - The user manual. + +testflow.tex - The LaTeX test file. + +testflow_ctl_LTR.ps - Control file in PostScript, US Letter paper format. + +testflow_ctl_LTR.pdf - Control file in PDF, US Letter paper format. + +testflow_ctl_A4.ps - Control file in PostScript, A4 paper format. + +testflow_ctl_A4.pdf - Control file in PDF, A4 paper format. + +*************************************************************************** +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** + +File list of work: testflow_doc.pdf, testflow.tex, testflow_ctl_LTR.ps, + testflow_ctl_LTR.pdf, testflow_ctl_A4.ps, + testflow_ctl_A4.pdf + +*************************************************************************** diff --git a/IEEEtran/testflow/testflow.tex b/IEEEtran/testflow/testflow.tex new file mode 100644 index 0000000..550bb83 --- /dev/null +++ b/IEEEtran/testflow/testflow.tex @@ -0,0 +1,592 @@ + +%% testflow.tex +%% V1.1 +%% 2009/01/10 +%% Copyright (c) 2002-2009 by Michael Shell and The LaTeX3 Project +%% See: http://www.michaelshell.org/ +%% for current contact information. +%% +%% A test page based on Rainer Schoepf's testpage.tex which is part of the +%% LaTeX2e system with added modifications to add tests to verify PS/PDF +%% output by Michael Shell. +%% +%% For complete usage documentation, see the file testflow_doc.pdf +%% +%% Support sites: +%% http://www.michaelshell.org/tex/testflow/ +%% http://www.ctan.org/pkg/testflow +%% +%%************************************************************************* +%% Legal Notice: +%% This code is offered as-is without any warranty either expressed or +%% implied; without even the implied warranty of MERCHANTABILITY or +%% FITNESS FOR A PARTICULAR PURPOSE! +%% User assumes all risk. +%% In no event shall the IEEE or any contributor to this code be liable for +%% any damages or losses, including, but not limited to, incidental, +%% consequential, or any other damages, resulting from the use or misuse +%% of any information contained here. +%% +%% All comments are the opinions of their respective authors and are not +%% necessarily endorsed by the IEEE. +%% +%% This work is distributed under the LaTeX Project Public License (LPPL) +%% ( http://www.latex-project.org/ ) version 1.3, and may be freely used, +%% distributed and modified. A copy of the LPPL, version 1.3, is included +%% in the base LaTeX documentation of all distributions of LaTeX released +%% 2003/12/01 or later. +%% Retain all contribution notices and credits. +%% ** Modified files should be clearly indicated as such, including ** +%% ** renaming them and changing author support contact information. ** +%% +%% File list of work: testflow.tex, testflow_ctl_A4.ps, testflow_ctl_A4.pdf, +%% testflow_ctl_LTR.ps, testflow_ctl_LTR.pdf, +%% testflow_doc.pdf +%%************************************************************************* +% +% Changelog: +% +% 1.1 (2007/01/10) +% 1. new duplex test +% 2. tests for Palladio hinting +% +% 1.0 (2002/04/08) Initial release + + + + +% ***** To prevent testflow from prompting user on the console, ***** +% ***** uncomment one each of the two pairs below: ***** +% +% *** paper size (choose one) *** +%\def\papertype{letterpaper} +%\def\papertype{a4paper} +% +% *** duplex page test (choose one) *** +%\def\makeduplexpage{yes} +%\def\makeduplexpage{no} + + + + +\def\docversion{1.1} +\def\docbuildcode{0000} + +\newif\ifmakeduplextest +\makeduplextestfalse +\newif\ifneeduserresponse +\needuserresponsetrue + +\def\useryesstring{yes} +\def\usernostring{no} +\def\userystring{y} +\def\usernstring{n} + +\ifx\papertype\TESTFLOWundefined +\typeout{} +\typeout{ This is the testflow.tex (V\docversion) test page generator.} +\typeout{ See the testflow_doc.pdf file for full documentation.} + +\typeout{} +\typeout{**********************************************************} +\typeout{* Enter paper type in form of document class option,% +\space\space\space\space\space*} +\typeout{* e.g., `a4paper' or `letterpaper' (without the quotes).\space*} +\typein[\papertype]{******************************************% +****************} +\fi + +\ifx\makeduplexpage\TESTFLOWundefined +\loop +\typeout{} +\typeout{**************************************************************} +\typeout{* Do you wish to make a second page to test duplex printing?% +\space*} +\typeout{* Enter `yes' or `no' (without the quotes).% +\space\space\space\space\space\space\space\space\space\space\space\space\space +\space\space\space\space\space*} +\typein[\makeduplexpage]{******************************************% +********************} +\ifx\makeduplexpage\useryesstring\makeduplextesttrue\needuserresponsefalse\fi +\ifx\makeduplexpage\usernostring\makeduplextestfalse\needuserresponsefalse\fi +\ifx\makeduplexpage\userystring\makeduplextesttrue\needuserresponsefalse\fi +\ifx\makeduplexpage\usernstring\makeduplextestfalse\needuserresponsefalse\fi +\ifneeduserresponse +\repeat +\else +\ifx\makeduplexpage\useryesstring\makeduplextesttrue\fi +\ifx\makeduplexpage\userystring\makeduplextesttrue\fi +\fi + + + +% declare symbols for lasy test +\DeclareSymbolFont{lasy}{U}{lasy}{m}{n} +\SetSymbolFont{lasy}{bold}{U}{lasy}{b}{n} +\DeclareMathSymbol\lasymho {\mathord}{lasy}{"30} +\DeclareMathSymbol\lasyJoin {\mathrel}{lasy}{"31} +\DeclareMathSymbol\lasyBox {\mathord}{lasy}{"32} +\DeclareMathSymbol\lasyDiamond {\mathord}{lasy}{"33} +\DeclareMathSymbol\lasyleadsto {\mathrel}{lasy}{"3B} +\DeclareMathSymbol\lasysqsubset{\mathrel}{lasy}{"3C} +\DeclareMathSymbol\lasysqsupset{\mathrel}{lasy}{"3D} +\DeclareMathSymbol\lasylhd {\mathbin}{lasy}{"01} +\DeclareMathSymbol\lasyunlhd {\mathbin}{lasy}{"02} +\DeclareMathSymbol\lasyrhd {\mathbin}{lasy}{"03} +\DeclareMathSymbol\lasyunrhd {\mathbin}{lasy}{"04} + + + +\documentclass[\papertype, 10pt]{article} + +\typeout{-- Option summary:} +\typeout{-- Paper size: \papertype} +\ifmakeduplextest +\typeout{-- With duplex test page} +\else +\typeout{-- No duplex test page} +\fi + +% enable Times fonts +\renewcommand{\sfdefault}{phv} +\renewcommand{\rmdefault}{ptm} +\renewcommand{\ttdefault}{pcr} + +\def\fontsubfuzz{.9pt} + +\def\tenptsize{\fontsize{10}{12pt}\selectfont} +\def\nineptsize{\fontsize{9}{11pt}\selectfont} +\def\eightptsize{\fontsize{8}{10pt}\selectfont} +\def\sevenptsize{\fontsize{7}{9pt}\selectfont} +\def\sixptsize{\fontsize{6}{8pt}\selectfont} +\def\fiveptsize{\fontsize{5}{7pt}\selectfont} + + +\pagestyle{empty} +\thispagestyle{empty} + +\nofiles + +\setlength{\oddsidemargin}{0pt} +\setlength{\evensidemargin}{0pt} +\setlength{\marginparwidth}{1in} +\setlength{\marginparsep}{0pt} + +\setlength{\topmargin}{0pt} +\setlength{\headheight}{0pt} +\setlength{\headsep}{0pt} +\setlength{\topskip}{0pt} + +\setlength{\footskip}{0pt} + +\setlength{\textwidth}{\paperwidth} +\addtolength{\textwidth}{-2in} +\setlength{\textheight}{\paperheight} +\addtolength{\textheight}{-2in} + +\setlength{\parindent}{0pt} +\setlength{\parskip}{0pt} + +\setlength{\unitlength}{1sp} + + +\newcounter{textheight} +\newcounter{textwidth} + +\setcounter{textheight}{\textheight} +\setcounter{textwidth}{\textwidth} + + + +\newlength{\help} + +\newcounter{help} + +\newcounter{in} +\newcounter{halfin} +\newcounter{fifthin} +\newcounter{tenthin} +\newcounter{twtin} + +\newcounter{mm} +\newcounter{tmm} +\newcounter{frmm} +\newcounter{fvmm} +\newcounter{tenmm} + +\newcounter{foo} + +\newcounter{x} +\newcounter{y} + +\newcommand{\addtox}{\addtocounter{x}} +\newcommand{\addtoy}{\addtocounter{y}} + +\newcommand{\putxy}{\put(\value{x},\value{y})} +\newcommand{\multiputxy}{\multiput(\value{x},\value{y})} + +\newcommand{\sethelpcounter}[2]{% + \setlength{\help}{#2}\setcounter{#1}{\help}} + + +\newenvironment{testflowpage}{\setlength{\help}{1in} +\setcounter{in}{\help} + +\setlength{\help}{0.5in} +\setcounter{halfin}{\help} + +\setlength{\help}{0.2in} +\setcounter{fifthin}{\help} + +\setlength{\help}{0.1in} +\setcounter{tenthin}{\help} + +\setlength{\help}{0.05in} +\setcounter{twtin}{\help} + + +\setlength{\help}{1mm} +\setcounter{mm}{\help} + +\setlength{\help}{2mm} +\setcounter{tmm}{\help} + +\setlength{\help}{4mm} +\setcounter{frmm}{\help} + +\setlength{\help}{5mm} +\setcounter{fvmm}{\help} + +\setlength{\help}{10mm} +\setcounter{tenmm}{\help} + + +\begin{picture}(0,0) +\scriptsize + +\put(0,-\value{textheight}){% + \framebox(\value{textwidth},\value{textheight}){}} + +% left mm ruler +\setcounter{x}{0} +\sethelpcounter{y}{-0.45\textheight} +\putxy{\line(-1,0){\value{in}}} + + +\addtox{-\value{fvmm}} +\addtoy{-\value{tmm}} +\multiputxy(-\value{fvmm},0){5}{\line(0,1){\value{frmm}}} + + +\addtoy{\value{mm}} +\multiput(-\value{mm},\value{y})(-\value{mm},0){25}% + {\line(0,1){\value{tmm}}} + +\addtoy{\value{frmm}} +\setcounter{foo}{5} +\multiput(-\value{fvmm},\value{y})(-\value{fvmm},0){4}{% + \makebox(0,0){\arabic{foo}}\addtocounter{foo}{5}} + + +% left in ruler +\setcounter{x}{0} +\sethelpcounter{y}{-0.55\textheight} +\putxy{\line(-1,0){\value{in}}} + +\addtox{-\value{tenthin}} +\addtoy{-\value{tenthin}} +\multiputxy(-\value{tenthin},0){10}{\line(0,1){\value{fifthin}}} + +\addtox{\value{twtin}} +\addtoy{\value{twtin}} +\multiputxy(-\value{tenthin},0){10}{\line(0,1){\value{tenthin}}} + +\setcounter{foo}{1} + +\addtox{-\value{twtin}} +\addtoy{\value{tenthin}} +\addtoy{\value{tenthin}} +\multiputxy(-\value{tenthin},0){9}{% + \makebox(0,0){\arabic{foo}}\addtocounter{foo}{1}} + +% right mm ruler +\sethelpcounter{x}{\textwidth} +\sethelpcounter{y}{-0.45\textheight} +\putxy{\line(1,0){\value{in}}} + +\addtox{\value{mm}} +\addtoy{-\value{mm}} +\multiputxy(\value{mm},0){25}{\line(0,1){\value{tmm}}} + +\addtox{\value{frmm}} +\addtoy{-\value{mm}} +\multiputxy(\value{fvmm},0){5}{\line(0,1){\value{frmm}}} + +\addtoy{\value{fvmm}} +\setcounter{foo}{5} +\multiputxy(\value{fvmm},0){4}{% + \makebox(0,0){\arabic{foo}}\addtocounter{foo}{5}} + +% right in ruler +\sethelpcounter{x}{\textwidth} +\sethelpcounter{y}{-0.55\textheight} +\putxy{\line(1,0){\value{in}}} + +\addtox{\value{tenthin}} +\addtoy{-\value{tenthin}} +\multiputxy(\value{tenthin},0){10}{% + \line(0,1){\value{fifthin}}} + +\addtox{-\value{twtin}} +\addtoy{\value{twtin}} +\multiputxy(\value{tenthin},0){10}{% + \line(0,1){\value{tenthin}}} + +\setcounter{foo}{1} +\addtox{\value{twtin}} +\addtoy{\value{tenthin}} +\addtoy{\value{tenthin}} +\multiputxy(\value{tenthin},0){9}{% + \makebox(0,0){\arabic{foo}}\addtocounter{foo}{1}} + + +% top mm ruler +\sethelpcounter{x}{0.45\textwidth} +\setcounter{y}{0} +\putxy{\line(0,1){\value{in}}} + +\addtox{-\value{tmm}} +\addtoy{\value{fvmm}} +\multiputxy(0,\value{fvmm}){5}{\line(1,0){\value{frmm}}} + +\addtox{\value{mm}} +\addtoy{-\value{frmm}} +\multiputxy(0,\value{mm}){25}{\line(1,0){\value{tmm}}} + +\setcounter{foo}{5} +\addtox{-\value{tmm}} +\addtoy{-\value{mm}} +\addtoy{\value{fvmm}} +\multiputxy(0,\value{fvmm}){4}{% + \makebox(0,0){\arabic{foo}\rule{5pt}{0pt}}\addtocounter{foo}{5}} + +% top in ruler +\sethelpcounter{x}{0.55\textwidth} +\setcounter{y}{0} +\putxy{\line(0,1){\value{in}}} + +\addtox{-\value{tenthin}} +\addtoy{\value{tenthin}} +\multiputxy(0,\value{tenthin}){10}{\line(1,0){\value{fifthin}}} + +\addtox{\value{twtin}} +\addtoy{-\value{twtin}} +\multiputxy(0,\value{tenthin}){10}{\line(1,0){\value{tenthin}}} + +\setcounter{foo}{1} +\addtox{-\value{tenthin}} +\addtoy{\value{twtin}} +\multiputxy(0,\value{tenthin}){9}{% + \makebox(0,0){\arabic{foo}}\addtocounter{foo}{1}} + +% bottom mm ruler +\sethelpcounter{x}{0.45\textwidth} +\setcounter{y}{-\textheight} +\putxy{\line(0,-1){\value{in}}} + +\addtox{-\value{tmm}} +\addtoy{-\value{fvmm}} +\multiputxy(0,-\value{fvmm}){5}{\line(1,0){\value{frmm}}} + +\addtox{\value{mm}} +\addtoy{\value{frmm}} +\multiputxy(0,-\value{mm}){25}{\line(1,0){\value{tmm}}} + +\setcounter{foo}{5} +\addtox{-\value{tmm}} +\addtoy{\value{mm}} +\addtoy{-\value{fvmm}} +\multiputxy(0,-\value{fvmm}){4}{% + \makebox(0,0){\arabic{foo}\rule{5pt}{0pt}}\addtocounter{foo}{5}} + + +% bottom in ruler +\sethelpcounter{x}{0.55\textwidth} +\setcounter{y}{-\textheight} +\putxy{\line(0,-1){\value{in}}} + +\addtox{-\value{tenthin}} +\addtoy{-\value{tenthin}} +\multiputxy(0,-\value{tenthin}){10}{\line(1,0){\value{fifthin}}} + +\addtox{\value{twtin}} +\addtoy{\value{twtin}} +\multiputxy(0,-\value{tenthin}){10}{\line(1,0){\value{tenthin}}} + +\setcounter{foo}{1} +\addtox{-\value{tenthin}} +\addtoy{-\value{twtin}} +\multiputxy(0,-\value{tenthin}){9}{% + \makebox(0,0){\arabic{foo}}\addtocounter{foo}{1}} + + +\end{picture} + +\setlength{\help}{\textwidth} +\addtolength{\help}{-1.25in} + +\vspace*{\baselineskip} +\mbox{}\hfill +\begin{minipage}{\help}\relax} +% end of testpage environment +{\end{minipage}\hfill\mbox{}\vfill\mbox{}} + + +\begin{document} + + +\begin{testflowpage} + +\centerline{\Huge A Test for \LaTeX\ PS/PDF Printing} +\vspace{0.75\baselineskip} +\centerline{\large Version \docversion\hspace{0.2in} Build Code: \docbuildcode} +\vspace{0.75\baselineskip} +\centerline{\large See the testflow home page for the latest news and FAQ:} +\centerline{\texttt{\footnotesize http://www.michaelshell.org/tex/testflow/}} +\vspace{1.5\baselineskip} +\centerline{\large\bfseries\scshape Notes} +\vspace{0.5\baselineskip} + +Document paper type selected under \LaTeX: \mbox{\ttfamily\papertype}\\ +Depends only on the base article.cls --- no other external packages are loaded.\\ +The main text font is Times Roman, the math font is Computer Modern.\\ +Imperial (0.1in) and metric (mm) rulers are provided to measure centering.\\ +The frame on this page should be centered on the paper and 1in (25.4mm) from the edges.\\ +To maintain accurate dimensions, do not scale page when printing.\\ +(i.e., deselect any ``fit to page" or ``shrink/expand page" options.)\\ +For complete usage information, read the \texttt{testflow\_doc.pdf} file. + +\vspace{1.0\baselineskip} +\centerline{\large\bfseries\scshape Palladio Font Hinting Test} +\vspace{0.5\baselineskip} + +\centerline{\renewcommand{\rmdefault}{ppl}\rmfamily\bfseries This is in bold Palatino/Palladio.} + + +\vspace{1.0\baselineskip} +\centerline{\large\bfseries\scshape Ligature Test} +\vspace{0.5\baselineskip} + +\makebox[0.85in][l]{\textbf{Ligatures}} ---~~~The office was affected by the five flawed mufflers. + +\makebox[0.85in][l]{\textbf{No Ligatures}} ---~~~The of\/f\/ice was a\/f\/fected by the f\/ive f\/lawed muf\/f\/lers. + + +\vspace{1.0\baselineskip} +\centerline{\large\bfseries\scshape Math Tests} +\vspace{0.5\baselineskip} + +\centerline{\normalsize\bfseries Large Delimiter and Operator Test} +\begin{center} +\begin{math} +I = \left[ + \begin{array}{cc} + 1 & 0\\ + 0 & 1 + \end{array} + \right]\quad \mbox{and} +\quad\Bigg(\sum\limits_{i=0}^{2} 2^i = 7 \Bigg) +\end{math} +\end{center} + +\vspace{0.25\baselineskip} + +\centerline{\normalsize\bfseries Minus Sign Test} +\begin{center} +\begin{math} +\mbox{If } a = 4\mbox{, then: } 2^{-a + 7} - 2^{a-3} = 2^{3} - 2^{1} = 6 +\end{math} +\end{center} + +\vspace{0.1\baselineskip} +\centerline{\normalsize\bfseries Problem Character, Times Roman and Font Kerning Tests} +\vspace{0.5\baselineskip} +% here is how we would directly access them within cmmi10 +%{\fontencoding{OML}\fontfamily{cmm}\fontshape{it}\selectfont +%\symbol{0}\hspace{1ex}\symbol{9}\hspace{1ex}\symbol{10}\hspace{1ex}\symbol{13} +%\hspace{1ex}\symbol{32}\hspace{1ex}\symbol{127}} +\centerline{\normalfont Math italic glyphs: $\mathnormal{\Gamma,~\Psi,~\Omega,~\gamma,~\psi,~\mbox{\t{\mbox{}\mbox{}}}}$} +\vspace{0.25\baselineskip} +\centerline{Large Times Roman italic: {\LARGE \textit{z}}\qquad GS kerning test: {\footnotesize The ``Problematic" little quotes.}} + +\vspace{0.25\baselineskip} +{\footnotesize\textbf{Note:} The math italic glyphs are in the control character positions +0, 9, 10, 13, 32 and 127.\hfill\\ +i.e., \texttt{\string\Gamma}, \texttt{\string\Psi}, \texttt{\string\Omega}, +\texttt{\string\gamma}, \texttt{\string\psi}, and the \texttt{\string\t\{xx\}} tie-after accent, respectively.} + + +\vspace{1.0\baselineskip} +\centerline{\large\bfseries\scshape Picture and Lasy Fonts Test} +\vspace{0.5\baselineskip} + +\def\lasyglyphs{\lasymho, \lasyJoin, \lasyBox, +\lasyDiamond, \lasyleadsto, \lasysqsubset, \lasysqsupset, +\lasylhd, \lasyunlhd, \lasyrhd, \lasyunrhd} + +\setlength{\unitlength}{1cm} + +\begin{center} + +\begin{picture}(12,2.4) +\qbezier(0,2.4)(2.25,2.8)(4.5,2.4) +\put(1,1.8){\oval(1,1)[tl]} +\put(3.5,1.8){\oval(1,1)[tr]} +\put(2.25,1.9){\oval(4,1)[t]} +\put(.2,1.5){\oval(1,2.2)[l]} +\put(1.5,1.5){\circle*{0.1}} +\put(1.5,1.5){\circle{1.2}} +\put(1.5,1.5){\vector(0,1){0.6}} +\put(1.5,1.5){\vector(1,0){0.6}} +\put(1.5,1.5){\vector(0,-1){0.6}} +\put(1.5,1.5){\vector(-1,0){0.6}} +\thicklines +\qbezier(0,0.6)(2.25,0.2)(4.5,0.6) +\put(0,0){\vector(1,0){11.5}} +\put(3,1.5){\circle*{0.1}} +\put(3,1.5){\circle{1.2}} +\put(3,1.5){\vector(0,1){0.6}} +\put(3,1.5){\vector(1,0){0.6}} +\put(3,1.5){\vector(0,-1){0.6}} +\put(3,1.5){\vector(-1,0){0.6}} +\put(1,1.2){\oval(1,1)[bl]} +\put(3.5,1.2){\oval(1,1)[br]} +\put(2.25,1.1){\oval(4,1)[b]} +\put(4.3,1.5){\oval(1,2.2)[r]} +\put(4.9,2.4){\makebox[0.75in][r]{10pt bold:\hspace{0.1in}}\tenptsize\boldmath$\lasyglyphs$} +\put(4.9,2.0){\makebox[0.75in][r]{10pt:\hspace{0.1in}}\tenptsize$\lasyglyphs$} +\put(4.9,1.65){\makebox[0.75in][r]{\nineptsize9pt:\hspace{0.1in}}\nineptsize$\lasyglyphs$} +\put(4.9,1.35){\makebox[0.75in][r]{\eightptsize8pt:\hspace{0.1in}}\eightptsize$\lasyglyphs$} +\put(4.9,1.1){\makebox[0.75in][r]{\sevenptsize7pt:\hspace{0.1in}}\sevenptsize$\lasyglyphs$} +\put(4.9,0.875){\makebox[0.75in][r]{\sixptsize6pt:\hspace{0.1in}}\sixptsize$\lasyglyphs$} +\put(4.9,0.675){\makebox[0.75in][r]{\fiveptsize5pt:\hspace{0.1in}}\fiveptsize$\lasyglyphs$} +\end{picture} +\end{center} +\end{testflowpage} + + +% Optional duplex test page +\ifmakeduplextest +\newpage +\begin{testflowpage} +\centerline{\Huge A Test for \LaTeX\ PS/PDF Printing} +\vspace{0.75\baselineskip} +\centerline{\large Version \docversion\hspace{0.2in} Build Code: \docbuildcode} +\vspace{1.0\baselineskip} +\centerline{\large\bfseries\scshape Duplex Alignment Test Side} +\mbox{}\vfill\mbox{} +\end{testflowpage} +\fi + +\end{document} + diff --git a/IEEEtran/testflow/testflow_ctl_A4.pdf b/IEEEtran/testflow/testflow_ctl_A4.pdf new file mode 100644 index 0000000000000000000000000000000000000000..dc188be4446cceea23d5359783f6dd2f371bcb3a GIT binary patch literal 74762 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­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

3zge@3H~D%dRa(d|Bds%Yu6N4gG%Up^b* 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�&+a|;% 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%0Ahg--K6+F<32=g%7>4*FKNE_ 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�bU_N42{WpUB%k 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⁣ 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 \catcode`\(=12 \catcode`\)=12 \catcode`\[=12 +\catcode`\]=12 \catcode`\==12 \catcode`\|=12} +% Sets the category codes for numbers to their normal values. +% For local use with argument scanning. +\def\IEEEnormalcatcodesnum{\catcode`\0=12 \catcode`\1=12 \catcode`\2=12 +\catcode`\3=12 \catcode`\4=12 \catcode`\5=12 \catcode`\6=12 \catcode`\7=12 +\catcode`\8=12 \catcode`\9=12} +% combined action of \IEEEnormalcatcodespunct and \IEEEnormalcatcodesnum +\def\IEEEnormalcatcodes{\IEEEnormalcatcodespunct\IEEEnormalcatcodesnum} + + +% usage: \@IEEEstripouterbraces*{} +% \@IEEEstripouterbraces fully expands its argument (which it then stores +% in \@IEEEstripouterbracesarg) via \edef, then removes any outer enclosing +% braces, and finally stores the result in the macro +% \@IEEEstrippedouterbraces. +% +% For example: +% \@IEEEstripouterbraces{{{{ab}c}}} +% results in: +% +% \@IEEEstripouterbracesarg ==> a macro containing {{{ab}c}} +% \@IEEEstrippedouterbraces ==> a macro containing {ab}c +% +% the *-star form,\@IEEEstripouterbraces*, does not expand the argument +% contents during processing +\def\@IEEEstripouterbraces{\@ifstar{\let\@IEEEstripouterbracesdef=\def\@@IEEEstripouterbraces}{\let\@IEEEstripouterbracesdef=\edef\@@IEEEstripouterbraces}} + +\def\@@IEEEstripouterbraces#1{\@IEEEstripouterbracesdef\@IEEEstripouterbracesarg{#1}\relax +% If the macro is unchanged after being acquired as a single delimited +% argument, we know we have one sequence of tokens without any enclosing +% braces. Loop until this is true. +\loop + \expandafter\@@@IEEEstripouterbraces\@IEEEstripouterbracesarg\@IEEEgeneralsequenceDELIMITER +\ifx\@IEEEstrippedouterbraces\@IEEEstripouterbracesarg +\else + \let\@IEEEstripouterbracesarg\@IEEEstrippedouterbraces +\repeat} + +\def\@@@IEEEstripouterbraces#1\@IEEEgeneralsequenceDELIMITER{\def\@IEEEstrippedouterbraces{#1}} + + + +% usage: \@IEEEextractgroup*{} +% \@IEEEextractgroup fully expands its argument (which it then stores in +% \@IEEEextractgrouparg) via \edef and then assigns the first "brace group" +% of tokens to the macro \@IEEEextractedgroup. +% The remaining groups, if any, are stored in the macro +% \@IEEEextractedgroupremain. If the argument does not contain the requisite +% groups, the respective macros will be defined to be empty. +% There is an asymmetry in that \@IEEEextractedgroup is stripped of its first +% outer grouping while \@IEEEextractedgroupremain retains even the outer +% grouping (if present) that originally identified it as a group. +% +% For example: +% \@IEEEextractgroup{{{ab}}{c{de}}} +% results in: +% +% \@IEEEextractgrouparg ==> a macro containing {{ab}}{c{de}} +% \@IEEEextractedgroup ==> a macro containing {ab} +% \@IEEEextractedgroupremain ==> a macro containing {c{de}} +% +% The *-star form, \@IEEEextractgroup*, does not expand its argument +% contents during processing. +\def\@IEEEextractgroup{\@ifstar{\let\@IEEEextractgroupdef=\def\@@IEEEextractgroup}{\let\@IEEEextractgroupdef=\edef\@@IEEEextractgroup}} + +\def\@@IEEEextractgroup#1{\@IEEEextractgroupdef\@IEEEextractgrouparg{#1}\relax +% trap the case of an empty extracted group as this would cause problems with +% \@IEEEextractgroupremain's argument acquisition +\ifx\@IEEEextractgrouparg\@empty + \def\@IEEEextractedgroup{}\relax + \def\@IEEEextractedgroupremain{}\relax +\else + % We have to use some dirty tricks here. We want to insert {} around + % whatever remains after the first group so that TeX's argument scanner + % will preserve any originally enclosing braces as well as provide an + % empty argument to acquire even if there isn't a second group. + % In this first of two dirty tricks, we put a } at the end of the structure + % we are going to extract from. The \ifnum0=`{\fi keeps TeX happy to allow + % what would otherwise be an unbalanced macro definition for + % \@@IEEEextractgroup to be acceptable to it. + \ifnum0=`{\fi\expandafter\@IEEEextractgroupremain\@IEEEextractgrouparg}\relax +\fi} + +% In the second part of the dirty tricks, we insert a leading { right after +% the first group is acquired, but before the remainder is. Again, the +% \ifnum0=`}\fi keeps TeX happy during definition time, but will disappear +% during run time. +\def\@IEEEextractgroupremain#1{\def\@IEEEextractedgroup{#1}\expandafter\@@IEEEextractgroupremain\expandafter{\ifnum0=`}\fi} + +\def\@@IEEEextractgroupremain#1{\def\@IEEEextractedgroupremain{#1}} + + + +% usage: \@IEEEextracttoken*{} +% \@IEEEextracttoken fully expands its argument (which it then stores in +% \@IEEEextracttokenarg) via \edef and then the meaning of the first +% nonbrace (but including the empty group) token found is assigned via \let +% to \@IEEEextractedtoken as well as stored in the macro +% \@IEEEextractedtokenmacro. Tokens that would otherwise be discarded during +% the acquisition of the first are stored in \@IEEEextractedtokensdiscarded, +% however their original relative brace nesting depths are not guaranteed to +% be preserved. +% If the argument is empty, or if a first nonbrace token does not exist (or +% is an empty group), \@IEEEextractedtoken will be \relax and +% \@IEEEextractedtokenmacro and \@IEEEextractedtokensdiscarded will be empty. +% +% For example: +% \@IEEEextracttoken{{{ab}{cd}}{{ef}g}} +% results in: +% +% \@IEEEextracttokenarg ==> a macro containing {{ab}{cd}}{{ef}g} +% \@IEEEextractedtoken ==> the letter a +% \@IEEEextractedtokenmacro ==> a macro containing a +% \@IEEEextractedtokensdiscarded ==> a macro containing bcd{ef}g +% +% the *-star form, \@IEEEextracttoken*, does not expand its argument +% contents during processing. +\def\@IEEEextracttoken{\@ifstar{\let\@IEEEextracttokendef=\def\@@IEEEextracttoken}{\let\@IEEEextracttokendef=\edef\@@IEEEextracttoken}} + +\def\@@IEEEextracttoken#1{\@IEEEextracttokendef\@IEEEextracttokenarg{#1}\relax +\def\@IEEEextractedtokensdiscarded{}\relax % initialize to empty +% if the macro is unchanged after being acquired as a single undelimited argument +% with anything after it being stripped off as a delimited argument +% we know we have one token without any enclosing braces. loop until this is true. +\let\@IEEEextracttokencurgroup\@IEEEextracttokenarg +\loop + % trap case of an empty argument as this would cause a problem with + % \@@@IEEEextracttoken's first (nondelimited) argument acquisition + \ifx\@IEEEextracttokencurgroup\@empty + \def\@IEEEextractedtokenmacro{}\relax + \else + \expandafter\@@@IEEEextracttoken\@IEEEextracttokencurgroup\@IEEEgeneralsequenceDELIMITER\relax + \fi + \ifx\@IEEEextractedtokenmacro\@IEEEextracttokencurgroup + \else + \let\@IEEEextracttokencurgroup=\@IEEEextractedtokenmacro +\repeat +% we can safely do a \let= here because there should be at most one token +% the relax is needed to handle the case of no token found +\expandafter\let\expandafter\@IEEEextractedtoken\@IEEEextractedtokenmacro\relax} + +\def\@@@IEEEextracttoken#1#2\@IEEEgeneralsequenceDELIMITER{\def\@IEEEextractedtokenmacro{#1}\relax +\def\@@IEEEextractedtokensdiscarded{#2}\expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter +\@IEEEextractedtokensdiscarded\expandafter\expandafter\expandafter +{\expandafter\@@IEEEextractedtokensdiscarded\@IEEEextractedtokensdiscarded}} + + + +% usage: \@IEEEextracttokengroups*{} +% \@IEEEextracttokengroups fully expands its argument (which it then stores +% in \@IEEEextracttokengroupsarg) and then assigns the first "brace group" of +% tokens (with the outermost braces removed) to the macro +% \@IEEEextractedfirstgroup. +% The meaning of the first nonbrace (but including the empty group) token +% within this first group is assigned via \let to \@IEEEextractedfirsttoken +% as well as stored in the macro \@IEEEextractedfirsttokenmacro. If a first +% nonbrace token does not exist (or is an empty group), these will be \relax +% and empty, respectively. Tokens that would otherwise be discarded during +% the acquisition of the first token in the first group are stored in +% \@IEEEextractedfirsttokensdiscarded, however their original relative brace +% nesting depths are not guaranteed to be preserved. +% The first group within this first group is stored in the macro +% \@IEEEextractedfirstfirstgroup. +% Likewise for the next group after the first: \@IEEEextractednextgroup, +% \@IEEEextractednextfirstgroup, \@IEEEextractednextgroupfirsttoken, +% \@IEEEextractednextgroupfirsttokenmacro, and +% \@IEEEextractednextfirsttokensdiscarded. +% All tokens/groups after the first group, including any enclosing braces, +% are stored in the macro \@IEEEextractedafterfirstgroupremain which will +% be empty if none exist. +% +% For example: +% \@IEEEextracttokengroups{{{ab}{cd}}{{ef}g}} +% will result in: +% +% \@IEEEextracttokengroupsarg ==> a macro containing {{ab}{cd}}{{ef}g} +% \@IEEEextractedfirstgroup ==> a macro containing {ab}{cd} +% \@IEEEextractedafterfirstgroupremain ==> a macro containing {{ef}g} +% \@IEEEextractedfirsttoken ==> the letter a +% \@IEEEextractedfirsttokenmacro ==> a macro containing a +% \@IEEEextractedfirsttokensdiscarded ==> a macro containing bcd +% \@IEEEextractedfirstfirstgroup ==> a macro containing ab +% \@IEEEextractednextgroup ==> a macro containing {ef}g +% \@IEEEextractednextfirsttoken ==> the letter e +% \@IEEEextractednextfirsttokenmacro ==> a macro containing e +% \@IEEEextractednextfirsttokensdiscarded ==> a macro containing fg +% \@IEEEextractednextfirstgroup ==> a macro containing ef +% +% If given an empty argument, \@IEEEextractedfirsttoken and +% \@IEEEextractednextfirsttoken will be set to \relax +% and all the macros will be empty. +% the *-star form, \@IEEEextracttokengroups*, does not expand its argument +% contents during processing. +% +% Depends on: \@IEEEextractgroup, \@IEEEextracttoken +\def\@IEEEextracttokengroups{\@ifstar{\let\@IEEEextracttokengroupsdef=\def\@@IEEEextracttokengroups}{\let\@IEEEextracttokengroupsdef=\edef\@@IEEEextracttokengroups}} +\def\@@IEEEextracttokengroups#1{\@IEEEextracttokengroupsdef\@IEEEextracttokengroupsarg{#1}\relax +% begin extraction, these functions are safe with empty arguments +% first group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextracttokengroupsarg}\relax +\let\@IEEEextractedfirstgroup\@IEEEextractedgroup +\let\@IEEEextractedafterfirstgroupremain\@IEEEextractedgroupremain +\expandafter\@IEEEextracttoken\expandafter*\expandafter{\@IEEEextractedfirstgroup}\relax +\let\@IEEEextractedfirsttoken\@IEEEextractedtoken +\let\@IEEEextractedfirsttokenmacro\@IEEEextractedtokenmacro +\let\@IEEEextractedfirsttokensdiscarded\@IEEEextractedtokensdiscarded +% first first group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextractedfirstgroup}\relax +\let\@IEEEextractedfirstfirstgroup\@IEEEextractedgroup +% next group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextractedafterfirstgroupremain}\relax +\let\@IEEEextractednextgroup\@IEEEextractedgroup +\expandafter\@IEEEextracttoken\expandafter*\expandafter{\@IEEEextractednextgroup}\relax +\let\@IEEEextractednextfirsttoken\@IEEEextractedtoken +\let\@IEEEextractednextfirsttokenmacro\@IEEEextractedtokenmacro +\let\@IEEEextractednextfirsttokensdiscarded\@IEEEextractedtokensdiscarded +% next first group +\expandafter\@IEEEextractgroup\expandafter*\expandafter{\@IEEEextractednextgroup}\relax +\let\@IEEEextractednextfirstgroup\@IEEEextractedgroup} + + +%% +%% -- End of Command Argument Scanning Support Functions -- + + + + +% -- page setup commands -- + +% The default sample text for calculating margins +\def\IEEEdefaultsampletext{\normalfont\normalsize gT} +\def\IEEEdefaultheadersampletext{\normalfont\normalsize T} +\def\IEEEdefaultfootersampletext{\normalfont\normalsize gT} + + + +% usage: \IEEEsettextwidth{inner margin}{outer margin} +% Sets \textwidth to allow the specified inner and outer margins +% for the current \paperwidth. +\def\IEEEsettextwidth#1#2{\@IEEEtrantmpdimenA\paperwidth +\@IEEEtrantmpdimenB#1\relax +\advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\@IEEEtrantmpdimenB#2\relax +\advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\textwidth\@IEEEtrantmpdimenA} + + + +% usage: \IEEEsetsidemargin{mode: i, o, c, a}{margin/offset} +% Sets \oddsidemargin and \evensidemargin to yield the specified margin +% of the given mode. +% The available modes are: +% i = inner margin +% o = outer margin +% c = centered, with the given offset +% a = adjust the margins using the given offset +% For the offsets, positive values increase the inner margin. +% \textwidth should be set properly for the given margins before calling this +% function. +\def\IEEEsetsidemargin#1#2{\@IEEEtrantmpdimenA #2\relax +\@IEEEextracttoken{#1}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsetsidemargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `i'}{Valid modes for \string\IEEEsetsidemargin\space are: i, o, c and a.}\relax + \let\@IEEEextractedtoken=i\relax + \def\@IEEEextractedtokenmacro{i}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsetsidemargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + \advance\oddsidemargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken c\relax + \oddsidemargin\paperwidth + \advance\oddsidemargin by -\textwidth + \divide\oddsidemargin by 2\relax + \advance\oddsidemargin by -1in\relax + \advance\oddsidemargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken o\relax + \oddsidemargin\paperwidth + \advance\oddsidemargin by -\textwidth + \advance\oddsidemargin by -\@IEEEtrantmpdimenA + \advance\oddsidemargin by -1in\relax +\else + \if\@IEEEextractedtoken i\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsetsidemargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `i'}% + {Valid modes for \string\IEEEsetsidemargin\space are: i, o, c and a.}% + \fi + \oddsidemargin\@IEEEtrantmpdimenA + \advance\oddsidemargin by -1in\relax +\fi\fi\fi +% odd and even side margins both mean "inner" for single sided pages +\evensidemargin\oddsidemargin +% but are mirrors of each other when twosided is in effect +\if@twoside + \evensidemargin\paperwidth + \advance\evensidemargin by -\textwidth + \advance\evensidemargin by -\oddsidemargin + % have to compensate for both the builtin 1in LaTex offset + % and the fact we already subtracted this offset from \oddsidemargin + \advance\evensidemargin -2in\relax +\fi} + + + +% usage: \IEEEsettextheight[sample text]{top text margin}{bottom text margin} +% Sets \textheight based on the specified top margin and bottom margin. +% Takes into consideration \paperheight, \topskip, and (by default) the +% the actual height and depth of the \IEEEdefaultsampletext text. +\def\IEEEsettextheight{\@ifnextchar [{\@IEEEsettextheight}{\@IEEEsettextheight[\IEEEdefaultsampletext]}} +\def\@IEEEsettextheight[#1]#2#3{\textheight\paperheight\relax + \@IEEEtrantmpdimenA #2\relax + \advance \textheight by -\@IEEEtrantmpdimenA% subtract top margin + \@IEEEtrantmpdimenA #3\relax + \advance \textheight by -\@IEEEtrantmpdimenA% subtract bottom margin + \advance \textheight by \topskip% add \topskip + % subtract off everything above the top, and below the bottom, baselines + \settoheight{\@IEEEtrantmpdimenA}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance \textheight by -\@IEEEtrantmpdimenA + \settodepth{\@IEEEtrantmpdimenA}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance \textheight by -\@IEEEtrantmpdimenA} + + + +\newdimen\IEEEquantizedlength +\IEEEquantizedlength 0sp\relax +\newdimen\IEEEquantizedlengthdiff +\IEEEquantizedlengthdiff 0sp\relax +\def\IEEEquantizedlengthint{0} + +% usage: \IEEEquantizelength{mode: d, c, i}{base unit}{length} +% Sets the length \IEEEquantizedlength to be an integer multiple of the given +% (nonzero) base unit such that \IEEEquantizedlength approximates the given +% length. +% \IEEEquantizedlengthdiff is a length equal to the difference between the +% \IEEEquantizedlength and the given length. +% \IEEEquantizedlengthint is a macro containing the integer number of base units +% in \IEEEquantizedlength. +% i.e., \IEEEquantizedlength = \IEEEquantizedlengthint * base unit +% The mode determines how \IEEEquantizedlength is quantized: +% d = always decrease (always round down \IEEEquantizeint) +% c = use the closest match +% i = always increase (always round up \IEEEquantizeint) +% In anycase, if the given length is already quantized, +% \IEEEquantizedlengthdiff will be set to zero. +\def\IEEEquantizelength#1#2#3{\begingroup +% work in isolation so as not to externally disturb the \@IEEEtrantmp +% variables +% load the argument values indirectly via \IEEEquantizedlengthdiff +% in case the user refers to our \@IEEEtrantmpdimenX, \IEEEquantizedlength, +% etc. in the arguments. we also will work with these as counters, +% i.e., in sp units +% A has the base unit +\IEEEquantizedlengthdiff #2\relax\relax\relax\relax +\@IEEEtrantmpcountA\IEEEquantizedlengthdiff +% B has the input length +\IEEEquantizedlengthdiff #3\relax\relax\relax\relax +\@IEEEtrantmpcountB\IEEEquantizedlengthdiff +\@IEEEtrantmpdimenA\the\@IEEEtrantmpcountA sp\relax +\@IEEEtrantmpdimenB\the\@IEEEtrantmpcountB sp\relax +% \@IEEEtrantmpcountC will have the quantized int +% \IEEEquantizedlength will have the quantized length +% \@IEEEtrantmpdimenC will have the quantized diff +% initialize them to zero as this is what will be +% exported if an error occurs +\@IEEEtrantmpcountC 0\relax +\IEEEquantizedlength 0sp\relax +\@IEEEtrantmpdimenC 0sp\relax +% extract mode +\@IEEEextracttoken{#1}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEquantizelength\space (line \the\inputlineno).\MessageBreak + Defaulting to `d'}{Valid modes for \string\IEEEquantizelength\space are: d, c and i.}\relax + \let\@IEEEextractedtoken=d\relax + \def\@IEEEextractedtokenmacro{d}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEquantizelength\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% check for base unit is zero error +\ifnum\@IEEEtrantmpcountA=0\relax +\@IEEEclspkgerror{Base unit is zero in \string\IEEEquantizelength\space (line \the\inputlineno).\MessageBreak + \string\IEEEquantizedlength\space and \string\IEEEquantizedlengthdiff\space are set to zero}{Division by zero is not allowed.}\relax +\else% base unit is nonzero + % \@IEEEtrantmpcountC carries the number of integer units + % in the quantized length (integer length \ base) + \@IEEEtrantmpcountC\@IEEEtrantmpcountB\relax + \divide\@IEEEtrantmpcountC by \@IEEEtrantmpcountA\relax + % \IEEEquantizedlength has the (rounded down) quantized length + % = base * int + \IEEEquantizedlength\@IEEEtrantmpdimenA\relax + \multiply\IEEEquantizedlength by \@IEEEtrantmpcountC\relax + % \@IEEEtrantmpdimenC has the difference + % = quantized length - length + \@IEEEtrantmpdimenC\IEEEquantizedlength\relax + \advance\@IEEEtrantmpdimenC by -\@IEEEtrantmpdimenB\relax + % trap special case of length being already quantized + % to avoid a roundup under i option + \ifdim\@IEEEtrantmpdimenC=0sp\relax + \else % length not is already quantized + % set dimenA to carry the upper quantized (absolute value) difference: + % quantizedlength + base - length + \advance\@IEEEtrantmpdimenA by \IEEEquantizedlength\relax + \advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB\relax + % set dimenB to carry the lower quantized (absolute value) difference: + % length - quantizedlength + \advance\@IEEEtrantmpdimenB by -\IEEEquantizedlength\relax + % handle each mode + \if\@IEEEextractedtoken c\relax + % compare upper and lower amounts, select upper if lower > upper + \ifdim\@IEEEtrantmpdimenB>\@IEEEtrantmpdimenA\relax + % use upper + \advance\IEEEquantizedlength by \the\@IEEEtrantmpcountA sp\relax + \advance\@IEEEtrantmpcountC by 1\relax + \@IEEEtrantmpdimenC\@IEEEtrantmpdimenA + \else% <=. uselower + % no need to do anything for lower, use output values already setup + \fi + \else% not mode c + \if\@IEEEextractedtoken i\relax + % always round up under i mode + \advance\IEEEquantizedlength by \the\@IEEEtrantmpcountA sp\relax + \advance\@IEEEtrantmpcountC by 1\relax + \@IEEEtrantmpdimenC\@IEEEtrantmpdimenA + \else + \if\@IEEEextractedtoken d\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEquantizelength\space (line \the\inputlineno).\MessageBreak + Defaulting to `d'}% + {Valid modes for \string\IEEEquantizelength\space are: d, c, and i.}\relax + \fi % if d + % no need to do anything for d, use output values already setup + \fi\fi % if i, c + \fi % if length is already quantized +\fi% if base unit is zero +% globally assign the results to macros we use here to escape the enclosing +% group without needing to call \global on any of the \@IEEEtrantmp variables. +% \@IEEEtrantmpcountC has the quantized int +% \IEEEquantizedlength has the quantized length +% \@IEEEtrantmpdimenC has the quantized diff +\xdef\@IEEEquantizedlengthintmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\IEEEquantizedlength\relax +\xdef\@IEEEquantizedlengthmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\@IEEEtrantmpdimenC\relax +\xdef\@IEEEquantizedlengthdiffmacro{\the\@IEEEtrantmpcountC}\relax +\endgroup +% locally assign the outputs here from the macros +\expandafter\IEEEquantizedlength\@IEEEquantizedlengthmacro sp\relax +\expandafter\IEEEquantizedlengthdiff\@IEEEquantizedlengthdiffmacro sp\relax +\edef\IEEEquantizedlengthint{\@IEEEquantizedlengthintmacro}\relax} + + + +\newdimen\IEEEquantizedtextheightdiff +\IEEEquantizedtextheightdiff 0sp\relax + +% usage: \IEEEquantizetextheight[base unit]{mode: d, c, i} +% Sets \textheight to be an integer multiple of the current \baselineskip +% (or the optionally specified base unit) plus the first (\topskip) line. +% \IEEEquantizedtextheightdiff is a length equal to the difference between +% the new quantized and original \textheight. +% \IEEEquantizedtextheightlpc is a macro containing the integer number of +% lines per column under the quantized \textheight. i.e., +% \textheight = \IEEEquantizedtextheightlpc * \baselineskip + \topskip +% The mode determines how \textheight is quantized: +% d = always decrease (always round down the number of lines per column) +% c = use the closest match +% i = always increase (always round up the number of lines per column) +% In anycase, if \textheight is already quantized, it will remain unchanged, +% and \IEEEquantizedtextheightdiff will be set to zero. +% Depends on: \IEEEquantizelength +\def\IEEEquantizetextheight{\@ifnextchar [{\@IEEEquantizetextheight}{\@IEEEquantizetextheight[\baselineskip]}} +\def\@IEEEquantizetextheight[#1]#2{\begingroup +% use our \IEEEquantizedtextheightdiff as a scratch pad +% we need to subtract off \topskip before quantization +\IEEEquantizedtextheightdiff\textheight +\advance\IEEEquantizedtextheightdiff by -\topskip\relax +\IEEEquantizelength{#2}{#1}{\IEEEquantizedtextheightdiff} +% add back \topskip line +\advance\IEEEquantizedlength by \topskip +\@IEEEtrantmpcountC\IEEEquantizedlengthint\relax +\advance\@IEEEtrantmpcountC by 1\relax +% globally assign the results to macros we use here to escape the enclosing +% group without needing to call \global on any of the \@IEEEtrantmp variables. +\xdef\@IEEEquantizedtextheightlpcmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\IEEEquantizedlength\relax +\xdef\@IEEEquantizedtextheightmacro{\the\@IEEEtrantmpcountC}\relax +\@IEEEtrantmpcountC\IEEEquantizedlengthdiff\relax +\xdef\@IEEEquantizedtextheightdiffmacro{\the\@IEEEtrantmpcountC}\relax +\endgroup +% locally assign the outputs here from the macros +\textheight\@IEEEquantizedtextheightmacro sp\relax +\IEEEquantizedtextheightdiff\@IEEEquantizedtextheightdiffmacro sp\relax +\edef\IEEEquantizedtextheightlpc{\@IEEEquantizedtextheightlpcmacro}} + + + +% usage: \IEEEsettopmargin[sample text]{mode: t, b, c, a, q}{margin/offset} +% Sets \topmargin based on the specified vertical margin. +% Takes into consideration the base 1in offset, \headheight, \headsep, +% \topskip, and (by default) the the actual height (or, for the bottom, depth) +% of the \IEEEdefaultsampletext text. +% The available modes are: +% t = top margin +% b = bottom margin +% c = vertically centered, with the given offset +% a = adjust the vertical margins using the given offset +% q = adjust the margins using \IEEEquantizedtextheightdiff and the given offset +% For the offsets, positive values increase the top margin. +% \headheight, \headsep, \topskip and \textheight should be set properly for the +% given margins before calling this function. +\def\IEEEsettopmargin{\@ifnextchar [{\@IEEEsettopmargin}{\@IEEEsettopmargin[\IEEEdefaultsampletext]}} +\def\@IEEEsettopmargin[#1]#2#3{\@IEEEtrantmpdimenA #3\relax +\@IEEEextracttoken{#2}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsettopmargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}{Valid modes for \string\IEEEsettopmargin\space are: t, b, c, a and q.}\relax + \let\@IEEEextractedtoken=t\relax + \def\@IEEEextractedtokenmacro{t}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsettopmargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + \advance\topmargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken q\relax + % we need to adjust by half the \IEEEquantizedtextheightdiff value + \@IEEEtrantmpdimenB\IEEEquantizedtextheightdiff\relax + \divide\@IEEEtrantmpdimenB by 2\relax + % a positive \IEEEquantizedtextheightdiff means we need to reduce \topmargin + % because \textheight has been lenghtened + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \advance\topmargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken c\relax + \topmargin\paperheight + \advance\topmargin by -\textheight + % \textheight includes \topskip, but we should not count topskip whitespace here, backout + \advance \topmargin by \topskip + \settoheight{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \settodepth{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \divide\topmargin by 2\relax + \advance\topmargin by \@IEEEtrantmpdimenA\relax +\else +\if\@IEEEextractedtoken b\relax + \topmargin\paperheight + \advance\topmargin by -\textheight + % \textheight includes \topskip, but we should not count topskip whitespace here, backout + \advance \topmargin by \topskip + \settodepth{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by -\@IEEEtrantmpdimenB\relax + \advance\topmargin by -\@IEEEtrantmpdimenA\relax +\else + \if\@IEEEextractedtoken t\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsettopmargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}% + {Valid modes for \string\IEEEsettopmargin\space are: t, b, c, a and q.}\relax + \fi + \topmargin\@IEEEtrantmpdimenA\relax + \settoheight{\@IEEEtrantmpdimenB}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\topmargin by \@IEEEtrantmpdimenB\relax +\fi\fi % if t, b, c +% convert desired top margin into actual \topmargin +% this is not done for the q or a modes because they are only adjustments +\advance \topmargin by -\topskip +\advance \topmargin by -1in +\advance \topmargin by -\headheight +\advance \topmargin by -\headsep +\fi\fi % if q, a +} + + + +% usage: \IEEEsetheadermargin[header sample][text sample]{mode: t, b, c, a}{margin/offset} +% Differentially adjusts \topmargin and \headsep (such that their sum is unchanged) +% based on the specified header margin. +% Takes into consideration the base 1in offset, \headheight, \topskip, and (by default) +% the actual height (or depth) of the \IEEEdefaultheadersampletext and +% \IEEEdefaultsampletext text. +% The available modes are: +% t = top margin (top of the header text to the top of the page) +% b = bottom margin (bottom of the header text to the top of the main text) +% c = vertically centered between the main text and the top of the page, +% with the given offset +% a = adjust the vertical position using the given offset +% For the offsets, positive values move the header downward. +% \headheight, \headsep, \topskip and \topmargin should be set properly before +% calling this function. +\def\IEEEsetheadermargin{\@ifnextchar [{\@IEEEsetheadermargin}{\@IEEEsetheadermargin[\IEEEdefaultheadersampletext]}} +\def\@IEEEsetheadermargin[#1]{\@ifnextchar [{\@@IEEEsetheadermargin[#1]}{\@@IEEEsetheadermargin[#1][\IEEEdefaultsampletext]}} +\def\@@IEEEsetheadermargin[#1][#2]#3#4{\@IEEEtrantmpdimenA #4\relax +\@IEEEextracttoken{#3}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsetheadermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}{Valid modes for \string\IEEEsetheadermargin\space are: t, b, c, and a.}\relax + \let\@IEEEextractedtoken=t\relax + \def\@IEEEextractedtokenmacro{t}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsetheadermargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + % No need to do anything here and can pass through the adjustment + % value as is. The end adjustment of \topmargin and \headsep will + % do all that is needed +\else +\if\@IEEEextractedtoken c\relax + % get the bottom margin + \@IEEEtrantmpdimenB\headsep\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + \advance\@IEEEtrantmpdimenB by \topskip + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual header bottom margin + % subtract from it the top header margin + \advance\@IEEEtrantmpdimenB -1in\relax % take into consideration the system 1in offset of the top margin + \advance\@IEEEtrantmpdimenB by -\topmargin + \advance\@IEEEtrantmpdimenB by -\headheight + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by \@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the difference between the bottom and top margins + % we need to adjust by half this amount to center the header + \divide\@IEEEtrantmpdimenB by 2\relax + % and add to offset + \advance\@IEEEtrantmpdimenA by \@IEEEtrantmpdimenB +\else +\if\@IEEEextractedtoken b\relax + \@IEEEtrantmpdimenB\headsep\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + \advance\@IEEEtrantmpdimenB by \topskip + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual header bottom margin + % get the difference between the actual and the desired + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenA + \@IEEEtrantmpdimenA\@IEEEtrantmpdimenB +\else + \if\@IEEEextractedtoken t\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsetheadermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}% + {Valid modes for \string\IEEEsetheadermargin\space are: t, b, c and a.}\relax + \fi + \@IEEEtrantmpdimenB 1in\relax % take into consideration the system 1in offset of the top margin + \advance\@IEEEtrantmpdimenB by \topmargin + \advance\@IEEEtrantmpdimenB by \headheight + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual header top margin + % get the difference between the desired and the actual + \advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\fi\fi % if t, b, c +\fi % if a +% advance \topmargin by the needed amount and reduce \headsep by the same +% so as not to disturb the location of the main text +\advance\topmargin by \@IEEEtrantmpdimenA\relax +\advance\headsep by -\@IEEEtrantmpdimenA\relax +} + + + +% usage: \IEEEsetfootermargin[footer sample][text sample]{mode: t, b, c, a}{margin/offset} +% Adjusts \footskip based on the specified footer margin. +% Takes into consideration the base 1in offset, \paperheight, \headheight, +% \headsep, \textheight and (by default) the actual height (or depth) of the +% \IEEEdefaultfootersampletext and \IEEEdefaultsampletext text. +% The available modes are: +% t = top margin (top of the footer text to the bottom of the main text) +% b = bottom margin (bottom of the footer text to the bottom of page) +% c = vertically centered between the main text and the bottom of the page, +% with the given offset +% a = adjust the vertical position using the given offset +% For the offsets, positive values move the footer downward. +% \headheight, \headsep, \topskip, \topmargin, and \textheight should be set +% properly before calling this function. +\def\IEEEsetfootermargin{\@ifnextchar [{\@IEEEsetfootermargin}{\@IEEEsetfootermargin[\IEEEdefaultfootersampletext]}} +\def\@IEEEsetfootermargin[#1]{\@ifnextchar [{\@@IEEEsetfootermargin[#1]}{\@@IEEEsetfootermargin[#1][\IEEEdefaultsampletext]}} +\def\@@IEEEsetfootermargin[#1][#2]#3#4{\@IEEEtrantmpdimenA #4\relax +\@IEEEextracttoken{#3}\relax +% check for mode errors +\ifx\@IEEEextractedtokenmacro\@empty + \@IEEEclspkgerror{Empty mode type in \string\IEEEsetfootermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}{Valid modes for \string\IEEEsetfootermargin\space are: t, b, c, and a.}\relax + \let\@IEEEextractedtoken=t\relax + \def\@IEEEextractedtokenmacro{t}\relax +\else + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: \string\IEEEsetfootermargin\space mode specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi +\fi +% handle each mode +\if\@IEEEextractedtoken a\relax + % No need to do anything here and can pass through the adjustment + % value as is. The end adjustment of \footskip will do all that + % is needed +\else +\if\@IEEEextractedtoken c\relax + % calculate the bottom margin + \@IEEEtrantmpdimenB 1in\relax % system 1in offset + \advance\@IEEEtrantmpdimenB\topmargin\relax + \advance\@IEEEtrantmpdimenB\headheight\relax + \advance\@IEEEtrantmpdimenB\headsep\relax + \advance\@IEEEtrantmpdimenB\textheight\relax + \advance\@IEEEtrantmpdimenB\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenC by \@IEEEtrantmpdimenB + \@IEEEtrantmpdimenB\paperheight + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual footer bottom margin + % now subtract off the footer top margin + \advance\@IEEEtrantmpdimenB -\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by \@IEEEtrantmpdimenC + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by \@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the difference between the bottom + % and top footer margins + % our adjustment must be half this value to center the footer + \divide\@IEEEtrantmpdimenB by 2\relax + % add to the offset + \advance\@IEEEtrantmpdimenA by \@IEEEtrantmpdimenB +\else +\if\@IEEEextractedtoken b\relax + % calculate the bottom margin + \@IEEEtrantmpdimenB 1in\relax % system 1in offset + \advance\@IEEEtrantmpdimenB\topmargin\relax + \advance\@IEEEtrantmpdimenB\headheight\relax + \advance\@IEEEtrantmpdimenB\headsep\relax + \advance\@IEEEtrantmpdimenB\textheight\relax + \advance\@IEEEtrantmpdimenB\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenC by \@IEEEtrantmpdimenB + \@IEEEtrantmpdimenB\paperheight + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual footer bottom margin + % get the difference between the actual and the desired + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenA + \@IEEEtrantmpdimenA\@IEEEtrantmpdimenB +\else + \if\@IEEEextractedtoken t\relax + \else + \@IEEEclspkgerror{Unknown mode type `\@IEEEextractedtokenmacro' in \string\IEEEsetfootermargin\space (line \the\inputlineno).\MessageBreak + Defaulting to `t'}% + {Valid modes for \string\IEEEsetfootermargin\space are: t, b, c and a.}\relax + \fi + \@IEEEtrantmpdimenB\footskip\relax + \settodepth{\@IEEEtrantmpdimenC}{\begingroup #2\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + \settoheight{\@IEEEtrantmpdimenC}{\begingroup #1\relax\relax\relax\endgroup}\relax + \advance\@IEEEtrantmpdimenB by -\@IEEEtrantmpdimenC + % at this point \@IEEEtrantmpdimenB has the actual footer top margin + % get the difference between the desired and the actual + \advance\@IEEEtrantmpdimenA by -\@IEEEtrantmpdimenB +\fi\fi % if t, b, c +\fi % if a +% advance \footskip by the needed amount +\advance\footskip by \@IEEEtrantmpdimenA\relax +} + + +% -- End page setup commands -- + + + + +% Itemize, Enumerate and Description (IED) List Controls +% *************************** +% +% +% The IEEE seems to use at least two different values by +% which ITEMIZED list labels are indented to the right +% For The Journal of Lightwave Technology (JLT) and The Journal +% on Selected Areas in Communications (JSAC), they tend to use +% an indention equal to \parindent. For Transactions on Communications +% they tend to indent ITEMIZED lists a little more--- 1.3\parindent. +% We'll provide both values here for you so that you can choose +% which one you like in your document using a command such as: +% setlength{\IEEEilabelindent}{\IEEEilabelindentB} +\newdimen\IEEEilabelindentA +\IEEEilabelindentA \parindent + +\newdimen\IEEEilabelindentB +\IEEEilabelindentB 1.3\parindent +% However, we'll default to using \parindent +% which makes more sense to me +\newdimen\IEEEilabelindent +\IEEEilabelindent \IEEEilabelindentA + + +% This controls the default amount the enumerated list labels +% are indented to the right. +% Normally, this is the same as the paragraph indention +\newdimen\IEEEelabelindent +\IEEEelabelindent \parindent + +% This controls the default amount the description list labels +% are indented to the right. +% Normally, this is the same as the paragraph indention +\newdimen\IEEEdlabelindent +\IEEEdlabelindent \parindent + +% This is the value actually used within the IED lists. +% The IED environments automatically set its value to +% one of the three values above, so global changes do +% not have any effect +\newdimen\IEEElabelindent +\IEEElabelindent \parindent + +% The actual amount labels will be indented is +% \IEEElabelindent multiplied by the factor below +% corresponding to the level of nesting depth +% This provides a means by which the user can +% alter the effective \IEEElabelindent for deeper +% levels +% There may not be such a thing as correct "standard IEEE" +% values. What the IEEE actually does may depend on the specific +% circumstances. +% The first list level almost always has full indention. +% The second levels I've seen have only 75% of the normal indentation +% Three level or greater nestings are very rare. I am guessing +% that they don't use any indentation. +\def\IEEElabelindentfactori{1.0} % almost always one +\def\IEEElabelindentfactorii{0.75} % 0.0 or 1.0 may be used in some cases +\def\IEEElabelindentfactoriii{0.0} % 0.75? 0.5? 0.0? +\def\IEEElabelindentfactoriv{0.0} +\def\IEEElabelindentfactorv{0.0} +\def\IEEElabelindentfactorvi{0.0} + +% value actually used within IED lists, it is auto +% set to one of the 6 values above +% global changes here have no effect +\def\IEEElabelindentfactor{1.0} + +% This controls the default spacing between the end of the IED +% list labels and the list text, when normal text is used for +% the labels. +\newdimen\IEEEiednormlabelsep +\IEEEiednormlabelsep 0.6em + +% This controls the default spacing between the end of the IED +% list labels and the list text, when math symbols are used for +% the labels (nomenclature lists). The IEEE usually increases the +% spacing in these cases +\newdimen\IEEEiedmathlabelsep +\IEEEiedmathlabelsep 1.2em + +% This controls the extra vertical separation put above and +% below each IED list. The IEEE usually puts a little extra spacing +% around each list. However, this spacing is barely noticeable. +\newskip\IEEEiedtopsep +\IEEEiedtopsep 2pt plus 1pt minus 1pt + + +% This command is executed within each IED list environment +% at the beginning of the list. You can use this to set the +% parameters for some/all your IED list(s) without disturbing +% global parameters that affect things other than lists. +% i.e., renewcommand{\IEEEiedlistdecl}{\setlength{\labelsep}{5em}} +% will alter the \labelsep for the next list(s) until +% \IEEEiedlistdecl is redefined. +\def\IEEEiedlistdecl{\relax} + +% This command provides an easy way to set \leftmargin based +% on the \labelwidth, \labelsep and the argument \IEEElabelindent +% Usage: \IEEEcalcleftmargin{width-to-indent-the-label} +% output is in the \leftmargin variable, i.e., effectively: +% \leftmargin = argument + \labelwidth + \labelsep +% Note controlled spacing here, shield end of lines with % +\def\IEEEcalcleftmargin#1{\setlength{\leftmargin}{#1}% +\addtolength{\leftmargin}{\labelwidth}% +\addtolength{\leftmargin}{\labelsep}} + +% This command provides an easy way to set \labelwidth to the +% width of the given text. It is the same as +% \settowidth{\labelwidth}{label-text} +% and useful as a shorter alternative. +% Typically used to set \labelwidth to be the width +% of the longest label in the list +\def\IEEEsetlabelwidth#1{\settowidth{\labelwidth}{#1}} + +% When this command is executed, IED lists will use the +% IEEEiedmathlabelsep label separation rather than the normal +% spacing. To have an effect, this command must be executed via +% the \IEEEiedlistdecl or within the option of the IED list +% environments. +\def\IEEEusemathlabelsep{\setlength{\labelsep}{\IEEEiedmathlabelsep}} + +% A flag which controls whether the IED lists automatically +% calculate \leftmargin from \IEEElabelindent, \labelwidth and \labelsep +% Useful if you want to specify your own \leftmargin +% This flag must be set (\IEEEnocalcleftmargintrue or \IEEEnocalcleftmarginfalse) +% via the \IEEEiedlistdecl or within the option of the IED list +% environments to have an effect. +\newif\ifIEEEnocalcleftmargin +\IEEEnocalcleftmarginfalse + +% A flag which controls whether \IEEElabelindent is multiplied by +% the \IEEElabelindentfactor for each list level. +% This flag must be set via the \IEEEiedlistdecl or within the option +% of the IED list environments to have an effect. +\newif\ifIEEEnolabelindentfactor +\IEEEnolabelindentfactorfalse + + +% internal variable to indicate type of IED label +% justification +% 0 - left; 1 - center; 2 - right +\def\@IEEEiedjustify{0} + + + +% commands to allow the user to control IED +% label justifications. Use these commands within +% the IED environment option or in the \IEEEiedlistdecl +% Note that changing the normal list justifications +% is nonstandard and the IEEE may not like it if you do so! +% I include these commands as they may be helpful to +% those who are using these enhanced list controls for +% other non-IEEE related LaTeX work. +% itemize and enumerate automatically default to right +% justification, description defaults to left. +\def\IEEEiedlabeljustifyl{\def\@IEEEiedjustify{0}}%left +\def\IEEEiedlabeljustifyc{\def\@IEEEiedjustify{1}}%center +\def\IEEEiedlabeljustifyr{\def\@IEEEiedjustify{2}}%right + + + + +% commands to save to and restore from the list parameter copies +% this allows us to set all the list parameters within +% the list_decl and prevent \list (and its \@list) +% from overriding any of our parameters +% V1.6 use \edefs instead of dimen's to conserve dimen registers +% Note controlled spacing here, shield end of lines with % +\def\@IEEEsavelistparams{\edef\@IEEEiedtopsep{\the\topsep}% +\edef\@IEEEiedlabelwidth{\the\labelwidth}% +\edef\@IEEEiedlabelsep{\the\labelsep}% +\edef\@IEEEiedleftmargin{\the\leftmargin}% +\edef\@IEEEiedpartopsep{\the\partopsep}% +\edef\@IEEEiedparsep{\the\parsep}% +\edef\@IEEEieditemsep{\the\itemsep}% +\edef\@IEEEiedrightmargin{\the\rightmargin}% +\edef\@IEEEiedlistparindent{\the\listparindent}% +\edef\@IEEEieditemindent{\the\itemindent}} + +% Note controlled spacing here +\def\@IEEErestorelistparams{\topsep\@IEEEiedtopsep\relax% +\labelwidth\@IEEEiedlabelwidth\relax% +\labelsep\@IEEEiedlabelsep\relax% +\leftmargin\@IEEEiedleftmargin\relax% +\partopsep\@IEEEiedpartopsep\relax% +\parsep\@IEEEiedparsep\relax% +\itemsep\@IEEEieditemsep\relax% +\rightmargin\@IEEEiedrightmargin\relax% +\listparindent\@IEEEiedlistparindent\relax% +\itemindent\@IEEEieditemindent\relax} + + +% v1.6b provide original LaTeX IED list environments +% note that latex.ltx defines \itemize and \enumerate, but not \description +% which must be created by the base classes +% save original LaTeX itemize and enumerate +\let\LaTeXitemize\itemize +\let\endLaTeXitemize\enditemize +\let\LaTeXenumerate\enumerate +\let\endLaTeXenumerate\endenumerate +% base class should define \description +\let\LaTeXdescription\description +\let\endLaTeXdescription\enddescription + + +% override LaTeX's default IED lists, if the user requested it +\if@IEEETOOLSredeflists +\def\itemize{\@IEEEitemize} +\def\enditemize{\@endIEEEitemize} +\def\enumerate{\@IEEEenumerate} +\def\endenumerate{\@endIEEEenumerate} +\def\description{\@IEEEdescription} +\def\enddescription{\@endIEEEdescription} +\fi + + +% provide the user with the IEEE IED commands +\def\IEEEitemize{\@IEEEitemize} +\def\endIEEEitemize{\@endIEEEitemize} +\def\IEEEenumerate{\@IEEEenumerate} +\def\endIEEEenumerate{\@endIEEEenumerate} +\def\IEEEdescription{\@IEEEdescription} +\def\endIEEEdescription{\@endIEEEdescription} + + +% V1.6 we want to keep the IEEEtran IED list definitions as our own internal +% commands so they are protected against redefinition +\def\@IEEEitemize{\@ifnextchar[{\@@IEEEitemize}{\@@IEEEitemize[\relax]}} +\def\@IEEEenumerate{\@ifnextchar[{\@@IEEEenumerate}{\@@IEEEenumerate[\relax]}} +\def\@IEEEdescription{\@ifnextchar[{\@@IEEEdescription}{\@@IEEEdescription[\relax]}} +\def\@endIEEEitemize{\endlist} +\def\@endIEEEenumerate{\endlist} +\def\@endIEEEdescription{\endlist} + + +% DO NOT ALLOW BLANK LINES TO BE IN THESE IED ENVIRONMENTS +% AS THIS WILL FORCE NEW PARAGRAPHS AFTER THE IED LISTS +% IEEEtran itemized list MDS 1/2001 +% Note controlled spacing here, shield end of lines with % +\def\@@IEEEitemize[#1]{% + \ifnum\@itemdepth>3\relax\@toodeep\else% + \ifnum\@listdepth>5\relax\@toodeep\else% + \advance\@itemdepth\@ne% + \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% + % get the IEEElabelindentfactor for this level + \advance\@listdepth\@ne% we need to know what the level WILL be + \edef\IEEElabelindentfactor{\csname IEEElabelindentfactor\romannumeral\the\@listdepth\endcsname}% + \advance\@listdepth-\@ne% undo our increment + \def\@IEEEiedjustify{2}% right justified labels are default + % set other defaults + \IEEEnocalcleftmarginfalse% + \IEEEnolabelindentfactorfalse% + \topsep\IEEEiedtopsep% + \IEEElabelindent\IEEEilabelindent% + \labelsep\IEEEiednormlabelsep% + \partopsep 0ex% + \parsep 0ex% + \itemsep 0ex% + \rightmargin 0em% + \listparindent 0em% + \itemindent 0em% + % calculate the label width + % the user can override this later if + % they specified a \labelwidth + \settowidth{\labelwidth}{\csname labelitem\romannumeral\the\@itemdepth\endcsname}% + \@IEEEsavelistparams% save our list parameters + \list{\csname\@itemitem\endcsname}{% + \@IEEErestorelistparams% override any list{} changes + % to our globals + \let\makelabel\@IEEEiedmakelabel% v1.6b setup \makelabel + \IEEEiedlistdecl% let user alter parameters + #1\relax% + % If the user has requested not to use the + % IEEElabelindent factor, don't revise \IEEElabelindent + \ifIEEEnolabelindentfactor\relax% + \else\IEEElabelindent=\IEEElabelindentfactor\IEEElabelindent% + \fi% + % Unless the user has requested otherwise, + % calculate our left margin based + % on \IEEElabelindent, \labelwidth and + % \labelsep + \ifIEEEnocalcleftmargin\relax% + \else\IEEEcalcleftmargin{\IEEElabelindent}% + \fi}\fi\fi}% + + +% DO NOT ALLOW BLANK LINES TO BE IN THESE IED ENVIRONMENTS +% AS THIS WILL FORCE NEW PARAGRAPHS AFTER THE IED LISTS +% IEEEtran enumerate list MDS 1/2001 +% Note controlled spacing here, shield end of lines with % +\def\@@IEEEenumerate[#1]{% + \ifnum\@enumdepth>3\relax\@toodeep\else% + \ifnum\@listdepth>5\relax\@toodeep\else% + \advance\@enumdepth\@ne% + \edef\@enumctr{enum\romannumeral\the\@enumdepth}% + % get the IEEElabelindentfactor for this level + \advance\@listdepth\@ne% we need to know what the level WILL be + \edef\IEEElabelindentfactor{\csname IEEElabelindentfactor\romannumeral\the\@listdepth\endcsname}% + \advance\@listdepth-\@ne% undo our increment + \def\@IEEEiedjustify{2}% right justified labels are default + % set other defaults + \IEEEnocalcleftmarginfalse% + \IEEEnolabelindentfactorfalse% + \topsep\IEEEiedtopsep% + \IEEElabelindent\IEEEelabelindent% + \labelsep\IEEEiednormlabelsep% + \partopsep 0ex% + \parsep 0ex% + \itemsep 0ex% + \rightmargin 0em% + \listparindent 0em% + \itemindent 0em% + % calculate the label width + % We'll set it to the width suitable for all labels using + % normalfont 1) to 9) + % The user can override this later + \settowidth{\labelwidth}{9)}% + \@IEEEsavelistparams% save our list parameters + \list{\csname label\@enumctr\endcsname}{\usecounter{\@enumctr}% + \@IEEErestorelistparams% override any list{} changes + % to our globals + \let\makelabel\@IEEEiedmakelabel% v1.6b setup \makelabel + \IEEEiedlistdecl% let user alter parameters + #1\relax% + % If the user has requested not to use the + % IEEElabelindent factor, don't revise \IEEElabelindent + \ifIEEEnolabelindentfactor\relax% + \else\IEEElabelindent=\IEEElabelindentfactor\IEEElabelindent% + \fi% + % Unless the user has requested otherwise, + % calculate our left margin based + % on \IEEElabelindent, \labelwidth and + % \labelsep + \ifIEEEnocalcleftmargin\relax% + \else\IEEEcalcleftmargin{\IEEElabelindent}% + \fi}\fi\fi}% + + +% DO NOT ALLOW BLANK LINES TO BE IN THESE IED ENVIRONMENTS +% AS THIS WILL FORCE NEW PARAGRAPHS AFTER THE IED LISTS +% IEEEtran description list MDS 1/2001 +% Note controlled spacing here, shield end of lines with % +\def\@@IEEEdescription[#1]{% + \ifnum\@listdepth>5\relax\@toodeep\else% + % get the IEEElabelindentfactor for this level + \advance\@listdepth\@ne% we need to know what the level WILL be + \edef\IEEElabelindentfactor{\csname IEEElabelindentfactor\romannumeral\the\@listdepth\endcsname}% + \advance\@listdepth-\@ne% undo our increment + \def\@IEEEiedjustify{0}% left justified labels are default + % set other defaults + \IEEEnocalcleftmarginfalse% + \IEEEnolabelindentfactorfalse% + \topsep\IEEEiedtopsep% + \IEEElabelindent\IEEEdlabelindent% + % assume normal labelsep + \labelsep\IEEEiednormlabelsep% + \partopsep 0ex% + \parsep 0ex% + \itemsep 0ex% + \rightmargin 0em% + \listparindent 0em% + \itemindent 0em% + % Bogus label width in case the user forgets + % to set it. + % TIP: If you want to see what a variable's width is you + % can use the TeX command \showthe\width-variable to + % display it on the screen during compilation + % (This might be helpful to know when you need to find out + % which label is the widest) + \settowidth{\labelwidth}{Hello}% + \@IEEEsavelistparams% save our list parameters + \list{}{\@IEEErestorelistparams% override any list{} changes + % to our globals + \let\makelabel\@IEEEiedmakelabel% v1.6b setup \makelabel + \IEEEiedlistdecl% let user alter parameters + #1\relax% + % If the user has requested not to use the + % labelindent factor, don't revise \IEEElabelindent + \ifIEEEnolabelindentfactor\relax% + \else\IEEElabelindent=\IEEElabelindentfactor\IEEElabelindent% + \fi% + % Unless the user has requested otherwise, + % calculate our left margin based + % on \IEEElabelindent, \labelwidth and + % \labelsep + \ifIEEEnocalcleftmargin\relax% + \else\IEEEcalcleftmargin{\IEEElabelindent}\relax% + \fi}\fi} + +% v1.6b we use one makelabel that does justification as needed. +\def\@IEEEiedmakelabel#1{\relax\if\@IEEEiedjustify 0\relax +\makebox[\labelwidth][l]{\normalfont #1}\else +\if\@IEEEiedjustify 1\relax +\makebox[\labelwidth][c]{\normalfont #1}\else +\makebox[\labelwidth][r]{\normalfont #1}\fi\fi} + + + + + + + + + +% used only by IEEEtran's IEEEeqnarray as other packages may +% have their own, different, implementations +\newcounter{IEEEsubequation}[equation] + +% e.g., "1a" (used only by IEEEtran's IEEEeqnarray) +\def\theIEEEsubequation{\theequation\alph{IEEEsubequation}} +% just like LaTeX2e's \@eqnnum +\def\theequationdis{(\theequation)}% (1) +% IEEEsubequation used only by IEEEtran's IEEEeqnarray +\def\theIEEEsubequationdis{(\theIEEEsubequation)}% (1a) + + + + +%% +%% START OF IEEEeqnarray DEFINITIONS +%% +%% Inspired by the concepts, examples, and previous works of LaTeX +%% coders and developers such as Donald Arseneau, Fred Bartlett, +%% David Carlisle, Tony Liu, Frank Mittelbach, Piet van Oostrum, +%% Roland Winkler and Mark Wooding. +%% I don't make the claim that my work here is even near their calibre. ;) + + +\newif\if@IEEEeqnarrayboxnojot% flag to indicate if the environment was called as the star form +\@IEEEeqnarrayboxnojotfalse + +\newif\if@advanceIEEEeqncolcnt% tracks if the environment should advance the col counter +% allows a way to make an \IEEEeqnarraybox that can be used within an \IEEEeqnarray +% used by IEEEeqnarraymulticol so that it can work properly in both +\@advanceIEEEeqncolcnttrue + +\newcount\@IEEEeqnnumcols % tracks how many IEEEeqnarray cols are defined +\newcount\@IEEEeqncolcnt % tracks how many IEEEeqnarray cols the user actually used + + +% The default math style used by the columns +\def\IEEEeqnarraymathstyle{\displaystyle} +% The default text style used by the columns +% default to using the current font +\def\IEEEeqnarraytextstyle{\relax} + +% like the iedlistdecl but for \IEEEeqnarray +\def\IEEEeqnarraydecl{\relax} +\def\IEEEeqnarrayboxdecl{\relax} + + + +% V1.8 flags to indicate that equation numbering is to persist +\newif\if@IEEEeqnumpersist% +\@IEEEeqnumpersistfalse +\newif\if@IEEEsubeqnumpersist% +\@IEEEsubeqnumpersistfalse +% +% V1.8 flags to indicate if (sub)equation number of last line was preadvanced +\newif\if@IEEEeqnumpreadv% +\@IEEEeqnumpreadvfalse +\newif\if@IEEEsubeqnumpreadv% +\@IEEEsubeqnumpreadvfalse + +\newcount\@IEEEsubeqnnumrollback% saves previous value of IEEEsubequation number in case we need to restore it + +% \yesnumber is the opposite of \nonumber +% a novel concept with the same def as the equationarray package +% However, we give IEEE versions too since some LaTeX packages such as +% the MDWtools mathenv.sty redefine \nonumber to something else. +% This command is intended for use in non-IEEEeqnarray math environments +\providecommand{\yesnumber}{\global\@eqnswtrue} + + +% IEEEyes/nonumber +% V1.8 add persistant * forms +% These commands can alter the type of equation an IEEEeqnarray line is. +\def\IEEEyesnumber{\@ifstar{\global\@IEEEeqnumpersisttrue\global\@IEEEsubeqnumpersistfalse\@IEEEyesnumber}{\@IEEEyesnumber}} + +\def\@IEEEyesnumber{\global\@eqnswtrue +\if@IEEEeqnarrayISinner% alter counters and label only inside an IEEEeqnarray +\ifnum\c@IEEEsubequation>0\relax + \stepcounter{equation}\setcounter{IEEEsubequation}{0}\gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label +\fi +% even if we reached this eqn num via a preadv, it is legit now +\global\@IEEEeqnumpreadvfalse\global\@IEEEsubeqnumpreadvfalse +\fi} + +\def\IEEEnonumber{\@ifstar{\global\@IEEEeqnumpersistfalse\global\@IEEEsubeqnumpersistfalse\global\@eqnswfalse}{\global\@eqnswfalse}} + + +\def\IEEEyessubnumber{\@ifstar{\global\@IEEEsubeqnumpersisttrue\@IEEEyessubnumber}{\@IEEEyessubnumber}} +% +\def\@IEEEyessubnumber{\if@IEEEeqnarrayISinner% alter counters and label only inside an IEEEeqnarray + \ifnum\c@IEEEsubequation>0\relax% if it already is a subequation, we are good to go as-is + \else% if we are a regular equation we have to watch out for two cases + \if@IEEEeqnumpreadv% if this equation is the result of a preadvance, backout and bump the sub eqnnum + \global\advance\c@equation\m@ne\global\c@IEEEsubequation=\@IEEEsubeqnnumrollback\addtocounter{IEEEsubequation}{1}\relax + \else% non-preadvanced equations just need initialization of their sub eqnnum + \setcounter{IEEEsubequation}{1}\relax + \fi + \fi% fi already is subequation + \gdef\@currentlabel{\p@IEEEsubequation\theIEEEsubequation}\relax + \gdef\@currentHref{\@IEEEtheHrefsubequation}% setup hyperref label + \global\@IEEEeqnumpreadvfalse\global\@IEEEsubeqnumpreadvfalse% no longer a preadv anymore + \global\@eqnswtrue +\fi} + + +\def\IEEEnosubnumber{\@ifstar{\global\@IEEEsubeqnumpersistfalse\@IEEEnosubnumber}{\@IEEEnosubnumber}} +% +\def\@IEEEnosubnumber{\if@IEEEeqnarrayISinner% alter counters and label only inside an IEEEeqnarray + \if@eqnsw % we do nothing unless we know we will display because we play with the counters here + % if it currently is a subequation, bump up to the next equation number and turn off the subequation + \ifnum\c@IEEEsubequation>0\relax\addtocounter{equation}{1}\setcounter{IEEEsubequation}{0}\relax + \fi + \global\@IEEEeqnumpreadvfalse\global\@IEEEsubeqnumpreadvfalse% no longer a preadv anymore + \gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \fi +\fi} + + + +% allows users to "push away" equations that get too close to the equation numbers +\def\IEEEeqnarraynumspace{\hphantom{\ifnum\c@IEEEsubequation>0\relax\theIEEEsubequationdis\else\theequationdis\fi}} + +% provides a way to span multiple columns within IEEEeqnarray environments +% will consider \if@advanceIEEEeqncolcnt before globally advancing the +% column counter - so as to work within \IEEEeqnarraybox +% usage: \IEEEeqnarraymulticol{number cols. to span}{col type}{cell text} +\long\def\IEEEeqnarraymulticol#1#2#3{\multispan{#1}\relax +% check if column is defined for the precolumn definition +% We have to be careful here because TeX scans for & even within an \iffalse +% where it does not expand macros. So, if we used only one \ifx and a #3 +% appeared in the false branch and the user inserted another alignment +% structure that uses & in the \IEEEeqnarraymulticol{}, TeX will not see that +% there is an inner alignment in the false branch yet still will see any & +% there and will think that they apply to the outer alignment resulting in an +% incomplete \ifx error. +% So, here we use separate checks for the pre and post parts in order to keep +% the #3 outside of all conditionals. +\relax\expandafter\ifx\csname @IEEEeqnarraycolDEF#2\endcsname\@IEEEeqnarraycolisdefined\relax +\csname @IEEEeqnarraycolPRE#2\endcsname +\else% if not, error and use default type +\@IEEEclspkgerror{Invalid column type "#2" in \string\IEEEeqnarraymulticol.\MessageBreak +Using a default centering column instead}% +{You must define IEEEeqnarray column types before use.}% +\csname @IEEEeqnarraycolPRE@IEEEdefault\endcsname +\fi +% The ten \relax are to help prevent misleading error messages in case a user +% accidently inserted a macro that tries to acquire additional arguments. +#3\relax\relax\relax\relax\relax\relax\relax\relax\relax\relax +% check if column is defined for the postcolumn definition +\expandafter\ifx\csname @IEEEeqnarraycolDEF#2\endcsname\@IEEEeqnarraycolisdefined\relax +\csname @IEEEeqnarraycolPOST#2\endcsname +\else% if not, use the default type +\csname @IEEEeqnarraycolPOST@IEEEdefault\endcsname +\fi +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by #1\relax\fi} + +% like \omit, but maintains track of the column counter for \IEEEeqnarray +\def\IEEEeqnarrayomit{\omit\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by 1\relax\fi} + + +% provides a way to define a letter referenced column type +% usage: \IEEEeqnarraydefcol{col. type letter/name}{pre insertion text}{post insertion text} +\def\IEEEeqnarraydefcol#1#2#3{\expandafter\def\csname @IEEEeqnarraycolPRE#1\endcsname{#2}% +\expandafter\def\csname @IEEEeqnarraycolPOST#1\endcsname{#3}% +\expandafter\def\csname @IEEEeqnarraycolDEF#1\endcsname{1}} + + +% provides a way to define a numerically referenced inter-column glue types +% usage: \IEEEeqnarraydefcolsep{col. glue number}{glue definition} +\def\IEEEeqnarraydefcolsep#1#2{\expandafter\def\csname @IEEEeqnarraycolSEP\romannumeral #1\endcsname{#2}% +\expandafter\def\csname @IEEEeqnarraycolSEPDEF\romannumeral #1\endcsname{1}} + + +\def\@IEEEeqnarraycolisdefined{1}% just a macro for 1, used for checking undefined column types + + +% expands and appends the given argument to the \@IEEEtrantmptoksA token list +% used to build up the \halign preamble +\def\@IEEEappendtoksA#1{\edef\@@IEEEappendtoksA{\@IEEEtrantmptoksA={\the\@IEEEtrantmptoksA #1}}% +\@@IEEEappendtoksA} + +% also appends to \@IEEEtrantmptoksA, but does not expand the argument +% uses \toks8 as a scratchpad register +\def\@IEEEappendNOEXPANDtoksA#1{\toks8={#1}% +\edef\@@IEEEappendNOEXPANDtoksA{\@IEEEtrantmptoksA={\the\@IEEEtrantmptoksA\the\toks8}}% +\@@IEEEappendNOEXPANDtoksA} + +% define some common column types for the user +% math +\IEEEeqnarraydefcol{l}{$\IEEEeqnarraymathstyle}{$\hfil} +\IEEEeqnarraydefcol{c}{\hfil$\IEEEeqnarraymathstyle}{$\hfil} +\IEEEeqnarraydefcol{r}{\hfil$\IEEEeqnarraymathstyle}{$} +\IEEEeqnarraydefcol{L}{$\IEEEeqnarraymathstyle{}}{{}$\hfil} +\IEEEeqnarraydefcol{C}{\hfil$\IEEEeqnarraymathstyle{}}{{}$\hfil} +\IEEEeqnarraydefcol{R}{\hfil$\IEEEeqnarraymathstyle{}}{{}$} +% text +\IEEEeqnarraydefcol{s}{\IEEEeqnarraytextstyle}{\hfil} +\IEEEeqnarraydefcol{t}{\hfil\IEEEeqnarraytextstyle}{\hfil} +\IEEEeqnarraydefcol{u}{\hfil\IEEEeqnarraytextstyle}{} + +% vertical rules +\IEEEeqnarraydefcol{v}{}{\vrule width\arrayrulewidth} +\IEEEeqnarraydefcol{vv}{\vrule width\arrayrulewidth\hfil}{\hfil\vrule width\arrayrulewidth} +\IEEEeqnarraydefcol{V}{}{\vrule width\arrayrulewidth\hskip\doublerulesep\vrule width\arrayrulewidth} +\IEEEeqnarraydefcol{VV}{\vrule width\arrayrulewidth\hskip\doublerulesep\vrule width\arrayrulewidth\hfil}% +{\hfil\vrule width\arrayrulewidth\hskip\doublerulesep\vrule width\arrayrulewidth} + +% horizontal rules +\IEEEeqnarraydefcol{h}{}{\leaders\hrule height\arrayrulewidth\hfil} +\IEEEeqnarraydefcol{H}{}{\leaders\vbox{\hrule width\arrayrulewidth\vskip\doublerulesep\hrule width\arrayrulewidth}\hfil} + +% plain +\IEEEeqnarraydefcol{x}{}{} +\IEEEeqnarraydefcol{X}{$}{$} + +% the default column type to use in the event a column type is not defined +\IEEEeqnarraydefcol{@IEEEdefault}{\hfil$\IEEEeqnarraymathstyle}{$\hfil} + + +% a zero tabskip (used for "-" col types) +\def\@IEEEeqnarraycolSEPzero{0pt plus 0pt minus 0pt} +% a centering tabskip (used for "+" col types) +\def\@IEEEeqnarraycolSEPcenter{1000pt plus 0pt minus 1000pt} + +% top level default tabskip glues for the start, end, and inter-column +% may be reset within environments not always at the top level, e.g., \IEEEeqnarraybox +\edef\@IEEEeqnarraycolSEPdefaultstart{\@IEEEeqnarraycolSEPcenter}% default start glue +\edef\@IEEEeqnarraycolSEPdefaultend{\@IEEEeqnarraycolSEPcenter}% default end glue +\edef\@IEEEeqnarraycolSEPdefaultmid{\@IEEEeqnarraycolSEPzero}% default inter-column glue + + + +% creates a vertical rule that extends from the bottom to the top a a cell +% Provided in case other packages redefine \vline some other way. +% usage: \IEEEeqnarrayvrule[rule thickness] +% If no argument is provided, \arrayrulewidth will be used for the rule thickness. +\newcommand\IEEEeqnarrayvrule[1][\arrayrulewidth]{\vrule\@width#1\relax} + +% creates a blank separator row +% usage: \IEEEeqnarrayseprow[separation length][font size commands] +% default is \IEEEeqnarrayseprow[0.25\normalbaselineskip][\relax] +% blank arguments inherit the default values +% uses \skip5 as a scratch register - calls \@IEEEeqnarraystrutsize which uses more scratch registers +\def\IEEEeqnarrayseprow{\relax\@ifnextchar[{\@IEEEeqnarrayseprow}{\@IEEEeqnarrayseprow[0.25\normalbaselineskip]}} +\def\@IEEEeqnarrayseprow[#1]{\relax\@ifnextchar[{\@@IEEEeqnarrayseprow[#1]}{\@@IEEEeqnarrayseprow[#1][\relax]}} +\def\@@IEEEeqnarrayseprow[#1][#2]{\def\@IEEEeqnarrayseprowARGONE{#1}% +\ifx\@IEEEeqnarrayseprowARGONE\@empty% +% get the skip value, based on the font commands +% use skip5 because \IEEEeqnarraystrutsize uses \skip0, \skip2, \skip3 +% assign within a bogus box to confine the font changes +{\setbox0=\hbox{#2\relax\global\skip5=0.25\normalbaselineskip}}% +\else% +{\setbox0=\hbox{#2\relax\global\skip5=#1}}% +\fi% +\@IEEEeqnarrayhoptolastcolumn\IEEEeqnarraystrutsize{\skip5}{0pt}[\relax]\relax} + +% creates a blank separator row, but omits all the column templates +% usage: \IEEEeqnarrayseprowcut[separation length][font size commands] +% default is \IEEEeqnarrayseprowcut[0.25\normalbaselineskip][\relax] +% blank arguments inherit the default values +% uses \skip5 as a scratch register - calls \@IEEEeqnarraystrutsize which uses more scratch registers +\def\IEEEeqnarrayseprowcut{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarrayseprowcut}{\@IEEEeqnarrayseprowcut[0.25\normalbaselineskip]}} +\def\@IEEEeqnarrayseprowcut[#1]{\relax\@ifnextchar[{\@@IEEEeqnarrayseprowcut[#1]}{\@@IEEEeqnarrayseprowcut[#1][\relax]}} +\def\@@IEEEeqnarrayseprowcut[#1][#2]{\def\@IEEEeqnarrayseprowARGONE{#1}% +\ifx\@IEEEeqnarrayseprowARGONE\@empty% +% get the skip value, based on the font commands +% use skip5 because \IEEEeqnarraystrutsize uses \skip0, \skip2, \skip3 +% assign within a bogus box to confine the font changes +{\setbox0=\hbox{#2\relax\global\skip5=0.25\normalbaselineskip}}% +\else% +{\setbox0=\hbox{#2\relax\global\skip5=#1}}% +\fi% +\IEEEeqnarraystrutsize{\skip5}{0pt}[\relax]\relax} + + + +% draws a single rule across all the columns optional +% argument determines the rule width, \arrayrulewidth is the default +% updates column counter as needed and turns off struts +% usage: \IEEEeqnarrayrulerow[rule line thickness] +\def\IEEEeqnarrayrulerow{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarrayrulerow}{\@IEEEeqnarrayrulerow[\arrayrulewidth]}} +\def\@IEEEeqnarrayrulerow[#1]{\leaders\hrule height#1\hfil\relax% put in our rule +% turn off any struts +\IEEEeqnarraystrutsize{0pt}{0pt}[\relax]\relax} + + +% draws a double rule by using a single rule row, a separator row, and then +% another single rule row +% first optional argument determines the rule thicknesses, \arrayrulewidth is the default +% second optional argument determines the rule spacing, \doublerulesep is the default +% usage: \IEEEeqnarraydblrulerow[rule line thickness][rule spacing] +\def\IEEEeqnarraydblrulerow{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarraydblrulerow}{\@IEEEeqnarraydblrulerow[\arrayrulewidth]}} +\def\@IEEEeqnarraydblrulerow[#1]{\relax\@ifnextchar[{\@@IEEEeqnarraydblrulerow[#1]}% +{\@@IEEEeqnarraydblrulerow[#1][\doublerulesep]}} +\def\@@IEEEeqnarraydblrulerow[#1][#2]{\def\@IEEEeqnarraydblrulerowARG{#1}% +% we allow the user to say \IEEEeqnarraydblrulerow[][] +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]\relax% +\fi% +\def\@IEEEeqnarraydblrulerowARG{#2}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\\\IEEEeqnarrayseprow[\doublerulesep][\relax]% +\else% +\\\IEEEeqnarrayseprow[#2][\relax]% +\fi% +\\\multispan{\@IEEEeqnnumcols}% +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\def\@IEEEeqnarraydblrulerowARG{#1}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]% +\fi% +} + +% draws a double rule by using a single rule row, a separator (cutting) row, and then +% another single rule row +% first optional argument determines the rule thicknesses, \arrayrulewidth is the default +% second optional argument determines the rule spacing, \doublerulesep is the default +% usage: \IEEEeqnarraydblrulerow[rule line thickness][rule spacing] +\def\IEEEeqnarraydblrulerowcut{\multispan{\@IEEEeqnnumcols}\relax% span all the cols +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\@ifnextchar[{\@IEEEeqnarraydblrulerowcut}{\@IEEEeqnarraydblrulerowcut[\arrayrulewidth]}} +\def\@IEEEeqnarraydblrulerowcut[#1]{\relax\@ifnextchar[{\@@IEEEeqnarraydblrulerowcut[#1]}% +{\@@IEEEeqnarraydblrulerowcut[#1][\doublerulesep]}} +\def\@@IEEEeqnarraydblrulerowcut[#1][#2]{\def\@IEEEeqnarraydblrulerowARG{#1}% +% we allow the user to say \IEEEeqnarraydblrulerow[][] +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]% +\fi% +\def\@IEEEeqnarraydblrulerowARG{#2}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\\\IEEEeqnarrayseprowcut[\doublerulesep][\relax]% +\else% +\\\IEEEeqnarrayseprowcut[#2][\relax]% +\fi% +\\\multispan{\@IEEEeqnnumcols}% +% advance column counter only if the IEEEeqnarray environment wants it +\if@advanceIEEEeqncolcnt\global\advance\@IEEEeqncolcnt by \@IEEEeqnnumcols\relax\fi% +\def\@IEEEeqnarraydblrulerowARG{#1}% +\ifx\@IEEEeqnarraydblrulerowARG\@empty% +\@IEEEeqnarrayrulerow[\arrayrulewidth]% +\else% +\@IEEEeqnarrayrulerow[#1]% +\fi% +} + + + +% inserts a full row's worth of &'s +% relies on \@IEEEeqnnumcols to provide the correct number of columns +% uses \@IEEEtrantmptoksA, \count0 as scratch registers +\def\@IEEEeqnarrayhoptolastcolumn{\@IEEEtrantmptoksA={}\count0=1\relax% +\loop% add cols if the user did not use them all +\ifnum\count0<\@IEEEeqnnumcols\relax% +\@IEEEappendtoksA{&}% +\advance\count0 by 1\relax% update the col count +\repeat% +\the\@IEEEtrantmptoksA%execute the &'s +} + + + +\newif\if@IEEEeqnarrayISinner % flag to indicate if we are within the lines +\@IEEEeqnarrayISinnerfalse % of an IEEEeqnarray - after the IEEEeqnarraydecl + +\edef\@IEEEeqnarrayTHEstrutheight{0pt} % height and depth of IEEEeqnarray struts +\edef\@IEEEeqnarrayTHEstrutdepth{0pt} + +\edef\@IEEEeqnarrayTHEmasterstrutheight{0pt} % default height and depth of +\edef\@IEEEeqnarrayTHEmasterstrutdepth{0pt} % struts within an IEEEeqnarray + +\edef\@IEEEeqnarrayTHEmasterstrutHSAVE{0pt} % saved master strut height +\edef\@IEEEeqnarrayTHEmasterstrutDSAVE{0pt} % and depth + +\newif\if@IEEEeqnarrayusemasterstrut % flag to indicate that the master strut value +\@IEEEeqnarrayusemasterstruttrue % is to be used + + + +% saves the strut height and depth of the master strut +\def\@IEEEeqnarraymasterstrutsave{\relax% +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +% remove stretchability +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% save values +\edef\@IEEEeqnarrayTHEmasterstrutHSAVE{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutDSAVE{\the\dimen2}} + +% restores the strut height and depth of the master strut +\def\@IEEEeqnarraymasterstrutrestore{\relax% +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutHSAVE\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutDSAVE\relax% +% remove stretchability +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% restore values +\edef\@IEEEeqnarrayTHEmasterstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutdepth{\the\dimen2}} + + +% globally restores the strut height and depth to the +% master values and sets the master strut flag to true +\def\@IEEEeqnarraystrutreset{\relax% +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +% remove stretchability +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% restore values +\xdef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\xdef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\global\@IEEEeqnarrayusemasterstruttrue} + + +% if the master strut is not to be used, make the current +% values of \@IEEEeqnarrayTHEstrutheight, \@IEEEeqnarrayTHEstrutdepth +% and the use master strut flag, global +% this allows user strut commands issued in the last column to be carried +% into the isolation/strut column +\def\@IEEEeqnarrayglobalizestrutstatus{\relax% +\if@IEEEeqnarrayusemasterstrut\else% +\xdef\@IEEEeqnarrayTHEstrutheight{\@IEEEeqnarrayTHEstrutheight}% +\xdef\@IEEEeqnarrayTHEstrutdepth{\@IEEEeqnarrayTHEstrutdepth}% +\global\@IEEEeqnarrayusemasterstrutfalse% +\fi} + + + +% usage: \IEEEeqnarraystrutsize{height}{depth}[font size commands] +% If called outside the lines of an IEEEeqnarray, sets the height +% and depth of both the master and local struts. If called inside +% an IEEEeqnarray line, sets the height and depth of the local strut +% only and sets the flag to indicate the use of the local strut +% values. If the height or depth is left blank, 0.7\normalbaselineskip +% and 0.3\normalbaselineskip will be used, respectively. +% The optional argument can be used to evaluate the lengths under +% a different font size and styles. If none is specified, the current +% font is used. +% uses scratch registers \skip0, \skip2, \skip3, \dimen0, \dimen2 +\def\IEEEeqnarraystrutsize#1#2{\relax\@ifnextchar[{\@IEEEeqnarraystrutsize{#1}{#2}}{\@IEEEeqnarraystrutsize{#1}{#2}[\relax]}} +\def\@IEEEeqnarraystrutsize#1#2[#3]{\def\@IEEEeqnarraystrutsizeARG{#1}% +\ifx\@IEEEeqnarraystrutsizeARG\@empty% +{\setbox0=\hbox{#3\relax\global\skip3=0.7\normalbaselineskip}}% +\skip0=\skip3\relax% +\else% arg one present +{\setbox0=\hbox{#3\relax\global\skip3=#1\relax}}% +\skip0=\skip3\relax% +\fi% if null arg +\def\@IEEEeqnarraystrutsizeARG{#2}% +\ifx\@IEEEeqnarraystrutsizeARG\@empty% +{\setbox0=\hbox{#3\relax\global\skip3=0.3\normalbaselineskip}}% +\skip2=\skip3\relax% +\else% arg two present +{\setbox0=\hbox{#3\relax\global\skip3=#2\relax}}% +\skip2=\skip3\relax% +\fi% if null arg +% remove stretchability, just to be safe +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% dimen0 = height, dimen2 = depth +\if@IEEEeqnarrayISinner% inner does not touch master strut size +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstrutfalse% do not use master +\else% outer, have to set master strut too +\edef\@IEEEeqnarrayTHEmasterstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutdepth{\the\dimen2}% +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstruttrue% use master strut +\fi} + + +% usage: \IEEEeqnarraystrutsizeadd{added height}{added depth}[font size commands] +% If called outside the lines of an IEEEeqnarray, adds the given height +% and depth to both the master and local struts. +% If called inside an IEEEeqnarray line, adds the given height and depth +% to the local strut only and sets the flag to indicate the use +% of the local strut values. +% In both cases, if a height or depth is left blank, 0pt is used instead. +% The optional argument can be used to evaluate the lengths under +% a different font size and styles. If none is specified, the current +% font is used. +% uses scratch registers \skip0, \skip2, \skip3, \dimen0, \dimen2 +\def\IEEEeqnarraystrutsizeadd#1#2{\relax\@ifnextchar[{\@IEEEeqnarraystrutsizeadd{#1}{#2}}{\@IEEEeqnarraystrutsizeadd{#1}{#2}[\relax]}} +\def\@IEEEeqnarraystrutsizeadd#1#2[#3]{\def\@IEEEeqnarraystrutsizearg{#1}% +\ifx\@IEEEeqnarraystrutsizearg\@empty% +\skip0=0pt\relax% +\else% arg one present +{\setbox0=\hbox{#3\relax\global\skip3=#1}}% +\skip0=\skip3\relax% +\fi% if null arg +\def\@IEEEeqnarraystrutsizearg{#2}% +\ifx\@IEEEeqnarraystrutsizearg\@empty% +\skip2=0pt\relax% +\else% arg two present +{\setbox0=\hbox{#3\relax\global\skip3=#2}}% +\skip2=\skip3\relax% +\fi% if null arg +% remove stretchability, just to be safe +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% dimen0 = height, dimen2 = depth +\if@IEEEeqnarrayISinner% inner does not touch master strut size +% get local strut size +\expandafter\skip0=\@IEEEeqnarrayTHEstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEstrutdepth\relax% +% add it to the user supplied values +\advance\dimen0 by \skip0\relax% +\advance\dimen2 by \skip2\relax% +% update the local strut size +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstrutfalse% do not use master +\else% outer, have to set master strut too +% get master strut size +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +% add it to the user supplied values +\advance\dimen0 by \skip0\relax% +\advance\dimen2 by \skip2\relax% +% update the local and master strut sizes +\edef\@IEEEeqnarrayTHEmasterstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEmasterstrutdepth{\the\dimen2}% +\edef\@IEEEeqnarrayTHEstrutheight{\the\dimen0}% +\edef\@IEEEeqnarrayTHEstrutdepth{\the\dimen2}% +\@IEEEeqnarrayusemasterstruttrue% use master strut +\fi} + + +% allow user a way to see the struts +\newif\ifIEEEvisiblestruts +\IEEEvisiblestrutsfalse + +% inserts an invisible strut using the master or local strut values +% uses scratch registers \skip0, \skip2, \dimen0, \dimen2 +\def\@IEEEeqnarrayinsertstrut{\relax% +\if@IEEEeqnarrayusemasterstrut +% get master strut size +\expandafter\skip0=\@IEEEeqnarrayTHEmasterstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEmasterstrutdepth\relax% +\else% +% get local strut size +\expandafter\skip0=\@IEEEeqnarrayTHEstrutheight\relax% +\expandafter\skip2=\@IEEEeqnarrayTHEstrutdepth\relax% +\fi% +% remove stretchability, probably not needed +\dimen0\skip0\relax% +\dimen2\skip2\relax% +% dimen0 = height, dimen2 = depth +% allow user to see struts if desired +\ifIEEEvisiblestruts% +\vrule width0.2pt height\dimen0 depth\dimen2\relax% +\else% +\vrule width0pt height\dimen0 depth\dimen2\relax\fi} + + +% creates an invisible strut, useable even outside \IEEEeqnarray +% if \IEEEvisiblestrutstrue, the strut will be visible and 0.2pt wide. +% usage: \IEEEstrut[height][depth][font size commands] +% default is \IEEEstrut[0.7\normalbaselineskip][0.3\normalbaselineskip][\relax] +% blank arguments inherit the default values +% uses \dimen0, \dimen2, \skip0, \skip2 +\def\IEEEstrut{\relax\@ifnextchar[{\@IEEEstrut}{\@IEEEstrut[0.7\normalbaselineskip]}} +\def\@IEEEstrut[#1]{\relax\@ifnextchar[{\@@IEEEstrut[#1]}{\@@IEEEstrut[#1][0.3\normalbaselineskip]}} +\def\@@IEEEstrut[#1][#2]{\relax\@ifnextchar[{\@@@IEEEstrut[#1][#2]}{\@@@IEEEstrut[#1][#2][\relax]}} +\def\@@@IEEEstrut[#1][#2][#3]{\mbox{#3\relax% +\def\@IEEEstrutARG{#1}% +\ifx\@IEEEstrutARG\@empty% +\skip0=0.7\normalbaselineskip\relax% +\else% +\skip0=#1\relax% +\fi% +\def\@IEEEstrutARG{#2}% +\ifx\@IEEEstrutARG\@empty% +\skip2=0.3\normalbaselineskip\relax% +\else% +\skip2=#2\relax% +\fi% +% remove stretchability, probably not needed +\dimen0\skip0\relax% +\dimen2\skip2\relax% +\ifIEEEvisiblestruts% +\vrule width0.2pt height\dimen0 depth\dimen2\relax% +\else% +\vrule width0.0pt height\dimen0 depth\dimen2\relax\fi}} + + +% enables strut mode by setting a default strut size and then zeroing the +% \baselineskip, \lineskip, \lineskiplimit and \jot +\def\IEEEeqnarraystrutmode{\IEEEeqnarraystrutsize{0.7\normalbaselineskip}{0.3\normalbaselineskip}[\relax]% +\baselineskip=0pt\lineskip=0pt\lineskiplimit=0pt\jot=0pt} + + +% equation and subequation forms to use to setup hyperref's \@currentHref +\def\@IEEEtheHrefequation{equation.\theHequation} +\def\@IEEEtheHrefsubequation{equation.\theHequation\alph{IEEEsubequation}} + + +\def\IEEEeqnarray{\@IEEEeqnumpersisttrue\@IEEEsubeqnumpersistfalse\@IEEEeqnarray} +\def\endIEEEeqnarray{\end@IEEEeqnarray} + +\@namedef{IEEEeqnarray*}{\@IEEEeqnumpersistfalse\@IEEEsubeqnumpersistfalse\@IEEEeqnarray} +\@namedef{endIEEEeqnarray*}{\end@IEEEeqnarray} + + +% \IEEEeqnarray is an enhanced \eqnarray. +% The star form defaults to not putting equation numbers at the end of each row. +% usage: \IEEEeqnarray[decl]{cols} +\def\@IEEEeqnarray{\relax\@ifnextchar[{\@@IEEEeqnarray}{\@@IEEEeqnarray[\relax]}} +% We have to be careful here to normalize catcodes just before acquiring the +% cols as that specification may contain punctuation which could be subject +% to document catcode changes. +\def\@@IEEEeqnarray[#1]{\begingroup\IEEEnormalcatcodes\@@@IEEEeqnarray[#1]} +\def\@@@IEEEeqnarray[#1]#2{\endgroup + % default to showing the equation number or not based on whether or not + % the star form was involked + \if@IEEEeqnumpersist\global\@eqnswtrue + \else% not the star form + \global\@eqnswfalse + \fi% if star form + % provide a basic hyperref \theHequation if this has not already been setup (hyperref not loaded, or no section counter) + \@ifundefined{theHequation}{\def\theHequation{\arabic{equation}}}{}\relax + % provide dummy hyperref commands in case hyperref is not loaded + \providecommand{\Hy@raisedlink}[1]{}\relax + \providecommand{\hyper@anchorstart}[1]{}\relax + \providecommand{\hyper@anchorend}{}\relax + \providecommand{\@currentHref}{}\relax + \@IEEEeqnumpreadvfalse% reset eqnpreadv flag + \@IEEEsubeqnumpreadvfalse% reset subeqnpreadv flag + \@IEEEeqnarrayISinnerfalse% not yet within the lines of the halign + \@IEEEeqnarraystrutsize{0pt}{0pt}[\relax]% turn off struts by default + \@IEEEeqnarrayusemasterstruttrue% use master strut till user asks otherwise + \IEEEvisiblestrutsfalse% diagnostic mode defaults to off + % no extra space unless the user specifically requests it + \lineskip=0pt\relax + \lineskiplimit=0pt\relax + \baselineskip=\normalbaselineskip\relax% + \jot=\IEEEnormaljot\relax% + \mathsurround\z@\relax% no extra spacing around math + \@advanceIEEEeqncolcnttrue% advance the col counter for each col the user uses, + % used in \IEEEeqnarraymulticol and in the preamble build + %V1.8 Here we preadvance to the next equation number. + % If the user later wants a continued subequation, we can roll back. + \global\@IEEEsubeqnnumrollback=\c@IEEEsubequation% + \stepcounter{equation}\@IEEEeqnumpreadvtrue% advance equation counter before first line + \setcounter{IEEEsubequation}{0}% no subequation yet + \let\@IEEEcurrentlabelsave\@currentlabel% save current label as we later change it globally + \let\@IEEEcurrentHrefsave\@currentHref% save current href label as we later change it globally + \def\@currentlabel{\p@equation\theequation}% redefine the ref label + \def\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \IEEEeqnarraydecl\relax% allow a way for the user to make global overrides + #1\relax% allow user to override defaults + \let\\\@IEEEeqnarraycr% replace newline with one that can put in eqn. numbers + \global\@IEEEeqncolcnt\z@% col. count = 0 for first line + \@IEEEbuildpreamble{#2}\relax% build the preamble and put it into \@IEEEtrantmptoksA + % put in the column for the equation number + \ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi% col separator for those after the first + \toks0={##}% + % advance the \@IEEEeqncolcnt for the isolation col, this helps with error checking + \@IEEEappendtoksA{\global\advance\@IEEEeqncolcnt by 1\relax}% + % add the isolation column + \@IEEEappendtoksA{\tabskip\z@skip\bgroup\the\toks0\egroup}% + % advance the \@IEEEeqncolcnt for the equation number col, this helps with error checking + \@IEEEappendtoksA{&\global\advance\@IEEEeqncolcnt by 1\relax}% + % add the equation number col to the preamble + \@IEEEappendtoksA{\tabskip\z@skip\hb@xt@\z@\bgroup\hss\the\toks0\egroup}% + % note \@IEEEeqnnumcols does not count the equation col or isolation col + % set the starting tabskip glue as determined by the preamble build + \tabskip=\@IEEEBPstartglue\relax + % begin the display alignment + \@IEEEeqnarrayISinnertrue% commands are now within the lines + $$\everycr{}\halign to\displaywidth\bgroup + % "exspand" the preamble + \span\the\@IEEEtrantmptoksA\cr} + +% enter isolation/strut column (or the next column if the user did not use +% every column), record the strut status, complete the columns, do the strut if needed, +% restore counters (to backout any equation setup for a next line that was never used) +% to their correct values and exit +\def\end@IEEEeqnarray{\@IEEEeqnarrayglobalizestrutstatus&\@@IEEEeqnarraycr\egroup +\if@IEEEsubeqnumpreadv\global\advance\c@IEEEsubequation\m@ne\fi +\if@IEEEeqnumpreadv\global\advance\c@equation\m@ne\global\c@IEEEsubequation=\@IEEEsubeqnnumrollback\fi +\global\let\@currentlabel\@IEEEcurrentlabelsave% restore current label +\global\let\@currentHref\@IEEEcurrentHrefsave% restore current href label +$$\@ignoretrue} + + +% IEEEeqnarray uses a modifed \\ instead of the plain \cr to +% end rows. This allows for things like \\*[vskip amount] +% These "cr" macros are modified versions of those for LaTeX2e's eqnarray +% the {\ifnum0=`} braces must be kept away from the last column to avoid +% altering spacing of its math, so we use & to advance to the next column +% as there is an isolation/strut column after the user's columns +\def\@IEEEeqnarraycr{\@IEEEeqnarrayglobalizestrutstatus&% save strut status and advance to next column + {\ifnum0=`}\fi + \@ifstar{% + \global\@eqpen\@M\@IEEEeqnarrayYCR + }{% + \global\@eqpen\interdisplaylinepenalty \@IEEEeqnarrayYCR + }% +} + +\def\@IEEEeqnarrayYCR{\@testopt\@IEEEeqnarrayXCR\z@skip} + +\def\@IEEEeqnarrayXCR[#1]{% + \ifnum0=`{\fi}% + \@@IEEEeqnarraycr + \noalign{\penalty\@eqpen\vskip\jot\vskip #1\relax}}% + +\def\@@IEEEeqnarraycr{\@IEEEtrantmptoksA={}% clear token register + \advance\@IEEEeqncolcnt by -1\relax% adjust col count because of the isolation column + \ifnum\@IEEEeqncolcnt>\@IEEEeqnnumcols\relax + \@IEEEclspkgerror{Too many columns within the IEEEeqnarray\MessageBreak + environment}% + {Use fewer \string &'s or put more columns in the IEEEeqnarray column\MessageBreak + specifications.}\relax% + \else + \loop% add cols if the user did not use them all + \ifnum\@IEEEeqncolcnt<\@IEEEeqnnumcols\relax + \@IEEEappendtoksA{&}% + \advance\@IEEEeqncolcnt by 1\relax% update the col count + \repeat + % this number of &'s will take us the the isolation column + \fi + % execute the &'s + \the\@IEEEtrantmptoksA% + % handle the strut/isolation column + \@IEEEeqnarrayinsertstrut% do the strut if needed + \@IEEEeqnarraystrutreset% reset the strut system for next line or IEEEeqnarray + &% and enter the equation number column + \if@eqnsw% only if we display something + \Hy@raisedlink{\hyper@anchorstart{\@currentHref}}% start a hyperref anchor + \global\@IEEEeqnumpreadvfalse\relax% displaying an equation number means + \global\@IEEEsubeqnumpreadvfalse\relax% the equation counters point to valid equations + % V1.8 Here we setup the counters, currentlabel and status for what would be the *next* + % equation line as would be the case under the current settings. However, there are two problems. + % One problem is that there might not ever be a next line. The second problem is that the user + % may later alter the meaning of a line with commands such as \IEEEyessubnumber. So, to handle + % these cases we have to record the current values of the (sub)equation counters and revert back + % to them if the next line is changed or never comes. The \if@IEEEeqnumpreadv, \if@IEEEsubeqnumpreadv + % and \@IEEEsubeqnnumrollback stuff tracks this. + % The logic to handle all this is surprisingly complex, but a nice feature of the approach here is + % that the equation counters and labels remain valid for what the line would be unless a + % \IEEEyessubnumber et al. later changes it. So, any hyperref links are always correct. + \ifnum\c@IEEEsubequation>0\relax% handle subequation + \theIEEEsubequationdis\relax + \if@IEEEsubeqnumpersist% setup for default type of next line + \stepcounter{IEEEsubequation}\global\@IEEEsubeqnumpreadvtrue\relax + \gdef\@currentlabel{\p@IEEEsubequation\theIEEEsubequation}\relax + \gdef\@currentHref{\@IEEEtheHrefsubequation}% setup hyperref label + \else + % if no subeqnum persist, go ahead and setup for a new equation number + \global\@IEEEsubeqnnumrollback=\c@IEEEsubequation + \stepcounter{equation}\global\@IEEEeqnumpreadvtrue\relax + \setcounter{IEEEsubequation}{0}\gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \fi + \else% display a standard equation number + \theequationdis\relax + \setcounter{IEEEsubequation}{0}\relax% not really needed + \if@IEEEsubeqnumpersist% setup for default type of next line + % subequations that follow plain equations carry the same equation number e.g, 5, 5a rather than 5, 6a + \stepcounter{IEEEsubequation}\global\@IEEEsubeqnumpreadvtrue\relax + \gdef\@currentlabel{\p@IEEEsubequation\theIEEEsubequation}\relax + \gdef\@currentHref{\@IEEEtheHrefsubequation}% setup hyperref label + \else + % if no subeqnum persist, go ahead and setup for a new equation number + \global\@IEEEsubeqnnumrollback=\c@IEEEsubequation + \stepcounter{equation}\global\@IEEEeqnumpreadvtrue\relax + \setcounter{IEEEsubequation}{0}\gdef\@currentlabel{\p@equation\theequation}\relax + \gdef\@currentHref{\@IEEEtheHrefequation}% setup hyperref label + \fi + \fi% + \Hy@raisedlink{\hyper@anchorend}% end hyperref anchor + \fi% fi only if we display something + % reset the flags to indicate the default preferences of the display of equation numbers + \if@IEEEeqnumpersist\global\@eqnswtrue\else\global\@eqnswfalse\fi + \if@IEEEsubeqnumpersist\global\@eqnswtrue\fi% ditto for the subequation flag + % reset the number of columns the user actually used + \global\@IEEEeqncolcnt\z@\relax + % the real end of the line + \cr} + + + + + +% \IEEEeqnarraybox is like \IEEEeqnarray except the box form puts everything +% inside a vtop, vbox, or vcenter box depending on the letter in the second +% optional argument (t,b,c). Vbox is the default. Unlike \IEEEeqnarray, +% equation numbers are not displayed and \IEEEeqnarraybox can be nested. +% \IEEEeqnarrayboxm is for math mode (like \array) and does not put the vbox +% within an hbox. +% \IEEEeqnarrayboxt is for text mode (like \tabular) and puts the vbox within +% a \hbox{$ $} construct. +% \IEEEeqnarraybox will auto detect whether to use \IEEEeqnarrayboxm or +% \IEEEeqnarrayboxt depending on the math mode. +% The third optional argument specifies the width this box is to be set to - +% natural width is the default. +% The * forms do not add \jot line spacing +% usage: \IEEEeqnarraybox[decl][pos][width]{cols} +\def\IEEEeqnarrayboxm{\@IEEEeqnarrayboxnojotfalse\@IEEEeqnarrayboxHBOXSWfalse\@IEEEeqnarraybox} +\def\endIEEEeqnarrayboxm{\end@IEEEeqnarraybox} +\@namedef{IEEEeqnarrayboxm*}{\@IEEEeqnarrayboxnojottrue\@IEEEeqnarrayboxHBOXSWfalse\@IEEEeqnarraybox} +\@namedef{endIEEEeqnarrayboxm*}{\end@IEEEeqnarraybox} + +\def\IEEEeqnarrayboxt{\@IEEEeqnarrayboxnojotfalse\@IEEEeqnarrayboxHBOXSWtrue\@IEEEeqnarraybox} +\def\endIEEEeqnarrayboxt{\end@IEEEeqnarraybox} +\@namedef{IEEEeqnarrayboxt*}{\@IEEEeqnarrayboxnojottrue\@IEEEeqnarrayboxHBOXSWtrue\@IEEEeqnarraybox} +\@namedef{endIEEEeqnarrayboxt*}{\end@IEEEeqnarraybox} + +\def\IEEEeqnarraybox{\@IEEEeqnarrayboxnojotfalse\ifmmode\@IEEEeqnarrayboxHBOXSWfalse\else\@IEEEeqnarrayboxHBOXSWtrue\fi% +\@IEEEeqnarraybox} +\def\endIEEEeqnarraybox{\end@IEEEeqnarraybox} + +\@namedef{IEEEeqnarraybox*}{\@IEEEeqnarrayboxnojottrue\ifmmode\@IEEEeqnarrayboxHBOXSWfalse\else\@IEEEeqnarrayboxHBOXSWtrue\fi% +\@IEEEeqnarraybox} +\@namedef{endIEEEeqnarraybox*}{\end@IEEEeqnarraybox} + +% flag to indicate if the \IEEEeqnarraybox needs to put things into an hbox{$ $} +% for \vcenter in non-math mode +\newif\if@IEEEeqnarrayboxHBOXSW% +\@IEEEeqnarrayboxHBOXSWfalse + +\def\@IEEEeqnarraybox{\relax\@ifnextchar[{\@@IEEEeqnarraybox}{\@@IEEEeqnarraybox[\relax]}} +% We have to be careful here to normalize catcodes just before acquiring the +% cols as that specification may contain punctuation which could be subject +% to document catcode changes. +\def\@@IEEEeqnarraybox[#1]{\relax\begingroup\IEEEnormalcatcodes\@ifnextchar[{\@@@IEEEeqnarraybox[#1]}{\@@@IEEEeqnarraybox[#1][b]}} +\def\@@@IEEEeqnarraybox[#1][#2]{\relax\@ifnextchar[{\@@@@IEEEeqnarraybox[#1][#2]}{\@@@@IEEEeqnarraybox[#1][#2][\relax]}} + +% #1 = decl; #2 = t,b,c; #3 = width, #4 = col specs +\def\@@@@IEEEeqnarraybox[#1][#2][#3]#4{\endgroup\@IEEEeqnarrayISinnerfalse % not yet within the lines of the halign + \@IEEEeqnarraymasterstrutsave% save current master strut values + \@IEEEeqnarraystrutsize{0pt}{0pt}[\relax]% turn off struts by default + \@IEEEeqnarrayusemasterstruttrue% use master strut till user asks otherwise + \IEEEvisiblestrutsfalse% diagnostic mode defaults to off + % no extra space unless the user specifically requests it + \lineskip=0pt\relax% + \lineskiplimit=0pt\relax% + \baselineskip=\normalbaselineskip\relax% + \jot=\IEEEnormaljot\relax% + \mathsurround\z@\relax% no extra spacing around math + % the default end glues are zero for an \IEEEeqnarraybox + \edef\@IEEEeqnarraycolSEPdefaultstart{\@IEEEeqnarraycolSEPzero}% default start glue + \edef\@IEEEeqnarraycolSEPdefaultend{\@IEEEeqnarraycolSEPzero}% default end glue + \edef\@IEEEeqnarraycolSEPdefaultmid{\@IEEEeqnarraycolSEPzero}% default inter-column glue + \@advanceIEEEeqncolcntfalse% do not advance the col counter for each col the user uses, + % used in \IEEEeqnarraymulticol and in the preamble build + \IEEEeqnarrayboxdecl\relax% allow a way for the user to make global overrides + #1\relax% allow user to override defaults + \let\\\@IEEEeqnarrayboxcr% replace newline with one that allows optional spacing + \@IEEEbuildpreamble{#4}\relax% build the preamble and put it into \@IEEEtrantmptoksA + % add an isolation column to the preamble to stop \\'s {} from getting into the last col + \ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi% col separator for those after the first + \toks0={##}% + % add the isolation column to the preamble + \@IEEEappendtoksA{\tabskip\z@skip\bgroup\the\toks0\egroup}% + % set the starting tabskip glue as determined by the preamble build + \tabskip=\@IEEEBPstartglue\relax + % begin the alignment + \everycr{}% + % use only the very first token to determine the positioning + \@IEEEextracttoken{#2}\relax + \ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: IEEEeqnarraybox position specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax + \fi + % \@IEEEextractedtoken has the first token, the rest are ignored + % if we need to put things into and hbox and go into math mode, do so now + \if@IEEEeqnarrayboxHBOXSW \leavevmode \hbox \bgroup $\fi% + % use the appropriate vbox type + \if\@IEEEextractedtoken t\relax\vtop\else\if\@IEEEextractedtoken c\relax% + \vcenter\else\vbox\fi\fi\bgroup% + \@IEEEeqnarrayISinnertrue% commands are now within the lines + \ifx#3\relax\halign\else\halign to #3\relax\fi% + \bgroup + % "exspand" the preamble + \span\the\@IEEEtrantmptoksA\cr} + +% carry strut status and enter the isolation/strut column, +% exit from math mode if needed, and exit +\def\end@IEEEeqnarraybox{\@IEEEeqnarrayglobalizestrutstatus% carry strut status +&% enter isolation/strut column +\@IEEEeqnarrayinsertstrut% do strut if needed +\@IEEEeqnarraymasterstrutrestore% restore the previous master strut values +% reset the strut system for next IEEEeqnarray +% (sets local strut values back to previous master strut values) +\@IEEEeqnarraystrutreset% +% ensure last line, exit from halign, close vbox +\crcr\egroup\egroup% +% exit from math mode and close hbox if needed +\if@IEEEeqnarrayboxHBOXSW $\egroup\fi} + + + +% IEEEeqnarraybox uses a modifed \\ instead of the plain \cr to +% end rows. This allows for things like \\[vskip amount] +% This "cr" macros are modified versions those for LaTeX2e's eqnarray +% For IEEEeqnarraybox, \\* is the same as \\ +% the {\ifnum0=`} braces must be kept away from the last column to avoid +% altering spacing of its math, so we use & to advance to the isolation/strut column +% carry strut status into isolation/strut column +\def\@IEEEeqnarrayboxcr{\@IEEEeqnarrayglobalizestrutstatus% carry strut status +&% enter isolation/strut column +\@IEEEeqnarrayinsertstrut% do strut if needed +% reset the strut system for next line or IEEEeqnarray +\@IEEEeqnarraystrutreset% +{\ifnum0=`}\fi% +\@ifstar{\@IEEEeqnarrayboxYCR}{\@IEEEeqnarrayboxYCR}} + +% test and setup the optional argument to \\[] +\def\@IEEEeqnarrayboxYCR{\@testopt\@IEEEeqnarrayboxXCR\z@skip} + +% IEEEeqnarraybox does not automatically increase line spacing by \jot +\def\@IEEEeqnarrayboxXCR[#1]{\ifnum0=`{\fi}% +\cr\noalign{\if@IEEEeqnarrayboxnojot\else\vskip\jot\fi\vskip#1\relax}} + + + +% usage: \@IEEEbuildpreamble{column specifiers} +% starts the halign preamble build +% the assembled preamble is put in \@IEEEtrantmptoksA +\def\@IEEEbuildpreamble#1{\@IEEEtrantmptoksA={}% clear token register +\let\@IEEEBPcurtype=u%current column type is not yet known +\let\@IEEEBPprevtype=s%the previous column type was the start +\let\@IEEEBPnexttype=u%next column type is not yet known +% ensure these are valid +\def\@IEEEBPcurglue={0pt plus 0pt minus 0pt}% +\def\@IEEEBPcurcolname{@IEEEdefault}% name of current column definition +% currently acquired numerically referenced glue +% use a name that is easier to remember +\let\@IEEEBPcurnum=\@IEEEtrantmpcountA% +\@IEEEBPcurnum=0% +% tracks number of columns in the preamble +\@IEEEeqnnumcols=0% +% record the default end glues +\edef\@IEEEBPstartglue{\@IEEEeqnarraycolSEPdefaultstart}% +\edef\@IEEEBPendglue{\@IEEEeqnarraycolSEPdefaultend}% +\edef\@IEEEedefMACRO{#1}\relax% fully expand the preamble to support macro containers +% now parse the user's column specifications +% \ignorespaces is used as a delimiter, need at least one trailing \relax because +% \@@IEEEbuildpreamble looks into the future +\expandafter\@@IEEEbuildpreamble\@IEEEedefMACRO\ignorespaces\relax\relax} + + +% usage: \@@IEEEbuildpreamble{current column}{next column} +% parses and builds the halign preamble +\def\@@IEEEbuildpreamble#1#2{\let\@@nextIEEEbuildpreamble=\@@IEEEbuildpreamble% +% use only the very first token to check the end +\@IEEEextracttokengroups{#1}\relax +\ifx\@IEEEextractedfirsttoken\ignorespaces\let\@@nextIEEEbuildpreamble=\@@IEEEfinishpreamble\else% +% identify current and next token type +\@IEEEgetcoltype{#1}{\@IEEEBPcurtype}{1}% current, error on invalid +\@IEEEgetcoltype{#2}{\@IEEEBPnexttype}{0}% next, no error on invalid next +% if curtype is a glue, get the glue def +\if\@IEEEBPcurtype g\@IEEEgetcurglue{#1}{\@IEEEBPcurglue}\fi% +% if curtype is a column, get the column def and set the current column name +\if\@IEEEBPcurtype c\@IEEEgetcurcol{#1}\fi% +% if curtype is a numeral, acquire the user defined glue +\if\@IEEEBPcurtype n\@IEEEprocessNcol{#1}\fi% +% process the acquired glue +\if\@IEEEBPcurtype g\@IEEEprocessGcol\fi% +% process the acquired col +\if\@IEEEBPcurtype c\@IEEEprocessCcol\fi% +% ready prevtype for next col spec. +\let\@IEEEBPprevtype=\@IEEEBPcurtype% +% be sure and put back the future token(s) as a group +\fi\@@nextIEEEbuildpreamble{#2}} + + +% usage: \@@IEEEfinishpreamble{discarded} +% executed just after preamble build is completed +% warn about zero cols, and if prevtype type = u, put in end tabskip glue +% argument is not used +\def\@@IEEEfinishpreamble#1{\ifnum\@IEEEeqnnumcols<1\relax +\@IEEEclspkgerror{No column specifiers declared for IEEEeqnarray}% +{At least one column type must be declared for each IEEEeqnarray.}% +\fi%num cols less than 1 +%if last type undefined, set default end tabskip glue +\if\@IEEEBPprevtype u\@IEEEappendtoksA{\tabskip=\@IEEEBPendglue}\fi} + + +% usage: \@IEEEgetcoltype{col specifier}{\output}{error more} +% Identify and return the column specifier's type code in the given +% \output macro: +% n = number +% g = glue (any other char in catagory 12) +% c = letter +% e = \ignorespaces (end of sequence) +% u = undefined +% error mode: 0 = no error message, 1 = error on invalid char +\def\@IEEEgetcoltype#1#2#3{% +% use only the very first token to determine the type +\@IEEEextracttoken{#1}\relax +% \@IEEEextractedtoken has the first token, the rest are discarded +\let#2=u\relax% assume invalid until know otherwise +\ifx\@IEEEextractedtoken\ignorespaces\let#2=e\else +\ifcat\@IEEEextractedtoken\relax\else% screen out control sequences +\if0\@IEEEextractedtoken\let#2=n\else +\if1\@IEEEextractedtoken\let#2=n\else +\if2\@IEEEextractedtoken\let#2=n\else +\if3\@IEEEextractedtoken\let#2=n\else +\if4\@IEEEextractedtoken\let#2=n\else +\if5\@IEEEextractedtoken\let#2=n\else +\if6\@IEEEextractedtoken\let#2=n\else +\if7\@IEEEextractedtoken\let#2=n\else +\if8\@IEEEextractedtoken\let#2=n\else +\if9\@IEEEextractedtoken\let#2=n\else +\ifcat,\@IEEEextractedtoken\let#2=g\relax +\else\ifcat a\@IEEEextractedtoken\let#2=c\relax\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi +\if#2u\relax +\if0\noexpand#3\relax\else\@IEEEclspkgerror{Invalid character in column specifications}% +{Only letters, numerals and certain other symbols are allowed \MessageBreak +as IEEEeqnarray column specifiers.}\fi\fi} + + +% usage: \@IEEEgetcurcol{col specifier} +% verify the letter referenced column exists +% and return its name in \@IEEEBPcurcolname +% if column specifier is invalid, use the default column @IEEEdefault +\def\@IEEEgetcurcol#1{\expandafter\ifx\csname @IEEEeqnarraycolDEF#1\endcsname\@IEEEeqnarraycolisdefined% +\def\@IEEEBPcurcolname{#1}\else% invalid column name +\@IEEEclspkgerror{Invalid column type "#1" in column specifications.\MessageBreak +Using a default centering column instead}% +{You must define IEEEeqnarray column types before use.}% +\def\@IEEEBPcurcolname{@IEEEdefault}\fi} + + +% usage: \@IEEEgetcurglue{glue specifier}{\output} +% identify the predefined (punctuation) glue value +% and return it in the given output macro +\def\@IEEEgetcurglue#1#2{% +% ! = \! (neg small) -0.16667em (-3/18 em) +% , = \, (small) 0.16667em ( 3/18 em) +% : = \: (med) 0.22222em ( 4/18 em) +% ; = \; (large) 0.27778em ( 5/18 em) +% ' = \quad 1em +% " = \qquad 2em +% . = 0.5\arraycolsep +% / = \arraycolsep +% ? = 2\arraycolsep +% * = 1fil +% + = \@IEEEeqnarraycolSEPcenter +% - = \@IEEEeqnarraycolSEPzero +% Note that all em values are referenced to the math font (textfont2) fontdimen6 +% value for 1em. +% +% use only the very first token to determine the type +\@IEEEextracttoken{#1}\relax +\ifx\@IEEEextractedtokensdiscarded\@empty\else + \typeout{** WARNING: IEEEeqnarray predefined inter-column glue type specifiers after the first in `\@IEEEextracttokenarg' ignored (line \the\inputlineno).}\relax +\fi +% get the math font 1em value +% LaTeX2e's NFSS2 does not preload the fonts, but \IEEEeqnarray needs +% to gain access to the math (\textfont2) font's spacing parameters. +% So we create a bogus box here that uses the math font to ensure +% that \textfont2 is loaded and ready. If this is not done, +% the \textfont2 stuff here may not work. +% Thanks to Bernd Raichle for his 1997 post on this topic. +{\setbox0=\hbox{$\displaystyle\relax$}}% +% fontdimen6 has the width of 1em (a quad). +\@IEEEtrantmpdimenA=\fontdimen6\textfont2\relax% +% identify the glue value based on the first token +% we discard anything after the first +\if!\@IEEEextractedtoken\@IEEEtrantmpdimenA=-0.16667\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if,\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.16667\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if:\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.22222\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if;\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.27778\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if'\@IEEEextractedtoken\@IEEEtrantmpdimenA=1\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if"\@IEEEextractedtoken\@IEEEtrantmpdimenA=2\@IEEEtrantmpdimenA\edef#2{\the\@IEEEtrantmpdimenA}\else +\if.\@IEEEextractedtoken\@IEEEtrantmpdimenA=0.5\arraycolsep\edef#2{\the\@IEEEtrantmpdimenA}\else +\if/\@IEEEextractedtoken\edef#2{\the\arraycolsep}\else +\if?\@IEEEextractedtoken\@IEEEtrantmpdimenA=2\arraycolsep\edef#2{\the\@IEEEtrantmpdimenA}\else +\if *\@IEEEextractedtoken\edef#2{0pt plus 1fil minus 0pt}\else +\if+\@IEEEextractedtoken\edef#2{\@IEEEeqnarraycolSEPcenter}\else +\if-\@IEEEextractedtoken\edef#2{\@IEEEeqnarraycolSEPzero}\else +\edef#2{\@IEEEeqnarraycolSEPzero}% +\@IEEEclspkgerror{Invalid predefined inter-column glue type "#1" in\MessageBreak +column specifications. Using a default value of\MessageBreak +0pt instead}% +{Only !,:;'"./?*+ and - are valid predefined glue types in the\MessageBreak +IEEEeqnarray column specifications.}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} + + +% usage: \@IEEEprocessNcol{digit} +% process a numerical digit from the column specification +% and look up the corresponding user defined glue value +% can transform current type from n to g or a as the user defined glue is acquired +\def\@IEEEprocessNcol#1{\if\@IEEEBPprevtype g% +\@IEEEclspkgerror{Back-to-back inter-column glue specifiers in column\MessageBreak +specifications. Ignoring consecutive glue specifiers\MessageBreak +after the first}% +{You cannot have two or more glue types next to each other\MessageBreak +in the IEEEeqnarray column specifications.}% +\let\@IEEEBPcurtype=a% abort this glue, future digits will be discarded +\@IEEEBPcurnum=0\relax% +\else% if we previously aborted a glue +\if\@IEEEBPprevtype a\@IEEEBPcurnum=0\let\@IEEEBPcurtype=a%maintain digit abortion +\else%acquire this number +% save the previous type before the numerical digits started +\if\@IEEEBPprevtype n\else\let\@IEEEBPprevsavedtype=\@IEEEBPprevtype\fi% +\multiply\@IEEEBPcurnum by 10\relax% +\advance\@IEEEBPcurnum by #1\relax% add in number, \relax is needed to stop TeX's number scan +\if\@IEEEBPnexttype n\else%close acquisition +\expandafter\ifx\csname @IEEEeqnarraycolSEPDEF\expandafter\romannumeral\number\@IEEEBPcurnum\endcsname\@IEEEeqnarraycolisdefined% +\edef\@IEEEBPcurglue{\csname @IEEEeqnarraycolSEP\expandafter\romannumeral\number\@IEEEBPcurnum\endcsname}% +\else%user glue not defined +\@IEEEclspkgerror{Invalid user defined inter-column glue type "\number\@IEEEBPcurnum" in\MessageBreak +column specifications. Using a default value of\MessageBreak +0pt instead}% +{You must define all IEEEeqnarray numerical inter-column glue types via\MessageBreak +\string\IEEEeqnarraydefcolsep \space before they are used in column specifications.}% +\edef\@IEEEBPcurglue{\@IEEEeqnarraycolSEPzero}% +\fi% glue defined or not +\let\@IEEEBPcurtype=g% change the type to reflect the acquired glue +\let\@IEEEBPprevtype=\@IEEEBPprevsavedtype% restore the prev type before this number glue +\@IEEEBPcurnum=0\relax%ready for next acquisition +\fi%close acquisition, get glue +\fi%discard or acquire number +\fi%prevtype glue or not +} + + +% process an acquired glue +% add any acquired column/glue pair to the preamble +\def\@IEEEprocessGcol{\if\@IEEEBPprevtype a\let\@IEEEBPcurtype=a%maintain previous glue abortions +\else +% if this is the start glue, save it, but do nothing else +% as this is not used in the preamble, but before +\if\@IEEEBPprevtype s\edef\@IEEEBPstartglue{\@IEEEBPcurglue}% +\else%not the start glue +\if\@IEEEBPprevtype g%ignore if back to back glues +\@IEEEclspkgerror{Back-to-back inter-column glue specifiers in column\MessageBreak +specifications. Ignoring consecutive glue specifiers\MessageBreak +after the first}% +{You cannot have two or more glue types next to each other\MessageBreak +in the IEEEeqnarray column specifications.}% +\let\@IEEEBPcurtype=a% abort this glue +\else% not a back to back glue +\if\@IEEEBPprevtype c\relax% if the previoustype was a col, add column/glue pair to preamble +\ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi +\toks0={##}% +% make preamble advance col counter if this environment needs this +\if@advanceIEEEeqncolcnt\@IEEEappendtoksA{\global\advance\@IEEEeqncolcnt by 1\relax}\fi +% insert the column defintion into the preamble, being careful not to expand +% the column definition +\@IEEEappendtoksA{\tabskip=\@IEEEBPcurglue}% +\@IEEEappendNOEXPANDtoksA{\begingroup\csname @IEEEeqnarraycolPRE}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname}% +\@IEEEappendtoksA{\the\toks0}% +\@IEEEappendNOEXPANDtoksA{\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\csname @IEEEeqnarraycolPOST}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\endgroup}% +\advance\@IEEEeqnnumcols by 1\relax%one more column in the preamble +\else% error: non-start glue with no pending column +\@IEEEclspkgerror{Inter-column glue specifier without a prior column\MessageBreak +type in the column specifications. Ignoring this glue\MessageBreak +specifier}% +{Except for the first and last positions, glue can be placed only\MessageBreak +between column types.}% +\let\@IEEEBPcurtype=a% abort this glue +\fi% previous was a column +\fi% back-to-back glues +\fi% is start column glue +\fi% prev type not a +} + + +% process an acquired letter referenced column and, if necessary, add it to the preamble +\def\@IEEEprocessCcol{\if\@IEEEBPnexttype g\else +\if\@IEEEBPnexttype n\else +% we have a column followed by something other than a glue (or numeral glue) +% so we must add this column to the preamble now +\ifnum\@IEEEeqnnumcols>0\relax\@IEEEappendtoksA{&}\fi%col separator for those after the first +\if\@IEEEBPnexttype e\@IEEEappendtoksA{\tabskip=\@IEEEBPendglue\relax}\else%put in end glue +\@IEEEappendtoksA{\tabskip=\@IEEEeqnarraycolSEPdefaultmid\relax}\fi% or default mid glue +\toks0={##}% +% make preamble advance col counter if this environment needs this +\if@advanceIEEEeqncolcnt\@IEEEappendtoksA{\global\advance\@IEEEeqncolcnt by 1\relax}\fi +% insert the column definition into the preamble, being careful not to expand +% the column definition +\@IEEEappendNOEXPANDtoksA{\begingroup\csname @IEEEeqnarraycolPRE}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname}% +\@IEEEappendtoksA{\the\toks0}% +\@IEEEappendNOEXPANDtoksA{\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\csname @IEEEeqnarraycolPOST}% +\@IEEEappendtoksA{\@IEEEBPcurcolname}% +\@IEEEappendNOEXPANDtoksA{\endcsname\relax\relax\relax\relax\relax% +\relax\relax\relax\relax\relax\endgroup}% +\advance\@IEEEeqnnumcols by 1\relax%one more column in the preamble +\fi%next type not numeral +\fi%next type not glue +} + + +%% +%% END OF IEEEeqnarray DEFINITIONS +%% + + + + +% \IEEEPARstart +% Definition for the big two line drop cap letter at the beginning of the +% first paragraph of journal papers. The first argument is the first letter +% of the first word, the second argument is the remaining letters of the +% first word which will be rendered in upper case. +% In V1.6 this has been completely rewritten to: +% +% 1. no longer have problems when the user begins an environment +% within the paragraph that uses \IEEEPARstart. +% 2. auto-detect and use the current font family +% 3. revise handling of the space at the end of the first word so that +% interword glue will now work as normal. +% 4. produce correctly aligned edges for the (two) indented lines. +% +% We generalize things via control macros - playing with these is fun too. +% +% V1.7 added more control macros to make it easy for IEEEtrantools.sty users +% to change the font style. +% +% the number of lines that are indented to clear it +% may need to increase if using decenders +\providecommand{\IEEEPARstartDROPLINES}{2} +% minimum number of lines left on a page to allow a \@IEEEPARstart +% Does not take into consideration rubber shrink, so it tends to +% be overly cautious +\providecommand{\IEEEPARstartMINPAGELINES}{2} +% V1.7 the height of the drop cap is adjusted to match the height of this text +% in the current font (when \IEEEPARstart is called). +\providecommand{\IEEEPARstartHEIGHTTEXT}{T} +% the depth the letter is lowered below the baseline +% the height (and size) of the letter is determined by the sum +% of this value and the height of the \IEEEPARstartHEIGHTTEXT in the current +% font. It is a good idea to set this value in terms of the baselineskip +% so that it can respond to changes therein. +\providecommand{\IEEEPARstartDROPDEPTH}{1.1\baselineskip} +% V1.7 the font the drop cap will be rendered in, +% can take zero or one argument. +\providecommand{\IEEEPARstartFONTSTYLE}{\bfseries} +% V1.7 any additional, non-font related commands needed to modify +% the drop cap letter, can take zero or one argument. +\providecommand{\IEEEPARstartCAPSTYLE}{\MakeUppercase} +% V1.7 the font that will be used to render the rest of the word, +% can take zero or one argument. +\providecommand{\IEEEPARstartWORDFONTSTYLE}{\relax} +% V1.7 any additional, non-font related commands needed to modify +% the rest of the word, can take zero or one argument. +\providecommand{\IEEEPARstartWORDCAPSTYLE}{\MakeUppercase} +% This is the horizontal separation distance from the drop letter to the main text. +% Lengths that depend on the font (e.g., ex, em, etc.) will be referenced +% to the font that is active when \IEEEPARstart is called. +\providecommand{\IEEEPARstartSEP}{0.15em} +% V1.7 horizontal offset applied to the left of the drop cap. +\providecommand{\IEEEPARstartHOFFSET}{0em} +% V1.7 Italic correction command applied at the end of the drop cap. +\providecommand{\IEEEPARstartITLCORRECT}{\/} + +% width of the letter output, set globally. Can be used in \IEEEPARstartSEP +% or \IEEEPARstartHOFFSET, but not the height lengths. +\newdimen\IEEEPARstartletwidth +\IEEEPARstartletwidth 0pt\relax + +% definition of \IEEEPARstart +% THIS IS A CONTROLLED SPACING AREA, DO NOT ALLOW SPACES WITHIN THESE LINES +% +% The token \@IEEEPARstartfont will be globally defined after the first use +% of \IEEEPARstart and will be a font command which creates the big letter +% The first argument is the first letter of the first word and the second +% argument is the rest of the first word(s). +\def\IEEEPARstart#1#2{\par{% +% if this page does not have enough space, break it and lets start +% on a new one +\@IEEEtranneedspace{\IEEEPARstartMINPAGELINES\baselineskip}{\relax}% +% V1.7 move this up here in case user uses \textbf for \IEEEPARstartFONTSTYLE +% which uses command \leavevmode which causes an unwanted \indent to be issued +\noindent +% calculate the desired height of the big letter +% it extends from the top of \IEEEPARstartHEIGHTTEXT in the current font +% down to \IEEEPARstartDROPDEPTH below the current baseline +\settoheight{\@IEEEtrantmpdimenA}{\IEEEPARstartHEIGHTTEXT}% +\addtolength{\@IEEEtrantmpdimenA}{\IEEEPARstartDROPDEPTH}% +% extract the name of the current font in bold +% and place it in \@IEEEPARstartFONTNAME +\def\@IEEEPARstartGETFIRSTWORD##1 ##2\relax{##1}% +{\IEEEPARstartFONTSTYLE{\selectfont\edef\@IEEEPARstartFONTNAMESPACE{\fontname\font\space}% +\xdef\@IEEEPARstartFONTNAME{\expandafter\@IEEEPARstartGETFIRSTWORD\@IEEEPARstartFONTNAMESPACE\relax}}}% +% define a font based on this name with a point size equal to the desired +% height of the drop letter +\font\@IEEEPARstartsubfont\@IEEEPARstartFONTNAME\space at \@IEEEtrantmpdimenA\relax% +% save this value as a counter (integer) value (sp points) +\@IEEEtrantmpcountA=\@IEEEtrantmpdimenA% +% now get the height of the actual letter produced by this font size +\settoheight{\@IEEEtrantmpdimenB}{\@IEEEPARstartsubfont\IEEEPARstartCAPSTYLE{#1}}% +% If something bogus happens like the first argument is empty or the +% current font is strange, do not allow a zero height. +\ifdim\@IEEEtrantmpdimenB=0pt\relax% +\typeout{** WARNING: IEEEPARstart drop letter has zero height! (line \the\inputlineno)}% +\typeout{ Forcing the drop letter font size to 10pt.}% +\@IEEEtrantmpdimenB=10pt% +\fi% +% and store it as a counter +\@IEEEtrantmpcountB=\@IEEEtrantmpdimenB% +% Since a font size doesn't exactly correspond to the height of the capital +% letters in that font, the actual height of the letter, \@IEEEtrantmpcountB, +% will be less than that desired, \@IEEEtrantmpcountA +% we need to raise the font size, \@IEEEtrantmpdimenA +% by \@IEEEtrantmpcountA / \@IEEEtrantmpcountB +% But, TeX doesn't have floating point division, so we have to use integer +% division. Hence the use of the counters. +% We need to reduce the denominator so that the loss of the remainder will +% have minimal affect on the accuracy of the result +\divide\@IEEEtrantmpcountB by 200% +\divide\@IEEEtrantmpcountA by \@IEEEtrantmpcountB% +% Then reequalize things when we use TeX's ability to multiply by +% floating point values +\@IEEEtrantmpdimenB=0.005\@IEEEtrantmpdimenA% +\multiply\@IEEEtrantmpdimenB by \@IEEEtrantmpcountA% +% \@IEEEPARstartfont is globaly set to the calculated font of the big letter +% We need to carry this out of the local calculation area to to create the +% big letter. +\global\font\@IEEEPARstartfont\@IEEEPARstartFONTNAME\space at \@IEEEtrantmpdimenB% +% Now set \@IEEEtrantmpdimenA to the width of the big letter +% We need to carry this out of the local calculation area to set the +% hanging indent +\settowidth{\global\@IEEEtrantmpdimenA}{\@IEEEPARstartfont +\IEEEPARstartCAPSTYLE{#1\IEEEPARstartITLCORRECT}}}% +% end of the isolated calculation environment +\global\IEEEPARstartletwidth\@IEEEtrantmpdimenA\relax% +% add in the extra clearance we want +\advance\@IEEEtrantmpdimenA by \IEEEPARstartSEP\relax% +% add in the optional offset +\advance\@IEEEtrantmpdimenA by \IEEEPARstartHOFFSET\relax% +% V1.7 don't allow negative offsets to produce negative hanging indents +\@IEEEtrantmpdimenB\@IEEEtrantmpdimenA +\ifnum\@IEEEtrantmpdimenB < 0 \@IEEEtrantmpdimenB 0pt\fi +% \@IEEEtrantmpdimenA has the width of the big letter plus the +% separation space and \@IEEEPARstartfont is the font we need to use +% Now, we make the letter and issue the hanging indent command +% The letter is placed in a box of zero width and height so that other +% text won't be displaced by it. +\hangindent\@IEEEtrantmpdimenB\hangafter=-\IEEEPARstartDROPLINES% +\makebox[0pt][l]{\hspace{-\@IEEEtrantmpdimenA}% +\raisebox{-\IEEEPARstartDROPDEPTH}[0pt][0pt]{\hspace{\IEEEPARstartHOFFSET}% +\@IEEEPARstartfont\IEEEPARstartCAPSTYLE{#1\IEEEPARstartITLCORRECT}% +\hspace{\IEEEPARstartSEP}}}% +{\IEEEPARstartWORDFONTSTYLE{\IEEEPARstartWORDCAPSTYLE{\selectfont#2}}}} + + + + + + +% determines if the space remaining on a given page is equal to or greater +% than the specified space of argument one +% if not, execute argument two (only if the remaining space is greater than zero) +% and issue a \newpage +% +% example: \@IEEEtranneedspace{2in}{\vfill} +% +% Does not take into consideration rubber shrinkage, so it tends to +% be overly cautious +% Based on an example posted by Donald Arseneau +% Note this macro uses \@IEEEtrantmpdimenB internally for calculations, +% so DO NOT PASS \@IEEEtrantmpdimenB to this routine +% if you need a dimen register, import with \@IEEEtrantmpdimenA instead +\def\@IEEEtranneedspace#1#2{\penalty-100\begingroup%shield temp variable +\@IEEEtrantmpdimenB\pagegoal\advance\@IEEEtrantmpdimenB-\pagetotal% space left +\ifdim #1>\@IEEEtrantmpdimenB\relax% not enough space left +\ifdim\@IEEEtrantmpdimenB>\z@\relax #2\fi% +\newpage% +\fi\endgroup} + + +% \IEEEauthorrefmark +\DeclareRobustCommand*{\IEEEauthorrefmark}[1]{\raisebox{0pt}[0pt][0pt]{\textsuperscript{\footnotesize\ensuremath{\ifcase#1\or *\or \dagger\or \ddagger\or% + \mathsection\or \mathparagraph\or \|\or **\or \dagger\dagger% + \or \ddagger\ddagger \else\textsuperscript{\expandafter\romannumeral#1}\fi}}}} + + +% V1.3 IEEEQED and IEEEproof +\def\IEEEproofname{Proof} + +\def\IEEEQEDclosed{\mbox{\rule[0pt]{1.3ex}{1.3ex}}} % for a filled box +\def\IEEEQEDopen{{\setlength{\fboxsep}{0pt}\setlength{\fboxrule}{0.2pt}\fbox{\rule[0pt]{0pt}{1.3ex}\rule[0pt]{1.3ex}{0pt}}}} +\def\IEEEQED{\IEEEQEDclosed} % default to closed + +%V1.8 flag to indicate if QED symbol is to be shown +\newif\if@IEEEQEDshow \@IEEEQEDshowtrue +\def\IEEEproofindentspace{2\parindent}% V1.8 allow user to change indentation amount if desired +% v1.7 name change to avoid namespace collision with amsthm. Also add support +% for an optional argument. +\def\IEEEproof{\@ifnextchar[{\@IEEEproof}{\@IEEEproof[\IEEEproofname]}} +\def\@IEEEproof[#1]{\@IEEEQEDshowtrue\par\noindent\hspace{\IEEEproofindentspace}{\itshape #1: }} +\def\endIEEEproof{\if@IEEEQEDshow\hspace*{\fill}\nobreakspace\IEEEQED\fi\par} +% qedhere for equation environments, similar to AMS \qedhere +\def\IEEEQEDhereeqn{\global\@IEEEQEDshowfalse\eqno\let\eqno\relax\let\leqno\relax + \let\veqno\relax\hbox{\IEEEQED}} +% IEEE style qedhere for IEEEeqnarray and other environments +\def\IEEEQEDhere{\global\@IEEEQEDshowfalse\IEEEQED} +% command to disable QED at end of IEEEproof +\def\IEEEQEDoff{\global\@IEEEQEDshowfalse} + + +% Provide support for the control entries of IEEEtran.bst V1.00 and later. +% V1.7 optional argument allows for a different aux file to be specified in +% order to handle multiple bibliographies. For example, with multibib.sty: +% \newcites{sec}{Secondary Literature} +% \bstctlcite[@auxoutsec]{BSTcontrolhak} +% V1.7 I see no need for \providecommand here. +\def\bstctlcite{\@ifnextchar[{\@bstctlcite}{\@bstctlcite[@auxout]}} +\def\@bstctlcite[#1]#2{\@bsphack + \@for\@citeb:=#2\do{% + \edef\@citeb{\expandafter\@firstofone\@citeb}% + \if@filesw\immediate\write\csname #1\endcsname{\string\citation{\@citeb}}\fi}% + \@esphack} + +% \IEEEnoauxwrite{} allows for citations that do not add to or affect +% the order of the existing citation list. Can be useful for \cite +% within \thanks{}. +\DeclareRobustCommand{\IEEEnoauxwrite}[1]{\relax +\if@filesw +\@fileswfalse +#1\relax\relax\relax\relax\relax +\@fileswtrue +\else +#1\relax\relax\relax\relax\relax +\fi} + +% need a backslash character for typeout output +{\catcode`\|=0 \catcode`\\=12 +|xdef|@IEEEbackslash{\}} + + +% hook to allow easy disabling of all legacy warnings +\def\@IEEElegacywarn#1#2{\typeout{** ATTENTION: \@IEEEbackslash #1 is deprecated (line \the\inputlineno). +Use \@IEEEbackslash #2 instead.}} + + +% V1.4 no longer support these legacy commands +% \def\PARstart{\@IEEElegacywarn{PARstart}{IEEEPARstart}\IEEEPARstart} +% \let\labelindent\IEEElabelindent +% \def\calcleftmargin{\@IEEElegacywarn{calcleftmargin}{IEEEcalcleftmargin}\IEEEcalcleftmargin} +% \def\setlabelwidth{\@IEEElegacywarn{setlabelwidth}{IEEEsetlabelwidth}\IEEEsetlabelwidth} +% \def\usemathlabelsep{\@IEEElegacywarn{usemathlabelsep}{IEEEusemathlabelsep}\IEEEusemathlabelsep} +% \def\iedlabeljustifyc{\@IEEElegacywarn{iedlabeljustifyc}{IEEEiedlabeljustifyc}\IEEEiedlabeljustifyc} +% \def\iedlabeljustifyl{\@IEEElegacywarn{iedlabeljustifyl}{IEEEiedlabeljustifyl}\IEEEiedlabeljustifyl} +% \def\iedlabeljustifyr{\@IEEElegacywarn{iedlabeljustifyr}{IEEEiedlabeljustifyr}\IEEEiedlabeljustifyr} + + +\endinput +%%%%%%%%%%%%%%%%%%%%%%%%%% End of IEEEtrantools.sty %%%%%%%%%%%%%%%%%%%%%% +% That's all folks! + diff --git a/IEEEtran/tools/IEEEtrantools_doc.txt b/IEEEtran/tools/IEEEtrantools_doc.txt new file mode 100644 index 0000000..73bef64 --- /dev/null +++ b/IEEEtran/tools/IEEEtrantools_doc.txt @@ -0,0 +1,329 @@ + +IEEEtrantools_doc.txt 2015/08/26 version 1.5 +(Version 1.5 is based on the commands of version 1.8b of IEEEtran.cls) +This document is the user guide for the IEEEtrantools.sty package. + +The IEEEtrantools.sty package provides several popular and unique +commands from the IEEEtran.cls class file. + +IEEEtrantools.sty should not be used with IEEEtran.cls. + +For helpful tips, answers to frequently asked questions and other support, +visit the IEEEtrantools support page at my website: + +http://www.michaelshell.org/tex/ieeetran/tools/ + +The latest version and documentation of IEEEtrantools can be obtained at: +http://www.ctan.org/pkg/ieeetran + +Copyright (c) 2002-2015 by Michael Shell + See + http://www.michaelshell.org/ + for current contact information. + +************************************************************************* +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** + +File list of work: IEEEtrantools.sty, IEEEtrantools_doc.txt, changelog.txt +************************************************************************* + + +Available package options e.g., \usepackage[redeflists]{IEEEtrantools} + + redeflists + Causes IEEEtrantools to redefine the standard LaTeX itemize, + enumerate and description (IED) lists to their IEEE versions. + The default behavior is to retain the standard definitions + of itemize, enumerate and description. The IEEEtran versions are + always available as IEEEitemize, IEEEenumerate and IEEEdescription + and the original LaTeX versions are always available as LaTeXitemize, + LaTeXenumerate and LaTeXdescription. + +********************************************************************** + +The IEEEtrantools.sty package provides several commands from IEEEtran.cls +so that they can be used under other LaTeX classes. This guide covers only +the differences in the use (or undocumented uses) of the commands from +those provided by IEEEtran.cls. For complete documentation on these +commands, see the relevant sections in the IEEEtran_HOWTO manual which +is available at +http://www.ctan.org/pkg/ieeetran + +IEEEtrantools.sty provides \IEEEPARstart; the \bstctlcite command for the +control entry types of IEEEtran.bst V1.00 and later; \IEEEnoauxwrite; +the IEEE IED list environments; and the complete IEEEeqnarray family, +including the IEEEeqnarray support commands, the IEEEproof environment +and \IEEEauthorrefmark. + +Please note that, as a package file, IEEEtrantools.sty will not attempt +to alter document formatting (other than if the IDE lists are redefined +if the redeflists option is invoked) as controlled by the class file. +Therefore, there may be spacing/layout differences between the results +of the same IEEEtran commands under IEEEtran.cls and the user's class +file as different fonts, default values for the various length commands, +etc., are used than under IEEEtran.cls. + + + + + +*** \IEEEPARstart *** + +\IEEEPARstart{}{} is used to provide a large initial "drop cap" letter(s) as +well as to capitialize the remaining letters of the first word of a chapter +or section (if placed within the second argument). e.g., +\IEEEPARstart{O}{nce} + +IEEEtrantools.sty provides the user with a way to control the various +parameters of the \IEEEPARstart letters. + +Below is how the user can alter them (after the IEEEtrantools.sty package +is loaded). Default values are shown. IEEEtrantools will not override +any previous definitions of these parameters if they already exist when +the package is loaded. + + +% The number of lines that are indented to clear the drop cap letter. +% You may need to increase this beyond 1 + \IEEEPARstartDROPDEPTH if +% you are using lowercase letters with descenders. +\renewcommand{\IEEEPARstartDROPLINES}{2} + +% The minimum number of lines left on a page to allow an \IEEEPARstart. +% Does not take into consideration glue shrink, so it tends to be overly +% cautious. +\renewcommand{\IEEEPARstartMINPAGELINES}{2} + +% The height of the drop cap (*above* the baseline), is adjusted to match +% the height of this text in the current font (when \IEEEPARstart is called). +% Use a strut if you want a height not based on that of the main text font. +\renewcommand{\IEEEPARstartHEIGHTTEXT}{T} + +% The depth the letter is lowered below the baseline. The height (and size) +% of the letter is determined by the sum of this value and the height of +% \IEEEPARstartHEIGHTTEXT in the current font. It is a good idea to set this +% value in terms of the baselineskip so that it can respond to changes +% therein. +\renewcommand{\IEEEPARstartDROPDEPTH}{1.1\baselineskip} + +% The font the drop cap will be rendered in. The argument is a command that +% can take zero or one argument. +\renewcommand{\IEEEPARstartFONTSTYLE}{\bfseries} + +% Any additional, non-font related commands needed to modify the drop cap +% letter, can take zero or one argument. +\renewcommand{\IEEEPARstartCAPSTYLE}{\MakeUppercase} + +% The font that will be used to render the rest of the word (second argument +% to \IEEEPARstart), can take zero or one argument. +\renewcommand{\IEEEPARstartWORDFONTSTYLE}{\relax} + +% Any additional, non-font related commands needed to modify the rest of the +% word (second argument to \IEEEPARstart), can take zero or one argument. +\renewcommand{\IEEEPARstartWORDCAPSTYLE}{\MakeUppercase} + +% The horizontal separation distance from the drop letter to the main text. +% Lengths that depend on the font (i.e., ex, em, etc.) will be referenced to +% the font that is active when \IEEEPARstart is called. +\renewcommand{\IEEEPARstartSEP}{0.15em} + +% The Horizontal offset applied to the left of the drop cap. The drop cap +% can be shifted left (negative) or right (positive) using this parameter. +% Lengths that depend on the font (e.g., ex, em, etc.) will be referenced +% to the font that is active when \IEEEPARstart is called. +\renewcommand{\IEEEPARstartHOFFSET}{0em} + +For \IEEEPARstartSEP and \IEEEPARstartHOFFSET, you can also reference the +length variable, \IEEEPARstartletwidth, which will be set to the width of +the drop drop before it is rendered. e.g., +\renewcommand{\IEEEPARstartHOFFSET}{-0.5\IEEEPARstartletwidth} +will cause the drop cap to be shifted leftward by half its width. + +% Italic correction command applied at the end of the drop cap when +% evaluating its width. Without this, italic or slanted drop cap letters will +% "crash into" the main text because their full true width is not taken into +% consideration. +\renewcommand{\IEEEPARstartITLCORRECT}{\/} + + + + + +*** \bstctlcite *** + +\bstctlcite{} is used to issue a citation for a special IEEEtran.bst BibTeX +style control entry which can control various operating parameters of the +IEEEtran.bst file (V1.00 and later): + +\bstctlcite{IEEEexample:BSTcontrol} + +V1.2 and later of IEEEtrantools.sty provides for an optional argument so +that different auxiliary file specifiers may be used in documents with +multiple bibliographies: + +\bstctlcite[@auxoutsec]{IEEEexample:BSTcontrol} + +\bstctlcite operates silently and will not alter the citation numbers or +place a citation entry into the main text or bibliography (when used with +IEEEtran.bst). It should not be used with .bst files that do not provide +support for these special BST control entries. + +See the IEEEtran.bst BibTeX style documentation for details. +http://www.michaelshell.org/tex/ieeetran/bibtex/ +http://www.ctan.org/pkg/ieeetran + + + + +*** \IEEEnoauxwrite *** + +Sometimes an author wants to cite something within \thanks or other section +that comes early in the document, but does not want that to take the place +of the first reference in the main text (e.g., alter the citation counter). +Assuming the publisher's rules allow citations in footnote and/or abstract +sections of the document, the command \IEEEnoauxwrite{} can be used: + +\author{... \thanks{... \IEEEnoauxwrite{\cite{myreference}}.}} + +to accomplish this. + +If the reference is not also cited elsewhere in the document, it will have +to be manually inserted into the reference list of the bibliography via a +\nocite. If the \nocite is done at the end of document, the citation will +be last in the reference list rather than first as would normally happen +with citations within \thanks. + + + + +*** itemize, enumerate and description (IED) lists *** + +IEEEtrantools provides the IEEEitemize, IEEEenumerate and IEEEdescription +list environments that offer enhanced controls and make it much easier to +create such lists when the main text is "block indented" from the +labels (IEEE style). + +By default, the LaTeX IED list environments are not overridden with the +IEEE IED versions. To force this, load IEEEtrantools.sty with the +"redeflists" option: + +\usepackage[redeflists]{IEEEtrantools} + +In any event, the IEEE IED list environments are available as IEEEitemize, +IEEEenumerate, and IEEEdescription. The IEEE IED lists depend on the LaTeX +low-level list environment, so class files that redefine it may also alter +the IEEE IED list formatting. The original LaTeX IED environments (as +provided by the LaTeX kernel and class file) are always retained as +LaTeXitemize, LaTeXenumerate and LaTeXdescription. + +Beware that the default enumerate label width will not be correct if +the class file is not using normalfont "9)" style labeled enumerated lists. + +The support commands for the IEEE IED list environments (\IEEEsetlabelwidth, +\IEEEusemathlabelsep, \IEEEiedlabeljustifyl, etc.) are also provided. + +See the section on lists in the IEEEtran_HOWTO manual for full details +on the IEEE style lists. +http://www.ctan.org/pkg/ieeetrantools + + + +*** The IEEEeqnarray family *** + +Please note that IEEEtrantools provides and sets the length variable +\IEEEnormaljot. At the \begin{document}, \IEEEnormaljot will be set to +the current value of \jot. If the user later alters the document's +nominal \jot, the value of \IEEEnormaljot should be revised as well. + +The support commands for the IEEEeqnarray commands (\IEEEstrut, +\IEEEeqnarrayvrule, \IEEEvisiblestrutstrue, etc.) are also provided. + +For more information on the use of the IEEEeqnarray family of commands, +the following sources of information are recommended: + + 1. The IEEEtran HOWTO manual (IEEEeqnarray is covered in the Appendices): + http://www.ctan.org/pkg/ieeetrantools + + 2. Stefan M. Moser's "How to Typeset Equations in LaTeX" + http://moser.cm.nctu.edu.tw/manuals.html#eqlatex + + 3. Tobias Oetiker's "The Not So Short Introduction to LaTeX2e" + http://www.ctan.org/pkg/lshort + + + + +*** The IEEEproof environment *** + +IEEEtrantools provides the IEEEtran IEEEproof environment as well as +several undocumented IEEEtran IEEEproof commands that are useful for +non-IEEE related work: + + 1. \IEEEQEDoff, when issued within an IEEEproof, turns off the + automatic generation of the \IEEEQED symbol at the end of + the proof. + + 2. \IEEEQEDhere emits an \IEEEQED symbol at the place it is executed + and turns off the \IEEEQED symbol at the end of the proof. This + can be useful when using IEEEeqnarray within IEEEproof + \begin{IEEEproof} + \begin{IEEEeqnarray*}{c+x*} + x=1. & \IEEEQEDhere + \end{IEEEeqnarray*} + \end{IEEEproof} + % Thanks to Stefan M. Moser for this example. + + 3. \IEEEQEDhereeqn is somewhat similar to the AMS \qedhere and + is for use with the standard equation environment within + IEEEproof: + \begin{IEEEproof} + \begin{equation*} + x=1. \IEEEQEDhereeqn + \end{equation*} + \end{IEEEproof} + Note that \IEEEQEDhereeqn will put the QED symbol in front + of an equation number if it exists. + + 4. \IEEEproofindentspace allows users to change the indention + of the proof environment from its IEEEtran default of 2\parindent: + + \renewcommand{\IEEEproofindentspace}{1\parindent} + + Place the above redefinition before any IEEEproof environments it is + to affect. + + + + +*** \IEEEauthorrefmark{} *** + +The \IEEEauthorrefmark{} simply takes a number as an argument and generates +a corresponding superscript symbol. Used in IEEEtran.cls to link author +names to their affiliations: + + Michael Shell\IEEEauthorrefmark{2} + + + +%%%%%%%%%%%%%%%%%%%%%%%%%% End of IEEEtrantools_doc.txt %%%%%%%%%%%%%%%%%% +% That's all folks! + diff --git a/IEEEtran/tools/README b/IEEEtran/tools/README new file mode 100644 index 0000000..bc256c5 --- /dev/null +++ b/IEEEtran/tools/README @@ -0,0 +1,121 @@ + +August 26, 2015 + + +The IEEEtrantools.sty package provides several commands from the +IEEEtran.cls file so that they can be used under other LaTeX classes. The +user guide provided here covers only the differences in the use of the +commands from those provided by IEEEtran.cls. For complete documentation +on these commands, see the relevant sections in the IEEEtran_HOWTO manual +of the IEEEtran LaTeX class. + +The IEEEtrantools.sty package provides the following IEEEtran.cls commands: + + 1. \IEEEPARstart which produces large initial "drop cap" letters. + + 2. The \bstctlcite command for the control entry types of IEEEtran.bst + V1.00 and later. + + 3. The \IEEEnoauxwrite command. + + 4. The IEEE itemize, enumerate and description list environments. + + 5. The complete IEEEeqnarray family for producing multiline equations + as well as matrices and tables, including the IEEEeqnarray support + commands. + + 6. The \IEEEQEDhere and \IEEEQEDhereams commands to provide amsthm.sty + \qedhere functionality to IEEEproof. \IEEEQEDhere is for simple use + "right on the spot" such as within an IEEEeqnarry: + + \begin{IEEEproof} + \begin{IEEEeqnarray}{rCl+x*} + x & = & y & \nonumber\IEEEQEDhere + \end{IEEEeqnarray} + \end{IEEEproof} + + While \IEEEQEDhereams is like amsthm's venerable \qedhere and is + for use within the standard equation environment: + + \begin{IEEEproof} + \begin{equation} + x = y \nonumber\IEEEQEDhereams\quad + \end{equation} + \end{IEEEproof} + + Note that the qedhere style is normally not done with IEEE-related + work so these are undocumented features of IEEEtran.cls. + + Thanks Mark D. Butala, Hennadiy Leontyev and Stefan M. Moser for + suggesting this feature. + + + +IEEEtrantools.sty is not needed and should not be used with IEEEtran.cls. + +For helpful tips, answers to frequently asked questions and other support, +visit the IEEEtrantools support page at my website: + +http://www.michaelshell.org/tex/ieeetran/tools/ + + +Enjoy! + +Michael Shell +http://www.michaelshell.org/ + + +******* +2015/08/26 V1.5 (V1.8b of IEEEtran.cls) changes: + + 1) Revised IEEEeqnarray column specifications to work with active " + (or other punctuation catcode changes) as with babel under the + german or ngerman language modes. + Thanks to Stefan M. Moser for reporting this problem. + + 2) Fix bug with IEEEeqnarray equation number foreground color + under the color environment of Beamer class. + Thanks to Joschi Brauchle for reporting this problem. + + 3) Added the \IEEEnoauxwrite command. + Thanks to Sudarshan Mukherjee for suggesting this feature. + + + +********************************** Files ********************************** + +README - This file. + +changelog.txt - The revision history. + +IEEEtrantools.sty - The LaTeX package file. + +IEEEtrantools_doc.txt - The user manual - supplementary to the + IEEEtran_HOWTO manual. + +*************************************************************************** +Legal Notice: +This code is offered as-is without any warranty either expressed or +implied; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE! +User assumes all risk. +In no event shall the IEEE or any contributor to this code be liable for +any damages or losses, including, but not limited to, incidental, +consequential, or any other damages, resulting from the use or misuse +of any information contained here. + +All comments are the opinions of their respective authors and are not +necessarily endorsed by the IEEE. + +This work is distributed under the LaTeX Project Public License (LPPL) +( http://www.latex-project.org/ ) version 1.3, and may be freely used, +distributed and modified. A copy of the LPPL, version 1.3, is included +in the base LaTeX documentation of all distributions of LaTeX released +2003/12/01 or later. +Retain all contribution notices and credits. +** Modified files should be clearly indicated as such, including ** +** renaming them and changing author support contact information. ** + +File list of work: IEEEtrantools.sty, IEEEtrantools_doc.txt +*************************************************************************** + diff --git a/IEEEtran/tools/changelog.txt b/IEEEtran/tools/changelog.txt new file mode 100644 index 0000000..1e721c5 --- /dev/null +++ b/IEEEtran/tools/changelog.txt @@ -0,0 +1,119 @@ + + + Changelog history of the IEEEtrantools.sty LaTeX package. + 2015/08/26 + by Michael Shell (MDS) + http://www.michaelshell.org/ + + +2015/08/26 V1.5 (V1.8b of IEEEtran.cls) + + 1) Revised IEEEeqnarray column specifications to work with active " + (or other punctuation catcode changes) as with babel under the + german or ngerman language modes. + Thanks to Stefan M. Moser for reporting this problem. + + 2) Fixed bug with IEEEeqnarray equation number foreground color + under the color environment of Beamer class. + Thanks to Joschi Brauchle for reporting this problem. + + 3) Added the \IEEEnoauxwrite command. + Thanks to Sudarshan Mukherjee for suggesting this feature. + + +******* +2014/09/17 V1.4 (V1.8a of IEEEtran.cls) changes: + + 1) Internal code improvements for command argument processing and + support for future features. + + +******* +12/2012 V1.3 (V1.8 of IEEEtran.cls) changes: + + 1) No longer redefines the standard LaTeX itemize, enumerate and + description (IED) lists by default. (e.g., the older package option + "retainorgcmds" is now the default behavior.) A new package option, + "redeflists", can be invoked to redefine the standard IED list + environments to their IEEE versions. IEEEitemize, IEEEenumerate and + IEEEdescription remain available in any case. The redeflists option + may not be compatible with other packages that alter the standard + IED list environments. + + 2) Added new *-forms of \IEEEyesnumber*, \IEEEnonumber*, \IEEEyessubnumber*, + and \IEEEnosubnumber* (the non-star form of the latter is also new) which + persist across IEEEeqnarray lines until countermanded. To provide for + continued subequations across instances of IEEEeqnarrays as well as for + subequations that follow a main equation (e.g., 14, 14a, 14b ...) + \IEEEyessubnumber no longer automatically increments the equation number + on it's first invocation of a subequation group. Invoke both + \IEEEyesnumber\IEEEyessubnumber together to start a new + equation/subequation group. + + 3) Hyperref links now work with IEEEeqnarray equations. + Thanks to Stefan M. Moser for reporting this problem. + + 4) Now provides the IEEEproof environment, as well as the + \IEEEQEDhere, \IEEEQEDhereeqn and \IEEEQEDoff commands. + Also, \IEEEproofindentspace allows users to change the + IEEEproof indentation via \renewcommand. + Thanks to Mark D. Butala, Hennadiy Leontyev and Stefan M. Moser + for suggesting this. Special thanks to Stefan M. Moser for beta + testing and additional suggestions which improved IEEEproof. + + 5) Revised \IEEEeqnarraymulticol{} to allow inner alignments without + requiring extra containing braces to prevent an incomplete \ifx error. + Thanks to Stefan M. Moser and Auke van der Valk for reporting this + problem. + + 6) Added \IEEEauthorrefmark. + + 7) Removed support for legacy IED list commands. + IEEEtrantools no longer defines or references \labelindent so as to + avoid namespace problems with list packages that define it. + Thanks to Sven Köhler for reporting the problem with enumitem.sty. + + +******* + 1/2007 V1.2 (V1.7 of IEEEtran.cls) changes: + + 1) Several commands and environments have depreciated in favor of + replacements with IEEE prefixes to better avoid potential future name + clashes with other packages. Legacy code retained to allow + use of the obsolete forms, but with an warning message to the + console during compilation: + \IEEEPARstart + For IED lists: + \IEEEiedlabeljustifyc, \IEEEiedlabeljustifyl, \IEEEiedlabeljustifyr, + \IEEEnocalcleftmargin, \IEEElabelindent, \IEEEsetlabelwidth, + \IEEEusemathlabelsep + + 2) These commands/lengths now require the IEEE prefix and do not have + legacy support: \IEEEnormaljot. + For IED lists: \ifIEEEnocalcleftmargin, \ifIEEEnolabelindentfactor, + \IEEEiedlistdecl, \IEEElabelindentfactor + + 3) \normalsizebaselineskip no longer provided. + + 4) New \IEEEPARstart controls: + \IEEEPARstartHEIGHTTEXT, \IEEEPARstartFONTSTYLE, \IEEEPARstartCAPSTYLE, + \IEEEPARstartWORDFONTSTYLE, \IEEEPARstartWORDCAPSTYLE, + \IEEEPARstartHOFFSET, \IEEEPARstartITLCORRECT + and the (output) length \IEEEPARstartletwidth. + + 5) Provide for an optional argument to \bstctlcite to provide a way to + specify a different aux file. + + +******* + 11/2002 V1.1 (V1.6b of IEEEtran.cls) changes: + + 1) In addition to the IEEE IED lists, the original LaTeX IED style list + environments are now preserved as LaTeXitemize, LaTeXenumerate, and + LaTeXdescription. Also, users can now redefine \makelabel within + IEEE IED list controls. There may be some use for these in specialized + applications. Thanks to Eli Barzilay for suggesting this feature. + + +******* +