%%
%% This is file `hetarom.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% hetarom.dtx  (with options: `hetarom')
%% 
%% This is a generated file.
%% 
%% Copyright 1996, 1998, 2000, 2001, 2002, 2004, 2006, 2010, 2013 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.
%% =======================================
%% 
%% Old Versions:
%% Version 1.01 Released on August 16, 1996
%% Version 1.02 Released on October 31, 1998 (private version)
%% Version 2.00 Released on December 25, 1998
%% Version 2.00a Released on November 11, 2000
%% Version 2.01 Released on June 20, 2001 (private version)
%% Version 3.00 Released on April 30, 2002
%% Version 4.00 Released on May 30, 2002 (private version)
%% Version 4.00 Released on August 30, 2004
%% Version 4.02 Released on December 20, 2004
%% Version 4.03b Released on September 5, 2006 (decaheterov, nonaheterov bug fix)
%% Version 5.00 Released on October 01, 2010
%% 
%% The Present Version:
%% Version 5.01 Released on March 19, 2013
%% 
%% 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 hetarom.dtx and hetarom.ins
%% and the derived file hetarom.sty.
%% 
%% =======================================
%% 
%% File: hetarom.dtx
%% \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         \~}
\typeout{XyMTeX for Drawing Chemical Structural Formulas. Version 5.01}
\typeout{       -- Released March 19, 2013 by Shinsaku Fujita}
\def\j@urnalname{hetarom}
\def\versi@ndate{March 19, 2013}
\def\versi@nno{ver5.01}
\def\copyrighth@lder{SF} % Shinsaku Fujita
\typeout{XyMTeX Macro File `\j@urnalname' (\versi@nno) <\versi@ndate>%
\space[\copyrighth@lder]}
\@ifundefined{setsixringv}{\input chemstr.sty\relax}{}%
\unitlength=0.1pt%
\iniatom%
\def\bonda{%
  \ifx\aaa\empty%
   \ifx\bbb\empty%
    \Put@Line(6,364)(5,-3){126}%         %double bond 1-2
   \else%
    \Put@Line(6,364)(5,-3){100}%         %double bond 1-2
   \fi%
  \else%
   \ifx\bbb\empty%
    \Put@Line(35,340)(5,-3){100}%        %double bond 1-2
   \else%
    \Put@Line(35,352)(5,-3){100}%        %double bond 1-2
   \fi%                                    % line <1OO not available
  \fi%
 }%
 \def\bondb{%
  \ifx\bbb\empty%
   \ifx\ccc\empty%
    \Put@Line(138,129)(0,1){148}%        %double bond 3-2
   \else%
    \Put@Line(138,143)(0,1){134}%        %double bond 3-2
   \fi%
  \else%
   \ifx\ccc\empty%
    \Put@Line(138,129)(0,1){134}%        %double bond 3-2
   \else%
    \Put@Line(138,143)(0,1){110}%        %double bond 3-2
   \fi%
  \fi%
}%
 \def\bondc{%
  \ifx\ddd\empty%
   \ifx\ccc\empty%
    \Put@Line(6,42)(5,3){126}%           %double bond 4-3
   \else%
    \Put@Line(6,42)(5,3){100}%           %double bond 4-3
   \fi%
  \else%
   \ifx\ccc\empty%
    \Put@Line(35,66)(5,3){100}%          %double bond 4-3
   \else%
    \Put@Line(35,60)(5,3){100}%          %double bond 4-3
   \fi%                                    % line <1OO not available
  \fi%
}%
 \def\bondd{%
  \ifx\ddd\empty%
   \ifx\eee\empty%
    \Put@Line(-6,42)(-5,3){126}%         %double bond 4-5
   \else%
    \Put@Line(-6,42)(-5,3){100}%         %double bond 4-5
   \fi%
  \else%
   \ifx\eee\empty%
    \Put@Line(-35,66)(-5,3){100}%        %double bond 4-5
   \else%
    \Put@Line(-35,60)(-5,3){100}%        %double bond 4-5
   \fi%                                    % line <1OO not available
  \fi%
 }%
\def\bonde{%
  \ifx\fff\empty%
   \ifx\eee\empty%
    \Put@Line(-138,129)(0,1){148}%       %double bond 5-6
   \else%
    \Put@Line(-138,143)(0,1){134}%       %double bond 5-6
   \fi%
  \else%
   \ifx\eee\empty%
    \Put@Line(-138,129)(0,1){134}%       %double bond 5-6
   \else%
    \Put@Line(-138,143)(0,1){110}%       %double bond 5-6
   \fi%
  \fi%
}%
\def\bondf{%
  \ifx\aaa\empty%
   \ifx\fff\empty%
    \Put@Line(-6,364)(-5,-3){126}%        %double bond 1-6
   \else%
    \Put@Line(-6,364)(-5,-3){100}%        %double bond 1-6
   \fi%
  \else%
   \ifx\fff\empty%
    \Put@Line(-35,340)(-5,-3){100}%       %double bond 1-6
   \else%
    \Put@Line(-35,352)(-5,-3){100}%       %double bond 1-6
   \fi%                                     % line <1OO not available
  \fi%
}%
\def\bondhoriz{%
  \ifx\fff\empty%
    \ifx\bbb\empty%
     \Put@Line(-138,270)(1,0){277}%      %double bond 4-3
    \else%
     \Put@Line(-138,270)(1,0){258}%      %double bond 4-3
    \fi%
  \else%
    \ifx\bbb\empty%
     \Put@Line(-120,270)(1,0){258}%      %double bond 4-3
    \else%
     \Put@Line(-120,270)(1,0){239}%      %double bond 4-3
    \fi%
  \fi}%
\def\bondhorizi{%
  \ifx\eee\empty%
    \ifx\ccc\empty%
     \Put@Line(-138,136)(1,0){277}%      %double bond 4-3
    \else%
     \Put@Line(-138,136)(1,0){258}%      %double bond 4-3
    \fi%
  \else%
    \ifx\ccc\empty%
     \Put@Line(-120,136)(1,0){258}%      %double bond 4-3
    \else%
     \Put@Line(-120,136)(1,0){239}%      %double bond 4-3
    \fi%
  \fi}%
\def\skbonda{%
  \ifx\aaa\empty%
    \ifx\bbb\empty%
     \Put@Line(0,406)(5,-3){171}%        %bond 1-2
    \else%
     \Put@Line(0,406)(5,-3){136}%        %bond 1-2
    \fi%
   \else%
    \ifx\bbb\empty%
     \Put@Line(35,385)(5,-3){136}%       %bond 1-2
    \else%
     \Put@Line(35,385)(5,-3){100}%       %bond 1-2
    \fi%
   \fi}%
\def\skbondf{%
  \ifx\aaa\empty%
    \ifx\fff\empty%
     \Put@Line(0,406)(-5,-3){171}%       %bond 1-6
    \else%
     \Put@Line(0,406)(-5,-3){136}%       %bond 1-6
    \fi%
   \else%
    \ifx\fff\empty%
     \Put@Line(-35,385)(-5,-3){136}%     %bond 1-6
    \else%
     \Put@Line(-35,385)(-5,-3){100}%     %bond 1-6
    \fi%
   \fi}%
\def\skbondc{%
  \ifx\ddd\empty%
    \ifx\ccc\empty%
     \Put@Line(0,0)(5,3){171}%           %bond 4-3
    \else%
     \Put@Line(0,0)(5,3){136}%           %bond 4-3
    \fi%
  \else%
    \ifx\ccc\empty%
     \Put@Line(35,21)(5,3){138}%         %bond 4-3
    \else%
     \Put@Line(35,21)(5,3){100}%         %bond 4-3
    \fi%
  \fi}%
\def\skbondd{%
  \ifx\ddd\empty%
    \ifx\eee\empty%
     \Put@Line(0,0)(-5,3){171}%          %bond 4-5
    \else%
     \Put@Line(0,0)(-5,3){136}%          %bond 4-5
    \fi%
  \else%
    \ifx\eee\empty%
     \Put@Line(-35,21)(-5,3){138}%       %bond 4-5
    \else%
     \Put@Line(-35,21)(-5,3){100}%        %bond 4-5
    \fi%
  \fi}%
\def\skbondb{%
  \ifx\bbb\empty%%
    \ifx\ccc\empty%%
     \Put@Line(171,103)(0,1){200}%       %bond 3-2
    \else%
     \Put@Line(171,143)(0,1){160}%       %bond 3-2
    \fi%
  \else%
    \ifx\ccc\empty%%
     \Put@Line(171,103)(0,1){150}%       %bond 3-2
    \else%
     \Put@Line(171,143)(0,1){110}%       %bond 3-2
    \fi%
  \fi}%
\def\skbonde{%
  \ifx\eee\empty%
    \ifx\fff\empty%
     \Put@Line(-171,103)(0,1){200}%       %bond 5-6
    \else%
     \Put@Line(-171,103)(0,1){150}%       %bond 5-6
    \fi%
  \else%
    \ifx\fff\empty%
     \Put@Line(-171,143)(0,1){160}%       %bond 5-6
    \else%
     \Put@Line(-171,143)(0,1){110}%       %bond 5-6
    \fi%
  \fi}%
\def\skbondhoriz{%
  \ifx\fff\empty%
    \ifx\bbb\empty%
     \Put@Line(-171,303)(1,0){342}%      %bond 4-3
    \else%
     \Put@Line(-171,303)(1,0){300}%      %bond 4-3
    \fi%
  \else%
    \ifx\bbb\empty%
     \Put@Line(171,303)(-1,0){300}%      %bond 4-3
    \else%
     \Put@Line(-129,303)(1,0){258}%      %bond 4-3
    \fi%
  \fi}%
\def\skbondhorizi{%
  \ifx\eee\empty%
    \ifx\ccc\empty%
     \Put@Line(-171,103)(1,0){342}%      %bond 4-3
    \else%
     \Put@Line(-171,103)(1,0){300}%      %bond 4-3
    \fi%
  \else%
    \ifx\ccc\empty%
     \Put@Line(171,103)(-1,0){300}%      %bond 4-3
    \else%
     \Put@Line(-129,103)(1,0){258}%      %bond 4-3
    \fi%
  \fi}%
\def\set@outskel@sixv{%
 \skbonda% bond between 1 and 2
 \skbondf% bond between 1 and 6
 \skbondc% bond between 4 and 3
 \skbondd% bond between 4 and 5
 \skbondb% bond between 3 and 2
 \skbonde% bond between 5 and 6
}
\def\dotskbonda{%
  \ifx\aaa\empty%
    \ifx\bbb\empty%
       \dotorline(0,406)(5,-3){171}/(0,406)(171,303)%
    \else%
       \dotorline(0,406)(5,-3){136}/(0,406)(136,324)%
    \fi%
   \else%
    \ifx\bbb\empty%
       \dotorline(35,385)(5,-3){136}/(35,386)(171,303)%
    \else%
       \dotorline(35,385)(5,-3){100}/(35,386)(136,324)%
    \fi%
   \fi}%
\def\dotskbondb{%
  \ifx\bbb\empty%%
    \ifx\ccc\empty%%
       \dotorline(171,103)(0,1){200}/(171,103)(171,303)%
    \else%
       \dotorline(171,143)(0,1){160}/(171,143)(171,303)%
    \fi%
  \else%
    \ifx\ccc\empty%%
       \dotorline(171,103)(0,1){150}/(171,103)(171,253)%
    \else%
       \dotorline(171,143)(0,1){110}/(171,143)(171,253)%
    \fi%
  \fi}%
\def\dotskbondc{%
  \ifx\ddd\empty%
    \ifx\ccc\empty%%
       \dotorline(0,0)(5,3){171}/(0,0)(171,103)%
    \else%
       \dotorline(0,0)(5,3){136}/(0,0)(136,81)%
    \fi%
  \else%
    \ifx\ccc\empty%
       \dotorline(35,21)(5,3){138}/(35,21)(171,103)%
    \else%
       \dotorline(35,21)(5,3){100}/(35,21)(136,81)%
    \fi%
  \fi}%
\def\dotskbondd{%
  \ifx\ddd\empty%
    \ifx\eee\empty%
       \dotorline(0,0)(-5,3){171}/(0,0)(-171,103)%
    \else%
       \dotorline(0,0)(-5,3){136}/(0,0)(-136,81)%
    \fi%
  \else%
    \ifx\eee\empty%
       \dotorline(-35,21)(-5,3){138}/(-35,21)(-171,103)%
    \else%
       \dotorline(-35,21)(-5,3){100}/(-35,21)(-136,81)%
    \fi%
  \fi}%
\def\dotskbonde{%
  \ifx\eee\empty%
    \ifx\fff\empty%
       \dotorline(-171,103)(0,1){200}/(-171,103)(-171,303)%
    \else%
       \dotorline(-171,103)(0,1){150}/(-171,103)(-171,253)%
    \fi%
  \else%
    \ifx\fff\empty%
       \dotorline(-171,143)(0,1){160}/(-171,143)(-171,303)%
    \else%
       \dotorline(-171,143)(0,1){110}/(-171,143)(-171,253)%
    \fi%
  \fi}%
\def\dotskbondf{%
  \ifx\aaa\empty%
    \ifx\fff\empty%
       \dotorline(0,406)(-5,-3){171}/(0,406)(-171,303)%
    \else%
       \dotorline(0,406)(-5,-3){136}/(0,406)(-136,325)%
    \fi%
   \else%
    \ifx\fff\empty%
       \dotorline(-35,385)(-5,-3){136}/(-35,385)(-171,303)%
    \else%
       \dotorline(-35,385)(-5,-3){100}/(-35,385)(-136,325)%
    \fi%
   \fi}%
\def\dotskbondhoriz{%
  \ifx\fff\empty%
    \ifx\bbb\empty%
       \dotorline(-171,303)(1,0){342}/(-171,303)(171,303)%
    \else%
       \dotorline(-171,303)(1,0){300}/(-171,303)(129,303)%
    \fi%
  \else%
    \ifx\bbb\empty%
       \dotorline(171,303)(-1,0){300}/(171,303)(-129,303)%
    \else%
       \dotorline(-129,303)(1,0){258}/(-129,303)(129,303)%
    \fi%
  \fi}%
\def\dotskbondhorizi{%
  \ifx\eee\empty%
    \ifx\ccc\empty%
       \dotorline(-171,103)(1,0){342}/(-171,103)(171,103)%
    \else%
       \dotorline(-171,103)(1,0){300}/(-171,103)(129,103)%
    \fi%
  \else%
    \ifx\ccc\empty%
       \dotorline(171,103)(-1,0){300}/(171,103)(-129,103)%
    \else%
       \dotorline(-129,103)(1,0){258}/(-129,103)(129,103)%
    \fi%
  \fi}%
\newif\if@skbondlist
\@skbondlistfalse
\def\set@skel@bond#1#2#3{%
 \expandafter\if\csname @#2#2#2\endcsname #2\relax%OK
                               % \if\@aaa #2\relax%OK
  \def\skbondreplace{#3}%
  \@skbondlistfalse
  \@tfor\member:=#1\do{%
   \expandafter\twoCH@@R\member//%
    \if\@@tmpa #2\relax%
      \if\@@tmpb A\relax%
        \@skbondlisttrue
        \expandafter\csname dotskbond#3\endcsname% \dotskbonda etc.
      \else\if\@@tmpb B\relax%
        \@skbondlisttrue
        {\thicklines
        \expandafter\csname skbond#3\endcsname% \skbonda etc.
        }%
      \else%%%added for color 2010/10/01
        \@skbondlisttrue%
        \put(0,0){\@@tmpb}%
      \fi\fi
     \fi%
    }%
   \if@skbondlist\else
     {\thinlines
        \expandafter\csname skbond#3\endcsname% \skbonda etc.
     }%
   \fi%
  \else
    \expandafter\ifx\csname @#2#2#2\endcsname \empty\relax%
                                %    \ifx\@aaa\empty\relax
    \@tfor\member:=#1\do{%
     \expandafter\twoCH@@R\member//%
      \if\@@tmpa #2\relax%
       \XyMTeXWarning{Unavailable bond `#2' in SKBONDLIST}\fi
    }%
  \fi\fi
}% end of \set@skel@bond
\newif\iflongskbond \longskbondfalse
\def\set@skel@longbond#1#2#3{%
 \expandafter\if\csname @#2#2#2\endcsname #2\relax%OK
                               % \if\@aaa #2\relax%OK
  \def\skbondreplace{#3}%
  \longskbondtrue%
  \@skbondlistfalse
  \@tfor\member:=#1\do{%
   \expandafter\twoCH@@R\member//%
    \if\@@tmpa #2\relax%
      \if\@@tmpb A\relax%
        \@skbondlisttrue
        \expandafter\csname dot#3\endcsname% \dotskbonda etc.
      \else\if\@@tmpb B\relax%
        \@skbondlisttrue
        {\thicklines
        \expandafter\csname #3\endcsname% \skbonda etc.
        }%
      \else%%%added for color 2010/10/01
        \@skbondlisttrue%
        \put(0,0){\@@tmpb}%
      \fi\fi
     \fi%
    }%
   \if@skbondlist\else
     {\thinlines
        \expandafter\csname #3\endcsname% \skbonda etc.
     }%
   \fi%
  \else
    \expandafter\ifx\csname @#2#2#2\endcsname \empty\relax%
                                %    \ifx\@aaa\empty\relax
    \@tfor\member:=#1\do{%
     \expandafter\twoCH@@R\member//%
      \if\@@tmpa #2\relax%
       \XyMTeXWarning{Unavailable bond `#2' in SKBONDLIST}\fi
    }%
  \fi\fi
  \longskbondfalse
}% end of \set@skel@longbond
\def\@bond@@omit#1{%
\@tfor\memBer:=#1\do{%
\if\memBer a\relax\gdef\@aaa{}\fi%
\if\memBer A\relax\gdef\@aaa{}\fi%
\if\memBer b\relax\gdef\@bbb{}\fi%
\if\memBer B\relax\gdef\@bbb{}\fi%
\if\memBer c\relax\gdef\@ccc{}\fi%
\if\memBer C\relax\gdef\@ccc{}\fi%
\if\memBer d\relax\gdef\@ddd{}\fi%
\if\memBer D\relax\gdef\@ddd{}\fi%
\if\memBer e\relax\gdef\@eee{}\fi%
\if\memBer E\relax\gdef\@eee{}\fi%
\if\memBer f\relax\gdef\@fff{}\fi%
\if\memBer F\relax\gdef\@fff{}\fi%
\if\memBer g\relax\gdef\@ggg{}\fi%
\if\memBer G\relax\gdef\@ggg{}\fi%
\if\memBer h\relax\gdef\@hhh{}\fi%
\if\memBer H\relax\gdef\@hhh{}\fi%
\if\memBer i\relax\gdef\@iii{}\fi%
\if\memBer I\relax\gdef\@iii{}\fi%
\if\memBer j\relax\gdef\@jjj{}\fi%
\if\memBer J\relax\gdef\@jjj{}\fi%
\if\memBer k\relax\gdef\@kkk{}\fi%
\if\memBer K\relax\gdef\@kkk{}\fi%
}}%
\def\sixheterov{\@ifnextchar({\@six@heterov(@}{\@six@heterov(@)}}
\def\@six@heterov(#1){\@ifnextchar[{\@six@@heterov(#1)[@}%
{\@six@@heterov(#1)[@]}}
\def\@six@@heterov(#1)[#2]#3#4{\@ifnextchar[%
{\@sixheterov(#1)[#2]{#3}{#4}[@}%
{\@sixheterov(#1)[#2]{#3}{#4}[@]}}
\def\@sixheterov(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{a}{b}{c}{d}{e}{f}%
\@reset@ylsw%
\ylposition{#4}{0}{0}{7}{0}%
\begin{ShiftPicEnv}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,880)(-\shiftii,-\shifti){sixheterov}%2002/4/30 by S. Fujita
{%
\resetbdsw%
\@bond@@omit{#5}%
\set@skel@bond{#1}{a}{a}% bond between 1 and 2 \@aaa -> \skbonda etc
\set@skel@bond{#1}{b}{b}% bond between 2 and 3 \@bbb -> \skbondb etc
\set@skel@bond{#1}{c}{c}% bond between 3 and 4 \@ccc -> \skbondc etc
\set@skel@bond{#1}{d}{d}% bond between 4 and 5 \@ddd -> \skbondd etc
\set@skel@bond{#1}{e}{e}% bond between 5 and 6 \@eee -> \skbonde etc
\set@skel@bond{#1}{f}{f}% bond between 6 and 1 \@fff -> \skbondf etc
}%
%%%%%\set@outskel@sixv % replaced by above 1998/12/30
\@tfor\member:=#2\do{%
\if\member r\relax \bondd \bondf \bondb%
\else\if\member l\relax \bonda \bondc \bonde%
\else\if\member a\relax \bonda%
\else\if\member b\relax \bondb%
\else\if\member c\relax \bondc%
\else\if\member d\relax \bondd%
\else\if\member e\relax \bonde%
\else\if\member f\relax \bondf%
\else\if\member A%left aromatic circle
  \Put@oCircle(0,203){240}%               %circle
\else \expandafter\twoCH@@R\member//%
    \set@fusionadd@sixv%
\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}%
\set@hetatom@sixv{#3}{0}{0}{7}{0}%    %atom 1--6%
\setsixringv{#4}{0}{0}{7}{0}%    %subst 1--6
\end{ShiftPicEnv}\iniatom\iniflag}% %end of \sixheterov macro
\def\sixheterovi{\@ifnextchar({\@six@heterovi(@}{\@six@heterovi(@)}}
\def\@six@heterovi(#1){\@ifnextchar[{\@six@@heterovi(#1)[@}%
{\@six@@heterovi(#1)[@]}}
\def\@six@@heterovi(#1)[#2]#3#4{\@ifnextchar[%
{\@sixheterovi(#1)[#2]{#3}{#4}[@}%
{\@sixheterovi(#1)[#2]{#3}{#4}[@]}}
\def\@sixheterovi(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{d}{c}{b}{a}{f}{e}%
\@reset@ylsw%
\ylposition{#4}{5}{0}{5}{-1}%    %subst 1--4
\ylposition{#4}{11}{4}{7}{-1}%   %subst 5 and 6
\begin{ShiftPicEnv}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,880)(-\shiftii,-\shifti){sixheterovi}%2002/4/30 by S. Fujita
{\resetbdsw%
\@bond@@omit{#5}%
\set@skel@bond{#1}{a}{c}% bond between 1 and 2 \@aaa -> \skbondc etc
\set@skel@bond{#1}{b}{b}% bond between 2 and 3 \@bbb -> \skbondb etc
\set@skel@bond{#1}{c}{a}% bond between 3 and 4 \@ccc -> \skbonda etc
\set@skel@bond{#1}{d}{f}% bond between 4 and 5 \@ddd -> \skbondf etc
\set@skel@bond{#1}{e}{e}% bond between 5 and 6 \@eee -> \skbonde etc
\set@skel@bond{#1}{f}{d}% bond between 6 and 1 \@fff -> \skbondd etc
}%
%%%\set@outskel@sixv% replaced by the above 1998/12/30
\@tfor\member:=#2\do{%
\if\member r\relax \bondd \bondf \bondb%
\else\if\member l\relax \bonda \bondc \bonde%
\else\if\member a\relax \bondc%
\else\if\member b\relax \bondb%
\else\if\member c\relax \bonda%
\else\if\member d\relax \bondf%
\else\if\member e\relax \bonde%
\else\if\member f\relax \bondd%
\else\if\member A%left aromatic circle
  \Put@oCircle(0,203){240}%               %circle
\else \expandafter\twoCH@@R\member//%
   \set@fusionadd@sixvi%
\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}%
\set@hetatom@sixv{#3}{5}{0}{5}{-1}%    %atom 1--4%
\set@hetatom@sixv{#3}{11}{4}{7}{-1}%   %atom 5 and 6%
\setsixringv{#4}{5}{0}{5}{-1}%    %subst 1--4
\setsixringv{#4}{11}{4}{7}{-1}%   %subst 5 and 6
\end{ShiftPicEnv}\iniatom\iniflag}% %end of \sixheterovi macro
\def\pyridinev{\@ifnextchar[{\@pyridinev[@}{\@pyridinev[r]}}
\def\@pyridinev[#1]#2{%
\iforigpt \typeout{command `pyridinev' %
   is based on `sixheterov'.}\fi%
\sixheterov[#1]{1==N}{#2}}%end of \pyridinev macro
\def\pyridinevi{\@ifnextchar[{\@pyridinevi[@}{\@pyridinevi[r]}}
\def\@pyridinevi[#1]#2{%
\iforigpt \typeout{command `pyridinevi' %
   is based on `sixheterovi'.}\fi%
\sixheterovi[#1]{1==N}{#2}}%end of \pyridinevi macro
\def\pyrazinev{\@ifnextchar[{\@pyrazinev[@}{\@pyrazinev[r]}}
\def\@pyrazinev[#1]#2{%
\iforigpt \typeout{command `pyrazinev' %
   is based on `sixheterov'.}\fi%
\sixheterov[#1]{1==N;4==N}{#2}}%end of \pyrazinev macro
\def\pyrazinevi{\@ifnextchar[{\@pyrazinevi[@}{\@pyrazinevi[r]}}
\def\@pyrazinevi[#1]#2{%
\iforigpt \typeout{command `pyrazinevi' %
   is based on `sixheterovi'.}\fi%
\sixheterovi[#1]{1==N;4==N}{#2}}%end of \pyrazinevi macro
\def\pyrimidinev{\@ifnextchar[{\@pyrimidinev[@}{\@pyrimidinev[r]}}
\def\@pyrimidinev[#1]#2{%
\iforigpt \typeout{command `pyrimidinev' %
   is based on `sixheterov'.}\fi%
\sixheterov[#1]{1==N;3==N}{#2}}%end of \pyrimidinev macro
\def\pyrimidinevi{\@ifnextchar[{\@pyrimidinevi[@}{\@pyrimidinevi[r]}}
\def\@pyrimidinevi[#1]#2{%
\iforigpt \typeout{command `pyrimidinevi' %
   is based on `sixheterovi'.}\fi%
\sixheterovi[#1]{1==N;3==N}{#2}}%end of \pyrimidinevi macro
\def\pyridazinev{\@ifnextchar[{\@pyridazinev[@}{\@pyridazinev[r]}}
\def\@pyridazinev[#1]#2{%
\iforigpt \typeout{command `pyridazinev' %
   is based on `sixheterov'.}\fi%
\sixheterov[#1]{1==N;2==N}{#2}}%end of \pyridazinev macro
\def\pyridazinevi{\@ifnextchar[{\@pyridazinevi[@}{\@pyridazinevi[r]}}
\def\@pyridazinevi[#1]#2{%
\iforigpt \typeout{command `pyridazinev' %
   is based on `sixheterovi'.}\fi%
\sixheterovi[#1]{1==N;2==N}{#2}}%end of \pyridazinevi macro
\def\triazinev{\@ifnextchar[{\@triazinev[@}{\@triazinev[r]}}
\def\@triazinev[#1]#2{%
\iforigpt \typeout{command `triazinev' %
   is based on `sixheterov'.}\fi%
\sixheterov[#1]{1==N;3==N;5==N}{#2}}%end of \triazinev macro
\def\triazinevi{\@ifnextchar[{\@triazinevi[@}{\@triazinevi[r]}}
\def\@triazinevi[#1]#2{%
\iforigpt \typeout{command `triazinevi' %
   is based on `sixheterovi'.}\fi%
\sixheterovi[#1]{1==N;3==N;5==N}{#2}}%end of \triazinevi macro
\def\fiveheterov{\@ifnextchar({\@five@heterov(@}{\@five@heterov(@)}}
\def\@five@heterov(#1){\@ifnextchar[{\@five@@heterov(#1)[@}%
{\@five@@heterov(#1)[@]}}
\def\@five@@heterov(#1)[#2]#3#4{\@ifnextchar[%
{\@fiveheterov(#1)[#2]{#3}{#4}[@}%
{\@fiveheterov(#1)[#2]{#3}{#4}[@]}}
\def\@fiveheterov(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{d}{c}{b}{f}{e}{a}%
\@reset@ylsw%
\ylposition{#4}{5}{1}{5}{-1}%   % for 1 to 3
\ylposition{#4}{10}{4}{7}{-1}%  % for 4 to 5
\begin{ShiftPicEnv}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,880)(-\shiftii,-\shifti){fiveheterov}%2002/4/30 by S. Fujita
{\resetbdsw%
\@bond@@omit{#5}%
\set@skel@bond{#1}{a}{c}% bond between 1 and 2 \@aaa -> \skbondc etc
\set@skel@bond{#1}{b}{b}% bond between 2 and 3 \@bbb -> \skbondb etc
\set@skel@longbond{#1}{c}{skbondhoriz}%
      % bond between 3 and 4 \@ccc -> \skbondhoriz etc
\set@skel@bond{#1}{d}{e}% bond between 4 and 5 \@ddd -> \skbonde etc
\set@skel@bond{#1}{e}{d}% bond between 5 and 1 \@eee -> \skbondd etc
}%
\@tfor\member:=#2\do{%
\if\member r%
\else\if\member a\relax \bondc%
\else\if\member b\relax \bondb%
\else\if\member c\relax \bondhoriz%
\else\if\member d\relax \bonde%
\else\if\member e\relax \bondd%
\else\if\member A\relax%
 \Put@oCircle(0,173){180}%aromatic circle
\else
    \expandafter\twoCH@@R\member//%
    \set@fusionadd@fivev
\fi\fi\fi\fi\fi\fi\fi}%
\set@hetatom@sixv{#3}{5}{1}{5}{-1}%   % for 1 to 3
\set@hetatom@sixv{#3}{10}{4}{7}{-1}%  % for 4 to 5
\setsixringv{#4}{5}{1}{5}{-1}%   % for 1 to 3
\setsixringv{#4}{10}{4}{7}{-1}%  % for 4 to 5
\end{ShiftPicEnv}\iniatom\iniflag}% %end of \fiveheterov macro
\def\fiveheterovi{\@ifnextchar({\@five@heterovi(@}{\@five@heterovi(@)}}
\def\@five@heterovi(#1){\@ifnextchar[{\@five@@heterovi(#1)[@}%
{\@five@@heterovi(#1)[@]}}
\def\@five@@heterovi(#1)[#2]#3#4{\@ifnextchar[%
{\@fiveheterovi(#1)[#2]{#3}{#4}[@}%
{\@fiveheterovi(#1)[#2]{#3}{#4}[@]}}
\def\@fiveheterovi(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{a}{b}{c}{e}{f}{d}% d -- dummy
\@reset@ylsw%
\ylposition{#4}{0}{0}{4}{0}%  % for 1 to 3
\ylposition{#4}{1}{4}{7}{0}%  % for 4 to 5
\begin{ShiftPicEnv}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,880)(-\shiftii,-\shifti){fiveheterov}%2002/4/30 by S. Fujita
{\resetbdsw%
\@bond@@omit{#5}%
\set@skel@bond{#1}{a}{a}% bond between 1 and 2 \@aaa -> \skbonda etc
\set@skel@bond{#1}{b}{b}% bond between 2 and 3 \@bbb -> \skbondb etc
\set@skel@longbond{#1}{c}{skbondhorizi}%
      % bond between 3 and 4 \@ccc -> \skbondhorizi etc
\set@skel@bond{#1}{d}{e}% bond between 4 and 5 \@ddd -> \skbonde etc
\set@skel@bond{#1}{e}{f}% bond between 5 and 6 \@eee -> \skbondf etc
}%
\@tfor\member:=#2\do{%
\if\member r%
\else\if\member a\relax \bonda%
\else\if\member b\relax \bondb%
\else\if\member c\relax \bondhorizi%
\else\if\member d\relax \bonde%
\else\if\member e\relax \bondf%
\else\if\member A\relax%
 \Put@oCircle(0,233){180}%aromatic circle
\else
    \expandafter\twoCH@@R\member//%
    \set@fusionadd@fivevi
\fi\fi\fi\fi\fi\fi\fi}%
\set@hetatom@sixv{#3}{0}{0}{4}{0}%  % for 1 to 3
\set@hetatom@sixv{#3}{1}{4}{7}{0}%  % for 4 to 5
\setsixringv{#4}{0}{0}{4}{0}%  % for 1 to 3
\setsixringv{#4}{1}{4}{7}{0}%  % for 4 to 5
\end{ShiftPicEnv}\iniatom\iniflag}% %end of \fiveheterovi macro
\def\pyrrolev{\@ifnextchar[{\@pyrrolev[@}{\@pyrrolev[bd]}}
\def\@pyrrolev[#1]#2{%
\iforigpt \typeout{command `pyrrolev' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==N}{#2}}
\def\pyrazolev{\@ifnextchar[{\@pyrazolev[@}{\@pyrazolev[bd]}}
\def\@pyrazolev[#1]#2{%
\iforigpt \typeout{command `pyrazolev' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==N;2==N}{#2}}
\def\imidazolev{\@ifnextchar[{\@imidazolev[@}{\@imidazolev[bd]}}
\def\@imidazolev[#1]#2{%
\iforigpt \typeout{command `imidazolev' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==N;3==N}{#2}}
\def\isoxazolev{\@ifnextchar[{\@isoxazolev[@}{\@isoxazolev[bd]}}
\def\@isoxazolev[#1]#2{%
\iforigpt \typeout{command `isoxazolev' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==O;2==N}{#2}}
\def\oxazolev{\@ifnextchar[{\@oxazolev[@}{\@oxazolev[bd]}}
\def\@oxazolev[#1]#2{%
\iforigpt \typeout{command `oxazolev' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==O;3==N}{#2}}
\def\furanv{\@ifnextchar[{\@furanv[@}{\@furanv[bd]}}
\def\@furanv[#1]#2{%
\iforigpt \typeout{command `furanv' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==O}{#2}}
\def\thiophenev{\@ifnextchar[{\@thiophenev[@}{\@thiophenev[bd]}}
\def\@thiophenev[#1]#2{%
\iforigpt \typeout{command `thiophenev' %
  is based on `fiveheterov'.}\fi%
\fiveheterov[#1]{1==S}{#2}}
\def\pyrrolevi{\@ifnextchar[{\@pyrrolevi[@}{\@pyrrolevi[bd]}}
\def\@pyrrolevi[#1]#2{%
\iforigpt \typeout{command `pyrrolevi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==N}{#2}}
\def\pyrazolevi{\@ifnextchar[{\@pyrazolevi[@}{\@pyrazolevi[bd]}}
\def\@pyrazolevi[#1]#2{%
\iforigpt \typeout{command `pyrazolevi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==N;2==N}{#2}}
\def\imidazolevi{\@ifnextchar[{\@imidazolevi[@}{\@imidazolevi[bd]}}
\def\@imidazolevi[#1]#2{%
\iforigpt \typeout{command `imidazolevi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==N;3==N}{#2}}
\def\isoxazolevi{\@ifnextchar[{\@isoxazolevi[@}{\@isoxazolevi[bd]}}
\def\@isoxazolevi[#1]#2{%
\iforigpt \typeout{command `isoxazolevi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==O;2==N}{#2}}
\def\oxazolevi{\@ifnextchar[{\@oxazolevi[@}{\@oxazolevi[bd]}}
\def\@oxazolevi[#1]#2{%
\iforigpt \typeout{command `oxazolevi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==O;3==N}{#2}}
\def\furanvi{\@ifnextchar[{\@furanvi[@}{\@furanvi[bd]}}
\def\@furanvi[#1]#2{%
\iforigpt \typeout{command `furanvi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==O}{#2}}
\def\thiophenevi{\@ifnextchar[{\@thiophenevi[@}{\@thiophenevi[bd]}}
\def\@thiophenevi[#1]#2{%
\iforigpt \typeout{command `thiophenevi' %
  is based on `fiveheterovi'.}\fi%
\fiveheterovi[#1]{1==S}{#2}}
\def\decaheterov{\@ifnextchar({\@deca@heterov(@}{\@deca@heterov(@)}}
\def\@deca@heterov(#1){\@ifnextchar[{\@deca@@heterov(#1)[@}%
{\@deca@@heterov(#1)[@]}}
\def\@deca@@heterov(#1)[#2]#3#4{\@ifnextchar[%
{\@decaheterov(#1)[#2]{#3}{#4}[@}%
{\@decaheterov(#1)[#2]{#3}{#4}[@]}}%
\def\@decaheterov(#1)[#2]#3#4[#5]{%
\iniflag\iniatom%
\test@vertix@sixv{#3}{a}{b}{c}{d}{e}{f}%
\test@vertix@decav{#3}{g}{h}{i}{j}{@}{@}%
\@reset@ylsw%
\ylhetposition{#4}{0}{0}{5}{0}% %substituents on 1 to 4
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-342}\def\@@yli{0}\fi
\else
\ylhetposition{#4}{-1}{3}{7}{0}% %substituents on 5 to 7
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
\ylhetposition{#4}{-7}{0}{2}{0}% %substituent on 8
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@iclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-8}{7}%   %9 %for 4a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-103}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@jclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-9}{1}%  %10 for 8a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-303}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(1200,880)(-\shiftii,-\shifti){decaheterov}%2002/4/30 by S. Fujita
\begingroup
\resetbdsw%
\@bond@@omit{#5}%
{\let\fff=\jjj \let\eee=\iii%
\Put@Direct(342,0){\set@skel@bond{#1}{a}{a}}%
  % bond between 1 and 2 \@aaa -> \skbonda etc
\Put@Direct(342,0){\set@skel@bond{#1}{b}{b}}%
  % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(342,0){\set@skel@bond{#1}{c}{c}}%
  % bond between 3 and 4 \@ccc -> \skbondc etc
\Put@Direct(342,0){\set@skel@bond{#1}{d}{d}}%
  % bond between 4 and 4a \@ddd -> \skbondd etc
\Put@Direct(342,0){\set@skel@bond{#1}{k}{e}}%
  % bond between 4a and 8a \@kkk -> \skbonde etc
\Put@Direct(342,0){\set@skel@bond{#1}{j}{f}}%
  % bond between 8a and 1 \@jjj -> \skbondf etc
}%
{\let\aaa=\hhh \let\ddd=\eee \let\eee=\fff \let\fff=\gggA%
 \let\ccc=\iii \let\bbb=\jjj%
\set@skel@bond{#1}{i}{a}% bond between 8 and 8a \@iii -> \skbonda etc
\set@skel@bond{#1}{e}{c}% bond between 5 and 4a \@eee -> \skbondc etc
\set@skel@bond{#1}{f}{d}% bond between 5 and 6 \@fff -> \skbondd etc
\set@skel@bond{#1}{g}{e}% bond between 6 and 7 \@ggg -> \skbonde etc
\set@skel@bond{#1}{h}{f}% bond between 7 and 8 \@hhh -> \skbondf etc
}%
\endgroup
\@tfor\member:=#2\do{%
\if\member r\relax%
{\let\fff=\jjj \let\eee=\iii%
 \Put@Direct(342,0){\bonda}% bond between 1 and 2
 \Put@Direct(342,0){\bondc}% bond between 3 and 4
}%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA%
 \let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 8a and 4a
 \Put@Direct(0,0){\bondf}% bond between 8 and 7
 \Put@Direct(0,0){\bondd}% bond between 5 and 6
}%
\else\if\member l\relax%
\else\if\member a\relax%
 \Put@Direct(342,0){\bonda}% bond between 1 and 2
\else\if\member b\relax
 \Put@Direct(342,0){\bondb}% bond between 2 and 3
\else\if\member c\relax
 \Put@Direct(342,0){\bondc}% bond between 3 and 4
\else\if\member d\relax%
{\let\eee=\iii%
 \Put@Direct(342,0){\bondd}% bond between 4 and 4a
}%
\else\if\member e\relax%
{\let\ccc=\iii \let\ddd=\eee%
 \Put@Direct(0,0){\bondc}% bond between 5 and 4a
}%
\else\if\member f\relax%
{\let\ddd=\eee \let\eee=\fff%
 \Put@Direct(0,0){\bondd}% bond between 5 and 6
}%
\else\if\member g\relax%
{\let\eee=\fff \let\fff=\gggA%
 \Put@Direct(0,0){\bonde}% bond between 6 and 7
}%
\else\if\member h\relax%
{\let\aaa=\hhh \let\fff=\gggA%
 \Put@Direct(0,0){\bondf}% bond between 8 and 7
}%
\else\if\member i\relax%
{\let\aaa=\hhh \let\bbb=\jjj%
 \Put@Direct(0,0){\bonda}% bond between 8 and 8a
}%
\else\if\member j\relax%
{\let\fff=\jjj%
 \Put@Direct(342,0){\bondf}% bond between 1 and 8a
}%
\else\if\member k\relax%
{\let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 8a and 4a
}%
\else\if\member K\relax%
{\let\eee=\iii\let\fff=\jjj%
 \Put@Direct(342,0){\bonde}% bond between 8a and 4a in the other ring
}%
\else\if\member A%left aromatic circle
  \Put@oCircle(0,203){240}%               %circle
\else\if\member B%left aromatic circle
  \Put@oCircle(342,203){240}%             %circle
\else
  \expandafter\twoCH@@R\member//%
  \def\aax{8a}\def\aay{4a}\def\aaz{10}%
      \if\@@tmpa 1\relax%                  % plus charge etc.
        \putratom{304}{282}{\@@tmpb}%      % right type
      \else\if\@@tmpa 2\relax%
        \putratom{402}{253}{\@@tmpb}%      % right type
      \else\if\@@tmpa 3\relax%
        \putratom{402}{120}{\@@tmpb}%      % right type
      \else\if\@@tmpa 4\relax%
        \putratom{304}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 5\relax%
        \putratom{-38}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 6\relax%
        \putlatom{-60}{253}{\@@tmpb}%      % left type
      \else\if\@@tmpa 7\relax%
        \putlatom{-60}{120}{\@@tmpb}%      % left type
      \else\if\@@tmpa 8\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\if\@@tmpa 9\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aaz\relax%1998/10/17
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aax\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aay\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
   \expandafter\twoCH@R\member//%
   \set@fusion@decav
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\fi\fi\fi\fi\fi\fi%
}%
\iniflag
\Put@Direct(342,0){\set@hetatom@sixv{#3}{0}{0}{5}{0}%
\storeclipinfo%2001/06/20
}% %substituents on 1 to 4
{%
\Put@Direct(0,0){\iniflag%2000/11/11 by S. Fujita
   \set@hetatom@sixv{#3}{-1}{3}{7}{0}%
   \@gclipfalse \if@fclip \@gcliptrue \fi%
   \@fclipfalse \if@eclip \@fcliptrue \fi%
   \@eclipfalse \if@clip \@ecliptrue \fi
   \@clipfalse%2006/9/5added
\storeclipinfo%2001/06/20
}%substituents on 5 to 7
}{%
\Put@Direct(0,0){\iniflag%2000/11/11 by S. Fujita
  \set@hetatom@sixv{#3}{-7}{0}{2}{0}%
%%  \@hclipfalse \if@aclip \global\@hcliptrue \fi
  \@hclipfalse \if@aclip \@hcliptrue \fi
  \@aclipfalse%2006/9/5added
\storeclipinfo%%2001/06/20
%%====\clipinfo====%%%2006/9/5test
}%%substituent on 8
}{%
\Put@Direct(0,0){\set@vrtx@fuse{#3}%
\storeclipinfo%%2001/06/20
}% fused positions
}%
\developclipinfo%%2001/06/20
\global\drawsamesubsttrue%2002/05/30 warning on
{%2006/9/5bugfix
\Put@Direct(342,0){\setsixringv{#4}{0}{0}{5}{0}}% %substituents on 1 to 4
}%
\global\drawsamesubstfalse%2002/05/30 warning off
{%
 \@clipfalse \if@eclip \@cliptrue \fi%   %substituents on 5 to 7
 \@eclipfalse \if@fclip \@ecliptrue \fi%
 \@fclipfalse \if@gclip \@fcliptrue \fi%
\Put@Direct(0,0){\setsixringv{#4}{-1}{3}{7}{0}}%
}%
{\@aclipfalse \if@hclip \@acliptrue \fi%   %substituent on 8
\Put@Direct(0,0){\setsixringv{#4}{-7}{0}{2}{0}}%
}%
{\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \Put@Direct(171,103){\setatombond{#4}{-8}{7}}%   %9 %for 4a position
}%
{\@clipfusefalse \if@jclip \@clipfusetrue \fi%
  \Put@Direct(171,303){\setatombond{#4}{-9}{1}}%  %10 for 8a position
}%
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \decaheterov macro
\def\clipdetection{%
\ifx\aaa\empty\else%
     \@acliptrue%
\fi%
\ifx\bbb\empty\else%
     \@bcliptrue%
\fi%
\ifx\ccc\empty\else%
     \@ccliptrue%
\fi%
\ifx\ddd\empty\else%
   \@cliptrue%
\fi%
{\let\eee=\iii%
\ifx\eee\empty\else%
    \@icliptrue%
    \storeclipinfo%2001/06/20
\fi%
}%
\developclipinfo%2001/06/20
{\let\fff=\jjj%
\ifx\fff\empty\else%
    \@jcliptrue%
    \storeclipinfo%2001/06/20
\fi%
}%
\developclipinfo%2001/06/20
{\let\ddd=\eee%
\ifx\ddd\empty\else
    \@ecliptrue%
    \storeclipinfo%2001/06/20
\fi%
}%
\developclipinfo%2001/06/20
{\let\eee=\fff%
\ifx\eee\empty\else%
    \@fcliptrue%
    \storeclipinfo%2001/06/20
\fi%
}%
\developclipinfo%2001/06/20
{\let\fff=\gggA%
\ifx\fff\empty\else%
     \@gcliptrue%
     \storeclipinfo%2001/06/20
\fi%
}%
\developclipinfo%2001/06/20
{\let\aaa=\hhh%
\ifx\aaa\empty\else%
     \@hcliptrue%
     \storeclipinfo%2001/06/20
\fi%
}%
\developclipinfo%2001/06/20
}% end \clipdetection
\def\ylhetposition#1#2#3#4#5{%
\@@ylswfalse%%%\@reset@ylsw
\@forsemicol\member:=#1\do{%
\if@@ylsw\else%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\threech@r\@membera{}{}\relax%
\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
\if@@ylsw
\ifnum#5<0\relax%
\@tmpaa=-\@tmpa\relax \advance\@tmpaa by#2\relax%
\else\@tmpaa=\@tmpa\relax \advance\@tmpaa by#2\relax\fi
\ifnum\@tmpaa>#3\relax%
\ifnum\@tmpaa<#4\relax%
\ifcase\@tmpaa%0 omit
 \or
    \ifx\aaa\empty
     \ifx\hhh\empty% aaa and hhh are absent
       \gdef\@ylii{0}\gdef\@yli{-406}\global\@ylswtrue%\@ylatrue% subst. on 1
     \else% hhh is present
       \def\@ylii{0}\def\@yli{-442}\@ylswtrue%\@ylatrue% subst. on 1
     \fi
    \else%aaa is present
      \def\@ylii{0}\def\@yli{-442}\@ylswtrue%\@ylatrue% subst. on 1
    \fi
 \or\ifx\bbb\empty
      \def\@ylii{-171}\def\@yli{-303}\@ylswtrue%\@ylbtrue% subst. on 2
    \else
      \def\@ylii{-213}\def\@yli{-327}\@ylswtrue%\@ylbtrue% subst. on 2
    \fi
 \or\ifx\ccc\empty
      \def\@ylii{-171}\def\@yli{-103}\@ylswtrue%\@ylctrue% subst. on 3
    \else
      \def\@ylii{-213}\def\@yli{-79}\@ylswtrue%\@ylctrue% subst. on 3
    \fi
 \or\ifx\ddd\empty
     \ifx\eee\empty% ddd and eee are absent
       \gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue%\@yldtrue% subst. on 4
      \else% eee present
       \gdef\@ylii{0}\gdef\@yli{36}\global\@ylswtrue%\@yldtrue% subst. on 4
     \fi
    \else% ddd present
      \gdef\@ylii{0}\gdef\@yli{36}\global\@ylswtrue%\@yldtrue% subst. on 4
    \fi
 \or
    \ifx\eee\empty
     \ifx\iii\empty
      \ifx\fff\empty% eee, iii and fff are absent
        \def\@ylii{171}\def\@yli{-103}\@ylswtrue%\@yletrue% subst. on 5 refined 2013/03/25
      \else% fff is present
        \def\@ylii{213}\def\@yli{-79}\@ylswtrue%\@yletrue% subst. on 5
      \fi
     \fi
    \else% eee is present
       \def\@ylii{171}\def\@yli{-103}\@ylswtrue%\@yletrue% subst. on 5 bug fix 2013/03/25
   \fi
 \or
    \ifx\fff\empty
     \ifx\jjj\empty
      \ifx\gggA\empty% fff, jjj, and ggg are absent
        \def\@ylii{171}\def\@yli{-303}\@ylswtrue%\@ylftrue% subst. on 6 refined 2013/03/25
      \else%ggg is present
        \def\@ylii{213}\def\@yli{-327}\@ylswtrue%\@ylftrue% subst. on 6
      \fi
     \fi
    \else%fff is present
      \def\@ylii{213}\def\@yli{-327}\@ylswtrue%\@ylftrue% subst. on 6
    \fi%
\fi%end of ifcase
\fi\fi\fi\fi\fi}}%
\def\decaheterovi{\@ifnextchar({\@deca@heterovi(@}{\@deca@heterovi(@)}}
\def\@deca@heterovi(#1){\@ifnextchar[{\@deca@@heterovi(#1)[@}%
{\@deca@@heterovi(#1)[@]}}
\def\@deca@@heterovi(#1)[#2]#3#4{\@ifnextchar[%
{\@decaheterovi(#1)[#2]{#3}{#4}[@}%
{\@decaheterovi(#1)[#2]{#3}{#4}[@]}}
\def\@decaheterovi(#1)[#2]#3#4[#5]{%
\iniflag\iniatom%
%%\test@vertix@sixv{#3}{d}{c}{b}{a}{h}{g}%
%%\test@vertix@decav{#3}{f}{e}{i}{j}{@}{@}%{i}{j} fixed
\test@vertix@decavi{#3}%
\@reset@ylsw%
\ylhetposition{#4}{5}{0}{5}{-1}% %substituents on 1 to 4
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-342}\def\@@yli{0}\fi
\else
\ylhetposition{#4}{12}{3}{7}{-1}% %substituents on 6 to 8
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
\ylhetposition{#4}{-4}{0}{2}{0}% %substituent on 5
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \ylatombondposition{#4}{-9}{7}%  %10 for 8a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-103}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@jclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-8}{1}%   %9 for 4a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-303}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(1200,880)(-\shiftii,-\shifti){decaheterovi}%2002/4/30 by S. Fujita
\begingroup
\resetbdsw%
\@bond@@omit{#5}%
{\let\fff=\jjj \let\eee=\iii%
\Put@Direct(342,0){\set@skel@bond{#1}{c}{a}}%
  % bond between 1 and 2 \@aaa -> \skbonda etc
\Put@Direct(342,0){\set@skel@bond{#1}{b}{b}}%
  % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(342,0){\set@skel@bond{#1}{a}{c}}%
  % bond between 3 and 4 \@ccc -> \skbondc etc
\Put@Direct(342,0){\set@skel@bond{#1}{j}{d}}%
  % bond between 4 and 4a \@ddd -> \skbondd etc
\Put@Direct(342,0){\set@skel@bond{#1}{k}{e}}%
  % bond between 4a and 8a \@kkk -> \skbonde etc
\Put@Direct(342,0){\set@skel@bond{#1}{d}{f}}%
  % bond between 8a and 1 \@jjj -> \skbondf etc
}%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA%
 \let\ccc=\iii\let\bbb=\jjj%
\set@skel@bond{#1}{e}{a}% bond between 8 and 8a \@eee -> \skbonda etc
\set@skel@bond{#1}{i}{c}% bond between 5 and 4a \@iii -> \skbondc etc
\set@skel@bond{#1}{h}{d}% bond between 5 and 6 \@hhh -> \skbondd etc
\set@skel@bond{#1}{g}{e}% bond between 6 and 7 \@ggg -> \skbonde etc
\set@skel@bond{#1}{f}{f}% bond between 7 and 8 \@fff -> \skbondf etc
}%
\endgroup
\@tfor\member:=#2\do{%
\if\member r\relax%
{\let\fff=\jjj \let\eee=\iii%
 \Put@Direct(342,0){\bonda}% bond between 1 and 2
 \Put@Direct(342,0){\bondc}% bond between 3 and 4
}%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA%
 \let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 8a and 4a
 \Put@Direct(0,0){\bondf}% bond between 8 and 7
 \Put@Direct(0,0){\bondd}% bond between 5 and 6
}%
\else\if\member l\relax%
\else\if\member a\relax%
 \Put@Direct(342,0){\bondc}% bond between 3 and 4
\else\if\member b\relax%
 \Put@Direct(342,0){\bondb}% bond between 2 and 3
\else\if\member c\relax%
 \Put@Direct(342,0){\bonda}% bond between 1 and 2
\else\if\member d\relax%
{\let\fff=\jjj%
 \Put@Direct(342,0){\bondf}% bond between 1 and 8a
}%
\else\if\member e\relax%
{\let\aaa=\hhh \let\bbb=\jjj%
 \Put@Direct(0,0){\bonda}% bond between 8 and 8a
}%
\else\if\member f\relax%
{\let\aaa=\hhh \let\fff=\gggA%
 \Put@Direct(0,0){\bondf}% bond between 8 and 7
}%
\else\if\member g\relax%
{\let\eee=\fff \let\fff=\gggA%
 \Put@Direct(0,0){\bonde}% bond between 6 and 7
}%
\else\if\member h\relax%
{\let\ddd=\eee \let\eee=\fff%
 \Put@Direct(0,0){\bondd}% bond between 5 and 6
}%
\else\if\member i\relax%
{\let\ccc=\iii \let\ddd=\eee%
 \Put@Direct(0,0){\bondc}% bond between 5 and 4a
}%
\else\if\member j\relax%
{\let\eee=\iii%
 \Put@Direct(342,0){\bondd}% bond between 4 and 4a
}%
\else\if\member k\relax%
{\let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 8a and 4a
}%
\else\if\member K\relax%
{\let\eee=\iii\let\fff=\jjj%
 \Put@Direct(342,0){\bonde}% bond between 8a and 4a in the other ring
}%
\else\if\member A%left aromatic circle
  \Put@oCircle(0,203){240}%               %circle
\else\if\member B%left aromatic circle
  \Put@oCircle(342,203){240}%             %circle
\else
  \expandafter\twoCH@@R\member//%
  \def\aax{4a}\def\aay{8a}\def\aaz{10}%
      \if\@@tmpa 4\relax%                  % plus charge etc.
        \putratom{304}{282}{\@@tmpb}%      % right type
      \else\if\@@tmpa 3\relax%
        \putratom{402}{253}{\@@tmpb}%      % right type
      \else\if\@@tmpa 2\relax%
        \putratom{402}{120}{\@@tmpb}%      % right type
      \else\if\@@tmpa 1\relax%
        \putratom{304}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 7\relax%
        \putlatom{-60}{253}{\@@tmpb}%      % left type
      \else\if\@@tmpa 6\relax%
        \putlatom{-60}{120}{\@@tmpb}%      % left type
      \else\if\@@tmpa 5\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\if\@@tmpa 9\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aax\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aay\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aaz\relax% 1998/10/17 by S. Fujita
        \putratom{60}{120}{\@@tmpb}%       % right type
      \else\if\@@tmpa 8\relax%
        \putratom{-38}{68}{\@@tmpb}%       % right type
      \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
   \expandafter\twoCH@R\member//%
   \set@fusion@decavi
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\fi\fi\fi\fi\fi\fi%
}%
\iniflag\iniatom%
\@tmpclipfalse
\Put@Direct(0,0){\set@hetatom@sixv{#3}{12}{3}{7}{-1}%
 \@gclipfalse \if@fclip \@gcliptrue \fi%%bug fix 2013/03/25
 \@fclipfalse \if@eclip \@fcliptrue \fi%%bug fix 2013/03/25
 \@eclipfalse \if@clip \@ecliptrue \@clipfalse \fi%%bug fix 2013/03/25
\storeclipinfo
}%substituents on 6 to 8
\developclipinfo
\Put@Direct(0,0){\set@hetatom@sixv{#3}{-4}{0}{2}{0}%
 \@hclipfalse \if@aclip \@hcliptrue \@aclipfalse\fi%bug fix 2013/03/25
 \storeclipinfo
}%%substituent on 5
\developclipinfo
\Put@Direct(0,0){\set@vrtx@decafusevi{#3}%
  \@tmpclipfalse
  \if@iclip \@tmpcliptrue \fi
  \if@jclip \@icliptrue \fi
  \if@tmpclip \@jcliptrue \fi
  \storeclipinfo
}% fused positions
\developclipinfo
\Put@Direct(342,0){\set@hetatom@sixv{#3}{5}{0}{5}{-1}%
\storeclipinfo
}% %substituents on 1 to 4
\developclipinfo
\global\drawsamesubsttrue%2002/05/30 warning on
\Put@Direct(342,0){\setsixringv{#4}{5}{0}{5}{-1}}% %substituents on 1 to 4
\global\drawsamesubstfalse%2002/05/30 warning off
{\@clipfalse \if@eclip \@cliptrue \fi%      %substituents on 6 to 8
 \@eclipfalse \if@fclip \@ecliptrue \fi%
 \@fclipfalse \if@gclip \@fcliptrue \fi%
\Put@Direct(0,0){\setsixringv{#4}{12}{3}{7}{-1}}%
}%
{\@aclipfalse \if@hclip \@acliptrue \fi%    %substituent on 5
\Put@Direct(0,0){\setsixringv{#4}{-4}{0}{2}{0}}%
}%
{\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \Put@Direct(171,103){\setatombond{#4}{-9}{7}}%    %10 for 8a position
}%
{\@clipfusefalse \if@jclip \@clipfusetrue \fi%
  \Put@Direct(171,303){\setatombond{#4}{-8}{1}}%   %9 for 4a position
}%
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \decaheterovi macro
\newif\if@tmpclip \@tmpclipfalse
\def\test@vertix@decavi#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa%
 \or%
   \if\@tmpb s\relax\def\ddd{}\else\def\ddd{@}\fi
 \or%2
   \if\@tmpb s\relax\def\ccc{}\else\def\ccc{@}\fi
 \or%3
   \if\@tmpb s\relax\def\bbb{}\else\def\bbb{@}\fi
 \or%
   \if\@tmpb a%
     \def\jjj{@}%4a
   \else\if\@tmpb s%
     \def\aaa{}%4
   \else\if\@tmpb h%
     \def\aaa{@}%4
   \else\ifx\@tmpb\empty%
     \def\aaa{@}%4
   \fi\fi\fi\fi%
 \or%5
   \if\@tmpb s\relax\def\hhh{}\else\def\hhh{@}\fi
 \or%6
   \if\@tmpb s\relax\def\gggA{}\else\def\gggA{@}\fi
 \or%7
   \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi
 \or%
   \if\@tmpb a%
     \xdef\iii{@}%8a
   \else\if\@tmpb s%
     \xdef\eee{}%8s
   \else\if\@tmpb h%
     \xdef\eee{@}%8h
   \else\ifx\@tmpb\empty%
     \xdef\eee{@}%8
   \fi\fi\fi\fi%
\or%9 (= 4a)
   \if\@tmpb s\relax\def\jjj{}\else\def\jjj{@}\fi
\or%10 (= 8a)
   \if\@tmpb s\relax\def\iii{}\else\def\iii{@}\fi
\fi\fi}}
\def\set@vrtx@decafusevi#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa\or\or\or
 \or%%%%4
   \if\@tmpb a\relax%
     \@icliptrue%2001/06/20 by S. Fujita
     \putlatom{207}{280}{\@memberb}% % left type
   \else\relax
   \fi
 \or\or\or
 \or%8
   \if\@tmpb a\relax%
     \@jcliptrue%%2001/06/20 by S. Fujita
     \putlatom{207}{65}{\@memberb}%  % left type
   \else\relax
   \fi
\or%9 (= 4a)
     \@icliptrue%%2001/06/20 by S. Fujita
     \putlatom{207}{280}{\@memberb}% % left type
\or%10 (= 8a)
     \@jcliptrue%%2001/06/20 by S. Fujita
     \putlatom{207}{65}{\@memberb}%  % left type
\fi\fi}%
}% end of the macro \set@vrtx@decafusevi
\def\set@fusion@decavi{%
  \let\@@tmpa=\@tmpa
  \let\@@tmpb=\@tmpb
  \if\@tmpa a%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa A%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa b%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa B%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa c%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa C%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa d%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `d'}%
      \fi
  \else\if\@tmpa D%
      \let\@@tmpa=\@tmpa
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `D'}%
      \fi
  \else\if\@tmpa e%
      \edef\@@tmpa{c}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `e'}%
      \fi
  \else\if\@tmpa E%
      \edef\@@tmpa{C}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `E'}%
      \fi
  \else\if\@tmpa f%
      \edef\@@tmpa{d}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa F%
      \edef\@@tmpa{D}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa g%
      \edef\@@tmpa{e}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa G%
      \edef\@@tmpa{E}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa h%
      \edef\@@tmpa{f}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa H%
      \edef\@@tmpa{F}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
  \else\if\@tmpa i%
      \edef\@@tmpa{a}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `i'}%
      \fi
  \else\if\@tmpa I%
      \edef\@@tmpa{A}%
      \Put@Direct(0,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `I'}%
      \fi
  \else\if\@tmpa j%
      \edef\@@tmpa{f}%
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `j'}%
      \fi
  \else\if\@tmpa J%
      \edef\@@tmpa{F}%
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Unfavorable Fusion for bond `J'}%
      \fi
  \else\if\@tmpa k%
      \edef\@@tmpa{e}%
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Forbidden Fusion for bond `k'}%
      \fi
  \else\if\@tmpa K%
      \edef\@@tmpa{E}%
      \Put@Direct(342,0){\set@fusionadd@sixvi}%
      \if@smallringsw\else
       \XyMTeXWarning{Forbidden Fusion for bond `K'}%
      \fi
  \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
  \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}% end of the macro \set@fusion@decavi
\def\decaheterovb{\@ifnextchar({\@deca@heterovb(@}{\@deca@heterovb(@)}}
\def\@deca@heterovb(#1){\@ifnextchar[{\@deca@@heterovb(#1)[@}%
{\@deca@@heterovb(#1)[@]}}
\def\@deca@@heterovb(#1)[#2]#3#4{\@ifnextchar[%
{\@decaheterovb(#1)[#2]{#3}{#4}[@}%
{\@decaheterovb(#1)[#2]{#3}{#4}[@]}}
\def\@decaheterovb(#1)[#2]#3#4[#5]{%
\iniflag\iniatom%
\test@vertix@decavb{#3}%
\@reset@ylsw%
{\let\eee=\ddd\let\ddd=\ccc
\let\ccc=\bbb\let\bbb=\aaa
\ylhetpositionb{#4}{1}{1}{6}{0}% %substituents on 1 to 4
}%
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
\ylhetpositionb{#4}{0}{4}{7}{0}% %substituents on 5 to 6
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{171}\def\@@yli{-303}\fi
\else
{\let\aaa=\gggA \let\bbb=\hhh
\ylhetpositionb{#4}{-6}{0}{3}{0}% %substituents on 7 to 8
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{171}\def\@@yli{-303}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@iclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-8}{9}%   %9 %for 4a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{171}\def\@@yli{-303}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@jclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-9}{3}%  %10 for 8a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{-406}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(1000,1200)(-550,-240){decaheterob}%2002/4/30 by S. Fujita
\begingroup
\resetbdsw%
\@bond@@omit{#5}%
{\let\eee=\ddd\let\ddd=\ccc
 \let\ccc=\bbb\let\bbb=\aaa
 \let\aaa=\jjj \let\fff=\iii
\set@skel@bond{#1}{j}{a}% bond between 8a and 1 \@jjj -> \skbonda etc
\set@skel@bond{#1}{a}{b}% bond between 1 and 2 \@aaa -> \skbondb etc
\set@skel@bond{#1}{b}{c}% bond between 2 and 3 \@bbb -> \skbondc etc
\set@skel@bond{#1}{c}{d}% bond between 3 and 4 \@ccc -> \skbondd etc
\set@skel@bond{#1}{d}{e}% bond between 4 and 4a \@ddd -> \skbonde etc
\set@skel@bond{#1}{k}{f}% bond between 4a and 8a \@kkk -> \skbondf etc
}%
{\let\aaa=\gggA\let\bbb=\hhh\let\ccc=\jjj\let\ddd=\iii
\Put@Direct(-171,303){\set@skel@bond{#1}{h}{a}}%
  % bond between 7 and 8 \@hhh -> \skbonda etc
\Put@Direct(-171,303){\set@skel@bond{#1}{i}{b}}%
  % bond between 8 and 8a \@iii -> \skbondb etc
\Put@Direct(-171,303){\set@skel@bond{#1}{e}{d}}%
  % bond between 4a and 5 \@eee -> \skbondd etc
\Put@Direct(-171,303){\set@skel@bond{#1}{f}{e}}%
  % bond between 5 and 6 \@fff -> \skbonde etc
\Put@Direct(-171,303){\set@skel@bond{#1}{g}{f}}%
  % bond between 6 and 7 \@ggg -> \skbondf etc
}%
\endgroup
\@tfor\member:=#2\do{%
\if\member r\relax%
{\let\aaa=\gggA\let\bbb=\hhh\let\ccc=\jjj\let\ddd=\iii
 \Put@Direct(-171,303){\bonda}% bond between 7 and 8
 \Put@Direct(-171,303){\bonde}% bond between 5 and 6
}%
{\let\eee=\ddd\let\ddd=\ccc
 \let\ccc=\bbb\let\bbb=\aaa
 \let\aaa=\jjj \let\fff=\iii
 \Put@Direct(0,0){\bondb}% bond between 1 and 2
 \Put@Direct(0,0){\bondd}% bond between 3 and 4
 \Put@Direct(0,0){\bondf}% bond between 4a and 4b
}%
\else\if\member l\relax%
\else\if\member a\relax%
{\let\ccc=\bbb\let\bbb=\aaa
 \Put@Direct(0,0){\bondb}% bond between 1 and 2
}%
\else\if\member b\relax
{\let\ddd=\ccc\let\ccc=\bbb
 \Put@Direct(0,0){\bondc}% bond between 2 and 3
}%
\else\if\member c\relax
{\let\eee=\ddd\let\ddd=\ccc
 \Put@Direct(0,0){\bondd}% bond between 3 and 4
}%
\else\if\member d\relax%
{\let\fff=\eee\let\eee=\ddd
 \Put@Direct(0,0){\bonde}% bond between 4 and 4a
}%
\else\if\member e\relax%
{\let\ddd=\iii%
 \Put@Direct(-171,303){\bondd}% bond between 5 and 4a
}%
\else\if\member f\relax%
 \Put@Direct(-171,303){\bonde}% bond between 5 and 6
\else\if\member g\relax%
{\let\aaa=\gggA
 \Put@Direct(-171,303){\bondf}% bond between 6 and 7
}%
\else\if\member h\relax%
{\let\aaa=\gggA \let\bbb=\hhh%
 \Put@Direct(-171,303){\bonda}% bond between 8 and 7
}%
\else\if\member i\relax%
{\let\bbb=\hhh \let\ccc=\jjj%
 \Put@Direct(-171,303){\bondb}% bond between 8 and 8a
}%
\else\if\member j\relax%
{\let\bbb=\aaa\let\aaa=\jjj%
 \Put@Direct(0,0){\bonda}% bond between 1 and 8a
}%
\else\if\member k\relax%
{\let\aaa=\jjj\let\fff=\iii%
 \Put@Direct(0,0){\bondf}% bond between 8a and 4a
}%
\else\if\member K\relax%
{\let\ccc=\jjj\let\ddd=\iii%
 \Put@Direct(-171,303){\bondc}% bond between 8a and 4a in the other ring
}%
\else\if\member A%left aromatic circle
  \Put@oCircle(-171,506){240}%               %circle
\else\if\member B%left aromatic circle
  \Put@oCircle(0,203){240}%             %circle
\else \expandafter\twoCH@@R\member//%
  \def\aax{8a}\def\aay{4a}\def\aaz{10}%
      \if\@@tmpa 1\relax%                  % plus charge etc.
        \putratom{60}{253}{\@@tmpb}%      % right type
      \else\if\@@tmpa 2\relax%
        \putratom{60}{120}{\@@tmpb}%      % right type
      \else\if\@@tmpa 3\relax%
        \putratom{-38}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 4\relax%
        \putratom{-120}{120}{\@@tmpb}%       % right type
      \else\if\@@tmpa 5\relax%
        \putlatom{-209}{431}{\@@tmpb}%      % left type
      \else\if\@@tmpa 6\relax%
        \putlatom{-209}{546}{\@@tmpb}%      % left type
      \else\if\@@tmpa 7\relax%
        \putratom{-209}{585}{\@@tmpb}%      % right type
      \else\if\@@tmpa 8\relax%
        \putratom{-111}{546}{\@@tmpb}%      % right type
      \else\if\@@tmpa 9\relax%
        \putlatom{-60}{253}{\@@tmpb}%      % left type
      \else\ifx\@@tmpa\aaz\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\ifx\@@tmpa\aax\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\ifx\@@tmpa\aay\relax%
        \putratom{-209}{371}{\@@tmpb}%       % right type
      \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
   \expandafter\twoCH@R\member//%
   \set@fusion@decavb
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\fi\fi\fi\fi\fi\fi%
}%
\iniflag\iniatom
\Put@Direct(-171,303){\set@hetatom@sixv{#3}{0}{4}{7}{0}%
\storeclipinfo
}% %substituents on 5 to 6
\developclipinfo
\Put@Direct(-171,303){\set@hetatom@sixv{#3}{-6}{0}{3}{0}%
 \@gclipfalse \if@aclip \@gcliptrue \fi%
 \@hclipfalse \if@bclip \@hcliptrue \@bclipfalse \fi%bugfix 2013/03/23
\storeclipinfo
}% %substituents on 7 to 8
\developclipinfo
\Put@Direct(0,0){\set@vrtx@decafusevb{#3}%
\storeclipinfo
}%9 %for 4a position, %10 for 8a position
\developclipinfo
\Put@Direct(0,0){\iniflag%2000/11/11 by S. Fujita
\set@hetatom@sixv{#3}{1}{1}{6}{0}%
\@aclipfalse \if@bclip \@acliptrue \fi%
\@bclipfalse \if@cclip \@bcliptrue \fi%
\@cclipfalse \if@clip \@ccliptrue \fi%
\@clipfalse \if@eclip \@cliptrue \fi%
\storeclipinfo
}% %substituents on 1 to 4
\developclipinfo
\global\drawsamesubsttrue%2002/05/30 warning on
{%
\@eclipfalse \if@clip \@ecliptrue \fi%
\@clipfalse \if@cclip \@cliptrue \fi%
\@cclipfalse \if@bclip \@ccliptrue \fi%
\@bclipfalse \if@aclip \@bcliptrue \fi%
\Put@Direct(0,0){\setsixringv{#4}{1}{1}{6}{0}}% %substituents on 1 to 4
}%
\global\drawsamesubstfalse%2002/05/30 warning off
{%
\Put@Direct(-171,303){\setsixringv{#4}{0}{4}{7}{0}}% %substituents on 5 to 6
}%
{%
 \@aclipfalse \if@gclip \@acliptrue \fi%
 \@bclipfalse \if@hclip \@bcliptrue \fi%
\Put@Direct(-171,303){\setsixringv{#4}{-6}{0}{3}{0}}% %substituents on 7 to 8
}%
{\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \Put@Direct(-171,303){\setatombond{#4}{-8}{9}}%   %9 %for 4a position
}%
{\@clipfusefalse \if@jclip \@clipfusetrue \fi%
  \Put@Direct(0,406){\setatombond{#4}{-9}{3}}%  %10 for 8a position
}%
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \decaheterovb macro
\def\ylhetpositionb#1#2#3#4#5{%
\@@ylswfalse%%%\@reset@ylsw
\@forsemicol\member:=#1\do{%
\if@@ylsw\else%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\threech@r\@membera{}{}\relax%
\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
\if@@ylsw
\ifnum#5<0\relax%
\@tmpaa=-\@tmpa\relax \advance\@tmpaa by#2\relax%
\else\@tmpaa=\@tmpa\relax \advance\@tmpaa by#2\relax\fi
\ifnum\@tmpaa>#3\relax%
\ifnum\@tmpaa<#4\relax%
\ifcase\@tmpaa%0 omit
 \or
    \ifx\aaa\empty%
     \ifx\gggA\empty% aaa and ggg are absent
       \gdef\@ylii{0}\gdef\@yli{-406}\global\@ylswtrue%\@ylatrue% subst. on 1
     \else% ggg is present
       \gdef\@ylii{0}\gdef\@yli{-442}\global\@ylswtrue%\@ylatrue% subst. on 1
     \fi
    \else%aaa is present
      \gdef\@ylii{0}\gdef\@yli{-442}\global\@ylswtrue%\@ylatrue% subst. on 1
    \fi
 \or
    \ifx\bbb\empty
     \ifx\hhh\empty% aaa and hhh are absent
      \gdef\@ylii{-171}\gdef\@yli{-303}\global\@ylswtrue%\@ylbtrue% subst. on 2
     \else%hhh is present
      \gdef\@ylii{-213}\gdef\@yli{-327}\global\@ylswtrue%\@ylbtrue% subst. on 2
     \fi
    \else
      \gdef\@ylii{-213}\gdef\@yli{-327}\global\@ylswtrue%\@ylbtrue% subst. on 2
    \fi
 \or\ifx\ccc\empty
      \gdef\@ylii{-171}\gdef\@yli{-103}\global\@ylswtrue%\@ylctrue% subst. on 3
    \else
      \gdef\@ylii{-213}\gdef\@yli{-79}\global\@ylswtrue%\@ylctrue% subst. on 3
    \fi
 \or
   \ifx\ddd\empty
       \gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue%\@yldtrue% subst. on 4
    \else% ddd present
      \gdef\@ylii{0}\gdef\@yli{36}\global\@ylswtrue%\@yldtrue% subst. on 4
    \fi
 \or
    \ifx\eee\empty
       \gdef\@ylii{173}\gdef\@yli{-103}\global\@ylswtrue%\@yletrue% subst. on 5
    \else% eee is present
       \gdef\@ylii{223}\gdef\@yli{-79}\global\@ylswtrue%\@yletrue% subst. on 5
   \fi
 \or
    \ifx\fff\empty
       \gdef\@ylii{173}\gdef\@yli{-303}\global\@ylswtrue%\@ylftrue% subst. on 6
    \else%fff is present
      \gdef\@ylii{213}\gdef\@yli{-327}\global\@ylswtrue%\@ylftrue% subst. on 6
    \fi
\fi%end of ifcase
\fi\fi\fi\fi\fi}}%
\def\test@vertix@decavb#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa%
 \or% \xdef\aaa{\@memberb}%1
   \if\@tmpb s\relax\def\aaa{}\else\def\aaa{@}\fi
 \or% \xdef\bbb{\@memberb}%2
   \if\@tmpb s\relax\def\bbb{}\else\def\bbb{@}\fi
 \or% \xdef\ccc{\@memberb}%3
   \if\@tmpb s\relax\def\ccc{}\else\def\ccc{@}\fi
 \or%
   \if\@tmpb a%
     \def\iii{@}%4a
   \else\if\@tmpb s%
     \def\ddd{}%4
   \else\if\@tmpb h%
     \def\ddd{@}%4
   \else\ifx\@tmpb\empty%
     \def\ddd{@}%4
   \fi\fi\fi\fi%
 \or% \xdef\eee{\@memberb}%5
   \if\@tmpb s\relax\def\eee{}\else\def\eee{@}\fi
 \or% \xdef\fff{\@memberb}%6
   \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi
 \or% \xdef\gggA{\@memberb}%7
   \if\@tmpb s\relax\def\gggA{}\else\def\gggA{@}\fi
 \or%
   \if\@tmpb a%
     \def\jjj{@}%8a
   \else\if\@tmpb s%
     \def\hhh{}%8
   \else\if\@tmpb h%
     \def\hhh{@}%4
   \else\ifx\@tmpb\empty%
     \def\hhh{@}%4
   \fi\fi\fi\fi%
\or% \xdef\iii{\@memberb}%9 (= 4a)
   \if\@tmpb s\relax\def\iii{}\else\def\iii{@}\fi
\or% \xdef\jjj{\@memberb}%10 (= 8a)
   \if\@tmpb s\relax\def\jjj{}\else\def\jjj{@}\fi
\fi\fi}%
}% end of the macro \test@vertix@decavb
\def\set@vrtx@decafusevb#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa\or\or\or
 \or%%%%4
   \if\@tmpb a\relax%
     \@icliptrue%%2001/06/20 by S. Fujita
     \putlatom{-135}{280}{\@memberb}% % left type
   \else\relax
   \fi
 \or\or\or
 \or%8
   \if\@tmpb a\relax%
     \@jcliptrue%%2001/06/20 by S. Fujita
     \putratom{-31}{356}{\@memberb}%  % right type
   \else\relax
   \fi
\or%9 (= 4a)
     \@icliptrue%%2001/06/20 by S. Fujita
     \putlatom{-135}{280}{\@memberb}% % left type
\or%10 (= 8a)
     \@jcliptrue%%2001/06/20 by S. Fujita
     \putratom{-31}{356}{\@memberb}%  % right type
\fi\fi}%
}% end of the macro \set@vrtx@decafusevb
\def\decaheterovt{\@ifnextchar({\@deca@heterovt(@}{\@deca@heterovt(@)}}
\def\@deca@heterovt(#1){\@ifnextchar[{\@deca@@heterovt(#1)[@}%
{\@deca@@heterovt(#1)[@]}}
\def\@deca@@heterovt(#1)[#2]#3#4{\@ifnextchar[%
{\@decaheterovt(#1)[#2]{#3}{#4}[@}%
{\@decaheterovt(#1)[#2]{#3}{#4}[@]}}
\def\@decaheterovt(#1)[#2]#3#4[#5]{%
\iniflag\iniatom%
\test@vertix@decavb{#3}%
\@reset@ylsw%
{\let\fff=\aaa
\ylhetpositiont{#4}{5}{5}{7}{0}% %substituent on 1
}%
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-303}\fi
\else
{\let\aaa=\bbb\let\bbb=\ccc\let\ccc=\ddd
\ylhetpositiont{#4}{-1}{0}{4}{0}% %substituents on 2 to 4
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-303}\fi
\else
{\let\ccc=\eee\let\ddd=\fff
\let\eee=\gggA\let\fff=\hhh
\ylhetpositiont{#4}{-2}{2}{7}{0}% %substituents on 5 to 8
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@iclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-8}{5}%   %9 %for 4a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-303}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@jclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-9}{11}%  %10 for 8a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{-406}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(1200,880)(-\shiftii,-\shifti){decaheterovt}%2002/4/30 by S. Fujita
\begingroup
\resetbdsw%
\@bond@@omit{#5}%
{%
 \let\fff=\aaa \let\aaa=\bbb \let\bbb=\ccc
 \let\ccc=\ddd \let\ddd=\iii \let\eee=\jjj
\Put@Direct(171,303){\set@skel@bond{#1}{b}{a}}%
  % bond between 2 and 3 \@bbb -> \skbonda etc
\Put@Direct(171,303){\set@skel@bond{#1}{c}{b}}%
  % bond between 3 and 4 \@ccc -> \skbondb etc
\Put@Direct(171,303){\set@skel@bond{#1}{d}{c}}%
  % bond between 4 and 4a \@ddd -> \skbondc etc
\Put@Direct(171,303){\set@skel@bond{#1}{k}{d}}%
  % bond between 4a and 8a \@kkk -> \skbondd etc
\Put@Direct(171,303){\set@skel@bond{#1}{j}{e}}%
  % bond between 8a and 1 \@jjj -> \skbonde etc
\Put@Direct(171,303){\set@skel@bond{#1}{a}{f}}%
  % bond between 1 and 2 \@aaa -> \skbondf etc
}%
{%
 \let\aaa=\jjj\let\bbb=\iii
 \let\ccc=\eee\let\ddd=\fff
 \let\eee=\gggA\let\fff=\hhh
\set@skel@bond{#1}{e}{b}% bond between 4a and 5 \@eee -> \skbondb etc
\set@skel@bond{#1}{f}{c}% bond between 5 and 6 \@fff -> \skbondc etc
\set@skel@bond{#1}{g}{d}% bond between 6 and 7 \@ggg -> \skbondd etc
\set@skel@bond{#1}{h}{e}% bond between 7 and 8 \@hhh -> \skbonde etc
\set@skel@bond{#1}{i}{f}% bond between 8 and 8a \@iii -> \skbondf etc
}%
\endgroup
\@tfor\member:=#2\do{%
\if\member r\relax%
{%
 \let\ccc=\eee\let\ddd=\fff\let\eee=\gggA\let\fff=\gggA
 \Put@Direct(0,0){\bondc}% bond between 7 and 8
 \Put@Direct(0,0){\bonde}% bond between 5 and 6
}%
{%
 \let\fff=\aaa\let\aaa=\bbb
 \let\bbb=\ccc\let\ccc=\ddd
 \let\ddd=\iii\let\eee=\jjj
 \Put@Direct(171,303){\bondf}% bond between 1 and 2
 \Put@Direct(171,303){\bondb}% bond between 3 and 4
 \Put@Direct(171,303){\bondd}% bond between 4a and 8a
}%
\else\if\member l\relax%
\else\if\member a\relax%
{\let\fff=\aaa\let\aaa=\bbb
 \Put@Direct(171,303){\bondf}% bond between 1 and 2
}%
\else\if\member b\relax
{\let\aaa=\bbb\let\bbb=\ccc
 \Put@Direct(171,303){\bonda}% bond between 2 and 3
}%
\else\if\member c\relax
{\let\bbb=\ccc\let\ccc=\ddd
 \Put@Direct(171,303){\bondb}% bond between 3 and 4
}%
\else\if\member d\relax%
{\let\ccc=\ddd\let\ddd=\eee
 \Put@Direct(171,303){\bondc}% bond between 4 and 4a
}%
\else\if\member e\relax%
{\let\ccc=\eee\let\bbb=\iii%
 \Put@Direct(0,0){\bondb}% bond between 5 and 4a
}%
\else\if\member f\relax%
{\let\ccc=\eee\let\ddd=\fff
 \Put@Direct(0,0){\bondc}% bond between 5 and 6
}%
\else\if\member g\relax%
{\let\ddd=\fff\let\eee=\gggA
 \Put@Direct(0,0){\bondd}% bond between 6 and 7
}%
\else\if\member h\relax%
{\let\eee=\gggA \let\fff=\hhh%
 \Put@Direct(0,0){\bonde}% bond between 8 and 7
}%
\else\if\member i\relax%
{\let\aaa=\jjj \let\fff=\hhh%
 \Put@Direct(0,0){\bondf}% bond between 8 and 8a
}%
\else\if\member j\relax%
{\let\fff=\aaa\let\eee=\jjj%
 \Put@Direct(171,303){\bonde}% bond between 1 and 8a
}%
\else\if\member k\relax%
{\let\aaa=\jjj\let\bbb=\iii%
 \Put@Direct(0,0){\bonda}% bond between 8a and 4a
}%
\else\if\member K\relax%
{\let\eee=\jjj\let\ddd=\iii%
 \Put@Direct(171,303){\bondd}% bond between 8a and 4a in the other ring
}%
\else\if\member A%left aromatic circle
  \Put@oCircle(171,506){240}%               %circle
\else\if\member B%left aromatic circle
  \Put@oCircle(0,203){240}%             %circle
\else
  \expandafter\twoCH@@R\member//%
  \def\aax{8a}\def\aay{4a}\def\aaz{10}%
      \if\@@tmpa 1\relax%                  % plus charge etc.
        \putlatom{111}{546}{\@@tmpb}%      % left type
      \else\if\@@tmpa 2\relax%
        \putlatom{209}{585}{\@@tmpb}%      % left type
      \else\if\@@tmpa 3\relax%
        \putratom{209}{546}{\@@tmpb}%      % right type
      \else\if\@@tmpa 4\relax%
        \putratom{209}{431}{\@@tmpb}%      % right type
      \else\if\@@tmpa 5\relax%
        \putratom{60}{120}{\@@tmpb}%      % right type
      \else\if\@@tmpa 6\relax%
        \putratom{-38}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 7\relax%
        \putratom{-120}{120}{\@@tmpb}%       % right type
      \else\if\@@tmpa 8\relax%
        \putlatom{-60}{253}{\@@tmpb}%      % left type
      \else\if\@@tmpa 9\relax%
        \putratom{60}{253}{\@@tmpb}%      % right type
      \else\ifx\@@tmpa\aaz\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\ifx\@@tmpa\aax\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\ifx\@@tmpa\aay\relax%
        \putratom{60}{253}{\@@tmpb}%      % right type
      \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
  \expandafter\twoCH@R\member//%
   \set@fusion@decavt
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\fi\fi\fi\fi\fi\fi%
}%
\iniflag
\Put@Direct(0,0){\set@hetatom@sixv{#3}{-2}{2}{7}{0}%
 \@hclipfalse \if@fclip \@hcliptrue \fi%
 \@gclipfalse \if@eclip \@gcliptrue \fi%
 \@fclipfalse \if@clip \@fcliptrue \fi%
 \@eclipfalse \if@cclip \@ecliptrue \fi%
\storeclipinfo
}% %substituents on 5 to 8
\developclipinfo
\Put@Direct(0,0){\set@vrtx@decafusevt{#3}%
\storeclipinfo
}%9 %for 4a position, %10 for 8a position
\developclipinfo
\Put@Direct(171,303){\set@hetatom@sixv{#3}{-1}{0}{4}{0}%
\@clipfalse \if@cclip \@cliptrue \fi%
\@cclipfalse \if@bclip \@ccliptrue \fi%
\@bclipfalse \if@aclip \@bcliptrue \@aclipfalse \fi%
\storeclipinfo
}% %substituents on 2 to 4
\developclipinfo
{%
\@fclipfalse%locally cancelled 1999/2/15 by Shinsaku Fujita
\Put@Direct(171,303){\set@hetatom@sixv{#3}{5}{5}{7}{0}%
\@aclipfalse \if@fclip \@acliptrue \fi%
\storeclipinfo
}% %substituent on 1
\developclipinfo
}%
\global\drawsamesubsttrue%2002/05/30 warning on
{%
\@fclipfalse \if@aclip \@fcliptrue \fi%
\Put@Direct(171,303){\setsixringv{#4}{5}{5}{7}{0}}% %substituent on 1
}%
\global\drawsamesubstfalse%2002/05/30 warning off
{%
\@aclipfalse \if@bclip \@acliptrue \fi%
\@bclipfalse \if@cclip \@bcliptrue \fi%
\@cclipfalse \if@clip \@ccliptrue \fi%
\Put@Direct(171,303){\setsixringv{#4}{-1}{0}{4}{0}}% %substituents on 2 to 4
}%
{%
 \@cclipfalse \if@eclip \@ccliptrue \fi%
 \@clipfalse \if@fclip \@cliptrue \fi%
 \@eclipfalse \if@gclip \@ecliptrue \fi%
 \@fclipfalse \if@hclip \@fcliptrue \fi%
\Put@Direct(0,0){\setsixringv{#4}{-2}{2}{7}{0}}% %substituents on 5 to 8
}%
{\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \Put@Direct(171,303){\setatombond{#4}{-8}{5}}%   %9 %for 4a position
}%
{\@clipfusefalse \if@jclip \@clipfusetrue \fi%
  \Put@Direct(0,406){\setatombond{#4}{-9}{11}}%  %10 for 8a position
}%
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \decaheterovt macro
\def\ylhetpositiont#1#2#3#4#5{%
\@@ylswfalse%%%\@reset@ylsw
\@forsemicol\member:=#1\do{%
\if@@ylsw\else%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\threech@r\@membera{}{}\relax%
\ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
\if@@ylsw
\ifnum#5<0\relax%
\@tmpaa=-\@tmpa\relax \advance\@tmpaa by#2\relax%
\else\@tmpaa=\@tmpa\relax \advance\@tmpaa by#2\relax\fi
\ifnum\@tmpaa>#3\relax%
\ifnum\@tmpaa<#4\relax%
\ifcase\@tmpaa%0 omit
 \or
    \ifx\aaa\empty%
     \ifx\bbb\empty% aaa and bbb are absent
       \gdef\@ylii{0}\gdef\@yli{-406}\global\@ylswtrue%\@ylatrue% subst. on 1
     \else% bbb is present
       \gdef\@ylii{0}\gdef\@yli{-442}\global\@ylswtrue%\@ylatrue% subst. on 1
     \fi
    \else%aaa is present
      \gdef\@ylii{0}\gdef\@yli{-442}\global\@ylswtrue%\@ylatrue% subst. on 1
    \fi
 \or
    \ifx\bbb\empty
     \ifx\ccc\empty% aaa and ccc are absent
      \gdef\@ylii{-171}\gdef\@yli{-303}\global\@ylswtrue%\@ylbtrue% subst. on 2
     \else%ccc is present
      \gdef\@ylii{-213}\gdef\@yli{-327}\global\@ylswtrue%\@ylbtrue% subst. on 2
     \fi
    \else
      \gdef\@ylii{-213}\gdef\@yli{-327}\global\@ylswtrue%\@ylbtrue% subst. on 2
    \fi
 \or
    \ifx\ccc\empty
     \ifx\ddd\empty
      \ifx\eee\empty% ccc, ddd, eee are absent
       \gdef\@ylii{-171}\gdef\@yli{-103}\global\@ylswtrue%\@ylctrue%subst. on 3
      \else%eee is present
       \gdef\@ylii{-213}\gdef\@yli{-79}\global\@ylswtrue%\@ylctrue% subst. on 3
      \fi
     \else%ddd is present
      \gdef\@ylii{-213}\gdef\@yli{-79}\global\@ylswtrue%\@ylctrue% subst. on 3
     \fi
    \else%ccc is present
      \gdef\@ylii{-213}\gdef\@yli{-79}\global\@ylswtrue%\@ylctrue% subst. on 3
    \fi
 \or
   \ifx\ddd\empty
     \ifx\fff\empty%ddd and fff are absent
       \gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue%\@yldtrue% subst. on 4
     \else%fff present
      \gdef\@ylii{0}\gdef\@yli{36}\global\@ylswtrue%\@yldtrue% subst. on 4
     \fi
    \else% ddd present
      \gdef\@ylii{0}\gdef\@yli{36}\global\@ylswtrue%\@yldtrue% subst. on 4
    \fi
 \or
    \ifx\eee\empty
     \ifx\gggA\empty%eee and ggg are absent
       \gdef\@ylii{173}\gdef\@yli{-103}\global\@ylswtrue%\@yletrue% subst. on 5
     \else% ggg is present
       \gdef\@ylii{223}\gdef\@yli{-79}\global\@ylswtrue%\@yletrue% subst. on 5
     \fi
    \else% eee is present
       \gdef\@ylii{223}\gdef\@yli{-79}\global\@ylswtrue%\@yletrue% subst. on 5
    \fi
 \or
    \ifx\fff\empty
     \ifx\hhh\empty%fff and hhh are absent
       \gdef\@ylii{173}\gdef\@yli{-303}\global\@ylswtrue%\@ylftrue% subst. on 6
     \else%hhh is present
      \gdef\@ylii{213}\gdef\@yli{-327}\global\@ylswtrue%\@ylftrue% subst. on 6
     \fi
    \else%fff is present
      \gdef\@ylii{213}\gdef\@yli{-327}\global\@ylswtrue%\@ylftrue% subst. on 6
    \fi
\fi%end of ifcase
\fi\fi\fi\fi\fi}}%
\def\set@vrtx@decafusevt#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa\or\or\or
 \or%%%%4
   \if\@tmpb a\relax%
     \global\@icliptrue%%2001/06/20 by S. Fujita
     \putratom{135}{280}{\@memberb}% % right type
   \else\relax
   \fi
 \or\or\or
 \or%8
   \if\@tmpb a\relax%
     \@jcliptrue%%2001/06/20 by S. Fujita
     \putlatom{31}{356}{\@memberb}%  % left type
   \else\relax
   \fi
\or%9 (= 4a)
     \@icliptrue%%2001/06/20 by S. Fujita
     \putratom{135}{280}{\@memberb}% % right type
\or%10 (= 8a)
     \@jcliptrue%%2001/06/20 by S. Fujita
     \putlatom{31}{356}{\@memberb}%  % left type
\fi\fi}%
}% end of the macro \set@vrtx@decafusevt
\def\quinolinev{%
 \@ifnextchar[{\@quinolinev[@}{\@quinolinev[acfhk]}}
\def\@quinolinev[#1]#2{%
\iforigpt \typeout{command `quinolinev' %
  is based on `decaheterov'.}\fi%
\decaheterov[#1]{1==N}{#2}}
\def\quinolinevi{%
 \@ifnextchar[{\@quinolinevi[@}{\@quinolinevi[acfhk]}}
\def\@quinolinevi[#1]#2{%
\iforigpt \typeout{command `quinolinevi' %
 is based on `decaheterovi'.}\fi%
\decaheterovi[#1]{1==N}{#2}}
\def\quinolinevb{%
 \@ifnextchar[{\@quinolinevb[@}{\@quinolinevb[acfhk]}}
\def\@quinolinevb[#1]#2{%
\iforigpt \typeout{command `quinolinevb' %
 is based on `decaheterovb'.}\fi%
\decaheterovb[#1]{1==N}{#2}}
\def\quinolinevt{%
 \@ifnextchar[{\@quinolinevt[@}{\@quinolinevt[acfhk]}}
\def\@quinolinevt[#1]#2{%
\iforigpt \typeout{command `quinolinevt' %
 is based on `decaheterovt'.}\fi%
\decaheterovt[#1]{1==N}{#2}}
\def\isoquinolinev{%
 \@ifnextchar[{\@isoquinolinev[@}{\@isoquinolinev[acfhk]}}
\def\@isoquinolinev[#1]#2{%
\iforigpt \typeout{command `isoquinolinev' %
 is based on `decaheterov'.}\fi%
\decaheterov[#1]{2==N}{#2}}
\def\isoquinolinevi{%
 \@ifnextchar[{\@isoquinolinevi[@}{\@isoquinolinevi[acfhk]}}
\def\@isoquinolinevi[#1]#2{%
\iforigpt \typeout{command `isoquinolinevi' %
 is based on `decaheterovi'.}\fi%
\decaheterovi[#1]{2==N}{#2}}%
\def\isoquinolinevb{%
 \@ifnextchar[{\@isoquinolinevb[@}{\@isoquinolinevb[acfhk]}}
\def\@isoquinolinevb[#1]#2{%
\iforigpt \typeout{command `isoquinolinevb' %
 is based on `decaheterovi'.}\fi%
\decaheterovb[#1]{2==N}{#2}}%
\def\isoquinolinevt{%
 \@ifnextchar[{\@isoquinolinevt[@}{\@isoquinolinevt[acfhk]}}
\def\@isoquinolinevt[#1]#2{%
\iforigpt \typeout{command `isoquinolinevt' %
 is based on `decaheterovt'.}\fi%
\decaheterovt[#1]{2==N}{#2}}%
\def\quinoxalinev{%
 \@ifnextchar[{\@quinoxalinev[@}{\@quinoxalinev[acfhk]}}
\def\@quinoxalinev[#1]#2{%
\iforigpt \typeout{command `quinoxalinev' %
 is based on `decaheterov'.}\fi%
\decaheterov[#1]{1==N;4==N}{#2}}
\def\quinoxalinevi{%
 \@ifnextchar[{\@quinoxalinevi[@}{\@quinoxalinevi[acfhk]}}
\def\@quinoxalinevi[#1]#2{%but v--->vi 2013/03/22
\iforigpt \typeout{command `quinoxalinevi' %
 is based on `decaheterovi'.}\fi%
\decaheterovi[#1]{1==N;4==N}{#2}}
\def\quinoxalinevb{%
 \@ifnextchar[{\@quinoxalinevb[@}{\@quinoxalinevb[acfhk]}}
\def\@quinoxalinevb[#1]#2{%
\iforigpt \typeout{command `quinoxalinevb' %
 is based on `decaheterovb'.}\fi%
\decaheterovb[#1]{1==N;4==N}{#2}}
\def\quinoxalinevt{%
 \@ifnextchar[{\@quinoxalinevt[@}{\@quinoxalinevt[acfhk]}}
\def\@quinoxalinevt[#1]#2{%
\iforigpt \typeout{command `quinoxalinevt' %
 is based on `decaheterovt'.}\fi%
\decaheterovt[#1]{1==N;4==N}{#2}}
\def\quinazolinev{%
 \@ifnextchar[{\@quinazolinev[@}{\@quinazolinev[acfhk]}}
\def\@quinazolinev[#1]#2{%
\iforigpt \typeout{command `quinazolinev' %
 is based on `decaheterov'.}\fi%
\decaheterov[#1]{1==N;3==N}{#2}}
\def\quinazolinevi{%
 \@ifnextchar[{\@quinazolinevi[@}{\@quinazolinevi[acfhk]}}
\def\@quinazolinevi[#1]#2{%
\iforigpt \typeout{command `quinazolinevi' %
 is based on `decaheterovi'.}\fi%
\decaheterovi[#1]{1==N;3==N}{#2}}
\def\quinazolinevb{%
 \@ifnextchar[{\@quinazolinevb[@}{\@quinazolinevb[acfhk]}}
\def\@quinazolinevb[#1]#2{%
\iforigpt \typeout{command `quinazolinevb' %
 is based on `decaheterovb'.}\fi%
\decaheterovb[#1]{1==N;3==N}{#2}}
\def\quinazolinevt{%
 \@ifnextchar[{\@quinazolinevt[@}{\@quinazolinevt[acfhk]}}
\def\@quinazolinevt[#1]#2{%
\iforigpt \typeout{command `quinazolinevt' %
 is based on `decaheterovt'.}\fi%
\decaheterovt[#1]{1==N;3==N}{#2}}
\def\cinnolinev{%
 \@ifnextchar[{\@cinnolinev[@}{\@cinnolinev[acfhk]}}
\def\@cinnolinev[#1]#2{%
\iforigpt \typeout{command `cinnolinev' %
 is based on `decaheterov'.}\fi%
\decaheterov[#1]{1==N;2==N}{#2}}
\def\cinnolinevi{%
 \@ifnextchar[{\@cinnolinevi[@}{\@cinnolinevi[acfhk]}}
\def\@cinnolinevi[#1]#2{%
\iforigpt \typeout{command `cinnolinevi' %
 is based on `decaheterovi'.}\fi%
\decaheterovi[#1]{1==N;2==N}{#2}}
\def\cinnolinevb{%
 \@ifnextchar[{\@cinnolinevb[@}{\@cinnolinevb[acfhk]}}
\def\@cinnolinevb[#1]#2{%
\iforigpt \typeout{command `cinnolinevb' %
 is based on `decaheterovb'.}\fi%
\decaheterovb[#1]{1==N;2==N}{#2}}
\def\cinnolinevt{%
 \@ifnextchar[{\@cinnolinevt[@}{\@cinnolinevt[acfhk]}}
\def\@cinnolinevt[#1]#2{%
\iforigpt \typeout{command `cinnolinevt' %
 is based on `decaheterovt'.}\fi%
\decaheterovt[#1]{1==N;2==N}{#2}}
\def\pteridinev{\@ifnextchar[{\@pteridinev[@}{\@pteridinev[acfhk]}}
\def\@pteridinev[#1]#2{%
\iforigpt \typeout{command `pteridinev' %
 is based on `decaheterov'.}\fi%
\decaheterov[#1]{1==N;3==N;5==N;8==N}{#2}}
\def\pteridinevi{\@ifnextchar[{\@pteridinevi[@}{\@pteridinevi[acfhk]}}
\def\@pteridinevi[#1]#2{%
\iforigpt \typeout{command `pteridinevi' %
 is based on `decaheterovi'.}\fi%
\decaheterovi[#1]{1==N;3==N;5==N;8==N}{#2}}
\def\pteridinevb{\@ifnextchar[{\@pteridinevb[@}{\@pteridinevb[acfhk]}}
\def\@pteridinevb[#1]#2{%
\iforigpt \typeout{command `pteridinevb' %
 is based on `decaheterovb'.}\fi%
\decaheterovb[#1]{1==N;3==N;5==N;8==N}{#2}}
\def\pteridinevt{\@ifnextchar[{\@pteridinevt[@}{\@pteridinevt[acfhk]}}
\def\@pteridinevt[#1]#2{%
\iforigpt \typeout{command `pteridinevt' %
 is based on `decaheterovt'.}\fi%
\decaheterovt[#1]{1==N;3==N;5==N;8==N}{#2}}
\def\nonaheterov{\@ifnextchar({\@nona@heterov(@}{\@nona@heterov(@)}}
\def\@nona@heterov(#1){\@ifnextchar[{\@nona@@heterov(#1)[@}%
{\@nona@@heterov(#1)[@]}}
\def\@nona@@heterov(#1)[#2]#3#4{\@ifnextchar[%
{\@nonaheterov(#1)[#2]{#3}{#4}[@}%
{\@nonaheterov(#1)[#2]{#3}{#4}[@]}}
\def\@nonaheterov(#1)[#2]#3#4[#5]{%
\iniflag\iniatom%
\test@vertix@nonav{#3}%
\@reset@ylsw%
\ylposition{#4}{5}{1}{5}{-1}% %substituents on 1 to 3
\if@ylsw \ifx\@@ylii\empty\relax
\def\@@ylii{-342}\def\@@yli{0}\fi
\else
{\let\ddd=\eee\let\eee=\fff\let\fff=\gggA
\ylposition{#4}{11}{3}{7}{-1}% %substituents on 5 to 7
}%
\fi
\if@ylsw \ifx\@@ylii\empty\relax
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{\let\aaa=\hhh
\ylposition{#4}{-3}{0}{2}{0}%%substituent on 4
}%
\fi
\if@ylsw \ifx\@@ylii\empty\relax
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@iclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-8}{7}%   %9 %for 7a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty\relax
\def\@@ylii{-171}\def\@@yli{-103}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@jclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-7}{1}%   %8 for 3a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty\relax
\def\@@ylii{-171}\def\@@yli{-303}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(1200,880)(-\shiftii,-\shifti){nonaheterov}%2002/4/30 by S. Fujita
\begingroup
\resetbdsw%
\@bond@@omit{#5}%
{\let\fff=\jjj \let\eee=\iii%
\Put@Direct(342,0){\set@skel@bond{#1}{a}{c}}%
  % bond between 1 and 2 \@aaa -> \skbondc etc
\Put@Direct(342,0){\set@skel@bond{#1}{b}{b}}%
  % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(342,0){\set@skel@longbond{#1}{c}{skbondhoriz}}%
  % bond between 3 and 3a \@ccc -> \skbondhoriz etc
\Put@Direct(342,0){\set@skel@bond{#1}{j}{e}}%
  % bond between 3a and 7a \@jjj -> \skbonde etc
\Put@Direct(342,0){\set@skel@bond{#1}{i}{d}}%
  % bond between 7a and 1 \@iii -> \skbondd etc
}%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA%
 \let\ccc=\iii\let\bbb=\jjj%
\set@skel@bond{#1}{d}{a}% bond between 3a and 4 \@ddd -> \skbonda etc
\set@skel@bond{#1}{h}{c}% bond between 7 and 7a \@hhh -> \skbondc etc
\set@skel@bond{#1}{g}{d}% bond between 6 and 7 \@ggg -> \skbondd etc
\set@skel@bond{#1}{f}{e}% bond between 5 and 6 \@fff -> \skbonde etc
\set@skel@bond{#1}{e}{f}% bond between 4 and 5 \@eee -> \skbondf etc
}%
\endgroup
\@tfor\member:=#2\do{%
\if\member r\relax%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA%
 \let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 3a and 7a
 \Put@Direct(0,0){\bondf}% bond between 4 and 5
 \Put@Direct(0,0){\bondd}% bond between 6 and 7
}%
\else\if\member l\relax%
\else\if\member a\relax%
 \Put@Direct(342,0){\bondc}% bond between 3 and 4
\else\if\member b\relax%
 \Put@Direct(342,0){\bondb}% bond between 2 and 3
\else\if\member c\relax%
 \Put@Direct(342,0){\bondhoriz}% bond between 3 and 3a
\else\if\member d\relax%
{\let\aaa=\hhh \let\bbb=\jjj%
 \Put@Direct(0,0){\bonda}% bond between 4 and 3a
}%
\else\if\member e\relax%
{\let\aaa=\hhh \let\fff=\gggA%
 \Put@Direct(0,0){\bondf}% bond between 4 and 5
}%
\else\if\member f\relax%
{\let\eee=\fff \let\fff=\gggA%
 \Put@Direct(0,0){\bonde}% bond between 5 and 6
}%
\else\if\member g\relax%
{\let\ddd=\eee \let\eee=\fff%
 \Put@Direct(0,0){\bondd}% bond between 6 and 7
}%
\else\if\member h\relax%
{\let\ccc=\iii \let\ddd=\eee%
 \Put@Direct(0,0){\bondc}% bond between 7 and 7a
}%
\else\if\member i\relax%
{\let\eee=\iii%
 \Put@Direct(342,0){\bondd}% bond between 1 and 7a
}%
\else\if\member j\relax%
{\let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 7a and 3a
}%
\else\if\member J\relax%
{\let\eee=\iii\let\fff=\jjj%
 \Put@Direct(342,0){\bonde}% bond between 7a and 3a
}%
\else\if\member A\relax%left aromatic circle
  \Put@oCircle(0,203){240}%               %circle
\else\if\member B\relax%left aromatic circle
  \Put@oCircle(342,173){180}%               %circle 1993/11/20 S.Fujita
\else
 \expandafter\twoCH@@R\member//%
  \def\aax{7a}\def\aay{3a}%
      \if\@@tmpa 1\relax%
        \putratom{304}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 2\relax%
        \putratom{402}{120}{\@@tmpb}%      % right type
      \else\if\@@tmpa 3\relax%
        \putratom{402}{253}{\@@tmpb}%      % right type
      \else\if\@@tmpa 4\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\if\@@tmpa 5\relax%
        \putlatom{-60}{120}{\@@tmpb}%      % left type
      \else\if\@@tmpa 6\relax%
        \putlatom{-60}{253}{\@@tmpb}%      % left type
      \else\if\@@tmpa 7\relax%
        \putratom{-38}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 8\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aax\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aay\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \else\if\@@tmpa 9\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
   \expandafter\twoCH@R\member//%
   \set@fusion@nonav
\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\fi\fi\fi\fi\fi\fi%
}%
\iniflag\iniatom%
\@tmpclipfalse
\Put@Direct(0,0){\set@hetatom@sixv{#3}{11}{3}{7}{-1}%
 \@gclipfalse \if@fclip \@gcliptrue \fi%
 \@fclipfalse \if@eclip \@fcliptrue \fi%
 \@eclipfalse \if@clip \@ecliptrue \fi%
 \@clipfalse%2006/9/5added
\storeclipinfo
}%substituents on 5 to 7
\Put@Direct(342,0){\set@hetatom@sixv{#3}{5}{1}{5}{-1}%
\storeclipinfo
}% %substituents on 1 to 3
\Put@Direct(0,0){\set@hetatom@sixv{#3}{-3}{0}{2}{0}%
 \@hclipfalse \if@aclip \@hcliptrue \fi%
\storeclipinfo
}%%substituent on 4
\Put@Direct(0,0){\set@vrtx@nonafusev{#3}%
  \@tmpclipfalse
  \if@iclip \@tmpcliptrue \fi
  \if@jclip \@icliptrue \else \@iclipfalse \fi
  \if@tmpclip \@jcliptrue \else \@jclipfalse \fi
\storeclipinfo
%%%====\clipinfo====%%%2006/9/5test
}% fused positions
\developclipinfo
\Put@Direct(342,0){\setsixringv{#4}{5}{1}{5}{-1}}% %substituents on 1 to 3
{\@clipfalse \if@eclip \@cliptrue \fi%      %substituents on 5 to 7
 \@eclipfalse \if@fclip \@ecliptrue \fi%
 \@fclipfalse \if@gclip \@fcliptrue \fi%
\Put@Direct(0,0){\setsixringv{#4}{11}{3}{7}{-1}}%
}%
{\@aclipfalse \if@hclip \@acliptrue \fi%    %substituent on 4
\Put@Direct(0,0){\setsixringv{#4}{-3}{0}{2}{0}}%
}%
{\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \Put@Direct(171,103){\setatombond{#4}{-8}{7}}%    %9 for 7a position
}%
{\@clipfusefalse \if@jclip \@clipfusetrue \fi%
  \Put@Direct(171,303){\setatombond{#4}{-7}{1}}%   %8 for 3a position
}%
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \nonaheterov macro
\def\test@vertix@nonav#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa%
 \or%
   \if\@tmpb s\relax\def\ddd{}\else\def\ddd{@}\fi
 \or%2
   \if\@tmpb s\relax\def\ccc{}\else\def\ccc{@}\fi
 \or%3%
   \if\@tmpb a\relax%
     \def\jjj{@}%3a
   \else\if\@tmpb s\relax%
     \def\bbb{}%3
   \else\if\@tmpb h\relax%
     \def\bbb{@}%3
   \else\ifx\@tmpb\empty\relax%
     \def\bbb{@}%3
   \fi\fi\fi\fi%
 \or%4
   \if\@tmpb s\relax\def\hhh{}\else\def\hhh{@}\fi
 \or%5
   \if\@tmpb s\relax\def\gggA{}\else\def\gggA{@}\fi
 \or%6
   \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi
 \or%7
   \if\@tmpb a%
     \xdef\iii{@}%7a
   \else\if\@tmpb s\relax%
     \xdef\eee{}%7s
   \else\if\@tmpb h\relax%
     \xdef\eee{@}%7h
   \else\ifx\@tmpb\empty\relax%
     \xdef\eee{@}%7
   \fi\fi\fi\fi%
\or%8 (= 3a)
   \if\@tmpb s\relax\def\jjj{}\else\def\jjj{@}\fi
\or%9 (= 7a)
   \if\@tmpb s\relax\def\iii{}\else\def\iii{@}\fi
\fi\fi}}% end of \test@vertix@nonav
\def\set@vrtx@nonafusev#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty \relax\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa\or\or
 \or%%%%3
   \if\@tmpb a\relax%
     \@icliptrue%20001/06/20 by S. Fujita
     \putlatom{207}{280}{\@memberb}% % left type
   \else\relax
   \fi
 \or\or\or
 \or%7
   \if\@tmpb a\relax%
     \@jcliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{65}{\@memberb}%  % left type
   \else\relax
   \fi
\or%8 (= 3a)
     \@icliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{280}{\@memberb}% % left type
\or%9 (= 7a)
     \@jcliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{65}{\@memberb}%  % left type
\fi\fi}%
}% end of the macro \set@vrtx@nonafusev
\def\nonaheterovi{\@ifnextchar({\@nona@heterovi(@}{\@nona@heterovi(@)}}
\def\@nona@heterovi(#1){\@ifnextchar[{\@nona@@heterovi(#1)[@}%
{\@nona@@heterovi(#1)[@]}}
\def\@nona@@heterovi(#1)[#2]#3#4{\@ifnextchar[%
{\@nonaheterovi(#1)[#2]{#3}{#4}[@}%
{\@nonaheterovi(#1)[#2]{#3}{#4}[@]}}
\def\@nonaheterovi(#1)[#2]#3#4[#5]{%
\iniflag\iniatom%initialize
\test@vertix@nonavi{#3}%
\@reset@ylsw%
\ylposition{#4}{0}{0}{4}{0}% %substituents on 1 to 3
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-342}\def\@@yli{0}\fi
\else
{\let\ddd=\eee\let\eee=\fff\let\fff=\gggA
\ylposition{#4}{0}{3}{7}{0}%%substituents on 4 to 6
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{\let\aaa=\hhh
\ylposition{#4}{-6}{0}{2}{0}%%substituent on 7
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@iclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-7}{7}%   %8 for 3a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-103}\fi
\else
{%
\clipdetection%
\@clipfusefalse \if@jclip \@clipfusetrue \fi%
\ylatombondposition{#4}{-8}{1}%  %9 for 7a position
}%
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{-171}\def\@@yli{-303}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(1200,880)(-\shiftii,-\shifti){nonaheterovi}%2002/4/30 by S. Fujita
\begingroup
\resetbdsw%
\@bond@@omit{#5}%
{\let\fff=\jjj \let\eee=\iii%
\Put@Direct(342,0){\set@skel@bond{#1}{a}{a}}%
  % bond between 1 and 2 \@aaa -> \skbonda etc
\Put@Direct(342,0){\set@skel@bond{#1}{b}{b}}%
  % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(342,0){\set@skel@longbond{#1}{c}{skbondhorizi}}%
  % bond between 3 and 3a \@ccc -> \skbondhoriz etc
\Put@Direct(342,0){\set@skel@bond{#1}{j}{e}}%
  % bond between 3a and 7a \@jjj -> \skbonde etc
\Put@Direct(342,0){\set@skel@bond{#1}{i}{f}}%
  % bond between 7a and 1 \@iii -> \skbondf etc
}%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA%
 \let\ccc=\iii\let\bbb=\jjj%
\set@skel@bond{#1}{h}{a}% bond between 7a and 7 \@hhh -> \skbonda etc
\set@skel@bond{#1}{d}{c}% bond between 3a and 4 \@ddd -> \skbondc etc
\set@skel@bond{#1}{e}{d}% bond between 4 and 5 \@eee -> \skbondd etc
\set@skel@bond{#1}{f}{e}% bond between 5 and 6 \@fff -> \skbonde etc
\set@skel@bond{#1}{g}{f}% bond between 6 and 7 \@ggg -> \skbondf etc
}%
\endgroup
\@tfor\member:=#2\do{%
\if\member r\relax%
{\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA
 \let\ccc=\iii\let\bbb=\jjj
 \Put@Direct(0,0){\bondb}% bond between 3a and 7a
 \Put@Direct(0,0){\bondf}% bond between 6 and 7
 \Put@Direct(0,0){\bondd}% bond between 4 and 5
}%
\else\if\member l\relax%
\else\if\member a\relax%
 \Put@Direct(342,0){\bonda}% bond between 1 and 2
\else\if\member b\relax%
 \Put@Direct(342,0){\bondb}% bond between 2 and 3
\else\if\member c\relax%
 \Put@Direct(342,0){\bondhorizi}% bond between 3 and 3a
\else\if\member d\relax%
{\let\ccc=\iii \let\ddd=\eee%
 \Put@Direct(0,0){\bondc}% bond between 4 and 3a
}%
\else\if\member e\relax%
{\let\ddd=\eee\let\eee=\fff%
 \Put@Direct(0,0){\bondd}% bond between 4 and 5
}%
\else\if\member f\relax%
{\let\eee=\fff \let\fff=\gggA%
 \Put@Direct(0,0){\bonde}% bond between 5 and 6
}%
\else\if\member g\relax%
{\let\aaa=\hhh \let\fff=\gggA%
 \Put@Direct(0,0){\bondf}% bond between 7 and 6
}%
\else\if\member h\relax%
{\let\aaa=\hhh \let\bbb=\jjj%
 \Put@Direct(0,0){\bonda}% bond between 7 and 7a
}%
\else\if\member i\relax%
{\let\fff=\jjj%
 \Put@Direct(342,0){\bondf}% bond between 1 and 7a
}%
\else\if\member j\relax%
{\let\ccc=\iii\let\bbb=\jjj%
 \Put@Direct(0,0){\bondb}% bond between 7a and 3a
}%
\else\if\member J\relax%
{\let\eee=\iii\let\fff=\jjj%
 \Put@Direct(342,0){\bonde}% bond between 7a and 3a
}%
\else\if\member A\relax%left aromatic circle
  \Put@oCircle(0,203){240}%               %circle
\else\if\member B\relax%left aromatic circle
  \Put@oCircle(342,233){180}%               %circle 1993/11/20 S.Fujita
\else
 \expandafter\twoCH@@R\member//%
  \def\aax{7a}\def\aay{3a}%
      \if\@@tmpa 1\relax%
        \putratom{304}{282}{\@@tmpb}%       % right type
      \else\if\@@tmpa 3\relax%
        \putratom{402}{120}{\@@tmpb}%      % right type
      \else\if\@@tmpa 2\relax%
        \putratom{402}{253}{\@@tmpb}%      % right type
      \else\if\@@tmpa 7\relax%
        \putratom{-38}{282}{\@@tmpb}%      % right type
      \else\if\@@tmpa 6\relax%
        \putlatom{-60}{120}{\@@tmpb}%      % left type
      \else\if\@@tmpa 5\relax%
        \putlatom{-60}{253}{\@@tmpb}%      % left type
      \else\if\@@tmpa 4\relax%
        \putratom{-38}{68}{\@@tmpb}%       % right type
      \else\if\@@tmpa 9\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aax\relax%
        \putratom{60}{253}{\@@tmpb}%       % right type
      \else\ifx\@@tmpa\aay\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \else\if\@@tmpa 8\relax%
        \putratom{60}{120}{\@@tmpb}%       % right type
      \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
   \expandafter\twoCH@R\member//%
   \set@fusion@nonavi
\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\fi\fi\fi\fi\fi\fi%
}%
\iniflag
\Put@Direct(342,0){\set@hetatom@sixv{#3}{0}{0}{4}{0}%
  \@xclipfalse \if@aclip \@xcliptrue \@aclipfalse\fi%avoid conflict position 7 2013/03/24
\storeclipinfo
}% %substituents on 1 to 3
\developclipinfo
\Put@Direct(0,0){\set@hetatom@sixv{#3}{0}{3}{7}{0}%
   \@gclipfalse \if@fclip \@gcliptrue \fi%
   \@fclipfalse \if@eclip \@fcliptrue \fi%
   \@eclipfalse \if@clip \@ecliptrue \fi
\storeclipinfo
}%substituents on 4 to 6
\developclipinfo
\Put@Direct(0,0){\set@hetatom@sixv{#3}{-6}{0}{2}{0}%
  \@hclipfalse \if@aclip \@hcliptrue \fi
\storeclipinfo
}%%substituent on 7
\developclipinfo
\Put@Direct(0,0){\set@vrtx@nonafusevi{#3}%
\storeclipinfo
}% fused positions
\developclipinfo
{%
\@aclipfalse \if@xclip \@acliptrue \fi%   %avoid conflict 2013/3/24
\Put@Direct(342,0){\setsixringv{#4}{0}{0}{4}{0}}% %substituents on 1 to 3
}%
{\@clipfalse \if@eclip \@cliptrue \fi%     %substituents on 4 to 6
 \@eclipfalse \if@fclip \@ecliptrue \fi%
 \@fclipfalse \if@gclip \@fcliptrue \fi%
\Put@Direct(0,0){\setsixringv{#4}{0}{3}{7}{0}}%
}%
{\@aclipfalse \if@hclip \@acliptrue \fi%   %substituent on 7
\Put@Direct(0,0){\setsixringv{#4}{-6}{0}{2}{0}}%
}%
{\@clipfusefalse \if@iclip \@clipfusetrue \fi%
 \Put@Direct(171,103){\setatombond{#4}{-7}{7}}%   %8 for 3a position
}%
{\@clipfusefalse \if@jclip \@clipfusetrue \fi%
  \Put@Direct(171,303){\setatombond{#4}{-8}{1}}%  %9 for 7a position
}%
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \nonaheterovi macro
\def\test@vertix@nonavi#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa%
 \or%
   \if\@tmpb s\relax\def\aaa{}\else\def\aaa{@}\fi
 \or%2
   \if\@tmpb s\relax\def\bbb{}\else\def\bbb{@}\fi
 \or%3%
   \if\@tmpb a\relax%
     \def\iii{@}%3a
   \else\if\@tmpb s\relax%
     \def\ccc{}%3
   \else\if\@tmpb h\relax%
     \def\ccc{@}%3
   \else\ifx\@tmpb\empty\relax%
     \def\ccc{@}%3
   \fi\fi\fi\fi%
 \or%4
   \if\@tmpb s\relax\def\eee{}\else\def\eee{@}\fi
 \or%5
   \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi
 \or%6
   \if\@tmpb s\relax\def\gggA{}\else\def\gggA{@}\fi
 \or%7
   \if\@tmpb a%
     \xdef\jjj{@}%7a
   \else\if\@tmpb s\relax%
     \xdef\hhh{}%7s
   \else\if\@tmpb h\relax%
     \xdef\hhh{@}%7h
   \else\ifx\@tmpb\empty\relax%
     \xdef\hhh{@}%7
   \fi\fi\fi\fi%
\or%8 (= 3a)
   \if\@tmpb s\relax\def\iii{}\else\def\iii{@}\fi
\or%9 (= 7a)
   \if\@tmpb s\relax\def\jjj{}\else\def\jjj{@}\fi
\fi\fi}}
\def\set@vrtx@nonafusevi#1{%
\@forsemicol\member:=#1\do{%
\ifx\member\empty\else%
\expandafter\@m@mb@r\member;\relax%
\expandafter\twoch@r\@membera{}%
\ifcase\@tmpa\or\or
 \or%%%%3
   \if\@tmpb a\relax%
     \@icliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{65}{\@memberb}%  % left type
   \else\relax
   \fi
 \or\or\or
 \or%7
   \if\@tmpb a\relax%
     \@jcliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{280}{\@memberb}% % left type
   \else\relax
   \fi
\or%8 (= 3a)
     \@icliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{65}{\@memberb}%  % left type
\or%9 (= 7a)
     \@jcliptrue%%20001/06/20 by S. Fujita
     \putlatom{207}{280}{\@memberb}% % left type
\fi\fi}%
}% end of the macro \set@vrtx@nonafusevi
\def\purinev{\@ifnextchar[{\@purinev[@}{\@purinev[ra]}}
\def\@purinev[#1]#2{%
\iforigpt \typeout{command `purinev' %
  is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{1==N;3==N;5==N;7==N}{#2}}
\def\purinevi{\@ifnextchar[{\@purinevi[@}{\@purinevi[ra]}}
\def\@purinevi[#1]#2{%
\iforigpt \typeout{command `purinevi' %
  is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{1==N;3==N;5==N;7==N}{#2}}
\def\indolev{\@ifnextchar[{\@indolev[@}{\@indolev[rb]}}
\def\@indolev[#1]#2{%
\iforigpt \typeout{command `indolev' %
 is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{1==N}{#2}}
\def\indolevi{\@ifnextchar[{\@indolevi[@}{\@indolevi[rb]}}
\def\@indolevi[#1]#2{%
\iforigpt \typeout{command `indolevi' %
 is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{1==N}{#2}}
\def\indolizinev{%
  \@ifnextchar[{\@indolizinev[@}{\@indolizinev[aceg]}}
\def\@indolizinev[#1]#2{%
\iforigpt \typeout{command `indolizinev' %
  is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{7a==N}{#2}}
\def\indolizinevi{%
  \@ifnextchar[{\@indolizinevi[@}{\@indolizinevi[aceg]}}
\def\@indolizinevi[#1]#2{%
\iforigpt \typeout{command `indolizinevi' %
  is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{7a==N}{#2}}
\def\isoindolev{\@ifnextchar[{\@isoindolev[@}{\@isoindolev[cegi]}}
\def\@isoindolev[#1]#2{%
\iforigpt \typeout{command `isoindolev' %
  is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{2==N}{#2}}
\def\isoindolevi{\@ifnextchar[{\@isoindolevi[@}{\@isoindolevi[cegi]}}
\def\@isoindolevi[#1]#2{%
\iforigpt \typeout{command `isoindolevi' %
  is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{2==N}{#2}}
\def\benzofuranev{%
 \@ifnextchar[{\@benzofuranev[@}{\@benzofuranev[rb]}}
\def\@benzofuranev[#1]#2{%
\iforigpt \typeout{command `benzofuranev' %
  is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{1==O}{#2}}
\def\benzofuranevi{%
 \@ifnextchar[{\@benzofuranevi[@}{\@benzofuranevi[rb]}}
\def\@benzofuranevi[#1]#2{%
\iforigpt \typeout{command `benzofuranevi' %
  is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{1==O}{#2}}
\def\isobenzofuranev{\@ifnextchar[{\@isobenzofuranev[@}%
 {\@isobenzofuranev[cegi]}}
\def\@isobenzofuranev[#1]#2{%
\iforigpt \typeout{command `isobenzofuranev' %
  is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{2==O}{#2}}
\def\isobenzofuranevi{\@ifnextchar[{\@isobenzofuranevi[@}%
 {\@isobenzofuranevi[cegi]}}
\def\@isobenzofuranevi[#1]#2{%
\iforigpt \typeout{command `isobenzofuranevi' %
  is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{2==O}{#2}}
\def\benzoxazolev{%
 \@ifnextchar[{\@benzoxazolev[@}{\@benzoxazolev[rb]}}
\def\@benzoxazolev[#1]#2{%
\iforigpt \typeout{command `benzoxazolev' %
  is based on `nonaheterov'.}\fi%
\nonaheterov[#1]{1==O;3==N}{#2}}
\def\benzoxazolevi{%
 \@ifnextchar[{\@benzoxazolevi[@}{\@benzoxazolevi[rb]}}
\def\@benzoxazolevi[#1]#2{%
\iforigpt \typeout{command `benzoxazolevi' %
 is based on `nonaheterovi'.}\fi%
\nonaheterovi[#1]{1==O;3==N}{#2}}
\def\sixunitv{\@ifnextchar[{\@sixunitv[@}{\@sixunitv[@]}}
\def\@sixunitv[#1]#2#3#4{\sixheterov[#1]{#2}{#3}[#4]}
\def\fiveunitv{\@ifnextchar[{\@fiveunitv[@}{\@fiveunitv[r]}}
\def\@fiveunitv[#1]#2#3#4{\fiveheterov[#1]{#2}{#3}[#4]}
\def\fiveunitvi{\@ifnextchar[{\@fiveunitvi[@}{\@fiveunitvi[r]}}
\def\@fiveunitvi[#1]#2#3#4{\fiveheterovi[#1]{#2}{#3}[#4]}
\def\bondshoriz{%
 \begin{sfpicture}(200,300)(0,0)
  \ifx\fff\empty%
    \ifx\bbb\empty%
     \Put@Line(-138,270)(1,0){134}%double bond 4-3
    \else%
     \Put@Line(-138,270)(1,0){115}%double bond 4-3
    \fi%
  \else%
    \ifx\bbb\empty%
     \Put@Line(-120,270)(1,0){115}%double bond 4-3
    \else%
     \Put@Line(-120,270)(1,0){96}%double bond 4-3
    \fi%
  \fi\end{sfpicture}}%
\def\bondshorizi{%
 \begin{sfpicture}(200,300)(0,0)
  \ifx\eee\empty%
    \ifx\ccc\empty%
     \Put@Line(-138,136)(1,0){134}%double bond 4-3
    \else%%
     \Put@Line(-138,136)(1,0){115}%double bond 4-3
    \fi%
  \else%
    \ifx\ccc\empty%
     \Put@Line(-120,136)(1,0){115}%double bond 4-3
    \else%
     \Put@Line(-120,136)(1,0){96}%double bond 4-3
    \fi%
  \fi\end{sfpicture}}%
\def\skbondshoriz{%
 \begin{sfpicture}(200,300)(0,0)
  \ifx\fff\empty%
    \ifx\bbb\empty%
     \Put@Line(-171,303)(1,0){200}%bond 4-3
    \else%
     \Put@Line(-171,303)(1,0){158}%bond 4-3
    \fi%
  \else%
    \ifx\bbb\empty%
     \Put@Line(29,303)(-1,0){158}%bond 4-3
    \else%
     \Put@Line(-129,303)(1,0){116}%bond 4-3
    \fi%
  \fi\end{sfpicture}}%
\def\skbondshorizi{%
 \begin{sfpicture}(200,300)(0,0)
  \ifx\eee\empty%
    \ifx\ccc\empty%
     \Put@Line(-171,103)(1,0){200}%bond 4-3
    \else%
     \Put@Line(-171,103)(1,0){158}%bond 4-3
    \fi%
  \else%
    \ifx\ccc\empty%
     \Put@Line(29,103)(-1,0){158}%bond 4-3
    \else%
     \Put@Line(-129,103)(1,0){116}%bond 4-3
    \fi%
  \fi\end{sfpicture}}%
\def\dotskbondshoriz{%
 \begin{sfpicture}(200,300)(0,0)
  \ifx\fff\empty%
    \ifx\bbb\empty%
       \dotorline(-171,303)(1,0){200}/(-171,303)(29,303)%
    \else%
       \dotorline(-171,303)(1,0){158}/(-171,303)(-29,303)%
    \fi%
  \else%
    \ifx\bbb\empty%
       \dotorline(29,303)(-1,0){158}/(29,303)(-129,303)%
    \else%
       \dotorline(-129,303)(1,0){116}/(-129,303)(-13,303)%
    \fi%
  \fi\end{sfpicture}}%
\def\dotskbondshorizi{%
 \begin{sfpicture}(200,300)(0,0)
  \ifx\eee\empty%
    \ifx\ccc\empty%
       \dotorline(-171,103)(1,0){200}/(-171,103)(29,103)%
    \else%
       \dotorline(-171,103)(1,0){158}/(-171,103)(-29,103)%
    \fi%
  \else%
    \ifx\ccc\empty%
       \dotorline(29,103)(-1,0){158}/(29,103)(-129,103)%
    \else%
       \dotorline(-129,103)(1,0){116}/(-129,103)(-13,103)%
    \fi%
  \fi\end{sfpicture}}%
\def\fourhetero{\@ifnextchar({\@four@hetero(@}{\@four@hetero(@)}}
\def\@four@hetero(#1){\@ifnextchar[{\@four@@hetero(#1)[@}%
{\@four@@hetero(#1)[@]}}
\def\@four@@hetero(#1)[#2]#3#4{\@ifnextchar[%
{\@fourhetero(#1)[#2]{#3}{#4}[@}%
{\@fourhetero(#1)[#2]{#3}{#4}[@]}}
\def\@fourhetero(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{e}{c}{b}{f}{@}{@}%
\@reset@ylsw%
\ylposition{#4}{5}{1}{4}{-1}% for 2 to 3
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{142}\def\@@yli{0}\fi
\else
\ylposition{#4}{4}{4}{6}{0}% for 1
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\else
\ylposition{#4}{2}{5}{7}{0}% for 4
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{0}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,880)(-571,-137){fourhetero}%
(571,137)(171,-103)%2002/4/30 by S. Fujita
{\resetbdsw%
\@bond@@omit{#5}%
\Put@Direct(0,0){\set@skel@longbond{#1}{a}{skbondshorizi}}%
       % bond between 1 and 2 \@aaa -> \skbondshorizi etc
\Put@Direct(-142,0){\set@skel@bond{#1}{b}{b}}%
       % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(0,0){\set@skel@longbond{#1}{c}{skbondshoriz}}%
      % bond between 3 and 4 \@ccc -> \skbondshoriz etc
\Put@Direct(0,0){\set@skel@bond{#1}{d}{e}}%
     % bond between 4 and 1 \@ddd -> \skbonde etc
}%
\@tfor\member:=#2\do{%
\if\member r\relax%
\else\if\member a\relax \Put@Direct(0,0){\bondshorizi}%
\else\if\member b\relax \Put@Direct(-142,0){\bondb}%
\else\if\member c\relax \Put@Direct(0,0){\bondshoriz}%
\else\if\member d\relax \Put@Direct(0,0){\bonde}%
\else
   \expandafter\twoCH@@R\member//%
    \set@fusionadd@fourv
\fi\fi\fi\fi\fi}%
\Put@Direct(-142,0){\set@hetatom@sixv{#3}{5}{1}{4}{-1}%
\storeclipinfo%added 2001/06/20 by S. Fujita
}% for 2 to 3
\developclipinfo%added 2001/06/20 by S. Fujita
\Put@Direct(0,0){\set@hetatom@sixv{#3}{4}{4}{6}{0}%
\storeclipinfo%added 2001/06/20 by S. Fujita
}% for 1
\developclipinfo%added 2001/06/20 by S. Fujita
\Put@Direct(0,0){\set@hetatom@sixv{#3}{2}{5}{7}{0}%
\storeclipinfo%added 2001/06/20 by S. Fujita
}% for 4
\developclipinfo%added 2001/06/20 by S. Fujita
\Put@Direct(-142,0){\setsixringv{#4}{5}{1}{4}{-1}}% for 2 to 3
\Put@Direct(0,0){\setsixringv{#4}{4}{4}{6}{0}}% for 1
\Put@Direct(0,0){\setsixringv{#4}{2}{5}{7}{0}}% for 4
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \fourhetero macro
\def\set@fusionadd@fourv{%
      \if\@@tmpa 1\relax%
        \putlatom{-200}{120}{\scriptsize \@@tmpb}%       % right type
      \else\if\@@tmpa 2\relax%
        \putratom{60}{120}{\scriptsize \@@tmpb}%        % right type
      \else\if\@@tmpa 3\relax%
        \putratom{60}{233}{\scriptsize \@@tmpb}%        % right type
      \else\if\@@tmpa 4\relax%
        \putlatom{-200}{233}{\scriptsize \@@tmpb}%       % right type
      \else
        \set@fusion@fourv
      \fi\fi\fi\fi%
}%
\def\set@fusion@fourv{%
\if\@@tmpa d\relax%
        \putlratom{-171}{303}{\@@tmpb}%     % bond fused
        \FuseWarning{0}{200}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{d}%
      \else\if\@@tmpa D\relax%
        \putlratom{-171}{103}{\@@tmpb}%     % bond fused
        \FuseWarning{0}{-200}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{D}%
      \else\if\@@tmpa a\relax%
        \putlratom{-173}{103}{\@@tmpb}%     % bond fused
        \FuseWarning{-200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{f}%
      \else\if\@@tmpa A\relax%
        \putlratom{27}{103}{\@@tmpb}%       % bond fused
        \FuseWarning{200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{A}%
      \else\if\@@tmpa b\relax%
        \putlratom{27}{103}{\@@tmpb}%    % bond fused
        \FuseWarning{0}{-200}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{b}%
      \else\if\@@tmpa B\relax%
        \putlratom{27}{303}{\@@tmpb}%    % bond fused
        \FuseWarning{0}{200}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{B}%
      \else\if\@@tmpa c\relax%
        \putlratom{27}{303}{\@@tmpb}%    % bond fused
        \FuseWarning{200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{c}%
      \else\if\@@tmpa C\relax%
        \putlratom{-171}{303}{\@@tmpb}%      % bond fused
        \FuseWarning{-200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{C}%
\fi\fi\fi\fi\fi\fi\fi\fi%
\global\let\FuseWarning=\FuseW@rning%added 2010/10/01
}% end of the macro \set@fusion@fourv
\def\oxetane{\@ifnextchar[{\@oxetane[@}{\@oxetane[]}}
\def\@oxetane[#1]#2{%
\iforigpt \typeout{command `oxetane' %
  is based on `fourhetero'.}\fi%
\fourhetero[#1]{1==O}{#2}}
\def\azetidine{\@ifnextchar[{\@azetidine[@}{\@azetidine[]}}
\def\@azetidine[#1]#2{%
\iforigpt \typeout{command `azetidine' %
  is based on `fourhetero'.}\fi%
\fourhetero[#1]{1==N}{#2}}
\def\thietane{\@ifnextchar[{\@thietane[@}{\@thietane[]}}
\def\@thietane[#1]#2{%
\iforigpt \typeout{command `thietane' %
  is based on `fourhetero'.}\fi%
\fourhetero[#1]{1==S}{#2}}
 \def\bondtria{%
  \ifx\ddd\empty%
   \ifx\bbb\empty%
    \Put@Line(-6,42)(3,5){72}%           %double bond 1-2
   \else%
    \Put@Line(-6,42)(3,5){60}%           %double bond 1-2
   \fi%
  \else%
   \ifx\bbb\empty%
    \Put@Line(6,62)(3,5){60}%            %double bond 1-2
   \else%
    \Put@Line(10,32)(3,5){60}%           %double bond 1-2
   \fi%
  \fi%
}%
 \def\bondtrib{%
  \ifx\ddd\empty%
   \ifx\fff\empty%
    \Put@Line(6,42)(-3,5){72}%           %double bond 1-3
   \else%
    \Put@Line(6,42)(-3,5){60}%           %double bond 1-3
   \fi%
  \else%
   \ifx\fff\empty%
    \Put@Line(-6,62)(-3,5){60}%          %double bond 1-2
   \else%
    \Put@Line(6,42)(-3,5){60}%           %double bond 1-2
   \fi%
  \fi%
 }%
\def\skbondtria{%
 \begin{sfpicture}(200,200)(0,0)
  \ifx\ddd\empty%
    \ifx\bbb\empty%
     \Put@Line(0,0)(3,5){103}%           %bond 1-2
    \else%
     \Put@Line(0,0)(3,5){80}%            %bond 1-2
    \fi%
  \else%
    \ifx\bbb\empty%
     \Put@Line(103,171)(-3,-5){80}%      %bond 1-2
    \else%
     \Put@Line(35,21)(3,5){60}%          %bond 1-2
    \fi%
  \fi\end{sfpicture}}%
\def\skbondtrib{%
 \begin{sfpicture}(200,200)(0,0)
  \ifx\ddd\empty%
    \ifx\fff\empty%
     \Put@Line(0,0)(-3,5){103}%         %bond 1-3
    \else%
     \Put@Line(0,0)(-3,5){80}%          %bond 1-3
    \fi%
  \else%
    \ifx\fff\empty%
     \Put@Line(-103,171)(3,-5){80}%     %bond 1-3
    \else%
     \Put@Line(-35,21)(-3,5){60}%       %bond 1-3
    \fi%
  \fi\end{sfpicture}}%
\def\dotskbondtria{%
 \begin{sfpicture}(200,200)(0,0)
  \ifx\ddd\empty%
    \ifx\bbb\empty%
       \dotorline(0,0)(3,5){103}/(0,0)(103,171)%
    \else%
       \dotorline(0,0)(3,5){80}/(0,0)(80,133)%
    \fi%
  \else%
    \ifx\bbb\empty%
       \dotorline(103,171)(-3,-5){80}/(103,171)(23,38)%
    \else%
       \dotorline(35,21)(3,5){60}/(35,21)(95,121)%
    \fi%
  \fi\end{sfpicture}}%
\def\dotskbondtrib{%
 \begin{sfpicture}(200,200)(0,0)
  \ifx\ddd\empty%
    \ifx\fff\empty%
       \dotorline(0,0)(-3,5){103}/(0,0)(-103,171)%
    \else%
       \dotorline(0,0)(-3,5){80}/(0,0)(-80,133)%
    \fi%
  \else%
    \ifx\fff\empty%
       \dotorline(-103,171)(3,-5){80}/(-103,171)(-23,38)%
    \else%
       \dotorline(-35,21)(-3,5){60}/(-35,21)(-95,121)%
    \fi%
  \fi\end{sfpicture}}%
\def\threehetero{\@ifnextchar({\@three@hetero(@}{\@three@hetero(@)}}
\def\@three@hetero(#1){\@ifnextchar[{\@three@@hetero(#1)[@}%
{\@three@@hetero(#1)[@]}}
\def\@three@@hetero(#1)[#2]#3#4{\@ifnextchar[%
{\@threehetero(#1)[#2]{#3}{#4}[@}%
{\@threehetero(#1)[#2]{#3}{#4}[@]}}
\def\@threehetero(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{d}{b}{f}{@}{@}{@}%
\@reset@ylsw%
\ylposition{#4}{3}{3}{5}{0}%subst 1
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{68}\def\@@yli{0}\fi
\else
\ylposition{#4}{0}{1}{3}{0}%subst 2
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{142}\def\@@yli{132}\fi
\else
\ylposition{#4}{3}{5}{7}{0}%subst 3
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{132}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,580)(-468,-240){threeheterov}%
(468,240)(68,0)%2002/4/30 by S. Fujita
{\resetbdsw%
\@bond@@omit{#5}%
\Put@Direct(-68,0){\set@skel@longbond{#1}{a}{skbondtria}}%
       % bond between 1 and 2 \@aaa -> \skbondtria etc
\Put@Direct(0,-132){\set@skel@longbond{#1}{b}{skbondshoriz}}%
       % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(-68,0){\set@skel@longbond{#1}{c}{skbondtrib}}%
       % bond between 3 and 1 \@ccc -> \skbondtria etc
}%
\@tfor\member:=#2\do{%
\if\member r\relax%
\else\if\member a\relax\Put@Direct(-68,0){\bondtria}%
\else\if\member b\relax\Put@Direct(0,-126){\bondshoriz}%
\else\if\member c\relax\Put@Direct(-68,0){\bondtrib}%
\else\if\member A\relax% aromatic circle
  \Put@oCircle(-70,108){100}%               %circle
\else
   \expandafter\twoCH@@R\member//%
    \set@fusionadd@threev
\fi\fi\fi\fi\fi%
}%
\Put@Direct(-68,0){\set@hetatom@sixv{#3}{3}{3}{5}{0}%
\storeclipinfo
}%subst 1
\developclipinfo
\Put@Direct(-142,-132){\set@hetatom@sixv{#3}{0}{1}{3}{0}%
\storeclipinfo
}%subst 2
\developclipinfo
\Put@Direct(0,-132){\set@hetatom@sixv{#3}{3}{5}{7}{0}%
\storeclipinfo
}%subst 3
\developclipinfo
\Put@Direct(-68,0){\setsixringv{#4}{3}{3}{5}{0}}%subst 1
\Put@Direct(-142,-132){\setsixringv{#4}{0}{1}{3}{0}}%subst 2
\Put@Direct(0,-132){\setsixringv{#4}{3}{5}{7}{0}}%subst 3
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \threehetero macro
\let\threeheterov=\threehetero
\def\set@fusionadd@threev{%
      \if\@@tmpa 0\relax%
        \putratom{-94}{92}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 1\relax%
        \putratom{-94}{60}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 2\relax%
        \putratom{-52}{120}{\scriptsize\@@tmpb}%     % right type
      \else\if\@@tmpa 3\relax%
        \putratom{-126}{126}{\scriptsize\@@tmpb}%    % right type
      \else\if\@@tmpa 4\relax%
        \putratom{-30}{-20}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 5\relax%
        \putratom{52}{110}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 6\relax%
        \putratom{-250}{110}{\scriptsize\@@tmpb}%    % right type
      \else
        \set@fusion@threev
      \fi\fi\fi\fi\fi\fi\fi%
}%
\def\set@fusion@threev{%
\if\@@tmpa b\relax%
        \putlratom{29}{171}{\@@tmpb}%    % bond fused
        \FuseWarning{200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{b}%
      \else\if\@@tmpa B\relax%
        \putlratom{-171}{171}{\@@tmpb}%      % bond fused
        \FuseWarning{-200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{B}%
      \else\if\@@tmpa a\relax%
        \putlratom{-68}{0}{\@@tmpb}%    % bond fused
        \FuseWarning{-103}{-171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{a}%
      \else\if\@@tmpa A\relax%
        \putlratom{29}{171}{\@@tmpb}%    % bond fused
        \FuseWarning{103}{171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{A}%
      \else\if\@@tmpa c\relax%
        \putlratom{-171}{171}{\@@tmpb}%      % bond fused
        \FuseWarning{-103}{171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{c}%
      \else\if\@@tmpa C\relax%
        \putlratom{-68}{0}{\@@tmpb}%    % bond fused
        \FuseWarning{103}{-171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{C}%
\fi\fi\fi\fi\fi\fi%
\global\let\FuseWarning=\FuseW@rning%added 2010/10/01
}% end of the macro \set@fusion@threev
\def\oxiranev{\@ifnextchar[{\@oxiranev[@}{\@oxiranev[]}}
\def\@oxiranev[#1]#2{%
\iforigpt \typeout{command `oxiranev' %
  is based on `threeheterov'.}\fi%
\threeheterov[#1]{1==O}{#2}}
\def\aziridinev{\@ifnextchar[{\@aziridinev[@}{\@aziridinev[]}}
\def\@aziridinev[#1]#2{%
\iforigpt \typeout{command `aziridinev' %
  is based on `threeheterov'.}\fi%
\threeheterov[#1]{1==N}{#2}}
\def\thiiranev{\@ifnextchar[{\@thiiranev[@}{\@thiiranev[]}}
\def\@thiiranev[#1]#2{%
\iforigpt \typeout{command `thiiranev' %
  is based on `threeheterov'.}\fi%
\threeheterov[#1]{1==S}{#2}}
 \def\Bondtria{%
  \ifx\aaa\empty%
   \ifx\ccc\empty%
    \Put@Line(-6,-42)(3,-5){72}%           %double bond 1-2
   \else%
    \Put@Line(-6,-42)(3,-5){60}%           %double bond 1-2
   \fi%
  \else%
   \ifx\ccc\empty%
    \Put@Line(6,-62)(3,-5){60}%            %double bond 1-2
   \else%
    \Put@Line(10,-32)(3,-5){60}%           %double bond 1-2
   \fi%
  \fi%
}%
 \def\Bondtrib{%
  \ifx\aaa\empty%
   \ifx\eee\empty%
    \Put@Line(6,-42)(-3,-5){72}%           %double bond 1-3
   \else%
    \Put@Line(6,-42)(-3,-5){60}%           %double bond 1-3
   \fi%
  \else%
   \ifx\fff\empty%
    \Put@Line(-6,-62)(-3,-5){60}%          %double bond 1-2
   \else%
    \Put@Line(6,-42)(-3,-5){60}%           %double bond 1-2
   \fi%
  \fi%
 }%
\def\skBondtria{%
  \ifx\aaa\empty%
    \ifx\ccc\empty%
     \Put@Line(0,0)(3,-5){103}%           %bond 1-2
    \else%
     \Put@Line(0,0)(3,-5){80}%            %bond 1-2
    \fi%
  \else%
    \ifx\ccc\empty%
     \Put@Line(103,-171)(-3,5){80}%      %bond 1-2
    \else%
     \Put@Line(35,-21)(3,-5){60}%          %bond 1-2
    \fi%
  \fi
}%
\def\skBondtrib{%
  \ifx\aaa\empty%
    \ifx\eee\empty%
     \Put@Line(0,0)(-3,-5){103}%         %bond 1-3
    \else%
     \Put@Line(0,0)(-3,-5){80}%          %bond 1-3
    \fi%
  \else%
    \ifx\eee\empty%
     \Put@Line(-103,-171)(3,5){80}%     %bond 1-3
    \else%
     \Put@Line(-35,-21)(-3,-5){60}%       %bond 1-3
    \fi%
  \fi
}%
\def\dotskBondtria{%
  \ifx\aaa\empty%
    \ifx\ccc\empty%
       \dotorline(0,0)(3,-5){103}/(0,0)(103,-171)%
    \else%
       \dotorline(0,0)(3,-5){80}/(0,0)(80,-133)%
    \fi%
  \else%
    \ifx\ccc\empty%
       \dotorline(103,-171)(-3,5){80}/(103,-171)(23,-38)%
    \else%
       \dotorline(35,-21)(3,-5){60}/(35,-21)(95,-121)%
    \fi%
  \fi
}%
\def\dotskBondtrib{%
  \ifx\aaa\empty%
    \ifx\eee\empty%
       \dotorline(0,0)(-3,-5){103}/(0,0)(-103,-171)%
    \else%
       \dotorline(0,0)(-3,-5){80}/(0,0)(-80,-133)%
    \fi%
  \else%
    \ifx\eee\empty%
       \dotorline(-103,-171)(3,5){80}/(-103,-171)(-23,-38)%
    \else%
       \dotorline(-35,-21)(-3,-5){60}/(-35,-21)(-95,-121)%
    \fi%
  \fi
}%
\def\threeheteroi{\@ifnextchar({\@three@heteroi(@}{\@three@heteroi(@)}}
\def\@three@heteroi(#1){\@ifnextchar[{\@three@@heteroi(#1)[@}%
{\@three@@heteroi(#1)[@]}}
\def\@three@@heteroi(#1)[#2]#3#4{\@ifnextchar[%
{\@threeheteroi(#1)[#2]{#3}{#4}[@}%
{\@threeheteroi(#1)[#2]{#3}{#4}[@]}}
\def\@threeheteroi(#1)[#2]#3#4[#5]{%
\iniatom\iniflag%initialize
\test@vertix@sixv{#3}{a}{c}{e}{@}{@}{@}%
\@reset@ylsw%
\ylposition{#4}{0}{0}{2}{0}%subst 1
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{68}\def\@@yli{406}\fi
\else
\ylposition{#4}{1}{2}{4}{0}%subst 2
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{142}\def\@@yli{275}\fi
\else
\ylposition{#4}{2}{4}{6}{0}%subst 3
\fi
\if@ylsw \ifx\@@ylii\empty
\def\@@ylii{0}\def\@@yli{275}\fi
\fi
\begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/%
(800,580)(-468,-340){threeheterovi}%
(468,340)(68,0)%2002/4/30 by S. Fujita
{\resetbdsw%
\@bond@@omit{#5}%
\Put@Direct(-68,0){\set@skel@longbond{#1}{a}{skBondtria}}%
       % bond between 1 and 2 \@aaa -> \skBondtria etc
\Put@Direct(0,-275){\set@skel@longbond{#1}{b}{skbondshorizi}}%
       % bond between 2 and 3 \@bbb -> \skbondb etc
\Put@Direct(-68,0){\set@skel@longbond{#1}{c}{skBondtrib}}%
       % bond between 3 and 1 \@ccc -> \skBondtrib etc
}%
\@tfor\member:=#2\do{%
\if\member r\relax%
\else\if\member a\relax\Put@Direct(-68,0){\Bondtria}%
\else\if\member b\relax\Put@Direct(0,-274){\bondshorizi}%
\else\if\member c\relax\Put@Direct(-68,0){\Bondtrib}%
\else\if\member A\relax% aromatic circle
  \Put@oCircle(-70,-108){100}%               %circle
\else
   \expandafter\twoCH@@R\member//%
    \set@fusionadd@threevi
\fi\fi\fi\fi\fi%
}%
\Put@Direct(-68,-406){\set@hetatom@sixv{#3}{0}{0}{2}{0}%
\storeclipinfo
}%subst 1
\developclipinfo
\Put@Direct(0,-275){\set@hetatom@sixv{#3}{2}{4}{6}{0}%
\storeclipinfo
}%subst 3
\developclipinfo
\Put@Direct(-142,-275){\set@hetatom@sixv{#3}{1}{2}{4}{0}%
\storeclipinfo
}%subst 2
\developclipinfo
\Put@Direct(-68,-406){\setsixringv{#4}{0}{0}{2}{0}}%subst 1
\Put@Direct(0,-275){\setsixringv{#4}{2}{4}{6}{0}}%subst 3
\Put@Direct(-142,-275){\setsixringv{#4}{1}{2}{4}{0}}%subst 2
\end{ShiftPicEnvB}\iniatom\iniflag}% %end of \threeheteroi macro
\let\threeheterovi=\threeheteroi
\def\set@fusionadd@threevi{%
      \if\@@tmpa 0\relax%
        \putratom{-94}{-120}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 1\relax%
        \putratom{-94}{-80}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 2\relax%
        \putratom{-52}{-150}{\scriptsize\@@tmpb}%     % right type
      \else\if\@@tmpa 3\relax%
        \putratom{-126}{-150}{\scriptsize\@@tmpb}%    % right type
      \else\if\@@tmpa 4\relax%
        \putratom{-30}{0}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 5\relax%
        \putratom{32}{-130}{\scriptsize\@@tmpb}%      % right type
      \else\if\@@tmpa 6\relax%
        \putratom{-230}{-130}{\scriptsize\@@tmpb}%    % right type
      \else
        \set@fusion@threevi
      \fi\fi\fi\fi\fi\fi\fi%
}%
\def\set@fusion@threevi{%
\if\@@tmpa b\relax%
        \putlratom{29}{-171}{\@@tmpb}%    % bond fused
        \FuseWarning{200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{b}%
  \else\if\@@tmpa B\relax%
        \putlratom{-171}{-171}{\@@tmpb}%      % bond fused
        \FuseWarning{-200}{0}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{B}%
  \else\if\@@tmpa a\relax%
        \putlratom{-68}{0}{\@@tmpb}%    % bond fused
        \FuseWarning{-103}{171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{a}%
  \else\if\@@tmpa A\relax%
        \putlratom{29}{-171}{\@@tmpb}%      % bond fused
        \FuseWarning{103}{-171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{A}%
  \else\if\@@tmpa c\relax%
        \putlratom{-171}{-171}{\@@tmpb}%      % bond fused
        \FuseWarning{103}{171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{c}%
  \else\if\@@tmpa C\relax%
        \putlratom{-68}{0}{\@@tmpb}%    % bond fused
        \FuseWarning{-103}{-171}%
          {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{C}%
\fi\fi\fi\fi\fi\fi%
\global\let\FuseWarning=\FuseW@rning%added 2010/10/01
}% end of the macro \set@fusion@threevi
\def\oxiranevi{\@ifnextchar[{\@oxiranevi[@}{\@oxiranevi[]}}
\def\@oxiranevi[#1]#2{%
\iforigpt \typeout{command `oxiranevi' %
  is based on `threeheterovi'.}\fi%
\threeheterovi[#1]{1==O}{#2}}
\def\aziridinevi{\@ifnextchar[{\@aziridinevi[@}{\@aziridinevi[]}}
\def\@aziridinevi[#1]#2{%
\iforigpt \typeout{command `aziridinevi' %
  is based on `threeheterovi'.}\fi%
\threeheterovi[#1]{1==N}{#2}}
\def\thiiranevi{\@ifnextchar[{\@thiiranevi[@}{\@thiiranevi[]}}
\def\@thiiranevi[#1]#2{%
\iforigpt \typeout{command `thiiranevi' %
  is based on `threeheterovi'.}\fi%
\threeheterovi[#1]{1==S}{#2}}
\endinput
%%
%% End of file `hetarom.sty'.
