%%
%% This is file `chmst-ps.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% chmst-ps.dtx  (with options: `chmstps')
%% 
%% This is a generated file.
%% 
%% Copyright 2002, 2004, 2009, 2010 by Shinsaku Fujita
%% all rights reserved.
%% This style file is created for drawing chemical structural formulas
%% This style file is to be contained in the ``xymtex'' directory which
%% is an input directory for TeX.
%% 
%% This file is part of the XyMTeX system.
%% =======================================
%% Previous Versions:
%% Version 1.00 Released on May 30, 2002
%% Version 1.01 Released on August 30, 2004
%% Version 1.02 Released on November 08, 2009
%% Version 1.03 Released on November 26, 2009
%% 
%% Present version (as chmst-ps.dtx etc.):
%% Version 5.00 Released on October 01, 2010
%% 
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
%% 
%% This work has the LPPL maintenance status `maintained'.
%% The Current Maintainer of this work is Shinsaku Fujita.
%% 
%% This work consists of the files xymtx-ps.dtx and xymtx-ps.ins
%% and the derived file xymtx-ps.sty.
%% 
%% =======================================
%% 
%% \CharacterTable
%%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%%   Digits        \0\1\2\3\4\5\6\7\8\9
%%   Exclamation   \!     Double quote  \"     Hash (number) \#
%%   Dollar        \$     Percent       \%     Ampersand     \&
%%   Acute accent  \'     Left paren    \(     Right paren   \)
%%   Asterisk      \*     Plus          \+     Comma         \,
%%   Minus         \-     Point         \.     Solidus       \/
%%   Colon         \:     Semicolon     \;     Less than     \<
%%   Equals        \=     Greater than  \>     Question mark \?
%%   Commercial at \@     Left bracket  \[     Backslash     \\
%%   Right bracket \]     Circumflex    \^     Underscore    \_
%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%%   Right brace   \}     Tilde         \~}
%%
%% `chmst-ps.dtx' ver1.00 (for LaTeX2e) 2002/05/30
%% `chmst-ps.dtx' ver1.01 (for LaTeX2e) 2004/08/30
%% `chmst-ps.dtx' ver1.02 (for LaTeX2e) 2009/11/08
%% `chmst-ps.dtx' ver1.03 (for LaTeX2e) 2009/11/26
%% `chmst-ps.dtx' ver5.00 (for LaTeX2e) 2010/10/01
%%  by Shinsaku Fujita
%%
\def\j@urnalname{chmst-ps} \def\journalID{chmst-ps}
\def\versi@ndate{October 01, 2010}
\def\versi@nno{ver5.00}
\def\copyrighth@lder{SF} % Shinsaku Fujita
\typeout{Package `\j@urnalname' (\versi@nno) <\versi@ndate>\space
[\copyrighth@lder]}
\typeout{chmst-ps.sty ver5.00 (for LaTeX2e) 2010/10/01[SF]}
\@ifundefined{if@@@chemtimes}{\newif\if@@@chemtimes}{}
\@ifundefined{if@@chemtimes}{\newif\if@@chemtimes}{}%from chemtimes
\DeclareOption{chemtimes}{\@@@chemtimestrue}
\@@@chemtimesfalse
\ProcessOptions
\if@@@chemtimes\if@@chemtimes\else
  \PackageError{chmst-ps}
    {The option ``chemtimes'' is not permitted}
    {You should use this option after the chemtimes package is loaded.}
\fi\fi
\if@@@chemtimes
\RequirePackage[chemtimes]{chemist}%
\else
\RequirePackage{chemist}%
\fi
\RequirePackage{xymtx-ps}%
\newdimen\@tempdimX
\newdimen\@tempdimY
\def\rArrow@Element#1{\begingroup\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,%
arrowlength=1.6,arrowinset=0.6]{->}(0pt,0.28em)(#1,0.28em)%
\end{pspicture}\hss}\endgroup}
\let\Arrow@Element=\rArrow@Element
\def\lArrow@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,%
arrowlength=1.6,arrowinset=0.6]{<-}(0pt,0.28em)(#1,0.28em)%
\end{pspicture}\hss}}
\def\lrArrow@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,%
arrowlength=1.6,arrowinset=0.6]{<->}(0pt,0.28em)(#1,0.28em)%
\end{pspicture}\hss}}
\def\eqArrow@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(0pt,0.43em)(#1,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(0pt,0.13em)(#1,0.13em)%
\end{pspicture}\hss}}
\RequirePackage{pstricks}%
\edef\past@arrowtable{\pst@arrowtable,Hru-Hru,Hrd-Hrd,Hlu-Hlu,Hld-Hld}
\def\tx@HarpoonrUp{ \tx@setStrokeTransparency HarpoonrUp }%
\@namedef{psas@Hru}{%
  /HarpoonrUp{%PostScript Procedure
  CLW mul add dup
  2 div /w ED
  mul dup /h ED
  mul /a ED
  CLW 2 div /Hwd ED
  h a sub /Hwh ED
  0 Hwh moveto
  Hwd neg Hwh L
  Hwd neg 0 L
  0 0 L
  w h L
  0 Hwh L
  gsave fill grestore
}def
\psk@arrowinset \psk@arrowlength \psk@arrowsize \tx@HarpoonrUp
}
\def\tx@HarpoonrDown{ \tx@setStrokeTransparency HarpoonrDown }%
\@namedef{psas@Hrd}{%
  /HarpoonrDown {%PostScript Procedure
  CLW mul add dup
  2 div /w ED
  mul dup /h ED
  mul /a ED
  CLW 2 div /Hwd ED
  h a sub /Hwh ED
  0 Hwh moveto
  Hwd Hwh L
  Hwd 0 L
  0 0 L
  w neg h L
  0 Hwh L
  gsave fill grestore
}def
\psk@arrowinset \psk@arrowlength \psk@arrowsize \tx@HarpoonrDown
}
\def\tx@HarpoonlUp{ \tx@setStrokeTransparency HarpoonlUp }%
\@namedef{psas@Hlu}{%
  /HarpoonlUp {%PostScript Procedure
  CLW mul add dup
  2 div /w ED
  mul dup /h ED
  mul /a ED
  CLW 2 div /Hwd ED
  h a sub /Hwh ED
  0 Hwh moveto
  Hwd Hwh L
  Hwd 0 L
  0 0 L
  w neg h L
  0 Hwh L
  gsave fill grestore
}def
\psk@arrowinset \psk@arrowlength \psk@arrowsize \tx@HarpoonlUp
}
\def\tx@HarpoonlDown{ \tx@setStrokeTransparency HarpoonlDown }%
\@namedef{psas@Hld}{%
  /HarpoonlDown {%PostScript Procedure
  CLW mul add dup
  2 div /w ED
  mul dup /h ED
  mul /a ED
  CLW 2 div /Hwd ED
  h a sub /Hwh ED
  0 Hwh moveto
  Hwd neg Hwh L
  Hwd neg 0 L
  0 0 L
  w h L
  0 Hwh L
  gsave fill grestore
}def
\psk@arrowinset \psk@arrowlength \psk@arrowsize \tx@HarpoonlDown
}
\def\eqHarpoon@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hru}(0pt,0.43em)(#1,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hld-}(0pt,0.13em)(#1,0.13em)%
\end{pspicture}\hss}}
\def\reqArrow@Element#1{\begingroup%
\dimen1=#1%
\dimen0=\eqlbarrowstretch\dimen1%
\dimen1=#1 \advance\dimen1 by-\dimen0 \divide\dimen1 by2\relax
\dimen2=\dimen1 \advance\dimen2 by\dimen0
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(0pt,0.43em)(#1,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(\dimen1,0.13em)(\dimen2,0.13em)\endgroup}
\def\leqArrow@Element#1{\begingroup%
\dimen1=#1%
\dimen0=\eqlbarrowstretch\dimen1%
\dimen1=#1 \advance\dimen1 by-\dimen0 \divide\dimen1 by2\relax
\dimen2=\dimen1 \advance\dimen2 by\dimen0
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(\dimen1,0.43em)(\dimen2,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(0pt,0.13em)(#1,0.13em)\endgroup}
\def\reqHarpoon@Element#1{\begingroup%
\dimen1=#1%
\dimen0=\eqlbarrowstretch\dimen1%
\dimen1=#1 \advance\dimen1 by-\dimen0 \divide\dimen1 by2\relax
\dimen2=\dimen1 \advance\dimen2 by\dimen0
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hru}(0pt,0.43em)(#1,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hld-}(\dimen1,0.13em)(\dimen2,0.13em)%
\endgroup}
\def\leqHarpoon@Element#1{\begingroup%
\dimen1=#1%
\dimen0=\eqlbarrowstretch\dimen1%
\dimen1=#1 \advance\dimen1 by-\dimen0 \divide\dimen1 by2\relax
\dimen2=\dimen1 \advance\dimen2 by\dimen0
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hru}(\dimen1,0.43em)(\dimen2,0.43em)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hld-}(0pt,0.13em)(#1,0.13em)%
\endgroup}
\def\react@@rlarrow[#1]#2#3#4#5{\ensuremath{\mathrel{%
\hskip#1\raisebox{#2}{\begingroup\@tempdimX=#3\relax%
  \parbox{#3}{\centering
    \baselineskip=.8\normalbaselineskip \ChemStrut{#4}\par%
    \vskip-0.2\normalbaselineskip\vskip\reactarrowsep%
    \begin{pspicture}(0,0)(\@tempdimX,0.6em)%
    \put(0,0){\Arrow@Element{\@tempdimX}}%
    \end{pspicture}%
    \par%
    \vskip\reactarrowseprate\reactarrowsep%
    \vskip-0.1\normalbaselineskip\ChemStrut{#5}}\endgroup}}}}
\def\newreactrarrow{%
\@ifnextchar[{\newreact@rarrow}{\newreact@rarrow[0pt]}}
\def\newreact@rarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\rArrow@Element%
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactlarrow{%
\@ifnextchar[{\newreact@larrow}{\newreact@larrow[0pt]}}
\def\newreact@larrow[#1]#2#3#4#5{%
\let\Arrow@Element=\lArrow@Element%
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactlrarrow{%
\@ifnextchar[{\newreact@lrarrow}{\newreact@lrarrow[0pt]}}
\def\newreact@lrarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\lrArrow@Element%
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
%%%%2009/11/19
\def\newreactEqarrow{%
\@ifnextchar[{\newreact@Eqarrow}{\newreact@Eqarrow[0pt]}}
\def\newreact@Eqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\eqArrow@Element%
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreacteqarrow{%
\@ifnextchar[{\newreact@eqarrow}{\newreact@eqarrow[0pt]}}
\def\newreact@eqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\eqHarpoon@Element%
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\newreactREqarrow{%
\@ifnextchar[{\newreact@REqarrow}{\newreact@REqarrow[0pt]}}
\def\newreact@REqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\reqArrow@Element
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactLEqarrow{%
\@ifnextchar[{\newreact@LEqarrow}{\newreact@LEqarrow[0pt]}}
\def\newreact@LEqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\leqArrow@Element
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\newreactreqarrow{%
\@ifnextchar[{\newreact@reqarrow}{\newreact@reqarrow[0pt]}}
\def\newreact@reqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\reqHarpoon@Element
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactleqarrow{%
\@ifnextchar[{\newreact@leqarrow}{\newreact@leqarrow[0pt]}}
\def\newreact@leqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\leqHarpoon@Element
\react@@rlarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\dArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(0pt,#1)(0pt,0pt)}
\def\uArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(0pt,#1)(0pt,0pt)}
\def\veqArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(-0.15em,#1)(-0.15em,0pt)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(0.15em,#1)(0.15em,0pt)}
\def\duArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<->}(0pt,#1)(0pt,0pt)}
\def\veqHarpoon@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hrd}(-0.15em,#1)(-0.15em,0pt)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hlu-}(0.15em,#1)(0.15em,0pt)%
}
\def\react@@duarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{%
\@tempdimY=#3\def\arraystretch{0.8}%
\begin{tabular}{l}#4\end{tabular}%
{\tabcolsep=0pt\begin{tabular}{c}%
\begin{pspicture}(0,0)(0,\@tempdimY)%
\Arrow@Element{\@tempdimY}%
\end{pspicture}\end{tabular}}%
\begin{tabular}{l}#5\end{tabular}}}
\def\newreactdarrow{%
\@ifnextchar[{\newreact@darrow}{\newreact@darrow[0pt]}}
\def\newreact@darrow[#1]#2#3#4#5{%
\let\Arrow@Element=\dArrow@Element
\react@@duarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactuarrow{%
\@ifnextchar[{\newreact@uarrow}{\newreact@uarrow[0pt]}}
\def\newreact@uarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\uArrow@Element
\react@@duarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactduarrow{%
\@ifnextchar[{\newreact@duarrow}{\newreact@duarrow[0pt]}}
\def\newreact@duarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\duArrow@Element
\react@@duarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\newreactVEqarrow{%
\@ifnextchar[{\newreact@VEqarrow}{\newreact@VEqarrow[0pt]}}
\def\newreact@VEqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\veqArrow@Element
\react@@duarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactveqarrow{%
\@ifnextchar[{\newreact@veqarrow}{\newreact@veqarrow[0pt]}}
\def\newreact@veqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\veqHarpoon@Element
\react@@duarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\seArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(0pt,#1)(#1,0pt)}
\def\nwArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(0pt,#1)(#1,0pt)}
\def\react@@decrarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{%
\@tempdimX=#3\divide\@tempdimX by2\relax
\@tempdimY=#3\relax\def\arraystretch{0.8}%
\begin{tabular}{l}#4\end{tabular}\kern1em%
{\tabcolsep=0pt\begin{tabular}{c}
\begin{pspicture}(\@tempdimX,0)(\@tempdimX,\@tempdimY)
\Arrow@Element{\@tempdimY}%
\end{pspicture}\end{tabular}}\kern1em%
\begin{tabular}{l}#5\end{tabular}}}
\def\newreactsearrow{%
\@ifnextchar[{\newreact@searrow}{\newreact@searrow[0pt]}}
\def\newreact@searrow[#1]#2#3#4#5{%
\let\Arrow@Element=\seArrow@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactnwarrow{%
\@ifnextchar[{\newreact@nwarrow}{\newreact@nwarrow[0pt]}}
\def\newreact@nwarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\nwArrow@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\neArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(0pt,0pt)(#1,#1)}
\def\swArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(0pt,0pt)(#1,#1)}
\def\react@@incrarrow[#1]#2#3#4#5{\hskip#1\raisebox{#2}{%
\@tempdimX=#3 \divide\@tempdimX by2
\@tempdimY=#3%
\def\arraystretch{0.8}%
\begin{tabular}{l}#4\end{tabular}\kern1em%
{\tabcolsep=0pt
\begin{tabular}{c}
\begin{pspicture}(\@tempdimX,0)(\@tempdimX,\@tempdimY)
\Arrow@Element{\@tempdimY}%
\end{pspicture}%
\end{tabular}}\kern1em%
\begin{tabular}{l}#5\end{tabular}}}
\def\newreactnearrow{%
\@ifnextchar[{\newreact@nearrow}{\newreact@nearrow[0pt]}}
\def\newreact@nearrow[#1]#2#3#4#5{%
\let\Arrow@Element=\neArrow@Element
\react@@incrarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactswarrow{%
\@ifnextchar[{\newreact@swarrow}{\newreact@swarrow[0pt]}}
\def\newreact@swarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\swArrow@Element
\react@@incrarrow[#1]{#2}{#3}{#4}{#5}}
%%%%%2009/11/19
\def\deqArrow@Element#1{%
\begingroup
\@tempdima=#1 \advance\@tempdima by1.2pt
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(1.2pt,\@tempdima)(\@tempdima,1.2pt)%
\@tempdima=#1 \advance\@tempdima by-1.2pt
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(-1.2pt,\@tempdima)(\@tempdima,-1.2pt)\endgroup}
\def\ueqArrow@Element#1{%
\@tempdima=#1 \advance\@tempdima by-1.2pt
\@tempdimb=#1 \advance\@tempdimb by1.2pt
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{->}(-1.2pt,1.2pt)(\@tempdima,\@tempdimb)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<-}(1.2pt,-1.2pt)(\@tempdimb,\@tempdima)}
\def\deqHarpoon@Element#1{%
\begingroup
\@tempdima=#1 \advance\@tempdima by1.2pt
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hru}(1.2pt,\@tempdima)(\@tempdima,1.2pt)%
\@tempdimb=#1 \advance\@tempdimb by-1.2pt
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hld-}(-1.2pt,\@tempdimb)(\@tempdimb,-1.2pt)%
\endgroup}
\def\ueqHarpoon@Element#1{%
\begingroup
\@tempdima=#1 \advance\@tempdima by-1.2pt
\@tempdimb=#1 \advance\@tempdimb by1.2pt
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hru}(-1.2pt,1.2pt)(\@tempdima,\@tempdimb)%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hld-}(1.2pt,-1.2pt)(\@tempdimb,\@tempdima)%
\endgroup}
\def\newreactDEqarrow{\@ifnextchar[%]
{\newreact@DEqarrow}{\newreact@DEqarrow[0pt]}}
\def\newreact@DEqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\deqArrow@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactUEqarrow{\@ifnextchar[%]
{\newreact@UEqarrow}{\newreact@UEqarrow[0pt]}}
\def\newreact@UEqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\ueqArrow@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
%%%%2009/11/19
\def\newreactdeqarrow{\@ifnextchar[%]
{\newreact@deqarrow}{\newreact@deqarrow[0pt]}}
\def\newreact@deqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\deqHarpoon@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactueqarrow{\@ifnextchar[%]
{\newreact@ueqarrow}{\newreact@ueqarrow[0pt]}}
\def\newreact@ueqarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\ueqHarpoon@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
%%%%2009/11/19
\def\ulrArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<->}(0pt,0pt)(#1,#1)}
\def\dlrArrow@Element#1{%
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{<->}(0pt,#1)(#1,0pt)}
\def\newreactulrarrow{\@ifnextchar[%]
{\newreact@ulrarrow}{\newreact@ulrarrow[0pt]}}
\def\newreact@ulrarrow[#1]#2#3#4#5{%
\let\Arrow@Element=\ulrArrow@Element
\react@@incrarrow[#1]{#2}{#3}{#4}{#5}}
\def\newreactdlrarrow{\@ifnextchar[%]
{\newreact@dlrarrow}{\newreact@dlrarrow[0pt]}}
\def\newreact@dlrarrow[#1]#2#3#4#5{
\let\Arrow@Element=\dlrArrow@Element
\react@@decrarrow[#1]{#2}{#3}{#4}{#5}}
%%%%2009/11/19
\def\electronshiftAH#1(#2,#3)(#4,#5)(#6,#7){%
\@ifnextchar(%
{\electr@nshiftAH{#1}(#2,#3)(#4,#5)(#6,#7)}%
{\electr@nshiftAH{#1}(#2,#3)(#4,#5)(#4,#5)(#6,#7)}}
\def\electr@nshiftAH#1(#2,#3)(#4,#5)(#6,#7)(#8,#9){%
\psbezier[unit=\unitlength,linewidth=0.4pt]{#1}%
(#2,#3)(#4,#5)(#6,#7)(#8,#9)%
}%
\def\electronshiftHru{\electronshiftAH{-Hru}}
\def\electronshiftHrd{\electronshiftAH{-Hrd}}
\def\electronshiftHlu{\electronshiftAH{Hlu-}}
\def\electronshiftHld{\electronshiftAH{Hld-}}
\def\electronshiftArrowr{\electronshiftAH{->}}
\def\electronshiftArrowl{\electronshiftAH{<-}}
\def\lSchemeArrow@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)%
\psline[linewidth=0.4pt,doubleline=true,doublesep=0.16em,%
arrowsize=2pt 2,arrowlength=1.2,arrowinset=0.7]{<-}(0pt,0.28em)(#1,0.28em)%
\end{pspicture}\hss}}
\def\rSchemeArrow@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)%
\psline[linewidth=0.4pt,doubleline=true,doublesep=0.16em,%
arrowsize=2pt 2,arrowlength=1.2,arrowinset=0.7]{->}(0pt,0.28em)(#1,0.28em)%
\end{pspicture}\hss}}
\def\lrSchemeArrow@Element#1{\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)%
\psline[linewidth=0.4pt,doubleline=true,doublesep=0.16em,%
arrowsize=2pt 2,arrowlength=1.2,arrowinset=0.7]{<->}(0pt,0.28em)(#1,0.28em)%
\end{pspicture}\hss}}
\def\newschemelarrow#1#2#3#4{%
\let\Arrow@Element=\lSchemeArrow@Element
\react@@rlarrow[0pt]{#1}{#2}{#3}{#4}}
\def\newschemerarrow#1#2#3#4{%
\let\Arrow@Element=\rSchemeArrow@Element
\react@@rlarrow[0pt]{#1}{#2}{#3}{#4}}
\def\newschemelrarrow#1#2#3#4{%
\let\Arrow@Element=\lrSchemeArrow@Element
\react@@rlarrow[0pt]{#1}{#2}{#3}{#4}}
%%%%2009/11/19
\def\newllongrightarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\rArrow@Element{28pt}\hss}}}}
\def\newllongleftarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\lArrow@Element{28pt}\hss}}}}
\def\newllongleftrightarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\lrArrow@Element{28pt}\hss}}}}
\def\newEquilibarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\eqArrow@Element{28pt}\hss}}}}
\def\newLlongrightarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\rSchemeArrow@Element{28pt}\hss}}}}
\def\newLlongleftarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\lSchemeArrow@Element{28pt}\hss}}}}
\def\newLlongleftrightarrow{\ensuremath{%
\mathrel{\hbox to28pt{\hss\lrSchemeArrow@Element{28pt}\hss}}}}
\def\newlllongrightarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\rArrow@Element{35pt}\hss}}}}
\def\newlllongleftarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\lArrow@Element{35pt}\hss}}}}
\def\newlllongleftrightarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\lrArrow@Element{35pt}\hss}}}}
\def\newEquiliblongarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\eqArrow@Element{35pt}\hss}}}}
\def\newLllongrightarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\rSchemeArrow@Element{35pt}\hss}}}}
\def\newLllongleftarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\lSchemeArrow@Element{35pt}\hss}}}}
\def\newLllongleftrightarrow{\ensuremath{%
\mathrel{\hbox to35pt{\hss\lrSchemeArrow@Element{35pt}\hss}}}}
\def\rightharpoonupElement#1{%
\lower0.2pt\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hru}(0pt,0.28em)(#1,0.28em)
\end{pspicture}\hss}}
\def\rightharpoondownElement#1{%
\raise0.2pt\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{-Hrd}(0pt,0.28em)(#1,0.28em)
\end{pspicture}\hss}}
\def\leftharpoonupElement#1{%
\lower0.2pt\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hlu-}(0pt,0.28em)(#1,0.28em)
\end{pspicture}\hss}}
\def\leftharpoondownElement#1{%
\lower0.2pt\hbox to#1{\hss%
\begin{pspicture}(0,0)(#1,0.28em)
\psline[linewidth=0.4pt,arrowsize=2pt 2,arrowlength=1.6,arrowinset=0.6]%
{Hld-}(0pt,0.28em)(#1,0.28em)
\end{pspicture}\hss}}
\def\newllongrightharpoonup{\ensuremath{\mathrel{\rightharpoonupElement{28pt}}}}
\def\newllongrightharpoondown{\ensuremath{\mathrel{\rightharpoondownElement{28pt}}}}
\def\newllongleftharpoonup{\ensuremath{\mathrel{\leftharpoonupElement{28pt}}}}
\def\newllongleftharpoondown{\ensuremath{\mathrel{\leftharpoondownElement{28pt}}}}
\def\newlllongrightharpoonup{\ensuremath{\mathrel{\rightharpoonupElement{35pt}}}}
\def\newlllongrightharpoondown{\ensuremath{\mathrel{\rightharpoondownElement{35pt}}}}
\def\newlllongleftharpoonup{\ensuremath{\mathrel{\leftharpoonupElement{35pt}}}}
\def\newlllongleftharpoondown{\ensuremath{\mathrel{\leftharpoondownElement{35pt}}}}
\def\newequilibarrow{\ensuremath{\mathrel{%
\hbox to28pt{\hss\eqHarpoon@Element{28pt}\hss}}}}
\def\newequiliblongarrow{\ensuremath{\mathrel{%
\hbox to35pt{\hss\eqHarpoon@Element{35pt}\hss}}}}
\def\electronAHshift{%
\@ifnextchar[{\@electronAHshift}{\@electronAHshift[0]}}
\def\@electronAHshift[#1](#2,#3)(#4,#5)#6{%
\@tempcntXa=#2 \@tempcntYa=#3
\@tempcntXb=#4 \@tempcntYb=#5
\calcontrolpoints{#1}%defined in chemist package
\psbezier[unit=\unitlength,linewidth=0.4pt]{#6}%
(#2,#3)(\@cnttempa,\@cnttempb)(\@tempcntXc,\@tempcntYc)(#4,#5)%
}
\def\electronrshiftarrow{%
\@ifnextchar[{\@electronrshiftarrow}{\@electronrshiftarrow[0]}}
\def\@electronrshiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){->}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){->}%
\or
\electronAHshift[0](#2,#3)(#4,#5){->}%
\fi\fi}
\def\electronlshiftarrow{%
\@ifnextchar[{\@electronlshiftarrow}{\@electronlshiftarrow[0]}}
\def\@electronlshiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){<-}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){<-}%
\or
\electronAHshift[0](#2,#3)(#4,#5){<-}%
\fi\fi}
\def\futuresubst#1{\kern140\unitlength #1}
\def\electronlshiftarrow{%
\@ifnextchar[{\@electronlshiftarrow}{\@electronlshiftarrow[0]}}
\def\@electronlshiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){<-}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){<-}%
\or
\electronAHshift[0](#2,#3)(#4,#5){<-}%
\fi\fi}
\def\futuresubst#1{\kern140\unitlength #1}
\def\electronHrushiftarrow{%
\@ifnextchar[{\@electronHrushiftarrow}{\@electronHrushiftarrow[0]}}
\def\@electronHrushiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){-Hru}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){-Hru}%
\or
\electronAHshift[0](#2,#3)(#4,#5){-Hru}%
\fi\fi}
\def\electronHrdshiftarrow{%
\@ifnextchar[{\@electronHrdshiftarrow}{\@electronHrdshiftarrow[0]}}
\def\@electronHrdshiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){-Hrd}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){-Hrd}%
\or
\electronAHshift[0](#2,#3)(#4,#5){-Hrd}%
\fi\fi}
\def\electronHlushiftarrow{%
\@ifnextchar[{\@electronHlushiftarrow}{\@electronHlushiftarrow[0]}}
\def\@electronHlushiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){Hlu-}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){Hlu-}%
\or
\electronAHshift[0](#2,#3)(#4,#5){Hlu-}%
\fi\fi}
\def\electronHldshiftarrow{%
\@ifnextchar[{\@electronHldshiftarrow}{\@electronHldshiftarrow[0]}}
\def\@electronHldshiftarrow[#1](#2,#3)(#4,#5){%
\ifnum#2<#4\relax
\electronAHshift[#1](#2,#3)(#4,#5){Hld-}%
\else
\ifcase#1\relax
\electronAHshift[1](#2,#3)(#4,#5){Hld-}%
\or
\electronAHshift[0](#2,#3)(#4,#5){Hld-}%
\fi\fi}
\def\chmstpssw{%setting of the chmst-ps package
\let\reactrarrow=\newreactrarrow%
\let\reactlarrow=\newreactlarrow
\let\reactlrarrow=\newreactlrarrow
\let\reactEqarrow=\newreactEqarrow
\let\reacteqarrow=\newreacteqarrow
%%%%
\let\reactREqarrow=\newreactREqarrow%
\let\reactLEqarrow=\newreactLEqarrow
\let\reactreqarrow=\newreactreqarrow
\let\reactleqarrow=\newreactleqarrow
%%%%
\let\reactdarrow=\newreactdarrow%
\let\reactuarrow=\newreactuarrow
\let\reactduarrow=\newreactduarrow
\let\reactVEqarrow=\newreactVEqarrow
\let\reactveqarrow=\newreactveqarrow
%%%%
\let\reactnearrow=\newreactnearrow%
\let\reactswarrow=\newreactswarrow
%%%%
\let\reactsearrow=\newreactsearrow%
\let\reactnwarrow=\newreactnwarrow
%%%%
\let\reactDEqarrow=\newreactDEqarrow%
\let\reactUEqarrow=\newreactUEqarrow
\let\reactdeqarrow=\newreactdeqarrow
\let\reactueqarrow=\newreactueqarrow
%%%%
\let\reactulrarrow=\newreactulrarrow%
\let\reactdlrarrow=\newreactdlrarrow
%%%%
\let\schemelarrow=\newschemelarrow%
\let\schemerarrow=\newschemerarrow
\let\schemelrarrow=\newschemelrarrow
%%%%
\let\llongrightarrow=\newllongrightarrow%
\let\llongleftarrow=\newllongleftarrow
\let\llongleftrightarrow=\newllongleftrightarrow
\let\Equilibarrow=\newEquilibarrow
%%%
\let\Llongrightarrow=\newLlongrightarrow%
\let\Llongleftarrow=\newLlongleftarrow
\let\Llongleftrightarrow\newLlongleftrightarrow
%%%
\let\lllongrightarrow=\newlllongrightarrow%
\let\lllongleftarrow=\newlllongleftarrow
\let\lllongleftrightarrow=\newlllongleftrightarrow
\let\Equiliblongarrow=\newEquiliblongarrow
%%%
\let\Lllongrightarrow=\newLllongrightarrow%
\let\Lllongleftarrow=\newLllongleftarrow
\let\Lllongleftrightarrow\newLllongleftrightarrow
%%%
\let\llongrightharpoonup=\newllongrightharpoonup%
\let\llongrightharpoondown=\newllongrightharpoondown
\let\llongleftharpoonup=\newllongleftharpoonup
\let\llongleftharpoondown=\newllongleftharpoondown
%%%
\let\lllongrightharpoonup=\newlllongrightharpoonup%
\let\lllongrightharpoondown=\newlllongrightharpoondown
\let\lllongleftharpoonup=\newlllongleftharpoonup
\let\lllongleftharpoondown\newlllongleftharpoondown
%%%
\let\equilibarrow=\newequilibarrow%
\let\equiliblongarrow=\newequiliblongarrow
%%%
}
\let\chmstpspdfsw=\chmstpssw%for compatibility to PDF mode
\chmstpssw%initial setting
\endinput
%%
%% End of file `chmst-ps.sty'.
