From: "Saved by Windows Internet Explorer 7"
Subject: Calculus/Continuity - Wikibooks, collection of open-content textbooks
Date: Fri, 13 Nov 2009 14:27:33 -0700
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0042_01CA646D.70D01B60"
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18005

This is a multi-part message in MIME format.

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/wiki/Calculus/Continuity

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML lang=3Den dir=3Dltr xml:lang=3D"en"=20
xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>Calculus/Continuity =
- Wikibooks, collection of open-content textbooks</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8">
<META http-equiv=3DContent-Style-Type content=3Dtext/css>
<META content=3D"MSHTML 6.00.6002.18124" name=3DGENERATOR><LINK=20
title=3D"Edit this page"=20
href=3D"/w/index.php?title=3DCalculus/Continuity&amp;action=3Dedit"=20
type=3Dapplication/x-wiki rel=3Dalternate><LINK title=3D"Edit this page" =

href=3D"/w/index.php?title=3DCalculus/Continuity&amp;action=3Dedit" =
rel=3Dedit><LINK=20
href=3D"/favicon.ico" rel=3D"shortcut icon"><LINK title=3D"Wikibooks =
(en)"=20
href=3D"/w/opensearch_desc.php" =
type=3Dapplication/opensearchdescription+xml=20
rel=3Dsearch><LINK =
href=3D"http://creativecommons.org/licenses/by-sa/3.0/"=20
rel=3Dcopyright><LINK title=3D"Wikibooks RSS Feed"=20
href=3D"/w/index.php?title=3DSpecial:RecentChanges&amp;feed=3Drss"=20
type=3Dapplication/rss+xml rel=3Dalternate><LINK title=3D"Wikibooks Atom =
Feed"=20
href=3D"/w/index.php?title=3DSpecial:RecentChanges&amp;feed=3Datom"=20
type=3Dapplication/atom+xml rel=3Dalternate><LINK media=3Dscreen=20
href=3D"http://en.wikibooks.org/skins-1.5/common/shared.css?243z2" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK media=3Dprint=20
href=3D"http://en.wikibooks.org/skins-1.5/common/commonPrint.css?243z2"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dscreen=20
href=3D"http://en.wikibooks.org/skins-1.5/monobook/main.css?243z2" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK media=3Dhandheld=20
href=3D"http://en.wikibooks.org/skins-1.5/chick/main.css?243z2" =
type=3Dtext/css=20
rel=3Dstylesheet><!--[if lt IE 5.5000]><link rel=3D"stylesheet" =
href=3D"/skins-1.5/monobook/IE50Fixes.css?243z2" type=3D"text/css" =
media=3D"screen" /><![endif]--><!--[if IE 5.5000]><link =
rel=3D"stylesheet" href=3D"/skins-1.5/monobook/IE55Fixes.css?243z2" =
type=3D"text/css" media=3D"screen" /><![endif]--><!--[if IE 6]><link =
rel=3D"stylesheet" href=3D"/skins-1.5/monobook/IE60Fixes.css?243z2" =
type=3D"text/css" media=3D"screen" /><![endif]--><!--[if IE 7]><LINK=20
media=3Dscreen=20
href=3D"http://en.wikibooks.org/skins-1.5/monobook/IE70Fixes.css?243z2"=20
type=3Dtext/css rel=3Dstylesheet><![endif]--><LINK media=3Dall=20
href=3D"http://en.wikibooks.org/w/extensions/FlaggedRevs/flaggedrevs.css?=
60"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dall=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DMediaWiki:Common.css&=
amp;usemsgcache=3Dyes&amp;ctype=3Dtext%2Fcss&amp;smaxage=3D2678400&amp;ac=
tion=3Draw&amp;maxage=3D2678400"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dprint=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DMediaWiki:Print.css&a=
mp;usemsgcache=3Dyes&amp;ctype=3Dtext%2Fcss&amp;smaxage=3D2678400&amp;act=
ion=3Draw&amp;maxage=3D2678400"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dhandheld=20
href=3D"/w/index.php?title=3DMediaWiki:Handheld.css&amp;usemsgcache=3Dyes=
&amp;ctype=3Dtext%2Fcss&amp;smaxage=3D2678400&amp;action=3Draw&amp;maxage=
=3D2678400"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dall=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DMediaWiki:Monobook.cs=
s&amp;usemsgcache=3Dyes&amp;ctype=3Dtext%2Fcss&amp;smaxage=3D2678400&amp;=
action=3Draw&amp;maxage=3D2678400"=20
type=3Dtext/css rel=3Dstylesheet><LINK media=3Dall=20
href=3D"http://en.wikibooks.org/w/index.php?title=3D-&amp;action=3Draw&am=
p;maxage=3D2678400&amp;gen=3Dcss"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT type=3Dtext/javascript>=0A=
var skin=3D"monobook",=0A=
stylepath=3D"/skins-1.5",=0A=
wgArticlePath=3D"/wiki/$1",=0A=
wgScriptPath=3D"/w",=0A=
wgScriptExtension=3D".php",=0A=
wgScript=3D"/w/index.php",=0A=
wgVariantArticlePath=3Dfalse,=0A=
wgActionPaths=3D{},=0A=
wgServer=3D"http://en.wikibooks.org",=0A=
wgCanonicalNamespace=3D"",=0A=
wgCanonicalSpecialPageName=3Dfalse,=0A=
wgNamespaceNumber=3D0,=0A=
wgPageName=3D"Calculus/Continuity",=0A=
wgTitle=3D"Calculus/Continuity",=0A=
wgAction=3D"view",=0A=
wgArticleId=3D34720,=0A=
wgIsArticle=3Dtrue,=0A=
wgUserName=3Dnull,=0A=
wgUserGroups=3Dnull,=0A=
wgUserLanguage=3D"en",=0A=
wgContentLanguage=3D"en",=0A=
wgBreakFrames=3Dfalse,=0A=
wgCurRevisionId=3D1655497,=0A=
wgVersion=3D"1.16alpha-wmf",=0A=
wgEnableAPI=3Dtrue,=0A=
wgEnableWriteAPI=3Dtrue,=0A=
wgSeparatorTransformTable=3D["", ""],=0A=
wgDigitTransformTable=3D["", ""],=0A=
wgMainPageTitle=3D"Main Page",=0A=
wgFormattedNamespaces=3D{"-2": "Media", "-1": "Special", "0": "", "1": =
"Talk", "2": "User", "3": "User talk", "4": "Wikibooks", "5": "Wikibooks =
talk", "6": "File", "7": "File talk", "8": "MediaWiki", "9": "MediaWiki =
talk", "10": "Template", "11": "Template talk", "12": "Help", "13": =
"Help talk", "14": "Category", "15": "Category talk", "102": "Cookbook", =
"103": "Cookbook talk", "108": "Transwiki", "109": "Transwiki talk", =
"110": "Wikijunior", "111": "Wikijunior talk", "112": "Subject", "113": =
"Subject talk"},=0A=
wgNamespaceIds=3D{"media": -2, "special": -1, "": 0, "talk": 1, "user": =
2, "user_talk": 3, "wikibooks": 4, "wikibooks_talk": 5, "file": 6, =
"file_talk": 7, "mediawiki": 8, "mediawiki_talk": 9, "template": 10, =
"template_talk": 11, "help": 12, "help_talk": 13, "category": 14, =
"category_talk": 15, "cookbook": 102, "cookbook_talk": 103, "transwiki": =
108, "transwiki_talk": 109, "wikijunior": 110, "wikijunior_talk": 111, =
"subject": 112, "subject_talk": 113, "image": 6, "image_talk": 7},=0A=
wgMWSuggestTemplate=3D"http://en.wikibooks.org/w/api.php?action=3Dopensea=
rch\x26search=3D{searchTerms}\x26namespace=3D{namespaces}\x26suggest",=0A=
wgDBname=3D"enwikibooks",=0A=
wgSearchNamespaces=3D[0, 4, 112],=0A=
wgMWSuggestMessages=3D["with suggestions", "no suggestions"],=0A=
wgRestrictionEdit=3D[],=0A=
wgRestrictionMove=3D[],=0A=
wgFlaggedRevsParams=3D{"tags": {"composition": 3, "accuracy": 2, =
"coverage": 2}},=0A=
wgStableRevisionId=3D0,=0A=
wgAjaxReview=3D{"sendingMsg": "Submitting...", "sentMsgOk": "Review =
complete!", "sentMsgBad": "Review failed!", "actioncomplete": "Action =
complete", "actionfailed": "Action failed"},=0A=
wgNotice=3D"",=0A=
wgNoticeLocal=3D"";=0A=
</SCRIPT>

<SCRIPT=20
src=3D"http://en.wikibooks.org/skins-1.5/common/wikibits.js?urid=3D243z2_=
1254880607"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://en.wikibooks.org/skins-1.5/common/ajax.js?urid=3D243z2"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://en.wikibooks.org/skins-1.5/common/mwsuggest.js?urid=3D243z2=
"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://upload.wikimedia.org/centralnotice/wikibooks/en/centralnoti=
ce.js?243z2"=20
type=3Dtext/javascript></SCRIPT>
<!--[if lt IE 7]><script type=3D"text/javascript" =
src=3D"/skins-1.5/common/IEFixes.js?243z2"></script>=0A=
	<meta http-equiv=3D"imagetoolbar" content=3D"no" /><![endif]-->
<SCRIPT=20
src=3D"http://en.wikibooks.org/w/index.php?title=3D-&amp;action=3Draw&amp=
;gen=3Djs&amp;useskin=3Dmonobook&amp;urid=3D243z2"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://en.wikibooks.org/w/extensions/FlaggedRevs/flaggedrevs.js?60=
"=20
type=3Dtext/javascript></SCRIPT>
</HEAD>
<BODY=20
class=3D"mediawiki ltr ns-0 ns-subject page-Calculus_Continuity =
skin-monobook">
<DIV id=3DglobalWrapper>
<DIV id=3Dcolumn-content>
<DIV id=3Dcontent><A id=3Dtop></A>
<DIV id=3DsiteNotice>
<SCRIPT=20
type=3Dtext/javascript>if (wgNotice !=3D '') =
document.writeln(wgNotice);</SCRIPT>
</DIV>
<H1 class=3DfirstHeading id=3DfirstHeading>Calculus/Continuity</H1>
<DIV id=3DbodyContent>
<H3 id=3DsiteSub>From Wikibooks, the open-content textbooks =
collection</H3>
<DIV id=3DcontentSub><SPAN class=3Dsubpages>&lt; <A title=3DCalculus=20
href=3D"http://en.wikibooks.org/wiki/Calculus">Calculus</A></SPAN>
<DIV class=3D"flaggedrevs_short plainlinks noprint" =
id=3Dmw-revisiontag><SPAN=20
class=3D"fr-icon-current plainlinks"></SPAN><B><A title=3D"Help:Revision =
review"=20
href=3D"http://en.wikibooks.org/wiki/Help:Revision_review">Current=20
revision</A></B> (unreviewed)</DIV></DIV>
<DIV id=3Djump-to-nav>Jump to: <A=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#column-one">navi=
gation</A>,=20
<A=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#searchInput">sea=
rch</A></DIV><!-- start content -->
<TABLE class=3D"toc noprint"=20
style=3D"PADDING-RIGHT: 1em; PADDING-LEFT: 1em; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px"=20
width=3D"100%">
  <TBODY>
  <TR>
    <TD align=3Dmiddle width=3D"33%" rowSpan=3D2><A =
title=3D"Calculus/Infinite Limits"=20
      =
href=3D"http://en.wikibooks.org/wiki/Calculus/Infinite_Limits">=E2=86=90 =
Infinite=20
      Limits</A></TD>
    <TD align=3Dmiddle width=3D"34%"><SMALL><I><A title=3DCalculus=20
      =
href=3D"http://en.wikibooks.org/wiki/Calculus">Calculus</A></I></SMALL></=
TD>
    <TD align=3Dmiddle width=3D"33%" rowSpan=3D2><A=20
      title=3D"Calculus/Formal Definition of the Limit"=20
      =
href=3D"http://en.wikibooks.org/wiki/Calculus/Formal_Definition_of_the_Li=
mit">Formal=20
      Definition of the Limit =E2=86=92</A></TD></TR>
  <TR>
    <TD align=3Dmiddle><B>Continuity</B></TD></TR></TBODY></TABLE>
<TABLE class=3Dtoc id=3Dtoc>
  <TBODY>
  <TR>
    <TD>
      <DIV id=3Dtoctitle>
      <H2>Contents</H2></DIV>
      <UL>
        <LI class=3D"toclevel-1 tocsection-1"><A=20
        =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#Defining_Continu=
ity"><SPAN=20
        class=3Dtocnumber>1</SPAN> <SPAN class=3Dtoctext>Defining=20
        Continuity</SPAN></A>=20
        <LI class=3D"toclevel-1 tocsection-2"><A=20
        =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#Discontinuities"=
><SPAN=20
        class=3Dtocnumber>2</SPAN> <SPAN =
class=3Dtoctext>Discontinuities</SPAN></A>=20
        <UL>
          <LI class=3D"toclevel-2 tocsection-3"><A=20
          =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#Removable_Discon=
tinuities"><SPAN=20
          class=3Dtocnumber>2.1</SPAN> <SPAN class=3Dtoctext>Removable=20
          Discontinuities</SPAN></A>=20
          <LI class=3D"toclevel-2 tocsection-4"><A=20
          =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#Jump_Discontinui=
ties"><SPAN=20
          class=3Dtocnumber>2.2</SPAN> <SPAN class=3Dtoctext>Jump=20
          Discontinuities</SPAN></A> </LI></UL>
        <LI class=3D"toclevel-1 tocsection-5"><A=20
        =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#One-Sided_Contin=
uity"><SPAN=20
        class=3Dtocnumber>3</SPAN> <SPAN class=3Dtoctext>One-Sided=20
        Continuity</SPAN></A>=20
        <LI class=3D"toclevel-1 tocsection-6"><A=20
        =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#Intermediate_Val=
ue_Theorem"><SPAN=20
        class=3Dtocnumber>4</SPAN> <SPAN class=3Dtoctext>Intermediate =
Value=20
        Theorem</SPAN></A>=20
        <UL>
          <LI class=3D"toclevel-2 tocsection-7"><A=20
          =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity#Application:_bis=
ection_method"><SPAN=20
          class=3Dtocnumber>4.1</SPAN> <SPAN =
class=3Dtoctext>Application: bisection=20
          method</SPAN></A> =
</LI></UL></LI></UL></TD></TR></TBODY></TABLE>
<SCRIPT type=3Dtext/javascript>=0A=
//<![CDATA[=0A=
if (window.showTocToggle) { var tocShowText =3D "show"; var tocHideText =
=3D "hide"; showTocToggle(); } =0A=
//]]>=0A=
</SCRIPT>

<H2><SPAN class=3Deditsection>[<A title=3D"Edit section: Defining =
Continuity"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D1">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline id=3DDefining_Continuity>Defining =
Continuity</SPAN></H2>
<P>We are now ready to define the concept of a function being =
<B>continuous</B>.=20
The idea is that we want to say that a function is continuous if you can =
draw=20
its graph without taking your pencil off the page. But sometimes this =
will be=20
true for some parts of a graph but not for others. Therefore, we want to =
start=20
by defining what it means for a function to be continuous at <I>one =
point</I>.=20
The definition is simple, now that we have the concept of limits:</P>
<DIV=20
style=3D"BORDER-RIGHT: #d6d6ff 2px solid; PADDING-RIGHT: 1em; =
BORDER-TOP: #d6d6ff 2px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; =
MARGIN: 1em 0em; BORDER-LEFT: #d6d6ff 2px solid; PADDING-TOP: 1em; =
BORDER-BOTTOM: #d6d6ff 2px solid"><B>Definition:=20
(continuity at a point)</B><BR>
<P>If <SPAN class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> is defined on an =
open=20
interval containing <SPAN class=3Dtexhtml><I>c</I></SPAN>, then <SPAN=20
class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> is said to be <B>continuous at =
<SPAN=20
class=3Dtexhtml><I>c</I></SPAN></B> if and only if</P><IMG class=3Dtex=20
alt=3D"\lim_{x \rightarrow c} f(x) =3D f(c)"=20
src=3D"http://upload.wikimedia.org/math/f/1/d/f1d5e95f573df2f6c7ddd3a4a8e=
48743.png">.</DIV>
<P>Note that for <SPAN class=3Dtexhtml><I>f</I></SPAN> to be continuous =
at <SPAN=20
class=3Dtexhtml><I>c</I></SPAN>, the definition in effect requires three =

conditions:</P>
<OL>
  <LI>that <SPAN class=3Dtexhtml><I>f</I></SPAN> is defined at <SPAN=20
  class=3Dtexhtml><I>c</I></SPAN>, so <SPAN=20
  class=3Dtexhtml><I>f</I>(<I>c</I>)</SPAN> exists,=20
  <LI>the limit as <SPAN class=3Dtexhtml><I>x</I></SPAN> approaches =
<SPAN=20
  class=3Dtexhtml><I>c</I></SPAN> exists, and=20
  <LI>the limit and <SPAN class=3Dtexhtml><I>f</I>(<I>c</I>)</SPAN> are =
equal.=20
  </LI></OL>
<P>If any of these do not hold then <SPAN =
class=3Dtexhtml><I>f</I></SPAN> is not=20
continuous at <SPAN class=3Dtexhtml><I>c</I></SPAN>.</P>
<P>The idea of the definition is that the point of the graph =
corresponding to=20
<SPAN class=3Dtexhtml><I>c</I></SPAN> will be close to the points of the =
graph=20
corresponding to nearby <SPAN class=3Dtexhtml><I>x</I></SPAN>-values. =
Now we can=20
define what it means for a function to be continuous in general, not =
just at one=20
point.</P>
<DIV=20
style=3D"BORDER-RIGHT: #d6d6ff 2px solid; PADDING-RIGHT: 1em; =
BORDER-TOP: #d6d6ff 2px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; =
MARGIN: 1em 0em; BORDER-LEFT: #d6d6ff 2px solid; PADDING-TOP: 1em; =
BORDER-BOTTOM: #d6d6ff 2px solid"><B>Definition:=20
(continuity)</B><BR>A function is said to be <B>continuous on <SPAN=20
class=3Dtexhtml>(<I>a</I>,<I>b</I>)</SPAN></B> if it is continuous at =
every point=20
of the interval <SPAN class=3Dtexhtml>(<I>a</I>,<I>b</I>)</SPAN>.</DIV>
<P>We often use the phrase "the function is continuous" to mean that the =

function is continuous at every real number. This would be the same as =
saying=20
the function was continuous on (=E2=88=92=E2=88=9E, =E2=88=9E), but it =
is a bit more convenient to=20
simply say "continuous".</P>
<P>Note that, by what we already know, the limit of a rational, =
exponential,=20
trigonometric or logarithmic function at a point is just its value at =
that=20
point, so long as it's defined there. So, all such functions are =
continuous=20
wherever they're defined. (Of course, they can't be continuous where =
they're=20
<I>not</I> defined!)</P>
<H2><SPAN class=3Deditsection>[<A title=3D"Edit section: =
Discontinuities"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D2">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline =
id=3DDiscontinuities>Discontinuities</SPAN></H2>
<P>A <B>discontinuity</B> is a point where a function is not continuous. =
There=20
are lots of possible ways this could happen, of course. Here we'll just =
discuss=20
two simple ways.</P>
<H3><SPAN class=3Deditsection>[<A title=3D"Edit section: Removable =
Discontinuities"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D3">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline id=3DRemovable_Discontinuities>Removable=20
Discontinuities</SPAN></H3>
<P>The function <IMG class=3Dtex alt=3D"f(x) =3D \frac {x^2-9} {x-3}"=20
src=3D"http://upload.wikimedia.org/math/4/6/7/467f3889aa560a345e5f4b8f932=
0eaca.png">=20
is not continuous at <SPAN class=3Dtexhtml><I>x</I> =3D 3</SPAN>. It is=20
discontinuous at that point because the fraction then becomes <IMG =
class=3Dtex=20
alt=3D\frac{0}{0}=20
src=3D"http://upload.wikimedia.org/math/8/6/9/8697cf36b40c1eabe7e786f2e79=
65888.png">,=20
which is undefined. Therefore the function fails the first of our three=20
conditions for continuity at the point 3; 3 is just not in its =
domain.</P>
<P>However, we say that this discontinuity is <B>removable</B>. This is =
because,=20
if we modify the function at that point, we can eliminate the =
discontinuity and=20
make the function continuous. To see how to make the function <SPAN=20
class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> continuous, we have to =
simplify <SPAN=20
class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN>, getting <IMG class=3Dtex=20
alt=3D"f(x) =3D \frac {x^2-9} {x-3} =3D \frac {(x+3)(x-3)} {(x-3)} =3D =
\frac {x+3} {1} \cdot \frac {x-3} {x-3}"=20
src=3D"http://upload.wikimedia.org/math/9/e/7/9e755c29e25e3c829c2b1c8af77=
70d57.png">.=20
We can define a new function <SPAN =
class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> where=20
<SPAN class=3Dtexhtml><I>g</I>(<I>x</I>) =3D <I>x</I> + 3</SPAN>. Note =
that the=20
function <SPAN class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> is not the same =
as the=20
original function <SPAN class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN>, =
because <SPAN=20
class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> is defined at <SPAN=20
class=3Dtexhtml><I>x</I> =3D 3</SPAN>, while <SPAN=20
class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> is not. Thus, <SPAN=20
class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> is continuous at <SPAN=20
class=3Dtexhtml><I>x</I> =3D 3</SPAN>, since <IMG class=3Dtex=20
alt=3D"\lim_{x\to 3} (x+3) =3D 6 =3D g(3)"=20
src=3D"http://upload.wikimedia.org/math/1/0/3/103e6980b3a852107db1c34d26e=
de504.png">.=20
However, whenever <IMG class=3Dtex alt=3D"x\ne 3"=20
src=3D"http://upload.wikimedia.org/math/0/b/4/0b46acfe1b4af26d88888202d0a=
03ce4.png">,=20
<SPAN class=3Dtexhtml><I>f</I>(<I>x</I>) =3D <I>g</I>(<I>x</I>)</SPAN>; =
all we did=20
to <SPAN class=3Dtexhtml><I>f</I></SPAN> to get <SPAN=20
class=3Dtexhtml><I>g</I></SPAN> was to make it defined at <SPAN=20
class=3Dtexhtml><I>x</I> =3D 3</SPAN>.</P>
<P>In fact, this kind of simplification is often possible with a =
discontinuity=20
in a rational function. We can divide the numerator and the denominator =
by a=20
common factor (in our example <SPAN class=3Dtexhtml><I>x</I> =E2=88=92 =
3</SPAN>) to get a=20
function which is the same except where that common factor was 0 (in our =
example=20
at <SPAN class=3Dtexhtml><I>x</I> =3D 3</SPAN>). This new function will =
be identical=20
to the old except for being defined at new points where previously we =
had=20
division by 0.</P>
<P>Unfortunately this is not possible in every case. For example, the =
function=20
<IMG class=3Dtex alt=3D"\textstyle f(x)=3D\frac{x-3}{x^2-6x+9}"=20
src=3D"http://upload.wikimedia.org/math/1/e/4/1e44fdc5dfcd0739acc380f453c=
99dff.png">=20
has a common factor of <SPAN class=3Dtexhtml><I>x</I> =E2=88=92 3</SPAN> =
in both the=20
numerator and denominator, but when you simplify you are left with <IMG=20
class=3Dtex alt=3Dg(x)=3D\textstyle\frac{1}{x-3}=20
src=3D"http://upload.wikimedia.org/math/0/c/9/0c9a548b55c2924bc0d96467124=
bdab2.png">.=20
Which is still not defined at <SPAN class=3Dtexhtml><I>x</I> =3D =
3</SPAN>. In this=20
case the domain of <SPAN class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> and =
<SPAN=20
class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> are the same, and they are =
equal=20
everywhere they are defined, so they are in fact the same function. The =
reason=20
that <SPAN class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> differed from <SPAN =

class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> in the first example was =
because we=20
could take it to have a larger domain and not simply that the formulas =
defining=20
<SPAN class=3Dtexhtml><I>f</I>(<I>x</I>)</SPAN> and <SPAN=20
class=3Dtexhtml><I>g</I>(<I>x</I>)</SPAN> were different.</P>
<H3><SPAN class=3Deditsection>[<A title=3D"Edit section: Jump =
Discontinuities"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D4">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline id=3DJump_Discontinuities>Jump =
Discontinuities</SPAN></H3>
<P><A class=3Dimage title=3D"Illustration of jump discontinuity"=20
href=3D"http://en.wikibooks.org/wiki/File:Upper_semi.svg"><IMG =
height=3D153=20
alt=3D"Illustration of jump discontinuity"=20
src=3D"http://upload.wikimedia.org/wikipedia/commons/thumb/c/c0/Upper_sem=
i.svg/214px-Upper_semi.svg.png"=20
width=3D214></A></P>
<P>Unfortunately, not all discontinuities can be removed from a =
function.=20
Consider this function:</P>
<DL>
  <DD><IMG class=3Dtex=20
  alt=3D"k(x) =3D \left\{\begin{matrix} 1, &amp; \mbox{if }x > 0 \\ -1, =
&amp; \mbox{if }x \le 0 \end{matrix}\right. "=20
  =
src=3D"http://upload.wikimedia.org/math/6/c/9/6c966503e33f953811f6486eca7=
2fe56.png">=20
  </DD></DL>
<P>Since <IMG class=3Dtex alt=3D"\lim_{x\to 0} k(x)"=20
src=3D"http://upload.wikimedia.org/math/e/a/6/ea6619add3f3bb395bcb8e6175a=
0c735.png">=20
does not exist, there is no way to redefine <SPAN =
class=3Dtexhtml><I>k</I></SPAN>=20
at one point so that it will be continuous at 0. These sorts of =
discontinuities=20
are called <I>nonremovable</I> discontinuities.</P>
<P>Note, however, that both one-sided limits exist; <IMG class=3Dtex=20
alt=3D"\lim_{x\to 0^-} k(x) =3D -1"=20
src=3D"http://upload.wikimedia.org/math/c/4/3/c43236655413242f75398bc1a05=
2d367.png">=20
and <IMG class=3Dtex alt=3D"\lim_{x\to 0^+} k(x) =3D 1"=20
src=3D"http://upload.wikimedia.org/math/9/4/7/9473bb4e4dc8bd1a3bf8fea3d6e=
ce60f.png">.=20
The problem is that they are not equal, so the graph "jumps" from one =
side of 0=20
to the other. In such a case, we say the function has a <I>jump</I>=20
discontinuity. (Note that a jump discontinuity is a kind of nonremovable =

discontinuity.)</P>
<H2><SPAN class=3Deditsection>[<A title=3D"Edit section: One-Sided =
Continuity"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D5">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline id=3DOne-Sided_Continuity>One-Sided =
Continuity</SPAN></H2>
<P>Just as a function can have a one-sided limit, a function can be =
continuous=20
from a particular side. For a function to be continuous at a point from =
a given=20
side, we need the following three conditions:</P>
<OL>
  <LI>the function is defined at the point,=20
  <LI>the function has a limit from that side at that point and=20
  <LI>the one-sided limit equals the value of the function at the point. =

</LI></OL>
<P>A function will be continuous at a point if and only if it is =
continuous from=20
both sides at that point. Now we can define what it means for a function =
to be=20
continuous on a closed interval.</P>
<DIV=20
style=3D"BORDER-RIGHT: #d6d6ff 2px solid; PADDING-RIGHT: 1em; =
BORDER-TOP: #d6d6ff 2px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; =
MARGIN: 1em 0em; BORDER-LEFT: #d6d6ff 2px solid; PADDING-TOP: 1em; =
BORDER-BOTTOM: #d6d6ff 2px solid"><B>Definition:=20
(continuity on a closed interval)</B><BR>
<P>A function is said to be <B>continuous on <SPAN=20
class=3Dtexhtml>[<I>a</I>,<I>b</I>]</SPAN></B> if and only if</P>
<OL>
  <LI>it is continuous on <SPAN =
class=3Dtexhtml>(<I>a</I>,<I>b</I>)</SPAN>,=20
  <LI>it is continuous from the right at <SPAN =
class=3Dtexhtml><I>a</I></SPAN> and=20

  <LI>it is continuous from the left at <SPAN =
class=3Dtexhtml><I>b</I></SPAN>.=20
  </LI></OL></DIV>
<P>Notice that, if a function is continuous, then it is continuous on =
every=20
closed interval contained in its domain.</P>
<H2><SPAN class=3Deditsection>[<A title=3D"Edit section: Intermediate =
Value Theorem"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D6">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline id=3DIntermediate_Value_Theorem>Intermediate =
Value=20
Theorem</SPAN></H2>
<P>The definition of continuity we've given might not seem to have much =
to do=20
with the intuitive notion we started with of being able to draw the =
graph=20
without lifting one's pencil. Fortunately, there is a connection, given =
by the=20
so-called intermediate value theorem, which says, informally, that if a =
function=20
is continuous then its graph can be drawn without ever picking up one's =
pencil.=20
More precisely:</P>
<DIV=20
style=3D"BORDER-RIGHT: #d6d6ff 2px solid; PADDING-RIGHT: 1em; =
BORDER-TOP: #d6d6ff 2px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; =
MARGIN: 1em 0em; BORDER-LEFT: #d6d6ff 2px solid; PADDING-TOP: 1em; =
BORDER-BOTTOM: #d6d6ff 2px solid"><B>Intermediate=20
Value Theorem</B><BR>If a function <SPAN class=3Dtexhtml><I>f</I></SPAN> =
is=20
continuous on a closed interval <SPAN =
class=3Dtexhtml>[<I>a</I>,<I>b</I>]</SPAN>,=20
then for every value <SPAN class=3Dtexhtml><I>k</I></SPAN> between <SPAN =

class=3Dtexhtml><I>f</I>(<I>a</I>)</SPAN> and <SPAN=20
class=3Dtexhtml><I>f</I>(<I>b</I>)</SPAN> there is a value <SPAN=20
class=3Dtexhtml><I>c</I></SPAN> between <SPAN =
class=3Dtexhtml><I>a</I></SPAN> and=20
<SPAN class=3Dtexhtml><I>b</I></SPAN> such that <SPAN=20
class=3Dtexhtml><I>f</I>(<I>c</I>) =3D <I>k</I></SPAN>.</DIV>
<H3><SPAN class=3Deditsection>[<A=20
title=3D"Edit section: Application: bisection method"=20
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit&amp;section=3D7">edit</A>]</SPAN>=20
<SPAN class=3Dmw-headline =
id=3DApplication:_bisection_method>Application: bisection=20
method</SPAN></H3>
<DIV class=3D"thumb tright">
<DIV class=3Dthumbinner style=3D"WIDTH: 252px"><A class=3Dimage=20
href=3D"http://en.wikibooks.org/wiki/File:Bisection_method.png"><IMG=20
class=3Dthumbimage height=3D291 alt=3D""=20
src=3D"http://upload.wikimedia.org/wikipedia/commons/thumb/c/c2/Bisection=
_method.png/250px-Bisection_method.png"=20
width=3D250></A>=20
<DIV class=3Dthumbcaption>
<DIV class=3Dmagnify><A class=3Dinternal title=3DEnlarge=20
href=3D"http://en.wikibooks.org/wiki/File:Bisection_method.png"><IMG =
height=3D11=20
alt=3D"" =
src=3D"http://en.wikibooks.org/skins-1.5/common/images/magnify-clip.png" =

width=3D15></A></DIV>A few steps of the bisection method applied over =
the starting=20
range [a<SUB>1</SUB>;b<SUB>1</SUB>]. The bigger red dot is the root of =
the=20
function.</DIV></DIV></DIV>
<P>The bisection method is the simplest and most reliable algorithm to =
find=20
zeros of a continuous function.</P>
<P>Suppose we want to solve the equation <SPAN =
class=3Dtexhtml><I>f</I>(<I>x</I>)=20
=3D 0</SPAN>. Given two points <SPAN class=3Dtexhtml><I>a</I></SPAN> and =
<SPAN=20
class=3Dtexhtml><I>b</I></SPAN> such that <SPAN=20
class=3Dtexhtml><I>f</I>(<I>a</I>)</SPAN> and <SPAN=20
class=3Dtexhtml><I>f</I>(<I>b</I>)</SPAN> have opposite signs, the =
intermediate=20
value theorem tells us that <SPAN class=3Dtexhtml><I>f</I></SPAN> must =
have at=20
least one root between <SPAN class=3Dtexhtml><I>a</I></SPAN> and <SPAN=20
class=3Dtexhtml><I>b</I></SPAN> as long as <SPAN =
class=3Dtexhtml><I>f</I></SPAN> is=20
continuous on the interval <SPAN =
class=3Dtexhtml>[<I>a</I>,<I>b</I>]</SPAN>. If we=20
know <SPAN class=3Dtexhtml><I>f</I></SPAN> is continuous in general =
(say, because=20
it's made out of rational, trigonometric, exponential and logarithmic=20
functions), then this will work so long as <SPAN =
class=3Dtexhtml><I>f</I></SPAN>=20
is defined at all points between <SPAN class=3Dtexhtml><I>a</I></SPAN> =
and <SPAN=20
class=3Dtexhtml><I>b</I></SPAN>. So, let's divide the interval <SPAN=20
class=3Dtexhtml>[<I>a</I>,<I>b</I>]</SPAN> in two by computing <SPAN=20
class=3Dtexhtml><I>c</I> =3D (<I>a</I> + <I>b</I>) / 2</SPAN>. There are =
now three=20
possibilities:</P>
<OL>
  <LI><SPAN class=3Dtexhtml><I>f</I>(<I>c</I>) =3D 0</SPAN>,=20
  <LI><SPAN class=3Dtexhtml><I>f</I>(<I>a</I>)</SPAN> and <SPAN=20
  class=3Dtexhtml><I>f</I>(<I>c</I>)</SPAN> have opposite signs, or=20
  <LI><SPAN class=3Dtexhtml><I>f</I>(<I>c</I>)</SPAN> and <SPAN=20
  class=3Dtexhtml><I>f</I>(<I>b</I>)</SPAN> have opposite signs. =
</LI></OL>
<P>In the first case, we're done. In the second and third cases, we can =
repeat=20
the process on the sub-interval where the sign change occurs. In this =
way we=20
home in to a small sub-interval containing the zero. The midpoint of =
that small=20
sub-interval is usually taken as a good approximation to the zero.</P>
<P>Note that, unlike the methods you may have learned in algebra, this =
works for=20
<I>any</I> continuous function that you (or your calculator) know how to =

compute.</P>
<DIV class=3Dnoprint align=3Dcenter>
<P><B>Navigation</B>: <SMALL><A title=3DCalculus=20
href=3D"http://en.wikibooks.org/wiki/Calculus">Main Page</A> =C2=B7 <A=20
title=3DCalculus/Precalculus=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Precalculus">Precalculus</A=
> =C2=B7 <A=20
title=3DCalculus/Limits=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Limits">Limits</A> =C2=B7 =
<A=20
title=3DCalculus/Differentiation/Contents=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Differentiation/Contents">D=
ifferentiation</A>=20
=C2=B7 <A title=3DCalculus/Integration/Contents=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Integration/Contents">Integ=
ration</A>=20
=C2=B7 <A title=3D"Calculus/Parametric Introduction"=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Parametric_Introduction">Pa=
rametric=20
Equations</A> =C2=B7 <A title=3D"Calculus/Polar Introduction"=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Polar_Introduction">Polar=20
Equations</A> =C2=B7 <A title=3D"Calculus/Sequences and Series"=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Sequences_and_Series">Seque=
nces and=20
Series</A> =C2=B7 <A title=3DCalculus/Vectors=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Vectors">Vector =
Calculations</A> =C2=B7=20
<A title=3D"Calculus/Multivariable and differential calculus"=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Multivariable_and_different=
ial_calculus">Multivariable=20
Calculus &amp; Differential Equations</A> =C2=B7 <A =
title=3DCalculus/Extensions=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Extensions">Extensions</A> =
=C2=B7 <A=20
title=3DCalculus/References=20
href=3D"http://en.wikibooks.org/wiki/Calculus/References">References</A><=
/SMALL></P></DIV><!-- =0A=
NewPP limit report=0A=
Preprocessor node count: 774/1000000=0A=
Post-expand include size: 3335/2048000 bytes=0A=
Template argument size: 1713/2048000 bytes=0A=
Expensive parser function count: 0/500=0A=
--><!-- Saved in parser cache with key =
enwikibooks:pcache:idhash:34720-0!1!0!default!!en!2 and timestamp =
20091112134903 -->
<DIV class=3Dprintfooter>Retrieved from "<A=20
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity">http://en.wikib=
ooks.org/wiki/Calculus/Continuity</A>"</DIV>
<DIV class=3Dcatlinks id=3Dcatlinks>
<DIV id=3Dmw-normal-catlinks><A title=3DSpecial:Categories=20
href=3D"http://en.wikibooks.org/wiki/Special:Categories">Category</A>: =
<SPAN=20
dir=3Dltr><A title=3D"Category:Calculus (book)"=20
href=3D"http://en.wikibooks.org/wiki/Category:Calculus_(book)">Calculus=20
(book)</A></SPAN></DIV></DIV><!-- end content -->
<DIV class=3DvisualClear></DIV></DIV></DIV></DIV>
<DIV id=3Dcolumn-one>
<DIV class=3Dportlet id=3Dp-cactions>
<H5>Views</H5>
<DIV class=3DpBody>
<UL lang=3Den xml:lang=3D"en">
  <LI class=3Dselected id=3Dca-nstab-main><A title=3D"View the content =
page [c]"=20
  accessKey=3Dc =
href=3D"http://en.wikibooks.org/wiki/Calculus/Continuity">Module</A>=20

  <LI id=3Dca-talk><A title=3D"Discussion about the content page [t]" =
accessKey=3Dt=20
  =
href=3D"http://en.wikibooks.org/wiki/Talk:Calculus/Continuity">Discussion=
</A>=20
  <LI id=3Dca-edit><A=20
  title=3D"You can edit this page.&#10;Please use the preview button =
before saving [e]"=20
  accessKey=3De=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dedit">Edit=20
  this page</A>=20
  <LI id=3Dca-history><A title=3D"Past revisions of this page [h]" =
accessKey=3Dh=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;action=3Dhistory">History</A>=20
  </LI></UL></DIV></DIV>
<DIV class=3Dportlet id=3Dp-personal>
<H5>Personal tools</H5>
<DIV class=3DpBody>
<UL lang=3Den xml:lang=3D"en">
  <LI id=3Dpt-optin-try><A class=3Dno-text-transform title=3D"Try out =
new features"=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DSpecial:UsabilityInit=
iativeOptIn&amp;from=3DCalculus%2FContinuity">Try=20
  Beta</A>=20
  <LI id=3Dpt-login><A=20
  title=3D"You are encouraged to log in; however, it is not mandatory =
[o]"=20
  accessKey=3Do=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DSpecial:UserLogin&amp=
;returnto=3DCalculus/Continuity">Log=20
  in / create account</A> </LI></UL></DIV></DIV>
<DIV class=3Dportlet id=3Dp-logo><A title=3D"Visit the main page"=20
style=3D"BACKGROUND-IMAGE: =
url(http://upload.wikimedia.org/wikibooks/en/b/bc/Wiki.png)"=20
href=3D"http://en.wikibooks.org/wiki/Main_Page"></A></DIV>
<SCRIPT type=3Dtext/javascript> if (window.isMSIE55) fixalpha(); =
</SCRIPT>

<DIV class=3D"generated-sidebar portlet" id=3Dp-navigation>
<H5 lang=3Den xml:lang=3D"en">Navigation</H5>
<DIV class=3DpBody>
<UL>
  <LI id=3Dn-mainpage><A title=3D"Visit the main page [z]" accessKey=3Dz =

  href=3D"http://en.wikibooks.org/wiki/Main_Page">Main Page</A>=20
  <LI id=3Dn-help><A title=3D"find help on how to use and edit =
Wikibooks"=20
  href=3D"http://en.wikibooks.org/wiki/Help:Contents">Help</A>=20
  <LI id=3Dn-Browse><A title=3D"check out what Wikibooks has to offer."=20
  =
href=3D"http://en.wikibooks.org/wiki/Wikibooks:Card_Catalog_Office">Brows=
e</A>=20
  <LI id=3Dn-Cookbook><A title=3D"learn recipes from around the world."=20
  =
href=3D"http://en.wikibooks.org/wiki/Cookbook:Table_of_Contents">Cookbook=
</A>=20
  <LI id=3Dn-Wikijunior><A title=3D"books for children"=20
  href=3D"http://en.wikibooks.org/wiki/Wikijunior">Wikijunior</A>=20
  <LI id=3Dn-Featured-books><A title=3D"the best of Wikibooks"=20
  =
href=3D"http://en.wikibooks.org/wiki/Wikibooks:Featured_books">Featured=20
  books</A>=20
  <LI id=3Dn-recentchanges><A title=3D"The list of recent changes in the =
wiki [r]"=20
  accessKey=3Dr =
href=3D"http://en.wikibooks.org/wiki/Special:RecentChanges">Recent=20
  changes</A>=20
  <LI id=3Dn-sitesupport><A title=3D"Support Wikibooks"=20
  href=3D"http://wikimediafoundation.org/wiki/Donate">Donations</A>=20
</LI></UL></DIV></DIV>
<DIV class=3Dportlet id=3Dp-search>
<H5 lang=3Den xml:lang=3D"en"><LABEL =
for=3DsearchInput>Search</LABEL></H5>
<DIV class=3DpBody id=3DsearchBody>
<FORM id=3Dsearchform action=3D/w/index.php><INPUT type=3Dhidden =
value=3DSpecial:Search=20
name=3Dtitle> <INPUT id=3DsearchInput title=3D"Search Wikibooks" =
accessKey=3Df=20
name=3Dsearch> <INPUT class=3DsearchButton id=3DsearchGoButton =
title=3D"Go to a page with this exact name if exists" type=3Dsubmit =
value=3DGo name=3Dgo>&nbsp;=20
<INPUT class=3DsearchButton id=3Dmw-searchButton title=3D"Search the =
pages for this text" type=3Dsubmit value=3DSearch name=3Dfulltext>=20
</FORM></DIV></DIV>
<DIV class=3D"generated-sidebar portlet" id=3Dp-community>
<H5 lang=3Den xml:lang=3D"en">community</H5>
<DIV class=3DpBody>
<UL>
  <LI id=3Dn-currentevents><A title=3D"important community news"=20
  =
href=3D"http://en.wikibooks.org/wiki/Wikibooks:Bulletin_board">Bulletin=20
  Board</A>=20
  <LI id=3Dn-portal><A title=3D"find your way around the Wikibooks =
community"=20
  =
href=3D"http://en.wikibooks.org/wiki/Wikibooks:Community_Portal">Communit=
y=20
  portal</A>=20
  <LI id=3Dn-Reading-room><A=20
  href=3D"http://en.wikibooks.org/wiki/Wikibooks:Reading_room">Reading =
room</A>=20
  <LI id=3Dn-maintenance><A title=3D"frequent tasks that you can help =
with"=20
  href=3D"http://en.wikibooks.org/wiki/Wikibooks:Maintenance">Help =
out!</A>=20
  <LI id=3Dn-Policies-and-guidelines><A=20
  =
href=3D"http://en.wikibooks.org/wiki/Wikibooks:Policies_and_guidelines">P=
olicies=20
  and guidelines</A>=20
  <LI id=3Dn-contact><A=20
  href=3D"http://en.wikibooks.org/wiki/Wikibooks:Contact_us">Contact =
us</A>=20
</LI></UL></DIV></DIV>
<DIV class=3D"generated-sidebar portlet" id=3Dp-coll-print_export>
<H5 lang=3Den xml:lang=3D"en">Print/export</H5>
<DIV class=3DpBody>
<UL id=3DcollectionPortletList>
  <LI id=3Dcoll-create_a_book><A title=3D"Create a book or page =
collection"=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DSpecial:Book&amp;book=
cmd=3Dbook_creator&amp;referer=3DCalculus%2FContinuity"=20
  rel=3Dnofollow>Create a book</A>
  <LI id=3Dcoll-download-as-rl><A title=3D"Download a PDF version of =
this wiki page"=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DSpecial:Book&amp;book=
cmd=3Drender_article&amp;arttitle=3DCalculus%2FContinuity&amp;oldid=3D165=
5497&amp;writer=3Drl"=20
  rel=3Dnofollow>Download as PDF</A>
  <LI id=3Dt-print><A title=3D"Printable version of this page [p]" =
accessKey=3Dp=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;printable=3Dyes">Printable=20
  version</A></LI></UL></DIV></DIV>
<DIV class=3Dportlet id=3Dp-tb>
<H5 lang=3Den xml:lang=3D"en">Toolbox</H5>
<DIV class=3DpBody>
<UL>
  <LI id=3Dt-whatlinkshere><A title=3D"List of all wiki pages that link =
here [j]"=20
  accessKey=3Dj=20
  =
href=3D"http://en.wikibooks.org/wiki/Special:WhatLinksHere/Calculus/Conti=
nuity">What=20
  links here</A>=20
  <LI id=3Dt-recentchangeslinked><A=20
  title=3D"Recent changes in pages linked from this page [k]" =
accessKey=3Dk=20
  =
href=3D"http://en.wikibooks.org/wiki/Special:RecentChangesLinked/Calculus=
/Continuity">Related=20
  changes</A>=20
  <LI id=3Dt-specialpages><A title=3D"List of all special pages [q]" =
accessKey=3Dq=20
  href=3D"http://en.wikibooks.org/wiki/Special:SpecialPages">Special =
pages</A>=20
  <LI id=3Dt-permalink><A title=3D"Permanent link to this revision of =
the page"=20
  =
href=3D"http://en.wikibooks.org/w/index.php?title=3DCalculus/Continuity&a=
mp;oldid=3D1655497">Permanent=20
  link</A> </LI></UL></DIV></DIV></DIV><!-- end of the left (by default =
at least) column -->
<DIV class=3DvisualClear></DIV>
<DIV id=3Dfooter>
<DIV id=3Df-poweredbyico><A href=3D"http://www.mediawiki.org/"><IMG =
height=3D31=20
alt=3D"Powered by MediaWiki"=20
src=3D"http://en.wikibooks.org/skins-1.5/common/images/poweredby_mediawik=
i_88x31.png"=20
width=3D88></A></DIV>
<DIV id=3Df-copyrightico><A =
href=3D"http://wikimediafoundation.org/"><IMG height=3D31=20
alt=3D"Wikimedia Foundation"=20
src=3D"http://en.wikibooks.org/images/wikimedia-button.png" =
width=3D88></A></DIV>
<UL id=3Df-list>
  <LI id=3Dlastmod>This page was last modified on 12 November 2009, at =
13:49.=20
  <LI id=3Dcopyright>Text is available under the <A=20
  href=3D"http://creativecommons.org/licenses/by-sa/3.0/">Creative =
Commons=20
  Attribution/Share-Alike License</A>; additional terms may apply. See =
<A=20
  href=3D"http://wikimediafoundation.org/wiki/Terms_of_Use">Terms of =
Use</A> for=20
  details.=20
  <LI id=3Dprivacy><A title=3D"wikimedia:Privacy policy"=20
  href=3D"http://wikimediafoundation.org/wiki/Privacy_policy">Privacy =
policy</A>=20
  <LI id=3Dabout><A title=3DWikibooks:About=20
  href=3D"http://en.wikibooks.org/wiki/Wikibooks:About">About =
Wikibooks</A>=20
  <LI id=3Ddisclaimer><A title=3D"Wikibooks:General disclaimer"=20
  =
href=3D"http://en.wikibooks.org/wiki/Wikibooks:General_disclaimer">Discla=
imers</A>=20
  </LI></UL></DIV></DIV>
<SCRIPT type=3Dtext/javascript>if (window.runOnloadHook) =
runOnloadHook();</SCRIPT>
<!-- Served by srv89 in 0.083 secs. --></BODY></HTML>

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/f/1/d/f1d5e95f573df2f6c7ddd3a4a8e48743.png

iVBORw0KGgoAAAANSUhEUgAAAIIAAAAaBAMAAACJGJngAAAAMFBMVEX///8AAAC2trYwMDAiIiKK
iorm5uYEBAR0dHQMDAzMzMxAQEBQUFCenp5iYmIWFhbuYtYiAAACgElEQVQ4EZ2UQWgTURCG/2yT
NNnsJgVBNCBuL4IUJAeFopccFKUg5CIKgmxQUPHSkwdBWKQUpRKqB+mhhy1eKgq2oRRRiDl4Eg9B
PXlxVdBqtQTPgs7svLfb7baHOPDezPzfvNn3NnkL7GB50ZXbpshlbWcMvJZFBUd8arZ8lhgbhxv2
Pk5iszsByj2Vr8a6jpjjl2SML3v2Tc3ENy/18VBLF3UQe+ZmTXLGRS9mEt3Ju5jQYklvRgsA86wv
OeN0h2OA2dcLjLqOIk8cT1Vm1LmD+UGlys0B5W4kTUaRDojjp04IF73He4yTZ1oTi1NeKH/Z1Ua2
Qe+4tbpWA07rWu2Z4wRlZud2iOkUcxh+jhXP3B0WGSPAsA8s4nihCnRYfPmXrc4hmOMGjY/uaI9x
2KFYwydAftXCLJBxgQB/4ABvqDZhzEEPM6t4EmLpEOCb7lCqUQcqcqXjemI5JcwxAmTrTAjrDt91
h0ogHWBTWVjCLjbm3KHpsbZdh0xPTgGrT/uQU2x+D8z5FKMOecapPSy4JBJ1Kt28BzyjsoQxx33a
gw/TZ5zqcJYKhhrIVR8FZQp/00gYcxyh99DAIcbm8vzY3s/L89a99rv9HsNXNApLMMenx79SOMna
ZmOOGbrZnRadJ4UJnqKRn+UyNntJfDwzx1WVpzEM5zpD+tuJDfk6Eq94yZF0KyY10w4fGl3qMamM
ZsXzNVG2YlKtdZdZzuOZTFVKQrPiOCcKYXumJd+CA0DrblSIWxKW3VhKRPx9ozvsAlfs/lGOYcEK
DobRoJPVxbUXZCsPFgZdquorPTeMCs7U/3W40KRrzPYW75ELowGn8xsbvlpirf0YcDGX/wNHlKPR
t8UG3AAAAABJRU5ErkJggg==

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/4/6/7/467f3889aa560a345e5f4b8f9320eaca.png

iVBORw0KGgoAAAANSUhEUgAAAHcAAAAsCAMAAABorteMAAAAM1BMVEX////o6Oi7u7uSkpI6Ojps
bGwEBATR0dEsLCwLCwtKSkogICBaWlp+fn6mpqYAAAAUFBSBjHY3AAACoklEQVRYCbVYSYKEIAxk
U1BZ/P9rJyAgIKIyNJdWElJsqYqN0MjGpVzxyIDvYmGG0LS/8x3ppQ1EM7oZUrfNzbG3RoIQN/zW
jBDdKBXgNb6tayOmNnD6eP/BFVBwxPdNbNa2qXuPTguRiDf22ThcKTqjF8Pwuio0yQkhQuEIn3GX
IkDfK54w2ldCjeazgdaIsrj1spZLY3RhskyxMURgvU9NupXuY3BtWsywwWXDOmmHEe9wpdQ6BhdC
EpsfZQPSPJs3YrlOXLrdLt173r+R49ZK8U/wwmbti6y09x3hJqO9xqWG4FmCIFS2ugwiZ+iR4Bwb
DqSpwsNhUo/R6E4Z3/Saj4uBswciMZx60kXZdBAcLXeLPQK7Kb9UGa5USit45sJuAcIXCiNNwk2m
3vNIF0+r7Dpvce3qgaiOWX1G8UqxQC9bUA3R1bn5s66KZ40TulDKQUrOQrrd3D3dnQoDvj+QSz+D
WJuYIxlOhbEOIr34fsSYH+qJ2tVlEDJXmEinJ9vC0wjkEDng2lWfChOsN0hWcr83FywQdcCFzkRh
HnBvpvOme/EkleAmChNx031+IfKPyNhfJ6i5I8kmCvOze3Uu88ijQmF+lkdxI9HBG4XCjOMNqHzS
zT830vNkpjDjeHKatArMZPVgiaeKKrpQ6Uon/f5Z2/JGzV5XZ8GTMotfRIBcet4j5Z6u2NDhc5Gp
7PusQ/fz6Pdv2Cq+ireF5AXF5zrnAMqU5B4bBeVruHwx5UpyN5JoNoTXz/i5kpz9+RPR+aHm1p63
XEmgTks+UbKcJXNa1/VAlWMSJYF/G1Iuzzz30XVioiQZUHjBi9OSLcnaYPrXb6Ik1TjcONyh6y2U
pIqLhE3YWFLVfT72FkpSH42ZwnqwuGVKUoeFXjLFz60/ye8Vp+htBJgAAAAASUVORK5CYII=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/8/6/9/8697cf36b40c1eabe7e786f2e7965888.png

iVBORw0KGgoAAAANSUhEUgAAAAoAAAApBAMAAAD+JKUWAAAALVBMVEX///8AAADMzMxAQEBiYmJQ
UFDm5uYMDAyKiooiIiIwMDAEBASenp4WFhZ0dHTb8MGvAAAAS0lEQVQIHWNgUHYJYGBgK2PoZGBg
XcDAfYCB3YGB04CBsYGB6wKDYgMD8wYsJOMDkCxQJa8BVBdbEcgEBuUnQNNIBYIggFsT9V0IAJeu
IRL/zqtLAAAAAElFTkSuQmCC

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/9/e/7/9e755c29e25e3c829c2b1c8af7770d57.png

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
hgAAAABJRU5ErkJggg==

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/1/0/3/103e6980b3a852107db1c34d26ede504.png

iVBORw0KGgoAAAANSUhEUgAAALoAAAAbBAMAAAA5YIiJAAAAMFBMVEX///8AAAC2trYWFhZ0dHQM
DAxAQEBQUFCenp4EBAQiIiJiYmKKiorMzMwwMDDm5uaweKW9AAAC/ElEQVRIDa1VPWgTYRh+cs0l
1yTXK1rBJXg4tKiDqR0cXA6RCmYwFqHgYlql0joYJycl4uAmQRcX8UYRq6etVUgLKVRdRBLErUjA
DoIWk6FCl+L3e7nvcgGHvJDvfZ/nfZ8nly9fvgDhsMKEwL34iPEW4yIFtyPGKRW3ezS66GSdUVSg
jTvGwcBAuhwAsry/8ge4IZHM5rWqLJX8HvAFumM8DjS/B2pZag7mgT0JZb7XStVkHchmE5ov0J1A
B1hUEN/BxFOs15AoKy1YD9GuqRRDqTo6AtXdzCnzLkOZHHXXOPD7yYJfKsVXoCNQ3dMlZdKViOwM
KhLwrBdVLNE7VgiB7hwd0cY/5xePnXMAupNavrjcZCNweYJJv5pnAojUXs13fdHV1TW8oH0pIM9+
EYPbWHDMLDBYBzbxPE5KGi5bYSzVSHGdgisTNFxSNRZxpKUwSDnpLJ4Qzhcwd72J1wA5mTEy7+Gk
ZZMREi5byfKSvG5JwHPDhV5SqSVkKjjEOCHg7h7ecnfW2idFriwaHrAiAc+NElIFlRpBwsUw44Qg
wt3gAz8mJh7xTSCfifiE3GPEvaK4Z7LQPeEuBCH3FplP56TIZcVuETHiw3ams+8DRf7sHSY9jLZN
d6YjUN11GygPlCyH2Yp93/XQbgJXOSdX8gyDngQsxwtYB6aIuy9Q3YdqyGS/eUmhcllO2phvAScE
KdMUPsiSZ7NiXQJ+A75Am5kePfBmZjp5YfbBfg/xIsyt81trQubyPHmH3GLhXxP25sLn/eyZU8Ak
GY0WwCpwP7G6AWQUA6BHaZHTtiN7EYJZ2WO5GUBD9QCILE163JGwRVMVGBs/I+5Z32fUr3oVN7FT
A6ym6KuCWPkuud4c0etKzS4mTHzJs0++IXhVoIG443RYI3CanJr/i7jN5qjAmMxvM3CcrL9Y1cdl
08jxvyNyxMde9dGYWyVL+DtHYuGyxW/Uvr7DQJnbxe11xJy+WgOf2uQ+p3EYY/QO6m98rFbrwjGz
TK6IvsY/yj3HpZs85n8AAAAASUVORK5CYII=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/0/b/4/0b46acfe1b4af26d88888202d0a03ce4.png

iVBORw0KGgoAAAANSUhEUgAAAC4AAAAUCAMAAADFhv/OAAAANlBMVEX///8AAAC2trZ0dHRiYmJA
QEDm5uYwMDDMzMwiIiIWFhZQUFCenp6KiooMDAwKCgoICAgEBATQEDoWAAAA6klEQVQoFZVSbRvD
EAyUhlCqL///zy6hrMxjW77gkpw7odQs3Cz5kYuhQlvQxn7p9lTKF+SducpxuD7IzcWdEeKw7gbf
5Cp6xiJsk3J8K89VWcyC2pBG23fuVXnOuGvhjWMX66oQim/jUxwnL2vl2LRPyjUjnu+V1mfsz0Pa
ryJArhx40ELThoOMbdDicmrJl+QDMhjkmaqxpP08koFbu4O0AZ4TaxbpJHOrQS05XWKTwPLbO7ez
plZqaJo5KwOS0TqLSBZ11SI3dOSMoAnWNjVSd0dPXvDxSmL99wjTn9fz/Emuyu/peZR6ATjDBTyD
h8fSAAAAAElFTkSuQmCC

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/1/e/4/1e44fdc5dfcd0739acc380f453c99dff.png

iVBORw0KGgoAAAANSUhEUgAAAHwAAAAZBAMAAAABCVdkAAAAMFBMVEX///8AAACenp5AQEBiYmLm
5uYiIiIWFhZ0dHQMDAwwMDC2trbMzMyKiooEBARQUFBy9gETAAACQ0lEQVQ4EZ1UP2gTYRT/9ZJr
L7lcm1QKghkOHHQpBNJiqEvAa8ngcIKCdAoOujgEERwUPNo6WIdmDKhQ6VKLw4mjgwcuKg4Bs5vB
7BkcHAR97979zaUt+uC79/t+v/fL9325ex/w77G8a2ZMqjBByshJYlEpJ6c+/i2M5maUDOGm7ect
IG8GVauZ6oBQtnfuBjDXTBSpS3eALyGxGYLJfFPpvBFO37ATota9AYQ/jJyZkFJwYYx8vV5vwNZH
CaFYA0qdkNDbIZrMc6YsapRxNqEVHDr6OCKGEUqDwTU0fUYfq+diKf/qwMVsH9B3Vlv7wK1YSqFv
luUJMdil6ijeEpr3gE+4rVWBFRYuPeBoMzwtnlLBDB2ricdwgT+n1U/oa2ynYWORlSv8iGOmclJQ
3X0abId8TBN2FjBo+Gnqg9fkzWOhQzuQzafPrjoFb6qVyNISPQp0aHdurDrAlIWUdrF/nN0YkkKy
Uf3czBN8OKXQ5jfDobWafoZC6cN3j7bcJqTVUDp8crhOcEgjE78CxlLLgnKAOlS7wKxDBAMJpRai
RDb6MiGzJ4jsWhfP8X7eZuKysHQML0RBvtjY8JZLpj8zenumNC7ZjS56OPPOF6I+lWlgpaQ6F4pf
KxV/DdBXOZLGJTte6D/wU+4Hwwkc+0GOk3yGfq/S39wDNe7m0eujA/v61suo6pmgvCwT0QTuxfef
zna/cXl1G/zOTw5jvcyvM4hHGEnjsr2qjUP+2GysWFdj8eO2K43L9hbdkf8ZbKf4C7v+cY/YafV7
AAAAAElFTkSuQmCC

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/0/c/9/0c9a548b55c2924bc0d96467124bdab2.png

iVBORw0KGgoAAAANSUhEUgAAAFsAAAAYBAMAAABn1JxoAAAAMFBMVEX///8AAABiYmKKiooWFha2
trYiIiJ0dHTm5uYMDAxAQEDMzMwEBAQwMDBQUFCenp6pw5bIAAABmElEQVQ4EY2TP0jDQBTGvyRN
GtN/cRALLrWKlipKpy66+WdTcdBFRHBxjAUpCErrIh2EIjgKpSJCFzO4idDdpdDRwQrOUkEQnMw1
d+n1UotvuPe99/3u7iUhwL8iYgtYwa1pEkxlVsCjtD4SQFqGBXye9o1CX17AQw1K6Uz07hJwzbvs
vpejlYA/eNCWp3gh4HOeF/YULzg8ObGMfcfbTp+dAFqbx6iOjd+wrmbJcTwDIUvbO7RhJBzDWCKx
whA+T0IpIw7ICLRUINriTb8ehVGBCeiQyBxypReRhrkwoYxhyCI48EkWESc9LmQTRZsMA7w7N7jD
/D17sIwF4ApQsYZz5ykt7iy/DNX1a6AJZB4vkQACG37G7cSyr444za8Cx8BT/iJXAPp/JrJBance
Th8BSqTuxA8TvqySd6FDqTsTeyO8iNj33ZRNe1XgDaW2s6lBO2qFCpZ064v9eZsHwGLuljhZakcY
1s0fQLpWq1k6dgqsG6TTpFijm9edr0EiA8ly1YBVSZmya++iSM8chFeTM66tTDfxC+YNS1o82xh+
AAAAAElFTkSuQmCC

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/wikipedia/commons/thumb/c/c0/Upper_semi.svg/214px-Upper_semi.svg.png

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

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/6/c/9/6c966503e33f953811f6486eca72fe56.png

iVBORw0KGgoAAAANSUhEUgAAAL0AAAAwBAMAAAC212YFAAAAMFBMVEX///8AAADMzMwiIiJAQECK
ioq2trbm5uZiYmIMDAx0dHQwMDAEBAQWFhZQUFCenp7xDfpTAAAD1klEQVRYCbVWTUgUYRh+d3Z1
VtddTQzxUqPtpTZJybpF4ymIfla6RcGKnaJgiw6mYCMFZZRJh5QONdKf/cH2D3aRLkUgCGVUkCwR
eAhhpY4deueb+d6Zb3Z3nJ3sO3zv8/497L7fNzMPgI/1S/FRFLwk9j54r5/OL4qfqsA1kUbeKqsc
kV0uQOKnTq4Akhfygl/GOaHyRHsHR2T/FOBsLEeuE8jjcMDpl8M9aSszuLeYH1NfhcaT5CVyUFcg
rzyYzPBcrCT/dZ5mdsNL7tZoEFa542E9+bcoIPJDarvFFUpDbM6Dl6e8+KVu/cjsbqOyemrXxRxr
Se40O1vTEJkxoefuxQ81uvX7N8HWWuuiDc0zvtXl12ABMtbvjLIjX13+LKy3p3AojXh1+aG+gfgP
LxowpDvPN2tmLUOlCPzNHxJzYDU/Ps/a8X7GVU6UUEx0lwds648/E8/LOmu6bBowny+pUzWiV4wN
V6T4D4j8mzVWxzd+f6oaN2pRIygvpa2cfJW9H0KGL+V4kAPLR0P8ie6mRWgdszN467snki3fMSJN
35tmY+krUD45lUfcm8UtrODG1n4OyBK/GdEp4Q+MGGXtVNtHiIPhDEfMpgVvZafLKBmlujpCHDzh
gFnZ/v9CvKyzVp5SYRumj57rf4iTcvfLTUIrO0Qh4u1UNw/EZuANnpAe7phUIKIB3qJvxvqACCD2
lpmgW3RclxRoBohCPF8NkMi7mPYorkBlbvizUd+AFxdCxmiiquHbq/2VjYOg0OgnbEN+gGVjc/Mf
04xo8NWbvY/vDZwPwBL+B3M+jvnLO7LBybFzBB6BDtfwUcQX+AAere6ii4+5ApW5XXCrKgsvAHra
JkADiGdc/dI6IXBK8GBF/XMTYncAbgOkHgxO4SiKn69OJ6NkXloKldY/9RoWOPXPaWr4TYiDYYUj
7Hnu4scU+xjaJYiqPiq4O/VPJIMBtp5yQFZ8vz2jOAcufQJQu8CuBH5fSP/IOau6WuVtZD35i/UP
RG8wesAXv61/Dlp0MaIl4MVfQv/0T1idrU79U5sxo+wbQdQMePEX658hOg6BX6QUPH/8XP+00wFW
xC+1GQsH6zpf/v0F0j99XH9WxJ96bSytPL+tf1KW/hT1jzASwfE3H4f+Sc6zfryfcVVgKu3447f1
D4B5xs7nqzSzGS3il97Z5Xz+pH9Yql9FY+kfu7YMEvh/rNmXlVqoslj/UArA1D+OQGko8LOS2tKF
AaM9BXdjlTvwT35r3t1+xh1w+MeZ9FAdkZVguEigaCu1VJSXZysqr7x4I36d/+u6lAlM/xeycv+W
NQmxEAAAAABJRU5ErkJggg==

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/e/a/6/ea6619add3f3bb395bcb8e6175a0c735.png

iVBORw0KGgoAAAANSUhEUgAAAEQAAAAbBAMAAAA35TSjAAAAMFBMVEX///8AAAC2trYwMDAiIiKK
iorm5uYEBAR0dHQMDAzMzMxAQEBQUFCenp5iYmIWFhbuYtYiAAABv0lEQVQoFXVSPUvDUBQ9xtom
sYkuih+ocXFx6SBYnDoIgiBm0UWQiKAFF/+AEERchFIXcehQ0MGPpZYioiDFSUSw6OZiFPEDQYqz
g/e9vJcGtRfyzrkn59373uMCdSLq6wL+NV35qmoBypBt9IRNu90sMytCOyZcdI0VkfrQxmBHSvNE
NFdmPirtDMel2EzlflvMLP3Vq9KipJhFv5c5w0iBFrPMKI9lZjnsUMamMuN7ay7TGuz0ByI2XSRz
/JYAJnijbcROUXJ1for+BXcYsTywh1G1CzgXFi2BR4Bf/j2NAzQ4gIdvWMC1tHh4FZZJD9SNPsff
8lGzvAtL7w1tZRYYrWz9a1Ha1WyUN0K8SpXCjUQVM6suq9AswGopR13g5E+jSEFNTaPRRlPXvmdS
oy/oR7nBzqejXHyzeNdHm7QKkjbUAvTkevKFLPR0/0Y0K2WjINlvLEqhMS8ZQ/3yIkjZDPAYlISj
Bi3Im1xBE4HEyANaKoGw6jPToSfcyPjjM4A1RLzAEiJpozrC0zie61gQL2PpjKK0Va8K9Xd4FdWi
s9ih+gGdnaPBYHELzandiEtimfn8zAuqnNTeJWT5AcT/buAU5U0lAAAAAElFTkSuQmCC

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/c/4/3/c43236655413242f75398bc1a052d367.png

iVBORw0KGgoAAAANSUhEUgAAAIIAAAAdBAMAAACUHalYAAAAMFBMVEX///8AAAC2trYwMDAiIiKK
iorm5uYEBAR0dHQMDAzMzMxAQEBQUFCenp5iYmIWFhbuYtYiAAACL0lEQVQ4EZ1TT0hUQRz+9k8v
9731rZcE8bKSRBBBEV08yPMgSF70Jigy4WUjCC9B1OVVRoqwSIJ4aXkRdFgRd8GDIOLiQSyEtEuH
Du1BAskkOnUQbebNn+2N+9bd/R3m9833+37fm5k3A9QMwqsi1ZRWLyY9zr+oXlbs1X7s76mZD8y+
Asu/BGsRAfRk+DIYT/BVc0BkiIrNW6LDkEB3WHE4s6gXgC5CubgnCxsSBPPEpsOJKg6HrLLCy3Ts
VigIYg6fL2LZC1YwyOZHirysUBAoB7Podj8eOchPD0jBFSNbQD+dXf/56CXdj35OQqcckHDxzLMG
8I7wUrQ9E5vEU3qYbtx57sEqU37zjIXDFXwMOMzDbkNEfMtecE0P7YCNVCkKJEv/91VwwCEHe1I5
xE+Zqg0wOGUXKl0M5Vl8AHSHOeUQOfrDHYB91qE5mHdY9NZy6CIzIGwXwGe6Dr6Li86B7qKyhkO8
hos3QBQnyACWy8zOR/guBjF1ieAuMJzPoQyk0ue7GSMcljq2irkbHaWPnTdv/+XKt4i9AmaB99MT
WQKE3KhksXObN4SMDxT/TaHGgJWW+h4JGszqUUe161C/z4iQxupsMXe2NGVLmhM/ND5smkAirFQn
/x2pvbHd3U91yqWsdTZ7z8fXMIV4WdIN5Ezrb/6rkjhozoE9mofrNFYXmlwD3Tvxl9ySpucw1MDq
pXT8Pns5NL4gQZr6F6PHx57vQF/ymn4fRKFm+gdWQo5MRaxYygAAAABJRU5ErkJggg==

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/math/9/4/7/9473bb4e4dc8bd1a3bf8fea3d6ece60f.png

iVBORw0KGgoAAAANSUhEUgAAAHMAAAAdBAMAAABrk07/AAAAMFBMVEX///8AAAC2trYwMDAiIiKK
iorm5uYEBAR0dHQMDAzMzMxAQEBQUFCenp5iYmIWFhbuYtYiAAACJElEQVQ4EZVUTWjTYBh+mrUx
ydp0HhxsQ4koXsZgwsCilx4UhjCWkwiCRAQp7NKLIHgJMoYgjIAwdhoRPehE6ETGoLqVnaYOVj3o
0R6GKINRxIMHQb8v30+TrAntC837vM9P3y/9CZBWKhN5S3Me0T4wRrOOKJw4cwWfmlHx2RidTcGu
R1UyzTFGvYevwiQ8Jyh4KqbbAohu/OZoWTCyK8MUXhXzYOyd1UvJUdMjKaMtokpZINGnOFjGK19w
rGdrpJsNSVYl4kBGjTX37N3r+6sPp7mSsSsHyNqAsrj+YxKYSYxCd3HfH5zGE4d5Tt9xL+CYDzzH
ZW0U2KT01j9aZQoht9LoY5hDyDQDAT8rWEXGAVr4CwvYZXTnGomuwKzK6GyLuDLk5eAk9R/QS7ji
UU9GT+1ZLIrCEE30HlWGNU8NDox8m2xmB068V3JgudX0tKoGnWy2ig3VBTbI5kglHjhb08rXMGAj
N/qiZZLMr0iODDz6cmR7bWV8pPF+bOL8n8CjN1GyodVglBZK3wlVjUU/Hn/rxKjIqHpiLNQE6rW/
FsYBX6C0nguJ8r82HiKTYT4k5Vw+TIbIrtDY2QbCUTxgPtPp6g+ROvRYNCSmw28ofqlv1d+luzpq
4dEie46cwzyyreiBO7ZuqFJoXwz4PPb7jCLfwFyd1Julfrei2HSCrZpF7tUG/cX2WDdvkScBrc/Q
HfIJ91E3Dg99blc2yPfae/0H+kSIwdhgpHAAAAAASUVORK5CYII=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://upload.wikimedia.org/wikipedia/commons/thumb/c/c2/Bisection_method.png/250px-Bisection_method.png

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

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://en.wikibooks.org/skins-1.5/common/images/magnify-clip.png

iVBORw0KGgoAAAANSUhEUgAAAA8AAAALCAAAAACFLIiAAAAAAnRSTlMA/1uRIrUAAAACYktHRAD/
h4/MvwAAAAlwSFlzAAAK8AAACvABQqw0mAAAAAd0SU1FB9UEAhIREfdlPYsAAABPSURBVAjXY/j/
//+5vXDwjAHIr26ZAgXZe8H8a/+hoIcw/9nevdVL9+79DuPvzQYZFPUezu8BMZLXgkExnD8HAu6h
qv//n+HZVjD4DuUDAKlChD3fj6aPAAAAAElFTkSuQmCC

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://en.wikibooks.org/skins-1.5/common/images/poweredby_mediawiki_88x31.png

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

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://en.wikibooks.org/images/wikimedia-button.png

iVBORw0KGgoAAAANSUhEUgAAAFgAAAAfCAMAAABUFvrSAAAAA3NCSVQICAjb4U/gAAAAilBMVEVj
ZGeGh4nn6+yZmZni5uTW1taAgYNtbnGkpKYBhbLd3t1svZdCroKtrq/Cv79ztMs7ncDMzMy5t7en
zL3Hx8h6e37l5eXw8PDK0dOVwtOozdsfkrnKk47E1tUNiba8RjxKs4bN3eKawM2SybIslr5Yp8TV
4N+80dbY5Oek08O5zNJ+wqW20cf29vZ09tAFAAAACXBIWXMAAArwAAAK8AFCrDSYAAACh0lEQVR4
Xs3RiZKbMAwGYMu3zX2T+072fP/XqwSUppM0bLfdmf1DxlhmvhGCRV8UFmVfkm8Ig/0beLnZbJYf
cuNKT8Htr6BLcvuBCAv5o/Pf4HjTJ/4AbCyICVhRXk6JUssBXiqVpK16FCvyXJcPHvgJn5xLVD7C
ydqdHsKEWjsN7x3B2QC3Kun2k5mE29Rhh4eiH3JcHOgN1vt/h/fIXN7CbZEtl8us2IbFauH6YRir
FBO0Wqa6K1bM5gzLQDvGtNKMGdEqrcmrRth7fyIlCMPtM26et2EYUGlxwZ0w3jKDz2WWeVSZ9Z5g
lltGBY8B8LERtHgwLPeUHsZJ7FfoYc/o0vq2X+Ms8Chj1gD+he/gCjzBMasMq6hgbdSJwtCSsaiC
K3jh1i8FgWFwfg0pxQXhmceAYZkwLO5hMGUPx2DtLWxZLlg2wFJKhC9FBwZ+gFcES0zOhGxZJaVl
eKmqUrKDVV+QGACJo6ClqgDwDjPC87cRHjveS0rVSimiAZalAdXBQ4ExkEAfTyGcd2WjRhhnPDv3
o5AdvN3N6OPJT4fguq4T51J5uIJf65RK9efTw3Pn3PwcjHBwnq+dS+qHiadgzvkT9nc8o9zDwWp3
xEns+MOU412W3Z72MKcG0119CF7lITjIXepw6nesSliuhS0BIg48ByEzDaXW+Z9gnqC0QOoJf3x+
xN3pXpMRt23FJXAuFHBdRpFQXEbl3Y4bCj85TJrMZrMkXXduc5syaoSHpsGLVl2WStRNE5XNTQju
Qj1TEKUk5N7CGiypNApcc4BYaVClju7CQ+bY6YCn8+ZusmsArk8ewEQn6WKxOCZz3kzDXEzB71fh
T7sn/v4/QvBNvjv8RfkBEHe0Bwh42FAAAAAASUVORK5CYII=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/common/shared.css?243z2

.mw-plusminus-pos {
	COLOR: #006400
}
.mw-plusminus-neg {
	COLOR: #8b0000
}
.mw-plusminus-null {
	COLOR: #aaa
}
SPAN.comment {
	FONT-STYLE: italic
}
SPAN.changedby {
	FONT-SIZE: 95%
}
.texvc {
	DIRECTION: ltr; unicode-bidi: embed
}
IMG.tex {
	VERTICAL-ALIGN: middle
}
SPAN.texhtml {
	FONT-FAMILY: serif
}
.ontop#wikiPreview {
	MARGIN-BOTTOM: 1em
}
#editform {
	CLEAR: both
}
#toolbar {
	CLEAR: both
}
#wpTextbox1 {
	CLEAR: both
}
DIV#mw-js-message {
	BORDER-RIGHT: #ddd 1px solid; PADDING-RIGHT: 2.5%; BORDER-TOP: #ddd 1px =
solid; PADDING-LEFT: 2.5%; PADDING-BOTTOM: 0.5em; MARGIN: 1em 5%; =
BORDER-LEFT: #ddd 1px solid; PADDING-TOP: 0.5em; BORDER-BOTTOM: #ddd 1px =
solid; BACKGROUND-COLOR: #fcfcfc
}
.editsection {
	FLOAT: right; MARGIN-LEFT: 5px
}
TABLE.filehistory TH {
	VERTICAL-ALIGN: top
}
TABLE.filehistory TD {
	VERTICAL-ALIGN: top
}
TABLE.filehistory TH {
	TEXT-ALIGN: left
}
TABLE.filehistory TD.mw-imagepage-filesize {
	WHITE-SPACE: nowrap
}
TABLE.filehistory TH.mw-imagepage-filesize {
	WHITE-SPACE: nowrap
}
TABLE.filehistory TD.filehistory-selected {
	FONT-WEIGHT: bold
}
LI SPAN.deleted {
	COLOR: #888; FONT-STYLE: italic; TEXT-DECORATION: line-through
}
SPAN.history-deleted {
	COLOR: #888; FONT-STYLE: italic; TEXT-DECORATION: line-through
}
.not-patrolled {
	BACKGROUND-COLOR: #ffa
}
.unpatrolled {
	FONT-WEIGHT: bold; COLOR: red
}
DIV.patrollink {
	FONT-SIZE: 75%; TEXT-ALIGN: right
}
BODY.ltr TD.mw-label {
	TEXT-ALIGN: right
}
BODY.ltr TD.mw-input {
	TEXT-ALIGN: left
}
BODY.ltr TD.mw-submit {
	TEXT-ALIGN: left
}
BODY.rtl TD.mw-label {
	TEXT-ALIGN: left
}
BODY.rtl TD.mw-input {
	TEXT-ALIGN: right
}
BODY.rtl TD.mw-submit {
	TEXT-ALIGN: right
}
TD.mw-label {
	VERTICAL-ALIGN: top
}
.prefsection TD.mw-label {
	WIDTH: 20%
}
.prefsection TABLE {
	WIDTH: 100%
}
TD.mw-submit {
	WHITE-SPACE: nowrap
}
TABLE.mw-htmlform-nolabel TD.mw-label {
	WIDTH: 0px! important
}
BODY.rtl .thumbcaption {
	TEXT-ALIGN: right
}
BODY.rtl .magnify {
	FLOAT: left
}
BODY.ltr .thumbcaption {
	TEXT-ALIGN: left
}
BODY.ltr .magnify {
	FLOAT: right
}
.mw-hidden-cats-hidden {
	DISPLAY: none
}
.catlinks-allhidden {
	DISPLAY: none
}
P.mw-ipb-conveniencelinks {
	FONT-SIZE: 90%; FLOAT: right
}
P.mw-protect-editreasons {
	FONT-SIZE: 90%; FLOAT: right
}
P.mw-filedelete-editreasons {
	FONT-SIZE: 90%; FLOAT: right
}
P.mw-delete-editreasons {
	FONT-SIZE: 90%; FLOAT: right
}
P.mw-revdel-editreasons {
	FONT-SIZE: 90%; FLOAT: right
}
.searchresults {
=09
}
.searchresults P {
	MARGIN-TOP: 1em; MARGIN-BOTTOM: 1.2em; MARGIN-LEFT: 0.4em
}
DIV.searchresult {
	FONT-SIZE: 95%; WIDTH: 38em
}
.mw-search-results {
	MARGIN-LEFT: 0.4em
}
.mw-search-results LI {
	LIST-STYLE-IMAGE: none; PADDING-BOTTOM: 1em; LIST-STYLE-TYPE: none
}
.mw-search-results LI A {
	FONT-SIZE: 108%
}
.mw-search-result-data {
	FONT-SIZE: 97%; COLOR: green
}
.mw-search-formheader {
	BORDER-RIGHT: silver 1px solid; BORDER-TOP: silver 1px solid; =
MARGIN-TOP: 1em; BORDER-LEFT: silver 1px solid; BORDER-BOTTOM: silver =
1px solid; BACKGROUND-COLOR: #f3f3f3
}
.mw-search-formheader DIV.search-types {
	PADDING-LEFT: 0.25em; FLOAT: left
}
.rtl .mw-search-formheader DIV.search-types {
	FLOAT: right
}
.mw-search-formheader DIV.search-types UL {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; MARGIN: 0px; PADDING-TOP: 0px! =
important; LIST-STYLE-TYPE: none! important
}
.mw-search-formheader DIV.search-types UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
.mw-search-formheader DIV.search-types UL LI A {
	PADDING-RIGHT: 0.5em; DISPLAY: block; PADDING-LEFT: 0.5em; =
PADDING-BOTTOM: 0.5em; PADDING-TOP: 0.5em
}
.mw-search-formheader DIV.search-types UL LI.current A {
	CURSOR: default; COLOR: #333333
}
.mw-search-formheader DIV.search-types UL LI.current A:hover {
	TEXT-DECORATION: none
}
.mw-search-formheader DIV.results-info {
	PADDING-RIGHT: 0.75em; PADDING-LEFT: 0.5em; FLOAT: right; =
PADDING-BOTTOM: 0.5em; PADDING-TOP: 0.5em
}
.mw-search-formheader DIV.results-info UL {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; MARGIN: 0px; PADDING-TOP: 0px! =
important; LIST-STYLE-TYPE: none! important
}
.mw-search-formheader DIV.results-info UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
FIELDSET#mw-searchoptions {
	BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 0.75em! important; =
BORDER-TOP: silver 0px solid; PADDING-LEFT: 0.75em! important; =
PADDING-BOTTOM: 0.5em! important; MARGIN: 0px; BORDER-LEFT: silver 1px =
solid; PADDING-TOP: 0.5em! important; BORDER-BOTTOM: silver 1px solid; =
BACKGROUND-COLOR: #f9f9f9
}
FIELDSET#mw-searchoptions LEGEND {
	DISPLAY: none
}
FIELDSET#mw-searchoptions H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
.rtl FIELDSET#mw-searchoptions H4 {
	FLOAT: right
}
FIELDSET#mw-searchoptions DIV#mw-search-togglebox {
	FLOAT: right
}
.rtl FIELDSET#mw-searchoptions DIV#mw-search-togglebox {
	FLOAT: left
}
FIELDSET#mw-searchoptions DIV#mw-search-togglebox LABEL {
	MARGIN-RIGHT: 0.25em
}
FIELDSET#mw-searchoptions DIV#mw-search-togglebox INPUT {
	MARGIN-LEFT: 0.25em
}
FIELDSET#mw-searchoptions TABLE {
	FLOAT: left; MARGIN-RIGHT: 3em
}
FIELDSET#mw-searchoptions TABLE TD {
	PADDING-RIGHT: 1em
}
.rtl FIELDSET#mw-searchoptions TABLE TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 1em
}
BODY.rtl FIELDSET#mw-searchoptions TABLE {
	FLOAT: right; MARGIN-LEFT: 3em; MARGIN-RIGHT: 0px
}
FIELDSET#mw-searchoptions DIV.divider {
	CLEAR: both; MARGIN-BOTTOM: 0.5em; PADDING-TOP: 0.5em; BORDER-BOTTOM: =
