\def\fileversion{1.8}
%\def\filedate{1998/03/17}
%\def\filedate{1999/05/25}
%\def\filedate{1999/08/07}
%\def\filedate{1999/09/03}
\def\filedate{1999/10/03}  %by SM Yen: to remove the odd/evenfoot when submit

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%                           CLASS lcistech-ncu.cls
%
%---------------------------------------------------------------------
% Author:       Marc Joye (modified by Sung-Ming Yen)
% Address:      Dept. of Computer Science and Information Engineering
%               National Central University
%               Chung-Li, TAIWAN 320, R.O.C.
% E-mail:       mjoye@geocities.com  (yensm@csie.ncu.edu.tw)
% URL:          http://www.geocities.com/CapeCanaveral/Launchpad/9160/
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
\typeout{^^J  ***  LCIS Technical Report v\fileversion\space for LaTeX2e - 
  Marc Joye ***^^J}
\ProvidesClass{lcistech-ncu}[\filedate]

%%------------------------ (class options) ----------------------------
%% a4paper (default), a5paper, b5paper, letterpaper, legalpaper,executivepaper
%% 10pt, 11pt (default), 12pt
%% titlepage (default), notitlepage
%% report (default), manual
%% submit, blind, doublespace, published
%% envcountreset, envcountsect
\newcommand\mj@papersize{}
\DeclareOption{a4paper}{\renewcommand\mj@papersize{a4}}
\DeclareOption{a5paper}{\renewcommand\mj@papersize{a5}}
\DeclareOption{b5paper}{\renewcommand\mj@papersize{b5}}
\DeclareOption{letterpaper}{\renewcommand\mj@papersize{letter}}
\DeclareOption{legalpaper}{\renewcommand\mj@papersize{legal}}
\DeclareOption{executivepaper}{\renewcommand\mj@papersize{executive}}

\newcommand\mj@ptsize{}
\DeclareOption{10pt}{\renewcommand\mj@ptsize{0}}
\DeclareOption{11pt}{\renewcommand\mj@ptsize{1}}
\DeclareOption{12pt}{\renewcommand\mj@ptsize{2}}

\newcommand\mj@titlep@ge{}
\newif\ifmj@published\mj@publishedfalse
\DeclareOption{published}{\mj@publishedtrue%
  \renewcommand\mj@titlep@ge{notitlepage}}
\DeclareOption{titlepage}{\renewcommand\mj@titlep@ge{titlepage}}
\DeclareOption{notitlepage}{\renewcommand\mj@titlep@ge{notitlepage}}

\let\ifmj@manual\iffalse
\newcommand\mj@class{article}
\DeclareOption{report}{}
\DeclareOption{manual}{\let\ifmj@manual\iftrue%
  \renewcommand\mj@class{report}}

\newif\ifsubmit\submitfalse
\DeclareOption{submit}{\submittrue}
\let\ifmj@blind\iffalse
\DeclareOption{blind}{\submittrue \let\ifmj@blind\iftrue}

\let\ifmj@doublespace\iffalse
\DeclareOption{doublespace}{\let\ifmj@doublespace\iftrue}

\let\if@envcntreset\iffalse
\DeclareOption{envcountreset}{\let\if@envcntreset\iftrue}

\let\if@envcntsect\iffalse
\DeclareOption{envcountsect}{\let\if@envcntsect\iftrue}

\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\mj@class}}
\ExecuteOptions{a4paper,11pt,titlepage}
\ProcessOptions
\LoadClass[1\mj@ptsize pt,\mj@papersize paper,\mj@titlep@ge]{\mj@class}
%%---------------------- (end class options) --------------------------


%%------------------------ (page settings) ----------------------------
\ifmj@published
  \IfFileExists{times.sty}{\RequirePackage{times}}{}
