m17n-docs start
authorhanda <handa>
Mon, 16 Jun 2003 12:18:19 +0000 (12:18 +0000)
committerhanda <handa>
Mon, 16 Jun 2003 12:18:19 +0000 (12:18 +0000)
58 files changed:
AUTHORS [new file with mode: 0644]
ChangeLog [new file with mode: 0644]
Makefile.am [new file with mode: 0644]
NEWS [new file with mode: 0644]
README [new file with mode: 0644]
bootstrap.sh [new file with mode: 0755]
configure.ac [new file with mode: 0644]
data-dev/header.tex [new file with mode: 0644]
data-ja/conclusion.tex [new file with mode: 0644]
data-ja/header.tex [new file with mode: 0644]
data-ja/introduction.tex [new file with mode: 0644]
data-ja/m17n-X.tex [new file with mode: 0644]
data-ja/m17n-basicC.tex [new file with mode: 0644]
data-ja/m17n-database.tex [new file with mode: 0644]
data-usr/header.tex [new file with mode: 0644]
doxyfile.in [new file with mode: 0644]
footer.html [new file with mode: 0644]
footer.html.ja [new file with mode: 0644]
head.ps [new file with mode: 0644]
header.html [new file with mode: 0644]
header.html.ja [new file with mode: 0644]
header.tex [new file with mode: 0644]
m17nlib.css [new file with mode: 0644]
mainpage.en.html [new file with mode: 0644]
mainpage.ja.html [new file with mode: 0644]
smallmule.gif [new file with mode: 0755]
styles/backref.sty [new file with mode: 0644]
styles/doxygen-m17n.sty [new file with mode: 0644]
styles/fancyhdr.sty [new file with mode: 0644]
styles/float.sty [new file with mode: 0644]
styles/hdvipdfm.def [new file with mode: 0644]
styles/hdvips.def [new file with mode: 0644]
styles/hdvipson.def [new file with mode: 0644]
styles/hdviwind.def [new file with mode: 0644]
styles/hpdftex.def [new file with mode: 0644]
styles/htex4ht.cfg [new file with mode: 0644]
styles/htex4ht.def [new file with mode: 0644]
styles/htexture.def [new file with mode: 0644]
styles/hvtex.def [new file with mode: 0644]
styles/hvtexhtm.def [new file with mode: 0644]
styles/hvtexmrk.def [new file with mode: 0644]
styles/hyperref.sty [new file with mode: 0644]
styles/hypertex.def [new file with mode: 0644]
styles/minitoc-hyper.sty [new file with mode: 0644]
styles/nameref.sty [new file with mode: 0644]
styles/nohyperref.sty [new file with mode: 0644]
styles/ntheorem-hyper.sty [new file with mode: 0644]
styles/pd1enc.def [new file with mode: 0644]
styles/pdfmark.def [new file with mode: 0644]
styles/puenc.def [new file with mode: 0644]
styles/url.sty [new file with mode: 0644]
styles/xr-hyper.sty [new file with mode: 0644]
utils/dev_filter.rb [new file with mode: 0755]
utils/ja_filter.rb [new file with mode: 0755]
utils/mokuji.el [new file with mode: 0644]
utils/refman-filter.awk [new file with mode: 0644]
utils/run-latex.sh [new file with mode: 0755]
utils/usr_filter.rb [new file with mode: 0755]

diff --git a/AUTHORS b/AUTHORS
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/ChangeLog b/ChangeLog
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..375d0f1
--- /dev/null
@@ -0,0 +1,148 @@
+#      -*- coding: euc-jp; -*-
+
+EXTRA_DIST = dev usr ja smallmule.gif
+
+# The followings are for maintainers only.
+
+if MAINTAINER_MODE
+
+SRCFILES = $(shell echo @M17NLIB@/src/*.[ch])
+
+STYLEPATH = @srcdir@/styles
+UTILPATH = @srcdir@/utils
+
+LATEX_JA = ${STYLEPATH}/doxygen-m17n.sty \
+       @srcdir@/data-ja/header.tex \
+       @srcdir@/data-ja/introduction.tex \
+       @srcdir@/data-ja/m17n-basicC.tex \
+       @srcdir@/data-ja/m17n-X.tex \
+       @srcdir@/data-ja/m17n-database.tex \
+       @srcdir@/data-ja/conclusion.tex
+
+LATEX_USR = ${STYLEPATH}/doxygen-m17n.sty \
+       @srcdir@/data-usr/header.tex
+
+LATEX_DEV = ${STYLEPATH}/doxygen-m17n.sty \
+       @srcdir@/data-dev/header.tex
+
+DOXYGEN = doxygen
+
+PROJECT_NAME_EN = "Multilingual Library for Unix/Linux"
+PROJECT_NAME_JA = "Unix/Linux ÍÑ¿¸À¸ì¥é¥¤¥Ö¥é¥ê"
+
+PROJECT_NUMBER = 1.0
+
+LATEX_HEADER_JA = header.tex
+LATEX_HEADER_EN =
+
+notarget:
+       @echo "Please specify one of the following targets:"
+       @echo "  usr-latex ja-latex dev-latex"
+       @echo "  usr-html ja-html dev-html"
+       @echo "  usr ja dev"
+       @echo "  all"
+
+all: usr ja dev
+
+usr-html html-usr: usr/html/index.html
+ja-html html-ja: ja/html/index.html
+dev-html html-dev: dev/html/index.html
+
+usr-latex latex-usr: usr/latex/refman.ps
+ja-latex latex-ja: ja/latex/refman.ps
+dev-latex latex-dev: dev/latex/refman.ps
+
+usr: html-usr latex-usr
+ja: html-ja latex-ja
+dev: html-dev latex-dev
+
+doxyfile-html.usr: @srcdir@/doxyfile ${SRCFILES}
+       umask 002; \
+       sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+           -e 's/%PROJECT_NUMBER%/${PROJECT_NUMBER}/' \
+           -e 's/%DEV_OR_USR_OR_JA%/usr/' \
+           -e 's/%OUTPUT_LANGUAGE%/English/' \
+           -e 's|%GENERATE_HTML%|YES|' \
+           -e 's|%GENERATE_LATEX%|NO|' \
+         < $< >$@
+
+doxyfile-html.dev: @srcdir@/doxyfile ${SRCFILES}
+       umask 002; \
+       sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+           -e 's/%PROJECT_NUMBER%/${PROJECT_NUMBER}/' \
+           -e 's/%DEV_OR_USR_OR_JA%/dev/' \
+           -e 's/%OUTPUT_LANGUAGE%/English/' \
+           -e 's|%GENERATE_HTML%|YES|' \
+           -e 's|%GENERATE_LATEX%|NO|' \
+         < $< >$@
+
+doxyfile-html.ja: @srcdir@/doxyfile ${SRCFILES}
+       umask 002; \
+       sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
+           -e 's/%PROJECT_NUMBER%/${PROJECT_NUMBER}/' \
+           -e 's/%DEV_OR_USR_OR_JA%/ja/' \
+           -e 's/%OUTPUT_LANGUAGE%/Japanese/' \
+           -e 's|%GENERATE_HTML%|YES|' \
+           -e 's|%GENERATE_LATEX%|NO|' \
+         < $< >$@
+
+doxyfile-latex.usr: @srcdir@/doxyfile ${SRCFILES}
+       umask 002; \
+       sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+           -e 's/%PROJECT_NUMBER%/${PROJECT_NUMBER}/' \
+           -e 's/%DEV_OR_USR_OR_JA%/usr/' \
+           -e 's/%OUTPUT_LANGUAGE%/English/' \
+           -e 's|%GENERATE_HTML%|YES|' \
+           -e 's|%GENERATE_LATEX%|YES|' \
+         < $< >$@
+
+doxyfile-latex.dev: @srcdir@/doxyfile ${SRCFILES}
+       umask 002; \
+       sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_EN}|' \
+           -e 's/%PROJECT_NUMBER%/${PROJECT_NUMBER}/' \
+           -e 's/%DEV_OR_USR_OR_JA%/dev/' \
+           -e 's/%OUTPUT_LANGUAGE%/English/' \
+           -e 's|%GENERATE_HTML%|YES|' \
+           -e 's|%GENERATE_LATEX%|YES|' \
+         < $< >$@
+
+doxyfile-latex.ja: @srcdir@/doxyfile ${SRCFILES}
+       umask 002; \
+       sed -e 's|%PROJECT_NAME%|${PROJECT_NAME_JA}|' \
+           -e 's/%PROJECT_NUMBER%/${PROJECT_NUMBER}/' \
+           -e 's/%DEV_OR_USR_OR_JA%/ja/' \
+           -e 's/%OUTPUT_LANGUAGE%/Japanese/' \
+           -e 's|%GENERATE_HTML%|YES|' \
+           -e 's|%GENERATE_LATEX%|YES|' \
+         < $< >$@
+
+%/html/index.html: doxyfile-html.%
+       umask 002; \
+       ${DOXYGEN} $<
+
+%/latex/refman.tex: doxyfile-latex.% ${UTILPATH}/refman-filter.awk
+       umask 002; \
+       ${DOXYGEN} $<; \
+       awk -f ${UTILPATH}/refman-filter.awk < $@ > temp; \
+       mv temp $@
+
+ja/latex/refman.ps: ja/latex/refman.tex ${UTILPATH}/run-latex.sh ${LATEX_JA}
+       ${UTILPATH}/run-latex.sh @srcdir@ ja
+       emacs21 -batch -q -l ${UTILPATH}/mokuji.el -f write-mokuji ja
+
+usr/latex/refman.ps: usr/latex/refman.tex ${UTILPATH}/run-latex.sh ${LATEX_USR}
+       ${UTILPATH}/run-latex.sh @srcdir@ usr
+       emacs21 -batch -q -l ${UTILPATH}/mokuji.el -f write-mokuji usr
+
+dev/latex/refman.ps: dev/latex/refman.tex ${UTILPATH}/run-latex.sh ${LATEX_DEV}
+       ${UTILPATH}/run-latex.sh @srcdir@ dev
+       emacs21 -batch -q -l ${UTILPATH}/mokuji.el -f write-mokuji dev
+
+.PRECIOUS: %/latex/refman.tex
+
+CLEANFILES = doxyfile doxyfile-latex.* doxyfile-html.* m17n.tag warning \
+       */html/index.html */latex/refman.*
+
+DISTCLEANFILES = doxyfile *~
+
+endif
diff --git a/NEWS b/NEWS
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/README b/README
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/bootstrap.sh b/bootstrap.sh
new file mode 100755 (executable)
index 0000000..bd62260
--- /dev/null
@@ -0,0 +1,11 @@
+#!/bin/sh
+echo "Running aclocal..."
+aclocal
+echo "Running automake..."
+automake -a
+echo "Running autoconf..."
+autoconf
+echo "The remaining steps to install this packge are:"
+echo "  % ./configure --enable-maintainer-mode"
+echo "  % make"
+echo "  % make install"
diff --git a/configure.ac b/configure.ac
new file mode 100644 (file)
index 0000000..88e5a85
--- /dev/null
@@ -0,0 +1,52 @@
+# Process this file with autoconf to produce a configure script.
+AC_INIT(m17n-docs, 0.9, bugs-m17n-lib@m17n.org)
+AM_INIT_AUTOMAKE(m17n-docs, 0.9)
+
+AM_MAINTAINER_MODE
+
+# Checks for programs.
+AC_PROG_INSTALL
+
+# Checks for source program files.
+AC_ARG_WITH(m17nlib,
+  [  --with-m17n-lib=DIR     directory of m17n-lib source files],
+  M17NLIB="$withval")
+
+if test "x$M17NLIB" = "x"; then
+  if test -d ../m17n-lib; then
+    M17NLIB=../m17n-lib
+  elif test -d /usr/local/src/m17n-lib; then
+    CHARMAPS=/usr/local/src/m17n-lib
+  else
+    CHARMAPS=
+  fi
+else :
+fi
+
+AC_SUBST(M17NLIB)
+
+AC_CHECK_PROG(DOXYGEN, doxygen, yes, no)
+AC_CHECK_PROG(RUBY, ruby, yes, no)
+AC_CHECK_PROG(PLATEX, platex, yes, no)
+
+AC_CONFIG_FILES([Makefile doxyfile])
+AC_OUTPUT
+
+# Print configuration message.
+if test "$DOXYGEN" = "no"; then
+  echo "Can't find a program \"doxygen\"!"
+  exit 1
+fi
+if test "$RUBY" = "no"; then
+  echo "Can't find a program \"ruby\"!"
+  exit 1
+fi
+if test "$PLATEX" = "no"; then
+  echo "Can't find a program \"platex\"!"
+  exit 1
+fi
+
+echo "-------------------------------------------------------------"
+echo "Configure to make documentations from the source files under:"
+echo "  $M17NLIB/src/"
+echo "-------------------------------------------------------------"
diff --git a/data-dev/header.tex b/data-dev/header.tex
new file mode 100644 (file)
index 0000000..a83371a
--- /dev/null
@@ -0,0 +1,41 @@
+\documentclass[a4paper,12pt,twoside]{article}  % -*- coding: euc-jp; -*-
+\setlength\headheight{14.5pt}
+\usepackage{makeidx}
+\usepackage{fancyhdr}
+\usepackage{graphicx}
+\usepackage{float}
+\usepackage{alltt}
+\usepackage[english]{babel}
+\usepackage{times}
+%%%\usepackage[dvips, a4paper, bookmarks, bookmarksnumbered, pdftitle={Unix/LinuxÈÆÍÑ¡£¡£¡£}]{hyperref} 
+\usepackage{doxygen}
+\usepackage{doxygen-m17n}
+\makeindex
+\setcounter{tocdepth}{2}
+\setlength{\footrulewidth}{0pt}
+\begin{document}
+\begin{titlepage}
+\begin{flushright}
+{\Large 13¾ð·ÐÂè1127¹æ}
+\end{flushright}
+\vspace*{2cm}
+\begin{center}
+{\Huge IPA¾ðÊ󵻽ѳ«È¯»Ù±ç»ö¶È}\\
+\vspace*{2cm}
+{\Huge Unix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½\\¥é¥¤¥Ö¥é¥ê¤Î³«È¯}\\
+\vspace*{2cm}
+{\Huge ³«È¯À®²ÌÊó¹ð½ñ}\\
+\vspace*{7cm}
+{\Huge Ê¿À®14ǯ2·î}\\
+\vspace*{1.5cm}
+{\Huge ÆÈΩ¹ÔÀ¯Ë¡¿Í »º¶Èµ»½ÑÁí¹ç¸¦µæ½ê}
+\end{center}
+\end{titlepage}
+\cleardoublepage
+\pagenumbering{roman}
+\tableofcontents
+\newpage
+\pagenumbering{arabic}
+\input{introduction.tex}
+\newpage
+\sectionOnNewpage
diff --git a/data-ja/conclusion.tex b/data-ja/conclusion.tex
new file mode 100644 (file)
index 0000000..f9959dd
--- /dev/null
@@ -0,0 +1,603 @@
+%% -*- coding: euc-jp; -*-
+
+\section{ɾ²Á´ð½à¡¢É¾²ÁÊýË¡¡¢É¾²ÁÆâÍÆ}
+
+Ëܳ«È¯¤Ç¼Â¸½¤¹¤ëUnix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤Ï¡¢ Linux/Unix 
+¤Î¾å¤Ç¤Î¿¸À¸ìÂбþ¥½¥Õ¥È¥¦¥§¥¢¤Î³«È¯¤òÍưפˤ¹¤ë¤³¤È¤òÌÜɸ¤È¤·¤Æ¤¤¤ë¡£
+¤Ä¤Þ¤ê¡¢¤³¤Î¥é¥¤¥Ö¥é¥ê¤¬¥¿¡¼¥²¥Ã¥È¤È¤¹¤ëÍøÍѼԤϠLinux/Unix ¾å¤Î¥½¥Õ¥È
+¥¦¥§¥¢³«È¯¼Ô¤Ç¤¢¤ë¡£¤½¤³¤Ç³°Éô¤Î¿¸À¸ìʸ½ñ¾ðÊó½èÍý´ØÏ¢¥½¥Õ¥È¥¦¥§¥¢Åù¤Î
+³«È¯¼Ô¤Ë¤è¤ë¥ì¥Ó¥å¡¼¤ò¼õ¤±¤ë¤³¤È¤È¤·¤¿¡£
+
+¤Þ¤¿¡¢ËÜǯÅ٤γ«È¯ÆâÍƤϠAPI ¤ÎÀ߷פǤ¢¤ë¤¿¤á¡¢¼ÂºÝ¤Î¥é¥¤¥Ö¥é¥ê¤ò»îÍÑ
+¤·¤Æ¥ì¥Ó¥å¡¼¤·¤Æ¤â¤é¤¦¤³¤È¤Ï¤Ç¤­¤Ê¤¤¡£¤½¤³¤ÇAPI¤Î»ÅÍͤ˴ؤ¹¤ë¥É¥­¥å¥á
+¥ó¥È¡ÊËܳ«È¯Êó¹ð½ñ¤Î£±¾Ï¤«¤é£¶¾ÏÁêÅöÉôʬ¤Î£²£°£°£²Ç¯£±·îËö»þÅÀ¤Ç¤ÎÈÇ¡Ë
+¤òÁ÷ÉÕ¤·¡¢¤½¤ì¤Ë¤Ä¤¤¤Æɾ²Á¤ò°ÍÍꤷ¤¿¡£
+
+\subsection{ɾ²Á´ð½à¤Ê¤é¤Ó¤ËÊýË¡}
+
+ɾ²Á¼Ô¤Ï°Ê²¼¤Î£´Ì¾¤Ç¤¢¤ë¡£
+\begin{itemize}
+\item Èõ±º ½¨¼ù (Chair, Li18nux/Linux Internationalization Initiative, Free Standards Group
+                Architect/Sr. Staff Engineer, Sun Microsystems, Inc, USA)
+\item Ëö×¢ ÍÛ°ì (li18nux system architecture subgroup leader, Li18nux//Linux
+Internationalization Initiative, ¥³¥ó¥Ñ¥Ã¥¯¥³¥ó¥Ô¥å¡¼¥¿³ô¼°²ñ¼Ò/¥½¥Õ¥È¥¦¥§¥¢À½Éʳ«È¯Éô)
+\item ¾ÂÅÄ Íøŵ  (li18nux2000 Specification Editor, Li18nux/Linux
+Internationalization Initiative, ÉÙ»ÎÄÌ(³ô) ¥½¥Õ¥È¥¦¥§¥¢»ö¶ÈËÜÉô ¥×¥í¥¸¥§¥¯¥ÈA-XML XML ±þÍѵ»½ÑÉô)
+\item ¼é²¬ ÃÎɧ (CHISE (Character Information Service Environment) ¥×
+¥í¥¸¥§¥¯¥È¥ê¡¼¥À, µþÅÔÂç³Ø¿Íʸ²Ê³Ø¸¦µæ½êÉí°´Á»ú¾ðÊ󸦵楻¥ó¥¿¡¼)
+\end{itemize}
+
+ɾ²Á¤ËÅö¤¿¤Ã¤Æ¤Ï¡¢°Ê²¼¤Î¹àÌܤˤĤ¤¤Æ£±¡Á£µ¤Î£µÃʳ¬É¾²Á ¡Ê1: °­¤¤ 2: ¤ä
+¤ä°­¤¤ 3: ÉáÄÌ 4: ¤ä¤äÎɤ¤ 5: Îɤ¤¡Ë¤ª¤è¤Ó¥³¥á¥ó¥È¤ò°ÍÍꤷ¤¿¡£
+
+\begin{description}
+
+\item[¿·µ¬À­] \
+
+   Â¾¤Î¿¸À¸ì½èÍýµ»½Ñ¤ÈÈæ¤Ù¤Æ¤É¤ÎÄøÅ٤Υì¥Ù¥ë¤Ë¤¢¤ë¤«?
+
+\item[Í­ÍÑÀ­] \
+
+  ¤³¤Î¥é¥¤¥Ö¥é¥ê¤¬Â¿¸À¸ì½èÍý¤ò¹Ô¤¦¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤È¤Ã¤ÆÌò¤ËΩ¤Ä¤«¡©
+
+\item[ɸ½à²½¤Î²ÄǽÀ­] \
+
+  ¾­Íè¤Ë¤ª¤¤¤Æ¹ñºÝɸ½à¤Ë¤Ê¤ì¤ë²ÄǽÀ­¤Ï¡©
+
+\item[ÂÅÅöÀ­] \
+
+  Â¿¸À¸ì½èÍý¤ò¼Â¸½¤¹¤ë¤È¤¤¤¦ÌÜŪ¤ËÂФ·¤Æ¡¢Ëܥ饤¥Ö¥é¥ê¤Î¼êË¡¤ÏÂÅÅö¤Ç¤¢¤ë¤«¡©
+
+\item[¥É¥­¥å¥á¥ó¥È¤Î¼Á] \
+
+\item[·Ñ³¤ÎɬÍ×À­] \
+
+  ¡Ê·Ñ³¤¬·è¤Þ¤ì¤Ð¡¢ÍèǯÅٰʹߡ¢GNOME (GNU Network Object Model
+    Environment) ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¿¸À¸ì²½¤Î¤¿¤á¤Ë GTK ¤ËËܥ饤¥Ö¥é¥ê
+    ¤òÅý¹ç¤¹¤ë¤¿¤á¤Î¸¦µæ¤ò¼Â»Ü¤¹¤ëͽÄê¤Ç¤¹¡£¡Ë
+\end{description}
+
+
+\subsection{ɾ²Á¤ÎÆâÍÆ}
+
+\begin{tabular}{|l|c|c|c|c|c|c|}
+\hline
+ɾ²Á¼Ô&  ¿·µ¬À­ & Í­ÍÑÀ­ & É¸½à²½¤Î²ÄǽÀ­ & ÂÅÅöÀ­ & ¥É¥­¥å¥á¥ó¥È¤Î¼Á & ·Ñ³¤ÎɬÍ×À­ \\
+\hline
+Ëö×¢ ÍÛ°ì &  5 & 4 & 2 & 3 & 3 & 5 \\
+\hline
+¼é²¬ ÃÎɧ & 3 & 3 & 1 & 3 & 2 & 4 \\
+\hline
+Èõ±º ½¨¼ù & 3 & 5(2/3) & 1(4) & 4 & 3 & (5)\footnotemark\\
+\hline
+¾ÂÅÄ Íøŵ & 3 & 5 & 2 & 4 & 2 & 5\\
+\hline
+\end{tabular}
+
+\footnotetext{ɾ²Á·ë²Ì¤ËÅÀ¿ô¤¬Æþ¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢¥³¥á¥ó¥È¤Î
+¡Ö¤¼¤Ò·Ñ³¤·¤Æ¤¯¤À¤µ¤¤¡×¤ò 5 ¤ò°ÕÌ£¤¹¤ë¤â¤Î¤È¼õ¤±¼è¤Ã¤¿¡£}
+
+\subsubsection{ɾ²Á¼Ô¡§Ëö×¢ ÍÛ°ì}
+
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+¿·µ¬À­ & Í­ÍÑÀ­ & É¸½à²½¤Î²ÄǽÀ­ & ÂÅÅöÀ­ & ¥É¥­¥å¥á¥ó¥È¤Î¼Á & ·Ñ³¤ÎɬÍ×À­ \\
+\hline
+5 & 4 & 2 & 3 & 3 & 5 \\
+\hline
+\end{tabular}
+
+\ \\
+
+³Æ´ÑÅÀ¤Ë´Ø¤¹¤ë¥³¥á¥ó¥È
+\begin{description}
+\item[¿·µ¬À­]~\
+       Ê¸»ú¥³¡¼¥É¤òÃæ¿´¤È¤·¤¿Â¿¸À¸ì½èÍýµ»½Ñ¤ÎµÄÏÀ¤¬Â¿¤¤Ãæ¤Ç¡¤
+       ¿·¤¿¤ÊÂηϤòÃÛ¤³¤¦¤È¤¤¤¦¥¢¥×¥í¡¼¥Á¤Î¿·µ¬À­¤Ïɾ²Á¤Ç¤­¤ë¡£
+       ¤¿¤À¤·¡¤¤½¤ÎÍ¥°ÌÀ­¤¬½½Ê¬¤ËÀâÌÀ¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ï»ÄÇ°¤Ç¤¢¤ë¡£
+
+\item[Í­ÍÑÀ­]~\
+       ¹âÅ٤ʿ¸À¸ì½èÍý¤òÌܻؤ¹¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¤È¤Ã¤Æ¤Ï¡¤¼«Á°¤Ç
+       ÍÑ°Õ¤¹¤ëɬÍפ¬¤Ê¤¯¡¤Ìò¤ËΩ¤Ä¤È»×¤ï¤ì¤ë¡£³ÈÄ¥À­¤â¤¢¤ê¡¤
+       ±þÍÑÈϰϤϹ­¤¤¤È»×¤ï¤ì¤ë¡£
+
+\item[ɸ½à²½¤Î²ÄǽÀ­]~\
+       ¹ñºÝɸ½à¤Ë¤Ê¤ë¤¿¤á¤Ë¤Ï¡¤¤³¤Îµ»½Ñ¤¬°ìÉô¤ÎÆÃÄê¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç
+       ¤Î¤ß»È¤ï¤ì¤ëµ»½Ñ¤Ç¤Ï¤Ê¤¯¡¤¹­¤¯ÉáµÚ¤¹¤ëɬÍפ¬¤¢¤ëµ»½Ñ¤«¤É¤¦¤«¤¬
+       Ìä¤ï¤ì¤ë¤È»×¤ï¤ì¤ë¤¬¡¤¤½¤ÎÅÀ¤ÎÀâÆÀÎϤˤ«¤±¤ë¡£
+       ¤É¤Î¤è¤¦¤Ê»×ÁۤΤâ¤È¤ËÀ߷פµ¤ì¤Æ¤¤¤ë¤«¡¤¤½¤ì¤Ë¤è¤Ã¤Æ´û¸¤Î¤â¤Î¤Ç¤Ï
+       ¼Â¸½¤Ç¤­¤Ê¤¤¤É¤Î¤è¤¦¤Ê¤³¤È¤¬¤Ç¤­¤ë¤Î¤«¡¤¤½¤ì¤¬À¤¤ÎÃæ¤Ë
+       É¬Íפʤâ¤Î¤Ê¤Î¤«¡¤¤Ê¤É¤Î¹Í»¡¤¬½½Ê¬¤Ç¤Ê¤¤¤è¤¦¤Ë»×¤ï¤ì¤ë¡£
+
+\item[ÂÅÅöÀ­]~\
+       Â¿¸À¸ì½èÍý¤ò¼Â¸½¤¹¤ë¤È¤¤¤¦¡¤¤¿¤À¤½¤ì¤À¤±¤ÎÌÜŪ¤È¤·¤Æ¤Ï¤ª¤ª¤à¤Í
+       ÂÅÅö¤À¤È»×¤ï¤ì¤ë¡£¤¿¤À¡¤´û¸¤Î C ¸À¸ì API ¤ò¥Ù¡¼¥¹¤Ë¹Í¤¨¤é¤ì¤Æ¤¤¤ë
+       Éôʬ¤¬¤¢¤ë¤¬¡¤¥í¥±¡¼¥ë¤Î°·¤¤¤ä´Ø¿ô¤ÎÆ°ºî¤Ø¤Î±Æ¶Á¡¤¥Õ¥¡¥¤¥ëÆþ½ÐÎϤä
+       ¥Õ¥¡¥¤¥ëÆâ¤Ç¤Îʸ»ú¤Îɽ¸½¤¬¤É¤¦¤Ê¤Ã¤Æ¤¤¤ë¤Î¤«¤Ê¤É¤ÎÀâÌÀ¤¬ÉÔ½½Ê¬¡¤
+       °ìÈÌ¤Î¥×¥í¥°¥é¥Þ¸þ¤±¤Î»ÅÍͤȤ·¤Æ¤ÏÆñ¤·¤¹¤®¤Ê¤¤¤«¤Ê¤É¡¤
+       ¤¤¤¯¤Ä¤«µ¤¤Ë¤Ê¤ëÅÀ¤¬¤¢¤ë¡£
+
+\item[¥É¥­¥å¥á¥ó¥È¤Î¼Á]~\
+       API ¤Î»ÅÍͽñ¤È¤·¤Æ¤Ï¡¤¤è¤¤¤È»×¤¦¡£¤·¤«¤·¤Ê¤¬¤é¡¤
+       ¡Ö¿¸À¸ì¥¢¡¼¥­¥Æ¥¯¥Á¥ã¡×¤È¤Ï²¿¤Ê¤Î¤«¡¤¡Ö¿¸À¸ì½èÍý¡×¤È¤Ï²¿¤Ê¤Î¤«¡¤
+       ¡Öʸ»ú¡×¤ò¤É¤Î¤è¤¦¤Ë¤È¤é¤¨¤Æ¤¤¤ë¤Î¤«¡¤¤Ê¤É¤Ê¤É¡¤
+       ¤ª¤½¤é¤¯À߷׼Ԥδ֤ǤÏƱ¤¸³µÇ°¤ò¶¦Í­¤Ç¤­¤Æ¤¤¤ë¤Î¤À¤í¤¦¤¬¡¤
+       Êó¹ð½ñ¤Î¥É¥­¥å¥á¥ó¥È¤À¤±¤«¤é¤Ï¡¤¤½¤ÎÌܻؤ·¤Æ¤¤¤ëÀ¤³¦¤¬
+       ¤è¤¯Íý²ò¤Ç¤­¤Ê¤«¤Ã¤¿¡£¤½¤Î¤¢¤¿¤ê¤Î³µÇ°¤ä¥×¥í¥°¥é¥ß¥ó¥°¥â¥Ç¥ë¤Ê¤É¤ò
+       À°Íý¤·¤Æ¤Þ¤È¤á¤¿¤â¤Î¤¬¤¢¤ë¤È¤è¤¤¤È»×¤¦¡£
+
+\item[·Ñ³¤ÎɬÍ×À­]~\ 
+       Â¿¸À¸ì²½¤Ï¡¤º£¸åɬÍפʵ»½Ñ¤Ê¤Î¤Ç¡¤À§Èó¤È¤â¸¦µæ¤ò
+        ·Ñ³¤·¤Æ¤¤¤¿¤À¤­¤¿¤¤¡£º£¸å¿Ê¤á¤Æ¤¤¤¯¾å¤Ç¡¤´û¸µ»½Ñ¤Î±äŤǠ
+        Unicode ½èÍý¤Î API ¤òÈ÷¤¨¤¿ICU ¤È¤ÎÌÀ³Î¤Êº¹Ê̲½¤¬É¬ÍפÀ¤È¹Í¤¨
+        ¤ë¡£Ìܻؤ¹¤â¤Î¤¬°ã¤¦¤È¤¤¤¦¤³¤È¤Ç¤¢¤ì¤Ð¡¤¤½¤Î¶èÊ̤¬¤ï¤«¤ë¤è¤¦¤Ê
+        ÀâÌÀ¤¬É¬ÍפÀ¤È»×¤¦¡£
+
+\end{description}
+
+\subsubsection{ɾ²Á¼Ô¡§¼é²¬ ÃÎɧ}
+
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+ ¿·µ¬À­ & Í­ÍÑÀ­ & É¸½à²½¤Î²ÄǽÀ­ & ÂÅÅöÀ­ & ¥É¥­¥å¥á¥ó¥È¤Î¼Á & ·Ñ³¤ÎɬÍ×À­ \\
+\hline
+ 3 & 3 & 1 & 3 & 2 & 4 \\
+\hline
+\end{tabular}
+
+\begin{description}
+\item[¿·µ¬À­]
+
+¿·µ¬¤ËÀ߷פ·¤¿³ä¤Ë¤ÏµìÍè¤Î¤â¤Î (Mule) ¤Ë°ø¤ï¤ì²á¤®¤Æ¤¤¤ë¤è¤¦¤Ë»×¤ï¤ì
+¡Ê¤Û¤È¤ó¤É Mule ¤½¤Î¤Þ¤Þ¤Ç¤¢¤ê¡¢Mule ¤Ç·Ð¸³¤·¤¿ÍøÊØÀ­¡¦ÌäÂêÅÀ¤ÎʬÀϤ¬
+½½Ê¬¤Ë¤Ê¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë»×¤ï¤ì¤Ê¤¤¡Ë¡¢API ¤ä¿¸À¸ì½èÍýµ»½Ñ¤È¤·¤Æ¤Î¿·µ¬
+À­¤ÎÅÀ¤Ç¤Ï¤¢¤Þ¤êɾ²Á¤Ç¤­¤Ê¤¤¡£
+
+\item[Í­ÍÑÀ­]
+
+¥·¥¹¥Æ¥à¤ÎŬ±þÈÏ°Ï¡¢¤ª¤è¤Ó¡¢Ê»ÍѤµ¤ì¤ë¤Ù¤­Â¾¤Î¥·¥¹¥Æ¥à¤È¤Îµ¡Ç½Ê¬Ã´¤¬ÉÔ
+ÌÀ³Î¤Ç¤¢¤ê¡¢°ì³µ¤Ë¤Ï¤¤¤¨¤Ê¤¤¡£Ãê¾Ý²½¤¬ÉÔ½½Ê¬¤Ê¤¤¤·¤ÏÃê¾Ý²½¤ÈÍøÊØÀ­¤¬¥¢
+¥ó¥Ð¥é¥ó¥¹¤ÊÅÀ¤¬¤¢¤ê¡¢Ê£»¨¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òµ­½Ò¤¹¤ë¾å¤Ç¤Ï¤ä¤äÌäÂ꤬
+¤¢¤ë¤«¤â¤·¤ì¤Ê¤¤¡£¤Þ¤¿¡¢plain text ¤Ç½½Ê¬¤ÊÂоݤËÂФ·¤Æ¤Ï¥ª¡¼¥Ð¡¼¥¹¥Ú¥Ã
+¥¯¤Ç¤¢¤ë¤È»×¤ï¤ì¤ë¡£¥â¥¸¥å¡¼¥ë²½¡¦¥¹¥±¡¼¥é¥Ó¥ê¥Æ¥£¡¼¤ËÂФ¹¤ëÇÛθ¤â½½Ê¬
+¤Ç¤Ê¤¤¤è¤¦¤Ë»×¤ï¤ì¤ë¡£¤·¤«¤·¤Ê¤¬¤é¡¢XML parser ¤Ê¤É¤ÈÊ»ÍѤ·¤Æ¹½Â¤²½¥Æ
+¥­¥¹¥È¤ò½èÍý¤·¤¿¤ê¡¢Â¿¸À¸ìʸ»úÎó¤òÊÔ½¸²Äǽ¤Ê¤Þ¤Þɽ¼¨¤¹¤ë¤è¤¦¤Ê¥¢¥×¥ê¥±¡¼
+¥·¥ç¥ó¤ò¼Â¸½¤¹¤ë¾å¤Ç¤Ï°ìÄê¤ÎÍ­ÍÑÀ­¤¬Ç§¤á¤é¤ì¤ë¡£
+
+\item[ɸ½à²½¤Î²ÄǽÀ­]
+
+¥â¥Ç¥ë¡¦ÍѸìÅù¤¬·ë²ÌŪ¤ËÆȼ«¤Î¤â¤Î¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¹ñºÝɸ½à¤ä¥Ç¥Õ¥¡¥¯¥È¥¹
+¥¿¥ó¥À¡¼¥É¤È¤¢¤Þ¤êĴϤ·¤Æ¤¤¤Ê¤¤¤è¤¦¤Ë»×¤ï¤ì¤ë¡£¤½¤Î¤¿¤á¡¢¡ÊMule ¤ä
+Emacs ¤òÃΤé¤Ê¤¤¤â¤Î¤Ë¤È¤Ã¤Æ¤Ï¡Ë¤³¤Î¤Þ¤Þ¤Ç¤Ï¤ä¤äÍý²ò¤·¤Ë¤¯¤¤¤â¤Î¤Ë¤Ê¤Ã
+¤Æ¤¤¤ë¤È»×¤ï¤ì¤ë¡£¤³¤Îµ»½Ñ¤ÎŬ±þÈϰϤä¼çÍפÊÂоݡ¢¤ª¤è¤Ó¡¢¸½ºß¤Î¼ûÍפÈ
+¤Î´Ø·¸¤âÉÔÌÀ³Î¤Ç¤¢¤ë¡£
+
+\item[ÂÅÅöÀ­]
+
+¿¸À¸ì½èÍý¤ÎÆâ¡¢³Æ¼ïÉä¹æ²½¤Ë´Ø¤ï¤ëÉôʬ¤ä¥ì¥ó¥À¥ê¥ó¥°¤Ë´Ø¤¹¤ëÄã¥ì¥Ù¥ë¤Î
+½èÍý¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤è¤ë¾ðÊó¤Î´ÉÍý¤Ë´Ø¤·¤Æ¤ÏÂÅÅöÀ­¤¬¤¢¤ë¡£¤·¤«¤·¤Ê¤¬¤é¡¢
+¤³¤Î¤¢¤¿¤ê¤ÏºÇ¶áÃÊ¡¹¤ÈÀ°È÷¤µ¤ì¤Ä¤Ä¤¢¤ëʬÌî¤Ç¤¢¤ê¡¢Â¿¸À¸ì½èÍý¤Ë¤È¤Ã¤Æ·ç
+¤¯¤Ù¤«¤é¤¶¤ëÉôʬ¤Ç¤Ï¤¢¤ë¤â¤Î¤Î¤½¤Î°ìÉô¤Ë²á¤®¤Ê¤¤¡£¸½ºß¿¤¯»È¤ï¤ì¤ë¤è¤¦
+¤Ë¤Ê¤Ã¤¿ XML ¤Ê¤É¤Î¹½Â¤²½¥Æ¥­¥¹¥È¤ò°·¤¦¤¿¤á¤Î³¦Ì̤䡢¤³¤¦¤·¤¿¹½Â¤²½Ê¸
+½ñ¤ò²òÀÏ¡¦²Ã¹©¤¹¤ë¤¿¤á¤Î»Ù±ç¡Ê¤Ê¤¤¤·¤Ï¤½¤¦¤·¤¿¤³¤È¤òÌÜŪ¤È¤·¤¿¥â¥¸¥å¡¼
+¥ë¤È¤Î³¦ÌÌ¡Ë¡¢¤¢¤ë¤¤¤Ï¡¢¤³¤¦¤·¤¿¹½Â¤²½Ê¸½ñ¤ò¤¢¤ëÄøÅÙ¤ÎÉʼÁ¤Ç¿¸À¸ìÁÈÈÇ
+ɽ¼¨¤¹¤ë¤È¤¤¤Ã¤¿²ÝÂê¤ò²ò·è¤·¤Æ¤¤¤Ê¤¤¡¢¤Ê¤¤¤·¤Ï¡¢¤½¤ÎÊý¸þÀ­¤ò¼¨¤·¤Æ¤¤¤Ê
+¤¤¡£
+
+\item[¥É¥­¥å¥á¥ó¥È¤Î¼Á]
+
+¤³¤Î API ¤ÎÇطʤä¥â¥Ç¥ë¡¢Å¬ÍÑÈÏ°Ï¡¦ÂоÝÅù¤¬½½Ê¬¤Ë½Ò¤Ù¤é¤ì¤Æ¤¤¤Ê¤¤¡£¤³
+¤Î API ¤Î½ÅÍפʥݥ¤¥ó¥È¤Ï M-text ¤È»×¤ï¤ì¤ë¤¬¡¢¤½¤Î¤³¤È¤¬½½Ê¬¤Ë¶¯Ä´¤µ
+¤ì¤Æ¤¤¤Ê¤¤¤·¡¢¹½Â¤²½¥Æ¥­¥¹¥ÈÅù¤ò°·¤¦¾å¤Ç¤ÎÍ­ÍÑÀ­¤â¤¢¤Þ¤ê¥¢¥Ô¡¼¥ë¤µ¤ì¤Æ
+¤¤¤Ê¤¤¡£¤µ¤é¤Ë¤¤¤¨¤Ð¡¢M-text ¤ò¼ç´ã¤Ë¿ø¤¨¤ë¤Ê¤é¤Ð¿¸À¸ì½èÍý¤ò¤¹¤ë¾å¤Ç
+¤Î plain text ¤ÎÌäÂêÅÀ¡¦¸Â³¦¤Ê¤É¤â¼çÄ¥¤·¤Æ¤Ï¤É¤¦¤«¡©
+
+\item[·Ñ³¤ÎɬÍ×À­]
+
+¿·µ¬À­¤ä»ÅÍͤÎÅÀ¤Ç¤Ï´ö¤Ä¤«¤ÎÌäÂêÅÀ¤Ï¤¢¤ë¤â¤Î¤Î¡¢³«È¯¼Ô¤Î¼ÂÁõǽÎϤϹ⤤
+¤Î¤Ç¼ÂÁõ¤Ë¤Ï´üÂÔ¤·¤¿¤¤¡£
+
+\end{description}
+
+\subsubsection{ɾ²Á¼Ô¡§Èõ±º ½¨¼ù}
+
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+¿·µ¬À­ & Í­ÍÑÀ­ & É¸½à²½¤Î²ÄǽÀ­ & ÂÅÅöÀ­ & ¥É¥­¥å¥á¥ó¥È¤Î¼Á & ·Ñ³¤ÎɬÍ×À­ \\
+\hline
+3 & 5(2/3) & 1(4) & 4 & 3 & (5)\\
+\hline
+\end{tabular}
+
+³Æ´ÑÅÀ¤Ë´Ø¤¹¤ë¥³¥á¥ó¥È
+\begin{description}
+\item[¿·µ¬À­]
+
+»ä¤¬¤Þ¤ÀÁ´ËƤòÇÄ°®¤·¤Æ¤¤¤Ê¤¤¤Î¤Ç´ª°ã¤¤¤·¤Æ¤¤¤ë²ÄǽÀ­¤â¤¢¤ê¤Þ¤¹¤¬¡¢
+¤³¤ì¤«¤é API set ¤È¤·¤Æ³§¤¬ adapt ¤·¤Æ¤¤¤¯¿·µ¬À­¤¬¤¢¤ë¤Î¤«¤¬¤Þ¤À
+¤ï¤«¤ê¤Þ¤»¤ó¡£
+
+°ìÊý¡¢M17N ²½¤òÌܻؤ¹¿Í¸þ¤±¤Î¡¢¥Ñ¡¼¥Ä¼ÂÁõ½¸¤È¤·¤Æ¡¢mule ¤ÇÇݤä¿
+¼ÂÁõ¤òºÆÍøÍѤǤ­¤ëÉôÉʤˤ¹¤ë¤³¤È¤Ë¤Ï°ÕµÁ¤ò´¶¤¸¤Æ¤¤¤Þ¤¹¡£
+
+\item[Í­ÍÑÀ­]
+
+¥Ñ¡¼¥Ä¼ÂÁõ½¸¤È¤·¤Æ¡¢mule ¤ÇÇݤ俼ÂÁõ¤ò¡¢ºÆÍøÍѤǤ­¤ëÉôÉʤˤ¹¤ë
+¤³¤È¤ÏÌò¤Ë¤¿¤Ä¤È»×¤¤¤Þ¤¹¡£
+¤¿¤À¡¢application ¤òľÀܤΠconsumer ¤È¤¹¤ë¤Î¤«¡¢¤½¤ì¤È¤â toolkit
+¤Ê¤É¤òľÀܤΠconsumer ¤È¤¹¤ë¤Î¤«¡¢I18N framework ¼ÂÁõ¼Ô¤ò consumer ¤È
+¤¹¤ë¤Î¤«¤ÇÍ­¸úÀ­¤ÏÊѤï¤ë¤È»×¤¤¤Þ¤¹¡£
+
+application ¤òľÀܤΠconsumer ¤È¤¹¤ë¾ì¹ç:     2: ¤ä¤ä°­¤¤\\
+toolkit ¤Ê¤É¤òľÀܤΠconsumer ¤È¤¹¤ë¾ì¹ç:     3: ÉáÄÌ\\
+I18N framework ¼ÂÁõ¼Ô¤ò consumer ¤È¤¹¤ë¾ì¹ç¡§ 5: Îɤ¤\\
+
+
+\item[ɸ½à²½¤Î²ÄǽÀ­]
+
+¤³¤Î¥«¥Æ¥´¥ê¡¼¤Ï¡¢library ¤È¤·¤Æ¤Ç¤­¤è¤ê¤â¡¢À¯¼£Åª¡¦¥Þ¡¼¥±¥Ã¥ÈŪ¤Ê¦ÌÌ
+¤¬Â礭¤¤¤È»×¤¤¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢ API set ¤¬¤È¤·¤Æ¸«¤¿¾ì¹çm17nlib ¤¬¹ñ
+ºÝɸ½à¤Ë¤Ê¤ì¤ë²ÄǽÀ­¤Ï°­¤¤¤È¹Í¤¨¤Þ¤¹¡£Niche ¤Ê market ¤Ç¤ÏÇ®Îõ¤Ë¼õ¤±Æþ
+¤ì¤é¤ì¤ë¤È»×¤¤¤Þ¤¹¤¬¡£
+
+API set ¤È¤·¤Æ¤Ï¡¢Å°ÄìŪ¤Ê Unicode Æò½¤¬¡¢¤ª¤è¤Ó XML ½èÍý·Ï¤Î
+backend ¤È¤·¤Æ¤Î¿ÆÏÂÀ­¤¬¡¢º£¸åÀ¤³¦¤Ç˾¤Þ¤ì¤ëÊý¸þÀ­¤À¤È»×¤¤¤Þ¤¹¡£
+
+¤¿¤È¤¨¤Ð¡¢ICU ¤¬ STSF ¤È IIIMF ¡Ê¤¹¤Ù¤Æ UTF-16 ¥Ù¡¼¥¹¡Ë¤ò¼è¤ê¹þ¤ó¤Ç¡¢
+I/O(2D text)¤ò´Þ¤à¡¢Java I18N framework ¤¹¤Ù¤Æ¤Î C/C++ port ¤Ë¤Ê¤Ã¤¿
+¤È¤­¡¢Â¿¿ô¤òÀê¤á¤ë¤À¤í¤¦ Unicode API set ¤ò˾¤à¦¤Î¿Í¡¹¤¬¡¢m17nlib ¤Î
+Êý¤ò¹ñºÝɸ½à¤È¤·¤ÆÁª¤Ö¶¯¤¤Íýͳ¤¬É¬ÍפÀ¤È»×¤¤¤Þ¤¹¡£ 
+
+Open Source ¤Î¹ñºÝ²½´Ø·¸¤ÎÉôʬ¤Ç³èÆ°¤ò¤·¤Æ¤¤¤ëɸ½à²½ÃÄÂΤȤ¤¤¨¤Ð
+º£¤Ï Free Standards Group/Li18nux ¤Ë¤Ê¤ë¤È»×¤¤¤Þ¤¹¤¬
+¤½¤Î´ÑÅÀ¤«¤é¸«¤Æ¡¢É¸½à²½ track ¤Ë¾è¤»¤ë¤Î¤Ï in general ¤È¤Æ¤â¸±¤·¤¤¤Ç¤¹¡£
+
+UNIX ¤Ç¤Ï TOG, ¤µ¤é¤Ë International Standard ¤È¤Ê¤ë¤È ISO ¤Ë¤Ê¤ê
+¤Þ¤¹¤Þ¤¹¸±¤·¤¤¡£
+
+¡ÖÉáµÚ¤Î²ÄǽÀ­¡×¤Ê¤é   4: ¤ä¤äÎɤ¤
+
+
+\item[ÂÅÅöÀ­]
+
+·«¤êÊÖ¤·¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢API set ¤È¤·¤Æ¼õ¤±Æþ¤ì¤é¤ì¤ë¤³¤È¤Ë½ÅÅÀ¤ò¤ª¤¯¤Î¤Ç
+¤Ï¤Ê¤¯¡¢mule ¤Ç°µÅݤ·¤¿¡Ö¤Ê¤ó¤È¸À¤Ã¤Æ¤â¤â¤¦Æ°¤¯¼ÂÁõ¤¬¤¢¤ë¤â¤ó¤Í¡×Êý¼°
+¤Î¤Û¤¦¤¬¡¢¤³¤ì¤«¤é¥¹¥¿¡¼¥È¤¹¤ë¥×¥í¥¸¥§¥¯¥È¤È¤·¤Æ¤Ï¤è¤êÍ­¸ú¤Ê¤Î¤Ç¤Ï¤Ê¤¤
+¤Ç¤·¤ç¤¦¤«¡©¡ÊÉôÉʲ½¤È¤¤¤¦¤³¤È¤Ç¤¹¡Ë
+
+\item[·Ñ³¤ÎɬÍ×À­]
+
+¤¼¤Ò·Ñ³¤·¤Æ¤¯¤À¤µ¤¤¡£
+
+m17n ¤È¤Ï architecture Åª¤Ë¤É¤¦¤¢¤ë¤Ù¤­¤«¡¢¿Í¡¹¤¬Ë¾¤ó¤Ç¤¤¤ë¤â¤Î¤È¤Î 
+conflict ¤ò¤É¤¦¤ª¤ê¤¢¤ï¤»¤Æ¤¤¤¯¤«¡¢API set ¤È¤·¤Æ¤Ê¤Ë¤ò¤É¤Î¥ì¥Ù¥ë¤Ç¤É
+¤¦Ãê¾Ý²½¤·¤Æ¸«¤»¤ë¤«¡¢Ê£»¨¤Ç°ì´ÓÀ­¤Î¤Ê¤¤²øʪ¤È²½¤·¤Æ¤¤¤¯ Unicode ¤ò¤É
+¤¦¤¢¤Ä¤«¤Ã¤Æ¤¤¤¯¤«¤Ê¤É¡¢ÍýÁۤȸ½¼Â¤Î¥Ð¥é¥ó¥¹¤ò¾¦¶ÈŪÀ®¸ù¤ËÇû¤é¤ì¤ë¿Í¡¹
+¤È¤ÏÆÈΩ¤·¤ÆÄɵᤷ¤Æ¤¤¤Ã¤Æ¤¤¤¿¤À¤±¤¿¤é¤È»×¤¤¤Þ¤¹¡£
+
+\end{description}
+
+\subsubsection{ɾ²Á¼Ô¡§¾ÂÅÄ Íøŵ}
+
+\begin{tabular}{|c|c|c|c|c|c|}
+\hline
+¿·µ¬À­ & Í­ÍÑÀ­ & É¸½à²½¤Î²ÄǽÀ­ & ÂÅÅöÀ­ & ¥É¥­¥å¥á¥ó¥È¤Î¼Á & ·Ñ³¤ÎɬÍ×À­ \\
+\hline
+3 & 5 & 2 & 4 & 2 & 5\\
+\hline
+\end{tabular}
+
+\begin{description}
+
+\item[¿·µ¬À­]
+
+¡¡»ä¼«¿È¡¤ºÇ¶á¤ÎÆ°¸þ¤ò¤½¤ì¤Û¤É¤è¤¯Ê¬¤«¤Ã¤Æ¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¤
+¾¤ÈÈæ¤Ù¤Æ¿·µ¬¤«¤É¤¦¤«È½ÃǤǤ­¤Þ¤»¤ó¡¥
+
+\item[Í­ÍÑÀ­]
+
+¡¡Unicode ¤òÀ¸¤Î¤Þ¤Þ¸«¤»¤Æ¡¤¤½¤ì°Ê¾å¤Î½èÍý¤Ï¥×¥í¥°¥é¥Þ¤ËǤ¤»¤ë¥é¥¤¥Ö¥é
+¥ê¤ä¡¤Unicode ¤ò¼«Ê¬¤Ç¤¹¤Ù¤Æ²ò¼á¤·¤Æ½èÍý¤·¤¿¤ê¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤â¿
+¤¤¤è¤¦¤Ç¤¹¤¬¡¤Unicode ¤âÊ£»¨²½¤¹¤ë°ìÊý¤Ê¤Î¤Ç¡¤¤½¤ÎÊýË¡¤Ç¤ÏÇËþ¤¹¤ë¤³¤È
+¤ÏÌܤ˸«¤¨¤Æ¤¤¤Þ¤¹¡¥¤½¤¦¤¤¤¦°ÕÌ£¤Ç¡¤¤³¤Î¤è¤¦¤Ê¥é¥¤¥Ö¥é¥ê¤Î¸ºß¤ÏÍ­ÍѤÀ
+¤È»×¤¤¤Þ¤¹¡¥¤â¤Á¤í¤ó¡¤Unicode °Ê³°¤ÎÊý¸þÀ­¤òÌܻؤ¹¾ì¹ç¤Ë¤â¡¥
+
+\item[ɸ½à²½¤Î²ÄǽÀ­]
+
+¡¡Â¾¤Î»ÅÍͤˤ¯¤é¤Ù¤Æ¥¢¥Ô¡¼¥ë¤¹¤ëÅÀ¤¬¾¯¤Ê¤¤¤Î¤¬¤Ä¤é¤¤¤È¤³¤í¤Ç¤¹¡¥Æäˠ
+Unicode ¤ËÆò½¤·¤¿¤â¤Î¤ÈÈæ¤Ù¤Æ¡¤Unicode ¤â´Þ¤à¤±¤ì¤É¤â¤½¤ì¤À¤±¤Ç¤Ï¤Ê¤¤¡¤
+¤È¤¤¤¦¤È¤³¤í¤¬¡¤¹ñÆâ¤Ï¤È¤â¤«¤¯¹ñ³°¤Ë¤É¤¦¼õ¤±»ß¤á¤é¤ì¤ë¤«¡¥
+
+\item[ÂÅÅöÀ­]
+
+¡¡¥Æ¥­¥¹¥È¥Ç¡¼¥¿¤ò M-text ¤È¤·¤Æ²¾ÁÛ²½¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¤¹¤¬¡¤¤½¤ì¤Ç¤â 0¡Á
+10FFFFh ¤Ï Unicode ¤ÈƱ¤¸¡¤¤È¤Ê¤Ã¤Æ¤¤¤ë¤È¤³¤í¤¬µ¤¤Ë¤Ê¤ê¤Þ¤·¤¿¡¥¤½¤ì¤À
+¤È¡¤Unicode ¤È¤Î¿ÆÏÂÀ­¤Ï¹â¤¯¤Ê¤ë¤Î¤Ç¤¹¤¬¡¤°ìÊý¤Ç Unicode ¤Îºî¤ê¤Ë°ú¤­
+¤º¤é¤ì¤ë¤¬½Ð¤Æ¤¯¤ë¤Î¤Ç¤Ï¤Ê¤¤¤«¤È»×¤¤¤Þ¤¹¡¥(¡Öʸ»ú¡×¤ÎÄêµÁ¤È¤«¡¥)
+
+\item[¥É¥­¥å¥á¥ó¥È¤Î¼Á]
+
+¡¡Â¾¤Î¥³¥á¥ó¥È¤Ë¤â¤¢¤ë¤è¤¦¤Ë¡¤ÀâÌÀÉÔ­¤Ç¤¹¡¥
+
+¡¦À߷׾塤¤É¤¦¤¤¤¦Êý¿Ë¤ò¤È¤Ã¤¿¤«\\
+¡¦¤É¤Î¥ì¥Ù¥ë¤Î¥×¥í¥°¥é¥à¤«¤é¸Æ¤Ð¤ì¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¤«\\
+¡¦ICU ¤Ê¤É¡¤Â¾¤ÎÎà»÷¥é¥¤¥Ö¥é¥ê¤È¤Î´Ø·¸¤ò¤É¤¦¹Í¤¨¤Æ¤¤¤ë¤«\\
+¡¦´û¸¤Î¥í¥±¡¼¥ëµ¡¹½¤È¤Î´Ø·¸¤¬¤É¤¦¤Ê¤Ã¤Æ¤¤¤ë¤Î¤«\\
+
+¤Ê¤É¡¤¤¢¤È¤Ç¥á¡¼¥ë¤ÇÊä­¤µ¤ì¤¿Éôʬ¤¬½ñ¤«¤ì¤Æ¤¤¤ì¤Ð¤è¤«¤Ã¤¿¤È
+»×¤¤¤Þ¤¹¡¥
+
+\item[·Ñ³¤ÎɬÍ×À­]
+
+¡¡·Ñ³¤¹¤Ù¤­¤È¹Í¤¨¤Þ¤¹¡¥
+\end{description}
+
+
+\subsection{ɾ²Á¼Ô¤«¤é¤Î¥³¥á¥ó¥È¤Ë´Ø¤¹¤ë²óÅú¤Ê¤é¤Ó¤ËÂбþ}
+
+\begin{enumerate}
+\item  ¿·µ¬À­¤Ë¤Ä¤¤¤Æ
+\begin{itemize}
+\item º¹Ê̲½¤Î¥Ý¥¤¥ó¥È
+
+ɾ²Á¼Ô¤«¤é¤Î»ØŦ¤Ï¡¢Â¾¤Î¼êË¡¤ËÂФ¹¤ëÍ¥°ÌÀ­¤¬ÌÀ¤é¤«¤Ç¤Ê¤¤¤È¤¤¤¦ÅÀ¤Ë½¸Ìó
+¤Ç¤­¤ë¡£
+
+ɾ²Á¤ò°ÍÍꤷ¤¿ÈǤΥɥ­¥å¥á¥ó¥È¤¬ API ¤Î»ÅÍͤ˽ª»Ï¤·¡¢¥é¥¤¥Ö¥é¥ê¤È¤·¤Æ
+¤ÎÁ´ÈÌŪ¤ÊÀ­³Ê¡¢ÀïάÅù¤òÀâÌÀ¤·¤Æ¤¤¤Ê¤¤ÉÔ½½Ê¬¤Ê¤â¤Î¤Ç¤¢¤Ã¤¿¤¿¤á¡¢É¾²Á¼Ô
+¤¿¤Á¤ÎÍý²ò¤òÆÀ¤é¤ì¤Ê¤«¤Ã¤¿Éôʬ¤¬¤¢¤ë¡£¤¿¤È¤¨¤Ð¡¢Èõ±º»á¤ª¤è¤Ó¾ÂÅĻᤫ¤é
+ɾ²Á¤Ï¡¢¡ÖȽÃǤǤ­¤Ê¤¤¡×¤È¤¤¤¦Íýͳ¤Ç¡ÖÉáÄ̡פȤʤäƤ¤¤ë¡£
+
+°Ê²¼Ëܥ饤¥Ö¥é¥ê¤Î¥»¡¼¥ë¥¹¥Ý¥¤¥ó¥È¤Ë¤Ä¤¤¤Æ½Ò¤Ù¤ë¡£¡Ê¸½ºß¤ÎÈǤǤϡ¢¤³¤Î
+ÆâÍƤÏÂ裱¾Ï¤Ç¤âÀâÌÀ¤·¤Æ¤¤¤ë¤¬¡¢ºÆ·Ç¤¹¤ë¡£¡Ë
+
+¤³¤Î¥é¥¤¥Ö¥é¥ê¤Îµ»½Ñ¤Î¿·µ¬À­¤Ï¡¢Ê¸»ú¡¿Ê¸»ú¥³¡¼¥É¤ÎÎó¤È¤·¤Æ¥Æ¥­¥¹¥È¤ò°·
+¤¦¤Î¤Ç¤Ï¤Ê¤¯¡¢¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤¤¤¦Êä­Ū¤Ê¾ðÊó¤ò´Þ¤á¤¿¹½Â¤ÂΤòÄêµÁ
+¤·¡¢¤¹¤Ù¤Æ¤Î´Ø¿ô¤¬¤½¤ì¤ò½èÍý¤Î´ðËÜñ°Ì¤È¤¹¤ë¤³¤È¤Ë¤¢¤ë¡£´û¸¤Îµ»½Ñ¤È¤Î
+º¹Ê̲½¤Ï¡¢¡Ö¥Æ¥­¥¹¥È¤Î¾ðÊó¤òÅý°ì¤·¤¿ÊýË¡¤Ç°·¤¦¡×¤È¤¤¤¦ÅÀ¤Ë½¸Ìó¤Ç¤­¤ë¡£
+
+¿¸À¸ì½èÍý¤Ë¸Â¤é¤º¡¢¥Æ¥­¥¹¥È½èÍý¤ò¹Ô¤Ê¤¦ºÝ¤Ë¤·¤Ð¤·¤Ð¤ª¤³¤ëÌäÂê¤Ï¡¢Ê¸»ú
+¤ÎÎ󡢤¢¤ë¤¤¤Ïʸ»ú¥³¡¼¥É¤ÎÎ󤬻ý¤Ä¾ðÊó¤À¤±¤Ç¤Ï¡¢É¬ÍפʽèÍý¤ò¼Â¹Ô¤¹¤ë¤¿
+¤á¤Ë¤ÏÉÔ½½Ê¬¤Ç¤¢¤ë¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£¼ÂºÝ¤Î¥Æ¥­¥¹¥È½èÍý¤Ë¤¢¤¿¤Ã¤Æ¤Ï¡¢¸À
+¸ì¾ðÊó¡¢¥¹¥¯¥ê¥×¥È¾ðÊó¡¢¥Õ¥©¥ó¥È¾ðÊó¡¢¥°¥ê¥Õ¾ðÊó¤Ê¤É¤¬É¬Íפˤʤë¾ì¹ç¤¬
+¤¢¤ë¡£¤½¤ì¤Ë¤â¤«¤«¤ï¤é¤º¡¢¤³¤ì¤é¤Î¾ðÊó¤Ïʸ»ú¥³¡¼¥É¤ÎÎó¤Ë¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Ê
+¤¤¡£¤³¤ÎÅÀ¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¤³¤ì¤Þ¤Ç¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ç¤Ï¡¢Êä­Ū¤Ê¾ðÊó¤òľ
+ÀÜ°ú¿ô¤È¤·¤ÆÍ¿¤¨¤¿¤ê¡¢Êä­Ū¤Ê¾ðÊó¤â´Þ¤á¤Æ¥Æ¥­¥¹¥È¤òɽ¸½¤¹¤ë¹½Â¤ÂΤòÆÈ
+¼«¤ËÄêµÁ¤·¤Æ¡¢¤½¤ì¤ò°ú¿ô¤È¤·¤Æ»ý¤Á²ó¤·¤¿¤ê¤·¤Æ¤¤¤ë¡£
+
+M-text ¤Ç¤Ï¡¢Êä­Ū¤Ê¾ðÊó¤Ï¤ò¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤¤¤¦Åý°ìŪ¤ÊÏÈÁȤߤò
+ÍѤ¤¤Æɽ¤ï¤µ¤ì¤ë¡£¤³¤Î¤¿¤á¡¢Ê¸»ú¥³¡¼¥É¤À¤±¤Ç¤Ê¤¯Êä­¾ðÊó¤â¡¢Ê£¿ô¤Î¥½¥Õ
+¥È¥¦¥§¥¢¤ä¥ë¡¼¥Æ¥£¥ó¤Î´Ö¤Ç¶¦Í­¤Ç¤­¤ë¡£¤³¤Î»ÅÁȤߤϤµ¤é¤Ë¡¢´Ø¿ô¤Ë¾ðÊó¤ò
+ÅϤ¹¤¿¤á¤À¤±¤Ç¤Ï¤Ê¤¯¡¢´Ø¿ô¤«¤é¾ðÊó¤ò¼õ¤±¼è¤ë¤¿¤á¤Ë¤â»ÈÍѤǤ­¤ë¡£¤Þ¤¿¡¢
+Ê£¿ô¤Î¥Æ¥­¥¹¥È¤ò¤Ä¤Ê¤²¤¿¤ê¡¢Éôʬ¥Æ¥­¥¹¥È¤ò¤È¤ê¤À¤·¤¿¤ê¤È¤¤¤¤¤¿ÊÔ½¸¤ò¹Ô
+¤Ê¤Ã¤Æ¤â¡¢¸µ¤Î¥Æ¥­¥¹¥È¤ËÉղ䵤ì¤Æ¤¤¤¿¾ðÊó¤ÏÊݸ¤µ¤ì¤ë¡£´Ø¿ô A, B, C,
+D ¤ò½ç¼¡¸Æ¤Ó½Ð¤·¤Æ¥Æ¥­¥¹¥È¤ò²Ã¹©¤µ¤»¤ë¤è¤¦¤Ê¾ì¹ç¤Ë¤â¡¢ÅÓÃæ¤Î´Ø¿ô B, C 
+¤Ë¥Æ¥­¥¹¥È¤Ë´Ø¤¹¤ëÊä­Ū¤Ê¾ðÊó¤ò°ú¿ô¤È¤·¤ÆÍ¿¤¨¤¿¤ê¤¹¤ëɬÍפϤʤ¯¡¢¥Æ¥­
+¥¹¥È¥×¥í¥Ñ¥Æ¥£ÉÕ¤­¤Î¥Æ¥­¥¹¥È¤À¤±¤òÅϤ·¤Æ¡¢A ¤«¤é D ¤Þ¤Ç¤Î½èÍý¤ò¹Ô¤Ê¤¦
+¤³¤È¤¬²Äǽ¤È¤Ê¤ë¡£
+
+¤³¤Î¤è¤¦¤Ë¥Æ¥­¥¹¥È½èÍý¤Î´ðËÜñ°Ì¤È¤·¤Æ¡¢¤³¤ì¤Þ¤Ç¡ÖÊä­Ū¡×¤È¤µ¤ì¤Æ¤¤¤¿
+¾ðÊó¤âÅý°ìŪ¤Ë´Þ¤à M-text ¤òÍѤ¤¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Â¿¸À¸ìÂбþ¥½¥Õ¥È¥¦¥§¥¢
+¤Î³«È¯¤¬Íưפˤʤ뤳¤È¤¬´üÂԤǤ­¤ë¡£¤½¤·¤Æ¤½¤Î·ë²Ì¤È¤·¤Æ¡¢¥Æ¥­¥¹¥È¤Î¾ð
+Êó¤ò¿¤¯¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬Æ±¤¸ÊýË¡¤Ç°·¤¦¤³¤È¤Ë¤è¤Ã¤Æ¡¢Â¿¸À¸ì²½¤òɬÍפȤ·
+¤Ê¤¤¤â¤Î¤ò´Þ¤á¥Æ¥­¥¹¥È¤ò½èÍý¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤¹¤Ù¤Æ¤Ëž´¹¤ò¤â¤¿¤é¤¹¡£
+
+\item ²¿¤ËÂФ¹¤ë¿·µ¬À­¤«
+
+\begin{quote}
+¡Ö¿·µ¬¤ËÀ߷פ·¤¿³ä¤Ë¤ÏµìÍè¤Î¤â¤Î (Mule) ¤Ë°ø¤ï¤ì²á¤®¤Æ¤¤¤ë¤è¤¦¤Ë»×¤ï¤ì
+¡Ê¤Û¤È¤ó¤É Mule ¤½¤Î¤Þ¤Þ¤Ç¤¢¤ê¡¢Mule ¤Ç·Ð¸³¤·¤¿ÍøÊØÀ­¡¦ÌäÂêÅÀ¤ÎʬÀϤ¬
+½½Ê¬¤Ë¤Ê¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë»×¤ï¤ì¤Ê¤¤¡Ë¡¢API ¤ä¿¸À¸ì½èÍýµ»½Ñ¤È¤·¤Æ¤Î¿·µ¬
+À­¤ÎÅÀ¤Ç¤Ï¤¢¤Þ¤êɾ²Á¤Ç¤­¤Ê¤¤¡£¡×¡Ê¼é²¬¡Ë
+\end{quote}
+
+Ëܥ饤¥Ö¥é¥ê¤Ï¡¢Ëܳ«È¯½¾»ö¼Ô¤¬¤³¤ì¤Þ¤Ç¤Ë Mule ¤È¤¤¤¦¥¨¥Ç¥£¥¿¤ËÆò½¤·¤Æ
+ÃßÀѤ·¤Æ¤­¤¿µ»½Ñ¤ò¡¢ C ¤Î¥é¥¤¥Ö¥é¥ê¤È¤·¤ÆÀ°Íý¤¹¤ë¤â¤Î¤Ç¤¢¤ë¡£¤·¤¿¤¬¤Ã
+¤Æ²áµî¤Î Mule ¤ÈÈæ¤Ù¤Æ¤Î¿·µ¬À­¤Ç¤Ï¤Ê¤¯¡¢Â¾¤Î C ¥é¥¤¥Ö¥é¥ê¤ÈÈæ¤Ù¤Æ¤Î¿·
+µ¬À­¤ò¼çÄ¥¤¹¤ë¡£
+
+\end{itemize}
+
+\item  Í­ÍÑÀ­¤Ë¤Ä¤¤¤Æ
+
+ɾ²Á¼Ô¤«¤é¤Îµ¿Ìä¤Ï¡¢¥é¥¤¥Ö¥é¥êÍøÍѼԤȤ·¤ÆÁÛÄꤷ¤Æ¤¤¤ëÁؤ¬ÌÀ¤é¤«¤Ç¤Ê¤¤
+¤È¤¤¤¦ÅÀ¤Ç¤¢¤ë¡£
+
+\begin{quote}
+ ¡Ö¤¿¤À¡¢application ¤òľÀܤΠconsumer ¤È¤¹¤ë¤Î¤«¡¢¤½¤ì¤È¤â toolkit
+ ¤Ê¤É¤òľÀܤΠconsumer ¤È¤¹¤ë¤Î¤«¡¢I18N framework ¼ÂÁõ¼Ô¤ò consumer ¤È
+ ¤¹¤ë¤Î¤«¤ÇÍ­¸úÀ­¤ÏÊѤï¤ë¤È»×¤¤¤Þ¤¹¡£¡×¡ÊÈõ±º¡Ë\\
+¡Ö¥·¥¹¥Æ¥à¤ÎŬ±þÈÏ°Ï¡¢¤ª¤è¤Ó¡¢Ê»ÍѤµ¤ì¤ë¤Ù¤­Â¾¤Î¥·¥¹¥Æ¥à¤È¤Îµ¡Ç½Ê¬Ã´¤¬ÉÔ
+ÌÀ³Î¤Ç¤¢¤ê¡¢°ì³µ¤Ë¤Ï¤¤¤¨¤Ê¤¤¡£¡×¡Ê¼é²¬¡Ë
+\end{quote}
+
+Ëܥ饤¥Ö¥é¥ê¤Ç¤Ï¡¢toolkit ¤È I18N framework ¡Ê¡á¹ñºÝ²½¥Õ¥ì¡¼¥à¥ï¡¼¥¯¡Ë
+¤È¤Î¶¶ÅϤ·¤ò¼ç¤ÊÌÜŪ¤È¤¹¤ë¡£¤½¤Î¤¿¤á¤Ë¡¢toolkit ¤È I18N framework ¼ÂÁõ
+¼Ô¤Îξ¼Ô¤òÍøÍѼԤȤ·¤ÆÁÛÄꤹ¤ë¡£
+
+\item É¸½à²½¤Î²ÄǽÀ­¤Ë¤Ä¤¤¤Æ
+
+ɾ²Á¹àÌܤÎÀâÌÀ¤¬Û£Ëæ¤Ç¤¢¤Ã¤¿¤¿¤á¡¢ÍèǯÅٰʹߤθ¦µæ³«È¯·×²è¤Ç¤¢¤ë¡ÖGTK 
+¤È¤ÎÅý¹ç¡×¤È¤·¤Æ¤Î¹ñºÝɸ½à¤È¤Ê¤ë²ÄǽÀ­¤Ç¤Ï¤Ê¤¯¡¢°ìÈÌŪ¤ÊñÆȤΠAPI ¤È
+¤·¤Æ¤Î¹ñºÝɸ½àµ¬³Ê¤È¤Ê¤ë²ÄǽÀ­¤Îɾ²Á¤È¤Ê¤Ã¤¿¡£·ë²Ì¤È¤·¤Æ¡¢Ëܳ«È¯¤Îɾ²Á
+¹àÌܤȤ·¤Æ¤Ï¡¢Å¬ÀڤǤʤ¤¤â¤Î¤È¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£
+
+\begin{itemize}
+\item ¥Þ¡¼¥±¥Ã¥È¤ÎÀßÄê
+
+ \begin{quote}
+ ¡ÖAPI set ¤È¤·¤Æ¤Ï¡¢Å°ÄìŪ¤Ê Unicode Æò½¤¬¡¢¤ª¤è¤Ó XML ½èÍý·Ï¤Î 
+ backend ¤È¤·¤Æ¤Î¿ÆÏÂÀ­¤¬¡¢º£¸åÀ¤³¦¤Ç˾¤Þ¤ì¤ëÊý¸þÀ­¤À¤È»×¤¤¤Þ¤¹¡£¡×¡ÊÈõ±º¡Ë
+ \end{quote}
+
+Ëܥ饤¥Ö¥é¥ê¤ÏÍøÍѼԤȤ·¤Æ¥é¥¤¥Ö¥é¥êºîÀ®¼Ô¤òÁÛÄꤷ¤Æ¤¤¤ë¤¿¤á¡¢Unicode 
+¤ËÅöÁ³Âбþ¤Ï¤·¤Æ¤â¡¢Æò½¤¹¤ë¤³¤È¤Ï¤¢¤Þ¤êɬÍפǤʤ¤¤È»×¤ï¤ì¤ë¡£¤Þ¤¿ XML 
+½èÍý·Ï¤Î¥Ð¥Ã¥¯¥¨¥ó¥É¤È¤·¤Æ¤Î¿ÆÏÂÀ­¤Ï¸åǯÅ٤γ«È¯¤Ç¼Â¸½¤¹¤ëͽÄê¤Ç¤¢¤ë¡£
+
+\item Unicode Âбþ¤ª¤è¤Ó ICU ¤È¤Î´Ø·¸
+
+\begin{quote}
+¡ÖICU\footnote{(Ãí¡§International Components for Unicode
+(http://oss.software.ibm.com/icu/)¡Ë} ¤¬ STSF \footnote{¡ÊÃí¡§Standard
+Type Services Framework (http://sourceforge.net/projects/stsf/)¡Ë} ¤È 
+IIIMF \footnote{¡ÊÃí¡§Internet/Intranet Input Method Framework
+(http://www.li18nux.net/subgroups/im/IIIMF/index.html)¡Ë} ¡Ê¤¹¤Ù¤Æ 
+UTF-16 ¥Ù¡¼¥¹¡Ë¤ò¼è¤ê¹þ¤ó¤Ç¡¢I/O(2D text)¤ò´Þ¤à¡¢Java I18N framework 
+¤¹¤Ù¤Æ¤Î C/C++ port ¤Ë¤Ê¤Ã¤¿¤È¤­¡¢Â¿¿ô¤òÀê¤á¤ë¤À¤í¤¦ Unicode API set 
+¤ò˾¤à¦¤Î¿Í¡¹¤¬¡¢m17nlib ¤ÎÊý¤ò¹ñºÝɸ½à¤È¤·¤ÆÁª¤Ö¶¯¤¤Íýͳ¤¬É¬ÍפÀ¤È»×
+¤¤¤Þ¤¹¡£ ¡×¡ÊÈõ±º¡Ë
+\end{quote}
+
+ICU ¤òº¹Ê̲½¤ò¤Ï¤«¤ëÂоݤǤϤʤ¯¡¢m17n-lib ¤ò¤è¤ê¹âµ¡Ç½¤Ê¤â¤Î¤Ë¤¹¤ë¤¿
+¤á¤Î¥µ¥Ý¡¼¥È¥é¥¤¥Ö¥é¥ê¤Èª¤¨¡¢ÍøÍѤǤ­¤ë¤È¤³¤í¤Ç¤Ï ICU ¤òÍøÍѤ·¤Æ 
+m17n-lib ¤ò¼ÂÁõ¤¹¤ëͽÄê¤Ç¤¢¤ë¡£ÆäˠUnicode ½èÍý¤Î¤¦¤Á¡¢Àµµ¬²½¤ä¾È¹ç¤Ê
+¤É¤Î¤è¤¦¤Ë¸½ºß¼ê¤òÃ失¤Æ¤¤¤Ê¤¤º¤Æñ¤ÊÉôʬ¤Ë¤Ä¤¤¤Æ¤Ï¡¢´û¸¤Î¥é¥¤¥Ö¥é¥ê¤ò
+ÍѤ¤¤ëÊý¿Ë¤Ç¤¢¤ë¡£
+
+\item ÍѸìÅù
+
+\begin{quote}
+¡Ö¥â¥Ç¥ë¡¦ÍѸìÅù¤¬·ë²ÌŪ¤ËÆȼ«¤Î¤â¤Î¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¹ñºÝɸ½à¤ä¥Ç¥Õ¥¡¥¯¥È¥¹
+¥¿¥ó¥À¡¼¥É¤È¤¢¤Þ¤êĴϤ·¤Æ¤¤¤Ê¤¤¤è¤¦¤Ë»×¤ï¤ì¤ë¡£¤½¤Î¤¿¤á¡¢¡ÊMule ¤ä
+Emacs ¤òÃΤé¤Ê¤¤¤â¤Î¤Ë¤È¤Ã¤Æ¤Ï¡Ë¤³¤Î¤Þ¤Þ¤Ç¤Ï¤ä¤äÍý²ò¤·¤Ë¤¯¤¤¤â¤Î¤Ë¤Ê¤Ã
+¤Æ¤¤¤ë¤È»×¤ï¤ì¤ë¡£¤³¤Îµ»½Ñ¤ÎŬ±þÈϰϤä¼çÍפÊÂоݡ¢¤ª¤è¤Ó¡¢¸½ºß¤Î¼ûÍפÈ
+¤Î´Ø·¸¤âÉÔÌÀ³Î¤Ç¤¢¤ë¡£¡×¡Ê¼é²¬¡Ë
+\end{quote}
+
+¥É¥­¥å¥á¥ó¥ÈÆâ¤ÎÉÔŬÀÚ¤ÊÍѸì¤Ï½¤Àµ¤·¡¢ÂоÝÅù¤Ë¤Ä¤¤¤ÆÀâÌÀ¤ò²Ã¤¨¤¿¡£
+
+\end{itemize}
+
+\item ÂÅÅöÀ­¤Ë¤Ä¤¤¤Æ
+
+\begin{quote}
+¡Ö¤¿¤À¡¤´û¸¤Î C ¸À¸ì API ¤ò¥Ù¡¼¥¹¤Ë¹Í¤¨¤é¤ì¤Æ¤¤¤ëÉôʬ¤¬¤¢¤ë¤¬¡¤¥í¥±¡¼
+¥ë¤Î°·¤¤¤ä´Ø¿ô¤ÎÆ°ºî¤Ø¤Î±Æ¶Á¡¤¥Õ¥¡¥¤¥ëÆþ½ÐÎϤä¥Õ¥¡¥¤¥ëÆâ¤Ç¤Îʸ»ú¤Îɽ¸½
+¤¬¤É¤¦¤Ê¤Ã¤Æ¤¤¤ë¤Î¤«¤Ê¤É¤ÎÀâÌÀ¤¬ÉÔ½½Ê¬¡¤°ìÈÌ¤Î¥×¥í¥°¥é¥Þ¸þ¤±¤Î»ÅÍͤȤ·
+¤Æ¤ÏÆñ¤·¤¹¤®¤Ê¤¤¤«¤Ê¤É¡¤¤¤¤¯¤Ä¤«µ¤¤Ë¤Ê¤ëÅÀ¤¬¤¢¤ë¡£¡×¡ÊËö×¢¡Ë
+\end{quote}
+
+¥é¥¤¥Ö¥é¥ê¤¬ÁÛÄꤹ¤ëÍøÍѼÔÁؤ˴ؤ·¤Æµ­½Ò¤¹¤ë¤Ê¤É¡¢ÀâÌÀ¤ò²Ã¤¨¤¿¡£
+
+\begin{quote}
+¡Ö·«¤êÊÖ¤·¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢API set ¤È¤·¤Æ¼õ¤±Æþ¤ì¤é¤ì¤ë¤³¤È¤Ë½ÅÅÀ¤ò¤ª¤¯¤Î
+¤Ç¤Ï¤Ê¤¯¡¢mule ¤Ç°µÅݤ·¤¿¡Ö¤Ê¤ó¤È¸À¤Ã¤Æ¤â¤â¤¦Æ°¤¯¼ÂÁõ¤¬¤¢¤ë¤â¤ó¤Í¡×Êý
+¼°¤Î¤Û¤¦¤¬¡¢¤³¤ì¤«¤é¥¹¥¿¡¼¥È¤¹¤ë¥×¥í¥¸¥§¥¯¥È¤È¤·¤Æ¤Ï¤è¤êÍ­¸ú¤Ê¤Î¤Ç¤Ï¤Ê
+¤¤¤Ç¤·¤ç¤¦¤«¡©¡ÊÉôÉʲ½¤È¤¤¤¦¤³¤È¤Ç¤¹¡Ë¡×¡ÊÈõ±º¡Ë
+\end{quote}
+
+¿·µ¬À­¤Î¹à¤ÇÀâÌÀ¤·¤¿¡Ö¥Æ¥­¥¹¥È¤Î¾ðÊó¤òÅý°ì¤·¤¿ÊýË¡¤Ç°·¤¦¡×¤È¤¤¤¦Í¥°ÌÀ­
+¤ò¶¯¤¯¼çÄ¥¤·¤Æ¤¤¤¯Í½Äê¤Ç¤¢¤ë¡£¡Ö¼ÂºÝ¤ËÆ°¤¯¼ÂÁõ¡×¤Î¼Â¸½¤ÏÍèǯÅٰʹߤγ«
+ȯ·×²è¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¡£
+
+\begin{quote}
+¡Ö¸½ºß¿¤¯»È¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿ XML ¤Ê¤É¤Î¹½Â¤²½¥Æ¥­¥¹¥È¤ò°·¤¦¤¿¤á¤Î³¦ÌÌ
+¤ä¡¢¤³¤¦¤·¤¿¹½Â¤²½Ê¸½ñ¤ò²òÀÏ¡¦²Ã¹©¤¹¤ë¤¿¤á¤Î»Ù±ç¡Ê¤Ê¤¤¤·¤Ï¤½¤¦¤·¤¿¤³¤È
+¤òÌÜŪ¤È¤·¤¿¥â¥¸¥å¡¼¥ë¤È¤Î³¦ÌÌ¡Ë¡¢¤¢¤ë¤¤¤Ï¡¢¤³¤¦¤·¤¿¹½Â¤²½Ê¸½ñ¤ò¤¢¤ëÄø
+ÅÙ¤ÎÉʼÁ¤Ç¿¸À¸ìÁÈÈÇɽ¼¨¤¹¤ë¤È¤¤¤Ã¤¿²ÝÂê¤ò²ò·è¤·¤Æ¤¤¤Ê¤¤¡¢¤Ê¤¤¤·¤Ï¡¢¤½
+¤ÎÊý¸þÀ­¤ò¼¨¤·¤Æ¤¤¤Ê¤¤¡£¡×¡Ê¼é²¬¡Ë
+\end{quote}
+
+¹½Â¤²½Ê¸½ñ¤ËÂбþ¤¹¤ë M-text ¤Ï¡¢¤â¤È¤Î¹½Â¤¤ò¤½¤Î¤Þ¤Þ¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£
+¤È¤·¤ÆÊÝ»ý¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ê¡¢¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Ï¤Þ¤µ¤Ë¤³¤¦¤¤¤¦¾ìÌÌ
+¤Ë¤âÍ­¸ú¤Ê»Ù±ç¤Ç¤¢¤ë¡£
+
+\item ¥É¥­¥å¥á¥ó¥È¤Î¼Á
+
+¿·µ¬À­¤Î¹à¤Ç¤â½Ò¤Ù¤¿¤è¤¦¤Ë¡¢É¾²Á¤ò°ÍÍꤷ¤¿ÈǤΥɥ­¥å¥á¥ó¥È¤¬ API ¤Î»Å
+Íͤ˽ª»Ï¤·¡¢¥é¥¤¥Ö¥é¥ê¤È¤·¤Æ¤ÎÁ´ÈÌŪ¤ÊÀ­³Ê¤ò½Ò¤Ù¤Æ¤¤¤Ê¤¤ÀâÌÀÉÔ­¤Ê¤â¤Î
+¤Ç¤¢¤Ã¤¿¡£É¾²Á½ªÎ»¸å¡¢¤³¤ÎÈǤǤÏÂ裱¾Ï¤ÇËܥ饤¥Ö¥é¥ê¤ÎÆÃħ¤Ë¤Ä¤¤¤Æ¤ÎÀá
+¤òÄɲä·¤¿¡£
+
+\end{enumerate}
+
+ɾ²Á¼Ô¤ÈËܳ«È¯Ã´Åö¼Ô¤È¤Î´Ö¤ÇËܳ«È¯¤ÎÊý¸þÀ­¤Ë¤Ä¤¤¤Æ¸¡Æ¤¤¹¤ë¥á¥¤¥ê¥ó¥°¥ê
+¥¹¥È {\tt m17nlib@m17n.org} ¤òȯ­¤µ¤»¤¿¤È¤³¤í¡¢°ì½µ´Ö¤Ç60Ä̶ᤤ¥È¥é
+¥Õ¥£¥Ã¥¯¤¬¤¢¤ë¤Û¤É³èȯ¤ÊµÄÏÀ¤¬¹Ô¤ï¤ì¤Æ¤¤¤ë¡£º£¸å¡¢API»ÅÍͤ˴ؤ¹¤ë¥É¥­¥å
+¥á¥ó¥È¤Èɾ²Á¼Ô¤«¤é¤Î¥³¥á¥ó¥È¤ò᤭Âæ¤È¤·¤Æ¡¢»ÅÍͼ«ÂΤȤ½¤Îɽ¸½¤Ë¤Ä¤¤¤Æ
+²þÎɤ·¤Æ¤¤¤¯Í½Äê¤Ç¤¢¤ë¡£
+
+\section{µ»½Ñ³«È¯¤ÎÁí³ç}
+
+Unix/LinuxÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤Î³«È¯ºî¶È¹àÌܤΤ¦¤Á¡¢Ê¿À®£±£³Ç¯
+Åټ»ÜͽÄê¤Ç¤¢¤Ã¤¿°Ê²¼
+\begin{enumerate}
+\item ¡Öm17n´ðËÜC¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀß·×
+\item ¡Öm17n X¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀß·× 
+\item ¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ÎÀß·×
+\end{enumerate}
+¤Ë¤Ä¤¤¤Æµ»½Ñ³«È¯¤ò¹Ô¤Ê¤Ã¤¿¡£
+
+\begin{description}
+
+\item[Ëܵ»½Ñ³«È¯¤ÎÆÃħ]~\\ 
+¥½¥Õ¥È¥¦¥§¥¢¤Ë¤ª¤±¤ë¿¸À¸ì²½¤È¤Ï¡¢¤¢¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¤¦¤¨¤Ç¡¢¤¤¤í¤¤¤í¤Ê
+ʸ»ú¡¢¸À¸ì¤Ê¤É¤Îʸ²½Åª´·½¬¤òº®ºß¤µ¤»¤Æ»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤ò»Ø¤¹¡£¤³¤Î
+ºÝ¤Ë¤ÏÆþÎÏ¡¢É½¼¨¡¢ÊÔ½¸¤Ë¤¢¤¿¤Ã¤Æ¤µ¤Þ¤¶¤Þ¤Ê¾ðÊó¤¬É¬ÍפǤ¢¤ë¡£Ëܳ«È¯¤Ç¤Ï¡¢
+¿¸À¸ì¥Æ¥­¥¹¥È¤òñ¤Ê¤ëʸ»úÎó¤È¤·¤Æ¤Ç¤Ï¤Ê¤¯¡¢¤³¤ì¤é¤Î¾ðÊó¤ò´Þ¤ó¤À¥ª¥Ö¥¸¥§
+¥¯¥È¤È¤·¤ÆÅý°ìŪ¤Ë¼è°·¤¦¤³¤È¤ò²Äǽ¤È¤·¡¢¤·¤«¤â·×»»µ¡¤òÍøÍѤ¹¤ëÍÍ¡¹¤Ê¾ì
+Ì̤ÇÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤ëÈÆÍѥ饤¥Ö¥é¥ê¤ò¼Â¸½¤¹¤ë¡£¤³¤Î¥é¥¤¥Ö¥é¥ê¤ÎÀß·×¾å
+¤ÎÆÃħ¤Ï¡¢Êä­¾ðÊó¤ò¤â´Þ¤ó¤À¥Æ¥­¥¹¥È¤òɽ¤ï¤¹¹½Â¤ÂΤòÄêµÁ¤·¡¢¤½¤ì¤ò½èÍý
+¤Î´ðËÜñ°Ì¤È¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£¤³¤Î¤è¤¦¤Ë¥Æ¥­¥¹¥È½èÍý¤Î´ðËÜñ°Ì¤È¤·¤Æ¡¢¤³
+¤ì¤Þ¤Ç¡ÖÊä­Ū¡×¤È¤µ¤ì¤Æ¤¤¤¿¾ðÊó¤â´Þ¤à¹½Â¤ÂΤòÍѤ¤¤ë¤³¤È¡¢¤½¤·¤Æ¤½¤Î·ë
+²Ì¥Æ¥­¥¹¥È¤Î¾ðÊó¤ò¿¤¯¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬Æ±¤¸ÊýË¡¤Ç°·¤¦¤³¤È¤Ï¡¢Â¿¸À¸ì
+²½¤òɬÍפȤ·¤Ê¤¤¤â¤Î¤ò´Þ¤á¡¢¥Æ¥­¥¹¥È¤ò½èÍý¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤¹¤Ù¤Æ¤Ëž´¹
+¤ò¤â¤¿¤é¤¹¤È´üÂԤǤ­¤ë¡£
+
+\item[Ëܵ»½Ñ³«È¯¤ÎÀïά]~\\ 
+Ëܳ«È¯¤Ç¼Â¸½¤¹¤ëUnix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤ÎºÇ½ªÌÜɸ¤Ï¡¢ 
+Linux/Unix ¾å¤Î GNOME (GNU Network Object Model Environment) ¤Î¾å¤Ç¡¢
+¿¸À¸ìÂбþ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î³«È¯¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£¤³¤Î¤¿¤á¡¢
+¤½¤Î¥Ù¡¼¥¹¤È¤Ê¤ë C ¥é¥¤¥Ö¥é¥ê µÚ¤Ó X ¥é¥¤¥Ö¥é¥ê¤Î¿¸À¸ì²½¤ò¹Ô¤Ê¤Ã¤Æ¤¤
+¤ë¡£Ëܥ饤¥Ö¥é¥ê¤Ç¤Ï¡¢Â¿¸À¸ì½èÍýµ¡Ç½¤Î¿·¤¿¤ÊÂηϤò³ÎΩ¤¹¤ë¤³¤È¤òÌܻؤ·
+¤Æ¤¤¤ë¤¬¡¢¸½»þÅÀ¤Ç¤Î¥Æ¥­¥¹¥È½èÍýÂηϤ˰͸¤·¤¿¸½Â¸¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î°Ü¹Ô
+¤òÍưפˤ¹¤ë¤¿¤á¡¢ÂηÏÁê¸ß¤ÎÂбþ´Ø·¸¤òÌÀ¤é¤«¤ËÊݤĤ³¤È¤Ëα°Õ¤·¤ÆÀ߷פò
+¹Ô¤Ê¤Ã¤¿¡£
+
+¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Ï¤³¤ì¤é¤Î¥é¥¤¥Ö¥é¥ê¤«¤éÍøÍѤµ¤ì¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹
+¤È¤·¤ÆÀ߷פ·¤¿¡£Ëܳ«È¯¤Ç¤ÎÀ߷פÎÂоݤϡ¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÆâÍƤǤϤʤ¯¡¢¤½
+¤ÎÏÈÁȤߡ¢¤Ä¤Þ¤ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤¬Ä󶡤¹¤Ù¤­¾ðÊó¤Î¼ïÎà¤È·Á¼°¡¢¤½¤·¤ÆËܥ饤
+¥Ö¥é¥ê¤¬¤½¤Î¾ðÊó¤ò¼èÆÀ¤¹¤ëÊýË¡¤Ç¤¢¤ë¡£
+
+\item[Ëܵ»½Ñ³«È¯¤ÎÆâÍÆ]~\\
+\begin{itemize}
+\item ¡Öm17n´ðËÜC¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀß·×
+
+C ¥é¥¤¥Ö¥é¥ê¤¬Ä󶡤¹¤ë¡Ö¥Æ¥­¥¹¥È½èÍý¡×¤Ë´Ø¤¹¤ë¥é¥¤¥Ö¥é¥ê´Ø¿ô 101 ¸Ä¤Î
+¤¦¤Á¡¢¸åǯÅ٤˳«È¯¤ò¹Ô¤Ê¤¦Í½Äê¤Î¡Öm17n ´ðËÜ C ¥é¥¤¥Ö¥é¥ê¤«¤é´û¸¤Î¥í¥±¡¼
+¥ëµ¡Ç½¤òÍøÍѤ¹¤ë¼êË¡¤ÎÀ߷ספ˴ޤޤì¤ë¤Ù¤­¤â¤Î¤ò½ü¤¯¤È 54 ¸Ä¤Î´Ø¿ô¤¬»Ä
+¤ë¡£¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¡¢Âбþ¤¹¤ë¿¸À¸ìÈǤδؿô¤ÎAPI ¤òÀ߷פ·¤¿¡£
+
+\item ¡Öm17n X¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀß·× 
+
+ X ¥é¥¤¥Ö¥é¥ê¤¬Ä󶡤¹¤ë¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Ï 512 ¤¢¤ê¡¢¤½¤Î¤¦¤Á¡¢¡Ö¥Æ¥­¥¹¥È
+½èÍý¡×¤Ë´Ø¤¹¤ë¤â¤Î¤Ï 70 ¸Ä¤Ç¤¢¤ë¡£¤³¤ì¤é¤Î¤¦¤Á¡Öm17n X ¥é¥¤¥Ö¥é¥ê¡×¤¬
+ÆâÉôŪ¤Ë½èÍý¤¹¤ë¤¿¤á¤Î¤â¤Î¤ò½ü¤¤¤¿ 41 ¸Ä¤Ë¤Ä¤¤¤Æ¡¢Âбþ¤¹¤ë¿¸À¸ìÈǤδØ
+¿ô¤Î API ¤òÀ߷פ·¤¿¡£
+
+\item ¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ÎÀß·×
+
+¾åµ­¥é¥¤¥Ö¥é¥ê¤«¤éÍøÍѤµ¤ì¤ë¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ÎÏÈÁȤߤòÀ߷פ·¡¢
+¸¡¾Ú¤Î¤¿¤á¤Ë¡¢Ê¸»ú¥»¥Ã¥È¡¢Ê¸»ú¤Î¥×¥í¥Ñ¥Æ¥£¡¢¥Õ¥©¥ó¥È¡¢ÆþÎϥ᥽¥Ã¥É¤Ë´Ø
+¤¹¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î»îºî¤ò¹Ô¤Ê¤Ã¤¿¡£»îºî¤ËÅö¤¿¤Ã¤Æ¤Ï¡¢Unicode ¥³¥ó¥½¡¼¥·
+¥¢¥à¡¢IBM¡¢ µþÅÔÂç³Ø°Â²¬¹§°ì»á¤Ë¤è¤ë¥Ç¡¼¥¿¤òÍѤ¤¤¿¡£
+
+\end{itemize}
+
+\item[Ëܵ»½Ñ³«È¯¤Îɾ²Á]~\\
+API ¤Î»ÅÍͽñ¤ò³°Éôɾ²Á¼Ô¤Ëɾ²Á¤ò°ÍÍꤷ¤¿¡£¤³¤Î·ë²Ì API »ÅÍͽñ¤È¤¤¤¦·Á
+¤Ç¤ÏÀ߷פÎÊý¿Ë¤¬ÉÔÌÀ³Î¤Ç¤¢¤ë¤È¤¤¤¦ÌäÂ꤬¤¢¤ë¤â¤Î¤Î¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó³«
+ȯ¼Ô¸þ¤±¤ÎÈÆÍÑ¿¸À¸ì²½¥é¥¤¥Ö¥é¥ê³«È¯¤Î°ÕµÁ¤ÏÂ礭¤¤¤È¤¤¤¦É¾²Á¤ò¼õ¤±¤¿¡£
+
+\end{description}
+
+Ëܳ«È¯¤Ç¼Â¸½¤µ¤ì¤¿ API ¤ÎÀ߷פ˱è¤Ã¤ÆÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤Î¼Â
+Áõ¤ò¹Ô¤¦¤³¤È¤Ë¤è¤Ã¤Æ¡¢Â¿¸À¸ì¥Æ¥­¥¹¥È¤òñ¤Ê¤ëʸ»úÎó¤È¤·¤Æ¤Ç¤Ï¤Ê¤¯¡¢Â¿¤¯
+¤Î¾ðÊó¤ò´Þ¤ó¤À¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤ÆÅý°ìŪ¤Ë¼è°·¤¦¤³¤È¤¬²Äǽ¤È¤Ê¤ë¡£
+
+¿¸À¸ì²½µ¡Ç½¤òɬÍפȤ¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤Ï¡¢º£¸å¤Þ¤¹¤Þ¤¹Áý²Ã¤¹¤ë¡£Ê£¿ô¤Î¥½
+¥Õ¥È¥¦¥§¥¢¤«¤é¶¦Ä̤ËÍøÍѤǤ­¤ë¿¸À¸ì²½¥é¥¤¥Ö¥é¥ê¤ò¡¢¥ª¡¼¥×¥ó¥½¡¼¥¹¥½¥Õ
+¥È¥¦¥¨¥¢¤È¤·¤ÆÄ󶡤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢Â¿¤¯¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î³«È¯¤ò¤è¤ê¸úΨ
+Ū¤Ë¹Ô¤¤¡¢³«È¯¥³¥¹¥È¤òºï¸º¤·¡¢·ë²Ì¤È¤·¤Æ·×»»µ¡ÍøÍѤˤª¤±¤ë¸À¸ìŪ¾ãÊɤ¬
+À¤³¦Åª¤Ë·Ú¸º¤µ¤ì¤ë¤³¤È¤¬´üÂԤǤ­¤ë¡£
+
diff --git a/data-ja/header.tex b/data-ja/header.tex
new file mode 100644 (file)
index 0000000..a83371a
--- /dev/null
@@ -0,0 +1,41 @@
+\documentclass[a4paper,12pt,twoside]{article}  % -*- coding: euc-jp; -*-
+\setlength\headheight{14.5pt}
+\usepackage{makeidx}
+\usepackage{fancyhdr}
+\usepackage{graphicx}
+\usepackage{float}
+\usepackage{alltt}
+\usepackage[english]{babel}
+\usepackage{times}
+%%%\usepackage[dvips, a4paper, bookmarks, bookmarksnumbered, pdftitle={Unix/LinuxÈÆÍÑ¡£¡£¡£}]{hyperref} 
+\usepackage{doxygen}
+\usepackage{doxygen-m17n}
+\makeindex
+\setcounter{tocdepth}{2}
+\setlength{\footrulewidth}{0pt}
+\begin{document}
+\begin{titlepage}
+\begin{flushright}
+{\Large 13¾ð·ÐÂè1127¹æ}
+\end{flushright}
+\vspace*{2cm}
+\begin{center}
+{\Huge IPA¾ðÊ󵻽ѳ«È¯»Ù±ç»ö¶È}\\
+\vspace*{2cm}
+{\Huge Unix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½\\¥é¥¤¥Ö¥é¥ê¤Î³«È¯}\\
+\vspace*{2cm}
+{\Huge ³«È¯À®²ÌÊó¹ð½ñ}\\
+\vspace*{7cm}
+{\Huge Ê¿À®14ǯ2·î}\\
+\vspace*{1.5cm}
+{\Huge ÆÈΩ¹ÔÀ¯Ë¡¿Í »º¶Èµ»½ÑÁí¹ç¸¦µæ½ê}
+\end{center}
+\end{titlepage}
+\cleardoublepage
+\pagenumbering{roman}
+\tableofcontents
+\newpage
+\pagenumbering{arabic}
+\input{introduction.tex}
+\newpage
+\sectionOnNewpage
diff --git a/data-ja/introduction.tex b/data-ja/introduction.tex
new file mode 100644 (file)
index 0000000..4a0b2e0
--- /dev/null
@@ -0,0 +1,211 @@
+
+%¡¡¡¡¡¦È¯Ãí»ÅÍͽñ¤ÎÆâÍƤȰ㤤¤Ï¤Ê¤¤¤«¡£
+%¡¡¡¡¡¡¡¡Æäˡ¢È¯Ãí»ÅÍͽñ¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¸ÀÍÕ¤Èɽ¸½¤Î°Û¤Ê¤Ã¤¿
+%¡¡¡¡¡¡¡¡¸ÀÍÕ¤ò»ÈÍѤ¹¤ë¤È¤­¤Ï¡¢Âбþ¤¬¤ï¤«¤ë¤è¤¦¤ËÂбþɽ¤òºîÀ®¤·¤Æ
+%¡¡¡¡¡¡¡¡²¼¤µ¤¤¡£
+%¡¡¡¡¡¦µ»½Ñ³«È¯¤ÎÌÜɸ¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë¤«¡£
+%¡¡¡¡¡¦µ»½Ñ³«È¯¹àÌܤÎÆâÍƤ¬¤ï¤«¤ë¤«¡£
+%¡¡¡¡¡¡¡¡ÆâÍƤϡ¢Âè»°¼Ô¤¬Æɤó¤Ç¤â¤ï¤«¤ëÆâÍÆ¡ÊÊ¿°×¤Êʸ¡Ë¤Ë¤·¤Æ²¼¤µ¤¤¡£
+%¡¡¡¡¡¦ÌÜɸ¤òãÀ®¤·¤Æ¤¤¤ë¤«¡£¤Þ¤¿¡¢¤½¤Îº¬µò¤¬ÂÅÅö¤Ç¤¢¤ë¤«¡£
+%¡¡¡¡¡¦³«È¯¤·¤¿¤â¤Î¤ËÂФ¹¤ëɾ²Á´ð½à¡¢É¾²ÁÊýË¡¡¢É¾²ÁÆâÍƤ¬
+%¡¡¡¡¡¡µ­½Ò¤µ¤ì¡¢ÂÅÅö¤Ç¤¢¤ë¤«¡£
+%¡¡¡¡¡¦µ»½Ñ³«È¯Á´ÂΤÎÁí³ç¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë¤«¡£
+
+%\IPAref{XXX} ¤Î¥é¥Ù¥ë¤Ï @latexonly \IPAlabel{XXX} @endlatexonly ¤ÇÉÕ¤±¤ë¡£
+
+\section{Unix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤Î³«È¯¤Î³µÍ×}
+
+\subsection{µ»½Ñ³«È¯¤ÎÌÜɸ}
+%ȯÃí»ÅÍͽñ¡ÖÇطʤÈÌÜŪ¡×¤«¤é¥³¥Ô¡¼
+%2002/2/25Ìò°÷²ñÍÑÀâÌÀ»ñÎÁ¤«¤éÄɲÃ
+\subsubsection{ÇطʤÈÌÜŪ}
+
+%¿¸À¸ì½èÍý¤È¤Ï²¿¤«
+
+¥½¥Õ¥È¥¦¥§¥¢¤Ë¤ª¤±¤ë¿¸À¸ì²½¤È¤Ï¡¢¤¢¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¤¦¤¨¤Ç¡¢¤¤¤í¤¤¤í¤Ê
+ʸ»ú¡¢¸À¸ì¤Ê¤É¤Îʸ²½Åª´·½¬¤òº®ºß¤µ¤»¤Æ»È¤¨¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤ò»Ø¤¹¡£À¤³¦
+µ¬ÌϤǤξðÊó¤Îȯ¿®¤ä¶¦Í­¤ò»Ù¤¨¤ë¤¿¤á¤Ë¤Ï¡¢±Ñ¸ì¤Î¤è¤¦¤ËÍøÍѼԤ襤¸À¸ì
+¤À¤±¤Ç¤Ï¤Ê¤¯¡¢¤½¤ì°Ê³°¤Î¸À¸ì¤âÅý°ìŪ¤«¤ÄÍưפ˥µ¥Ý¡¼¥È¤Ç¤­¤ë·×»»µ¡´Ä¶­
+¤¬µá¤á¤é¤ì¤ë¡£
+
+%¿¸À¸ì½èÍý¸þ¤±ÈÆÍѥ饤¥Ö¥é¥ê¤È¤Ï²¿¤«¡£
+
+°ìÊý¡¢¥½¥Õ¥È¥¦¥§¥¢³«È¯¼Ô¤Î¦¤«¤é¿¸À¸ì²½¤Ë¤Ä¤¤¤Æ¸«¤ë¤È¡¢¸½ºß³«È¯¤µ¤ì¤Æ
+¤¤¤ë¥½¥Õ¥È¥¦¥§¥¢¤Î¤Û¤È¤ó¤É¤Ë¤È¤Ã¤Æ¡¢Â¿¸À¸ì²½¼«ÂΡ¢¤¢¤ë¤¤¤Ï¸À¸ì¤Î°·¤¤¼«
+ÂΤϥ½¥Õ¥È¥¦¥§¥¢¤Î¼ç¤ÊÌÜŪ¤Ç¤Ï¤Ê¤¯¡¢»ÞÍÕËöÀá¤Ç¤¢¤ë¡£¤½¤ì¤Ë¤â¤«¤«¤ï¤é¤º¡¢
+¿¸À¸ì²½Éôʬ¤ò¤Þ¤È¤á¤Æ½èÍý¤¹¤ë¥é¥¤¥Ö¥é¥ê¤¬¤Ê¤¤¤¿¤á¤Ë¡¢¸Ä¡¹¤Î¥½¥Õ¥È¥¦¥§
+¥¢¤Ç¸ÄÊ̤Ë¿¸À¸ì²½µ¡Ç½¤ò³«È¯¤¹¤ë¤È¤¤¤¦Èó¸úΨ¤Ê»öÂÖ¤¬µ¯¤³¤Ã¤Æ¤¤¤ë¡£¼ÂºÝ¡¢
+mozilla, Perl, Ruby ¤Ê¤É¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ç¤Ï¡¢¸½ºß¤½¤ì¤¾¤ì¤Ë¿¸À¸ì²½µ¡Ç½
+¤ò³«È¯¤·¤Æ¤¤¤ë¡£
+
+¤³¤Î¤è¤¦¤Ê¥½¥Õ¥È¥¦¥§¥¢¤ä¡¢¤½¤Î¾¿¸À¸ì²½µ¡Ç½¤òɬÍפȤ¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤Ë
+¤ª¤¤¤Æ¡¢Â¿¸À¸ìÂбþ¤òɬÍפȤ¹¤ëÉôʬ¤ÏÈæ³ÓŪÍưפËÀÚ¤êʬ¤±¤¬¤Ç¤­¤ë¡£°ìÊý
+¿¤¯¤Î¥½¥Õ¥È¥¦¥§¥¢¤¬Â¿¸À¸ì²½¤Ë´Ø¤·¤Æ¶¦Ä̤ËɬÍפȤ·¤Æ¤¤¤ëµ¡Ç½¤¬¤¿¤¯¤µ¤ó
+¸ºß¤¹¤ë¡£¤½¤³¤Ç¡¢¤½¤Î¤è¤¦¤Êµ¡Ç½¤ò½¸¤á¡¢Ê£¿ô¤Î¥½¥Õ¥È¥¦¥§¥¢¤«¤é¶¦Ä̤ËÍø
+ÍѤǤ­¤ë¿¸À¸ì²½¥é¥¤¥Ö¥é¥ê¤¬¤¢¤ì¤Ð¡¢Â¿¤¯¤Î¥½¥Õ¥È¥¦¥§¥¢¤Î³«È¯¤ò¤è¤ê¸úΨ
+Ū¤Ë¹Ô¤Ê¤¤¡¢³«È¯¥³¥¹¥È¤òºï¸º¤Ç¤­¤ë¤È¹Í¤¨¤é¤ì¤ë¡£
+
+¿¸À¸ì½èÍý¸þ¤±ÈÆÍѥ饤¥Ö¥é¥ê¤ÎʬÌî¤Ë¤ª¤¤¤Æ¤Ï¡¢Unicode¤ò¥Ù¡¼¥¹¤Ë¤¹¤ë¤³
+¤È¤Ë¤è¤ê¡¢À¤³¦Ãæ¤Îʸ»ú¤ò´Þ¤ó¤À¥Æ¥­¥¹¥È¤ò¼è¤ê°·¤¦¤³¤È¤¬¤Ç¤­¤ë¤â¤Î¤¬³«È¯
+¤µ¤ì¤Ä¤Ä¤¢¤ë¡£¤·¤«¤·¤³¤ì¤Ï¤¢¤¯¤Þ¤Ç¥Æ¥­¥¹¥È¤òñ¤Ê¤ëʸ»úÎó¤È¤·¤Æ°·¤¦¤¿¤á
+¤Î¥é¥¤¥Ö¥é¥ê¤Ç¤¢¤ê¡¢¼ÂºÝ¤Ë¿¸À¸ì¥Æ¥­¥¹¥È¤òÆþÎÏ¡¢É½¼¨¡¢ÊÔ½¸¤¹¤ë¾å¤ÇɬÍ×
+¤È¤Ê¤ë¾ðÊ󡢤¿¤È¤¨¤Ð¡¢¤É¤Î¤è¤¦¤ÊÊýË¡¤ÇÆþÎϤ¹¤ë¤«¡¢¤É¤Î¼ïÎà¤Î¥Õ¥©¥ó¥È¤Ç
+ɽ¼¨¤¹¤ë¤«¡¢¤É¤Î¤è¤¦¤Ê¼ê½ç¤Ç¸¡º÷¤¹¤ë¤«¤Ï¡¢³Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à
+¤Ç¼è°·¤ï¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Î¤¬¸½¾õ¤Ç¤¢¤ë¡£
+
+Ëܳ«È¯¤Ï¡¢Â¿¸À¸ì¥Æ¥­¥¹¥È¤òñ¤Ê¤ëʸ»úÎó¤È¤·¤Æ¤Ç¤Ï¤Ê¤¯¡¢¾åµ­¤Î¤è¤¦¤Ê¿¤¯
+¤Î¾ðÊó¤ò´Þ¤ó¤À¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤ÆÅý°ìŪ¤Ë¼è°·¤¦¤³¤È¤ò²Äǽ¤È¤·¡¢¤·¤«¤â·×
+»»µ¡¤òÍøÍѤ¹¤ëÍÍ¡¹¤Ê¾ìÌ̤ÇÍѤ¤¤ë¤³¤È¤¬¤Ç¤­¤ëLinux/Unix ÍÑÈÆÍѥ饤¥Ö¥é
+¥ê¤ò³«È¯¤¹¤ë¤â¤Î¤Ç¤¢¤ë¡£
+
+Ëܳ«È¯¤Ï¡¢¤³¤ÎÈÆÍѥ饤¥Ö¥é¥ê¤ò¥ª¡¼¥×¥ó¥½¡¼¥¹¥½¥Õ¥È¥¦¥¨¥¢
+¤È¤·¤ÆÄ󶡤¹¤ë¤³¤È¤òÌÜŪ¤È¤·¤Æ¤ª¤ê¡¢º£¸å¡¢À¤³¦¤Ë¤Þ¤À»Ä¤ë¡¢·×»»µ¡ÍøÍѤË
+¤ª¤±¤ë¸À¸ìŪ¾ãÊɤò·Ú¸º¤¹¤ë¤³¤È¤òÌܻؤ¹¤â¤Î¤Ç¤¢¤ë¡£
+
+
+\subsubsection{Unix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤Î°ÌÃ֤Ť±}
+
+Ëܳ«È¯¤Ç¼Â¸½¤¹¤ëUnix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½¥é¥¤¥Ö¥é¥ê¤ÎºÇ½ªÌÜɸ¤Ï¡¢ 
+Linux/Unix ¾å¤Î GNOME (GNU Network Object Model Environment)
+\footnote{GNOME¥×¥í¥¸¥§¥¯¥È¤Ï¡¢¥æ¡¼¥¶¤Ë¤Ï´°Á´¤Ë¥Õ¥ê¡¼¤Ç»È¤¤¤ä¤¹¤¤¥Ç¥¹
+¥¯¥È¥Ã¥×´Ä¶­¤ò¡¢¥½¥Õ¥È¥¦¥§¥¢³«È¯¼Ô¤Ë¤Ï¶¯ÎϤʥ¢¥×¥ê¥±¡¼¥·¥ç¥ó¥Õ¥ì¡¼¥à¥ï¡¼
+¥¯¤ò¡¢Ä󶡤¹¤ë¤â¤Î¤Ç¤¢¤ê¡¢¤Û¤È¤ó¤ÉÁ´¤Æ¤ÎBSD¤äGNU/Linux ¥Ç¥£¥¹¥È¥ê¥Ó¥å¡¼
+¥·¥ç¥ó¤Ë¼ýÏ¿¤µ¤ì¤Æ¤¤¤ë¡£} ¤Î¾å¤Ç¡¢Â¿¸À¸ìÂбþ¥½¥Õ¥È¥¦¥§¥¢¤Î³«È¯¤¬¤Ç
+¤­¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£¤³¤Î¤¿¤á¡¢Ëܥ饤¥Ö¥é¥ê¤Ï Gnome ¤¬ÍøÍѤ¹¤ë 
+Toolkit ¤«¤é¡¢¤Þ¤¿Â¿¸À¸ì²½¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤Î³«È¯¼Ô¤«¤éÍøÍѤµ¤ì¡¢¤½¤ì¤é¤Î
+´Ö¤Î¶¶ÅϤ·¤ò¤¹¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£Ëܥ饤¥Ö¥é¥ê¤ò Multilingualization
+(= Â¿¸À¸ì²½)¤ÎºÇ½é¤ÈºÇ¸å¤Îʸ»ú¤ò¤È¤Ã¤Æ¡Öm17n ¥é¥¤¥Ö¥é¥ê¡×¤È¸Æ¤Ö¤³¤È¤¬
+¤¢¤ê¡¢Ëܥ饤¥Ö¥é¥ê¤ÎÍ×ÁǤò¡Öm17n ´ðËÜ C ¥é¥¤¥Ö¥é¥ê¡×¤Ê¤É¤È¸Æ¤Ö¤³¤È¤¬¤¢
+¤ë¡£
+
+GNOME ¤ÇÍѤ¤¤é¤ì¤Æ¤¤¤ë¥Æ¥­¥¹¥È½èÍýµ¡Ç½¤Ï GTK (GIMP\footnote{GNU Image
+Manipulation Program} ToolKit) ¤Î¾å¤Ç¼Â¸½¤µ¤ì¤Æ¤ª¤ê¡¢ GTK ¤Ï¤µ¤é¤Ë C 
+¥é¥¤¥Ö¥é¥ê µÚ¤Ó X ¥é¥¤¥Ö¥é¥ê¤Î¾å¤Ç¼Â¸½¤µ¤ì¤Æ¤¤¤ë¡£¤·¤¿¤¬¤Ã¤Æ¡¢GNOME ¤Î
+¾å¤Ç¿¸À¸ìÂбþ¥½¥Õ¥È¥¦¥§¥¢¤ò³«È¯¤¹¤ë¤¿¤á¤Ë¤Ï¡¢GTK ¤Î¿¸À¸ì²½¤¬É¬Í×
+¤Ç¤¢¤ê¡¢¤½¤Î¤¿¤á¤Ë¤Ï¡¢¤½¤Î¥Ù¡¼¥¹¤È¤Ê¤Ã¤Æ¤¤¤ë C ¥é¥¤¥Ö¥é¥ê µÚ¤Ó X ¥é¥¤
+¥Ö¥é¥ê¤Î¿¸À¸ì²½¤¬É¬ÍפǤ¢¤ë¡£
+
+¸½ºß GNOME ¤Î¿¸À¸ì¥Æ¥­¥¹¥È½èÍý¤Ç¤Ï¡¢É½¼¨¤À¤±¤ò¹Ô¤Ê¤¦¤³¤È¤Î¤Ç¤­¤ëÏÈÁȤߠ
+PANGO (¦°¦Á¦Í¸ì)¤¬ÍѤ¤¤é¤ì¤Æ¤¤¤ë¡£¤·¤«¤· m17n ¥é¥¤¥Ö¥é¥ê ¼Â¸½¸å¤Ë¤Ï¡¢
+PANGO ¤Î¿¸À¸ì¥Æ¥­¥¹¥Èɽ¼¨¥¨¥ó¥¸¥ó¤ò GTK ¤Î²¼°Ì¼ÂÁõÁؤËÍѤ¤¡¢PANGO ¼«
+¿È¤Ï GTK ¤Î API ¡Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¡¦¥×¥í¥°¥é¥à¡¦¥¤¥ó¥¿¥Õ¥§¡¼¥¹¡Ë¤òÍøÍÑ
+¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤òÌܻؤ·¤Æ¤¤¤ë¡£
+
+GNOME ¤òÍѤ¤¤ë¤³¤È¤Ê¤¯ X Windows ¾å¤ÇľÀÜÆ°ºî¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤Ï¡¢ 
+X Windows ToolKit ¤ò»ÈÍѤ·¤Æ¤¤¤ë¡£¤·¤«¤· m17n ¥é¥¤¥Ö¥é¥ê¤Ç¤Ï¡¢X ¥é¥¤¥Ö
+¥é¥ê¤ËÂбþ¤¹¤ëÉôʬ¤Îµ¡Ç½Ä󶡤À¤±¤ò¹Ô¤Ê¤¤¡¢ToolKit ¤Î¿¸À¸ì²½¤Ï¹Ô¤Ê¤ï¤Ê¤¤¡£
+
+
+\subsubsection{Ëܥ饤¥Ö¥é¥ê¤ÎÆÃħ}
+
+%ɬÍפʤâ¤Î¤ÏM-text¤Ë¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤·¤Æ¤Ö¤Ã¹þ¤â¤¦¤È¤¤¤¦¤Î¤¬Ëܥ饤¥Ö¥é¥ê¤ÎÇä¤ê¤Ç¤¢¤ë¡£
+
+¿¸À¸ì½èÍý¤Ë¸Â¤é¤º¡¢¥Æ¥­¥¹¥È½èÍý¤ò¹Ô¤Ê¤¦ºÝ¤Ë¤·¤Ð¤·¤Ð¤ª¤³¤ëÌäÂê¤Ï¡¢Ê¸»ú¤Î
+Î󡢤¢¤ë¤¤¤Ïʸ»ú¥³¡¼¥É¤ÎÎ󤬻ý¤Ä¾ðÊó¤À¤±¤Ç¤Ï¡¢É¬ÍפʽèÍý¤ò¹Ô¤Ê¤¦¤Ë¤ÏÉÔ½½
+ʬ¤Ç¤¢¤ë¤È¤¤¤¦¤³¤È¤Ç¤¢¤ë¡£¼ÂºÝ¤Ë¥Æ¥­¥¹¥È½èÍý¤ò¹Ô¤Ê¤¦ºÝ¤Ë¤Ï¡¢¸À¸ì¾ðÊó¡¢¥¹
+¥¯¥ê¥×¥È¾ðÊó¡¢¥Õ¥©¥ó¥È¾ðÊó¡¢¥°¥ê¥Õ¾ðÊó¤Ê¤É¤¬É¬Íפˤʤë¾ì¹ç¤¬¤¢¤ë¡£¤½¤ì
+¤Ë¤â¤«¤«¤ï¤é¤º¡¢¤³¤ì¤é¤Î¾ðÊó¤Ïʸ»ú¥³¡¼¥É¤ÎÎó¤Ë¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¡£¤³¤ì¤Þ
+¤Ç¤Î¥½¥Õ¥È¥¦¥§¥¢¤Ç¤Ï¡¢¤³¤ÎÅÀ¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¡¢Êä­Ū¤Ê¾ðÊó¤òľÀÜ°ú¿ô¤È
+¤·¤ÆÍ¿¤¨¤¿¤ê¡¢Êä­Ū¤Ê¾ðÊó¤â´Þ¤á¤Æ¥Æ¥­¥¹¥È¤òɽ¸½¤¹¤ë¹½Â¤ÂΤòÆȼ«¤ËÄêµÁ
+¤·¤Æ¡¢¤½¤ì¤ò°ú¿ô¤È¤·¤Æ»ý¤Á²ó¤·¤¿¤ê¤·¤Æ¤¤¤ë¡£
+
+Ëܥ饤¥Ö¥é¥êÀß·×¾å¤ÎÆÃħ¤Ï¡¢Êä­¾ðÊó¤ò¤â´Þ¤ó¤À¥Æ¥­¥¹¥È¤òɽ¤ï¤¹¹½Â¤ÂΤòÄê
+µÁ¤·¡¢¤½¤ì¤ò½èÍý¤Î´ðËÜñ°Ì¤È¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£¤³¤ÎÆÃÊ̤ʹ½Â¤ÂΤò M-text¡¢
+Êä­Ū¤Ê¾ðÊó¤òÉղ乤뤿¤á¤Î»ÅÁȤߤò¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¸Æ¤Ö¡£
+
+M-text ¤Ë¤ª¤¤¤ÆÊä­Ū¤Ê¾ðÊó¤Ï¡¢¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤¤¤¦·è¤Þ¤Ã¤¿ÏÈÁȤß
+¤ò»È¤Ã¤Æɽ¤ï¤µ¤ì¤ë¡£¤³¤Î¤¿¤á¡¢Ê¸»ú¥³¡¼¥É¤À¤±¤Ç¤Ê¤¯Êä­¾ðÊó¤â¡¢Ê£¿ô¤Î¥½
+¥Õ¥È¥¦¥§¥¢¤ä¥ë¡¼¥Æ¥£¥ó¤Î´Ö¤Ç¶¦Í­¤Ç¤­¤ë¡£¤³¤Î»ÅÁȤߤϤµ¤é¤Ë¡¢´Ø¿ô¤Ë¾ðÊó
+¤òÅϤ¹¤¿¤á¤À¤±¤Ç¤Ï¤Ê¤¯¡¢´Ø¿ô¤«¤é¾ðÊó¤ò¼õ¤±¼è¤ë¤¿¤á¤Ë¤â»ÈÍѤǤ­¤ë¡£¤¿¤È
+¤¨¤Ð¡¢É½¼¨¥ë¡¼¥Æ¥£¥ó¤Ëɽ¼¨¤ò¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¤¿¤á¤ÎÀ©Ìó¾ðÊó¤òÍ¿¤¨¤ëºÝ¤Ë
+¤â¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤òÍѤ¤¡¢É½¼¨¥ë¡¼¥Æ¥£¥ó¤¬¤½¤ÎÀ©Ìó¤ÎÃæ¤Ç¶ñÂÎŪ¤Ë¤É¤¦
+¤¤¤¦É½¼¨¤ò¹Ô¤Ê¤Ã¤¿¤«¤Î¾ðÊó¤òÊ̤Υƥ­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤·¤ÆÊÖ¤¹¤³¤È¤â¡¢´Êñ
+¤Ë¼Â¸½¤Ç¤­¤ë¡£
+
+¤³¤Î¤è¤¦¤Ë¥Æ¥­¥¹¥È½èÍý¤Î´ðËÜñ°Ì¤È¤·¤Æ¡¢¤³¤ì¤Þ¤Ç¡ÖÊä­Ū¡×¤È¤µ¤ì¤Æ¤¤¤¿
+¾ðÊó¤â´Þ¤à M-text ¤òÍѤ¤¤ë¤³¤È¡¢¤½¤·¤Æ¤½¤Î·ë²Ì¥Æ¥­¥¹¥È¤Î¾ðÊó¤ò¿¤¯¤Î¥¢
+¥×¥ê¥±¡¼¥·¥ç¥ó¤¬Æ±¤¸ÊýË¡¤Ç°·¤¦¤³¤È¤Ï¡¢Â¿¸À¸ì²½¤òɬÍפȤ·¤Ê¤¤¤â¤Î¤ò´Þ¤á
+¥Æ¥­¥¹¥È¤ò½èÍý¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤¹¤Ù¤Æ¤Ëž´¹¤ò¤â¤¿¤é¤¹¤³¤È¤¬´üÂԤǤ­¤ë¡£
+
+\subsubsection{À߷פÎÀïά}
+
+Ëܥ饤¥Ö¥é¥ê¤Ç¤Ï¡¢Â¿¸À¸ì½èÍýµ¡Ç½¤Î¿·¤¿¤ÊÂηϤò³ÎΩ¤¹¤ë¤³¤È¤òÌܻؤ·¤Æ¤¤
+¤ë¡£¤³¤ÎÂηϤò¡Ö¿¸À¸ì²½¥¢¡¼¥­¥Æ¥¯¥Á¥ã¡×¤È¸Æ¤Ö¡£¤·¤«¤·¡¢¸½Â¸¤Î¥½¥Õ¥È¥¦¥§
+¥¢¤ÏÅöÁ³¸½»þÅÀ¤Ç¤Î¥Æ¥­¥¹¥È½èÍý¤Î¤¿¤á¤Î¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ë°Í¸¤·¤Æ¤¤¤ë¡£¤³
+¤Î¾õ¶·¤Ë´Õ¤ß¡¢¡Ö¿¸À¸ì²½¥¢¡¼¥­¥Æ¥¯¥Á¥ã¡×¤Ø¤Î°Ü¹Ô¤òÍưפˤ¹¤ë¤¿¤á¡¢¤Ç¤­
+¤ë¤À¤±¸½ºß¤Î¡Ö¥Æ¥­¥¹¥È½èÍý¥¢¡¼¥­¥Æ¥¯¥Á¥ã¡×¤È¤ÎÂбþ´Ø·¸¤¬ÌÀ³Î¤ÊÊýË¡¤ÇÀß
+·×¤ò¹Ô¤Ê¤¦¤È¤¤¤¦Êý¿Ë¤ò¤È¤ë¡£
+
+°Ê²¼¤Ç¤Ï¤³¤ÎÂбþ´Ø·¸¤òÀâÌÀ¤¹¤ë¡£
+
+C ¥é¥¤¥Ö¥é¥ê¤¬Ä󶡤¹¤ë¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Ï UNIX 98 ¡ÊUnix ¤Îɸ½à²½¤ò¼ê¤¬¤±
+¤Æ¤¤¤ë The OpenGroup ¤ÎºÇ¿·¤Î Unix ¤Ë´Ø¤¹¤ë»ÅÍ͡ˤˤè¤ì¤Ð 734 ¤¢¤ê¡¢¤½
+¤Î¤¦¤Á¡Ö¥Æ¥­¥¹¥È½èÍý¡×¤Ë´Ø¤¹¤ë¤â¤Î¤Ï 101 ¸Ä¤Ç¤¢¤ë¡£¤³¤ì¤é¤Î¤¦¤ÁÊ¿À®£±
+£´Ç¯ÅÙ¸å´ü¡ÁÊ¿À®£±£µÇ¯Å٤˳«È¯ºî¶È¤ò¹Ô¤Ê¤¦Í½Äê¤Ç¤¢¤ë¡Öm17n ´ðËÜ C ¥é¥¤¥Ö
+¥é¥ê¤«¤é´û¸¤Î¥í¥±¡¼¥ëµ¡Ç½¤òÍøÍѤ¹¤ë¼êË¡¤ÎÀ߷ספ˴ޤޤì¤ë¤Ù¤­¤â¤Î¤ò½ü
+¤¯¤È¡¢54 ¸Ä¤¬»Ä¤ë¡£¤½¤³¤Ç¡¢¡Öm17n ´ðËÜ C ¥é¥¤¥Ö¥é¥ê¡×¤Ç¤Ï¤³¤ì¤é 54 ¸Ä
+¤Î´Ø¿ô¤ËÂбþ¤¹¤ë´Ø¿ô¤òÄ󶡤¹¤ë¡£
+
+%appendix ¤ò³µÍפκǸå¤Ë¤¤¤ì¤ë¤Î¤«¤Ê¤¡¡£¡£¡£
+%mule:/project/mule/m17n-lib/README ¤Î APPENDIX A ¤Ë UNIX 98 
+%¤ÎÁ´ API ¤È m17n ´ðËÜ C ¥é¥¤¥Ö¥é¥ê¤È¤ÎÂбþ¤ò½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£
+
+¤Þ¤¿ X ¥é¥¤¥Ö¥é¥ê¤¬Ä󶡤¹¤ë¥é¥¤¥Ö¥é¥ê´Ø¿ô¤Ï 512 ¤¢¤ê¡¢¤½¤Î¤¦¤Á¡¢¡Ö¥Æ¥­
+¥¹¥È½èÍý¡×¤Ë´Ø¤¹¤ë¤â¤Î¤Ï 70 ¸Ä¤Ç¤¢¤ë¡£¡Öm17n X ¥é¥¤¥Ö¥é¥ê¡×¤Ç¤Ï¤³¤ì¤é 
+70 ¸Ä¤Î´Ø¿ô¤ËÂбþ¤¹¤ë´Ø¿ô¤òÄ󶡤¹¤ë¡£¤¿¤À¤·¤½¤Î¤¦¤Á 29 ¸Ä¤Ï¡Öm17n X ¥é
+¥¤¥Ö¥é¥ê¡×¤¬ÆâÉôŪ¤Ë½èÍý¤¹¤ë¤¿¤á API ¤È¤·¤ÆÄê¤á¤ëɬÍפ¬¤Ê¤¤¡£¤·¤¿¤¬¤Ã
+¤Æ¡¢»Ä¤ê¤Î 41 ¸Ä¤Î´Ø¿ô¤òÀ߷פ¹¤ë¡£
+
+%mule:/project/mule/m17n-lib/README ¤Î APPENDIX B ¤Ë X
+%library ¤ÎÁ´ API ¡Ê¤È»×¤ï¤ì¤ë¤â¤Î¡Ë¤È m17n ´ðËÜ C ¥é¥¤¥Ö¥é¥ê
+%¤È¤ÎÂбþ¤ò½ñ¤¤¤Æ¤¢¤ê¤Þ¤¹¡£
+
+¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Ï¤³¤ì¤é¤Î¥é¥¤¥Ö¥é¥ê¤«¤éÍøÍѤµ¤ì¤ë¤â¤Î¤È¤·¤ÆÀß
+·×¤¹¤ë¡£¤â¤Á¤í¤ó¤³¤ì¤é¤Î¥é¥¤¥Ö¥é¥ê¤òÍøÍѤ¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à
+¤Î³«È¯¼Ô¤Ï¡¢É¬Íפ˱þ¤¸¤Æ¼«Í³¤Ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÄêµÁ¤·¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×
+¥í¥°¥é¥à¤«¤éÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
+
+Ëܳ«È¯¤Ç¤ÎÀ߷פÎÂоݤϡ¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÆâÍƤǤϤʤ¯¡¢¤½¤ÎÏÈÁȤߡ¢¤Ä¤Þ¤ê
+¥Ç¡¼¥¿¥Ù¡¼¥¹¤¬Ä󶡤¹¤Ù¤­¾ðÊó¤Î¼ïÎà¤È·Á¼°¡¢¤½¤·¤Æ m17n ¥é¥¤¥Ö¥é¥ê¤¬¤½¤Î
+¾ðÊó¤ò¼èÆÀ¤¹¤ëÊýË¡¤Ç¤¢¤ë¡£
+
+¾ðÊó¤Î¼èÆÀÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¡¢³¬ÁØÀ­¤òÍøÍѤ·¤Æ¸úΨŪ¤Ê¸¡º÷¤ò¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­
+¤ë¤è¤¦À߷פ¹¤ë¡£Â¿¸À¸ì½èÍý¤ò¹Ô¤Ê¤¦ºÝ¤Ë¤Ï¡¢¸À¸ì¡¢¥í¥±¡¼¥ë¡¢¥¹¥¯¥ê¥×¥È¡¢Æþ
+ÎÏÊý¼°¤Ê¤É¤µ¤Þ¤¶¤Þ¤Ê¥¿¥°¤Çº÷°ú¤Å¤±¤é¤ì¤¿¡¢³¬ÁØÀ­¤ò»ý¤Ä¥Ç¡¼¥¿¥Ù¡¼¥¹¤«¤é
+¤Î¾ðÊó¼èÆÀ¤¬É¬¿Ü¤Ç¤¢¤ë¡£¤³¤ì¤ËÂбþ¤¹¤ë¤¿¤á¡¢³¬ÁØÀ­¤òɽ¸½¤¹¤ëÊ£¿ô¤Î¥¿¥°
+¤Ë¤è¤Ã¤Æ¾ðÊó¤Î¼ïÎà¤ò»Ø¼¨¤Ç¤­¤ëÏÈÁȤߡʤâ¤Á¤í¤óñ¿ô¥¿¥°¤Ë¤âÍѤ¤¤ë¤³¤È¤¬
+¤Ç¤­¤ë¡Ë¤ò¼Â¸½¤¹¤ë¡£
+
+¥Ç¡¼¥¿¥Ù¡¼¥¹¤¬»ý¤Ä¾ðÊó¤Î¼ïÎà¤È·Á¼°¤Ë´Ø¤·¤Æ¤Ï¡¢ºÇ¤âÈÆÍÑŪ¤Ê·Á¼°¤òÄ󶡤·¡¢
+Ʊ»þ¤ËÆä˸úΨ¤òɬÍפȤ¹¤ë¾ì¹ç¤ËÆÃÄê¤Î¾ðÊó¤ËÂФ·¤ÆÍѤ¤¤é¤ì¤ëÆÃÊ̤ʷÁ¼°
+¤òÄ󶡤¹¤ë¤È¤¤¤¦Êý¿Ë¤ò¤È¤ë¡£¤³¤ì¤Ë¤è¤Ã¤ÆÈÆÍÑÀ­¤È¸úΨÀ­¤òξΩ¤µ¤»¤Æ¤¤¤ë¡£
+¶ñÂÎŪ¤Ë¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤òľÀÜ¡¢¾ðÊó¤Î¼ïÎà
+¤Ë¤Ä¤¤¤ÆÀ©¸Â¤Ê¤·¤ËÍøÍѤǤ­¤ë°ìÊý¤Ç¡¢Ê¸»úËè¤Î¾ðÊó¤Î¤è¤¦¤ÊÂçÎ̥ǡ¼¥¿¤Ë¤Ä
+¤¤¤Æ¤Ï¥Ç¡¼¥¿¥Ù¡¼¥¹¤«¤é¤Î°ì³ç¼èÆÀ¤¬²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
+
+¤³¤Î¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ÎÏÈÁȤߤò¸¡¾Ú¤¹¤ë¤¿¤á¤Ë¡¢m17n ¥é¥¤¥Ö¥é¥ê¼«
+ÂΤ¬¼ÂºÝ¤Ë»È¤¦¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ¡¢Ê¸»ú¥»¥Ã¥È¡¢Ê¸»ú¤Î¥×¥í¥Ñ¥Æ¥£¡¢¥Õ¥©¥ó
+¥È¡¢ÆþÎϥ᥽¥Ã¥É¤Ë´Ø¤¹¤ë¤â¤Î¤Î°ìÉô¤ò»îºî¤¹¤ë¡£¤³¤ì¤é¤Î»îºî¤ÎºÝ¤Ë¤Ï¡¢¸½
+Unicode Ê¸»ú¤Ë¤Ä¤¤¤Æ¤Ï Unicode ¥³¥ó¥½¡¼¥·¥¢¥à
+\footnote{http://www.unicode.org/}¤ÎÄ󶡤¹¤ëUnicodeData.txt,
+Unihan.txt, SpecialCasing.txt¡¢Èó Unicode ¤ÎÈó CJK Ê¸»ú¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤½
+¤Î¼ï¤Îʸ»ú¥»¥Ã¥È¤Î¥Þ¥Ã¥×¾ðÊó¤ò¤â¤Ã¤È¤âÌÖÍåŪ¤Ë½¸¤á¤Æ¤¤¤ë IBM ¤Î ICU
+(International Components for
+Unicode)\footnote{http://oss.software.ibm.com/icu/}¡¢CJK Ê¸»ú¤Ë¤Ä¤¤¤Æ
+¤Ï¡¢¤½¤ì¤é¤Î¥Þ¥Ã¥×¾ðÊó¤ò¤â¤Ã¤È¤âÌÖÍåŪ¤Ë½¸¤á¤Æ¤¤¤ë¡¢°Â²¬¹§°ì»á¤Ë¤è¤ë´Á
+»ú¥Æ¡¼¥Ö¥ë¤Èʸ»ú½¸¹ç¥Æ¡¼¥Ö¥ë¤Î¥ê¥¹¥È
+\footnote{http://kanji.zinbun.kyoto-u.ac.jp/~yasuoka/CJK.html} ¤ò¥½¡¼¥¹¤È¤¹¤ë¡£
+
+\subsection{Ëܺî¶ÈǯÅ٤ˤª¤±¤ëµ»½Ñ³«È¯¹àÌܤÎÆâÍÆ}
+
+¤³¤³¤Ç¤Ï¡Öm17n´ðËÜC¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀ߷ס¢¡Öm17n X¥é¥¤¥Ö¥é¥ê¡×
+¤Î´ðËܵ¡Ç½¤ÎÀß·× ¡¢¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ÎÀ߷פγƹàÌܤ´¤È¤Ë¤½¤ÎÆâÍÆ
+¤òÀâÌÀ¤¹¤ë¡£
+
+\begin{enumerate}
+\input{m17n-basicC.tex}
+\input{m17n-X.tex}
+\input{m17n-database.tex}
+\end{enumerate}
+
+
diff --git a/data-ja/m17n-X.tex b/data-ja/m17n-X.tex
new file mode 100644 (file)
index 0000000..71f66e0
--- /dev/null
@@ -0,0 +1,95 @@
+%% -*- coding: euc-jp; -*-
+\item ¡Öm17n X¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀß·× 
+
+½¾Íè¡¢±Ñ¸ì°Ê³°¤Î¥Æ¥­¥¹¥È¤òɽ¼¨¤·¤¿¤êÆþÎϤ·¤¿¤ê¤¹¤ë¤¿¤á¤Ë¤Ï¡¢³Æ¥¢¥×¥ê¥±¡¼
+¥·¥ç¥ó¥×¥í¥°¥é¥à¤¬¤½¤Î¤¿¤á¤ÎÊ£»¨¤Ê¥³¡¼¥É¤ò»ý¤ÄɬÍפ¬¤¢¤Ã¤¿¡£¡Öm17n X¥é
+¥¤¥Ö¥é¥ê¡×¤Ç¤Ï¡¢±Ñ¸ì°Ê³°¤ò¤â´Þ¤à¿¸À¸ì¥Æ¥­¥¹¥È¤ò´ÊÊؤËɽ¼¨¤·ÆþÎϤ¹¤ë¤³
+¤È¤¬¤Ç¤­¤ë API ¤òÀ߷פ¹¤ë¤³¤È¤òÌÜɸ¤È¤·¤¿¡£
+
+Æþ½ÐÎϤ˴ؤ·¤Æ¤Ï¡¢»ÈÍѤ·¤Æ¤¤¤ë¥¦¥£¥ó¥É¥¦¥·¥¹¥Æ¥à¤Ë±þ¤¸¤¿¥é¥¤¥Ö¥é¥ê¤¬É¬
+ÍפȤʤ롣Ëܵ»½Ñ³«È¯¤Ç¤Ï¡¢¸½ºß Unix/Linux ÍøÍѼԤ˹­¤¯ÍѤ¤¤é¤ì¤Æ¤¤¤ëX 
+¥¦¥£¥ó¥É¥¦¥·¥¹¥Æ¥à¾å ¤Ç M-text ¤Çɽ¤ï¤µ¤ì¤ë¿¸À¸ì¥Æ¥­¥¹¥È¤òɽ¼¨¤·¡¢ÆþÎÏ
+¤¹¤ëµ¡Ç½¤Î´ðËÜÉôʬ¤Î¤¿¤á¤Î API ¤òÀ߷פ·¤¿¡£À߷פˤ¢¤¿¤Ã¤Æ¤Ï¡¢ X ¥é¥¤¥Ö
+¥é¥ê¤ä¡¢²áµî¤Ë²æ¡¹¼«¿È¤¬¹Ô¤Ê¤Ã¤Æ¤­¤¿¥¨¥Ç¥£¥¿¤Î¿¸À¸ì²½¤Î·Ð¸³¤Ë´ð¤Å¤¤¤Æ¸¡
+Ƥ¤ò¹Ô¤Ê¤Ã¤¿¡£¸¡Æ¤¤Î·ë²ÌÆÀ¤é¤ì¤¿ API ¤Ï¡¢¿·¤¿¤ËÄêµÁ¤µ¤ì¤¿¹½Â¤ÂΠM-text 
+¤ËÂбþ¤¹¤ë¤¿¤á¤Ë X ¥é¥¤¥Ö¥é¥ê¤Î¥Æ¥­¥¹¥È½èÍýµ¡Ç½¤ò³ÈÄ¥¤·¤¿¤â¤Î¤È¡¢
+M-text ¤Î¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤¤¤¦»ÅÁȤߤòÍѤ¤¤Æɽ¼¨¤Ë´Ø¤¹¤ë¾ðÊó¤òÊÝ»ý
+¤¹¤ë¤â¤Î¤ËÂçÊ̤Ǥ­¤ë¡£
+
+¿¸À¸ì¥Æ¥­¥¹¥È¤Îɽ¼¨¤ò¹Ô¤Ê¤¦¤¿¤á¤Î API ¤Ç¤Ï¡¢É½¼¨¤ËɬÍפʾðÊó¤ò¼«Æ°Åª¤Ë
+·èÄꤹ¤ë¤³¤È¤¬¤Ç¤­¡¢¤«¤Ä¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à¤«¤é¤½¤Î·èÄê¤ò¥³¥ó¥È
+¥í¡¼¥ë¤Ç¤­¤ë¤³¤È¤òÌÜɸ¤È¤·¤ÆÀ߷פ·¤¿¡£É½¼¨¤ËɬÍפʾðÊó¤È¤Ï¡¢¥Æ¥­¥¹¥È¤Î
+³Æʸ»ú¤¬¤É¤Î¥Õ¥©¥ó¥È¤òÍѤ¤¤ì¤Ðɽ¼¨¤Ç¤­¤ë¤«¡¢Ê£»¨¤Êʸ»ú¹çÀ®¤¬É¬Íפʥ¹¥¯
+¥ê¥×¥È¤òɽ¼¨¤¹¤ëºÝ¤Ë¤Ï¤É¤Î¤è¤¦¤Ê¥ë¡¼¥Æ¥£¥ó¤¬É¬Íפ«¡¢¤Ê¤É¤Ç¤¢¤ë¡£
+
+¿¸À¸ì¥Æ¥­¥¹¥È¤ÎÆþÎϤò¹Ô¤Ê¤¦¤¿¤á¤Î API ¤Ç¤Ï¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à
+¤¬Ê£¿ô¤Î¸À¸ì¤½¤ì¤¾¤ì¤ËÂбþ¤·¤¿³ÆÆþÎϥ᥽¥Ã¥É¤ò¡¢Æ±»þ¤Ë»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç
+¤­¤ë¤³¤È¤òÌÜɸ¤È¤·¤ÆÀ߷פ·¤¿¡£
+
+\begin{enumerate}
+
+\item ½¾Íè¤ÎX¥é¥¤¥Ö¥é¥ê¤Îfontset¤ò°·¤¦´Ø¿ô¤òM-textÍѤ˳ÈÄ¥¤¹¤ëµ¡Ç½¤ÎÀß·×
+
+X¥é¥¤¥Ö¥é¥ê¤Îfontset¤ò°·¤¦´Ø¿ô¤òM-textÍѤ˳ÈÄ¥¤¹¤ë¤¿¤á¤Ë¡¢°Ê²¼¤Î¤â¤Î¤ò
+À߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item M-textɽ¼¨ÍѤ˳ÈÄ¥¤µ¤ì¤¿fontset¤Î¹½Â¤ÂÎ\par 
+       ¹½Â¤ÂΠ\IPAref{MFontset}¤òÀ߷פ·¤¿¡£
+     \item fontset¤Î¹½Â¤ÂΤòÀ¸À®¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mfontset}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+     
+\item M-text¤Ë¤ª¤±¤ëɽ¼¨¾åɬÍפʥƥ­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤òÉղ乤뵡ǽ¤ÎÀß·×
+
+¤¢¤ë M-text¤ò X Window ¾å¤Çɽ¼¨¤¹¤ëºÝ¤Ë¤Ï¡¢M-text ¤ËŬÀڤʥƥ­¥¹¥È¥×¥í
+¥Ñ¥Æ¥£¤òÉղ乤ëɬÍפ¬¤¢¤ë¡£¤³¤Î¤¿¤á¤Ë°Ê²¼¤Î´Ø¿ô¤òÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item ¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤«¤éÆÀ¤é¤ì¤ë¾ðÊó¤ò¸µ¤Ë¡¢M-text
+       Ãæ¤Î³Æʸ»ú¤òɽ¼¨¤¹¤ë¤¿¤á¤Ë»ÈÍѤ¹¤ë¥Õ¥©¥ó¥È¤Î¾ðÊó¤ò¡¢¥Æ¥­¥¹¥È¥×
+       ¥í¥Ñ¥Æ¥£¤È¤·¤ÆÉղ乤뵡ǽ\par ´Ø¿ô \IPAref{mdraw_add_font}¤òÀß
+       ·×¤·¤¿¡£
+
+      \item ¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤«¤éÆÀ¤é¤ì¤ë¾ðÊó¤ò¸µ¤ËM-text¤òɽ¼¨¤¹
+       ¤ë¾ì¹ç¤Ë¡¢¹Ôʬ³ä²ÄǽÅÀ¤òȽÃǤ¹¤ë¤¿¤á¤Î´Ø¿ô¤ò¡¢¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£
+       ¤È¤·¤ÆÉղ乤뵡ǽ\par ´Ø¿ô 
+       \IPAref{mtext_put_linebreaker_prop}¤òÀ߷פ·¤¿¡£¡Ê¥é¥¤¥Ö¥é¥êÁ´
+       ÂΤÎÀ߷פò¸¡Æ¤¤·¤¿·ë²Ì¡¢m17n ´ðËÜC¥é¥¤¥Ö¥é¥ê¤Î°ìÉô¤È¤·¤ÆÀ߷פ·
+       ¤¿¡£¡Ë
+
+     \end{itemize}
+     
+\item ½¾Íè¤ÎX¥é¥¤¥Ö¥é¥ê¤Îʸ»úÎóɽ¼¨´Ø¿ô¤òM-textÍѤ˳ÈÄ¥¤¹¤ëµ¡Ç½¤ÎÀß·×
+
+½¾Íè¤ÎX¥é¥¤¥Ö¥é¥ê¤Îʸ»úÎóɽ¼¨´Ø¿ô¤Ï¡¢M-text ¤Ë¤½¤Î¤Þ¤ÞŬÍѤ¹¤ë¤³¤È¤¬¤Ç
+¤­¤Ê¤¤¡£¤½¤³¤ÇM-text¤Çɽ¸½¤µ¤ì¤¿Ê¸»úÎó¤ËÂФ·¤ÆƱÅù¤Îɽ¼¨¤¬¤Ç¤­¤ë¤è¤¦³È
+Ä¥¤¹¤ë¤¿¤á¤Ë¡¢°Ê²¼¤Î¤â¤Î¤òÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item X¥é¥¤¥Ö¥é¥ê¤Î¹½Â¤ÂÎTextItem¤òM-textÍѤ˳ÈÄ¥¤·¤¿¹½Â¤ÂÎ\par 
+       ¹½Â¤ÂΠ\IPAref{MTextItem}¤òÀ߷פ·¤¿¡£
+      \item M-text¤Î»ØÄꤷ¤¿ÈϰϤÎʸ»ú¤ò¡¢¥Ç¥£¥¹¥×¥ì¥¤¤Î»ØÄꤷ¤¿°ÌÃÖ¤Ëɽ¼¨¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mdraw_text}¤òÀ߷פ·¤¿¡£
+      \item M-text¤Î»ØÄꤷ¤¿ÈϰϤÎʸ»ú¤ò¡¢¥Ç¥£¥¹¥×¥ì¥¤¤Î»ØÄꤷ¤¿°ÌÃ֤˥¤¥á¡¼¥¸¤È¤·¤Æɽ¼¨¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mdraw_image_text}¤òÀ߷פ·¤¿¡£
+      \item Ê£¿ô¤ÎM-text¤ò¥Ç¥£¥¹¥×¥ì¥¤¤Î»ØÄꤷ¤¿°ÌÃÖ¤Ëɽ¼¨¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mdraw_text_items}¤òÀ߷פ·¤¿¡£ 
+      \item M-text¤òɽ¼¨¤¹¤ëºÝ¤Îɽ¼¨¥¨¥ê¥¢¤ÎÂ礭¤µ¤òÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{mdraw_text_extents}¤òÀ߷פ·¤¿¡£
+      \item M-text¤òɽ¼¨¤¹¤ëºÝ¤Î³Æʸ»úËè¤Îɽ¼¨¥¨¥ê¥¢¤ÎÂ礭¤µ¤òÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{mdraw_per_char_extents}¤òÀ߷פ·¤¿¡£ 
+     \end{itemize}
+     
+\item ½¾Íè¤ÎX¥é¥¤¥Ö¥é¥ê¤Îʸ»úÎóÆþÎÏ´Ø¿ô¤òM-textÍѤ˳ÈÄ¥¤¹¤ëµ¡Ç½¤ÎÀß·×
+
+½¾Íè¤ÎX¥é¥¤¥Ö¥é¥ê¤Îʸ»úÎóÆþÎÏ´Ø¿ô¤Ï¡¢M-text ¤Ë¤½¤Î¤Þ¤ÞŬÍѤ¹¤ë¤³¤È¤¬¤Ç
+¤­¤Ê¤¤¡£¤½¤³¤ÇM-text¤Çɽ¸½¤µ¤ì¤ëʸ»úÎóÆþÎÏÍѤ˳ÈÄ¥¤¹¤ë¤¿¤á¤Ë¡¢°Ê²¼¤Î¤â
+¤Î¤òÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item X¤ÎÆþÎϥ᥽¥Ã¥É¤ò»ÈÍѤ·¤ÆÆþÎϤµ¤ì¤¿¥Æ¥­¥¹¥È¤ò¡¢M-text¤È¤·¤Æ
+       ÊÖ¤¹µ¡Ç½\par ´Ø¿ô \IPAref{mim_lookup_text}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+     
+\end{enumerate}
diff --git a/data-ja/m17n-basicC.tex b/data-ja/m17n-basicC.tex
new file mode 100644 (file)
index 0000000..0d9fc42
--- /dev/null
@@ -0,0 +1,204 @@
+%% -*- coding: euc-jp; -*-
+\item ¡Öm17n´ðËÜC¥é¥¤¥Ö¥é¥ê¡×¤Î´ðËܵ¡Ç½¤ÎÀß·×
+
+Ëܵ»½Ñ³«È¯¤Ç¤Ï¡¢Â¿¸À¸ì¥Æ¥­¥¹¥ÈÍѤΠC ¤Î¥Ç¡¼¥¿¹½Â¤¤È¤·¤Æ M-text ¤òÄó°Æ
+¤·¡¢¤³¤Î¹½Â¤ÂΤò½èÍý¤ª¤è¤ÓÍøÍѤ¹¤ë¤¿¤á¤Î´ðËܵ¡Ç½¤ò¼Â¸½¤¹¤ë¤¿¤á¤Î API 
+¤òÀ߷פ·¤¿¡£¤³¤ì¤é¤Îµ¡Ç½¤ÎÌÜɸ¤Ï¡¢³Æ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à¤¬¡¢½¾Íè
+¤Î C-string ¤ÈƱÅù¤Ë M-text ¤ò°·¤¦¤³¤È¡¢¤½¤·¤Æ M-text ¤Î½ÅÍפÊÀ­¼Á¤Ç¤¢
+¤ë¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤òÍưפËÁàºî¤¹¤ë¤³¤È¡¢¤Î£²ÅÀ¤ò¼Â¸½¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£
+
+¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à¤¬Â¿¸À¸ìʸ½ñ¤ò°·¤¦¾ì¹ç¤Ë¤Ï¡¢¾ï¤ËɬÍפȤʤë´ð
+ËÜŪ¤Êµ¡Ç½¤¬Â¸ºß¤¹¤ë¡£Ëܥ饤¥Ö¥é¥ê¤ÎÀ߷פˤ¢¤¿¤Ã¤Æ¤Ï¡¢É¸½àŪ¤Ê C ¥é¥¤
+¥Ö¥é¥ê¤Î¥Æ¥­¥¹¥È½èÍý´Ø¿ô¤ä¡¢²áµî¤Ë²æ¡¹¼«¿È¤¬¹Ô¤Ê¤Ã¤Æ¤­¤¿¥¨¥Ç¥£¥¿¤Î¿¸À¸ì
+²½¤Î·Ð¸³¤Ê¤É¤«¤é¸¡Æ¤¤·¤¿·ë²Ì¡¢¤½¤Î¤è¤¦¤Ê´ðËܵ¡Ç½¤ÎɬÍ׺ÇÄã¸Â¤Î¤â¤Î¤È¤·
+¤Æ°Ê²¼¤òÀö¤¤½Ð¤·¤¿¡£¡Öm17n´ðËÜC¥é¥¤¥Ö¥é¥ê¡×¤Ï°Ê²¼¤Î´ðËܵ¡Ç½¤ò¥¢¥×¥ê¥±¡¼
+¥·¥ç¥ó¥×¥í¥°¥é¥à¤ËÄ󶡤¹¤ë¤â¤Î¤Ç¤¢¤ê¡¢Ëܳ«È¯¤Ç¤Ï¤½¤Î¤¿¤á¤Î API ¤òÀß·×
+¤·¤¿¡£
+
+     \begin{itemize}
+
+     \item Â¿¸À¸ì¥Æ¥­¥¹¥È¤òɽ¤ï¤¹¥é¥¤¥Ö¥é¥êÆâÉô¤Î¹½Â¤ÂÎM-text¡¢¤Ê¤é¤Ó
+     ¤ËM-text¤Î½èÍý¤Ë´Ø¤ï¤ë¥é¥¤¥Ö¥é¥êÆâÉô¤Î¹½Â¤ÂΡ£
+
+     \item M-text¤ÎÀ¸À®¡¢´ÉÍýµÚ¤ÓÆâÉô¤Îʸ»ú¤Ø¤Î¥¢¥¯¥»¥¹µ¡Ç½¡£
+
+     \item ¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Î½èÍýµ¡Ç½¡£¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤Ï¡¢Â¿¸À
+     ¸ì¥Æ¥­¥¹¥È¤Ë´Ø¤¹¤ë¤µ¤Þ¤¶¤Þ¤Ê°À­¤òɽ¤ï¤¹¾ðÊó¤Ç¤¢¤ê¡¢¹½Â¤ÂΠM-text 
+     ¤ò»È¤Ã¤Æ¿¸À¸ì¥Æ¥­¥¹¥È¤ËÉղ䵤ì¤ë¡£
+
+     \item C-stringµÚ¤ÓM-text´Ö¤Ë¤ª¤±¤ë¥Ç¥³¡¼¥ÀµÚ¤Ó¥¨¥ó¥³¡¼¥Àµ¡Ç½¡£
+     Â¿Íͤʥե©¡¼¥Þ¥Ã¥È¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Æ¥­¥¹¥È¤È M-text ¤Î´Ö¤Ç
+     ÊÑ´¹¤ò¹Ô¤Ê¤¦¡£
+
+     \item ½¾Íè¤ÎC¥é¥¤¥Ö¥é¥ê ¤Ë¤ª¤¤¤ÆC-string¤ò°·¤¦½èÍý¤ËÁêÅö¤¹¤ë¡¢
+     M-text¤ò°·¤¦½èÍýµ¡Ç½¡£
+
+     \item Â¿¸À¸ì½èÍý¤ËɬÍפʾðÊó¤òM-text¤ËÉղ乤뵡ǽ¡£
+
+     \end{itemize}
+
+m17n ¥é¥¤¥Ö¥é¥ê¤Ïʸ»ú¤ò 21 ¥Ó¥Ã¥È°Ê¾å¤ÎÈóÉéÀ°¿ô¤Çɽ¤ï¤¹¡£¤½¤Î¤¦¤Á 0 ¤«¤é 
+0x10FFFF ¤Þ¤Ç¤Ï Unicode ¤ò¤½¤Î¤Þ¤Þ¥Þ¥Ã¥×¤·¤¿¤â¤Î¤Ç¤¢¤ë¡£¤¹¤Ê¤ï¤Á¡¢
+Unicode ¤Î¤¹¤Ù¤Æ¤Îʸ»ú¤Î¾¡¢¤½¤ì¤ÈƱ¤¸¤À¤±¤Î¿ô¤ÎÈó Unicode Ê¸»ú¤ò°·¤¦
+¤³¤È¤¬¤Ç¤­¤ëµðÂç¤Êʸ»ú¶õ´Ö¤ò°·¤¦¤³¤È¤¬¤Ç¤­¤ë¡£¤³¤ÎµðÂç¶õ´ÖÆâ¤Ç¡¢Ê¸»úËè
+¤Î¾ðÊó¤ò¸úΨÎɤ¯³ÊǼ¤¹¤ë¤¿¤á¤ËÆÃÊ̤ʹ½Â¤ÂΠCharTable ¤òÀ߷פ·¤¿¡£
+
+
+°Ê²¼¤Ç¤Ï¡¢¾åµ­³Æµ¡Ç½¼Â¸½¤Î¤¿¤á¤Ë³«È¯¤·¤¿ÆâÍƤˤĤ¤¤ÆÀâÌÀ¤¹¤ë¡£
+
+\begin{enumerate}
+
+\item Â¿¸À¸ì¥Æ¥­¥¹¥È¤òɽ¤ï¤¹¥é¥¤¥Ö¥é¥êÆâÉô¤Î¹½Â¤ÂÎM-text¡¢¤Ê¤é¤Ó¤Ë 
+M-text¤Î½èÍý¤Ë´Ø¤ï¤ë¥é¥¤¥Ö¥é¥êÆâÉô¤Î¹½Â¤ÂÎ
+
+m17n ¥é¥¤¥Ö¥é¥ê¤Ï¡¢Ä̾ï C ¸À¸ì¤ÇÍѤ¤¤é¤ì¤ë C-string (\texttt{char *} ¤ä 
+\texttt{unsigned char *}) ¤Ç¤Ï¤Ê¤¯¡¢ M-text ¤È¸Æ¤ÖÆÃÊ̤ʥª¥Ö¥¸¥§¥¯¥È¤ò»È¤Ã¤Æ¥Æ
+¥­¥¹¥È¤òɽ¸½¤¹¤ë¡£M-text ¤ÏŤµ0°Ê¾å¤Îʸ»ú¤ÎÎ󤫤é¤Ê¤ê¡¢¤µ¤Þ¤¶¤Þ¤Êʸ»ú
+¤Î¥½¡¼¥¹¡ÊÎ㤨¤Ð C-string¡¢¥Õ¥¡¥¤¥ë¡¢Ê¸»úÅù¡Ë¤«¤éºîÀ®¤Ç¤­¤ë¡£
+
+M-text ¤Ï C-string ¤È¤Ï°Û¤Ê¤ê¡¢Èó¾ï¤Ë¿¤¯¤Î¼ïÎà¤Îʸ»ú¤ò¡¢Æ±»þ¤Ë¡¢º®ºß
+¤µ¤»¤Æ¡¢Æ±Åù¤Ë°·¤¦¤³¤È¤¬¤Ç¤­¤ë¡£¤³¤ì¤Ï¿¸À¸ì¥Æ¥­¥¹¥È¤ò°·¤¦¾å¤Ç¤Ïɬ¿Ü¤Î
+µ¡Ç½¤Ç¤¢¤ë¡£¤³¤Î¤¿¤á¤Ë°Ê²¼¤Î¹½Â¤ÂΤòÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item M-text¹½Â¤ÂÎ\par ¹½Â¤ÂΠ\IPAref{MText}¤òÀ߷פ·¤¿¡£
+     \item M-text¤ÎÃæ¤Î¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Î¹½Â¤ÂÎ\par ¹½Â¤ÂΠ\IPAref{MText->MPlist}¤òÀ߷פ·¤¿¡£
+     \item C-string¤«¤éM-text¤Ø¤ÎÊÑ´¹¤Î¤¿¤á¤Î¹½Â¤ÂÎ\par ¹½Â¤ÂΠ\IPAref{MCodingSystem} ¤È \IPAref{MConverter}¤òÀ߷פ·¤¿¡£
+     \item M-text¤«¤éC-string¤Ø¤ÎÊÑ´¹¤Î¤¿¤á¤Î¹½Â¤ÂÎ\par ¹½Â¤ÂΠ\IPAref{MCodingSystem} ¤È \IPAref{MConverter}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+
+\item M-text¤ÎÀ¸À®¡¢´ÉÍýµÚ¤ÓÆâÉô¤Îʸ»ú¤Ø¤Î¥¢¥¯¥»¥¹µ¡Ç½
+
+M-text ¤ËÂФ¹¤ë¤â¤Ã¤È¤â´ðËÜŪ¤Ê¥ì¥Ù¥ë¤Îµ¡Ç½¤ò¼Â¸½¤¹¤ë¤¿¤á¡¢°Ê²¼¤òÀ߷פ·¤¿¡£ 
+
+     \begin{itemize}
+     \item ¶õ¤ÎM-text¤òÊÖ¤¹µ¡Ç½\par ´Ø¿ô \IPAref{mtext}¤òÀ߷פ·¤¿¡£
+     \item M-text¤È¤·¤Æ³äÅö¤é¤ì¤¿¥á¥â¥ê¤ò²òÊü¤¹¤ëµ¡Ç½ \par 
+           ´Ø¿ô\IPAref{mtext_free}¤òÀ߷פ·¤¿¡£
+     \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃÖ¤Îʸ»ú¤òÊÖ¤¹µ¡Ç½ \par
+           ´Ø¿ô \IPAref{mtext_ref_char}¤òÀ߷פ·¤¿¡£
+     \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤˻ØÄꤷ¤¿Ê¸»ú¤òÆþ¤ì¤ëµ¡Ç½ \par
+           ´Ø¿ô \IPAref{mtext_set_char}¤òÀ߷פ·¤¿¡£
+     \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃÖ \texttt{FROM} ¤«¤é¡¢
+           »ØÄꤷ¤¿°ÌÃÖ \texttt{TO} ¤Î´Ö¤Î¥Æ¥­¥¹¥È¤ò¼è¤ê½Ð¤¹µ¡Ç½ \par
+          ´Ø¿ô \IPAref{mtext_duplicate}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+
+\item ¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Î½èÍýµ¡Ç½
+
+M-text Æâ¤Î³Æʸ»ú¤Ï¡¢¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¸Æ¤Ö¥×¥í¥Ñ¥Æ¥£¤ò»ý¤Ä¤³¤È¤¬¤Ç
+¤­¤ë¡£¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Ë¤è¤Ã¤Æ¡¢¥Æ¥­¥¹¥È¤Î³ÆÉô°Ì¤Ë´Ø¤¹¤ëÍÍ¡¹¤Ê¾ðÊó¤ò
+M-text Æâ¤ËÊÝ»ý¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£¤½¤Î¤¿¤á¡¢¤½¤ì¤é¤Î¾ðÊó¤ò¥¢¥×¥ê¥±¡¼¥·¥ç
+¥óÆâ¤ÇÅý°ìŪ¤Ë°·¤¦¤³¤È¤¬¤Ç¤­¤ë¡£¤Þ¤¿¡¢M-text ¼«ÂΤ¬Ë­É٤ʾðÊó¤ò»ý¤Ã¤Æ
+¤¤¤ë¤¿¤á¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥óÃæ¤Î³Æ´Ø¿ô¤ò´ÊÁDz½¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
+
+¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Ë´Ø¤¹¤ë½èÍýµ¡Ç½¤ò¼Â¸½¤¹¤ë¤¿¤á¤Ë¡¢°Ê²¼¤òÀ߷פ·¤¿¡£ 
+
+     \begin{itemize}
+     \item ¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤·¤Æ»ØÄê¤Ç¤­¤ë¥·¥ó¥Ü¥ë¤òÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{msymbol}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˤª¤±¤ë¡¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Î¥È¥Ã¥×¤ÎÃͤòÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_get_prop}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˤª¤±¤ë¡¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÁ´¤Æ¤ÎÃͤòÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_get_prop_values}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˡ¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÀßÄꤹ¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_put_prop}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˡ¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¡¢Ê£¿ô¤Þ¤È¤á¤ÆÀßÄꤹ¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_put_prop_values}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˡ¢¿·¤¿¤Ë»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÄɲ乤뵡ǽ\par 
+       ´Ø¿ô \IPAref{mtext_push_prop}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˤª¤±¤ë¡¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Î¥È¥Ã¥×¤ÎÃͤòºï½ü¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_pop_prop}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃ֤ˤª¤±¤ë¡¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¡¢»ØÄꤷ¤¿´Ø¿ô¤Ë¤è¤Ã¤ÆÊѹ¹¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_change_prop}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃְʹߤǡ¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ¬ÊѤï¤ë°ÌÃÖ¤òÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_prop_range}¤òÀ߷פ·¤¿¡£
+      \item M-textÃæ¤Î»ØÄꤷ¤¿°ÌÃÖ°ÊÁ°¤Ç¡¢»ØÄꤷ¤¿¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ¬ÊѤï¤ë°ÌÃÖ¤òÊÖ¤¹µ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_prop_range}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+     
+\item C-stringµÚ¤ÓM-text´Ö¤Ë¤ª¤±¤ë¥Ç¥³¡¼¥ÀµÚ¤Ó¥¨¥ó¥³¡¼¥Àµ¡Ç½
+
+À¤³¦Ãæ¤Ç¥Í¥Ã¥È¥ï¡¼¥¯¤òήÄ̤·¡¢¥Õ¥¡¥¤¥ë¤ËÊݸ¤µ¤ì¡¢¥­¡¼¥Ü¡¼¥É¤«¤éÆþÎϤµ
+¤ì¤ëʸ»ú¤Ï¡¢¤µ¤Þ¤¶¤Þ¤ÊÊýË¡¤Ç¥¨¥ó¥³¡¼¥É¤µ¤ì¤Æ¤¤¤ë¡£Â¿¸À¸ì½èÍý¤Î¤¿¤á¤Ë¤Ï¡¢
+ÆÃÄê¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Çɽ¤ï¤µ¤ì¤¿Ê¸»úÎó¤ò M-text ¤Ë¡¢¤½¤·¤Æ M-text ¤ò»Ø
+Äꤷ¤¿¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Ç¤Îɽ¸½¤Ø¤ÈÊÑ´¹¤¹¤ë¼êË¡¤¬É¬ÍפǤ¢¤ë¡£
+
+¤³¤Î¤¿¤á¤Ë¡¢°Ê²¼¤òÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item ¥Ç¥³¡¼¥À¤ò½é´ü²½¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mconverter}¤òÀ߷פ·¤¿¡£
+      \item ¥¨¥ó¥³¡¼¥À¤ò½é´ü²½¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mconverter}¤òÀ߷פ·¤¿¡£
+      \item C¤Îʸ»úÎó¤ò»ØÄꤷ¤¿¥Ç¥³¡¼¥À¤ÇM-text¤ËÊÑ´¹¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_decode}¤òÀ߷פ·¤¿¡£
+      \item M-text¤ò»ØÄꤷ¤¿¥¨¥ó¥³¡¼¥À¤ÇC¤Îʸ»úÎó¤ËÊÑ´¹¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_encode}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+     
+Ëܥ饤¥Ö¥é¥ê¤¬¥µ¥Ý¡¼¥È¤¹¤ë¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Êý¼°¤Ï UTF-8¡¢UTF-16¡¢
+ISO-2022¡¢DIRECT-CHARSET¡¢¤½¤Î¾¤ËÂçÊ̤µ¤ì¤ë¡£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬Æȼ«¤Ë 
+¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Êý¼°¤òÄɲ乤뤳¤È¤â¤Ç¤­¤ë¡£¸Ä¡¹¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¥Ð
+¥¤¥ÈÎó¤ò»ØÄꤵ¤ì¤¿¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Êý¼°¤Ë¤è¤Ã¤Æ¥Ç¥³¡¼¥É¤·¤ÆM-text ¤òÆÀ
+¤ë¤³¤È¤¬¤Ç¤­¤ë¡£¤Þ¤¿µÕ¤Ë»ØÄꤵ¤ì¤¿¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°Êý¼°¤ò¤Ë¤è¤Ã¤Æ 
+M-text ¤ò¥¨¥ó¥³¡¼¥É¤·¥Ð¥¤¥ÈÎó¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
+
+\item ½¾Íè¤ÎC¥é¥¤¥Ö¥é¥ê ¤Ë¤ª¤¤¤ÆC-string¤ò°·¤¦½èÍý¤ËÁêÅö¤¹¤ë¡¢M-text¤ò°·¤¦½èÍýµ¡Ç½¤ÎÀß·×
+
+C¸À¸ì¤Îɸ½à¥é¥¤¥Ö¥é¥ê´Ø¿ô¤È¤·¤Æ¡¢°ìÏ¢¤Îʸ»úÎó½èÍý´Ø¿ô¤¬¹­¤¯Ä󶡤µ¤ì¡¢
+ÍѤ¤¤é¤ì¤Æ¤¤¤ë¡£¤³¤ì¤é¤Ï C-string ¤òÂоݤȤ¹¤ë¤â¤Î¤Ç¤¢¤ê¡¢M-text ¤Ë¤½
+¤Î¤Þ¤ÞŬÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Ê¤¤¡£¤½¤³¤ÇM-text¤Çɽ¸½¤µ¤ì¤¿Ê¸»úÎó¤ËÂФ·¤ÆƱ
+Åù¤Î½èÍýµ¡Ç½¤òÄ󶡤¹¤ë¤â¤Î¤È¤·¤Æ°Ê²¼¤Î´Ø¿ô¤òÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item Ê¸»úÎó¤òÏ¢·ë¤¹¤ë´Ø¿ô\texttt{strcat}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_cat}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤òºÇÂçn¸ÄÏ¢·ë¤¹¤ë´Ø¿ô\texttt{strncat}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_ncat}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤ò¥³¥Ô¡¼¤¹¤ë´Ø¿ô\texttt{strcpy}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_cpy}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤òºÇÂçn¸Ä¥³¥Ô¡¼¤¹¤ë´Ø¿ô\texttt{strncpy}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_ncpy}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎóÃæ¤Ç¡¢ÆÃÄê¤Îʸ»ú¤¬ºÇ½é¤Ë¸½¤ì¤¿°ÌÃÖ¤òÊÖ¤¹´Ø¿ô\texttt{strchr}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_chr}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎóÃæ¤Ç¡¢ÆÃÄê¤Îʸ»ú¤¬ºÇ¸å¤Ë¸½¤ì¤¿°ÌÃÖ¤òÊÖ¤¹´Ø¿ô\texttt{strrchr}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_rchr}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤òÈæ³Ó¤¹¤ë´Ø¿ô\texttt{strcmp}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_cmp}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤ò£î¸ÄÌܤޤÇÈæ³Ó¤¹¤ë´Ø¿ô\texttt{strncmp}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_ncmp}¤òÀ߷פ·¤¿¡£
+     \item Âçʸ»ú¡¿¾®Ê¸»ú¤ò¶èÊ̤·¤Ê¤¤¤Ç¡¢Ê¸»úÎó¤òÈæ³Ó¤¹¤ë´Ø¿ô\texttt{strcasecmp}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_casecmp}¤òÀ߷פ·¤¿¡£
+     \item Âçʸ»ú¡¿¾®Ê¸»ú¤ò¶èÊ̤·¤Ê¤¤¤Ç¡¢Ê¸»úÎó¤ò£î¸ÄÌܤޤÇÈæ³Ó¤¹¤ë´Ø¿ô\texttt{strcasencmp}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_ncasecmp}¤òÀ߷פ·¤¿¡£
+     \item »ØÄꤷ¤¿Ê¸»ú¥»¥Ã¥È¤Îʸ»ú¤À¤±¤Ç¹½À®¤µ¤ì¤ë¡¢ºÇ½é¤Îʸ»úÎó¤ÎŤµ¤òÊÖ¤¹´Ø¿ô\texttt{strspn}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_spn}¤òÀ߷פ·¤¿¡£
+     \item »ØÄꤷ¤¿Ê¸»ú¥»¥Ã¥È°Ê³°¤Îʸ»ú¤À¤±¤Ç¹½À®¤µ¤ì¤ë¡¢ºÇ½é¤Îʸ»úÎó¤ÎŤµ¤òÊÖ¤¹´Ø¿ô\texttt{strcspn}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_cspn}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤òÊ£À½¤¹¤ë´Ø¿ô\texttt{strdup}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_dup}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎó¤ÎŤµ¤òÊÖ¤¹´Ø¿ô\texttt{strlen}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ¥Þ¥¯¥í \IPAref{MTEXT_NCHARS}¤òÀ߷פ·¤¿¡£
+     \item »ØÄꤷ¤¿Ê¸»ú¥»¥Ã¥È¤ÎÆâ¡¢°ì¤Ä¤¬Ê¸»úÎóÃæ¤ËºÇ½é¤Ë¸½¤ì¤ë°ÌÃÖ¤òÊÖ¤¹´Ø¿ô\texttt{strpbrk}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_pbrk}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎóÃæ¤Ç¡¢Ê̤Îʸ»úÎ󤬺ǽé¤Ë¸½¤ì¤¿°ÌÃÖ¤òÊÖ¤¹´Ø¿ô\texttt{strstr}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_text}¤òÀ߷פ·¤¿¡£
+     \item Ê¸»úÎ󤫤é¥È¡¼¥¯¥ó¤òÀÚ¤ê½Ð¤¹´Ø¿ô\texttt{strtok}¤ËÁêÅö¤¹¤ëµ¡Ç½\par 
+       ´Ø¿ô \IPAref{mtext_tok}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+     
+\item Â¿¸À¸ì½èÍý¤ËɬÍפʾðÊó¤òM-text¤ËÉղ乤뵡ǽ
+
+¿¸À¸ì¥Æ¥­¥¹¥È¤ÎÆþ½ÐÎÏÅù¤ÎºÝ¤Ë¤Ï¡¢¸À¸ì¤ä¥¹¥¯¥ê¥×¥È¤Ë´Ø¤¹¤ë¾ðÊó¤¬É¬ÍפÈ
+¤Ê¤ë¤³¤È¤¬¤¢¤ë¡£É¬ÍפʾðÊó¤òɬÍפʻþÅÀ¤Ç¡¢m17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¤«¤é¼èÆÀ¤·¤ÆM-text 
+¤ËÉղ乤뤿¤á¤Ë¡¢°Ê²¼¤Î´Ø¿ô¤òÀ߷פ·¤¿¡£
+
+     \begin{itemize}
+     \item ¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤«¤éÆÀ¤é¤ì¤ë¾ðÊó¤ò¸µ¤Ë¡¢M-text¤Ë¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤·¤Æ¸À¸ì¥¿¥°¤òÉղ乤뵡ǽ\par 
+       ´Ø¿ô \IPAref{mtext_put_language_prop}¤òÀ߷פ·¤¿¡£ 
+     \item ¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤«¤éÆÀ¤é¤ì¤ë¾ðÊó¤ò¸µ¤Ë¡¢M-text¤Ë¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤È¤·¤Æ¥¹¥¯¥ê¥×¥È¥¿¥°¤òÉղ乤뵡ǽ\par 
+       ´Ø¿ô \IPAref{mtext_put_script_prop}¤òÀ߷פ·¤¿¡£
+     \end{itemize}
+     
+\end{enumerate}
diff --git a/data-ja/m17n-database.tex b/data-ja/m17n-database.tex
new file mode 100644 (file)
index 0000000..aa34a67
--- /dev/null
@@ -0,0 +1,327 @@
+
+\item ¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ÎÀß·×
+
+¿¸À¸ì¥Æ¥­¥¹¥È¤ò½èÍý¤¹¤ë¤¿¤á¤Ë¤Ï¿¤¯¤Î¾ðÊó¤¬É¬ÍפȤʤ롣¤·¤«¤·¡¢°Û¤Ê¤ë
+¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï°Û¤Ê¤ë¾ðÊó¤òÍøÍѤ¹¤ë¤Î¤Ç¡¢¸Ä¡¹¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í
+¥°¥é¥à¤¬¤É¤Î¤è¤¦¤Ê¾ðÊó¤òɬÍפȤ¹¤ë¤«¤ò¡¢Í½¤áÁÛÄꤹ¤ë¤Î¤ÏÉÔ²Äǽ¤Ç¤¢¤ë¡£
+¤½¤³¤Ç¡¢É¬ÍפʾðÊó¤Ï¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à³«È¯¼Ô¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·
+¤ÆÍÑ°Õ¤·¡¢Ëܥ饤¥Ö¥é¥ê¤Ï¡¢¤½¤Î¾ðÊó¤ò¸µ¤ËÆ°ºî¤¹¤ë¤È¤¤¤¦Êý¿Ë¤ò¼è¤ë¡£
+
+Ëܥ饤¥Ö¥é¥ê¤Ç¤Ï¡¢¤³¤Î¤è¤¦¤Ê¸À¸ì¾ðÊó¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò¤Þ¤È¤á¤Æ´ÉÍý¤·¡¢¥Ç¡¼
+¥¿¥Ù¡¼¥¹¤Ø¤ÎÅý°ìŪ¤Ê¥¢¥¯¥»¥¹ÊýË¡¤òÄ󶡤¹¤ë¤¿¤á¤Ë¡¢¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼
+¥¹¡×¤òÀ߷פ·¤¿¡£¡Öm17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Ï¡¢¡Öm17n¥é¥¤¥Ö¥é¥ê¡×¼«¿È¤ä
+¡Öm17n ¥é¥¤¥Ö¥é¥ê¡×¤òÍѤ¤¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬ÍøÍѤǤ­¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î
+½¸¤Þ¤ê¤Ç¤¢¤ê¡¢ÊØÍø¤Ç½ÀÆð¤Ê API ¤òÄ̤¸¤Æ¾ðÊó¤òÆÀ¤ë¤³¤È¤¬¤Ç¤­¤ë¡£¤Þ¤¿¡¢
+ɬÍפʾì¹ç¤Ë¤Ï¿·¤·¤¤¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤ËÉÕ¤±²Ã¤¨¡¢¥¢
+¥×¥ê¥±¡¼¥·¥ç¥ó¤Ë¾ðÊó¤òÍ¿¤¨¤ë¤³¤È¤â¤Ç¤­¤ë¡£
+
+¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÏÈÁȤߤϡ¢Ä󶡤¹¤ë¾ðÊó¤Î¼ïÎà¤È·Á¼°¡¢¤½¤·¤Æ¤½¤Î¾ðÊó¤ò¼èÆÀ
+¤¹¤ëÊýË¡¤Ë¤è¤Ã¤Æ·èÄꤵ¤ì¤ë¡£º£²ó¤Îµ»½Ñ³«È¯¤Ë¤è¤ê¡¢¡Öm17n´ðËÜC¥é¥¤¥Ö¥é
+¥ê¡×µÚ¤Ó¡Öm17n X¥é¥¤¥Ö¥é¥ê¡×¤¬ÍøÍѤ¹¤ë¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Î¥¹¥­¡¼¥Þ
+\IPAref{database}¡¢¤Ê¤é¤Ó¤Ë¤½¤ì¤Ë´Þ¤Þ¤ì¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÁàºî¤¹¤ë¤¿¤á¤Î 
+API·²¤òÀ߷פ·¤¿¡£
+
+\begin{enumerate}
+\item ¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Î¥¹¥­¡¼¥Þ
+
+¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢¾ðÊó¤ò¸ÇÍ­¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Çɽ¸½¤¹¤ë¡£¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼
+¥¹¡×¤Ç¤Ï¡¢¤½¤ì¤Ë´Þ¤Þ¤ì¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹ÍѤˡ¢ÈÆÍѤΥե©¡¼¥Þ¥Ã¥È¤ÈÆüì¤Ê
+¥Õ¥©¡¼¥Þ¥Ã¥È¤ÎξÊý¤òÄ󶡤¹¤ë¤³¤È¤È¤·¤¿¡£
+
+¤Þ¤ºÈÆÍѤΥե©¡¼¥Þ¥Ã¥È¤È¤·¤Æ¡¢¥ê¥¹¥È¹½Â¤¡Ê¥Í¥¹¥ÈÍ­¤ê¡Ë¤òÄ󶡤¹¤ë¡£¤¿¤È
+¤¨¤Ð¡¢ÆþÎϥ᥽¥Ã¥É¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤Ï¡¢³µÇ°Åª¤Ë¤Ï
+\begin{verbatim}
+       (PROMPT-STRING
+           (STATE-NAME
+             ("a" "¤¢")
+             ("i" "¤¤")
+            ...))
+\end{verbatim}
+¤È¤¤¤¦¤è¤¦¤Ê¥ê¥¹¥È¹½Â¤¤Ë¤è¤Ã¤Æɽ¤ï¤¹¤³¤È¤¬¤Ç¤­¤ë¡£
+¡Ê¤³¤ì¤Ï¥í¡¼¥Þ»ú¤«¤ÊÊÑ´¹¤ò¹Ô¤Ê¤¦ÆþÎϥ᥽¥Ã¥É¤Ç¤¢¤ê¡¢3¹ÔÌܰʹߤËÊÑ´¹¥ë¡¼
+¥ë¤¬½ñ¤«¤ì¤Æ¤¤¤ë¡£¡ËÈÆÍÑ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¾ì¹ç¡¢¥ê¥¹¥È¤Î³ÆÍ×ÁǤΰÕÌ£¤Ï¾ðÊó
+¤Î¼ïÎà¤Ë¤è¤Ã¤Æ°Û¤Ê¤ê¡¢¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¦¤Ç¤Ïµ¬Äꤷ¤Ê¤¤¡£³ÆÍ×ÁǤÎÄê
+µÁ¤äÀ°¹çÀ­¤ÎÊݾڤϡ¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÍøÍѤ¹¤ë¦¤Ç¹Ô¤Ê¤¦É¬Íפ¬¤¢¤ë¡£
+
+¤³¤ÎÈÆÍÑŪ¤Ê·Á¼°¤Ï¡¢¤½¤ÎÈÆÍÑÀ­¤æ¤¨¤Ë¸úΨ¤¬°­¤¤¡£¤½¤³¤ÇÆäËÂçÎ̤Υǡ¼¥¿
+¤¬É¬Íפˤʤëʸ»ú¤´¤È¤Î¸ÇÍ­¤Î¾ðÊó¤ä¡¢Ê¸»ú¥»¥Ã¥È¤Î¥Þ¥Ã¥Ô¥ó¥°¾ðÊó¤Ë´Ø¤·¤Æ
+¤Ï¡¢¼¡¤Î¤è¤¦¤ÊÆÃÊ̤ʷÁ¼°¤òÄ󶡤¹¤ë¡£
+
+m17n ¥é¥¤¥Ö¥é¥ê¤ª¤è¤Ó¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ï¡¢Ê¸»ú¸ÇÍ­¤Î¾ðÊó¤òʸ»ú¥Æ¡¼¥Ö¥ë
+¤Ë³ÊǼ¤·¤ÆÍøÍѤ¹¤ë¡£¤½¤³¤Ç¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë´Þ¤Þ¤ì¤ë¾ðÊó¤Î¤¦¤Á¡¢Ê¸»ú¥³¡¼
+¥É¤È¤½¤ì¤Ë´Ø¤¹¤ë¥Ç¡¼¥¿¤Î¥Æ¡¼¥Ö¥ë¤Ï¡¢Ä¾ÀÜʸ»ú¥Æ¡¼¥Ö¥ë¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ
+¼èÆÀ¤µ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£¤³¤Î¼ï¤Î¾ðÊó¤Ï¡¢ÆÃÊ̤ʥ¿¥° `char-table' ¤òÂè°ì
+¥¿¥°¤È¤·¤ÆÍ¿¤¨¤ë¤³¤È¤Ç¶èÊ̤µ¤ì¤ë¡£
+
+ʸ»ú¥»¥Ã¥È¤Î¥Þ¥Ã¥Ô¥ó¥°¾ðÊó¤â¡¢Ê¸»ú¥»¥Ã¥È¤Ë¤è¤ë¥Ç¥³¡¼¥É¡¿¥¨¥ó¥³¡¼¥É»þ¤Ë
+ɬÍפȤʤë¤â¤Î¤Ç¤¢¤ë¤¿¤á¡¢Ä¾ÀÜʸ»ú¥»¥Ã¥È¥ª¥Ö¥¸¥§¥¯¥È¤Î¤Ê¤«¤Î¥á¥ó¥Ð¤È¤·
+¤Æ¼èÆÀ¤¹¤ë¡£Ê¸»úËè¤Î¾ðÊó¤ÈƱÍͤˡ¢¤³¤Î¼ï¤Î¾ðÊó¤Ï¡¢ÆÃÊ̤ʥ¿¥° `charset' 
+¤òÂè°ì¥¿¥°¤È¤·¤Æ»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤ÆÆÀ¤é¤ì¤ë¡£
+
+¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤«¤é¾ðÊó¤ò°ú½Ð¤¹ºÝ¤Ë¤Ï¡¢¤É¤Î¤è¤¦¤Ê¾ðÊó¤ò»ý¤Ä¥Ç¡¼
+¥¿¥Ù¡¼¥¹¤¬É¬ÍפǤ¢¤ë¤«¤ò¡¢¥¿¥°¤ò»È¤Ã¤Æ»Ø¼¨¤¹¤ë¡£¤³¤ÎºÝ¡¢¾ðÊó¼«ÂΤγ¬ÁØ
+À­¤òÍøÍѤ·¤Æ¸úΨŪ¤Ê¸¡º÷¤ò¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­¤ë¤è¤¦À߷פ·¤¿¡£¤¿¤È¤¨¤Ð¡Ö¥Ô¥ó
+¥¤¥óÊý¼°¤Ë¤è¤ëÃæ¹ñ¸ì¤ÎÆþÎϥ᥽¥Ã¥É¡×¤ò¹Í¤¨¤Æ¤ß¤è¤¦¡£¤³¤ì¤Ï¡Ö¥Ô¥ó¥¤¥ó¡×
+¤È¡ÖÃæ¹ñ¸ì¡×¤È¡ÖÆþÎϥ᥽¥Ã¥É¡×¤È¤¤¤¦³¬ÁØŪ¤Ê£³¤Ä¤Î¥¿¥°¤Çɽ¤ï¤¹¤³¤È¤¬¼«Á³
+¤Ç¤¢¤ë\footnote{¤½¤ì¤À¤±¤Ç¤Ê¤¯¡¢Ã±°ì¥¿¥°¤È¤·¤Æ»Ø¼¨¤¹¤ë¤¿¤á¤Ë¤Ï¡¢¤³¤ì
+¤òɽ¤ï¤¹¥¿¥°¤òÀ¸À®¤¹¤ë¼ê´Ö¤Þ¤Ç¤«¤«¤Ã¤Æ¤·¤Þ¤¦¡£}¡£ m17n ¸À¸ì¾ðÊó¥Ù¡¼¥¹¤Ç¤Ï¡¢
+³¬ÁØÀ­¤ò»ý¤ÄÊ£¿ô¤Î¥¿¥°¤Ç¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò»ØÄê¤Ç¤­¤ë¤¿¤á¡¢¤³¤Î¾ì¹ç¤Ë¤Ï
+\begin{quote}
+\texttt{$<$chinese-input-method-using-pinyin$>$}
+\end{quote}
+¤È¤¤¤Ã¤¿Ã±°ì¥¿¥°¤Ç¤Ï¤Ê¤¯¡¢
+\begin{quote}
+\texttt{$<$input-method chinese pinyin$>$}
+\end{quote}
+¤Ê¤É¤È¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¢¤ë¡£
+
+¤³¤ÎÏÈÁȤߤò¸¡¾Ú¤¹¤ë¤¿¤á¤Ë¡¢m17n ¥é¥¤¥Ö¥é¥ê¼«ÂΤ¬Ä¾ÀܻȤ¦¥Ç¡¼¥¿¥Ù¡¼¥¹
+¤Î¤¦¤Á¡¢¤½¤ÎÍøÍÑÊýË¡¤Ê¤É¤¬¸½»þÅÀ¤ÇÌÀ¤é¤«¤Ê°Ê²¼¤Î¤â¤Î¤ò»îºî¤·¤¿¡£
+
+\begin{description}
+
+\item[¥³¡¼¥ÉÊÑ´¹¤Î¤¿¤á¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹]~\\
+¿¤¯¤Îʸ»ú¥»¥Ã¥È¤Ï¡¢¤½¤ì¤Ë°¤¹¤ëʸ»ú¤Î¥³¡¼¥É¥Ý¥¤¥ó¥È¤òÂбþ¤¹¤ëʸ»ú¥³¡¼
+¥É¤ËÊÑ´¹¤¹¤ë¥Ç¥³¡¼¥É¤ä¡¢¤¢¤ë¤¤¤Ï¤½¤ÎµÕ¤ÎÊÑ´¹¤ò¤¹¤ë¥¨¥ó¥³¡¼¥É¤Î¤¿¤á¤Ë¡¢
+Âбþɽ¡Ê¥Þ¥Ã¥×¤È¸Æ¤Ö¡Ë°ú¤­¤ò¹Ô¤Ê¤¦É¬Íפ¬¤¢¤ë¡£°Ê²¼¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢¤³
+¤ÎºÝ¤ËɬÍפʥǥ³¡¼¥ÉÍѤȥ¨¥ó¥³¡¼¥ÉÍѤΥޥåפòÍ¿¤¨¤ë¡£
+
+  \begin{itemize}
+  \item \textbf{¥¿¥° $<$\texttt{charset CHARSET_NAME}$>$ ¤ò»ý¤Á¡¢\texttt{CHARSET_NAME}¤È
+       ¤¤¤¦Ì¾Á°¤Îʸ»ú¥»¥Ã¥È¤Î¥¨¥ó¥³¡¼¥É¡¿¥Ç¥³¡¼¥ÉÍѤΥޥåפòÍ¿¤¨¤ë¥Ç¡¼
+       ¥¿¥Ù¡¼¥¹}
+       
+        Unicode ¥³¥ó¥½¡¼¥·¥¢¥à¤ÎÄ󶡤¹¤ë UnicodeData.txt¡¢ Unihan.txt¡¢ SpecialCasing.txt¡¢
+        IBM ¤Î International Components for Unicode¡¢ °Â²¬¹§°ì»á¤Ë¤è¤ë
+        ´Á»ú¥Æ¡¼¥Ö¥ë¤Èʸ»ú½¸¹ç¥Æ¡¼¥Ö¥ë¤Î¥ê¥¹¥È
+        (http://kanji.zinbun.kyoto-u.ac.jp/~yasuoka/CJK.html) ¤ò´ð¤Ë¡¢
+        É½\ref{TABLE:charsets}¤Î 28 ¤Îʸ»ú¥»¥Ã¥È¤½¤ì¤¾¤ì¤Ë¤Ä¤¤¤Æ¥Ç¡¼¥¿
+        ¥Ù¡¼¥¹¤ò»îºî¤·¤¿¡£
+
+\begin{table}
+\begin{tabular}{|l|l|}
+\hline
+CHARSET_NAME   & Ê¸»ú¥»¥Ã¥È¤ÎÀµ¼°Ì¾¾Î\\
+\hline
+iso-8859-2     & ISO/IEC 8859-2:1999\\
+iso-8859-3     & ISO/IEC 8859-3:1999\\
+iso-8859-4     & ISO/IEC 8859-4:1998\\
+iso-8859-5     & ISO/IEC 8859-5:1999\\
+iso-8859-6     & ISO/IEC 8859-6:1999\\
+iso-8859-7     & ISO 8859-7:1987\\
+iso-8859-8     & ISO/IEC 8859-8:1999\\
+iso-8859-9     & ISO/IEC 8859-9:1999\\
+iso-8859-10    & ISO/IEC 8859-10:1998\\
+iso-8859-11    & ISO/IEC 8859-11:2001\\
+iso-8859-13    & ISO/IEC 8859-13:1998\\
+iso-8859-14    & ISO/IEC 8859-14:1998\\
+iso-8859-15    & ISO/IEC 8859-15:1999\\
+gb2312.1980    & GB2312-80\\
+jisx0208.1983  & JIS X 0208-1983\\
+KSC5601.1987   & KS C 5601-1987\\
+jisx0212       & JIS X 0212-1990\\
+jisx0201       & JIS X 0201-1976\\
+viscii-1.1     & VIetnamese Standard Code for Information Interchange\\
+big5           & Big Five\\
+cns11643-1     & CNS 11643-1992, plane 1\\
+cns11643-2     & CNS 11643-1992, plane 2\\
+cns11643-3     & CNS 11643-1992, plane 3\\
+cns11643-4     & CNS 11643-1992, plane 4\\
+cns11643-5     & CNS 11643-1992, plane 5\\
+cns11643-6     & CNS 11643-1992, plane 6\\
+cns11643-7     & CNS 11643-1992, plane 7\\
+cns11643-15    & CNS 11643-1992, plane 15\\
+\hline
+\end{tabular}
+\caption{¥³¡¼¥ÉÊÑ´¹Íѥǡ¼¥¿¥Ù¡¼¥¹¤ò»îºî¤·¤¿Ê¸»ú¥»¥Ã¥È}
+\label{TABLE:charsets}
+\end{table}
+
+  \end{itemize}
+
+\item[ʸ»úÎóÈæ³Ó¤Î¤¿¤á¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹]~\\
+Âçʸ»ú¤È¾®Ê¸»ú¤Î°ã¤¤¤ò̵»ë¤·¤Ä¤Äʸ»úÎó¤òÈæ³Ó¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢²¿¤é¤«¤Îɸ½à
+·Á¤ËÊÑ´¹¤·¤Æ¤«¤éÈæ³Ó¤¹¤ë¡£ÉáÄ̤Ͼ®Ê¸»ú¤ËÊÑ´¹¤·¤ÆÈæ³Ó¤¹¤ë¤Î¤Ç¡¢³Æʸ»ú¤Ë
+¤½¤ì¤ËÂбþ¤¹¤ë¾®Ê¸»ú¤ò´ØÏ¢ÉÕ¤±¤Æ¤ª¤¯É¬Íפ¬¤¢¤ë¡£
+
+¤·¤«¤·¡¢ m17n ¥é¥¤¥Ö¥é¥ê¤Ç°·¤¦ Unicode Ê¸»ú¤ÎÃæ¤Ë¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤¬
+ñ½ã¤Ê°ìÂаìÂбþ¤Ë¤Ê¤é¤Ê¤¤¾ì¹ç¤â¤¢¤ë¡£¤¿¤È¤¨¤Ð¥É¥¤¥Ä¸ì¤Î¥¨¥¹¥Ä¥§¥Ã¥È¤Ï¡¢
+¾®Ê¸»ú¤Ç¤Ï `\ss' ¤Î°ìʸ»ú¤À¤¬¡¢Âçʸ»ú¤Ç¤Ï `SS' ¤ÎÆóʸ»ú¤Çɽ¤ï¤µ¤ì¤ë¡£
+
+¤½¤³¤Ç¡¢¼¡¤ÎÆó¼ïÎà¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÍÑ°Õ¤·¤¿¡£
+
+  \begin{itemize}
+   \item \textbf{¥¿¥° $<$\texttt{char-table simple-case-folding}$>$ ¤ò»ý¤Á¡¢
+       ³Æʸ»ú¤ËÂбþ¤¹¤ë¾®Ê¸»ú¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+       ¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢É¸½à·Á¤¬¾®Ê¸»ú°ìʸ»ú¤Ë¤Ê¤ëʸ»ú¤Ë´Ø¤¹¤ë¤â¤Î
+       ¤Ç¤¢¤ê¡¢CaseFolding.txt ¤è¤ê»îºî¤·¤¿¡£
+
+   \item \textbf{¥¿¥° $<$\texttt{char-table complicated-case-folding}$>$ ¤ò»ý¤Á¡¢
+       Âçʸ»ú¡¿¾®Ê¸»ú¤ò¶èÊ̤»¤º¤ËÈæ³Ó¤¹¤ë¾ì¹ç¤ËÃÖ¤­´¹¤¨¤ë¾®Ê¸»úÎó
+       ¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+       ¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢É¸½à·Á¤¬Ê£¿ô¤Î¾®Ê¸»ú¤ÎÎó¤Ë¤Ê¤ëʸ»ú¤Ë´Ø¤¹¤ë
+       ¤â¤Î¤Ç¤¢¤ê¡¢CaseFolding.txt ¤è¤ê»îºî¤·¤¿¡£
+
+  \end{itemize}
+
+¤³¤ÎÆóËÜΩ¤Æ¤Ë¤è¤ê¡¢Ä̾ï¤Ïñ½ã¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¤ß¤ò»²¾È¤·¡¢Æüì¤Êʸ»ú¤Ë
+¤Ä¤¤¤Æ¤Î¤ßÊ£»¨¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò»²¾È¤¹¤ë¤È¤¤¤¦¡¢¸úΨŪ¤Ê¼ÂÁõ¤¬²Äǽ¤Ç¤¢¤ë¡£
+¤¿¤È¤¨¤Ð¥¨¥¹¥Ä¥§¥Ã¥È¤Ë´Ø¤¹¤ë¾ðÊó¤Ïñ½ã¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤Ï¤Ê¤¤¤¿¤á¡¢¤³¤Î
+ʸ»ú¤Ë¤Ä¤¤¤Æ¤Î¤ßÆó¤ÄÌܤΥǡ¼¥¿¥Ù¡¼¥¹¤ò»²¾È¤¹¤ë¤³¤È¤Ë¤Ê¤ë¡£
+
+¤³¤ì¤é¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ïʸ»ú¤òÈæ³Ó¤¹¤ë´Ø¿ô \IPAref{mtext_casecmp}¡¢
+\IPAref{mtext_ncasecmp}¡¢
+\IPAref{mtext_case_compare} ¤«¤é¤ÎÍøÍѤòÁÛÄꤷ¤Æ¤¤¤ë¡£
+
+\item[ʸ»úɽ¼¨¤Î¤¿¤á¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹]~\\
+M-text ¤Îʸ»ú¤Ï¡¢¤½¤Îʸ»ú¤¬»ý¤Ä¥Æ¥­¥¹¥È¥×¥í¥Ñ¥Æ¥£¤Ë±þ¤¸¤¿¥Õ¥©¥ó¥È¤ò»È¤Ã
+¤Æɽ¼¨¤µ¤ì¤ë¡£¡Ê¾ÜºÙ¤Ï´Ø¿ô \IPAref{mdraw_text} »²¾È¡£¡Ë¤³¤ì¤ò¼ÂÁõ¤¹¤ë
+¤¿¤á¤Ë¡¢°Ê²¼¤Î°ìÏ¢¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÍÑ°Õ¤·¤¿¡£¤³¤ì¤é¤ò½ç¤ËÍøÍѤ¹¤ë¤³¤È¤Ë
+¤è¤Ã¤Æɽ¼¨¤ò¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤­¤ë¡£
+
+  \begin{itemize} 
+
+   \item \textbf{¥¿¥° $<$\texttt{char-table script}$>$ ¤ò»ý¤Á¡¢³Æʸ
+         »ú¤Î¥¹¥¯¥ê¥×¥È̾¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+       ¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢³Æʸ»ú¤¬¤É¤Î¥¹¥¯¥ê¥×¥È¤Ë°¤¹¤«¤Î¾ðÊó¤òÍ¿¤¨
+       ¤ë¤â¤Î¤Ç¤¢¤ê¡¢¥¹¥¯¥é¥Ã¥Á¤è¤ê»îºî¤·¤¿¡£
+
+   \item \textbf{¥¿¥° $<$\texttt{font fontset}$>$ ¤ò»ý¤Á¡¢
+       ¥Õ¥©¥ó¥È¥»¥Ã¥ÈÀ¸À®ÍѤΥǡ¼¥¿¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+       ¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢¸À¸ì¤ä¥¹¥¯¥ê¥×¥È¤«¤é¥Õ¥©¥ó¥È¤Î¥ì¥¸¥¹¥È¥ê̾
+       ¡Ê¥·¥¹¥Æ¥à¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥Õ¥©¥ó¥È¤Î̾Á°¡Ë¤Ø¤Î¥Þ¥Ã¥×¤È¡¢Ê¸»ú¥»¥Ã
+       ¥È¤«¤é¥Õ¥©¥ó¥È¤Î¥ì¥¸¥¹¥È¥ê̾¤Ø¤Î¥Þ¥Ã¥×¤È¤¤¤¦£²¼ïÎà¤Î¥Þ¥Ã¥Ô¥ó¥°
+       ¾ðÊó¤ò»ý¤Ä¡£
+
+       ¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥Õ¥©¥ó¥È¥»¥Ã¥È¤òºîÀ®¤¹¤ëºÝ¤Ë»²
+       ¾È¤¹¤ë¤³¤È¤òÁÛÄꤷ¤¿¤â¤Î¤Ç¤¢¤ê¡¢¥¹¥¯¥é¥Ã¥Á¤è¤ê»îºî¤·¤¿¡£
+
+   \item \textbf{¥¿¥° $<$\texttt{font registry}$>$ ¤ò»ý¤Á¡¢
+       ³Æ¥Õ¥©¥ó¥È¤Î¥ì¥¸¥¹¥È¥ê̾¤ËÂбþ¤¹¤ëʸ»ú¥»¥Ã¥È¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+       ¤³¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ïʸ»ú¥³¡¼¥É¤òÆÃÄê¤Î¥Õ¥©¥ó¥È¤Î¥°¥ê¥Õ¥³¡¼¥É¤Ë¤É
+       ¤¦ÊÑ´¹¤¹¤ë¤«¤Î¾ðÊó¤òÍ¿¤¨¤ë¤â¤Î¤Ç¤¢¤ê¡¢¥¹¥¯¥é¥Ã¥Á¤è¤ê»îºî¤·¤¿¡£
+
+       ¤¢¤ë¥Õ¥©¥ó¥È¤òÍѤ¤¤ÆÆÃÄê¤Îʸ»ú¤òɽ¼¨¤¹¤ë¤Ë¤Ï¡¢Ê¸»ú¤Î¥³¡¼¥É¤«¤é
+       ¥Õ¥©¥ó¥ÈÆâ¤Î¥°¥ê¥Õ¥³¡¼¥É¤Ø¤ÎÊÑ´¹¤¬É¬ÍפǤ¢¤ë¡£¤¢¤ë¥Õ¥©¥ó¥È¤¬¤É
+       ¤Î¤è¤¦¤Ê¥°¥ê¥Õ¥³¡¼¥ÉÂηϤò»ý¤Ä¤«¤Ï¤½¤Î¥Õ¥©¥ó¥È¤Î¥ì¥¸¥¹¥È¥ê̾¤Ç
+       ·è¤Þ¤ê¡¢¤½¤Î¥°¥ê¥Õ¥³¡¼¥ÉÂηϤÏʸ»ú¥»¥Ã¥È¤Î¥³¡¼¥É¥Ý¥¤¥ó¥È¤È°ìÂÐ
+       °ì¤ÎÂбþ¤¬¤¢¤ë¡£¤½¤³¤Ç¡¢³Æ¥Õ¥©¥ó¥È¤Î¥ì¥¸¥¹¥È¥ê̾¤ËÂбþ¤¹¤ëʸ»ú
+       ¥»¥Ã¥È¤¬¤ï¤«¤ì¤Ð¡¢Ê¸»ú¥³¡¼¥É¤ò¥°¥ê¥Õ¥³¡¼¥É¤ËÊÑ´¹¤¹¤ëÊýË¡¤¬¤ï¤«
+       ¤ë¡£
+
+\end{itemize}
+
+\item[ʸ»úÆþÎϤΤ¿¤á¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹]~\\
+  ÆþÎϥ᥽¥Ã¥É¤Ï¥æ¡¼¥¶¤ÎÆþÎÏ¥­¡¼¤ÎÎó¤òʸ»ú¤ËÊÑ´¹¤¹¤ë¡£¤³¤Î¤¿¤á¤ËÆþÎÏ¥á
+  ¥½¥Ã¥É¤Ï¡¢¥­¡¼ÆþÎÏÎó¤ò¼õ¤±¼è¤Ã¤Æ¡¢¤É¤Î¤è¤¦¤Ê¾õÂÖ¤ËÁ«°Ü¤¹¤ë¤«¡¢¤É¤Î¤è
+  ¤¦¤Êʸ»ú¡Ê¤¢¤ë¤¤¤Ïʸ»úÎó¡Ë¤ò½ÐÎϤ¹¤ë¤«¤ò·èÄꤷ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£¤³¤Î
+  ºÝ¤ËɬÍפʾðÊó¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ°Ê²¼¤Î¤â¤Î¤ò»îºî¤·¤¿¡£³Æ¥Ç¡¼
+  ¥¿¥Ù¡¼¥¹¤Î¥¿¥°¤Ï $<$\texttt{input-method ¸À¸ì̾ ÆþÎϥ᥽¥Ã¥É̾}$>$ ¤È
+  ¤¤¤¦·Á¼°¤Ç¤¢¤ë¡£
+
+  ¤³¤ì¤é¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢ÆþÎϥ᥽¥Ã¥É¤ò¥ª¡¼¥×¥ó¤¹¤ë´Ø¿ô 
+  \IPAref{mim_open} ¤ª¤è¤ÓÆþÎÏ¥¤¥Ù¥ó¥È¤Î¥Õ¥£¥ë¥¿½èÍý¤ò¤¹¤ë´Ø¿ô
+  \IPAref{mim_filter_event} ¤Ë¤è¤Ã¤ÆÍøÍѤµ¤ì¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£
+
+  \begin{itemize}
+
+    \item \textbf{ ¥¿¥° $<$\texttt{input-method th kesmanee}$>$ ¤ò»ý¤Á¡¢
+      ¥¿¥¤¸ìÍѤÎ``kesmanee''¤È¤¤¤¦Ì¾Á°¤ÎÆþÎϥ᥽¥Ã¥É¤Ë´Ø¤¹¤ë¾ðÊó¤òÍ¿¤¨
+      ¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+      ¤³¤ÎÆþÎϥ᥽¥Ã¥É¤Ï¡¢¥¿¥¤¤Ç¹­¤¯»È¤ï¤ì¤Æ¤¤¤ë¤¦¤Á¤Î°ì¤Ä¤Ç¤¢¤ê¡¢
+      Emacs ¤Ë´Þ¤Þ¤ì¤ëƱ̾¤ÎÆþÎϥ᥽¥Ã¥ÉÍѤΥǡ¼¥¿¤ò²Ã¹©¤·¤Æ»îºî¤·¤¿¡£
+
+    \item \textbf{¥¿¥° $<$\texttt{input-method hi itrans}$>$ ¤ò»ý¤Á¡¢
+      ¥Ò¥ó¥Ç¥£¡¼¸ìÍѤΠ``itrans'' ¤È¤¤¤¦Ì¾Á°¤ÎÆþÎϥ᥽¥Ã¥É¤Ë´Ø¤¹¤ë¾ðÊó
+      ¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+      ¤³¤ÎÆþÎϥ᥽¥Ã¥É¤Ï¡¢¥Ç¥Ð¥Ê¥¬¥ê¥¹¥¯¥ê¥×¥È¤òÍѤ¤¤ë¸À¸ì¡Ê¥Ò¥ó¥Ç¥£¡¼¸ì
+      Åù¡Ë¤Îɸ½àŪ¤Ê¥È¥é¥ó¥¹¥ê¥Æ¥ì¡¼¥·¥ç¥ó\footnote{ËÝ»ú¡£Ê̤θÀ¸ì¤Î
+      Ê¸»ú¤Ç½ñ¤­Ä¾¤¹¤³¤È¡£¤³¤³¤Ç¤Ï¥Ç¥Ð¥Ê¥¬¥êʸ»ú¤ÎÂå¤ï¤ê¤Ë¥é¥Æ¥óʸ»ú¤Ç
+      É½¤ï¤¹¤³¤È¡£}ÊýË¡¤Ç¤¢¤ë ITRANS ¤ò¤½¤Î¤Þ¤Þ
+      ÆþÎÏ¥­¡¼¤È¤·¤Æ¼õ¤±ÉÕ¤±¤ë¤â¤Î¤Ç¤¢¤ê¡¢Emacs ¤Ë´Þ¤Þ¤ì¤ëƱ̾¤ÎÆþÎÏ¥á
+      ¥½¥Ã¥ÉÍѤΥǡ¼¥¿¤ò²Ã¹©¤·¤Æ»îºî¤·¤¿¡£
+
+    \item \textbf{¥¿¥° $<$\texttt{input-method ja romaji}$>$ ¤ò»ý¤Á¡¢
+      ÆüËܸì¤ÎÊ¿²¾Ì¾ÍѤΠ``romaji'' ¤È¤¤¤¦Ì¾Á°¤ÎÆþÎϥ᥽¥Ã¥É¤Ë´Ø¤¹¤ë¾ð
+      Êó¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+      ¤³¤Î¥á¥½¥Ã¥É¤Ï¡¢JIS X 4063 ¤Ëµ¬Äꤵ¤ì¤¿¥í¡¼¥Þ»úÆþÎÏÊý¼°¤Ç¤¢¤ê¡¢
+      ¥¹¥¯¥é¥Ã¥Á¤«¤é»îºî¤·¤¿¡£
+
+  \end{itemize}
+
+  ¤³¤ì¤é¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢ÆþÎϥ᥽¥Ã¥É¤Ë´Ø¤¹¤ë¼¡¤Î¾ðÊó¤òÍ¿¤¨¤ë¡£
+  \begin{itemize}
+    \item ÆþÎϥ᥽¥Ã¥É¤ò¼±Ê̤¹¤ë¤¿¤á¤Îû¤¤¥×¥í¥ó¥×¥Èʸ»úÎó¡£
+
+    \item ÆþÎϥ᥽¥Ã¥É¤Î³Æ¾õÂÖ¤Î̾Á°¡Ê¥·¥ó¥Ü¥ë¡Ë
+
+    \item ³Æ¾õÂÖËè¤Ë¼õ¤±¼è¤Ã¤¿ÆþÎÏ¥­¡¼Îó¤ËÂбþ¤·¤Æ¹Ô¤Ê¤¦¤Ù¤­¥¢¥¯¥·¥ç¥ó¤Î
+      Îó¡£¥¢¥¯¥·¥ç¥ó¤È¤Ï¡¢¸½ºßÀ¸À®¤·¤Æ¤¤¤ëʸ»úÎó¤ò²¿Ê¸»úºï½ü¤¹¤ë¤«¡¢¤É
+      ¤Îʸ»úÎó¤òÄɲ乤뤫¡¢¤½¤·¤Æ¡¢¤É¤Î¾õÂÖ¤ËÁ«°Ü¤¹¤ë¤«¤Ç¤¢¤ë¡£
+            \end{itemize}
+
+\item[¤½¤Î¾¤Îʸ»ú¤´¤È¤Î¾ðÊó¤Î¤¿¤á¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹]~\\
+UnicodeData.txt ¤Ë¤¢¤ëʸ»ú¤´¤È¤Î¾ðÊó¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ¡¢°Ê²¼¤ò
+»îºî¤·¤¿¡£
+
+  \begin{itemize}
+    \item \textbf{¥¿¥° $<$\texttt{char-table string name}$>$ ¤ò»ý¤Á¡¢
+      Unicode ¤¬Äê¤á¤ë³Æʸ»ú¤Î̾Á°¤ò C-string ¤ÇÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+    \item \textbf{¥¿¥° $<$\texttt{char-table symbol category} $>$ ¤ò»ý
+      ¤Á¡¢Unicode ¤¬Äê¤á¤ë³Æʸ»ú¤Î°ìÈÌŪ¥«¥Æ¥´¥ê (General Category) ¤ò
+      Í¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+      ³Æ¥«¥Æ¥´¥ê¤Ï\\
+      http://www.unicode.org/Public/UNIDATA/UnicodeData.html ¤Ë¼¨¤µ¤ì
+      ¤ë abbreviation ¤Î̾Á°¤Î¥·¥ó¥Ü¥ë¤ÇÍ¿¤¨¤é¤ì¤ë¡£
+
+    \item \textbf{¥¿¥° $<$\texttt{char-table symbol bidi}$>$ ¤ò»ý¤Á¡¢
+      Unicode ¤¬Äê¤á¤ë³Æʸ»ú¤ÎÁÐÊý¸þ¥«¥Æ¥´¥ê (Bidirectional Category) 
+      ¤òÍ¿¤¨¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹}
+
+      ³Æ¥«¥Æ¥´¥ê¤Ï\\
+      http://www.unicode.org/Public/UNIDATA/UnicodeData.html ¤Ë¼¨¤µ¤ì
+      ¤ëÁÐÊý¸þ¥«¥Æ¥´¥ê¤Î̾Á°¤Î¥·¥ó¥Ü¥ë¤ÇÍ¿¤¨¤é¤ì¤ë¡£
+
+  \end{itemize}
+
+¤³¤ì¤é¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¡¢Ê¸»ú¥×¥í¥Ñ¥Æ¥£¤ÎÃͤòÆÀ¤ë´Ø¿ô
+\IPAref{mchar_get_prop} ¤Ë¤è¤Ã¤ÆÍøÍѤµ¤ì¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡£
+
+\end{description}
+
+\item  ¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤òÁàºî¤¹¤ë¤¿¤á¤Î API
+
+¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Ë´Þ¤Þ¤ì¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÁàºî¤¹¤ë¤¿¤á¤Ë¡¢°Ê²¼¤Î
+API¤òÀ߷פ·¤¿¡£
+
+  \begin{itemize}
+
+  \item ¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×Ã椫¤éɬÍפʥǡ¼¥¿¥Ù¡¼¥¹¤ò¸¡º÷¤¹¤ëµ¡Ç½
+
+    ´Ø¿ô \IPAref{mdatabase_find} ¤òÀ߷פ·¤¿¡£
+
+  \item ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò¥í¡¼¥É¤¹¤ëµ¡Ç½
+
+    ´Ø¿ô \IPAref{mdatabase_load} ¤òÀ߷פ·¤¿¡£
+
+  \item ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤ò¼èÆÀ¤¹¤ëµ¡Ç½
+
+    ´Ø¿ô \IPAref{mdatabase_tag} ¤òÀ߷פ·¤¿¡£
+
+  \item ¡Öm17n¸À¸ì¾ðÊó¥Ù¡¼¥¹¡×¤Ë¿·¤·¤¤¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÄɲ乤뵡ǽ
+
+    ´Ø¿ô \IPAref{mdatabase_define} ¤òÀ߷פ·¤¿¡£
+
+  \end{itemize}
+
+\end{enumerate}
diff --git a/data-usr/header.tex b/data-usr/header.tex
new file mode 100644 (file)
index 0000000..a83371a
--- /dev/null
@@ -0,0 +1,41 @@
+\documentclass[a4paper,12pt,twoside]{article}  % -*- coding: euc-jp; -*-
+\setlength\headheight{14.5pt}
+\usepackage{makeidx}
+\usepackage{fancyhdr}
+\usepackage{graphicx}
+\usepackage{float}
+\usepackage{alltt}
+\usepackage[english]{babel}
+\usepackage{times}
+%%%\usepackage[dvips, a4paper, bookmarks, bookmarksnumbered, pdftitle={Unix/LinuxÈÆÍÑ¡£¡£¡£}]{hyperref} 
+\usepackage{doxygen}
+\usepackage{doxygen-m17n}
+\makeindex
+\setcounter{tocdepth}{2}
+\setlength{\footrulewidth}{0pt}
+\begin{document}
+\begin{titlepage}
+\begin{flushright}
+{\Large 13¾ð·ÐÂè1127¹æ}
+\end{flushright}
+\vspace*{2cm}
+\begin{center}
+{\Huge IPA¾ðÊ󵻽ѳ«È¯»Ù±ç»ö¶È}\\
+\vspace*{2cm}
+{\Huge Unix/Linux ÈÆÍÑ¿¸À¸ì½èÍýµ¡Ç½\\¥é¥¤¥Ö¥é¥ê¤Î³«È¯}\\
+\vspace*{2cm}
+{\Huge ³«È¯À®²ÌÊó¹ð½ñ}\\
+\vspace*{7cm}
+{\Huge Ê¿À®14ǯ2·î}\\
+\vspace*{1.5cm}
+{\Huge ÆÈΩ¹ÔÀ¯Ë¡¿Í »º¶Èµ»½ÑÁí¹ç¸¦µæ½ê}
+\end{center}
+\end{titlepage}
+\cleardoublepage
+\pagenumbering{roman}
+\tableofcontents
+\newpage
+\pagenumbering{arabic}
+\input{introduction.tex}
+\newpage
+\sectionOnNewpage
diff --git a/doxyfile.in b/doxyfile.in
new file mode 100644 (file)
index 0000000..2257cdc
--- /dev/null
@@ -0,0 +1,826 @@
+# Doxyfile 1.2.9.1     -*- coding: euc-jp; -*-
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+#       TAG = value [value, ...]
+# For lists items can also be appended using:
+#       TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# General configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
+# by quotes) that should identify the project.
+
+PROJECT_NAME           = %PROJECT_NAME%
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
+# This could be handy for archiving the generated documentation or 
+# if some version control system is used.
+
+PROJECT_NUMBER         = %PROJECT_NUMBER%
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
+# base path where the generated documentation will be put. 
+# If a relative path is entered, it will be relative to the location 
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = %DEV_OR_USR_OR_JA%
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
+# documentation generated by doxygen is written. Doxygen will use this 
+# information to generate all constant output in the proper language. 
+# The default language is English, other supported languages are: 
+# Brazilian, Chinese, Croatian, Czech, Danish, Dutch, Finnish, French, 
+# German, Hungarian, Italian, Japanese, Korean, Norwegian, Polish, 
+# Portuguese, Romanian, Russian, Slovak, Slovene, Spanish and Swedish.
+
+OUTPUT_LANGUAGE        = %OUTPUT_LANGUAGE%
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
+# documentation are documented, even if no documentation was available. 
+# Private class members and static file members will be hidden unless 
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL            = yes
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
+# will be included in the documentation.
+
+EXTRACT_PRIVATE        = no
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file 
+# will be included in the documentation.
+
+EXTRACT_STATIC         = no
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
+# undocumented members of documented classes, files or namespaces. 
+# If set to NO (the default) these members will be included in the 
+# various overviews, but no documentation section is generated. 
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS     = yes
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
+# undocumented classes that are normally visible in the class hierarchy. 
+# If set to NO (the default) these class will be included in the various 
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
+# include brief member descriptions after the members that are listed in 
+# the file and class documentation (similar to JavaDoc). 
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC      = yes
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
+# the brief description of a member or function before the detailed description. 
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF           = no
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
+# Doxygen will generate a detailed section even if there is only a brief 
+# description.
+
+ALWAYS_DETAILED_SEC    = no
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
+# path before files name in the file list and in the header files. If set 
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES        = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
+# can be used to strip a user defined part of the path. Stripping is 
+# only done if one of the specified strings matches the left-hand part of 
+# the path. It is allowed to use relative paths in the argument list.
+
+STRIP_FROM_PATH        = 
+
+# The INTERNAL_DOCS tag determines if documentation 
+# that is typed after a \internal command is included. If the tag is set 
+# to NO (the default) then the documentation will be excluded. 
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS          = no
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
+# generate a class diagram (in Html and LaTeX) for classes with base or 
+# super classes. Setting the tag to NO turns the diagrams off.
+
+CLASS_DIAGRAMS         = YES
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
+# be generated. Documented entities will be cross-referenced with these sources.
+# with a discussion with Handa, decided to set to NO Jan/8/2002
+
+SOURCE_BROWSER         = 
+
+# Setting the INLINE_SOURCES tag to YES will include the body 
+# of functions and classes directly in the documentation.
+
+# This should be no 10/Jan
+
+INLINE_SOURCES         = no
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
+# doxygen to hide any special comment blocks from generated source code 
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
+# file names in lower case letters. If set to YES upper case letters are also 
+# allowed. This is useful if you have classes or files whose names only differ 
+# in case and if your file system supports case sensitive file names. Windows 
+# users are adviced to set this option to NO.
+
+CASE_SENSE_NAMES       = YES
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
+# (but less readable) file names. This can be useful is your file systems 
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES            = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
+# will show members with their full class and namespace scopes in the 
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
+# will generate a verbatim copy of the header file for each class for 
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS       = yes
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
+# will put list of the files that are included by a file in the documentation 
+# of that file.
+
+SHOW_INCLUDE_FILES     = yes
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
+# will interpret the first line (until the first dot) of a JavaDoc-style 
+# comment as the brief description. If set to NO, the JavaDoc 
+# comments  will behave just like the Qt-style comments (thus requiring an 
+# explict @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
+# member inherits the documentation from any documented member that it 
+# reimplements.
+
+INHERIT_DOCS           = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
+# is inserted in the documentation for inline members.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
+# will sort the (detailed) documentation of file and class members 
+# alphabetically by member name. If set to NO the members will appear in 
+# declaration order.
+### # this seems to affect the order of module list. Dec14 Nishikimi
+
+SORT_MEMBER_DOCS       = yes
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
+# tag is set to YES, then doxygen will reuse the documentation of the first 
+# member in the group (if any) for the other members of the group. By default 
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC   = no
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE               = 8
+
+# The ENABLED_SECTIONS tag can be used to enable conditional 
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS       = 
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or 
+# disable (NO) the todo list. This list is created by putting \todo 
+# commands in the documentation.
+
+GENERATE_TODOLIST      = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or 
+# disable (NO) the test list. This list is created by putting \test 
+# commands in the documentation.
+
+GENERATE_TESTLIST      = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or 
+# disable (NO) the bug list. This list is created by putting \bug 
+# commands in the documentation.
+
+GENERATE_BUGLIST       = YES
+
+# This tag can be used to specify a number of aliases that acts 
+# as commands in the documentation. An alias has the form "name=value". 
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
+# put the command \sideeffect (or @sideeffect) in the documentation, which 
+# will result in a user defined paragraph with heading "Side Effects:". 
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES                = 
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
+# the initial value of a variable or define consist of for it to appear in 
+# the documentation. If the initializer consists of more lines than specified 
+# here it will be hidden. Use a value of 0 to hide initializers completely. 
+# The appearance of the initializer of individual variables and defines in the 
+# documentation can be controlled using \showinitializer or \hideinitializer 
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES  = 30
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources 
+# only. Doxygen will then generate output that is more tailored for C. 
+# For instance some of the names that are used will be different. The list 
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C  = yes
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
+# at the bottom of the documentation of classes and structs. If set to YES the 
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES        = no
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated 
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET                  = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are 
+# generated by doxygen. Possible values are YES and NO. If left blank 
+# NO is used.
+
+WARNINGS               = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED   = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that 
+# doxygen can produce. The string should contain the $file, $line, and $text 
+# tags, which will be replaced by the file and line number from which the 
+# warning originated and the warning text.
+
+WARN_FORMAT            = "$text in $file line $line"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning 
+# and error messages should be written. If left blank the output is written 
+# to stderr.
+
+WARN_LOGFILE           = warning
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain 
+# documented source files. You may enter file names like "myfile.cpp" or 
+# directories like "/usr/src/myproject". Separate the files or directories 
+# with spaces.
+
+INPUT                  = @M17NLIB@/src/
+
+# If the value of the INPUT tag contains directories, you can use the 
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
+# and *.h) to filter out the source-files in the directories. If left 
+# blank all files are included.
+
+FILE_PATTERNS          = *.h *.c
+
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
+# should be searched for input files as well. Possible values are YES and NO. 
+# If left blank NO is used.
+
+RECURSIVE              = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should 
+# excluded from the INPUT source files. This way you can easily exclude a 
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE                = 
+
+# If the value of the INPUT tag contains directories, you can use the 
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
+# certain files from those directories.
+
+EXCLUDE_PATTERNS       = 
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or 
+# directories that contain example code fragments that are included (see 
+# the \include command).
+
+EXAMPLE_PATH           = 
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
+# and *.h) to filter out the source-files in the directories. If left 
+# blank all files are included.
+
+EXAMPLE_PATTERNS       = 
+
+# The IMAGE_PATH tag can be used to specify one or more files or 
+# directories that contain image that are included in the documentation (see 
+# the \image command).
+
+IMAGE_PATH             = /project/mule/m17n-lib/docs/doxygen/images
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should 
+# invoke to filter for each input file. Doxygen will invoke the filter program 
+# by executing (via popen()) the command <filter> <input-file>, where <filter> 
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
+# input file. Doxygen will then use the output that the filter program writes 
+# to standard output.
+
+INPUT_FILTER           = @srcdir@/utils/%DEV_OR_USR_OR_JA%_filter.rb
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
+# INPUT_FILTER) will be used to filter the input files when producing source 
+# files to browse.
+
+FILTER_SOURCE_FILES    = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
+# of all compounds will be generated. Enable this if the project 
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX     = yes
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX    = 5
+
+# In case all classes in a project start with a common prefix, all 
+# classes will be put under the same header in the alphabetical index. 
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX          = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
+# generate HTML output.
+
+GENERATE_HTML          = %GENERATE_HTML%
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT            = 
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for 
+# each generated HTML page. If it is left blank doxygen will generate a 
+# standard header.
+
+HTML_HEADER            = @srcdir@/header.html
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
+# each generated HTML page. If it is left blank doxygen will generate a 
+# standard footer.
+
+HTML_FOOTER            = @srcdir@/footer.html
+
+# The HTML_STYLESHEET tag can be used to specify a user defined cascading 
+# style sheet that is used by each HTML page. It can be used to 
+# fine-tune the look of the HTML output. If the tag is left blank doxygen 
+# will generate a default style sheet
+
+HTML_STYLESHEET        = @srcdir@/m17nlib.css
+# HTML_STYLESHEET        = 
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
+# files or namespaces will be aligned in HTML using tables. If set to 
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS     = yes
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
+# will be generated that can be used as input for tools like the 
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP      = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
+# controls if a separate .chi index file is generated (YES) or that 
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI           = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
+# controls whether a binary table of contents is generated (YES) or a 
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC             = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members 
+# to the contents of the Html help documentation and to the tree view.
+
+TOC_EXPAND             = yes
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
+# top of each HTML page. The value NO (the default) enables the index and 
+# the value YES disables it.
+
+DISABLE_INDEX          = no
+
+# This tag can be used to set the number of enum values (range [1..20]) 
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE   = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that 
+# is generated for HTML Help). For this to work a browser that supports 
+# JavaScript and frames is required (for instance Netscape 4.0+ 
+# or Internet explorer 4.0+).
+
+GENERATE_TREEVIEW      = no
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
+# used to set the initial width (in pixels) of the frame in which the tree 
+# is shown.
+
+TREEVIEW_WIDTH         = 220
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
+# generate Latex output.
+
+GENERATE_LATEX         = %GENERATE_LATEX%
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT           = 
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
+# LaTeX documents. This may be useful for small projects and may help to 
+# save some trees in general.
+
+COMPACT_LATEX          = yes
+
+# The PAPER_TYPE tag can be used to set the paper type that is used 
+# by the printer. Possible values are: a4, a4wide, letter, legal and 
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE             = a4
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES         = 
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
+# the generated latex document. The header should contain everything until 
+# the first chapter. If it is left blank doxygen will generate a 
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER           = @srcdir@/header.tex
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
+# contain links (just like the HTML output) instead of page references 
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS         = no
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
+# plain latex in the generated Makefile. Set this option to YES to get a 
+# higher quality PDF documentation.
+
+USE_PDFLATEX           = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
+# command to the generated LaTeX files. This will instruct LaTeX to keep 
+# running if errors occur, instead of asking the user for help. 
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE        = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
+# The RTF output is optimised for Word 97 and may not look very pretty with 
+# other RTF readers or editors.
+
+GENERATE_RTF           = no
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT             = 
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
+# RTF documents. This may be useful for small projects and may help to 
+# save some trees in general.
+
+COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
+# will contain hyperlink fields. The RTF file will 
+# contain links (just like the HTML output) instead of page references. 
+# This makes the output suitable for online browsing using WORD or other 
+# programs which support those fields. 
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS         = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's 
+# config file, i.e. a series of assigments. You only have to provide 
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE    = 
+
+# Set optional variables used in the generation of an rtf document. 
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE    = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
+# generate man pages
+
+GENERATE_MAN           = no
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT             = 
+
+# The MAN_EXTENSION tag determines the extension that is added to 
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION          = 
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS              = yes
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will 
+# generate an XML file that captures the structure of 
+# the code including all documentation. Note that this 
+# feature is still experimental and incomplete at the 
+# moment.
+
+GENERATE_XML           = no
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor   
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
+# evaluate all C-preprocessor directives found in the sources and include 
+# files.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
+# names in the source code. If set to NO (the default) only conditional 
+# compilation will be performed. Macro expansion can be done in a controlled 
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION        = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
+# then the macro expansion is limited to the macros specified with the 
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF     = YES
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that 
+# contain include files that are not input files but should be processed by 
+# the preprocessor.
+
+INCLUDE_PATH           = 
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
+# patterns (like *.h and *.hpp) to filter out the header-files in the 
+# directories. If left blank, the patterns specified with FILE_PATTERNS will 
+# be used.
+
+INCLUDE_FILE_PATTERNS  = 
+
+# The PREDEFINED tag can be used to specify one or more macro names that 
+# are defined before the preprocessor is started (similar to the -D option of 
+# gcc). The argument of the tag is a list of macros of the form: name 
+# or name=definition (no spaces). If the definition and the = are 
+# omitted =1 is assumed.
+
+PREDEFINED             = 
+
+# If the MACRO_EXPANSION and EXPAND_PREDEF_ONLY tags are set to YES then 
+# this tag can be used to specify a list of macro names that should be expanded. 
+# The macro definition that is found in the sources will be used. 
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED      = 
+
+#---------------------------------------------------------------------------
+# Configuration::addtions related to external references   
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tagfiles.
+
+TAGFILES               = 
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE       = m17n.tag
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
+# in the class index. If set to NO only the inherited external classes 
+# will be listed.
+
+ALLEXTERNALS           = NO
+
+# The PERL_PATH should be the absolute path and name of the perl script 
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH              = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool   
+#---------------------------------------------------------------------------
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
+# available from the path. This tool is part of Graphviz, a graph visualization 
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT               = NO
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
+# will generate a graph for each documented class showing the direct and 
+# indirect inheritance relations. Setting this tag to YES will force the 
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
+# will generate a graph for each documented class showing the direct and 
+# indirect implementation dependencies (inheritance, containment, and 
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH    = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
+# tags are set to YES then doxygen will generate a graph for each documented 
+# file showing the direct and indirect include dependencies of the file with 
+# other documented files.
+
+INCLUDE_GRAPH          = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
+# documented header file showing the documented files that directly or 
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY    = yes
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be 
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH               = 
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
+# this value, doxygen will try to truncate the graph, so that it fits within 
+# the specified constraint. Beware that most browsers cannot cope with very 
+# large images.
+
+MAX_DOT_GRAPH_WIDTH    = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
+# this value, doxygen will try to truncate the graph, so that it fits within 
+# the specified constraint. Beware that most browsers cannot cope with very 
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT   = 1024
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
+# generate a legend page explaining the meaning of the various boxes and 
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
+# remove the intermedate dot files that are used to generate 
+# the various graphs.
+
+DOT_CLEANUP            = YES
+
+#---------------------------------------------------------------------------
+# Configuration::addtions related to the search engine   
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be 
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE           = no
+
+# The CGI_NAME tag should be the name of the CGI script that 
+# starts the search engine (doxysearch) with the correct parameters. 
+# A script with this name will be generated by doxygen.
+
+CGI_NAME               = m17n-lib-cgi
+
+# The CGI_URL tag should be the absolute URL to the directory where the 
+# cgi binaries are located. See the documentation of your http daemon for 
+# details.
+
+CGI_URL                = http://mule.m17n.org/cgi-bin
+
+# The DOC_URL tag should be the absolute URL to the directory where the 
+# documentation is located. If left blank the absolute path to the 
+# documentation, with file:// prepended to it, will be used.
+
+DOC_URL                = http://mule.m17n.org/m17n-lib/%DEV_OR_USR_OR_JA%/html/
+
+# The DOC_ABSPATH tag should be the absolute path to the directory where the 
+# documentation is located. If left blank the directory on the local machine 
+# will be used.
+
+DOC_ABSPATH            = @srcdir@/%DEV_OR_USR_OR_JA%/html
+
+# The BIN_ABSPATH tag must point to the directory where the doxysearch binary 
+# is installed.
+
+BIN_ABSPATH            = /usr/local/bin
+
+# The EXT_DOC_PATHS tag can be used to specify one or more paths to 
+# documentation generated for other projects. This allows doxysearch to search 
+# the documentation for these projects as well.
+
+EXT_DOC_PATHS          = 
diff --git a/footer.html b/footer.html
new file mode 100644 (file)
index 0000000..18b4824
--- /dev/null
@@ -0,0 +1,10 @@
+<hr>
+<a href="#top-of-page">Top of this page</a>
+<ADDRESS>
+<a href = "http://www.m17n.org/index.en.html" target = "mulewindow"><img src= "../../smallmule.gif" align=bottom alt="mulemark" border=0></a>
+<A HREF="mule-aist@m17n.org">mule-aist@m17n.org</a>
+
+</ADDRESS>
+</body>
+</HTML>
+
diff --git a/footer.html.ja b/footer.html.ja
new file mode 100644 (file)
index 0000000..dc00938
--- /dev/null
@@ -0,0 +1,10 @@
+<hr>
+<a href="#top-of-page">¤³¤Î¥Ú¡¼¥¸¤ÎÀèƬ¤ËÌá¤ë</a>
+<ADDRESS>
+<a href = "http://www.m17n.org/index.en.html" target = "mulewindow">m17n.org
+<img src= "../../smallmule.gif" align=bottom alt="mulemark" border=0></a>
+Copyright (C) 2002 AIST and IPA
+</ADDRESS>
+</body>
+</HTML>
+
diff --git a/head.ps b/head.ps
new file mode 100644 (file)
index 0000000..1470b54
--- /dev/null
+++ b/head.ps
@@ -0,0 +1,2 @@
+%!PS-Adobe-2.0
+/pdfmark { cleartomark } def
diff --git a/header.html b/header.html
new file mode 100644 (file)
index 0000000..177c8b0
--- /dev/null
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset="usascii">
+<title>Multilingual Library for Unix/Linux </title>
+<link href="m17nlib.css" rel="stylesheet" type="text/css">
+</head>
+
+<body bgcolor="#ffffff">
+
+<center>
+<!--  <a href = "http://www.m17n.org/m17n-lib/index.ja.html">About m17n-lib project (in Japanese)</a> &nbsp -->
+<!-- <a href = "http://mule.m17n.org/cgi-bin/namazu.cgi">Search with namazu</a>
+</center> -->
+
+<a name="top-of-page"></a>
+
+<hr>
\ No newline at end of file
diff --git a/header.html.ja b/header.html.ja
new file mode 100644 (file)
index 0000000..595328a
--- /dev/null
@@ -0,0 +1,16 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset="EUC-JP">
+<title>Unix/Linux ¸þ¤±Â¿¸À¸ì¥é¥¤¥Ö¥é¥ê</title>
+<link href="m17nlib.css" rel="stylesheet" type="text/css">
+</head>
+
+<body bgcolor="#ffffff">
+
+<center>
+<!--  <a href = "http://www.m17n.org/m17n-lib/index.ja.html">About m17n-lib project (in Japanese)</a> &nbsp -->
+<!-- <a href = "http://mule.m17n.org/cgi-bin/namazu.cgi">Search with namazu</a>
+</center> -->
+
+<a name="top-of-page"></a>
+
+<hr>
\ No newline at end of file
diff --git a/header.tex b/header.tex
new file mode 100644 (file)
index 0000000..7325f98
--- /dev/null
@@ -0,0 +1 @@
+\input{header.tex}
diff --git a/m17nlib.css b/m17nlib.css
new file mode 100644 (file)
index 0000000..8a074ee
--- /dev/null
@@ -0,0 +1,23 @@
+H1 { text-align: center; font-family: cursive}
+A.qindex {}
+A.qindexRef {color: fuchsia}
+A.el { text-decoration: none; font-weight: bold }
+A.elRef { font-weight: bold }
+A.code { text-decoration: none; font-weight: normal; color: #4444ee }
+A.codeRef { font-weight: normal; color: #4444ee }
+A:hover { text-decoration: none; background-color: #f2f2ff }
+A:active {text-decoration: none; color: white; background-color: navy }
+DL.el { margin-left: -1cm }
+DIV.fragment { width: 100%; border: none; background-color: #eeeeee }
+DIV.ah { background-color: navy; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
+TD.md { background-color: #f2f2ff; font-weight: bold; }
+TD.mdname { background-color: #f2f2ff; font-weight: bold; font-style: italic }
+DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold }
+DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller }
+FONT.keyword       { color: #008000 }
+FONT.keywordtype   { color: #604020 }
+FONT.keywordflow   { color: #e08000 }
+FONT.comment       { color: #800000 }
+FONT.preprocessor  { color: #806020 }
+FONT.stringliteral { color: #002080 }
+FONT.charliteral   { color: #008080 }
diff --git a/mainpage.en.html b/mainpage.en.html
new file mode 100644 (file)
index 0000000..c89226d
--- /dev/null
@@ -0,0 +1,15 @@
+Multilingual Library m17n-lib is a C language library that provides
+the following basic maultilingual facilities for application software. 
+
+<DL>
+<DT><em> M-text </em><DD> A data structure used as objects for multilingual text. 
+<DT> Functions and macros <DD> Functions and macros for handling M-text.
+<DT> Decoder/Encoder <DD> Decoder/Encoder converts M-text from/to byte sequences
+in many kinds of formats.
+<DT> Huge space for character <DD> A character space that can contain all Unicode
+characters and the same number of non-Unicode characters.
+<DT> <em> CharTable </em> <DD> A data structure to store
+character-related attirubtes efficiently.
+<DT> User Interface for window systems <DD> Display and input of
+M-text on window systems.  
+</DL>
diff --git a/mainpage.ja.html b/mainpage.ja.html
new file mode 100644 (file)
index 0000000..726bd62
--- /dev/null
@@ -0,0 +1,14 @@
+¿¸À¸ì½èÍý¥é¥¤¥Ö¥é¥ê m17n-lib¤Ï C ¸À¸ìÍѥ饤¥Ö¥é¥ê¤Ç¤¢¤ê¡¢Â¿¸À¸ìʸ½ñ¤ò
+°·¤¦°Ê²¼¤Î´ðËܵ¡Ç½¤ò¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥×¥í¥°¥é¥à¤ËÄ󶡤¹¤ë¡£
+
+<UL>
+<LI> Â¿¸À¸ì¥Æ¥­¥¹¥ÈÍÑ¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¤Î¹½Â¤ÂΠ<it> M-text </it> 
+<LI> M-text ¤ò°·¤¦¤¿¤á¤Î¿¤¯¤Î´Ø¿ô¡¦¥Þ¥¯¥í·²¡£¼ï¡¹¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ç
+     ¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Æ¥­¥¹¥È¤È M-text ´Ö¤ÎÊÑ´¹¤ò¹Ô¤¦¥Ç¥³¡¼¥À¤È¥¨¥ó¥³¡¼¥À
+<LI> Unicode ¤ÎÁ´¤Æ¤Îʸ»ú¤Î¾¤Ë¡¢¤½¤ì¤ÈƱ¤¸¿ô¤ÎÈó Unicode Ê¸»ú¤ò°·
+    ¤¦¤³¤È¤Î¤Ç¤­¤ëµðÂç¤Êʸ»ú¶õ´Ö
+
+<LI> Ê¸»úËè¤Î¾ðÊó¤ò¸úΨÎɤ¯³ÊǼ¤¹¤ë¹½Â¤ÂΠ<it> CharTable </it>
+
+<LI> M-text¤Î¥¦¥£¥ó¥É¥¦¥·¥¹¥Æ¥à¾å¤Ç¤Îɽ¼¨¤ÈÆþÎÏ
+</UL>
\ No newline at end of file
diff --git a/smallmule.gif b/smallmule.gif
new file mode 100755 (executable)
index 0000000..4d56c7c
Binary files /dev/null and b/smallmule.gif differ
diff --git a/styles/backref.sty b/styles/backref.sty
new file mode 100644 (file)
index 0000000..f9a19ae
--- /dev/null
@@ -0,0 +1,151 @@
+%%
+%% This is file `backref.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% backref.dtx  (with options: `package')
+%% 
+\def\fileversion{1.19}
+\def\filedate{2000/01/19}
+%% File: backref.dtx Copyright (C) 1995, 1996, 1997, 1999 David Carlisle, Sebastian Rahtz
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+\ProvidesPackage{backref}%
+  [\filedate\space v\fileversion\space Bibliographical back referencing]
+\newif\ifBR@verbose
+\@ifundefined{ifHy@verbose}{%
+  \BR@verbosefalse
+}{%
+  \let\ifBR@verbose\ifHy@verbose
+}
+\DeclareOption{verbose}{\BR@verbosetrue}
+\long\def\page@backref#1#2#3{#1}
+\long\def\section@backref#1#2#3{#2}
+\long\def\hyper@section@backref#1#2#3{\hyperlink{#3}{#2}}
+\long\def\hyper@page@backref#1#2#3{\hyperlink{page.#1}{#1}}
+\def\backrefpagesname{pages}
+\def\backrefsectionsname{sections}
+\DeclareOption{pageref}{%
+  \def\backref{\backrefpagesname\ }%
+  \let\backrefxxx\page@backref
+}
+\DeclareOption{ref}{%
+  \def\backref{\backrefsectionsname\ }%
+  \let\backrefxxx\section@backref
+}
+\DeclareOption{hyperref}{%
+  \def\backref{}\let\backrefxxx\hyper@section@backref
+}
+\DeclareOption{hyperpageref}{%
+  \def\backref{}\let\backrefxxx\hyper@page@backref
+}
+\ExecuteOptions{pageref}
+\ProcessOptions
+\def\BR@bibitem{\@ifnextchar[\BR@@lbibitem\BR@@bibitem}
+\def\BR@@lbibitem[#1]#2#3\par{%
+  \BRorg@bibitem[#1]{#2}#3
+  \newblock
+  \backref{\csname br@#2\endcsname}%
+  \par
+}%
+\def\BR@@bibitem#1#2\par{%
+  \BRorg@bibitem{#1}#2
+  \newblock
+  \backref{\csname br@#1\endcsname}%
+  \par
+}
+\@ifundefined{newblock}{\def\newblock{\par}}{}
+\def\backcite#1#2{%
+  \@for\x:=#1\do{%
+    \edef\x{\expandafter\@firstofone\x\@empty}%
+    \expandafter\ifx\csname br@\x\endcsname\relax
+      \expandafter\protected@xdef\csname br@\x\endcsname{%
+        \protect\backrefxxx#2%
+      }%
+    \else
+      \begingroup
+        \expandafter\def\expandafter\reserved@a\expandafter{%
+          \backrefxxx#2%
+        }%
+        \let\BRorg@backrefxxx\backrefxxx
+        \global\let\BR@found=N%
+        \long\def\backrefxxx##1##2##3{%
+          \expandafter\def\expandafter\reserved@b\expandafter{%
+            \BRorg@backrefxxx{##1}{##2}{##3}%
+          }%
+          \ifx\reserved@a\reserved@b
+            \global\let\BR@found=Y%
+          \fi
+        }%
+        \setbox\@tempboxa\hbox{\csname br@\x\endcsname}%
+      \endgroup
+      \if N\BR@found
+        \expandafter\protected@xdef\csname br@\x\endcsname{%
+          \csname br@\x\endcsname, %
+          \protect\backrefxxx#2%
+        }%
+      \fi
+    \fi
+  }%
+}
+\def\@currentHref{}
+\AtBeginDocument{%
+  \let\BRorg@bibitem\bibitem
+  \let\bibitem\BR@bibitem
+  \let\BRorg@thebibliography\thebibliography
+  \def\thebibliography{%
+    \@starttoc{brf}{}%
+    \BRorg@thebibliography
+  }%
+  \@ifundefined{NAT@parse}{%
+    \global\let\BRorg@citex\@citex
+    \global\let\@citex\BR@citex
+  }{%
+    \PackageInfo{backref}{** backref set up for natbib **}%
+  }%
+}
+\def\BR@citex[#1]#2{%
+  \BRorg@citex[#1]{#2}%
+  \ifBR@verbose
+    \PackageInfo{backref}{back cite \string`#2\string'}%
+  \fi
+  \Hy@backout{#2}%
+}
+\@ifpackageloaded{chicago}{%
+  \let\BRorg@citedatax\@citedatax
+  \def\@citedatax[#1]#2{%
+    \BRorg@citedatax[#1]{#2}%
+    \Hy@backout{#2}%
+  }%
+}{}
+\def\Hy@backout#1{%
+  \@bsphack
+  \ifx\@empty\@currentlabel
+    \protected@write\@auxout{}{%
+      \string\@writefile{brf}{%
+        \string\backcite{#1}{{\thepage}{(document)}{Doc-Start}}%
+      }%
+    }%
+  \else
+   \protected@write\@auxout{}{%
+     \string\@writefile{brf}{%
+       \string\backcite{#1}{{\thepage}{\@currentlabel}{\@currentHref}}%
+     }%
+   }%
+  \fi
+  \@esphack
+}
+\endinput
+%%
+%% End of file `backref.sty'.
diff --git a/styles/doxygen-m17n.sty b/styles/doxygen-m17n.sty
new file mode 100644 (file)
index 0000000..1faac7f
--- /dev/null
@@ -0,0 +1,82 @@
+%      -*- coding: euc-jp; -*-
+\ProvidesPackage{doxygen-m17n}
+
+%\usepackage{times}
+
+%% Don't leave the space for marginal notes.
+\setlength{\textwidth}{\paperwidth}
+\addtolength{\textwidth}{-2in}
+\setlength{\headwidth}{\textwidth}
+\setlength{\oddsidemargin}{0pt}
+\setlength{\evensidemargin}{0pt}
+\setlength{\marginparsep}{0pt}
+\setlength{\marginparwidth}{0pt}
+\addtolength{\textheight}{\footskip}
+
+\def\sectionmark#1{\markboth
+{\MakeUppercase{\ifnum \c@secnumdepth>\z@
+ \thesection\hskip 1em\relax \fi #1}}{}}
+\def\sectionmark#1{\markboth{\MakeUppercase{#1}}{}}
+
+%% Don't write footers.
+\rfoot[]{}
+\lfoot[]{}
+
+%% Fixing incorrest indentation of the original `CompactItemize'
+%% environment.
+\renewenvironment{CompactItemize}
+{
+  \bgroup
+  \def\@listi{\leftmargin\leftmargini
+            \parsep 0\p@  \@plus2.5\p@ \@minus\p@
+            \topsep 10\p@ \@plus4\p@   \@minus6\p@
+            \itemsep0\p@  \@plus2.5\p@ \@minus\p@}
+  \def\@listii {\leftmargin\leftmarginii
+              \labelwidth\leftmarginii
+              \advance\labelwidth-\labelsep
+              \topsep    5\p@   \@plus2.5\p@ \@minus\p@
+              \parsep    0\p@ \@plus\p@    \@minus\p@
+              \itemsep   \parsep}
+  \begin{itemize}
+  \setlength{\leftskip}{-1.5em}
+}
+{\end{itemize}\egroup}
+
+\renewenvironment{Desc}
+{\begin{list}{}
+  {
+    \settowidth{\labelwidth}{40pt}
+    \setlength{\leftmargin}{\labelwidth}
+%    \setlength{\parsep}{0pt}
+    \setlength{\itemsep}{-4pt}
+    \renewcommand{\makelabel}{\entrylabel}
+  }
+}
+{\end{list}}
+
+
+%% Use arabic numbers in the second level `enumerate' environment.
+\renewcommand\theenumii{\@arabic\c@enumii}
+
+%% Treat `_' as a normal letter.
+\catcode`\_11\relax
+
+%% Make each section start with a new page.
+\let\origsection\section
+\def\newsection{\cleardoublepage\origsection}
+\def\sectionOnNewpage{\let\section\newsection}
+
+%% Cross reference for IPA document.
+\def\IPAlabel#1{\label{IPA:#1}}
+\def\IPAref#1{\texttt{#1} (P.\pageref{IPA:#1})}
+\def\IPApage#1{(P.\pageref{IPA:#1})}
+
+\let\origtt\tt
+\let\origbf\bf
+\newif\iftt
+\def\tt{\tttrue\origtt}
+\def\bf{\iftt\else\origbf\fi}
+\def\em{\ttfamily\bfseries}
+%{\catcode`"=\active\gdef"{{\catcode`"=12\verb+"+}}}
+%\catcode`"=\active
+%\def\includegraphics[#1]#2{}
diff --git a/styles/fancyhdr.sty b/styles/fancyhdr.sty
new file mode 100644 (file)
index 0000000..f1d70f7
--- /dev/null
@@ -0,0 +1,366 @@
+% fancyhdr.sty version 2.0
+% Fancy headers and footers for LaTeX.
+% Piet van Oostrum, 
+% Dept of Computer and Information Sciences, University of Utrecht,
+% Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands
+% Telephone: +31 30 2532180. Email: piet@cs.uu.nl
+% ========================================================================
+% LICENCE:
+% This file may be distributed under the terms of the LaTeX Project Public
+% License, as described in lppl.txt in the base LaTeX distribution.
+% Either version 1 or, at your option, any later version.
+% ========================================================================
+% MODIFICATION HISTORY:
+% Sep 16, 1994
+% version 1.4: Correction for use with \reversemargin
+% Sep 29, 1994:
+% version 1.5: Added the \iftopfloat, \ifbotfloat and \iffloatpage commands
+% Oct 4, 1994:
+% version 1.6: Reset single spacing in headers/footers for use with
+% setspace.sty or doublespace.sty
+% Oct 4, 1994:
+% version 1.7: changed \let\@mkboth\markboth to
+% \def\@mkboth{\protect\markboth} to make it more robust
+% Dec 5, 1994:
+% version 1.8: corrections for amsbook/amsart: define \@chapapp and (more
+% importantly) use the \chapter/sectionmark definitions from ps@headings if
+% they exist (which should be true for all standard classes).
+% May 31, 1995:
+% version 1.9: The proposed \renewcommand{\headrulewidth}{\iffloatpage...
+% construction in the doc did not work properly with the fancyplain style. 
+% June 1, 1995:
+% version 1.91: The definition of \@mkboth wasn't restored on subsequent
+% \pagestyle{fancy}'s.
+% June 1, 1995:
+% version 1.92: The sequence \pagestyle{fancyplain} \pagestyle{plain}
+% \pagestyle{fancy} would erroneously select the plain version.
+% June 1, 1995:
+% version 1.93: \fancypagestyle command added.
+% Dec 11, 1995:
+% version 1.94: suggested by Conrad Hughes <chughes@maths.tcd.ie>
+% CJCH, Dec 11, 1995: added \footruleskip to allow control over footrule
+% position (old hardcoded value of .3\normalbaselineskip is far too high
+% when used with very small footer fonts).
+% Jan 31, 1996:
+% version 1.95: call \@normalsize in the reset code if that is defined,
+% otherwise \normalsize.
+% this is to solve a problem with ucthesis.cls, as this doesn't
+% define \@currsize. Unfortunately for latex209 calling \normalsize doesn't
+% work as this is optimized to do very little, so there \@normalsize should
+% be called. Hopefully this code works for all versions of LaTeX known to
+% mankind.  
+% April 25, 1996:
+% version 1.96: initialize \headwidth to a magic (negative) value to catch
+% most common cases that people change it before calling \pagestyle{fancy}.
+% Note it can't be initialized when reading in this file, because
+% \textwidth could be changed afterwards. This is quite probable.
+% We also switch to \MakeUppercase rather than \uppercase and introduce a
+% \nouppercase command for use in headers. and footers.
+% May 3, 1996:
+% version 1.97: Two changes:
+% 1. Undo the change in version 1.8 (using the pagestyle{headings} defaults
+% for the chapter and section marks. The current version of amsbook and
+% amsart classes don't seem to need them anymore. Moreover the standard
+% latex classes don't use \markboth if twoside isn't selected, and this is
+% confusing as \leftmark doesn't work as expected.
+% 2. include a call to \ps@empty in ps@@fancy. This is to solve a problem
+% in the amsbook and amsart classes, that make global changes to \topskip,
+% which are reset in \ps@empty. Hopefully this doesn't break other things.
+% May 7, 1996:
+% version 1.98:
+% Added % after the line  \def\nouppercase
+% May 7, 1996:
+% version 1.99: This is the alpha version of fancyhdr 2.0
+% Introduced the new commands \fancyhead, \fancyfoot, and \fancyhf.
+% Changed \headrulewidth, \footrulewidth, \footruleskip to
+% macros rather than length parameters, In this way they can be
+% conditionalized and they don't consume length registers. There is no need
+% to have them as length registers unless you want to do calculations with
+% them, which is unlikely. Note that this may make some uses of them
+% incompatible (i.e. if you have a file that uses \setlength or \xxxx=)
+% May 10, 1996:
+% version 1.99a:
+% Added a few more % signs
+% May 10, 1996:
+% version 1.99b:
+% Changed the syntax of \f@nfor to be resistent to catcode changes of :=
+% Removed the [1] from the defs of \lhead etc. because the parameter is
+% consumed by the \@[xy]lhead etc. macros.
+% June 24, 1997:
+% version 1.99c:
+% corrected \nouppercase to also include the protected form of \MakeUppercase
+% \global added to manipulation of \headwidth.
+% \iffootnote command added.
+% Some comments added about \@fancyhead and \@fancyfoot.
+% Aug 24, 1998
+% version 1.99d
+% Changed the default \ps@empty to \ps@@empty in order to allow
+% \fancypagestyle{empty} redefinition.
+% Oct 11, 2000
+% version 2.0
+% Added LPPL license clause.
+%
+% A check for \headheight is added. An errormessage is given (once) if the
+% header is too large. Empty headers don't generate the error even if
+% \headheight is very small or even 0pt. 
+% Warning added for the use of 'E' option when twoside option is not used.
+% In this case the 'E' fields will never be used.
+%
+
+\def\ifancy@mpty#1{\def\temp@a{#1}\ifx\temp@a\@empty}
+
+\def\fancy@gdef#1#2{\ifancy@mpty{#2}\gdef#1{\leavevmode}\else\gdef#1{#2\strut}\fi}
+\def\fancy@ldef#1#2{\ifancy@mpty{#2}\def#1{\leavevmode}\else\def#1{#2\strut}\fi}
+
+\let\fancy@def\fancy@gdef
+
+\def\@fancyerrmsg#1{%
+        \ifx\PackageError\undefined
+        \errmessage{#1}\else
+        \PackageError{Fancyhdr}{#1}{}\fi}
+\def\@fancywarning#1{%
+        \ifx\PackageWarning\undefined
+        \errmessage{#1}\else
+        \PackageWarning{Fancyhdr}{#1}{}\fi}
+
+% Usage: \@forc \var{charstring}{command to be executed for each char}
+% This is similar to LaTeX's \@tfor, but expands the charstring.
+
+\def\@forc#1#2#3{\expandafter\f@rc\expandafter#1\expandafter{#2}{#3}}
+\def\f@rc#1#2#3{\def\temp@ty{#2}\ifx\@empty\temp@ty\else
+                                    \f@@rc#1#2\f@@rc{#3}\fi}
+\def\f@@rc#1#2#3\f@@rc#4{\def#1{#2}#4\f@rc#1{#3}{#4}}
+
+% Usage: \f@nfor\name:=list\do{body}
+% Like LaTeX's \@for but an empty list is treated as a list with an empty
+% element
+
+\newcommand{\f@nfor}[3]{\edef\@fortmp{#2}%
+    \expandafter\@forloop#2,\@nil,\@nil\@@#1{#3}}
+
+% Usage: \def@ult \cs{defaults}{argument}
+% sets \cs to the characters from defaults appearing in argument
+% or defaults if it would be empty. All characters are lowercased.
+
+\newcommand\def@ult[3]{%
+    \edef\temp@a{\lowercase{\edef\noexpand\temp@a{#3}}}\temp@a
+    \def#1{}%
+    \@forc\tmpf@ra{#2}%
+        {\expandafter\if@in\tmpf@ra\temp@a{\edef#1{#1\tmpf@ra}}{}}%
+    \ifx\@empty#1\def#1{#2}\fi}
+% 
+% \if@in <char><set><truecase><falsecase>
+%
+\newcommand{\if@in}[4]{%
+    \edef\temp@a{#2}\def\temp@b##1#1##2\temp@b{\def\temp@b{##1}}%
+    \expandafter\temp@b#2#1\temp@b\ifx\temp@a\temp@b #4\else #3\fi}
+
+\newcommand{\fancyhead}{\@ifnextchar[{\f@ncyhf h}{\f@ncyhf h[]}}
+\newcommand{\fancyfoot}{\@ifnextchar[{\f@ncyhf f}{\f@ncyhf f[]}}
+\newcommand{\fancyhf}{\@ifnextchar[{\f@ncyhf {}}{\f@ncyhf {}[]}}
+
+% The header and footer fields are stored in command sequences with
+% names of the form: \f@ncy<x><y><z> with <x> for [eo], <y> form [lcr]
+% and <z> from [hf].
+
+\def\f@ncyhf#1[#2]#3{%
+    \def\temp@c{}%
+    \@forc\tmpf@ra{#2}%
+        {\expandafter\if@in\tmpf@ra{eolcrhf,EOLCRHF}%
+            {}{\edef\temp@c{\temp@c\tmpf@ra}}}%
+    \ifx\@empty\temp@c\else
+        \@fancyerrmsg{Illegal char `\temp@c' in fancyhdr argument:
+          [#2]}%
+    \fi
+    \f@nfor\temp@c{#2}%
+        {\def@ult\f@@@eo{eo}\temp@c
+         \if@twoside\else
+           \if\f@@@eo e\@fancywarning
+             {fancyhdr's E option without twoside option is useless}\fi\fi
+         \def@ult\f@@@lcr{lcr}\temp@c
+         \def@ult\f@@@hf{hf}{#1\temp@c}%
+         \@forc\f@@eo\f@@@eo
+             {\@forc\f@@lcr\f@@@lcr
+                 {\@forc\f@@hf\f@@@hf
+                     {\expandafter\fancy@def\csname
+                      f@ncy\f@@eo\f@@lcr\f@@hf\endcsname
+                      {#3}}}}}}
+
+% Fancyheadings version 1 commands. These are more or less deprecated,
+% but they continue to work.
+
+\newcommand{\lhead}{\@ifnextchar[{\@xlhead}{\@ylhead}}
+\def\@xlhead[#1]#2{\fancy@def\f@ncyelh{#1}\fancy@def\f@ncyolh{#2}}
+\def\@ylhead#1{\fancy@def\f@ncyelh{#1}\fancy@def\f@ncyolh{#1}}
+
+\newcommand{\chead}{\@ifnextchar[{\@xchead}{\@ychead}}
+\def\@xchead[#1]#2{\fancy@def\f@ncyech{#1}\fancy@def\f@ncyoch{#2}}
+\def\@ychead#1{\fancy@def\f@ncyech{#1}\fancy@def\f@ncyoch{#1}}
+
+\newcommand{\rhead}{\@ifnextchar[{\@xrhead}{\@yrhead}}
+\def\@xrhead[#1]#2{\fancy@def\f@ncyerh{#1}\fancy@def\f@ncyorh{#2}}
+\def\@yrhead#1{\fancy@def\f@ncyerh{#1}\fancy@def\f@ncyorh{#1}}
+
+\newcommand{\lfoot}{\@ifnextchar[{\@xlfoot}{\@ylfoot}}
+\def\@xlfoot[#1]#2{\fancy@def\f@ncyelf{#1}\fancy@def\f@ncyolf{#2}}
+\def\@ylfoot#1{\fancy@def\f@ncyelf{#1}\fancy@def\f@ncyolf{#1}}
+
+\newcommand{\cfoot}{\@ifnextchar[{\@xcfoot}{\@ycfoot}}
+\def\@xcfoot[#1]#2{\fancy@def\f@ncyecf{#1}\fancy@def\f@ncyocf{#2}}
+\def\@ycfoot#1{\fancy@def\f@ncyecf{#1}\fancy@def\f@ncyocf{#1}}
+
+\newcommand{\rfoot}{\@ifnextchar[{\@xrfoot}{\@yrfoot}}
+\def\@xrfoot[#1]#2{\fancy@def\f@ncyerf{#1}\fancy@def\f@ncyorf{#2}}
+\def\@yrfoot#1{\fancy@def\f@ncyerf{#1}\fancy@def\f@ncyorf{#1}}
+
+\newdimen\headwidth
+\newcommand{\headrulewidth}{0.4pt}
+\newcommand{\footrulewidth}{\z@skip}
+\newcommand{\footruleskip}{.3\normalbaselineskip}
+
+% Fancyplain stuff shouldn't be used anymore (rather
+% \fancypagestyle{plain} should be used), but it must be present for
+% compatibility reasons.
+
+\newcommand{\plainheadrulewidth}{\z@skip}
+\newcommand{\plainfootrulewidth}{\z@skip}
+\newif\if@fancyplain \@fancyplainfalse
+\def\fancyplain#1#2{\if@fancyplain#1\else#2\fi}
+
+\headwidth=-123456789sp %magic constant
+
+% Command to reset various things in the headers:
+% a.o.  single spacing (taken from setspace.sty)
+% and the catcode of ^^M (so that epsf files in the header work if a
+% verbatim crosses a page boundary)
+% It also defines a \nouppercase command that disables \uppercase and
+% \Makeuppercase. It can only be used in the headers and footers.
+\def\fancy@reset{\restorecr
+ \def\baselinestretch{1}%
+ \def\nouppercase##1{{\let\uppercase\relax\let\MakeUppercase\relax
+     \expandafter\let\csname MakeUppercase \endcsname\relax##1}}%
+ \ifx\undefined\@newbaseline% NFSS not present; 2.09 or 2e
+   \ifx\@normalsize\undefined \normalsize % for ucthesis.cls
+   \else \@normalsize \fi
+ \else% NFSS (2.09) present
+  \@newbaseline%
+ \fi}
+
+% Initialization of the head and foot text.
+
+% The default values still contain \fancyplain for compatibility.
+\fancyhf{} % clear all
+% lefthead empty on ``plain'' pages, \rightmark on even, \leftmark on odd pages
+% evenhead empty on ``plain'' pages, \leftmark on even, \rightmark on odd pages
+\if@twoside
+  \fancyhead[el,or]{\fancyplain{}{\sl\rightmark}}
+  \fancyhead[er,ol]{\fancyplain{}{\sl\leftmark}}
+\else
+  \fancyhead[l]{\fancyplain{}{\sl\rightmark}}
+  \fancyhead[r]{\fancyplain{}{\sl\leftmark}}
+\fi
+\fancyfoot[c]{\rm\thepage} % page number
+
+% Use box 0 as a temp box and dimen 0 as temp dimen. 
+% This can be done, because this code will always
+% be used inside another box, and therefore the changes are local.
+
+\def\@fancyvbox#1#2{\setbox0\vbox{#2}\ifdim\ht0>#1\@fancywarning
+  {\string#1 is too small (\the\headheight): ^^J Make it at least \the\ht0.^^J
+    We now make it that large for the rest of the document.^^J
+    This may cause the page layout to be inconsistent, however\@gobble}%
+  \dimen0=#1\global\setlength{#1}{\ht0}\ht0=\dimen0\fi
+  \box0}
+
+% Put together a header or footer given the left, center and
+% right text, fillers at left and right and a rule.
+% The \lap commands put the text into an hbox of zero size,
+% so overlapping text does not generate an errormessage.
+% These macros have 5 parameters:
+% 1. \@lodd or \@rodd % This determines at which side the header will stick
+%    out.
+% 2. \f@ncyolh, \f@ncyelh, \f@ncyolf or \f@ncyelf. This is the left component.
+% 3. \f@ncyoch, \f@ncyech, \f@ncyocf or \f@ncyecf. This is the middle comp.
+% 4. \f@ncyorh, \f@ncyerh, \f@ncyorf or \f@ncyerf. This is the right component.
+% 5. \@lodd or \@rodd % This determines at which side the header will stick
+%    out. This is the reverse of parameter nr. 1. One of them is always
+%    \relax and the other one is \hss (after expansion).
+
+\def\@fancyhead#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset
+  \@fancyvbox\headheight{\hbox
+    {\rlap{\parbox[b]{\headwidth}{\raggedright#2}}\hfill
+      \parbox[b]{\headwidth}{\centering#3}\hfill
+      \llap{\parbox[b]{\headwidth}{\raggedleft#4}}}\headrule}}#5}
+
+\def\@fancyfoot#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset
+    \@fancyvbox\footskip{\footrule
+      \hbox{\rlap{\parbox[t]{\headwidth}{\raggedright#2}}\hfill
+        \parbox[t]{\headwidth}{\centering#3}\hfill
+        \llap{\parbox[t]{\headwidth}{\raggedleft#4}}}}}#5}
+
+\def\headrule{{\if@fancyplain\let\headrulewidth\plainheadrulewidth\fi
+    \hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}}
+
+\def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi
+    \vskip-\footruleskip\vskip-\footrulewidth
+    \hrule\@width\headwidth\@height\footrulewidth\vskip\footruleskip}}
+
+\def\ps@fancy{%
+\@ifundefined{@chapapp}{\let\@chapapp\chaptername}{}%for amsbook
+%
+% Define \MakeUppercase for old LaTeXen.
+% Note: we used \def rather than \let, so that \let\uppercase\relax (from
+% the version 1 documentation) will still work.
+%
+\@ifundefined{MakeUppercase}{\def\MakeUppercase{\uppercase}}{}%
+\@ifundefined{chapter}{\def\sectionmark##1{\markboth
+{\MakeUppercase{\ifnum \c@secnumdepth>\z@
+ \thesection\hskip 1em\relax \fi ##1}}{}}%
+\def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne
+ \thesubsection\hskip 1em\relax \fi ##1}}}%
+{\def\chaptermark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\m@ne
+ \@chapapp\ \thechapter. \ \fi ##1}}{}}%
+\def\sectionmark##1{\markright{\MakeUppercase{\ifnum \c@secnumdepth >\z@
+ \thesection. \ \fi ##1}}}}%
+%\csname ps@headings\endcsname % use \ps@headings defaults if they exist
+\ps@@fancy
+\gdef\ps@fancy{\@fancyplainfalse\ps@@fancy}%
+% Initialize \headwidth if the user didn't
+%
+\ifdim\headwidth<0sp
+%
+% This catches the case that \headwidth hasn't been initialized and the
+% case that the user added something to \headwidth in the expectation that
+% it was initialized to \textwidth. We compensate this now. This loses if
+% the user intended to multiply it by a factor. But that case is more
+% likely done by saying something like \headwidth=1.2\textwidth. 
+% The doc says you have to change \headwidth after the first call to
+% \pagestyle{fancy}. This code is just to catch the most common cases were
+% that requirement is violated.
+%
+    \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth
+\fi}
+\def\ps@fancyplain{\ps@fancy \let\ps@plain\ps@plain@fancy}
+\def\ps@plain@fancy{\@fancyplaintrue\ps@@fancy}
+\let\ps@@empty\ps@empty
+\def\ps@@fancy{%
+\ps@@empty % This is for amsbook/amsart, which do strange things with \topskip
+\def\@mkboth{\protect\markboth}%
+\def\@oddhead{\@fancyhead\@lodd\f@ncyolh\f@ncyoch\f@ncyorh\@rodd}%
+\def\@oddfoot{\@fancyfoot\@lodd\f@ncyolf\f@ncyocf\f@ncyorf\@rodd}%
+\def\@evenhead{\@fancyhead\@rodd\f@ncyelh\f@ncyech\f@ncyerh\@lodd}%
+\def\@evenfoot{\@fancyfoot\@rodd\f@ncyelf\f@ncyecf\f@ncyerf\@lodd}%
+}
+\def\@lodd{\if@reversemargin\hss\else\relax\fi}
+\def\@rodd{\if@reversemargin\relax\else\hss\fi}
+
+\newif\iffootnote
+\let\latex@makecol\@makecol
+\def\@makecol{\ifvoid\footins\footnotetrue\else\footnotefalse\fi
+\let\topfloat\@toplist\let\botfloat\@botlist\latex@makecol}
+\def\iftopfloat#1#2{\ifx\topfloat\empty #2\else #1\fi}
+\def\ifbotfloat#1#2{\ifx\botfloat\empty #2\else #1\fi}
+\def\iffloatpage#1#2{\if@fcolmade #1\else #2\fi}
+
+\newcommand{\fancypagestyle}[2]{%
+  \@namedef{ps@#1}{\let\fancy@def\fancy@ldef#2\relax\ps@fancy}}
diff --git a/styles/float.sty b/styles/float.sty
new file mode 100644 (file)
index 0000000..7fa4a1a
--- /dev/null
@@ -0,0 +1,144 @@
+%%
+%% This is file `float.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% float.dtx  (with options: `package')
+%% 
+%% IMPORTANT NOTICE:
+%% This file is a stripped version of `float.dtx',
+%% copyright (c) 1991-2000 Anselm Lingnau
+%% (lingnau@tm.informatik.uni-frankfurt.de)
+%% 
+%% This file may only be distributed together with the corresponding
+%% `float.dtx' file. See `float.dtx' for distribution conditions on
+%% the original source.
+%% 
+%% Package `float' to use with LaTeX 2e
+%% Copyright (C) 1991-2000 Anselm Lingnau, all rights reserved
+%%
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]
+\ProvidesPackage{float}
+         [2000/03/09 v1.2e Float enhancements (AL)]
+\newcounter{float@type}
+\@ifundefined{c@figure}%
+  {\setcounter{float@type}{1}}%
+  {\setcounter{float@type}{4}}
+\newcommand\floatstyle[1]{\@ifundefined{fs@#1}%
+  {\float@error{#1}}%
+  {\def\float@style{#1}}}
+\newcommand\float@error[1]{\PackageError{float}{%
+  Unknown float style `#1'
+}{\@eha}}
+\newcommand\floatname[2]{\@namedef{fname@#1}{#2}}
+\newcommand\floatplacement[2]{\@namedef{fps@#1}{#2}}
+\newcommand\restylefloat[1]{\expandafter\edef\csname
+  fst@#1\endcsname{\expandafter\noexpand\csname
+    fs@\float@style\endcsname}%
+   \@namedef{#1}{\bgroup\@nameuse{fst@#1}\@float{#1}}%
+   \@namedef{#1*}{\bgroup\@nameuse{fst@#1}\@dblfloat{#1}}%
+   \expandafter\let\csname end#1\endcsname\float@end
+   \expandafter\let\csname end#1*\endcsname\float@dblend}
+\newcommand\newfloat[3]{\@namedef{ext@#1}{#3}
+  \floatplacement{#1}{#2}%
+  \@ifundefined{fname@#1}{\floatname{#1}{#1}}{}
+  \expandafter\edef\csname ftype@#1\endcsname{\value{float@type}}%
+  \addtocounter{float@type}{\value{float@type}}
+  \restylefloat{#1}%
+  \expandafter\edef\csname fnum@#1\endcsname%
+    {\expandafter\noexpand\csname fname@#1\endcsname{}
+       \expandafter\noexpand\csname the#1\endcsname}
+  \@ifnextchar[{\@xnewfloat{#1}}%
+    {\@ifundefined{c@#1}{\newcounter{#1}\@namedef{the#1}{\arabic{#1}}}%
+      {}}}
+\def\@xnewfloat#1[#2]{\@ifundefined{c@#1}{\newcounter{#1}[#2]%
+    \expandafter\edef\csname the#1\endcsname{%
+      \expandafter\noexpand\csname
+        the#2\endcsname.\noexpand\arabic{#1}}}%
+    {\PackageWarning{float}{Can't redefine counter variable for #1.}}}
+\let\@Hxfloat\@xfloat
+\def\@xfloat#1[{\@ifnextchar{H}{\@HHfloat{#1}[}{\@Hxfloat{#1}[}}
+\newsavebox\float@box
+\newif\if@flstyle
+\def\@HHfloat#1[H]{%
+  \expandafter\let\csname end#1\endcsname\float@endH
+  \let\@currbox\float@box
+  \def\@captype{#1}\setbox\@floatcapt=\vbox{}%
+  \expandafter\ifx\csname fst@#1\endcsname\relax
+    \@flstylefalse\else\@flstyletrue\fi
+  \setbox\@currbox\color@vbox\normalcolor
+    \vbox\bgroup \hsize\columnwidth \@parboxrestore
+      \reset@font \normalsize \@setnobreak \@setminipage
+  \ignorespaces}
+\newcommand\float@makebox{%
+  \vbox{\hsize\columnwidth \@parboxrestore
+    \@fs@pre\@fs@iftopcapt
+      \ifvbox\@floatcapt\unvbox\@floatcapt\par\@fs@mid\fi
+      \unvbox\@currbox
+    \else\unvbox\@currbox
+      \ifvbox\@floatcapt\par\@fs@mid\unvbox\@floatcapt\fi
+    \fi\par\@fs@post\vskip\z@}}
+\newcommand\float@end{\global\@minipagefalse \outer@nobreak
+  \egroup \color@endbox
+  \global\setbox\@currbox\float@makebox
+   \ifnum\@floatpenalty <\z@ \@largefloatcheck
+    \@cons\@currlist\@currbox
+     \ifnum\@floatpenalty < -\@Mii
+        \penalty -\@Miv \@tempdima\prevdepth
+        \vbox{}\prevdepth \@tempdima \penalty\@floatpenalty
+      \else \vadjust{\penalty -\@Miv
+        \vbox{}\penalty\@floatpenalty}\@Esphack
+     \fi\fi\egroup}
+\newcommand\float@endH{\par\vskip\z@skip
+    \global\@minipagefalse \outer@nobreak
+  \egroup \color@endbox \vskip\intextsep
+  \if@flstyle\float@makebox\egroup\else\box\@currbox\fi
+  \vskip\intextsep\relax}
+\newcommand\float@dblend{\if@twocolumn
+  \par\vskip\z@\egroup \outer@nobreak \color@endbox
+  \global\setbox\@currbox\float@makebox
+  \ifnum\@floatpenalty <\z@ \@largefloatcheck
+    \@cons\@dbldeferlist\@currbox\fi
+    \ifnum \@floatpenalty =-\@Mii \@Esphack\fi\egroup\else\float@end\fi}
+\newsavebox\@floatcapt
+\renewcommand\caption{\refstepcounter\@captype
+  \expandafter\ifx\csname fst@\@captype\endcsname\relax
+      \let\@tempf\@caption
+    \else\let\@tempf\float@caption\fi \@dblarg{\@tempf\@captype}}
+\long\def\float@caption#1[#2]#3{\addcontentsline{\@nameuse{ext@#1}}{#1}%
+   {\protect\numberline{\@nameuse{the#1}}{\ignorespaces #2}}
+  \global\setbox\@floatcapt\vbox\bgroup\@parboxrestore
+    \normalsize\@fs@capt{\@nameuse{fnum@#1}}{\ignorespaces #3}%
+    \@ifnextchar[{\float@ccon}{\egroup}}
+\long\def\float@ccon[#1]{#1\par\egroup}
+\newcommand\listof[2]{%
+  \@ifundefined{ext@#1}{\float@error{#1}}{%
+    \@ifundefined{chapter}{\def\@tempa{\section*}}%
+      {\def\@tempa{\chapter*}}%
+    \@tempa{#2\@mkboth{\uppercase{#2}}{\uppercase{#2}}}%
+    \@namedef{l@#1}{\@dottedtocline{1}{1.5em}{2.3em}}%
+    \@starttoc{\@nameuse{ext@#1}}}}
+\newcommand\floatc@plain[2]{\setbox\@tempboxa\hbox{{\@fs@cfont #1:} #2}%
+  \ifdim\wd\@tempboxa>\hsize {\@fs@cfont #1:} #2\par
+    \else\hbox to\hsize{\hfil\box\@tempboxa\hfil}\fi}
+\newcommand\fs@plain{\def\@fs@cfont{\rmfamily}\let\@fs@capt\floatc@plain
+  \def\@fs@pre{}\def\@fs@post{}\def\@fs@mid{\vspace{10pt}\relax}%
+  \let\@fs@iftopcapt\iffalse}
+\newcommand\floatc@ruled[2]{{\@fs@cfont #1} #2\par}
+\newcommand\fs@ruled{\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@ruled
+  \def\@fs@pre{\hrule height.8pt depth0pt \kern2pt}%
+  \def\@fs@post{\kern2pt\hrule\relax}%
+  \def\@fs@mid{\kern2pt\hrule\kern2pt}%
+  \let\@fs@iftopcapt\iftrue}
+\newcommand\fs@boxed{\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@plain
+  \def\@fs@pre{\setbox\@currbox\vbox{\hbadness10000
+    \moveleft3.4pt\vbox{\advance\hsize by6.8pt
+      \hrule \hbox to\hsize{\vrule\kern3pt
+        \vbox{\kern3pt\box\@currbox\kern3pt}\kern3pt\vrule}\hrule}}}%
+  \def\@fs@mid{\kern2pt}%
+  \def\@fs@post{}\let\@fs@iftopcapt\iffalse}
+\floatstyle{plain}
+\endinput
+%%
+%% End of file `float.sty'.
diff --git a/styles/hdvipdfm.def b/styles/hdvipdfm.def
new file mode 100644 (file)
index 0000000..e01dfaa
--- /dev/null
@@ -0,0 +1,861 @@
+%%
+%% This is file `hdvipdfm.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `dvipdfm,pdfform,outlines')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hdvipdfm.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for dvipdfm]
+\def\Hy@PutCatalog#1{\@pdfm@mark{docview << #1 >>}}
+\ifHy@pagelabels
+  \def\HyPL@StorePageLabel#1{%
+    \if@filesw
+      \begingroup
+        \edef\Hy@tempa{\the\Hy@abspage\space<< #1 >> }%
+        \immediate\write\@mainaux{%
+          \string\HyPL@Entry{\Hy@tempa}%
+        }%
+      \endgroup
+    \fi
+  }
+  \AfterBeginDocument{%
+    \if@filesw
+      \immediate\write\@mainaux{%
+        \string\providecommand\string*\string\HyPL@Entry[1]{}%
+      }%
+    \fi
+    \ifx\HyPL@Labels\@empty
+      \Hy@WarningNoLine{Rerun to get /PageLabels entry}%
+    \else
+      \HyPL@SetPageLabels
+    \fi
+    \let\HyPL@Entry\@gobble
+  }%
+  \def\HyPL@Entry#1{%
+    \expandafter\gdef\expandafter\HyPL@Labels\expandafter{%
+      \HyPL@Labels
+      #1%
+    }%
+  }
+\fi
+\newsavebox{\pdfm@box}
+\def\@pdfm@mark#1{\special{pdf:#1}}
+\def\@pdfm@dest#1{%
+  \Hy@SaveLastskip
+  \@pdfm@mark{dest (#1) [@thispage /\@pdfview\space @xpos @ypos]}%
+  \Hy@RestoreLastskip
+}
+\providecommand\@pdfview{XYZ}
+\providecommand\@pdfborder{0 0 1}
+\def\hyper@anchor#1{%
+  \@pdfm@dest{#1}%
+}
+\def\hyper@anchorstart#1{%
+  \Hy@activeanchortrue
+  \@pdfm@dest{#1}%
+}
+\def\hyper@anchorend{%
+  \Hy@activeanchorfalse
+}
+\def\Hy@undefinedname{UNDEFINED}
+\def\hyper@linkstart#1#2{%
+  \protected@edef\Hy@testname{#2}%
+  \ifx\Hy@testname\@empty
+    \let\Hy@testname\Hy@undefinedname
+  \fi
+  \@pdfm@mark{%
+    bann <<
+      /Type /Annot
+      /Subtype /Link
+      /Border [\@pdfborder]
+      /C [\csname @#1bordercolor\endcsname]
+      /A <<
+        /S /GoTo
+        /D (\Hy@testname)
+      >>
+    >>
+  }%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+}
+\def\hyper@linkend{%
+  \Hy@endcolorlink
+  \@pdfm@mark{eann}%
+}
+\def\hyper@link#1#2#3{%
+  \hyper@linkstart{#1}{#2}#3\hyper@linkend
+}
+\def\hyper@linkfile#1#2#3{%
+  \@pdfm@mark{%
+    bann <<
+      /Type /Annot
+      /Subtype /Link
+      /Border [\@pdfborder]
+      /C [\@filebordercolor]
+      /A <<
+        /S /GoToR
+        /F (#2)
+        /D \ifx\\#3\\[0 \@pdfstartview]\else(#3)\fi\space
+        \ifHy@newwindow /NewWindow true \fi
+      >>
+    >>%
+  }%
+  \Hy@colorlink{\@filecolor}#1\Hy@endcolorlink
+  \@pdfm@mark{eann}%
+}
+\def\@hyper@launch run:#1\\#2#3{% filename, anchor text linkname
+  \@pdfm@mark{%
+    bann <<
+      /Type /Annot
+      /Subtype /Link
+      /Border [\@pdfborder]
+      /C [\@filebordercolor]
+      /A <<
+        /S /Launch
+        /F (#1)
+        \ifHy@newwindow /NewWindow true \fi
+        \ifx\\#3\\%
+        \else
+          /Win << /P (#3) /F (#1) >>
+        \fi
+      >>
+    >>%
+  }%
+  \Hy@colorlink{\@filecolor}#2\Hy@endcolorlink
+  \@pdfm@mark{eann}%
+}
+\def\hyper@linkurl#1#2{%
+  \@pdfm@mark{%
+    bann <<
+      /Type /Annot
+      /Subtype /Link
+      /Border [\@pdfborder]
+      /C [\@urlbordercolor]
+      /A <<
+        /S /URI
+        /URI (#2)
+      >>
+    >>%
+  }%
+  \Hy@colorlink{\@urlcolor}#1\Hy@endcolorlink
+  \@pdfm@mark{eann}%
+}
+\def\Acrobatmenu#1#2{%
+  \@pdfm@mark{%
+    bann <<
+      /Type /Annot
+      /Subtype /Link
+      /A <<
+        /S /Named
+        /N /#1
+      >>
+      /Border [\@pdfborder]
+      /C [\@menubordercolor]
+    >>%
+  }%
+  \Hy@colorlink{\@menucolor}#2\Hy@endcolorlink
+  \@pdfm@mark{eann}%
+}
+\def\@pdfproducer{dvipdfm}
+\def\PDF@FinishDoc{%
+  \@pdfm@mark{%
+    docinfo <<
+      /Title (\@pdftitle)
+      /Subject (\@pdfsubject)
+      /Creator (\@pdfcreator)
+      /Author (\@pdfauthor)
+      /Producer (\@pdfproducer)
+      /Keywords (\@pdfkeywords)
+    >>%
+  }%
+  \Hy@DisableOption{pdfauthor}%
+  \Hy@DisableOption{pdftitle}%
+  \Hy@DisableOption{pdfsubject}%
+  \Hy@DisableOption{pdfcreator}%
+  \Hy@DisableOption{pdfproducer}%
+  \Hy@DisableOption{pdfkeywords}%
+}
+\def\PDF@SetupDoc{%
+  \@pdfm@mark{%
+    docview <<
+      /Page \@pdfstartpage\space
+      /View \@pdfstartview\space
+      /URI << /Base (\@baseurl) >>
+      /PageMode \@pdfpagemode
+      /ViewerPreferences <<
+        \ifHy@toolbar\else /HideToolbar true \fi
+        \ifHy@menubar\else /HideMenubar true \fi
+        \ifHy@windowui\else /HideWindowUI true \fi
+        \ifHy@fitwindow /FitWindow true \fi
+        \ifHy@centerwindow /CenterWindow true \fi
+      >>
+      \ifx\pdf@pagelayout\@empty
+      \else
+        /PageLayout /\pdf@pagelayout\space
+      \fi
+    >>%
+  }%
+  \ifx\@pdfpagescrop\@empty
+  \else
+    \@pdfm@mark{put @pages << /CropBox [\@pdfpagescrop] >>}
+  \fi
+}
+\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
+  \typeout{Sorry, dvipdfm does not support FORM gauges}%
+}
+\def\@Form[#1]{%
+  \@ifundefined{textcolor}{\let\textcolor\@gobble}{}%
+  \setkeys{Form}{#1}%
+  \@pdfm@mark{obj @afields [ ]}%
+  \@pdfm@mark{obj @corder [ ]}%
+  \@pdfm@mark{%
+    obj @aform <<
+      /Fields @afields
+      /DR << /Font << /ZaDb @OBJZaDb /Helv @OBJHelv >> >>
+      /DA (/Helv 10 Tf 0 g )
+      /CO @corder
+      /NeedAppearances true
+    >>%
+  }%
+  \@pdfm@mark{put @catalog << /AcroForm @aform >>}%
+}
+\def\@endForm{}
+\def\dvipdfm@setdim{%
+  height \the\ht\pdfm@box\space
+  width  \the\wd\pdfm@box\space
+  depth  \the\dp\pdfm@box\space
+}
+\def\@TextField[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \def\Fld@default{}%
+  \let\Fld@value\@empty
+  \def\Fld@width{\DefaultWidthofText}%
+  \def\Fld@height{\DefaultHeightofText}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \ifx\Fld@value\@empty\def\Fld@value{\Fld@default}\fi
+    \ifFld@multiline
+      \def\Fld@height{4\DefaultHeightofText}% DANGER
+    \fi
+    \setbox\pdfm@box=\hbox{%
+      \MakeTextField{\Fld@width}{\Fld@height}%
+    }%
+    \LayoutTextField{#2}{%
+      \@pdfm@mark{%
+        ann @\Fld@name\space \dvipdfm@setdim << \PDFForm@Text >>%
+      }%
+    }%
+    \unhbox\pdfm@box
+    \@pdfm@mark{put @afields @\Fld@name}% record in @afields array
+  \egroup
+}
+\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
+  \def\Fld@name{#2}%
+  \def\Fld@default{}%
+  \def\Fld@width{\DefaultWidthofChoiceMenu}%
+  \def\Fld@height{\DefaultHeightofChoiceMenu}%
+  \bgroup
+    \Fld@menulength=0
+    \@tempdima\z@
+    \@for\@curropt:=#3\do{%
+      \expandafter\Fld@checkequals\@curropt==\\%
+      \Hy@StepCount\Fld@menulength
+      \settowidth{\@tempdimb}{\@currDisplay}%
+      \ifdim\@tempdimb>\@tempdima\@tempdima\@tempdimb\fi
+    }%
+    \advance\@tempdima by 15\p@
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \LayoutChoiceField{#2}{%
+      \ifFld@radio
+        \@@Radio{#3}%
+      \else
+        {%
+          \ifdim\Fld@width<\@tempdima
+            \ifdim\@tempdima<1cm\@tempdima1cm\fi
+            \edef\Fld@width{\the\@tempdima}%
+          \fi
+          \def\Fld@flags{}%
+          \ifFld@combo\def\Fld@flags{/Ff 917504}\fi
+          \ifFld@popdown\def\Fld@flags{/Ff 131072}\fi
+          \ifx\Fld@flags\@empty
+            \@tempdima=\the\Fld@menulength\Fld@charsize
+            \advance\@tempdima by \Fld@borderwidth bp
+            \advance\@tempdima by \Fld@borderwidth bp
+            \edef\Fld@height{\the\@tempdima}%
+          \fi
+          \@@Listbox{#3}%
+        }%
+      \fi
+    }%
+  \egroup
+}
+\def\@@Radio#1{%
+  \Fld@listcount=0
+  \setbox\pdfm@box=\hbox{\MakeRadioField{\Fld@width}{\Fld@height}}%
+  \@for\@curropt:=#1\do{%
+    \expandafter\Fld@checkequals\@curropt==\\%
+    \Hy@StepCount\Fld@listcount
+    \@currDisplay\space
+    \leavevmode
+    \@pdfm@mark{%
+      ann \ifnum\Fld@listcount=1 @\Fld@name\space\fi
+      \dvipdfm@setdim
+      <<
+        \PDFForm@Radio\space
+        /AP << /N << /\@currValue /null >> >>
+      >>%
+    }%
+    \unhcopy\pdfm@box\space% deliberate space between radio buttons
+    \ifnum\Fld@listcount=1\@pdfm@mark{put @afields @\Fld@name}\fi
+  }%
+}
+\newcount\Fld@listcount
+\def\@@Listbox#1{%
+  \Choice@toks={ }%
+  \Fld@listcount=0
+  \@for\@curropt:=#1\do{%
+    \expandafter\Fld@checkequals\@curropt==\\%
+    \Hy@StepCount\Fld@listcount
+    \edef\@processme{%
+      \Choice@toks{\the\Choice@toks [(\@currValue) (\@currDisplay)]}%
+    }\@processme
+  }%
+  \setbox\pdfm@box=\hbox{\MakeChoiceField{\Fld@width}{\Fld@height}}%
+  \leavevmode
+  \@pdfm@mark{%
+    ann @\Fld@name\space\dvipdfm@setdim
+    << \PDFForm@List >>%
+  }%
+  \unhbox\pdfm@box
+  \@pdfm@mark{put @afields @\Fld@name}%
+}
+\def\@PushButton[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \setbox\pdfm@box=\hbox{\MakeButtonField{#2}}%
+    \LayoutPushButtonField{%
+      \leavevmode
+      \@pdfm@mark{%
+        ann @\Fld@name\space\dvipdfm@setdim
+        << \PDFForm@Push >>%
+      }%
+    }%
+    \unhbox\pdfm@box
+    \@pdfm@mark{put @afields @\Fld@name}%
+  \egroup
+}
+\def\@Submit[#1]#2{%
+  \Field@toks={ }%
+  \def\Fld@width{\DefaultWidthofSubmit}%
+  \def\Fld@height{\DefaultHeightofSubmit}%
+  \bgroup
+    \def\Fld@name{Submit}%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \setbox\pdfm@box=\hbox{\MakeButtonField{#2}}%
+    \leavevmode
+    \@pdfm@mark{%
+      ann @\Fld@name\space\dvipdfm@setdim
+      << \PDFForm@Submit >>%
+    }%
+    \unhbox\pdfm@box%
+    \@pdfm@mark{put @afields @\Fld@name}%
+  \egroup
+}
+\def\@Reset[#1]#2{%
+  \Field@toks={ }%
+  \def\Fld@width{\DefaultWidthofReset}%
+  \def\Fld@height{\DefaultHeightofReset}%
+  \bgroup
+    \def\Fld@name{Reset}%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \setbox\pdfm@box=\hbox{\MakeButtonField{#2}}%
+    \leavevmode
+    \@pdfm@mark{%
+      ann @\Fld@name\space\dvipdfm@setdim
+      << \PDFForm@Reset >>%
+    }%
+    \unhbox\pdfm@box
+    \@pdfm@mark{put @afields @\Fld@name}%
+  \egroup
+}
+\def\@CheckBox[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \def\Fld@default{0}%
+  \bgroup
+    \def\Fld@width{\DefaultWidthofCheckBox}%
+    \def\Fld@height{\DefaultHeightofCheckBox}%
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \setbox\pdfm@box=\hbox{\MakeCheckField{\Fld@width}{\Fld@height}}%
+    \LayoutCheckField{#2}{%
+      \@pdfm@mark{%
+        ann @\Fld@name\space\dvipdfm@setdim
+        << \PDFForm@Check >>%
+      }%
+      \unhbox\pdfm@box
+      \@pdfm@mark{put @afields @\Fld@name}%
+    }%
+  \egroup
+}
+\@pdfm@mark{obj @OBJpdfdocencoding << /Type /Encoding /Differences [%
+   24 /breve /caron /circumflex /dotaccent /hungarumlaut /ogonek /ring
+      /tilde
+   39 /quotesingle
+   96 /grave
+  128 /bullet /dagger /daggerdbl /ellipsis /emdash /endash /florin
+      /fraction /guilsinglleft /guilsinglright /minus /perthousand
+      /quotedblbase /quotedblleft /quotedblright /quoteleft /quoteright
+      /quotesinglbase /trademark /fi /fl /Lslash /OE /Scaron /Ydieresis
+      /Zcaron /dotlessi /lslash /oe /scaron /zcaron
+  164 /currency
+  166 /brokenbar
+  168 /dieresis /copyright /ordfeminine
+  172 /logicalnot /.notdef /registered /macron /degree /plusminus
+      /twosuperior /threesuperior /acute /mu
+  183 /periodcentered /cedilla /onesuperior /ordmasculine
+  188 /onequarter /onehalf /threequarters
+  192 /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE
+      /Ccedilla /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute
+      /Icircumflex /Idieresis /Eth /Ntilde /Ograve /Oacute /Ocircumflex
+      /Otilde /Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex
+      /Udieresis /Yacute /Thorn /germandbls /agrave /aacute /acircumflex
+      /atilde /adieresis /aring /ae /ccedilla /egrave /eacute
+      /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis
+      /eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis
+      /divide /oslash /ugrave /uacute /ucircumflex /udieresis /yacute
+      /thorn /ydieresis%
+  ] >>
+}
+\@pdfm@mark{obj @OBJZaDb
+  <<
+    /Type /Font
+    /Subtype /Type1
+    /Name /ZaDb
+    /BaseFont /ZapfDingbats
+  >>
+}
+\@pdfm@mark{obj @OBJHelv
+  <<
+    /Type /Font
+    /Subtype /Type1
+    /Name /Helv
+    /BaseFont /Helvetica
+    /Encoding @OBJpdfdocencoding
+  >>
+}
+\def\PDFForm@Check{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /Q \Fld@align\space
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+    /CA (\Fld@cbsymbol)
+  >>
+  /DA (/ZaDb \strip@pt\Fld@charsize\space Tf \Fld@color\space rg)
+  /FT /Btn
+  /H /P
+  \ifFld@checked /V /Yes \else /V /Off \fi
+}
+\def\PDFForm@Push{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /Ff 65540
+  /H /P
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+  >>
+  /A << /S /JavaScript /JS (\Fld@onclick;) >>
+}
+\def\PDFForm@List{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Ch
+  /Q \Fld@align\space
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+  >>
+  /DA (/Helv \strip@pt\Fld@charsize\space Tf \Fld@color\space rg )
+  /Opt [\the\Choice@toks]
+  /DV (\Fld@default)
+  \Fld@flags
+}
+\def\PDFForm@Radio{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /Ff 49152
+  /H /P
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+    /CA (H)
+  >>
+  /DA (/ZaDb \strip@pt\Fld@charsize\space Tf \Fld@color\space rg)
+  \ifx\@currValue\Fld@default
+    /V /\Fld@default\space
+  \else
+    /V /Off
+  \fi
+}
+\def\PDFForm@Text{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /Q \Fld@align\space
+  /FT /Tx
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+  >>
+  /DA (/Helv \strip@pt\Fld@charsize\space Tf \Fld@color\space rg )
+  /DV (\Fld@default)
+  /AA <<
+    \ifx\Fld@keystroke@code\@empty
+    \else
+      /K << /S /JavaScript /JS (\Fld@keystroke@code) >>
+    \fi
+    \ifx\Fld@format@code\@empty
+    \else
+      /F << /S /JavaScript /JS (\Fld@format@code) >>
+    \fi
+    \ifx\Fld@validate@code\@empty
+    \else
+      /V << /S /JavaScript /JS (\Fld@validate@code) >>
+    \fi
+    \ifx\Fld@calculate@code\@empty
+    \else
+      /C << /S /JavaScript /JS (\Fld@calculate@code) >>
+    \fi
+  >>
+  /V (\Fld@value)
+  \ifFld@multiline
+    \ifFld@readonly /Ff 4097 \else /Ff 4096 \fi
+  \else
+    \ifFld@password
+      \ifFld@readonly /Ff 8193 \else /Ff 8192 \fi
+    \fi
+  \fi
+  \ifnum\Fld@maxlen>0/MaxLen \Fld@maxlen \fi
+}
+\def\PDFForm@Submit{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /Ff 65540
+  /H /P
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+  >>
+  /A <<
+    /S /SubmitForm
+    /F <<
+      /FS /URL
+      /F (\Form@action)
+    >>
+    \ifForm@html /Flags 4 \fi
+  >>
+}
+\def\PDFForm@Reset{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /H /P
+  /DA (/Helv \strip@pt\Fld@charsize\space Tf 0 0 1 rg)
+  /Ff 65540
+  /MK <<
+    /BC [\Fld@bordercolor]
+  >>
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /A << /S /ResetForm >>
+}
+\newwrite\@outlinefile
+\def\Hy@writebookmark#1#2#3#4#5{% section number, text, label, level, file
+ \ifx\WriteBookmarks\relax%
+ \else
+  \ifnum#4>\c@tocdepth
+  \else
+   \@@writetorep{#1}{#2}{#3}{#4}{#5}%
+  \fi
+ \fi}
+\def\Hy@currentbookmarklevel{0}
+\def\Hy@numberline#1{#1 }
+\def\@@writetorep#1#2#3#4#5{%
+  \begingroup
+    \def\Hy@tempa{#5}%
+    \ifx\Hy@tempa\Hy@bookmarkstype
+      \edef\Hy@level{#4}%
+      \ifx\Hy@levelcheck Y%
+        \@tempcnta\Hy@level\relax
+        \advance\@tempcnta by -1
+        \ifnum\Hy@currentbookmarklevel<\@tempcnta
+          \advance\@tempcnta by -\Hy@currentbookmarklevel\relax
+          \advance\@tempcnta by 1
+          \Hy@Warning{%
+            Difference (\the\@tempcnta) between bookmark levels is %
+            greater \MessageBreak than one, level fixed%
+          }%
+          \@tempcnta\Hy@currentbookmarklevel
+          \advance\@tempcnta by 1
+          \edef\Hy@level{\the\@tempcnta}%
+        \fi
+      \else
+        \global\let\Hy@levelcheck Y%
+      \fi
+      \global\let\Hy@currentbookmarklevel\Hy@level
+      \@tempcnta\Hy@level\relax
+      \expandafter\xdef\csname Parent\Hy@level\endcsname{#3}%
+      \advance\@tempcnta by -1
+      \edef\Hy@tempa{#3}%
+      \edef\Hy@tempb{\csname Parent\the\@tempcnta\endcsname}%
+      \ifx\Hy@tempa\Hy@tempb
+        \Hy@Warning{%
+          The anchor of a bookmark and its parent's must not%
+          \MessageBreak be the same. Added a new anchor%
+        }%
+        \phantomsection
+      \fi
+      \ifHy@bookmarksnumbered
+        \let\numberline\Hy@numberline
+      \else
+        \let\numberline\@gobble
+      \fi
+      \pdfstringdef\Hy@tempa{#2}%
+      \protected@write\@outlinefile{}{%
+        \protect\BOOKMARK
+          [\Hy@level][\@bookmarkopenstatus{\Hy@level}]{#3}%
+          {\Hy@tempa}{\Hy@tempb}%
+      }%
+    \fi
+  \endgroup
+}
+\newcommand{\currentpdfbookmark}{%
+  \pdfbookmark[\Hy@currentbookmarklevel]%
+}
+\newcommand{\subpdfbookmark}{%
+  \@tempcnta\Hy@currentbookmarklevel
+  \Hy@StepCount\@tempcnta
+  \expandafter\pdfbookmark\expandafter[\the\@tempcnta]%
+}
+\newcommand{\belowpdfbookmark}[2]{%
+  \@tempcnta\Hy@currentbookmarklevel
+  \Hy@StepCount\@tempcnta
+  \expandafter\pdfbookmark\expandafter[\the\@tempcnta]{#1}{#2}%
+  \advance\@tempcnta by -1
+  \xdef\Hy@currentbookmarklevel{\the\@tempcnta}%
+}
+\renewcommand\pdfbookmark[3][0]{%
+  \Hy@writebookmark{}{#2}{#3.#1}{#1}{toc}%
+  \hyper@anchorstart{#3.#1}\hyper@anchorend
+}
+\def\BOOKMARK{\@ifnextchar[{\@BOOKMARK}{\@@BOOKMARK[1][-]}}
+\def\@BOOKMARK[#1]{\@ifnextchar[{\@@BOOKMARK[#1]}{\@@BOOKMARK[#1][-]}}
+\def\ReadBookmarks{%
+  \begingroup
+    \escapechar=`\\%
+    \let\escapechar\@gobble %
+    \def\@@BOOKMARK [##1][##2]##3##4##5{\calc@bm@number{##5}}%
+    \InputIfFileExists{\jobname.out}{}{}%
+    \ifx\WriteBookmarks\relax
+      \global\let\WriteBookmarks\relax
+    \fi
+    \def\@@BOOKMARK[##1][##2]##3##4##5{%
+      \def\Hy@temp{##4}%
+      \@pdfm@mark{%
+        outline ##1 <<
+          /Title (\expandafter\strip@prefix\meaning\Hy@temp)
+          /A <<
+            /S /GoTo
+            /D (##3)
+          >>
+        >>
+      }%
+   }%
+   {%
+    \def\WriteBookmarks{0}%
+    \InputIfFileExists{\jobname.out}{}{}%
+   }%
+   %{\escapechar\m@ne\InputIfFileExists{\jobname.out}{}{}}%
+   \ifx\WriteBookmarks\relax\else
+     \if@filesw\immediate\openout\@outlinefile=\jobname.out
+      \ifHy@typexml
+       \immediate\write\@outlinefile{<relaxxml>\relax}%
+      \fi
+     \fi
+   \fi
+   \endgroup
+}
+\def\check@bm@number#1{%
+  \expandafter\ifx\csname B_#1\endcsname\relax
+    0%
+  \else
+    \csname B_#1\endcsname
+  \fi
+}
+\def\calc@bm@number#1{%
+  \@tempcnta=\check@bm@number{#1}\relax
+  \advance\@tempcnta by1
+  \expandafter\xdef\csname B_#1\endcsname{\the\@tempcnta}%
+}
+\ifHy@implicit
+\else
+  \def\@begindvi{%
+    \unvbox\@begindvibox
+    \HyPL@EveryPage
+    \global\let\@begindvi\HyPL@EveryPage
+  }%
+  \expandafter\endinput
+\fi
+\let\H@old@ssect\@ssect
+\def\@ssect#1#2#3#4#5{%
+  \H@old@ssect{#1}{#2}{#3}{#4}{#5}%
+  \phantomsection
+}
+\let\H@old@schapter\@schapter
+\def\@schapter#1{%
+  \H@old@schapter{#1}%
+  \begingroup
+    \let\@mkboth\@gobbletwo
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \endgroup
+}
+\@ifundefined{@chapter}{}{%
+  \let\Hy@org@chapter\@chapter
+  \def\@chapter{%
+    \def\Hy@next{%
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+      \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    }%
+    \ifnum\c@secnumdepth>\m@ne
+      \@ifundefined{if@mainmatter}%
+      \iftrue{\csname if@mainmatter\endcsname}
+        \let\Hy@next\relax
+      \fi
+    \fi
+    \Hy@next
+    \Hy@org@chapter
+  }%
+}
+\let\H@old@spart\@spart
+\def\@spart#1{%
+  \H@old@spart{#1}%
+  \Hy@GlobalStepCount\Hy@linkcounter
+  \xdef\@currentHref{part*.\the\Hy@linkcounter}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\let\H@old@sect\@sect
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+  \ifnum #2>\c@secnumdepth
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{section*.\the\Hy@linkcounter}%
+  \fi
+  \H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}%
+  \ifnum #2>\c@secnumdepth
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \fi
+}
+\expandafter\def\csname Parent-4\endcsname{}
+\expandafter\def\csname Parent-3\endcsname{}
+\expandafter\def\csname Parent-2\endcsname{}
+\expandafter\def\csname Parent-1\endcsname{}
+\expandafter\def\csname Parent0\endcsname{}
+\expandafter\def\csname Parent1\endcsname{}
+\expandafter\def\csname Parent2\endcsname{}
+\expandafter\def\csname Parent3\endcsname{}
+\expandafter\def\csname Parent4\endcsname{}
+\def\Hy@tempa{%
+  \def\@addchap[##1]##2{%
+    \typeout{##2}%
+    \if@twoside
+      \@mkboth{##1}{}%
+    \else
+      \@mkboth{}{##1}%
+    \fi
+    \addtocontents{lof}{\protect\addvspace{10\p@}}%
+    \addtocontents{lot}{\protect\addvspace{10\p@}}%
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    \if@twocolumn
+       \@topnewpage[\@makeschapterhead{##2}]%
+    \else
+       \@makeschapterhead{##2}%
+       \@afterheading
+    \fi
+    \addcontentsline{toc}{chapter}{##1}%
+  }%
+}
+\@ifclassloaded{scrbook}{%
+  \@ifclasslater{scrbook}{2001/01/01}{%
+    \let\Hy@tempa\@empty
+  }{}%
+}{%
+  \@ifclassloaded{scrreprt}{%
+    \@ifclasslater{scrreprt}{2001/01/01}{%
+      \let\Hy@tempa\@empty
+    }{}%
+  }{%
+    \let\Hy@tempa\@empty
+  }%
+}%
+\Hy@tempa
+\endinput
+%%
+%% End of file `hdvipdfm.def'.
diff --git a/styles/hdvips.def b/styles/hdvips.def
new file mode 100644 (file)
index 0000000..df52174
--- /dev/null
@@ -0,0 +1,82 @@
+%%
+%% This is file `hdvips.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `dvips')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hdvips.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for dvips]
+\input{pdfmark.def}%
+\def\@pdfproducer{dvips + Distiller}
+\def\literalps@out#1{\special{ps:SDict begin #1 end}}%
+\def\headerps@out#1{\special{! #1}}%
+\providecommand\@pdfborder{0 0 12}
+\providecommand\@pdfview{XYZ}
+\providecommand\@pdfviewparams{ H.V}
+\AtBeginDvi{%
+  \headerps@out{%
+    /DvipsToPDF { 72.27 mul Resolution div } def
+    /PDFToDvips { 72.27 div Resolution mul } def
+    /HyperBorder  { 1 PDFToDvips } def
+    /H.V {pdf@hoff pdf@voff null} def
+    /H.B {/Rect[pdf@llx pdf@lly pdf@urx pdf@ury]} def
+    /H.S {
+      currentpoint
+      HyperBorder add /pdf@lly exch def
+      dup DvipsToPDF  /pdf@hoff exch def
+      HyperBorder sub /pdf@llx exch def
+    } def
+    /H.L {
+      2 sub dup
+      /HyperBasePt exch def
+      PDFToDvips /HyperBaseDvips exch def
+      currentpoint
+      HyperBaseDvips sub /pdf@ury exch def
+      /pdf@urx exch def
+    } def
+    /H.A {
+      H.L
+      currentpoint exch pop
+      vsize 72 sub exch DvipsToPDF
+      HyperBasePt sub % baseline skip
+      sub /pdf@voff exch def
+    } def
+    /H.R {
+      currentpoint
+      HyperBorder sub /pdf@ury exch def
+      HyperBorder add /pdf@urx exch def
+      currentpoint exch pop vsize 72 sub
+      exch DvipsToPDF sub /pdf@voff exch def
+    } def
+    systemdict
+    /pdfmark known not
+    {userdict /pdfmark systemdict /cleartomark get put} if
+  }%
+}
+\AfterBeginDocument{%
+  \ifx\special@paper\@empty\else
+    \special{papersize=\special@paper}%
+  \fi
+}
+\endinput
+%%
+%% End of file `hdvips.def'.
diff --git a/styles/hdvipson.def b/styles/hdvipson.def
new file mode 100644 (file)
index 0000000..769b947
--- /dev/null
@@ -0,0 +1,119 @@
+%%
+%% This is file `hdvipson.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `dvipsone')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hdvipson.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for dvipsone]
+\providecommand\@pdfborder{0 0 65781}
+\input{pdfmark.def}%
+\def\@pdfproducer{dvipsone + Distiller}
+\def\literalps@out#1{\special{ps:#1}}%
+\def\headerps@out#1{\special{! #1}}%
+\def\PDF@FinishDoc{%
+  \special{PDF: Keywords \@pdfkeywords}%
+  \special{PDF: Title \@pdftitle}%
+  \special{PDF: Creator \@pdfcreator}%
+  \special{PDF: Author \@pdfauthor}%
+  \special{PDF: Producer \@pdfproducer}%
+  \special{PDF: Subject \@pdfsubject}%
+  \Hy@DisableOption{pdfauthor}%
+  \Hy@DisableOption{pdftitle}%
+  \Hy@DisableOption{pdfsubject}%
+  \Hy@DisableOption{pdfcreator}%
+  \Hy@DisableOption{pdfproducer}%
+  \Hy@DisableOption{pdfkeywords}%
+}
+\def\PDF@SetupDoc{%
+  \pdfmark{%
+    pdfmark=/DOCVIEW,
+    Page=\@pdfstartpage,
+    View=\@pdfstartview,
+    URI={<< /Base (\@baseurl) >>},
+    PageMode=\@pdfpagemode
+  }%
+  \ifx\@pdfpagescrop\@empty
+  \else
+    \pdfmark{pdfmark=/PAGES,CropBox=\@pdfpagescrop}%
+  \fi
+  \pdfmark{%
+    pdfmark=/PUT,%
+    Raw={
+      \string{Catalog\string} <<
+        /ViewerPreferences <<
+          \ifHy@toolbar\else /HideToolbar true \fi
+          \ifHy@menubar\else /HideMenubar true \fi
+          \ifHy@windowui\else /HideWindowUI true \fi
+          \ifHy@fitwindow /FitWindow true \fi
+          \ifHy@centerwindow /CenterWindow true \fi
+        >>
+        \ifx\pdf@pagelayout\@empty
+        \else
+          /PageLayout /\pdf@pagelayout\space
+        \fi
+      >>%
+    }%
+  }%
+}
+\providecommand\@pdfview{XYZ}
+\providecommand\@pdfviewparams{ %
+  gsave revscl currentpoint grestore
+  72 add exch pop null exch null
+}
+\special{headertext=
+  /DvipsToPDF { 65781 div  } def
+  /PDFToDvips { 65781 mul } def
+  /HyperBorder  { 1 PDFToDvips } def
+  /H.B {/Rect[pdf@llx pdf@lly pdf@urx pdf@ury]} def
+  /H.S {
+    currentpoint
+    HyperBorder add /pdf@lly exch def
+    dup   DvipsToPDF /pdf@hoff exch def
+    HyperBorder sub /pdf@llx exch def
+  } def
+  /H.L {
+    2 sub
+    PDFToDvips /HyperBase exch def
+    currentpoint
+    HyperBase sub /pdf@ury exch def
+    /pdf@urx exch def
+  } def
+  /H.A {
+    H.L
+    currentpoint exch pop
+    HyperBase sub % baseline skip
+    DvipsToPDF /pdf@voff exch def
+  } def
+  /H.R {
+    currentpoint
+    HyperBorder sub /pdf@ury exch def
+    HyperBorder add /pdf@urx exch def
+    currentpoint exch pop DvipsToPDF /pdf@voff exch def
+  } def
+  systemdict
+  /pdfmark known not
+  {userdict /pdfmark systemdict /cleartomark get put} if
+}
+\endinput
+%%
+%% End of file `hdvipson.def'.
diff --git a/styles/hdviwind.def b/styles/hdviwind.def
new file mode 100644 (file)
index 0000000..dd084cd
--- /dev/null
@@ -0,0 +1,339 @@
+%%
+%% This is file `hdviwind.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `dviwindo,pdfmarkbase')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hdviwind.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for dviwindo]
+\def\Hy@PutCatalog#1{%
+  \pdfmark{pdfmark=/PUT,Raw={\string{Catalog\string} << #1 >>}}%
+}
+\ifHy@pagelabels
+  \def\HyPL@StorePageLabel#1{%
+    \if@filesw
+      \begingroup
+        \edef\Hy@tempa{\the\Hy@abspage\space<< #1 >> }%
+        \immediate\write\@mainaux{%
+          \string\HyPL@Entry{\Hy@tempa}%
+        }%
+      \endgroup
+    \fi
+  }
+  \AfterBeginDocument{%
+    \if@filesw
+      \immediate\write\@mainaux{%
+        \string\providecommand\string*\string\HyPL@Entry[1]{}%
+      }%
+    \fi
+    \ifx\HyPL@Labels\@empty
+      \Hy@WarningNoLine{Rerun to get /PageLabels entry}%
+    \else
+      \HyPL@SetPageLabels
+    \fi
+    \let\HyPL@Entry\@gobble
+  }%
+  \def\HyPL@Entry#1{%
+    \expandafter\gdef\expandafter\HyPL@Labels\expandafter{%
+      \HyPL@Labels
+      #1%
+    }%
+  }
+\fi
+\providecommand\wwwbrowser{c:\string\netscape\string\netscape}
+\def\hyper@anchor#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \let\protect=\string
+    \special{mark: #1}%
+  \endgroup
+  \Hy@activeanchortrue
+  \Hy@colorlink{\@anchorcolor}\anchor@spot\Hy@endcolorlink
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@anchorstart#1{%
+  \Hy@SaveLastskip
+  \special{mark: #1}%
+  \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@linkstart#1#2{%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+  \special{button:
+    10000000
+    \number\baselineskip\space
+    #2%
+  }%
+}
+\def\hyper@linkend{%
+  \Hy@endcolorlink
+}
+\def\hyper@link#1#2#3{%
+  \setbox\@tempboxa=\color@hbox #3\color@endbox
+  \leavevmode
+  \ifHy@raiselinks
+    \@linkdim\dp\@tempboxa
+    \lower\@linkdim\hbox{%
+      \special{button:
+        \number\wd\@tempboxa\space
+        \number\ht\@tempboxa\space
+        #2%
+      }%
+      \Hy@colorlink{\csname @#1color\endcsname}#3%
+      \Hy@endcolorlink
+    }%
+    \@linkdim\ht\@tempboxa
+    \advance\@linkdim by -6.5\p@
+    \raise\@linkdim\hbox{}%
+  \else
+    \special{button:
+      \number\wd\@tempboxa\space
+      \number\ht\@tempboxa\space
+      #2%
+    }%
+    \Hy@colorlink{\csname @#1color\endcsname}#3\Hy@endcolorlink
+  \fi
+}
+\def\hyper@linkurl#1#2{%
+  \begingroup
+    \hyper@chars
+    \leavevmode
+    \setbox\@tempboxa=\color@hbox #1\color@endbox
+    \ifHy@raiselinks
+      \@linkdim\dp\@tempboxa
+      \lower\@linkdim\hbox{%
+        \special{button:
+          \number\wd\@tempboxa\space
+          \number\ht\@tempboxa\space
+          launch: \wwwbrowser\space
+          #2%
+        }%
+        \Hy@colorlink{\@urlcolor}#1\Hy@endcolorlink
+      }%
+      \@linkdim\ht\@tempboxa
+      \advance\@linkdim by -6.5\p@
+      \raise\@linkdim\hbox{}%
+    \else
+      \special{button:
+        \number\wd\@tempboxa\space
+        \number\ht\@tempboxa\space
+        launch: \wwwbrowser\space
+        #2%
+      }%
+      \Hy@colorlink{\@urlcolor}#1\Hy@endcolorlink
+    \fi
+  \endgroup
+}
+\def\hyper@linkfile#1#2#3{%
+  \begingroup
+    \hyper@chars
+    \leavevmode
+    \setbox\@tempboxa=\color@hbox #1\color@endbox
+    \ifHy@raiselinks
+      \@linkdim\dp\@tempboxa
+      \lower\@linkdim\hbox{%
+        \special{button:
+          \number\wd\@tempboxa\space
+          \number\ht\@tempboxa\space
+          #3,
+          file: #2%
+        }%
+        \Hy@colorlink{\@filecolor}#1\Hy@endcolorlink
+      }%
+      \@linkdim\ht\@tempboxa
+      \advance\@linkdim by -6.5\p@
+      \raise\@linkdim\hbox{}%
+    \else
+      \special{button:
+        \number\wd\@tempboxa\space
+        \number\ht\@tempboxa\space
+        #3,
+        file: #2
+      }%
+      \Hy@colorlink{\@filecolor}#1\Hy@endcolorlink
+    \fi
+  \endgroup
+}
+\def\@pdfproducer{dviwindo + Distiller}
+\def\PDF@FinishDoc{%
+  \special{PDF: Keywords \@pdfkeywords}%
+  \special{PDF: Title \@pdftitle}%
+  \special{PDF: Creator \@pdfcreator}%
+  \special{PDF: Author \@pdfauthor}%
+  \special{PDF: Producer \@pdfproducer}%
+  \special{PDF: Subject \@pdfsubject}%
+  \Hy@DisableOption{pdfauthor}%
+  \Hy@DisableOption{pdftitle}%
+  \Hy@DisableOption{pdfsubject}%
+  \Hy@DisableOption{pdfcreator}%
+  \Hy@DisableOption{pdfproducer}%
+  \Hy@DisableOption{pdfkeywords}%
+}
+\def\PDF@SetupDoc{%
+  \ifx\@baseurl\@empty\else
+    \special{PDF: Base \@baseurl}%
+  \fi
+  \ifx\@pdfpagescrop\@empty\else
+    \special{PDF: BBox \@pdfpagescrop}%
+  \fi
+  \pdfmark{pdfmark=/DOCVIEW,
+    Page=\@pdfstartpage,
+    View=\@pdfstartview,
+    PageMode=\@pdfpagemode
+  }%
+  \ifx\@pdfpagescrop\@empty
+  \else
+    \pdfmark{pdfmark=/PAGES,CropBox=\@pdfpagescrop}%
+  \fi
+  \pdfmark{pdfmark=/PUT,
+    Raw={
+      \string{Catalog\string} <<
+        /ViewerPreferences <<
+          \ifHy@toolbar\else /HideToolbar true \fi
+          \ifHy@menubar\else /HideMenubar true \fi
+          \ifHy@windowui\else /HideWindowUI true \fi
+          \ifHy@fitwindow /FitWindow true \fi
+          \ifHy@centerwindow /CenterWindow true \fi
+        >>
+        \ifx\pdf@pagelayout\@empty
+        \else
+          /PageLayout /\pdf@pagelayout\space
+        \fi
+      >>%
+    }%
+  }%
+}
+\def\pdfmark{\@ifnextchar[{\pdfmark@}{\pdfmark@[]}}
+\def\pdfmark@[#1]#2{%
+    \edef\@processme{\noexpand\pdf@toks={\the\pdf@defaulttoks}}%
+    \@processme
+    \let\pdf@type\relax
+    \setkeys{PDF}{#2}%
+    \ifx\pdf@type\relax
+       \Hy@WarningNoLine{no pdfmark type specified in #2!!}%
+       \ifx\\#1\\\relax\else\pdf@rect{#1}\fi
+    \else
+       \ifx\\#1\\\relax
+  \literalps@out{[\the\pdf@toks\space\pdf@type\space pdfmark}%
+       \else
+         \Hy@colorlink{\@ifundefined{@\pdf@linktype color}%
+                      {\@linkcolor}%
+                      {\csname @\pdf@linktype color\endcsname}}%
+         \pdf@rect{#1}%
+  \literalps@out{[\the\pdf@toks\space\pdf@type\space pdfmark}%
+         \Hy@endcolorlink
+       \fi
+    \fi
+}
+\newsavebox{\pdf@box}
+\def\pdf@rect#1{%
+  \leavevmode
+  \sbox\pdf@box{#1}%
+  \dimen@\ht\pdf@box
+  \leavevmode
+  \ifdim\dp\pdf@box=\z@
+    \literalps@out{H.S}%
+  \else
+    \lower\dp\pdf@box\hbox{\literalps@out{H.S}}%
+  \fi
+  \ifHy@breaklinks\unhbox\else\box\fi\pdf@box
+  \ifdim\dimen@=\z@
+    \literalps@out{H.R}%
+  \else
+    \raise\dimen@\hbox{\literalps@out{H.R}}%
+  \fi
+  \pdf@addtoksx{H.B}%
+}
+\newtoks\pdf@toks
+\newtoks\pdf@defaulttoks
+\pdf@defaulttoks={}%
+\def\pdf@addtoks#1#2{%
+  \edef\@processme{\pdf@toks{\the\pdf@toks\space /#2 #1}}%
+  \@processme
+}
+\def\pdf@addtoksx#1{%
+  \edef\@processme{\pdf@toks{\the\pdf@toks\space #1}}%
+  \@processme
+}
+\def\PDFdefaults#1{%
+  \pdf@defaulttoks={#1}%
+}
+\define@key{PDF}{pdfmark}{\def\pdf@type{#1}}
+\define@key{PDF}{linktype}{\def\pdf@linktype{#1}}
+\def\pdf@linktype{link}
+\define@key{PDF}{Raw}{\pdf@addtoksx{#1}}
+\define@key{PDF}{Action}{\pdf@addtoks{#1}{Action}}
+\define@key{PDF}{Border}{\pdf@addtoks{[#1]}{Border}}
+\define@key{PDF}{Color}{\pdf@addtoks{[#1]}{Color}}
+\define@key{PDF}{Contents}{\pdf@addtoks{(#1)}{Contents}}
+\define@key{PDF}{Count}{\pdf@addtoks{#1}{Count}}
+\define@key{PDF}{CropBox}{\pdf@addtoks{[#1]}{CropBox}}
+\define@key{PDF}{DOSFile}{\pdf@addtoks{(#1)}{DOSFile}}
+\define@key{PDF}{DataSource}{\pdf@addtoks{(#1)}{DataSource}}
+\define@key{PDF}{Dest}{%
+  \begingroup
+    \edef\x{#1}%
+  \expandafter\endgroup
+  \ifx\x\@empty\else\pdf@addtoks{(#1) cvn}{Dest}\fi
+}
+\define@key{PDF}{DestAnchor}{%
+  \begingroup
+    \edef\x{#1}%
+  \expandafter\endgroup
+  \ifx\x\@empty\else\pdf@addtoks{(#1) cvn}{Dest}\fi
+}
+\define@key{PDF}{Dir}{\pdf@addtoks{(#1)}{Dir}}
+\define@key{PDF}{File}{\pdf@addtoks{(#1)}{File}}
+\define@key{PDF}{Flags}{\pdf@addtoks{#1}{Flags}}
+\define@key{PDF}{AcroHighlight}{\pdf@addtoks{#1}{H}}
+\define@key{PDF}{ID}{\pdf@addtoks{[#1]}{ID}}
+\define@key{PDF}{MacFile}{\pdf@addtoks{(#1)}{MacFile}}
+\define@key{PDF}{ModDate}{\pdf@addtoks{(#1)}{ModDate}}
+\define@key{PDF}{Op}{\pdf@addtoks{(#1)}{Op}}
+\define@key{PDF}{Open}{\pdf@addtoks{#1}{Open}}
+\define@key{PDF}{Page}{\pdf@addtoks{#1}{Page}}
+\define@key{PDF}{PageMode}{\pdf@addtoks{#1}{PageMode}}
+\define@key{PDF}{Params}{\pdf@addtoks{(#1)}{Params}}
+\define@key{PDF}{Rect}{\pdf@addtoks{[#1]}{Rect}}
+\define@key{PDF}{SrcPg}{\pdf@addtoks{#1}{SrcPg}}
+\define@key{PDF}{Subtype}{\pdf@addtoks{#1}{Subtype}}
+\define@key{PDF}{Title}{\pdf@addtoks{(#1)}{Title}}
+\define@key{PDF}{Unix}{\pdf@addtoks{(#1)}{Unix}}
+\define@key{PDF}{UnixFile}{\pdf@addtoks{(#1)}{UnixFile}}
+\define@key{PDF}{View}{\pdf@addtoks{[#1]}{View}}
+\define@key{PDF}{WinFile}{\pdf@addtoks{(#1)}{WinFile}}
+\define@key{PDF}{Author}{\pdf@addtoks{(#1)}{Author}}
+\define@key{PDF}{CreationDate}{\pdf@addtoks{(#1)}{CreationDate}}
+\define@key{PDF}{Creator}{\pdf@addtoks{(#1)}{Creator}}
+\define@key{PDF}{Producer}{\pdf@addtoks{(#1)}{Producer}}
+\define@key{PDF}{Subject}{\pdf@addtoks{(#1)}{Subject}}
+\define@key{PDF}{Keywords}{\pdf@addtoks{(#1)}{Keywords}}
+\define@key{PDF}{ModDate}{\pdf@addtoks{(#1)}{ModDate}}
+\define@key{PDF}{Base}{\pdf@addtoks{(#1)}{Base}}
+\define@key{PDF}{URI}{\pdf@addtoks{#1}{URI}}
+\endinput
+%%
+%% End of file `hdviwind.def'.
diff --git a/styles/hpdftex.def b/styles/hpdftex.def
new file mode 100644 (file)
index 0000000..bf411d0
--- /dev/null
@@ -0,0 +1,954 @@
+%%
+%% This is file `hpdftex.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `pdftex,pdfform,outlines')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hpdftex.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for pdfTeX]
+\let\Hy@PutCatalog\pdfcatalog
+\ifHy@pagelabels
+  \def\HyPL@StorePageLabel#1{%
+    \toks@\expandafter{\HyPL@Labels}%
+    \xdef\HyPL@Labels{%
+      \the\toks@
+      \the\Hy@abspage\space<< #1 >> %
+    }%
+  }
+  \AtEndDocument{\clearpage\HyPL@SetPageLabels}
+\fi
+\def\setpdflinkmargin#1{\pdflinkmargin#1}
+\ifx\pdfstartlink\@undefined% less than version 14
+  \let\pdfstartlink\pdfannotlink
+  \let\pdflinkmargin\@tempdima
+  \let\pdfxform\pdfform
+  \let\pdflastxform\pdflastform
+  \let\pdfrefxform\pdfrefform
+\else
+  \pdflinkmargin1pt
+\fi
+\providecommand\@pdfview{XYZ}
+\def\new@pdflink#1{%
+  \ifHy@verbose
+    \typeout{pdftex: define anchor at line \the\inputlineno: #1}%
+  \fi
+  \Hy@SaveLastskip
+  \pdfdest name {#1}\@pdfview
+  \Hy@RestoreLastskip
+}
+\let\pdf@endanchor\@empty
+\providecommand\@pdfborder{0 0 1}
+\def\Hy@undefinedname{UNDEFINED}
+\def\find@pdflink#1#2{%
+  \leavevmode
+  \protected@edef\Hy@testname{#2}%
+  \ifx\Hy@testname\@empty
+    \let\Hy@testname\Hy@undefinedname
+  \fi
+  \pdfstartlink
+    attr{%
+      /Border [\@pdfborder]
+      /H \@pdfhighlight\space
+      /C [\CurrentBorderColor]%
+    }%
+    goto name {\Hy@testname}%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+}
+\def\close@pdflink{\Hy@endcolorlink\pdfendlink}
+\def\hyper@anchor#1{\new@pdflink{#1}\anchor@spot\pdf@endanchor}
+\def\hyper@anchorstart#1{\new@pdflink{#1}\Hy@activeanchortrue}
+\def\hyper@anchorend{\pdf@endanchor\Hy@activeanchorfalse}
+\def\hyper@linkstart#1#2{%
+  \edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
+  \find@pdflink{#1}{#2}}
+\def\hyper@linkend{\close@pdflink}
+\def\hyper@link#1#2#3{%
+  \edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
+  \find@pdflink{#1}{#2}#3\close@pdflink
+}
+\def\CurrentBorderColor{\@linkbordercolor}
+\def\hyper@linkurl#1#2{%
+  \bgroup
+    \hyper@chars
+    \leavevmode
+    \pdfstartlink
+      attr{%
+        /Border [\@pdfborder]
+        /H \@pdfhighlight\space
+        /C [\@urlbordercolor]%
+      }%
+      user{%
+       /Subtype /Link
+       /A <<
+         /Type /Action
+         /S /URI
+         /URI (#2)
+       >>%
+      }%
+    \Hy@colorlink{\@urlcolor}#1%
+    \close@pdflink
+  \egroup
+}
+\def\hyper@linkfile#1#2#3{% anchor text, filename, linkname
+  \bgroup
+    \leavevmode
+    \pdfstartlink
+      attr{%
+        /Border [\@pdfborder]
+        /H \@pdfhighlight\space
+        /C [\@filebordercolor]%
+      }%
+      user {%
+        /Subtype /Link
+        /A <<
+          /F (#2)
+          /S /GoToR
+          \ifHy@newwindow /NewWindow true \fi
+          \ifx\\#3\\%
+            /D [0 \@pdfstartview]
+          \else
+            /D (#3)
+          \fi
+        >>%
+      }%
+    \Hy@colorlink{\@filecolor}#1%
+    \close@pdflink
+  \egroup
+}
+\def\@hyper@launch run:#1\\#2#3{% filename, anchor text linkname
+  \bgroup
+    \leavevmode
+    \pdfstartlink
+      attr{%
+        /Border [\@pdfborder]
+        /H \@pdfhighlight\space
+        /C [\@runbordercolor]%
+      }%
+      user {%
+        /Subtype /Link
+        /A <<
+          /F (#1)
+          /S /Launch
+          \ifHy@newwindow /NewWindow true \fi
+          \ifx\\#3\\%
+          \else
+            /Win << /P (#3) /F (#1) >>
+          \fi
+        >>%
+      }%
+    \Hy@colorlink{\@filecolor}#2%
+    \close@pdflink
+  \egroup
+}
+\ifx\pdftexversion\@undefined
+  \def\@pdfproducer{pdfTeX}
+\else
+  \def\@pdfproducer{pdfTeX\the\pdftexversion.\pdftexrevision}
+\fi
+\def\PDF@SetupDoc{%
+  \ifx\@pdfpagescrop\@empty
+  \else
+    \edef\process@me{%
+      \pdfpagesattr={%
+        /CropBox [\@pdfpagescrop]%
+        \expandafter\ifx\expandafter\\\the\pdfpagesattr\\%
+        \else
+          ^^J\the\pdfpagesattr
+        \fi
+      }%
+    }%
+    \process@me
+  \fi
+  \pdfcatalog {            % Catalog dictionary of PDF output.
+    /PageMode \@pdfpagemode
+    /URI << /Base (\@baseurl) >>
+  }
+  \ifx\@pdfstartview\@empty
+  \else
+    openaction goto page \@pdfstartpage {\@pdfstartview}%
+  \fi
+  \pdfcatalog{
+    /ViewerPreferences <<
+      \ifHy@toolbar\else /HideToolbar true \fi
+      \ifHy@menubar\else /HideMenubar true \fi
+      \ifHy@windowui\else /HideWindowUI true \fi
+      \ifHy@fitwindow /FitWindow true \fi
+      \ifHy@centerwindow /CenterWindow true \fi
+    >>
+    \ifx\pdf@pagelayout\@empty
+    \else
+      /PageLayout /\pdf@pagelayout\space
+    \fi
+  }%
+}
+\def\PDF@FinishDoc{%
+  \pdfinfo{%
+    /Author (\@pdfauthor)
+    /Title (\@pdftitle)
+    /Subject (\@pdfsubject)
+    /Creator (\@pdfcreator)
+    /Producer (\@pdfproducer)
+    /Keywords (\@pdfkeywords)
+  }%
+  \Hy@DisableOption{pdfauthor}%
+  \Hy@DisableOption{pdftitle}%
+  \Hy@DisableOption{pdfsubject}%
+  \Hy@DisableOption{pdfcreator}%
+  \Hy@DisableOption{pdfproducer}%
+  \Hy@DisableOption{pdfkeywords}%
+}
+\def\hyper@pagetransition{%
+  \ifx\@pdfpagetransition\relax
+  \else
+    \expandafter\Hy@RemoveTransPageAttr\the\pdfpageattr^^J/Trans{}>>\END
+    \ifx\@pdfpagetransition\@empty
+    \else
+      \edef\@processme{%
+        \global\pdfpageattr{%
+          \the\pdfpageattr
+          ^^J/Trans << /S /\@pdfpagetransition\space >>%
+        }%
+      }%
+      \@processme
+    \fi
+  \fi
+}
+\gdef\Hy@RemoveTransPageAttr#1^^J/Trans#2#3>>#4\END{%
+  \ifx\\#2\\%
+    \global\pdfpageattr{#1}%
+  \else
+    \Hy@RemoveTransPageAttr#1#4\END
+  \fi
+}
+\def\hyper@pageduration{%
+  \ifx\@pdfpageduration\relax
+  \else
+    \expandafter\Hy@RemoveDurPageAttr\the\pdfpageattr^^J/Dur{} \END
+    \ifx\@pdfpageduration\@empty
+    \else
+      \edef\@processme{%
+        \global\pdfpageattr{%
+          \the\pdfpageattr
+          ^^J/Dur \@pdfpageduration\space
+        }%
+      }%
+      \@processme
+    \fi
+  \fi
+}
+\gdef\Hy@RemoveDurPageAttr#1^^J/Dur#2#3 #4\END{%
+  \ifx\\#2\\%
+    \global\pdfpageattr{#1}%
+  \else
+    \Hy@RemoveDurPageAttr#1#4\END
+  \fi
+}
+\def\hyper@pagehidden{%
+  \ifHy@useHidKey
+    \expandafter\Hy@RemoveHidPageAttr\the\pdfpageattr^^J/Hid{} \END
+    \ifHy@pdfpagehidden
+      \edef\@processme{%
+        \global\pdfpageattr{%
+          \the\pdfpageattr
+          ^^J/Hid true % SPACE
+        }%
+      }%
+      \@processme
+    \fi
+  \fi
+}
+\gdef\Hy@RemoveHidPageAttr#1^^J/Hid#2#3 #4\END{%
+  \ifx\\#2\\%
+    \global\pdfpageattr{#1}%
+  \else
+    \Hy@RemoveHidPageAttr#1#4\END
+  \fi
+}
+\pdfoutput=1
+\pdfcompresslevel=9
+\AtBeginDocument{%
+  \@ifclassloaded{seminar}{%
+    \setlength{\pdfhorigin}{1truein}%
+    \setlength{\pdfvorigin}{1truein}%
+    \ifportrait
+      \ifdim\paperwidth=\z@
+      \else
+        \setlength{\pdfpagewidth}{\strip@pt\paperwidth truept}%
+      \fi
+      \ifdim\paperheight=\z@
+      \else
+        \setlength{\pdfpageheight}{\strip@pt\paperheight truept}%
+      \fi
+    \else
+      \ifdim\paperheight=\z@
+      \else
+        \setlength{\pdfpagewidth}{\strip@pt\paperheight truept}%
+      \fi
+      \ifdim\paperwidth=\z@
+      \else
+        \setlength{\pdfpageheight}{\strip@pt\paperwidth truept}%
+      \fi
+    \fi
+  }{%
+    \ifdim\paperwidth=\z@
+    \else
+      \setlength{\pdfpagewidth}{\paperwidth}%
+    \fi
+    \ifdim\paperheight=\z@
+    \else
+      \setlength{\pdfpageheight}{\paperheight}%
+    \fi
+  }%
+}
+\def\Acrobatmenu#1#2{%
+  \leavevmode
+  \pdfstartlink
+    attr{%
+      /Border [\@pdfborder]
+      /H \@pdfhighlight\space
+      /C [\@menubordercolor]%
+    }%
+    user{
+      /Subtype /Link
+      /A <<
+        /S /Named /N /#1
+      >>
+    }%
+  \Hy@colorlink{\@menucolor}#2\close@pdflink
+}
+\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
+  \typeout{Sorry, pdftex does not support FORM gauges}%
+}
+\RequirePackage{pifont}%
+\def\MakeFieldObject#1#2{\sbox0{#1}%
+  \immediate\pdfxform0 %
+  \expandafter\edef\csname #2Object\endcsname{%
+    \the\pdflastxform\space 0 R%
+  }%
+}%
+\def\@Form[#1]{%
+  \@ifundefined{textcolor}{\let\textcolor\@gobble}{}%
+  \setkeys{Form}{#1}%
+  \ifnum\pdftexversion>13
+    \pdfrefobj\OBJ@pdfdocencoding
+    \pdfrefobj\OBJ@ZaDb
+    \pdfrefobj\OBJ@Helv
+    \pdfrefobj\OBJ@acroform
+  \fi
+  \pdfcatalog{/AcroForm \OBJ@acroform\space 0 R}%
+  \MakeFieldObject{\ding{123}}{Ding}%
+  \MakeFieldObject{\fbox{\textcolor{yellow}{\textsf{Submit}}}}{Submit}%
+  \MakeFieldObject{\fbox{\textcolor{yellow}{\textsf{SubmitP}}}}{SubmitP}%
+}
+\def\@endForm{}
+\def\@TextField[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \def\Fld@default{}%
+  \let\Fld@value\@empty
+  \def\Fld@width{\DefaultWidthofText}%
+  \def\Fld@height{\DefaultHeightofText}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \ifx\Fld@value\@empty\def\Fld@value{\Fld@default}\fi
+    \ifFld@multiline
+      \def\Fld@height{4\DefaultHeightofText}%
+    \fi
+    \LayoutTextField{#2}{%
+    \pdfstartlink user {\PDFForm@Text}%
+    \MakeTextField{\Fld@width}{\Fld@height}\pdfendlink}%
+  \egroup
+}
+\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
+  \def\Fld@name{#2}%
+  \def\Fld@default{}%
+  \def\Fld@width{\DefaultWidthofChoiceMenu}%
+  \def\Fld@height{\DefaultHeightofChoiceMenu}%
+  \bgroup
+    \Fld@menulength=0
+    \@tempdima\z@
+    \@for\@curropt:=#3\do{%
+      \expandafter\Fld@checkequals\@curropt==\\%
+      \Hy@StepCount\Fld@menulength
+      \settowidth{\@tempdimb}{\@currDisplay}%
+      \ifdim\@tempdimb>\@tempdima\@tempdima\@tempdimb\fi
+    }%
+    \advance\@tempdima by 15\p@
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \LayoutChoiceField{#2}{%
+      \ifFld@radio
+        \@@Radio{#3}%
+      \else
+        {%
+          \ifdim\Fld@width<\@tempdima
+            \ifdim\@tempdima<1cm\@tempdima1cm\fi
+            \edef\Fld@width{\the\@tempdima}%
+          \fi
+          \def\Fld@flags{}%
+          \ifFld@combo\def\Fld@flags{/Ff 917504}\fi
+          \ifFld@popdown\def\Fld@flags{/Ff 131072}\fi
+          \ifx\Fld@flags\@empty
+            \@tempdima=\the\Fld@menulength\Fld@charsize
+            \advance\@tempdima by \Fld@borderwidth bp
+            \advance\@tempdima by \Fld@borderwidth bp
+            \edef\Fld@height{\the\@tempdima}%
+          \fi
+          \@@Listbox{#3}%
+        }%
+      \fi
+    }%
+  \egroup
+}
+\def\@@Radio#1{%
+  \Fld@listcount=0
+  \@for\@curropt:=#1\do{%
+    \expandafter\Fld@checkequals\@curropt==\\%
+    \Hy@StepCount\Fld@listcount
+    \@currDisplay\space
+    \leavevmode
+    \pdfstartlink user {%
+      \PDFForm@Radio
+      /AP <<
+        /N <<
+          /\@currValue\space \DingObject
+        >>
+      >>
+    }%
+    \MakeRadioField{\Fld@width}{\Fld@height}\pdfendlink
+    \space% deliberate space between radio buttons
+  }%
+}
+\newcount\Fld@listcount
+\def\@@Listbox#1{%
+  \Choice@toks={ }%
+  \Fld@listcount=0
+  \@for\@curropt:=#1\do{%
+    \expandafter\Fld@checkequals\@curropt==\\%
+    \Hy@StepCount\Fld@listcount
+    \edef\@processme{%
+      \Choice@toks{\the\Choice@toks [(\@currValue) (\@currDisplay)]}%
+    }\@processme
+  }%
+  \leavevmode
+  \pdfstartlink user {\PDFForm@List}%
+  \MakeChoiceField{\Fld@width}{\Fld@height}%
+  \pdfendlink
+}
+\def\@PushButton[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \LayoutPushButtonField{%
+      \leavevmode
+      \pdfstartlink user {\PDFForm@Push}%
+      \MakeButtonField{#2}%
+      \pdfendlink
+    }%
+  \egroup
+}
+\def\@Submit[#1]#2{%
+  \Field@toks={ }%
+  \def\Fld@width{\DefaultWidthofSubmit}%
+  \def\Fld@height{\DefaultHeightofSubmit}%
+  \bgroup
+    \def\Fld@name{Submit}%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \leavevmode
+    \pdfstartlink user {%
+      \PDFForm@Submit
+      /AP << /N \SubmitObject\space /D \SubmitPObject >>
+    }%
+    \MakeButtonField{#2}%
+    \pdfendlink
+  \egroup
+}
+\def\@Reset[#1]#2{%
+  \Field@toks={ }%
+  \def\Fld@width{\DefaultWidthofReset}%
+  \def\Fld@height{\DefaultHeightofReset}%
+  \bgroup
+    \def\Fld@name{Reset}%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \leavevmode
+    \pdfstartlink user {\PDFForm@Reset}%
+    \MakeButtonField{#2}%
+    \pdfendlink
+  \egroup
+}
+\def\@CheckBox[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \def\Fld@default{0}%
+  \bgroup
+    \def\Fld@width{\DefaultWidthofCheckBox}%
+    \def\Fld@height{\DefaultHeightofCheckBox}%
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \ifFld@hidden\def\Fld@width{1sp}\fi
+    \LayoutCheckField{#2}{%
+      \pdfstartlink user {\PDFForm@Check}%
+      \MakeCheckField{\Fld@width}{\Fld@height}%
+      \pdfendlink
+    }%
+  \egroup
+}
+\pdfobj { << /Type /Encoding /Differences [ 24 /breve /caron
+/circumflex /dotaccent /hungarumlaut /ogonek /ring /tilde 39
+/quotesingle 96 /grave 128 /bullet /dagger /daggerdbl /ellipsis
+/emdash /endash /florin /fraction /guilsinglleft /guilsinglright
+/minus /perthousand /quotedblbase /quotedblleft /quotedblright
+/quoteleft /quoteright /quotesinglbase /trademark /fi /fl /Lslash /OE
+/Scaron /Ydieresis /Zcaron /dotlessi /lslash /oe /scaron /zcaron 164
+/currency 166 /brokenbar 168 /dieresis /copyright /ordfeminine 172
+/logicalnot /.notdef /registered /macron /degree /plusminus
+/twosuperior /threesuperior /acute /mu 183 /periodcentered /cedilla
+/onesuperior /ordmasculine 188 /onequarter /onehalf /threequarters 192
+/Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
+/Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex
+/Idieresis /Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde
+/Odieresis /multiply /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis
+/Yacute /Thorn /germandbls /agrave /aacute /acircumflex /atilde
+/adieresis /aring /ae /ccedilla /egrave /eacute /ecircumflex
+/edieresis /igrave /iacute /icircumflex /idieresis /eth /ntilde
+/ograve /oacute /ocircumflex /otilde /odieresis /divide /oslash
+/ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis ] >>
+}
+\edef\OBJ@pdfdocencoding{\the\pdflastobj}
+\pdfobj {
+  <<
+   /Type /Font
+   /Subtype /Type1
+   /Name /ZaDb
+   /BaseFont /ZapfDingbats
+>>
+}
+\edef\OBJ@ZaDb{\the\pdflastobj}
+\pdfobj {  <<
+  /Type /Font
+  /Subtype /Type1
+  /Name /Helv
+  /BaseFont /Helvetica
+  /Encoding \OBJ@pdfdocencoding\space 0 R
+  >>
+}
+\edef\OBJ@Helv{\the\pdflastobj}
+\pdfobj {
+  <<
+    /Fields []
+    /DR <<
+      /Font << /ZaDb \OBJ@ZaDb\space 0 R /Helv \OBJ@Helv\space0 R >>
+    >>
+    /DA (/Helv 10 Tf 0 g )
+    /NeedAppearances true
+  >>
+}
+\edef\OBJ@acroform{\the\pdflastobj}
+\def\PDFForm@Check{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /Q \Fld@align\space
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+    /CA (\Fld@cbsymbol)
+  >>
+  /DA (/ZaDb \strip@pt\Fld@charsize\space Tf \Fld@color\space rg)
+  /FT /Btn
+  /H /P
+  \ifFld@checked /V /Yes \else /V /Off \fi
+}
+\def\PDFForm@Push{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /Ff 65540
+  /H /P
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+  >>
+  /A << /S /JavaScript /JS (\Fld@onclick;) >>
+}
+\def\PDFForm@List{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Ch
+  /Q \Fld@align\space
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+  >>
+  /DA (/Helv \strip@pt\Fld@charsize\space Tf \Fld@color\space rg )
+  /Opt [\the\Choice@toks]
+  /DV (\Fld@default)
+  \Fld@flags
+}
+\def\PDFForm@Radio{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /Ff 49152
+  /H /P
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+    /CA (H)
+  >>
+  /DA (/ZaDb \strip@pt\Fld@charsize\space Tf \Fld@color\space rg)
+  \ifx\@currValue\Fld@default
+    /V /\Fld@default\space
+  \else
+    /V /Off
+  \fi
+}
+\def\PDFForm@Text{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /Q \Fld@align\space
+  /FT /Tx
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+    \ifx\Fld@bcolor\@empty
+    \else
+      /BG [\Fld@bcolor]
+    \fi
+  >>
+  /DA (/Helv \strip@pt\Fld@charsize\space Tf \Fld@color\space rg )
+  /DV (\Fld@default)
+  /AA <<
+    \ifx\Fld@keystroke@code\@empty
+    \else
+      /K << /S /JavaScript /JS (\Fld@keystroke@code) >>
+    \fi
+    \ifx\Fld@format@code\@empty
+    \else
+      /F << /S /JavaScript /JS (\Fld@format@code) >>
+    \fi
+    \ifx\Fld@validate@code\@empty
+    \else
+      /V << /S /JavaScript /JS (\Fld@validate@code) >>
+    \fi
+    \ifx\Fld@calculate@code\@empty
+    \else
+      /C << /S /JavaScript /JS (\Fld@calculate@code) >>
+    \fi
+  >>
+  /V (\Fld@value)
+  \ifFld@multiline
+    \ifFld@readonly /Ff 4097 \else /Ff 4096 \fi
+  \else
+    \ifFld@password
+      \ifFld@readonly /Ff 8193 \else /Ff 8192 \fi
+    \fi
+  \fi
+  \ifnum\Fld@maxlen>0/MaxLen \Fld@maxlen \fi
+}
+\def\PDFForm@Submit{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /Ff 65540
+  /H /P
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /MK <<
+    /BC [\Fld@bordercolor]
+  >>
+  /A <<
+    /S /SubmitForm
+    /F <<
+      /FS /URL
+      /F (\Form@action)
+    >>
+    \ifForm@html /Flags 4 \fi
+  >>
+}
+\def\PDFForm@Reset{%
+  /Subtype /Widget
+  \ifFld@hidden /F 6 \else /F 4 \fi
+  /T (\Fld@name)
+  /FT /Btn
+  /H /P
+  /DA (/Helv \strip@pt\Fld@charsize\space Tf 0 0 1 rg)
+  /Ff 65540
+  /MK <<
+    /BC [\Fld@bordercolor]
+  >>
+  /BS << /W \Fld@borderwidth\space /S /\Fld@borderstyle\space >>
+  /A << /S /ResetForm >>
+}
+\newwrite\@outlinefile
+\def\Hy@writebookmark#1#2#3#4#5{% section number, text, label, level, file
+ \ifx\WriteBookmarks\relax%
+ \else
+  \ifnum#4>\c@tocdepth
+  \else
+   \@@writetorep{#1}{#2}{#3}{#4}{#5}%
+  \fi
+ \fi}
+\def\Hy@currentbookmarklevel{0}
+\def\Hy@numberline#1{#1 }
+\def\@@writetorep#1#2#3#4#5{%
+  \begingroup
+    \def\Hy@tempa{#5}%
+    \ifx\Hy@tempa\Hy@bookmarkstype
+      \edef\Hy@level{#4}%
+      \ifx\Hy@levelcheck Y%
+        \@tempcnta\Hy@level\relax
+        \advance\@tempcnta by -1
+        \ifnum\Hy@currentbookmarklevel<\@tempcnta
+          \advance\@tempcnta by -\Hy@currentbookmarklevel\relax
+          \advance\@tempcnta by 1
+          \Hy@Warning{%
+            Difference (\the\@tempcnta) between bookmark levels is %
+            greater \MessageBreak than one, level fixed%
+          }%
+          \@tempcnta\Hy@currentbookmarklevel
+          \advance\@tempcnta by 1
+          \edef\Hy@level{\the\@tempcnta}%
+        \fi
+      \else
+        \global\let\Hy@levelcheck Y%
+      \fi
+      \global\let\Hy@currentbookmarklevel\Hy@level
+      \@tempcnta\Hy@level\relax
+      \expandafter\xdef\csname Parent\Hy@level\endcsname{#3}%
+      \advance\@tempcnta by -1
+      \edef\Hy@tempa{#3}%
+      \edef\Hy@tempb{\csname Parent\the\@tempcnta\endcsname}%
+      \ifx\Hy@tempa\Hy@tempb
+        \Hy@Warning{%
+          The anchor of a bookmark and its parent's must not%
+          \MessageBreak be the same. Added a new anchor%
+        }%
+        \phantomsection
+      \fi
+      \ifHy@bookmarksnumbered
+        \let\numberline\Hy@numberline
+      \else
+        \let\numberline\@gobble
+      \fi
+      \pdfstringdef\Hy@tempa{#2}%
+      \protected@write\@outlinefile{}{%
+        \protect\BOOKMARK
+          [\Hy@level][\@bookmarkopenstatus{\Hy@level}]{#3}%
+          {\Hy@tempa}{\Hy@tempb}%
+      }%
+    \fi
+  \endgroup
+}
+\newcommand{\currentpdfbookmark}{%
+  \pdfbookmark[\Hy@currentbookmarklevel]%
+}
+\newcommand{\subpdfbookmark}{%
+  \@tempcnta\Hy@currentbookmarklevel
+  \Hy@StepCount\@tempcnta
+  \expandafter\pdfbookmark\expandafter[\the\@tempcnta]%
+}
+\newcommand{\belowpdfbookmark}[2]{%
+  \@tempcnta\Hy@currentbookmarklevel
+  \Hy@StepCount\@tempcnta
+  \expandafter\pdfbookmark\expandafter[\the\@tempcnta]{#1}{#2}%
+  \advance\@tempcnta by -1
+  \xdef\Hy@currentbookmarklevel{\the\@tempcnta}%
+}
+\renewcommand\pdfbookmark[3][0]{%
+  \Hy@writebookmark{}{#2}{#3.#1}{#1}{toc}%
+  \hyper@anchorstart{#3.#1}\hyper@anchorend
+}
+\def\BOOKMARK{\@ifnextchar[{\@BOOKMARK}{\@@BOOKMARK[1][-]}}
+\def\@BOOKMARK[#1]{\@ifnextchar[{\@@BOOKMARK[#1]}{\@@BOOKMARK[#1][-]}}
+\def\ReadBookmarks{%
+  \begingroup
+    \escapechar=`\\%
+    \let\escapechar\@gobble %
+    \def\@@BOOKMARK [##1][##2]##3##4##5{\calc@bm@number{##5}}%
+    \InputIfFileExists{\jobname.out}{}{}%
+    \ifx\WriteBookmarks\relax
+      \global\let\WriteBookmarks\relax
+    \fi
+    \def\@@BOOKMARK[##1][##2]##3##4##5{%
+      \def\Hy@temp{##4}%
+      \pdfoutline goto
+        name{##3}%
+        count ##2\check@bm@number{##3}{%
+          \expandafter\strip@prefix\meaning\Hy@temp
+        }%
+   }%
+   {%
+    \def\WriteBookmarks{0}%
+    \InputIfFileExists{\jobname.out}{}{}%
+   }%
+   %{\escapechar\m@ne\InputIfFileExists{\jobname.out}{}{}}%
+   \ifx\WriteBookmarks\relax\else
+     \if@filesw\immediate\openout\@outlinefile=\jobname.out
+      \ifHy@typexml
+       \immediate\write\@outlinefile{<relaxxml>\relax}%
+      \fi
+     \fi
+   \fi
+   \endgroup
+}
+\def\check@bm@number#1{%
+  \expandafter\ifx\csname B_#1\endcsname\relax
+    0%
+  \else
+    \csname B_#1\endcsname
+  \fi
+}
+\def\calc@bm@number#1{%
+  \@tempcnta=\check@bm@number{#1}\relax
+  \advance\@tempcnta by1
+  \expandafter\xdef\csname B_#1\endcsname{\the\@tempcnta}%
+}
+\ifHy@implicit
+\else
+  \def\@begindvi{%
+    \unvbox\@begindvibox
+    \HyPL@EveryPage
+    \global\let\@begindvi\HyPL@EveryPage
+  }%
+  \expandafter\endinput
+\fi
+\let\H@old@ssect\@ssect
+\def\@ssect#1#2#3#4#5{%
+  \H@old@ssect{#1}{#2}{#3}{#4}{#5}%
+  \phantomsection
+}
+\let\H@old@schapter\@schapter
+\def\@schapter#1{%
+  \H@old@schapter{#1}%
+  \begingroup
+    \let\@mkboth\@gobbletwo
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \endgroup
+}
+\@ifundefined{@chapter}{}{%
+  \let\Hy@org@chapter\@chapter
+  \def\@chapter{%
+    \def\Hy@next{%
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+      \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    }%
+    \ifnum\c@secnumdepth>\m@ne
+      \@ifundefined{if@mainmatter}%
+      \iftrue{\csname if@mainmatter\endcsname}
+        \let\Hy@next\relax
+      \fi
+    \fi
+    \Hy@next
+    \Hy@org@chapter
+  }%
+}
+\let\H@old@spart\@spart
+\def\@spart#1{%
+  \H@old@spart{#1}%
+  \Hy@GlobalStepCount\Hy@linkcounter
+  \xdef\@currentHref{part*.\the\Hy@linkcounter}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\let\H@old@sect\@sect
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+  \ifnum #2>\c@secnumdepth
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{section*.\the\Hy@linkcounter}%
+  \fi
+  \H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}%
+  \ifnum #2>\c@secnumdepth
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \fi
+}
+\expandafter\def\csname Parent-4\endcsname{}
+\expandafter\def\csname Parent-3\endcsname{}
+\expandafter\def\csname Parent-2\endcsname{}
+\expandafter\def\csname Parent-1\endcsname{}
+\expandafter\def\csname Parent0\endcsname{}
+\expandafter\def\csname Parent1\endcsname{}
+\expandafter\def\csname Parent2\endcsname{}
+\expandafter\def\csname Parent3\endcsname{}
+\expandafter\def\csname Parent4\endcsname{}
+\def\Hy@tempa{%
+  \def\@addchap[##1]##2{%
+    \typeout{##2}%
+    \if@twoside
+      \@mkboth{##1}{}%
+    \else
+      \@mkboth{}{##1}%
+    \fi
+    \addtocontents{lof}{\protect\addvspace{10\p@}}%
+    \addtocontents{lot}{\protect\addvspace{10\p@}}%
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    \if@twocolumn
+       \@topnewpage[\@makeschapterhead{##2}]%
+    \else
+       \@makeschapterhead{##2}%
+       \@afterheading
+    \fi
+    \addcontentsline{toc}{chapter}{##1}%
+  }%
+}
+\@ifclassloaded{scrbook}{%
+  \@ifclasslater{scrbook}{2001/01/01}{%
+    \let\Hy@tempa\@empty
+  }{}%
+}{%
+  \@ifclassloaded{scrreprt}{%
+    \@ifclasslater{scrreprt}{2001/01/01}{%
+      \let\Hy@tempa\@empty
+    }{}%
+  }{%
+    \let\Hy@tempa\@empty
+  }%
+}%
+\Hy@tempa
+\endinput
+%%
+%% End of file `hpdftex.def'.
diff --git a/styles/htex4ht.cfg b/styles/htex4ht.cfg
new file mode 100644 (file)
index 0000000..dfe14a3
--- /dev/null
@@ -0,0 +1,41 @@
+%%
+%% This is file `htex4ht.cfg',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `tex4htcfg')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{htex4ht.cfg}
+  [2001/05/26 v6.71g
+  Hyperref configuration file for TeX4ht]
+\IfFileExists{\jobname.cfg}{\endinput}{}
+\Preamble{html}
+   \begin{document}
+\EndPreamble
+\def\TeX{TeX}
+\def\OMEGA{Omega}
+\def\LaTeX{La\TeX}
+\def\LaTeXe{\LaTeX2e}
+\def\eTeX{e-\TeX}
+\def\MF{Metafont}
+\def\MP{Metapost}
+\endinput
+%%
+%% End of file `htex4ht.cfg'.
diff --git a/styles/htex4ht.def b/styles/htex4ht.def
new file mode 100644 (file)
index 0000000..5ba24f3
--- /dev/null
@@ -0,0 +1,254 @@
+%%
+%% This is file `htex4ht.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `tex4ht')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{htex4ht.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for TeX4ht]
+\@ifpackageloaded{tex4ht}
+  {\typeout{hyperref tex4ht: tex4ht already loaded}}%
+  {\RequirePackage[htex4ht]{tex4ht}}
+\def\PDF@FinishDoc{}
+\def\PDF@SetupDoc{%
+  \ifx\@baseurl\@empty\else
+    \special{t4ht=<base href="\@baseurl">}%
+  \fi
+}
+\def\hyper@anchor#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \let\protect=\string
+    \special{t4ht=<a name=\hyper@quote #1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+  \Hy@colorlink{\@anchorcolor}\anchor@spot\Hy@endcolorlink
+  \special{t4ht=</a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@anchorstart#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \hyper@chars\special{t4ht=<a name=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+  \special{t4ht=</a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\@urltype{url}
+\def\hyper@linkstart#1#2{%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+  \def\Hy@tempa{#1}%
+  \ifx\Hy@tempa\@urltype
+    \special{t4ht=<a href=\hyper@quote#2\hyper@quote>}%
+  \else
+    {\hyper@chars\special{t4ht=<a href=\hyper@quote\##2\hyper@quote>}}%
+  \fi
+}
+\def\hyper@linkend{%
+  \special{t4ht=</a>}%
+  \Hy@endcolorlink
+}
+\def\hyper@linkfile#1#2#3{%
+  \hyper@linkurl{#1}{file:#2\ifx\\#3\\\else\##3\fi}%
+}
+\def\hyper@linkurl#1#2{%
+  \leavevmode
+  \ifHy@raiselinks
+    \setbox\@tempboxa=\color@hbox #1\color@endbox
+    \@linkdim\dp\@tempboxa
+    \lower\@linkdim\hbox{%
+      \begingroup
+        \hyper@chars\special{t4ht=<a href=\hyper@quote#2\hyper@quote>}%
+      \endgroup
+    }%
+    \Hy@colorlink{\@urlcolor}#1\Hy@endcolorlink
+    \@linkdim\ht\@tempboxa
+    \advance\@linkdim by -6.5\p@
+    \raise\@linkdim\hbox{\special{t4ht=</a>}}%
+ \else
+   \begingroup
+     \hyper@chars
+     \special{t4ht=<a href=\hyper@quote#2\hyper@quote>}%
+     \Hy@colorlink{\@urlcolor}#1\Hy@endcolorlink
+     \special{t4ht=</a>}%
+   \endgroup
+ \fi
+}
+\def\hyper@link#1#2#3{%
+  \hyper@linkurl{#3}{\##2}%
+}
+\def\hyper@image#1#2{%
+  \begingroup
+    \hyper@chars
+    \special{t4ht=<img src=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+}
+\let\autoref\ref
+\ifx \rEfLiNK \UnDef
+  \def\rEfLiNK #1#2{#2}%
+\fi
+\def\backref#1{}
+\def\@Form[#1]{%
+  \setkeys{Form}{#1}%
+  \HCode{<form action="\Form@action" method="\Form@method">}%
+}
+\def\@endForm{\HCode{</form>}}
+\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
+  \typeout{Sorry, TeX4ht does not support gauges}%
+}
+\def\@TextField[#1]#2{% parameters, label
+  \let\Hy@reserved@a\@empty
+  \def\Fld@name{#2}%
+  \def\Fld@default{}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \HCode{<label for="\Fld@name">#2</label>}%
+    \ifFld@password
+      \@@PasswordField
+    \else
+      \@@TextField
+    \fi
+  \egroup
+}
+\def\@@PasswordField{%
+  \HCode{%
+    <input type="password"
+     id="\Fld@name"
+     name="\Fld@name"
+     \ifFld@hidden type="hidden"\fi
+     value="\Fld@default"
+     \the\Field@toks
+    >%
+  }%
+}
+\def\@@TextField{%
+  \ifFld@multiline
+    \HCode{<textarea
+      \ifFld@readonly readonly \fi
+      id="\Fld@name"
+      name="\Fld@name"
+      \ifFld@hidden type="hidden"\fi
+      \the\Field@toks>%
+    }%
+    \Fld@default
+    \HCode{</textarea>}%
+  \else
+    \HCode{<input type="textbox"
+      \ifFld@readonly readonly \fi
+      id="\Fld@name"
+      name="\Fld@name"
+      \ifFld@hidden type="hidden"\fi
+      value="\Fld@default" \the\Field@toks>
+    }%
+  \fi
+}
+\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
+  \def\Fld@name{#2}%
+  \def\Fld@default{}%
+  \let\Hy@reserved@a\relax
+  \bgroup
+   \expandafter\Fld@findlength#3\\%
+   \Field@toks={ }%
+   \setkeys{Field}{#1}%
+   #2%
+   \ifFld@radio
+     \expandafter\@@Radio#3\\%
+   \else
+     \expandafter\@@Menu#3\\%
+   \fi
+  \egroup
+}
+\def\Fld@findlength#1\\{%
+  \Fld@menulength=0
+  \@for\@curropt:=#1\do{\Hy@StepCount\Fld@menulength}%
+}
+\def\@@Menu#1\\{%
+  \HCode{<select size="\the\Fld@menulength"
+    name="\Fld@name"  \the\Field@toks>}%
+  \@for\@curropt:=#1\do{%
+    \expandafter\Fld@checkequals\@curropt==\\%
+    \HCode{<option
+      \ifx\@curropt\Fld@default selected \fi
+      value="\@currValue">\@currDisplay</option>%
+    }%
+  }%
+  \HCode{</select>}%
+}
+\def\@@Radio#1\\{%
+  \@for\@curropt:=#1\do{%
+    \expandafter\Fld@checkequals\@curropt==\\%
+    \HCode{<input type="radio"
+      \ifx\@curropt\Fld@default checked \fi
+      name="\Fld@name"
+      value="\@currValue"
+      \the\Field@toks>%
+    }%
+    \@currDisplay
+  }%
+}
+\def\@PushButton[#1]#2{% parameters, label
+  \def\Fld@name{#2}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \HCode{<input type="button"
+      name="\Fld@name"
+      value="#2"
+      \the\Field@toks>%
+    }%
+    \HCode{</button>}%
+  \egroup
+}
+\def\@Submit[#1]#2{%
+  \HCode{<button type="submit">#2</button>}%
+}
+\def\@Reset[#1]#2{%
+  \HCode{<button type="reset">#2</button>}%
+}
+\def\@CheckBox[#1]#2{% parameters, label
+  \let\Hy@reserved@a\@empty
+  \def\Fld@name{#2}%
+  \def\Fld@default{0}%
+  \bgroup
+    \Field@toks={ }%
+    \setkeys{Field}{#1}%
+    \HCode{<input type="checkbox"
+      \ifFld@checked checked \fi
+      \ifFld@disabled disabled \fi
+      \ifFld@readonly readonly \fi
+      name="\Fld@name"
+      \ifFld@hidden type="hidden"\fi
+      value="\Fld@default"
+      \the\Field@toks>%
+      #2%
+    }%
+  \egroup
+}
+\endinput
+%%
+%% End of file `htex4ht.def'.
diff --git a/styles/htexture.def b/styles/htexture.def
new file mode 100644 (file)
index 0000000..9e3b488
--- /dev/null
@@ -0,0 +1,170 @@
+%%
+%% This is file `htexture.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `textures')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{htexture.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for Textures]
+\input{pdfmark.def}%
+\def\@pdfproducer{Textures + Distiller}%
+\def\literalps@out#1{\special{rawpostscript #1}}%
+\def\headerps@out#1{\special{prepostscript #1}}%
+\providecommand\@pdfborder{0 0 1}
+\providecommand\@pdfview{XYZ}
+\providecommand\@pdfviewparams{ H.V}
+\headerps@out{%
+  /vsize {\Hy@pageheight} def
+  /DvipsToPDF {} def
+  /PDFToDvips {} def
+  /HyperBorder  { 1 PDFToDvips } def
+  /H.V {pdf@hoff pdf@voff null} def
+  /H.B {/Rect[pdf@llx pdf@lly pdf@urx pdf@ury]} def
+  /H.S {
+    currentpoint
+    HyperBorder add /pdf@lly exch def
+    dup DvipsToPDF  /pdf@hoff exch def
+    HyperBorder sub /pdf@llx exch def
+  } def
+  /H.L {
+    2 sub
+    PDFToDvips /HyperBase exch def
+    currentpoint
+    HyperBase sub /pdf@ury exch def
+    /pdf@urx exch def
+  } def
+  /H.A {
+    H.L
+    currentpoint exch pop
+    vsize 72 sub exch DvipsToPDF
+    HyperBase sub % baseline skip
+    sub /pdf@voff exch def
+  } def
+  /H.R {
+    currentpoint
+    HyperBorder sub /pdf@ury exch def
+    HyperBorder add /pdf@urx exch def
+    currentpoint exch pop vsize 72 sub
+    exch DvipsToPDF sub /pdf@voff exch def
+  } def
+  systemdict
+  /pdfmark known not
+  {userdict /pdfmark systemdict /cleartomark get put} if
+}
+\AfterBeginDocument{%
+  \ifHy@colorlinks
+    \headerps@out{%
+      TeXdict begin^^J%
+        /PDFBorder{/Border [0 0 0]}def^^J%
+      end%
+    }%
+  \fi
+}
+\expandafter\let\expandafter\keepPDF@SetupDoc
+  \csname PDF@SetupDoc\endcsname
+\def\PDF@SetupDoc{%
+  \ifx\@baseurl\@empty\else
+    \special{html:<base href="\@baseurl">}%
+  \fi
+  \keepPDF@SetupDoc
+}
+\def\hyper@anchor#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \let\protect=\string
+    \special{html:<a name=\hyper@quote #1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+  \Hy@colorlink{\@anchorcolor}\anchor@spot\Hy@endcolorlink
+  \special{html:</a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@anchorstart#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \hyper@chars
+    \special{html:<a name=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+  \special{html:</a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\@urltype{url}
+\def\hyper@linkstart#1#2{%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+  \def\Hy@tempa{#1}%
+  \ifx\Hy@tempa\@urltype
+    \special{html:<a href=\hyper@quote#2\hyper@quote>}%
+  \else
+    \begingroup
+      \hyper@chars
+      \special{html:<a href=\hyper@quote\##2\hyper@quote>}%
+    \endgroup
+  \fi
+}
+\def\hyper@linkend{%
+  \special{html:</a>}%
+  \Hy@endcolorlink
+}
+\def\hyper@linkfile#1#2#3{%
+  \hyper@linkurl{#1}{file:#2\ifx\\#3\\\else\##3\fi}%
+}
+\def\hyper@linkurl#1#2{%
+  \leavevmode
+  \ifHy@raiselinks
+    \setbox\@tempboxa=\color@hbox #1\color@endbox
+    \@linkdim\dp\@tempboxa
+    \lower\@linkdim\hbox{%
+      \hyper@chars
+      \special{html:<a href=\hyper@quote#2\hyper@quote>}%
+    }%
+    \Hy@colorlink{\@urlcolor}#1%
+    \@linkdim\ht\@tempboxa
+    \advance\@linkdim by -6.5\p@
+    \raise\@linkdim\hbox{\special{html:</a>}}%
+    \Hy@endcolorlink
+  \else
+    \begingroup
+      \hyper@chars
+      \special{html:<a href=\hyper@quote#2\hyper@quote>}%
+      \Hy@colorlink{\@urlcolor}#1%
+      \special{html:</a>}%
+      \Hy@endcolorlink
+    \endgroup
+  \fi
+}
+\def\hyper@link#1#2#3{%
+  \hyper@linkurl{#3}{\##2}%
+}
+\def\hyper@image#1#2{%
+  \begingroup
+    \hyper@chars
+    \special{html:<img src=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+}
+\endinput
+%%
+%% End of file `htexture.def'.
diff --git a/styles/hvtex.def b/styles/hvtex.def
new file mode 100644 (file)
index 0000000..2bd92b3
--- /dev/null
@@ -0,0 +1,633 @@
+%%
+%% This is file `hvtex.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `vtex,outlines')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hvtex.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for VTeX in PDF/PS mode]
+\edef\Hy@VTeXversion{%
+  \ifx\VTeXversion\@undefined
+    \z@
+  \else
+    \ifx\VTeXversion\relax
+      \z@
+    \else
+      \VTeXversion
+    \fi
+  \fi
+}
+\begingroup
+  \ifnum\Hy@VTeXversion<660 %
+    \gdef\Hy@PutCatalog#1{%
+      \Hy@WarningNoLine{%
+        VTeX 6.59g or above required for pdfpagelabels%
+      }%
+    }
+  \else
+    \gdef\Hy@PutCatalog#1{%
+      \Hy@vt@PutCatalog#1/PageLabels <<>>\@nil
+    }
+    \gdef\Hy@vt@PutCatalog#1/PageLabels <<#2>>#3\@nil{%
+      \ifx\\#2\\%
+      \else
+        \immediate\special{!pdfpagelabels #2}%
+      \fi
+    }
+  \fi
+\endgroup
+\ifHy@pagelabels
+  \def\HyPL@StorePageLabel#1{%
+    \toks@\expandafter{\HyPL@Labels}%
+    \xdef\HyPL@Labels{%
+      \the\toks@
+      \the\Hy@abspage\space<< #1 >> %
+    }%
+  }
+  \AtEndDocument{\clearpage\HyPL@SetPageLabels}
+\fi
+\ifx\mediaheight\@undefined
+\else
+   \ifx\mediaheight\relax
+   \else
+      \providecommand*{\VTeXInitMediaSize}{%
+        \setlength\mediaheight\paperheight
+        \setlength\mediawidth\paperwidth
+      }%
+      \AtBeginDocument{\VTeXInitMediaSize}%
+   \fi
+\fi
+\providecommand\@pdfview{xyz}
+\providecommand\@pdfborder{0 0 1}%
+\def\CurrentBorderColor{\@linkbordercolor}
+\def\hyper@anchor#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \let\protect=\string
+    \hyper@chars
+    \special{!aname #1;\@pdfview}%
+  \endgroup
+  \Hy@activeanchortrue
+  \Hy@colorlink{\@anchorcolor}\anchor@spot\Hy@endcolorlink
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@anchorstart#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \hyper@chars
+    \special{!aname #1;\@pdfview}%
+  \endgroup
+  \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\@urltype{url}
+\def\Hy@undefinedname{UNDEFINED}
+\def\hyper@linkstart#1#2{%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+  \edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
+  \def\Hy@tempa{#1}%
+  \ifx\Hy@tempa\@urltype
+    \special{!%
+      aref <u=/Type /Action /S /URI /URI (#2)>;%
+      a=</Border [\@pdfborder] /C [\CurrentBorderColor]>%
+    }%
+  \else
+    \protected@edef\Hy@testname{#2}%
+    \ifx\Hy@testname\@empty
+      \let\Hy@testname\Hy@undefinedname
+    \fi
+    \special{!%
+      aref \Hy@testname;%
+      a=</Border [\@pdfborder] /C [\CurrentBorderColor]>%
+    }%
+  \fi
+}
+\def\hyper@linkend{%
+  \special{!endaref}%
+  \Hy@endcolorlink
+}
+\def\hyper@linkfile#1#2#3{%
+  \leavevmode
+  \special{!%
+    aref <f=#2>#3;%
+    a=</Border [\@pdfborder] /C [\@filebordercolor]>%
+  }%
+  \Hy@colorlink{\@filecolor}#1\Hy@endcolorlink
+  \special{!endaref}%
+}
+\def\hyper@linkurl#1#2{%
+  \begingroup
+    \hyper@chars
+    \leavevmode
+    \special{!%
+      aref <u=/Type /Action /S /URI /URI (#2)>;%
+      a=</Border [\@pdfborder] /C [\@urlbordercolor]>%
+    }%
+    \Hy@colorlink{\@urlcolor}#1\Hy@endcolorlink
+    \special{!endaref}%
+  \endgroup
+}
+\def\hyper@link#1#2#3{%
+  \edef\CurrentBorderColor{\csname @#1bordercolor\endcsname}%
+  \leavevmode
+  \protected@edef\Hy@testname{#2}%
+  \ifx\Hy@testname\@empty
+    \let\Hy@testname\Hy@undefinedname
+  \fi
+  \special{!%
+    aref \Hy@testname;%
+    a=</Border [\@pdfborder] /C [\CurrentBorderColor]>%
+  }%
+  \Hy@colorlink{\csname @#1color\endcsname}#3\Hy@endcolorlink
+  \special{!endaref}%
+}
+\def\hyper@image#1#2{%
+  \hyper@linkurl{#2}{#1}%
+}
+\def\@hyper@launch run:#1\\#2#3{%
+  \leavevmode
+  \special{!aref
+    <u=%
+      /Type /Action
+      /S /Launch
+      /F (#1)
+      \ifHy@newwindow /NewWindow true \fi
+      \ifx\\#3\\\else /Win << /F (#1) /P (#3) >> \fi%
+    >;%
+    a=</Border [\@pdfborder] /C [\@runbordercolor]>%
+  }%
+  \Hy@colorlink{\@filecolor}#2\Hy@endcolorlink
+  \special{!endaref}%
+}
+\def\Acrobatmenu#1#2{%
+  \leavevmode
+  \special{!%
+    aref <u=/S /Named /N /#1>;%
+    a=</Border [\@pdfborder] /C [\@menubordercolor]>%
+  }%
+  \Hy@colorlink{\@menucolor}#2\Hy@endcolorlink
+  \special{!endaref}%
+}
+\ifnum\Hy@VTeXversion<702 %
+\else
+  \def\hyper@pagetransition{%
+    \ifx\@pdfpagetransition\relax
+    \else
+      \ifx\@pdfpagetransition\@empty
+      \else
+        \hvtex@parse@trans\@pdfpagetransition
+      \fi
+    \fi
+  }
+  \def\hvtex@trans@effect@Blinds{\def\hvtex@trans@code{B}}
+  \def\hvtex@trans@effect@Box{\def\hvtex@trans@code{X}}
+  \def\hvtex@trans@effect@Dissolve{\def\hvtex@trans@code{D}}
+  \def\hvtex@trans@effect@Glitter{\def\hvtex@trans@code{G}}
+  \def\hvtex@trans@effect@Split{\def\hvtex@trans@code{S}}
+  \def\hvtex@trans@effect@Wipe{\def\hvtex@trans@code{W}}
+  \def\hvtex@trans@effect@R{\def\hvtex@trans@code{R}}
+  \def\hvtex@par@dimension{/Dm}
+  \def\hvtex@par@direction{/Di}
+  \def\hvtex@par@duration{/D}
+  \def\hvtex@par@motion{/M}
+  \def\hvtex@gettoken{\expandafter\hvtex@gettoken@\hvtex@buffer\@nil}
+  \def\hvtex@gettoken@#1 #2\@nil{%
+    \edef\hvtex@token{#1}%
+    \edef\hvtex@buffer{#2}%
+  }
+  \def\hvtex@parse@trans#1{%
+    \let\hvtex@trans@code\@empty
+    \let\hvtex@param@dimension\@empty
+    \let\hvtex@param@direction\@empty
+    \let\hvtex@param@duration\@empty
+    \let\hvtex@param@motion\@empty
+    \edef\hvtex@buffer{#1\space}%
+    \hvtex@gettoken
+    \ifx\hvtex@token\@empty
+      \ifx\hvtex@buffer\@empty
+      \else
+        \hvtex@gettoken
+      \fi
+    \fi
+    \csname hvtex@trans@effect@\hvtex@token\endcsname
+    \hvtex@trans@params
+  }
+  \def\hvtex@trans@params{%
+    \ifx\hvtex@buffer\@empty
+    \else
+      \hvtex@gettoken
+      \let\hvtex@trans@par\hvtex@token
+      \ifx\hvtex@buffer\@empty
+      \else
+        \hvtex@gettoken
+        \ifx\hvtex@trans@par\hvtex@par@duration
+          \let\hvtex@param@duration\hvtex@token
+        \else \ifx\hvtex@trans@par\hvtex@par@motion
+          \expandafter\edef\expandafter\hvtex@param@motion
+            \expandafter{\expandafter\@gobble\hvtex@token}%
+        \else \ifx\hvtex@trans@par\hvtex@par@dimension
+          \expandafter\edef\expandafter\hvtex@param@dimension
+            \expandafter{\expandafter\@gobble\hvtex@token}%
+        \else \ifx\hvtex@trans@par\hvtex@par@direction
+          \let\hvtex@param@direction\hvtex@token
+        \fi\fi\fi\fi
+      \fi
+    \fi
+    \ifx\hvtex@buffer\@empty
+      \let\next\hvtex@produce@trans
+    \else
+      \let\next\hvtex@trans@params
+    \fi
+    \next
+  }
+  \def\hvtex@produce@trans{%
+    \let\vtex@trans@special\@empty
+    \if S\hvtex@trans@code
+      \edef\vtex@trans@special{\hvtex@trans@code
+        \hvtex@param@dimension\hvtex@param@motion}%
+    \else \if B\hvtex@trans@code
+      \edef\vtex@trans@special{\hvtex@trans@code\hvtex@param@dimension}%
+    \else \if X\hvtex@trans@code
+      \edef\vtex@trans@special{\hvtex@trans@code\hvtex@param@motion}%
+    \else \if W\hvtex@trans@code
+      \edef\vtex@trans@special{\hvtex@trans@code\hvtex@param@direction}%
+    \else \if D\hvtex@trans@code
+      \let\vtex@trans@special\hvtex@trans@code
+    \else \if R\hvtex@trans@code
+      \let\vtex@trans@special\hvtex@trans@code
+    \else \if G\hvtex@trans@code
+      \edef\vtex@trans@special{\hvtex@trans@code\hvtex@param@direction}%
+    \fi\fi\fi\fi\fi\fi\fi
+    \ifx\vtex@trans@special\@empty
+    \else
+      \ifx\hvtex@param@duration\@empty
+      \else
+        \setlength{\dimen@}{\hvtex@param@duration\p@}%
+        \multiply\dimen@\@m
+        \edef\vtex@trans@special{\vtex@trans@special,\strip@pt\dimen@}%
+      \fi
+      \special{!trans \vtex@trans@special}%
+    \fi
+  }
+  \def\hyper@pageduration{%
+    \ifx\@pdfpageduration\relax
+    \else
+      \ifx\@pdfpageduration\@empty
+        \special{!duration-}%
+      \else
+        \special{!duration \@pdfpageduration}%
+      \fi
+    \fi
+  }
+  \def\hyper@pagehidden{%
+    \ifHy@useHidKey
+      \special{!hidden\ifHy@pdfpagehidden +\else -\fi}%
+    \fi
+  }
+\fi
+\def\@pdfproducer{VTeX}
+\ifnum\Hy@VTeXversion>\z@
+  \count@\VTeXversion
+  \divide\count@ 100
+  \edef\@pdfproducer{\@pdfproducer\space v\the\count@}
+  \multiply\count@ -100
+  \advance\count@\VTeXversion
+  \edef\@pdfproducer{%
+    \@pdfproducer
+    .\ifnum\count@<10 0\fi\the\count@,\space
+    \ifnum\OpMode=\@ne PDF\else PS\fi
+    \space backend%
+    \ifx\gexmode\@undefined\else
+      \ifnum\gexmode>\z@\space with GeX\fi
+    \fi
+  }
+\fi
+\def\PDF@SetupDoc{%
+  \ifx\@pdfpagescrop\@empty
+  \else
+    \special{!pdfinfo b=<\@pdfpagescrop>}%
+  \fi
+  \special{!onopen Page\@pdfstartpage}%
+  \special{!pdfinfo p=<\@pdfpagemode>}%
+  \ifx\@baseurl\@empty
+  \else
+    \special{!pdfinfo u=<<</Base (\@baseurl)>>>}%
+  \fi
+  \special{!pdfinfo v=<<<%
+    \ifHy@toolbar\else /HideToolbar true \fi
+    \ifHy@menubar\else /HideMenubar true \fi
+    \ifHy@windowui\else /HideWindowUI true \fi
+    \ifHy@fitwindow /FitWindow true \fi
+    \ifHy@centerwindow /CenterWindow true \fi
+  >>>}%
+  \ifx\pdf@pagelayout\@empty
+  \else
+    \special{!pdfinfo l=</\pdf@pagelayout\space>}%
+  \fi
+}%
+\def\PDF@FinishDoc{%
+  \special{!pdfinfo a=<\@pdfauthor>}%
+  \special{!pdfinfo t=<\@pdftitle>}%
+  \special{!pdfinfo s=<\@pdfsubject>}%
+  \special{!pdfinfo c=<\@pdfcreator>}%
+  \special{!pdfinfo r=<\@pdfproducer>}%
+  \special{!pdfinfo k=<\@pdfkeywords>}%
+  \Hy@DisableOption{pdfauthor}%
+  \Hy@DisableOption{pdftitle}%
+  \Hy@DisableOption{pdfsubject}%
+  \Hy@DisableOption{pdfcreator}%
+  \Hy@DisableOption{pdfproducer}%
+  \Hy@DisableOption{pdfkeywords}%
+}
+\newwrite\@outlinefile
+\def\Hy@writebookmark#1#2#3#4#5{% section number, text, label, level, file
+ \ifx\WriteBookmarks\relax%
+ \else
+  \ifnum#4>\c@tocdepth
+  \else
+   \@@writetorep{#1}{#2}{#3}{#4}{#5}%
+  \fi
+ \fi}
+\def\Hy@currentbookmarklevel{0}
+\def\Hy@numberline#1{#1 }
+\def\@@writetorep#1#2#3#4#5{%
+  \begingroup
+    \def\Hy@tempa{#5}%
+    \ifx\Hy@tempa\Hy@bookmarkstype
+      \edef\Hy@level{#4}%
+      \ifx\Hy@levelcheck Y%
+        \@tempcnta\Hy@level\relax
+        \advance\@tempcnta by -1
+        \ifnum\Hy@currentbookmarklevel<\@tempcnta
+          \advance\@tempcnta by -\Hy@currentbookmarklevel\relax
+          \advance\@tempcnta by 1
+          \Hy@Warning{%
+            Difference (\the\@tempcnta) between bookmark levels is %
+            greater \MessageBreak than one, level fixed%
+          }%
+          \@tempcnta\Hy@currentbookmarklevel
+          \advance\@tempcnta by 1
+          \edef\Hy@level{\the\@tempcnta}%
+        \fi
+      \else
+        \global\let\Hy@levelcheck Y%
+      \fi
+      \global\let\Hy@currentbookmarklevel\Hy@level
+      \@tempcnta\Hy@level\relax
+      \expandafter\xdef\csname Parent\Hy@level\endcsname{#3}%
+      \advance\@tempcnta by -1
+      \edef\Hy@tempa{#3}%
+      \edef\Hy@tempb{\csname Parent\the\@tempcnta\endcsname}%
+      \ifx\Hy@tempa\Hy@tempb
+        \Hy@Warning{%
+          The anchor of a bookmark and its parent's must not%
+          \MessageBreak be the same. Added a new anchor%
+        }%
+        \phantomsection
+      \fi
+      \ifHy@bookmarksnumbered
+        \let\numberline\Hy@numberline
+      \else
+        \let\numberline\@gobble
+      \fi
+      \pdfstringdef\Hy@tempa{#2}%
+      \protected@write\@outlinefile{}{%
+        \protect\BOOKMARK
+          [\Hy@level][\@bookmarkopenstatus{\Hy@level}]{#3}%
+          {\Hy@tempa}{\Hy@tempb}%
+      }%
+    \fi
+  \endgroup
+}
+\newcommand{\currentpdfbookmark}{%
+  \pdfbookmark[\Hy@currentbookmarklevel]%
+}
+\newcommand{\subpdfbookmark}{%
+  \@tempcnta\Hy@currentbookmarklevel
+  \Hy@StepCount\@tempcnta
+  \expandafter\pdfbookmark\expandafter[\the\@tempcnta]%
+}
+\newcommand{\belowpdfbookmark}[2]{%
+  \@tempcnta\Hy@currentbookmarklevel
+  \Hy@StepCount\@tempcnta
+  \expandafter\pdfbookmark\expandafter[\the\@tempcnta]{#1}{#2}%
+  \advance\@tempcnta by -1
+  \xdef\Hy@currentbookmarklevel{\the\@tempcnta}%
+}
+\renewcommand\pdfbookmark[3][0]{%
+  \Hy@writebookmark{}{#2}{#3.#1}{#1}{toc}%
+  \hyper@anchorstart{#3.#1}\hyper@anchorend
+}
+\def\BOOKMARK{\@ifnextchar[{\@BOOKMARK}{\@@BOOKMARK[1][-]}}
+\def\@BOOKMARK[#1]{\@ifnextchar[{\@@BOOKMARK[#1]}{\@@BOOKMARK[#1][-]}}
+\newcount\@serial@counter\@serial@counter=1\relax
+\begingroup
+  \catcode`\'=12
+  \ifnum\Hy@VTeXversion<650 %
+    \catcode`\"=12
+    \gdef\hv@pdf@char#1#2#3{%
+      \char
+      \ifcase'#1#2#3
+         "00\or"01\or"02\or"03\or"04\or"05\or"06\or"07%
+      \or"08\or"09\or"0A\or"0B\or"0C\or"0D\or"0E\or"0F%
+      \or"10\or"11\or"12\or"13\or"14\or"15\or"16\or"17%
+      \or"18\or"19\or"1A\or"1B\or"1C\or"1D\or"1E\or"1F%
+      \or"20\or"21\or"22\or"23\or"24\or"25\or"26\or"27%
+      \or"28\or"29\or"2A\or"2B\or"2C\or"2D\or"2E\or"2F%
+      \or"30\or"31\or"32\or"33\or"34\or"35\or"36\or"37%
+      \or"38\or"39\or"3A\or"3B\or"3C\or"3D\or"3E\or"3F%
+      \or"40\or"41\or"42\or"43\or"44\or"45\or"46\or"47%
+      \or"48\or"49\or"4A\or"4B\or"4C\or"4D\or"4E\or"4F%
+      \or"50\or"51\or"52\or"53\or"54\or"55\or"56\or"57%
+      \or"58\or"59\or"5A\or"5B\or"5C\or"5D\or"5E\or"5F%
+      \or"60\or"61\or"62\or"63\or"64\or"65\or"66\or"67%
+      \or"68\or"69\or"6A\or"6B\or"6C\or"6D\or"6E\or"6F%
+      \or"70\or"71\or"72\or"73\or"74\or"75\or"76\or"77%
+      \or"78\or"79\or"7A\or"7B\or"7C\or"7D\or"7E\or"7F%
+      \or"80\or"81\or"82\or"83\or"84\or"85\or"86\or"87%
+      \or"88\or"89\or"8A\or"8B\or"8C\or"8D\or"8E\or"8F%
+      \or"90\or"91\or"92\or"93\or"94\or"95\or"96\or"97%
+      \or"98\or"99\or"9A\or"9B\or"9C\or"9D\or"9E\or"9F%
+      \or"A0\or"A1\or"A2\or"A3\or"A4\or"A5\or"A6\or"A7%
+      \or"A8\or"A9\or"AA\or"AB\or"AC\or"AD\or"AE\or"AF%
+      \or"B0\or"B1\or"B2\or"B3\or"B4\or"B5\or"B6\or"B7%
+      \or"B8\or"B9\or"BA\or"BB\or"BC\or"BD\or"BE\or"BF%
+      \or"C0\or"C1\or"C2\or"C3\or"C4\or"C5\or"C6\or"C7%
+      \or"C8\or"C9\or"CA\or"CB\or"CC\or"CD\or"CE\or"CF%
+      \or"D0\or"D1\or"D2\or"D3\or"D4\or"D5\or"D6\or"D7%
+      \or"D8\or"D9\or"DA\or"DB\or"DC\or"DD\or"DE\or"DF%
+      \or"E0\or"E1\or"E2\or"E3\or"E4\or"E5\or"E6\or"E7%
+      \or"E8\or"E9\or"EA\or"EB\or"EC\or"ED\or"EE\or"EF%
+      \or"F0\or"F1\or"F2\or"F3\or"F4\or"F5\or"F6\or"F7%
+      \or"F8\or"F9\or"FA\or"FB\or"FC\or"FD\or"FE\or"FF%
+      \fi
+    }
+  \else
+    \gdef\hv@pdf@char{\char'}
+  \fi
+\endgroup
+\def\@@BOOKMARK[#1][#2]#3#4#5{%
+  \expandafter\edef\csname @count@#3\endcsname{\the\@serial@counter}%
+  \edef\@mycount{\the\@serial@counter}%
+  \Hy@StepCount\@serial@counter
+  \edef\@parcount{%
+    \expandafter\ifx\csname @count@#5\endcsname\relax
+      0%
+    \else
+      \csname @count@#5\endcsname
+    \fi
+  }%
+  \immediate\special{!outline #3;p=\@parcount,i=\@mycount,s=\ifx#2-c\else
+o\fi,t=#4}%
+}%
+\def\ReadBookmarks{%
+  \begingroup
+    \def\0{\hv@pdf@char 0}%
+    \def\1{\hv@pdf@char 1}%
+    \def\2{\hv@pdf@char 2}%
+    \def\3{\hv@pdf@char 3}%
+    \def\({(}%
+    \def\){)}%
+    \InputIfFileExists{\jobname.out}{}{}%
+  \endgroup
+  \ifx\WriteBookmarks\relax
+  \else
+    \if@filesw
+      \immediate\openout\@outlinefile=\jobname.out
+      \ifHy@typexml
+        \immediate\write\@outlinefile{<relaxxml>\relax}%
+      \fi
+    \fi
+  \fi
+}
+\ifHy@implicit
+\else
+  \def\@begindvi{%
+    \unvbox\@begindvibox
+    \HyPL@EveryPage
+    \global\let\@begindvi\HyPL@EveryPage
+  }%
+  \expandafter\endinput
+\fi
+\let\H@old@ssect\@ssect
+\def\@ssect#1#2#3#4#5{%
+  \H@old@ssect{#1}{#2}{#3}{#4}{#5}%
+  \phantomsection
+}
+\let\H@old@schapter\@schapter
+\def\@schapter#1{%
+  \H@old@schapter{#1}%
+  \begingroup
+    \let\@mkboth\@gobbletwo
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \endgroup
+}
+\@ifundefined{@chapter}{}{%
+  \let\Hy@org@chapter\@chapter
+  \def\@chapter{%
+    \def\Hy@next{%
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+      \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    }%
+    \ifnum\c@secnumdepth>\m@ne
+      \@ifundefined{if@mainmatter}%
+      \iftrue{\csname if@mainmatter\endcsname}
+        \let\Hy@next\relax
+      \fi
+    \fi
+    \Hy@next
+    \Hy@org@chapter
+  }%
+}
+\let\H@old@spart\@spart
+\def\@spart#1{%
+  \H@old@spart{#1}%
+  \Hy@GlobalStepCount\Hy@linkcounter
+  \xdef\@currentHref{part*.\the\Hy@linkcounter}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\let\H@old@sect\@sect
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+  \ifnum #2>\c@secnumdepth
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{section*.\the\Hy@linkcounter}%
+  \fi
+  \H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}%
+  \ifnum #2>\c@secnumdepth
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \fi
+}
+\expandafter\def\csname Parent-4\endcsname{}
+\expandafter\def\csname Parent-3\endcsname{}
+\expandafter\def\csname Parent-2\endcsname{}
+\expandafter\def\csname Parent-1\endcsname{}
+\expandafter\def\csname Parent0\endcsname{}
+\expandafter\def\csname Parent1\endcsname{}
+\expandafter\def\csname Parent2\endcsname{}
+\expandafter\def\csname Parent3\endcsname{}
+\expandafter\def\csname Parent4\endcsname{}
+\def\Hy@tempa{%
+  \def\@addchap[##1]##2{%
+    \typeout{##2}%
+    \if@twoside
+      \@mkboth{##1}{}%
+    \else
+      \@mkboth{}{##1}%
+    \fi
+    \addtocontents{lof}{\protect\addvspace{10\p@}}%
+    \addtocontents{lot}{\protect\addvspace{10\p@}}%
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    \if@twocolumn
+       \@topnewpage[\@makeschapterhead{##2}]%
+    \else
+       \@makeschapterhead{##2}%
+       \@afterheading
+    \fi
+    \addcontentsline{toc}{chapter}{##1}%
+  }%
+}
+\@ifclassloaded{scrbook}{%
+  \@ifclasslater{scrbook}{2001/01/01}{%
+    \let\Hy@tempa\@empty
+  }{}%
+}{%
+  \@ifclassloaded{scrreprt}{%
+    \@ifclasslater{scrreprt}{2001/01/01}{%
+      \let\Hy@tempa\@empty
+    }{}%
+  }{%
+    \let\Hy@tempa\@empty
+  }%
+}%
+\Hy@tempa
+\endinput
+%%
+%% End of file `hvtex.def'.
diff --git a/styles/hvtexhtm.def b/styles/hvtexhtm.def
new file mode 100644 (file)
index 0000000..4ba09fb
--- /dev/null
@@ -0,0 +1,126 @@
+%%
+%% This is file `hvtexhtm.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `vtexhtml')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hvtexhtml.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for VTeX in HTML mode]
+\RequirePackage{vtexhtml}
+\newif\if@Localurl
+\def\PDF@FinishDoc{}
+\def\PDF@SetupDoc{%
+  \ifx\@baseurl\@empty\else
+    \special{!direct <base href="\@baseurl">}%
+  \fi
+}
+\def\@urltype{url}
+\def\hyper@link#1#2#3{%
+  \leavevmode
+  \special{!direct <a href=\hyper@quote\hyper@hash#2\hyper@quote>}%
+  #3%
+  \special{!direct </a>}%
+}
+\def\hyper@linkurl#1#2{%
+  \begingroup
+    \hyper@chars
+    \leavevmode
+    \MathBSuppress=1\relax
+    \special{!direct <a href=\hyper@quote#2\hyper@quote>}%
+    #1%
+    \MathBSuppress=0\relax
+    \special{!direct </a>}%
+  \endgroup
+}
+\def\hyper@linkfile#1#2#3{%
+  \hyper@linkurl{#1}{file:#2\ifx\\#3\\\else\##3\fi}%
+}
+\def\hyper@linkstart#1#2{%
+  \def\Hy@tempa{#1}\ifx\Hy@tempa\@urltype
+    \@Localurltrue
+    \special{!direct <a href=\hyper@quote#2\hyper@quote>}%
+  \else
+    \@Localurlfalse
+    \begingroup
+      \hyper@chars
+      \special{!aref #2}%
+    \endgroup
+  \fi
+}
+\def\hyper@linkend{%
+  \if@Localurl
+    \special{!endaref}%
+  \else
+    \special{!direct </a>}%
+  \fi
+}
+\def\hyper@anchorstart#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \hyper@chars
+    \special{!aname #1}%
+    \special{!direct <a name=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+  \special{!direct </a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@anchor#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \let\protect=\string
+    \hyper@chars
+    \leavevmode
+    \special{!aname #1}%
+    \special{!direct <a name=\hyper@quote #1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+  \bgroup\anchor@spot\egroup
+  \special{!direct </a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\@Form[#1]{\typeout{Sorry, TeXpider does not yet support FORMs}}
+\def\@endForm{}
+\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
+  \typeout{Sorry, TeXpider does not yet support FORM gauges}%
+}
+\def\@TextField[#1]#2{% parameters, label
+  \typeout{Sorry, TeXpider does not yet support FORM text fields}%
+  }
+\def\@CheckBox[#1]#2{% parameters, label
+  \typeout{Sorry, TeXpider does not yet support FORM checkboxes}%
+  }
+\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
+  \typeout{Sorry, TeXpider does not yet support FORM choice menus}%
+}
+\def\@PushButton[#1]#2{% parameters, label
+  \typeout{Sorry, TeXpider does not yet support FORM pushbuttons}%
+}
+\def\@Reset[#1]#2{\typeout{Sorry, TeXpider does not yet support FORMs}}
+\def\@Submit[#1]#2{\typeout{Sorry, TeXpider does not yet support FORMs}}
+\endinput
+%%
+%% End of file `hvtexhtm.def'.
diff --git a/styles/hvtexmrk.def b/styles/hvtexmrk.def
new file mode 100644 (file)
index 0000000..8e9f69e
--- /dev/null
@@ -0,0 +1,82 @@
+%%
+%% This is file `hvtexmrk.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `vtexpdfmark')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hvtexmrk.def}
+  [2001/05/26 v6.71g
+ Hyperref driver for VTeX in PDF/PS mode (pdfmark specials)]
+\input{pdfmark.def}%
+\ifnum\OpMode=\@ne
+  \def\@pdfproducer{VTeX}
+\else
+  \def\@pdfproducer{VTeX + Distiller}
+\fi
+\def\literalps@out#1{\special{pS:#1}}%
+\def\headerps@out#1{\immediate\special{pS:#1}}%
+\providecommand\@pdfborder{0 0 12}
+\providecommand\@pdfview{XYZ}
+\providecommand\@pdfviewparams{ H.V}
+\AtBeginDvi{%
+  \headerps@out{%
+    /vsize {\Hy@pageheight} def
+    /HyperBorder {1} def
+    /H.V {pdf@hoff pdf@voff null} def
+    /H.B {/Rect[pdf@llx pdf@lly pdf@urx pdf@ury]} def
+    /H.S {
+      currentpoint
+      HyperBorder sub
+      /pdf@lly exch def
+      dup 72 add /pdf@hoff exch def
+      HyperBorder sub
+      /pdf@llx exch def
+    } def
+    /H.L {
+      2 sub
+      /HyperBasePt exch def
+      currentpoint
+      HyperBasePt add HyperBorder add
+      /pdf@ury exch def
+      HyperBorder add
+      /pdf@urx exch def
+    } def
+    /H.A {
+      H.L
+      currentpoint exch pop
+      vsize 72 sub exch
+      HyperBasePt add add
+      /pdf@voff exch def
+    } def
+    /H.R {
+      currentpoint
+      HyperBorder add
+      /pdf@ury exch def
+      HyperBorder add
+      /pdf@urx exch def
+      currentpoint exch pop vsize 72 sub add
+      /pdf@voff exch def
+    } def
+  }%
+}
+\endinput
+%%
+%% End of file `hvtexmrk.def'.
diff --git a/styles/hyperref.sty b/styles/hyperref.sty
new file mode 100644 (file)
index 0000000..cd23e4f
--- /dev/null
@@ -0,0 +1,3770 @@
+%%
+%% This is file `hyperref.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `package')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{hyperref}
+  [2001/05/26 v6.71g
+  Hypertext links for LaTeX]
+\begingroup
+  \@makeother\`%
+  \@makeother\=%
+  \edef\x{%
+    \edef\noexpand\x{%
+      \endgroup
+      \noexpand\toks@{%
+        \catcode 96=\noexpand\the\catcode`\noexpand\`\relax
+        \catcode 61=\noexpand\the\catcode`\noexpand\=\relax
+      }%
+    }%
+    \noexpand\x
+  }%
+\x
+\@makeother\`
+\@makeother\=
+\def\Hy@SetCatcodes{%
+  \@makeother\`%
+  \@makeother\=%
+  \catcode`\$=3
+  \catcode`\&=4
+  \catcode`\^=7
+  \catcode`\_=8
+  \@makeother\|%
+  \@makeother\:%
+  \@makeother\(%
+  \@makeother\)%
+  \@makeother\[%
+  \@makeother\]%
+  \@makeother\/%
+  \@makeother\!%
+  \@makeother\<%
+  \@makeother\>%
+  \@makeother\.%
+  \@makeother\;%
+  \@makeother\+%
+  \@makeother\-%
+  \@makeother\"%
+  \@makeother\'%
+}
+\begingroup
+  \def\x#1{\catcode`\noexpand#1=\the\catcode`#1\relax}%
+  \xdef\Hy@RestoreCatcodes{%
+    \the\toks@
+    \x\$%
+    \x\&%
+    \x\^%
+    \x\_%
+    \x\|%
+    \x\:%
+    \x\(%
+    \x\)%
+    \x\[%
+    \x\]%
+    \x\/%
+    \x\!%
+    \x\<%
+    \x\>%
+    \x\.%
+    \x\;%
+    \x\+%
+    \x\-%
+    \x\"%
+    \x\'%
+  }%
+\endgroup
+\Hy@SetCatcodes
+\RequirePackage{keyval}[1997/11/10]
+\def\Hy@Warning#1{\PackageWarning{hyperref}{#1}}
+\def\Hy@WarningNoLine#1{\PackageWarningNoLine{hyperref}{#1}}
+\def\Hy@Info#1{\PackageInfo{hyperref}{#1}}
+\@ifundefined{AfterBeginDocument}{%
+ \let\AfterBeginDocument\AtBeginDocument
+ }{}%
+\newif\ifHy@typexml
+\newif\ifHy@activeanchor
+\newif\ifHy@backref
+\newif\ifHy@bookmarks
+\newif\ifHy@bookmarksnumbered
+\newif\ifHy@bookmarksopen
+\newif\ifHy@breaklinks
+\newif\ifHy@centerwindow
+\newif\ifHy@CJKbookmarks
+\newif\ifHy@colorlinks
+\newif\ifHy@draft
+\newif\ifHy@figures
+\newif\ifHy@fitwindow
+\newif\ifHy@frenchlinks
+\newif\ifHy@hyperfootnotes
+\newif\ifHy@hyperindex
+\newif\ifHy@hypertexnames
+\newif\ifHy@implicit
+\newif\ifHy@linktocpage
+\newif\ifHy@menubar
+\newif\ifHy@naturalnames
+\newif\ifHy@nesting
+\newif\ifHy@newwindow
+\newif\ifHy@pageanchor
+\newif\ifHy@pagelabels
+\newif\ifHy@pdfpagehidden
+\newif\ifHy@pdfstring
+\newif\ifHy@plainpages
+\newif\ifHy@psize
+\newif\ifHy@raiselinks
+\newif\ifHy@seminarslides
+\newif\ifHy@texht
+\newif\ifHy@toolbar
+\newif\ifHy@unicode
+\newif\ifHy@verbose
+\newif\ifHy@windowui
+\Hy@backreffalse
+\Hy@bookmarksnumberedfalse
+\Hy@bookmarksopenfalse
+\Hy@bookmarkstrue
+\Hy@breaklinksfalse
+\Hy@centerwindowfalse
+\Hy@CJKbookmarksfalse
+\Hy@figuresfalse
+\Hy@fitwindowfalse
+\Hy@hyperfootnotestrue
+\Hy@hyperindextrue
+\Hy@hypertexnamestrue
+\Hy@implicittrue
+\Hy@linktocpagefalse
+\Hy@menubartrue
+\Hy@naturalnamesfalse
+\Hy@nestingfalse
+\Hy@newwindowfalse
+\Hy@pageanchortrue
+\Hy@pagelabelsfalse
+\Hy@pdfpagehiddenfalse
+\Hy@pdfstringfalse
+\Hy@plainpagestrue
+\Hy@raiselinksfalse
+\Hy@texhtfalse
+\Hy@toolbartrue
+\Hy@typexmlfalse
+\Hy@unicodefalse
+\Hy@verbosefalse
+\Hy@windowuitrue
+\def\Hy@StepCount#1{\advance#1 by 1 }%
+\def\Hy@GlobalStepCount#1{\global\advance#1 by 1 }%
+\newdimen\@linkdim
+\let\Hy@driver\@empty
+\let\MaybeStopEarly\relax
+\newcount\Hy@linkcounter
+\newcount\Hy@pagecounter
+\Hy@linkcounter0
+\Hy@pagecounter0
+\long\def\Hy@ReturnAfterElseFi#1\else#2\fi{\fi#1}
+\long\def\Hy@ReturnAfterFi#1\fi{\fi#1}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname dimexpr\endcsname\relax
+  \def\hypercalcbpdef#1#2{%
+    \begingroup
+      \toks@{}%
+      \HyCal@scan#2\hypercalcbp\@nil
+    \expandafter\endgroup
+    \expandafter\def\expandafter#1\expandafter{\the\toks@}%
+  }
+  \def\HyCal@scan#1\hypercalcbp#2\@nil{%
+    \toks@\expandafter{\the\toks@ #1}%
+    \ifx\\#2\\%
+    \else
+      \Hy@ReturnAfterFi{%
+        \HyCal@do#2\@nil
+      }%
+    \fi
+  }
+  \def\HyCal@do#1#2\@nil{%
+    \setlength{\dimen@}{#1}%
+    \setlength{\dimen@}{0.99626401\dimen@}%
+    \edef\x{%
+      \toks@{%
+        \the\toks@
+        \strip@pt\dimen@
+      }%
+    }\x
+    \HyCal@scan#2\@nil
+  }
+\else
+  \def\hypercalcbp#1{%
+    \strip@pt\dimexpr 0.99626401\dimexpr #1\relax\relax
+  }
+  \def\hypercalcbpdef{\def}
+\fi
+\def\pdfstringdef#1#2{%
+  \begingroup
+    \escapechar`\\%
+    \edef\0{\string\0}%
+    \edef\1{\string\1}%
+    \edef\2{\string\2}%
+    \edef\3{\string\3}%
+    \ifHy@unicode
+      \edef\8{\string\8}%
+      \edef\9{\string\9}%
+      \fontencoding{PU}%
+    \else
+      \fontencoding{PD1}%
+    \fi
+    \enc@update
+    \@inmathwarn\pdfstringdef
+    \let\@inmathwarn\HyPsd@inmathwarn
+    \let\add@accent\HyPsd@add@accent
+    \let\{\textbraceleft
+    \let\}\textbraceright
+    \let\\\textbackslash
+    \let\#\textnumbersign
+    \let\$\textdollar
+    \let\%\textpercent
+    \let\&\textampersand
+    \let\_\textunderscore
+    \let\P\textparagraph
+    \let\ldots\textellipsis
+    \let\dots\textellipsis
+    \def\\{\pdfstringdefWarn\\}%
+    \def\newline{\pdfstringdefWarn\newline}%
+    \def\TeX{TeX}%
+    \def\LaTeX{La\TeX}%
+    \def\LaTeXe{\LaTeX2e}%
+    \def\eTeX{e-\TeX}%
+    \def\MF{Metafont}%
+    \def\MP{Metapost}%
+    \let\emph\@firstofone
+    \let\textbf\@firstofone
+    \let\textit\@firstofone
+    \let\textmd\@firstofone
+    \let\textnormal\@firstofone
+    \let\textrm\@firstofone
+    \let\textsc\@firstofone
+    \let\textsf\@firstofone
+    \let\textsl\@firstofone
+    \let\texttt\@firstofone
+    \let\textup\@firstofone
+    \let\ttfamily\@empty
+    \let\sffamily\@empty
+    \let\itshape\@empty
+    \let\upshape\@empty
+    \let\bfseries\@empty
+    \let\rm\@empty
+    \let\Huge\@empty
+    \let\LARGE\@empty
+    \let\Large\@empty
+    \let\footnotesize\@empty
+    \let\huge\@empty
+    \let\large\@empty
+    \let\normalsize\@empty
+    \let\scriptsize\@empty
+    \let\small\@empty
+    \let\tiny\@empty
+    \let\textlatin\@firstofone
+    \@ifundefined{language@group}{}{%
+      \csname HyPsd@babel@\language@group\endcsname
+    }%
+    \let\glqq\textglqq
+    \let\grqq\textgrqq
+    \let\glq\textglq
+    \let\grq\textgrq
+    \let\flqq\textflqq
+    \let\frqq\textfrqq
+    \let\flq\textflq
+    \let\frq\textfrq
+    \HyPSD@AMSclassfix
+    \let\hspace\HyPsd@hspace
+    \let\label\@gobble
+    \let\index\@gobble
+    \let\glossary\@gobble
+    \let\href\@secondoftwo
+    \let\ref\HyPsd@ref
+    \let\pageref\HyPsd@pageref
+    \let\leavevmode\@empty
+    \def\halign{\pdfstringdefWarn\halign\@gobble}%
+    \ifHy@CJKbookmarks
+      \HyPsd@CJKhook
+    \fi
+    \Hy@pdfstringtrue
+    \pdfstringdefPreHook
+    \HyPsd@LetUnexpandableSpace\space
+    \HyPsd@LetUnexpandableSpace\ %
+    \HyPsd@LetUnexpandableSpace~%
+    \HyPsd@LetUnexpandableSpace\nobreakspace
+    \@ifundefined{@xspace}{%
+      \let\xspace\HyPsd@ITALCORR
+    }{%
+      \let\xspace\HyPsd@XSPACE
+    }%
+    \let\/\HyPsd@ITALCORR
+    \let\bgroup\/%
+    \let\egroup\/%
+    \let\discretionary\@gobbletwo
+    \let\@ifnextchar\HyPsd@ifnextchar
+    \let\@protected@testopt\HyPsd@protected@testopt
+    \begingroup
+      \let\GenericError\@gobblefour
+      \let\GenericWarning\@gobbletwo
+      \let\GenericInfo\@gobbletwo
+      \ifx\nofrenchguillemets\@undefined
+      \else
+        \nofrenchguillemets
+      \fi
+      \let\Hy@temp\xdef
+      \let\def\HyPsd@DefCommand
+      \let\gdef\HyPsd@DefCommand
+      \let\edef\HyPsd@DefCommand
+      \let\xdef\HyPsd@DefCommand
+      \let\futurelet\HyPsd@LetCommand
+      \let\let\HyPsd@LetCommand
+      \Hy@temp#1{#2}%
+    \endgroup
+    \ifx#1\@empty
+    \else
+      \HyPsd@ProtectSpaces#1%
+      \let\HyPsd@String\@empty
+      \expandafter\HyPsd@RemoveBraces\expandafter{#1|}%
+      \global\let#1\HyPsd@String
+      \let\HyPsd@SPACEOPTI\relax
+      {%
+         \let\HyPsd@String\@empty
+         \expandafter\HyPsd@CheckCatcodes#1\HyPsd@End
+         \global\let#1\HyPsd@String
+      }%
+      \expandafter\HyPsd@RemoveMask\expandafter
+        |\expandafter\@empty#1\HyPsd@End#1%
+      \expandafter\HyPsd@Subst\expandafter{\HyPsd@GLYPHERR}{\relax}#1%
+      \let\HyPsd@String\@empty
+      \expandafter\HyPsd@GlyphProcess#1\relax\@empty
+      \global\let#1\HyPsd@String
+      \HyPsd@StringSubst{\\}{\textbackslash}#1%
+      \ifHy@unicode
+        \expandafter\HyPsd@StringSubst\csname 80\040\endcsname
+          \HyPsd@SPACEOPTI#1%
+        \edef\Hy@temp@A{\HyPsd@SPACEOPTI\HyPsd@SPACEOPTI\80\273}%
+        \expandafter\HyPsd@Subst\expandafter{\Hy@temp@A}%
+          {\HyPsd@SPACEOPTI\80\273}#1%
+      \else
+        \HyPsd@StringSubst{\040}\HyPsd@SPACEOPTI#1%
+        \expandafter\HyPsd@Subst\expandafter{%
+          \expandafter\HyPsd@SPACEOPTI\expandafter\HyPsd@SPACEOPTI
+          \string\273}{\HyPsd@SPACEOPTI\273}#1%
+      \fi
+      \ifHy@unicode
+        \HyPsd@StringSubst{\)}{\80\051}#1%
+        \HyPsd@Subst){\80\051}#1%
+        \let\HyPsd@empty\relax
+        \expandafter\HyPsd@StringSubst\csname 80\051\endcsname
+          {\HyPsd@empty\80\051}#1%
+      \else
+        \HyPsd@StringSubst{\)}{\051}#1%
+        \HyPsd@Subst){\051}#1%
+        \let\HyPsd@empty\relax
+        \HyPsd@StringSubst{\051}{\HyPsd@empty\string\)}#1%
+      \fi
+      \expandafter\HyPsd@Subst\expandafter{\/}\HyPsd@empty#1%
+      \@ifundefined{@xspace}{%
+      }{%
+        \let\HyPsd@xspace\relax
+        \expandafter\HyPsd@Subst\expandafter
+          {\HyPsd@XSPACE}\HyPsd@xspace#1%
+        \let\HyPsd@xspace\HyPsd@doxspace
+      }%
+      \xdef#1{#1\HyPsd@empty}%
+      \HyPsd@Subst{!`}\textexclamdown#1%
+      \HyPsd@Subst{?`}\textquestiondown#1%
+      \let\HyPsd@empty\@empty
+      \ifHy@unicode
+        \HyPsd@StringSubst\(\textparenleft#1%
+        \HyPsd@Subst(\textparenleft#1%
+      \else
+        \HyPsd@StringSubst\({\050}#1%
+        \HyPsd@Subst({\050}#1%
+        \HyPsd@StringSubst{\050}{\string\(}#1%
+      \fi
+      \ifHy@unicode
+        \edef\HyPsd@SPACEOPTI{\80\040}%
+      \else
+        \let\HyPsd@SPACEOPTI\HyPsd@spaceopti
+      \fi
+      \xdef#1{#1\@empty}%
+    \fi
+    \ifHy@unicode
+      \HyPsd@ConvertToUnicode#1%
+    \fi
+    \pdfstringdefPostHook#1%
+  \endgroup
+}
+\@ifundefined{T@PD1}{\input{pd1enc.def}}{}
+\DeclareFontFamily{PD1}{pdf}{}
+\DeclareFontShape{PD1}{pdf}{m}{n}{ <-> cmr10 }{}
+\DeclareFontSubstitution{PD1}{pdf}{m}{n}
+\def\HyPsd@InitUnicode{%
+  \@ifundefined{T@PU}{\input{puenc.def}}{}%
+  \DeclareFontFamily{PU}{pdf}{}%
+  \DeclareFontShape{PU}{pdf}{m}{n}{ <-> cmr10 }{}%
+  \DeclareFontSubstitution{PU}{pdf}{m}{n}%
+  \let\HyPsd@InitUnicode\relax
+}
+\newcommand*{\texorpdfstring}{%
+   \ifHy@pdfstring
+     \expandafter\@secondoftwo
+   \else
+     \expandafter\@firstoftwo
+   \fi
+}
+\@ifundefined{pdfstringdefPreHook}{%
+  \let\pdfstringdefPreHook\@empty
+}{}
+\@ifundefined{pdfstringdefPostHook}{%
+  \let\pdfstringdefPostHook\@gobble
+}{}
+\def\pdfstringdefDisableCommands{%
+  \begingroup
+    \makeatletter
+    \HyPsd@DisableCommands
+}
+\long\def\HyPsd@DisableCommands#1{%
+    \toks0=\expandafter{\pdfstringdefPreHook}%
+    \toks1={#1}%
+    \xdef\pdfstringdefPreHook{\the\toks0 \the\toks1}%
+  \endgroup
+}
+\def\pdfstringdefWarn#1{%
+   \expandafter\noexpand\csname<>-\string#1\endcsname
+}
+\newif\ifHy@next
+\@ifpackagewith{babel}{danish}{%
+  \def\HyPsd@babel@danish{%
+    \declare@shorthand{danish}{"|}{}%
+    \declare@shorthand{danish}{"~}{-}%
+  }%
+}{}
+\@ifpackagewith{babel}{dutch}{%
+  \def\HyPsd@babel@dutch{%
+    \declare@shorthand{dutch}{"|}{}%
+    \declare@shorthand{dutch}{"~}{-}%
+  }%
+}{}
+\@ifpackagewith{babel}{finnish}{%
+  \def\HyPsd@babel@finnish{%
+    \declare@shorthand{finnish}{"|}{}%
+  }%
+}{}
+\Hy@nextfalse
+\@ifpackagewith{babel}{frenchb}{\Hy@nexttrue}{}
+\@ifpackagewith{babel}{francais}{\Hy@nexttrue}{}
+\ifHy@next
+  \def\HyPsd@babel@frenchb{%
+    \def\guill@spacing{ }%
+  }%
+\fi
+\Hy@nextfalse
+\@ifpackagewith{babel}{german}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{germanb}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{austrian}{\Hy@nexttrue}{}%
+\ifHy@next
+  \def\HyPsd@babel@german{%
+    \declare@shorthand{german}{"f}{f}%
+    \declare@shorthand{german}{"|}{}%
+    \declare@shorthand{german}{"~}{-}%
+  }%
+\fi
+\Hy@nextfalse
+\@ifpackagewith{babel}{ngerman}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{ngermanb}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{naustrian}{\Hy@nexttrue}{}%
+\ifHy@next
+  \def\HyPsd@babel@ngerman{%
+    \declare@shorthand{german}{"|}{}%
+    \declare@shorthand{german}{"~}{-}%
+  }%
+\fi
+\Hy@nextfalse
+\@ifpackagewith{babel}{usorbian}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{uppersorbian}{\Hy@nexttrue}{}%
+\ifHy@next
+  \def\HyPsd@babel@usorbian{%
+    \declare@shorthand{usorbian}{"f}{f}%
+    \declare@shorthand{usorbian}{"|}{}%
+  }%
+\fi
+\Hy@nextfalse
+\@ifpackagewith{babel}{brazil}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{brazilian}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{portuges}{\Hy@nexttrue}{}%
+\@ifpackagewith{babel}{portuguese}{\Hy@nexttrue}{}%
+\ifHy@next
+  \def\HyPsd@babel@portuges{%
+    \declare@shorthand{portuges}{"|}{}%
+  }%
+\fi
+\Hy@nextfalse
+\@ifpackagewith{babel}{russian}{\Hy@nexttrue}{}
+\@ifpackagewith{babel}{russianb}{\Hy@nexttrue}{}
+\ifHy@next
+  \def\HyPsd@babel@russian{%
+    \declare@shorthand{russian}{"|}{}%
+    \declare@shorthand{russian}{"~}{-}%
+  }%
+\fi
+\Hy@nextfalse
+\@ifpackagewith{babel}{ukrainian}{\Hy@nexttrue}{}
+\@ifpackagewith{babel}{ukraineb}{\Hy@nexttrue}{}
+\ifHy@next
+  \def\HyPsd@babel@ukrainian{%
+    \declare@shorthand{ukrainian}{"|}{}%
+    \declare@shorthand{ukrainian}{"~}{-}%
+  }%
+\fi
+\@ifpackagewith{babel}{slovene}{%
+  \def\HyPsd@babel@slovene{%
+    \declare@shorthand{slovene}{"|}{}%
+  }%
+}{}
+\@ifpackagewith{babel}{swedish}{%
+  \def\HyPsd@babel@swedish{%
+    \declare@shorthand{swedish}{"|}{}%
+    \declare@shorthand{swedish}{"~}{-}%
+  }%
+}{}
+\begingroup
+  \toks@{%
+    \let\CJK@ignorespaces\empty
+    \def\CJK@char#1{\@gobbletwo}%
+    \let\CJK@charx\@gobblefour
+    \let\CJK@punctchar\@gobblefour
+    \def\CJK@punktcharx#1{\@gobblefour}%
+    % ... ?
+    \ifHy@unicode
+      \def\Hy@cjkpu{\80}%
+    \else
+      \let\Hy@cjkpu\@empty
+    \fi
+    \HyPsd@CJKActiveChars
+  }%
+  \count@=127
+  \@whilenum\count@<255 \do{%
+    \advance\count@ by 1
+    \lccode`\~=\count@
+    \lowercase{%
+      \toks@\expandafter{\the\toks@ ~}%
+    }%
+  }%
+  \toks@\expandafter{\the\toks@ !}%
+  \xdef\HyPsd@CJKhook{\the\toks@}%
+\endgroup
+\def\HyPsd@CJKActiveChars#1{%
+  \ifx#1!%
+    \let\HyPsd@CJKActiveChars\relax
+  \else
+    \edef#1{\noexpand\Hy@cjkpu\string#1}%
+  \fi
+  \HyPsd@CJKActiveChars
+}
+\def\HyPsd@inmathwarn#1#2{%
+  \ifx#2\expandafter
+    \expandafter\ifx\csname\cf@encoding\string#1\endcsname\relax
+      \HyPsd@GLYPHERR
+      \expandafter\@gobble\string#1%
+      >%
+      \expandafter\expandafter\expandafter\HyPsd@EndWithElse
+    \else
+      \expandafter\expandafter\expandafter\HyPsd@GobbleFiFi
+    \fi
+  \else
+    \expandafter#2%
+  \fi
+}
+\def\HyPsd@GobbleFiFi#1\fi#2\fi{}
+\def\HyPsd@EndWithElse#1\else{\else}
+\def\HyPsd@add@accent#1#2{%
+  \HyPsd@GLYPHERR\expandafter\@gobble\string#1+\string#2>%
+  #2%
+}%
+\def\HyPsd@LetUnexpandableSpace#1{%
+  \expandafter\futurelet\expandafter#1\expandafter\@gobble\space\relax
+}
+\HyPsd@LetUnexpandableSpace\HyPsd@UnexpandableSpace
+\edef\HyPsd@XSPACE{\string#\string X}
+\edef\HyPsd@ITALCORR{\string#\string I}
+\edef\HyPsd@GLYPHERR{\string#\string G}
+\def\HyPsd@hspace#1{\HyPsd@@hspace#1*\END}
+\def\HyPsd@@hspace#1*#2\END{%
+  \ifx\\#2\\%
+    \HyPsd@hspacetest{#1}%
+  \else
+    \expandafter\HyPsd@hspacetest
+  \fi
+}
+\def\HyPsd@hspacetest#1{\ifdim#1>\z@\space\fi}
+\@ifundefined{tocsection}{%
+  \let\HyPSD@AMSclassfix\relax
+}{%
+  \def\HyPSD@AMSclassfix{%
+    \let\tocpart\HyPSD@tocsection
+    \let\tocchapter\HyPSD@tocsection
+    \let\tocappendix\HyPSD@tocsection
+    \let\tocsection\HyPSD@tocsection
+    \let\tocsubsection\HyPSD@tocsection
+    \let\tocsubsubsection\HyPSD@tocsection
+    \let\tocparagraph\HyPSD@tocsection
+  }%
+  \def\HyPSD@tocsection#1#2#3{%
+    \if @#2@\else\if @#1@\else#1 \fi#2. \fi
+    #3%
+  }%
+}
+\def\HyPsd@ref#1{\HyPsd@@ref#1*\END}%
+\def\HyPsd@@ref#1*#2\END{%
+  \ifx\\#2\\%
+    \HyPsd@@@ref{#1}%
+  \else
+    \expandafter\HyPsd@@@ref
+  \fi
+}%
+\def\HyPsd@@@ref#1{%
+  \expandafter\ifx\csname r@#1\endcsname\relax
+    ??%
+  \else
+    \expandafter\expandafter\expandafter\@car\csname r@#1\endcsname\@nil
+  \fi
+}
+\def\HyPsd@pageref#1{\HyPsd@@pageref#1*\END}
+\def\HyPsd@@pageref#1*#2\END{%
+  \ifx\\#2\\%
+    \HyPsd@@@pageref{#1}%
+  \else
+    \expandafter\HyPsd@@@pageref
+  \fi
+}
+\def\HyPsd@@@pageref#1{%
+  \expandafter\ifx\csname r@#1\endcsname\relax
+    ??%
+  \else
+    \expandafter\expandafter\expandafter\expandafter
+    \expandafter\expandafter\expandafter\@car
+    \expandafter\expandafter\expandafter\@gobble
+    \csname r@#1\endcsname\@nil
+  \fi
+}
+\begingroup
+  \def\x#1#2{%
+    \endgroup
+    \let#1\def
+    \def\HyPsd@DefCommand##1##2##{%
+      #1%
+      \expandafter\noexpand
+        \csname\expandafter\@gobble\string##1\@empty\endcsname
+      \@gobble
+    }%
+    \let#2\let
+    \def\HyPsd@LetCommand##1{%
+      #2%
+      \expandafter\noexpand
+        \csname\expandafter\@gobble\string##1\@empty\endcsname
+    }%
+  }%
+\expandafter\x\csname <def>-command\expandafter\endcsname
+              \csname <let>-command\endcsname
+\def\HyPsd@ifnextchar{%
+  \pdfstringdefWarn\@ifnextchar
+  \expandafter\@gobbletwo\@gobble
+}
+\def\HyPsd@protected@testopt#1{%
+  \pdfstringdefWarn#1%
+  \@gobbletwo
+}
+\def\HyPsd@Warning#1{%
+  \begingroup
+    \def\space{ }%
+    \Hy@Warning{#1}%
+  \endgroup
+}
+\def\HyPsd@ProtectSpaces#1{%
+  \expandafter\HyPsd@@ProtectSpaces
+    \expandafter|\expandafter\@empty#1| \HyPsd@End#1%
+}
+\def\HyPsd@@ProtectSpaces#1 #2\HyPsd@End#3{%
+  \ifx\scrollmode#2\scrollmode
+    \HyPsd@RemoveMask#1\HyPsd@End#3%
+  \else
+    \gdef#3{#1\HyPsd@UnexpandableSpace#2}%
+    \Hy@ReturnAfterFi{%
+      \expandafter\HyPsd@@ProtectSpaces#3\HyPsd@End#3%
+    }%
+  \fi
+}
+\def\HyPsd@RemoveMask|#1|\HyPsd@End#2{%
+  \toks@\expandafter{#1}%
+  \xdef#2{\the\toks@}%
+}
+\def\HyPsd@RemoveBraces#1{%
+  \ifx\scrollmode#1\scrollmode
+  \else
+    \Hy@ReturnAfterFi{%
+      \HyPsd@@RemoveBraces#1\HyPsd@End{#1}%
+    }%
+  \fi
+}
+\def\HyPsd@@RemoveBraces#1#2\HyPsd@End#3{%
+  \def\Hy@temp@A{#1#2}%
+  \def\Hy@temp@B{#3}%
+  \ifx\Hy@temp@A\Hy@temp@B
+    \expandafter\def\expandafter\HyPsd@String\expandafter{%
+      \HyPsd@String#1%
+    }%
+    \Hy@ReturnAfterElseFi{%
+      \ifx\scrollmode#2\scrollmode
+      \else
+        \Hy@ReturnAfterFi{%
+          \HyPsd@RemoveBraces{#2}%
+        }%
+      \fi
+    }%
+  \else
+    \def\Hy@temp@A{#1}%
+    \HyPsd@AppendItalcorr\HyPsd@String
+    \Hy@ReturnAfterFi{%
+      \ifx\Hy@temp@A\@empty
+        \Hy@ReturnAfterElseFi{%
+          \HyPsd@RemoveBraces{#2}%
+        }%
+      \else
+        \Hy@ReturnAfterFi{%
+          \HyPsd@ProtectSpaces\Hy@temp@A
+          \HyPsd@AppendItalcorr\Hy@temp@A
+          \expandafter\HyPsd@RemoveBraces\expandafter
+            {\Hy@temp@A#2}%
+        }%
+      \fi
+    }%
+  \fi
+}
+\def\HyPsd@AppendItalcorr#1{%
+  \expandafter\HyPsd@@AppendItalcorr\expandafter{\/}#1%
+}
+\def\HyPsd@@AppendItalcorr#1#2{%
+  \expandafter\def\expandafter#2\expandafter{#2#1}%
+}
+\def\HyPsd@CheckCatcodes#1#2\HyPsd@End{%
+  \global\let\HyPsd@Rest\relax
+  \ifcat\relax\noexpand#1\relax
+    \ifx#1\protect
+    \else
+      \ifx#1\penalty
+        \setbox\z@=\hbox{%
+          \afterassignment\HyPsd@AfterCountRemove
+          \count@=#2\HyPsd@End
+        }%
+      \else
+        \ifx#1\kern
+          \setbox\z@=\hbox{%
+            \afterassignment\HyPsd@AfterDimenRemove
+            \dimen@=#2\HyPsd@End
+          }%
+        \else
+          \ifx#1\hskip
+            \setbox\z@=\hbox{%
+              \afterassignment\HyPsd@AfterSkipRemove
+              \skip@=#2\HyPsd@End
+            }%
+          \else
+            \HyPsd@CatcodeWarning{#1}%
+          \fi
+        \fi
+      \fi
+    \fi
+  \else
+    \ifcat#1 %SPACE
+      \expandafter\def\expandafter\HyPsd@String\expandafter{%
+        \HyPsd@String\HyPsd@SPACEOPTI
+      }%
+    \else
+      \ifcat$#1%
+        \HyPsd@CatcodeWarning{math shift}%
+      \else
+        \ifcat&#1%
+          \HyPsd@CatcodeWarning{alignment tab}%
+        \else
+          \ifcat^#1%
+            \HyPsd@CatcodeWarning{superscript}%
+          \else
+            \ifcat_#1%
+              \HyPsd@CatcodeWarning{subscript}%
+            \else
+              \expandafter\def\expandafter\HyPsd@String\expandafter{%
+                \HyPsd@String#1%
+              }%
+            \fi
+          \fi
+        \fi
+      \fi
+    \fi
+  \fi
+  \ifx\HyPsd@Rest\relax
+    \Hy@ReturnAfterElseFi{%
+      \ifx\scrollmode#2\scrollmode
+      \else
+        \Hy@ReturnAfterFi{%
+          \HyPsd@CheckCatcodes#2\HyPsd@End
+        }%
+      \fi
+    }%
+  \else
+    \Hy@ReturnAfterFi{%
+      \ifx\HyPsd@Rest\@empty
+      \else
+        \expandafter\HyPsd@CheckCatcodes\HyPsd@Rest\HyPsd@End
+      \fi
+    }%
+  \fi
+}
+\def\HyPsd@AfterCountRemove#1\HyPsd@End{%
+  \gdef\HyPsd@Rest{#1}%
+}
+\def\HyPsd@AfterDimenRemove#1\HyPsd@End{%
+  \ifdim\ifx\HyPsd@String\@empty\z@\else\dimen@\fi>1ex
+    \HyPsd@ReplaceSpaceWarning{\string\kern\space\the\dimen@}%
+    \gdef\HyPsd@Rest{\HyPsd@UnexpandableSpace #1}%
+  \else
+    \ifdim\dimen@=\z@
+    \else
+      \HyPsd@RemoveSpaceWarning{\string\kern\space\the\dimen@}%
+    \fi
+    \gdef\HyPsd@Rest{#1}%
+  \fi
+}
+\def\HyPsd@AfterSkipRemove#1\HyPsd@End{%
+  \ifdim\ifx\HyPsd@String\@empty\z@\else\skip@\fi>1ex
+    \HyPsd@ReplaceSpaceWarning{\string\hskip\space\the\skip@}%
+    \gdef\HyPsd@Rest{\HyPsd@UnexpandableSpace #1}%
+  \else
+    \ifdim\skip@=\z@
+    \else
+      \HyPsd@RemoveSpaceWarning{\string\kern\space\the\skip@}%
+    \fi
+    \gdef\HyPsd@Rest{#1}%
+  \fi
+}
+\def\HyPsd@CatcodeWarning#1{%
+  \HyPsd@Warning{%
+    Token not allowed in a PDFDocEncoded string,%
+    \MessageBreak removing `\HyPsd@RemoveCmdPrefix#1'%
+  }%
+}
+\begingroup
+  \catcode`\|=0
+  \catcode`\\=12
+  |gdef|HyPsd@RemoveCmdPrefix#1{%
+    |expandafter|HyPsd@@RemoveCmdPrefix
+      |string#1|@empty\<>-|@empty|@empty
+  }%
+  |gdef|HyPsd@@RemoveCmdPrefix#1\<>-#2|@empty#3|@empty{#1#2}%
+|endgroup
+\def\HyPsd@RemoveSpaceWarning#1{%
+  \HyPsd@Warning{%
+    Token not allowed in a PDFDocEncoded string:%
+    \MessageBreak #1\MessageBreak
+    removed%
+  }%
+}
+\def\HyPsd@ReplaceSpaceWarning#1{%
+  \HyPsd@Warning{%
+    Token not allowed in a PDFDocEncoded string:%
+    \MessageBreak #1\MessageBreak
+    replaced by space%
+  }%
+}
+\def\HyPsd@GlyphProcess#1\relax#2\@empty{%
+  \expandafter\def\expandafter\HyPsd@String\expandafter{%
+    \HyPsd@String#1%
+  }%
+  \ifx\\#2\\%
+  \else
+    \Hy@ReturnAfterFi{%
+      \HyPsd@GlyphProcessWarning#2\@empty
+    }%
+  \fi
+}
+\def\HyPsd@GlyphProcessWarning#1>#2\@empty{%
+  \HyPsd@Warning{%
+    Glyph not defined in %
+    P\ifHy@unicode U\else D1\fi\space encoding,\MessageBreak
+    removing `\@backslashchar#1'%
+  }%
+  \HyPsd@GlyphProcess#2\@empty
+}
+\def\HyPsd@spaceopti#1{ % first space
+  \ifx\HyPsd@spaceopti#1%
+    \040%
+  \else
+    #1%
+  \fi
+}%
+\def\HyPsd@Subst#1#2#3{%
+  \def\HyPsd@@Replace##1#1##2\END{%
+    ##1%
+    \ifx\\##2\\%
+    \else
+      #2%
+      \Hy@ReturnAfterFi{%
+        \HyPsd@@Replace##2\END
+      }%
+    \fi
+  }%
+  \xdef#3{%
+    \expandafter\HyPsd@@Replace#3#1\END
+  }%
+}
+\def\HyPsd@StringSubst#1{%
+  \expandafter\HyPsd@Subst\expandafter{\string#1}%
+}
+\def\HyPsd@doxspace#1{%
+  \ifx#1\relax\else
+   \ifx#1.\else
+    \ifx#1:\else
+     \ifx#1,\else
+      \ifx#1;\else
+       \ifx#1!\else
+        \ifx#1?\else
+         \ifx#1/\else
+          \ifx#1-\else
+           \ifx#1'\else
+             \HyPsd@SPACEOPTI
+           \fi
+          \fi
+         \fi
+        \fi
+       \fi
+      \fi
+     \fi
+    \fi
+   \fi
+  \fi
+  #1%
+}%
+\begingroup
+  \catcode`\|=0
+  \catcode`\\=12
+  |gdef|HyPsd@ConvertToUnicode#1{%
+    |xdef#1{%
+      \376\377%
+      |expandafter|HyPsd@DoConvert#1|@empty|@empty|@empty
+    }%
+  }
+  |gdef|HyPsd@DoConvert#1{%
+    |ifx#1|@empty
+    |else
+      |Hy@ReturnAfterFi{%
+        |ifx#1\%
+          \%
+          |expandafter|HyPsd@DoEscape
+        |else
+          \000#1%
+          |expandafter|HyPsd@DoConvert
+        |fi
+      }%
+    |fi
+  }
+  |gdef|HyPsd@DoEscape#1{%
+    |ifx#19%
+      |expandafter|HyPsd@GetTwoBytes
+    |else
+      |Hy@ReturnAfterFi{%
+        |ifx#18%
+          00%
+          |expandafter|HyPsd@GetTwoBytes
+        |else
+          #1%
+          |expandafter|HyPsd@GetOneByte
+        |fi
+      }%
+    |fi
+  }
+  |gdef|HyPsd@GetTwoBytes#1\#2#3#4{%
+    #1\#2#3#4%
+    |HyPsd@DoConvert
+  }
+  |gdef|HyPsd@GetOneByte#1#2{%
+    #1#2%
+    |HyPsd@DoConvert
+  }
+|endgroup
+\def\HyPsd@GetNextTwoTokens#1#2#3\END#4{%
+  \xdef#4{#4#1#2}%
+  \HyPsd@@ConvertToUnicode#3\END#4%
+}
+\@ifpackageloaded{subfigure}{%
+  \Hy@hypertexnamesfalse
+}{}
+\@ifundefined{XR@addURL}{%
+}{%
+  \def\XR@addURL#1{\XR@@dURL#1{}{}{}{}\\}%
+  \def\XR@@dURL#1#2#3#4#5\\{%
+    {#1}{#2}%
+    \if!#4!%
+    \else
+      {#3}{#4}{\XR@URL}%
+    \fi
+  }%
+}
+\def\Hy@true{true}
+\def\Hy@false{false}
+\let\literalps@out\@gobble
+\newcommand\pdfbookmark[3][]{}
+\let\Acrobatmenu\@gobble
+\def\Hy@writebookmark#1#2#3#4#5{}%
+\let\HyperRaiseLinkLength\@tempdima
+\let\HyperRaiseLinkHook\@empty
+\def\HyperRaiseLinkDefault{\baselineskip}
+\def\Hy@raisedlink#1{%
+  \setlength\HyperRaiseLinkLength\HyperRaiseLinkDefault
+  \HyperRaiseLinkHook
+  \ifvmode
+    #1%
+  \else
+    \smash{\raise\HyperRaiseLinkLength\hbox{#1}}%
+  \fi
+}
+\def\Hy@SaveLastskip{%
+  \let\Hy@RestoreLastskip\relax
+  \ifvmode
+    \ifdim\lastskip=\z@
+      \let\Hy@RestoreLastskip\nobreak
+    \else
+      \begingroup
+        \skip@=-\lastskip
+        \edef\x{%
+          \endgroup
+          \def\noexpand\Hy@RestoreLastskip{%
+            \noexpand\ifvmode
+              \noexpand\nobreak
+              \vskip\the\skip@
+              \vskip\the\lastskip\relax
+            \noexpand\fi
+          }%
+        }%
+      \x
+    \fi
+  \else
+    \ifhmode
+      \ifdim\lastskip=\z@
+        \let\Hy@RestoreLastskip\nobreak
+      \else
+        \begingroup
+          \skip@=-\lastskip
+          \edef\x{%
+            \endgroup
+            \def\noexpand\Hy@RestoreLastskip{%
+              \noexpand\ifhmode
+                \noexpand\nobreak
+                \hskip\the\skip@
+                \hskip\the\lastskip\relax
+              \noexpand\fi
+            }%
+          }%
+        \x
+      \fi
+    \fi
+  \fi
+}%
+\def\Hy@boolkey{\@dblarg\Hy@@boolkey}
+\def\Hy@@boolkey[#1]#2#3{%
+  \lowercase{\def\Hy@tempa{#3}}%
+  \ifx\Hy@tempa\@empty
+    \let\Hy@tempa\Hy@true
+  \fi
+  \ifx\Hy@tempa\Hy@true
+  \else
+    \ifx\Hy@tempa\Hy@false
+    \else
+      \let\Hy@tempa\relax
+    \fi
+  \fi
+  \ifx\Hy@tempa\relax
+    \Hy@WarnOptionValue{#3}{#1}{`true' or 'false'}%
+  \else
+    \Hy@Info{Option `#1' set `\Hy@tempa'}%
+    \csname Hy@#2\Hy@tempa\endcsname
+  \fi
+}
+\def\Hy@WarnOptionValue#1#2#3{%
+  \Hy@Warning{%
+    Unexpected value `#1'\MessageBreak
+    of option `#2' instead of\MessageBreak
+    #3%
+  }
+}
+\def\Hy@DisableOption#1{%
+  \@ifundefined{KV@Hyp@#1@default}{%
+    \define@key{Hyp}{#1}%
+  }{%
+    \define@key{Hyp}{#1}[]%
+  }%
+  {\Hy@WarnOptionDisabled{#1}}%
+}
+\def\Hy@WarnOptionDisabled#1{%
+  \Hy@Warning{%
+    Option `#1' has already been used,\MessageBreak
+    setting the option has no effect%
+  }%
+}
+\define@key{Hyp}{implicit}[true]{%
+  \Hy@boolkey{implicit}{#1}%
+}
+\define@key{Hyp}{draft}[true]{%
+  \Hy@boolkey{draft}{#1}%
+}
+\let\KV@Hyp@nolinks\KV@Hyp@draft
+\define@key{Hyp}{a4paper}[true]{%
+  \def\special@paper{210mm,297mm}%
+  \def\Hy@pageheight{842}%
+}
+\define@key{Hyp}{a5paper}[true]{%
+  \def\special@paper{148mm,210mm}%
+  \def\Hy@pageheight{595}%
+}
+\define@key{Hyp}{b5paper}[true]{%
+  \def\special@paper{176mm,250mm}%
+  \def\Hy@pageheight{709}%
+}
+\define@key{Hyp}{letterpaper}[true]{%
+  \def\special@paper{8.5in,11in}%
+  \def\Hy@pageheight{792}%
+}
+\define@key{Hyp}{legalpaper}[true]{%
+  \def\special@paper{8.5in,14in}%
+  \def\Hy@pageheight{1008}%
+}
+\define@key{Hyp}{executivepaper}[true]{%
+  \def\special@paper{7.25in,10.5in}%
+  \def\Hy@pageheight{720}%
+}
+\define@key{Hyp}{debug}[true]{%
+  \Hy@boolkey[debug]{verbose}{#1}%
+}
+\define@key{Hyp}{linktocpage}[true]{%
+  \Hy@boolkey{linktocpage}{#1}%
+}
+\define@key{Hyp}{extension}{\def\XR@ext{#1}}
+\def\XR@ext{dvi}
+\define@key{Hyp}{verbose}[true]{%
+  \Hy@boolkey{verbose}{#1}%
+}
+\define@key{Hyp}{typexml}[true]{%
+  \Hy@boolkey{typexml}{#1}%
+}
+\define@key{Hyp}{raiselinks}[true]{%
+  \Hy@boolkey{raiselinks}{#1}%
+}
+\define@key{Hyp}{breaklinks}[true]{%
+  \Hy@boolkey{breaklinks}{#1}%
+}
+\define@key{Hyp}{pageanchor}[true]{%
+  \Hy@boolkey{pageanchor}{#1}%
+}
+\define@key{Hyp}{plainpages}[true]{%
+  \Hy@boolkey{plainpages}{#1}%
+}
+\define@key{Hyp}{naturalnames}[true]{%
+  \Hy@boolkey{naturalnames}{#1}%
+}
+\define@key{Hyp}{hypertexnames}[true]{%
+  \Hy@boolkey{hypertexnames}{#1}%
+}
+\define@key{Hyp}{nesting}[true]{%
+  \Hy@boolkey{nesting}{#1}%
+}
+\define@key{Hyp}{unicode}[true]{%
+  \Hy@boolkey{unicode}{#1}%
+  \HyPsd@InitUnicode
+}
+\define@key{Hyp}{hyperref}[true]{}
+\define@key{Hyp}{tex4ht}[true]{%
+  \def\XR@ext{html}%
+  \Hy@texhttrue
+  \def\Hy@raisedlink{}%
+  \setkeys{Hyp}{colorlinks=true}%
+  \def\BeforeTeXIVht{\usepackage{color}}%
+  \def\Hy@driver{htex4ht}%
+  \def\MaybeStopEarly{%
+    \typeout{Hyperref stopped early}%
+    \AfterBeginDocument{\PDF@FinishDoc}%
+    \endinput
+  }%
+}
+\define@key{Hyp}{pdftex}[true]{%
+  \def\Hy@driver{hpdftex}%
+  \def\XR@ext{pdf}%
+  \PassOptionsToPackage{pdftex}{color}%
+  \Hy@breaklinkstrue
+}
+\define@key{Hyp}{dvipdf}[true]{%
+}
+\define@key{Hyp}{nativepdf}[true]{%
+  \def\Hy@driver{hdvips}%
+  \def\XR@ext{pdf}%
+}
+\define@key{Hyp}{dvipdfm}[true]{%
+  \def\Hy@driver{hdvipdfm}%
+  \def\XR@ext{pdf}%
+  \Hy@breaklinkstrue
+}
+\define@key{Hyp}{pdfmark}[true]{%
+  \def\Hy@driver{hdvips}%
+  \def\XR@ext{pdf}%
+}
+\define@key{Hyp}{dvips}[true]{%
+  \def\Hy@driver{hdvips}%
+  \def\XR@ext{pdf}%
+}
+\define@key{Hyp}{hypertex}[true]{%
+  \def\Hy@driver{hypertex}%
+}
+\let\Hy@MaybeStopNow\relax
+\define@key{Hyp}{vtex}[true]{%
+  \begingroup\expandafter\expandafter\expandafter\endgroup
+  \expandafter\ifx\csname OpMode\endcsname\relax
+    \@latex@error{Non-VTeX processor}{}%
+    \global\let\Hy@MaybeStopNow\endinput
+    \endinput
+  \else
+    \ifnum\ifnum\OpMode=2 1\else\OpMode\fi=1 % SPACE
+      \def\XR@ext{pdf}%
+      \def\Hy@driver{hvtex}%
+    \else
+      \ifnum\OpMode=10\relax
+        \def\XR@ext{htm}%
+        \def\Hy@driver{hvtexhtm}%
+        \def\MaybeStopEarly{%
+           \typeout{Hyperref stopped early}%
+           \AfterBeginDocument{\PDF@FinishDoc}%
+           \endinput
+        }%
+      \else
+        \@latex@error{Mode (\the\OpMode) has no hyperref driver}{}%
+        \global\let\Hy@MaybeStopNow\endinput
+        \endinput
+      \fi
+    \fi
+  \fi
+}
+\define@key{Hyp}{vtexpdfmark}[true]{%
+  \begingroup\expandafter\expandafter\expandafter\endgroup
+  \expandafter\ifx\csname OpMode\endcsname\relax
+    \@latex@error{Non-VTeX processor}{}%
+    \let\Hy@MaybeStopNow\endinput
+    \endinput
+  \else
+    \ifnum\ifnum\OpMode=2 1\else\OpMode\fi=1 % SPACE
+      \def\XR@ext{pdf}%
+      \def\Hy@driver{hvtexmrk}%
+    \else
+      \@latex@error{Mode (\the\OpMode) has no hyperref driver}{}%
+      \let\Hy@MaybeStopNow\endinput
+      \endinput
+    \fi
+  \fi
+}
+\define@key{Hyp}{dviwindo}[true]{%
+  \def\Hy@driver{hdviwind}%
+  \setkeys{Hyp}{colorlinks}%
+  \PassOptionsToPackage{dviwindo}{color}%
+}
+\define@key{Hyp}{dvipsone}[true]{%
+  \def\XR@ext{pdf}%
+  \def\Hy@driver{hdvipson}%
+}
+\define@key{Hyp}{textures}[true]{%
+  \def\XR@ext{pdf}%
+  \def\Hy@driver{htexture}%
+}
+\define@key{Hyp}{latex2html}[true]{%
+  \AtBeginDocument{\@@latextohtmlX}%
+}
+\define@key{Hyp}{ps2pdf}[true]{%
+  \def\Hy@driver{hdvips}%
+  \providecommand\@pdfborder{0 0 1}%
+}
+\define@key{Hyp}{hyperfigures}[true]{%
+  \Hy@boolkey[hyperfigures]{figures}{#1}%
+}
+\define@key{Hyp}{hyperfootnotes}[true]{%
+  \Hy@boolkey{hyperfootnotes}{#1}%
+}
+\def\back@none{none}
+\def\back@section{section}
+\def\back@page{page}
+\def\back@slide{slide}
+\define@key{Hyp}{backref}[section]{%
+  \lowercase{\def\Hy@tempa{#1}}%
+  \ifx\Hy@tempa\@empty
+    \let\Hy@tempa\back@section
+  \fi
+  \ifx\Hy@tempa\Hy@false
+    \let\Hy@tempa\back@none
+  \fi
+  \ifx\Hy@tempa\back@slide
+    \let\Hy@tempa\back@section
+  \fi
+  \ifx\Hy@tempa\back@page
+    \PassOptionsToPackage{hyperpageref}{backref}%
+    \Hy@backreftrue
+  \else
+    \ifx\Hy@tempa\back@section
+      \PassOptionsToPackage{hyperref}{backref}%
+      \Hy@backreftrue
+    \else
+      \ifx\Hy@tempa\back@none
+        \Hy@backreffalse
+      \else
+        \Hy@WarnOptionValue{#1}{backref}{%
+          `section', `slide', `page', `none',\MessageBreak
+          or `false'}%
+      \fi
+    \fi
+  \fi
+}
+\define@key{Hyp}{pagebackref}[true]{%
+  \lowercase{\def\Hy@tempa{#1}}%
+  \ifx\Hy@tempa\@empty
+    \let\Hy@tempa\Hy@true
+  \fi
+  \ifx\Hy@tempa\Hy@true
+    \PassOptionsToPackage{hyperpageref}{backref}%
+    \Hy@backreftrue
+  \else
+    \ifx\Hy@tempa\Hy@false
+      \Hy@backreffalse
+    \else
+      \Hy@WarnOptionValue{#1}{pagebackref}{`true' or `false'}%
+    \fi
+  \fi
+}
+\define@key{Hyp}{hyperindex}[true]{%
+  \Hy@boolkey{hyperindex}{#1}%
+}
+\def\Hy@setcaptions#1#2{%
+  \@ifpackageloaded{babel}{%
+    \expandafter\addto\csname captions#2\expandafter\endcsname
+    \expandafter{#1}%
+  }{%
+    #1%
+  }%
+}
+\def\Hy@autorefenglish{\Hy@setcaptions\Hy@captionsenglish}
+\def\Hy@autorefgerman{\Hy@setcaptions\Hy@captionsgerman}
+\def\Hy@autorefspanish{\Hy@setcaptions\Hy@captionsspanish}
+\def\Hy@captionsenglish{%
+  \def\equationautorefname{Equation}%
+  \def\footnoteautorefname{footnote}%
+  \def\itemautorefname{item}%
+  \def\figureautorefname{Figure}%
+  \def\tableautorefname{Table}%
+  \def\partautorefname{Part}%
+  \def\appendixautorefname{Appendix}%
+  \def\chapterautorefname{chapter}%
+  \def\sectionautorefname{section}%
+  \def\subsectionautorefname{subsection}%
+  \def\subsubsectionautorefname{subsubsection}%
+  \def\paragraphautorefname{paragraph}%
+  \def\subparagraphautorefname{subparagraph}%
+  \def\FancyVerbLineautorefname{line}%
+  \def\theoremautorefname{Theorem}%
+}
+\def\Hy@captionsgerman{%
+  \def\equationautorefname{Gleichung}%
+  \def\footnoteautorefname{Fu\ss note}%
+  \def\itemautorefname{Punkt}%
+  \def\figureautorefname{Abbildung}%
+  \def\tableautorefname{Tabelle}%
+  \def\partautorefname{Teil}%
+  \def\appendixautorefname{Anhang}%
+  \def\chapterautorefname{Kapitel}%
+  \def\sectionautorefname{Abschnitt}%
+  \def\subsectionautorefname{Unterabschnitt}%
+  \def\subsubsectionautorefname{Unterunterabschnitt}%
+  \def\paragraphautorefname{Absatz}%
+  \def\subparagraphautorefname{Unterabsatz}%
+  \def\FancyVerbLineautorefname{Zeile}%
+  \def\theoremautorefname{Theorem}%
+}
+\def\Hy@captionsspanish{%
+  \def\equationautorefname{Ecuaci\'on}%
+  \def\footnoteautorefname{Nota a pie de p\'agina}%
+  \def\itemautorefname{Elemento}%
+  \def\figureautorefname{Figura}%
+  \def\tableautorefname{Tabla}%
+  \def\partautorefname{Parte}%
+  \def\appendixautorefname{Ap\'endice}%
+  \def\chapterautorefname{Cap\'itulo}%
+  \def\sectionautorefname{Secci\'on}%
+  \def\subsectionautorefname{Subsecci\'on}%
+  \def\subsubsectionautorefname{Subsubsecci\'on}%
+  \def\paragraphautorefname{P\'arrafo}%
+  \def\subparagraphautorefname{Subp\'arrafo}%
+  \def\FancyVerbLineautorefname{L\'inea}%
+  \def\theoremautorefname{Teorema}%
+}
+\define@key{Hyp}{english}[]{\Hy@autorefenglish{english}}
+\define@key{Hyp}{UKenglish}[]{\Hy@autorefenglish{UKenglish}}
+\define@key{Hyp}{british}[]{\Hy@autorefenglish{british}}
+\define@key{Hyp}{USenglish}[]{\Hy@autorefenglish{USenglish}}
+\define@key{Hyp}{american}[]{\Hy@autorefenglish{american}}
+\define@key{Hyp}{german}[]{\Hy@autorefgerman{german}}
+\define@key{Hyp}{austrian}[]{\Hy@autorefgerman{austrian}}
+\define@key{Hyp}{ngerman}[]{\Hy@autorefgerman{ngerman}}
+\define@key{Hyp}{naustrian}[]{\Hy@autorefgerman{naustrian}}
+\define@key{Hyp}{spanish}[]{\Hy@autorefspanish{spanish}}
+\define@key{Hyp}{colorlinks}[true]{%
+  \Hy@boolkey{colorlinks}{#1}%
+  \ifHy@colorlinks
+    \def\@pdfborder{0 0 0}%
+  \fi
+}
+\define@key{Hyp}{frenchlinks}[true]{%
+  \Hy@boolkey{frenchlinks}{#1}%
+}
+\define@key{Hyp}{bookmarks}[true]{%
+  \Hy@boolkey{bookmarks}{#1}%
+}
+\define@key{Hyp}{bookmarksopen}[true]{%
+  \Hy@boolkey{bookmarksopen}{#1}%
+}
+\define@key{Hyp}{bookmarksopenlevel}{%
+  \def\@bookmarksopenlevel{#1}%
+}
+\def\@bookmarksopenlevel{\maxdimen}
+\define@key{Hyp}{bookmarkstype}{%
+  \def\Hy@bookmarkstype{#1}%
+}
+\def\Hy@bookmarkstype{toc}
+\define@key{Hyp}{bookmarksnumbered}[true]{%
+  \Hy@boolkey{bookmarksnumbered}{#1}%
+}
+\define@key{Hyp}{CJKbookmarks}[true]{%
+  \Hy@boolkey{CJKbookmarks}{#1}%
+}
+\define@key{Hyp}{linkcolor}{\def\@linkcolor{#1}}
+\define@key{Hyp}{anchorcolor}{\def\@anchorcolor{#1}}
+\define@key{Hyp}{citecolor}{\def\@citecolor{#1}}
+\define@key{Hyp}{urlcolor}{\def\@urlcolor{#1}}
+\define@key{Hyp}{menucolor}{\def\@menucolor{#1}}
+\define@key{Hyp}{filecolor}{\def\@filecolor{#1}}
+\define@key{Hyp}{pagecolor}{\def\@pagecolor{#1}}
+\def\@linkcolor{red}
+\def\@anchorcolor{black}
+\def\@citecolor{green}
+\def\@filecolor{cyan}
+\def\@urlcolor{magenta}
+\def\@menucolor{red}
+\def\@pagecolor{red}
+\def\hyperbaseurl#1{\def\@baseurl{#1}}
+\define@key{Hyp}{baseurl}{\hyperbaseurl{#1}}
+\let\@baseurl\@empty
+\def\hyperlinkfileprefix#1{\def\Hy@linkfileprefix{#1}}
+\define@key{Hyp}{linkfileprefix}{\hyperlinkfileprefix{#1}}
+\hyperlinkfileprefix{file:}
+\let\@pdfpagetransition\relax
+\define@key{Hyp}{pdfpagetransition}{\def\@pdfpagetransition{#1}}
+\let\@pdfpageduration\relax
+\define@key{Hyp}{pdfpageduration}{\def\@pdfpageduration{#1}}
+\newif\ifHy@useHidKey
+\Hy@useHidKeyfalse
+\define@key{Hyp}{pdfpagehidden}[true]{%
+  \Hy@boolkey{pdfpagehidden}{#1}%
+  \ifHy@pdfpagehidden
+    \global\Hy@useHidKeytrue
+  \fi
+}
+\define@key{Hyp}{linkbordercolor}{\def\@linkbordercolor{#1}}
+\define@key{Hyp}{urlbordercolor}{\def\@urlbordercolor{#1}}
+\define@key{Hyp}{menubordercolor}{\def\@menubordercolor{#1}}
+\define@key{Hyp}{filebordercolor}{\def\@filebordercolor{#1}}
+\define@key{Hyp}{runbordercolor}{\def\@runbordercolor{#1}}
+\define@key{Hyp}{citebordercolor}{\def\@citebordercolor{#1}}
+\define@key{Hyp}{pagebordercolor}{\def\@pagebordercolor{#1}}
+\define@key{Hyp}{pdfhighlight}{\def\@pdfhighlight{#1}}
+\define@key{Hyp}{pdfborder}{\def\@pdfborder{#1}}
+\define@key{Hyp}{pdfpagemode}{\def\@pdfpagemode{/#1 }}
+\define@key{Hyp}{pdftitle}{\pdfstringdef\@pdftitle{#1}}
+\define@key{Hyp}{pdfauthor}{\pdfstringdef\@pdfauthor{#1}}
+\define@key{Hyp}{pdfproducer}{\pdfstringdef\@pdfproducer{#1}}
+\define@key{Hyp}{pdfcreator}{\pdfstringdef\@pdfcreator{#1}}
+\define@key{Hyp}{pdfsubject}{\pdfstringdef\@pdfsubject{#1}}
+\define@key{Hyp}{pdfkeywords}{\pdfstringdef\@pdfkeywords{#1}}
+\define@key{Hyp}{pdfview}{\calculate@pdfview#1 \\}
+\define@key{Hyp}{pdflinkmargin}{\setpdflinkmargin{#1}}
+\let\setpdflinkmargin\@gobble
+\def\calculate@pdfview#1 #2\\{%
+  \def\@pdfview{#1}%
+  \ifx\\#2\\%
+    \def\@pdfviewparams{ -32768}%
+  \else
+    \def\@pdfviewparams{ #2}%
+  \fi
+}
+\define@key{Hyp}{pdfstartpage}{\def\@pdfstartpage{#1}}
+\define@key{Hyp}{pdfstartview}{%
+  \ifx\\#1\\%
+    \def\@pdfstartview{}%
+  \else
+    \hypercalcbpdef\@pdfstartview{ /#1 }%
+  \fi
+}
+\define@key{Hyp}{pdfpagescrop}{\edef\@pdfpagescrop{#1}}
+\define@key{Hyp}{pdftoolbar}[true]{%
+  \Hy@boolkey[pdftoolbar]{toolbar}{#1}%
+}
+\define@key{Hyp}{pdfmenubar}[true]{%
+  \Hy@boolkey[pdfmenubar]{menubar}{#1}%
+}
+\define@key{Hyp}{pdfwindowui}[true]{%
+  \Hy@boolkey[pdfwindowui]{windowui}{#1}%
+}
+\define@key{Hyp}{pdffitwindow}[true]{%
+  \Hy@boolkey[pdffitwindow]{fitwindow}{#1}%
+}
+\define@key{Hyp}{pdfcenterwindow}[true]{%
+  \Hy@boolkey[pdfcenterwindow]{centerwindow}{#1}%
+}
+\define@key{Hyp}{pdfnewwindow}[true]{%
+  \Hy@boolkey[pdfnewwindow]{newwindow}{#1}%
+}
+\define@key{Hyp}{pdfpagelayout}{\def\pdf@pagelayout{#1}}
+\def\pdf@pagelayout{}
+\define@key{Hyp}{pdfpagelabels}[true]{%
+  \Hy@boolkey[pdfpagelabels]{pagelabels}{#1}%
+}
+\def\@linkbordercolor{1 0 0}
+\def\@urlbordercolor{0 1 1}
+\def\@menubordercolor{1 0 0}
+\def\@filebordercolor{0 .5 .5}
+\def\@runbordercolor{0 .7 .7}
+\def\@citebordercolor{0 1 0}
+\def\@pagebordercolor{1 1 0}
+\def\@pdfhighlight{/I}
+\def\@pdfpagemode{}
+\def\@pdftitle{}
+\def\@pdfauthor{}
+\def\@pdfproducer{}
+\def\@pdfcreator{LaTeX with hyperref package}
+\def\@pdfsubject{}
+\def\@pdfkeywords{}
+\def\@pdfpagescrop{}
+\def\@pdfstartview{ /Fit }
+\def\@pdfstartpage{1}
+\let\PDF@SetupDoc\@empty
+\let\PDF@FinishDoc\@empty
+\edef\special@paper{\the\paperwidth,\the\paperheight}
+\hypercalcbpdef\Hy@pageheight{\hypercalcbp{\paperheight}}
+\def\hypersetup{\setkeys{Hyp}}
+\let\hyper@normalise\ExecuteOptions
+\let\ExecuteOptions\hypersetup
+\Hy@RestoreCatcodes
+\InputIfFileExists{hyperref.cfg}{}{}
+\Hy@SetCatcodes
+\let\ExecuteOptions\hyper@normalise
+\Hy@MaybeStopNow
+\def\ProcessOptionsWithKV#1{%
+  \let\@tempc\relax
+  \let\Hy@tempa\@empty
+  \@for\CurrentOption:=\@classoptionslist\do{%
+    \@ifundefined{KV@#1@\CurrentOption}%
+    {}%
+    {%
+      \edef\Hy@tempa{\Hy@tempa,\CurrentOption,}%
+      \@expandtwoargs\@removeelement\CurrentOption
+        \@unusedoptionlist\@unusedoptionlist
+    }%
+  }%
+  \edef\Hy@tempa{%
+    \noexpand\setkeys{#1}{%
+      \Hy@tempa\@ptionlist{\@currname.\@currext}%
+    }%
+  }%
+  \Hy@tempa
+}
+\let\ReadBookmarks\relax
+\ProcessOptionsWithKV{Hyp}
+\AtBeginDocument{%
+  \ifHy@draft
+    \let\hyper@@anchor\@gobble
+    \gdef\hyper@link#1#2#3{#3}%
+    \let\hyper@anchorstart\@gobble
+    \let\hyper@anchorend\@empty
+    \let\hyper@linkstart\@gobbletwo
+    \let\hyper@linkend\@empty
+    \def\hyper@linkurl#1#2{#1}%
+    \def\hyper@linkfile#1#2#3{#1}%
+    \def\Acrobatmenu#1#2{#2}%
+    \let\PDF@SetupDoc\@empty
+    \let\PDF@FinishDoc\@empty
+    \let\@fifthoffive\@secondoftwo
+    \let\@secondoffive\@secondoftwo
+    \let\ReadBookmarks\relax
+    \let\WriteBookmarks\relax
+    \Hy@WarningNoLine{ draft mode on}%
+  \fi
+  \Hy@DisableOption{draft}%
+}%
+\ifx\HyPsd@InitUnicode\relax
+  \define@key{Hyp}{unicode}[true]{%
+    \Hy@boolkey{unicode}{#1}%
+  }
+\else
+  \define@key{Hyp}{unicode}[true]{%
+    \Hy@boolkey{unicode}{#1}%
+    \ifHy@unicode
+      \Hy@WarningNoLine{Set package option `unicode' first\MessageBreak
+                  in order to load unicode support%
+      }%
+      \Hy@unicodefalse
+    \fi
+  }
+\fi
+\let\HyPsd@InitUnicode\@undefined
+\Hy@nextfalse
+\@ifpackagewith{babel}{spanish}{\Hy@nexttrue}{}
+\@ifpackagewith{babel}{galician}{\Hy@nexttrue}{}
+\@ifpackagewith{babel}{estonian}{\Hy@nexttrue}{}
+\ifHy@next
+  \let\texttilde\~%
+\fi
+\def\WriteBookmarks{0}
+\def\@bookmarkopenstatus#1{%
+  \ifHy@bookmarksopen
+    \ifnum#1<\expandafter\@firstofone\expandafter
+             {\number\@bookmarksopenlevel} % explicit space
+    \else
+      -%
+    \fi
+  \else
+    -%
+  \fi
+}
+\ifHy@bookmarks
+  \Hy@Info{Bookmarks ON}%
+  \ifx\@pdfpagemode\@empty
+    \def\@pdfpagemode{/UseOutlines }%
+  \fi
+\else
+  \def\@bookmarkopenstatus#1{}%
+  \Hy@Info{Bookmarks OFF}%
+  \AtEndOfPackage{%
+    \global\let\ReadBookmarks\relax
+    \global\let\WriteBookmarks\relax
+  }
+  \ifx\@pdfpagemode\@empty
+    \def\@pdfpagemode{/UseNone}%
+  \fi
+\fi
+\Hy@DisableOption{bookmarks}
+\ifHy@figures
+  \Hy@Info{Hyper figures ON}
+\else
+  \Hy@Info{Hyper figures OFF}
+\fi
+\ifHy@nesting
+  \Hy@Info{Link nesting ON}
+\else
+  \Hy@Info{Link nesting OFF}
+\fi
+\ifHy@hyperindex
+  \Hy@Info{Hyper index ON}
+\else
+  \Hy@Info{Hyper index OFF}
+\fi
+\ifHy@plainpages
+  \Hy@Info{Plain pages ON}
+\else
+  \Hy@Info{Plain pages OFF}
+\fi
+\ifHy@backref
+  \Hy@Info{Backreferencing ON}
+\else
+  \Hy@Info{Backreferencing OFF}
+\fi
+\ifHy@typexml
+   \AtEndOfPackage{\RequirePackage{color}\RequirePackage{nameref}}
+\fi
+\Hy@DisableOption{typexml}
+\ifHy@implicit
+  \typeout{Implicit mode ON; LaTeX internals redefined}%
+\else
+  \typeout{Implicit mode OFF; no redefinition of LaTeX internals}%
+  \def\MaybeStopEarly{%
+    \typeout{Hyperref stopped early}%
+    \AfterBeginDocument{\PDF@FinishDoc}%
+    \endinput
+  }%
+  \AtBeginDocument{%
+    \let\autoref\ref
+    \ifx\@pdfpagemode\@empty
+      \gdef\@pdfpagemode{/UseNone}%
+    \fi
+    \global\Hy@backreffalse
+  }%
+  \AtEndOfPackage{%
+    \global\let\ReadBookmarks\relax
+    \global\let\WriteBookmarks\relax
+  }%
+\fi
+\Hy@DisableOption{implicit}
+\AtEndOfPackage{%
+  \@ifpackageloaded{tex4ht}{%
+    \def\Hy@driver{htex4ht}%
+    \Hy@texhttrue
+  }{}%
+  \ifx\Hy@driver\@empty
+    \@ifundefined{pdfoutput}{%
+      \let\pdfoutput\@undefined
+      \@ifundefined{OpMode}{%
+        \def\Hy@driver{hypertex}%
+      }{%
+        \ifnum\ifnum\OpMode=2 1\else\OpMode\fi=1 % SPACE
+          \def\Hy@driver{hvtex}%
+          \def\XR@ext{pdf}%
+        \else
+          \ifnum\OpMode=10\relax
+            \def\XR@ext{htm}%
+            \def\Hy@driver{hvtexhtm}%
+            \def\MaybeStopEarly{%
+              \typeout{Hyperref stopped early}%
+              \AfterBeginDocument{\PDF@FinishDoc}%
+              \endinput
+            }%
+          \else
+            \def\Hy@driver{hypertex}%
+          \fi
+        \fi
+      }
+    }{%
+      \ifcase\pdfoutput
+        \let\pdfoutput\@undefined
+        \def\Hy@driver{hypertex}%
+      \else
+        \def\Hy@driver{hpdftex}%
+        \def\XR@ext{pdf}%
+        \PassOptionsToPackage{pdftex}{color}%
+        \Hy@breaklinkstrue
+      \fi
+    }%
+    \typeout{*hyperref using default driver \Hy@driver*}%
+  \else
+    \typeout{*hyperref using driver \Hy@driver*}%
+  \fi
+  \input{\Hy@driver.def}%
+  \let\@unprocessedoptions\relax
+  \Hy@RestoreCatcodes
+}
+\Hy@DisableOption{tex4ht}
+\Hy@DisableOption{pdftex}
+\Hy@DisableOption{dvipdf}
+\Hy@DisableOption{nativepdf}
+\Hy@DisableOption{dvipdfm}
+\Hy@DisableOption{pdfmark}
+\Hy@DisableOption{dvips}
+\Hy@DisableOption{hypertex}
+\Hy@DisableOption{vtex}
+\Hy@DisableOption{vtexpdfmark}
+\Hy@DisableOption{dviwindo}
+\Hy@DisableOption{dvipsone}
+\Hy@DisableOption{textures}
+\Hy@DisableOption{latex2html}
+\Hy@DisableOption{ps2pdf}
+\AtBeginDocument{%
+  \ifHy@colorlinks
+    \ifHy@typexml\else\RequirePackage{color}\fi
+    \def\Hy@colorlink#1{\begingroup\color{#1}}%
+    \def\Hy@endcolorlink{\endgroup}%
+    \Hy@Info{Link coloring ON}%
+  \else
+    \ifHy@frenchlinks
+      \def\Hy@colorlink#1{\begingroup\fontshape{sc}\selectfont}%
+      \def\Hy@endcolorlink{\endgroup}%
+      \Hy@Info{French linking ON}%
+    \else
+      \def\Hy@colorlink#1{\begingroup}%
+      \def\Hy@endcolorlink{\endgroup}%
+      \Hy@Info{Link coloring OFF}%
+    \fi
+  \fi
+  \Hy@DisableOption{colorlinks}%
+  \Hy@DisableOption{frenchlinks}%
+  \ifHy@texht
+    \long\def\@firstoffive#1#2#3#4#5{#1}%
+    \long\def\@secondoffive#1#2#3#4#5{#2}%
+    \long\def\@thirdoffive#1#2#3#4#5{#3}%
+    \long\def\@fourthoffive#1#2#3#4#5{#4}%
+    \long\def\@fifthoffive#1#2#3#4#5{#5}%
+    \providecommand*\@safe@activestrue{}%
+    \providecommand*\@safe@activesfalse{}%
+    \def\T@ref#1{%
+      \@safe@activestrue
+      \expandafter\@setref\csname r@#1\endcsname\@firstoffive{#1}%
+      \@safe@activesfalse
+    }%
+    \def\T@pageref#1{%
+      \@safe@activestrue
+      \expandafter\@setref\csname r@#1\endcsname\@secondoffive{#1}%
+      \@safe@activesfalse
+    }%
+  \else
+    \ifHy@typexml\else\RequirePackage{nameref}\fi
+  \fi
+  \DeclareRobustCommand\ref{\@ifstar\@refstar\T@ref}%
+  \DeclareRobustCommand\pageref{%
+    \@ifstar\@pagerefstar\T@pageref
+  }%
+}
+\AfterBeginDocument{%
+  \ifHy@texht
+  \else
+    \ReadBookmarks
+  \fi
+}
+\ifHy@backref
+  \RequirePackage{backref}
+\else
+  \let\Hy@backout\@gobble
+\fi
+\Hy@DisableOption{backref}
+\Hy@DisableOption{pagebackref}
+\Hy@activeanchorfalse
+\begingroup
+  \endlinechar=-1
+  \catcode`\^^M\active
+  \catcode`\%\active
+  \catcode`\#\active
+  \catcode`\_\active
+  \gdef\hyper@normalise{
+    \begingroup
+    \catcode`\^^M\active
+    \def^^M{ }
+    \catcode`\%\active
+    \let%\@percentchar
+    \let\%\@percentchar
+    \catcode`\#\active
+    \def#{\hyper@hash}
+    \def\#{\hyper@hash}
+    \catcode`\_\active
+    \def_{\string_}
+    \let~\hyper@tilde
+    \let\~\hyper@tilde
+    \ifx\@safe@activestrue\@undefined\else\@safe@activestrue\fi
+    \hyper@n@rmalise
+  }
+  \catcode`\#=6
+  \gdef\hyper@n@rmalise#1#2{
+    \edef\Hy@tempa{
+      \endgroup
+      \noexpand#1{\Hy@RemovePercentCr#2%^^M\@nil}
+    }
+    \Hy@tempa
+  }
+  \gdef\Hy@RemovePercentCr#1%^^M#2\@nil{
+    #1
+    \ifx\limits#2\limits
+    \else
+      \Hy@ReturnAfterFi{
+        \Hy@RemovePercentCr #2\@nil
+      }
+    \fi
+  }
+\endgroup
+\providecommand\hyper@chars{%
+  \let\#\hyper@hash
+  \let\%\@percentchar
+}
+\def\hyperlink#1#2{%
+  \hyper@@link{}{#1}{#2}%
+}
+\DeclareRobustCommand*{\href}{\hyper@normalise\href@}
+\begingroup
+  \catcode`\$=6
+  \catcode`\#=12
+  \gdef\href@$1{\expandafter\href@split$1##\\}
+  \gdef\href@split$1#$2#$3\\{%
+    \hyper@@link{$1}{$2}%
+  }
+\endgroup
+\RequirePackage{url}
+\let\HyOrg@url\url
+\def\Hurl{\begingroup \Url}
+\let\nolinkurl\Hurl
+\DeclareRobustCommand*{\url}{\hyper@normalise\url@}
+\def\url@#1{\hyper@linkurl{\Hurl{#1}}{#1}}
+\DeclareRobustCommand*{\hyperimage}{\hyper@normalise\hyper@image}
+\providecommand\hyper@image[2]{#2}
+\def\hypertarget#1#2{%
+  \ifHy@nesting
+    \hyper@@anchor{#1}{#2}%
+  \else
+    \hyper@@anchor{#1}{\relax}#2%
+  \fi
+}
+\DeclareRobustCommand*{\hyperref}{%
+  \@ifnextchar[\label@hyperref\@hyperref
+}
+\def\@hyperref{\hyper@normalise\@@hyperref}
+\def\@@hyperref#1#2#3{%
+  \edef\ref@one{\ifx\\#2\\\else#2.\fi#3}%
+  \expandafter\tryhyper@link\ref@one\\{#1}%
+}
+\def\tryhyper@link#1\\#2{%
+ \hyper@@link{#2}{#1}%
+}
+\def\hyperdef{\@ifnextchar[{\label@hyperdef}{\@hyperdef}}
+\def\@hyperdef#1#2#3{%, category, name, text
+  \ifHy@nesting
+    \hyper@@anchor{#1.#2}{#3}%
+  \else
+    \hyper@@anchor{#1.#2}{\relax}#3%
+  \fi
+}
+\def\label@hyperref[#1]{%
+  \expandafter\label@@hyperref\csname r@#1\endcsname{#1}%
+}%
+\def\label@@hyperref#1#2#3{%
+  \ifx#1\relax
+    \protect\G@refundefinedtrue
+    \@latex@warning{%
+      Hyper reference `#2' on page \thepage \space undefined%
+    }%
+    \hyper@@link{}{??}{#3}%
+  \else
+    \hyper@@link{\expandafter\@fifthoffive#1}%
+      {\expandafter\@fourthoffive#1\@empty\@empty}{#3}%
+  \fi
+}
+\def\label@hyperdef[#1]#2#3#4{% label name, category, name,
+                                % anchor text
+  \@bsphack
+  \protected@write\@auxout{}%
+    {\string\newlabel{#1}{{}{}{}\##2.#3}}%
+  \@esphack
+  \ifHy@nesting
+    \hyper@@anchor{#2.#3}{#4}%
+  \else
+    \hyper@@anchor{#2.#3}{\relax}#4%
+  \fi
+}
+\def\hyper@@link{\let\Hy@reserved@a\relax
+  \@ifnextchar[{\hyper@link@}{\hyper@link@[link]}%
+}
+\def\hyper@link@[#1]#2#3#4{%
+  \edef\Hy@tempa{#2}%
+  \ifx\Hy@tempa\@empty
+    \hyper@link{#1}{#3}{#4}%
+  \else
+    \expandafter\hyper@readexternallink#2\\{#1}{#3}{#4}%
+  \fi
+}
+\def\hyper@readexternallink#1\\#2#3#4{%
+  \expandafter\@hyper@readexternallink{#2}{#3}{#4}#1::\\{#1}%
+}
+\def\@pdftempwordfile{file}%
+\def\@pdftempwordrun{run}%
+\def\@hyper@readexternallink#1#2#3#4:#5:#6\\#7{%
+  \ifx\\#6\\%
+    \expandafter\@hyper@linkfile file:#7\\{#3}{#2}%
+  \else
+    \ifx\\#4\\%
+      \expandafter\@hyper@linkfile file:#7\\{#3}{#2}%
+    \else
+      \def\@pdftempa{#4}%
+      \ifx\@pdftempa\@pdftempwordfile
+        \expandafter\@hyper@linkfile#7\\{#3}{#2}%
+      \else
+        \ifx\@pdftempa\@pdftempwordrun
+          \expandafter\@hyper@launch#7\\{#3}{#2}%
+        \else
+          \hyper@linkurl{#3}{#7\ifx\\#2\\\else\##2\fi}%
+        \fi
+      \fi
+    \fi
+  \fi
+}
+\def\@hyper@launch run:#1\\#2#3{% filename, anchor text, linkname
+   \hyper@linkurl{#2}{file:#1\ifx\\#3\\\else\##3\fi}%
+}
+\def\@hyper@linkfile file:#1\\#2#3{%
+     %file url,link string, name
+  \filename@parse{#1}%
+  \ifx\filename@ext\relax
+    \edef\filename@ext{\XR@ext}%
+  \fi
+  \def\use@file{\filename@area\filename@base.\filename@ext}%
+  \ifx\filename@ext\XR@ext
+    \hyper@linkfile{#2}{\use@file}{#3}%
+  \else
+    \ifx\@baseurl\@empty
+      \hyper@linkurl{#2}{%
+        \Hy@linkfileprefix\use@file\ifx\\#3\\\else\##3\fi
+      }%
+    \else
+      \hyper@linkurl{#2}{\use@file\ifx\\#3\\\else\##3\fi}%
+    \fi
+  \fi
+}
+\long\def\hyper@@anchor#1#2{\@hyper@@anchor#1\relax#2\relax}
+\long\def\@hyper@@anchor#1\relax#2#3\relax{%
+  \ifx\\#1\\%
+    #2\Hy@WarningNoLine{empty link? #1: #2#3}%
+  \else
+    \def\anchor@spot{#2#3}%
+    \let\put@me@back\@empty
+    \ifx\relax#2\relax
+    \else
+      \ifHy@nesting
+      \else
+        \ifcat a\noexpand#2\relax
+        \else
+          \ifcat 0\noexpand#2 \relax
+          \else
+            \let\anchor@spot\@empty
+            \def\put@me@back{#2#3}%
+          \fi
+        \fi
+      \fi
+    \fi
+    \ifHy@activeanchor
+      \anchor@spot
+    \else
+      \hyper@anchor{#1}%
+    \fi
+    \expandafter\put@me@back
+  \fi
+  \let\anchor@spot\@empty
+}
+\let\htmladdimg\hyperimage
+\def\htmladdnormallink#1#2{\href{#2}{#1}}
+\def\htmladdnormallinkfoot#1#2{\href{#2}{#1}\footnote{#2}}
+\def\htmlref#1#2{% anchor text, label
+  \label@hyperref[{#2}]{#1}%
+}
+\def\@@latextohtmlX{%
+  \let\hhyperref\hyperref
+  \def\hyperref##1##2##3##4{% anchor text for HTML
+                     % text to print before label in print
+                     % label
+                     % post-label text in print
+    ##2\ref{##4}##3%
+  }%
+}
+\newif\ifFld@checked
+\newif\ifFld@hidden
+\newif\ifFld@multiline
+\newif\ifFld@readonly
+\newif\ifFld@disabled
+\newif\ifFld@password
+\newif\ifFld@radio
+\newif\ifFld@combo
+\newif\ifFld@popdown
+\Fld@multilinefalse
+\Fld@checkedfalse
+\Fld@hiddenfalse
+\Fld@readonlyfalse
+\Fld@disabledfalse
+\Fld@radiofalse
+\Fld@combofalse
+\Fld@popdownfalse
+\Fld@passwordfalse
+\newcount\Fld@menulength
+\newdimen\Field@Width
+\newdimen\Fld@charsize
+\Fld@charsize=10\p@
+\def\Fld@maxlen{0}
+\def\Fld@align{0}
+\def\Fld@color{0 0 0}
+\def\Fld@bcolor{1 1 1}
+\def\Fld@bordercolor{1 0 0}
+\def\Fld@bordersep{1\p@}
+\def\Fld@borderwidth{1}
+\def\Fld@borderstyle{S}
+\def\Fld@cbsymbol{4}
+\newtoks\Choice@toks
+\def\Form{\@ifnextchar[{\@Form}{\@Form[]}}
+\def\endForm{\@endForm}
+\newif\ifForm@html
+\Form@htmlfalse
+\def\Form@boolkey#1#2{%
+  \csname Form@#2\ifx\relax#1\relax true\else#1\fi\endcsname
+}
+\define@key{Form}{action}{%
+  \def\Form@action{#1}%
+}
+\def\enc@@html{html}
+\define@key{Form}{encoding}{%
+  \def\Hy@tempa{#1}%
+  \ifx\Hy@tempa\enc@@html
+    \Form@htmltrue
+  \else
+    \typeout{hyperref: form `encoding' key set to #1 %
+      -- unknown type%
+    }%
+    \Form@htmlfalse
+  \fi
+}
+\define@key{Form}{method}{%
+  \def\Form@method{#1}%
+}
+\def\Form@method{}
+\def\Field@boolkey#1#2{%
+  \csname Fld@#2\ifx\relax#1\relax true\else#1\fi\endcsname
+}
+\newtoks\Field@toks
+\Field@toks={ }%
+\def\Field@addtoks#1#2{%
+  \edef\@processme{\Field@toks{\the\Field@toks\space #1="#2"}}%
+  \@processme
+}
+\def\Fld@checkequals#1=#2=#3\\{%
+  \def\@currDisplay{#1}%
+  \ifx\\#2\\%
+    \def\@currValue{#1}%
+  \else
+    \def\@currValue{#2}%
+  \fi
+}
+\define@key{Field}{loc}{%
+  \def\Fld@loc{#1}%
+}
+\define@key{Field}{multiline}[true]{%
+  \lowercase{\Field@boolkey{#1}}{multiline}%
+}
+\define@key{Field}{checked}[true]{%
+  \lowercase{\Field@boolkey{#1}}{checked}%
+}
+\define@key{Field}{hidden}[true]{%
+  \lowercase{\Field@boolkey{#1}}{hidden}%
+}
+\define@key{Field}{readonly}[true]{%
+  \lowercase{\Field@boolkey{#1}}{readonly}%
+}
+\define@key{Field}{disabled}[true]{%
+  \lowercase{\Field@boolkey{#1}}{disabled}%
+}
+\define@key{Field}{password}[true]{%
+  \lowercase{\Field@boolkey{#1}}{password}%
+}
+\define@key{Field}{radio}[true]{%
+  \lowercase{\Field@boolkey{#1}}{radio}%
+}
+\define@key{Field}{combo}[true]{%
+  \lowercase{\Field@boolkey{#1}}{combo}%
+}
+\define@key{Field}{popdown}[true]{%
+  \lowercase{\Field@boolkey{#1}}{popdown}%
+}
+\define@key{Field}{accesskey}{%
+  \Field@addtoks{accesskey}{#1}%
+}
+\define@key{Field}{tabkey}{%
+  \Field@addtoks{tabkey}{#1}%
+}
+\define@key{Field}{name}{%
+  \def\Fld@name{#1}%
+}
+\define@key{Field}{width}{%
+  \def\Fld@width{#1}%
+  \Field@Width#1\setbox0=\hbox{m}%
+}
+\define@key{Field}{maxlen}{%
+  \def\Fld@maxlen{#1}%
+}
+\define@key{Field}{menulength}{%
+  \Fld@menulength=#1\relax
+}
+\define@key{Field}{height}{%
+  \def\Fld@height{#1}%
+}
+\define@key{Field}{charsize}{%
+  \Fld@charsize#1%
+}
+\define@key{Field}{fillcolor}{%
+  \def\Fld@fillcolor{#1}%
+}
+\define@key{Field}{bordercolor}{%
+  \def\Fld@bordercolor{#1}%
+}
+\define@key{Field}{color}{%
+  \def\Fld@color{#1}%
+}
+\define@key{Field}{borderwidth}{%
+  \def\Fld@borderwidth{#1}%
+}
+\define@key{Field}{borderstyle}{%
+  \def\Fld@borderstyle{#1}%
+}
+\define@key{Field}{bordersep}{%
+  \def\Fld@bordersep{#1}%
+}
+\define@key{Field}{default}{%
+  \def\Fld@default{#1}%
+}
+\define@key{Field}{align}{%
+  \def\Fld@align{#1}%
+}
+\define@key{Field}{value}{%
+  \def\Fld@value{#1}%
+}
+\define@key{Field}{backgroundcolor}{%
+  \def\Fld@bcolor{#1}%
+}
+\define@key{Field}{checkboxsymbol}{%
+  \def\Fld@cbsymbol{#1}%
+}
+\def\Fld@format@code{}
+\def\Fld@validate@code{}
+\def\Fld@calculate@code{}
+\def\Fld@keystroke@code{}
+\define@key{Field}{keystroke}{%
+  \def\Fld@keystroke@code{#1}%
+}
+\define@key{Field}{format}{%
+  \def\Fld@format@code{#1}%
+}
+\define@key{Field}{validate}{%
+  \def\Fld@validate@code{#1}%
+}
+\define@key{Field}{calculate}{%
+  \def\Fld@calculate@code{#1}%
+}
+\define@key{Field}{onfocus}{%
+  \Field@addtoks{onfocus}{#1}%
+}
+\define@key{Field}{onblur}{%
+  \Field@addtoks{onblur}{#1}%
+}
+\define@key{Field}{onselect}{%
+  \Field@addtoks{onselect}{#1}%
+}
+\define@key{Field}{onchange}{%
+  \Field@addtoks{onchange}{#1}%
+}
+\define@key{Field}{onclick}{%
+  \def\Fld@onclick{#1}%
+  \Field@addtoks{onclick}{#1}%
+}
+\define@key{Field}{ondblclick}{%
+  \Field@addtoks{ondblclick}{#1}%
+}
+\define@key{Field}{onmousedown}{%
+  \Field@addtoks{onmousedown}{#1}%
+}
+\define@key{Field}{onmouseup}{%
+  \Field@addtoks{onmouseup}{#1}%
+}
+\define@key{Field}{onmouseover}{%
+  \Field@addtoks{onmouseover}{#1}%
+}
+\define@key{Field}{onmousemove}{%
+  \Field@addtoks{onmousemove}{#1}%
+}
+\define@key{Field}{onmouseout}{%
+  \Field@addtoks{onmouseout}{#1}%
+}
+\define@key{Field}{onkeypress}{%
+  \Field@addtoks{onkeypress}{#1}%
+}
+\define@key{Field}{onkeydown}{%
+  \Field@addtoks{onkeydown}{#1}%
+}
+\define@key{Field}{onkeyup}{%
+  \Field@addtoks{onkeyup}{#1}%
+}
+\DeclareRobustCommand\TextField{%
+  \@ifnextchar[{\@TextField}{\@TextField[]}%
+}
+\DeclareRobustCommand\ChoiceMenu{%
+  \@ifnextchar[{\@ChoiceMenu}{\@ChoiceMenu[]}%
+}
+\DeclareRobustCommand\CheckBox{%
+  \@ifnextchar[{\@CheckBox}{\@CheckBox[]}%
+}
+\DeclareRobustCommand\PushButton{%
+  \@ifnextchar[{\@PushButton}{\@PushButton[]}%
+}
+\DeclareRobustCommand\Gauge{%
+  \@ifnextchar[{\@Gauge}{\@Gauge[]}%
+}
+\DeclareRobustCommand\Submit{%
+  \@ifnextchar[{\@Submit}{\@Submit[]}%
+}
+\DeclareRobustCommand\Reset{%
+  \@ifnextchar[{\@Reset}{\@Reset[]}%
+}
+\def\LayoutTextField#1#2{% label, field
+  #1 #2%
+}
+\def\LayoutChoiceField#1#2{% label, field
+  #1 #2%
+}
+\def\LayoutCheckField#1#2{% label, field
+  #1 #2%
+}
+\def\LayoutPushButtonField#1{% button
+  #1%
+}
+\def\MakeRadioField#1#2{\vbox to #2{\hbox to #1{\hfill}\vfill}}
+\def\MakeCheckField#1#2{\vbox to #2{\hbox to #1{\hfill}\vfill}}
+\def\MakeTextField#1#2{\vbox to #2{\hbox to #1{\hfill}\vfill}}
+\def\MakeChoiceField#1#2{\vbox to #2{\hbox to #1{\hfill}\vfill}}
+\def\MakeButtonField#1{%
+  \sbox0{%
+    \hskip\Fld@borderwidth bp#1\hskip\Fld@borderwidth bp%
+  }%
+  \@tempdima\ht0
+  \advance\@tempdima by \Fld@borderwidth bp
+  \advance\@tempdima by \Fld@borderwidth bp
+  \ht0\@tempdima
+  \@tempdima\dp0
+  \advance\@tempdima by \Fld@borderwidth bp
+  \advance\@tempdima by \Fld@borderwidth bp
+  \dp0\@tempdima
+  \box0\relax
+}
+\def\DefaultHeightofSubmit{14pt}
+\def\DefaultWidthofSubmit{2cm}
+\def\DefaultHeightofReset{14pt}
+\def\DefaultWidthofReset{2cm}
+\def\DefaultHeightofCheckBox{\baselineskip}
+\def\DefaultWidthofCheckBox{\baselineskip}
+\def\DefaultHeightofChoiceMenu{\baselineskip}
+\def\DefaultWidthofChoiceMenu{\baselineskip}
+\def\DefaultHeightofText{\baselineskip}
+\def\DefaultWidthofText{3cm}
+\ifHy@figures
+  \Hy@Info{Hyper figures ON}
+\else
+  \Hy@Info{Hyper figures OFF}
+\fi
+\ifHy@nesting
+  \Hy@Info{Link nesting ON}
+\else
+  \Hy@Info{Link nesting OFF}
+\fi
+\ifHy@hyperindex
+  \Hy@Info{Hyper index ON}
+\else
+  \Hy@Info{Hyper index OFF}
+\fi
+\ifHy@backref
+  \Hy@Info{backreferencing ON}
+\else
+  \Hy@Info{backreferencing OFF}
+\fi
+\ifHy@colorlinks
+  \Hy@Info{Link coloring ON}
+\else
+  \Hy@Info{Link coloring OFF}
+\fi
+\edef\hyper@hash{\string#}
+\edef\hyper@tilde{\string~}
+\edef\hyper@quote{\string"}
+\let\@currentHref\@empty
+\AfterBeginDocument{%
+  \Hy@pdfstringtrue
+  \PDF@SetupDoc
+  \let\PDF@SetupDoc\@empty
+  \Hy@DisableOption{4}%
+  \Hy@DisableOption{pdfpagescrop}%
+  \Hy@DisableOption{pdfpagemode}%
+  \Hy@DisableOption{pdfstartview}%
+  \Hy@DisableOption{pdfstartpage}%
+  \Hy@DisableOption{pdftoolbar}%
+  \Hy@DisableOption{pdfmenubar}%
+  \Hy@DisableOption{pdfwindowui}%
+  \Hy@DisableOption{pdffitwindow}%
+  \Hy@DisableOption{pdfcenterwindow}%
+  \Hy@DisableOption{pdfpagelayout}%
+  \Hy@DisableOption{baseurl}%
+  \ifHy@texht\else\hyper@anchorstart{Doc-Start}\hyper@anchorend\fi
+  \Hy@pdfstringfalse
+}
+\def\NoHyper{%
+  \def\hyper@link@[##1]##2##3##4{##4}%
+  \def\hyper@@anchor##1{}%
+  \global\let\hyper@livelink\hyper@link
+  \gdef\hyper@link##1##2##3{##3}%
+  \def\hyper@anchorstart##1{}%
+  \let\hyper@anchorend\@empty
+  \def\hyper@linkstart##1##2{}%
+  \let\hyper@linkend\@empty
+  \def\hyper@linkurl##1##2{##1}%
+  \def\hyper@linkfile##1##2##3{##1}%
+  \let\Hy@backout\@gobble
+}
+\def\stop@hyper{%
+  \def\hyper@link@[##1]##2##3##4{##4}%
+  \let\Hy@backout\@gobble
+  \def\hyper@@anchor##1{}%
+  \def\hyper@link##1##2##3{##3}%
+  \def\hyper@anchorstart##1{}%
+  \let\hyper@anchorend\@empty
+  \def\hyper@linkstart##1##2{}%
+  \let\hyper@linkend\@empty
+  \def\hyper@linkurl##1##2{##1}%
+  \def\hyper@linkfile##1##2##3{##1}%
+}
+\def\endNoHyper{%
+  \global\let\hyper@link\hyper@livelink
+}
+\AfterBeginDocument{%
+  \if@filesw
+   \ifHy@typexml
+     \immediate\closeout\@mainaux
+     \immediate\openout\@mainaux\jobname.aux
+     \immediate\write\@auxout{<relaxxml>\relax}%
+   \fi
+   \immediate\write\@auxout{%
+      \string\ifx\string\hyper@anchor\string\@undefined^^J%
+        \global\let\string\oldcontentsline\string\contentsline^^J%
+        \gdef\string\contentsline%
+          \string#1\string#2\string#3\string#4{%
+          \string\oldcontentsline%
+            {\string#1}{\string#2}{\string#3}}^^J%
+        \global\let\string\oldnewlabel\string\newlabel^^J%
+        \gdef\string\newlabel\string#1\string#2{%
+           \string\newlabelxx{\string#1}\string#2}^^J%
+        \gdef\string\newlabelxx%
+           \string#1\string#2\string#3\string#4\string#5\string#6{%
+           \string\oldnewlabel{\string#1}{{\string#2}{\string#3}}}^^J%
+        \string\AtEndDocument{%
+          \let\string\contentsline\string\oldcontentsline^^J%
+          \let\string\newlabel\string\oldnewlabel}^^J%
+      \string\else^^J%
+        \global\let\string\hyper@last\relax^^J%
+      \string\fi^^J%
+    }%
+  \fi
+  \ifx\hyper@last\@undefined
+    \def\@starttoc#1{%
+      \begingroup
+        \makeatletter
+        \IfFileExists{\jobname.#1}{%
+          \Hy@WarningNoLine{%
+            old #1 file detected, not used; run LaTeX again%
+          }%
+        }{}%
+        \if@filesw
+          \expandafter\newwrite\csname tf@#1\endcsname
+          \immediate\openout\csname tf@#1\endcsname \jobname.#1\relax
+        \fi
+        \@nobreakfalse
+      \endgroup
+    }%
+    \def\newlabel#1#2{\@newl@bel r{#1}{#2{}{}{}{}}}%
+  \fi
+}
+\ifHy@pagelabels
+  \def\thispdfpagelabel#1{%
+    \gdef\HyPL@thisLabel{#1}%
+  }
+  \global\let\HyPL@thisLabel\relax
+  \def\HyPL@Labels{}
+  \newcount\Hy@abspage
+  \Hy@abspage=0
+  \def\HyPL@LastType{init}%
+  \def\HyPL@LastNumber{0}%
+  \def\HyPL@LastPrefix{}%
+  \def\HyPL@arabic{D}%
+  \def\HyPL@Roman{R}%
+  \def\HyPL@roman{r}%
+  \def\HyPL@Alph{A}%
+  \def\HyPL@alph{a}%
+  \def\HyPL@EveryPage{%
+    \begingroup
+      \ifx\HyPL@thisLabel\relax
+        \let\HyPL@page\thepage
+      \else
+        \let\HyPL@page\HyPL@thisLabel
+        \global\let\HyPL@thisLabel\relax
+      \fi
+      \let\HyPL@Type\relax
+      \ifnum\the\c@page>0
+        \expandafter\HyPL@CheckThePage\HyPL@page\@nil
+      \fi
+      \let\Hy@temp Y%
+      \ifx\HyPL@Type\HyPL@LastType
+      \else
+        \let\Hy@temp N%
+      \fi
+      \ifx\HyPL@Type\relax
+         \pdfstringdef\HyPL@Prefix{\HyPL@page}%
+      \else
+         \pdfstringdef\HyPL@Prefix\HyPL@Prefix
+      \fi
+      \ifx\HyPL@Prefix\HyPL@LastPrefix
+      \else
+        \let\Hy@temp N%
+      \fi
+      \if Y\Hy@temp
+        \advance\c@page by -1
+        \ifnum\HyPL@LastNumber=\the\c@page\relax
+        \else
+          \let\Hy@temp N%
+        \fi
+        \Hy@StepCount\c@page
+      \fi
+      \if N\Hy@temp
+        \ifx\HyPL@Type\relax
+          \HyPL@StorePageLabel{/P (\HyPL@Prefix)}%
+        \else
+          \HyPL@StorePageLabel{%
+            \ifx\HyPL@Prefix\@empty
+            \else
+              /P (\HyPL@Prefix)
+            \fi
+            /S /\csname HyPL\HyPL@Type\endcsname
+            \ifnum\the\c@page=1
+            \else
+              \space/St \the\c@page
+            \fi
+          }%
+        \fi
+      \fi
+      \xdef\HyPL@LastNumber{\the\c@page}%
+      \global\let\HyPL@LastType\HyPL@Type
+      \global\let\HyPL@LastPrefix\HyPL@Prefix
+    \endgroup
+    \Hy@GlobalStepCount\Hy@abspage
+  }
+  \def\HyPL@CheckThePage#1\@nil{%
+    \HyPL@@CheckThePage{#1}#1\csname\endcsname\c@page\@nil
+  }
+  \def\HyPL@@CheckThePage#1#2\csname#3\endcsname\c@page#4\@nil{%
+    \def\Hy@tempa{#4}%
+    \def\Hy@tempb{\csname\endcsname\c@page}%
+    \ifx\Hy@tempa\Hy@tempb
+      \expandafter\ifx\csname HyPL#3\endcsname\relax
+      \else
+        \def\HyPL@Type{#3}%
+        \def\HyPL@Prefix{#2}%
+      \fi
+    \else
+      \begingroup
+        \let\Hy@next\endgroup
+        \let\HyPL@found\@undefined
+        \def\arabic{\HyPL@Format{arabic}}%
+        \def\Roman{\HyPL@Format{Roman}}%
+        \def\roman{\HyPL@Format{roman}}%
+        \def\Alph{\HyPL@Format{Alph}}%
+        \def\alph{\HyPL@Format{alph}}%
+        \protected@edef\Hy@temp{#1}%
+        \ifx\HyPL@found\relax
+          \toks@\expandafter{\Hy@temp}%
+          \edef\Hy@next{\endgroup
+            \noexpand\HyPL@@@CheckThePage\the\toks@
+               \noexpand\HyPL@found\relax\noexpand\@nil
+          }%
+        \fi
+      \Hy@next
+    \fi
+  }
+  \def\HyPL@Format#1#2{%
+    \ifx\HyPL@found\@undefined
+      \expandafter\ifx\csname c@#2\endcsname\c@page
+        \expandafter\noexpand\csname HyPL@found\endcsname{#1}%
+      \else
+        \expandafter\noexpand\csname#1\endcsname{#2}%
+      \fi
+    \else
+      \expandafter\noexpand\csname#1\endcsname{#2}%
+    \fi
+  }
+  \def\HyPL@@@CheckThePage#1\HyPL@found#2#3\@nil{%
+    \def\Hy@tempa{#3}%
+    \def\Hy@tempb{\HyPL@found\relax}%
+    \ifx\Hy@tempa\Hy@tempb
+      \def\HyPL@Type{@#2}%
+      \def\HyPL@Prefix{#1}%
+    \fi
+  }
+  \providecommand*{\HyPL@StorePageLabel}[1]{}
+  \def\HyPL@Useless{0 << /S /D >> }%
+  \def\HyPL@SetPageLabels{%
+    \ifx\HyPL@Labels\@empty
+    \else
+      \ifx\HyPL@Labels\HyPL@Useless
+      \else
+        \Hy@PutCatalog{/PageLabels << /Nums [\HyPL@Labels] >>}%
+      \fi
+    \fi
+  }
+\else
+  \let\HyPL@EveryPage\@empty
+\fi
+\Hy@DisableOption{pdfpagelabels}
+\MaybeStopEarly
+\newcommand\theHequation{\theHsection.\arabic{equation}}
+\@ifundefined{thepart}{}{\newcommand\theHpart{\arabic{part}}}
+\@ifundefined{thechapter}{%
+  \newcommand\theHsection    {\arabic{section}}
+  \newcommand\theHfigure     {\arabic{figure}}
+  \newcommand\theHtable      {\arabic{table}}
+}{%
+  \newcommand\theHchapter    {\arabic{chapter}}
+  \newcommand\theHfigure     {\theHchapter.\arabic{figure}}
+  \newcommand\theHtable      {\theHchapter.\arabic{table}}
+  \newcommand\theHsection    {\theHchapter.\arabic{section}}
+}
+\newcommand\theHsubsection   {\theHsection.\arabic{subsection}}
+\newcommand\theHsubsubsection{\theHsubsection.\arabic{subsubsection}}
+\newcommand\theHparagraph    {\theHsubsubsection.\arabic{paragraph}}
+\newcommand\theHsubparagraph {\theHparagraph.\arabic{subparagraph}}
+\newcommand\theHtheorem      {\theHsection.\arabic{theorem}}
+\newcommand\theHthm          {\theHsection.\arabic{thm}}
+\let\H@item\item
+\newcounter{Item}
+\def\theHItem{\arabic{Item}}
+\def\item{%
+  \@hyper@itemfalse
+  \if@nmbrlist\@hyper@itemtrue\fi
+  \H@item
+}
+\newcommand\theHenumi     {\theHItem}
+\newcommand\theHenumii    {\theHItem}
+\newcommand\theHenumiii   {\theHItem}
+\newcommand\theHenumiv    {\theHItem}
+\newcommand\theHHfootnote {\arabic{Hfootnote}}
+\newcommand\theHmpfootnote{\arabic{mpfootnote}}
+\let\theHHmpfootnote\theHHfootnote
+\let\H@refstepcounter\refstepcounter
+\edef\name@of@eq{equation}%
+\edef\name@of@slide{slide}%
+\newif\if@hyper@item
+\newif\if@skiphyperref
+\@hyper@itemfalse
+\@skiphyperreffalse
+\def\refstepcounter#1{%
+  \H@refstepcounter{#1}%
+  \edef\This@name{#1}%
+  \ifx\This@name\name@of@slide
+  \else
+    \if@skiphyperref
+    \else
+      \if@hyper@item
+        \stepcounter{Item}%
+        \hyper@refstepcounter{Item}%
+      \else
+        \hyper@refstepcounter{#1}%
+      \fi
+    \fi
+  \fi
+}
+\@ifpackageloaded{amsmath}{}{\newif\ifmeasuring@\measuring@false}
+\def\hyper@refstepcounter#1{%
+  \edef\This@name{#1}%
+  \ifx\This@name\name@of@eq
+    \make@stripped@name{\theequation}%
+    \let\theHequation\newname
+  \fi
+  \@ifundefined{theH#1}{%
+    \expandafter\def\csname theH#1\endcsname{\arabic{#1}}%
+  }{}%
+  \hyper@makecurrent{#1}%
+  \ifmeasuring@
+  \else
+    \Hy@raisedlink{%
+      \hyper@anchorstart{\@currentHref}\hyper@anchorend
+    }%
+  \fi
+}
+\def\Hy@chapterstring{chapter}
+\def\Hy@appendixstring{appendix}
+\def\Hy@chapapp{\Hy@chapterstring}
+\let\Hy@org@appendix\appendix
+\def\appendix{%
+  \Hy@org@appendix
+  \@ifundefined{chapter}%
+    {\gdef\theHsection{\Alph{section}}}%
+    {\gdef\theHchapter{\Alph{chapter}}}%
+  \xdef\Hy@chapapp{\Hy@appendixstring}%
+}
+\def\hyper@makecurrent#1{%
+  \begingroup
+    \edef\Hy@param{#1}%
+    \ifx\Hy@param\Hy@chapterstring
+      \let\Hy@param\Hy@chapapp
+    \fi
+    \ifHy@hypertexnames
+      \ifHy@naturalnames
+        \let\textlatin\@firstofone
+        \xdef\@currentHlabel{\csname the#1\endcsname}%
+      \else
+        \xdef\@currentHlabel{\csname theH#1\endcsname}%
+      \fi
+      \xdef\@currentHref{%
+        \Hy@param.\expandafter\strip@prefix\meaning\@currentHlabel
+      }%
+    \else
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \xdef\@currentHref{\Hy@param.\the\Hy@linkcounter}%
+    \fi
+  \endgroup
+}
+\@ifpackageloaded{fancyvrb}{%
+  \def\FV@StepLineNo{%
+    \FV@SetLineNo
+    \def\FV@StepLineNo{\H@refstepcounter{FancyVerbLine}}%
+    \FV@StepLineNo
+  }%
+}{}
+\AtBeginDocument{%
+  \@ifpackageloaded{lastpage}{%
+    \ifHy@pageanchor
+    \else
+      \Hy@WarningNoLine{%
+        The \string\pageref{LastPage} link doesn't work\MessageBreak
+        with disabled option `pageanchor'%
+      }%
+    \fi
+    \def\lastpage@putlabel{%
+      \addtocounter{page}{-1}%
+      \if@filesw
+        \begingroup
+          \ifHy@pageanchor
+            \ifHy@hypertexnames
+              \ifHy@plainpages
+                \def\Hy@temp{\arabic{page}}%
+              \else
+                \let\textlatin\@firstofone
+                \edef\Hy@temp{\thepage}%
+              \fi
+            \else
+              \def\Hy@temp{\the\Hy@pagecounter}%
+            \fi
+          \fi
+          \immediate\write\@auxout{%
+            \string\newlabel
+              {LastPage}{{}{\thepage}{}{%
+                \ifHy@pageanchor page.\Hy@temp\fi}{}}%
+          }%
+        \endgroup
+      \fi
+      \addtocounter{page}{1}%
+    }%
+  }{}%
+}
+\newcommand*{\hypergetpageref}[1]{%
+  \expandafter\Hy@getpageref\csname r@#1\endcsname{#1}%
+}
+\def\Hy@getpageref#1#2{%
+  \ifx#1\relax
+    0%
+    \protect\G@refundefinedtrue
+    \@latex@warning{Reference `#2' on page \thepage\space
+      undefined%
+    }%
+  \else
+    \expandafter\Hy@GetSecondArg#1\@nil
+  \fi
+}
+\long\def\Hy@GetSecondArg#1#2#3\@nil{#2}
+\newcommand*{\hypergetref}[1]{%
+  \expandafter\Hy@getref\csname r@#1\endcsname{#1}%
+}
+\def\Hy@getref#1#2{%
+  \ifx#1\relax
+    ??%
+    \protect\G@refundefinedtrue
+    \@latex@warning{Reference `#2' on page \thepage\space
+      undefined%
+    }%
+  \else
+    \expandafter\@car#1\@nil
+  \fi
+}
+\@ifpackageloaded{ifthen}{%
+  \let\HyOrg@ifthenelse\ifthenelse
+  \def\ifthenelse{%
+    \let\begingroup\Hy@TE@begingroup
+    \HyOrg@ifthenelse
+  }%
+  \let\HyOrg@begingroup\begingroup
+  \def\Hy@TE@begingroup{%
+    \let\begingroup\HyOrg@begingroup
+    \begingroup
+    \let\ref\hypergetref
+    \let\pageref\hypergetpageref
+  }%
+}{}
+\@ifpackageloaded{titlesec}{%
+  \def\ttl@Hy@steplink#1{%
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{#1*.\the\Hy@linkcounter}%
+    \def\ttl@Hy@saveanchor{%
+      \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    }%
+  }%
+  \def\ttl@Hy@refstepcounter#1{%
+    \let\ttl@b\Hy@raisedlink
+    \def\Hy@raisedlink##1{\def\ttl@Hy@saveanchor{\Hy@raisedlink{##1}}}%
+    \refstepcounter{#1}%
+    \let\Hy@raisedlink\ttl@b
+  }%
+}{}
+\@ifpackageloaded{titletoc}{%
+  \def\ttl@gobblecontents#1#2#3#4{\ignorespaces}%
+}{}
+\let\new@refstepcounter\refstepcounter
+\let\H@equation\equation
+\let\H@endequation\endequation
+\@ifpackageloaded{amsmath}{}{%
+  \def\equation{%
+  \let\refstepcounter\H@refstepcounter
+  \H@equation
+  \make@stripped@name{\theequation}%
+  \let\theHequation\newname
+  \hyper@makecurrent{equation}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}}%
+  \let\refstepcounter\new@refstepcounter}%
+  \def\endequation{\Hy@raisedlink{\hyper@anchorend}\H@endequation}%
+}
+\newif\if@eqnstar
+\@eqnstarfalse
+\let\H@eqnarray\eqnarray
+\let\H@endeqnarray\endeqnarray
+\def\eqnarray{%
+  \let\Hy@reserved@a\relax
+  \def\@currentHref{}%
+  \H@eqnarray
+  \if@eqnstar
+  \else
+    \ifx\\\@currentHref\\%
+    \else
+      \make@stripped@name{\theequation}%
+      \let\theHequation\newname
+      \hyper@makecurrent{equation}%
+      \hyper@anchorstart{\@currentHref}{}\hyper@anchorend
+    \fi
+  \fi
+}
+\def\endeqnarray{%
+  \H@endeqnarray
+}
+\@namedef{eqnarray*}{%
+  \def\@eqncr{\nonumber\@seqncr}\@eqnstartrue\eqnarray
+}
+\@namedef{endeqnarray*}{%
+  \nonumber\endeqnarray\@eqnstarfalse
+}
+\@ifundefined{subeqnarray}{}{%
+  \let\H@subeqnarray\subeqnarray
+  \let\H@endsubeqnarray\endsubeqnarray
+  \def\subeqnarray{%
+    \let\Hy@reserved@a\relax
+    \H@subeqnarray
+    \make@stripped@name{\theequation}%
+    \let\theHequation\newname
+    \hyper@makecurrent{equation}%
+    \hyper@anchorstart{\@currentHref}{}\hyper@anchorend
+  }%
+  \def\endsubeqnarray{%
+    \H@endsubeqnarray
+  }%
+  \newcommand\theHsubequation{\theHequation\alph{subequation}}%
+}
+\def\make@stripped@name#1{%
+  \begingroup
+    \escapechar\m@ne
+    \global\let\newname\@empty
+    \protected@edef\Hy@tempa{#1}%
+    \edef\@tempb{%
+      \noexpand\@tfor\noexpand\Hy@tempa:=%
+        \expandafter\strip@prefix\meaning\Hy@tempa
+    }%
+    \@tempb\do{%
+      \if{\Hy@tempa\else
+        \if}\Hy@tempa\else
+          \xdef\newname{\newname\Hy@tempa}%
+        \fi
+      \fi
+    }%
+  \endgroup
+}
+\@ifpackageloaded{tabularx}{\Hy@hyperfootnotesfalse}{}
+\ifHy@hyperfootnotes
+  \newcounter{Hfootnote}
+  \let\H@@footnotetext\@footnotetext
+  \let\H@@footnotemark\@footnotemark
+  \def\@xfootnotenext[#1]{%
+    \begingroup
+      \csname c@\@mpfn\endcsname #1\relax
+      \unrestored@protected@xdef\@thefnmark{\thempfn}%
+    \endgroup
+    \ifx\@footnotetext\@mpfootnotetext
+      \expandafter\H@@mpfootnotetext
+    \else
+      \expandafter\H@@footnotetext
+    \fi
+  }%
+  \def\@xfootnotemark[#1]{%
+    \begingroup
+      \c@footnote #1\relax
+      \unrestored@protected@xdef\@thefnmark{\thefootnote}%
+    \endgroup
+    \H@@footnotemark
+  }%
+  \let\H@@mpfootnotetext\@mpfootnotetext
+  \long\def\@mpfootnotetext#1{%
+    \H@@mpfootnotetext{%
+      \ifHy@nesting
+        \hyper@@anchor{\@currentHref}{#1}%
+      \else
+        \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#1%
+      \fi
+    }%
+  }%
+  \long\def\@footnotetext#1{%
+    \H@@footnotetext{%
+      \ifHy@nesting
+        \hyper@@anchor{\@currentHref}{#1}%
+      \else
+        \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#1%
+      \fi
+    }%
+  }%
+  \def\@footnotemark{%
+    \leavevmode
+    \ifhmode\edef\@x@sf{\the\spacefactor}\nobreak\fi
+    \H@refstepcounter{Hfootnote}%
+    \hyper@makecurrent{Hfootnote}%
+    \hyper@linkstart{link}{\@currentHref}%
+    \@makefnmark
+    \hyper@linkend
+    \ifhmode\spacefactor\@x@sf\fi
+    \relax
+  }%
+  \let\HyOrg@maketitle\maketitle
+  \def\maketitle{%
+    \let\Hy@saved@footnotemark\@footnotemark
+    \let\Hy@saved@footnotetext\@footnotetext
+    \let\@footnotemark\H@@footnotemark
+    \let\@footnotetext\H@@footnotetext
+    \HyOrg@maketitle
+    \ifx\@footnotemark\H@@footnotemark
+      \let\@footnotemark\Hy@saved@footnotemark
+    \fi
+    \ifx\@footnotetext\H@@footnotetext
+      \let\@footnotetext\Hy@saved@footnotetext
+    \fi
+  }%
+  \def\realfootnote{%
+    \@ifnextchar[\@xfootnote{%
+      \stepcounter{\@mpfn}%
+      \protected@xdef\@thefnmark{\thempfn}%
+      \H@@footnotemark\H@@footnotetext
+    }%
+  }%
+\fi
+\Hy@DisableOption{hyperfootnotes}
+\def\caption{%
+  \ifx\@captype\@undefined
+    \@latex@error{\noexpand\caption outside float}\@ehd
+    \expandafter\@gobble
+  \else
+    \H@refstepcounter\@captype
+    \expandafter\@firstofone
+  \fi
+  {\@dblarg{\@caption\@captype}}%
+}
+\long\def\@caption#1[#2]#3{%
+  \hyper@makecurrent{\@captype}%
+  \par\addcontentsline{\csname ext@#1\endcsname}{#1}{%
+    \protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}%
+  }%
+  \begingroup
+    \@parboxrestore
+    \if@minipage
+      \@setminipage
+    \fi
+    \normalsize
+    \@makecaption{\csname fnum@#1\endcsname}{%
+      \ignorespaces
+      \ifHy@nesting
+        \hyper@@anchor{\@currentHref}{#3}%
+      \else
+        \hyper@@anchor{\@currentHref}{\relax}#3%
+      \fi
+    }%
+    \par
+  \endgroup
+}
+\def\hyper@natlinkstart#1{%
+  \Hy@backout{#1}%
+  \hyper@linkstart{cite}{cite.#1}%
+  \def\hyper@nat@current{#1}%
+}
+\def\hyper@natlinkend{%
+  \hyper@linkend
+}
+\def\hyper@natlinkbreak#1#2{%
+  \hyper@linkend#1\hyper@linkstart{cite}{cite.#2}%
+}
+\def\hyper@natanchorstart#1{%
+  \hyper@anchorstart{cite.#1}%
+}
+\def\hyper@natanchorend{\hyper@anchorend}
+\@ifundefined{NAT@parse}{%
+  \def\bibcite#1#2{%
+    \@newl@bel{b}{#1}{\hyper@@link[cite]{}{cite.#1}{#2}}%
+  }%
+    \let\Hy@bibcite\bibcite
+    \begingroup
+      \@ifundefined{bbl@cite@choice}{}{%
+        \g@addto@macro\bbl@cite@choice{%
+          \let\bibcite\Hy@bibcite
+        }%
+      }%
+    \endgroup
+  \providecommand{\@BIBLABEL}{\@biblabel}%
+  \def\@lbibitem[#1]#2{%
+    \@skiphyperreftrue
+    \H@item[\hyper@anchorstart{cite.#2}%
+    \@BIBLABEL{#1}\hyper@anchorend\hfill]%
+    \@skiphyperreffalse
+    \if@filesw
+      \begingroup
+        \let\protect\noexpand
+        \immediate\write\@auxout{%
+          \string\bibcite{#2}{#1}%
+        }%
+      \endgroup
+    \fi
+    \ignorespaces
+  }%
+  \def\@bibitem#1{%
+    \@skiphyperreftrue\H@item\@skiphyperreffalse
+    \hyper@anchorstart{cite.#1}\relax\hyper@anchorend
+    \if@filesw
+      \begingroup
+        \let\protect\noexpand
+        \immediate\write\@auxout{%
+          \string\bibcite{#1}{\the\value{\@listctr}}%
+        }%
+      \endgroup
+    \fi
+    \ignorespaces
+  }%
+}{}
+\@ifclassloaded{revtex}{%
+  \Hy@Info{*** compatibility with revtex **** }%
+  \def\revtex@checking#1#2{%
+    \expandafter\let\expandafter\T@temp\csname b@#1\endcsname
+    \expandafter\def\csname b@#1\endcsname{#2}%
+    \@SetMaxRnhefLabel{#1}%
+    \expandafter\let\csname b@#1\endcsname\T@temp
+  }%
+  \@ifundefined{@CITE}{\def\@CITE{\@cite}}{}%
+  \def\@CITEX[#1]#2{%
+    \let\@citea\@empty
+    \leavevmode
+    \unskip
+    $^{%
+      \scriptstyle
+      \@CITE{%
+        \@for\@citeb:=#2\do{%
+          \@citea
+          \def\@citea{,\penalty\@m\ }%
+          \edef\@citeb{\expandafter\@firstofone\@citeb}%
+          \if@filesw
+            \immediate\write\@auxout{\string\citation{\@citeb}}%
+          \fi
+          \@ifundefined{b@\@citeb}{%
+            \mbox{\reset@font\bfseries ?}%
+            \G@refundefinedtrue
+            \@latex@warning{%
+              Citation `\@citeb' on page \thepage \space undefined%
+            }%
+          }{%
+            {\csname b@\@citeb\endcsname}%
+          }%
+        }%
+      }{#1}%
+    }$%
+  }%
+  \def\@citex[#1]#2{%
+    \let\@citea\@empty
+    \@cite{%
+      \@for\@citeb:=#2\do{%
+        \@citea
+        \def\@citea{,\penalty\@m\ }%
+        \edef\@citeb{\expandafter\@firstofone\@citeb}%
+        \if@filesw
+          \immediate\write\@auxout{\string\citation{\@citeb}}%
+        \fi
+        \@ifundefined{b@\@citeb}{%
+          \mbox{\reset@font\bfseries ?}%
+          \G@refundefinedtrue
+          \@latex@warning{%
+            Citation `\@citeb' on page \thepage \space undefined%
+          }%
+        }{%
+          \hbox{\csname b@\@citeb\endcsname}%
+        }%
+      }%
+    }{#1}%
+  }%
+}{}
+\@ifpackageloaded{harvard}{%
+  \Hy@Info{*** compatibility with harvard **** }%
+  \Hy@raiselinksfalse
+  \def\harvardcite#1#2#3#4{%
+    \global\@namedef{HAR@fn@#1}{\hyper@@link[cite]{}{cite.#1}{#2}}%
+    \global\@namedef{HAR@an@#1}{\hyper@@link[cite]{}{cite.#1}{#3}}%
+    \global\@namedef{HAR@yr@#1}{\hyper@@link[cite]{}{cite.#1}{#4}}%
+    \global\@namedef{HAR@df@#1}{\csname HAR@fn@#1\endcsname}%
+  }%
+  \def\HAR@citetoaux#1{%
+    \if@filesw\immediate\write\@auxout{\string\citation{#1}}\fi%
+    \ifHy@backref
+      \ifx\@empty\@currentlabel
+      \else
+        \@bsphack
+        \protected@write\@auxout{}{%
+          \string\@writefile{brf}{%
+            \string\backcite{#1}{%
+              {\thepage}{\@currentlabel}{\@currentHref}%
+            }%
+          }%
+        }%
+        \@esphack
+      \fi
+    \fi
+  }%
+  \def\harvarditem{%
+    \@ifnextchar[{\@harvarditem}{\@harvarditem[\null]}%
+  }%
+  \def\@harvarditem[#1]#2#3#4#5\par{%
+    \item[]%
+    \hyper@anchorstart{cite.#4}\relax\hyper@anchorend
+    \if@filesw
+      \begingroup
+        \def\protect##1{\string ##1\space}%
+        \ifthenelse{\equal{#1}{\null}}%
+          {\def\next{{#4}{#2}{#2}{#3}}}%
+          {\def\next{{#4}{#2}{#1}{#3}}}%
+        \immediate\write\@auxout{\string\harvardcite\codeof\next}%
+     \endgroup
+    \fi
+    \protect\hspace*{-\labelwidth}%
+    \protect\hspace*{-\labelsep}%
+    \ignorespaces
+    #5%
+    \ifHy@backref
+      \newblock
+      \backref{\csname br@#4\endcsname}%
+    \fi
+    \par
+  }%
+  \long\def\HAR@checkcitations#1#2#3#4{%
+    \def\HAR@tempa{\hyper@@link[cite]{}{cite.#1}{#2}}%
+    \expandafter\ifx\csname HAR@fn@#1\endcsname\HAR@tempa
+      \def\HAR@tempa{\hyper@@link[cite]{}{cite.#1}{#3}}%
+      \expandafter\ifx\csname HAR@an@#1\endcsname\HAR@tempa
+        \def\HAR@tempa{\hyper@@link[cite]{}{cite.#1}{#4}}%
+        \expandafter\ifx\csname HAR@yr@#1\endcsname\HAR@tempa
+        \else
+          \@tempswatrue
+        \fi
+      \else
+        \@tempswatrue
+      \fi
+    \else
+      \@tempswatrue
+    \fi
+  }%
+}{}
+\@ifpackageloaded{chicago}{%
+  \def\citeN{%
+    \def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1}%
+    \def\citeauthoryear##1##2##3{##1 (##3\@cite@opt)}%
+    \@citedata@opt
+  }%
+  \def\shortciteN{%
+    \def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1}%
+    \def\citeauthoryear##1##2##3{##2 (##3\@cite@opt)}%
+    \@citedata@opt
+  }%
+  \def\@citedata@opt{%
+    \let\@cite@opt\@empty
+    \@ifnextchar [{%
+      \@tempswatrue
+      \@citedatax@opt
+    }{%
+      \@tempswafalse
+      \@citedatax[]%
+    }%
+  }%
+  \def\@citedatax@opt[#1]{%
+    \def\@cite@opt{, #1}%
+    \@citedatax[{#1}]%
+  }
+}{}
+\def\@begindvi{%
+  \unvbox \@begindvibox
+  \Hy@begindvi
+  \global\let\@begindvi\Hy@begindvi
+}
+\def\Hy@begindvi{%
+  \ifHy@pageanchor
+    \@hyperfixhead
+  \fi
+  \HyPL@EveryPage
+}
+\def\pagenumbering#1{%
+  \global\c@page \@ne
+  \gdef\thepage{\csname @#1\endcsname\c@page}%
+}
+\let\HYPERPAGEANCHOR\hyperpageanchor
+\providecommand\hyper@pagetransition{}
+\providecommand\hyper@pageduration{}
+\providecommand\hyper@pagehidden{}
+\def\@hyperfixhead{%
+  \ifHy@hypertexnames
+    \ifHy@plainpages
+      \gdef\Hy@TempPageAnchor{\hyper@@anchor{page.\arabic{page}}}%
+    \else
+      \begingroup
+        \let\textlatin\@firstofone
+        \xdef\@the@H@page{\thepage}%
+      \endgroup
+      \gdef\Hy@TempPageAnchor{\hyper@@anchor{page.\@the@H@page}}%
+    \fi
+  \else
+    \Hy@GlobalStepCount\Hy@pagecounter
+    \gdef\Hy@TempPageAnchor{\hyper@@anchor{page.\the\Hy@pagecounter}}%
+  \fi
+  \let\H@old@thehead\@thehead
+  \if^\@thehead^%
+    \def\H@old@thehead{\hfil}%
+  \fi
+  \ifHy@texht
+    \def\@thehead{}%
+  \else
+    \ifHy@seminarslides
+      \begingroup
+        \let\leavevmode\relax
+        \Hy@TempPageAnchor\relax
+        \hyper@pagetransition
+        \hyper@pageduration
+        \hyper@pagehidden
+      \endgroup
+    \else
+      \def\@thehead{%
+        \Hy@TempPageAnchor\relax
+        \hyper@pagetransition
+        \hyper@pageduration
+        \hyper@pagehidden
+        \H@old@thehead
+      }%
+    \fi
+  \fi
+  \ifx\PDF@FinishDoc\@empty
+  \else
+    \PDF@FinishDoc
+    \gdef\PDF@FinishDoc{}%
+  \fi
+}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname chapter\endcsname\relax
+  \def\toclevel@part{0}
+\else
+  \def\toclevel@part{-1}
+\fi
+\def\toclevel@chapter{0}
+\def\toclevel@section{1}
+\def\toclevel@subsection{2}
+\def\toclevel@subsubsection{3}
+\def\toclevel@paragraph{4}
+\def\toclevel@subparagraph{5}
+\def\toclevel@figure{0}
+\def\toclevel@table{0}
+\@ifpackageloaded{listings}{%
+  \def\theHlstlisting{\thelstlisting}%
+  \def\toclevel@lstlisting{0}%
+}{}
+\@ifpackageloaded{listing}{%
+  \def\theHlisting{\thelisting}%
+  \def\toclevel@listing{0}%
+}{}
+\def\addcontentsline#1#2#3{% toc extension, type, tag
+  \begingroup
+    \let\label\@gobble
+    \let\textlatin\@firstofone
+    \ifx\@currentHref\@empty
+      \Hy@Warning{%
+        No destination for bookmark of \string\addcontentsline,%
+        \MessageBreak destination is added%
+      }%
+      \phantomsection
+    \fi
+    \expandafter\ifx\csname toclevel@#2\endcsname\relax
+      \Hy@WarningNoLine{bookmark level for unknown #2 defaults to 0}%
+      \def\Hy@toclevel{0}%
+    \else
+      \edef\Hy@toclevel{\csname toclevel@#2\endcsname}%
+    \fi
+    \Hy@writebookmark{\csname the#2\endcsname}%
+      {#3}%
+      {\@currentHref}%
+      {\Hy@toclevel}%
+      {#1}%
+    \ifHy@verbose
+      \typeout{pdftex: bookmark at \the\inputlineno:
+        {\csname the#2\endcsname}
+        {#3}
+        {\@currentHref}%
+        {\Hy@toclevel}%
+        {#1}%
+      }%
+    \fi
+    \addtocontents{#1}{%
+      \protect\contentsline{#2}{#3}{\thepage}{\@currentHref}%
+    }%
+  \endgroup
+}
+\def\contentsline#1#2#3#4{%
+  \ifx\\#4\\%
+    \csname l@#1\endcsname{#2}{#3}%
+  \else
+    \ifHy@linktocpage
+      \csname l@#1\endcsname{{#2}}{%
+        \hyper@linkstart{link}{#4}{#3}\hyper@linkend
+      }%
+    \else
+      \csname l@#1\endcsname{%
+        \hyper@linkstart{link}{#4}{#2}\hyper@linkend
+      }{#3}%
+    \fi
+  \fi
+}
+\let\H@definecounter\@definecounter
+\def\@definecounter#1{%
+  \H@definecounter{#1}%
+  \expandafter\def\csname theH#1\endcsname{\arabic{#1}}%
+}
+\let\H@newctr\@newctr
+\def\@newctr#1[#2]{%
+  \H@newctr#1[{#2}]%
+  \expandafter\def\csname theH#1\endcsname
+    {\csname the#2\endcsname.\arabic{#1}}%
+}
+\let\Hmake@df@tag@@\make@df@tag@@
+\def\make@df@tag@@#1{%
+  \Hmake@df@tag@@{#1}%
+  \Hy@GlobalStepCount\Hy@linkcounter
+  \xdef\@currentHref{AMS.\the\Hy@linkcounter}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\let\Hmake@df@tag@@@\make@df@tag@@@
+\def\make@df@tag@@@#1{%
+  \Hmake@df@tag@@@{#1}%
+  \Hy@GlobalStepCount\Hy@linkcounter
+  \xdef\@currentHref{AMS.\the\Hy@linkcounter}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\@ifpackagewith{hyperref}{pdftex}{%
+   \let\H@seteqlabel\@seteqlabel
+   \def\@seteqlabel#1{%
+     \H@seteqlabel{#1}%
+     \xdef\@currentHref{AMS.\the\Hy@linkcounter}%
+     \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+   }%
+}{}
+\@ifpackageloaded{amsmath}{%
+  \@ifpackagelater{amsmath}{1999/12/14}{%
+    \renewcommand*{\numberwithin}[3][\arabic]{%
+      \@ifundefined{c@#2}{\@nocounterr{#2}}{%
+        \@ifundefined{c@#3}{\@nocnterr{#3}}{%
+          \@addtoreset{#2}{#3}%
+          \@xp\xdef\csname the#2\endcsname{%
+            \@xp\@nx\csname the#3\endcsname .\@nx#1{#2}%
+          }%
+          \@xp\xdef\csname theH#2\endcsname{%
+            \@xp\@nx
+            \csname the\@ifundefined{theH#3}{}H#3\endcsname
+            .\@nx#1{#2}%
+          }%
+        }%
+      }%
+    }%
+  }{%
+    \Hy@WarningNoLine{%
+      \string\numberwithin\space of package `amsmath'
+      only fixed\MessageBreak
+      for version 2000/06/06 v2.12 or newer%
+    }%
+  }
+}{}
+\ifHy@figures
+  \let\Hy@Gin@setfile\Gin@setfile
+  \def\Gin@setfile#1#2#3{%
+    \hyperimage{#3}{\Hy@Gin@setfile{#1}{#2}{#3}}%
+  }
+\fi
+\Hy@DisableOption{hyperfigures}
+\ifHy@hyperindex
+  \def\HyInd@ParenLeft{(}%
+  \@ifpackageloaded{multind}{%
+    \let\HyInd@org@wrindex\@wrindex
+    \def\@wrindex#1#2{\HyInd@@wrindex{#1}#2||\\}%
+    \def\HyInd@@wrindex#1#2|#3|#4\\{%
+      \ifx\\#3\\%
+        \HyInd@org@wrindex{#1}{#2|hyperpage}%
+      \else
+        \def\Hy@temp@A{#3}%
+        \ifx\Hy@temp@A\HyInd@ParenLeft
+          \HyInd@org@wrindex{#1}{#2|#3hyperpage}%
+        \else
+          \HyInd@org@wrindex{#1}{#2|#3}%
+        \fi
+      \fi
+    }%
+  }{%
+    \def\@wrindex#1{\@@wrindex#1||\\}
+    \def\@@wrindex#1|#2|#3\\{%
+      \ifx\\#2\\%
+        \protected@write\@indexfile{}{%
+          \string\indexentry{#1|hyperpage}{\thepage}%
+        }%
+      \else
+        \def\Hy@temp@A{#2}%
+        \ifx\Hy@temp@A\HyInd@ParenLeft
+          \protected@write\@indexfile{}{%
+             \string\indexentry{#1|#2hyperpage}{\thepage}%
+          }%
+        \else
+          \protected@write\@indexfile{}{%
+            \string\indexentry{#1|#2}{\thepage}%
+          }%
+        \fi
+      \fi
+      \endgroup
+      \@esphack
+    }%
+  }%
+\fi
+\Hy@DisableOption{hyperindex}
+\def\hyperpage#1{\@hyperpage#1----\\}
+\def\@hyperpage#1--#2--#3\\{%
+  \ifx\\#2\\%
+    \@commahyperpage{#1}%
+  \else
+    \hyperlink{page.#1}{#1}--\hyperlink{page.#2}{#2}%
+  \fi
+}
+\def\@commahyperpage#1{\@@commahyperpage#1, ,\\}
+\def\@@commahyperpage#1, #2,#3\\{%
+  \ifx\\#2\\%
+    \hyperlink{page.#1}{#1}%
+  \else
+    \hyperlink{page.#1}{#1}, \hyperlink{page.#2}{#2}%
+  \fi
+}
+\@ifclassloaded{foils}{%
+  \providecommand*\ext@table{lot}%
+  \providecommand*\ext@figure{lof}%
+}{}
+\@ifclassloaded{seminar}{%
+  \Hy@seminarslidestrue\newcommand\theHslide{\arabic{slide}}%
+}{%
+  \Hy@seminarslidesfalse
+}
+\@ifpackageloaded{slidesec}{%
+  \newcommand\theHslidesection   {\arabic{slidesection}}%
+  \newcommand\theHslidesubsection{%
+    \theHslidesection.\arabic{slidesubsection}%
+  }%
+  \def\slide@heading[#1]#2{%
+    \H@refstepcounter{slidesection}%
+    \@addtoreset{slidesubsection}{slidesection}%
+    \addtocontents{los}{%
+      \protect\l@slide{\the\c@slidesection}{\ignorespaces#1}%
+        {\@SCTR}{slideheading.\theslidesection}%
+    }%
+    \def\Hy@tempa{#2}%
+    \ifx\Hy@tempa\@empty
+    \else
+      {%
+        \edef\@currentlabel{%
+          \csname p@slidesection\endcsname\theslidesection
+        }%
+        \makeslideheading{#2}%
+      }%
+    \fi
+    \gdef\theslideheading{#1}%
+    \gdef\theslidesubheading{}%
+    \ifHy@hypertexnames
+       \ifHy@naturalnames
+         \hyper@@anchor{slideheading.\theslidesection}{\relax}%
+         \Hy@writebookmark
+           {\theslidesection}%
+           {#1}%
+           {slideheading.\theslidesection}%
+           {1}%
+           {toc}%
+       \else
+         \hyper@@anchor{slideheading.\theHslidesection}{\relax}%
+         \Hy@writebookmark
+           {\theslidesection}%
+           {#1}%
+           {slideheading.\theHslidesection}%
+           {1}%
+           {toc}%
+       \fi
+    \else
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \hyper@@anchor{slideheading.\the\Hy@linkcounter}{\relax}%
+      \Hy@writebookmark
+        {\theslidesection}%
+        {#1}%
+        {slideheading.\the\Hy@linkcounter}%
+        {1}%
+        {toc}%
+    \fi
+  }%
+  \def\slide@subheading[#1]#2{%
+    \H@refstepcounter{slidesubsection}%
+    \addtocontents{los}{%
+      \protect\l@subslide{\the\c@slidesubsection}{\ignorespaces#1}%
+        {\@SCTR}{slideheading.\theslidesubsection}%
+    }%
+    \def\Hy@tempa{#2}%
+    \ifx\Hy@tempa\@empty
+    \else
+      {%
+        \edef\@currentlabel{%
+          \csname p@slidesubsection\endcsname\theslidesubsection
+        }%
+        \makeslidesubheading{#2}%
+      }%
+    \fi
+    \gdef\theslidesubheading{#1}%
+    \ifHy@hypertexnames
+      \ifHy@naturalnames
+        \hyper@@anchor{slideheading.\theslidesubsection}{\relax}%
+        \Hy@writebookmark
+          {\theslidesubsection}%
+          {#1}%
+          {slideheading.\theslidesubsection}%
+          {2}%
+          {toc}%
+      \else
+        \hyper@@anchor{slideheading.\theHslidesubsection}{\relax}%
+        \Hy@writebookmark
+          {\theslidesubsection}%
+          {#1}%
+          {slideheading.\theHslidesubsection}%
+          {2}%
+          {toc}%
+      \fi
+    \else
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \hyper@@anchor{slideheading.\the\Hy@linkcounter}{\relax}%
+      \Hy@writebookmark
+        {\theslidesubsection}%
+        {#1}%
+        {slideheading.\the\Hy@linkcounter}%
+        {1}%
+        {toc}%
+    \fi
+  }%
+  \providecommand{\listslidename}{List of Slides}%
+  \def\listofslides{%
+    \section*{%
+      \listslidename
+      \@mkboth{%
+        \expandafter\MakeUppercase\listslidename
+      }{%
+        \expandafter\MakeUppercase\listslidename
+      }%
+    }%
+    \def\l@slide##1##2##3##4{%
+      \slide@undottedcline{%
+        \slidenumberline{##3}{\hyperlink{##4}{##2}}%
+      }{}%
+    }%
+    \let\l@subslide\l@slide
+    \@startlos
+  }%
+  \def\slide@contents{%
+    \def\l@slide##1##2##3##4{%
+      \slide@cline{\slidenumberline{##3}{\hyperlink{##4}{##2}}}{##3}%
+    }%
+    \let\l@subslide\@gobblefour
+    \@startlos
+  }%
+  \def\Slide@contents{%
+    \def\l@slide##1##2##3##4{%
+      \ifcase\lslide@flag
+        \message{##1 ** \the\c@slidesection}%
+        \ifnum##1>\c@slidesection
+          \def\lslide@flag{1}%
+          {%
+            \large
+            \slide@cline{%
+              \slidenumberline{$\Rightarrow\bullet$}%
+                {\hyperlink{##4}{##2}}%
+            }{##3}%
+          }%
+        \else
+          {%
+            \large
+            \slide@cline{%
+              \slidenumberline{$\surd\;\bullet$}%
+                {\hyperlink{##4}{##2}}%
+            }{##3}%
+          }%
+        \fi
+      \or
+        \def\lslide@flag{2}%
+        {%
+          \large
+          \slide@cline{%
+            \slidenumberline{$\bullet$}%
+              {\hyperlink{##4}{##2}}%
+          }{##3}%
+        }%
+      \or
+        {%
+          \large
+          \slide@cline{%
+            \slidenumberline{$\bullet$}%
+             {\hyperlink{##4}{##2}}%
+          }{##3}%
+        }%
+      \fi
+    }%
+    \def\l@subslide##1##2##3##4{%
+      \ifnum\lslide@flag=1
+        \@undottedtocline{2}{3.8em}{3.2em}{\hyperlink{##4}{##2}}{}%
+      \fi
+    }%
+    \def\lslide@flag{0}%
+    \@startlos
+  }%
+}{}
+\ifHy@texht\endinput\fi
+\let\real@setref\@setref
+\def\@setref#1#2#3{% csname, extract group, refname
+  \ifx#1\relax
+    \protect\G@refundefinedtrue
+    \nfss@text{\reset@font\bfseries ??}%
+    \@latex@warning{%
+      Reference `#3' on page \thepage \space undefined%
+    }%
+  \else
+    \hyper@@link
+      {\expandafter\@fifthoffive#1}%
+      {\expandafter\@fourthoffive#1\@empty\@empty}%
+      {\expandafter#2#1\@empty\@empty\null}%
+  \fi
+}
+\def\@pagesetref#1#2#3{% csname, extract macro, ref
+  \ifx#1\relax
+    \protect\G@refundefinedtrue
+    \nfss@text{\reset@font\bfseries ??}%
+    \@latex@warning{%
+      Reference `#3' on page \thepage \space undefined%
+    }%
+  \else
+    \protect\hyper@@link
+      {\expandafter\@fifthoffive#1}%
+      {page.\expandafter\@secondoffive#1}%
+      {\expandafter\@secondoffive#1}%
+  \fi
+}
+\def\@refstar#1{%
+  \@safe@activestrue
+  \expandafter\real@setref\csname r@#1\endcsname\@firstoffive{#1}%
+  \@safe@activesfalse
+}
+\def\@pagerefstar#1{%
+  \@safe@activestrue
+  \expandafter\real@setref\csname r@#1\endcsname\@secondoffive{#1}%
+  \@safe@activesfalse
+}
+\DeclareRobustCommand\autoref[1]{%
+  \expandafter\auto@setref\csname r@#1\endcsname\@firstoffive{#1}%
+}
+\def\auto@setref#1#2#3{% csname, extract group, refname
+  \@safe@activestrue
+  \ifx#1\relax
+    \protect\G@refundefinedtrue
+    \nfss@text{\reset@font\bfseries ??}%
+    \@latex@warning{%
+      Reference `#3' on page \thepage \space undefined%
+    }%
+  \else
+    \edef\@thisref{\expandafter\@fourthoffive#1\@empty\@empty}%
+    \expandafter\test@reftype\@thisref\\%
+    \hyper@@link
+      {\expandafter\@fifthoffive#1}%
+      {\expandafter\@fourthoffive#1\@empty\@empty}%
+      {\@currentHtag\expandafter#2#1\@empty\@empty\null}%
+  \fi
+  \@safe@activesfalse
+}
+\def\test@reftype#1.#2\\{%
+  \@ifundefined{#1autorefname}{%
+    \@ifundefined{#1name}{%
+      \def\@currentHtag{}%
+      \@latex@warning{no tag name for #1 at \the\inputlineno}%
+    }{%
+      \def\@currentHtag{\csname#1name\endcsname~}%
+    }%
+  }{%
+    \def\@currentHtag{\csname#1autorefname\endcsname~}%
+  }%
+}
+\def\@currentHtag{}
+\providecommand\AMSautorefname{\equationautorefname}
+\providecommand\Hfootnoteautorefname{\footnoteautorefname}
+\providecommand\Itemautorefname{\itemautorefname}
+\providecommand\equationautorefname{Equation}
+\providecommand\footnoteautorefname{footnote}
+\providecommand\itemautorefname{item}
+\providecommand\figureautorefname{Figure}
+\providecommand\tableautorefname{Table}
+\providecommand\partautorefname{Part}
+\providecommand\appendixautorefname{Appendix}
+\providecommand\chapterautorefname{chapter}
+\providecommand\sectionautorefname{section}
+\providecommand\subsectionautorefname{subsection}
+\providecommand\subsubsectionautorefname{subsubsection}
+\providecommand\paragraphautorefname{paragraph}
+\providecommand\subparagraphautorefname{subparagraph}
+\providecommand\FancyVerbLineautorefname{line}
+\providecommand\theoremautorefname{Theorem}
+\def\phantomsection{%
+ \Hy@GlobalStepCount\Hy@linkcounter
+ \xdef\@currentHref{section*.\the\Hy@linkcounter}%
+ \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\endinput
+%%
+%% End of file `hyperref.sty'.
diff --git a/styles/hypertex.def b/styles/hypertex.def
new file mode 100644 (file)
index 0000000..dfde390
--- /dev/null
@@ -0,0 +1,221 @@
+%%
+%% This is file `hypertex.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% hyperref.dtx  (with options: `hypertex')
+%% 
+%% File: hyperref.dtx Copyright 1995-2001 Sebastian Rahtz,
+%% RCS: $Id: hyperref.dtx 6.71 2000/10/04 rahtz Exp rahtz $
+%%
+%% This file is part of the `Hyperref Bundle'.
+%% -------------------------------------------
+%%
+%% It may be distributed under the conditions of the LaTeX Project Public
+%% License, either version 1.2 of this license or (at your option) any
+%% later version.  The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 1999/12/01 or later.
+%%
+%% The list of all files belonging to the `Hyperref Bundle' is
+%% given in the file `manifest.txt'.
+%%
+\ProvidesFile{hypertex.def}
+  [2001/05/26 v6.71g
+  Hyperref driver for HyperTeX specials]
+\def\PDF@FinishDoc{}
+\def\PDF@SetupDoc{%
+  \ifx\@baseurl\@empty\else
+    \special{html:<base href="\@baseurl">}%
+  \fi
+}
+\def\hyper@anchor#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \let\protect=\string
+    \hyper@chars
+    \special{html:<a name=\hyper@quote #1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+  \Hy@colorlink{\@anchorcolor}\anchor@spot\Hy@endcolorlink
+  \special{html:</a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\hyper@anchorstart#1{%
+  \Hy@SaveLastskip
+  \begingroup
+    \hyper@chars
+    \special{html:<a name=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+  \Hy@activeanchortrue
+}
+\def\hyper@anchorend{%
+  \special{html:</a>}%
+  \Hy@activeanchorfalse
+  \Hy@RestoreLastskip
+}
+\def\@urltype{url}
+\def\hyper@linkstart#1#2{%
+  \Hy@colorlink{\csname @#1color\endcsname}%
+  \def\Hy@tempa{#1}%
+  \ifx\Hy@tempa\@urltype
+    \special{html:<a href=\hyper@quote#2\hyper@quote>}%
+  \else
+    \begingroup
+      \hyper@chars
+      \special{html:<a href=\hyper@quote\##2\hyper@quote>}%
+    \endgroup
+  \fi
+}
+\def\hyper@linkend{%
+  \special{html:</a>}%
+  \Hy@endcolorlink
+}
+\def\hyper@linkfile#1#2#3{%
+  \hyper@linkurl{#1}{file:#2\ifx\\#3\\\else\##3\fi}%
+}
+\def\hyper@linkurl#1#2{%
+  \leavevmode
+  \ifHy@raiselinks
+    \setbox\@tempboxa=\color@hbox #1\color@endbox
+    \@linkdim\dp\@tempboxa
+    \lower\@linkdim\hbox{%
+      \hyper@chars
+      \special{html:<a href=\hyper@quote#2\hyper@quote>}%
+    }%
+    \Hy@colorlink{\@urlcolor}#1%
+    \@linkdim\ht\@tempboxa
+    \advance\@linkdim by -6.5\p@
+    \raise\@linkdim\hbox{\special{html:</a>}}%
+    \Hy@endcolorlink
+  \else
+    \begingroup
+      \hyper@chars
+      \special{html:<a href=\hyper@quote#2\hyper@quote>}%
+      \Hy@colorlink{\@urlcolor}#1%
+      \special{html:</a>}%
+      \Hy@endcolorlink
+    \endgroup
+  \fi
+}
+\def\hyper@link#1#2#3{%
+  \hyper@linkurl{#3}{\##2}%
+}
+\def\hyper@image#1#2{%
+  \begingroup
+    \hyper@chars
+    \special{html:<img src=\hyper@quote#1\hyper@quote>}%
+  \endgroup
+}
+\def\@Form[#1]{\typeout{Sorry, HyperTeX does not support FORMs}}
+\def\@endForm{}
+\def\@Gauge[#1]#2#3#4{% parameters, label, minimum, maximum
+  \typeout{Sorry, HyperTeX does not support FORM gauges}%
+}
+\def\@TextField[#1]#2{% parameters, label
+  \typeout{Sorry, HyperTeX does not support FORM text fields}%
+}
+\def\@CheckBox[#1]#2{% parameters, label
+  \typeout{Sorry, HyperTeX does not support FORM checkboxes}%
+}
+\def\@ChoiceMenu[#1]#2#3{% parameters, label, choices
+  \typeout{Sorry, HyperTeX does not support FORM choice menus}%
+}
+\def\@PushButton[#1]#2{% parameters, label
+  \typeout{Sorry, HyperTeX does not support FORM pushbuttons}%
+}
+\def\@Reset[#1]#2{\typeout{Sorry, HyperTeX does not support FORMs}}
+\def\@Submit[#1]#2{\typeout{Sorry, HyperTeX does not support FORMs}}
+\let\H@old@ssect\@ssect
+\def\@ssect#1#2#3#4#5{%
+  \H@old@ssect{#1}{#2}{#3}{#4}{#5}%
+  \phantomsection
+}
+\let\H@old@schapter\@schapter
+\def\@schapter#1{%
+  \H@old@schapter{#1}%
+  \begingroup
+    \let\@mkboth\@gobbletwo
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \endgroup
+}
+\@ifundefined{@chapter}{}{%
+  \let\Hy@org@chapter\@chapter
+  \def\@chapter{%
+    \def\Hy@next{%
+      \Hy@GlobalStepCount\Hy@linkcounter
+      \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+      \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    }%
+    \ifnum\c@secnumdepth>\m@ne
+      \@ifundefined{if@mainmatter}%
+      \iftrue{\csname if@mainmatter\endcsname}
+        \let\Hy@next\relax
+      \fi
+    \fi
+    \Hy@next
+    \Hy@org@chapter
+  }%
+}
+\let\H@old@spart\@spart
+\def\@spart#1{%
+  \H@old@spart{#1}%
+  \Hy@GlobalStepCount\Hy@linkcounter
+  \xdef\@currentHref{part*.\the\Hy@linkcounter}%
+  \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+}
+\let\H@old@sect\@sect
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+  \ifnum #2>\c@secnumdepth
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{section*.\the\Hy@linkcounter}%
+  \fi
+  \H@old@sect{#1}{#2}{#3}{#4}{#5}{#6}[{#7}]{#8}%
+  \ifnum #2>\c@secnumdepth
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+  \fi
+}
+\def\Hy@tempa{%
+  \def\@addchap[##1]##2{%
+    \typeout{##2}%
+    \if@twoside
+      \@mkboth{##1}{}%
+    \else
+      \@mkboth{}{##1}%
+    \fi
+    \addtocontents{lof}{\protect\addvspace{10\p@}}%
+    \addtocontents{lot}{\protect\addvspace{10\p@}}%
+    \Hy@GlobalStepCount\Hy@linkcounter
+    \xdef\@currentHref{\Hy@chapapp*.\the\Hy@linkcounter}%
+    \Hy@raisedlink{\hyper@anchorstart{\@currentHref}\hyper@anchorend}%
+    \if@twocolumn
+       \@topnewpage[\@makeschapterhead{##2}]%
+    \else
+       \@makeschapterhead{##2}%
+       \@afterheading
+    \fi
+    \addcontentsline{toc}{chapter}{##1}%
+  }%
+}
+\@ifclassloaded{scrbook}{%
+  \@ifclasslater{scrbook}{2001/01/01}{%
+    \let\Hy@tempa\@empty
+  }{}%
+}{%
+  \@ifclassloaded{scrreprt}{%
+    \@ifclasslater{scrreprt}{2001/01/01}{%
+      \let\Hy@tempa\@empty
+    }{}%
+  }{%
+    \let\Hy@tempa\@empty
+  }%
+}%
+\Hy@tempa
+\endinput
+%%
+%% End of file `hypertex.def'.
diff --git a/styles/minitoc-hyper.sty b/styles/minitoc-hyper.sty
new file mode 100644 (file)
index 0000000..2106de9
--- /dev/null
@@ -0,0 +1,2304 @@
+\def\fileversion{v28href}
+\def\filedate{1999/05/17}
+% minitoc-hyper.sty
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Jean-Pierre Drucbert
+% ONERA/CERT/GPI
+% Office National d'\'Etudes et de Recherches A\'erospatiales
+% Centre d'\'Etudes et de Recherches de Toulouse
+% Groupe de Prestations Informatiques
+% Complexe Scientifique de Rangueil
+% 2, Avenue \'Edouard Belin
+% BP 4025
+% F-31055 TOULOUSE CEDEX
+% FRANCE
+%
+% Phone +33-62-25-25-15
+%
+% Email: drucbert@onecert.fr
+%
+% Please send me any (constructive) suggestions and comments.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Temporarily patched by Bernd Jaehne [Bernd.Jaehne@aeon.de] 
+% and Didier Verna [verna@inf.enst.fr] to
+% work with hyperref.sty from s.rahtz@elsevier.co.uk
+% using input from Tony Roberts [aroberts@usq.edu.au]
+% For changes see comments %%BJ and %DV
+%
+% However: this patch works only when  hyperref.sty is used,
+% otherwise errors occur. Thus it may be advisable to add code
+% so that minitoc runs both in standard and hyperref mode.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% History (contains some obsolete things... it is NOT
+% the REAL documentation)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% minitoc.sty --- redefines the \chapter command to display a
+%  mini-table-of-contents at the beginning of every chapter.
+%  Oct-90       Original version, by Nigel Ward.
+%  Nov-91       Revised to reuse \chapter, \section, \subsection commands
+%               transparently, generate toc-file-name automatically,
+%               assorted other cleanup.  Dan Jurafsky
+%  Jun/Jul-93   New design, to avoid allocating a newwrite
+%               for each chapter (!)
+%               Added \chapterend to terminate the scope of a minitoc.
+%               (IF YOU FORGOT PUTTING \chapterend at the end
+%               of EACH chapter, an entry for the next chapter
+%               will appear in each minitoc.) (Thanks to Yufan Hu).
+%               Replaced ``minipage'' environnement by a ``verse''
+%               environnement, to allow a minitoc split across pages.
+%               All the layout of the minitoc is in the
+%               \minitableofcontents command, so if someboby wants
+%               to redefine that layout, he has just to
+%               rewrite it (and only it).
+%
+%               You can inhibit the minitoc for the next chapter
+%               by preceding it with \minitocno. (\minitocyes
+%               is useless for the user: it is implicit AFTER
+%               the \chapter* pseudo-chapters).
+%
+%               Problems: you MUST have \chapterend to terminate each
+%               chapter with a minitoc.
+%               How about avoiding this constraint?
+%
+%               The depth of the minitoc is user-adjustable with
+%               the counter `minitocdepth' (as `tocdepth' for the table
+%               of contents).
+%               At least three passes (3!!!) of LaTeX are necessary to get
+%               correct minitoc's (the first pass creates the .mtcX files,
+%               the second uses them (but they may contain wrong page
+%               numbers) and recreates them, the third should be ok).
+%
+%               Works with \chapter[xxx]{yyy} and floating bodies.
+%               Works with two columns (but the minitoc is in composed in
+%               one column; how to make it to spread over the two column?)
+%               Some mods added to work with xr.sty (external references).
+%               xr.sty version 5 is much more tolerant.
+%   05Jul93     Version 2
+%               Added compatibility with hangcaption.sty (the option
+%               hangcaption (if present) must be given BEFORE minitoc
+%               option.)
+%               BEWARE to options modifying \@caption
+%               Version 3 not released (buggy)
+%   09Jul93     Version 4
+%               Added \if@realch to avoid contentslines from
+%               pseudo-chapters to go into the toc!
+%               The option file mtcoff.sty allows to use a latex
+%               document with minitoc commands and to make them
+%               transparent: just replace the minitoc option by
+%               mtcoff.
+%   13Jul93     Version 5
+%               Added a selection mechanism to not write spurious things
+%               in the minitoc's.
+%   15Jul93     Version 6
+%               Fixed problems about chapters in the toc,
+%               removed obsolete \caption stuff (filters are better)
+%               added compatibility with toch.sty
+%               (toch.sty makes a table of chapters. If used,
+%               must be loaded BEFORE minitoc.sty)
+%   22Jul93     Version 7 (MAJOR DIFFERENCES)
+%               Completely rewritten, using tricks from xr.sty
+%               (the version 5, by David Carlisle). The info
+%               for minitocs is directly stolen from the .toc
+%               file.
+%               \chapterend and \minitocno are suppressed
+%               \minitoc, \dominitoc and \faketableofcontents added
+%   29Jul93     Version 8
+%               Spacing adjustements.
+%   04Aug93     Version 9
+%               Added mods for MS-DOS (search MS-DOS, uncomment;
+%               search UNIX, comment out). MS-DOS allows only
+%               3 characters for extensions in file names (what a pity!).
+%   05Aug93     Version 10
+%               Works with appendices.
+%               Detects obsolete versions of latex.tex.
+%               (\@inputcheck or \reset@font not defined).
+%   18Aug93     Version 11
+%               Added \mtcSfont, font for section entries,
+%               \mtcSSfont for subsection entries,
+%               \mtcSSSfont for subsubsection entries,
+%               \mtcPfont for paragraph entries,
+%               \mtcSPfont for subparagraph entries.
+%
+%   16Dec93     Version 12
+%               Use \kern's in place of \vspace*'s,
+%               and added penalties (\nopagebreak) to
+%               avoid a page break just before last \mtc@rule.
+%               Also added a \samepage environnement.
+%               Removed old commented out lines from
+%               previous versions.
+%
+%   17Dec93     Version 13
+%               Added minilof and minilot stuff.
+%               For MS-DOS, uncomment the definition of \SHORTEXT.
+%
+%   03Jan94     Version 14
+%               Corrected space under minitoc/lof/lot and added a
+%               \raggedright to avoid ``underfull'' warnings.
+%               Corrected some spacing problems (avoiding ~'s).
+%               \mtifont changed from \normalsize\bf to
+%               \large\bf.
+%               Some mods suggested by Donald Arseneau (thanks):
+%               \@newread becomes \newread, not outer
+%               version of \newread.
+%               \empty replaced by \relax in the spare definition
+%               of \reset@font.
+%               Removed \clubpenalty=10000 and \widowpenalty=10000
+%               (done by \samepage), and \noindent.
+%               Simplified processing of optional argument in
+%               \minitoc, \minilof and \minilot.
+%
+%   27Jan94     Version 15
+%               Added parttoc, partlof and partlot for books,
+%               with commands and parameters parallel to
+%               those for mini-things.
+%
+%               Added secttoc, sectlof and sectlot for articles,
+%               with commands and parameters parallel to
+%               those for mini-things.
+%
+%   02Feb94     Version 16
+%               Bug fixes (typos).
+%
+%   23Jun94     Version 17
+%               Keyword 'n' (null) synonym of 'e' (empty).
+%               Compatibility with LaTeX ``2e''.
+%               Thanks to Denis Roegel (who found
+%               the problem) and Frank Mittelbach
+%               (who gave the hints to solve).
+%
+%   26Jun94     Version 18
+%               Make minitoc really compatible with latex2e
+%               Introduce the language files as options
+%               Thanks to Michel Goossens (via Frank Mittelbach)
+%               who was inspired by the code of babel (Johannes Braams).
+%
+%   16Aug94     Version 19
+%               Added stuff for numbering of chapters (parts,
+%               sections) not starting at 1.
+%               \firstchapteris etc. commands added.
+%               \mtcrule, \nomtcrule etc. commands added.
+%               Corrected a bug in \c@mti.
+%               Corrected mtcswedish.sty (Jan Michel Rynning)
+%               Corrected appendix in articles
+%
+%   25Aug94     Version 20
+%               Corrected spacing before and after minitocs
+%               and siblings.
+%               Added \mtcpagenumbers and \nomtcpagenumbers
+%               (and siblings) to make minitocs with/without
+%               page numbers. Default: page numbers.
+%               Corrected (difficult bug) appendix in articles.
+%               Corrected vertical spacing.
+%               Corrected a problem with chapters numbered
+%               with (uppercase) roman numbers.
+%
+%   07Sep94     Version 21
+%               Corrected typos in minitoc.sty and minitoc.tex.
+%
+%   10Oct94     Version 22
+%               Corrected typos in minitoc.sty.
+%
+%   08Nov94     Version 23
+%               Added a missing line in \sectlof@.
+%               Works with document classes resetting
+%               chapter (or section) number at each part.
+%               (Thanks to Denis Roegel)
+%               Removed stuff for \firstchapteris and co.
+%               These commands are obsolete.
+%               Removed appendix stuff.
+%
+%   21Dec94     Version 24
+%               The \protect commands have been removed from
+%               the .toc, .lot and .lot files, so some internal
+%               macros have been corrected to be compatible
+%               with the LaTeX2e release of December 1994.
+%               Thanks to Denis Roegel who did the work.
+%
+%   13Sep96     Version 25
+%               Updated mtcnorsk.sty and added mtcnynorsk.sty
+%               on a suggestion from Dag Langmyhr (dag@ifi.uio.no).
+%
+%   14Nov96     Version 26
+%               Language specific commands are now names <language>.mld
+%               (in place of mtc<language>.sty) because there are not
+%               packages and it makes shorter names.
+%               Added breton, estonian, germanb, greek, irish,
+%               russianb, scottish, lower and upper sorbian;
+%               renamed esperanto into esperant like in Babel.
+%
+%   20Dec96     Version 27
+%               Corrections for starred sectionning commands.
+%               english.mld loaded as default language.
+%               Added vietnam.mld.
+%               Added arab.mld.
+%               Renamed minitocoff.sty into mtcoff.sty to
+%               keep the name short.
+%
+%
+%               Jean-Pierre Drucbert
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]%
+%%% This file will not work with latex2.09
+\ProvidesPackage{minitoc}[\filedate\space\fileversion\space
+                        The minitoc package]
+\typeout{*** minitoc package, version 27p ***}%
+\@ifundefined{part}%
+{}%
+{\typeout{*** part level macros available ***}
+\let\mtc@svpart\part %23
+\def\part{\stepcounter{ptc}\mtc@svpart}} %23
+\@ifundefined{chapter}%
+{%
+\@ifundefined{section}%
+{\typeout{*** no section or chapter level macros available ***}%
+\typeout{*** PLEASE VERIFY YOUR MAIN DOCUMENT CLASS ***}}%
+{\typeout{*** section level macros available ***}
+\let\mtc@svsection\section %23
+\def\section{\stepcounter{stc}\mtc@svsection} %23
+\let\mtc@svss\@ssect %23
+%v25 \def\@ssect{\addtocounter{stc}{-1}\mtc@svss} %23
+}%
+}%
+{\typeout{*** chapter level macros available ***}
+\let\mtc@svchapter\@chapter %23
+\def\@chapter{\stepcounter{mtc}\mtc@svchapter} %23
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%         *****  ****   ***&nbs