#dddddd 1px solid
}
TD#mw-search-menu {
	PADDING-LEFT: 6em; FONT-SIZE: 85%
}
DIV#mw-search-interwiki {
	BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px solid; =
MARGIN-TOP: 2ex; FLOAT: right; BORDER-LEFT: #aaaaaa 1px solid; WIDTH: =
18em; BORDER-BOTTOM: #aaaaaa 1px solid
}
.rtl DIV#mw-search-interwiki {
	FLOAT: left
}
DIV#mw-search-interwiki LI {
	FONT-SIZE: 95%
}
.mw-search-interwiki-more {
	FONT-SIZE: 90%; FLOAT: right
}
.rtl .mw-search-interwiki-more {
	FLOAT: left
}
DIV#mw-search-interwiki-caption {
	FONT-WEIGHT: bold; FONT-SIZE: 95%; TEXT-ALIGN: center
}
.mw-search-interwiki-project {
	PADDING-RIGHT: 0.15em; BORDER-TOP: #bbbbbb 1px solid; PADDING-LEFT: =
0.2em; FONT-SIZE: 97%; PADDING-BOTTOM: 0.2em; PADDING-TOP: 0.15em; =
BACKGROUND-COLOR: #ececec; TEXT-ALIGN: left
}
.rtl .mw-search-interwiki-project {
	TEXT-ALIGN: right
}
SPAN.searchalttitle {
	FONT-SIZE: 95%
}
DIV.searchdidyoumean {
	MARGIN-TOP: 0.8em; FONT-SIZE: 127%; COLOR: #c00
}
DIV.searchdidyoumean EM {
	FONT-WEIGHT: bold
}
.searchmatch {
	FONT-WEIGHT: bold
}
TABLE#mw-search-top-table {
	BACKGROUND-COLOR: transparent
}
TD#mw-search-togglebox {
	TEXT-ALIGN: right
}
TABLE#mw-search-powertable {
	WIDTH: 100%
}
FORM#powersearch {
	CLEAR: both
}
.mw-userrights-disabled {
	COLOR: #888
}
TABLE.mw-userrights-groups * TD {
	PADDING-RIGHT: 1.5em
}
TABLE.mw-userrights-groups * TH {
	PADDING-RIGHT: 1.5em
}
.os-suggest {
	BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px solid; =
FONT-SIZE: 95%; Z-INDEX: 99; LEFT: 0px; OVERFLOW-X: hidden; OVERFLOW: =
auto; BORDER-LEFT: #aaaaaa 1px solid; WIDTH: 0px; BORDER-BOTTOM: #aaaaaa =
1px solid; POSITION: absolute; TOP: 0px; BACKGROUND-COLOR: window
}
TABLE.os-suggest-results {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 95%; =
BORDER-BOTTOM-WIDTH: 0px; WIDTH: 100%; CURSOR: pointer; BORDER-COLLAPSE: =
collapse; BORDER-RIGHT-WIDTH: 0px
}
.os-suggest-result {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; COLOR: =
windowtext; PADDING-TOP: 2px; WHITE-SPACE: nowrap; BACKGROUND-COLOR: =
window
}
.os-suggest-result-hl {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; COLOR: =
windowtext; PADDING-TOP: 2px; WHITE-SPACE: nowrap; BACKGROUND-COLOR: =
window
}
.os-suggest-result-hl {
	COLOR: white; BACKGROUND-COLOR: #4c59a6
}
.os-suggest-result-hl-webkit {
	COLOR: white; BACKGROUND-COLOR: #4c59a6
}
.os-suggest-result-hl {
	COLOR: highlighttext; BACKGROUND-COLOR: highlight
}
.os-suggest-toggle {
	FONT-SIZE: 65%; LEFT: 1ex; POSITION: relative
}
.os-suggest-toggle-def {
	FONT-SIZE: 65%; LEFT: 0px; VISIBILITY: hidden; POSITION: absolute; TOP: =
0px
}
.autocomment {
	COLOR: gray
}
#pagehistory .history-user {
	MARGIN-LEFT: 0.4em; MARGIN-RIGHT: 0.2em
}
#pagehistory SPAN.minor {
	FONT-WEIGHT: bold
}
#pagehistory LI {
	BORDER-RIGHT: white 1px solid; BORDER-TOP: white 1px solid; =
