summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/xymtex/xymyl.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/xymtex/xymyl.tex')
-rw-r--r--Master/texmf-dist/doc/latex/xymtex/xymyl.tex2900
1 files changed, 2900 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/xymtex/xymyl.tex b/Master/texmf-dist/doc/latex/xymtex/xymyl.tex
new file mode 100644
index 00000000000..daae2314c7d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/xymtex/xymyl.tex
@@ -0,0 +1,2900 @@
+%xymyl.tex
+%Copyright (C) 1998, Shinsaku Fujita, All rights reserved.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%This file is a part of xymtx200.tex that is the manual of the macro
+%package `XyMTeX' (version 2.00) for drawing chemical structural formulas.
+%This file is not permitted to be translated into Japanese and any other
+%languages.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Introduction}
+
+\section{History}
+\subsection{Version 1.00 (1993)}
+
+The first version of the \XyMTeX{} system (version 1.00, 1993)
+with a detailed on-line manual
+has been depositted to NIFTY-Serve archives (FPRINT library No.\ 7)
+by the author\cite{fujita2a} and to the CTAN by volunteers\cite{fujita2b}.
+The articles on the construction and usage of \XyMTeX{} have appeared in
+Ref. \cite{fujita1,fujita1a}.
+Although the packages (style files) of the \XyMTeX{} system have
+originally aimed at using under
+the \LaTeX{}2.09 system, they also work effectively
+under the \LaTeXe{} system \cite{lamport2,goossens} without any changes. Thus,
+what you have to do is to rewrite a top statement for \LaTeX{}2.09 such as
+\begin{verbatim}
+\documentstyle[epic,carom,hetarom]{article}
+\end{verbatim}
+into the counterpart for \LaTeXe{}, {\em e.g.},
+\begin{verbatim}
+\documentclass{article}
+\usepackage{epic,carom,hetarom}
+\end{verbatim}
+
+\subsection{Version 1.01 (1996)}
+
+The Version 1.01 of the \XyMTeX{} system has been released in 1996,
+when the system with a detailed on-line manual
+was depositted to NIFTY-Serve archives (FPRINT library No.\ 7)
+by the author \cite{fujita2c}. The system is now available
+from Fujita's homepage \cite{fujita2d} via internet
+or from a CD-ROM that is attached to the referece manual published
+in 1997 \cite{XyMTeXbook}.\footnote{%
+The basic items described in the \XyMTeX book are
+common and applied also in Version 2.00.
+Please refer to the \XyMTeX book, when
+they are used without explanations in this manual.}
+
+The purpose of version 1.01 is
+the updating of \XyMTeX{} to meet the \LaTeXe{} way of
+preparing packages (option style files).
+The following items have
+been revised or added for encouraging the \XyMTeX{} users
+to write articles of chemical fields.
+
+\begin{enumerate}
+\item Each of the old sty files of \XyMTeX{} has been rewritten
+into a dtx file, from which we have prepared a new sty file by using
+the {\sf docstrip} utility of \LaTeXe.
+If you want to obtain the document of each source
+file, you may apply \LaTeXe{} to the corresponding drv file, which
+has also been prepared from the dtx file by using the {\sf docstrip}
+utility.
+\item Macros for drawing chair-form cyclohexanes and
+for drawing adamantanes of an alternative type have been added.
+\item Macros for drawing polymers have been added.
+\item The package {\sf chemist.sty}, which was originally
+prepared for \cite{fujita2}, has been rewritten into a dtx file and
+added to \XyMTeX{} as a new component. This package enables us
+to use various functions such as
+ \begin{enumerate}
+ \item the numbering and cross-reference
+ of chemical compounds and derivatives,
+ \item various arrows of fixed and flexible length for chemical equations,
+ \item `chem' version and chemical environments for describing
+ chemical equations, and
+ \item various box-preparing macros for chemical or general use.
+ \end{enumerate}
+\end{enumerate}
+
+\subsection{Version 1.02 (1998, not released)}
+
+The Version 1.02 of \XyMTeX{} has been devoted to the
+development of the nested-substitution method,
+which simplifies the coding of \XyMTeX{} commands.
+In \XyMTeX{} version 1.01, each subsitituent is assumed to be rather small
+so that it can be specified by means of a substitution list ``SUBSLIST''.
+For example, 1-fluorobenzene,
+\begin{center}
+\bzdrh{4==F}
+\end{center}
+is drawn by the following code:
+\begin{verbatim}
+\bzdrh{4==F}
+\end{verbatim}
+To draw a substituent with a complicated structure,
+a designation of the same line produces an insufficient result.
+Thus, if we simply write the code
+\begin{verbatim}
+\bzdrh{4==\bzdrh{}}
+\end{verbatim}
+to draw a biphenyl structure,
+we have a separate structure as follows:
+
+\vskip1.5\baselineskip
+\begin{center}
+\bzdrh{4==\bzdrh{}}
+\end{center}
+
+Within the scope of \XyMTeX version 1.01,
+such a substituent with a complicated structure
+can be treated by three distinct methods
+(see Chapters 14 and 15 of \XyMTeX book).
+
+\begin{enumerate}
+\item(Method I)
+When we write a code \verb/\bzdrh{4==}\bzdrh{}/
+to draw a biphenyl structure,
+we obtain an insufficient result such as
+\begin{center}
+\bzdrh{4==}\bzdrh{}
+\end{center}
+since each command has an area to draw its target sturucture.
+To remedy this situation, we can write
+\begin{verbatim}
+\bzdrh{4==}\kern-33pt\bzdrh{}
+\end{verbatim}
+Then, we obtain the following structure:
+\begin{center}
+\bzdrh{4==}\kern-33pt\bzdrh{}
+\end{center}
+However, a more complicated adjustment is
+necessary to apply this method to a case in which
+the components of a structual formula are not linearly aligned.
+\item (Method II)
+We can carry out the same task by using
+the \LaTeX{} picture einvironment.
+The code
+\begin{verbatim}
+\begin{picture}(1400,700)(0,0)
+\put(0,0){\bzdrh{4==}}
+\put(546,0){\bzdrh{}}
+\end{picture}
+\end{verbatim}
+produces the following structure:
+\begin{center}
+\begin{picture}(1400,700)(0,0)
+\put(0,0){\bzdrh{4==}}
+\put(546,0){\bzdrh{}}
+\end{picture}
+\end{center}
+This method realizes such a complicated adustment as mentioned above,
+since the \verb/\put/ is capable of putting components at arbitrary positions.
+\item (Method III)
+In a further method of drawing the biphenyl structure,
+one phenyl group is regarded as a substituent of the other phenyl.
+These two parts can be combined by writing a code,
+\begin{verbatim}
+\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{}}}
+\end{verbatim}
+in which the commands \verb/\kern/ (for horizontal adjustment) and
+\verb/\lower/ (for vertical adjustment) are used to adjust the
+substitution site. Thereby, we have
+\begin{center}
+\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{}}}
+\end{center}
+This method has a disadvantage of calculating
+adjustment values manually for every formula to be drawn.
+\end{enumerate}
+
+These three methods are useful for drawing complicated structure.
+However, they have an essential disadvantage: their codes give
+no, or at most partial, connectivity data between parts to be combined, though
+such parts appear to be combined as a picture.
+For example, the code
+\begin{verbatim}
+\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==Cl}}}
+\end{verbatim}
+producing
+\begin{center}
+\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==Cl}}}
+\end{center}
+has no connectivity data at the meta position to the chlorine
+atom of the scecond benzene ring.
+
+As clarified by the discussion in the preceding paragraphs,
+the \XyMTeX{} system should have a function to place
+substituents at appropriate sites without complex designation,
+where connectivity data are maintained during the process
+of drawing.
+The target of \XyMTeX{} Version 1.02 is to treat nested
+substitution with the automatic adjustment of subsitution sites
+(named as the nested-substitution method).
+Concretely speaking, for example,
+such a code as
+\begin{verbatim}
+\bzdrh{1==F;4==\bzdrh{1==(yl);3==Cl}}
+\end{verbatim}
+directly produces
+\begin{center}
+\bzdrh{1==F;4==\bzdrh{1==(yl);3==Cl}}
+\end{center}
+where the code shows that the second benzene ring is
+linked to the para position of the first benzene ring
+at the meta position to the chlorine atom.
+Thus the target accomplished by the ``yl''-function,
+as shown in this code.
+
+\section{Version 2.00 (1998)}
+
+The ``yl''-function developed in \XyMTeX{} Version 1.02
+is regarded as a modification of SUSBLISTs.
+As an extention of this mothodology,
+BONDLISTs can be modified to treat ring fusion,
+since each ring fusion is considered to be a kind of
+substitution on a bond. In addition,
+ATOMLIST can also be used to
+treat spiro rings, since each spiro ring
+is a kind of atom replacement at an appropriate vertex.
+
+To expand the scope of the \XyMTeX{} system,
+we introduce several new functions as follows.
+\begin{enumerate}
+\item Several bond modifiers are added to draw
+alternative up- and down-bonds as well as
+to treat ring fusion.
+\item The ``yl''-function for SUBSLISTs is further improved.
+The commands \verb/\ryl/ and \verb/\lyl/ are
+prepared to typeset intervening moieties.
+\item Ring fusion is treated by adding a fusing unit to
+the BONDLIST of each command.
+\item Several fusing units (three- to six-membered units)
+are developed (fusering.sty).
+\item A new function for typesetting a spiro ring is
+introduced in each command for general use.
+A spiro ring is treated by ring-replacement technique,
+where the corresponding code is
+written in the ATOMLIST of each command.
+\item Commands for typeseting zigzag polymethylenes are
+developed (methylen.sty).
+\item Commands for drawing six-six fused carbocycles
+and heterocycles are added.
+\item An optional argument SKBONDLIST is added to
+each command of general use for drawing
+boldfaced and dotted skeletal bonds.
+\item An optional argument OMIT is added to
+each command of general use for drawing related
+skeletons by bond deletion.
+\end{enumerate}
+
+The \XyMTeX{} system (version 2.00) consists of package files
+listed in Table \ref{tt:200a1}.
+The package file `\textsf{chemstr.sty}' is the basic file
+that is automatically read within any other package file of \XyMTeX{}.
+It contains macros for internal use, {\em e.g.},
+common commands for bond-setting and atom-setting.
+The other package files contain macros for users.
+These files are designed to work not only as packages for \LaTeXe
+but also as option style files for \LaTeX{}2.09 (native mode).
+\begin{table}[hpbt]
+\caption{Package Files of \protect\XyMTeX{}}
+\label{tt:200a1}
+\begin{center}
+\begin{tabular}{lp{10cm}}
+\hline
+package name & \multicolumn{1}{c}{included functions} \\
+\hline
+\textsf{aliphat.sty}
+ & macros for drawing aliphatic compounds \\
+\textsf{carom.sty}
+ & macros for drawing vertical and horizontal types
+ of carbocyclic compounds \\
+\textsf{lowcycle.sty}
+ & macros for drawing five-or-less-membered carbocyles. \\
+\textsf{ccycle.sty}
+ & macros for drawing bicyclic compounds etc. \\
+\textsf{hetarom.sty}
+ & macros for drawing vertical types of heterocyclic compounds \\
+\textsf{hetaromh.sty}
+ & macros for drawing horizontal types of heterocyclic compounds \\
+\textsf{hcycle.sty}
+ & macros for drawing pyranose and furanose derivatives \\
+\textsf{chemstr.sty}
+ & basic commands for atom- and bond-typesetting \\
+\textsf{locant.sty}
+ & commands for printing locant numeres \\
+\textsf{polymers.sty}
+ & commands for drawing polymers \\
+\textsf{fusering.sty}
+ & commands for drawing units for ring fusion \\
+\textsf{methylen.sty}
+ & commands for drawing zigzag polymethylene chains \\
+\textsf{xymtex.sty}
+ & a package for calling all package files \\
+\textsf{chemist.sty}
+ & commands for using `chem' version and chemical environments \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+The use of \textsf{xymtex.sty} calling all package files
+may sometimes cause the ``\TeX{} capacity exceeded'' error.
+In this case, you should call necessary packages distinctly
+by using the \verb/\usepackage/ command.
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Bond Modifiers Added}
+
+\section{Alternative Bond Modifiers for Up and Down Bonds}
+
+In addition to the original bond modifiers (see the \XyMTeX book),
+the present version of \XyMTeX{}
+provides us with several bond modifiers that can be used
+in the argument SUBSLIST of each \XyMTeX{} command.
+These modifiers are listed in Table \ref{tt:200a}
+along with the original bond modifiers.
+
+\begin{table}
+\caption{Locant numbering and bond modifiers for SUBSLIST}
+\label{tt:200a}
+\begin{center}
+\begin{tabular}{lp{12cm}}
+\hline
+Bond Modifiers & \multicolumn{1}{c}{Printed structures} \\
+\hline
+\multicolumn{2}{l}{\bfseries Original Bond Modifiers} \\
+ $n$ or $n$S & exocyclic single bond at $n$-atom \\
+ $n$D & exocyclic double bond at $n$-atom \\
+ $n$A & alpha single bond at $n$-atom \\
+ $n$B & beta single bond at $n$-atom \\
+ $n$Sa & alpha (not specified) single bond at $n$-atom \\
+ $n$Sb & beta (not specified) single bond at $n$-atom \\
+ $n$SA & alpha single bond at $n$-atom (dotted line) \\
+ $n$SB & beta single bond at $n$-atom (boldface) \\
+\hline
+\multicolumn{2}{l}{\bfseries Bond Modifiers Added} \\
+ $n$Sd & alpha single bond at $n$-atom (dotted line)
+ with an alternative direction to $n$SA \\
+ $n$Su & beta single bond at $n$-atom (boldface)
+ with an alternative direction to $n$SB \\
+ $n$FA & alpha single bond at $n$-atom (dotted line)
+ for ring fusion \\
+ $n$FB & beta single bond at $n$-atom (boldface)
+ for ring fusion \\
+ $n$GA & alpha single bond at $n$-atom (dotted line)
+ for the other ring fusion \\
+ $n$GB & beta single bond at $n$-atom (boldface)
+ for the other ring fusion \\
+\hline
+\end{tabular}
+\end{center}
+\end{table}
+
+The added bond modifiers, `Sd' (d for down) and `Su' (u for up), designate
+$\alpha$- and $\beta$-bonds in such an exchanged
+manner as the original bond modifiers, `SA' and `SB' designate.
+Figure \ref{ff:200a} shows the comparison between
+the added bond modifiers and the original ones
+by using a cyclohexane skeleton (\verb/\cyclohexanev/).
+
+\begin{figure}[h]
+\begin{center}
+\cyclohexanev{1Sd==1Sd;1Su==1Su;%
+2Sd==2Sd;2Su==2Su;3Sd==3Sd;3Su==3Su;%
+4Sd==4Sd;4Su==4Su;5Sd==5Sd;5Su==5Su;%
+6Sd==6Sd;6Su==6Su} \qquad\qquad
+\cyclohexanev{1SA==1SA;1SB==1SB;%
+2SA==2SA;2SB==2SB;3SA==3SA;3SB==3SB;%
+4SA==4SA;4SB==4SB;5SA==5SA;5SB==5SB;%
+6SA==6SA;6SB==6SB}
+\caption{Bond Modifiers for $\alpha$- and $\beta$-Bonds}
+\label{ff:200a}
+\end{center}
+\end{figure}
+
+\section{Bond Modifiers for Ring Fusion}
+
+In the present verstion (2.00), we have added a new function for ring fusion.
+Since the function requires bond modifiers
+for desiginating substitution at such fused positions,
+we have added the modifiers, `FA', `FB', `GA', and `GB'.
+These modifiers are illustrated in Figure \ref{ff:200b}
+
+
+\begin{figure}
+\begin{center}
+\cyclohexanev{1FA==1FA;1GB==1GB;3FA==3FA;3GB==3GB;5FA==5FA;5GB==5GB}
+\qquad\qquad
+\cyclohexanev{1FB==1FB;1GA==1GA;3FB==3FB;3GA==3GS;5FB==5FB;5GA==5GA}
+
+
+\cyclohexanev{2FA==2FA;2GB==2GB;4FA==4FA;4GB==4GB;6FA==6FA;6GB==6GB}
+\qquad\qquad
+\cyclohexanev{2FB==2FB;2GA==2GA;4FB==4FB;4GA==4GA;6FB==6FB;6GA==6GA}
+\caption{Bond Modifiers for Ring Fusion}
+\label{ff:200b}
+\end{center}
+\end{figure}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Nested-Substituent Method}
+
+\section{Introduction}
+
+Chapter 14 (Combining Structures)
+and Chapter 15 (Large Substituents) of the \XyMTeX book
+have described several techniques to draw complicated formulas.
+Among them, the nested-substituent method is most promising.
+For example, the code
+\begin{verbatim}
+\bzdrh{1==Cl;4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==F}}}
+\end{verbatim}
+gives a combined structure,
+\begin{center}
+\bzdrh{1==Cl;4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==F}}}
+\end{center}
+Although the code shows the connectivity between the two phenyl
+groups, the following disadvantages remain:
+\begin{enumerate}
+\item The code contains no data indicating that the connection site
+is the meta-position concerning the fluorine atom.
+\item The commands \verb/\kern/ (for horizontal adjustment) and
+\verb/\lower/ (for vertical adjustment) are necessary to adjust the
+subsitutution site.
+\end{enumerate}
+
+As clarified by the above examples, the main target of \XyMTeX{}
+Version 2.00 is to extend the nested-substituent method
+so that it provides a function of indicating full connectivity data
+as well as a function of
+automatical adjustment without using such commands
+as \verb/\kern/ and \verb/\lower/.
+
+\section{``yl''-Functions}
+
+In \XyMTeX{} Version 2.00, the ``yl''-function is
+added so as to improve the nested-subsituent method.
+Thereby, any structure drawn by a \XyMTeX{}
+command (except a few special commands)
+can be converted into the corresponding substituent
+by adding the code \verb/(yl)/ with a locant number.
+The resulting code for the substituent can be added
+to the SUBSLIST of any other command for
+drawing a mother skeleton, where the final code
+contains the full connectivity data of the combined structure.
+For example, the code
+\begin{verbatim}
+\bzdrh{1==Cl;4==\bzdrh{1==(yl);3==F}}
+\end{verbatim}
+typesets the following structure,
+\begin{center}
+\bzdrh{1==Cl;4==\bzdrh{1==(yl);3==F}}
+\end{center}
+Thus, fluorobenzene produced by the command \verb/\bzdrh{3==F}/
+is converted into a subsituent, i.e. 3-fluorophenyl,
+by adding the code \verb/(yl)/, as shown in the
+code, \verb/\bzdrh{1==(yl);3==F}/. Then, the resulting code
+is added to the SUBSLIST of another command \verb/\bzdrh/.
+
+The connectivity at the meta-position is
+represented by the statement \verb/1==(yl)/ of
+the innner code \verb/\bzdrh{1==(yl);3==F}/.
+Note that the inner code \verb/\bzdrh{1==(yl);3==F}/ produces
+a substituent with no height and no width and that
+the reference point of the substituent is shifted to
+the point no.~1 by the (yl)-statement in order to
+link to the mother structure (the phenyl group
+produced by the code \verb/\bzdrh{1==Cl;4=={...}}/).
+
+The shift of a reference point becomes clear when
+we examine a formula,
+\begin{center}
+\vspace*{2cm}
+\bzdrh{1==Cl;3==\bzdrh{6==(yl);3==F}}
+\end{center}
+generated by the code,
+\begin{verbatim}
+\bzdrh{1==Cl;3==\bzdrh{6==(yl);3==F}}
+\end{verbatim}
+The original structure of the substituent with no ``yl'' function
+is found to be
+\begin{center}
+\begin{picture}(700,800)(0,0)
+\put(0,0){\bzdrh{3==F}}
+\put(0,0){\circle*{50}}
+\end{picture}
+\end{center}
+as generated by the code
+\begin{verbatim}
+\begin{picture}(700,800)(0,0)
+\put(0,0){\bzdrh{3==F}}
+\put(0,0){\circle*{50}}
+\end{picture}
+\end{verbatim}
+where the solid circle is the reference point.
+The picture shown above
+indicates that the reference point
+is different from any vertices of the benzene ring.
+On the other hand, the code with a ``yl''-function,
+\begin{verbatim}
+\begin{picture}(700,800)(0,-200)
+\put(0,0){\bzdrh{6==(yl);3==F}}
+\put(0,0){\circle*{50}}
+\end{picture}
+\end{verbatim}
+typesets the following structure,
+\begin{center}
+\begin{picture}(700,800)(0,-200)
+\put(0,0){\bzdrh{6==(yl);3==F}}
+\put(0,0){\circle*{50}}
+\end{picture}
+\end{center}
+The picture shown above
+indicates that the reference point is shifted to the position
+no.~6 of the benzene ring.
+
+The code \verb/\bzdrh{1==(yl);3==F}/ producing the substituent
+can be used in the argument of any structure-drawing command
+of \XyMTeX{}. The following example is the one
+in which it is placed in the argument of a command \verb/\bzdrv/.
+Thus, the code
+\begin{verbatim}
+\bzdrv{1==Cl;3==\bzdrh{1==(yl);3==F}}
+\end{verbatim}
+typesets the following structure,
+\begin{center}
+\bzdrv{1==Cl;3==\bzdrh{1==(yl);3==F}}
+\end{center}
+
+The structural formula of 1-chloro-4-morphorinobenzene
+can be drawn in two different ways. The codes,
+\begin{verbatim}
+\bzdrh{1==Cl;4==\sixheteroh[]{1==N;4==O}{1==(yl)}}
+\hskip 6cm
+\sixheteroh[]{1==N;4==O}{1==\bzdrh{1==Cl;4==(yl)}}
+\end{verbatim}
+produce the following formulas:
+\begin{center}
+\bzdrh{1==Cl;4==\sixheteroh[]{1==N;4==O}{1==(yl)}}
+\hskip 6cm
+\sixheteroh[]{1==N;4==O}{1==\bzdrh{1==Cl;4==(yl)}}
+\end{center}
+In the former code,
+the morphorino group is regareded as a substituent,
+as the name ``1-chloro-4-morphori\-nobenzene'' indicates.
+On the other hand, the chlorophenyl group
+is considered to be a substituent in the latter code
+so as to correspond to the name ``N-(4-chlorophenyl)morphorine''.
+
+The ``yl''-function is quite versatile, as indicated by the code,
+\begin{verbatim}
+\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;%
+5==\bzdrv{3==OMe;4==OMe;6==Br;1==(yl)}}
+\end{verbatim}
+producing the following structure:
+\begin{center}
+\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;%
+5==\bzdrv{3==OMe;4==OMe;6==Br;1==(yl)}}
+\end{center}
+\par\vskip2cm
+\noindent
+where the substituted phenyl group is regarded as a substituent.
+An opposite view can be realized by the code
+\begin{verbatim}
+\bzdrv{3==OMe;4==OMe;6==Br;%
+1==\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;5==(yl)}}
+\end{verbatim}
+which typesets the same structure:
+\vskip2cm
+\begin{center}
+\bzdrv{3==OMe;4==OMe;6==Br;%
+1==\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;5==(yl)}}
+\end{center}
+where the moiety drawn by the command \verb/\decaheterov/ is
+regarded as a substituent.
+
+Two or more substituents generated by the ``yl''-function
+can be introduced into an ATOMLIST. For example,
+\begin{verbatim}
+\bzdrh{1==\bzdrh{4==(yl)};4==\bzdrh{1==(yl);3==F}}
+\end{verbatim}
+typesets the following structure,
+\begin{center}
+\bzdrh{1==\bzdrh{4==(yl)};4==\bzdrh{1==(yl);3==F}}
+\end{center}
+
+The structural formula of hexaphenylbenzene can be
+drawn by this technique. Thus the code,
+\begin{verbatim}
+\bzdrv{1==\bzdrv{4==(yl)};%
+2==\bzdrv{5==(yl)};3==\bzdrv{6==(yl)};%
+4==\bzdrv{1==(yl)};5==\bzdrv{2==(yl)};%
+6==\bzdrv{3==(yl)}}
+\end{verbatim}
+generates the following formula:
+\begin{center}
+\vspace*{1cm}
+\bzdrv{1==\bzdrv{4==(yl)};%
+2==\bzdrv{5==(yl)};3==\bzdrv{6==(yl)};%
+4==\bzdrv{1==(yl)};5==\bzdrv{2==(yl)};%
+6==\bzdrv{3==(yl)}}
+
+\vspace*{1cm}
+\end{center}
+
+\section{Nested ``yl''-functions}
+
+Two or more ``yl''-functions can be nested.
+For example, a structure
+\begin{center}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)}}
+\end{center}
+depicted by the code,
+\begin{verbatim}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)}}
+\end{verbatim}
+can be converted into a substituent by adding
+``yl''-function, as shown in the following code:
+\begin{verbatim}
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}
+\end{verbatim}
+Then this substituent is nested in the SUBSLIST of
+the command \verb/\cyclohexaneh/ to give a code,
+\begin{verbatim}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{verbatim}
+Thereby we have the structural formula of
+benzoylcyclohexane:
+\begin{center}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{center}
+
+The resulting structure can be further converted into
+a substituent by adding ``yl''-function. The
+following example shows that the substituent is
+linked to the 4-position of a naphthol ring:
+\begin{center}
+\naphdrh{1==HO;4==%
+\cyclohexaneh[]{1==(yl);4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}}
+\end{center}
+which is typeset by the triply nested code:
+\begin{verbatim}
+\naphdrh{1==HO;4==%
+\cyclohexaneh[]{1==(yl);4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}}
+\end{verbatim}
+The same structural formula can be drawn by regarding
+the 1-naphthol-4-yl group and the benzoyl group as
+substituents, as shown in the following code:
+\begin{verbatim}
+\cyclohexaneh[]{%
+1==\naphdrh{1==HO;4==(yl)};%
+4==\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{verbatim}
+Accordingly, we have
+\begin{center}
+\cyclohexaneh[]{%
+1==\naphdrh{1==HO;4==(yl)};%
+4==\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{center}
+
+\bigskip
+The structure of benzoylcyclohexane can also be drawn by considering
+the \verb/\tetrahedral/ moiety as a mother skeleton,
+as shown in the code:
+\begin{verbatim}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}}
+\end{verbatim}
+Thereby, we have the formula,
+\begin{center}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}}
+\end{center}
+which shows that
+two or more substituents produced by the ``yl''-function
+can be written in a SUBSLIST.
+This treatment corresponds to the alternative name of
+benzoylcyclohexane, i.e., cyclohexyl phenyl ketone,
+since the codes \verb/\cyclohexaneh{4==(yl)}/ and
+\verb/\bzdrh{1==(yl)}/ represent
+a cyclohexyl and a phenyl group, respectively.
+
+Although
+the resulting structure cannot be used as a substituent concerning
+the cyclohexane ring, the SUBSLIST of the command \verb/\cyclohexaneh/
+is capable of accomodating the substituent \verb/\naphdrh{1==HO;4==(yl)}/
+to give
+\begin{verbatim}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};%
+2==\cyclohexaneh[]{4==(yl);1==\naphdrh{1==HO;4==(yl)}}}
+\end{verbatim}
+which typesets the same structural formula:
+\begin{center}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};%
+2==\cyclohexaneh[]{4==(yl);1==\naphdrh{1==HO;4==(yl)}}}
+
+\vspace*{1cm}
+\end{center}
+
+
+The formula,
+\begin{center}
+\vspace*{2cm}
+\bzdrv{%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl)}};%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl)}};%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl)}};%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl)}};%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl)}};%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl)}}}
+
+\vspace*{2cm}
+\end{center}
+illustrates the more complicated structure of a code
+with nested ``yl''-functions:
+\begin{verbatim}
+\bzdrv{%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl)}};%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl)}};%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl)}};%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl)}};%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl)}};%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl)}}}
+\end{verbatim}
+
+To simplify the coding, we define a macro
+drawing a biphenyl unit as follows:
+\begin{verbatim}
+\def\biph#1#2#3{\bzdrv{#1==(yl);#2==\bzdrv{#3==(yl)}}}
+\end{verbatim}
+Then, this macro is used in the SUBSLIST of \verb/\bzdrv/
+to give the code,
+\begin{verbatim}
+\bzdrv{%
+1==\biph{4}{2}{5};%
+2==\biph{5}{3}{6};%
+3==\biph{6}{4}{1};%
+4==\biph{1}{5}{2};%
+5==\biph{2}{6}{3};%
+6==\biph{3}{1}{4}}
+\end{verbatim}
+Thereby, we have
+\begin{center}
+\vspace*{2cm}
+\def\biph#1#2#3{\bzdrv{#1==(yl);#2==\bzdrv{#3==(yl)}}}
+\bzdrv{%
+1==\biph{4}{2}{5};%
+2==\biph{5}{3}{6};%
+3==\biph{6}{4}{1};%
+4==\biph{1}{5}{2};%
+5==\biph{2}{6}{3};%
+6==\biph{3}{1}{4}}
+
+\vspace*{2cm}
+\end{center}
+
+A more complex nested code,
+
+\begin{verbatim}
+\vspace*{8cm}
+\bzdrv{%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);%
+5==\bzdrv{2==(yl)}}}}}}}}}};%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);%
+6==\bzdrv{3==(yl)}}}}}}}}}};%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);%
+1==\bzdrv{4==(yl)}}}}}}}}}};%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);%
+2==\bzdrv{5==(yl)}}}}}}}}}};%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);%
+3==\bzdrv{6==(yl)}}}}}}}}}};%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);%
+4==\bzdrv{1==(yl)}}}}}}}}}}}
+\end{verbatim}
+produces the following formula:
+
+\clearpage%to avoid ! TeX capacity exceeded
+
+\begin{center}
+\vspace*{8cm}
+\bzdrv{%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);%
+5==\bzdrv{2==(yl)}%
+}}}%
+}}}%
+}}};%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);%
+6==\bzdrv{3==(yl)}%
+}}}%
+}}}%
+}}};%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);%
+1==\bzdrv{4==(yl)}%
+}}}%
+}}}%
+}}};%
+4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);%
+2==\bzdrv{5==(yl)}%
+}}}%
+}}}%
+}}};%
+5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);%
+1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);%
+3==\bzdrv{6==(yl)}%
+}}}%
+}}}%
+}}};%
+6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);%
+2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);%
+3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);%
+4==\bzdrv{1==(yl)}%
+}}}%
+}}}%
+}}}}
+\end{center}
+
+\clearpage
+
+The code to draw this structural formula is
+too complicated to cause the ``\TeX{} capacity exceeded'' error.
+To avoid the error, we use \verb/\clearpage/ commands before
+and after the output of the formula.
+In addition, we call only necessary packages
+to treat this cocument without the use of \textsf{xymtex.sty}
+calling all package files.
+
+\section{Remarks}
+\subsection{Drawing Domains}
+Substituents produced by the ``yl''-function have no dimensions.
+For example, benzoylcyclohexane
+\begin{center}
+\fbox{%
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}%
+}
+\end{center}
+produced by the code
+\begin{verbatim}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{verbatim}
+has a drawing domain around the cyclohexane mother skeleton,
+as encircled by a frame. Since the bezoyl moiety occupies no area,
+it may be superimposed on other contexts
+so as to require some space adjustments.
+For example, the above code duplicated without
+any space adjustment,
+\begin{verbatim}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}%
+\end{verbatim}
+gives an insufficient result:
+\begin{center}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}%
+\end{center}
+This superposition can be avoided by a horizontal spacing. Thus
+the code
+\begin{verbatim}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\hskip2cm
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}%
+\end{verbatim}
+typesets improved formulas:
+\begin{center}
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\hskip2cm
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}%
+\end{center}
+
+If a more thorough adjustment is required,
+a formula should be placed in a \LaTeX{} picture environment
+as follows.
+\begin{verbatim}
+\begin{picture}(1600,900)(0,0)
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{picture}
+\end{verbatim}
+This code produces
+\begin{center}
+\fbox{%
+\begin{picture}(1600,900)(0,0)
+\cyclohexaneh[]{4==%
+\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}
+\end{picture}
+}
+\end{center}
+where a frame is added by means of a \verb/\fbox/ command.
+
+A drawing domain around a formula depends upon a mother skeleton
+selected. For example, the formula of benzoylcyclohexane at the top
+of this section has a drawing domain shown by the frame, since
+a \verb/\cyclohexaneh/ is selected as a mother skeleton.
+On the other hand, the alternative formula
+of benzoylcyclohexane depicted by the code,
+\begin{verbatim}
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}}
+\end{verbatim}
+has a drawing domain due to the \verb/\tetrahedral/ skeleton.
+Thus, the code gives the following output:
+\begin{center}
+\fbox{%
+\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}}
+}
+\end{center}
+where the frame indicates such a drawing domain,
+when an \verb/\fbox/ command is used around
+the \verb/\tetrahedral/ command.
+The domain shown by the frame (due to \verb/\fbox/) is equal to
+any domain based on the simple use of the \verb/\tetrahedral/ command
+(without using the ``yl''-function).
+For example, compare the above frame with the one
+appearing in the formula,
+\begin{center}
+\fbox{\tetrahedral{0==C;1D==O;4==Cl;2==Cl}}
+\end{center}
+depicted by the code,
+\begin{verbatim}
+\fbox{\tetrahedral{0==C;1D==O;4==Cl;2==Cl}}
+\end{verbatim}
+
+\subsection{Reference Points}
+
+Each \XyMTeX{} command for drawing a mother skeleton
+has its reference point and its inner reference point.
+These points can be printed out by switching
+\verb/\origpt/ on. For example, the code
+\begin{verbatim}
+{
+\origpttrue
+\cyclohexanev{}
+}
+\end{verbatim}
+generates the diagram:
+\begin{center}
+{
+\origpttrue
+\cyclohexanev{}
+}
+\end{center}
+where the solid circle indicates the reference point (0,0) and
+the open circle indicates the inner reference point (400,240).
+The values of cooridates are output on a display and in a log file:
+\begin{verbatim}
+command `sixheterov' origin: (0,0) ---> (400,240)
+\end{verbatim}
+since \verb/\cyclohexanev/ is based on \verb/\sixheterov/.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Linking Units}
+
+The commands \verb/\ryl/ and \verb/\lyl/ described
+in this chapter are added to
+the {\sf chemstr} package (file name: chemstr.sty).
+The \verb/\divalenth/ command is added to
+the {\sf aliphat} package (file name: aliphat.sty).
+
+\section{$\backslash$ryl command}.
+
+The ``yl''-function provides us with
+a tool to generate a substituent that
+is linked {\itshape directly} to a substitution site
+of a mother skeleton. There are, however,
+many cases in which a substituent
+is linked to a substitution site by an intervening unit
+(e.g., O, SO$_{2}$ and NH).
+The command \verb/\ryl/ is used to
+generate a right-hand substituent with a linking unit.
+For example, the code
+\begin{verbatim}
+\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}
+\end{verbatim}
+produces a benzenesulfonamido substituent,
+\bigskip
+\begin{center}
+\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}
+
+\vspace*{1cm}
+\end{center}
+The resulting unit is added to the SUBSLIST of
+a command for drawing a skeletal command.
+For example, the code
+\begin{verbatim}
+\bzdrh{3==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}}
+\end{verbatim}
+generates the following formula:
+\begin{center}
+\vspace*{1cm}
+\bzdrh{3==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}}
+\end{center}
+
+The \verb/\ryl/ command takes two arguments.
+\begin{verbatim}
+\ryl(LINK){GROUP}
+\end{verbatim}
+The first argument LINK in the parentheses indicates
+an intervening unit with an integer showing
+the slope of a left incidental bond.
+For example, the number 5 of the code \verb/5==NH--SO$_{2}$/
+shown above represents that the left terminal is to be linked
+through $(-5,-3)$ bond, though the linking bond
+is not typeset by the \verb/\ryl/ command only.
+The slopes of the linking bonds are designated by
+integers between 0 and 8:
+\begin{center}
+\begin{tabular}{cc|cc|cc}
+0 & $(0,1)$ & 1 & $(-3,5)$ & 2 & $(-1,1)$ \\
+3 & $(-5,3)$ & 4 & $(-1,0)$ & 5 & $(-5,-3)$ \\
+6 & $(-1,-1)$ & 7 & $(-3,-5)$ & 8 & $(0,-1)$ \\
+\end{tabular}
+\end{center}
+
+The second argument GROUP of \verb/\ryl/ is
+a substituent produced by a ``yl''-function,
+where a number before a delimiter (==) indicates
+the slope of a right incidental bond.
+For example, the number 4 of the code
+\verb/4==\bzdrh{1==(yl)}/ shown above
+represents that the right terminal is to be linked
+through $(1,0)$ bond to the benzene ring generated by
+the \verb/\bzdrh/ command.
+The slopes of the linking bonds are designated by
+integers between 0 and 8:
+\begin{center}
+\begin{tabular}{cc|cc|cc}
+0 & $(0,1)$ & 1 & $(3,5)$ & 2 & $(1,1)$ \\
+3 & $(5,3)$ & 4 & $(1,0)$ & 5 & $(5,-3)$ \\
+6 & $(1,-1)$ & 7 & $(3,-5)$ & 8 & $(0,-1)$ \\
+\end{tabular}
+\end{center}
+
+To illustrate linking bonds with various slopes,
+the code
+\begin{verbatim}
+\cyclohexanev[]{%
+1==\ryl(8==NH--SO$_{2}$){1==\bzdrh{6==(yl)}};
+2==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};
+3==\ryl(3==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};%
+4==\ryl(0==NH--SO$_{2}$){7==\bzdrh{2==(yl)}}}
+\end{verbatim}
+is written to give
+
+\vspace*{2cm}
+\begin{center}
+\cyclohexanev[]{%
+1==\ryl(8==NH--SO$_{2}$){1==\bzdrh{6==(yl)}};
+2==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};
+3==\ryl(3==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};%
+4==\ryl(0==NH--SO$_{2}$){7==\bzdrh{2==(yl)}}}
+\end{center}
+\vspace*{2cm}
+
+Other examples are drawn by the code
+\begin{verbatim}
+\cyclohexaneh[]{%
+3==\ryl(7==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};
+5==\ryl(1==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};%
+4==\ryl(4==NH--SO$_{2}$--NH){4==\bzdrh{1==(yl)}}}
+\end{verbatim}
+giving
+\vspace*{1cm}
+\begin{center}
+\cyclohexaneh[]{%
+3==\ryl(7==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};
+5==\ryl(1==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};%
+4==\ryl(4==NH--SO$_{2}$--NH){4==\bzdrh{1==(yl)}}}
+\end{center}
+\vspace*{1cm}
+
+The first argument in the parentheses of the
+command \verb/\ryl/ contains a string of letters
+after an intermediate delimiter ==, where
+a left linking site is shifted according to the
+length of the letter string.
+The above formula shows such an example
+as having NH--SO$_{2}$--NH.
+
+
+The following examples compare the
+``yl''-function with the \verb/\ryl/ command.
+\begin{verbatim}
+\cyclohexaneh{4==\bzdrh{1==(yl)}}
+\hskip2cm
+\cyclohexaneh{4==\ryl(4==O){4==\bzdrh{1==(yl)}}}
+\end{verbatim}
+
+\begin{center}
+\cyclohexaneh{4==\bzdrh{1==(yl)}}
+\hskip2cm
+\cyclohexaneh{4==\ryl(4==O){4==\bzdrh{1==(yl)}}}
+\end{center}
+
+The compound {\bfseries 21}
+on page 299 of the \XyMTeX book
+%``\XyMTeX{}---Typesetting Chemical
+%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997)
+can be alternatively drawn by using
+the \verb/\ryl/ command, as shown in the code:
+\begin{verbatim}
+\fiveheterov[d]{1==N;5==N}{4==NC;1==\bzdrv{1==(yl)};2D==O;%
+3D==\ryl(5==N-NH){4==\bzdrh{1==(yl);2==\lmoiety{MeO};5==SO$_{2}$Cl}}}
+\end{verbatim}
+which typeset the following formula:
+\begin{center}
+\vspace*{1cm}
+\fiveheterov[d]{1==N;5==N}{4==NC;1==\bzdrv{1==(yl)};2D==O;%
+3D==\ryl(5==N-NH){4==\bzdrh{1==(yl);2==\lmoiety{MeO};5==SO$_{2}$Cl}}}
+
+\vspace*{2cm}
+\end{center}
+
+The first argument of the \verb/\ryl/ is optional; i.e., it can be
+omitted. Such an omitted case is useful to draw a methylene as
+a vertex. For example, a methylene is represented as
+a character string ``CH$_{2}$'', as shown in the formula,
+\begin{center}
+\sixheterov[d]{2==S}{5==\null;%
+3==\ryl(3==CH$_{2}$){3==\sixheterov[d]{2==S}{5==(yl)}}}
+\end{center}
+This formula is generated by the code,
+\begin{verbatim}
+\sixheterov[d]{2==S}{5==\null;%
+3==\ryl(3==CH$_{2}$){3==\sixheterov[d]{2==S}{5==(yl)}}}
+\end{verbatim}
+where the \verb/\ryl/ command takes an optional argument
+in parentheses to draw CH$_{2}$ exciplicitly.
+Such a methylene can alternatively be represented as a simple vertex,
+as shown in the formula,
+\begin{center}
+\sixheterov[d]{2==S}{5==\null;%
+3==\ryl{3==\sixheterov[d]{2==S}{5==(yl)}}}
+\end{center}
+This formula is generated by the code,
+\begin{verbatim}
+\sixheterov[d]{2==S}{5==\null;%
+3==\ryl{3==\sixheterov[d]{2==S}{5==(yl)}}}
+\end{verbatim}
+where the \verb/\ryl/ command takes no optional argument.
+
+The second argument of the \verb/\ryl/ command can
+accomodate substituents other than a substituent
+generated by the ``yl'' function. For example,
+the inner code \verb/\ryl{0A==Me;...}/ in the code,
+\begin{verbatim}
+\sixheterov({bB}{eA}){3==O;5==O}{1A==Me;4Sa==\null;4Sb==\null;%
+6==\pentamethylenei[a]{}{4B==OH;5B==Me;5==(yl)};%
+2==\ryl{0A==Me;5==\sixheterov({eA}){3==O;5==O}{6==(yl);1B==Me;%
+4Sa==\null;4Sb==\null}}}
+\end{verbatim}
+represents a methyl group on a vertex due to the command \verb/\ryl/.
+Thereby, we have
+\begin{center}
+\vspace*{1cm}
+\sixheterov({bB}{eA}){3==O;5==O}{1A==Me;4Sa==\null;4Sb==\null;%
+6==\pentamethylenei[a]{}{4B==OH;5B==Me;5==(yl)};%
+2==\ryl{0A==Me;5==\sixheterov({eA}){3==O;5==O}{6==(yl);1B==Me;%
+4Sa==\null;4Sb==\null}}}
+
+\vspace*{1cm}
+\end{center}
+
+
+
+\section{$\backslash$lyl command}
+
+The command \verb/\lyl/ is the left-hand
+counterpart of the command \verb/\ryl/.
+\begin{verbatim}
+\lyl(LINK){GROUP}
+\end{verbatim}
+The slopes of the linking bonds
+concerning the right terminal are designated by
+integers between 0 and 8:
+\begin{center}
+\begin{tabular}{cc|cc|cc}
+0 & $(0,1)$ & 1 & $(3,5)$ & 2 & $(1,1)$ \\
+3 & $(5,3)$ & 4 & $(1,0)$ & 5 & $(5,-3)$ \\
+6 & $(1,-1)$ & 7 & $(3,-5)$ & 8 & $(0,-1)$ \\
+\end{tabular}
+\end{center}
+The slopes of the linking bonds concerning
+the left terminal are designated by
+integers between 0 and 8:
+\begin{center}
+\begin{tabular}{cc|cc|cc}
+0 & $(0,1)$ & 1 & $(-3,5)$ & 2 & $(-1,1)$ \\
+3 & $(-5,3)$ & 4 & $(-1,0)$ & 5 & $(-5,-3)$ \\
+6 & $(-1,-1)$ & 7 & $(-3,-5)$ & 8 & $(0,-1)$ \\
+\end{tabular}
+\end{center}
+
+To illustrate linking bonds with various slopes,
+the code
+\begin{verbatim}
+\cyclohexanev[]{%
+1==\lyl(8==SO$_{2}$--HN){1==\bzdrh{5==(yl)}};%
+6==\lyl(5==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};%
+5==\lyl(3==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};%
+4==\lyl(0==SO$_{2}$--HN){7==\bzdrh{3==(yl)}}}
+\end{verbatim}
+is written to give
+
+
+\vspace*{2cm}
+\begin{center}
+\cyclohexanev[]{%
+1==\lyl(8==SO$_{2}$--HN){1==\bzdrh{5==(yl)}};%
+6==\lyl(5==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};%
+5==\lyl(3==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};%
+4==\lyl(0==SO$_{2}$--HN){7==\bzdrh{3==(yl)}}}
+\end{center}
+\vspace*{2cm}
+
+Other examples are drawn by the code
+\begin{verbatim}
+\cyclohexaneh[]{%
+2==\lyl(7==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};
+6==\lyl(1==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};%
+1==\lyl(4==NH--SO$_{2}$--HN){4==\bzdrh{4==(yl)}}}
+\end{verbatim}
+giving
+\vspace*{1cm}
+\begin{center}
+\cyclohexaneh[]{%
+2==\lyl(7==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};
+6==\lyl(1==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};%
+1==\lyl(4==NH--SO$_{2}$--NH){4==\bzdrh{4==(yl)}}}
+\end{center}
+\vspace*{1cm}
+
+The first argument in the parentheses of the
+command \verb/\lyl/ contains a string of letters
+after an intermediate delimiter ==, where
+a left linking site is shifted according to the
+length of the letter string.
+The above formula shows such an example
+as having NH--SO$_{2}$--NH.
+
+The structural formula of adonitoxin,
+which has once been depicted in a different way
+in Chapter 15 of the \XyMTeX book
+%``\XyMTeX{}---Typesetting Chemical
+%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997)
+can be obtained by the code,
+\begin{verbatim}
+\steroid{{{10}}==\lmoiety{OHC};{{14}}==OH;%
+{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;%
+{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)};%
+3==\lyl(3==O){8==%
+\pyranose{1Sb==(yl);1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;%
+4Sa==H;5Sb==H;5Sa==CH$_{3}$}}}
+\end{verbatim}
+
+\begin{quotation}
+\vspace*{1cm}
+\hspace*{4cm}
+\steroid{{{10}}==\lmoiety{OHC};{{14}}==OH;%
+{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;%
+{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)};%
+3==\lyl(3==O){8==%
+\pyranose{1Sb==(yl);1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;%
+4Sa==H;5Sb==H;5Sa==CH$_{3}$}}}
+\end{quotation}
+
+\vskip1cm
+
+
+\section{Nested $\backslash$ryl and $\backslash$lyl commands}
+
+Two or more \verb/\ryl/ and \verb/\lyl/ commands can be nested.
+Let us illustrate nesting processes by drawing a cyan
+dye releaser, which has once been depicted in different ways
+(see Chapters 14 and 15 of the \XyMTeX book).
+%in ``\XyMTeX{}---Typesetting Chemical
+%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997)).
+
+\vspace*{1cm}
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);%
+5==\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;%
+8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}}}}}}
+
+\vskip3cm
+First, the code
+\begin{verbatim}
+\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\null}}
+\end{verbatim}
+generates a substituent:
+\begin{quotation}
+\vspace*{1cm}
+\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\null}}
+
+\vspace*{1cm}
+\end{quotation}
+in which the command \verb/\null/ is used to show a further
+substitution site. The resulting substituent is
+nested in the SUBSLIT of another \verb/\bzdrv/ command
+as shown in the code:
+\begin{verbatim}
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\null}}}
+\end{verbatim}
+Thereby we have
+\begin{quotation}
+\vskip1cm
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\null}}}
+\end{quotation}
+
+\vskip1cm \noindent
+The inner code \verb/5==\null/ is replaced by a further
+code of substitution:
+\begin{verbatim}
+5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);5==\null}}%
+\end{verbatim}
+to give a code,
+\begin{verbatim}
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);5==\null}}%
+}}}
+\end{verbatim}
+This code generates the following structure (Formula A):
+\begin{quotation}
+\vskip1cm
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);%
+5==\null}}}}}
+\end{quotation}
+
+\vskip1cm
+Another substituent is typeset by the code,
+\begin{verbatim}
+\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;%
+8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}
+\end{verbatim}
+Then, we have a substituent (Formula B):
+\begin{quotation}
+\vskip1cm
+\hspace*{4cm}\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;%
+8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}
+\end{quotation}
+
+\vspace{3cm}
+Finally, the inner code \verb/5==\null/ for Formula A is replaced
+by the code for Formula B
+in order to combine Formula A with Formula B.
+Then we obtain a code represented by
+\begin{verbatim}
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);%
+5==\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;%
+8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}}}}}}
+\end{verbatim}
+Thereby, we have a target formula:
+
+\vspace*{1cm}
+\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;%
+2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;%
+5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);%
+5==\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;%
+8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}}}}}}
+
+\vskip3cm
+
+The structural formula of adonitoxin,
+which has benn drawn by considering the steroid nucleus to be
+a mother skeleton in the preceding subsection,
+can be alternatively drawn by nesting
+a ``yl''-function and a \verb/\ryl/ command.
+In this case, the pyranose ring is regarded as a mother skeleton.
+Thus, the code
+\begin{verbatim}
+\pyranose{1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;%
+4Sa==H;5Sb==H;5Sa==CH$_{3}$;%
+1Sb==\ryl(8==O){3==%
+\steroid{3==(yl);{{10}}==\lmoiety{OHC};{{14}}==OH;%
+{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;%
+{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)}}}}
+\end{verbatim}
+typesets the following formula:
+\begin{quotation}
+\vspace*{4cm}
+\pyranose{1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;%
+4Sa==H;5Sb==H;5Sa==CH$_{3}$;%
+1Sb==\ryl(8==O){3==%
+\steroid{3==(yl);{{10}}==\lmoiety{OHC};{{14}}==OH;%
+{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;%
+{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)}}}}
+\end{quotation}
+
+\section{$\backslash$divalenth command}
+
+The command \verb/\divalenth/ generates a divalent skeleton
+with variable length.
+\begin{verbatim}
+\divalenth{GROUP}{SUBSLIST}
+\end{verbatim}
+The divalent skeleton is given by
+a string of alphabets in the GROUP argument.
+The locant number in the GROUP argument is fixed to be zero.
+For example, the code
+\begin{verbatim}
+\divalenth{0==NHCONH}{1==CH$_{3}$;2==CH$_{3}$}
+\end{verbatim}
+generates a linear formula:
+\begin{center}
+\divalenth{0==NHCONH}{1==CH$_{3}$;2==CH$_{3}$}
+\end{center}
+
+4,4$^{\prime}$-Methylenedibenzoic acid can be drawn in the same line.
+The code
+\begin{verbatim}
+\divalenth{0==CH$_{2}$}{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}}
+\end{verbatim}
+generates
+\begin{center}
+\divalenth{0==CH$_{2}$}{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}}
+\end{center}
+
+In place of the CH$_{2}$ unit described in the preceding example,
+we introduce the O--CH$_{2}$--O unit so as to give
+4,4$^{\prime}$-methylenedioxydibenzoic acid. The structurel formula
+can be drawn to be
+\begin{center}
+\divalenth{0==O--CH$_{2}$--O}%
+{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}}
+\end{center}
+by means of the code:
+\begin{verbatim}
+\divalenth{0==O--CH$_{2}$--O}%
+{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}}
+\end{verbatim}
+Note that the starting point of the moiety
+generated by the code \verb/2==\bzdrh{1==(yl);4==COOH}/ is
+automatically shifted so as to accomodate the O--CH$_{2}$--O unit.
+
+
+An additional example of the use of the \verb/\divalenth/ command
+is the drawing of
+1,6$^{\prime}$-ureylenedi-2-naphthalenesulfonic acid
+\begin{quotation}
+\vspace*{2cm}\hspace*{4cm}
+\divalenth{0==NH--CO--NH}%
+{1==\naphdrh{4==(yl);3==SO$_{3}$H};2==\naphdrv{6==(yl);2==SO$_{3}$H}}
+
+\vspace*{2cm}
+\end{quotation}
+by means of the code
+\begin{verbatim}
+\divalenth{0==NH--CO--NH}%
+{1==\naphdrh{4==(yl);3==SO$_{3}$H};2==\naphdrv{6==(yl);2==SO$_{3}$H}}
+\end{verbatim}
+
+
+$p$-[2-($m$-Carboxyphenoxy)ethyl]benzoic acid is
+drawn by the code
+\begin{verbatim}
+\divalenth{0==O--CH$_{2}$--CH$_{2}$}%
+{1==\bzdrh{4==(yl);6==COOH};2==\bzdrh{1==(yl);4==COOH}}
+\end{verbatim}
+which generates a formula:
+\begin{center}
+\divalenth{0==O--CH$_{2}$--CH$_{2}$}%
+{1==\bzdrh{4==(yl);6==COOH};2==\bzdrh{1==(yl);4==COOH}}
+
+\vspace*{1cm}
+\end{center}
+The same structure can be depicted by applying
+the ``yl''-function to the \verb/\divalenth/ command.
+The code
+\begin{verbatim}
+\bzdrh{6==COOH;4==%
+\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}}
+\end{verbatim}
+generates the same formula:
+\begin{center}
+\bzdrh{6==COOH;4==%
+\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}}
+
+\vspace*{1cm}
+\end{center}
+This type of usage gives an equivalent function of
+the command \verb/\ryl/ or \verb/\lyl/. Compare this with
+an example using the \verb/\ryl/ command:
+\begin{verbatim}
+\bzdrh{6==COOH;4==%
+\ryl(4==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}}
+\end{verbatim}
+This code gives the same formula:
+\begin{center}
+\bzdrh{6==COOH;4==%
+\ryl(4==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}}
+\end{center}
+
+\section{Remarks}
+
+The use of \verb/\divalenth/ with a ``yl''-function has
+no means of adjusting the left-hand point of linking.
+For example, the code,
+\begin{verbatim}
+\bzdrv{2==COOH;4==%
+\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}}
+\end{verbatim}
+give an insufficient formula:
+\begin{center}
+\bzdrv{2==COOH;4==%
+\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}}
+
+\vspace*{1cm}
+\end{center}
+where the left-hand point of linking should be shifted to
+a more appropiate direction. On the other hand,
+the \verb/\ryl/ (or \verb/\lyl/) command can correctly
+specify the left-hand point of linking. Thus the code,
+\begin{verbatim}
+\bzdrv{2==COOH;4==%
+\ryl(0==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}}
+\end{verbatim}
+typesets a formula:
+\begin{center}
+\bzdrv{2==COOH;4==%
+\ryl(0==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}}
+
+\vspace*{1cm}
+\end{center}
+where the code \verb/0==O--CH$_{2}$--CH$_{2}$/ specifies
+the left-hand terminal of the unit O--CH$_{2}$--CH$_{2}$
+is linked at the upper point of the oxygen atom.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Ring Fusion}
+
+\section{Ring Fusion on Carbocyclic Compounds}
+\subsection{Designation of Fused Bonds}
+
+A unit to be fused is written in the BONDLIST of a command with
+a bond specifier (a lowercase or uppercase alphabet).
+For example, the code
+\begin{verbatim}
+\hanthracenev[{A\sixfusev{}{}{d}}]{}
+\end{verbatim}
+gives a perhydroanthracene with a fused six-membered ring
+at the bond `a' of the perhydroanthracene nucleus:
+\begin{quotation}
+\vskip1cm
+\hanthracenev[{A\sixfusev{}{}{d}}]{}
+\end{quotation}
+The letter `A' of the code
+\verb/{A\sixfusev{}{}{d}}/ is a bond specifier that represents
+the older terminal of the bond `a' of the
+perhydroanthracene nucleus
+(For the designation of the bonds of perhydroanthracene,
+see Chapter 5 of the \XyMTeX book.%
+%``\XyMTeX{}---Typesetting Chemical
+%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997).%
+\footnote{%
+The word `older' or `younger' is concerned with the order of numbering
+of vertices. For a six-membered ring, the numbering
+1---2---3---4---5---6---1 shows that
+the terminal 1 of the
+bond `a' (1---2) is youger, while the terminal 2 of the bond
+`a' is older. It should be noted that the terminal 6 of the
+bond `f' (6---1) is youger, while the terminal 1 of the bond
+`f' is older.}
+Note that the younger
+terminal of the bond `a' is designated by the letter `a'.
+On the other hand,
+the code \verb/\sixfusev{}{}{d}/ of \verb/{A\sixfusev{}{}{d}}/
+in the BONDLIST represents the fused six-membered ring
+with the bond `d' omitted. The letter `d' indicates
+that the fusing point of the unit is the youger terminal
+of the omitted bond `d'. If the the fusing point of the unit
+is the other (older) terminal, the
+corresponding uppercase letter `D' should be used.
+
+Accordingly, the same formula can be drawn by the
+code exchanging uppercase and lowercase letters,
+\begin{verbatim}
+\hanthracenev[{a\sixfusev{}{}{D}}]{}
+\end{verbatim}
+Thereby, we have
+\begin{quotation}
+\vskip1cm
+\hanthracenev[{a\sixfusev{}{}{D}}]{}
+\end{quotation}
+
+Two or more rings can be fused. For example,
+the code
+\begin{verbatim}
+\hanthracenev[{A\sixfusev{}{}{d}}{C\sixfusev{}{}{f}}]{}
+\end{verbatim}
+generates a formula with two fused rings at the
+bonds `a' and `c' of a perhydroanthracene nucleus.
+\begin{quotation}
+\vskip1cm
+\hanthracenev[{A\sixfusev{}{}{d}}{C\sixfusev{}{}{f}}]{}
+
+\vskip1cm
+\end{quotation}
+
+The BONDLIST can accomodates usual bond specifiers without
+a fusing unit in order to designate inner double bonds.
+For example, the code
+\begin{verbatim}
+\hanthracenev[aco{A\sixfusev[a]{}{}{d}}]{}
+\end{verbatim}
+gives a hydroanthracene that have inner double bonds
+as well as a fused six-membered ring:
+\begin{quotation}
+\vskip1cm
+\hanthracenev[aco{A\sixfusev[a]{}{}{d}}]{}
+\end{quotation}
+Note that the command \verb/\sixfusev/ can take
+an optional argument to designate inner double bonds,
+as shown by the code \verb/\sixfusev[a]{}{}{d}/.
+
+In order to specify substituents in addition,
+we can use the SUBSLIST of the command \verb/\hanthracenev/ as well
+as the one of the command \verb/\sixfusev/. For example, the code
+\begin{verbatim}
+\hanthracenev[aco{A\sixfusev[a]{}{1==F;2==Cl}{d}}]{5==OH;6==HO}
+\end{verbatim}
+gives a hydroanthracene having additional substituents:
+\begin{quotation}
+\vspace*{1cm}
+\hanthracenev[aco{A\sixfusev[a]{}{1==F;2==Cl}{d}}]{5==OH;6==HO}
+\end{quotation}
+
+The compound {\bfseries 13} on page 294
+(Chapter IV-4) of the \XyMTeX book
+%``\XyMTeX{}---Typesetting Chemical
+%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997)
+can alternatively be drawn by applying the
+present technique. Thus, the code
+\begin{verbatim}
+\hanthracenev[achjop{b\sixfusev{}{2==R}{E}}]{%
+1==OCH$_{3}$;4==OH;{10}D==O;%
+9==\lyl(8==C\rlap{O}){4==CH$_{3}$O}}
+\end{verbatim}
+gives the following formula:
+\begin{quotation}
+\hanthracenev[achjop{b\sixfusev{}{2==R}{E}}]{%
+1==OCH$_{3}$;4==OH;{10}D==O;%
+9==\lyl(8==C\rlap{O}){4==CH$_{3}$O}}
+\end{quotation}
+
+
+\section{Ring Fusion on Heterocyclic Compounds}
+
+The methodology of ring fusion for heterocyclic compounds
+is the same as described for carbocyclic compounds.
+Thus, a unit to be fused is written in the BONDLIST of
+a command with a bond specifier (a lowercase or uppercase alphabet).
+For example, the code
+\begin{verbatim}
+\nonaheterov[begj{b\sixfusev[ac]{}{}{e}}]{1==N}{1==H}
+\end{verbatim}
+gives the structural formula of carbazole:
+\begin{quotation}
+\nonaheterov[begj{b\sixfusev[ac]{}{}{e}}]{1==N}{1==H}
+\end{quotation}
+which is depicted by attaching a six-membered ring
+(\verb/\sixfusev[ac]{}{}{e}}/)
+to the bond `b' of an indole nucleus.
+
+Let us consider the substitution of a carbon atom
+with a nitrogen atom at one of the fused positions
+in the above compound, as shown by the following formula:
+\begin{quotation}
+\nonaheterov[begj{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{1==H}
+\end{quotation}
+This formula is obtained by writing the code:
+\begin{verbatim}
+\nonaheterov[begj{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{1==H}
+\end{verbatim}
+where the code \verb/6==\null/ in the ATOMLIST of
+\verb/\sixfusev/ (for the fused six-membered ring)
+and the code \verb/3==N/ in the ATOMLIST of
+\verb/\nonaheterov/ produces the nitrogen
+atom at the fused position.
+The specification of the nitrogen atom
+is also available by exchanging \verb/\null/ and \verb/N/.
+Thus the code
+\begin{verbatim}
+\nonaheterov[begj{b\sixfusev[ac]{6==N}{}{e}}]{1==N;3==\null}{1==H}
+\end{verbatim}
+gives the same structural formula:
+\begin{quotation}
+\nonaheterov[begj{b\sixfusev[ac]{6==N}{}{e}}]{1==N;3==\null}{1==H}
+\end{quotation}
+
+The ring fusion at the bond `a' of perhydroindole
+is represented by the code
+\begin{verbatim}
+\nonaheterov[{a\sixfusev{6==\null}{}{f}}]{1==N}{}
+\end{verbatim}
+which gives a heterocycle:
+\begin{quotation}
+\nonaheterov[{a\sixfusev{6==\null}{}{f}}]{1==N}{}
+\end{quotation}
+
+
+
+Benz[{\itshape h}]isoquinoline,
+\begin{quotation}
+\vspace*{1cm}
+\decaheterovt[acfhk{h\sixfusev[df]{}{}{B}}]{2==N}{}
+\end{quotation}
+can be typset by the code,
+\begin{verbatim}
+\decaheterovt[acfhk{h\sixfusev[df]{}{}{B}}]{2==N}{}
+\end{verbatim}
+in which the bond specifier `h' corresponds to
+the {\itshape h} of the IUPAC name.
+Note that the IUPAC name regards the structure as
+an isoquinoline (drawn by \verb/\decaheterovt/) fused by a benzo moiety.
+The same structure
+can be drawn by the alternative code:
+\begin{verbatim}
+\decaheterov[acfhk{a\sixfusev[bf]{1==N}{}{D}}]{}{}
+\end{verbatim}
+which regards the structure as a naphthalene (drawn by
+\verb/\decaheterov/) with
+a fused heterocycle. Thereby, we have
+ \begin{quotation}
+\vspace*{1cm}
+\decaheterov[acfhk{a\sixfusev[bf]{1==N}{}{D}}]{}{}
+\end{quotation}
+
+\section{Neted Ring Fusion}
+
+The \verb/\sixfusev/ command is capable of
+accomodating another \verb/\sixfusev/ command in
+a nested fashion. By this technique,
+the carbazole structure can take a further
+fused ring so as to produce the structural formula
+of 7{\itshape H}-pyrazino[2,3-{\itshape c}]carbaozole.
+Thus, the code,
+\begin{verbatim}
+\nonaheterov[begj{b\sixfusev[%
+ac{a\sixfusev[bf]{6==N;3==N}{}{D}}]{}{}{e}}]{1==N}{1==H}
+\end{verbatim}
+gives the structural formula of the fused heterocycle:
+\begin{quotation}
+\vspace*{1cm}
+\nonaheterov[begj{b\sixfusev[%
+ac{a\sixfusev[bf]{6==N;3==N}{}{D}}]{}{}{e}}]{1==N}{1==H}
+\end{quotation}
+which is depicted by attaching a six-membered ring
+(\verb/\sixfusev[ac]{}{}{e}}/)
+to the bond `b' of an indole nucleus.
+
+The structural formula of
+pyrido[1$^{\prime}$,2$^{\prime}$:1,2]imidazo[4,5-{\itshape b}]quinoxaline,
+\begin{center}
+\nonaheterov[adh%
+{b\sixfusev[ac]{6==\null}{}{e}}%
+{f\sixfusev[ace]{}{}{b}}]{1==N;3==N;4==N;7==N}{}
+\end{center}
+is generated by the code,
+\begin{verbatim}
+\nonaheterov[adh%
+{b\sixfusev[ac]{6==\null}{}{e}}%
+{f\sixfusev[ace]{}{}{b}}]{1==N;3==N;4==N;7==N}{}
+\end{verbatim}
+Since this code is intended to contain no nested ring fusion,
+the order of structure construction is different
+from that of the IUPAC name.
+
+The IUPAC name,
+pyrido[1$^{\prime}$,2$^{\prime}$:1,2]imidazo[4,5-{\itshape b}]quinoxaline,
+corresponds to a quinaxaline with a fused five-membered ring (an imidazo
+moiety) which is in turn fused by a six-membered ring (a pyrido moiety).
+The order of constructing the IUPAC name is realized in the code
+with nested ring fusion,
+\begin{verbatim}
+\decaheterov[acegi%
+{b\fivefusev[a{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{}{d}}]
+{1==N;4==N}{}
+\end{verbatim}
+which produces the same structure,
+\begin{center}
+\decaheterov[acegi%
+{b\fivefusev[a{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{}{d}}]
+{1==N;4==N}{}
+\end{center}
+
+Note that the indicators `1$^{\prime}$,2$^{\prime}$' and `1,2'of
+the locant [1$^{\prime}$,2$^{\prime}$:1,2] in the IUPAC name
+correspond respectively to the
+bond specifiers , `E' and `b', appeared in the code,
+\verb/{b\sixfusev[ac]{6==\null}{}{E}}/.
+On the other hand, the indicators,
+`4,5' and `{\itshape b}' of of the locant [4,5-{\itshape b}]
+are respectively associated with
+the specifiers, `d' and `b', appeared in the code,
+\verb/{b\fivefusev[...]{1==N;3==N}{}{d}}/.
+
+An alkaloid with a coryanthe skeleton
+(R. T. Brown and C. L. Chapple, {\itshape Chem. Commun.},
+1973, 887) can be typeset by the code with nested fusion,
+\begin{verbatim}
+\nonaheterov[begj{b\sixfusev[%
+{c\sixfusev{1==\null}{3SB==H;3SA==Et;%
+4GA==H;%
+4B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}}{F}}]%
+{3==N}{4GB==H;2B==COOMe}{e}}]{1==N}{1==H}
+\end{verbatim}
+where a six-five ring drawn by the command \verb/\nonaheterov/
+is regarded as a mother skeleton. Thus, we have
+\begin{quotation}
+\nonaheterov[begj{b\sixfusev[%
+{c\sixfusev{1==\null}{3SB==H;3SA==Et;%
+4GA==H;%
+4B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}}{F}}]%
+{3==N}{4GB==H;2B==COOMe}{e}}]{1==N}{1==H}
+\vspace*{2cm}
+\end{quotation}
+For the command \verb/\dimethylenei/, see the chapter at issue.
+
+When a six-six ring drawn by the command \verb/\decaheterovb/
+is regarded as a mother skeleton, as shown in the code with
+another nested ring fusion,
+\begin{verbatim}
+\decaheterovb[f{f\fivefusev[d{d\sixfusev[df]{}{}{b}}]%
+{1==N}{1==H}{b}}]{8a==N}{9B==H;2SA==Et;2SB==H;8B==COOMe;%
+3GA==H;%
+3B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}}
+\end{verbatim}
+we find another way of drawing the same structural formula,
+\begin{center}
+\decaheterovb[f{f\fivefusev[d{d\sixfusev[df]{}{}{b}}]%
+{1==N}{1==H}{b}}]{8a==N}{9B==H;2SA==Et;2SB==H;8B==COOMe;%
+3GA==H;%
+3B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}}
+
+\vspace*{1cm}
+\end{center}
+
+The following example shows a code with complicated
+nested structure:
+\begin{verbatim}
+\cyclohexanev[%
+{a\sixfusev[{b\sixfusev[{c\sixfusev[{c\sixfusev[%
+{d\sixfusev[{d\sixfusev[{d\sixfusev[%
+{e\sixfusev[{e\sixfusev[{e\sixfusev[{e\sixfusev[%
+{f\sixfusev[{f\sixfusev[]{}{}{C}}]{}{}{C}}%
+]{}{}{B}}]{}{}{B}}]{}{}{B}}]{}{}{B}}%
+]{}{}{A}}]{}{}{A}}]{}{}{A}}]{}{}{F}}%
+]{}{}{F}}]{}{}{E}}]{}{}{D}}%
+{c\sixfusev[{d\sixfusev[{e\sixfusev[{e\sixfusev[%
+{f\sixfusev[{f\sixfusev[{f\sixfusev[%
+{a\sixfusev[{a\sixfusev[{a\sixfusev[{a\sixfusev[%
+{b\sixfusev[{b\sixfusev[]{}{}{E}}]{}{}{E}}%
+]{}{}{D}}]{}{}{D}}]{}{}{D}}]{}{}{D}}%
+]{}{}{C}}]{}{}{C}}]{}{}{C}}]{}{}{B}}%
+]{}{}{B}}]{}{}{A}}]{}{}{F}}%
+{e\sixfusev[{f\sixfusev[{a\sixfusev[{a\sixfusev[%
+{b\sixfusev[{b\sixfusev[{b\sixfusev[%
+{c\sixfusev[{c\sixfusev[{c\sixfusev[{c\sixfusev[%
+{d\sixfusev[{d\sixfusev[]{}{}{A}}]{}{}{A}}%
+]{}{}{F}}]{}{}{F}}]{}{}{F}}]{}{}{F}}%
+]{}{}{E}}]{}{}{E}}]{}{}{E}}]{}{}{D}}%
+]{}{}{D}}]{}{}{C}}]{}{}{B}}%
+]{}
+\end{verbatim}
+This code generates a multiply fused formula:
+
+\clearpage
+
+\begin{center}
+\vspace*{8cm}
+\cyclohexanev[%
+{a\sixfusev[{b\sixfusev[{c\sixfusev[{c\sixfusev[%
+{d\sixfusev[{d\sixfusev[{d\sixfusev[%
+{e\sixfusev[{e\sixfusev[{e\sixfusev[{e\sixfusev[%
+{f\sixfusev[{f\sixfusev[]{}{}{C}}]{}{}{C}}%
+]{}{}{B}}]{}{}{B}}]{}{}{B}}]{}{}{B}}%
+]{}{}{A}}]{}{}{A}}]{}{}{A}}%
+]{}{}{F}}%
+]{}{}{F}}]{}{}{E}}]{}{}{D}}%
+{c\sixfusev[{d\sixfusev[{e\sixfusev[{e\sixfusev[%
+{f\sixfusev[{f\sixfusev[{f\sixfusev[%
+{a\sixfusev[{a\sixfusev[{a\sixfusev[{a\sixfusev[%
+{b\sixfusev[{b\sixfusev[]{}{}{E}}]{}{}{E}}%
+]{}{}{D}}]{}{}{D}}]{}{}{D}}]{}{}{D}}%
+]{}{}{C}}]{}{}{C}}]{}{}{C}}%
+]{}{}{B}}%
+]{}{}{B}}]{}{}{A}}]{}{}{F}}%
+{e\sixfusev[{f\sixfusev[{a\sixfusev[{a\sixfusev[%
+{b\sixfusev[{b\sixfusev[{b\sixfusev[%
+{c\sixfusev[{c\sixfusev[{c\sixfusev[{c\sixfusev[%
+{d\sixfusev[{d\sixfusev[]{}{}{A}}]{}{}{A}}%
+]{}{}{F}}]{}{}{F}}]{}{}{F}}]{}{}{F}}%
+]{}{}{E}}]{}{}{E}}]{}{}{E}}%
+]{}{}{D}}%
+]{}{}{D}}]{}{}{C}}]{}{}{B}}%
+]{}
+\end{center}
+
+
+
+\clearpage
+
+
+
+\section{Remarks}
+
+\subsection{OPT Arguments}
+
+It should be noted that the OPT arguments of
+such commands as \verb/\bzdrv/, \verb/\naphdrv/,
+and \verb/\anthracenev/ cannot be used
+for the ring-fusion technique. In place of the OPT argument,
+the BONDLIST argument of the corresponding general
+command, e.g. \verb/\cyclohexanev/ or \verb/\sixheterov/
+correspoding to \verb/\bzdrv/,
+should be used for the purpose of ring fusion. .
+For example, a bezene ring of the formula,
+\begin{center}
+\vspace*{1cm}
+\cyclohexanev[ace{a\sixfusev{}{}{D}}]{}
+\end{center}
+should be drawn by using the \verb/\cyclohexanev/ command,
+as shown in the code:
+\begin{verbatim}
+\cyclohexanev[ace{a\sixfusev{}{}{D}}]{}
+\end{verbatim}
+
+\subsection{\protect\XyMTeX{} Warning}
+
+An incorrect result due to
+a wrong specification of a fused bond is
+notified by a \XyMTeX{} warning.
+For example, the code,
+\begin{verbatim}
+\hanthracenev[{a\sixfusev{}{}{d}}]{}
+\end{verbatim}
+gives a formula of wrong fusion:
+\begin{center}
+\vspace*{2cm}
+\hanthracenev[{a\sixfusev{}{}{d}}]{}
+\end{center}
+According to this wrong situation,
+a \XyMTeX{} warning appears in a display or in a log file, e.g.,
+\begin{verbatim}
+ XyMTeX Warning: Mismatched fusion at bond `a, i, or other'
+ on input line 1904
+\end{verbatim}
+There are two ways to correct the wrong fusion and,
+as a result, to avoid such a \XyMTeX{} warning.
+First, the code
+\begin{verbatim}
+\hanthracenev[{A\sixfusev{}{}{d}}]{}
+\end{verbatim}
+in which the acceptor bond specifier `a' is changed into `A',
+gives a correct result, as found in the top example of
+this chapter. Alternatively,
+the donor bond specifier `d' can be changed into `D'.
+Thus, the code,
+\begin{verbatim}
+\hanthracenev[{a\sixfusev{}{}{D}}]{}
+\end{verbatim}
+also typesets the second formula with correct fusion.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Fusing Units}
+
+The commands described in this chapter are stored in
+the {\sf fusering} package (file name: fusering.sty).
+
+\section{Six-membered Fusing Units}
+\subsection{Vertical Units of Normal and Inverse Types}
+In \XyMTeX{} version 1.01, we can use \verb/\sixunitv/
+and \verb/\fiveunitv/ as building blocks, where
+one or more bonds can be omitted.
+In the present version, we prepare
+such commands as \verb/\sixfusev/ an \verb/\sixfusevi/,
+producing building blocks with only one deleted bond.
+These commands can be used in the BONDLIST of another
+command so as to give a fused structural formula,
+as described in the preceding chapter.
+The commands \verb/\sixfusev/ and \verb/\sixfusevi/ have formats
+represented by
+\begin{verbatim}
+\sixfusev[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\sixfusevi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+where the argument FUSE is an alphabetical character (a--f)
+or the uppercase counterpart (A--F),
+each of which is a bond specifier representing one bond to be omitted.
+A lowercase character (a--f) represents the younger terminal of
+the omitted bond.
+The corresponding uppercase character (A--F) designates
+the other terminal of the bond to be omitted.
+The other arguments have the same formats as described
+in the general conventions (see \XyMTeX book).
+The locant numbers and the bond specifiers of
+the command \verb/\sixfusev/ correspond to
+those of the command \verb/\sixheterov/ (see \XyMTeX book).
+The command \verb/\sixfusevi/ is the inverse counterpart
+of \verb/\sixfusev/ and corresponds to the command \verb/\sixheterovi/.
+Moreover, the BONDLIST is capbable of
+accormodating the ring-fusion function described
+in the preseding chapter,
+the ATOMLIST can accomodate the spiro-ring function
+described afterward, and
+the SUBSLIST serves a method producing subsituents (``yl''-function)
+describe previously.
+
+For example, the last argument `F' of the \verb/\sixfusev/
+appearing in the code,
+\begin{verbatim}
+\sixfusev[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}
+\end{verbatim}
+results in the deletion of the bond `f' between atom no.~6 (youger
+teminal) and atom no.~1 (older terminal) from a hexagon,
+typesetting the following building block:
+\begin{center}
+\sixfusev[]{1==\null}{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}
+
+\vspace*{3cm}
+\end{center}
+where the reference point for superposition is
+the older terminal (i.e. atom no.~1) of the bond `f'.
+The code \verb/1==\null/ gives a vacancy at the position of atom no.~1.
+When the building block is used in the BONDLIST of
+the \verb/\decaheterov/, as shown in the code,
+\begin{verbatim}
+\decaheterov[fhk%
+{c\sixfusev[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O}
+\end{verbatim}
+we have the following structure,
+\begin{center}
+\decaheterov[fhk%
+{c\sixfusev[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O}
+\vspace*{2cm}
+\end{center}
+
+The last argument `F' of the \verb/\sixfusev/
+can be changed into `f', as found in the code,
+\begin{verbatim}
+\decaheterovi[fhk%
+{a\sixfusev[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{f}}]{2==N}{6==CH$_3$O;7==CH$_3$O}
+\end{verbatim}
+where we use \verb/\decaheterovi/ in place of
+\verb/\decaheterov/ for drawing the bicyclic mother skeleton.
+Thereby, we have the following structure,
+\begin{center}
+\decaheterovi[fhk%
+{a\sixfusev[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{f}}]{2==N}{6==CH$_3$O;7==CH$_3$O}
+\vspace*{2cm}
+\end{center}
+
+The vertically opposite formula can be drawn by the combination of
+\verb/\sixfusevi/ and \verb/\decaheterovi/ with no other changes
+of designation (in comparison with the first code of this
+section), i.e.
+\begin{verbatim}
+\decaheterovi[fhk%
+{c\sixfusevi[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O}
+\end{verbatim}
+Thereby we have
+\begin{center}
+\vspace*{2cm}
+\decaheterovi[fhk%
+{c\sixfusevi[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O}
+\end{center}
+
+\subsection{Horizontal Units of Normal and Inverse Types}
+
+For drawing horizontal fusing units,
+we can use the commands \verb/\sixfuseh/ and \verb/\sixfusehi/,
+which are represented by
+\begin{verbatim}
+\sixfuseh[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\sixfusehi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+
+The horizontal formula of normal type related to the tricyclic
+formulas described in the preceding subsection
+can be drawn by the combination of
+\verb/\sixfuseh/ and \verb/\decaheteroh/ with few changes
+of designation (CH$_{3}$O to OCH$_{3}$), i.e.
+\begin{verbatim}
+\decaheteroh[fhk%
+{c\sixfuseh[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$}
+\end{verbatim}
+which typsets the following structure,
+\begin{center}
+\vspace*{1cm}
+\decaheteroh[fhk%
+{c\sixfuseh[]{1==\null}%
+{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$}
+\end{center}
+
+The horizontally opposite formula can be drawn by the combination of
+\verb/\sixfusehi/ and \verb/\decaheterohi/ with
+slight changes concerning the handedness of subsitutents, i.e.
+\begin{verbatim}
+\decaheterohi[fhk%
+{c\sixfusehi[]{1==\null}%
+{3==C$_2$H$_5$;4==C$_2$H$_5$OCOCH$_2$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$}
+\end{verbatim}
+Thereby we have
+\begin{center}
+\vspace*{1cm}
+\decaheterohi[fhk%
+{c\sixfusehi[]{1==\null}%
+{3==C$_2$H$_5$;4==C$_2$H$_5$OCOCH$_2$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$}
+\end{center}
+
+\section{Five-membered Fusing Units}
+\subsection{Vertical Units of Normal and Inverse Types}
+To obtain a vertical five-membered building block,
+we can use \verb/\fivefusev/ and \verb/\fivefusevi/:
+\begin{verbatim}
+\fivefusev[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\fivefusevi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+where the argument FUSE is an alphabetical character (a--e)
+or the uppercase counterpart (A--E),
+each of which is a bond specifier representing one bond to be omitted.
+The other specifications have the same formats
+as found in the preceding section.
+
+The following example (left) gives the use of the \verb/\fivefusevi/
+command by itself, where its SUBSLIST contains some substituents:
+\begin{verbatim}
+\fivefusevi{4==O}{2D==;3D==O}{E} \hskip 3cm
+\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}
+\end{verbatim}
+\begin{center}
+%\vspace*{1cm}
+\fivefusevi{4==O}{2D==;3D==O}{E} \hskip 3cm
+\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}
+
+\vspace*{2cm}
+\end{center}
+To show hydrogen substitution at the fused positions, we
+add the designation of \verb/1GA==H;5GB==H/ to the
+SUBSLIST of the \verb/\fivefusevi/ command (right above).
+Then, the latter code is written in the BONDLIST of
+a command \verb/\decalinev/, as found in the code:
+\begin{verbatim}
+\decalinev[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]%
+{6D==O;5A==;0FB==;0GA==H}
+\end{verbatim}
+Thereby, we obtain
+\begin{center}
+\decalinev[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]%
+{6D==O;5A==;0FB==;0GA==H}
+
+\vspace*{1cm}
+\end{center}
+
+Fusing units such as \verb/\fivefusev/
+can be multiply nested in itself and in other types of fusing units.
+The following example shows such a trebly-nested case.
+\begin{verbatim}
+\decaheterovi[AB%
+{b\fivefusev[{a\sixfusev[ce%
+{c\sixfusev{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{verbatim}
+\begin{quotation}
+\decaheterovi[AB%
+{b\fivefusev[{a\sixfusev[ce%
+{c\sixfusev{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+
+\vspace*{2cm}
+\end{quotation}
+
+When all of the commands in the above code are
+changed into the inverse counterparts
+(\verb/\decaheterovi/ to \verb/\decaheterov/;
+\verb/\fivefusev/ and \verb/\fivefusevi/; and
+\verb/\sixfusev/ to \verb/\sixfusevi/),
+the code is transformed into another code,
+\begin{verbatim}
+\decaheterov[AB%
+{b\fivefusevi[{a\sixfusevi[ce%
+{c\sixfusevi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{verbatim}
+Thereby, we can obtain the formula of vertically inverse type.
+\begin{quotation}
+\vspace*{2cm}
+\decaheterov[AB%
+{b\fivefusevi[{a\sixfusevi[ce%
+{c\sixfusevi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{quotation}
+
+\subsection{Horizontal Units of Normal and Inverse Types}
+Horizontal five-membered building block are
+obtained by using \verb/\fivefuseh/ and \verb/\fivefusehi/:
+\begin{verbatim}
+\fivefuseh[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\fivefusehi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+where the argument FUSE is an alphabetical character (a--e)
+or the uppercase counterpart (A--E),
+each of which is a bond specifier representing one bond to be omitted.
+The other specifications have the same formats
+as found in the preceding section.
+
+The example given for \verb/\fivefusevi/ is
+changed into the one using the horizontal counterpart \verb/\fivefusehi/:
+\begin{verbatim}
+\decalineh[h{c\fivefusehi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]{5A==;6D==O}
+\end{verbatim}
+\begin{center}
+\vspace*{1cm}
+\decalineh[h{c\fivefusehi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]{5A==;6D==O}
+\end{center}
+Note that no changes of other designation are necessary except that
+\verb/\decalineh/ and \verb/\fivefusehi/ are used
+in place of the vertical counterpart described above.
+
+The multiply nested example described above for drawing
+a structure of vertical type can be changed into
+the corresponding one of horizontal type,
+if all of the commmands are changed into horizontal types
+(\verb/\decaheterovi/ to \verb/\decaheterohi/;
+\verb/\fivefusev/ to \verb/\fivefuseh/; and
+\verb/\sixfusev/ to \verb/\sixfuseh/).
+
+\begin{verbatim}
+\decaheterohi[AB%
+{b\fivefuseh[{a\sixfuseh[ce%
+{c\sixfuseh{3==O}{4D==O;5SB==OH;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{verbatim}
+\begin{quotation}
+\vspace*{2cm}\hspace*{4cm}
+\decaheterohi[AB%
+{b\fivefuseh[{a\sixfuseh[ce%
+{c\sixfuseh{3==O}{4D==O;5SB==OH;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{quotation}
+
+When all the commands in the above code are
+changed into the inverse counterparts
+(\verb/\decaheterohi/ to \verb/\decaheteroh/;
+\verb/\fivefuseh/ and \verb/\fivefusehi/; and
+\verb/\sixfuseh/ to \verb/\sixfusehi/),
+the code is transformed into another code,
+\begin{verbatim}
+\decaheteroh[AB%
+{b\fivefusehi[{a\sixfusehi[ce%
+{c\sixfusehi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{verbatim}
+Thereby, we can obtain the formula of horizontally inverse type.
+\begin{quotation}
+\vspace*{2cm}\hspace*{4cm}
+\decaheteroh[AB%
+{b\fivefusehi[{a\sixfusehi[ce%
+{c\sixfusehi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]%
+{2==N}{}{D}}]{1==N}{}
+\end{quotation}
+
+\section{Four-membered Fusing Units}
+
+To obtain a four-membered building block,
+we can use \verb/\fourfuse/:
+\begin{verbatim}
+\fourfuse[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+where the argument FUSE is an alphabetical character (a--d)
+or the uppercase counterpart (A--D),
+each of which is a bond specifier representing one bond to be omitted.
+The assignment of characters (a to d) and locants (1 to 4)
+for the command \verb/\fourhetero/ is applied
+in the same way to this case.
+The other specifications have the same formats
+as those of the command \verb/\fourhetero/.
+
+For example, the code,
+\begin{verbatim}
+\sixheterov[{e\fourfuse{}{}{b}}]{}{}
+\sixheterov[{b\fourfuse{}{}{d}}]{}{}
+\sixheteroh[{b\fourfuse{}{}{a}}]{}{}
+\sixheteroh[{e\fourfuse{}{}{c}}]{}{}
+\end{verbatim}
+produces the following structural formulas.
+\begin{center}
+\sixheterov[{e\fourfuse{}{}{b}}]{}{}
+\sixheterov[{b\fourfuse{}{}{d}}]{}{}
+\sixheteroh[{b\fourfuse{}{}{a}}]{}{}
+\sixheteroh[{e\fourfuse{}{}{c}}]{}{}
+\end{center}
+
+A hetero atom at a fused position is designated in the ATOMLIST
+of \verb/\fourfuse/, which is associated the code \verb/\null/
+in the ATOMLIST of a command for drawing a mother skeleton.
+For example, the code
+\begin{verbatim}
+\sixheterov[{e\fourfuse{3==N}{}{b}}]{6==\null}{}
+\sixheterov[{b\fourfuse{4==N}{}{d}}]{2==\null}{}
+\sixheteroh[{b\fourfuse{2==N}{}{a}}]{3==\null}{}
+\sixheteroh[{e\fourfuse{3==N}{}{c}}]{5==\null}{}
+\end{verbatim}
+produces the following structural formulas.
+\begin{center}
+\sixheterov[{e\fourfuse{3==N}{}{b}}]{6==\null}{}
+\sixheterov[{b\fourfuse{4==N}{}{d}}]{2==\null}{}
+\sixheteroh[{b\fourfuse{2==N}{}{a}}]{3==\null}{}
+\sixheteroh[{e\fourfuse{3==N}{}{c}}]{5==\null}{}
+\end{center}
+
+Penicillin G can be drawn by using the \verb/\fourfuse/ command
+in the code,
+\begin{verbatim}
+\fiveheterovi[{d\fourfuse{2==\null}{1D==O;4Su==PhCH$_{2}$CONH;4Sd==H}{b}}]%
+{1==S;4==N}{2Sa==CH$_{3}$;2Sb==CH$_{3}$;3SA==COOH;3SB==H;5GA==H}
+\end{verbatim}
+which typeset the following formula:
+\begin{center}
+\fiveheterovi[{d\fourfuse{2==\null}{1D==O;4Su==PhCH$_{2}$CONH;4Sd==H}{b}}]%
+{1==S;4==N}{2Sa==CH$_{3}$;2Sb==CH$_{3}$;3SA==COOH;3SB==H;5GA==H}
+\end{center}
+
+\section{Three-membered Fusing Units}
+\subsection{Vertical Units of Normal and Inverse Types}
+To obtain three-membered building blocks of
+vertical type, we can use \verb/\threefusev/ and \verb/\threefusevi/:
+\begin{verbatim}
+\threefusev[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\threefusevi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+where the argument FUSE is an alphabetical character (a--c)
+or the uppercase counterpart (A--C),
+each of which is a bond specifier representing one bond to be omitted.
+The assignment of characters (a to c) and locants (1 to 3)
+for the command \verb/\threeheterov/ or \verb/\threeheterovi/ is applied
+in the same way to this case.
+The other specifications have the same formats
+as those of the command \verb/\threeheterov/ or \verb/\threeheterovi/.
+
+For example, the code using \verb/\threefusev/,
+\begin{verbatim}
+\sixheteroh[{a\threefusev{}{}{a}}]{}{}
+\sixheteroh[{e\threefusev{}{}{b}}]{}{}
+\sixheteroh[{c\threefusev{}{}{c}}]{}{}
+\end{verbatim}
+produces the following structural formulas.
+\begin{center}
+\sixheteroh[{a\threefusev{}{}{a}}]{}{}
+\sixheteroh[{e\threefusev{}{}{b}}]{}{}
+\sixheteroh[{c\threefusev{}{}{c}}]{}{}
+\end{center}
+The use of the inverse type is shown in the code,
+\begin{verbatim}
+\sixheteroh[{F\threefusevi{}{}{a}}]{}{}
+\sixheteroh[{B\threefusevi{}{}{b}}]{}{}
+\sixheteroh[{D\threefusevi{}{}{c}}]{}{}
+\end{verbatim}
+which produces the following structural formulas.
+\begin{center}
+\sixheteroh[{F\threefusevi{}{}{a}}]{}{}
+\sixheteroh[{B\threefusevi{}{}{b}}]{}{}
+\sixheteroh[{D\threefusevi{}{}{c}}]{}{}
+\end{center}
+
+Hetero-atoms at fused positions can be typeset by designating
+ATOMLISTs. For example, the code,
+\begin{verbatim}
+\sixheteroh[{a\threefusev{1==N}{}{a}}]{1==\null}{}
+\sixheteroh[{e\threefusev{2==N}{}{b}}]{5==\null}{}
+\sixheteroh[{c\threefusev{3==N}{}{c}}]{3==\null}{}
+\end{verbatim}
+produces the following structural formulas.
+\begin{center}
+\sixheteroh[{a\threefusev{1==N}{}{a}}]{1==\null}{}
+\sixheteroh[{e\threefusev{2==N}{}{b}}]{5==\null}{}
+\sixheteroh[{c\threefusev{3==N}{}{c}}]{3==\null}{}
+\end{center}
+
+\subsection{Horizontal Units of Normal and Inverse Types}
+Three-membered building blocks of
+horizontal type can be obtained by using
+\verb/\threefuseh/ and \verb/\threefusehi/:
+\begin{verbatim}
+\threefuseh[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\threefusehi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE}
+\end{verbatim}
+where the argument FUSE is an alphabetical character (a--c)
+or the uppercase counterpart (A--C),
+each of which is a bond specifier representing one bond to be omitted.
+The assignment of characters (a to c) and locants (1 to 3)
+for the command \verb/\threeheteroh/ or \verb/\threeheterohi/ is applied
+in the same way to this case.
+The other specifications have the same formats
+as those of the command \verb/\threeheteroh/ or \verb/\threeheterohi/.
+
+For example, the code using \verb/\threefuseh/,
+\begin{verbatim}
+\sixheterov[{F\threefuseh{}{}{a}}]{}{}
+\sixheterov[{B\threefuseh{}{}{b}}]{}{}
+\sixheterov[{D\threefuseh{}{}{c}}]{}{}
+\end{verbatim}
+produces the following structural formulas.
+\begin{center}
+\sixheterov[{F\threefuseh{}{}{a}}]{}{}
+\sixheterov[{B\threefuseh{}{}{b}}]{}{}
+\sixheterov[{D\threefuseh{}{}{c}}]{}{}
+\end{center}
+The use of the inverse type is shown in the code,
+\begin{verbatim}
+\sixheterov[{a\threefusehi{}{}{a}}]{}{}
+\sixheterov[{e\threefusehi{}{}{b}}]{}{}
+\sixheterov[{c\threefusehi{}{}{c}}]{}{}
+\end{verbatim}
+which produces the following structural formulas.
+\begin{center}
+\sixheterov[{a\threefusehi{}{}{a}}]{}{}
+\sixheterov[{e\threefusehi{}{}{b}}]{}{}
+\sixheterov[{c\threefusehi{}{}{c}}]{}{}
+\end{center}
+
+Hetero-atoms at fused positions can be typeset by designating
+ATOMLISTs. For example, the code,
+\begin{verbatim}
+\sixheterov[{F\threefuseh{1==N}{}{a}}]{1==\null}{}
+\sixheterov[{B\threefuseh{2==N}{}{b}}]{3==\null}{}
+\sixheterov[{D\threefuseh{3==N}{}{c}}]{5==\null}{}
+\end{verbatim}
+produces the following structural formulas.
+\begin{center}
+\sixheterov[{F\threefuseh{1==N}{}{a}}]{1==\null}{}
+\sixheterov[{B\threefuseh{2==N}{}{b}}]{3==\null}{}
+\sixheterov[{D\threefuseh{3==N}{}{c}}]{5==\null}{}
+\end{center}
+
+An aziridine derivative,
+\begin{center}
+\sixheterov[{B\threefuseh{1==N}{1==COOC$_{2}$H$_{5}$}{b}}]{}{}
+\end{center}
+can be drawn by the code,
+\begin{verbatim}
+\sixheterov[{B\threefuseh{1==N}{1==COOC$_{2}$H$_{5}$}{b}}]{}{}
+\end{verbatim}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\chapter{Spiro Rings}
+\section{General Conventions for Spiro-Ring Attachment}
+
+There are several ways for naming spiro compounds
+in the light of the IUPAC nomenclature.
+Rule A-41.4 allows us to use such a name as
+spiro[cyclopentane-1,1$^{\prime}$-indene]
+for representing the following structure:
+\begin{center}
+\vspace*{1cm}
+\nonaheterovi[begj]{1s==\fiveheterov{}{1==(yl)}}{}
+\end{center}
+The same structure is named indene-1-spiro-1$^{\prime}$-cyclohexane
+in terms of Rule A-42.1.
+Spiro[5.5]undecane, the name due to Rule A-41.1 and A-41.2,
+is alternatively referred to as
+cyclohexanespirocyclohexane in terms of Rule A-42.1:
+\begin{center}
+\vspace*{1cm}
+\sixheterov[]{1s==\sixheterov[]{}{4==(yl)}}{}
+\end{center}
+where the `cyclohexanespiro' shows the replacement of a
+carbon atom in a cyclohexne by another cyclohexane ring.
+These rules essentially have the same methodology as the
+IUPAC replacement nomenclature, e.g.,
+oxacyclohexane (more formally, oxane or tetrahydropyran)
+for the formula
+\begin{center}
+\sixheterov[]{1==O}{}
+\end{center}
+generated by the code,
+\begin{verbatim}
+\sixheterov[]{1==O}{}
+\end{verbatim}
+where the prefix `oxa' shows the replacement of a
+carbon atom with an oxygen atom.
+Obviously, the prefix `cyclohexanespiro' of the name
+`cyclohexanespirocyclohexane' is akin to
+the prefix `oxa' of the name `oxacyclohexane' or `oxane'
+from the viewpoint of the construction of names.
+Since the unit due to the latter prefix is designated by
+the \verb/1==O/ involved in the ATOMLIST,
+the former prefix can be treated in the same way.
+Hence, spiro compounds are drawn as follows:
+\begin{enumerate}
+\item
+\XyMTeX{} regards a spiro ring
+as a unit for the IUPAC replacement nomenclature,
+which is generated from an appropriate structure by ``yl''-function.
+\item the code of the unit due to the ``yl''-function is added to
+the ATOMLIST of a mother skeleton.
+\end{enumerate}
+
+Spiro[5.5]undecane is regarded as `cyclohexana'-cyclohexane
+(more formally, `cyclohexanespiro'-cyclo\-hexane),
+as found in the code,
+\begin{verbatim}
+\sixheterov[]{1s==\sixheterov[]{}{4==(yl)}}{}
+\end{verbatim}
+where the code
+\verb/\sixheterov[]{}{4==(yl)}/ produced by the ``yl''-function
+corresponds to the suffix `cyclohexana' and
+is written in the ATOMLIST of the outer \verb/sixheterov/ command.
+Thereby, we can obtain
+\begin{center}
+\vspace*{1cm}
+\sixheterov[]{1s==\sixheterov[]{}{4==(yl)}}{}
+\end{center}
+
+Note that the atom modifier `s' in the code
+\verb/1s==\sixheterov[]{}{4==(yl)}/ represents no
+hetero-atom at the spiro position.
+When a hetero-atom is present at the spiro position,
+an atom modifier `h' is used in place of `s'.
+For example, the code
+\begin{verbatim}
+\sixheterov[]{1h==\sixheterov[]{4==N}{4==(yl)}}{}
+\end{verbatim}
+typeset the following formula:
+\begin{center}
+\vspace*{1cm}
+\sixheterov[]{1h==\sixheterov[]{4==N}{4==(yl)}}{}
+\end{center}
+
+It should be noted that the absence of such atom
+modifiers represents a usual replacement by
+a hetero atom, as found in the formula of
+oxane shown above or in the one of
+thiacyclohexane (tetrahydrothiane):
+\begin{center}
+\sixheterov[]{1==S}{}
+\end{center}
+generated by the code,
+\begin{verbatim}
+\sixheterov[]{1==S}{}
+\end{verbatim}
+
+\section{Several Examples}
+
+Spiro[cyclopentane-1,1$^{\prime}$-indene] described above
+can be drawn in two ways:
+\begin{center}
+\vspace*{1cm}
+\nonaheterovi[begj]{1s==\fiveheterov{}{1==(yl)}}{}
+\fiveheterov{1s==\nonaheterovi[begj]{}{1==(yl)}}{}
+
+\vspace*{1cm}
+\end{center}
+where we use two different codes:
+\begin{verbatim}
+\nonaheterovi[begj]{1s==\fiveheterov{}{1==(yl)}}{}
+\fiveheterov{1s==\nonaheterovi[begj]{}{1==(yl)}}{}
+\end{verbatim}
+which correspond to
+`cyclohexane-1-spiro-1$^{\prime}$-indene' and
+`indene-1-spiro-1$^{\prime}$-cyclohexane' (formal),
+respectively.
+
+A spiro dienone
+\begin{center}
+\vspace*{1cm}
+\sixheterov[be]{%
+1s==\fiveheterov{4==N}{1==(yl);3SB==H;3SA==COOCH$_{2}$Ph;%
+4==PhCH$_{2}$OCO;5D==O}}{4D==O}
+\end{center}
+can be drawn by writing a code,
+\begin{verbatim}
+\sixheterov[be]{%
+1s==\fiveheterov{4==N}{1==(yl);3SB==H;3SA==COOCH$_{2}$Ph;%
+4==PhCH$_{2}$OCO;5D==O}}{4D==O}
+\end{verbatim}
+
+1-Azaspiro[5.5]undecene
+which is the skeleton present in histrionicotoxin
+(Tetrahedron Lett., 1981, {\bf 22}, 2247)
+\begin{center}
+\sixheterov[]{1==N;6s==\cyclohexanev[a]{3==(yl)}}{1==CH$_{2}$Ph}
+\end{center}
+can be drawn by the code,
+\begin{verbatim}
+\sixheterov[]{1==N;6s==\cyclohexanev[a]{3==(yl)}}{1==CH$_{2}$Ph}
+\end{verbatim}
+
+The following example shows a case
+to which both ring fusion and spiro attachment are applied.
+The code,
+\begin{verbatim}
+\decaheterov[fhk%
+{g\fivefusev{1==O;4==O}{}{b}}%
+]{1s==\cyclohexanev[be]{1D==O;4==(yl)}}{}
+\end{verbatim}
+gives the following formula:
+\begin{center}
+\vspace*{2cm}
+\decaheterov[fhk%
+{g\fivefusev{1==O;4==O}{}{b}}%
+]{1s==\cyclohexanev[be]{1D==O;4==(yl)}}{}
+\end{center}
+
+A 1,3-dioxolane derivative
+\begin{center}
+\fiveheterov{2==O;5==O;%
+1s==\trimethylenei{}{3==(yl);1W==PhSO$_{2}$;3W==R}}{}%
+\end{center}
+can be drawn by the code,
+\begin{verbatim}
+\fiveheterov{2==O;5==O;1s==\trimethylenei{}{3==(yl);1W==PhSO$_{2}$;3W==R}}{}%
+\end{verbatim}
+The same compound is also drawn by usual techniques
+as follows:
+\begin{verbatim}
+\fiveheterov{2==O;5==O}{1Sb==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1Sa==R}
+\end{verbatim}
+\begin{center}
+\fiveheterov{2==O;5==O}{1Sb==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1Sa==R}
+\end{center}
+
+\begin{verbatim}
+\fiveheterov{2==O;5==O}{1G==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1F==R}
+\end{verbatim}
+\begin{center}
+\fiveheterov{2==O;5==O}{1G==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1F==R}
+\end{center}
+
+1,2,3,4-Tetrahydroquinoline-4-spiro-4$^{\prime}$-piperidine,
+\begin{quotation}
+\vspace*{2cm}
+\decaheterovi[fhk]{1==N;4s==\sixheterov[]{1==N}{4==(yl);1==H}}{1==H}
+\end{quotation}
+can be drawn by writing a code,
+\begin{verbatim}
+\decaheterovi[fhk]{1==N;4s==\sixheterov[]{1==N}{4==(yl);1==H}}{1==H}
+\end{verbatim}
+
+3,3$^{\prime}$-Spirobi[3{\it H}-indole],
+\begin{quotation}
+\vspace*{1cm}
+\nonaheterovi[begj]{3==N;%
+1s==\fiveheterov[bd{b\sixfusev[ac]{}{}{e}}]{4==N}{1==(yl)}}{}
+\end{quotation}
+is typeset by the code,
+\begin{verbatim}
+\nonaheterovi[begj]{3==N;%
+1s==\fiveheterov[bd{b\sixfusev[ac]{}{}{e}}]{4==N}{1==(yl)}}{}
+\end{verbatim}
+
+The code,
+\begin{verbatim}
+\sixheterov[]{1s==\fiveheterov{2==O;5==O}{1==(yl)}}{%
+5==\threeheteroh{1==O}{3Sb==Me$_{3}$Si;3==(yl)}}
+\end{verbatim}
+typesets the following structure:
+\begin{center}
+\vspace*{1cm}
+\sixheterov[]{1s==\fiveheterov{2==O;5==O}{1==(yl)}}{%
+5==\threeheteroh{1==O}{3Sb==Me$_{3}$Si;3==(yl)}}
+\end{center}
+
+A spiro intermediate during spiro annelation
+(T.\ S.\ T.\ Wang, {\em Tetrahedron Lett.}, 1975, 1637),
+\begin{quotation}
+\vspace*{1cm}
+\nonaheterov[aA]{1==N;%
+3s==\decaheterovb[B]{8==N}{5==(yl);8==\dimethylenei{}{1D==O;1==(yl)}}}{}
+\end{quotation}
+can be drawn by the code,
+\begin{verbatim}
+\nonaheterov[aA]{1==N;%
+3s==\decaheterovb[B]{8==N}{5==(yl);8==\dimethylenei{}{1D==O;1==(yl)}}}{}
+\end{verbatim}
+
+A lactone intermediate containing a protected ketone
+(A. Grieco and M. Nishizawa, {\em Chem. Commun.}, 1976, 582),
+\begin{center}
+\decaheterov[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2B==;3D==O}{E}}]{%
+6s==\fiveheterovi{1==O;3==O}{2==(yl)}}{5A==;{10}B==;9A==H}
+
+\vspace*{1cm}
+\end{center}
+is drawn by the code,
+\begin{verbatim}
+\decaheterov[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2B==;3D==O}{E}}]{%
+6s==\fiveheterovi{1==O;3==O}{2==(yl)}}{5A==;{10}B==;9A==H}
+\end{verbatim}
+
+\section{Multi-Spiro Derivatives}
+
+Multi-sipro derivatives are drawn by nesting spiro function.
+For example, cyclohexanespirocyclopentane-3$^{\prime}$-%
+spirocyclohexane (Rule A-42.4),
+\begin{center}
+\sixheteroh[]{4s==\fiveheterov{%
+2s==\sixheteroh[]{}{1==(yl)}}{5==(yl)}}{}
+\end{center}
+is typeset by the code,
+\begin{verbatim}
+\sixheteroh[]{4s==\fiveheterov{%
+2s==\sixheteroh[]{}{1==(yl)}}{5==(yl)}}{}
+\end{verbatim}
+When \verb/\fiveheterov/ is a mother skeleton,
+such a nested command is unnecessary:
+\begin{verbatim}
+\fiveheterov{2s==\sixheteroh[]{}{1==(yl)};%
+5s==\sixheteroh[]{}{4==(yl)}}{}
+\end{verbatim}
+\begin{center}
+\fiveheterov{2s==\sixheteroh[]{}{1==(yl)};%
+5s==\sixheteroh[]{}{4==(yl)}}{}
+\end{center}
+
+The name (Rule A-42.4),
+fluorene-9-spiro-1$^{\prime}$-cyclohexane-4$^{\prime}$-%
+spiro-1$^{\prime}$-indene, corresponds to the code,
+\begin{verbatim}
+\nonaheterovi[begj{b\sixfusev[ac]{}{}{E}}]{%
+1s==\sixheterov[]{1s==\nonaheterov[begj]{}{1==(yl)}}{4==(yl)}}{}
+\end{verbatim}
+which gives
+\begin{quotation}
+\vspace*{2cm}
+\nonaheterovi[begj{b\sixfusev[ac]{}{}{E}}]{%
+1s==\sixheterov[]{1s==\nonaheterov[begj]{}{1==(yl)}}{4==(yl)}}{}
+\end{quotation}
+
+
+\section{Atom Replacement}
+
+The ATOMLIST of each command is capable of
+accommodating a group if a sufficient space is available.
+For example, compare two codes,
+\begin{verbatim}
+\sixheteroh{4==NCOOEt}{}
+\hskip 2cm
+\sixheteroh{4==N}{4==COOEt}
+\end{verbatim}
+generating formulas equivalent chemically to each other:
+\begin{center}
+\sixheteroh{4==NCOOEt}{}
+\hskip 2cm
+\sixheteroh{4==N}{4==COOEt}
+\end{center}
+Note that the former example uses an ATOMLIST and
+the latter uses an SUBSLIST for describing substituents.
+
+Even when no such space is available, the use of
+a command, \verb/\upnobond/ or \verb/\downnobond/,
+give a solution (see \XyMTeX book pages 259--260).
+Compare the following formulas,
+\begin{center}
+\sixheterov{4==\downnobond{N}{COOEt}}{}
+\sixheterov{4==N}{4==COOEt}
+\sixheterov{1==\upnobond{N}{COOEt}}{}
+\sixheterov{1==N}{1==COOEt}
+\end{center}
+generated by the code,
+\begin{verbatim}
+\sixheterov{4==\downnobond{N}{COOEt}}{}
+\sixheterov{4==N}{4==COOEt}
+\sixheterov{1==\upnobond{N}{COOEt}}{}
+\sixheterov{1==N}{1==COOEt}
+\end{verbatim}
+
+These examples show that a substituent (e.g. NCOOEt) can
+be regarded as a component for atom replacement using a ATOMLIST.
+This methodology can be applied to a case in which
+such a substituent is generated by the ``yl''-function or
+by such a linking command as \verb/\ryl/ or \verb/\lyl/.
+The following example shows the use the \verb/\ryl/ command
+in the ATOMLIST of \verb/\sixheteroh/.
+\begin{verbatim}
+\sixheteroh{4h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{3h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{4h==\ryl(0==N){8==\bzdrv{1==(yl)}}}{}
+\end{verbatim}
+\begin{center}
+\sixheteroh{4h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{3h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{4h==\ryl(0==N){8==\bzdrv{1==(yl)}}}{}
+
+\vspace*{1cm}
+\end{center}
+
+A bond bewtween a COO unit and a phenyl group is frequently
+omitted. For this purpose, we use command \verb/\ayl/
+defined as
+\begin{verbatim}
+\makeatletter
+\def\ayl{\@ifnextchar({\@ayl@}{\@ayl@(10,40)}}
+\def\@ayl@(#1,#2)#3{%
+\begingroup\yl@xdiff=0 \yl@ydiff=0%
+\kern#1\unitlength\raise#2\unitlength\hbox to0pt{#3\hss}%
+\endgroup}
+\makeatother
+\end{verbatim}
+Thereby, we have the following examples.
+\begin{verbatim}
+\sixheteroh{4==NCOO\ayl{\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{3==NCOO\ayl{\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{4==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{}
+\end{verbatim}
+\begin{center}
+\sixheteroh{4==NCOO\ayl{\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{3==NCOO\ayl{\bzdrh{1==(yl)}}}{}
+\hskip2cm
+\sixheterov{4==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{}
+\end{center}
+
+\begin{verbatim}
+\tetramethylene[a]{3==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{}
+\hskip2cm
+\tetramethylene[a]{3==N}{3==COO\ayl{\bzdrh{1==(yl)}}}
+\end{verbatim}
+\begin{center}
+\tetramethylene[a]{3==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{}
+\hskip2cm
+\tetramethylene[a]{3==N}{3==COO\ayl{\bzdrh{1==(yl)}}}
+\end{center}
+
+
+\endinput
+
+
+\begin{verbatim}
+\end{verbatim}
+\begin{center}
+\end{center}
+
+
+\begin{verbatim}
+\end{verbatim}
+\begin{quotation}
+\end{quotation}
+
+ \ No newline at end of file