\fi
\setlength\arraycolsep{1.4\p@}
\setlength\tabcolsep{1.4\p@}
\renewcommand{\pmod}[1]{\allowbreak \mkern 10mu({\operator@font mod}\,\,#1)}
%%---------------------- (end page settings) --------------------------


%%---------------------------- (macros) -------------------------------
\def\@LCIS{L\kern -.3em%
  \raise .85ex\hbox {$\m@th $\csname S@\f@size \endcsname \fontsize
    \ssf@size \z@ \math@fontsfalse \selectfont C}\kern -.12em%
  \lower .3ex\hbox {$\m@th $\csname S@\f@size \endcsname \fontsize
    \sf@size \z@ \math@fontsfalse \selectfont I}\kern -.08emS}
\newcommand{\LCIS}{\protect\@LCIS}

\def\squareforqed{\hbox{\rlap{$\sqcap$}$\sqcup$}}
\newcommand{\qed}{\ifmmode\squareforqed\else{\unskip\nobreak\hfil
  \penalty50\hskip1em\null\nobreak\hfil\squareforqed
  \parfillskip=0pt\finalhyphendemerits=0\endgraf}\fi}

\IfFileExists{amsfonts.sty}{\RequirePackage{amsfonts}}{}
\providecommand{\mathbb}{\mathbf}
\newcommand\bbba{\mathbb{A}} \newcommand\bbbb{\mathbb{B}}
\newcommand\bbbc{\mathbb{C}} \newcommand\bbbd{\mathbb{D}}
\newcommand\bbbe{\mathbb{E}} \newcommand\bbbf{\mathbb{F}}
\newcommand\bbbg{\mathbb{G}} \newcommand\bbbh{\mathbb{H}}
\newcommand\bbbi{\mathbb{I}} \newcommand\bbbj{\mathbb{J}}
\newcommand\bbbk{\mathbb{K}} \newcommand\bbbl{\mathbb{L}}
\newcommand\bbbm{\mathbb{M}} \newcommand\bbbn{\mathbb{N}}
\newcommand\bbbo{\mathbb{O}} \newcommand\bbbp{\mathbb{P}}
\newcommand\bbbq{\mathbb{Q}} \newcommand\bbbr{\mathbb{R}}
\newcommand\bbbs{\mathbb{S}} \newcommand\bbbt{\mathbb{T}}
\newcommand\bbbu{\mathbb{U}} \newcommand\bbbv{\mathbb{V}}
\newcommand\bbbw{\mathbb{W}} \newcommand\bbbx{\mathbb{X}}
\newcommand\bbby{\mathbb{Y}} \newcommand\bbbz{\mathbb{Z}}
\newcommand\bbbone{{\mathchoice {\rm 1\mskip-4mu l} {\rm 1\mskip-4mu l}
  {\rm 1\mskip-4.5mu l} {\rm 1\mskip-5mu l}}}
%%-------------------------- (end macros) -----------------------------


%%------------------------- (user options) ----------------------------
%% \title[...]{...}    (mandatory!!!)
%% \author{...}
%% \TRnumber{...}
%% \institute{...}     (by default LCIS address)
%% \keywords{...}      (optional)
%% \date{...}          (by default the current date)
%% \TRtype{...}        (by default TR for "report" and TM for "manual")
%% \copyrightyear{...} (by default the current year)
%% \published{...}     (optional)
%% The following parameters are used when submitting a paper (class
%% options "submit" or "blind")
%% \contactauthor{...}
%% \coverabstract{...}
\long\def\title{\@ifnextchar [{\mj@title}{\mj@title[]}}
\def\mj@title[#1]#2{\gdef\@shorttitle{#1}\gdef\@title{#2}}
\ifmj@manual
  \def\mj@type{TM}\def\mj@type@{Technical Manual}
\else
  \def\mj@type{TR}\def\mj@type@{Technical Report}
\fi
\newcommand{\TRnumber}[1]{\gdef\mj@number{#1}}
\let\TMnumber\TRnumber
\newcommand{\institute}[1]{%
  \let\email\texttt
  \let\url\texttt
  \gdef\mj@institute{#1}} 
\newcommand{\keywords}[1]{\gdef\mj@keywords{#1}}
\newcommand{\TRtype}[1]{\gdef\mj@type{#1}}
\newcommand{\copyrightyear}[1]{\gdef\mj@copyear{#1}}
\newcommand{\published}[1]{\gdef\mj@published{#1}}
\def\inst#1{${}^{#1)}$}
\def\fnmsep{\unskip$^,$}
\long\def\coverabstract#1{\gdef\mj@coverabstract{#1}}
\newcommand{\comment}[1]{\gdef\mj@comment{#1}}
\newcommand{\contactauthor}[1]{\gdef\mj@corauthor{#1}}
\let\correspondingauthor\contactauthor

\def\@title{\@empty}
\def\@shorttitle{\@empty}
\def\@author{\@empty}
\def\mj@number{\@empty}
\def\mj@copyear{\number\year}
\def\mj@published{\@empty}
\ifmj@blind \def\keywordsname{Keywords} 
\else \def\keywordsname{Indexing terms} 
\fi
\def\mj@keywords{\@empty}
\def\mj@institute{\adLCIS}
\def\mj@coverabstract{\@empty}
\def\mj@corauthor{\@empty}

\ifmj@blind
  \def\mj@comment{This paper does not substantially duplicate work that
        any of the authors have published elsewhere or have submitted in
        parallel to any other conference or workshop that has proceedings.}
\else
  \def\mj@comment{\@empty}
\fi

\def\adLCIS{%
      Dept of Computer Science and Information Engineering\\ 
      National Central University\\
      Chung-Li, Taiwan 320, R.O.C.}

\ifsubmit
  \def\adLCIS{%
        Laboratory of Cryptography and Information Security\\ 
        Dept of Computer Science and Information Engineering\\
        National Central University\\
        Chung-Li, Taiwan 320, R.O.C.}
\fi
\ifmj@published
  \def\adLCIS{%
        Laboratory of Cryptography and Information Security\\ 
        Dept of Computer Science and Information Engineering\\
        National Central University\\
        Chung-Li, Taiwan 320, R.O.C.}
\fi

%%----------------------- (end user options) --------------------------


%%---------------------- (warnings and errors) ------------------------
\newcommand{\mj@warning}[1]{%
  \GenericWarning {\space \space \space \@spaces \@spaces \@spaces }%
  {LCIS_Tech Warning: #1}}
%--- Warning without line number
\newcommand{\mj@warning@no@line}[1]{%
  \GenericWarning {\space \space \space \@spaces \@spaces \@spaces }%
  {LCIS_Tech Warning: #1\@gobble}}
\newcommand{\mj@error}[2]{%
  \GenericError {\space \space \space \@spaces \@spaces \@spaces }%
  {LCIS_Tech Error: #1}{See the documentation for explanation.}{#2^^J}}

\def\address#1{\mj@error{\string\address\space is not a valid paramater}{Use
  \string\institute\space instead to define the address.}}
%%-------------------- (end warnings and errors) ----------------------

%%---------------------- (doublespace option) -------------------------
\ifmj@doublespace \def\baselinestretch{2} \fi
%---Stolen from doublespace.sty
\ifx\undefined\selectfont %then new font selection scheme not invoked
  \def\@setsize#1#2#3#4{\@nomath#1
    \let\@currsize#1\baselineskip
    #2\baselineskip\baselinestretch\baselineskip
    \parskip\baselinestretch\parskip
    \setbox\strutbox\hbox{\vrule height.7\baselineskip
      depth.3\baselineskip width\z@}%-KPC
    \normalbaselineskip\baselineskip#3#4}
\else %new font selection scheme is defined, set up way to change baselines
      % NFSS2 does not have \setnew@baselineskip anymore 
  \def\@newbaseline{%
    \ifx\undefined\setnew@baselineskip% 
      \baselineskip\f@baselineskip\relax%
    \else
      \setnew@baselineskip%
    \fi
    \baselineskip\baselinestretch\baselineskip
    \setbox\strutbox\hbox{\vrule\@height.7\baselineskip
    \@depth.3\baselineskip \@width\z@}%
    \normalbaselineskip\baselineskip}% 
\fi

%---Increase the space between last line of text and footnote rule.
%   This is a very untidy way to do it!
\skip\footins 20pt plus4pt minus4pt

\def\spacing#1{\par%
 \begingroup  
 \def\baselinestretch{#1}%
 \ifx\undefined\selectfont %then new font selection scheme not invoked
   \ifx\@currsize\normalsize \@normalsize \else \@currsize \fi
 \else %else new font selection scheme is invoked
   \@newbaseline %include new baselinestretch
 \fi}
\def\endspacing{\par%
 \vskip\parskip \vskip\baselineskip%
 \endgroup%
 \vskip-\parskip \vskip-\baselineskip}

\def\singlespace{\spacing{1}}
\let\endsinglespace=\endspacing
\def\onehalfspace{\spacing{1.5}}
\let\endonehalfspace=\endspacing
\def\doublespace{\spacing{2}}
\let\enddoublespace=\endspacing  
%%-------------------- (end doublespace option) -----------------------


%%------------------- (maketitle and titlepage) -----------------------
\newcounter{mj@inst}
\def\institutename{\par
  \begingroup
    \parskip=\z@
    \parindent=\z@
    \setcounter{mj@inst}{1}%
    \def\and{\par \vskip 5\p@ \stepcounter{mj@inst}%
      ${}^{\themj@inst)}\,$\ignorespaces}%
    \setbox0=\vbox{\def\thanks##1{}\mj@institute}%
    \ifnum\c@mj@inst=1\relax
    \else
      \setcounter{mj@inst}{1}%
      ${}^{\themj@inst)}\,$\ignorespaces
    \fi
    \ignorespaces
    \mj@institute\par
 \endgroup}

\if@titlepage
  \renewcommand{\maketitle}{%
    \if!\@title!\mj@error{No title is given}{Give a title by
      \string\title{...}\space in the preamble of the document.}
    \fi
    \if!\@author!\mj@warning@no@line{No \noexpand\author given}\fi
    \if!\mj@number!\mj@warning@no@line{This report has no number.^^J 
      >> Give a number by \string\TRnumber{...}\space in the preamble of the
      document}
      \gdef\mj@number{0-0}
    \fi 
    \begin{titlepage}%
      \ifmj@doublespace \begin{singlespace} \fi
      \def\thanks##1{\unskip{}} 
      \def\fnmsep{\unskip} \let\footnoterule\relax
      \let\footnote\thanks 
      \ifsubmit \submittp \else \mj@techreptp \fi
      \ifmj@doublespace \end{singlespace} \fi
    \end{titlepage}%
    \mj@maketitle}
\else
  \renewcommand{\maketitle}{%
    \if!\@title!\mj@error{No title is given}{Give a title by
      \string\title{...}\space in the preamble of the document.}
    \fi
    \if!\@author!\mj@warning@no@line{No \noexpand\author given}\fi
    \if!\mj@number!\mj@warning@no@line{This report has no number.^^J 
      >> Give a number by \string\TRnumber{...}\space in the preamble of the
      document}
      \gdef\mj@number{0-0}
    \fi 
    \mj@maketitle}
\fi

%---Titlepage for a technical report
\newcommand{\mj@techreptp}{%
   \def\inst##1{\unskip{}}
   \def\and{\end{tabular}\hskip.5em \@plus.08fil $\cdot$%
          \hskip.5em \@plus.08fil\begin{tabular}[t]{c}}
   \begin{center}\fbox{\large%
     \begin{tabular}[t]{c} 
       {\vbox to 3ex{}\LARGE\scshape National Central University}\\[.6em]
       Department of Computer Science and Information Engineering\\[.3em]
       Laboratory of Cryptography and Information Security
     \end{tabular}}\par\vskip 10ex
     \begingroup
       \newbox\mj@box \fboxsep=.5em
       \setbox\mj@box\hbox{{\Huge \LCIS}}
       \dimen@\ht\mj@box \advance\dimen@ by \dp\mj@box
       \mbox{\hbox to-.14em{\raisebox{-1.21ex}{%
         \fbox{{\hbox to\wd\mj@box{\vbox to\dimen@{\vss}\hss}}}}\hss}}
       \fbox{\box\mj@box}%
     \endgroup\par\vskip 3ex
     {\large \mj@type@\par} 
     \vskip 1ex 
     {\sffamily\Large \mj@type-\mj@number\par}
   \end{center}
   \vfil \vskip 10\p@
   \begin{center}\fbox{\kern .02\textwidth{}%
     \begin{minipage}{.94\textwidth}
       \centering \vskip3ex
       {\sffamily\LARGE\bfseries\boldmath \@title \par}%
       \if!\@author!\else
         \vskip 3ex%
         {\large\itshape  \lineskip .75em%
           \begin{tabular}[t]{c} \@author \end{tabular}\par}%
       \fi 
       \null\vskip 3ex
     \end{minipage}\kern .02\textwidth\par}
     \null\vskip 10ex%
     \@date
   \end{center}\par
   \vfil\null}

%---Titlepage for a submitted paper
\def\mj@nolabel{\def\label##1{\relax}}
\newcommand{\submittp}{%
  \centerline{\sf \large ************************** COVER PAGE
        **************************}\par\vskip 1cm
  \begin{center}
        {\LARGE \pretolerance=1000 \@title \par} \vskip .7cm
        {\large \lineskip .75em
         \begin{tabular}[t]{c} \@author\end{tabular}\par} \vskip .35cm 
        {\small \institutename\par}
  \end{center} 
  \vfill
  \if|\mj@coverabstract|
      \IfFileExists{\jobname .abs}{%
        \begin{center}
          \fbox{%
            \begin{minipage}{.8\textwidth}\small
              \mj@nolabel
              \centerline{\bfseries\abstractname}\par\vskip .55em
              \@input{\jobname .abs}
            \end{minipage}}
        \end{center}}%
      {\mj@warning@no@line{File \jobname.abs does not exist}}
  \else
    \begin{center}
    \fbox{%
        \begin{minipage}{.8\textwidth}\small
          \centerline{\bfseries\abstractname}\par\vskip .55em
          \mj@coverabstract
        \end{minipage}}
    \end{center}
  \fi
  \vfill
  \if!\mj@keywords!\else{{\it \keywordsname}: \mj@keywords\par}\vfill\fi
  \if!\mj@comment!\else{%
        \begin{quote}{\mj@comment\par}\end{quote}\vskip .3cm}
  \fi
  \if!\mj@corauthor!\mj@warning@no@line{No \noexpand\contactauthor given}
  \else{\small Contact author: %
        \begin{tabular}[t]{l} \mj@corauthor \end{tabular}\par\vskip .65cm}
  \fi
  \centerline{\sf \large ************************** COVER PAGE
        **************************}}

%---Maketitle
\newcommand{\mj@maketitle}{\thispagestyle{empty}\cleardoublepage
%%  \setcounter{page}{1}\thispagestyle{titleLCIS}
%- - - - - - - - - - - - - 
  \ifsubmit
     \setcounter{page}{1}\thispagestyle{plain}
  \else
     \setcounter{page}{1}\thispagestyle{titleLCIS}
  \fi
%- - - - - - - - - - - - - 
    \begingroup
      \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
      \def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}}%
      \long\def\@makefntext##1{\parindent 1em\noindent
        \hb@xt@1.8em{%
          \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
      \if@twocolumn
        \ifnum \col@number=\@ne \@maketitle
        \else \twocolumn[\@maketitle]%
        \fi
      \else \newpage \global\@topnum\z@ \@maketitle
      \fi
      \@thanks
    \endgroup
    \setcounter{footnote}{0}%
    \global\let\thanks\relax \global\let\inst\relax \global\let\fnmsep\relax
    \global\let\maketitle\relax \global\let\@maketitle\relax
    \global\let\@thanks\@empty \global\let\@author\@empty
    \global\let\@date\@empty \global\let\title\relax
    \global\let\author\relax \global\let\date\relax
    \global\let\institutename\relax \global\let\and\relax
    \global\let\TRnumber\relax}
\def\@maketitle{%
    \newpage\null\vskip 2em%
    \begin{center}%
      \let \footnote \thanks
      \ifmj@blind
        \def\thanks##1{\unskip{}} \def\inst##1{\unskip{}}
        \def\fnmsep{\unskip} \let\footnoterule\relax
        {\LARGE \@title \par}
      \else
        {\LARGE \@title \par}%
        \vskip 1.5em%
        {\large \lineskip .5em%
          \begin{tabular}[t]{c} \@author \end{tabular}\par}%
        \ifsubmit \relax
        \else \ifmj@published\else\vskip 1em {\@date\par}\fi
        \fi
        \vskip 1.4em%
        {\footnotesize \institutename}
      \fi
    \end{center}\par\vskip 1.5em}
%%----------------- (end maketitle and titlepage) ---------------------


%%-------------------- (abstract environment) -------------------------
\def\mj@abstract{%
  \list{}{\advance\topsep by0.35cm\relax\small
      \leftmargin=0.035\textwidth
      \labelwidth=\z@
      \listparindent=\z@
      \itemindent\listparindent
      \rightmargin\leftmargin}
  \item[\hskip\labelsep {\bfseries \abstractname.}]}
\def\mj@endabstract{%
  \if!\mj@keywords!\endlist
   \else
      \item[\hskip\labelsep \textit{\keywordsname\/}:]\mj@keywords
        \endlist
   \fi}


%---Based on endfloat.sty
\ifsubmit
  \def\abstract{%
    \expandafter\immediate\openout
    \mj@postabs=\jobname.abs\relax
    \message{(\jobname.abs)}
    \def\@currenvir{mj@mjabstract}%
    \begingroup%
    \let\do\@makeother\dospecials
    \@makeother \^^L \endlinechar`\^^M \@makeother \^^M 
    \mj@xabstract}%
\else
  \let\abstract\mj@abstract
  \let\endabstract\mj@endabstract
\fi

\newcommand{\mj@iwrite}[1]{\expandafter\immediate\write\mj@postabs{#1}}
\newwrite\mj@postabs
\let\mj@mjabstract\relax
%
{\@makeother \^^M \endlinechar=-1%
 \gdef\mj@xabstract#1^^M{\def\test{#1}%
   \ifx\test\mj@endabstracttest
     \def\next{\endgroup\end{mj@mjabstract}\mj@iwrite{ }}
  \immediate\closeout\mj@postabs 
     \catcode`\   =10 \catcode `\\ =0  \catcode`\{  =1
     \catcode`\}  =2  \catcode`\$  =3  \catcode`\&  =4
     \catcode`\#  =6  \catcode`\^  =7  \catcode`\_  =8
     \catcode`\%  =14 \catcode`\^^M=5  \catcode`\~  =13%
     \catcode`\^^L=13%
     \mj@abstract \@input{\jobname .abs} \mj@endabstract
   \else%
     \mj@iwrite{#1}%
     \let\next\mj@xabstract%
   \fi \next}%
}%
{\escapechar=-1%
 \xdef\mj@endabstracttest{\string\\end\string\{abstract\string\}}%
}%
%%------------------ (end abstract environment) -----------------------


%%------------------------ (page headings) ----------------------------
\def\mj@head{\def\thanks##1{\unskip{}}%
        \def\\{\unskip\ \ignorespaces}%
        \if!\@shorttitle!{\@title}\else{\@shorttitle}\fi}

% cf. TeX book, p. 389
\def\mj@@put#1#2#3{\vbox to 0pt{\kern#2\hbox{\kern#1{#3}}\vss}}
\newdimen\mj@topmargin \mj@topmargin=\topmargin
\advance\mj@topmargin by\headheight \advance\mj@topmargin by\headsep

\def\ps@titleLCIS{% style for the title page
    \def\@oddhead{%
          \mj@@put{-\oddsidemargin}{-\mj@topmargin}{%
            \newdimen\mj@pubparbox \mj@pubparbox=\textwidth
            \advance\mj@pubparbox by2\oddsidemargin
            \parbox{\mj@pubparbox}{\footnotesize\bfseries\boldmath
              \mj@published}}\hss}
    \def\@oddfoot{%
           \def\baselinestretch{1}
           \ifx\undefined\selectfont
           \else %else new font selection scheme is invoked
             \@newbaseline %include new baselinestretch
           \fi
           \ifnum\thepage=1{%
              \begin{tabular}[t]{@{}l}
                   \footnotesize \mj@type-\mj@number\\
                   \tiny \copyright\mj@copyear\ by \LCIS\\[-1ex]
                   \tiny For more informations, see\\[-1.3ex]
                   \tiny \ttfamily 
                     http://www.csie.ncu.edu.tw/\lower .25ex\hbox{\~{}}yensm/lcis.html
              \end{tabular}\hss}
           \else \@empty
           \fi}
    \if@twoside
      \let\@evenhead\@empty
      \let\@evenfoot\@empty
    \fi
    \let\@mkboth\markboth}

\def\ps@LCIS{%
    \def\@oddhead{\reset@font\scriptsize \mj@head\hfil\thepage}
    \let\@oddfoot\@empty
    \if@twoside
      \def\@evenhead{\reset@font\scriptsize\thepage\hfil\mj@head}
      \let\@evenfoot\@empty
    \fi
    \let\@mkboth\markboth}

\ifsubmit \pagestyle{plain} \else \pagestyle{LCIS} \fi

\ifmj@manual
\def\ps@plain{%
  \let\@mkboth\@gobbletwo \let\@oddhead\@empty 
  \def\@oddfoot{\reset@font\scriptsize \hfil\thepage\hfil}
  \let\@evenhead\@empty \let\@evenfoot\@oddfoot}
\fi
%%---------------------- (end page headings) --------------------------


%%-------------------------- (newtheorem) -----------------------------
%% Redefinition of the "\newtheorem" command.
%% Stolen from an earlier version of LLNCS class 
%%
% Usage now:
%
%     \newtheorem{env_nam}{caption}[within]{cap_font}{body_font}
% or  \newtheorem{env_nam}[numbered_like]{caption}{cap_font}{body_font}
% or  \newtheorem*{env_nam}{caption}{cap_font}{body_font}
%
% New is "cap_font" and "body_font". It stands for
% fontdefinition of the caption and the text itself.
%
% "\newtheorem*" gives a theorem without number.
\def\@thmcountersep{}
\def\@thmcounterend{.}
\def\newtheorem{\@ifstar{\@sthm}{\@Sthm}}

%---Definition of \newtheorem with number
\def\@Sthm#1{\@ifnextchar[{\@othm{#1}}{\@nthm{#1}}}
\def\@xnthm#1#2[#3]#4#5{\expandafter\@ifdefinable\csname #1\endcsname
   {\@definecounter{#1}\@addtoreset{#1}{#3}%
   \expandafter\xdef\csname the#1\endcsname{\expandafter\noexpand
     \csname the#3\endcsname \noexpand\@thmcountersep \@thmcounter{#1}}%
   \expandafter\xdef\csname #1name\endcsname{#2}%
   \global\@namedef{#1}{\@thm{#1}{\csname #1name\endcsname}{#4}{#5}}%
                              \global\@namedef{end#1}{\@endtheorem}}}
\def\@ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
   {\@definecounter{#1}%
   \expandafter\xdef\csname the#1\endcsname{\@thmcounter{#1}}%
   \expandafter\xdef\csname #1name\endcsname{#2}%
   \global\@namedef{#1}{\@thm{#1}{\csname #1name\endcsname}{#3}{#4}}%
                               \global\@namedef{end#1}{\@endtheorem}}}
\def\@othm#1[#2]#3#4#5{%
  \@ifundefined{c@#2}{\@latexerr{No theorem environment `#2' defined}\@eha}%
  {\expandafter\@ifdefinable\csname #1\endcsname
  {\global\@namedef{the#1}{\@nameuse{the#2}}%
  \expandafter\xdef\csname #1name\endcsname{#3}%
  \global\@namedef{#1}{\@thm{#2}{\csname #1name\endcsname}{#4}{#5}}%
  \global\@namedef{end#1}{\@endtheorem}}}}
\def\@thm#1#2#3#4{\refstepcounter
    {#1}\@ifnextchar[{\@ythm{#1}{#2}{#3}{#4}}{\@xthm{#1}{#2}{#3}{#4}}}
\def\@xthm#1#2#3#4{\@begintheorem{#2}{\csname the#1\endcsname}{#3}{#4}%
                    \ignorespaces}
\def\@ythm#1#2#3#4[#5]{\@opargbegintheorem{#2}{\csname
       the#1\endcsname}{#5}{#3}{#4}\ignorespaces}
\def\@begintheorem#1#2#3#4{\trivlist
                 \item[\hskip\labelsep{#3#1\ #2\@thmcounterend}]#4}
\def\@opargbegintheorem#1#2#3#4#5{\trivlist
      \item[\hskip\labelsep{#4#1\ #2\ (#3)\@thmcounterend}]#5}

%---Definition of \newtheorem* without number
\def\@sthm#1#2{\@Ynthm{#1}{#2}}
\def\@Ynthm#1#2#3#4{\expandafter\@ifdefinable\csname #1\endcsname
   {\global\@namedef{#1}{\@Thm{\csname #1name\endcsname}{#3}{#4}}%
    \expandafter\xdef\csname #1name\endcsname{#2}%
    \global\@namedef{end#1}{\@endtheorem}}}
\def\@Thm#1#2#3{\@ifnextchar[{\@Ythm{#1}{#2}{#3}}{\@Xthm{#1}{#2}{#3}}}
\def\@Xthm#1#2#3{\@Begintheorem{#1}{#2}{#3}\ignorespaces}
\def\@Ythm#1#2#3[#4]{\@Opargbegintheorem{#1}
       {#4}{#2}{#3}\ignorespaces}
\def\@Begintheorem#1#2#3{#3\trivlist
                           \item[\hskip\labelsep{#2#1\@thmcounterend}]}
\def\@Opargbegintheorem#1#2#3#4{#4\trivlist
      \item[\hskip\labelsep{#3#1\ (#2)\@thmcounterend}]}

%---Definition of miscellaneous theorem environments
\if@envcntsect
   \def\@thmcountersep{.}
   \newtheorem{theorem}{Theorem}[section]{\bfseries}{\itshape}
\else
   \newtheorem{theorem}{Theorem}{\bfseries}{\itshape}
   \if@envcntreset
      \@addtoreset{theorem}{section}
   \else
      \@addtoreset{theorem}{chapter}
   \fi
\fi
\newtheorem*{proof}{Proof}{\itshape}{\rmfamily}
\newtheorem{corollary}[theorem]{Corollary}{\bfseries}{\itshape}
\newtheorem{definition}[theorem]{Definition}{\bfseries}{\rmfamily}
\newtheorem{example}[theorem]{Example}{\itshape}{\rmfamily}
\newtheorem{exercise}[theorem]{Exercise}{\itshape}{\rmfamily}
\newtheorem{lemma}[theorem]{Lemma}{\bfseries}{\itshape}
\newtheorem{note}[theorem]{Note}{\itshape}{\rmfamily}
\newtheorem{problem}[theorem]{Problem}{\itshape}{\rmfamily}
\newtheorem{proposition}[theorem]{Proposition}{\bfseries}{\itshape}
\newtheorem{question}[theorem]{Question}{\itshape}{\rmfamily}
\newtheorem{remark}[theorem]{Remark}{\itshape}{\rmfamily}
\newtheorem{solution}[theorem]{Solution}{\itshape}{\rmfamily}

\def\@takefromreset#1#2{%
    \def\@tempa{#1}%
    \let\@tempd\@elt
    \def\@elt##1{%
        \def\@tempb{##1}%
        \ifx\@tempa\@tempb\else
            \@addtoreset{##1}{#2}%
        \fi}%
    \expandafter\expandafter\let\expandafter\@tempc\csname cl@#2\endcsname
    \expandafter\def\csname cl@#2\endcsname{}%
    \@tempc
    \let\@elt\@tempd}
\def\theopargself{\def\@opargbegintheorem##1##2##3##4##5{\trivlist
      \item[\hskip\labelsep{##4##1\ ##2\ ##3}]##5}
                  \def\@Opargbegintheorem##1##2##3##4{##4\trivlist
      \item[\hskip\labelsep{##3##1\ ##2}]}}
%%------------------------ (end newtheorem) ---------------------------


%%------------------------- (bibliography) ----------------------------
\ifx\undefined\refname
  \let\refname\bibname
\fi

\renewenvironment{thebibliography}[1]
     {\ifmj@manual\chapter*{\refname
        \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}}%
	\normalfont\small
      \else \section*{\refname
        \@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}}%
	\normalfont\footnotesize
      \fi
      \labelsep .5em\relax
      \list{\@biblabel{\@arabic\c@enumiv}}%
           {\settowidth\labelwidth{\@biblabel{#1}}%
            \leftmargin\labelwidth \advance\leftmargin\labelsep
            \@openbib@code
            \usecounter{enumiv} \let\p@enumiv\@empty
            \renewcommand\theenumiv{\@arabic\c@enumiv}}%
      \sloppy \clubpenalty4000 \@clubpenalty \clubpenalty \widowpenalty4000%
      \sfcode`\.\@m}
     {\def\@noitemerr
       {\@latex@warning{Empty `thebibliography' environment}}%
      \endlist}
%%----------------------- (end bibliography) --------------------------

\endinput
%% 
%% End of file `lcistech-ncu.cls'.