BORDER-LEFT: white 1px solid; BORDER-BOTTOM: white 1px solid
}
#pagehistory LI.selected {
	BORDER-RIGHT: #aaa 1px dashed; BORDER-TOP: #aaa 1px dashed; =
BORDER-LEFT: #aaa 1px dashed; BORDER-BOTTOM: #aaa 1px dashed; =
BACKGROUND-COLOR: #f9f9f9
}
.newpage {
	FONT-WEIGHT: bold
}
.minor {
	FONT-WEIGHT: bold
}
.bot {
	FONT-WEIGHT: bold
}
.mw-uctop {
	FONT-WEIGHT: bold
}
TABLE.mw-listgrouprights-table TR {
	VERTICAL-ALIGN: top
}
.listgrouprights-revoked {
	TEXT-DECORATION: line-through
}
TD.mw-statistics-numbers {
	TEXT-ALIGN: right
}
H4.mw-specialpagesgroup {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; MARGIN: =
0.3em 0em 0em; PADDING-TOP: 2px; BACKGROUND-COLOR: #dcdcdc
}
.mw-specialpagerestricted {
	FONT-WEIGHT: bold
}
#shared-image-dup {
	FONT-STYLE: italic
}
#shared-image-conflict {
	FONT-STYLE: italic
}
TABLE.mw-emailuser-table {
	WIDTH: 98%
}
TD#mw-emailuser-sender {
	FONT-WEIGHT: bold
}
TD#mw-emailuser-recipient {
	FONT-WEIGHT: bold
}
TABLE.allpageslist {
	BACKGROUND-COLOR: transparent
}
TABLE.mw-allpages-table-form {
	WIDTH: 100%; BACKGROUND-COLOR: transparent
}
TABLE.mw-allpages-table-chunk {
	WIDTH: 100%; BACKGROUND-COLOR: transparent
}
TD.mw-allpages-alphaindexline {
	TEXT-ALIGN: right
}
TD.mw-allpages-nav {
	FONT-SIZE: smaller; MARGIN-BOTTOM: 1em; TEXT-ALIGN: right
}
P.mw-allpages-nav {
	FONT-SIZE: smaller; MARGIN-BOTTOM: 1em; TEXT-ALIGN: right
}
TABLE.mw-allpages-table-form TR {
	VERTICAL-ALIGN: top
}
TABLE#mw-prefixindex-list-table {
	WIDTH: 98%; BACKGROUND-COLOR: transparent
}
TABLE#mw-prefixindex-nav-table {
	WIDTH: 98%; BACKGROUND-COLOR: transparent
}
TD#mw-prefixindex-nav-form {
	FONT-SIZE: smaller; MARGIN-BOTTOM: 1em; VERTICAL-ALIGN: top; =
TEXT-ALIGN: right
}
DIV.mw-warning-with-logexcerpt {
	BORDER-RIGHT: #2f6fab 2px solid; PADDING-RIGHT: 3px; BORDER-TOP: =
#2f6fab 2px solid; PADDING-LEFT: 3px; MARGIN-BOTTOM: 3px; =
PADDING-BOTTOM: 3px; BORDER-LEFT: #2f6fab 2px solid; PADDING-TOP: 3px; =
BORDER-BOTTOM: #2f6fab 2px solid
}
DIV.mw-warning-with-logexcerpt UL LI {
	FONT-SIZE: 90%
}
SPAN.mw-revdelundel-link {
	FONT-SIZE: 90%
}
STRONG.mw-revdelundel-link {
	FONT-SIZE: 90%
}
SPAN.mw-revdelundel-hidden {
	VISIBILITY: hidden
}
INPUT.mw-revdelundel-hidden {
	VISIBILITY: hidden
}
A.feedlink {
	PADDING-LEFT: 16px; BACKGROUND: url(images/feed-icon.png) no-repeat =
left center
}
.plainlinks A {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px! =
important; PADDING-TOP: 0px! important
}
TABLE.wikitable {
	BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; BACKGROUND: =
#f9f9f9; MARGIN: 1em 1em 1em 0px; BORDER-LEFT: #aaa 1px solid; =
BORDER-BOTTOM: #aaa 1px solid; BORDER-COLLAPSE: collapse
}
.wikitable TH {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 0.2em; BORDER-TOP: #aaa =
1px solid; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0.2em; BORDER-LEFT: #aaa =
1px solid; PADDING-TOP: 0.2em; BORDER-BOTTOM: #aaa 1px solid
}
.wikitable TD {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 0.2em; BORDER-TOP: #aaa =
1px solid; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0.2em; BORDER-LEFT: #aaa =
1px solid; PADDING-TOP: 0.2em; BORDER-BOTTOM: #aaa 1px solid
}
.wikitable TH {
	BACKGROUND: #f2f2f2; TEXT-ALIGN: center
}
.wikitable CAPTION {
	FONT-WEIGHT: bold
}
TABLE.collapsed TR.collapsable {
	DISPLAY: none
}
.success {
	FONT-SIZE: larger; COLOR: green
}
.error {
	FONT-SIZE: larger; COLOR: red
}
.errorbox {
	BORDER-RIGHT: 2px solid; PADDING-RIGHT: 1em; BORDER-TOP: 2px solid; =
PADDING-LEFT: 1em; FONT-SIZE: larger; FLOAT: left; MARGIN-BOTTOM: 2em; =
PADDING-BOTTOM: 0.5em; BORDER-LEFT: 2px solid; COLOR: #000; PADDING-TOP: =
0.5em; BORDER-BOTTOM: 2px solid
}
.successbox {
	BORDER-RIGHT: 2px solid; PADDING-RIGHT: 1em; BORDER-TOP: 2px solid; =
PADDING-LEFT: 1em; FONT-SIZE: larger; FLOAT: left; MARGIN-BOTTOM: 2em; =
PADDING-BOTTOM: 0.5em; BORDER-LEFT: 2px solid; COLOR: #000; PADDING-TOP: =
0.5em; BORDER-BOTTOM: 2px solid
}
.errorbox {
	BORDER-LEFT-COLOR: red; BORDER-BOTTOM-COLOR: red; BORDER-TOP-COLOR: =
red; BACKGROUND-COLOR: #fff2f2; BORDER-RIGHT-COLOR: red
}
.successbox {
	BORDER-LEFT-COLOR: green; BORDER-BOTTOM-COLOR: green; BORDER-TOP-COLOR: =
green; BACKGROUND-COLOR: #dfd; BORDER-RIGHT-COLOR: green
}
.errorbox H2 {
	DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 1em; MARGIN: 0px 0.5em =
0px 0px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.successbox H2 {
	DISPLAY: inline; FONT-WEIGHT: bold; FONT-SIZE: 1em; MARGIN: 0px 0.5em =
0px 0px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.visualClear {
	CLEAR: both
}
#mw_trackbacks {
	BORDER-RIGHT: #bbbbff 1px solid; PADDING-RIGHT: 0.2em; BORDER-TOP: =
#bbbbff 1px solid; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0.2em; =
BORDER-LEFT: #bbbbff 1px solid; PADDING-TOP: 0.2em; BORDER-BOTTOM: =
#bbbbff 1px solid; BACKGROUND-COLOR: #eeeeff
}
.TablePager {
	MIN-WIDTH: 80%
}
.TablePager_nav A {
	TEXT-DECORATION: none
}
.TablePager {
	BORDER-COLLAPSE: collapse
}
.TablePager {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 0.15em; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 0.15em; PADDING-BOTTOM: 0px; =
BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #aaaaaa =
1px solid
}
.TablePager TD {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 0.15em; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 0.15em; PADDING-BOTTOM: 0px; =
BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #aaaaaa =
1px solid
}
.TablePager TH {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 0.15em; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 0.15em; PADDING-BOTTOM: 0px; =
BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #aaaaaa =
1px solid
}
.TablePager TH {
	BACKGROUND-COLOR: #eeeeff
}
.TablePager TD {
	BACKGROUND-COLOR: #ffffff
}
.TablePager TR:hover TD {
	BACKGROUND-COLOR: #eeeeff
}
.imagelist TD {
	WHITE-SPACE: nowrap
}
.imagelist TH {
	WHITE-SPACE: nowrap
}
.imagelist .TablePager_col_links {
	BACKGROUND-COLOR: #eeeeff
}
.imagelist .TablePager_col_img_description {
	WHITE-SPACE: normal
}
.imagelist TH.TablePager_sort {
	BACKGROUND-COLOR: #ccccff
}
#mw-allmessagestable .allmessages-customised TD.am_default {
	BACKGROUND-COLOR: #fcffc4
}
#mw-allmessagestable TR.allmessages-customised:hover TD.am_default {
	BACKGROUND-COLOR: #faff90
}
#mw-allmessagestable TD.am_actual {
	BACKGROUND-COLOR: #e2ffe2
}
#mw-allmessagestable TR.allmessages-customised:hover + =
TR.allmessages-customised TD.am_actual {
	BACKGROUND-COLOR: #b1ffb1
}
UL#filetoc {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; MARGIN-BOTTOM: =
0.5em; PADDING-BOTTOM: 5px; MARGIN-LEFT: 0px; BORDER-LEFT: #aaaaaa 1px =
solid; MARGIN-RIGHT: 0px; PADDING-TOP: 5px; BORDER-BOTTOM: #aaaaaa 1px =
solid; BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: center
}
#filetoc LI {
	PADDING-RIGHT: 2em; DISPLAY: inline; LIST-STYLE-TYPE: none
}
TABLE.mw_metadata {
	FONT-SIZE: 0.8em; MARGIN-BOTTOM: 0.5em; MARGIN-LEFT: 0.5em; WIDTH: =
300px
}
TABLE.mw_metadata CAPTION {
	FONT-WEIGHT: bold
}
TABLE.mw_metadata TH {
	FONT-WEIGHT: normal
}
TABLE.mw_metadata TD {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em
}
TABLE.mw_metadata {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-COLLAPSE: collapse; BORDER-BOTTOM-STYLE: none
}
TABLE.mw_metadata TD {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 0.1em; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 0.1em; BORDER-LEFT: #aaaaaa 1px solid; =
BORDER-BOTTOM: #aaaaaa 1px solid; TEXT-ALIGN: center
}
TABLE.mw_metadata TH {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 0.1em; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 0.1em; BORDER-LEFT: #aaaaaa 1px solid; =
BORDER-BOTTOM: #aaaaaa 1px solid; TEXT-ALIGN: center
}
TABLE.mw_metadata TH {
	BACKGROUND-COLOR: #f9f9f9
}
TABLE.mw_metadata TD {
	BACKGROUND-COLOR: #fcfcfc
}
TABLE.gallery {
	BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #ccc 1px =
solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; MARGIN: 2px; BORDER-LEFT: =
#ccc 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #ccc 1px solid; =
BACKGROUND-COLOR: white
}
TABLE.gallery TR {
	VERTICAL-ALIGN: top
}
TABLE.gallery TD {
	BORDER-RIGHT: white 2px solid; BORDER-TOP: white 2px solid; =
VERTICAL-ALIGN: top; BORDER-LEFT: white 2px solid; BORDER-BOTTOM: white =
2px solid; BACKGROUND-COLOR: #f9f9f9
}
TABLE.gallery CAPTION {
	FONT-WEIGHT: bold
}
DIV.gallerybox {
	MARGIN: 2px
}
DIV.gallerybox DIV.thumb {
	BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; MARGIN: 2px; =
BORDER-LEFT: #ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid; TEXT-ALIGN: =
center
}
DIV.gallerytext {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-SIZE: 94%; PADDING-BOTTOM: =
2px; OVERFLOW: hidden; PADDING-TOP: 2px
}
TABLE.mw-enhanced-rc {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND: none =
transparent scroll repeat 0% 0%; BORDER-BOTTOM-WIDTH: 0px; =
BORDER-RIGHT-WIDTH: 0px; border-spacing: 0
}
TD.mw-enhanced-rc {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: top; PADDING-TOP: 0px; FONT-FAMILY: monospace; =
WHITE-SPACE: nowrap
}
#mw-addcategory-prompt {
	DISPLAY: inline; MARGIN-LEFT: 1em
}
#mw-addcategory-prompt INPUT {
	MARGIN-LEFT: 0.5em; MARGIN-RIGHT: 0.5em
}
.mw-remove-category {
	PADDING-RIGHT: 8px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
8px; BACKGROUND-IMAGE: url(images/remove.png); PADDING-BOTTOM: 8px; =
PADDING-TOP: 8px; BACKGROUND-REPEAT: no-repeat
}
.mw-ajax-addcategory {
	BACKGROUND-POSITION: left center; PADDING-LEFT: 20px; BACKGROUND-IMAGE: =
url(images/add.png); BACKGROUND-REPEAT: no-repeat
}
.mw-ajax-loader {
	PADDING-RIGHT: 16px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
16px; BACKGROUND-IMAGE: url(images/ajax-loader.gif); PADDING-BOTTOM: =
16px; PADDING-TOP: 16px; BACKGROUND-REPEAT: no-repeat; POSITION: =
relative; TOP: -16px
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/common/commonPrint.css?243z2

A.stub {
	COLOR: #ba0000; TEXT-DECORATION: none
}
A.new {
	COLOR: #ba0000; TEXT-DECORATION: none
}
#toc {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: =
#aaaaaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #aaaaaa 1px solid; =
BACKGROUND-COLOR: #f9f9f9
}
.tocindent {
	MARGIN-LEFT: 2em
}
.tocline {
	MARGIN-BOTTOM: 0px
}
DIV.floatright {
	CLEAR: right; BORDER-RIGHT: white 0px solid; BORDER-TOP: white 0.5em =
solid; FLOAT: right; MARGIN: 0px; BORDER-LEFT: white 1.4em solid; =
BORDER-BOTTOM: white 0.8em solid; POSITION: relative
}
DIV.floatright P {
	FONT-STYLE: italic
}
DIV.floatleft {
	BORDER-RIGHT: white 1.4em solid; BORDER-TOP: white 0.5em solid; FLOAT: =
left; MARGIN: 0.3em 0.5em 0.5em 0px; BORDER-LEFT: white 0px solid; =
BORDER-BOTTOM: white 0.8em solid; POSITION: relative
}
DIV.floatleft P {
	FONT-STYLE: italic
}
DIV.thumb {
	BORDER-LEFT-COLOR: white; MARGIN-BOTTOM: 0.5em; BORDER-BOTTOM-COLOR: =
white; OVERFLOW: hidden; WIDTH: auto; BORDER-TOP-STYLE: solid; =
BORDER-TOP-COLOR: white; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: =
solid; BORDER-RIGHT-COLOR: white; BORDER-BOTTOM-STYLE: solid
}
DIV.thumb DIV {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 3px! important; =
BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 3px! important; FONT-SIZE: =
94%; PADDING-BOTTOM: 3px! important; BORDER-LEFT: #cccccc 1px solid; =
PADDING-TOP: 3px! important; BORDER-BOTTOM: #cccccc 1px solid; =
BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: center
}
DIV.thumb DIV A IMG {
	BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; =
BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: #cccccc 1px solid
}
DIV.thumb DIV DIV.thumbcaption {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.1em; =
BORDER-TOP-STYLE: none; PADDING-TOP: 0.3em; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV.magnify {
	DISPLAY: none
}
DIV.tright {
	BORDER-TOP-WIDTH: 0.5em; CLEAR: right; BORDER-LEFT-WIDTH: 1.4em; FLOAT: =
right; BORDER-BOTTOM-WIDTH: 0.8em; BORDER-RIGHT-WIDTH: 0px
}
DIV.tleft {
	BORDER-TOP-WIDTH: 0.5em; BORDER-LEFT-WIDTH: 0px; FLOAT: left; =
BORDER-BOTTOM-WIDTH: 0.8em; MARGIN-RIGHT: 0.5em; BORDER-RIGHT-WIDTH: =
1.4em
}
IMG.thumbborder {
	BORDER-RIGHT: #dddddd 1px solid; BORDER-TOP: #dddddd 1px solid; =
BORDER-LEFT: #dddddd 1px solid; BORDER-BOTTOM: #dddddd 1px solid
}
TABLE.rimage {
	FLOAT: right; MARGIN-BOTTOM: 1em; MARGIN-LEFT: 1em; WIDTH: 1pt; =
POSITION: relative; TEXT-ALIGN: center
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: white; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: black; PADDING-TOP: 0px
}
.noprint {
	DISPLAY: none
}
DIV#jump-to-nav {
	DISPLAY: none
}
DIV.top {
	DISPLAY: none
}
DIV#column-one {
	DISPLAY: none
}
#colophon {
	DISPLAY: none
}
.editsection {
	DISPLAY: none
}
.toctoggle {
	DISPLAY: none
}
.tochidden {
	DISPLAY: none
}
DIV#f-poweredbyico {
	DISPLAY: none
}
DIV#f-copyrightico {
	DISPLAY: none
}
LI#viewcount {
	DISPLAY: none
}
LI#about {
	DISPLAY: none
}
LI#disclaimer {
	DISPLAY: none
}
LI#privacy {
	DISPLAY: none
}
#mw-hidden-catlinks {
	DISPLAY: none
}
UL {
	LIST-STYLE-TYPE: square
}
#content {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px! =
important; MARGIN: 0px; BORDER-TOP-STYLE: none! important; PADDING-TOP: =
0px! important; BORDER-RIGHT-STYLE: none! important; BORDER-LEFT-STYLE: =
none! important; BORDER-BOTTOM-STYLE: none! important
}
#footer {
	BORDER-TOP: black 1px solid; BACKGROUND: white; COLOR: black
}
H1 {
	FONT-WEIGHT: bold
}
H2 {
	FONT-WEIGHT: bold
}
H3 {
	FONT-WEIGHT: bold
}
H4 {
	FONT-WEIGHT: bold
}
H5 {
	FONT-WEIGHT: bold
}
H6 {
	FONT-WEIGHT: bold
}
P {
	MARGIN: 1em 0px; LINE-HEIGHT: 1.2em
}
.documentDescription {
	MARGIN: 1em 0px; LINE-HEIGHT: 1.2em
}
.tocindent P {
	MARGIN: 0px
}
PRE {
	BORDER-RIGHT: black 1pt dashed; PADDING-RIGHT: 0px; BORDER-TOP: black =
1pt dashed; PADDING-LEFT: 0px; FONT-SIZE: 8pt; BACKGROUND: white; =
PADDING-BOTTOM: 1em; OVERFLOW: auto; BORDER-LEFT: black 1pt dashed; =
COLOR: black; PADDING-TOP: 1em; BORDER-BOTTOM: black 1pt dashed; =
WHITE-SPACE: pre
}
TABLE.listing {
	BORDER-RIGHT: black 1pt solid; BORDER-TOP: black 1pt solid; =
BORDER-LEFT: black 1pt solid; BORDER-BOTTOM: black 1pt solid; =
BORDER-COLLAPSE: collapse
}
TABLE.listing TD {
	BORDER-RIGHT: black 1pt solid; BORDER-TOP: black 1pt solid; =
BORDER-LEFT: black 1pt solid; BORDER-BOTTOM: black 1pt solid; =
BORDER-COLLAPSE: collapse
}
A {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px! =
important; COLOR: black! important; PADDING-TOP: 0px! important
}
A:link {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #520; =
TEXT-DECORATION: underline
}
A:visited {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #520; =
TEXT-DECORATION: underline
}
#content A.text.external:unknown {
	content: " (" attr(href) ") "
}
#content A.autonumber.external:unknown {
	content: " (" attr(href) ") "
}
#globalWrapper {
	MIN-WIDTH: 0px! important; WIDTH: 100%! important
}
#content {
	BACKGROUND: white; COLOR: black
}
#column-content {
	MARGIN: 0px
}
#column-content #content {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; MARGIN: =
0px; PADDING-TOP: 1em
}
A {
	COLOR: black! important; TEXT-DECORATION: none! important
}
A.external {
	COLOR: black! important; TEXT-DECORATION: none! important
}
A.new {
	COLOR: black! important; TEXT-DECORATION: none! important
}
A.stub {
	COLOR: black! important; TEXT-DECORATION: none! important
}
A {
=09
}
A.external {
=09
}
A.new {
=09
}
A.stub {
=09
}
IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
IMG.tex {
	VERTICAL-ALIGN: middle
}
SPAN.texhtml {
	FONT-FAMILY: serif
}
#siteNotice {
	DISPLAY: none
}
DIV.gallerybox {
	BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; =
BORDER-LEFT: #cccccc 1px solid; WIDTH: 150px; BORDER-BOTTOM: #cccccc 1px =
solid; BACKGROUND-COLOR: #f9f9f9
}
DIV.gallerytext {
	OVERFLOW: visible
}
TABLE.diff {
	BACKGROUND: white
}
TD.diff-otitle {
	BACKGROUND: #ffffff
}
TD.diff-ntitle {
	BACKGROUND: #ffffff
}
TD.diff-addedline {
	BORDER-RIGHT: black 2px solid; BORDER-TOP: black 2px solid; FONT-SIZE: =
smaller; BACKGROUND: #ccffcc; BORDER-LEFT: black 2px solid; =
BORDER-BOTTOM: black 2px solid
}
TD.diff-deletedline {
	BORDER-RIGHT: black 2px dotted; BORDER-TOP: black 2px dotted; =
FONT-SIZE: smaller; BACKGROUND: #ffffaa; BORDER-LEFT: black 2px dotted; =
BORDER-BOTTOM: black 2px dotted
}
TD.diff-context {
	FONT-SIZE: smaller; BACKGROUND: #eeeeee
}
.diffchange {
	FONT-WEIGHT: bold; COLOR: silver; TEXT-DECORATION: underline
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/monobook/main.css?243z2

#column-content {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 0.6em -12.2em; WIDTH: 100%; PADDING-TOP: 0px
}
#content {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; Z-INDEX: 2; PADDING-BOTTOM: 1em; =
MARGIN: 2.8em 0px 0px 12.2em; PADDING-TOP: 0px; POSITION: relative
}
#column-one {
	PADDING-TOP: 160px
}
#content {
	BORDER-RIGHT: #aaa 1px; BORDER-TOP: #aaa 1px solid; BACKGROUND: white; =
BORDER-LEFT: #aaa 1px solid; COLOR: black; LINE-HEIGHT: 1.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: url(headbg.jpg) =
#f9f9f9 no-repeat 0px 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; FONT: =
x-small sans-serif; COLOR: black; PADDING-TOP: 0px
}
#globalWrapper {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 127%; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 100%; PADDING-TOP: 0px
}
TABLE {
	FONT-SIZE: 100%; COLOR: black; BACKGROUND-COLOR: white
}
FIELDSET TABLE {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
A {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #002bb8; =
TEXT-DECORATION: none
}
A:visited {
	COLOR: #5a3696
}
A:active {
	COLOR: #faa700
}
A:hover {
	TEXT-DECORATION: underline
}
A.stub {
	COLOR: #772233
}
A.new {
	COLOR: #ba0000
}
#p-personal A.new {
	COLOR: #ba0000
}
A.new:visited {
	COLOR: #a55858
}
#p-personal A.new:visited {
	COLOR: #a55858
}
IMG {
	VERTICAL-ALIGN: middle; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
P {
	MARGIN: 0.4em 0px 0.5em; LINE-HEIGHT: 1.5em
}
P IMG {
	MARGIN: 0px
}
HR {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; MARGIN: 0.2em 0px; COLOR: #aaa; HEIGHT: 1px; BACKGROUND-COLOR: =
#aaa; BORDER-RIGHT-WIDTH: 0px
}
H1 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
H2 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
H3 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
H4 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
H5 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
H6 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaa 1px solid
}
H1 {
	FONT-SIZE: 188%
}
H1 .editsection {
	FONT-SIZE: 53%
}
H2 {
	FONT-SIZE: 150%
}
H2 .editsection {
	FONT-SIZE: 67%
}
H3 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H4 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H5 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H6 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H3 {
	FONT-SIZE: 132%
}
H3 .editsection {
	FONT-WEIGHT: normal; FONT-SIZE: 76%
}
H4 {
	FONT-SIZE: 116%
}
H4 .editsection {
	FONT-WEIGHT: normal; FONT-SIZE: 86%
}
H5 {
	FONT-SIZE: 100%
}
H5 .editsection {
	FONT-WEIGHT: normal
}
H6 {
	FONT-SIZE: 80%
}
H6 .editsection {
	FONT-WEIGHT: normal; FONT-SIZE: 125%
}
UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LIST-STYLE-IMAGE: =
url(bullet.gif); PADDING-BOTTOM: 0px; MARGIN: 0.3em 0px 0px 1.5em; =
LINE-HEIGHT: 1.5em; PADDING-TOP: 0px; LIST-STYLE-TYPE: square
}
OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LIST-STYLE-IMAGE: none; =
PADDING-BOTTOM: 0px; MARGIN: 0.3em 0px 0px 3.2em; LINE-HEIGHT: 1.5em; =
PADDING-TOP: 0px
}
LI {
	MARGIN-BOTTOM: 0.1em
}
DT {
	FONT-WEIGHT: bold; MARGIN-BOTTOM: 0.1em
}
DL {
	MARGIN-TOP: 0.2em; MARGIN-BOTTOM: 0.5em
}
DD {
	MARGIN-BOTTOM: 0.1em; MARGIN-LEFT: 2em; LINE-HEIGHT: 1.5em
}
FIELDSET {
	BORDER-RIGHT: #2f6fab 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: =
#2f6fab 1px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; MARGIN: 1em =
0px; BORDER-LEFT: #2f6fab 1px solid; LINE-HEIGHT: 1.5em; PADDING-TOP: =
0px; BORDER-BOTTOM: #2f6fab 1px solid
}
FIELDSET.nested {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
MARGIN: 0px 0px 0.5em; PADDING-TOP: 0px
}
LEGEND {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-SIZE: 95%; =
PADDING-BOTTOM: 0.5em; PADDING-TOP: 0.5em
}
FORM {
	MARGIN: 0px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
TEXTAREA {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
WIDTH: 100%; PADDING-TOP: 0.1em
}
INPUT.historysubmit {
	PADDING-RIGHT: 0.3em! important; PADDING-LEFT: 0.3em! important; =
FONT-SIZE: 94%; PADDING-BOTTOM: 0.3em! important; MARGIN-LEFT: 1.6em; =
CURSOR: pointer; PADDING-TOP: 0px! important; HEIGHT: 1.7em! important
}
SELECT {
	VERTICAL-ALIGN: top
}
ABBR {
	BACKGROUND: none transparent scroll repeat 0% 0%; CURSOR: help; COLOR: =
black; BORDER-BOTTOM: black 1px dotted
}
ACRONYM {
	BACKGROUND: none transparent scroll repeat 0% 0%; CURSOR: help; COLOR: =
black; BORDER-BOTTOM: black 1px dotted
}
.explain {
	BACKGROUND: none transparent scroll repeat 0% 0%; CURSOR: help; COLOR: =
black; BORDER-BOTTOM: black 1px dotted
}
Q {
	FONT-STYLE: italic; FONT-FAMILY: Times, "Times New Roman", serif
}
CODE {
	BACKGROUND-COLOR: #f9f9f9
}
PRE {
	BORDER-RIGHT: #2f6fab 1px dashed; PADDING-RIGHT: 1em; BORDER-TOP: =
#2f6fab 1px dashed; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; BORDER-LEFT: =
#2f6fab 1px dashed; COLOR: black; LINE-HEIGHT: 1.1em; PADDING-TOP: 1em; =
BORDER-BOTTOM: #2f6fab 1px dashed; BACKGROUND-COLOR: #f9f9f9
}
#siteSub {
	DISPLAY: none
}
#jump-to-nav {
	DISPLAY: none
}
#contentSub {
	FONT-SIZE: 84%; MARGIN: 0px 0px 1.4em 1em; WIDTH: auto; COLOR: #7d7d7d; =
