annotate ja/preface.tex @ 334:4ffdaa0773a3

done preface.tex
author Yoshiki Yazawa <yaz@cc.rim.or.jp>
date Sun, 30 Mar 2008 18:34:59 +0900
parents 3b1291f24c0d
children 8a3041e6f3cb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
1 %\chapter*{Preface}
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
2 \chapter*{$B$^$($,$-(B}
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
3 \addcontentsline{toc}{chapter}{Preface}
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
4 \label{chap:preface}
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
5
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
6 %Distributed revision control is a relatively new territory, and has
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
7 %thus far grown due to people's willingness to strike out into
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
8 %ill-charted territory.
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
9
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
10 $BJ,;6%j%S%8%g%s%3%s%H%m!<%k$OHf3SE*?7$7$$NN0h$G$"$j!$$3$l$^$G$N4V0c$C$?NN(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
11 $B0h$+$iH4$1=P$=$&$H$$$&?M!9$N0U;V$G5^B.$KH/E8$7$F$$$k!%(B
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
12
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
13 %I am writing a book about distributed revision control because I
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
14 %believe that it is an important subject that deserves a field guide.
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
15 %I chose to write about Mercurial because it is the easiest tool to
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
16 %learn the terrain with, and yet it scales to the demands of real,
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
17 %challenging environments where many other revision control tools fail.
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
18
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
19 $BI.<T$,J,;6%j%S%8%g%s%3%s%H%m!<%k$K$D$$$F$NK\$r=q$$$F$$$k$N$O!$$3$l$,%U%#!<(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
20 $B%k%I%,%$%I$rI,MW$H$9$k=EMW$J2]Bj$@$H;W$C$?$+$i$@!%(BMercurial$B$K$D$$$F=q$3$&(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
21 $B$HA*$s$@$N$O!$$3$l$,A4BN$r3X$V$N$,:G$b4JC1$J%D!<%k$G!$$7$+$bB>$N%j%S%8%g(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
22 $B%s%3%s%H%m!<%k%D!<%k$,1}!9$K$7$F<:GT$7$F$$$k!$<B:]$ND)@oE*$J4D6-$N5a$a$K(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
23 $B9g$o$;$F%9%1!<%k$9$k%D!<%k$@$+$i$@!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
24
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
25
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
26 %\section{This book is a work in progress}
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
27 \section{$B$3$NK\$O<9I.Cf$G$"$k(B}
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
28
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
29 %I am releasing this book while I am still writing it, in the hope that
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
30 %it will prove useful to others. I also hope that readers will
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
31 %contribute as they see fit.
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
32
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
33 $B$3$NK\$O$^$@<9I.Cf$G$"$k$,!$$3$l$,FI<T$K$H$C$FM-MQ$G$"$k$H?.$8$F8x3+$9$k(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
34 $B$3$H$K$7$?!%$^$?!$FI<T$+$i$bH`$i$N5a$a$K9g$o$;$F9W8%$,$"$k$3$H$r4|BT$7$F(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
35 $B$$$k!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
36
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
37 %\section{About the examples in this book}
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
38 \section{$B$3$NK\$NNc$K$D$$$F(B}
200
9bba958be4c6 Mention automatic example generation.
Bryan O'Sullivan <bos@serpentine.com>
parents: 26
diff changeset
39
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
40 %This book takes an unusual approach to code samples. Every example is
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
41 %``live''---each one is actually the result of a shell script that
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
42 %executes the Mercurial commands you see. Every time an image of the
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
43 %book is built from its sources, all the example scripts are
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
44 %automatically run, and their current results compared against their
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
45 %expected results.
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
46
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
47 $B$3$NK\$O%3!<%I%5%s%W%k$KIaDL$H0c$&%"%W%m!<%A$r<h$C$F$$$k!%A4$F$NNc$O(B``$B@8(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
48 $B$-$F$$$k(B''---$BA4$F$NNc$O(BMercurial$B%3%^%s%I$r5/F0$9$k%7%'%k%9%/%j%W%H$N7k2L(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
49 $B$G$"$k!%$3$NK\$G$O!$2hA|$,%=!<%9$+$i@8@.$5$l$kEY$K!$%9%/%j%W%H$,<+F0E*$K(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
50 $B5/F0$9$k!%8=:_$N7k2L$O4|BT$5$l$k7k2L$HHf3S$5$l$k!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
51
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
52 %The advantage of this approach is that the examples are always accurate;
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
53 %they describe \emph{exactly} the behaviour of the version of Mercurial
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
54 %that's mentioned at the front of the book. If I update the version of
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
55 %Mercurial that I'm documenting, and the output of some command changes,
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
56 %the build fails.
200
9bba958be4c6 Mention automatic example generation.
Bryan O'Sullivan <bos@serpentine.com>
parents: 26
diff changeset
57
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
58 $B$3$N%"%W%m!<%A$NMxE@$O!$Nc$,>o$K@53N$G$"$k$3$H$G!$5-=R$OK\$NI=;f$G8@5Z$7(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
59 $B$F$$$k(BMercurial$B$N%P!<%8%g%s$G$N5sF0$H(B\emph{$B87L)$K(B}$B0lCW$9$k!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
60 $BI.<T$,(BMercurial$B$N%P!<%8%g%s$r99?7$7!$%3%^%s%I$N=PNO$,JQ$o$k$H%S%k%I$O<:(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
61 $BGT$9$k!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
62
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
63 %There is a small disadvantage to this approach, which is that the dates
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
64 %and times you'll see in examples tend to be ``squashed'' together in a
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
65 %way that they wouldn't be if the same commands were being typed by a
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
66 %human. Where a human can issue no more than one command every few
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
67 %seconds, with any resulting timestamps correspondingly spread out, my
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
68 %automated example scripts run many commands in one second.
200
9bba958be4c6 Mention automatic example generation.
Bryan O'Sullivan <bos@serpentine.com>
parents: 26
diff changeset
69
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
70 $B$3$N%"%W%m!<%A$N>.$5$J7gE@$O!$Nc$NCf$G8+$i$l$kF|IU$H;~9o$,?M4V$,%?%$%W$7(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
71 $B$F$$$l$PM-$jF@$J$$$[$I(B``$B=8$^$C$F(B''$B$7$^$C$F$$$k$3$H$@!%?M4V$G$"$l$P!$(B1$B$D$N(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
72 $B%3%^%s%I$r<B9T$9$k$N$K?tIC$O$+$+$j!$%?%$%`%9%?%s%W$O9-$$HO0O$K3H$,$k$O$:(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
73 $B$N$H$3$m$,!$$3$NK\$GNc$r:n@.$9$k%9%/%j%W%H$G$O!$(B1$BIC$KB?$/$N%3%^%s%I$r<B9T(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
74 $B$7$F$7$^$&!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
75
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
76 %As an instance of this, several consecutive commits in an example can
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
77 %show up as having occurred during the same second. You can see this
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
78 %occur in the \hgext{bisect} example in section~\ref{sec:undo:bisect},
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
79 %for instance.
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
80
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
81 $B$3$N$?$a!$Nc$NCf$K8=$l$kO"B3$7$?%3%_%C%H$O!$F1$8IC$K5/$-$?$h$&$K$J$C$F$$(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
82 $B$k!%Nc$($P!$(B~\ref{sec:undo:bisect}$B$N@a$N(B\hgext{bisect}$B$NNc$G$3$l$,8+$i$l(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
83 $B$k!%(B
200
9bba958be4c6 Mention automatic example generation.
Bryan O'Sullivan <bos@serpentine.com>
parents: 26
diff changeset
84
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
85 %So when you're reading examples, don't place too much weight on the
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
86 %dates or times you see in the output of commands. But \emph{do} be
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
87 %confident that the behaviour you're seeing is consistent and
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
88 %reproducible.
200
9bba958be4c6 Mention automatic example generation.
Bryan O'Sullivan <bos@serpentine.com>
parents: 26
diff changeset
89
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
90 $B=>$C$F!$Nc$rFI$`;~$K$O!$F|IU$H;~9o$K$"$^$j94$i$J$$$h$&$K$7$F$$$?$@$-$?$$!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
91 $B$7$+$7!$$=$3$G8+$i$l$k$U$k$^$$$O@53N$G$"$j!$:F8=2DG=$G$"$k$3$H$O4V0c$$$N(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
92 $B$J$$$b$N$G$"$k!%(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
93
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
94
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
95 %\section{Colophon---this book is Free}
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
96 \section{$BGXI=;f(B---$B$3$NK\$OL5NA$G$"$k(B}
200
9bba958be4c6 Mention automatic example generation.
Bryan O'Sullivan <bos@serpentine.com>
parents: 26
diff changeset
97
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
98 %This book is licensed under the Open Publication License, and is
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
99 %produced entirely using Free Software tools. It is typeset with
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
100 %\LaTeX{}; illustrations are drawn and rendered with
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
101 %\href{http://www.inkscape.org/}{Inkscape}.
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
102
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
103 $B$3$NK\$O(BOpen Publication License$B$N2<$G%i%$%;%s%9$5$l!$A4BN$KEO$C$F%U%j!<(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
104 $B%=%U%H%&%'%"%D!<%k$r;H$C$F:n$i$l$F$$$k!%AHHG$O(B\LaTeX{}$B$r;H$C$F9T$o$l!$?^(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
105 $BHG$O(B\href{http://www.inkscape.org/}{Inkscape}$B$r;H$C$F9T$o$l$F$$$k!%(B
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
106
334
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
107 %The complete source code for this book is published as a Mercurial
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
108 %repository, at \url{http://hg.serpentine.com/mercurial/book}.
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
109
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
110 $B$3$NK\$N40A4$J%=!<%9$O!$(B\url{http://hg.serpentine.com/mercurial/book}$B$K(B
4ffdaa0773a3 done preface.tex
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 293
diff changeset
111 $B$F(BMercurial$B%j%]%8%H%j$H$7$F8x3+$5$l$F$$$k!%(B
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
112
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
113 %%% Local Variables:
293
3b1291f24c0d - replaved latex-mode to yatex-mode
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 290
diff changeset
114 %%% mode: yatex
26
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
115 %%% TeX-master: "00book"
1bc6c1f0192a More MQ content.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
116 %%% End: