%% %% This is file `hetaromh.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% hetaromh.dtx (with options: `hetaromh') %% %% 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, 1996 (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.01 Released on August 30, 2004 %% Version 4.02 Released on December 20, 2004 %% Version 4.03b Released on September 5, 2006 %% 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 hetaromh.dtx and hetaromh.ins %% and the derived file hetaromh.sty. %% %% ======================================= %% %% File: hetaromh.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{hetaromh} \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}{}% \@ifundefined{test@vertix@decavi}{\input hetarom.sty\relax}{}% \unitlength=0.1pt% \iniatom% \def\hbonda{% \ifx\aaa\empty% \ifx\bbb\empty% \Put@Line(42,6)(3,5){78}% %double bond 1-2 \else% \Put@Line(42,6)(3,5){62}% %double bond 1-2 \fi% \else% \ifx\bbb\empty% \Put@Line(57,36)(3,5){62}% %double bond 1-2 \else% \Put@Line(57,36)(3,5){62}% %double bond 1-2 \fi\fi}% \def\hbondf{% \ifx\aaa\empty% \ifx\fff\empty% \Put@Line(42,-6)(3,-5){78}% %double bond 1-6 \else% \Put@Line(42,-6)(3,-5){62}% %double bond 1-6 \fi% \else% \ifx\fff\empty% \Put@Line(57,-36)(3,-5){62}% %double bond 1-6 \else% \Put@Line(57,-36)(3,-5){62}% %double bond 1-6 \fi\fi}% \def\hbondb{% \ifx\bbb\empty% \ifx\ccc\empty% \Put@Line(129,138)(1,0){148}% %double bond 2-3 \else% \Put@Line(129,138)(1,0){134}% %double bond 3-2 \fi% \else% \ifx\ccc\empty% \Put@Line(143,138)(1,0){134}% %double bond 3-2 \else% \Put@Line(143,138)(1,0){110}% %double bond 3-2 \fi\fi}% \def\hbondc{% \ifx\ddd\empty% \ifx\ccc\empty% \Put@Line(364,6)(-3,5){78}% %double bond 4-3 \else% \Put@Line(364,6)(-3,5){62}% %double bond 4-3 \fi% \else% \ifx\ccc\empty% \Put@Line(349,36)(-3,5){62}% %double bond 4-3 \else% \Put@Line(349,36)(-3,5){62}% %double bond 4-3 \fi\fi}% \def\hbondd{% \ifx\ddd\empty% \ifx\eee\empty% \Put@Line(364,-6)(-3,-5){78}% %double bond 4-5 \else% \Put@Line(364,-6)(-3,-5){62}% %double bond 4-5 \fi% \else% \ifx\eee\empty% \Put@Line(349,-36)(-3,-5){62}% %double bond 4-5 \else% \Put@Line(349,-36)(-3,-5){62}% %double bond 4-5 \fi\fi}% \def\hbonde{% \ifx\fff\empty% \ifx\eee\empty% \Put@Line(129,-138)(1,0){148}% %double bond 6-5 \else% \Put@Line(129,-138)(1,0){134}% %double bond 5-6 \fi% \else% \ifx\eee\empty% \Put@Line(143,-138)(1,0){134}% %double bond 5-6 \else% \Put@Line(143,-138)(1,0){110}% %double bond 5-6 \fi\fi}% \def\hbondvert{% \ifx\fff\empty% \ifx\bbb\empty% \Put@Line(136,-138)(0,1){277}% %double bond 4-3 \else% \Put@Line(136,-138)(0,1){258}% %double bond 4-3 \fi% \else% \ifx\bbb\empty% \Put@Line(136,-120)(0,1){258}% %double bond 4-3 \else \Put@Line(136,-120)(0,1){239}% %double bond 4-3 \fi\fi}% \def\hbondverti{% \ifx\eee\empty% \ifx\ccc\empty% \Put@Line(270,-138)(0,0){277}% %double bond 4-3 \else% \Put@Line(270,-138)(0,1){258}% %double bond 4-3 \fi% \else% \ifx\ccc\empty% \Put@Line(270,-120)(0,1){258}% %double bond 4-3 \else% \Put@Line(270,-120)(0,1){239}% %double bond 4-3 \fi\fi}% \def\hskbonda{% \ifx\aaa\empty% \ifx\bbb\empty% \Put@Line(0,0)(3,5){103}% %bond 1-2 \else% \Put@Line(0,0)(3,5){79}% %bond 1-2 \fi% \else% \ifx\bbb\empty% \Put@Line(24,40)(3,5){79}% %bond 1-2 \else% \Put@Line(24,40)(3,5){62}% %bond 1-2 \fi\fi}% \def\hskbondf{% \ifx\aaa\empty% \ifx\fff\empty \Put@Line(0,0)(3,-5){103}% %bond 1-6 \else% \Put@Line(0,0)(3,-5){79}% %bond 1-6 \fi% \else% \ifx\fff\empty% \Put@Line(24,-40)(3,-5){79}% %bond 1-6 \else% \Put@Line(24,-40)(3,-5){62}% %bond 1-6 \fi\fi}% \def\hskbondc{% \ifx\ddd\empty% \ifx\ccc\empty% \Put@Line(406,0)(-3,5){103}% %bond 4-3 \else% \Put@Line(406,0)(-3,5){79}% %bond 4-3 \fi% \else% \ifx\ccc\empty% \Put@Line(382,40)(-3,5){79}% %bond 4-3 \else% \Put@Line(382,40)(-3,5){62}% %bond 4-3 \fi\fi}% \def\hskbondd{% \ifx\ddd\empty% \ifx\eee\empty% \Put@Line(406,0)(-3,-5){103}% %bond 4-5 \else% \Put@Line(406,0)(-3,-5){79}% %bond 4-5 \fi% \else% \ifx\eee\empty% \Put@Line(382,-40)(-3,-5){79}% %bond 4-5 \else% \Put@Line(382,-40)(-3,-5){62}% %bond 4-5 \fi\fi}% \def\hskbondb{% \ifx\bbb\empty% \ifx\ccc\empty% \Put@Line(103,171)(1,0){200}% %bond 2-3 \else% \Put@Line(103,171)(1,0){160}% %bond 3-2 \fi% \else% \ifx\ccc\empty% \Put@Line(143,171)(1,0){160}% %bond 3-2 \else% \Put@Line(143,171)(1,0){120}% %bond 3-2 \fi\fi}% \def\hskbonde{% \ifx\eee\empty% \ifx\fff\empty% \Put@Line(103,-171)(1,0){200}% %bond 6-5 \else% \Put@Line(143,-171)(1,0){160}% %bond 5-6 \fi% \else% \ifx\fff\empty% \Put@Line(103,-171)(1,0){160}% %bond 5-6 \else% \Put@Line(143,-171)(1,0){120}% %bond 5-6 \fi\fi}% \def\hskbondvert{% \ifx\fff\empty% \ifx\bbb\empty% \Put@Line(103,-171)(0,1){342}% %bond 4-3 \else% \Put@Line(103,-171)(0,1){300}% %bond 4-3 \fi% \else% \ifx\bbb\empty% \Put@Line(103,171)(0,-1){300}% %bond 4-3 \else% \Put@Line(103,-129)(0,1){258}% %bond 4-3 \fi\fi}% \def\hskbondverti{% \ifx\eee\empty% \ifx\ccc\empty% \Put@Line(303,-171)(0,1){342}% %bond 4-3 \else% \Put@Line(303,-171)(0,1){300}% %bond 4-3 \fi% \else% \ifx\ccc\empty% \Put@Line(303,171)(0,-1){300}% %bond 4-3 \else% \Put@Line(303,-129)(0,1){258}% %bond 4-3 \fi\fi}% \def\dothskbonda{% \ifx\aaa\empty% \ifx\bbb\empty% \dotorline(0,0)(3,5){103}/(0,0)(103,171)% \else% \dotorline(0,0)(3,5){79}/(0,0)(79,132)% \fi% \else% \ifx\bbb\empty% \dotorline(24,40)(3,5){79}/(24,40)(103,171)% \else% \dotorline(24,40)(3,5){62}/(24,40)(86,143)% \fi\fi}% \def\dothskbondb{% \ifx\bbb\empty% \ifx\ccc\empty% \dotorline(103,171)(1,0){200}/(103,171)(303,171)% \else% \dotorline(103,171)(1,0){160}/(103,171)(263,171)% \fi% \else% \ifx\ccc\empty% \dotorline(143,171)(1,0){160}/(143,171)(303,171)% \else% \dotorline(143,171)(1,0){120}/(143,171)(263,171)% \fi\fi}% \def\dothskbondc{% \ifx\ddd\empty% \ifx\ccc\empty% \dotorline(406,0)(-3,5){103}/(406,0)(303,171)% \else% \dotorline(406,0)(-3,5){79}/(406,0)(327,132)% \fi% \else% \ifx\ccc\empty% \dotorline(382,40)(-3,5){79}/(382,40)(303,171)% \else% \dotorline(382,40)(-3,5){62}/(382,40)(320,143)% \fi\fi}% \def\dothskbondd{% \ifx\ddd\empty% \ifx\eee\empty% \dotorline(406,0)(-3,-5){103}/(406,0)(303,-171)% \else% \dotorline(406,0)(-3,-5){79}/(406,0)(327,-132)% \fi% \else% \ifx\eee\empty% \dotorline(382,-40)(-3,-5){79}/(382,-40)(303,-171)% \else% \dotorline(382,-40)(-3,-5){62}/(382,-40)(320,-143)% \fi\fi}% \def\dothskbonde{% \ifx\eee\empty% \ifx\fff\empty% \dotorline(103,-171)(1,0){200}/(103,-171)(303,-171)% \else% \dotorline(143,-171)(1,0){160}/(143,-171)(303,-171)% \fi% \else% \ifx\fff\empty% \dotorline(103,-171)(1,0){160}/(103,-171)(263,-171)% \else% \dotorline(143,-171)(1,0){120}/(143,-171)(263,-171)% \fi\fi}% \def\dothskbondf{% \ifx\aaa\empty% \ifx\fff\empty \dotorline(0,0)(3,-5){103}/(0,0)(103,-171)% \else% \dotorline(0,0)(3,-5){79}/(0,0)(79,-131)% \fi% \else% \ifx\fff\empty% \dotorline(24,-40)(3,-5){79}/(24,-40)(103,-171)% \else% \dotorline(24,-40)(3,-5){62}/(24,-40)(86,-143)% \fi\fi}% \def\dothskbondvert{% \ifx\fff\empty% \ifx\bbb\empty% \dotorline(103,-171)(0,1){342}/(103,-171)(103,171)% \else% \dotorline(103,-171)(0,1){300}/(103,-171)(103,129)% \fi% \else% \ifx\bbb\empty% \dotorline(103,171)(0,-1){300}/(103,171)(103,-129)% \else% \dotorline(103,-129)(0,1){258}/(103,-129)(103,129)% \fi\fi}% \def\dothskbondverti{% \ifx\eee\empty% \ifx\ccc\empty% \dotorline(303,-171)(0,1){342}/(303,-171)(303,171)% \else% \dotorline(303,-171)(0,1){300}/(303,-171)(303,129)% \fi% \else% \ifx\ccc\empty% \dotorline(303,171)(0,-1){300}/(303,171)(303,-129)% \else% \dotorline(303,-129)(0,1){258}/(303,-129)(303,129)% \fi\fi}% \def\set@skel@bondh#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 dothskbond#3\endcsname% \dothskbonda etc. \else\if\@@tmpb B\relax% \@skbondlisttrue {\thicklines \expandafter\csname hskbond#3\endcsname% \hskbonda etc. }% \else%%%added for color 2010/10/01 \@skbondlisttrue% \put(0,0){\@@tmpb}% \fi\fi \fi% }% \if@skbondlist\else {\thinlines \expandafter\csname hskbond#3\endcsname% \hskbonda 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@bondh \def\sixheteroh{\@ifnextchar({\@six@heteroh(@}{\@six@heteroh(@)}} \def\@six@heteroh(#1){\@ifnextchar[{\@six@@heteroh(#1)[@}% {\@six@@heteroh(#1)[@]}} \def\@six@@heteroh(#1)[#2]#3#4{\@ifnextchar[% {\@sixheteroh(#1)[#2]{#3}{#4}[@}% {\@sixheteroh(#1)[#2]{#3}{#4}[@]}} \def\@sixheteroh(#1)[#2]#3#4[#5]{% \iniatom\iniflag%initialize \test@vrtx@sixh{#3}% \@reset@ylsw% \ylpositionh{#4}{0}{0}{7}{0}% \begin{ShiftPicEnv}(0,0)(-\yl@shiftii,-\yl@shifti)/% (880,800)(-240,-400){sixheteroh}%2002/4/30 by S. Fujita {% \resetbdsw% \@bond@@omit{#5}% \set@skel@bondh{#1}{a}{a}% bond between 1 and 2 \@aaa -> \hskbonda etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@bondh{#1}{c}{c}% bond between 3 and 4 \@ccc -> \hskbondc etc \set@skel@bondh{#1}{d}{d}% bond between 4 and 5 \@ddd -> \hskbondd etc \set@skel@bondh{#1}{e}{e}% bond between 5 and 6 \@eee -> \hskbonde etc \set@skel@bondh{#1}{f}{f}% bond between 6 and 1 \@fff -> \hskbondf etc }% \@tfor\member:=#2\do{% \if\member r\relax \hbondd\hbondf\hbondb% \else \if\member l\relax \hbonda\hbondc\hbonde% \else \if\member a\relax \hbonda% \else \if\member b\relax \hbondb% \else \if\member c\relax \hbondc% \else \if\member d\relax \hbondd% \else \if\member e\relax \hbonde% \else \if\member f\relax \hbondf% \else \if\member A%left aromatic circle \Put@oCircle(203,0){240}% %circle \else \expandafter\twoCH@@R\member//% \set@fusionadd@sixh \fi\fi\fi\fi\fi\fi\fi\fi\fi}% \set@hetatom@sixh{#3}{0}{0}{7}{0}% %atom 1--6% \setsixringh{#4}{0}{0}{7}{0}% %subst 1--6 \end{ShiftPicEnv}% \iniatom\iniflag}% %end of \sixheteroh macro \def\test@vrtx@sixh#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}% \if\@tmpb s\relax\def\aaa{}\else\def\aaa{@}\fi \or% \xdef\bbb{\@memberb}% \if\@tmpb s\relax\def\bbb{}\else\def\bbb{@}\fi \or% \xdef\ccc{\@memberb}% \if\@tmpb s\relax\def\ccc{}\else\def\ccc{@}\fi \or% \xdef\ddd{\@memberb}% \if\@tmpb s\relax\def\ddd{}\else\def\ddd{@}\fi \or% \xdef\eee{\@memberb}% \if\@tmpb s\relax\def\eee{}\else\def\eee{@}\fi \or% \xdef\fff{\@memberb}% \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi \fi\fi}% }% end of \test@vrtx@sixh \def\sixheterohi{\@ifnextchar({\@six@heterohi(@}{\@six@heterohi(@)}} \def\@six@heterohi(#1){\@ifnextchar[{\@six@@heterohi(#1)[@}% {\@six@@heterohi(#1)[@]}} \def\@six@@heterohi(#1)[#2]#3#4{\@ifnextchar[% {\@sixheterohi(#1)[#2]{#3}{#4}[@}% {\@sixheterohi(#1)[#2]{#3}{#4}[@]}} \def\@sixheterohi(#1)[#2]#3#4[#5]{% \iniatom\iniflag%initialize \test@vrtx@sixhi{#3}% \@reset@ylsw% \ylpositionh{#4}{5}{0}{5}{-1}% %subst 1--4 \ylpositionh{#4}{11}{4}{7}{-1}% %subst 5 and 6 \begin{ShiftPicEnv}(0,0)(-\yl@shiftii,-\yl@shifti)/% (880,800)(-240,-400){sixheterohi}%2002/4/30 by S. Fujita {\resetbdsw% \@bond@@omit{#5}% \set@skel@bondh{#1}{a}{c}% bond between 1 and 2 \@aaa -> \hskbondc etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@bondh{#1}{c}{a}% bond between 3 and 4 \@ccc -> \hskbonda etc \set@skel@bondh{#1}{d}{f}% bond between 4 and 5 \@ddd -> \hskbondf etc \set@skel@bondh{#1}{e}{e}% bond between 5 and 6 \@eee -> \hskbonde etc \set@skel@bondh{#1}{f}{d}% bond between 6 and 1 \@fff -> \hskbondd etc }% \@tfor\member:=#2\do{% \if\member r\relax \hbondd \hbondf \hbondb% \else \if\member l\relax \hbonda \hbondc \hbonde% \else \if\member a\relax \hbondc% \else \if\member b\relax \hbondb% \else \if\member c\relax \hbonda% \else \if\member d\relax \hbondf% \else \if\member e\relax \hbonde% \else \if\member f\relax \hbondd% \else \if\member A%left aromatic circle \Put@oCircle(203,0){240}% %circle \else \expandafter\twoCH@@R\member//% \set@fusionadd@sixhi \fi\fi\fi\fi\fi\fi\fi\fi\fi}% \set@hetatom@sixh{#3}{5}{0}{5}{-1}% %subst 1--4 \set@hetatom@sixh{#3}{11}{4}{7}{-1}% %subst 5 and 6 \setsixringh{#4}{5}{0}{5}{-1}% %subst 1--4 \setsixringh{#4}{11}{4}{7}{-1}% %subst 5 and 6 \end{ShiftPicEnv}% \iniatom\iniflag}% %end of \sixheterohi macro \def\test@vrtx@sixhi#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 \if\@tmpb s\relax\def\ccc{}\else\def\ccc{@}\fi \or \if\@tmpb s\relax\def\bbb{}\else\def\bbb{@}\fi \or \if\@tmpb s\relax\def\aaa{}\else\def\aaa{@}\fi \or \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi \or \if\@tmpb s\relax\def\eee{}\else\def\eee{@}\fi \fi\fi}% }% end of \test@vrtx@sixhi \def\pyridineh{\@ifnextchar[{\@pyridineh[@}{\@pyridineh[r]}}% \def\@pyridineh[#1]#2{% \iforigpt \typeout{command `pyridineh' % is based on `sixheteroh'.}\fi% \sixheteroh[#1]{1==N}{#2}}%end of \pyridineh macro \def\pyridinehi{\@ifnextchar[{\@pyridinehi}{\@pyridinehi[r]}}% \def\@pyridinehi[#1]#2{% \iforigpt \typeout{command `pyridinehi' % is based on `sixheterohi'.}\fi% \sixheterohi[#1]{1==N}{#2}}% %end of \pyridinehi macro \def\pyrazineh{\@ifnextchar[{\@pyrazineh[@}{\@pyrazineh[r]}}% \def\@pyrazineh[#1]#2{% \iforigpt \typeout{command `pyrazineh' % is based on `sixheteroh'.}\fi% \sixheteroh[#1]{1==N;4==N}{#2}}%end of \pyrazineh macro \def\pyrazinehi{\@ifnextchar[{\@pyrazinehi[@}{\@pyrazinehi[r]}}% \def\@pyrazinehi[#1]#2{% \iforigpt \typeout{command `pyrazinehi' % is based on `sixheterohi'.}\fi% \sixheterohi[#1]{1==N;4==N}{#2}}%end of \pyrazinehi macro \def\pyrimidineh{% \@ifnextchar[{\@pyrimidineh[@}{\@pyrimidineh[r]}}% \def\@pyrimidineh[#1]#2{% \iforigpt \typeout{command `pyrimidineh' % is based on `sixheteroh'.}\fi% \sixheteroh[#1]{1==N;3==N}{#2}}% %end of \pyrimidineh macro \def\pyrimidinehi{% \@ifnextchar[{\@pyrimidinehi[@}{\@pyrimidinehi[r]}}% \def\@pyrimidinehi[#1]#2{% \iforigpt \typeout{command `pyrimidinehi' % is based on `sixheterohi'.}\fi% \sixheterohi[#1]{1==N;3==N}{#2}}%end of \pyrimidinehi macro \def\pyridazineh{\@ifnextchar[{\@pyridazineh[@}{\@pyridazineh[r]}}% \def\@pyridazineh[#1]#2{% \iforigpt \typeout{command `pyridazineh' % is based on `sixheteroh'.}\fi% \sixheteroh[#1]{1==N;2==N}{#2}}% %end of \pyridazineh macro \def\pyridazinehi{% \@ifnextchar[{\@pyridazinehi}{\@pyridazinehi[r]}}% \def\@pyridazinehi[#1]#2{% \iforigpt \typeout{command `pyridazinehi' % is based on `sixheterohi'.}\fi% \sixheterohi[#1]{1==N;2==N}{#2}}%end of \pyridazinehi macro \def\triazineh{\@ifnextchar[{\@triazineh[@}{\@triazineh[r]}}% \def\@triazineh[#1]#2{% \iforigpt \typeout{command `triazineh' % is based on `sixheteroh'.}\fi% \sixheteroh[#1]{1==N;3==N;5==N}{#2}}%end of \triazineh macro \def\triazinehi{\@ifnextchar[{\@triazinehi[@}{\@triazinehi[r]}}% \def\@triazinehi[#1]#2{% \iforigpt \typeout{command `triazinehi' % is based on `sixheterohi'.}\fi% \sixheterohi[#1]{1==N;3==N;5==N}{#2}}%end of \triazinehi macro \def\fiveheteroh{\@ifnextchar({\@five@heteroh(@}{\@five@heteroh(@)}} \def\@five@heteroh(#1){\@ifnextchar[{\@five@@heteroh(#1)[@}% {\@five@@heteroh(#1)[@]}} \def\@five@@heteroh(#1)[#2]#3#4{\@ifnextchar[% {\@fiveheteroh(#1)[#2]{#3}{#4}[@}% {\@fiveheteroh(#1)[#2]{#3}{#4}[@]}} \def\@fiveheteroh(#1)[#2]#3#4[#5]{% \iniatom\iniflag%initialize \test@vrtx@fivehi{#3}% \@reset@ylsw% \ylpositionh{#4}{5}{1}{5}{-1}% % for 1 to 3 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \else \ylpositionh{#4}{10}{4}{7}{-1}% % for 4 to 5 \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (800,880)(-240,-400){fiveheteroh}%2002/4/30 by S. Fujita {\resetbdsw% \@bond@@omit{#5}% \set@skel@bondh{#1}{a}{c}% bond between 1 and 2 \@aaa -> \skbondc etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \skbondb etc \set@skel@longbond{#1}{c}{hskbondvert}% % bond between 3 and 4 \@ccc -> \skbondhoriz etc \set@skel@bondh{#1}{d}{e}% bond between 4 and 5 \@ddd -> \skbonde etc \set@skel@bondh{#1}{e}{d}% bond between 5 and 1 \@eee -> \skbondd etc }% \@tfor\member:=#2\do{% \if\member r% \else \if\member a\relax \hbondc% \else \if\member b\relax \hbondb% \else \if\member c\relax \hbondvert% \else \if\member d\relax \hbonde% \else \if\member e\relax \hbondd% \else \if\member A%left aromatic circle \Put@oCircle(233,0){180}% %circle \else \expandafter\twoCH@@R\member//% \set@fusionadd@fiveh \fi\fi\fi\fi\fi\fi\fi}% \Put@Direct(0,0){\set@hetatom@sixh{#3}{5}{1}{5}{-1}% \storeclipinfo%added 2001/06/20 by S. Fujita }% % for 1 to 3 \developclipinfo%added 2001/06/20 by S. Fujita \Put@Direct(0,0){\set@hetatom@sixh{#3}{10}{4}{7}{-1}% \storeclipinfo%added 2001/06/20 by S. Fujita }% % for 4 to 5 \developclipinfo%added 2001/06/20 by S. Fujita \Put@Direct(0,0){\setsixringh{#4}{5}{1}{5}{-1}}% % for 1 to 3 \Put@Direct(0,0){\setsixringh{#4}{10}{4}{7}{-1}}% % for 4 to 5 \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \fiveheteroh macro \def\test@vrtx@fivehi#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 \if\@tmpb s\relax\def\ccc{}\else\def\ccc{@}\fi \or \if\@tmpb s\relax\def\bbb{}\else\def\bbb{@}\fi \or \if\@tmpb s\relax\def\fff{}\else\def\fff{@}\fi \or \if\@tmpb s\relax\def\eee{}\else\def\eee{@}\fi \or \if\@tmpb s\relax\def\aaa{}\else\def\aaa{@}\fi% dummy \fi\fi}% }% end of \test@vrtx@sixhi \def\fiveheterohi{\@ifnextchar({\@five@heterohi(@}{\@five@heterohi(@)}} \def\@five@heterohi(#1){\@ifnextchar[{\@five@@heterohi(#1)[@}% {\@five@@heterohi(#1)[@]}} \def\@five@@heterohi(#1)[#2]#3#4{\@ifnextchar[% {\@fiveheterohi(#1)[#2]{#3}{#4}[@}% {\@fiveheterohi(#1)[#2]{#3}{#4}[@]}} \def\@fiveheterohi(#1)[#2]#3#4[#5]{% \iniatom\iniflag%initialize \test@vertix@sixv{#3}{a}{b}{c}{e}{f}{d}%d--dummy \@reset@ylsw% \ylpositionh{#4}{0}{0}{4}{0}% % for 1 to 3 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \else \ylpositionh{#4}{1}{4}{7}{0}% % for 4 to 5 \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (800,880)(-240,-400){fiveheterohi}%2002/4/30 by S. Fujita {\resetbdsw% \@bond@@omit{#5}% \set@skel@bondh{#1}{a}{a}% bond between 1 and 2 \@aaa -> \hskbonda etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@longbond{#1}{c}{hskbondverti}% % bond between 3 and 4 \@ccc -> \hskbondverti etc \set@skel@bondh{#1}{d}{e}% bond between 4 and 5 \@ddd -> \hskbonde etc \set@skel@bondh{#1}{e}{f}% bond between 5 and 6 \@eee -> \hskbondf etc }% \@tfor\member:=#2\do{% \if\member r% \else \if\member a\relax \hbonda% \else \if\member b\relax \hbondb% \else \if\member c\relax \hbondverti% \else \if\member d\relax \hbonde% \else \if\member e\relax \hbondf% \else \if\member A%left aromatic circle \Put@oCircle(173,0){180}% %circle \else \expandafter\twoCH@@R\member//% \set@fusionadd@fivehi \fi\fi\fi\fi\fi\fi\fi}% \set@hetatom@sixh{#3}{0}{0}{4}{0}% % for 1 to 3 \set@hetatom@sixh{#3}{1}{4}{7}{0}% % for 4 to 5 \setsixringh{#4}{0}{0}{4}{0}% % for 1 to 3 \setsixringh{#4}{1}{4}{7}{0}% % for 4 to 5 \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \fiveheterohi macro \def\pyrroleh{\@ifnextchar[{\@pyrroleh[@}{\@pyrroleh[bd]}}% \def\@pyrroleh[#1]#2{% \iforigpt \typeout{command `pyrroleh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==N}{#2}}% \def\pyrazoleh{\@ifnextchar[{\@pyrazoleh[@}{\@pyrazoleh[bd]}}% \def\@pyrazoleh[#1]#2{% \iforigpt \typeout{command `pyrazoleh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==N;2==N}{#2}}% \def\imidazoleh{\@ifnextchar[{\@imidazoleh[@}{\@imidazoleh[bd]}}% \def\@imidazoleh[#1]#2{% \iforigpt \typeout{command `imidazoleh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==N;3==N}{#2}}% \def\isoxazoleh{\@ifnextchar[{\@isoxazoleh[@}{\@isoxazoleh[bd]}}% \def\@isoxazoleh[#1]#2{% \iforigpt \typeout{command `isoxazoleh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==O;2==N}{#2}}% \def\oxazoleh{\@ifnextchar[{\@oxazoleh[@}{\@oxazoleh[bd]}}% \def\@oxazoleh[#1]#2{% \iforigpt \typeout{command `oxazoleh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==O;3==N}{#2}}% \def\furanh{\@ifnextchar[{\@furanh[@}{\@furanh[bd]}} \def\@furanh[#1]#2{% \iforigpt \typeout{command `furanh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==O}{#2}} \def\thiopheneh{\@ifnextchar[{\@thiopheneh[@}{\@thiopheneh[bd]}} \def\@thiopheneh[#1]#2{% \iforigpt \typeout{command `thiopheneh' % is based on `fiveheteroh'.}\fi% \fiveheteroh[#1]{1==S}{#2}} \def\pyrrolehi{\@ifnextchar[{\@pyrrolehi[@}{\@pyrrolehi[bd]}}% \def\@pyrrolehi[#1]#2{% \iforigpt \typeout{command `pyrrolehi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==N}{#2}}% \def\pyrazolehi{\@ifnextchar[{\@pyrazolehi[@}{\@pyrazolehi[bd]}}% \def\@pyrazolehi[#1]#2{% \iforigpt \typeout{command `pyrazolehi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==N;2==N}{#2}}% \def\imidazolehi{\@ifnextchar[{\@imidazolehi[@}{\@imidazolehi[bd]}}% \def\@imidazolehi[#1]#2{% \iforigpt \typeout{command `imidazolehi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==N;3==N}{#2}}% \def\isoxazolehi{\@ifnextchar[{\@isoxazolehi[@}{\@isoxazolehi[bd]}}% \def\@isoxazolehi[#1]#2{% \iforigpt \typeout{command `isoxazolehi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==O;2==N}{#2}}% \def\oxazolehi{\@ifnextchar[{\@oxazolehi[@}{\@oxazolehi[bd]}}% \def\@oxazolehi[#1]#2{% \iforigpt \typeout{command `oxazolehi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==O;3==N}{#2}}% \def\furanhi{\@ifnextchar[{\@furanhi[@}{\@furanhi[bd]}} \def\@furanhi[#1]#2{% \iforigpt \typeout{command `furanhi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==O}{#2}} \def\thiophenehi{\@ifnextchar[{\@thiophenehi[@}{\@thiophenehi[bd]}} \def\@thiophenehi[#1]#2{% \iforigpt \typeout{command `thiophenehi' % is based on `fiveheterohi'.}\fi% \fiveheterohi[#1]{1==S}{#2}} \def\decaheteroh{\@ifnextchar({\@deca@heteroh(@}{\@deca@heteroh(@)}} \def\@deca@heteroh(#1){\@ifnextchar[{\@deca@@heteroh(#1)[@}% {\@deca@@heteroh(#1)[@]}} \def\@deca@@heteroh(#1)[#2]#3#4{\@ifnextchar[% {\@decaheteroh(#1)[#2]{#3}{#4}[@}% {\@decaheteroh(#1)[#2]{#3}{#4}[@]}} \def\@decaheteroh(#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% \ylhetpositionh{#4}{0}{0}{5}{0}% %substituents on 1 to 4 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \else {\let\ddd=\eee\let\eee=\fff\let\fff=\gggA \ylhetpositionh{#4}{-1}{3}{7}{0}% %substituents on 5 to 7 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {\let\aaa=\hhh \ylhetpositionh{#4}{-7}{0}{2}{0}% %substituent on 8 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {% \clipdetection% \@clipfusefalse \if@iclip \@clipfusetrue \fi% \ylatombondposition{#4}{-8}{4}% %9 for 4a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-303}\def\@@yli{171}\fi \else {% \clipdetection% \@clipfusefalse \if@jclip \@clipfusetrue \fi% \ylatombondposition{#4}{-9}{10}% %10 for 8a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-103}\def\@@yli{171}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (1200,1200)(-400,-800){decaheteroh}%2002/4/30 by S. Fujita \begingroup \resetbdsw% \@bond@@omit{#5}% {\let\fff=\jjj \let\eee=\iii% \set@skel@bondh{#1}{a}{a}% bond between 1 and 2 \@aaa -> \hskbonda etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@bondh{#1}{c}{c}% bond between 3 and 4 \@ccc -> \hskbondc etc \set@skel@bondh{#1}{d}{d}% bond between 4 and 5 \@ddd -> \skbondd etc \set@skel@bondh{#1}{k}{e}% bond between 7 and 8 \@kkk -> \skbonde etc \set@skel@bondh{#1}{j}{f}% bond between 7 and 8 \@jjj -> \skbondf etc }% {\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA% \let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\set@skel@bondh{#1}{i}{a}}% % bond between 8a and 8 \@iii -> \hskbonda etc \Put@Direct(0,-342){\set@skel@bondh{#1}{e}{c}}% % bond between 4a and 5 \@eee -> \hskbondc etc \Put@Direct(0,-342){\set@skel@bondh{#1}{f}{d}}% % bond between 5 and 6 \@fff -> \hskbondd etc \Put@Direct(0,-342){\set@skel@bondh{#1}{g}{e}}% % bond between 6 and 7 \@ggg -> \hskbonde etc \Put@Direct(0,-342){\set@skel@bondh{#1}{h}{f}}% % bond between 7 and 8 \@hhh -> \hskbondf etc }% \endgroup \@tfor\member:=#2\do{% \if\member r\relax% {\let\fff=\jjj \let\eee=\iii% \Put@Direct(0,0){\hbonda}% bond between 1 and 2% \Put@Direct(0,0){\hbondc}% 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,-342){\hbondb}% bond between 8a and 4a \Put@Direct(0,-342){\hbondf}% bond between 8 and 7 \Put@Direct(0,-342){\hbondd}% bond between 5 and 6 }% \else \if\member l\relax% \else \if\member a\relax% \Put@Direct(0,0){\hbonda}% bond between 1 and 2 \else \if\member b\relax% \Put@Direct(0,0){\hbondb}% bond between 2 and 3 \else \if\member c\relax% \Put@Direct(0,0){\hbondc}% bond between 3 and 4 \else \if\member d\relax% {\let\eee=\iii% \Put@Direct(0,0){\hbondd}% bond between 4 and 4a }% \else \if\member e\relax% {\let\ccc=\iii \let\ddd=\eee% \Put@Direct(0,-342){\hbondc}% bond between 5 and 4a }% \else \if\member f\relax% {\let\ddd=\eee \let\eee=\fff% \Put@Direct(0,-342){\hbondd}% bond between 5 and 6 }% \else \if\member g\relax% {\let\eee=\fff \let\fff=\gggA% \Put@Direct(0,-342){\hbonde}% bond between 6 and 7 }% \else \if\member h\relax% {\let\aaa=\hhh \let\fff=\gggA% \Put@Direct(0,-342){\hbondf}% bond between 8 and 7 }% \else \if\member i\relax% {\let\aaa=\hhh \let\bbb=\jjj% \Put@Direct(0,-342){\hbonda}% bond between 8 and 8a }% \else \if\member j\relax% {\let\fff=\jjj% \Put@Direct(0,0){\hbondf}% bond between 1 and 8a }% \else \if\member k\relax% {\let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\hbondb}% bond between 8a and 4a }% \else \if\member K\relax% {\let\eee=\iii\let\fff=\jjj% \Put@Direct(0,0){\hbonde}% bond between 8a and 4a in the other ring }% \else \if\member A%left aromatic circle \Put@oCircle(203,0){240}% %circle \else \if\member B%left aromatic circle \Put@oCircle(203,-342){240}% %circle \else \expandafter\twoCH@@R\member//% \def\aax{8a}\def\aay{4a}\def\aaz{10}% \if\@@tmpa 4\relax% \putratom{272}{-18}{\@@tmpb}% % right type \else\if\@@tmpa 1\relax% \putratom{68}{-18}{\@@tmpb}% % right type \else\if\@@tmpa 3\relax% \putratom{233}{60}{\@@tmpb}% % right type \else\if\@@tmpa 2\relax% \putratom{120}{60}{\@@tmpb}% % right type \else\ifx\@@tmpa\aaz\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aax\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aay\relax \putratom{233}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 9\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 5\relax% \putratom{272}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 8\relax% \putratom{68}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 6\relax% \putratom{233}{-452}{\@@tmpb}% % right type \else\if\@@tmpa 7\relax% \putratom{120}{-452}{\@@tmpb}% % right type \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% \expandafter\twoCH@R\member//% \set@fusion@decah \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% \fi\fi\fi\fi\fi\fi}% \iniflag \Put@Direct(0,0){\set@hetatom@sixh{#3}{0}{0}{5}{0}% \storeclipinfo }% %substituents on 1 to 4 \developclipinfo \Put@Direct(0,-342){\iniflag%2000/11/11 by Shinsaku Fujita \set@hetatom@sixh{#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 }%substituents on 5 to 7 \Put@Direct(0,-342){\iniflag%2000/11/11 by Shinsaku Fujita \set@hetatom@sixh{#3}{-7}{0}{2}{0}% \@hclipfalse \if@aclip \@hcliptrue \fi \@aclipfalse%2006/9/5added \storeclipinfo }%%substituent on 8 \Put@Direct(0,0){\set@vrtx@fuseh{#3}% \storeclipinfo }% fused positions \developclipinfo \global\drawsamesubsttrue%2002/05/30 warning on \Put@Direct(0,0){\setsixringh{#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,-342){\setsixringh{#4}{-1}{3}{7}{0}}% }% {\@aclipfalse \if@hclip \@acliptrue \fi% %substituent on 8 \Put@Direct(0,-342){\setsixringh{#4}{-7}{0}{2}{0}}% }% {\@clipfusefalse \if@iclip \@clipfusetrue \fi% \Put@Direct(303,-171){\setatombond{#4}{-8}{4}}% %9 for 4a position }% {\@clipfusefalse \if@jclip \@clipfusetrue \fi% \Put@Direct(103,-171){\setatombond{#4}{-9}{10}}% %10 for 8a position }% \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \decaheteroh macro \def\ylhetpositionh#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 \gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue%\@ylatrue% subst. on 1 \else \gdef\@ylii{30}\gdef\@yli{0}\global\@ylswtrue%\@ylatrue% subst. on 1 \fi \or \ifx\bbb\empty \gdef\@ylii{-103}\gdef\@yli{-171}\global\@ylswtrue%\@ylbtrue% subst. on 2 \else \gdef\@ylii{-73}\gdef\@yli{-223}\global\@ylswtrue%\@ylbtrue% subst. on 2 \fi \or \ifx\ccc\empty \gdef\@ylii{-303}\gdef\@yli{-171}\global\@ylswtrue%\@ylctrue% subst. on 3 \else \gdef\@ylii{-333}\gdef\@yli{-223}\global\@ylswtrue%\@ylctrue% subst. on 3 \fi \or \ifx\ddd\empty \gdef\@ylii{-406}\gdef\@yli{0}\global\@ylswtrue%\@yldtrue% subst. on 4 \else \gdef\@ylii{-436}\gdef\@yli{0}\global\@ylswtrue%\@yldtrue% subst. on 4 \fi \or \ifx\eee\empty \gdef\@ylii{-303}\gdef\@yli{171}\global\@ylswtrue%\@yletrue% subst. on 5 \else \gdef\@ylii{-333}\gdef\@yli{223}\global\@ylswtrue%\@yletrue% subst. on 5 \fi \or \ifx\fff\empty \gdef\@ylii{-103}\gdef\@yli{171}\global\@ylswtrue%\@ylftrue% subst. on 6 \else \gdef\@ylii{-73}\gdef\@yli{223}\global\@ylswtrue%\@ylftrue% subst. on 6 \fi \fi%end of ifcase \fi\fi\fi\fi\fi}}% \def\decaheterohi{\@ifnextchar({\@deca@heterohi(@}{\@deca@heterohi(@)}} \def\@deca@heterohi(#1){\@ifnextchar[{\@deca@@heterohi(#1)[@}% {\@deca@@heterohi(#1)[@]}} \def\@deca@@heterohi(#1)[#2]#3#4{\@ifnextchar[% {\@decaheterohi(#1)[#2]{#3}{#4}[@}% {\@decaheterohi(#1)[#2]{#3}{#4}[@]}} \def\@decaheterohi(#1)[#2]#3#4[#5]{% \iniflag\iniatom% \test@vertix@decavi{#3}% \@reset@ylsw% \ylhetpositionh{#4}{5}{0}{5}{-1}% %substituents on 1 to 4 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \else {\let\ddd=\eee\let\eee=\fff\let\fff=\gggA \ylhetpositionh{#4}{12}{3}{7}{-1}% %substituents on 6 to 8 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {\let\aaa=\hhh \ylhetpositionh{#4}{-4}{0}{2}{0}% %substituent on 5 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {% \clipdetection% \@clipfusefalse \if@iclip \@clipfusetrue \fi% \ylatombondposition{#4}{-9}{4}% %10 for 8a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-303}\def\@@yli{171}\fi \else {% \clipdetection% \@clipfusefalse \if@jclip \@clipfusetrue \fi% \ylatombondposition{#4}{-8}{10}% %9 for 4a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-103}\def\@@yli{171}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (1200,1200)(-400,-800){decaheterohi}%2002/4/30 by S. Fujita \begingroup \resetbdsw% \@bond@@omit{#5}% {\let\fff=\jjj \let\eee=\iii% \set@skel@bondh{#1}{a}{c}% bond between 1 and 2 \@aaa -> \hskbondc etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@bondh{#1}{c}{a}% bond between 3 and 4 \@ccc -> \hskbonda etc \set@skel@bondh{#1}{d}{f}% bond between 4 and 4a \@ddd -> \hskbondf etc \set@skel@bondh{#1}{k}{e}% bond between 4a and 8a \@kkk -> \hskbonde etc \set@skel@bondh{#1}{j}{d}% bond between 8a and 1 \@jjj -> \hskbondd etc }% {\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA% \let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\set@skel@bondh{#1}{e}{a}}% % bond between 4a and 5 \@eee -> \hskbonda etc \Put@Direct(0,-342){\set@skel@bondh{#1}{i}{c}}% % bond between 8a and 8 \@iii -> \hskbondc etc \Put@Direct(0,-342){\set@skel@bondh{#1}{h}{d}}% % bond between 7 and 8 \@hhh -> \hskbondd etc \Put@Direct(0,-342){\set@skel@bondh{#1}{g}{e}}% % bond between 6 and 7 \@ggg -> \hskbonde etc \Put@Direct(0,-342){\set@skel@bondh{#1}{f}{f}}% % bond between 5 and 6 \@fff -> \hskbondf etc }% \endgroup \@tfor\member:=#2\do{% \if\member r\relax% {\let\fff=\jjj \let\eee=\iii% \Put@Direct(0,0){\hbonda}% bond between 1 and 2 \Put@Direct(0,0){\hbondc}% 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,-342){\hbondb}% bond between 8a and 4a \Put@Direct(0,-342){\hbondf}% bond between 8 and 7 \Put@Direct(0,-342){\hbondd}% bond between 5 and 6 }% \else \if\member l\relax% \else \if\member a\relax% \Put@Direct(0,0){\hbondc}% bond between 3 and 4 \else \if\member b\relax \Put@Direct(0,0){\hbondb}% bond between 2 and 3 \else \if\member c\relax \Put@Direct(0,0){\hbonda}% bond between 1 and 2 \else \if\member d\relax% {\let\fff=\jjj% \Put@Direct(0,0){\hbondf}% bond between 1 and 8a }% \else \if\member e\relax% {\let\aaa=\hhh \let\bbb=\jjj% \Put@Direct(0,-342){\hbonda}% bond between 8 and 8a }% \else \if\member f\relax% {\let\aaa=\hhh \let\fff=\gggA% \Put@Direct(0,-342){\hbondf}% bond between 8 and 7 }% \else \if\member g\relax% {\let\eee=\fff \let\fff=\gggA% \Put@Direct(0,-342){\hbonde}% bond between 6 and 7 }% \else \if\member h\relax% {\let\ddd=\eee \let\eee=\fff% \Put@Direct(0,-342){\hbondd}% bond between 5 and 6 }% \else \if\member i\relax% {\let\ccc=\iii \let\ddd=\eee% \Put@Direct(0,-342){\hbondc}% bond between 5 and 4a }% \else \if\member j\relax% {\let\eee=\iii% \Put@Direct(0,0){\hbondd}% bond between 4 and 4a }% \else \if\member k\relax% {\let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\hbondb}% bond between 8a and 4a }% \else \if\member K\relax% {\let\eee=\iii\let\fff=\jjj% \Put@Direct(0,0){\hbonde}% bond between 8a and 4a }% \else \if\member A%left aromatic circle \Put@oCircle(203,0){240}% %circle \else \if\member B%left aromatic circle \Put@oCircle(203,-342){240}% %circle \else \expandafter\twoCH@@R\member//% \def\aax{8a}\def\aay{4a}\def\aaz{10}% \if\@@tmpa 4\relax% \putratom{68}{-18}{\@@tmpb}% % right type \else\if\@@tmpa 1\relax% \putratom{272}{-18}{\@@tmpb}% % right type \else\if\@@tmpa 3\relax% \putratom{120}{60}{\@@tmpb}% % right type \else\if\@@tmpa 2\relax% \putratom{233}{60}{\@@tmpb}% % right type \else\ifx\@@tmpa\aaz\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aax\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aay\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 9\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 5\relax% \putratom{68}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 8\relax% \putratom{272}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 6\relax% \putratom{120}{-452}{\@@tmpb}% % right type \else\if\@@tmpa 7\relax% \putratom{233}{-452}{\@@tmpb}% % right type \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% \expandafter\twoCH@R\member//% \set@fusion@decahi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% \fi\fi\fi\fi\fi\fi}% \iniflag \@tmpclipfalse \Put@Direct(0,0){\set@hetatom@sixh{#3}{5}{0}{5}{-1}% \storeclipinfo }% %substituents on 1 to 4 \developclipinfo \Put@Direct(0,-342){\iniflag%2000/11/11 by Shinsaku Fujita \set@hetatom@sixh{#3}{12}{3}{7}{-1}% \@gclipfalse \if@fclip \@gcliptrue \fi% \@fclipfalse \if@eclip \@fcliptrue \fi% \@eclipfalse \if@clip \@ecliptrue \fi% \storeclipinfo }%substituents on 6 to 8 \developclipinfo \Put@Direct(0,-342){\set@hetatom@sixh{#3}{-4}{0}{2}{0}% \@aclipfalse \if@aclip \@hcliptrue \fi% \storeclipinfo }%%substituent on 5 \developclipinfo \Put@Direct(0,0){\set@vrtx@decafusehi{#3}% \@tmpclipfalse \if@iclip \@tmpcliptrue \fi \if@jclip \@icliptrue \fi \if@tmpclip \@jcliptrue \fi \storeclipinfo }% fused positions \developclipinfo \global\drawsamesubsttrue%2002/05/30 warning on \Put@Direct(0,0){\setsixringh{#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,-342){\setsixringh{#4}{12}{3}{7}{-1}}% }% {\@aclipfalse \if@hclip \@acliptrue \fi% %substituent on 5 \Put@Direct(0,-342){\setsixringh{#4}{-4}{0}{2}{0}}% }% {\@clipfusefalse \if@iclip \@clipfusetrue \fi% \Put@Direct(303,-171){\setatombond{#4}{-9}{4}}% %10 for 8a position }% {\@clipfusefalse \if@jclip \@clipfusetrue \fi \Put@Direct(103,-171){\setatombond{#4}{-8}{10}}% %9 for 4a position }% \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \decaheterohi macro \def\set@vrtx@decafusehi#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% \global\@icliptrue% \putlatom{135}{-211}{\@memberb}% % left type \else\if\@tmpb h% \XyMTeXWarning{Forbidden fused position `4a' or `9'}% \else\if\@tmpb s% \XyMTeXWarning{Forbidden fused position `4a' or `9'}% \else\ifx\@tmpb\empty\relax \else \XyMTeXWarning{Forbidden fused position `4a' or `9'}% \fi\fi\fi\fi \or\or\or \or%8 \if\@tmpb a% \global\@jcliptrue% \putratom{273}{-211}{\@memberb}% % right type \else\if\@tmpb h% \XyMTeXWarning{Forbidden fused position `8a' or `10'}% \else\if\@tmpb s% \XyMTeXWarning{Forbidden fused position `8a' or `10'}% \else\ifx\@tmpb\empty\relax \else \XyMTeXWarning{Forbidden fused position `8a' or `10'}% \fi\fi\fi\fi \or%9 (= 4a) \ifx\@tmpb\empty% \global\@icliptrue% \putlatom{135}{-211}{\@memberb}% % left type \else \XyMTeXWarning{Forbidden fused position `4a' or `9'}% \fi \or%10 (= 8a) \ifx\@tmpb\empty% \global\@jcliptrue% \putratom{273}{-211}{\@memberb}% % right type \else \XyMTeXWarning{Forbidden fused position `8a' or `10'}% \fi \fi\fi}% }% end of the macro \set@vrtx@decafusehi \def\set@fusion@decahi{% \let\@@tmpa=\@tmpa \let\@@tmpb=\@tmpb \if\@tmpa a% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \else\if\@tmpa A% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \else\if\@tmpa b% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \else\if\@tmpa B% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \else\if\@tmpa c% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \else\if\@tmpa C% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \else\if\@tmpa d% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `d'}% \fi \else\if\@tmpa D% \let\@@tmpa=\@tmpa \Put@Direct(0,0){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `D'}% \fi \else\if\@tmpa e% \edef\@@tmpa{c}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `e'}% \fi \else\if\@tmpa E% \edef\@@tmpa{C}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `E'}% \fi \else\if\@tmpa f% \edef\@@tmpa{d}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \else\if\@tmpa F% \edef\@@tmpa{D}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \else\if\@tmpa g% \edef\@@tmpa{e}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \else\if\@tmpa G% \edef\@@tmpa{E}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \else\if\@tmpa h% \edef\@@tmpa{f}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \else\if\@tmpa H% \edef\@@tmpa{F}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \else\if\@tmpa i% \edef\@@tmpa{a}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `i'}% \fi \else\if\@tmpa I% \edef\@@tmpa{A}% \Put@Direct(0,-342){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `I'}% \fi \else\if\@tmpa j% \edef\@@tmpa{f}% \Put@Direct(0,0){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `j'}% \fi \else\if\@tmpa J% \edef\@@tmpa{F}% \Put@Direct(0,0){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Unfavorable Fusion for bond `J'}% \fi \else\if\@tmpa k% \edef\@@tmpa{e}% \Put@Direct(0,0){\set@fusionadd@sixhi}% \if@smallringsw\else \XyMTeXWarning{Forbidden Fusion for bond `k'}% \fi \else\if\@tmpa K% \edef\@@tmpa{E}% \Put@Direct(0,0){\set@fusionadd@sixhi}% \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@decahi \def\quinolineh{% \@ifnextchar[{\@quinolineh[@}{\@quinolineh[acfhk]}}% \def\@quinolineh[#1]#2{% \iforigpt \typeout{command `quinolineh' % is based on `decaheteroh'.}\fi% \decaheteroh[#1]{1==N}{#2}}% \def\quinolinehi{% \@ifnextchar[{\@quinolinehi[@}{\@quinolinehi[acfhk]}}% \def\@quinolinehi[#1]#2{% \iforigpt \typeout{command `quinolinehi' % is based on `decaheterohi'.}\fi% \decaheterohi[#1]{1==N}{#2}}% \def\isoquinolineh{% \@ifnextchar[{\@isoquinolineh[@}{\@isoquinolineh[acfhk]}}% \def\@isoquinolineh[#1]#2{% \iforigpt \typeout{command `isoquinolineh' % is based on `decaheteroh'.}\fi% \decaheteroh[#1]{2==N}{#2}}% \def\isoquinolinehi{% \@ifnextchar[{\@isoquinolinehi[@}{\@isoquinolinehi[acfhk]}}% \def\@isoquinolinehi[#1]#2{% \iforigpt \typeout{command `isoquinolinehi' % is based on `decaheterohi'.}\fi% \decaheterohi[#1]{2==N}{#2}}% \def\quinoxalineh{% \@ifnextchar[{\@quinoxalineh[@}{\@quinoxalineh[acfhk]}}% \def\@quinoxalineh[#1]#2{% \iforigpt \typeout{command `quinoxalineh' % is based on `decaheteroh'.}\fi% \decaheteroh[#1]{1==N;4==N}{#2}}% \def\quinoxalinehi{% \@ifnextchar[{\@quinoxalinehi[@}{\@quinoxalinehi[acfhk]}}% \def\@quinoxalinehi[#1]#2{% \iforigpt \typeout{command `quinoxalinehi' % is based on `decaheterohi'.}\fi% \decaheterohi[#1]{1==N;4==N}{#2}}% \def\quinazolineh{% \@ifnextchar[{\@quinazolineh[@}{\@quinazolineh[acfhk]}}% \def\@quinazolineh[#1]#2{% \iforigpt \typeout{command `quinazolineh' % is based on `decaheteroh'.}\fi% \decaheteroh[#1]{1==N;3==N}{#2}}% \def\quinazolinehi{% \@ifnextchar[{\@quinazolinehi[@}{\@quinazolinehi[acfhk]}}% \def\@quinazolinehi[#1]#2{% \iforigpt \typeout{command `quinazolinehi' % is based on `decaheterohi'.}\fi% \decaheterohi[#1]{1==N;3==N}{#2}}% \def\cinnolineh{% \@ifnextchar[{\@cinnolineh[@}{\@cinnolineh[acfhk]}}% \def\@cinnolineh[#1]#2{% \iforigpt \typeout{command `cinnolineh' % is based on `decaheteroh'.}\fi% \decaheteroh[#1]{1==N;2==N}{#2}}% \def\cinnolinehi{% \@ifnextchar[{\@cinnolinehi[@}{\@cinnolinehi[acfhk]}}% \def\@cinnolinehi[#1]#2{% \iforigpt \typeout{command `cinnolinehi' % is based on `decaheterohi'.}\fi% \decaheterohi[#1]{1==N;2==N}{#2}}% \def\pteridineh{% \@ifnextchar[{\@pteridineh[@}{\@pteridineh[acfhk]}}% \def\@pteridineh[#1]#2{% \iforigpt \typeout{command `pteridineh' % is based on `decaheteroh'.}\fi% \decaheteroh[#1]{1==N;3==N;5==N;8==N}{#2}}% \def\pteridinehi{% \@ifnextchar[{\@pteridinehi[@}{\@pteridinehi[acfhk]}}% \def\@pteridinehi[#1]#2{% \iforigpt \typeout{command `pteridinehi' % is based on `decaheterohi'.}\fi% \decaheterohi[#1]{1==N;3==N;5==N;8==N}{#2}}% \def\nonaheteroh{\@ifnextchar({\@nona@heteroh(@}{\@nona@heteroh(@)}} \def\@nona@heteroh(#1){\@ifnextchar[{\@nona@@heteroh(#1)[@}% {\@nona@@heteroh(#1)[@]}} \def\@nona@@heteroh(#1)[#2]#3#4{\@ifnextchar[% {\@nonaheteroh(#1)[#2]{#3}{#4}[@}% {\@nonaheteroh(#1)[#2]{#3}{#4}[@]}} \def\@nonaheteroh(#1)[#2]#3#4[#5]{% \iniflag\iniatom% \test@vertix@nonav{#3}% \@reset@ylsw% \ylpositionh{#4}{5}{1}{5}{-1}% %substituents on 1 to 3 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \else {\let\ddd=\eee\let\eee=\fff\let\fff=\gggA \ylpositionh{#4}{11}{3}{7}{-1}% %substituents on 5 to 7 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {\let\aaa=\hhh \ylpositionh{#4}{-3}{0}{2}{0}%%substituent on 4 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {% \clipdetection% \@clipfusefalse \if@iclip \@clipfusetrue \fi% \ylatombondposition{#4}{-8}{4}% %9 for 7a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-303}\def\@@yli{171}\fi \else {% \clipdetection% \@clipfusefalse \if@jclip \@clipfusetrue \fi% \ylatombondposition{#4}{-7}{10}% %8 for 3a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-103}\def\@@yli{171}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (1200,1200)(-400,-800){nonaheteroh}%2002/4/30 by S. Fujita \begingroup \resetbdsw% \@bond@@omit{#5}% {\let\fff=\jjj \let\eee=\iii% \set@skel@bondh{#1}{a}{c}% bond between 1 and 2 \@aaa -> \hskbondc etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@longbond{#1}{c}{hskbondvert}% % bond between 3 and 3a \@ccc -> \hskbondhoriz etc \set@skel@bondh{#1}{j}{e}% bond between 3a and 7a \@jjj -> \hskbonde etc \set@skel@bondh{#1}{i}{d}% bond between 7a and 1 \@iii -> \hskbondd etc }% {\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA \let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\set@skel@bondh{#1}{d}{a}}% % bond between 3a and 4 \@ddd -> \hskbonda etc \Put@Direct(0,-342){\set@skel@bondh{#1}{h}{c}}% % bond between 7a and 7 \@hhh -> \hskbondc etc \Put@Direct(0,-342){\set@skel@bondh{#1}{g}{d}}% % bond between 6 and 7 \@ggg -> \hskbondd etc \Put@Direct(0,-342){\set@skel@bondh{#1}{f}{e}}% % bond between 5 and 6 \@fff -> \hskbonde etc \Put@Direct(0,-342){\set@skel@bondh{#1}{e}{f}}% % bond between 4 and 5 \@eee -> \hskbondf 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,-342){\hbondb}% bond between 3a and 7a \Put@Direct(0,-342){\hbondf}% bond between 4 and 5 \Put@Direct(0,-342){\hbondd}% bond between 6 and 7 }% \else \if\member l\relax% \else \if\member a\relax% \Put@Direct(0,0){\hbondc}% bond between 3 and 4 \else \if\member b\relax% \Put@Direct(0,0){\hbondb}% bond between 2 and 3 \else \if\member c\relax% \Put@Direct(0,0){\hbondvert}% bond between 3 and 3a \else \if\member d\relax% {\let\aaa=\hhh \let\bbb=\jjj% \Put@Direct(0,-342){\hbonda}% bond between 4 and 3a }% \else \if\member e\relax% {\let\aaa=\hhh \let\fff=\gggA% \Put@Direct(0,-342){\hbondf}% bond between 4 and 5 }% \else \if\member f\relax% {\let\eee=\fff \let\fff=\gggA% \Put@Direct(0,-342){\hbonde}% bond between 5 and 6 }% \else \if\member g\relax% {\let\ddd=\eee \let\eee=\fff% \Put@Direct(0,-342){\hbondd}% bond between 6 and 7 }% \else \if\member h\relax% {\let\ccc=\iii \let\ddd=\eee% \Put@Direct(0,-342){\hbondc}% bond between 7 and 7a }% \else \if\member i\relax% {\let\eee=\iii% \Put@Direct(0,0){\hbondd}% bond between 1 and 7a }% \else \if\member j\relax% {\let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\hbondb}% bond between 7a and 3a }% \else \if\member J\relax% {\let\eee=\iii\let\fff=\jjj% \Put@Direct(0,0){\hbonde}% bond between 7a and 3a }% \else \if\member B%left aromatic circle \Put@oCircle(233,0){180}% %circle (five-membered) \else \if\member A%left aromatic circle \Put@oCircle(203,-342){240}% %circle (six-membered) \else \expandafter\twoCH@@R\member//% \def\aax{3a}\def\aay{7a}% \if\@@tmpa 1\relax% \putratom{272}{-18}{\@@tmpb}% % right type \else\if\@@tmpa 2\relax% \putratom{233}{60}{\@@tmpb}% % right type \else\if\@@tmpa 3\relax% \putratom{120}{60}{\@@tmpb}% % right type \else\if\@@tmpa 4\relax% \putratom{68}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 5\relax% \putratom{120}{-452}{\@@tmpb}% % right type \else\if\@@tmpa 6\relax% \putratom{233}{-452}{\@@tmpb}% % right type \else\if\@@tmpa 7\relax% \putratom{272}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 8\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aax\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aay\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 9\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 0\relax% \putratom{196}{-30}{\@@tmpb}% % right type \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% \expandafter\twoCH@R\member//% \set@fusion@nonah \fi\fi\fi\fi\fi\fi\fi\fi\fi% \fi\fi\fi\fi\fi\fi}% \iniflag \@tmpclipfalse \Put@Direct(0,-342){% %%\@clipfalse%2003/5/1 bugfix by Shinsaku Fujita deleted/2006/9/5 \set@hetatom@sixh{#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 %%\developclipinfo%%2006/9/5 deleted \Put@Direct(0,0){\set@hetatom@sixh{#3}{5}{1}{5}{-1}% \storeclipinfo }% %substituents on 1 to 3 %%\developclipinfo%%2006/9/5 deleted \Put@Direct(0,-342){\set@hetatom@sixh{#3}{-3}{0}{2}{0}% \@hclipfalse \if@aclip \@hcliptrue \fi%%2006/9/5 bugfix \storeclipinfo }%%substituent on 4 %%\developclipinfo%%2006/9/5 deleted \Put@Direct(0,0){\set@vrtx@nonafuseh{#3}% \@iclipfalse%2006/9/5 bugfix by Shinsaku Fujita \@jclipfalse%2006/9/5 bugfix by Shinsaku Fujita \@tmpclipfalse %% \if@iclip \global\@tmpcliptrue \fi %% \if@jclip \global\@icliptrue \fi %% \if@tmpclip \global\@jcliptrue \fi \if@iclip \@tmpcliptrue \fi \if@jclip \@icliptrue \else \@iclipfalse \fi \if@tmpclip \@jcliptrue \else \@jclipfalse \fi \storeclipinfo }% fused positions \developclipinfo \Put@Direct(0,0){\setsixringh{#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,-342){\setsixringh{#4}{11}{3}{7}{-1}}% }% {\@aclipfalse \if@hclip \@acliptrue \fi% %substituent on 4 \Put@Direct(0,-342){\setsixringh{#4}{-3}{0}{2}{0}}% }% {% \@clipfusefalse \if@jclip \@clipfusetrue \fi%2006/9/5 \Put@Direct(303,-171){\setatombond{#4}{-8}{4}}% %9 for 7a position }% {% \@clipfusefalse \if@iclip \@clipfusetrue \fi%2006/9/5 \Put@Direct(103,-171){\setatombond{#4}{-7}{10}}% %8 for 3a position }% \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \nonaheteroh macro \def\set@vrtx@nonafuseh#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% \global\@icliptrue% \putlatom{135}{-211}{\@memberb}% % left type \else\if\@tmpb h% \XyMTeXWarning{Forbidden fused position `3a' or `8'}% \else\if\@tmpb s% \XyMTeXWarning{Forbidden fused position `3a' or `8'}% \else\ifx\@tmpb\empty\relax \else \XyMTeXWarning{Forbidden fused position `3a' or `8'}% \fi\fi\fi\fi \or\or\or \or%7 \if\@tmpb a% \global\@jcliptrue% \putratom{273}{-211}{\@memberb}% % right type \else\if\@tmpb h% \XyMTeXWarning{Forbidden fused position `7a' or `9'}% \else\if\@tmpb s% \XyMTeXWarning{Forbidden fused position `7a' or `9'}% \else\ifx\@tmpb\empty\relax \else \XyMTeXWarning{Forbidden fused position `7a' or `9'}% \fi\fi\fi\fi \or%8 (= 3a) \ifx\@tmpb\empty% \global\@icliptrue% \putlatom{135}{-211}{\@memberb}% % left type \else \XyMTeXWarning{Forbidden fused position `3a' or `8'}% \fi \or%9 (= 7a) \ifx\@tmpb\empty% \global\@jcliptrue% \putratom{273}{-211}{\@memberb}% % right type \else \XyMTeXWarning{Forbidden fused position `7a' or `9'}% \fi \fi\fi}% }% end of the macro \set@vrtx@nonafuseh \def\nonaheterohi{\@ifnextchar({\@nona@heterohi(@}{\@nona@heterohi(@)}} \def\@nona@heterohi(#1){\@ifnextchar[{\@nona@@heterohi(#1)[@}% {\@nona@@heterohi(#1)[@]}} \def\@nona@@heterohi(#1)[#2]#3#4{\@ifnextchar[% {\@nonaheterohi(#1)[#2]{#3}{#4}[@}% {\@nonaheterohi(#1)[#2]{#3}{#4}[@]}} \def\@nonaheterohi(#1)[#2]#3#4[#5]{% \iniflag\iniatom%initialize \test@vertix@nonavi{#3}% \@reset@ylsw% \ylpositionh{#4}{0}{0}{4}{0}% %substituents on 1 to 3 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{0}\fi \else {\let\ddd=\eee\let\eee=\fff\let\fff=\gggA \ylpositionh{#4}{0}{3}{7}{0}%%substituents on 4 to 6 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {\let\aaa=\hhh \ylpositionh{#4}{-6}{0}{2}{0}%%substituent on 7 }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{0}\def\@@yli{342}\fi \else {% \clipdetection% \@clipfusefalse \if@iclip \@clipfusetrue \fi% \ylatombondposition{#4}{-7}{4}% %8 for 3a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-303}\def\@@yli{171}\fi \else {% \clipdetection% \@clipfusefalse \if@jclip \@clipfusetrue \fi% \ylatombondposition{#4}{-8}{10}%%9 for 7a position }% \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{-103}\def\@@yli{171}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (1200,1200)(-400,-800){nonaheterohi}%2002/4/30 by S. Fujita \begingroup \resetbdsw% \@bond@@omit{#5}% {\let\fff=\jjj \let\eee=\iii% \set@skel@bondh{#1}{a}{a}% bond between 1 and 2 \@aaa -> \hskbonda etc \set@skel@bondh{#1}{b}{b}% bond between 2 and 3 \@bbb -> \hskbondb etc \set@skel@longbond{#1}{c}{hskbondverti}% % bond between 3 and 3a \@ccc -> \hskbondverti etc \set@skel@bondh{#1}{j}{e}% bond between 3a and 7a \@jjj -> \hskbonde etc \set@skel@bondh{#1}{i}{f}% bond between 7a and 1 \@iii -> \hskbondf etc }% {\let\aaa=\hhh \let\ddd=\eee\let\eee=\fff\let\fff=\gggA% \let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\set@skel@bondh{#1}{h}{a}}% % bond between 7a and 7 \@hhh -> \hskbonda etc \Put@Direct(0,-342){\set@skel@bondh{#1}{d}{c}}% % bond between 3a and 4 \@ddd -> \hskbondc etc \Put@Direct(0,-342){\set@skel@bondh{#1}{e}{d}}% % bond between 4 and 5 \@eee -> \hskbondd etc \Put@Direct(0,-342){\set@skel@bondh{#1}{f}{e}}% % bond between 5 and 6 \@fff -> \hskbonde etc \Put@Direct(0,-342){\set@skel@bondh{#1}{g}{f}}% % bond between 6 and 7 \@ggg -> \hskbondf 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,-342){\hbondb}% bond between 3a and 7a \Put@Direct(0,-342){\hbondf}% bond between 6 and 7 \Put@Direct(0,-342){\hbondd}% bond between 4 and 5 }% \else \if\member l\relax% \else \if\member a\relax% \Put@Direct(0,0){\hbonda}% bond between 1 and 2 \else \if\member b\relax% \Put@Direct(0,0){\hbondb}% bond between 2 and 3 \else \if\member c\relax% \Put@Direct(0,0){\hbondverti}% bond between 3 and 3a \else \if\member d\relax% {\let\ccc=\iii \let\ddd=\eee% \Put@Direct(0,-342){\hbondc}% bond between 4 and 3a }% \else \if\member e\relax% {\let\ddd=\eee\let\eee=\fff% \Put@Direct(0,-342){\hbondd}% bond between 4 and 5 }% \else \if\member f\relax% {\let\eee=\fff \let\fff=\gggA% \Put@Direct(0,-342){\hbonde}% bond between 5 and 6 }% \else \if\member g\relax% {\let\aaa=\hhh \let\fff=\gggA% \Put@Direct(0,-342){\hbondf}% bond between 7 and 6 }% \else \if\member h\relax% {\let\aaa=\hhh \let\bbb=\jjj% \Put@Direct(0,-342){\hbonda}% bond between 7 and 7a }% \else \if\member i\relax% {\let\fff=\jjj% \Put@Direct(0,0){\hbondf}% bond between 1 and 7a }% \else \if\member j\relax% {\let\ccc=\iii\let\bbb=\jjj% \Put@Direct(0,-342){\hbondb}% bond between 7a and 3a }% \else \if\member J\relax% {\let\eee=\iii\let\fff=\jjj% \Put@Direct(0,0){\hbonde}% bond between 7a and 3a }% \else \if\member B%aromatic circle \Put@oCircle(173,0){180}% %circle (five-membered) \else \if\member A%aromatic circle \Put@oCircle(203,-342){240}% %circle (six-membered) \else \expandafter\twoCH@@R\member//% \def\aax{7a}\def\aay{3a}% \if\@@tmpa 1\relax% \putratom{68}{-18}{\@@tmpb}% % right type \else\if\@@tmpa 3\relax% \putratom{233}{60}{\@@tmpb}% % right type \else\if\@@tmpa 2\relax% \putratom{120}{60}{\@@tmpb}% % right type \else\if\@@tmpa 7\relax% \putratom{68}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 6\relax% \putratom{120}{-452}{\@@tmpb}% % right type \else\if\@@tmpa 5\relax% \putratom{233}{-452}{\@@tmpb}% % right type \else\if\@@tmpa 4\relax% \putratom{272}{-360}{\@@tmpb}% % right type \else\if\@@tmpa 9\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aax\relax% \putratom{120}{-110}{\@@tmpb}% % right type \else\ifx\@@tmpa\aay\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 8\relax% \putratom{233}{-110}{\@@tmpb}% % right type \else\if\@@tmpa 0\relax% \putratom{140}{-30}{\@@tmpb}% % right type \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% \expandafter\twoCH@R\member//% \set@fusion@nonahi \fi\fi\fi\fi\fi\fi\fi\fi\fi% \fi\fi\fi\fi\fi\fi}% \iniflag \Put@Direct(0,0){\set@hetatom@sixh{#3}{0}{0}{4}{0}% \storeclipinfo }% %substituents on 1 to 3 \developclipinfo \Put@Direct(0,-342){\set@hetatom@sixh{#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,-342){% \@aclipfalse\@bclipfalse\@cclipfalse%2003/05/01 bugfix by Shinsaku Fujita \set@hetatom@sixh{#3}{-6}{0}{2}{0}% \@hclipfalse \if@aclip \@hcliptrue \fi \storeclipinfo }%%substituent on 7 \developclipinfo \Put@Direct(0,0){\set@vrtx@nonafusehi{#3}% \storeclipinfo }% fused positions \developclipinfo \Put@Direct(0,0){\setsixringh{#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,-342){\setsixringh{#4}{0}{3}{7}{0}}% }% {\@aclipfalse \if@hclip \@acliptrue \fi% %substituent on 7 \Put@Direct(0,-342){\setsixringh{#4}{-6}{0}{2}{0}}% }% {\@clipfusefalse \if@iclip \@clipfusetrue \fi% \Put@Direct(303,-171){\setatombond{#4}{-7}{4}}% %8 for 3a position }% {\@clipfusefalse \if@jclip \@clipfusetrue \fi% \Put@Direct(103,-171){\setatombond{#4}{-8}{10}}%%9 for 7a position }% \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \nonaheterohi macro \def\set@vrtx@nonafusehi#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% \global\@icliptrue% \putratom{273}{-211}{\@memberb}% % right type \else\relax \fi \or%4 \or%5 \or%6 \or%7 \if\@tmpb a% \global\@jcliptrue% \putlatom{135}{-211}{\@memberb}% % left type \else\relax \fi \or%8 (= 3a) \ifx\@tmpb\empty \global\@icliptrue% \putratom{273}{-211}{\@memberb}% % right type \else \XyMTeXWarning{Forbidden spiro ring for the 3a position}% \fi \or%9 (= 7a) \ifx\@tmpb\empty \global\@jcliptrue% \putlatom{135}{-211}{\@memberb}% % left type \else \XyMTeXWarning{Forbidden spiro ring for the 7a position}% \fi \fi\fi}% }% end of the macro \set@vrtx@nonafusehi \def\purineh{\@ifnextchar[{\@purineh[@}{\@purineh[ra]}}% \def\@purineh[#1]#2{% \iforigpt \typeout{command `purineh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{1==N;3==N;5==N;7==N}{#2}}% \def\purinehi{\@ifnextchar[{\@purinehi[@}{\@purinehi[ra]}}% \def\@purinehi[#1]#2{% \iforigpt \typeout{command `purinehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{1==N;3==N;5==N;7==N}{#2}}% \def\indoleh{\@ifnextchar[{\@indoleh[@}{\@indoleh[rb]}}% \def\@indoleh[#1]#2{% \iforigpt \typeout{command `indoleh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{1==N}{#2}}% \def\indolehi{\@ifnextchar[{\@indolehi[@}{\@indolehi[rb]}}% \def\@indolehi[#1]#2{% \iforigpt \typeout{command `indolehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{1==N}{#2}}% \def\indolizineh{% \@ifnextchar[{\@indolizineh[@}{\@indolizineh[aceg]}}% \def\@indolizineh[#1]#2{% \iforigpt \typeout{command `indolizineh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{7a==N}{#2}}% \def\indolizinehi{% \@ifnextchar[{\@indolizinehi[@}{\@indolizinehi[aceg]}}% \def\@indolizinehi[#1]#2{% \iforigpt \typeout{command `indolizinehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{7a==N}{#2}}% \def\isoindoleh{% \@ifnextchar[{\@isoindoleh[@}{\@isoindoleh[cegi]}}% \def\@isoindoleh[#1]#2{% \iforigpt \typeout{command `isoindoleh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{2==N}{#2}}% \def\isoindolehi{% \@ifnextchar[{\@isoindolehi[@}{\@isoindolehi[cegi]}}% \def\@isoindolehi[#1]#2{% \iforigpt \typeout{command `isoindolehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{2==N}{#2}}% \def\benzofuraneh{% \@ifnextchar[{\@benzofuraneh[@}{\@benzofuraneh[rb]}}% \def\@benzofuraneh[#1]#2{% \iforigpt \typeout{command `benzofuraneh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{1==O}{#2}}% \def\benzofuranehi{% \@ifnextchar[{\@benzofuranehi[@}{\@benzofuranehi[rb]}}% \def\@benzofuranehi[#1]#2{% \iforigpt \typeout{command `benzofuranehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{1==O}{#2}}% \def\isobenzofuraneh{\@ifnextchar[{\@isobenzofuraneh[@}% {\@isobenzofuraneh[cegi]}}% \def\@isobenzofuraneh[#1]#2{% \iforigpt \typeout{command `isobenzofuraneh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{2==O}{#2}}% \def\isobenzofuranehi{\@ifnextchar[{\@isobenzofuranehi[@}% {\@isobenzofuranehi[cegi]}}% \def\@isobenzofuranehi[#1]#2{% \iforigpt \typeout{command `isobenzofuranehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{2==O}{#2}}% \def\benzoxazoleh{% \@ifnextchar[{\@benzoxazoleh[@}{\@benzoxazoleh[rb]}}% \def\@benzoxazoleh[#1]#2{% \iforigpt \typeout{command `benzoxazoleh' % is based on `nonaheteroh'.}\fi% \nonaheteroh[#1]{1==O;3==N}{#2}}% \def\benzoxazolehi{% \@ifnextchar[{\@benzoxazolehi[@}{\@benzoxazolehi[rb]}}% \def\@benzoxazolehi[#1]#2{% \iforigpt \typeout{command `benzoxazolehi' % is based on `nonaheterohi'.}\fi% \nonaheterohi[#1]{1==O;3==N}{#2}}% \def\sixunith{\@ifnextchar[{\@sixunith[@}{\@sixunith[@]}} \def\@sixunith[#1]#2#3#4{\sixheteroh[#1]{#2}{#3}[#4]} \def\fiveunith{\@ifnextchar[{\@fiveunith[@}{\@fiveunith[r]}} \def\@fiveunith[#1]#2#3#4{\fiveheteroh[#1]{#2}{#3}[#4]} \def\fiveunithi{\@ifnextchar[{\@fiveunithi[@}{\@fiveunithi[r]}} \def\@fiveunithi[#1]#2#3#4{\fiveheterohi[#1]{#2}{#3}[#4]} \def\threeheteroh{\@ifnextchar({\@three@heteroh(@}{\@three@heteroh(@)}} \def\@three@heteroh(#1){\@ifnextchar[{\@three@@heteroh(#1)[@}% {\@three@@heteroh(#1)[@]}} \def\@three@@heteroh(#1)[#2]#3#4{\@ifnextchar[% {\@threeheteroh(#1)[#2]{#3}{#4}[@}% {\@threeheteroh(#1)[#2]{#3}{#4}[@]}} \def\@threeheteroh(#1)[#2]#3#4[#5]{% \iniatom\iniflag%initialize \test@vertix@sixv{#3}{d}{f}{b}{@}{@}{@}%tentative use for six-h \@reset@ylsw% \ylpositionh{#4}{3}{3}{5}{0}%subst 1 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{235}\def\@@yli{-103}\fi \else \ylpositionh{#4}{-1}{1}{3}{0}%subst 3 \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{103}\def\@@yli{-29}\fi \else \ylpositionh{#4}{4}{5}{7}{0}%subst 2 \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{103}\def\@@yli{-171}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (580,700)(-200,-240){threeheteroh}% (200,240)%2002/4/30 by S. Fujita \iniatom\iniflag%initialize \test@vertix@sixv{#3}{c}{e}{a}{@}{@}{@}% \test@vertix@sixv{#3}{b}{d}{f}{@}{@}{@}% {\resetbdsw% \@bond@@omit{#5}% \Put@Direct(0,0){\set@skel@bond{#1}{a}{c}}% % bond between 1 and 2 \@aaa -> \skbondc etc \Put@Direct(171,-103){\set@skel@bond{#1}{b}{e}}% % bond between 2 and 3 \@bbb -> \skbonde etc \Put@Direct(0,-200){\set@skel@bond{#1}{c}{a}}% % bond between 3 and 1 \@ccc -> \skbonda etc }% \@tfor\member:=#2\do{% \if\member r\relax% \else\if\member a\relax\Put@Direct(0,0){\bondc}% \else\if\member b\relax\Put@Direct(171,-103){\bonde}% \else\if\member c\relax\Put@Direct(0,-200){\bonda}% \else\if\member A\relax% aromatic circle \Put@oCircle(70,103){100}% %circle \else \expandafter\twoCH@@R\member//% \set@fusionadd@threeh \fi\fi\fi\fi\fi% }% \iniflag \Put@Direct(-215,103){\set@hetatom@sixh{#3}{3}{3}{5}{0}% \storeclipinfo }%subst 1 <--six h 4 \developclipinfo \Put@Direct(-103,29){\set@hetatom@sixh{#3}{-1}{1}{3}{0}% \storeclipinfo }%subst 3 <--six h 2 \developclipinfo \Put@Direct(-103,171){\set@hetatom@sixh{#3}{4}{5}{7}{0}% \storeclipinfo }%subst 2 <--six h 6 \developclipinfo \Put@Direct(-235,103){\setsixringh{#4}{3}{3}{5}{0}}%subst 1 \Put@Direct(-103,29){\setsixringh{#4}{-1}{1}{3}{0}}%subst 3 \Put@Direct(-103,171){\setsixringh{#4}{4}{5}{7}{0}}%subst 2 \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \threeheteroh macro \def\set@fusionadd@threeh{% \if\@@tmpa 0\relax% \putratom{35}{85}{\scriptsize\@@tmpb}% % right type \else\if\@@tmpa 1\relax% \putratom{80}{85}{\scriptsize\@@tmpb}% % right type \else\if\@@tmpa 2\relax% \putratom{15}{50}{\scriptsize\@@tmpb}% % right type \else\if\@@tmpa 3\relax% \putratom{15}{120}{\scriptsize\@@tmpb}% % right type \else\if\@@tmpa 4\relax% \putratom{180}{130}{\scriptsize\@@tmpb}% % right type \else\if\@@tmpa 5\relax% \putratom{20}{-60}{\scriptsize\@@tmpb}% % right type \else\if\@@tmpa 6\relax% \putratom{20}{230}{\scriptsize\@@tmpb}% % right type \else \set@fusion@threeh \fi\fi\fi\fi\fi\fi\fi% }% \def\set@fusion@threeh{% \if\@@tmpa b\relax% \putlratom{0}{0}{\@@tmpb}% % bond fused \FuseWarning{0}{-200}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{b}% \else\if\@@tmpa B\relax% \putlratom{0}{200}{\@@tmpb}% % bond fused \FuseWarning{0}{200}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{B}% \else\if\@@tmpa a\relax% \putlratom{171}{103}{\@@tmpb}% % bond fused \FuseWarning{171}{103}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{a}% \else\if\@@tmpa A\relax% \putlratom{0}{0}{\@@tmpb}% % bond fused \FuseWarning{-171}{-103}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{A}% \else\if\@@tmpa c\relax% \putlratom{0}{200}{\@@tmpb}% % bond fused \FuseWarning{-171}{103}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{c}% \else\if\@@tmpa C\relax% \putlratom{171}{103}{\@@tmpb}% % bond fused \FuseWarning{171}{-103}% {\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@threeh \def\oxiraneh{\@ifnextchar[{\@oxiraneh[@}{\@oxiraneh[]}} \def\@oxiraneh[#1]#2{% \iforigpt \typeout{command `oxiraneh' % is based on `threeheteroh'.}\fi% \threeheteroh[#1]{1==O}{#2}} \def\aziridineh{\@ifnextchar[{\@aziridineh[@}{\@aziridineh[]}} \def\@aziridineh[#1]#2{% \iforigpt \typeout{command `aziridineh' % is based on `threeheteroh'.}\fi% \threeheteroh[#1]{1==N}{#2}} \def\thiiraneh{\@ifnextchar[{\@thiiraneh[@}{\@thiiraneh[]}} \def\@thiiraneh[#1]#2{% \iforigpt \typeout{command `thiiraneh' % is based on `threeheteroh'.}\fi% \threeheteroh[#1]{1==S}{#2}} \def\threeheterohi{\@ifnextchar({\@three@heterohi(@}{\@three@heterohi(@)}} \def\@three@heterohi(#1){\@ifnextchar[{\@three@@heterohi(#1)[@}% {\@three@@heterohi(#1)[@]}} \def\@three@@heterohi(#1)[#2]#3#4{\@ifnextchar[% {\@threeheterohi(#1)[#2]{#3}{#4}[@}% {\@threeheterohi(#1)[#2]{#3}{#4}[@]}} \def\@threeheterohi(#1)[#2]#3#4[#5]{% \iniatom\iniflag%initialize \test@vertix@sixv{#3}{a}{e}{c}{@}{@}{@}%tentative use for six-h \@reset@ylsw% \ylpositionh{#4}{0}{0}{2}{0}%subst 1 \if@ylsw \ifx\@@ylii\empty \def\@@ylii{171}\def\@@yli{-103}\fi \else \ylpositionh{#4}{0}{2}{4}{0}%subst 3 \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{303}\def\@@yli{-29}\fi \else \ylpositionh{#4}{3}{4}{6}{0}%subst 2 \fi \if@ylsw \ifx\@@ylii\empty \def\@@ylii{303}\def\@@yli{-171}\fi \fi \begin{ShiftPicEnvB}(0,0)(-\yl@shiftii,-\yl@shifti)/% (580,700)(-400,-240){threeheterohi}% (400,240)%2002/4/30 by S. Fujita \iniatom\iniflag%initialize \test@vertix@sixv{#3}{e}{c}{a}{@}{@}{@}% \test@vertix@sixv{#3}{f}{d}{b}{@}{@}{@}% {\resetbdsw% \@bond@@omit{#5}% \Put@Direct(0,0){\set@skel@bond{#1}{a}{d}}% % bond between 1 and 2 \@aaa -> \skbondd etc \Put@Direct(-171,-103){\set@skel@bond{#1}{b}{b}}% % bond between 2 and 3 \@bbb -> \skbondb etc \Put@Direct(0,-200){\set@skel@bond{#1}{c}{f}}% % bond between 3 and 1 \@ccc -> \skbondf etc }% \@tfor\member:=#2\do{% \if\member r\relax% \else\if\member a\relax\Put@Direct(0,0){\bondd}% \else\if\member b\relax\Put@Direct(-171,-103){\bondb}% \else\if\member c\relax\Put@Direct(0,-200){\bondf}% \else\if\member A\relax% aromatic circle \Put@oCircle(70,103){100}% %circle \else \expandafter\twoCH@@R\member//% \set@fusionadd@threehi \fi\fi\fi\fi\fi% }% \iniflag \Put@Direct(-171,103){\set@hetatom@sixh{#3}{0}{0}{2}{0}% \storeclipinfo }%subst 1 <--six h 1 \developclipinfo \Put@Direct(-303,29){\set@hetatom@sixh{#3}{0}{2}{4}{0}% \storeclipinfo \developclipinfo }%subst 3 <--six h 3 \Put@Direct(-303,171){\set@hetatom@sixh{#3}{3}{4}{6}{0}% \storeclipinfo }%subst 2 <--six h 5 \developclipinfo \Put@Direct(-171,103){\setsixringh{#4}{0}{0}{2}{0}}%subst 1 \Put@Direct(-303,29){\setsixringh{#4}{0}{2}{4}{0}}%subst 3 \Put@Direct(-303,171){\setsixringh{#4}{3}{4}{6}{0}}%subst 2 \end{ShiftPicEnvB}% \iniatom\iniflag}% %end of \threeheterohi macro \def\set@fusionadd@threehi{% \if\@@tmpa 0\relax% \putlatom{-35}{85}{\scriptsize\@@tmpb}% % left type \else\if\@@tmpa 1\relax% \putlatom{-80}{85}{\scriptsize\@@tmpb}% % left type \else\if\@@tmpa 2\relax% \putlatom{-15}{50}{\scriptsize\@@tmpb}% % left type \else\if\@@tmpa 3\relax% \putlatom{-15}{120}{\scriptsize\@@tmpb}% % left type \else\if\@@tmpa 4\relax% \putlatom{-180}{130}{\scriptsize\@@tmpb}% % left type \else\if\@@tmpa 5\relax% \putlatom{-20}{-60}{\scriptsize\@@tmpb}% % left type \else\if\@@tmpa 6\relax% \putlatom{-20}{230}{\scriptsize\@@tmpb}% % left type \else \set@fusion@threehi \fi\fi\fi\fi\fi\fi\fi% }% \def\set@fusion@threehi{% \if\@@tmpa b\relax% \putlratom{0}{0}{\@@tmpb}% % bond fused \FuseWarning{0}{-200}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{b}% \else\if\@@tmpa B\relax% \putlratom{0}{200}{\@@tmpb}% % bond fused \FuseWarning{0}{200}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{B}% \else\if\@@tmpa a\relax% \putlratom{-171}{103}{\@@tmpb}% % bond fused \FuseWarning{-171}{103}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{a}% \else\if\@@tmpa A\relax% \putlratom{0}{0}{\@@tmpb}% % bond fused \FuseWarning{171}{-103}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{A}% \else\if\@@tmpa c\relax% \putlratom{0}{200}{\@@tmpb}% % bond fused \FuseWarning{171}{103}% {\fuseAx}{\fuseAy}{\fuseBx}{\fuseBy}{c}% \else\if\@@tmpa C\relax% \putlratom{-171}{103}{\@@tmpb}% % bond fused \FuseWarning{-171}{-103}% {\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@threehi \def\oxiranehi{\@ifnextchar[{\@oxiranehi[@}{\@oxiranehi[]}} \def\@oxiranehi[#1]#2{% \iforigpt \typeout{command `oxiranehi' % is based on `threeheterohi'.}\fi% \threeheterohi[#1]{1==O}{#2}} \def\aziridinehi{\@ifnextchar[{\@aziridinehi[@}{\@aziridinehi[]}} \def\@aziridinehi[#1]#2{% \iforigpt \typeout{command `aziridinehi' % is based on `threeheterohi'.}\fi% \threeheterohi[#1]{1==N}{#2}} \def\thiiranehi{\@ifnextchar[{\@thiiranehi[@}{\@thiiranehi[]}} \def\@thiiranehi[#1]#2{% \iforigpt \typeout{command `thiiranehi' % is based on `threeheterohi'.}\fi% \threeheterohi[#1]{1==S}{#2}} \endinput %% %% End of file `hetaromh.sty'.