LINE-HEIGHT: 1.2em
}
#contentSub2 {
	FONT-SIZE: 84%; MARGIN: 0px 0px 1.4em 1em; WIDTH: auto; COLOR: #7d7d7d; =
LINE-HEIGHT: 1.2em
}
SPAN.subpages {
	DISPLAY: block
}
#bodyContent H1 {
	MARGIN-BOTTOM: 0.6em
}
#bodyContent H2 {
	MARGIN-BOTTOM: 0.6em
}
#bodyContent H3 {
	MARGIN-BOTTOM: 0.3em
}
#bodyContent H4 {
	MARGIN-BOTTOM: 0.3em
}
#bodyContent H5 {
	MARGIN-BOTTOM: 0.3em
}
#firstHeading {
	MARGIN-BOTTOM: 0.1em; PADDING-BOTTOM: 0px; LINE-HEIGHT: 1.2em
}
.usermessage {
	BORDER-RIGHT: #ffa500 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: =
#ffa500 1px solid; PADDING-LEFT: 1em; FONT-WEIGHT: bold; PADDING-BOTTOM: =
0.5em; MARGIN: 2em 0px 1em; VERTICAL-ALIGN: middle; BORDER-LEFT: #ffa500 =
1px solid; COLOR: black; PADDING-TOP: 0.5em; BORDER-BOTTOM: #ffa500 1px =
solid; BACKGROUND-COLOR: #ffce7b
}
#siteNotice {
	PADDING-RIGHT: 0.9em; PADDING-LEFT: 0.9em; FONT-SIZE: 95%; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px; TEXT-ALIGN: center
}
#siteNotice P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.catlinks {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; MARGIN-TOP: 1em; PADDING-LEFT: 5px; =
PADDING-BOTTOM: 5px; BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 5px; =
BORDER-BOTTOM: #aaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.documentDescription {
	DISPLAY: block; FONT-WEIGHT: bold; MARGIN: 1em 0px; LINE-HEIGHT: 1.5em
}
.documentByLine {
	CLEAR: both; FONT-WEIGHT: normal; FONT-SIZE: 90%; COLOR: #76797c; =
TEXT-ALIGN: right
}
.center {
	WIDTH: 100%; TEXT-ALIGN: center
}
*.center * {
	MARGIN-LEFT: auto; MARGIN-RIGHT: auto
}
.small {
	FONT-SIZE: 94%
}
.small * {
	FONT-SIZE: 94%
}
TABLE.small {
	FONT-SIZE: 100%
}
#toc {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaa 1px =
solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: 5px; =
BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; BACKGROUND-COLOR: #f9f9f9
}
.toc {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaa 1px =
solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: 5px; =
BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; BACKGROUND-COLOR: #f9f9f9
}
.mw-warning {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaa 1px =
solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: 5px; =
BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; BACKGROUND-COLOR: #f9f9f9
}
#toc H2 {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; FONT-SIZE: 100%; PADDING-BOTTOM: 0px; BORDER-TOP-STYLE: none; =
PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
.toc H2 {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; FONT-SIZE: 100%; PADDING-BOTTOM: 0px; BORDER-TOP-STYLE: none; =
PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
#toc #toctitle {
	TEXT-ALIGN: center
}
.toc #toctitle {
	TEXT-ALIGN: center
}
#toc .toctitle {
	TEXT-ALIGN: center
}
.toc .toctitle {
	TEXT-ALIGN: center
}
#toc UL {
	PADDING-LEFT: 0px; LIST-STYLE-IMAGE: none; MARGIN-LEFT: 0px; =
LIST-STYLE-TYPE: none; TEXT-ALIGN: left
}
.toc UL {
	PADDING-LEFT: 0px; LIST-STYLE-IMAGE: none; MARGIN-LEFT: 0px; =
LIST-STYLE-TYPE: none; TEXT-ALIGN: left
}
#toc UL UL {
	MARGIN: 0px 0px 0px 2em
}
.toc UL UL {
	MARGIN: 0px 0px 0px 2em
}
#toc .toctoggle {
	FONT-SIZE: 94%
}
.toc .toctoggle {
	FONT-SIZE: 94%
}
.mw-warning {
	MARGIN-LEFT: 50px; MARGIN-RIGHT: 50px; TEXT-ALIGN: center
}
DIV.floatright {
	BORDER-TOP-WIDTH: 0px; CLEAR: right; BORDER-LEFT-WIDTH: 0px; FLOAT: =
right; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 0px 0.5em 0.5em; POSITION: =
relative; BORDER-RIGHT-WIDTH: 0px
}
TABLE.floatright {
	BORDER-TOP-WIDTH: 0px; CLEAR: right; BORDER-LEFT-WIDTH: 0px; FLOAT: =
right; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 0px 0.5em 0.5em; POSITION: =
relative; BORDER-RIGHT-WIDTH: 0px
}
DIV.floatright P {
	FONT-STYLE: italic
}
DIV.floatleft {
	BORDER-TOP-WIDTH: 0px; CLEAR: left; BORDER-LEFT-WIDTH: 0px; FLOAT: =
left; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 0.5em 0.5em 0px; POSITION: =
relative; BORDER-RIGHT-WIDTH: 0px
}
TABLE.floatleft {
	BORDER-TOP-WIDTH: 0px; CLEAR: left; BORDER-LEFT-WIDTH: 0px; FLOAT: =
left; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 0.5em 0.5em 0px; POSITION: =
relative; BORDER-RIGHT-WIDTH: 0px
}
DIV.floatleft P {
	FONT-STYLE: italic
}
DIV.thumb {
	BORDER-LEFT-COLOR: white; MARGIN-BOTTOM: 0.5em; BORDER-BOTTOM-COLOR: =
white; WIDTH: auto; BORDER-TOP-STYLE: solid; BORDER-TOP-COLOR: white; =
BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-RIGHT-COLOR: =
white; BORDER-BOTTOM-STYLE: solid
}
DIV.thumbinner {
	BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 3px! important; =
BORDER-TOP: #ccc 1px solid; PADDING-LEFT: 3px! important; FONT-SIZE: =
94%; PADDING-BOTTOM: 3px! important; OVERFLOW: hidden; BORDER-LEFT: #ccc =
1px solid; PADDING-TOP: 3px! important; BORDER-BOTTOM: #ccc 1px solid; =
BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: center
}
HTML .thumbimage {
	BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; BORDER-LEFT: =
#ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid
}
HTML .thumbcaption {
	PADDING-RIGHT: 3px! important; PADDING-LEFT: 3px! important; FONT-SIZE: =
94%; PADDING-BOTTOM: 3px! important; BORDER-TOP-STYLE: none; =
LINE-HEIGHT: 1.4em; PADDING-TOP: 3px! important; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: =
none
}
DIV.magnify {
	BACKGROUND: none transparent scroll repeat 0% 0%; FLOAT: right; =
BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
DIV.magnify A {
	DISPLAY: block; BACKGROUND: none transparent scroll repeat 0% 0%; =
BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
DIV.magnify IMG {
	DISPLAY: block; BACKGROUND: none transparent scroll repeat 0% 0%; =
BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
DIV.tright {
	BORDER-TOP-WIDTH: 0.5em; CLEAR: right; BORDER-LEFT-WIDTH: 1.4em; FLOAT: =
right; BORDER-BOTTOM-WIDTH: 0.8em; BORDER-RIGHT-WIDTH: 0px
}
DIV.tleft {
	BORDER-TOP-WIDTH: 0.5em; CLEAR: left; BORDER-LEFT-WIDTH: 0px; FLOAT: =
left; BORDER-BOTTOM-WIDTH: 0.8em; MARGIN-RIGHT: 0.5em; =
BORDER-RIGHT-WIDTH: 1.4em
}
IMG.thumbborder {
	BORDER-RIGHT: #dddddd 1px solid; BORDER-TOP: #dddddd 1px solid; =
BORDER-LEFT: #dddddd 1px solid; BORDER-BOTTOM: #dddddd 1px solid
}
.hiddenStructure {
	DISPLAY: none
}
TABLE.rimage {
	FLOAT: right; MARGIN-BOTTOM: 1em; MARGIN-LEFT: 1em; POSITION: relative; =
TEXT-ALIGN: center
}
.toccolours {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaa 1px =
solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: 5px; =
BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; BACKGROUND-COLOR: #f9f9f9
}
.special LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; LINE-HEIGHT: 1.4em; PADDING-TOP: 0px
}
#bodyContent A.external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(external.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href^=3D'gopher://'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(external.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.rtl #bodyContent A.external {
	BACKGROUND-IMAGE: url(external-rtl.png)
}
.rtl #bodyContent A[href^=3D'gopher://'].external {
	BACKGROUND-IMAGE: url(external-rtl.png)
}
#bodyContent A[href^=3D'https://'].external {
	PADDING-RIGHT: 16px; PADDING-LEFT: 16px; BACKGROUND: url(lock_icon.gif) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-https {
	PADDING-RIGHT: 16px; PADDING-LEFT: 16px; BACKGROUND: url(lock_icon.gif) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href^=3D'mailto:'].external {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: url(mail_icon.gif) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-mailto {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: url(mail_icon.gif) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href^=3D'news://'].external {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: url(news_icon.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href^=3D'ftp://'].external {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: url(file_icon.gif) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-ftp {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: url(file_icon.gif) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href^=3D'irc://'].external {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: =
url(discussionitem_icon.gif) no-repeat right center; PADDING-BOTTOM: =
0px; PADDING-TOP: 0px
}
.link-irc {
	PADDING-RIGHT: 18px; PADDING-LEFT: 18px; BACKGROUND: =
url(discussionitem_icon.gif) no-repeat right center; PADDING-BOTTOM: =
0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.ogg'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.OGG'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.mid'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.MID'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.midi'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.MIDI'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.mp3'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.MP3'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.wav'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.WAV'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.wma'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.WMA'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-audio {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(audio.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.ogm'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.OGM'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.avi'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.AVI'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.mpeg'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.MPEG'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.mpg'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.MPG'].external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-video {
	PADDING-RIGHT: 13px; PADDING-LEFT: 13px; BACKGROUND: url(video.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.pdf'].external {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href$=3D'.PDF'].external {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href*=3D'.pdf#'].external {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href*=3D'.PDF#'].external {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href*=3D'.pdf?'].external {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#bodyContent A[href*=3D'.PDF?'].external {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.link-document {
	PADDING-RIGHT: 12px; PADDING-LEFT: 12px; BACKGROUND: url(document.png) =
no-repeat right center; PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.rtl #bodyContent A.external {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: left 50%
}
.rtl A.feedlink {
	PADDING-RIGHT: 16px; BACKGROUND-POSITION: right 50%; PADDING-LEFT: 0px
}
.ltr #bodyContent A.external {
	PADDING-LEFT: 0px
}
#bodyContent A.extiw {
	COLOR: #36b
}
#bodyContent A.extiw:active {
	COLOR: #36b
}
#bodyContent A.external {
	COLOR: #36b
}
.portlet {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 0.5em; OVERFLOW: hidden; WIDTH: 11.6em; =
BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.portlet H4 {
	FONT-WEIGHT: normal; FONT-SIZE: 95%; WHITE-SPACE: nowrap
}
.portlet H5 {
	PADDING-RIGHT: 1em; DISPLAY: inline; PADDING-LEFT: 0.5em; FONT-WEIGHT: =
normal; FONT-SIZE: 91%; BACKGROUND: none transparent scroll repeat 0% =
0%; PADDING-BOTTOM: 0px; TEXT-TRANSFORM: lowercase; PADDING-TOP: 0px; =
WHITE-SPACE: nowrap; HEIGHT: 1em
}
.portlet H6 {
	BORDER-RIGHT: #2f6fab 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: =
#2f6fab 1px solid; DISPLAY: block; PADDING-LEFT: 1em; FONT-WEIGHT: =
normal; FONT-SIZE: 1em; BACKGROUND: #ffae2e; PADDING-BOTTOM: 0px; =
TEXT-TRANSFORM: lowercase; BORDER-LEFT: #2f6fab 1px solid; PADDING-TOP: =
0px; BORDER-BOTTOM: #2f6fab 1px; WHITE-SPACE: nowrap; HEIGHT: 1.2em
}
.pBody {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 0.8em; BORDER-TOP: #aaa =
1px solid; PADDING-LEFT: 0.5em; FONT-SIZE: 95%; PADDING-BOTTOM: 0.3em; =
BORDER-LEFT: #aaa 1px solid; COLOR: black; PADDING-TOP: 0px; =
BORDER-BOTTOM: #aaa 1px solid; BORDER-COLLAPSE: collapse; =
BACKGROUND-COLOR: white
}
.portlet H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.portlet H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.portlet H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.portlet H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.portlet UL {
	FONT-SIZE: 95%; LIST-STYLE-IMAGE: url(bullet.gif); LINE-HEIGHT: 1.5em; =
LIST-STYLE-TYPE: square
}
.portlet LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#p-logo {
	Z-INDEX: 3; LEFT: 0px; OVERFLOW: visible; WIDTH: 12em; POSITION: =
absolute; TOP: 0px; HEIGHT: 155px
}
#p-logo H5 {
	DISPLAY: none
}
#p-logo A {
	BACKGROUND-POSITION: 35% 50%; DISPLAY: block; WIDTH: 12.2em; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 155px; TEXT-DECORATION: none
}
#p-logo A:hover {
	BACKGROUND-POSITION: 35% 50%; DISPLAY: block; WIDTH: 12.2em; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 155px; TEXT-DECORATION: none
}
#p-search {
	Z-INDEX: 3; POSITION: relative
}
INPUT.searchButton {
	MARGIN-TOP: 1px; FONT-SIZE: 95%
}
#searchGoButton {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-WEIGHT: bold
}
#searchInput {
	FONT-SIZE: 95%; MARGIN: 0px; WIDTH: 10.9em
}
#p-search .pBody {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.5em; TEXT-ALIGN: center
}
#p-search #searchform DIV DIV {
	MARGIN-TOP: 0.4em; FONT-SIZE: 95%
}
#p-personal {
	LEFT: 0px; POSITION: absolute; TOP: 0px
}
#p-personal {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; OVERFLOW: =
visible; WIDTH: 100%; BORDER-TOP-STYLE: none; LINE-HEIGHT: 1.2em; =
PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; WHITE-SPACE: nowrap; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#p-personal H5 {
	DISPLAY: none
}
#p-personal .portlet {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; OVERFLOW: =
visible; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#p-personal .pBody {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; OVERFLOW: =
visible; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#p-personal UL {
	PADDING-RIGHT: 2em; PADDING-LEFT: 3em; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; CURSOR: default; =
COLOR: #2f6fab; BORDER-TOP-STYLE: none; LINE-HEIGHT: 1.4em; PADDING-TOP: =
0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; LIST-STYLE-TYPE: =
none; TEXT-ALIGN: right; BORDER-BOTTOM-STYLE: none
}
#p-personal LI {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; BACKGROUND: =
none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN-LEFT: =
1em; COLOR: #2f6fab; BORDER-TOP-STYLE: none; LINE-HEIGHT: 1.2em; =
PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
BORDER-BOTTOM-STYLE: none
}
#p-personal LI A {
	BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-BOTTOM: =
0.2em; COLOR: #005896; TEXT-DECORATION: none
}
#p-personal LI A:hover {
	PADDING-BOTTOM: 0.2em; BACKGROUND-COLOR: white; TEXT-DECORATION: none
}
#p-personal LI.active A:hover {
	BACKGROUND-COLOR: transparent
}
LI#pt-userpage {
	PADDING-LEFT: 20px; BACKGROUND: url(user.gif) no-repeat left top; =
TEXT-TRANSFORM: none
}
LI#pt-anonuserpage {
	PADDING-LEFT: 20px; BACKGROUND: url(user.gif) no-repeat left top; =
TEXT-TRANSFORM: none
}
LI#pt-login {
	PADDING-LEFT: 20px; BACKGROUND: url(user.gif) no-repeat left top; =
TEXT-TRANSFORM: none
}
#p-personal UL {
	TEXT-TRANSFORM: lowercase
}
#p-personal LI.active {
	FONT-WEIGHT: bold
}
#p-cactions {
	PADDING-LEFT: 1em; FONT-SIZE: 95%; BACKGROUND: none transparent scroll =
repeat 0% 0%; LEFT: 11.5em; MARGIN: 0px; OVERFLOW: visible; WIDTH: 76%; =
LINE-HEIGHT: 1.1em; WHITE-SPACE: nowrap; LIST-STYLE-TYPE: none; =
POSITION: absolute; TOP: 1.3em; BORDER-COLLAPSE: collapse
}
#p-cactions UL {
	LIST-STYLE-TYPE: none
}
#p-cactions LI {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #aaa 1px =
solid; DISPLAY: inline; PADDING-LEFT: 0px; BACKGROUND: white; =
PADDING-BOTTOM: 0.1em; MARGIN: 0px 0.3em 0px 0px; OVERFLOW: visible; =
BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #aaa 1px
}
#p-cactions LI.selected {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; =
BORDER-LEFT-COLOR: #fabd23; BORDER-BOTTOM-COLOR: #fabd23; =
PADDING-BOTTOM: 0.2em; BORDER-TOP-COLOR: #fabd23; PADDING-TOP: 0px; =
BORDER-RIGHT-COLOR: #fabd23
}
#p-cactions LI A {
	PADDING-RIGHT: 0.8em; PADDING-LEFT: 0.8em; PADDING-BOTTOM: 0.3em; =
MARGIN: 0px; COLOR: #002bb8; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; POSITION: relative; =
BACKGROUND-COLOR: #fbfbfb; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: =
none
}
#p-cactions LI.selected A {
	PADDING-RIGHT: 1em! important; PADDING-LEFT: 1em! important; Z-INDEX: =
3; PADDING-BOTTOM: 0.2em! important; PADDING-TOP: 0px! important; =
BACKGROUND-COLOR: white
}
#p-cactions .new A {
	COLOR: #ba0000
}
#p-cactions LI A:hover {
	Z-INDEX: 3; BACKGROUND-COLOR: white; TEXT-DECORATION: none
}
#p-cactions H5 {
	DISPLAY: none
}
#p-cactions LI.istalk {
	MARGIN-RIGHT: 0px
}
#p-cactions LI.istalk A {
	PADDING-RIGHT: 0.5em
}
#p-cactions #ca-addsection A {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em
}
LI#ca-talk {
	MARGIN-RIGHT: 1.6em
}
LI#ca-watch {
	MARGIN-LEFT: 1.6em
}
LI#ca-unwatch {
	MARGIN-LEFT: 1.6em
}
LI#ca-varlang-0 {
	MARGIN-LEFT: 1.6em
}
LI#ca-print {
	MARGIN-LEFT: 1.6em
}
#p-cactions .pBody {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; =
BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 1em; BORDER-BOTTOM-WIDTH: 0px; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px; BACKGROUND-COLOR: transparent; =
BORDER-RIGHT-WIDTH: 0px
}
#p-cactions .hiddenStructure {
	DISPLAY: none
}
#p-cactions LI A {
	TEXT-TRANSFORM: lowercase
}
#p-lang {
	Z-INDEX: 3; POSITION: relative
}
.capitalize-all-nouns .portlet H5 {
	TEXT-TRANSFORM: none
}
.capitalize-all-nouns .portlet H6 {
	TEXT-TRANSFORM: none
}
.capitalize-all-nouns #p-personal UL {
	TEXT-TRANSFORM: none
}
.capitalize-all-nouns #p-cactions UL LI A {
	TEXT-TRANSFORM: none
}
#t-ispermalink {
	COLOR: #999
}
#t-iscite {
	COLOR: #999
}
#footer {
	PADDING-RIGHT: 0px; BORDER-TOP: #fabd23 1px solid; PADDING-LEFT: 0px; =
FONT-SIZE: 90%; PADDING-BOTTOM: 1.2em; MARGIN: 0.6em 0px 1em; =
PADDING-TOP: 0.4em; BORDER-BOTTOM: #fabd23 1px solid; BACKGROUND-COLOR: =
white; TEXT-ALIGN: center
}
#footer LI {
	DISPLAY: inline; MARGIN: 0px 1.3em
}
#f-poweredbyico {
	MARGIN: 0px 8px; POSITION: relative; TOP: -2px
}
#f-copyrightico {
	MARGIN: 0px 8px; POSITION: relative; TOP: -2px
}
#f-poweredbyico {
	FLOAT: right; HEIGHT: 1%
}
#f-copyrightico {
	FLOAT: left; HEIGHT: 1%
}
.mw-htmlform-submit {
	PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; FONT-WEIGHT: bold; =
MARGIN-RIGHT: 2em
}
#preftoc {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; WIDTH: 100%; PADDING-TOP: 0px
}
#preftoc LI {
	COLOR: #000; BACKGROUND-COLOR: #f0f0f0
}
#preftoc LI {
	BORDER-RIGHT: #716f64 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #fff =
1px solid; PADDING-LEFT: 0px; Z-INDEX: 3; FLOAT: left; LIST-STYLE-IMAGE: =
none; PADDING-BOTTOM: 3px; MARGIN: 1px -2px 1px 2px; BORDER-LEFT: #fff =
1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #fff 0px solid; WHITE-SPACE: =
nowrap; LIST-STYLE-TYPE: none; POSITION: relative
}
#preftoc LI.selected {
	BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; FONT-WEIGHT: =
bold; BORDER-LEFT: #aaa 1px solid; CURSOR: default; MARGIN-RIGHT: -3px; =
PADDING-TOP: 2px; BORDER-BOTTOM: #aaa 1px; TOP: 1px; BACKGROUND-COLOR: =
#f9f9f9
}
#preftoc > LI.selected {
	TOP: 2px
}
#preftoc A {
	PADDING-RIGHT: 0.7em; DISPLAY: block; PADDING-LEFT: 0.7em; =
PADDING-BOTTOM: 0px; COLOR: #000; PADDING-TOP: 0px; POSITION: relative; =
TEXT-DECORATION: none
}
#preftoc A:active {
	PADDING-RIGHT: 0.7em; DISPLAY: block; PADDING-LEFT: 0.7em; =
PADDING-BOTTOM: 0px; COLOR: #000; PADDING-TOP: 0px; POSITION: relative; =
TEXT-DECORATION: none
}
#preftoc LI.selected A {
	CURSOR: default; TEXT-DECORATION: none
}
#preferences {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 1.5em; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 1.5em; PADDING-BOTTOM: 1.5em; =
MARGIN: 0px; BORDER-LEFT: #aaa 1px solid; PADDING-TOP: 1.5em; =
BORDER-BOTTOM: #aaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.prefsection {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.prefsection LEGEND {
	FONT-WEIGHT: bold
}
.prefsection TABLE {
	BACKGROUND-COLOR: #f9f9f9
}
.prefsection LEGEND {
	BACKGROUND-COLOR: #f9f9f9
}
.mainLegend {
	DISPLAY: none
}
TD.htmlform-tip {
	PADDING-RIGHT: 2em; PADDING-LEFT: 2em; FONT-SIZE: x-small; =
PADDING-BOTTOM: 0.2em; COLOR: #666; PADDING-TOP: 0.2em
}
.preferences-login {
	CLEAR: both; MARGIN-BOTTOM: 1.5em
}
.prefcache {
	MARGIN-TOP: 2em; FONT-SIZE: 90%
}
DIV#userloginForm FORM {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 2em; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 2em; FLOAT: left; =
PADDING-BOTTOM: 1.5em; MARGIN: 0px 3em 1em 0px; BORDER-LEFT: #aaa 1px =
solid; PADDING-TOP: 1.5em; BORDER-BOTTOM: #aaa 1px solid; =
BACKGROUND-COLOR: #f9f9f9
}
DIV#userlogin FORM#userlogin2 {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 2em; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 2em; FLOAT: left; =
PADDING-BOTTOM: 1.5em; MARGIN: 0px 3em 1em 0px; BORDER-LEFT: #aaa 1px =
solid; PADDING-TOP: 1.5em; BORDER-BOTTOM: #aaa 1px solid; =
BACKGROUND-COLOR: #f9f9f9
}
.rtl DIV#userloginForm FORM {
	FLOAT: right
}
.rtl DIV#userlogin FORM#userlogin2 {
	FLOAT: right
}
DIV#userloginForm TABLE {
	BACKGROUND-COLOR: #f9f9f9
}
DIV#userlogin FORM#userlogin2 TABLE {
	BACKGROUND-COLOR: #f9f9f9
}
DIV#userloginForm H2 {
	PADDING-TOP: 0px
}
DIV#userlogin FORM#userlogin2 H2 {
	PADDING-TOP: 0px
}
DIV#userlogin .captcha {
	BORDER-RIGHT: #bbb 1px solid; PADDING-RIGHT: 2em; BORDER-TOP: #bbb 1px =
solid; PADDING-LEFT: 2em; PADDING-BOTTOM: 1.5em; BORDER-LEFT: #bbb 1px =
solid; PADDING-TOP: 1.5em; BORDER-BOTTOM: #bbb 1px solid; =
BACKGROUND-COLOR: white
}
DIV#userloginForm .captcha {
	BORDER-RIGHT: #bbb 1px solid; PADDING-RIGHT: 2em; BORDER-TOP: #bbb 1px =
solid; PADDING-LEFT: 2em; PADDING-BOTTOM: 1.5em; BORDER-LEFT: #bbb 1px =
solid; PADDING-TOP: 1.5em; BORDER-BOTTOM: #bbb 1px solid; =
BACKGROUND-COLOR: white
}
#loginend {
	CLEAR: both
}
#signupend {
	CLEAR: both
}
#userloginprompt {
	FONT-SIZE: 85%
}
#languagelinks {
	FONT-SIZE: 85%
}
#login-sectiontip {
	FONT-SIZE: 85%; LINE-HEIGHT: 1.2; PADDING-TOP: 2em
}
#userlogin .loginText {
	WIDTH: 12em
}
#userlogin .loginPassword {
	WIDTH: 12em
}
#userloginlink A {
	FONT-WEIGHT: bold
}
#wpLoginattempt {
	FONT-WEIGHT: bold
}
#wpCreateaccount {
	FONT-WEIGHT: bold
}
* > HTML #p-cactions LI {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
* > HTML #p-cactions LI A {
	BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; BORDER-LEFT: =
#aaa 1px solid; BORDER-BOTTOM: #aaa 1px
}
* > HTML #p-cactions LI.selected A {
	BORDER-LEFT-COLOR: #fabd23; BORDER-BOTTOM-COLOR: #fabd23; =
BORDER-TOP-COLOR: #fabd23; BORDER-RIGHT-COLOR: #fabd23
}
* > HTML #f-poweredbyico {
	WIDTH: 88px
}
* > HTML #f-copyrightico {
	WIDTH: 88px
}
* > HTML #bodyContent {
	OVERFLOW-X: auto; PADDING-BOTTOM: 25px; WIDTH: 100%
}
* > HTML #bodyContent PRE {
	OVERFLOW-X: auto; PADDING-BOTTOM: 25px; WIDTH: 100%
}
* HTML #footer {
	MARGIN-TOP: 0px
}
* HTML #column-content {
	DISPLAY: inline; MARGIN-BOTTOM: 0px
}
* HTML DIV.editsection {
	FONT-SIZE: smaller
}
#pagehistory LI.selected {
	POSITION: relative
}
* > HTML #column-content {
	FLOAT: none
}
* > HTML #column-one {
	LEFT: 0px; POSITION: absolute; TOP: 0px
}
* > HTML #footer {
	MARGIN-LEFT: 13.2em
}
.redirectText {
	FONT-SIZE: 150%; MARGIN: 5px
}
.printfooter {
	DISPLAY: none
}
DIV.patrollink {
	CLEAR: both
}
.sharedUploadNotice {
	FONT-STYLE: italic
}
SPAN.updatedmarker {
	COLOR: black; BACKGROUND-COLOR: #0f0
}
.previewnote {
	MARGIN-BOTTOM: 1em; COLOR: #c00
}
.previewnote P {
	MARGIN: 0.8em 0px; TEXT-INDENT: 3em
}
.editExternally {
	BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: gray 1px =
solid; MARGIN-TOP: 0.5em; PADDING-LEFT: 3px; FONT-SIZE: small; FLOAT: =
left; PADDING-BOTTOM: 3px; BORDER-LEFT: gray 1px solid; PADDING-TOP: =
3px; BORDER-BOTTOM: gray 1px solid; BACKGROUND-COLOR: #ffffff; =
TEXT-ALIGN: center
}
.editExternallyHelp {
	COLOR: gray; FONT-STYLE: italic
}
.toggle {
	MARGIN-LEFT: 2em; TEXT-INDENT: -2em
}
INPUT#wpSummary {
	WIDTH: 80%
}
INPUT#wpSave {
	MARGIN-RIGHT: 0.33em
}
INPUT#wpDiff {
	MARGIN-RIGHT: 0.33em
}
#wpSave {
	FONT-WEIGHT: bold
}
TABLE.revisionform_default {
	BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; =
BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid
}
TABLE.revisionform_focus {
	BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; =
BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid; =
BACKGROUND-COLOR: #00bbff
}
TR.revision_tr_default {
	BACKGROUND-COLOR: #eeeeee
}
TR.revision_tr_first {
	BACKGROUND-COLOR: #dddddd
}
P.revision_saved {
	FONT-WEIGHT: bold; COLOR: green
}
DIV.noarticletext {
	BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: #ccc 1px =
solid; PADDING-LEFT: 1em; BACKGROUND: #fff; PADDING-BOTTOM: 0.2em; =
BORDER-LEFT: #ccc 1px solid; COLOR: #000; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: #ccc 1px solid
}
DIV#searchTargetContainer {
	BACKGROUND: white; LEFT: 10px; WIDTH: 90%; TOP: 10px
}
DIV#searchTarget {
	BORDER-RIGHT: blue 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: blue 1px =
solid; PADDING-LEFT: 3px; BACKGROUND: #f0f0f0; PADDING-BOTTOM: 3px; =
MARGIN: 5px; BORDER-LEFT: blue 1px solid; PADDING-TOP: 3px; =
BORDER-BOTTOM: blue 1px solid
}
DIV#searchTarget UL LI {
	LIST-STYLE-TYPE: none
}
DIV#searchTarget UL LI:unknown {
	COLOR: orange; content: "=BB "
}
DIV#searchTargetHide {
	BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: black =
1px solid; PADDING-LEFT: 2px; BACKGROUND: #dcdcdc; FLOAT: right; =
PADDING-BOTTOM: 2px; BORDER-LEFT: black 1px solid; PADDING-TOP: 2px; =
BORDER-BOTTOM: black 1px solid
}
#powersearch P {
	MARGIN-TOP: 0px
}
DIV.multipageimagenavbox {
	BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: silver =
1px solid; PADDING-LEFT: 4px; BACKGROUND: #f0f0f0; PADDING-BOTTOM: 4px; =
MARGIN: 1em; BORDER-LEFT: silver 1px solid; PADDING-TOP: 4px; =
BORDER-BOTTOM: silver 1px solid
}
DIV.multipageimagenavbox DIV.thumb {
	MARGIN-LEFT: 2em; BORDER-TOP-STYLE: none; MARGIN-RIGHT: 2em; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
DIV.multipageimagenavbox HR {
	MARGIN: 6px
}
TABLE.multipageimage TD {
	TEXT-ALIGN: center
}
.templatesUsed {
	MARGIN-TOP: 1.5em
}
.mw-summary-preview {
	MARGIN: 0.1em 0px
}
DIV.mw-lag-warn-normal {
	PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 3px =
auto; PADDING-TOP: 3px; TEXT-ALIGN: center
}
DIV.mw-lag-warn-high {
	PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 3px =
auto; PADDING-TOP: 3px; TEXT-ALIGN: center
}
DIV.mw-lag-warn-normal {
	BORDER-RIGHT: #ffcc66 1px solid; BORDER-TOP: #ffcc66 1px solid; =
BORDER-LEFT: #ffcc66 1px solid; BORDER-BOTTOM: #ffcc66 1px solid; =
BACKGROUND-COLOR: #ffffcc
}
DIV.mw-lag-warn-high {
	BORDER-RIGHT: #ff0033 2px solid; BORDER-TOP: #ff0033 2px solid; =
FONT-WEIGHT: bold; BORDER-LEFT: #ff0033 2px solid; BORDER-BOTTOM: =
#ff0033 2px solid; BACKGROUND-COLOR: #ffcccc
}
.MediaTransformError {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em; BACKGROUND-COLOR: #ccc
}
.MediaTransformError TD {
	FONT-SIZE: 90%; VERTICAL-ALIGN: middle; TEXT-ALIGN: center
}
.os-suggest {
	FONT-SIZE: 127%
}
.no-text-transform {
	TEXT-TRANSFORM: none
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/chick/main.css?243z2

BODY {
	PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; PADDING-BOTTOM: 0.3em; =
MARGIN: 0px; COLOR: black; PADDING-TOP: 0.3em; FONT-FAMILY: sans-serif
}
A {
	COLOR: #002bb8
}
A:visited {
	COLOR: #5a3696
}
A:active {
	COLOR: #ffa500
}
A.stub {
	COLOR: #772233
}
A.new {
	COLOR: #ba0000
}
#p-personal A.new {
	COLOR: #ba0000
}
A.new:visited {
	COLOR: #a55858
}
#p-personal A.new:visited {
	COLOR: #a55858
}
IMG {
	VERTICAL-ALIGN: middle; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
P {
	MARGIN: 0.4em 0em 0.5em; LINE-HEIGHT: 1.5em
}
P IMG {
	MARGIN: 0px
}
HR {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: =
0px; MARGIN: 0.2em 0px; COLOR: #aaaaaa; HEIGHT: 1px; BACKGROUND-COLOR: =
#aaaaaa; BORDER-RIGHT-WIDTH: 0px
}
H1 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaaaaa 1px solid
}
H2 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaaaaa 1px solid
}
H3 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaaaaa 1px solid
}
H4 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaaaaa 1px solid
}
H5 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaaaaa 1px solid
}
H6 {
	FONT-WEIGHT: normal; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 0.17em; MARGIN: 0px; COLOR: black; PADDING-TOP: 0.5em; =
BORDER-BOTTOM: #aaaaaa 1px solid
}
.editsection {
	FONT-WEIGHT: normal
}
H1 {
	FONT-SIZE: 188%
}
H1 .editsection {
	FONT-SIZE: 53.2%
}
H2 {
	FONT-SIZE: 150%
}
H2 .editsection {
	FONT-SIZE: 66.7%
}
H3 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H4 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H5 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H6 {
	FONT-WEIGHT: bold; BORDER-BOTTOM-STYLE: none
}
H3 {
	FONT-SIZE: 132%
}
H3 .editsection {
	FONT-SIZE: 75.8%
}
H4 {
	FONT-SIZE: 116%
}
H4 .editsection {
	FONT-SIZE: 86.2%
}
H5 {
	FONT-SIZE: 100%
}
H6 {
	FONT-SIZE: 80%
}
H6 .editsection {
	FONT-SIZE: 125%
}
UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.3em 0px 0px 1.5em; LINE-HEIGHT: 1.5em; PADDING-TOP: 0px
}
OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LIST-STYLE-IMAGE: none; =
PADDING-BOTTOM: 0px; MARGIN: 0.3em 0px 0px 3.2em; LINE-HEIGHT: 1.5em; =
PADDING-TOP: 0px
}
LI {
	MARGIN-BOTTOM: 0.1em
}
DT {
	FONT-WEIGHT: bold; MARGIN-BOTTOM: 0.1em
}
DL {
	MARGIN-TOP: 0.2em; MARGIN-BOTTOM: 0.5em
}
DD {
	MARGIN-BOTTOM: 0.1em; MARGIN-LEFT: 2em; LINE-HEIGHT: 1.5em
}
FIELDSET {
	BORDER-RIGHT: #2f6fab 1px solid; PADDING-RIGHT: 1em; BORDER-TOP: =
#2f6fab 1px solid; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; MARGIN: 1em =
0em; BORDER-LEFT: #2f6fab 1px solid; LINE-HEIGHT: 1.5em; PADDING-TOP: =
0em; BORDER-BOTTOM: #2f6fab 1px solid
}
LEGEND {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-SIZE: 95%; BACKGROUND: =
white; PADDING-BOTTOM: 0.5em; PADDING-TOP: 0.5em
}
FORM {
	MARGIN: 0px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
TEXTAREA {
	BORDER-RIGHT: #2f6fab 1px solid; PADDING-RIGHT: 0.1em; BORDER-TOP: =
#2f6fab 1px solid; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; OVERFLOW: =
auto; BORDER-LEFT: #2f6fab 1px solid; WIDTH: 100%; COLOR: black; =
PADDING-TOP: 0.1em; BORDER-BOTTOM: #2f6fab 1px solid; BACKGROUND-COLOR: =
white
}

@media All   =20
{
HEAD:first-child + BODY INPUT {
	BORDER-RIGHT: #2f6fab 1px solid; PADDING-RIGHT: 0.2em; BORDER-TOP: =
#2f6fab 1px solid; PADDING-LEFT: 0.2em; VISIBILITY: visible; =
PADDING-BOTTOM: 0.2em; VERTICAL-ALIGN: middle; BORDER-LEFT: #2f6fab 1px =
solid; COLOR: black; PADDING-TOP: 0.2em; BORDER-BOTTOM: #2f6fab 1px =
solid; BACKGROUND-COLOR: white
}
    }
INPUT.historysubmit {
	PADDING-RIGHT: 0.3em! important; PADDING-LEFT: 0.3em! important; =
FONT-SIZE: 94%; PADDING-BOTTOM: 0.3em! important; MARGIN-LEFT: 1.6em; =
CURSOR: pointer; PADDING-TOP: 0px! important; HEIGHT: 1.7em! important
}
INPUT[type=3D'radio'] {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
INPUT[type=3D'checkbox'] {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
SELECT {
	BORDER-RIGHT: #2f6fab 1px solid; BORDER-TOP: #2f6fab 1px solid; =
VERTICAL-ALIGN: top; BORDER-LEFT: #2f6fab 1px solid; COLOR: black; =
BORDER-BOTTOM: #2f6fab 1px solid
}
ABBR {
	BACKGROUND: none transparent scroll repeat 0% 0%; CURSOR: help; COLOR: =
black; BORDER-BOTTOM: black 1px dotted
}
ACRONYM {
	BACKGROUND: none transparent scroll repeat 0% 0%; CURSOR: help; COLOR: =
black; BORDER-BOTTOM: black 1px dotted
}
.explain {
	BACKGROUND: none transparent scroll repeat 0% 0%; CURSOR: help; COLOR: =
black; BORDER-BOTTOM: black 1px dotted
}
Q {
	FONT-STYLE: italic; FONT-FAMILY: Times, "Times New Roman", serif
}
CODE {
	BACKGROUND-COLOR: #f9f9f9
}
PRE {
	BORDER-RIGHT: #2f6fab 1px dashed; PADDING-RIGHT: 1em; BORDER-TOP: =
#2f6fab 1px dashed; PADDING-LEFT: 1em; PADDING-BOTTOM: 1em; BORDER-LEFT: =
#2f6fab 1px dashed; COLOR: black; LINE-HEIGHT: 1.1em; PADDING-TOP: 1em; =
BORDER-BOTTOM: #2f6fab 1px dashed; BACKGROUND-COLOR: #f9f9f9
}
SPAN.subpages {
	DISPLAY: block
}
#bodyContent H1 {
	MARGIN-BOTTOM: 0.6em
}
#bodyContent H2 {
	MARGIN-BOTTOM: 0.6em
}
#bodyContent H3 {
	MARGIN-BOTTOM: 0.3em
}
#bodyContent H4 {
	MARGIN-BOTTOM: 0.3em
}
#bodyContent H5 {
	MARGIN-BOTTOM: 0.3em
}
#firstHeading {
	MARGIN-BOTTOM: 0.1em
}
.usermessage {
	BORDER-RIGHT: #ffa500 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#ffa500 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; PADDING-BOTTOM: =
2px; MARGIN: 0.1em 0px 0px; VERTICAL-ALIGN: middle; BORDER-LEFT: #ffa500 =
1px solid; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #ffa500 1px =
solid; BACKGROUND-COLOR: #ffce7b
}
#siteNotice {
	PADDING-RIGHT: 0.9em; PADDING-LEFT: 0.9em; FONT-SIZE: 95%; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px; TEXT-ALIGN: center
}
#siteNotice P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.error {
	FONT-SIZE: larger; COLOR: red
}
.catlinks {
	CLEAR: both; BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaaaaa 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; =
MARGIN: 0.1em 0px 0px; BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 2px; =
BORDER-BOTTOM: #aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.catlinks {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.documentDescription {
	DISPLAY: block; FONT-WEIGHT: bold; MARGIN: 1em 0em; LINE-HEIGHT: 1.5em
}
.documentByLine {
	CLEAR: both; FONT-WEIGHT: normal; FONT-SIZE: 90%; COLOR: #76797c; =
TEXT-ALIGN: right
}
.center {
	WIDTH: 100%; TEXT-ALIGN: center
}
*.center * {
	MARGIN-LEFT: auto; MARGIN-RIGHT: auto
}
.small {
	FONT-SIZE: 94%
}
.small * {
	FONT-SIZE: 94%
}
TABLE.small {
	FONT-SIZE: 100%
}
#toc {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: =
5px; BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: =
#aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
#toc UL {
	MARGIN-LEFT: 2em
}
#toc .toctoggle {
	FONT-SIZE: 94%
}
#toc .editsection {
	MARGIN-TOP: 0.7em; FONT-SIZE: 94%
}
DIV.floatright {
	CLEAR: right; BORDER-RIGHT: white 0px solid; BORDER-TOP: white 0.5em =
solid; FLOAT: right; MARGIN: 0px; BORDER-LEFT: white 1.4em solid; =
BORDER-BOTTOM: white 0.8em solid; POSITION: relative
}
TABLE.floatright {
	CLEAR: right; BORDER-RIGHT: white 0px solid; BORDER-TOP: white 0.5em =
solid; FLOAT: right; MARGIN: 0px; BORDER-LEFT: white 1.4em solid; =
BORDER-BOTTOM: white 0.8em solid; POSITION: relative
}
DIV.floatright P {
	FONT-STYLE: italic
}
DIV.floatleft {
	CLEAR: left; BORDER-RIGHT: white 1.4em solid; BORDER-TOP: white 0.5em =
solid; FLOAT: left; MARGIN: 0.3em 0.5em 0.5em 0px; BORDER-LEFT: white =
0px solid; BORDER-BOTTOM: white 0.8em solid; POSITION: relative
}
TABLE.floatleft {
	CLEAR: left; BORDER-RIGHT: white 1.4em solid; BORDER-TOP: white 0.5em =
solid; FLOAT: left; MARGIN: 0.3em 0.5em 0.5em 0px; BORDER-LEFT: white =
0px solid; BORDER-BOTTOM: white 0.8em solid; POSITION: relative
}
DIV.floatleft P {
	FONT-STYLE: italic
}
DIV.thumb {
	BORDER-LEFT-COLOR: white; MARGIN-BOTTOM: 0.5em; BORDER-BOTTOM-COLOR: =
white; WIDTH: auto; BORDER-TOP-STYLE: solid; BORDER-TOP-COLOR: white; =
BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: solid; BORDER-RIGHT-COLOR: =
white; BORDER-BOTTOM-STYLE: solid
}
DIV.thumb DIV {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 3px! important; =
BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 3px! important; FONT-SIZE: =
94%; PADDING-BOTTOM: 3px! important; OVERFLOW: hidden; BORDER-LEFT: =
#cccccc 1px solid; PADDING-TOP: 3px! important; BORDER-BOTTOM: #cccccc =
1px solid; BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: center
}
DIV.thumb DIV A IMG {
	BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; =
BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: #cccccc 1px solid
}
DIV.thumb DIV DIV.thumbcaption {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0.1em; =
BORDER-TOP-STYLE: none; LINE-HEIGHT: 1.4em; PADDING-TOP: 0.3em; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: left; =
BORDER-BOTTOM-STYLE: none
}
DIV.magnify {
	BACKGROUND: none transparent scroll repeat 0% 0%; FLOAT: right; =
BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
DIV.magnify A {
	DISPLAY: block; BACKGROUND: none transparent scroll repeat 0% 0%; =
BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
DIV.magnify IMG {
	DISPLAY: block; BACKGROUND: none transparent scroll repeat 0% 0%; =
BORDER-TOP-STYLE: none! important; BORDER-RIGHT-STYLE: none! important; =
BORDER-LEFT-STYLE: none! important; BORDER-BOTTOM-STYLE: none! important
}
DIV.tright {
	BORDER-TOP-WIDTH: 0.5em; CLEAR: right; BORDER-LEFT-WIDTH: 1.4em; FLOAT: =
right; BORDER-BOTTOM-WIDTH: 0.8em; BORDER-RIGHT-WIDTH: 0px
}
DIV.tleft {
	BORDER-TOP-WIDTH: 0.5em; CLEAR: left; BORDER-LEFT-WIDTH: 0px; FLOAT: =
left; BORDER-BOTTOM-WIDTH: 0.8em; MARGIN-RIGHT: 0.5em; =
BORDER-RIGHT-WIDTH: 1.4em
}
IMG.thumbborder {
	BORDER-RIGHT: #dddddd 1px solid; BORDER-TOP: #dddddd 1px solid; =
BORDER-LEFT: #dddddd 1px solid; BORDER-BOTTOM: #dddddd 1px solid
}
.hiddenStructure {
	DISPLAY: none
}
TABLE.rimage {
	FLOAT: right; MARGIN-BOTTOM: 1em; MARGIN-LEFT: 1em; POSITION: relative; =
TEXT-ALIGN: center
}
.toccolours {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: =
5px; BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: =
#aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.special LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; LINE-HEIGHT: 1.4em; PADDING-TOP: 0px
}
A.external {
	COLOR: #3366bb
}
DIV#footer {
	TEXT-ALIGN: center
}
UL#f-list LI {
	LIST-STYLE-TYPE: none; TEXT-ALIGN: center
}
DIV.portlet {
	MARGIN: 0.5em 0px
}
.redirectText {
	FONT-SIZE: 150%; MARGIN: 5px
}
UL.special LI.not-patrolled {
	BACKGROUND-COLOR: #ffa
}
OL.special LI.not-patrolled {
	BACKGROUND-COLOR: #ffa
}
DIV.patrollink {
	FONT-SIZE: 75%; TEXT-ALIGN: right
}
SPAN.updatedmarker {
	COLOR: black; BACKGROUND-COLOR: #00ff00
}
DIV.gallerybox {
	WIDTH: 150px
}
#xjump-to-nav {
	DISPLAY: none
}
.templatesUsed {
	MARGIN-TOP: 1.5em
}
.printfooter {
	DISPLAY: none
}
#footer {
	PADDING-RIGHT: 0px; BORDER-TOP: #fabd23 1px solid; PADDING-LEFT: 0px; =
FONT-SIZE: 90%; PADDING-BOTTOM: 1.2em; MARGIN: 0.6em 0px 1em; =
PADDING-TOP: 0.4em; BORDER-BOTTOM: #fabd23 1px solid; BACKGROUND-COLOR: =
white; TEXT-ALIGN: center
}
#f-poweredbyico {
	DISPLAY: inline
}
#f-copyrightico {
	DISPLAY: inline
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/monobook/IE70Fixes.css?243z2

#column-content #content {
	MARGIN-TOP: 3em; MARGIN-LEFT: 12.2em; HEIGHT: 1%
}
.rtl #column-one {
	MARGIN-TOP: 160px; PADDING-TOP: 0px
}
.rtl #bodyContent A.external {
	PADDING-RIGHT: 13px; PADDING-LEFT: 0px; BACKGROUND-IMAGE: =
url(external-rtl.png); PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.rtl A.feedlink {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: right 50%; PADDING-LEFT: 16px
}
#p-cactions {
	Z-INDEX: 3
}
#p-cactions LI {
	FLOAT: none! important; PADDING-BOTTOM: 0px! important; CURSOR: =
default; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: transparent; =
BORDER-BOTTOM-STYLE: none
}
#p-cactions LI A {
	BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; DISPLAY: =
inline-block! important; PADDING-BOTTOM: 0px; VERTICAL-ALIGN: top; =
BORDER-LEFT: #aaa 1px solid; BORDER-BOTTOM: #aaa 0px solid
}
#p-cactions LI.selected A {
	BORDER-LEFT-COLOR: #fabd23; BORDER-BOTTOM-COLOR: #fabd23; =
PADDING-BOTTOM: 0.17em; BORDER-TOP-COLOR: #fabd23; BORDER-RIGHT-COLOR: =
#fabd23
}
#p-cactions LI A:hover {
	PADDING-BOTTOM: 0.17em
}
#p-navigation A {
	DISPLAY: inline-block; WIDTH: 100%
}
#portal-personaltools {
	PADDING-BOTTOM: 0.1em
}
TEXTAREA {
	WIDTH: 96%
}
#footer LI {
	MARGIN-RIGHT: 0px
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/w/extensions/FlaggedRevs/flaggedrevs.css?60

.flaggedrevs_basic {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_quality {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_pristine {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_notice {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_editnotice {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_diffnotice {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_warning {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_preview {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; =
BORDER-TOP: #aaa 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 5px; MARGIN: 0.5em 1em 0em 0em; BORDER-LEFT: #aaa 1px =
solid; LINE-HEIGHT: 1.5em; PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs_basic {
	BACKGROUND-COLOR: #f0f8ff
}
.flaggedrevs_quality {
	BACKGROUND-COLOR: #f0fff0
}
.flaggedrevs_pristine {
	BACKGROUND-COLOR: #fffff0
}
.flaggedrevs_notice {
	BACKGROUND-COLOR: #f9f9f9
}
.flaggedrevs_preview {
	COLOR: #8b0000; BACKGROUND-COLOR: #f9f9f9
}
.flaggedrevs_warning {
	FONT-SIZE: 85%; MARGIN: 0em 1em 0em 0em; BACKGROUND-COLOR: #fffff0
}
.flaggedrevs_editnotice {
	FONT-SIZE: 85%; BACKGROUND-COLOR: #f9f9f9
}
.flaggedrevs_diffnotice {
	FONT-SIZE: 85%; BACKGROUND-COLOR: #f9f9f9
}
.flaggedrevs_notes {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #aaa 1px =
solid; PADDING-LEFT: 5px; FONT-SIZE: 85%; PADDING-BOTTOM: 5px; =
MARGIN-LEFT: 50px; BORDER-LEFT: #aaa 1px solid; MARGIN-RIGHT: 50px; =
PADDING-TOP: 5px; BORDER-BOTTOM: #aaa 1px solid; BACKGROUND-COLOR: =
#f9f9f9; TEXT-ALIGN: center
}
.fr-text-value {
	WIDTH: 100px
}
.fr-checkbox {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: 0px 0px; PADDING-LEFT: 0px; =
RIGHT: 0px; FLOAT: left; BACKGROUND-IMAGE: =
url(../FlaggedRevs/img/boxC.png); PADDING-BOTTOM: 0px; WIDTH: 16px; =
PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; POSITION: relative; TOP: =
0px; HEIGHT: 16px
}
.fr-marker-20 {
	BACKGROUND-POSITION: left bottom; PADDING-BOTTOM: 3px; =
BACKGROUND-REPEAT: no-repeat
}
.fr-marker-40 {
	BACKGROUND-POSITION: left bottom; PADDING-BOTTOM: 3px; =
BACKGROUND-REPEAT: no-repeat
}
.fr-marker-60 {
	BACKGROUND-POSITION: left bottom; PADDING-BOTTOM: 3px; =
BACKGROUND-REPEAT: no-repeat
}
.fr-marker-80 {
	BACKGROUND-POSITION: left bottom; PADDING-BOTTOM: 3px; =
BACKGROUND-REPEAT: no-repeat
}
.fr-marker-100 {
	BACKGROUND-POSITION: left bottom; PADDING-BOTTOM: 3px; =
BACKGROUND-REPEAT: no-repeat
}
.fr-marker-20 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/bar_20.png)
}
.fr-marker-40 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/bar_40.png)
}
.fr-marker-60 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/bar_60.png)
}
.fr-marker-80 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/bar_80.png)
}
.fr-marker-100 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/bar_100.png)
}
.flaggedrevs_short {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 1px; PADDING-LEFT: 1px; =
FONT-WEIGHT: normal; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 95%; FLOAT: =
right; BORDER-BOTTOM-WIDTH: 0px; MAX-WIDTH: 450px; PADDING-BOTTOM: 1px; =
MARGIN: 0em 0em 0em 1em; LINE-HEIGHT: 16px; PADDING-TOP: 1px; =
BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px
}
.rtl .flaggedrevs_short {
	FLOAT: left; MARGIN: 0px 1em 0px 0px
}
.fr-text {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; MARGIN: 0px 7px 0px 0px; WIDTH: 80px; LINE-HEIGHT: =
1em; PADDING-TOP: 0px; HEIGHT: 1em
}
.fr-value20 {
	BACKGROUND-POSITION: 50% 50%; FLOAT: left; WIDTH: 95px; LINE-HEIGHT: =
1em; BACKGROUND-REPEAT: no-repeat; HEIGHT: 1em; TEXT-ALIGN: center
}
.fr-value40 {
	BACKGROUND-POSITION: 50% 50%; FLOAT: left; WIDTH: 95px; LINE-HEIGHT: =
1em; BACKGROUND-REPEAT: no-repeat; HEIGHT: 1em; TEXT-ALIGN: center
}
.fr-value60 {
	BACKGROUND-POSITION: 50% 50%; FLOAT: left; WIDTH: 95px; LINE-HEIGHT: =
1em; BACKGROUND-REPEAT: no-repeat; HEIGHT: 1em; TEXT-ALIGN: center
}
.fr-value80 {
	BACKGROUND-POSITION: 50% 50%; FLOAT: left; WIDTH: 95px; LINE-HEIGHT: =
1em; BACKGROUND-REPEAT: no-repeat; HEIGHT: 1em; TEXT-ALIGN: center
}
.fr-value100 {
	BACKGROUND-POSITION: 50% 50%; FLOAT: left; WIDTH: 95px; LINE-HEIGHT: =
1em; BACKGROUND-REPEAT: no-repeat; HEIGHT: 1em; TEXT-ALIGN: center
}
.fr-value20 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/fr-marker-20.png)
}
.fr-value40 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/fr-marker-40.png)
}
.fr-value60 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/fr-marker-60.png)
}
.fr-value80 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/fr-marker-80.png)
}
.fr-value100 {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/fr-marker-100.png)
}
.flaggedrevs-box0 {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; =
FONT-SIZE: 85%; BORDER-LEFT: #aaa 1px solid; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs-box1 {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; =
FONT-SIZE: 85%; BORDER-LEFT: #aaa 1px solid; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs-box2 {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; =
FONT-SIZE: 85%; BORDER-LEFT: #aaa 1px solid; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs-box3 {
	CLEAR: both; BORDER-RIGHT: #aaa 1px solid; BORDER-TOP: #aaa 1px solid; =
FONT-SIZE: 85%; BORDER-LEFT: #aaa 1px solid; BORDER-BOTTOM: #aaa 1px =
solid; TEXT-ALIGN: center
}
.flaggedrevs-box0 {
	BACKGROUND-COLOR: #f9f9f9
}
.flaggedrevs-box1 {
	BACKGROUND-COLOR: #f0f8ff
}
.flaggedrevs-box2 {
	BACKGROUND-COLOR: #f0fff0
}
.flaggedrevs-box3 {
	BACKGROUND-COLOR: #fffff0
}
.flaggedrevs-color-0 {
	BACKGROUND-COLOR: #f9f9f9
}
.flaggedrevs-color-1 {
	BACKGROUND-COLOR: #f0f8ff
}
.flaggedrevs-color-2 {
	BACKGROUND-COLOR: #f0fff0
}
.flaggedrevs-color-3 {
	BACKGROUND-COLOR: #fffff0
}
.flaggedrevs-unreviewed {
	BACKGROUND-COLOR: #fffff0
}
.flaggedrevs-unreviewed2 {
	BACKGROUND-COLOR: #faebd7
}
.flaggedrevs_toggle {
	CURSOR: pointer; COLOR: blue; WHITE-SPACE: nowrap
}
.fr-icon-current {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0em 0.2em 0em 0em; WIDTH: =
16px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 16px
}
.fr-icon-stable {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0em 0.2em 0em 0em; WIDTH: =
16px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 16px
}
.fr-icon-quality {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0em 0.2em 0em 0em; WIDTH: =
16px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 16px
}
.fr-icon-locked {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0em 0.2em 0em 0em; WIDTH: =
16px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 16px
}
.fr-icon-unlocked {
	PADDING-RIGHT: 0px; BACKGROUND-POSITION: center center; PADDING-LEFT: =
0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0em 0.2em 0em 0em; WIDTH: =
16px; PADDING-TOP: 0px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 16px
}
.fr-icon-current {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/1.png)
}
.fr-icon-stable {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/2.png)
}
.fr-icon-quality {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/3.png)
}
.fr-icon-locked {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/lock-closed.png)
}
.fr-icon-unlocked {
	BACKGROUND-IMAGE: url(../FlaggedRevs/img/lock-open.png); WIDTH: 23px
}
.fr-diff-ratings {
	FONT-SIZE: 90%; LINE-HEIGHT: 1em
}
.fr-diff-to-stable {
	LINE-HEIGHT: 1em
}
.fr-hist-stable-user {
	FONT-WEIGHT: bold
}
.fr-hist-quality-user {
	FONT-WEIGHT: bold
}
.fr-hist-autoreviewed {
	FONT-WEIGHT: bold
}
.fr-backlognotice {
	BORDER-RIGHT: #990000 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: =
#990000 1px solid; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 5px; =
BORDER-LEFT: #990000 1px solid; PADDING-TOP: 3px; BORDER-BOTTOM: #990000 =
1px solid; BACKGROUND-COLOR: #f5ecec
}
.fr-watchlist-old-notice {
	BORDER-RIGHT: #990000 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: =
#990000 1px solid; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; MARGIN: 5px; =
BORDER-LEFT: #990000 1px solid; PADDING-TOP: 3px; BORDER-BOTTOM: #990000 =
1px solid; BACKGROUND-COLOR: #feecd7
}
.fr-pending-long {
	BACKGROUND-COLOR: #f5ecec
}
.fr-pending-long2 {
	BACKGROUND-COLOR: #f5dddd
}
.fr-pending-long3 {
	BACKGROUND-COLOR: #e2caca
}
.fr-unreviewed-unwatched {
	BACKGROUND-COLOR: #faebd7
}
.fr-under-review {
	BACKGROUND-COLOR: yellow
}
.flaggedrevs_reviewform {
	CLEAR: both; FONT-SIZE: 90%; BACKGROUND-COLOR: #f9f9f9
}
.fr-rating-controls {
	VERTICAL-ALIGN: middle; LINE-HEIGHT: 1em
}
.fr-rating-controls-disabled {
	VERTICAL-ALIGN: middle; LINE-HEIGHT: 1em
}
.fr-rating-controls-disabled {
	COLOR: graytext
}
.fr-rating-options {
	MARGIN-RIGHT: 1.5em
}
.fr-rating-option-0 {
	BACKGROUND-COLOR: #f5ecec
}
.fr-rating-option-1 {
	BACKGROUND-COLOR: #f0f8ff
}
.fr-rating-option-2 {
	BACKGROUND-COLOR: #f0fff0
}
.fr-rating-option-3 {
	BACKGROUND-COLOR: #fef0db
}
.fr-rating-option-4 {
	BACKGROUND-COLOR: #fffff0
}
.fr-diff-patrollink {
	TEXT-ALIGN: center
}
.fr-notes-box {
	MARGIN: 0em 1em 0em 0.5em; WIDTH: 95%
}
.fr-comment-box {
	MARGIN-TOP: 0.25em
}
.fr-rating-dave {
	BACKGROUND-COLOR: #e0ecf8
}
.fr-rating-rave {
	BACKGROUND-COLOR: #e0f8ec
}
.fr-hiddenform {
	DISPLAY: none
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/w/index.php?title=MediaWiki:Common.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400

@import url( =
url("https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaW=
iki:Common.css/WikiTable.css&action=3Draw&ctype=3Dtext/css") screen );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/WikiTable.css&action=3Draw=
&ctype=3Dtext/css") screen );
@import url( =
url("https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaW=
iki:Common.css/CommonsTicker.css&action=3Draw&ctype=3Dtext/css") screen =
);
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/CommonsTicker.css&action=3D=
raw&ctype=3Dtext/css") screen );
@import url( =
url("https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaW=
iki:Common.css/Infobox.css&action=3Draw&ctype=3Dtext/css") screen );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/Infobox.css&action=3Draw&c=
type=3Dtext/css") screen );
@import url( =
url("https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaW=
iki:Common.css/Messagebox.css&action=3Draw&ctype=3Dtext/css") screen );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/Messagebox.css&action=3Dra=
w&ctype=3Dtext/css") screen );
@import url( =
https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaWiki:C=
ommon.css/Hoverbox.css&action=3Draw&ctype=3Dtext/css );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/Hoverbox.css&action=3Draw&=
ctype=3Dtext/css") screen );
@import url( =
https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaWiki:C=
ommon.css/Autocount.css&action=3Draw&ctype=3Dtext/css );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/Autocount.css&action=3Draw=
&ctype=3Dtext/css") screen );
@import url( =
https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaWiki:C=
ommon.css/toc.css&action=3Draw&ctype=3Dtext/css );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/toc.css&action=3Draw&ctype=
=3Dtext/css") screen );
@import url( =
https://secure.wikimedia.org/wikibooks/en/w/index.php?title=3DMediaWiki:C=
ommon.css/Multilingual.css&action=3Draw&ctype=3Dtext/css );
@import url( =
url("/w/index.php?title=3DMediaWiki:Common.css/Multilingual.css&action=3D=
raw&ctype=3Dtext/css") screen );
.hiddenStructure {
	DISPLAY: none; speak: none
}
.audiolink A {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 16px! important; =
BACKGROUND: =
url(http://upload.wikimedia.org/wikipedia/commons/f/f7/Loudspeaker.png) =
no-repeat left center
}
.allpagesredirect {
	FONT-STYLE: italic
}
.PrettyTextBox {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 0.2em; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0.2em; =
BORDER-LEFT: #aaaaaa 1px solid; COLOR: #000000; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: #aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.archive-box {
	CLEAR: right; BORDER-RIGHT: #aaaaff 1px solid; PADDING-RIGHT: 0.2em; =
BORDER-TOP: #aaaaff 1px solid; PADDING-LEFT: 0.2em; FLOAT: right; =
MARGIN-BOTTOM: 0.5em; PADDING-BOTTOM: 0.2em; MARGIN-LEFT: 1em; =
BORDER-LEFT: #aaaaff 1px solid; COLOR: black; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: #aaaaff 1px solid; BACKGROUND-COLOR: #f2f2f9; TEXT-ALIGN: =
center
}
DIV.NavFrame {
	CLEAR: both; BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px =
solid; FONT-SIZE: 100%; MARGIN: 0px; BORDER-LEFT: #aaaaaa 1px solid; =
BORDER-BOTTOM: #aaaaaa 1px solid; BORDER-COLLAPSE: collapse; TEXT-ALIGN: =
center
}
.collapsible {
	CLEAR: both; BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px =
solid; FONT-SIZE: 100%; MARGIN: 0px; BORDER-LEFT: #aaaaaa 1px solid; =
BORDER-BOTTOM: #aaaaaa 1px solid; BORDER-COLLAPSE: collapse; TEXT-ALIGN: =
center
}
DIV.NavFrame + DIV.NavFrame {
	BORDER-TOP-WIDTH: 0px; MARGIN-TOP: 0px
}
.collapsible + .collapsible {
	BORDER-TOP-WIDTH: 0px; MARGIN-TOP: 0px
}
DIV.NavPic {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; FLOAT: left; PADDING-BOTTOM: =
2px; MARGIN: 0px; PADDING-TOP: 2px
}
DIV.NavFrame DIV.NavHead {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 95%; BACKGROUND: #ccccff; PADDING-BOTTOM: 0.2em; CURSOR: =
pointer; PADDING-TOP: 0.2em
}
.collapsible .title {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 95%; BACKGROUND: #ccccff; PADDING-BOTTOM: 0.2em; CURSOR: =
pointer; PADDING-TOP: 0.2em
}
.collapsible TH {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-WEIGHT: bold; =
FONT-SIZE: 95%; BACKGROUND: #ccccff; PADDING-BOTTOM: 0.2em; CURSOR: =
pointer; PADDING-TOP: 0.2em
}
DIV.NavFrame DIV.NavHead:hover {
	BACKGROUND: #aaaaff
}
.collapsible .title:hover {
	BACKGROUND: #aaaaff
}
.collapsible TH:hover {
	BACKGROUND: #aaaaff
}
DIV.NavFrame DIV.NavHead .action {
	FONT-WEIGHT: normal; FONT-SIZE: 10px; FLOAT: right; MARGIN: auto 0.5em; =
WIDTH: auto; WHITE-SPACE: nowrap; TEXT-ALIGN: right
}
.collapsible .action {
	FONT-WEIGHT: normal; FONT-SIZE: 10px; FLOAT: right; MARGIN: auto 0.5em; =
WIDTH: auto; WHITE-SPACE: nowrap; TEXT-ALIGN: right
}
TABLE.navbox {
	CLEAR: both; BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 1px; =
BORDER-TOP: #aaaaaa 1px solid; PADDING-LEFT: 1px; FONT-SIZE: 88%; =
PADDING-BOTTOM: 1px; MARGIN: 0.5em auto; BORDER-LEFT: #aaaaaa 1px solid; =
WIDTH: 100%; PADDING-TOP: 1px; BORDER-BOTTOM: #aaaaaa 1px solid; =
TEXT-ALIGN: center
}
.navbox-title {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; TEXT-ALIGN: center
}
.navbox-abovebelow {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; TEXT-ALIGN: center
}
TABLE.navbox TH {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; TEXT-ALIGN: center
}
.navbox-group {
	PADDING-RIGHT: 1em; PADDING-LEFT: 1em; FONT-WEIGHT: bold; WHITE-SPACE: =
nowrap; TEXT-ALIGN: right
}
.navbox {
	BACKGROUND: #fdfdfd
}
.navbox-subgroup {
	BACKGROUND: #fdfdfd
}
.navbox-list {
	BORDER-LEFT-COLOR: #fdfdfd; BORDER-BOTTOM-COLOR: #fdfdfd; =
BORDER-TOP-COLOR: #fdfdfd; BORDER-RIGHT-COLOR: #fdfdfd
}
.navbox-title {
	BACKGROUND: #ccccff
}
TABLE.navbox TH {
	BACKGROUND: #ccccff
}
.navbox-abovebelow {
	BACKGROUND: #ddddff
}
.navbox-group {
	BACKGROUND: #ddddff
}
.navbox-subgroup .navbox-title {
	BACKGROUND: #ddddff
}
.navbox-subgroup .navbox-group {
	BACKGROUND: #e6e6ff
}
.navbox-subgroup .navbox-abovebelow {
	BACKGROUND: #e6e6ff
}
.navbox-even {
	BACKGROUND: #f7f7f7
}
.navbox-odd {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.plainlinks .urlexpansion {
	DISPLAY: none! important
}
.plainlinks A {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px! =
important; PADDING-TOP: 0px! important
}
.plainlinks A.text.external:unknown {
	DISPLAY: none! important
}
.plainlinks A.autonumber.external:unknown {
	DISPLAY: none! important
}
STRONG.mw-plusminus-neg {
	COLOR: #cc0000
}
SPAN.mw-plusminus-neg {
	COLOR: #990000
}
SPAN.mw-plusminus-pos {
	COLOR: #006600
}
.navtabs .tabs LI {
	LIST-STYLE-TYPE: none
}
.navtabs .tabs A {
	FONT-WEIGHT: bold; FONT-SIZE: x-small; TEXT-TRANSFORM: uppercase; =
COLOR: black; TEXT-DECORATION: none; outline-width: 0px
}
.navtabs .tabs .inactive {
	PADDING-RIGHT: 1ex; PADDING-LEFT: 1ex; BACKGROUND: #bbb; =
PADDING-BOTTOM: 1ex; PADDING-TOP: 1ex
}
.navtabs .tabs .selected {
	PADDING-RIGHT: 1.1ex; PADDING-LEFT: 1.1ex; BACKGROUND: #999; =
PADDING-BOTTOM: 1.1ex; PADDING-TOP: 1.1ex
}
.navtabs .tabs .inactive:hover {
	BACKGROUND: #f75
}
.navtabs .contents {
	BORDER-RIGHT: #999 3px solid; PADDING-RIGHT: 1ex; BORDER-TOP: #999 3px =
solid; PADDING-LEFT: 1ex; PADDING-BOTTOM: 1ex; BORDER-LEFT: #999 3px =
solid; PADDING-TOP: 1ex; BORDER-BOTTOM: #999 3px solid
}
.horizontal UL {
	PADDING-RIGHT: 0em; PADDING-LEFT: 0em; PADDING-BOTTOM: 0em; MARGIN: =
0em; PADDING-TOP: 0em
}
.DPLFlat UL {
	PADDING-RIGHT: 0em; PADDING-LEFT: 0em; PADDING-BOTTOM: 0em; MARGIN: =
0em; PADDING-TOP: 0em
}
.horizontal LI {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 0.6em; DISPLAY: inline; =
PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0em; PADDING-TOP: 0em
}
.DPLFlat LI {
	BORDER-RIGHT: #aaa 1px solid; PADDING-RIGHT: 0.6em; DISPLAY: inline; =
PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0em; PADDING-TOP: 0em
}
.horizontal LI:unknown {
	PADDING-RIGHT: 0em; BORDER-RIGHT-WIDTH: 0em
}
.DPLFlat LI:unknown {
	PADDING-RIGHT: 0em; BORDER-RIGHT-WIDTH: 0em
}

@media Screen, Projection   =20
{
.printonly {
	DISPLAY: none! important
}
    }
BODY.page-Main_Page H1.firstHeading {
	DISPLAY: none
}
.page-Main_Page #siteSub {
	DISPLAY: none
}
.page-Main_Page H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
16pt; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; =
PADDING-TOP: 0px
}
#file IMG {
	BACKGROUND: =
url(http://upload.wikimedia.org/wikipedia/commons/5/5d/Checker-16x16.png)=

}
TABLE#mw-dismissable-notice {
	BACKGROUND-COLOR: transparent
}
SELECT {
	BACKGROUND: white; COLOR: black
}
SELECT OPTION.fr-rating-option-0 {
	COLOR: red
}
SELECT OPTION.fr-rating-option-1 {
	COLOR: olive
}
SELECT OPTION.fr-rating-option-2 {
	COLOR: purple
}
SELECT OPTION.fr-rating-option-3 {
	COLOR: green
}
SELECT OPTION.fr-rating-option-4 {
	COLOR: navy
}
.fr-rating-options OPTION[selected=3D'selected'] {
	FONT-WEIGHT: bold
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://en.wikibooks.org/w/index.php?title=MediaWiki:Print.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400

.editlink {
	DISPLAY: none! important
}
.noprint {
	DISPLAY: none! important
}
.metadata {
	DISPLAY: none! important
}
.dablink {
	DISPLAY: none! important
}
.toc {
	DISPLAY: none! important
}
.infobox {
	DISPLAY: none! important
}
#catlinks {
	DISPLAY: none! important
}
.subpages {
	DISPLAY: none! important
}
.navigation {
	DISPLAY: none! important
}
#privacy {
	DISPLAY: none! important
}
#about {
	DISPLAY: none! important
}
#disclaimer {
	DISPLAY: none! important
}
DIV.expand-print {
	DISPLAY: block! important
}
SPAN.expand-print {
	DISPLAY: inline! important
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/w/index.php?title=MediaWiki:Monobook.css&usemsgcache=yes&ctype=text%2Fcss&smaxage=2678400&action=raw&maxage=2678400

#content {
	BACKGROUND: #f8fcff
}
#p-cactions LI A:hover {
	BACKGROUND: #f8fcff
}
#p-cactions LI.selected A {
	BACKGROUND: #f8fcff
}
#content DIV.thumb {
	BACKGROUND: #f8fcff
}
#p-cactions LI A {
	BACKGROUND-COLOR: #f7f9fb
}
.ns-0 #content {
	BACKGROUND-COLOR: white
}
.ns-0 #p-cactions LI A:hover {
	BACKGROUND-COLOR: white
}
.ns-0 #p-cactions LI.selected A {
	BACKGROUND-COLOR: white
}
.ns-0 #content DIV.thumb {
	BACKGROUND-COLOR: white
}
.ns-100 #content {
	BACKGROUND-COLOR: white
}
.ns-100 #p-cactions LI A:hover {
	BACKGROUND-COLOR: white
}
.ns-100 #p-cactions LI.selected A {
	BACKGROUND-COLOR: white
}
.ns-100 #content DIV.thumb {
	BACKGROUND-COLOR: white
}
.ns-0 #p-cactions LI A {
	BACKGROUND-COLOR: #fbfbfb
}
.ns-100 #p-cactions LI A {
	BACKGROUND-COLOR: #fbfbfb
}

@media Print   =20
{
#content {
	BACKGROUND: white
}
    }
#siteSub {
	DISPLAY: inline; FONT-WEIGHT: normal; FONT-SIZE: 100%
}
#ca-edit A {
	FONT-WEIGHT: bold! important
}
#pt-login {
	FONT-WEIGHT: bold; FONT-SIZE: 110%
}
.diffchange {
	FONT-WEIGHT: bold
}
TD.diff-addedline {
	FONT-SIZE: 85%
}
TD.diff-deletedline {
	FONT-SIZE: 85%
}
TD.diff-context {
	FONT-SIZE: 85%
}
P.error {
	FONT-WEIGHT: bold
}
.toccolours {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: =
5px; BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: =
#aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.toccolors {
	BORDER-RIGHT: #aaaaaa 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#aaaaaa 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 95%; PADDING-BOTTOM: =
5px; BORDER-LEFT: #aaaaaa 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: =
#aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9
}
.portlet A {
	TEXT-DECORATION: none
}
#editpage-specialchars A {
	TEXT-DECORATION: none
}
.portlet A:hover {
	TEXT-DECORATION: underline
}
#editpage-specialchars A:hover {
	TEXT-DECORATION: underline
}
DIV.topicon {
	DISPLAY: block! important; Z-INDEX: 100; POSITION: absolute; TOP: 10px
}
DIV.topicon#infobox {
	RIGHT: 4.5em
}
DIV.topicon#pdf {
	RIGHT: 6.5em
}
DIV.topicon#pv {
	RIGHT: 8.5em
}
DIV.thumb DIV A IMG {
	BACKGROUND-COLOR: #ffffff
}
#top-navigation {
	RIGHT: 1.15em; POSITION: absolute; TOP: 3em
}
#bottom-navigation {
	CLEAR: both; FLOAT: right
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://en.wikibooks.org/w/index.php?title=-&action=raw&maxage=2678400&gen=css

A.new {
	COLOR: #cc2200
}
#quickbar A.new {
	COLOR: #cc2200
}

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/common/wikibits.js?urid=243z2_1254880607

// MediaWiki JavaScript support functions=0A=
=0A=
var clientPC =3D navigator.userAgent.toLowerCase(); // Get client info=0A=
var is_gecko =3D /gecko/.test( clientPC ) &&=0A=
	!/khtml|spoofer|netscape\/7\.0/.test(clientPC);=0A=
var webkit_match =3D clientPC.match(/applewebkit\/(\d+)/);=0A=
if (webkit_match) {=0A=
	var is_safari =3D clientPC.indexOf('applewebkit') !=3D -1 &&=0A=
		clientPC.indexOf('spoofer') =3D=3D -1;=0A=
	var is_safari_win =3D is_safari && clientPC.indexOf('windows') !=3D -1;=0A=
	var webkit_version =3D parseInt(webkit_match[1]);=0A=
}=0A=
// For accesskeys; note that FF3+ is included here!=0A=
var is_ff2 =3D /firefox\/[2-9]|minefield\/3/.test( clientPC );=0A=
var ff2_bugs =3D /firefox\/2/.test( clientPC );=0A=
// These aren't used here, but some custom scripts rely on them=0A=
var is_ff2_win =3D is_ff2 && clientPC.indexOf('windows') !=3D -1;=0A=
var is_ff2_x11 =3D is_ff2 && clientPC.indexOf('x11') !=3D -1;=0A=
if (clientPC.indexOf('opera') !=3D -1) {=0A=
	var is_opera =3D true;=0A=
	var is_opera_preseven =3D window.opera && !document.childNodes;=0A=
	var is_opera_seven =3D window.opera && document.childNodes;=0A=
	var is_opera_95 =3D /opera\/(9\.[5-9]|[1-9][0-9])/.test( clientPC );=0A=
	var opera6_bugs =3D is_opera_preseven;=0A=
	var opera7_bugs =3D is_opera_seven && !is_opera_95;=0A=
	var opera95_bugs =3D /opera\/(9\.5)/.test( clientPC );=0A=
}=0A=
=0A=
// Global external objects used by this script.=0A=
/*extern ta, stylepath, skin */=0A=
=0A=
// add any onload functions in this hook (please don't hard-code any =
events in the xhtml source)=0A=
var doneOnloadHook;=0A=
=0A=
if (!window.onloadFuncts) {=0A=
	var onloadFuncts =3D [];=0A=
}=0A=
=0A=
// code that is dependent on js2 functions should use js2AddOnloadHook=0A=
function addOnloadHook(hookFunct) {=0A=
	// Allows add-on scripts to add onload functions=0A=
	if(!doneOnloadHook) {=0A=
		onloadFuncts[onloadFuncts.length] =3D hookFunct;=0A=
	} else {=0A=
		hookFunct();  // bug in MSIE script loading=0A=
	}=0A=
}=0A=
=0A=
=0A=
function hookEvent(hookName, hookFunct) {=0A=
	addHandler(window, hookName, hookFunct);=0A=
}=0A=
=0A=
function importScript(page) {=0A=
	// TODO: might want to introduce a utility function to match =
wfUrlencode() in PHP=0A=
	var uri =3D wgScript + '?title=3D' +=0A=
		encodeURIComponent(page.replace(/ =
/g,'_')).replace(/%2F/ig,'/').replace(/%3A/ig,':') +=0A=
		'&action=3Draw&ctype=3Dtext/javascript';=0A=
	return importScriptURI(uri);=0A=
}=0A=
=0A=
var loadedScripts =3D {}; // included-scripts tracker=0A=
function importScriptURI(url) {=0A=
	if (loadedScripts[url]) {=0A=
		return null;=0A=
	}=0A=
	loadedScripts[url] =3D true;=0A=
	var s =3D document.createElement('script');=0A=
	s.setAttribute('src',url);=0A=
	s.setAttribute('type','text/javascript');=0A=
	document.getElementsByTagName('head')[0].appendChild(s);=0A=
	return s;=0A=
}=0A=
=0A=
function importStylesheet(page) {=0A=
	return importStylesheetURI(wgScript + =
'?action=3Draw&ctype=3Dtext/css&title=3D' + =
encodeURIComponent(page.replace(/ /g,'_')));=0A=
}=0A=
=0A=
function importStylesheetURI(url,media) {=0A=
	var l =3D document.createElement('link');=0A=
	l.type =3D 'text/css';=0A=
	l.rel =3D 'stylesheet';=0A=
	l.href =3D url;=0A=
	if(media) l.media =3D media=0A=
	document.getElementsByTagName('head')[0].appendChild(l);=0A=
	return l;=0A=
}=0A=
=0A=
function appendCSS(text) {=0A=
	var s =3D document.createElement('style');=0A=
	s.type =3D 'text/css';=0A=
	s.rel =3D 'stylesheet';=0A=
	if (s.styleSheet) s.styleSheet.cssText =3D text //IE=0A=
	else s.appendChild(document.createTextNode(text + '')) //Safari =
sometimes borks on null=0A=
	document.getElementsByTagName('head')[0].appendChild(s);=0A=
	return s;=0A=
}=0A=
=0A=
// special stylesheet links=0A=
if (typeof stylepath !=3D 'undefined' && typeof skin !=3D 'undefined') {=0A=
	// FIXME: This tries to load the stylesheets even for skins where they=0A=
	// don't exist, i.e., everything but Monobook.=0A=
	if (opera6_bugs) {=0A=
		importStylesheetURI(stylepath+'/'+skin+'/Opera6Fixes.css');=0A=
	} else if (opera7_bugs) {=0A=
		importStylesheetURI(stylepath+'/'+skin+'/Opera7Fixes.css');=0A=
	} else if (opera95_bugs) {=0A=
		importStylesheetURI(stylepath+'/'+skin+'/Opera9Fixes.css');=0A=
	} else if (ff2_bugs) {=0A=
		importStylesheetURI(stylepath+'/'+skin+'/FF2Fixes.css');=0A=
	}=0A=
}=0A=
=0A=
=0A=
if (wgBreakFrames) {=0A=
	// Un-trap us from framesets=0A=
	if (window.top !=3D window) {=0A=
		window.top.location =3D window.location;=0A=
	}=0A=
}=0A=
=0A=
function showTocToggle() {=0A=
	if (document.createTextNode) {=0A=
		// Uses DOM calls to avoid document.write + XHTML issues=0A=
=0A=
		var linkHolder =3D document.getElementById('toctitle');=0A=
		var existingLink =3D document.getElementById('togglelink');=0A=
		if (!linkHolder || existingLink) {=0A=
			// Don't add the toggle link twice=0A=
			return;=0A=
		}=0A=
=0A=
		var outerSpan =3D document.createElement('span');=0A=
		outerSpan.className =3D 'toctoggle';=0A=
=0A=
		var toggleLink =3D document.createElement('a');=0A=
		toggleLink.id =3D 'togglelink';=0A=
		toggleLink.className =3D 'internal';=0A=
		toggleLink.href =3D 'javascript:toggleToc()';=0A=
		toggleLink.appendChild(document.createTextNode(tocHideText));=0A=
=0A=
		outerSpan.appendChild(document.createTextNode('['));=0A=
		outerSpan.appendChild(toggleLink);=0A=
		outerSpan.appendChild(document.createTextNode(']'));=0A=
=0A=
		linkHolder.appendChild(document.createTextNode(' '));=0A=
		linkHolder.appendChild(outerSpan);=0A=
=0A=
		var cookiePos =3D document.cookie.indexOf("hidetoc=3D");=0A=
		if (cookiePos > -1 && document.cookie.charAt(cookiePos + 8) =3D=3D 1) {=0A=
			toggleToc();=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function changeText(el, newText) {=0A=
	// Safari work around=0A=
	if (el.innerText) {=0A=
		el.innerText =3D newText;=0A=
	} else if (el.firstChild && el.firstChild.nodeValue) {=0A=
		el.firstChild.nodeValue =3D newText;=0A=
	}=0A=
}=0A=
=0A=
function toggleToc() {=0A=
	var tocmain =3D document.getElementById('toc');=0A=
	var toc =3D =
document.getElementById('toc').getElementsByTagName('ul')[0];=0A=
	var toggleLink =3D document.getElementById('togglelink');=0A=
=0A=
	if (toc && toggleLink && toc.style.display =3D=3D 'none') {=0A=
		changeText(toggleLink, tocHideText);=0A=
		toc.style.display =3D 'block';=0A=
		document.cookie =3D "hidetoc=3D0";=0A=
		tocmain.className =3D 'toc';=0A=
	} else {=0A=
		changeText(toggleLink, tocShowText);=0A=
		toc.style.display =3D 'none';=0A=
		document.cookie =3D "hidetoc=3D1";=0A=
		tocmain.className =3D 'toc tochidden';=0A=
	}=0A=
}=0A=
=0A=
var mwEditButtons =3D [];=0A=
var mwCustomEditButtons =3D []; // eg to add in MediaWiki:Common.js=0A=
=0A=
function escapeQuotes(text) {=0A=
	var re =3D new RegExp("'","g");=0A=
	text =3D text.replace(re,"\\'");=0A=
	re =3D new RegExp("\\n","g");=0A=
	text =3D text.replace(re,"\\n");=0A=
	return escapeQuotesHTML(text);=0A=
}=0A=
=0A=
function escapeQuotesHTML(text) {=0A=
	var re =3D new RegExp('&',"g");=0A=
	text =3D text.replace(re,"&amp;");=0A=
	re =3D new RegExp('"',"g");=0A=
	text =3D text.replace(re,"&quot;");=0A=
	re =3D new RegExp('<',"g");=0A=
	text =3D text.replace(re,"&lt;");=0A=
	re =3D new RegExp('>',"g");=0A=
	text =3D text.replace(re,"&gt;");=0A=
	return text;=0A=
}=0A=
=0A=
=0A=
/**=0A=
 * Set the accesskey prefix based on browser detection.=0A=
 */=0A=
var tooltipAccessKeyPrefix =3D 'alt-';=0A=
if (is_opera) {=0A=
	tooltipAccessKeyPrefix =3D 'shift-esc-';=0A=
} else if (!is_safari_win && is_safari && webkit_version > 526) {=0A=
	tooltipAccessKeyPrefix =3D 'ctrl-alt-';=0A=
} else if (!is_safari_win && (is_safari=0A=
		|| clientPC.indexOf('mac') !=3D -1=0A=
		|| clientPC.indexOf('konqueror') !=3D -1 )) {=0A=
	tooltipAccessKeyPrefix =3D 'ctrl-';=0A=
} else if (is_ff2) {=0A=
	tooltipAccessKeyPrefix =3D 'alt-shift-';=0A=
}=0A=
var tooltipAccessKeyRegexp =3D /\[(ctrl-)?(alt-)?(shift-)?(esc-)?(.)\]$/;=0A=
=0A=
/**=0A=
 * Add the appropriate prefix to the accesskey shown in the tooltip.=0A=
 * If the nodeList parameter is given, only those nodes are updated;=0A=
 * otherwise, all the nodes that will probably have accesskeys by=0A=
 * default are updated.=0A=
 *=0A=
 * @param Array nodeList -- list of elements to update=0A=
 */=0A=
function updateTooltipAccessKeys( nodeList ) {=0A=
	if ( !nodeList ) {=0A=
		// Rather than scan all links on the whole page, we can just scan these=0A=
		// containers which contain the relevant links. This is really just an=0A=
		// optimization technique.=0A=
		var linkContainers =3D [=0A=
			"column-one", // Monobook and Modern=0A=
			"head", "panel", "p-logo" // Vector=0A=
		];=0A=
		for ( var i in linkContainers ) {=0A=
			var linkContainer =3D document.getElementById( linkContainers[i] );=0A=
			if ( linkContainer ) {=0A=
				updateTooltipAccessKeys( linkContainer.getElementsByTagName("a") );=0A=
			}=0A=
		}=0A=
		// these are rare enough that no such optimization is needed=0A=
		updateTooltipAccessKeys( document.getElementsByTagName("input") );=0A=
		updateTooltipAccessKeys( document.getElementsByTagName("label") );=0A=
		return;=0A=
	}=0A=
=0A=
	for ( var i =3D 0; i < nodeList.length; i++ ) {=0A=
		var element =3D nodeList[i];=0A=
		var tip =3D element.getAttribute("title");=0A=
		if ( tip && tooltipAccessKeyRegexp.exec(tip) ) {=0A=
			tip =3D tip.replace(tooltipAccessKeyRegexp,=0A=
					  "["+tooltipAccessKeyPrefix+"$5]");=0A=
			element.setAttribute("title", tip );=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/**=0A=
 * Add a link to one of the portlet menus on the page, including:=0A=
 *=0A=
 * p-cactions: Content actions (shown as tabs above the main content in =
Monobook)=0A=
 * p-personal: Personal tools (shown at the top right of the page in =
Monobook)=0A=
 * p-navigation: Navigation=0A=
 * p-tb: Toolbox=0A=
 *=0A=
 * This function exists for the convenience of custom JS authors.  All=0A=
 * but the first three parameters are optional, though providing at=0A=
 * least an id and a tooltip is recommended.=0A=
 *=0A=
 * By default the new link will be added to the end of the list.  To=0A=
 * add the link before a given existing item, pass the DOM node of=0A=
 * that item (easily obtained with document.getElementById()) as the=0A=
 * nextnode parameter; to add the link _after_ an existing item, pass=0A=
 * the node's nextSibling instead.=0A=
 *=0A=
 * @param String portlet -- id of the target portlet ("p-cactions", =
"p-personal", "p-navigation" or "p-tb")=0A=
 * @param String href -- link URL=0A=
 * @param String text -- link text (will be automatically lowercased by =
CSS for p-cactions in Monobook)=0A=
 * @param String id -- id of the new item, should be unique and =
preferably have the appropriate prefix ("ca-", "pt-", "n-" or "t-")=0A=
 * @param String tooltip -- text to show when hovering over the link, =
without accesskey suffix=0A=
 * @param String accesskey -- accesskey to activate this link (one =
character, try to avoid conflicts)=0A=
 * @param Node nextnode -- the DOM node before which the new item should =
be added, should be another item in the same list=0A=
 *=0A=
 * @return Node -- the DOM node of the new item (an LI element) or null=0A=
 */=0A=
function addPortletLink(portlet, href, text, id, tooltip, accesskey, =
nextnode) {=0A=
	var root =3D document.getElementById(portlet);=0A=
	if ( !root ) return null;=0A=
	var node =3D root.getElementsByTagName( "ul" )[0];=0A=
	if ( !node ) return null;=0A=
=0A=
	// unhide portlet if it was hidden before=0A=
	root.className =3D root.className.replace( /(^| )emptyPortlet( |$)/, =
"$2" );=0A=
=0A=
	var span =3D document.createElement( "span" );=0A=
	span.appendChild( document.createTextNode( text ) );=0A=
=0A=
	var link =3D document.createElement( "a" );=0A=
	link.appendChild( span );=0A=
	link.href =3D href;=0A=
=0A=
	var item =3D document.createElement( "li" );=0A=
	item.appendChild( link );=0A=
	if ( id ) item.id =3D id;=0A=
=0A=
	if ( accesskey ) {=0A=
		link.setAttribute( "accesskey", accesskey );=0A=
		tooltip +=3D " ["+accesskey+"]";=0A=
	}=0A=
	if ( tooltip ) {=0A=
		link.setAttribute( "title", tooltip );=0A=
	}=0A=
	if ( accesskey && tooltip ) {=0A=
		updateTooltipAccessKeys( new Array( link ) );=0A=
	}=0A=
=0A=
	if ( nextnode && nextnode.parentNode =3D=3D node )=0A=
		node.insertBefore( item, nextnode );=0A=
	else=0A=
		node.appendChild( item );  // IE compatibility (?)=0A=
=0A=
	return item;=0A=
}=0A=
=0A=
function getInnerText(el) {=0A=
	if (typeof el =3D=3D "string") return el;=0A=
	if (typeof el =3D=3D "undefined") { return el };=0A=
	if (el.textContent) return el.textContent; // not needed but it is =
faster=0A=
	if (el.innerText) return el.innerText;     // IE doesn't have =
textContent=0A=
	var str =3D "";=0A=
=0A=
	var cs =3D el.childNodes;=0A=
	var l =3D cs.length;=0A=
	for (var i =3D 0; i < l; i++) {=0A=
		switch (cs[i].nodeType) {=0A=
			case 1: //ELEMENT_NODE=0A=
				str +=3D ts_getInnerText(cs[i]);=0A=
				break;=0A=
			case 3:	//TEXT_NODE=0A=
				str +=3D cs[i].nodeValue;=0A=
				break;=0A=
		}=0A=
	}=0A=
	return str;=0A=
}=0A=
=0A=
=0A=
/**=0A=
 * Set up accesskeys/tooltips from the deprecated ta array.  If doId=0A=
 * is specified, only set up for that id.  Note that this function is=0A=
 * deprecated and will not be supported indefinitely -- use=0A=
 * updateTooltipAccessKey() instead.=0A=
 *=0A=
 * @param mixed doId string or null=0A=
 */=0A=
function akeytt( doId ) {=0A=
	// A lot of user scripts (and some of the code below) break if=0A=
	// ta isn't defined, so we make sure it is.  Explictly using=0A=
	// window.ta avoids a "ta is not defined" error.=0A=
	if (!window.ta) window.ta =3D new Array;=0A=
=0A=
	// Make a local, possibly restricted, copy to avoid clobbering=0A=
	// the original.=0A=
	var ta;=0A=
	if ( doId ) {=0A=
		ta =3D [doId];=0A=
	} else {=0A=
		ta =3D window.ta;=0A=
	}=0A=
=0A=
	// Now deal with evil deprecated ta=0A=
	var watchCheckboxExists =3D document.getElementById( 'wpWatchthis' ) ? =
true : false;=0A=
	for (var id in ta) {=0A=
		var n =3D document.getElementById(id);=0A=
		if (n) {=0A=
			var a =3D null;=0A=
			var ak =3D '';=0A=
			// Are we putting accesskey in it=0A=
			if (ta[id][0].length > 0) {=0A=
				// Is this object a object? If not assume it's the next child.=0A=
=0A=
				if (n.nodeName.toLowerCase() =3D=3D "a") {=0A=
					a =3D n;=0A=
				} else {=0A=
					a =3D n.childNodes[0];=0A=
				}=0A=
			 	// Don't add an accesskey for the watch tab if the watch=0A=
			 	// checkbox is also available.=0A=
				if (a && ((id !=3D 'ca-watch' && id !=3D 'ca-unwatch') || =
!watchCheckboxExists)) {=0A=
					a.accessKey =3D ta[id][0];=0A=
					ak =3D ' ['+tooltipAccessKeyPrefix+ta[id][0]+']';=0A=
				}=0A=
			} else {=0A=
				// We don't care what type the object is when assigning tooltip=0A=
				a =3D n;=0A=
				ak =3D '';=0A=
			}=0A=
=0A=
			if (a) {=0A=
				a.title =3D ta[id][1]+ak;=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
var checkboxes;=0A=
var lastCheckbox;=0A=
=0A=
function setupCheckboxShiftClick() {=0A=
	checkboxes =3D [];=0A=
	lastCheckbox =3D null;=0A=
	var inputs =3D document.getElementsByTagName('input');=0A=
	addCheckboxClickHandlers(inputs);=0A=
}=0A=
=0A=
function addCheckboxClickHandlers(inputs, start) {=0A=
	if ( !start) start =3D 0;=0A=
=0A=
	var finish =3D start + 250;=0A=
	if ( finish > inputs.length )=0A=
		finish =3D inputs.length;=0A=
=0A=
	for ( var i =3D start; i < finish; i++ ) {=0A=
		var cb =3D inputs[i];=0A=
		if ( !cb.type || cb.type.toLowerCase() !=3D 'checkbox' )=0A=
			continue;=0A=
		var end =3D checkboxes.length;=0A=
		checkboxes[end] =3D cb;=0A=
		cb.index =3D end;=0A=
		cb.onclick =3D checkboxClickHandler;=0A=
	}=0A=
=0A=
	if ( finish < inputs.length ) {=0A=
		setTimeout( function () {=0A=
			addCheckboxClickHandlers(inputs, finish);=0A=
		}, 200 );=0A=
	}=0A=
}=0A=
=0A=
function checkboxClickHandler(e) {=0A=
	if (typeof e =3D=3D 'undefined') {=0A=
		e =3D window.event;=0A=
	}=0A=
	if ( !e.shiftKey || lastCheckbox =3D=3D=3D null ) {=0A=
		lastCheckbox =3D this.index;=0A=
		return true;=0A=
	}=0A=
	var endState =3D this.checked;=0A=
	var start, finish;=0A=
	if ( this.index < lastCheckbox ) {=0A=
		start =3D this.index + 1;=0A=
		finish =3D lastCheckbox;=0A=
	} else {=0A=
		start =3D lastCheckbox;=0A=
		finish =3D this.index - 1;=0A=
	}=0A=
	for (var i =3D start; i <=3D finish; ++i ) {=0A=
		checkboxes[i].checked =3D endState;=0A=
		if( i > start && typeof checkboxes[i].onchange =3D=3D 'function' )=0A=
			checkboxes[i].onchange(); // fire triggers=0A=
	}=0A=
	lastCheckbox =3D this.index;=0A=
	return true;=0A=
}=0A=
=0A=
function toggle_element_activation(ida,idb) {=0A=
	if ( !document.getElementById ) {=0A=
		return;=0A=
	}=0A=
	// Show the appropriate upload size limit message=0A=
	if( idb =3D=3D 'wpUploadFileURL' ) {=0A=
		var e =3D document.getElementById( 'mw-upload-maxfilesize' );=0A=
		if( e ) e.style.display =3D "none";=0A=
=0A=
		var e =3D document.getElementById( 'mw-upload-maxfilesize-url' );=0A=
		if( e ) e.style.display =3D "block";=0A=
	}=0A=
	if( idb =3D=3D 'wpUploadFile' ) {=0A=
		var e =3D document.getElementById( 'mw-upload-maxfilesize-url' );=0A=
		if( e ) e.style.display =3D  "none";=0A=
=0A=
		var e =3D document.getElementById( 'mw-upload-maxfilesize' );=0A=
		if( e ) e.style.display =3D  "block";=0A=
	}=0A=
	document.getElementById( ida ).disabled =3D true;=0A=
	document.getElementById( idb ).disabled =3D false;=0A=
}=0A=
=0A=
function toggle_element_check(ida,idb) {=0A=
	if (!document.getElementById) {=0A=
		return;=0A=
	}=0A=
	document.getElementById(ida).checked=3Dtrue;=0A=
	document.getElementById(idb).checked=3Dfalse;=0A=
}=0A=
=0A=
/*=0A=
	Written by Jonathan Snook, http://www.snook.ca/jonathan=0A=
	Add-ons by Robert Nyman, http://www.robertnyman.com=0A=
	Author says "The credit comment is all it takes, no license. Go crazy =
with it!:-)"=0A=
	From =
http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname=
/=0A=
*/=0A=
function getElementsByClassName(oElm, strTagName, oClassNames){=0A=
	var arrReturnElements =3D new Array();=0A=
	if ( typeof( oElm.getElementsByClassName ) =3D=3D "function" ) {=0A=
		/* Use a native implementation where possible FF3, Saf3.2, Opera 9.5 */=0A=
		var arrNativeReturn =3D oElm.getElementsByClassName( oClassNames );=0A=
		if ( strTagName =3D=3D "*" )=0A=
			return arrNativeReturn;=0A=
		for ( var h=3D0; h < arrNativeReturn.length; h++ ) {=0A=
			if( arrNativeReturn[h].tagName.toLowerCase() =3D=3D =
strTagName.toLowerCase() )=0A=
				arrReturnElements[arrReturnElements.length] =3D arrNativeReturn[h];=0A=
		}=0A=
		return arrReturnElements;=0A=
	}=0A=
	var arrElements =3D (strTagName =3D=3D "*" && oElm.all)? oElm.all : =
oElm.getElementsByTagName(strTagName);=0A=
	var arrRegExpClassNames =3D new Array();=0A=
	if(typeof oClassNames =3D=3D "object"){=0A=
		for(var i=3D0; i<oClassNames.length; i++){=0A=
			arrRegExpClassNames[arrRegExpClassNames.length] =3D=0A=
				new RegExp("(^|\\s)" + oClassNames[i].replace(/\-/g, "\\-") + =
"(\\s|$)");=0A=
		}=0A=
	}=0A=
	else{=0A=
		arrRegExpClassNames[arrRegExpClassNames.length] =3D=0A=
			new RegExp("(^|\\s)" + oClassNames.replace(/\-/g, "\\-") + "(\\s|$)");=0A=
	}=0A=
	var oElement;=0A=
	var bMatchesAll;=0A=
	for(var j=3D0; j<arrElements.length; j++){=0A=
		oElement =3D arrElements[j];=0A=
		bMatchesAll =3D true;=0A=
		for(var k=3D0; k<arrRegExpClassNames.length; k++){=0A=
			if(!arrRegExpClassNames[k].test(oElement.className)){=0A=
				bMatchesAll =3D false;=0A=
				break;=0A=
			}=0A=
		}=0A=
		if(bMatchesAll){=0A=
			arrReturnElements[arrReturnElements.length] =3D oElement;=0A=
		}=0A=
	}=0A=
	return (arrReturnElements)=0A=
}=0A=
=0A=
function redirectToFragment(fragment) {=0A=
	var match =3D navigator.userAgent.match(/AppleWebKit\/(\d+)/);=0A=
	if (match) {=0A=
		var webKitVersion =3D parseInt(match[1]);=0A=
		if (webKitVersion < 420) {=0A=
			// Released Safari w/ WebKit 418.9.1 messes up horribly=0A=
			// Nightlies of 420+ are ok=0A=
			return;=0A=
		}=0A=
	}=0A=
	if (is_gecko) {=0A=
		// Mozilla needs to wait until after load, otherwise the window =
doesn't scroll=0A=
		addOnloadHook(function () {=0A=
			if (window.location.hash =3D=3D "")=0A=
				window.location.hash =3D fragment;=0A=
		});=0A=
	} else {=0A=
		if (window.location.hash =3D=3D "")=0A=
			window.location.hash =3D fragment;=0A=
	}=0A=
}=0A=
=0A=
/*=0A=
 * Table sorting script based on one (c) 1997-2006 Stuart Langridge and =
Joost=0A=
 * de Valk:=0A=
 * http://www.joostdevalk.nl/code/sortable-table/=0A=
 * http://www.kryogenix.org/code/browser/sorttable/=0A=
 *=0A=
 * @todo don't break on colspans/rowspans (bug 8028)=0A=
 * @todo language-specific digit grouping/decimals (bug 8063)=0A=
 * @todo support all accepted date formats (bug 8226)=0A=
 */=0A=
=0A=
var ts_image_path =3D stylepath+"/common/images/";=0A=
var ts_image_up =3D "sort_up.gif";=0A=
var ts_image_down =3D "sort_down.gif";=0A=
var ts_image_none =3D "sort_none.gif";=0A=
var ts_europeandate =3D wgContentLanguage !=3D "en"; // The =
non-American-inclined can change to "true"=0A=
var ts_alternate_row_colors =3D false;=0A=
var ts_number_transform_table =3D null;=0A=
var ts_number_regex =3D null;=0A=
=0A=
function sortables_init() {=0A=
	var idnum =3D 0;=0A=
	// Find all tables with class sortable and make them sortable=0A=
	var tables =3D getElementsByClassName(document, "table", "sortable");=0A=
	for (var ti =3D 0; ti < tables.length ; ti++) {=0A=
		if (!tables[ti].id) {=0A=
			tables[ti].setAttribute('id','sortable_table_id_'+idnum);=0A=
			++idnum;=0A=
		}=0A=
		ts_makeSortable(tables[ti]);=0A=
	}=0A=
}=0A=
=0A=
function ts_makeSortable(table) {=0A=
	var firstRow;=0A=
	if (table.rows && table.rows.length > 0) {=0A=
		if (table.tHead && table.tHead.rows.length > 0) {=0A=
			firstRow =3D table.tHead.rows[table.tHead.rows.length-1];=0A=
		} else {=0A=
			firstRow =3D table.rows[0];=0A=
		}=0A=
	}=0A=
	if (!firstRow) return;=0A=
=0A=
	// We have a first row: assume it's the header, and make its contents =
clickable links=0A=
	for (var i =3D 0; i < firstRow.cells.length; i++) {=0A=
		var cell =3D firstRow.cells[i];=0A=
		if ((" "+cell.className+" ").indexOf(" unsortable ") =3D=3D -1) {=0A=
			cell.innerHTML +=3D '&nbsp;&nbsp;'=0A=
				+ '<a href=3D"#" class=3D"sortheader" '=0A=
				+ 'onclick=3D"ts_resortTable(this);return false;">'=0A=
				+ '<span class=3D"sortarrow">'=0A=
				+ '<img src=3D"'=0A=
				+ ts_image_path=0A=
				+ ts_image_none=0A=
				+ '" alt=3D"&darr;"/></span></a>';=0A=
		}=0A=
	}=0A=
	if (ts_alternate_row_colors) {=0A=
		ts_alternate(table);=0A=
	}=0A=
}=0A=
=0A=
function ts_getInnerText(el) {=0A=
	return getInnerText( el );=0A=
}=0A=
=0A=
function ts_resortTable(lnk) {=0A=
	// get the span=0A=
	var span =3D lnk.getElementsByTagName('span')[0];=0A=
=0A=
	var td =3D lnk.parentNode;=0A=
	var tr =3D td.parentNode;=0A=
	var column =3D td.cellIndex;=0A=
=0A=
	var table =3D tr.parentNode;=0A=
	while (table && !(table.tagName && table.tagName.toLowerCase() =3D=3D =
'table'))=0A=
		table =3D table.parentNode;=0A=
	if (!table) return;=0A=
=0A=
	if (table.rows.length <=3D 1) return;=0A=
=0A=
	// Generate the number transform table if it's not done already=0A=
	if (ts_number_transform_table =3D=3D null) {=0A=
		ts_initTransformTable();=0A=
	}=0A=
=0A=
	// Work out a type for the column=0A=
	// Skip the first row if that's where the headings are=0A=
	var rowStart =3D (table.tHead && table.tHead.rows.length > 0 ? 0 : 1);=0A=
=0A=
	var itm =3D "";=0A=
	for (var i =3D rowStart; i < table.rows.length; i++) {=0A=
		if (table.rows[i].cells.length > column) {=0A=
			itm =3D ts_getInnerText(table.rows[i].cells[column]);=0A=
			itm =3D itm.replace(/^[\s\xa0]+/, "").replace(/[\s\xa0]+$/, "");=0A=
			if (itm !=3D "") break;=0A=
		}=0A=
	}=0A=
=0A=
	// TODO: bug 8226, localised date formats=0A=
	var sortfn =3D ts_sort_generic;=0A=
	var preprocessor =3D ts_toLowerCase;=0A=
	if (/^\d\d[\/. -][a-zA-Z]{3}[\/. -]\d\d\d\d$/.test(itm)) {=0A=
		preprocessor =3D ts_dateToSortKey;=0A=
	} else if (/^\d\d[\/.-]\d\d[\/.-]\d\d\d\d$/.test(itm)) {=0A=
		preprocessor =3D ts_dateToSortKey;=0A=
	} else if (/^\d\d[\/.-]\d\d[\/.-]\d\d$/.test(itm)) {=0A=
		preprocessor =3D ts_dateToSortKey;=0A=
	// pound dollar euro yen currency cents=0A=
	} else if (/(^[\u00a3$\u20ac\u00a4\u00a5]|\u00a2$)/.test(itm)) {=0A=
		preprocessor =3D ts_currencyToSortKey;=0A=
	} else if (ts_number_regex.test(itm)) {=0A=
		preprocessor =3D ts_parseFloat;=0A=
	}=0A=
=0A=
	var reverse =3D (span.getAttribute("sortdir") =3D=3D 'down');=0A=
=0A=
	var newRows =3D new Array();=0A=
	var staticRows =3D new Array();=0A=
	for (var j =3D rowStart; j < table.rows.length; j++) {=0A=
		var row =3D table.rows[j];=0A=
		if((" "+row.className+" ").indexOf(" unsortable ") < 0) {=0A=
			var keyText =3D ts_getInnerText(row.cells[column]);=0A=
			if(keyText =3D=3D undefined) {=0A=
				keyText =3D ""; =0A=
			}=0A=
			var oldIndex =3D (reverse ? -j : j);=0A=
			var preprocessed =3D preprocessor( keyText.replace(/^[\s\xa0]+/, =
"").replace(/[\s\xa0]+$/, "") );=0A=
=0A=
			newRows[newRows.length] =3D new Array(row, preprocessed, oldIndex);=0A=
		} else staticRows[staticRows.length] =3D new Array(row, false, =
j-rowStart);=0A=
	}=0A=
=0A=
	newRows.sort(sortfn);=0A=
=0A=
	var arrowHTML;=0A=
	if (reverse) {=0A=
		arrowHTML =3D '<img src=3D"'+ ts_image_path + ts_image_down + '" =
alt=3D"&darr;"/>';=0A=
		newRows.reverse();=0A=
		span.setAttribute('sortdir','up');=0A=
	} else {=0A=
		arrowHTML =3D '<img src=3D"'+ ts_image_path + ts_image_up + '" =
alt=3D"&uarr;"/>';=0A=
		span.setAttribute('sortdir','down');=0A=
	}=0A=
=0A=
	for (var i =3D 0; i < staticRows.length; i++) {=0A=
		var row =3D staticRows[i];=0A=
		newRows.splice(row[2], 0, row);=0A=
	}=0A=
=0A=
	// We appendChild rows that already exist to the tbody, so it moves =
them rather than creating new ones=0A=
	// don't do sortbottom rows=0A=
	for (var i =3D 0; i < newRows.length; i++) {=0A=
		if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") =3D=3D =
-1)=0A=
			table.tBodies[0].appendChild(newRows[i][0]);=0A=
	}=0A=
	// do sortbottom rows only=0A=
	for (var i =3D 0; i < newRows.length; i++) {=0A=
		if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") !=3D -1)=0A=
			table.tBodies[0].appendChild(newRows[i][0]);=0A=
	}=0A=
=0A=
	// Delete any other arrows there may be showing=0A=
	var spans =3D getElementsByClassName(tr, "span", "sortarrow");=0A=
	for (var i =3D 0; i < spans.length; i++) {=0A=
		spans[i].innerHTML =3D '<img src=3D"'+ ts_image_path + ts_image_none + =
'" alt=3D"&darr;"/>';=0A=
	}=0A=
	span.innerHTML =3D arrowHTML;=0A=
=0A=
	if (ts_alternate_row_colors) {=0A=
		ts_alternate(table);=0A=
	}=0A=
}=0A=
=0A=
function ts_initTransformTable() {=0A=
	if ( typeof wgSeparatorTransformTable =3D=3D "undefined"=0A=
			|| ( wgSeparatorTransformTable[0] =3D=3D '' && =
wgDigitTransformTable[2] =3D=3D '' ) )=0A=
	{=0A=
		digitClass =3D "[0-9,.]";=0A=
		ts_number_transform_table =3D false;=0A=
	} else {=0A=
		ts_number_transform_table =3D {};=0A=
		// Unpack the transform table=0A=
		// Separators=0A=
		ascii =3D wgSeparatorTransformTable[0].split("\t");=0A=
		localised =3D wgSeparatorTransformTable[1].split("\t");=0A=
		for ( var i =3D 0; i < ascii.length; i++ ) {=0A=
			ts_number_transform_table[localised[i]] =3D ascii[i];=0A=
		}=0A=
		// Digits=0A=
		ascii =3D wgDigitTransformTable[0].split("\t");=0A=
		localised =3D wgDigitTransformTable[1].split("\t");=0A=
		for ( var i =3D 0; i < ascii.length; i++ ) {=0A=
			ts_number_transform_table[localised[i]] =3D ascii[i];=0A=
		}=0A=
=0A=
		// Construct regex for number identification=0A=
		digits =3D ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ',', =
'\\.'];=0A=
		maxDigitLength =3D 1;=0A=
		for ( var digit in ts_number_transform_table ) {=0A=
			// Escape regex metacharacters=0A=
			digits.push(=0A=
				digit.replace( /[\\\\$\*\+\?\.\(\)\|\{\}\[\]\-]/,=0A=
					function( s ) { return '\\' + s; } )=0A=
			);=0A=
			if (digit.length > maxDigitLength) {=0A=
				maxDigitLength =3D digit.length;=0A=
			}=0A=
		}=0A=
		if ( maxDigitLength > 1 ) {=0A=
			digitClass =3D '[' + digits.join( '', digits ) + ']';=0A=
		} else {=0A=
			digitClass =3D '(' + digits.join( '|', digits ) + ')';=0A=
		}=0A=
	}=0A=
=0A=
	// We allow a trailing percent sign, which we just strip.  This works =
fine=0A=
	// if percents and regular numbers aren't being mixed.=0A=
	ts_number_regex =3D new RegExp(=0A=
		"^(" +=0A=
			"[+-]?[0-9][0-9,]*(\\.[0-9,]*)?(E[+-]?[0-9][0-9,]*)?" + // =
Fortran-style scientific=0A=
			"|" +=0A=
			"[+-]?" + digitClass + "+%?" + // Generic localised=0A=
		")$", "i"=0A=
	);=0A=
}=0A=
=0A=
function ts_toLowerCase( s ) {=0A=
	return s.toLowerCase();=0A=
}=0A=
=0A=
function ts_dateToSortKey(date) {=0A=
	// y2k notes: two digit years less than 50 are treated as 20XX, greater =
than 50 are treated as 19XX=0A=
	if (date.length =3D=3D 11) {=0A=
		switch (date.substr(3,3).toLowerCase()) {=0A=
			case "jan": var month =3D "01"; break;=0A=
			case "feb": var month =3D "02"; break;=0A=
			case "mar": var month =3D "03"; break;=0A=
			case "apr": var month =3D "04"; break;=0A=
			case "may": var month =3D "05"; break;=0A=
			case "jun": var month =3D "06"; break;=0A=
			case "jul": var month =3D "07"; break;=0A=
			case "aug": var month =3D "08"; break;=0A=
			case "sep": var month =3D "09"; break;=0A=
			case "oct": var month =3D "10"; break;=0A=
			case "nov": var month =3D "11"; break;=0A=
			case "dec": var month =3D "12"; break;=0A=
			// default: var month =3D "00";=0A=
		}=0A=
		return date.substr(7,4)+month+date.substr(0,2);=0A=
	} else if (date.length =3D=3D 10) {=0A=
		if (ts_europeandate =3D=3D false) {=0A=
			return date.substr(6,4)+date.substr(0,2)+date.substr(3,2);=0A=
		} else {=0A=
			return date.substr(6,4)+date.substr(3,2)+date.substr(0,2);=0A=
		}=0A=
	} else if (date.length =3D=3D 8) {=0A=
		yr =3D date.substr(6,2);=0A=
		if (parseInt(yr) < 50) {=0A=
			yr =3D '20'+yr;=0A=
		} else {=0A=
			yr =3D '19'+yr;=0A=
		}=0A=
		if (ts_europeandate =3D=3D true) {=0A=
			return yr+date.substr(3,2)+date.substr(0,2);=0A=
		} else {=0A=
			return yr+date.substr(0,2)+date.substr(3,2);=0A=
		}=0A=
	}=0A=
	return "00000000";=0A=
}=0A=
=0A=
function ts_parseFloat( s ) {=0A=
	if ( !s ) {=0A=
		return 0;=0A=
	}=0A=
	if (ts_number_transform_table !=3D false) {=0A=
		var newNum =3D '', c;=0A=
=0A=
		for ( var p =3D 0; p < s.length; p++ ) {=0A=
			c =3D s.charAt( p );=0A=
			if (c in ts_number_transform_table) {=0A=
				newNum +=3D ts_number_transform_table[c];=0A=
			} else {=0A=
				newNum +=3D c;=0A=
			}=0A=
		}=0A=
		s =3D newNum;=0A=
	}=0A=
=0A=
	num =3D parseFloat(s.replace(/,/g, ""));=0A=
	return (isNaN(num) ? 0 : num);=0A=
}=0A=
=0A=
function ts_currencyToSortKey( s ) {=0A=
	return ts_parseFloat(s.replace(/[^0-9.,]/g,''));=0A=
}=0A=
=0A=
function ts_sort_generic(a, b) {=0A=
	return a[1] < b[1] ? -1 : a[1] > b[1] ? 1 : a[2] - b[2];=0A=
}=0A=
=0A=
function ts_alternate(table) {=0A=
	// Take object table and get all it's tbodies.=0A=
	var tableBodies =3D table.getElementsByTagName("tbody");=0A=
	// Loop through these tbodies=0A=
	for (var i =3D 0; i < tableBodies.length; i++) {=0A=
		// Take the tbody, and get all it's rows=0A=
		var tableRows =3D tableBodies[i].getElementsByTagName("tr");=0A=
		// Loop through these rows=0A=
		// Start at 1 because we want to leave the heading row untouched=0A=
		for (var j =3D 0; j < tableRows.length; j++) {=0A=
			// Check if j is even, and apply classes for both possible results=0A=
			var oldClasses =3D tableRows[j].className.split(" ");=0A=
			var newClassName =3D "";=0A=
			for (var k =3D 0; k < oldClasses.length; k++) {=0A=
				if (oldClasses[k] !=3D "" && oldClasses[k] !=3D "even" && =
oldClasses[k] !=3D "odd")=0A=
					newClassName +=3D oldClasses[k] + " ";=0A=
			}=0A=
			tableRows[j].className =3D newClassName + (j % 2 =3D=3D 0 ? "even" : =
"odd");=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/*=0A=
 * End of table sorting code=0A=
 */=0A=
=0A=
=0A=
/**=0A=
 * Add a cute little box at the top of the screen to inform the user of=0A=
 * something, replacing any preexisting message.=0A=
 *=0A=
 * @param String -or- Dom Object message HTML to be put inside the right =
div=0A=
 * @param String className   Used in adding a class; should be different =
for each=0A=
 *   call to allow CSS/JS to hide different boxes.  null =3D no class =
used.=0A=
 * @return Boolean       True on success, false on failure=0A=
 */=0A=
function jsMsg( message, className ) {=0A=
	if ( !document.getElementById ) {=0A=
		return false;=0A=
	}=0A=
	// We special-case skin structures provided by the software.  Skins that=0A=
	// choose to abandon or significantly modify our formatting can just =
define=0A=
	// an mw-js-message div to start with.=0A=
	var messageDiv =3D document.getElementById( 'mw-js-message' );=0A=
	if ( !messageDiv ) {=0A=
		messageDiv =3D document.createElement( 'div' );=0A=
		if ( document.getElementById( 'column-content' )=0A=
		&& document.getElementById( 'content' ) ) {=0A=
			// MonoBook, presumably=0A=
			document.getElementById( 'content' ).insertBefore(=0A=
				messageDiv,=0A=
				document.getElementById( 'content' ).firstChild=0A=
			);=0A=
		} else if ( document.getElementById('content')=0A=
		&& document.getElementById( 'article' ) ) {=0A=
			// Non-Monobook but still recognizable (old-style)=0A=
			document.getElementById( 'article').insertBefore(=0A=
				messageDiv,=0A=
				document.getElementById( 'article' ).firstChild=0A=
			);=0A=
		} else {=0A=
			return false;=0A=
		}=0A=
	}=0A=
=0A=
	messageDiv.setAttribute( 'id', 'mw-js-message' );=0A=
	messageDiv.style.display =3D 'block';=0A=
	if( className ) {=0A=
		messageDiv.setAttribute( 'class', 'mw-js-message-'+className );=0A=
	}=0A=
=0A=
	if (typeof message =3D=3D=3D 'object') {=0A=
		while (messageDiv.hasChildNodes()) // Remove old content=0A=
			messageDiv.removeChild(messageDiv.firstChild);=0A=
		messageDiv.appendChild (message); // Append new content=0A=
	}=0A=
	else {=0A=
		messageDiv.innerHTML =3D message;=0A=
	}=0A=
	return true;=0A=
}=0A=
=0A=
/**=0A=
 * Inject a cute little progress spinner after the specified element=0A=
 *=0A=
 * @param element Element to inject after=0A=
 * @param id Identifier string (for use with removeSpinner(), below)=0A=
 */=0A=
function injectSpinner( element, id ) {=0A=
	var spinner =3D document.createElement( "img" );=0A=
	spinner.id =3D "mw-spinner-" + id;=0A=
	spinner.src =3D stylepath + "/common/images/spinner.gif";=0A=
	spinner.alt =3D spinner.title =3D "...";=0A=
	if( element.nextSibling ) {=0A=
		element.parentNode.insertBefore( spinner, element.nextSibling );=0A=
	} else {=0A=
		element.parentNode.appendChild( spinner );=0A=
	}=0A=
}=0A=
=0A=
/**=0A=
 * Remove a progress spinner added with injectSpinner()=0A=
 *=0A=
 * @param id Identifier string=0A=
 */=0A=
function removeSpinner( id ) {=0A=
	var spinner =3D document.getElementById( "mw-spinner-" + id );=0A=
	if( spinner ) {=0A=
		spinner.parentNode.removeChild( spinner );=0A=
	}=0A=
}=0A=
=0A=
function runOnloadHook() {=0A=
	// don't run anything below this for non-dom browsers=0A=
	if (doneOnloadHook || !(document.getElementById && =
document.getElementsByTagName)) {=0A=
		return;=0A=
	}=0A=
=0A=
	// set this before running any hooks, since any errors below=0A=
	// might cause the function to terminate prematurely=0A=
	doneOnloadHook =3D true;=0A=
=0A=
	updateTooltipAccessKeys( null );=0A=
	akeytt( null );=0A=
	setupCheckboxShiftClick();=0A=
	sortables_init();=0A=
=0A=
	// Run any added-on functions=0A=
	for (var i =3D 0; i < onloadFuncts.length; i++) {=0A=
		onloadFuncts[i]();=0A=
	}=0A=
}=0A=
=0A=
/**=0A=
 * Add an event handler to an element=0A=
 *=0A=
 * @param Element element Element to add handler to=0A=
 * @param String attach Event to attach to=0A=
 * @param callable handler Event handler callback=0A=
 */=0A=
function addHandler( element, attach, handler ) {=0A=
	if( window.addEventListener ) {=0A=
		element.addEventListener( attach, handler, false );=0A=
	} else if( window.attachEvent ) {=0A=
		element.attachEvent( 'on' + attach, handler );=0A=
	}=0A=
}=0A=
=0A=
/**=0A=
 * Add a click event handler to an element=0A=
 *=0A=
 * @param Element element Element to add handler to=0A=
 * @param callable handler Event handler callback=0A=
 */=0A=
function addClickHandler( element, handler ) {=0A=
	addHandler( element, 'click', handler );=0A=
}=0A=
=0A=
/**=0A=
 * Removes an event handler from an element=0A=
 *=0A=
 * @param Element element Element to remove handler from=0A=
 * @param String remove Event to remove=0A=
 * @param callable handler Event handler callback to remove=0A=
 */=0A=
function removeHandler( element, remove, handler ) {=0A=
	if( window.removeEventListener ) {=0A=
		element.removeEventListener( remove, handler, false );=0A=
	} else if( window.detachEvent ) {=0A=
		element.detachEvent( 'on' + remove, handler );=0A=
	}=0A=
}=0A=
//note: all skins should call runOnloadHook() at the end of html output,=0A=
//      so the below should be redundant. It's there just in case.=0A=
hookEvent("load", runOnloadHook);=0A=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/common/ajax.js?urid=243z2

// remote scripting library=0A=
// (c) copyright 2005 modernmethod, inc=0A=
var sajax_debug_mode =3D false;=0A=
var sajax_request_type =3D "GET";=0A=
=0A=
/**=0A=
* if sajax_debug_mode is true, this function outputs given the message =
into =0A=
* the element with id =3D sajax_debug; if no such element exists in the =
document, =0A=
* it is injected.=0A=
*/=0A=
function sajax_debug(text) {=0A=
	if (!sajax_debug_mode) return false;=0A=
=0A=
	var e=3D document.getElementById('sajax_debug');=0A=
=0A=
	if (!e) {=0A=
		e=3D document.createElement("p");=0A=
		e.className=3D 'sajax_debug';=0A=
		e.id=3D 'sajax_debug';=0A=
=0A=
		var b=3D document.getElementsByTagName("body")[0];=0A=
=0A=
		if (b.firstChild) b.insertBefore(e, b.firstChild);=0A=
		else b.appendChild(e);=0A=
	}=0A=
=0A=
	var m=3D document.createElement("div");=0A=
	m.appendChild( document.createTextNode( text ) );=0A=
=0A=
	e.appendChild( m );=0A=
=0A=
	return true;=0A=
}=0A=
=0A=
/**=0A=
* compatibility wrapper for creating a new XMLHttpRequest object.=0A=
*/=0A=
function sajax_init_object() {=0A=
	sajax_debug("sajax_init_object() called..")=0A=
	var A;=0A=
	try {=0A=
		// Try the new style before ActiveX so we don't=0A=
		// unnecessarily trigger warnings in IE 7 when=0A=
		// set to prompt about ActiveX usage=0A=
		A =3D new XMLHttpRequest();=0A=
	} catch (e) {=0A=
		try {=0A=
			A=3Dnew ActiveXObject("Msxml2.XMLHTTP");=0A=
		} catch (e) {=0A=
			try {=0A=
				A=3Dnew ActiveXObject("Microsoft.XMLHTTP");=0A=
			} catch (oc) {=0A=
				A=3Dnull;=0A=
			}=0A=
		}=0A=
	}=0A=
	if (!A)=0A=
		sajax_debug("Could not create connection object.");=0A=
=0A=
	return A;=0A=
}=0A=
=0A=
/**=0A=
* Perform an ajax call to mediawiki. Calls are handeled by =
AjaxDispatcher.php=0A=
*   func_name - the name of the function to call. Must be registered in =
$wgAjaxExportList=0A=
*   args - an array of arguments to that function=0A=
*   target - the target that will handle the result of the call. If this =
is a function,=0A=
*            if will be called with the XMLHttpRequest as a parameter; =
if it's an input=0A=
*            element, its value will be set to the resultText; if it's =
another type of=0A=
*            element, its innerHTML will be set to the resultText.=0A=
*=0A=
* Example:=0A=
*    sajax_do_call('doFoo', [1, 2, 3], =
document.getElementById("showFoo"));=0A=
*=0A=
* This will call the doFoo function via MediaWiki's AjaxDispatcher, with=0A=
* (1, 2, 3) as the parameter list, and will show the result in the =
element=0A=
* with id =3D showFoo=0A=
*/=0A=
function sajax_do_call(func_name, args, target) {=0A=
	var i, x, n;=0A=
	var uri;=0A=
	var post_data;=0A=
	uri =3D wgServer +=0A=
		((wgScript =3D=3D null) ? (wgScriptPath + "/index.php") : wgScript) +=0A=
		"?action=3Dajax";=0A=
	if (sajax_request_type =3D=3D "GET") {=0A=
		if (uri.indexOf("?") =3D=3D -1)=0A=
			uri =3D uri + "?rs=3D" + encodeURIComponent(func_name);=0A=
		else=0A=
			uri =3D uri + "&rs=3D" + encodeURIComponent(func_name);=0A=
		for (i =3D 0; i < args.length; i++)=0A=
			uri =3D uri + "&rsargs[]=3D" + encodeURIComponent(args[i]);=0A=
		//uri =3D uri + "&rsrnd=3D" + new Date().getTime();=0A=
		post_data =3D null;=0A=
	} else {=0A=
		post_data =3D "rs=3D" + encodeURIComponent(func_name);=0A=
		for (i =3D 0; i < args.length; i++)=0A=
			post_data =3D post_data + "&rsargs[]=3D" + =
encodeURIComponent(args[i]);=0A=
	}=0A=
	x =3D sajax_init_object();=0A=
	if (!x) {=0A=
		alert("AJAX not supported");=0A=
		return false;=0A=
	}=0A=
=0A=
	try {=0A=
		x.open(sajax_request_type, uri, true);=0A=
	} catch (e) {=0A=
		if (window.location.hostname =3D=3D "localhost") {=0A=
			alert("Your browser blocks XMLHttpRequest to 'localhost', try using a =
real hostname for development/testing.");=0A=
		}=0A=
		throw e;=0A=
	}=0A=
	if (sajax_request_type =3D=3D "POST") {=0A=
		x.setRequestHeader("Method", "POST " + uri + " HTTP/1.1");=0A=
		x.setRequestHeader("Content-Type", =
"application/x-www-form-urlencoded");=0A=
	}=0A=
	x.setRequestHeader("Pragma", "cache=3Dyes");=0A=
	x.setRequestHeader("Cache-Control", "no-transform");=0A=
	x.onreadystatechange =3D function() {=0A=
		if (x.readyState !=3D 4)=0A=
			return;=0A=
=0A=
		sajax_debug("received (" + x.status + " " + x.statusText + ") " + =
x.responseText);=0A=
=0A=
		//if (x.status !=3D 200)=0A=
		//	alert("Error: " + x.status + " " + x.statusText + ": " + =
x.responseText);=0A=
		//else=0A=
=0A=
		if ( typeof( target ) =3D=3D 'function' ) {=0A=
			target( x );=0A=
		}=0A=
		else if ( typeof( target ) =3D=3D 'object' ) {=0A=
			if ( target.tagName =3D=3D 'INPUT' ) {=0A=
				if (x.status =3D=3D 200) target.value=3D x.responseText;=0A=
				//else alert("Error: " + x.status + " " + x.statusText + " (" + =
x.responseText + ")");=0A=
			}=0A=
			else {=0A=
				if (x.status =3D=3D 200) target.innerHTML =3D x.responseText;=0A=
				else target.innerHTML=3D "<div class=3D'error'>Error: " + x.status + =
" " + x.statusText + " (" + x.responseText + ")</div>";=0A=
			}=0A=
		}=0A=
		else {=0A=
			alert("bad target for sajax_do_call: not a function or object: " + =
target);=0A=
		}=0A=
=0A=
		return;=0A=
	}=0A=
=0A=
	sajax_debug(func_name + " uri =3D " + uri + " / post =3D " + post_data);=0A=
	x.send(post_data);=0A=
	sajax_debug(func_name + " waiting..");=0A=
	delete x;=0A=
=0A=
	return true;=0A=
}=0A=
=0A=
/**=0A=
 * @return boolean whether the browser supports XMLHttpRequest=0A=
 */=0A=
function wfSupportsAjax() {=0A=
	var request =3D sajax_init_object();=0A=
	var supportsAjax =3D request ? true : false;=0A=
	delete request;=0A=
	return supportsAjax;=0A=
}=0A=
=0A=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/skins-1.5/common/mwsuggest.js?urid=243z2

/*=0A=
 * OpenSearch ajax suggestion engine for MediaWiki=0A=
 *=0A=
 * uses core MediaWiki open search support to fetch suggestions=0A=
 * and show them below search boxes and other inputs=0A=
 *=0A=
 * by Robert Stojnic (April 2008)=0A=
 */=0A=
=0A=
// search_box_id -> Results object=0A=
var os_map =3D {};=0A=
// cached data, url -> json_text=0A=
var os_cache =3D {};=0A=
// global variables for suggest_keypress=0A=
var os_cur_keypressed =3D 0;=0A=
var os_keypressed_count =3D 0;=0A=
// type: Timer=0A=
var os_timer =3D null;=0A=
// tie mousedown/up events=0A=
var os_mouse_pressed =3D false;=0A=
var os_mouse_num =3D -1;=0A=
// if true, the last change was made by mouse (and not keyboard)=0A=
var os_mouse_moved =3D false;=0A=
// delay between keypress and suggestion (in ms)=0A=
var os_search_timeout =3D 250;=0A=
// these pairs of inputs/forms will be autoloaded at startup=0A=
var os_autoload_inputs =3D new Array('searchInput', 'searchInput2', =
'powerSearchText', 'searchText');=0A=
var os_autoload_forms =3D new Array('searchform', 'searchform2', =
'powersearch', 'search' );=0A=
// if we stopped the service=0A=
var os_is_stopped =3D false;=0A=
// max lines to show in suggest table=0A=
var os_max_lines_per_suggest =3D 7;=0A=
// number of steps to animate expansion/contraction of container width=0A=
var os_animation_steps =3D 6;=0A=
// num of pixels of smallest step=0A=
var os_animation_min_step =3D 2;=0A=
// delay between steps (in ms)=0A=
var os_animation_delay =3D 30;=0A=
// max width of container in percent of normal size (1 =3D=3D 100%)=0A=
var os_container_max_width =3D 2;=0A=
// currently active animation timer=0A=
var os_animation_timer =3D null;=0A=
=0A=
/** Timeout timer class that will fetch the results */=0A=
function os_Timer(id,r,query){=0A=
	this.id =3D id;=0A=
	this.r =3D r;=0A=
	this.query =3D query;=0A=
}=0A=
=0A=
/** Timer user to animate expansion/contraction of container width */=0A=
function os_AnimationTimer(r, target){=0A=
	this.r =3D r;=0A=
	var current =3D document.getElementById(r.container).offsetWidth;=0A=
	this.inc =3D Math.round((target-current) / os_animation_steps);=0A=
	if(this.inc < os_animation_min_step && this.inc >=3D0)=0A=
		this.inc =3D os_animation_min_step; // minimal animation step=0A=
	if(this.inc > -os_animation_min_step && this.inc <0)=0A=
		this.inc =3D -os_animation_min_step;=0A=
	this.target =3D target;=0A=
}=0A=
=0A=
/** Property class for single search box */=0A=
function os_Results(name, formname){=0A=
	this.searchform =3D formname; // id of the searchform=0A=
	this.searchbox =3D name; // id of the searchbox=0A=
	this.container =3D name+"Suggest"; // div that holds results=0A=
	this.resultTable =3D name+"Result"; // id base for the result table =
(+num =3D table row)=0A=
	this.resultText =3D name+"ResultText"; // id base for the spans within =
result tables (+num)=0A=
	this.toggle =3D name+"Toggle"; // div that has the toggle =
(enable/disable) link=0A=
	this.query =3D null; // last processed query=0A=
	this.results =3D null;  // parsed titles=0A=
	this.resultCount =3D 0; // number of results=0A=
	this.original =3D null; // query that user entered=0A=
	this.selected =3D -1; // which result is selected=0A=
	this.containerCount =3D 0; // number of results visible in container=0A=
	this.containerRow =3D 0; // height of result field in the container=0A=
	this.containerTotal =3D 0; // total height of the container will all =
results=0A=
	this.visible =3D false; // if container is visible=0A=
	this.stayHidden =3D false; // don't try to show if lost focus=0A=
}=0A=
=0A=
/** Hide results div */=0A=
function os_hideResults(r){=0A=
	var c =3D document.getElementById(r.container);=0A=
	if(c !=3D null)=0A=
		c.style.visibility =3D "hidden";=0A=
	r.visible =3D false;=0A=
	r.selected =3D -1;=0A=
}=0A=
=0A=
/** Show results div */=0A=
function os_showResults(r){=0A=
	if(os_is_stopped)=0A=
		return;=0A=
	if(r.stayHidden)=0A=
		return=0A=
	os_fitContainer(r);=0A=
	var c =3D document.getElementById(r.container);=0A=
	r.selected =3D -1;=0A=
	if(c !=3D null){=0A=
		c.scrollTop =3D 0;=0A=
		c.style.visibility =3D "visible";=0A=
		r.visible =3D true;=0A=
	}=0A=
}=0A=
=0A=
function os_operaWidthFix(x){=0A=
	// For browsers that don't understand overflow-x, estimate scrollbar =
width=0A=
	if(typeof document.body.style.overflowX !=3D "string"){=0A=
		return 30;=0A=
	}=0A=
	return 0;=0A=
}=0A=
=0A=
function os_encodeQuery(value){=0A=
  if (encodeURIComponent) {=0A=
    return encodeURIComponent(value);=0A=
  }=0A=
  if(escape) {=0A=
    return escape(value);=0A=
  }=0A=
  return null;=0A=
}=0A=
function os_decodeValue(value){=0A=
  if (decodeURIComponent) {=0A=
    return decodeURIComponent(value);=0A=
  }=0A=
  if(unescape){=0A=
  	return unescape(value);=0A=
  }=0A=
  return null;=0A=
}=0A=
=0A=
/** Brower-dependent functions to find window inner size, and scroll =
status */=0A=
function f_clientWidth() {=0A=
	return f_filterResults (=0A=
		window.innerWidth ? window.innerWidth : 0,=0A=
		document.documentElement ? document.documentElement.clientWidth : 0,=0A=
		document.body ? document.body.clientWidth : 0=0A=
	);=0A=
}=0A=
function f_clientHeight() {=0A=
	return f_filterResults (=0A=
		window.innerHeight ? window.innerHeight : 0,=0A=
		document.documentElement ? document.documentElement.clientHeight : 0,=0A=
		document.body ? document.body.clientHeight : 0=0A=
	);=0A=
}=0A=
function f_scrollLeft() {=0A=
	return f_filterResults (=0A=
		window.pageXOffset ? window.pageXOffset : 0,=0A=
		document.documentElement ? document.documentElement.scrollLeft : 0,=0A=
		document.body ? document.body.scrollLeft : 0=0A=
	);=0A=
}=0A=
function f_scrollTop() {=0A=
	return f_filterResults (=0A=
		window.pageYOffset ? window.pageYOffset : 0,=0A=
		document.documentElement ? document.documentElement.scrollTop : 0,=0A=
		document.body ? document.body.scrollTop : 0=0A=
	);=0A=
}=0A=
function f_filterResults(n_win, n_docel, n_body) {=0A=
	var n_result =3D n_win ? n_win : 0;=0A=
	if (n_docel && (!n_result || (n_result > n_docel)))=0A=
		n_result =3D n_docel;=0A=
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;=0A=
}=0A=
=0A=
/** Get the height available for the results container */=0A=
function os_availableHeight(r){=0A=
	var absTop =3D document.getElementById(r.container).style.top;=0A=
	var px =3D absTop.lastIndexOf("px");=0A=
	if(px > 0)=0A=
		absTop =3D absTop.substring(0,px);=0A=
	return f_clientHeight() - (absTop - f_scrollTop());=0A=
}=0A=
=0A=
=0A=
/** Get element absolute position {left,top} */=0A=
function os_getElementPosition(elemID){=0A=
	var offsetTrail =3D document.getElementById(elemID);=0A=
	var offsetLeft =3D 0;=0A=
	var offsetTop =3D 0;=0A=
	while (offsetTrail){=0A=
		offsetLeft +=3D offsetTrail.offsetLeft;=0A=
		offsetTop +=3D offsetTrail.offsetTop;=0A=
		offsetTrail =3D offsetTrail.offsetParent;=0A=
	}=0A=
	if (navigator.userAgent.indexOf('Mac') !=3D -1 && typeof =
document.body.leftMargin !=3D 'undefined'){=0A=
		offsetLeft +=3D document.body.leftMargin;=0A=
		offsetTop +=3D document.body.topMargin;=0A=
	}=0A=
	return {left:offsetLeft,top:offsetTop};=0A=
}=0A=
=0A=
/** Create the container div that will hold the suggested titles */=0A=
function os_createContainer(r){=0A=
	var c =3D document.createElement("div");=0A=
	var s =3D document.getElementById(r.searchbox);=0A=
	var pos =3D os_getElementPosition(r.searchbox);=0A=
	var left =3D pos.left;=0A=
	var top =3D pos.top + s.offsetHeight;=0A=
	c.className =3D "os-suggest";=0A=
	c.setAttribute("id", r.container);=0A=
	document.body.appendChild(c);=0A=
=0A=
	// dynamically generated style params=0A=
	// IE workaround, cannot explicitely set "style" attribute=0A=
	c =3D document.getElementById(r.container);=0A=
	c.style.top =3D top+"px";=0A=
	c.style.left =3D left+"px";=0A=
	c.style.width =3D s.offsetWidth+"px";=0A=
=0A=
	// mouse event handlers=0A=
	c.onmouseover =3D function(event) { os_eventMouseover(r.searchbox, =
event); };=0A=
	c.onmousemove =3D function(event) { os_eventMousemove(r.searchbox, =
event); };=0A=
	c.onmousedown =3D function(event) { return =
os_eventMousedown(r.searchbox, event); };=0A=
	c.onmouseup =3D function(event) { os_eventMouseup(r.searchbox, event); =
};=0A=
	return c;=0A=
}=0A=
=0A=
/** change container height to fit to screen */=0A=
function os_fitContainer(r){=0A=
	var c =3D document.getElementById(r.container);=0A=
	var h =3D os_availableHeight(r) - 20;=0A=
	var inc =3D r.containerRow;=0A=
	h =3D parseInt(h/inc) * inc;=0A=
	if(h < (2 * inc) && r.resultCount > 1) // min: two results=0A=
		h =3D 2 * inc;=0A=
	if((h/inc) > os_max_lines_per_suggest )=0A=
		h =3D inc * os_max_lines_per_suggest;=0A=
	if(h < r.containerTotal){=0A=
		c.style.height =3D h +"px";=0A=
		r.containerCount =3D parseInt(Math.round(h/inc));=0A=
	} else{=0A=
		c.style.height =3D r.containerTotal+"px";=0A=
		r.containerCount =3D r.resultCount;=0A=
	}=0A=
}=0A=
/** If some entries are longer than the box, replace text with "..." */=0A=
function os_trimResultText(r){=0A=
	// find max width, first see if we could expand the container to fit it=0A=
	var maxW =3D 0;=0A=
	for(var i=3D0;i<r.resultCount;i++){=0A=
		var e =3D document.getElementById(r.resultText+i);=0A=
		if(e.offsetWidth > maxW)=0A=
			maxW =3D e.offsetWidth;=0A=
	}=0A=
	var w =3D document.getElementById(r.container).offsetWidth;=0A=
	var fix =3D 0;=0A=
	if(r.containerCount < r.resultCount){=0A=
		fix =3D 20; // give 20px for scrollbar=0A=
	} else=0A=
		fix =3D os_operaWidthFix(w);=0A=
	if(fix < 4)=0A=
		fix =3D 4; // basic padding=0A=
	maxW +=3D fix;=0A=
=0A=
	// resize container to fit more data if permitted=0A=
	var normW =3D document.getElementById(r.searchbox).offsetWidth;=0A=
	var prop =3D maxW / normW;=0A=
	if(prop > os_container_max_width)=0A=
		prop =3D os_container_max_width;=0A=
	else if(prop < 1)=0A=
		prop =3D 1;=0A=
	var newW =3D Math.round( normW * prop );=0A=
	if( w !=3D newW ){=0A=
		w =3D newW;=0A=
		if( os_animation_timer !=3D null )=0A=
			clearInterval(os_animation_timer.id)=0A=
		os_animation_timer =3D new os_AnimationTimer(r,w);=0A=
		os_animation_timer.id =3D =
setInterval("os_animateChangeWidth()",os_animation_delay);=0A=
		w -=3D fix; // this much is reserved=0A=
	}=0A=
=0A=
	// trim results=0A=
	if(w < 10)=0A=
		return;=0A=
	for(var i=3D0;i<r.resultCount;i++){=0A=
		var e =3D document.getElementById(r.resultText+i);=0A=
		var replace =3D 1;=0A=
		var lastW =3D e.offsetWidth+1;=0A=
		var iteration =3D 0;=0A=
		var changedText =3D false;=0A=
		while(e.offsetWidth > w && (e.offsetWidth < lastW || iteration<2)){=0A=
			changedText =3D true;=0A=
			lastW =3D e.offsetWidth;=0A=
			var l =3D e.innerHTML;=0A=
			e.innerHTML =3D l.substring(0,l.length-replace)+"...";=0A=
			iteration++;=0A=
			replace =3D 4; // how many chars to replace=0A=
		}=0A=
		if(changedText){=0A=
			// show hint for trimmed titles=0A=
			=
document.getElementById(r.resultTable+i).setAttribute("title",r.results[i=
]);=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/** Invoked on timer to animate change in container width */=0A=
function os_animateChangeWidth(){=0A=
	var r =3D os_animation_timer.r;=0A=
	var c =3D document.getElementById(r.container);=0A=
	var w =3D c.offsetWidth;=0A=
	var normW =3D document.getElementById(r.searchbox).offsetWidth;=0A=
	var normL =3D os_getElementPosition(r.searchbox).left;=0A=
	var inc =3D os_animation_timer.inc;=0A=
	var target =3D os_animation_timer.target;=0A=
	var nw =3D w + inc;=0A=
	if( (inc > 0 && nw >=3D target) || (inc <=3D 0 && nw <=3D target) ){=0A=
		// finished !=0A=
		c.style.width =3D target+"px";=0A=
		clearInterval(os_animation_timer.id)=0A=
		os_animation_timer =3D null;=0A=
	} else{=0A=
		// in-progress=0A=
		c.style.width =3D nw+"px";=0A=
		if(document.documentElement.dir =3D=3D "rtl")=0A=
			c.style.left =3D (normL + normW + (target - nw) - =
os_animation_timer.target - 1)+"px";=0A=
	}=0A=
}=0A=
=0A=
/** Handles data from XMLHttpRequest, and updates the suggest results */=0A=
function os_updateResults(r, query, text, cacheKey){=0A=
	os_cache[cacheKey] =3D text;=0A=
	r.query =3D query;=0A=
	r.original =3D query;=0A=
	if(text =3D=3D ""){=0A=
		r.results =3D null;=0A=
		r.resultCount =3D 0;=0A=
		os_hideResults(r);=0A=
	} else{=0A=
		try {=0A=
			var p =3D eval('('+text+')'); // simple json parse, could do a safer =
one=0A=
			if(p.length<2 || p[1].length =3D=3D 0){=0A=
				r.results =3D null;=0A=
				r.resultCount =3D 0;=0A=
				os_hideResults(r);=0A=
				return;=0A=
			}=0A=
			var c =3D document.getElementById(r.container);=0A=
			if(c =3D=3D null)=0A=
				c =3D os_createContainer(r);=0A=
			c.innerHTML =3D os_createResultTable(r,p[1]);=0A=
			// init container table sizes=0A=
			var t =3D document.getElementById(r.resultTable);=0A=
			r.containerTotal =3D t.offsetHeight;=0A=
			r.containerRow =3D t.offsetHeight / r.resultCount;=0A=
			os_fitContainer(r);=0A=
			os_trimResultText(r);=0A=
			os_showResults(r);=0A=
		} catch(e){=0A=
			// bad response from server or such=0A=
			os_hideResults(r);=0A=
			os_cache[cacheKey] =3D null;=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/** Create the result table to be placed in the container div */=0A=
function os_createResultTable(r, results){=0A=
	var c =3D document.getElementById(r.container);=0A=
	var width =3D c.offsetWidth - os_operaWidthFix(c.offsetWidth);=0A=
	var html =3D "<table class=3D\"os-suggest-results\" =
id=3D\""+r.resultTable+"\" style=3D\"width: "+width+"px;\">";=0A=
	r.results =3D new Array();=0A=
	r.resultCount =3D results.length;=0A=
	for(i=3D0;i<results.length;i++){=0A=
		var title =3D os_decodeValue(results[i]);=0A=
		r.results[i] =3D title;=0A=
		html +=3D "<tr><td class=3D\"os-suggest-result\" =
id=3D\""+r.resultTable+i+"\"><span =
id=3D\""+r.resultText+i+"\">"+title+"</span></td></tr>";=0A=
	}=0A=
	html+=3D"</table>"=0A=
	return html;=0A=
}=0A=
=0A=
/** Fetch namespaces from checkboxes or hidden fields in the search form,=0A=
    if none defined use wgSearchNamespaces global */=0A=
function os_getNamespaces(r){=0A=
	var namespaces =3D "";=0A=
	var elements =3D document.forms[r.searchform].elements;=0A=
	for(i=3D0; i < elements.length; i++){=0A=
		var name =3D elements[i].name;=0A=
		if(typeof name !=3D 'undefined' && name.length > 2=0A=
		&& name[0]=3D=3D'n' && name[1]=3D=3D's'=0A=
		&& ((elements[i].type=3D=3D'checkbox' && elements[i].checked)=0A=
		 	|| (elements[i].type=3D=3D'hidden' && elements[i].value=3D=3D"1")) ){=0A=
			if(namespaces!=3D"")=0A=
				namespaces+=3D"|";=0A=
			namespaces+=3Dname.substring(2);=0A=
		}=0A=
	}=0A=
	if(namespaces =3D=3D "")=0A=
		namespaces =3D wgSearchNamespaces.join("|");=0A=
	return namespaces;=0A=
}=0A=
=0A=
/** Update results if user hasn't already typed something else */=0A=
function os_updateIfRelevant(r, query, text, cacheKey){=0A=
	var t =3D document.getElementById(r.searchbox);=0A=
	if(t !=3D null && t.value =3D=3D query){ // check if response is still =
relevant=0A=
		os_updateResults(r, query, text, cacheKey);=0A=
	}=0A=
	r.query =3D query;=0A=
}=0A=
=0A=
/** Fetch results after some timeout */=0A=
function os_delayedFetch(){=0A=
	if(os_timer =3D=3D null)=0A=
		return;=0A=
	var r =3D os_timer.r;=0A=
	var query =3D os_timer.query;=0A=
	os_timer =3D null;=0A=
	var path =3D =
wgMWSuggestTemplate.replace("{namespaces}",os_getNamespaces(r))=0A=
							  	  .replace("{dbname}",wgDBname)=0A=
							  	  .replace("{searchTerms}",os_encodeQuery(query));=0A=
=0A=
	// try to get from cache, if not fetch using ajax=0A=
	var cached =3D os_cache[path];=0A=
	if(cached !=3D null){=0A=
		os_updateIfRelevant(r, query, cached, path);=0A=
	} else{=0A=
		var xmlhttp =3D sajax_init_object();=0A=
		if(xmlhttp){=0A=
			try {=0A=
				xmlhttp.open("GET", path, true);=0A=
				xmlhttp.onreadystatechange=3Dfunction(){=0A=
		        	if (xmlhttp.readyState=3D=3D4 && typeof os_updateIfRelevant =
=3D=3D 'function') {=0A=
		        		os_updateIfRelevant(r, query, xmlhttp.responseText, path);=0A=
	        		}=0A=
	      		};=0A=
	     		xmlhttp.send(null);=0A=
	     	} catch (e) {=0A=
				if (window.location.hostname =3D=3D "localhost") {=0A=
					alert("Your browser blocks XMLHttpRequest to 'localhost', try using =
a real hostname for development/testing.");=0A=
				}=0A=
				throw e;=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
/** Init timed update via os_delayedUpdate() */=0A=
function os_fetchResults(r, query, timeout){=0A=
	if(query =3D=3D ""){=0A=
		r.query =3D "";=0A=
		os_hideResults(r);=0A=
		return;=0A=
	} else if(query =3D=3D r.query)=0A=
		return; // no change=0A=
=0A=
	os_is_stopped =3D false; // make sure we're running=0A=
=0A=
	/* var cacheKey =3D wgDBname+":"+query;=0A=
	var cached =3D os_cache[cacheKey];=0A=
	if(cached !=3D null){=0A=
		os_updateResults(r,wgDBname,query,cached);=0A=
		return;=0A=
	} */=0A=
=0A=
	// cancel any pending fetches=0A=
	if(os_timer !=3D null && os_timer.id !=3D null)=0A=
		clearTimeout(os_timer.id);=0A=
	// schedule delayed fetching of results=0A=
	if(timeout !=3D 0){=0A=
		os_timer =3D new =
os_Timer(setTimeout("os_delayedFetch()",timeout),r,query);=0A=
	} else{=0A=
		os_timer =3D new os_Timer(null,r,query);=0A=
		os_delayedFetch(); // do it now!=0A=
	}=0A=
=0A=
}=0A=
/** Change the highlighted row (i.e. suggestion), from position cur to =
next */=0A=
function os_changeHighlight(r, cur, next, updateSearchBox){=0A=
	if (next >=3D r.resultCount)=0A=
		next =3D r.resultCount-1;=0A=
	if (next < -1)=0A=
		next =3D -1;=0A=
	r.selected =3D next;=0A=
   	if (cur =3D=3D next)=0A=
    	return; // nothing to do.=0A=
=0A=
    if(cur >=3D 0){=0A=
    	var curRow =3D document.getElementById(r.resultTable + cur);=0A=
    	if(curRow !=3D null)=0A=
    		curRow.className =3D "os-suggest-result";=0A=
    }=0A=
    var newText;=0A=
    if(next >=3D 0){=0A=
    	var nextRow =3D document.getElementById(r.resultTable + next);=0A=
    	if(nextRow !=3D null)=0A=
    		nextRow.className =3D os_HighlightClass();=0A=
    	newText =3D r.results[next];=0A=
    } else=0A=
    	newText =3D r.original;=0A=
=0A=
    // adjust the scrollbar if any=0A=
    if(r.containerCount < r.resultCount){=0A=
    	var c =3D document.getElementById(r.container);=0A=
    	var vStart =3D c.scrollTop / r.containerRow;=0A=
    	var vEnd =3D vStart + r.containerCount;=0A=
    	if(next < vStart)=0A=
    		c.scrollTop =3D next * r.containerRow;=0A=
    	else if(next >=3D vEnd)=0A=
    		c.scrollTop =3D (next - r.containerCount + 1) * r.containerRow;=0A=
    }=0A=
=0A=
    // update the contents of the search box=0A=
    if(updateSearchBox){=0A=
    	os_updateSearchQuery(r,newText);=0A=
    }=0A=
}=0A=
=0A=
function os_HighlightClass() {=0A=
	var match =3D navigator.userAgent.match(/AppleWebKit\/(\d+)/);=0A=
	if (match) {=0A=
		var webKitVersion =3D parseInt(match[1]);=0A=
		if (webKitVersion < 523) {=0A=
			// CSS system highlight colors broken on old Safari=0A=
			// https://bugs.webkit.org/show_bug.cgi?id=3D6129=0A=
			// Safari 3.0.4, 3.1 known ok=0A=
			return "os-suggest-result-hl-webkit";=0A=
		}=0A=
	}=0A=
	return "os-suggest-result-hl";=0A=
}=0A=
=0A=
function os_updateSearchQuery(r,newText){=0A=
	document.getElementById(r.searchbox).value =3D newText;=0A=
    r.query =3D newText;=0A=
}=0A=
=0A=
/** Find event target */=0A=
function os_getTarget(e){=0A=
	if (!e) e =3D window.event;=0A=
	if (e.target) return e.target;=0A=
	else if (e.srcElement) return e.srcElement;=0A=
	else return null;=0A=
}=0A=
=0A=
=0A=
=0A=
/********************=0A=
 *  Keyboard events=0A=
 ********************/=0A=
=0A=
/** Event handler that will fetch results on keyup */=0A=
function os_eventKeyup(e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[targ.id];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
=0A=
	// some browsers won't generate keypressed for arrow keys, catch it=0A=
	if(os_keypressed_count =3D=3D 0){=0A=
		os_processKey(r,os_cur_keypressed,targ);=0A=
	}=0A=
	var query =3D targ.value;=0A=
	os_fetchResults(r,query,os_search_timeout);=0A=
}=0A=
=0A=
/** catch arrows up/down and escape to hide the suggestions */=0A=
function os_processKey(r,keypressed,targ){=0A=
	if (keypressed =3D=3D 40){ // Arrow Down=0A=
    	if (r.visible) {=0A=
      		os_changeHighlight(r, r.selected, r.selected+1, true);=0A=
    	} else if(os_timer =3D=3D null){=0A=
    		// user wants to get suggestions now=0A=
    		r.query =3D "";=0A=
			os_fetchResults(r,targ.value,0);=0A=
    	}=0A=
  	} else if (keypressed =3D=3D 38){ // Arrow Up=0A=
  		if (r.visible){=0A=
  			os_changeHighlight(r, r.selected, r.selected-1, true);=0A=
  		}=0A=
  	} else if(keypressed =3D=3D 27){ // Escape=0A=
  		document.getElementById(r.searchbox).value =3D r.original;=0A=
  		r.query =3D r.original;=0A=
  		os_hideResults(r);=0A=
  	} else if(r.query !=3D document.getElementById(r.searchbox).value){=0A=
  		// os_hideResults(r); // don't show old suggestions=0A=
  	}=0A=
}=0A=
=0A=
/** When keys is held down use a timer to output regular events */=0A=
function os_eventKeypress(e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[targ.id];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
=0A=
	var keypressed =3D os_cur_keypressed;=0A=
=0A=
	os_keypressed_count++;=0A=
	os_processKey(r,keypressed,targ);=0A=
}=0A=
=0A=
/** Catch the key code (Firefox bug)  */=0A=
function os_eventKeydown(e){=0A=
	if (!e) e =3D window.event;=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[targ.id];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
=0A=
	os_mouse_moved =3D false;=0A=
=0A=
	os_cur_keypressed =3D (e.keyCode =3D=3D undefined) ? e.which : =
e.keyCode;=0A=
	os_keypressed_count =3D 0;=0A=
}=0A=
=0A=
/** Event: loss of focus of input box */=0A=
function os_eventBlur(e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[targ.id];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
	if(!os_mouse_pressed){=0A=
		os_hideResults(r);=0A=
		// force canvas to stay hidden=0A=
		r.stayHidden =3D true=0A=
		// cancel any pending fetches=0A=
		if(os_timer !=3D null && os_timer.id !=3D null)=0A=
			clearTimeout(os_timer.id);=0A=
		os_timer =3D null=0A=
	}=0A=
}=0A=
=0A=
/** Event: focus (catch only when stopped) */=0A=
function os_eventFocus(e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[targ.id];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
	r.stayHidden =3D false=0A=
}=0A=
=0A=
=0A=
=0A=
/********************=0A=
 *  Mouse events=0A=
 ********************/=0A=
=0A=
/** Mouse over the container */=0A=
function os_eventMouseover(srcId, e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[srcId];=0A=
	if(r =3D=3D null || !os_mouse_moved)=0A=
		return; // not our event=0A=
	var num =3D os_getNumberSuffix(targ.id);=0A=
	if(num >=3D 0)=0A=
		os_changeHighlight(r,r.selected,num,false);=0A=
=0A=
}=0A=
=0A=
/* Get row where the event occured (from its id) */=0A=
function os_getNumberSuffix(id){=0A=
	var num =3D id.substring(id.length-2);=0A=
	if( ! (num.charAt(0) >=3D '0' && num.charAt(0) <=3D '9') )=0A=
		num =3D num.substring(1);=0A=
	if(os_isNumber(num))=0A=
		return parseInt(num);=0A=
	else=0A=
		return -1;=0A=
}=0A=
=0A=
/** Save mouse move as last action */=0A=
function os_eventMousemove(srcId, e){=0A=
	os_mouse_moved =3D true;=0A=
}=0A=
=0A=
/** Mouse button held down, register possible click  */=0A=
function os_eventMousedown(srcId, e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[srcId];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
	var num =3D os_getNumberSuffix(targ.id);=0A=
=0A=
	os_mouse_pressed =3D true;=0A=
	if(num >=3D 0){=0A=
		os_mouse_num =3D num;=0A=
		// os_updateSearchQuery(r,r.results[num]);=0A=
	}=0A=
	// keep the focus on the search field=0A=
	document.getElementById(r.searchbox).focus();=0A=
=0A=
	return false; // prevents selection=0A=
}=0A=
=0A=
/** Mouse button released, check for click on some row */=0A=
function os_eventMouseup(srcId, e){=0A=
	var targ =3D os_getTarget(e);=0A=
	var r =3D os_map[srcId];=0A=
	if(r =3D=3D null)=0A=
		return; // not our event=0A=
	var num =3D os_getNumberSuffix(targ.id);=0A=
=0A=
	if(num >=3D 0 && os_mouse_num =3D=3D num){=0A=
		os_updateSearchQuery(r,r.results[num]);=0A=
		os_hideResults(r);=0A=
		document.getElementById(r.searchform).submit();=0A=
	}=0A=
	os_mouse_pressed =3D false;=0A=
	// keep the focus on the search field=0A=
	document.getElementById(r.searchbox).focus();=0A=
}=0A=
=0A=
/** Check if x is a valid integer */=0A=
function os_isNumber(x){=0A=
	if(x =3D=3D "" || isNaN(x))=0A=
		return false;=0A=
	for(var i=3D0;i<x.length;i++){=0A=
		var c =3D x.charAt(i);=0A=
		if( ! (c >=3D '0' && c <=3D '9') )=0A=
			return false;=0A=
	}=0A=
	return true;=0A=
}=0A=
=0A=
=0A=
/** When the form is submitted hide everything, cancel updates... */=0A=
function os_eventOnsubmit(e){=0A=
	var targ =3D os_getTarget(e);=0A=
=0A=
	os_is_stopped =3D true;=0A=
	// kill timed requests=0A=
	if(os_timer !=3D null && os_timer.id !=3D null){=0A=
		clearTimeout(os_timer.id);=0A=
		os_timer =3D null;=0A=
	}=0A=
	// Hide all suggestions=0A=
	for(i=3D0;i<os_autoload_inputs.length;i++){=0A=
		var r =3D os_map[os_autoload_inputs[i]];=0A=
		if(r !=3D null){=0A=
			var b =3D document.getElementById(r.searchform);=0A=
			if(b !=3D null && b =3D=3D targ){=0A=
				// set query value so the handler won't try to fetch additional =
results=0A=
				r.query =3D document.getElementById(r.searchbox).value;=0A=
			}=0A=
			os_hideResults(r);=0A=
		}=0A=
	}=0A=
	return true;=0A=
}=0A=
=0A=
function os_hookEvent(element, hookName, hookFunct) {=0A=
	if (element.addEventListener) {=0A=
		element.addEventListener(hookName, hookFunct, false);=0A=
	} else if (window.attachEvent) {=0A=
		element.attachEvent("on" + hookName, hookFunct);=0A=
	}=0A=
}=0A=
=0A=
/** Init Result objects and event handlers */=0A=
function os_initHandlers(name, formname, element){=0A=
	var r =3D new os_Results(name, formname);=0A=
	// event handler=0A=
	os_hookEvent(element, "keyup", function(event) { os_eventKeyup(event); =
});=0A=
	os_hookEvent(element, "keydown", function(event) { =
os_eventKeydown(event); });=0A=
	os_hookEvent(element, "keypress", function(event) { =
os_eventKeypress(event); });=0A=
	os_hookEvent(element, "blur", function(event) { os_eventBlur(event); });=0A=
	os_hookEvent(element, "focus", function(event) { os_eventFocus(event); =
});=0A=
	element.setAttribute("autocomplete","off");=0A=
	// stopping handler=0A=
	os_hookEvent(document.getElementById(formname), "submit", =
function(event){ return os_eventOnsubmit(event); });=0A=
	os_map[name] =3D r;=0A=
	// toggle link=0A=
	if(document.getElementById(r.toggle) =3D=3D null){=0A=
		// TODO: disable this while we figure out a way for this to work in =
all browsers=0A=
		/* if(name=3D=3D'searchInput'){=0A=
			// special case: place above the main search box=0A=
			var t =3D os_createToggle(r,"os-suggest-toggle");=0A=
			var searchBody =3D document.getElementById('searchBody');=0A=
			var first =3D =
searchBody.parentNode.firstChild.nextSibling.appendChild(t);=0A=
		} else{=0A=
			// default: place below search box to the right=0A=
			var t =3D os_createToggle(r,"os-suggest-toggle-def");=0A=
			var top =3D element.offsetTop + element.offsetHeight;=0A=
			var left =3D element.offsetLeft + element.offsetWidth;=0A=
			t.style.position =3D "absolute";=0A=
			t.style.top =3D top + "px";=0A=
			t.style.left =3D left + "px";=0A=
			element.parentNode.appendChild(t);=0A=
			// only now width gets calculated, shift right=0A=
			left -=3D t.offsetWidth;=0A=
			t.style.left =3D left + "px";=0A=
			t.style.visibility =3D "visible";=0A=
		} */=0A=
	}=0A=
=0A=
}=0A=
=0A=
/** Return the span element that contains the toggle link */=0A=
function os_createToggle(r,className){=0A=
	var t =3D document.createElement("span");=0A=
	t.className =3D className;=0A=
	t.setAttribute("id", r.toggle);=0A=
	var link =3D document.createElement("a");=0A=
	link.setAttribute("href","javascript:void(0);");=0A=
	link.onclick =3D function(){ os_toggle(r.searchbox,r.searchform) };=0A=
	var msg =3D document.createTextNode(wgMWSuggestMessages[0]);=0A=
	link.appendChild(msg);=0A=
	t.appendChild(link);=0A=
	return t;=0A=
}=0A=
=0A=
/** Call when user clicks on some of the toggle links */=0A=
function os_toggle(inputId,formName){=0A=
	r =3D os_map[inputId];=0A=
	var msg =3D '';=0A=
	if(r =3D=3D null){=0A=
		os_enableSuggestionsOn(inputId,formName);=0A=
		r =3D os_map[inputId];=0A=
		msg =3D wgMWSuggestMessages[0];=0A=
	} else{=0A=
		os_disableSuggestionsOn(inputId,formName);=0A=
		msg =3D wgMWSuggestMessages[1];=0A=
	}=0A=
	// change message=0A=
	var link =3D document.getElementById(r.toggle).firstChild;=0A=
	link.replaceChild(document.createTextNode(msg),link.firstChild);=0A=
}=0A=
=0A=
/** Call this to enable suggestions on input (id=3DinputId), on a form =
(name=3DformName) */=0A=
function os_enableSuggestionsOn(inputId, formName){=0A=
	os_initHandlers( inputId, formName, document.getElementById(inputId) );=0A=
}=0A=
=0A=
/** Call this to disable suggestios on input box (id=3DinputId) */=0A=
function os_disableSuggestionsOn(inputId){=0A=
	r =3D os_map[inputId];=0A=
	if(r !=3D null){=0A=
		// cancel/hide results=0A=
		os_timer =3D null;=0A=
		os_hideResults(r);=0A=
		// turn autocomplete on !=0A=
		document.getElementById(inputId).setAttribute("autocomplete","on");=0A=
		// remove descriptor=0A=
		os_map[inputId] =3D null;=0A=
	}=0A=
	=0A=
	// Remove the element from the os_autoload_* arrays=0A=
	var index =3D os_autoload_inputs.indexOf(inputId);=0A=
	if ( index >=3D 0 )=0A=
		os_autoload_inputs[index] =3D os_autoload_forms[index] =3D '';=0A=
}=0A=
=0A=
/** Initialization, call upon page onload */=0A=
function os_MWSuggestInit() {=0A=
	for(i=3D0;i<os_autoload_inputs.length;i++){=0A=
		var id =3D os_autoload_inputs[i];=0A=
		var form =3D os_autoload_forms[i];=0A=
		element =3D document.getElementById( id );=0A=
		if(element !=3D null)=0A=
			os_initHandlers(id,form,element);=0A=
	}=0A=
}=0A=
=0A=
hookEvent("load", os_MWSuggestInit);=0A=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://upload.wikimedia.org/centralnotice/wikibooks/en/centralnotice.js?243z2

=0A=
function toggleNotice() {=0A=
	var notice =3D document.getElementById('centralNotice');=0A=
	if (!wgNoticeToggleState) {=0A=
		notice.className =3D notice.className.replace('collapsed', 'expanded');=0A=
		toggleNoticeCookie('0');=0A=
	} else {=0A=
		notice.className =3D notice.className.replace('expanded', 'collapsed');=0A=
		toggleNoticeCookie('1');=0A=
	}=0A=
	wgNoticeToggleState =3D !wgNoticeToggleState;=0A=
}=0A=
function toggleNoticeStyle(elems, display) {=0A=
	if(elems)=0A=
		for(var i=3D0;i<elems.length;i++)=0A=
			elems[i].style.display =3D display;=0A=
}=0A=
function toggleNoticeCookie(state) {=0A=
	var e =3D new Date();=0A=
	e.setTime( e.getTime() + (7*24*60*60*1000) ); // one week=0A=
	var work=3D'hidesnmessage=3D'+state+'; expires=3D' + e.toGMTString() + =
'; path=3D/';=0A=
	document.cookie =3D work;=0A=
}=0A=
function pickTemplate(templates, weights) {=0A=
	var weightedTemplates =3D new Array();=0A=
	var currentTemplate =3D 0;=0A=
	var totalWeight =3D 0;=0A=
=0A=
	if (templates.length =3D=3D 0)=0A=
		return '';=0A=
=0A=
	while (currentTemplate < templates.length) {=0A=
		totalWeight +=3D weights[currentTemplate];=0A=
		for (i=3D0; i<weights[currentTemplate]; i++) {=0A=
			weightedTemplates[weightedTemplates.length] =3D =
templates[currentTemplate];=0A=
		}=0A=
		currentTemplate++;=0A=
	}=0A=
	=0A=
	if (totalWeight =3D=3D 0)=0A=
		return '';=0A=
=0A=
	var randomnumber=3DMath.floor(Math.random()*totalWeight);=0A=
	return weightedTemplates[randomnumber];=0A=
}=0A=
=0A=
=0A=
var wgNoticeToggleState =3D =
(document.cookie.indexOf('hidesnmessage=3D1')=3D=3D-1);=0A=
document.writeln("\x3cstyle type=3D\"text/css\"\x3e\n#centralNotice =
.siteNoticeSmall{display:none;}\n#centralNotice =
.siteNoticeSmallAnon{display:none;}\n#centralNotice =
.siteNoticeSmallUser{display:none;}\n#centralNotice.collapsed =
.siteNoticeBig{display:none;}\n#centralNotice.collapsed =
.siteNoticeSmall{display:block;}\n#centralNotice.collapsed =
.siteNoticeSmallUser{display:block;}\n#centralNotice.collapsed =
.siteNoticeSmallAnon{display:block;}\n#centralNotice.anonnotice =
.siteNoticeSmallUser{display:none =
!important;}\n#centralNotice.usernotice =
.siteNoticeSmallAnon{display:none !important;}\n\x3c/style\x3e");=0A=
=0A=
wgNotice=3DpickTemplate([],[]);=0A=
if (wgNotice !=3D '')=0A=
wgNotice=3D'<div id=3D"centralNotice" class=3D"' + (wgNoticeToggleState =
? 'expanded' : 'collapsed') + ' ' + (wgUserName ? 'usernotice' : =
'anonnotice' ) + '">' + wgNotice+'</div>';=0A=

------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/w/index.php?title=-&action=raw&gen=js&useskin=monobook&urid=243z2

/* generated javascript */=0A=
var skin =3D 'monobook';=0A=
var stylepath =3D '/skins-1.5';=0A=
=0A=
/* MediaWiki:Common.js */=0A=
//<nowiki> Common javascript code which effects everyone=0A=
 =0A=
 // hasClass()=0A=
 // Description: Uses regular expressions and caching for better =
performance.=0A=
 // Maintainers: User:Mike Dillon, User:R. Koot, User:SG=0A=
 =0A=
 var hasClass =3D (function () {=0A=
    var reCache =3D {};=0A=
    return function (element, className) {=0A=
      return (reCache[className] ? reCache[className] : =
(reCache[className] =3D new RegExp("(?:\\s|^)" + className + =
"(?:\\s|$)"))).test(element.className);=0A=
    };=0A=
 })();=0A=
 =0A=
 // for backwards compatibility=0A=
 var addLoadEvent =3D addOnloadHook;=0A=
 var import_script =3D importScript;=0A=
 var import_style =3D importStylesheet;=0A=
 =0A=
 // book name=0A=
 var wgBookName =3D wgPageName.split("/", 1)[0] || wgPageName;=0A=
 wgBookName =3D wgBookName.split(':', 2).join(":");=0A=
 =0A=
 // Provides an easy way to disable load dependent features=0A=
 function delLoadEvent(func) {=0A=
   for (var i =3D 0; i < onloadFuncts.length; i++) {=0A=
     if (onloadFuncts[i] =3D=3D func)=0A=
       onloadFuncts.splice(i, 1);=0A=
   }=0A=
 }=0A=
 =0A=
 function get_query_value(query, name)=0A=
 {=0A=
   if (typeof query !=3D "string" || typeof name !=3D "string")=0A=
     return "";=0A=
   var value =3D query.match('[&?]' + name + '=3D([^&]*)');=0A=
   if (value)=0A=
     return decodeURIComponent(value[1]);=0A=
   else=0A=
     return "";=0A=
 }=0A=
 =0A=
 // cross-browser event attachment (John Resig)=0A=
 // =
http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html=0A=
 function addEvent(obj, type, fn)=0A=
 {=0A=
   if (obj.addEventListener)=0A=
     obj.addEventListener( type, fn, false );=0A=
   else if (obj.attachEvent)=0A=
   {=0A=
     obj["e"+type+fn] =3D fn;=0A=
     obj[type+fn] =3D function() { obj["e"+type+fn]( window.event ); }=0A=
     obj.attachEvent( "on"+type, obj[type+fn] );=0A=
   }=0A=
 }=0A=
 =0A=
 // cross-browser XMLHtttpRequest compatibility=0A=
 if (typeof XMLHttpRequest =3D=3D "undefined")=0A=
  XMLHttpRequest =3D function()=0A=
  {=0A=
    try { return new ActiveXObject("Msxml2.XMLHTTP.6.0"); } catch(e) {};=0A=
    try { return new ActiveXObject("Msxml2.XMLHTTP.3.0"); } catch(e) {};=0A=
    try { return new ActiveXObject("Msxml2.XMLHTTP");     } catch(e) {};=0A=
    try { return new ActiveXObject("Microsoft.XMLHTTP");  } catch(e) {};=0A=
    throw new Error("This browser does not support XMLHttpRequest or =
XMLHTTP.");=0A=
  };=0A=
=0A=
//Adds a dismissable message to the watchlist=0A=
if (wgCanonicalSpecialPageName =3D=3D "Watchlist") =
importScript('MediaWiki:Common.js/WatchlistNotice.js');=0A=
 =0A=
 // Removes the default no-license option for image uploads. =0A=
 // All new image uploads must be tagged with a license or nld=0A=
 function remove_no_license() {=0A=
   if (wgPageName !=3D "Special:Upload")=0A=
     return;=0A=
   var license =3D document.getElementById("wpLicense");=0A=
   if (!license)=0A=
     return;=0A=
   var options =3D license.getElementsByTagName("option");=0A=
   if (!options)=0A=
     return;=0A=
   license.removeChild(options[0]);=0A=
 }=0A=
 =0A=
 addOnloadHook(remove_no_license);=0A=
=0A=
 // import additional scripts //=0A=
 import_script('MediaWiki:Common.js/ExtraTools.js');=0A=
 import_script('MediaWiki:Common.js/Navigation.js');=0A=
 import_script('MediaWiki:Common.js/NavigationTabs.js');=0A=
 import_script('MediaWiki:Common.js/Displaytitle.js');=0A=
 import_script('MediaWiki:Common.js/RandomBook.js');=0A=
 import_script('MediaWiki:Common.js/Edittools.js');=0A=
 =0A=
 // adds buttons to the edit toolbar=0A=
 if (mwCustomEditButtons) =
import_script('MediaWiki:Common.js/EditToolbar.js');=0A=
 =0A=
 //Search within a book using Google//=0A=
 // 0 - Main / 102 - Cookbook / 110 - Wikijunior=0A=
 if ( wgNamespaceNumber =3D=3D 0 || wgNamespaceNumber =3D=3D 102 || =
wgNamespaceNumber =3D=3D 110) =
importScript('MediaWiki:Common.js/BookSearch.js');=0A=
 =0A=
 //</nowiki> End of Common.js=0A=
=0A=
/* MediaWiki:Monobook.js */=0A=
/*=0A=
See also: [[MediaWiki:Common.js]]=0A=
=0A=
<pre>=0A=
*/=0A=
=0A=
/* Functions for adding links to the personal links section and the =
toolbox*/=0A=
function AddPersonalLink(link, text, tag, ibefore)=0A=
{=0A=
  var li =3D document.createElement( 'li' );=0A=
  li.id =3D tag;=0A=
  var a =3D document.createElement( 'a' );=0A=
  a.appendChild( document.createTextNode( text ) ); =0A=
  a.href =3D link;=0A=
  li.appendChild( a );=0A=
  if ( ! ibefore ) // append to end (right) of list=0A=
  {=0A=
     document.getElementById( 'pt-logout' ).parentNode.appendChild( li );=0A=
  }=0A=
  else=0A=
  {=0A=
      var before =3D document.getElementById( ibefore );=0A=
      before.appendChild( li, before );=0A=
  }=0A=
}=0A=
=0A=
function AddToolboxLink(text, href, onclick, linkid) {=0A=
  var tb =3D =
document.getElementById('p-tb').getElementsByTagName('ul')[0];=0A=
  =0A=
  var link =3D document.createElement('a');=0A=
  link.onclick =3D onclick;=0A=
  link.href =3D href;=0A=
  link.appendChild(document.createTextNode(text));=0A=
=0A=
  var li =3D document.createElement('li');=0A=
  li.id =3D linkid;=0A=
  li.appendChild(link);=0A=
=0A=
  tb.insertBefore(li, tb.firstChild);=0A=
  return;=0A=
}=0A=
/*=0A=
</pre>=0A=
*/
------=_NextPart_000_0042_01CA646D.70D01B60
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://en.wikibooks.org/w/extensions/FlaggedRevs/flaggedrevs.js?60

/* -- (c) Aaron Schulz, Daniel Arnold 2008 */=0A=
=0A=
/* Every time you change this JS please bump $wgFlaggedRevStyleVersion =
in FlaggedRevs.php */=0A=
=0A=
/* Hide rating clutter */=0A=
function enable_showhide() {=0A=
	var toggle =3D document.getElementById('mw-revisiontoggle');=0A=
	if( !toggle ) return;=0A=
	toggle.style.display =3D 'inline';=0A=
	var ratings =3D document.getElementById('mw-revisionratings');=0A=
	if( !ratings ) return;=0A=
	ratings.style.display =3D 'none';=0A=
}=0A=
=0A=
/* Toggles ratings */=0A=
function toggleRevRatings() {=0A=
	var ratings =3D document.getElementById('mw-revisionratings');=0A=
	if( !ratings ) return;=0A=
	if( ratings.style.display =3D=3D 'none' ) {=0A=
		ratings.style.display =3D 'inline';=0A=
	} else {=0A=
		ratings.style.display =3D 'none';=0A=
	}=0A=
}=0A=
=0A=
/*=0A=
* a) Disable submit in case of invalid input.=0A=
* b) Update colors when select changes (Opera already does this).=0A=
* c) Also remove comment box clutter in case of invalid input.=0A=
*/=0A=
function updateRatingForm() {=0A=
	var ratingform =3D document.getElementById('mw-ratingselects');=0A=
	if( !ratingform ) return;=0A=
	var disabled =3D document.getElementById('fr-rating-controls-disabled');=0A=
	if( disabled ) return;=0A=
=0A=
	var quality =3D true;=0A=
	var allzero =3D true;=0A=
	var somezero =3D false;=0A=
=0A=
	for( tag in wgFlaggedRevsParams.tags ) {=0A=
		var controlName =3D "wp" + tag;=0A=
		var levels =3D document.getElementsByName(controlName);=0A=
		var selectedlevel =3D 0; // default=0A=
=0A=
		if( levels[0].nodeName =3D=3D 'SELECT' ) {=0A=
			selectedlevel =3D levels[0].selectedIndex;=0A=
			// Update color. Opera does this already, and doing so=0A=
			// seems to kill custom pretty opera skin form styling.=0A=
			if( navigator.appName !=3D 'Opera') {=0A=
				value =3D =
levels[0].getElementsByTagName('option')[selectedlevel].value;=0A=
				levels[0].className =3D 'fr-rating-option-' + value;=0A=
			}=0A=
		} else if( levels[0].type =3D=3D 'radio' ) {=0A=
			for( i =3D 0; i < levels.length; i++ ) {=0A=
				if( levels[i].checked ) {=0A=
					selectedlevel =3D i;=0A=
					break;=0A=
				}=0A=
			}=0A=
		} else if( levels[0].type =3D=3D 'checkbox' ) {=0A=
			selectedlevel =3D (levels[0].checked) ? 1: 0;=0A=
		} else {=0A=
			return; // error: should not happen=0A=
		}=0A=
=0A=
		// Get quality level for this tag=0A=
		qualityLevel =3D wgFlaggedRevsParams.tags[tag];=0A=
=0A=
		if( selectedlevel < qualityLevel ) {=0A=
			quality =3D false; // not a quality review=0A=
		}=0A=
		if( selectedlevel > 0 ) {=0A=
			allzero =3D false;=0A=
		} else {=0A=
			somezero =3D true;=0A=
		}=0A=
	}=0A=
	// Show note box only for quality revs=0A=
	var notebox =3D document.getElementById('mw-notebox');=0A=
	if( notebox ) {=0A=
		notebox.style.display =3D quality ? 'inline' : 'none';=0A=
	}=0A=
	// If only a few levels are zero, don't show submit link=0A=
	var submit =3D document.getElementById('submitreview');=0A=
	submit.disabled =3D ( somezero && !allzero ) ? 'disabled' : '';=0A=
	// Clear note box data if not shown=0A=
	var notes =3D document.getElementById('wpNotes');=0A=
	if( notes ) {=0A=
		notes.value =3D quality ? notes.value : '';=0A=
	}=0A=
}=0A=
=0A=
addOnloadHook(enable_showhide);=0A=
addOnloadHook(updateRatingForm);=0A=
=0A=
// dependencies:=0A=
// * ajax.js:=0A=
  /*extern sajax_init_object, sajax_do_call */=0A=
// * wikibits.js:=0A=
  /*extern hookEvent, jsMsg */=0A=
// These should have been initialized in the generated js=0A=
if( typeof wgAjaxReview =3D=3D=3D "undefined" || !wgAjaxReview ) {=0A=
	wgAjaxReview =3D {=0A=
		sendingMsg: "Submitting...",=0A=
		sentMsgOk: "Review complete!",=0A=
		sentMsgBad: "Review failed!",=0A=
		actioncomplete: "Action complete",=0A=
		actionfailed: "Action failed"=0A=
	};=0A=
}=0A=
=0A=
wgAjaxReview.supported =3D true; // supported on current page and by =
browser=0A=
wgAjaxReview.inprogress =3D false; // ajax request in progress=0A=
wgAjaxReview.timeoutID =3D null; // see wgAjaxReview.ajaxCall=0A=
=0A=
wgAjaxReview.ajaxCall =3D function() {=0A=
	if( !wgAjaxReview.supported ) {=0A=
		return true;=0A=
	} else if( wgAjaxReview.inprogress ) {=0A=
		return false;=0A=
	}=0A=
	if( !wfSupportsAjax() ) {=0A=
		// Lazy initialization so we don't toss up=0A=
		// ActiveX warnings on initial page load=0A=
		// for IE 6 users with security settings.=0A=
		wgAjaxReview.supported =3D false;=0A=
		return true;=0A=
	}=0A=
	var form =3D document.getElementById("mw-reviewform");=0A=
	var notes =3D document.getElementById("wpNotes");=0A=
	var reason =3D document.getElementById("wpReason");=0A=
	if( !form ) {=0A=
		return false;=0A=
	}=0A=
	wgAjaxReview.inprogress =3D true;=0A=
	// Build up arguments=0A=
	var args =3D [];=0A=
	var inputs =3D form.getElementsByTagName("input");=0A=
	for( var i=3D0; i < inputs.length; i++) {=0A=
		// Different input types may occur depending on tags...=0A=
		if( inputs[i].name =3D=3D "title" || inputs[i].name =3D=3D "action" ) {=0A=
			// No need to send these...=0A=
		} else if( inputs[i].type =3D=3D "submit" ) {=0A=
			inputs[i].value =3D wgAjaxReview.sendingMsg;=0A=
		} else if( inputs[i].type =3D=3D "checkbox" ) {=0A=
			args.push( inputs[i].name + "|" + (inputs[i].checked ? 1 : 0) );=0A=
		} else if( inputs[i].type !=3D "radio" || inputs[i].checked ) {=0A=
			args.push( inputs[i].name + "|" + inputs[i].value );=0A=
		}=0A=
		inputs[i].disabled =3D "disabled";=0A=
	}=0A=
	if( notes ) {=0A=
		args.push( notes.name + "|" + notes.value );=0A=
		notes.disabled =3D "disabled";=0A=
	}=0A=
	var selects =3D form.getElementsByTagName("select");=0A=
	for( var i=3D0; i < selects.length; i++) {=0A=
		// Get the selected tag level...=0A=
		if( selects[i].selectedIndex >=3D 0 ) {=0A=
			var soption =3D =
selects[i].getElementsByTagName("option")[selects[i].selectedIndex];=0A=
			args.push( selects[i].name + "|" + soption.value );=0A=
		}=0A=
		selects[i].disabled =3D "disabled";=0A=
	}=0A=
	// Send!=0A=
	var old =3D sajax_request_type;=0A=
	sajax_request_type =3D "POST";=0A=
	sajax_do_call( "RevisionReview::AjaxReview", args, =
wgAjaxReview.processResult );=0A=
	sajax_request_type =3D old;=0A=
	// If the request isn't done in 30 seconds, allow user to try again=0A=
	wgAjaxReview.timeoutID =3D window.setTimeout(=0A=
		function() { wgAjaxReview.inprogress =3D false; =
wgAjaxReview.unlockForm(); },=0A=
		30000=0A=
	);=0A=
	return false;=0A=
};=0A=
=0A=
wgAjaxReview.unlockForm =3D function() {=0A=
	var form =3D document.getElementById("mw-reviewform");=0A=
	var submit =3D document.getElementById("submitreview");=0A=
	var notes =3D document.getElementById("wpNotes");=0A=
	var reason =3D document.getElementById("wpReason");=0A=
	if( !form || !submit ) {=0A=
		return false;=0A=
	}=0A=
	submit.disabled =3D "";=0A=
	var inputs =3D form.getElementsByTagName("input");=0A=
	for( var i=3D0; i < inputs.length; i++) {=0A=
		inputs[i].disabled =3D "";=0A=
	}=0A=
	if( notes ) {=0A=
		notes.disabled =3D "";=0A=
	}=0A=
	if( reason ) {=0A=
		reason.disabled =3D "";=0A=
	}=0A=
	var selects =3D form.getElementsByTagName("select");=0A=
	for( var i=3D0; i < selects.length; i++) {=0A=
		selects[i].disabled =3D "";=0A=
	}=0A=
};=0A=
=0A=
wgAjaxReview.processResult =3D function(request) {=0A=
	if( !wgAjaxReview.supported ) {=0A=
		return;=0A=
	}=0A=
	var response =3D request.responseText;=0A=
	if( msg =3D response.substr(6) ) {=0A=
		jsMsg( msg, 'review' ); // success notice=0A=
		window.scroll(0,0); // scroll up to notice=0A=
		tagBox =3D document.getElementById('mw-revisiontag');=0A=
		if( tagBox ) tagBox.style.display =3D 'none'; // remove tag from draft=0A=
	}=0A=
	wgAjaxReview.inprogress =3D false;=0A=
	if( wgAjaxReview.timeoutID ) {=0A=
		window.clearTimeout(wgAjaxReview.timeoutID);=0A=
	}=0A=
	var submit =3D document.getElementById("submitreview");=0A=
	if( response.indexOf('<suc#>') =3D=3D 0 ) {=0A=
		document.title =3D wgAjaxReview.actioncomplete;=0A=
		if( submit ) submit.value =3D wgAjaxReview.sentMsgOk;=0A=
	} else {=0A=
		document.title =3D wgAjaxReview.actionfailed;=0A=
		if( submit ) submit.value =3D wgAjaxReview.sentMsgBad;=0A=
	}=0A=
	wgAjaxReview.unlockForm();=0A=
};=0A=
=0A=
wgAjaxReview.onLoad =3D function() {=0A=
	var submit =3D document.getElementById("submitreview");=0A=
	if( submit ) {=0A=
		submit.onclick =3D wgAjaxReview.ajaxCall;=0A=
	}=0A=
};=0A=
=0A=
hookEvent("load", wgAjaxReview.onLoad);=0A=

------=_NextPart_000_0042_01CA646D.70D01B60--
