From: <Salvato con Microsoft Internet Explorer 5>
Subject: SpringerLink - Journal Article
Date: Wed, 23 Aug 2006 19:26:42 +0200
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0082_01C6C6EA.10068EF0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2962

This is a multi-part message in MIME format.

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/content/p813n622n247l40v/?p=871be18825864d8386a51d5870bc51b1&pi=17

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD id=3D_ctl0_Head><TITLE>SpringerLink - Journal =
Article</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dutf-8"><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.=
Controls.RecognizedAsControl.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.=
Controls.LoggedInAsControl.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.=
Controls.LogOutControl.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.=
Controls.FooterControl.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/master-menu.css" type=3Dtext/css=20
rel=3Dstylesheet><LINK href=3D"http://www.springerlink.com/master.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.=
Controls.FindSidebarItem.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Web.UI.Controls.Advance=
dTextBox.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MPReader.Profiles.SpringerLink.Co=
ntent.PrimitiveHeadingControl.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.=
Controls.QueryBuilderControl.css"=20
type=3Dtext/css rel=3Dstylesheet>
<META http-equiv=3DPage-Exit content=3DblendTrans(Duration=3D0)>
<META content=3D"MSHTML 6.00.2900.2963" name=3DGENERATOR></HEAD>
<BODY>
<SCRIPT>
  function handleError(message, pageUrl, lineNumber)=20
  {=20
    MetaPress.Web.UI.Page.LogError(message, pageUrl, lineNumber);=20
  }=20

  window.onerror =3D handleError;
</SCRIPT>

<SCRIPT src=3D"http://www.springerlink.com/ajaxpro/prototype.ashx"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.springerlink.com/ajaxpro/core.ashx"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.springerlink.com/ajaxpro/ms.ashx"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.springerlink.com/ajaxpro/converter.ashx"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/ajaxpro/MetaPress.Web.UI.Page,MetaPres=
s.Web.ashx"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/ajaxpro/MetaPress.Products.Reader.Web.=
UI.PrimitiveHeadingControl,MetaPress.Products.Reader.ashx"=20
type=3Dtext/javascript></SCRIPT>

<FORM id=3D__aspnetForm name=3D__aspnetForm=20
action=3D?p=3D871be18825864d8386a51d5870bc51b1&amp;pi=3D17 =
method=3Dpost><INPUT=20
type=3Dhidden name=3D__EVENTTARGET> <INPUT type=3Dhidden =
name=3D__EVENTARGUMENT> <INPUT=20
type=3Dhidden value=3DdDwwOzs+ name=3D__VIEWSTATE>
<SCRIPT language=3Djavascript type=3Dtext/javascript>
<!--
	function __doPostBack(eventTarget, eventArgument) {
		var theform;
		if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1) =
{
			theform =3D document.__aspnetForm;
		}
		else {
			theform =3D document.forms["__aspnetForm"];
		}
		theform.__EVENTTARGET.value =3D eventTarget.split("$").join(":");
		theform.__EVENTARGUMENT.value =3D eventArgument;
		theform.submit();
	}
// -->
</SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.SelectedItemsHyperLin=
k.js,MetaPress.Web.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.Positioning.js,MetaPr=
ess.Web.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT>=20
  var isIE =3D false;=20
</SCRIPT>
<!--[if IE]>
<SCRIPT>=20
    isIE =3D true;=20
  </SCRIPT>
<![endif]-->
<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Products.Reader.Primitive=
HeadingControl.js,MetaPress.Products.Reader.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.Common.js,MetaPress.W=
eb.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.Latex.js,MetaPress.We=
b.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT>function =
contributionPage_toogleReferrers(){toggleVisibility(getElement('Referrers=
List'),'block');toggleVisibility(getElement('ReferrersListExpand'),'inlin=
e');toggleVisibility(getElement('ReferrersListCollapse'),'inline');};</SC=
RIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.PopOutMenuItem.js,Met=
aPress.Web.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.SelectedItems.js,Meta=
Press.Web.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
src=3D"http://www.springerlink.com/jsMath/plugins/noImageFonts.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.springerlink.com/jsMath/plugins/autoload.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.HyperLinkButton.js,Me=
taPress.Web.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.DefaultTextBox.js,Met=
aPress.Web.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Products.Reader.QueryBuil=
derControl.js,MetaPress.Products.Reader.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.springerlink.com/js/MetaPress.Web.AdvancedTextBox.js,Me=
taPress.Web.js"=20
type=3Dtext/javascript></SCRIPT>
=20
<TABLE class=3DouterTable cellSpacing=3D0 cellPadding=3D0>
  <TBODY>
  <TR vAlign=3Dtop>
    <TD class=3DleftMainColumn>
      <DIV class=3Dlogo><A =
href=3D"http://www.springerlink.com/home/main.mpx"><IMG=20
      height=3D50 =
src=3D"http://www.springerlink.com/images/springerlink-logo.gif"=20
      width=3D180> </A></DIV>
      <DIV id=3D_ctl0_PersonalizationPanel>
      <DIV=20
      =
class=3DMetaPress_Products_Reader_Web_UI_Controls_RecognizedAsControlBody=
><A=20
      =
href=3D"http://auth.athensams.net/?ath_returl=3D%22http%3a%2f%2fwww.sprin=
gerlink.com%2f(tgx3swucgpdlkwn3ym31tz45)%2fdefault.asp%3faction%3dformsub=
mit%26referrer%3dathens%22&amp;ath_dspid=3DSPRINGER">Athens=20
      Authentication Point</A> </DIV>
      <DIV=20
      =
class=3DMetaPress_Products_Reader_Web_UI_Controls_LoggedInAsControlHeadin=
g>Logged=20
      in as: </DIV>
      <DIV=20
      =
class=3DMetaPress_Products_Reader_Web_UI_Controls_LoggedInAsControlBody><=
A=20
      href=3D"https://www.springerlink.com/identities/me/">Giovanni =
Camporeale=20
      <NOBR>(146-77-101)</NOBR></A> </DIV>
      <DIV =
class=3DMetaPress_Products_Reader_Web_UI_Controls_LogOutControlBody><A=20
      href=3D"http://www.springerlink.com/log-out.mpx">Log Out</A> =
</DIV>
      <DIV class=3DPersonalizationMenuHeader>My SpringerLink </DIV>
      <DIV class=3DdefaultPadding>
      <DIV class=3DPersonalizationMenuItem><A=20
      id=3D_ctl0__ctl22__ctl1_MarkedItemsLink=20
      href=3D"http://www.springerlink.com/marked-items/" =
displayCount=3D"true"=20
      isSelectedItemsLink=3D"true" =
collection=3D"SelectedPrimitives">Marked=20
      Items<SPAN =
id=3D_ctl0__ctl22__ctl1_MarkedItemsLink_Count>&nbsp;</SPAN></A>=20
      </DIV>
      <DIV class=3DPersonalizationMenuItem><A=20
      =
href=3D"http://www.springerlink.com/personalization/saved-items.mpx?view=3D=
alertable">Alerts=20
      </A></DIV>
      <DIV class=3DPersonalizationMenuItem><A=20
      href=3D"http://www.springerlink.com/account/orders.mpx">Order =
History=20
      </A></DIV></DIV>
      <DIV class=3DPersonalizationMenuHeader>Saved Items </DIV>
      <DIV class=3DdefaultPadding>
      <DIV class=3DPersonalizationMenuItem><A=20
      =
href=3D"http://www.springerlink.com/personalization/saved-items.mpx"=20
      count=3D"0" label=3D"All">All </A></DIV>
      <DIV class=3DPersonalizationMenuItem><A=20
      =
href=3D"http://www.springerlink.com/personalization/saved-items.mpx?label=
=3DFavorites"=20
      count=3D"0" label=3D"Favorites">Favorites =
</A></DIV></DIV></DIV></TD>
    <TD>
      <TABLE height=3D"100%" cellSpacing=3D0 cellPadding=3D0>
        <TBODY>
        <TR vAlign=3Dtop height=3D*>
          <TD>
            <DIV class=3DheaderBackground>
            <DIV class=3DheaderTop>
            <DIV class=3DsearchPanel id=3D_ctl0_MenuPanel>
            <UL class=3DdropDownMenu>
              <LI class=3D" collapsed" id=3DContentTypesMenuItem=20
              direction=3D"vertical"><A class=3DnoScriptLink =
onclick=3D"return false;"=20
              =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17&amp;ContentTypes=3DTrue">Content=20
              Types </A>
              <UL>
                <LI><A href=3D"http://www.springerlink.com/content/">All =
</A></LI>
                <LI><A =
href=3D"http://www.springerlink.com/journals/">Journals=20
                </A></LI>
                <LI><A =
href=3D"http://www.springerlink.com/book-series/">Book=20
                Series </A></LI>
                <LI><A href=3D"http://www.springerlink.com/books/">Books =
</A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/reference-works/">Reference=20
                Works </A></LI></UL></LI>
              <LI class=3D" collapsed" id=3DSubjectsMenuItem =
direction=3D"vertical"><A=20
              class=3DnoScriptLink onclick=3D"return false;"=20
              =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17&amp;Subjects=3DTrue">Subjects=20
              </A>
              <UL>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/architecture-design-and-arts/">Archit=
ecture,=20
                Design and Arts </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/behavioral-science/">Behavioral=20
                Science </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/biomedical-and-life-sciences/">Biomed=
ical=20
                and Life Sciences </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/business-and-economics/">Business=20
                and Economics </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/chemistry-and-materials-science/">Che=
mistry=20
                and Materials Science </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/computer-science/">Computer=20
                Science </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/earth-and-environmental-science/">Ear=
th=20
                and Environmental Science </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/engineering/">Engineering=20
                </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/humanities-social-sciences-and-law/">=
Humanities,=20
                Social Sciences and Law </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/mathematics-and-statistics/">Mathemat=
ics=20
                and Statistics </A></LI>
                <LI><A =
href=3D"http://www.springerlink.com/medicine/">Medicine=20
                </A></LI>
                <LI><A=20
                =
href=3D"http://www.springerlink.com/physics-and-astronomy/">Physics=20
                and Astronomy </A></LI></UL></LI></UL></DIV><SPAN =
class=3DcultureList=20
            id=3D_ctl0_CultureDropDownList><SELECT language=3Djavascript =

            id=3D_ctl0_CultureDropDownList_List=20
            =
onchange=3D"__doPostBack('_ctl0$CultureDropDownList$List','')"=20
            name=3D_ctl0:CultureDropDownList:List> <OPTION=20
              =
value=3Dzh-cn>=E4=B8=AD=E6=96=87(=E7=AE=80=E4=BD=93)</OPTION> <OPTION =
value=3Dzh-tw>=E4=B8=AD=E6=96=87(=E7=B9=81=E9=AB=94)</OPTION>=20
              <OPTION value=3Den-us selected>English</OPTION> <OPTION=20
              value=3Dde-de>Deutsch</OPTION> <OPTION=20
            =
value=3Dko-kr>=ED=95=9C=EA=B5=AD=EC=96=B4</OPTION></SELECT><INPUT =
class=3D"button defaultButtonSpacing" =
id=3D_ctl0_CultureDropDownList_GoButton =
onmouseover=3D"className=3D'button buttonHover';" =
onmouseout=3D"className=3D'button';" type=3Dsubmit value=3DGo =
name=3D_ctl0:CultureDropDownList:GoButton></SPAN>=20
            </DIV>
            <DIV class=3DheaderBottom id=3D_ctl0_HeadingPanel>
            <TABLE cellSpacing=3D0 cellPadding=3D0>
              <TBODY>
              <TR class=3DfontSmaller>
                <TD><SPAN class=3DbackToHeader>Back to:</SPAN> <A =
class=3Dbackto=20
                  id=3D_ctl0_PageBackToLinks__ctl1__ctl0_0=20
                  =
href=3D"http://www.springerlink.com/content/1573-7373/?p=3Ddb2e0627d88449=
ec8c1e59e1fab021cf&amp;p_o=3D20">Journal</A>=20
                  <SPAN class=3DbackToSeperator>\</SPAN> <A =
class=3Dbackto=20
                  id=3D_ctl0_PageBackToLinks__ctl3__ctl0_1=20
                  =
href=3D"http://www.springerlink.com/content/r213xp022043/?p=3D89d35071448=
f4a06b788331748dbaaed&amp;p_o=3D6">Journal=20
                  Issue</A> <SPAN class=3DbackToSeperator>\</SPAN> <A =
class=3Dbackto=20
                  id=3D_ctl0_PageBackToLinks__ctl5__ctl0_2=20
                  =
href=3D"http://www.springerlink.com/content/q52987031277/?p=3D871be188258=
64d8386a51d5870bc51b1&amp;p_o=3D17">Journal=20
                  Issue</A> &nbsp; </TD>
                <TD align=3Dright><A class=3DparentNavigation=20
                  =
href=3D"http://www.springerlink.com/content/f13057664871971r/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D16">Previous=20
                  Article</A> &nbsp;&nbsp; <A class=3DparentNavigation=20
                  =
href=3D"http://www.springerlink.com/content/y471505845086452/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D18">Next=20
                  Article</A> </TD></TR>
              <TR>
                <TD style=3D"HEIGHT: 2.6em" vAlign=3Dbottom><SPAN =
class=3DfontLarger=20
                  id=3D_ctl0_PageHeadingLabel>Journal Article</SPAN> =
</TD>
                <TD vAlign=3Dbottom align=3Dright><A=20
                  =
onmouseover=3D"firstChild.src=3D'/images/print-hover.gif'"=20
                  title=3D"Printable view"=20
                  =
onclick=3D"window.open('/content/p813n622n247l40v/?p=3D871be18825864d8386=
a51d5870bc51b1&amp;pi=3D17&amp;print=3Dtrue', 'Print', 'width=3D640, =
height=3D480, resizable=3Dyes,  scrollbars=3Dyes'); return false;"=20
                  onmouseout=3D"firstChild.src=3D'/images/print.gif'"=20
                  =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17&amp;print=3Dtrue"=20
                  target=3D_blank><IMG height=3D24=20
                  src=3D"http://www.springerlink.com/images/print.gif"=20
                  width=3D24><SPAN class=3DtoolbarText></SPAN></A>=20
            </TD></TR></TBODY></TABLE></DIV>
            <DIV id=3D_ctl0_PageHeadingPanel></DIV></DIV>
            <DIV class=3DprimitiveControl>
            <TABLE=20
            =
class=3DMPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControl=20
            cellSpacing=3D0 cellPadding=3D0>
              <TBODY>
              <TR vAlign=3Dtop>
                <TD=20
                =
class=3DMPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlCov=
erImage>
                  <DIV><IMG height=3D132 alt=3D"Journal of =
Neuro-Oncology"=20
                  =
src=3D"http://www.springerlink.com/content/102942/cover-image-medium.gif"=
=20
                  width=3D95> </DIV></TD>
                <TD>
                  <DIV=20
                  =
class=3DMPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlNam=
e>Systemic=20
                  Temozolomide Combined with Loco-regional Mitoxantrone =
in=20
                  Treating Recurrent Glioblastoma </DIV>
                  <TABLE cellSpacing=3D0 cellPadding=3D0>
                    <TBODY>
                    <TR>
                      <TD class=3DlabelName>Journal</TD>
                      <TD class=3DlabelValue><A=20
                        =
href=3D"http://www.springerlink.com/content/1573-7373/">Journal=20
                        of Neuro-Oncology</A></TD></TR>
                    <TR>
                      <TD class=3DlabelName>Publisher</TD>
                      <TD class=3DlabelValue>Springer =
Netherlands</TD></TR>
                    <TR>
                      <TD class=3DlabelName>ISSN</TD>
                      <TD class=3DlabelValue>0167-594X (Print) 1573-7373 =

                      (Online)</TD></TR>
                    <TR>
                      <TD class=3DlabelName>Subject</TD>
                      <TD class=3DlabelValue><A=20
                        =
href=3D"http://www.springerlink.com/medicine/">Medicine</A></TD></TR>
                    <TR>
                      <TD class=3DlabelName>Issue</TD>
                      <TD class=3DlabelValue><A=20
                        =
href=3D"http://www.springerlink.com/content/q52987031277/">Volume=20
                        75, Number 2 / November, 2005</A></TD></TR>
                    <TR>
                      <TD class=3DlabelName>Category</TD>
                      <TD class=3DlabelValue>Clinical Study</TD></TR>
                    <TR>
                      <TD class=3DlabelName>DOI</TD>
                      <TD =
class=3DlabelValue>10.1007/s11060-005-3030-x</TD></TR>
                    <TR>
                      <TD class=3DlabelName>Pages</TD>
                      <TD class=3DlabelValue>215-220</TD></TR>
                    <TR>
                      <TD class=3DlabelName>Online Date</TD>
                      <TD class=3DlabelValue>Friday, November 11,=20
                    2005</TD></TR></TBODY></TABLE></TD>
                <TD=20
                =
class=3DMPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlSec=
ondaryLinks=20
                vAlign=3Dtop>
                  <DIV=20
                  =
class=3DMPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlMar=
kedItemLink><A=20
                  =
id=3D_ctl0_PageHeadingContent__ctl0_ToggleMarkedItemLinkButton=20
                  onclick=3D"return hyperLinkButton_onClick(event);"=20
                  =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17&amp;mark=3Dp813n622n247l40v"=20
                  unselectedText=3D"Add to marked items"=20
                  selectedText=3D"Remove from marked items"=20
                  onClickMethod=3D"primitiveHeadingControl_markItem" =
key=3D"mark"=20
                  value=3D"p813n622n247l40v"><SPAN>Add to marked =
items</SPAN></A>=20
                  </DIV>
                  <DIV><A=20
                  =
href=3D"http://www.springerlink.com/personalization/save-item.mpx?code=3D=
p813n622n247l40v">Add=20
                  to saved items</A> </DIV>
                  <DIV><A=20
                  =
href=3D"http://www.springerlink.com/personalization/email-item.mpx?code=3D=
p813n622n247l40v">Recommend=20
                  this article</A> =
</DIV></TD></TR></TBODY></TABLE></DIV>
            <TABLE height=3D"100%" cellSpacing=3D4 cellPadding=3D0>
              <TBODY>
              <TR>
                <TD class=3DdefaultHeight vAlign=3Dtop width=3D"100%">
                  <DIV class=3Dblob>
                  <P></P>
                  <H2 class=3Drubric>Clinical Study</H2>
                  <DIV class=3DHeading1><A name=3Dtitle></A>Systemic =
Temozolomide=20
                  Combined with Loco-regional Mitoxantrone in Treating =
Recurrent=20
                  Glioblastoma </DIV>
                  <P class=3DAuthorGroup>A.&nbsp;Boiardi<SUP>1&nbsp;<A=20
                  =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#ContactOfAuthor1"><IMG=20
                  alt=3D"Contact Information"=20
                  src=3D"http://www.springerlink.com/images/contact.gif" =

                  border=3D0></A></SUP>, M.&nbsp;Eoli<SUP>1</SUP>,=20
                  A.&nbsp;Salmaggi<SUP>1</SUP>, =
E.&nbsp;Lamperti<SUP>1</SUP>,=20
                  A.&nbsp;Botturi<SUP>1</SUP>, =
G.&nbsp;Broggi<SUP>2</SUP>,=20
                  L.&nbsp;Bissola<SUP>3</SUP>, =
G.&nbsp;Finocchiaro<SUP>3</SUP>=20
                  and A.&nbsp;Silvani<SUP>1</SUP></P>
                  <TABLE>
                    <TBODY>
                    <TR vAlign=3Dtop>
                      <TD><SPAN class=3DAffiliation><A=20
                        name=3DAff1></A>(1)&nbsp;</SPAN></TD>
                      <TD><SPAN class=3DAffiliation>Department of=20
                        Neuro-Oncology, Istituto Nazionale Neurologico =
=E2=80=9CCarlo=20
                        Besta=E2=80=9D, =
Italy</SPAN></TD></TR></TBODY></TABLE>
                  <TABLE>
                    <TBODY>
                    <TR vAlign=3Dtop>
                      <TD><SPAN class=3DAffiliation><A=20
                        name=3DAff2></A>(2)&nbsp;</SPAN></TD>
                      <TD><SPAN class=3DAffiliation>Department of =
Neurosurgery,=20
                        Istituto Nazionale Neurologico =E2=80=9CCarlo =
Besta=E2=80=9D,=20
                        Italy</SPAN></TD></TR></TBODY></TABLE>
                  <TABLE>
                    <TBODY>
                    <TR vAlign=3Dtop>
                      <TD><SPAN class=3DAffiliation><A=20
                        name=3DAff3></A>(3)&nbsp;</SPAN></TD>
                      <TD><SPAN class=3DAffiliation>Unit of Experimental =

                        Neuro-Oncology and Gene Therapy, Istituto =
Nazionale=20
                        Neurologico =E2=80=9CCarlo Besta=E2=80=9D, =
Milano,=20
                    Italy</SPAN></TD></TR></TBODY></TABLE>
                  <P class=3DAffiliation></P>
                  <DIV class=3DAbstract><A name=3DAbs1></A><SPAN=20
                  =
class=3DAbstractHeading>Abstract&nbsp;&nbsp;</SPAN>Twenty-two=20
                  recurrent GBM patients were enrolled for second tumor=20
                  debulking with local positioning of a Rickam =
reservoir, in=20
                  order to locally deliver chemotherapy with the aim of=20
                  controlling local tumor recurrence. We designed a =
protocol=20
                  using systemic temozolomide (150&nbsp;mg/sqm days =
1=E2=80=935 every=20
                  28) in association with mitoxantrone, delivered =
through the=20
                  reservoir (4&nbsp;mg/day 1=E2=80=935 every 28) =
positioned into the=20
                  area of tumor exeresis. After re-operation a residual =
tumor=20
                  mass no larger than 2&nbsp;cm was identified in 18/22=20
                  patients. The patients were treated with monthly =
cycles of=20
                  chemotherapy until evolution of the tumor, but in no =
case for=20
                  more than 10 cycles. Responses were evaluated by MRI =
scans=20
                  performed every 2&nbsp;months and images assessed =
according to=20
                  MacDonald=E2=80=99s criteria. Response rate: no =
complete responses=20
                  (CR), 5 partial responses (PR), 13 stable disease (SD) =
and 4=20
                  progressive disease (PD) occurred. The median =
progression-free=20
                  survival (PFS) and survival time (ST) of the whole =
group of=20
                  treated patients was 7 and 11&nbsp;months, =
respectively and=20
                  more than a quarter of the patients survived over=20
                  18&nbsp;months. During the study, the =
patients=E2=80=99 compliance was=20
                  complete and no dropouts occurred. Hematological =
toxicity was=20
                  mild and after repeated local injections only minor=20
                  neurological side-effects occurred. Despite some bias =
in=20
                  patients=E2=80=99 selection not excluded in this pilot =
study, results=20
                  are interesting: the PFS was as long as the survival =
of=20
                  recurrent GBM reported in the literature. </DIV>
                  <P class=3DKeyword><SPAN=20
                  =
class=3DKeywordHeading>Keywords&nbsp;&nbsp;</SPAN>loco-regional=20
                  =
chemotherapy&nbsp;-&nbsp;mitoxantrone&nbsp;-&nbsp;recurrent=20
                  glioblastoma&nbsp;-&nbsp;Rickam=20
                  reservoir&nbsp;-&nbsp;temozolomide </P>
                  <HR>

                  <P><A name=3DContactOfAuthor1></A></P>
                  <TABLE class=3DContact>
                    <TBODY>
                    <TR>
                      <TD vAlign=3Dtop><IMG alt=3D"Contact Information"=20
                        =
src=3D"http://www.springerlink.com/images/contact.gif"=20
                        border=3D0></TD>
                      =
<TD><STRONG>A.&nbsp;</STRONG><STRONG>Boiardi</STRONG><BR><STRONG>Email:=20
                        </STRONG><A=20
                        =
href=3D"mailto:boiardi@istituto-besta.it">boiardi@istituto-besta.it</A></=
TD></TR></TBODY></TABLE></DIV>
                  <P>References secured to subscribers.</P></TD>
                <TD vAlign=3Dtop bgColor=3D#ececec>
                  <DIV class=3D"defaultPadding sidebarHeading">
                  <DIV class=3DfloatRight><A style=3D"COLOR: #ffffff"=20
                  href=3D"http://www.springerlink.com/find.mpx">more =
options=20
                  </A></DIV>Find </DIV>
                  <DIV class=3D"defaultPadding sidebarBody">
                  <DIV=20
                  =
class=3DMetaPress_Products_Reader_Web_UI_Controls_FindSidebarItem><SPAN=20
                  class=3D"textBox =
MetaPress_Web_UI_Controls_AdvancedTextBox"=20
                  =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_FindTextBox=20
                  key=3D"advancedTextBox" da=3D"1"><INPUT =
class=3DadvancedTextBox=20
                  =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_FindTextBox_MainTe=
xtBox=20
                  =
name=3D_ctl0:PageSidebar:_ctl0:Sidebarplaceholder1:_ctl0:FindTextBox:Main=
TextBox=20
                  key=3D"text"=20
                  =
target=3D"_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_FindTextBox_G=
oButton"=20
                  action=3D"click"><INPUT =
class=3D"advancedTextBoxExpandButton buttonContainer" =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_FindTextBox_Expand=
Button onmouseover=3D"className=3D'advancedTextBoxExpandButton =
buttonContainer advancedTextBoxExpandButton buttonContainerHover';" =
onclick=3D"return advancedTextBox_toggle(event);" =
onmouseout=3D"className=3D'advancedTextBoxExpandButton =
buttonContainer';" type=3Dsubmit value=3D... =
name=3D_ctl0:PageSidebar:_ctl0:Sidebarplaceholder1:_ctl0:FindTextBox:Expa=
ndButton key=3D"expand"><INPUT class=3D"advancedTextBoxGoButton =
buttonContainer defaultButtonSpacing" =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_FindTextBox_GoButt=
on onmouseover=3D"className=3D'advancedTextBoxGoButton buttonContainer =
advancedTextBoxGoButton buttonContainerHover';" =
onmouseout=3D"className=3D'advancedTextBoxGoButton buttonContainer';" =
type=3Dsubmit value=3DGo =
name=3D_ctl0:PageSidebar:_ctl0:Sidebarplaceholder1:_ctl0:FindTextBox:GoBu=
tton key=3D"go">
                  <DIV class=3DadvancedTextBoxContents=20
                  =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_FindTextBox_Conten=
ts=20
                  key=3D"contents">
                  <DIV class=3D"queryBuilder floatContainer">
                  <DIV class=3Dtitle><SPAN>Query Builder</SPAN> <SPAN=20
                  class=3DrightLink=20
                  onclick=3DqueryBuilder_close(event);>Close</SPAN> =
<SPAN=20
                  class=3DrightLinkSeperator>|</SPAN> <SPAN =
class=3DrightLink=20
                  onclick=3DqueryBuilder_clear(event);>Clear</SPAN> =
</DIV>
                  <DIV class=3Dlist><!--<div>Fields</div>-->
                  <UL key=3D"fieldList">
                    <LI class=3DfirstItem arg=3D"ti:()"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">Title=20
                    (ti)</A> </LI>
                    <LI arg=3D"su:()"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">Summary=20
                    (su)</A> </LI>
                    <LI arg=3D"au:()"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">Author=20
                    (au)</A> </LI>
                    <LI arg=3D"issn:()"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">ISSN=20
                    (issn)</A> </LI>
                    <LI arg=3D"isbn:()"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">ISBN=20
                    (isbn)</A> </LI>
                    <LI arg=3D"doi:()"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">DOI=20
                    (doi)</A> </LI></UL></DIV>
                  <DIV class=3Dlist><!--<div>Operators</div>-->
                  <UL key=3D"operatorList">
                    <LI class=3DfirstItem arg=3D" AND "><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">And</A>=20
                    </LI>
                    <LI arg=3D" OR "><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">Or</A>=20
                    </LI>
                    <LI arg=3D" NOT "><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">Not</A>=20
                    </LI>
                    <LI arg=3D" ("><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">(</A>=20
                    </LI>
                    <LI arg=3D") "><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">)</A>=20
                    </LI>
                    <LI arg=3D"*"><A=20
                    =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/?p=3D871be18=
825864d8386a51d5870bc51b1&amp;pi=3D17#">*=20
                    (wildcard)</A> =
</LI></UL></DIV></DIV></DIV></SPAN></DIV>
                  <DIV>
                  <TABLE=20
                  =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0=20
                  style=3D"BORDER-COLLAPSE: collapse" cellSpacing=3D0 =
cellPadding=3D0=20
                  border=3D0>
                    <TBODY>
                    <TR>
                      <TD><INPUT=20
                        =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0_0=20
                        type=3Dradio CHECKED value=3DLegacyJournalIssue=20
                        =
name=3D_ctl0:PageSidebar:_ctl0:Sidebarplaceholder1:_ctl0:_ctl0><LABEL=20
                        =
for=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0_0>Within=20
                        this issue</LABEL></TD></TR>
                    <TR>
                      <TD><INPUT=20
                        =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0_1=20
                        type=3Dradio value=3DLegacyJournal=20
                        =
name=3D_ctl0:PageSidebar:_ctl0:Sidebarplaceholder1:_ctl0:_ctl0><LABEL=20
                        =
for=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0_1>Within=20
                        this journal</LABEL></TD></TR>
                    <TR>
                      <TD><INPUT=20
                        =
id=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0_2=20
                        type=3Dradio value=3DAllContent=20
                        =
name=3D_ctl0:PageSidebar:_ctl0:Sidebarplaceholder1:_ctl0:_ctl0><LABEL=20
                        =
for=3D_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0__ctl0_2>Within=20
                        all =
content</LABEL></TD></TR></TBODY></TABLE></DIV></DIV>
                  <DIV class=3D"defaultPadding sidebarHeading">Export =
this article=20
                  </DIV>
                  <DIV class=3D"defaultPadding sidebarBody">
                  <TABLE cellSpacing=3D0 cellPadding=3D0>
                    <TBODY>
                    <TR>
                      <TD><SPAN=20
                        =
id=3D_ctl0_PageSidebar__ctl1_Sidebarplaceholder1__ctl1_ContentTypeLabel>E=
xport=20
                        this article as </SPAN><A=20
                        =
id=3D_ctl0_PageSidebar__ctl1_Sidebarplaceholder1__ctl1_RisExportLinkButto=
n=20
                        =
href=3D"javascript:__doPostBack('_ctl0$PageSidebar$_ctl1$Sidebarplacehold=
er1$_ctl1$RisExportLinkButton','')">RIS</A>|<A=20
                        =
id=3D_ctl0_PageSidebar__ctl1_Sidebarplaceholder1__ctl1_TextExportLinkButt=
on=20
                        =
href=3D"javascript:__doPostBack('_ctl0$PageSidebar$_ctl1$Sidebarplacehold=
er1$_ctl1$TextExportLinkButton','')">Text</A>=20
                      </TD></TR>
                    <TR>
                      <TD>&nbsp; </TD></TR></TBODY></TABLE></DIV>
                  <DIV class=3D"defaultPadding sidebarHeading">Text =
</DIV>
                  <DIV class=3D"defaultPadding sidebarBody">
                  <DIV>
                  <H5>PDF </H5>
                  <P>The size of this document is 225 kilobytes. =
Although it may=20
                  be a lengthier download, this is the most =
authoritative online=20
                  format.</P>
                  <P>Open: <A=20
                  =
href=3D"http://www.springerlink.com/content/p813n622n247l40v/fulltext.pdf=
">Entire=20
                  =
document</A></P></DIV></DIV></TD></TR></TBODY></TABLE></TD></TR>
        <TR height=3D10>
          <TD class=3DdefaultPadding>
            <DIV class=3DdefaultPaddingBottom><A=20
            =
href=3D"http://www.springerlink.com/help/default.mpx">Frequently asked=20
            questions </A>| <A href=3D"http://www.springeronline.com/"=20
            target=3D_blank>General information on journals and books =
</A>| <A=20
            href=3D"http://www.springerlink.com/feedback.mpx">Send us =
your=20
            feedback </A></DIV>
            <DIV class=3DdefaultPaddingBottom>=C2=A9 Springer. <A=20
            href=3D"http://www.springer-sbm.de/" target=3D_blank>Part of =
Springer=20
            Science+Business Media </A></DIV>
            <DIV class=3DdefaultPaddingBottom><A=20
            =
href=3D"http://www.springerlink.com/help/disclaimer.mpx">Privacy,=20
            Disclaimer, Terms and Conditions, =C2=A9 Copyright =
Information </A></DIV>
            <DIV =
class=3DMetaPress_Products_Reader_Web_UI_Controls_FooterControl>
            <DIV=20
            =
class=3DMetaPress_Products_Reader_Web_UI_Controls_FooterControlUserDetail=
s>Remote=20
            =
Address:&nbsp;151.37.176.16&nbsp;=E2=80=A2&nbsp;Server:&nbsp;mpweb03<BR>H=
TTP=20
            User Agent:&nbsp;Mozilla/4.0 (compatible; MSIE 6.0; Windows =
NT 5.1;=20
            =
SV1)<BR><BR></DIV></DIV></TD></TR></TBODY></TABLE></TD></TR></TBODY></TAB=
LE>
<SCRIPT>document.getElementById('_ctl0_CultureDropDownList_GoButton').sty=
le.display =3D 'none';</SCRIPT>

<SCRIPT>latex_initClientSide();</SCRIPT>

<SCRIPT>advancedTextBox_onLoad('_ctl0_PageSidebar__ctl0_Sidebarplaceholde=
r1__ctl0_FindTextBox');</SCRIPT>

<SCRIPT> var SelectedPrimitivesCount =3D =
selectedItems_getCount('SelectedPrimitives'); =
selectedItemsHyperLink_onLoad('SelectedPrimitives');</SCRIPT>

<SCRIPT>queryBuilder_wireUpEvents('_ctl0_PageSidebar__ctl0_Sidebarplaceho=
lder1__ctl0_FindTextBox')</SCRIPT>

<SCRIPT>popOutMenuItem_addEventHandlers('SubjectsMenuItem');</SCRIPT>

<SCRIPT> =
addHandler(getElement('_ctl0_PageSidebar__ctl0_Sidebarplaceholder1__ctl0_=
FindTextBox_MainTextBox'), 'onkeypress', defaultTextBox_captureEnter); =
</SCRIPT>

<SCRIPT>popOutMenuItem_addEventHandlers('ContentTypesMenuItem');</SCRIPT>=


<SCRIPT>popOutMenuItem_init();</SCRIPT>
</FORM></BODY></HTML>

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.springerlink.com/images/springerlink-logo.gif

R0lGODlhtAAyAOZ/AIWLmis0S9HW3rW7xRIcNqKotERNYevv9OLm7Obq8HZ9jcnO1llhdFJabpqg
rXuCkpWcqUhRZdTY4OTp7nF5iUtUaM7T2rG3weHl67q/ycDFzn6FlL3CzK+1wJKZpm51h6yzviUu
Rp2jsKCms46Vo8HH0JieqzY/VVZecra8xmpxg5CXpNzh515meImQnrvByh8pQTlCWOBRImRsfh4n
QDE6UWFpe0FJX2NqfKasuN/j6hokPcXK06mvumdvgBUfOCcwSBslPouSoBghOyIsRD5HXOixouad
ht9IFuekkOi4qrK6xjtEWrzCy8zR2ePo7uru8+js8dXa4RkjPNne5NPY37S5xMbL1MvQ2M3S2s/U
3LO4w9jd5DM8Ut7j6ent8t3i6Li9x4iPncPI0dvf5jxFWzhBV3yDk8fM1K60v4GIl32Ek77DzTQ9
VKqwu9re5dbb4nh/kHB3iHN6iy43T9fc409Xa4yToX+GljdAVmx0herHvuvd3Ozi4w8ZM+3x9iH5
BAEAAH8ALAAAAAC0ADIAAAf/gH+Cg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWm
p6ipqqusra6SDkIar7S1niUOYQ1+bU22v8CUcVNEUwEEKFYPGcHNzogkfscRDQRBBEUjT1DP3c0j
fh4nGzNBCgxAPycRFt7utFEMUyBZGioxLH9PD0R+au8AVwmg4AefIDY5dAx6YcbPiIAQS2HY1QDC
k0RY6BAQk4BRAgkKI9KSkkNLpwUEKnhQI0XRAD9A6igqMadClwgqhJjEJAAACFcHFoRho0EDGw5g
DCWI1bJRFAc2DPgx0enBEDUnAgggtMUDGUI+gqRI1IGOHxQUTvjxsyJTBGkv/1pFWRMgAB06IeyE
MVSAgJ8PjqJAKLJWBKctP2wIsLKVkIobIQVd8eMDkZYQBFxM+COBAeVMU/z8yNHqgAUrav20KOHF
0Ia1FSANCOLHsKY3RAI0LcTiRoUohJ40GALhkBo/J6gMIkOjQaYeBiggoDXHD4GxhwSgiMDsUQkY
tTVBsTOFtCAwJnQcOMCDgApDd6Ye2tWmCiEbDDQ9+VJLgfW4iEywGSRsgGcbJnj4MQNwgpCAzAcK
oECAA4ZcEJ4hKqwVB4N/HMCNIBNYAIc+UnBxESFfYDCdF1IMqI8XH3b4hEIJcCFFa4Y8AUcVbwAX
xQQdCfKEFBJgUEiKK7YoiP9/BHR3SIongsgCcGBIQUaMfxQYHgYsgMGCFFQcEEkKU5iBwgWCfLEB
ASEEQIMfN3BhSAkEbHCICGsRMId9hGjhQQt+UADCWz+0wIMgAoxwRgRyLNBQHAhkIEYDRbTzRAqT
2nEFDmsxcQGWVjRAAwFEzOGBCjZYcZCofhiQAzeJxhHBGhk0pMBmTDpJSBUQUFAGCZKZgEMNLowA
hB8h4GHkQQb+AUAZXbTRBQ5ROvIWCRX00I4JftjhhAUVEPCQIWgM0cUhUaCwlh81eNCOICYci2wI
N3SxFh0L/CHGm3DaC+cLb0mzFRo3rBVCCF3cQBsQWAzigB9DAGCCWX7AYED/S2kEEcAKa074hxC0
qQYeu+3kesgKI7f1Rws/WAeExfLeIWaWzZYQgGogRPZIDju0sUID0gFxgpEP+KEHIlcMwQQiT6jA
b0EFLFQDnMw44cNaC0bBBr9FnNE1Bk/YILAgEsTghzlgQBFHYYJgERpgf/BstH1YuHnoH3Kwy8IB
F9xMwA1z3HAGNyYrtYV1Kk/QsQFxWXHzDSdqadgWQ4hhycNv4hDfWP7hsKwhk9mZCAg2+GWdB4gS
BqwgLLThRxk7hQBTOwKcKMTYgtjR6iBjyI6HIDlU/NMfUUzdwh9QvFZBGEa9RsQWfyBgdkycDVi4
IW8gPkgKP/ww7soFRQ5e/xpStAG3JXgEMcX6FUxwhh82fA66H3EsEgUIeaxFQ75OMOEHAINQG7IA
1I/jFQIAuPtDBfwQgUFYgDAA/AM4gmCeP9jLDn/gAqGCsIMpDAEGTJgFFdRytEJcrxBV0J4geDCE
H1BIEIBigvj8oAI7/OArlzhABj7QADs4oDrxUwRKUHCIKmDJAmohAOr69z9CILANVxBEP95zwAQu
MAIzw4LZImiFtZQwC7KzXAlk9wE39KAHVhgDFjoyQj+swRAn3JUK/1CCFr4QfDJkljT8UplMIEAH
GFgBAWygs0OkwA/OMcQJhjcIIbTsPUyMIPKKFgE5/aEffXSiFRmYxS0Kwv8Lb4EBCUqwCzpMZ2v0
Q0Qb62dC6+jqDx3IVwoJoDI62nEQMZyhAz6wFhdsQgBZ2YkiuNWDQ6imECP4gRL/EMlBgGGBorvk
Z6qolUFcsZNNJJtUpgCDKfhAOZyRCr4I8aE2PgCO/yHEAWLgSwmcbhB1dCEuXzfDHERBLTBQVSYe
dkdFUAAI+TIEmwC0pIrxz38PAA4UQOCHImRhEJg0BAJ1Y83dCUILZrPcHyZgBRjcIAUvmA4hiqYa
AWDACyNQwHnUwkpCVOc6ARSDH+LCBeus7g9u+MEQDiQ2MzBoDG8yTAdCw4TGVEICEHiLA5rA1KY6
lakXKAMRJEkIs9TAChb/sEAPhjAFXzLTfzuYwwvisIMu6JMFHWhZDNgAzi8s4C07gAAVElCCqRGh
BFB4ggPe1AINQMEDa8GBAKogAAHIRBBjcJ1oImCv97xBBP24gQbACYcS+A9+TcUDAQggACngyQ8V
QMMTsnA1P8ihJViQih/cwAI4ANYPDCjBAfzjhzxkAIeT4B4MgDCF7vn2t74dAhFCMIRD4KELQ6gY
EX4QA6oIgokhA4INHioICMAgBEBYrle5YIDdhuAHJEBDAIgAhBDUgAwcCAJ2aRAAHaQhuWc7GBBu
oBlBpCACRNgsHeIgphX8ALvX9WUUNkAE8gKBBr4NAhFQoIM4DAEIL2NC/wYYEITy7iAOCWiAd4Hg
ADwMAcAUbUAIiBCEm0rCCyBYgopXzOIWr5iRhXBCAVwwhwcUIB+DYKIKRFAA6g4iCwMI8gBiCaIM
WCHIHcgCC6xw5AGEIQEsAIGQP/UHD9BmCAGAbyoFcb8VOOBdf7BAGoRshXwdYAxjFrKaL+CEP4yB
zGHggga2EOQLXOELbLiAkLWwADoHGQQX8QKdO3CFmXmDiV4lBRTUEIQG9KAEboCAWkIgP5F0o5mk
OMDtIqAzCwUAzJaORB+MoIRSm/rUqDa1ESaB6VEkgDYqJYQA/MCEIIU6EnuQga53zete93oSFiiD
H+aAJVBMYC1YJMQHMn5z60nsAQnQjra0pz1tSZSAAX6ZwhxGYOhPQGEGa0EBByaABhUMQQ8cavYj
+HCEJLj73fCO97uPIIkcVAAF+EbBGrr9CSk04BoE+IHGAMBvdRtcEwOIwwy2Xa2DO/zhEI+4xCdO
8Ypb/OIYz7jGN87xjnv84yAPuchHTvJaBAIAOw==

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.springerlink.com/images/print.gif

R0lGODlhGAAYAPcAAEpKSnNzlHN7lHt7lHt7nHuEnISEnISMpYyMpYyUpZSUrZScrZyltaWlpaWl
ta2tvbW1xr3GzsbO1s7O1s7O3s7W3tbW1tbW3t7e5+fn7+fv7+/v7+/v9/f39/f3//f/////Sv//
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////yH5BAEAAAEALAAAAAAYABgA
AAj8AAMIHDjQAIKDCAgQXMiQAAMJGjpI7JAhggIBDAkKUHAhhMePHztIOJAxAAEIHECq/JjBAUaN
EFbK9NhBwUIEKUEC2MmTp8cLAwYKmKASwEyjHh0MXNChaIieRpF6xBB0qFOZUpMGGJDBKdSnPj1O
CGAgp8esOi0AUOsxwwAETc9C7alWLVIOBuOutcC3b9+1gGkegCt3LlS+SN0S6PrUL98GkBGz9ShB
YISzji2A2Ix450cGAhU0NTx3coYCAgVIwJxZstQHBA8wJh02xISgBB3EnQkyAwKGAhZ05P3zd8kB
DjDMzABBYcmByCdkmJ6hwgMDz48P2P4yY0AAADs=

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.springerlink.com/content/102942/cover-image-medium.gif

/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCACEAF8DASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDwuG2n
uDiKJn+grVtvDN9OMsAg966YT29soSCNRioXv3bksQK7uVHG6knsUY/CtvHj7ROxPcCrA0vSrccQ
lz0yxpXvD65qtNLvBPanoTeT3ZdiFiGwLZPzqzmweP57bH+6elYkUwVsdMcdaeZmJwD3ouKxek0/
Tp+FZ0z6gGqM/h9DzFLG36GkEjjjJp4mYjk0aDTa2Mi50iaAElDj16is8oytgiuoN0y8ckVVmW2u
CdyhW9VqWi1N9TCp6irM9k0XzL8y+oqFRzUl3ubBkZieacSQOaYntU5UMMDrVmJFjPrTiuRmtbw5
Z2t54j0+2vV3WskwEq79mVwSRnt9a6mXwbo8titzb6iVT7F9pXYPMZgzylSy9RtVUVgMcnP1TaQ0
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

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.springerlink.com/images/contact.gif

R0lGODdhDgAKAKIAAP////r7v+rrl8TFDKOkAH1+AElKAAAAACwAAAAADgAKAAADLWi63AQwynEM
KCLrXEgFAraFgmdxm2iCpdhla8mpZRUQo0aYw+7/u8phSCwSEwA7

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.Controls.RecognizedAsControl.css

.MetaPress_Products_Reader_Web_UI_Controls_RecognizedAsControlHeading {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0.5em; PADDING-TOP: 0em
}
.MetaPress_Products_Reader_Web_UI_Controls_RecognizedAsControlBody {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
LINE-HEIGHT: 1.4em; PADDING-TOP: 0em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.Controls.LoggedInAsControl.css

.MetaPress_Products_Reader_Web_UI_Controls_LoggedInAsControlHeading {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0.5em; PADDING-TOP: 0em
}
.MetaPress_Products_Reader_Web_UI_Controls_LoggedInAsControlBody {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0em
}
.MetaPress_Products_Reader_Web_UI_Controls_LoggedInAsControlHeading {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0.5em; PADDING-TOP: 0em
}
.MetaPress_Products_Reader_Web_UI_Controls_LoggedInAsControlBody {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
LINE-HEIGHT: 1.4em; PADDING-TOP: 0em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.Controls.LogOutControl.css

.MetaPress_Products_Reader_Web_UI_Controls_LogOutControlBody {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.Controls.FooterControl.css

.MetaPress_Products_Reader_Web_UI_Controls_FooterControl {
	TEXT-ALIGN: left
}
.MetaPress_Products_Reader_Web_UI_Controls_FooterControlContactDetails {
	FONT-SIZE: 85%
}
.MetaPress_Products_Reader_Web_UI_Controls_FooterControlCopyright {
	PADDING-RIGHT: 0em; PADDING-LEFT: 0em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0em
}
.MetaPress_Products_Reader_Web_UI_Controls_FooterControlUserDetails {
	FONT-SIZE: 75%; COLOR: #5a597b; PADDING-TOP: 0.5em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/master-menu.css

.dropDownMenu {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 10; PADDING-BOTTOM: =
0px; MARGIN: 0.3em 0px 0px; PADDING-TOP: 0px
}
.dropDownMenu UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 10; LEFT: 0px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; POSITION: absolute; =
TOP: 1.5em
}
.dropDownMenu LI.Collapsed {
	MARGIN-RIGHT: 0.4em
}
.dropDownMenu LI.Expanded {
	MARGIN-RIGHT: 0.4em
}
.dropDownMenu LI.Expanded UL {
	VISIBILITY: visible
}
.dropDownMenu LI.Collapsed UL {
	VISIBILITY: hidden
}
.dropDownMenu LI {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; FLOAT: left; PADDING-BOTTOM: =
0.4em; PADDING-TOP: 0em; POSITION: relative
}
.dropDownMenu LI LI {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; BORDER-BOTTOM: #ececec 0.1em solid; =
WHITE-SPACE: nowrap; BACKGROUND-COLOR: #63617b
}
.dropDownMenu LI LI A {
	PADDING-RIGHT: 1.4em; DISPLAY: block; PADDING-LEFT: 1.4em; FONT-WEIGHT: =
normal; PADDING-BOTTOM: 0.4em; MARGIN: 0px; WIDTH: 100%; COLOR: #fff; =
PADDING-TOP: 0.2em; HEIGHT: 100%
}
.dropDownMenu LI:hover {
	COLOR: #ffffff; BACKGROUND-COLOR: #787b94; TEXT-DECORATION: none
}
.dropDownMenu LI A:hover {
	COLOR: #ffffff; BACKGROUND-COLOR: #787b94; TEXT-DECORATION: none
}
.dropDownMenu A.noScriptLink {
	COLOR: white; BACKGROUND-COLOR: transparent
}
.dropDownMenu A.noScriptLink:hover {
	COLOR: white; BACKGROUND-COLOR: transparent
}
.childVertical LI {
	FLOAT: none
}
#ContentTypesMenuItem LI {
	WIDTH: 12em
}
#ContentTypesMenuItem UL {
	WIDTH: 12em
}
#SubjectsMenuItem LI {
	WIDTH: 24em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/master.css

BODY {
	FONT-SIZE: 75%; MARGIN: 0px; COLOR: #000025; FONT-FAMILY: Verdana; =
HEIGHT: 100%
}
A {
	FONT-SIZE: 1em
}
DIV {
	FONT-SIZE: 1em
}
IMG {
	FONT-SIZE: 1em
}
INPUT {
	FONT-SIZE: 1em
}
P {
	FONT-SIZE: 1em
}
SELECT {
	FONT-SIZE: 1em
}
SPAN {
	FONT-SIZE: 1em
}
TABLE {
	FONT-SIZE: 1em
}
TD {
	FONT-SIZE: 1em
}
TR {
	FONT-SIZE: 1em
}
IMG {
	BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: =
0px
}
TABLE {
	BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: =
0px
}
.floatLeft {
	FLOAT: left
}
.floatRight {
	FLOAT: right
}
INPUT {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
VERTICAL-ALIGN: middle; PADDING-TOP: 0px
}
SELECT {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
VERTICAL-ALIGN: middle; PADDING-TOP: 0px
}
TABLE {
	WIDTH: 100%
}
A {
	COLOR: #5a597b; TEXT-DECORATION: none
}
A:hover {
	COLOR: #c74f2a; TEXT-DECORATION: underline
}
UNKNOWN {
=09
}
UNKNOWN {
=09
}
.autoWidth {
	WIDTH: auto
}
.block {
	WIDTH: 40em
}
.dialogHeading {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 1.4em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0.4em; PADDING-TOP: 0.4em
}
.dialogLabel {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 1.4em; PADDING-BOTTOM: 0.4em; =
VERTICAL-ALIGN: top; WIDTH: 12em; PADDING-TOP: 0.4em; BORDER-BOTTOM: =
#ffffff 0.2em solid; WHITE-SPACE: nowrap; BACKGROUND-COLOR: #ececec; =
TEXT-ALIGN: right
}
.dialogSublabel {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
VERTICAL-ALIGN: middle; PADDING-TOP: 0.4em; BORDER-BOTTOM: #ffffff 0.2em =
solid; WHITE-SPACE: nowrap; BACKGROUND-COLOR: #ececec
}
.dialogLabelSpacer {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
VERTICAL-ALIGN: middle; WIDTH: 12em; PADDING-TOP: 0.4em; BORDER-BOTTOM: =
#ffffff 0.2em solid; WHITE-SPACE: nowrap
}
.dialogValue {
	PADDING-LEFT: 0.4em; WIDTH: auto
}
.dialogValueText {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
VERTICAL-ALIGN: middle; WIDTH: auto; PADDING-TOP: 0.4em; WHITE-SPACE: =
nowrap
}
.footnote {
	FONT-SIZE: 0.8em; WIDTH: 40em
}
.footnotePadding {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 1.8em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em
}
.menu {
	WIDTH: 16em; BACKGROUND-COLOR: #ececec
}
.button {
	BORDER-TOP-WIDTH: 0.1em; FONT-WEIGHT: bold; BORDER-LEFT-WIDTH: 0.1em; =
BORDER-LEFT-COLOR: #7f9db9; BACKGROUND: #ebebf5; BORDER-BOTTOM-WIDTH: =
0.1em; BORDER-BOTTOM-COLOR: #7f9db9; COLOR: #404040; BORDER-TOP-COLOR: =
#7f9db9; BORDER-RIGHT-WIDTH: 0.1em; BORDER-RIGHT-COLOR: #7f9db9
}
.buttonHover {
	BACKGROUND: #f4f3eb
}
.buttonContainer {
	BORDER-TOP-WIDTH: 0.1em; PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; =
FONT-WEIGHT: bold; BORDER-LEFT-WIDTH: 0.1em; BORDER-LEFT-COLOR: #7f9db9; =
BACKGROUND: #ffffff; BORDER-BOTTOM-WIDTH: 0.1em; BORDER-BOTTOM-COLOR: =
#7f9db9; PADDING-BOTTOM: 0.1em; COLOR: #404040; BORDER-TOP-COLOR: =
#7f9db9; PADDING-TOP: 0.1em; BORDER-RIGHT-WIDTH: 0.1em; =
BORDER-RIGHT-COLOR: #7f9db9
}
.buttonContainerHover {
	BACKGROUND: #ebebf5
}
UL {
	LIST-STYLE-TYPE: none
}
.highlight0 {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; BACKGROUND-COLOR: #ffff99
}
.hlDisabled0 {
	PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.blob {
	FONT-SIZE: 1.2em
}
.blob TABLE {
	WIDTH: auto
}
.blob .rubric {
	DISPLAY: none
}
.blob .Heading1 {
	DISPLAY: none
}
.blob H2 {
	FONT-SIZE: 1.2em
}
.defaultButtonSpacing {
	MARGIN-LEFT: 0.2em
}
.leftMainColumn {
	WIDTH: 16em; HEIGHT: 100%; BACKGROUND-COLOR: #ececec
}
.outerTable {
	HEIGHT: 100%
}
.contentArea {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em
}
.bold {
	FONT-WEIGHT: bold
}
.logo {
	PADDING-TOP: 1em
}
.headerBackground {
	BACKGROUND-POSITION: right bottom; DISPLAY: block; BACKGROUND-IMAGE: =
url(/images/springerlink-background.jpg); WIDTH: 100%; =
BACKGROUND-REPEAT: no-repeat; BACKGROUND-COLOR: #e6e9f3
}
.headerTop {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; FONT-WEIGHT: bold; FILTER: =
alpha(opacity=3D80); PADDING-BOTTOM: 0.4em; WIDTH: 100%; COLOR: #ffffff; =
PADDING-TOP: 0.4em; HEIGHT: 2.8em; BACKGROUND-COLOR: #404062; =
TEXT-ALIGN: right
}
UNKNOWN {
	MARGIN: 0.4em
}
.headerTop  {
	TEXT-ALIGN: left
}
.headerBottom {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; FILTER: alpha(opacity=3D60); =
PADDING-BOTTOM: 0.4em; WIDTH: 100%; PADDING-TOP: 0.4em; HEIGHT: 4.4em; =
BACKGROUND-COLOR: #404062; opacity: 0.6
}
.headerBottom TABLE {
	FONT-WEIGHT: bold; COLOR: #ffffff
}
.pageHeading {
	COLOR: #000000
}
.cultureList {
	MARGIN: 0.4em
}
.searchPanel {
	FLOAT: left
}
.fontSmaller {
	FONT-SIZE: 0.8em
}
.fontLarger {
	FONT-SIZE: 1.2em
}
.outdent {
	PADDING-LEFT: 1.4em; TEXT-INDENT: -1.4em
}
.defaultHeight {
	HEIGHT: 12em
}
.defaultPadding {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em
}
.defaultPaddingBottom {
	PADDING-BOTTOM: 0.4em
}
.defaultPaddingTop {
	PADDING-TOP: 0.4em
}
.defaultPaddingRight {
	PADDING-RIGHT: 0.4em
}
.paragraphPadding {
	PADDING-RIGHT: 2em; PADDING-BOTTOM: 1.4em; LINE-HEIGHT: 1.25em
}
.backToHeader {
	MARGIN-RIGHT: 0.5em
}
A.backTo {
	COLOR: #ffffff
}
A.backTo:hover {
	COLOR: #ffffff
}
.backToSeperator {
	MARGIN: 0em 0.25em
}
.sidebarHeading {
	FONT-WEIGHT: bold; WIDTH: 18em; COLOR: #ffffff; BACKGROUND-COLOR: =
#5a597b
}
.sidebarBody {
	WIDTH: 18em; BACKGROUND-COLOR: #ececec
}
.PersonalizationMenuItem {
	PADDING-BOTTOM: 0.3em; PADDING-TOP: 0.2em; BORDER-BOTTOM: #ffffff 0.1em =
solid
}
.PersonalizationMenuHeader {
	PADDING-RIGHT: 0.4em; BORDER-TOP: medium none; PADDING-LEFT: 0.4em; =
FONT-WEIGHT: bold; PADDING-BOTTOM: 0.4em; COLOR: #ffffff; PADDING-TOP: =
0.4em; BACKGROUND-COLOR: #5a597b
}
.parentNavigation {
	COLOR: #ffffff
}
UNKNOWN {
	COLOR: #ffffff; TEXT-DECORATION: underline
}
.parentNavigationDisabled {
	CURSOR: default; COLOR: #a0a0a0
}
.selectedViewTab {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0.4em; COLOR: #ffffff; PADDING-TOP: 0.4em; WHITE-SPACE: =
nowrap; BACKGROUND-COLOR: #5a597b
}
.viewTab {
	BORDER-RIGHT: #5a597b 0.1em solid; PADDING-RIGHT: 0.4em; BORDER-TOP: =
#5a597b 0.1em solid; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
BORDER-LEFT: #5a597b 0.1em solid; PADDING-TOP: 0.4em; BORDER-BOTTOM: =
0px; WHITE-SPACE: nowrap
}
.paginationControl A {
	COLOR: #ffffff
}
UNKNOWN {
	COLOR: #ffffff; TEXT-DECORATION: underline
}
.paginationDisabled {
	COLOR: #d0d0d0
}
TABLE.paginationControl {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
COLOR: #ffffff; PADDING-TOP: 0.4em; BACKGROUND-COLOR: #5a597b
}
TABLE.paginationControl TD {
	WHITE-SPACE: nowrap
}
.contentType {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.3em; PADDING-BOTTOM: 0.1em; =
COLOR: #808080; PADDING-TOP: 0.1em; WHITE-SPACE: nowrap
}
DIV.listItemName {
	PADDING-RIGHT: 0.25em; PADDING-LEFT: 0.25em; FONT-SIZE: 1.25em; =
PADDING-BOTTOM: 0.25em; PADDING-TOP: 0em
}
.labelName {
	BORDER-RIGHT: #ffffff 0.1em solid; PADDING-RIGHT: 0em; BORDER-TOP: 0px; =
PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.2em; VERTICAL-ALIGN: top; =
BORDER-LEFT: 0px; WIDTH: 9em; PADDING-TOP: 0.1em; BORDER-BOTTOM: #ffffff =
0.1em solid; WHITE-SPACE: nowrap; BACKGROUND-COLOR: #ececec
}
.labelValue {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
VERTICAL-ALIGN: top; PADDING-TOP: 0.1em
}
.viewToolbarButtons {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
WIDTH: 100%; PADDING-TOP: 0.1em
}
.viewItemIndex {
	COLOR: #808080
}
.viewItem {
	BORDER-RIGHT: 0px; PADDING-RIGHT: 0.4em; BORDER-TOP: 0px; PADDING-LEFT: =
0.4em; PADDING-BOTTOM: 0.4em; BORDER-LEFT: 0px; PADDING-TOP: 0.4em; =
BORDER-BOTTOM: #c0c0c0 0.1em solid
}
.viewGroup {
	BORDER-RIGHT: 0px; PADDING-RIGHT: 0.4em; BORDER-TOP: 0px; PADDING-LEFT: =
0.4em; PADDING-BOTTOM: 0.4em; BORDER-LEFT: 0px; PADDING-TOP: 0.4em; =
BORDER-BOTTOM: #c0c0c0 0.2em solid
}
.selectedItemLinkButton {
	PADDING-RIGHT: 0em; PADDING-LEFT: 0em; FLOAT: right; PADDING-BOTTOM: =
0em; PADDING-TOP: 0.2em
}
.refinementCell {
	PADDING-BOTTOM: 0.3em; PADDING-TOP: 0.2em; BORDER-BOTTOM: #ffffff 0.1em =
solid
}
.customLink {
	VERTICAL-ALIGN: middle
}
.toolbar {
	WIDTH: 8em; TEXT-ALIGN: right
}
.emailList {
	WIDTH: 51em
}
.emailHeader {
	PADDING-RIGHT: 0.5em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0.5em
}
.emailList UL {
	LIST-STYLE-TYPE: disc
}
.emailList TEXTAREA {
	WIDTH: 100%
}
.emailList .labelName {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
MARGIN: 0.2em; WIDTH: 15em; PADDING-TOP: 0.1em
}
.emailList .labelValue {
	WIDTH: 35em
}
.emailErrorRow {
	MARGIN: 0.5em; WIDTH: 100%
}
.emailSuccessLabel {
	FONT-WEIGHT: bold; MARGIN-LEFT: 0.5em; COLOR: #188c18
}
.emailErrorLabel {
	FONT-WEIGHT: bold; MARGIN-LEFT: 0.5em; COLOR: #ff0000
}
.emailFooter {
	MARGIN: 0.25em; WIDTH: 100%; TEXT-ALIGN: right
}
.emailFooter INPUT {
	WIDTH: 8em
}
.highlighting {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; FLOAT: right; =
PADDING-BOTTOM: 0.2em; PADDING-TOP: 0.2em; WHITE-SPACE: nowrap
}
.criteriaValues {
=09
}
.criteriaValues UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0.2em 0px 0.5em; PADDING-TOP: 0px
}
.searchMoreOptions {
	VERTICAL-ALIGN: bottom
}
.searchMoreOptions A {
	FONT-WEIGHT: normal; FONT-SIZE: 0.8em; COLOR: white
}
UNKNOWN {
	COLOR: white
}
.tab {
	PADDING-RIGHT: 0.4em; MARGIN-TOP: 0.2em; PADDING-LEFT: 0.4em; =
PADDING-BOTTOM: 0.4em; PADDING-TOP: 0.4em; BORDER-BOTTOM: #cbcbe5 0.1em =
solid; WHITE-SPACE: nowrap
}
.tabSelected {
	BORDER-RIGHT: #cbcbe5 0.1em solid; PADDING-RIGHT: 0.4em; BORDER-TOP: =
#cbcbe5 0.1em solid; MARGIN-TOP: 0.2em; PADDING-LEFT: 0.4em; =
PADDING-BOTTOM: 0.4em; BORDER-LEFT: #cbcbe5 0.1em solid; PADDING-TOP: =
0.4em; BORDER-BOTTOM: medium none
}
.tabSpacer {
	WIDTH: 100%
}
.tabContents {
	BORDER-RIGHT: #cbcbe5 0.1em solid; PADDING-RIGHT: 0.7em; BORDER-TOP: =
medium none; PADDING-LEFT: 0.7em; PADDING-BOTTOM: 0.7em; BORDER-LEFT: =
#cbcbe5 0.1em solid; WIDTH: 100%; PADDING-TOP: 0.7em; BORDER-BOTTOM: =
#cbcbe5 0.1em solid
}
.primitiveControl .subtitle {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.2em; =
PADDING-TOP: 0px
}
.noResults IMG {
	CLEAR: left
}
#jsMath_Warning {
	DISPLAY: none
}
#jsMath_button {
	DISPLAY: none
}
.latex .typeset .error {
	DISPLAY: none
}
A .latex {
	TEXT-DECORATION: none
}
.latex .cs {
	DISPLAY: none
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.Controls.FindSidebarItem.css

.MetaPress_Products_Reader_Web_UI_Controls_FindSidebarItem =
.advancedTextBox {
	WIDTH: 13.5em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Web.UI.Controls.AdvancedTextBox.css

.MetaPress_Web_UI_Controls_AdvancedTextBox {
	WHITE-SPACE: nowrap
}
.MetaPress_Web_UI_Controls_AdvancedTextBox INPUT {
	HEIGHT: 1.75em
}
.MetaPress_Web_UI_Controls_AdvancedTextBox .advancedTextBoxExpandButton =
{
	PADDING-RIGHT: 1px; DISPLAY: none; PADDING-LEFT: 1px; PADDING-BOTTOM: =
1px; MARGIN-LEFT: -1px; PADDING-TOP: 1px; LETTER-SPACING: 0.1em; HEIGHT: =
1.75em
}
.MetaPress_Web_UI_Controls_AdvancedTextBox .advancedTextBoxGoButton {
	MARGIN-LEFT: 0.2em; HEIGHT: 1.75em
}
.MetaPress_Web_UI_Controls_AdvancedTextBox .advancedTextBoxContents {
	DISPLAY: none; POSITION: absolute
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MPReader.Profiles.SpringerLink.Content.PrimitiveHeadingControl.css

TABLE.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControl {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em; BACKGROUND-COLOR: #ececec
}
DIV.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControl {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 0.1em; PADDING-TOP: 0.1em
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlName {
	PADDING-RIGHT: 0.25em; PADDING-LEFT: 0.25em; FONT-SIZE: 1.25em; =
PADDING-BOTTOM: 0.25em; PADDING-TOP: 0em
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlSecondaryL=
inks {
	WIDTH: 17.5em
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlSecondaryL=
inks DIV {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em; BORDER-BOTTOM: #ffffff 0.1em solid
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlMarkedItem=
Link {
	FONT-WEIGHT: bold
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlCoverImage=
 {
	WIDTH: 1%
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlOpenAccess=
 {
	PADDING-RIGHT: 0.25em; PADDING-LEFT: 0.35em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0.5em
}
TABLE.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControl {
	CLEAR: both; PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: =
0.4em; PADDING-TOP: 0.4em; BACKGROUND-COLOR: #ececec
}
DIV.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControl {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; FONT-WEIGHT: normal; =
PADDING-BOTTOM: 0.1em; PADDING-TOP: 0.1em
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlName {
	PADDING-RIGHT: 0.25em; PADDING-LEFT: 0.25em; FONT-SIZE: 1.25em; =
PADDING-BOTTOM: 0.25em; PADDING-TOP: 0em
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlSecondaryL=
inks {
	WIDTH: 17.5em
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlSecondaryL=
inks DIV {
	PADDING-RIGHT: 0.1em; PADDING-LEFT: 0.1em; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em; BORDER-BOTTOM: #ffffff 0.1em solid
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlMarkedItem=
Link {
	FONT-WEIGHT: bold
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlCoverImage=
 {
	WIDTH: 1%
}
.MPReader_Profiles_SpringerLink_Content_PrimitiveHeadingControlOpenAccess=
 {
	PADDING-RIGHT: 0.25em; PADDING-LEFT: 0.35em; PADDING-BOTTOM: 0.5em; =
PADDING-TOP: 0.5em
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/css/MetaPress.Products.Reader.Web.UI.Controls.QueryBuilderControl.css

.findTextBox .advancedTextBox {
	WIDTH: 25em
}
.queryBuilder {
	BORDER-RIGHT: #62627e 0.1em solid; BORDER-TOP: #62627e 0.1em solid; =
FONT-WEIGHT: normal; BORDER-LEFT: #62627e 0.1em solid; WIDTH: 28.5em; =
COLOR: black; BORDER-BOTTOM: #62627e 0.1em solid
}
DIV.queryBuilder DIV.list {
	FLOAT: left; WIDTH: 50%; HEIGHT: auto
}
DIV.queryBuilder DIV.title {
	PADDING-RIGHT: 0.4em; DISPLAY: block; PADDING-LEFT: 0.4em; =
PADDING-BOTTOM: 0.4em; WIDTH: 100%; COLOR: white; PADDING-TOP: 0.4em; =
HEIGHT: auto; BACKGROUND-COLOR: #62627e
}
DIV.queryBuilder DIV.title SPAN {
	FONT-WEIGHT: bold; FLOAT: left
}
DIV.queryBuilder DIV.title SPAN.rightLink {
	FONT-WEIGHT: normal; FLOAT: right; CURSOR: hand
}
DIV.queryBuilder DIV.title SPAN.rightLinkSeperator {
	FONT-WEIGHT: normal; FLOAT: right; CURSOR: hand
}
DIV.queryBuilder DIV.title SPAN.rightLinkSeperator {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
DIV.queryBuilder DIV.list DIV {
	PADDING-RIGHT: 0.4em; PADDING-LEFT: 0.4em; PADDING-BOTTOM: 0.4em; =
PADDING-TOP: 0.4em; BACKGROUND-COLOR: #ececec
}
DIV.queryBuilder DIV.list UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.queryBuilder DIV.list UL LI {
	BORDER-RIGHT: white 0px solid; PADDING-RIGHT: 0.8em; BORDER-TOP: white =
1px solid; PADDING-LEFT: 0.8em; PADDING-BOTTOM: 0.2em; BORDER-LEFT: =
white 1px solid; WIDTH: 100%; CURSOR: hand; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: white 0px solid; BACKGROUND-COLOR: #ececec
}
DIV.queryBuilder DIV.list UL LI.empty {
	CURSOR: default
}
DIV.queryBuilder DIV.list UL LI.hover {
	BACKGROUND-COLOR: #787b94
}
DIV.queryBuilder DIV.list UL LI A {
	COLOR: black; TEXT-DECORATION: none
}
DIV.queryBuilder DIV.list UL LI.hover A {
	COLOR: white
}
DIV.queryBuilder DIV.list UL LI .hotKey {
	FLOAT: right
}
DIV.queryBuilder DIV.list UL LI.hover .hotKey {
	COLOR: white
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/ajaxpro/prototype.ashx

Object.extend =3D function(dest, source, replace) {
	for(prop in source) {
		if(replace =3D=3D false && dest[prop] !=3D null) continue;
		dest[prop] =3D source[prop];
	}
	return dest;
}

Object.extend(Function.prototype, {
	apply: function(o, a) {
		var r, x =3D "__fapply";
		if(typeof o !=3D "object") o =3D {};
		o[x] =3D this;
		var s =3D "r =3D o." + x + "(";
		for(var i=3D0; i<a.length; i++) {
			if(i>0) s +=3D ",";
			s +=3D "a[" + i + "]";
		}
		s +=3D ");";
		eval(s);
		delete o[x];
		return r;
	},
	bind: function(o) {
		if(!Function.__objs) {
			Function.__objs =3D [];
			Function.__funcs =3D [];
		}

		var objId =3D o.__oid;
		if(!objId)
			Function.__objs[objId =3D o.__oid =3D Function.__objs.length] =3D o;

		var me =3D this;
		var funcId =3D me.__fid;
		if(!funcId)
			Function.__funcs[funcId =3D me.__fid =3D Function.__funcs.length] =3D =
me;

		if(!o.__closures)
			o.__closures =3D [];

		var closure =3D o.__closures[funcId];
		if(closure)
			return closure;

		o =3D null;
		me =3D null;

		return Function.__objs[objId].__closures[funcId] =3D function() {
			return Function.__funcs[funcId].apply(Function.__objs[objId], =
arguments);
		};
	}
}, false);

Object.extend(Array.prototype, {
	push: function(o) {
		this[this.length] =3D o;
	},
	addRange: function(items) {
		if(items.length > 0)
			for(var i=3D0; i<items.length; i++)
				this.push(items[i]);
	},
	clear: function() {
		this.length =3D 0;
		return this;
	},
	shift: function() {
		if(this.length =3D=3D 0) return null;
		var o =3D this[0];
		for(var i=3D0; i<this.length-1; i++)
			this[i] =3D this[i + 1];
		this.length--;
		return o;
	}
}, false);

Object.extend(String.prototype, {
	trimLeft: function() {
		return this.replace(/^\s*/,"");
	},
	trimRight: function() {
		return this.replace(/\s*$/,"");
	},
	trim: function() {
		return this.trimRight().trimLeft();
	},
	endsWith: function(s) {
		if(this.length =3D=3D 0 || this.length < s.length) return false;
		return (this.substr(this.length - s.length) =3D=3D s);
	},
	startsWith: function(s) {
		if(this.length =3D=3D 0 || this.length < s.length) return false;
		return (this.substr(0, s.length) =3D=3D s);
	},
	split: function(c) {
		var a =3D [];
		if(this.length =3D=3D 0) return a;
		var p =3D 0;
		for(var i=3D0; i<this.length; i++) {
			if(this.charAt(i) =3D=3D c) {
				a.push(this.substring(p, i));
				p =3D ++i;
			}
		}
		a.push(s.substr(p));
		return a;
	}
}, false);

Object.extend(String, {
	format: function(s) {
		for(var i=3D1; i<arguments.length; i++)
			s =3D s.replace("{" + (i -1) + "}", arguments[i]);
		return s;
	},
	isNullOrEmpty: function(s) {
		if(s =3D=3D null || s.length =3D=3D 0)
			return true;
		return false;
	}
}, false);

if(typeof addEvent =3D=3D "undefined")
	addEvent =3D function(o, evType, f, capture) {
		if(o =3D=3D null) return false;
		if(o.addEventListener) {
			o.addEventListener(evType, f, capture);
			return true;
		} else if (o.attachEvent) {
			var r =3D o.attachEvent("on" + evType, f);
			return r;
		} else {
			try{ o["on" + evType] =3D f; }catch(e){}
		}
	};
=09
if(typeof removeEvent =3D=3D "undefined")
	removeEvent =3D function(o, evType, f, capture) {
		if(o =3D=3D null) return false;
		if(o.removeEventListener) {
			o.removeEventListener(evType, f, capture);
			return true;
		} else if (o.detachEvent) {
			o.detachEvent("on" + evType, f);
		} else {
			try{ o["on" + evType] =3D function(){}; }catch(e){}
		}
	};

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/ajaxpro/core.ashx

Object.extend(Function.prototype, {
	getArguments: function() {
		var args =3D [];
		for(var i=3D0; i<this.arguments.length; i++)
			args.push(this.arguments[i]);
		return args;
	}
}, false);

var MS =3D {"Browser":{}};

Object.extend(MS.Browser, {
	isIE: navigator.userAgent.indexOf('MSIE') !=3D -1,
	isFirefox: navigator.userAgent.indexOf('Firefox') !=3D -1,
	isOpera: window.opera !=3D null
}, false);

var AjaxPro =3D {};

AjaxPro.IFrameXmlHttp =3D function() {};
AjaxPro.IFrameXmlHttp.prototype =3D {
	onreadystatechange: null, headers: [], method: "POST", url: null, =
async: true, iframe: null,
	status: 0, readyState: 0, responseText: null,
	abort: function() {
	},
	readystatechanged: function() {
		var doc =3D this.iframe.contentDocument || this.iframe.document;
		if(doc !=3D null && doc.readyState =3D=3D "complete" && doc.body !=3D =
null && doc.body.res !=3D null) {
			this.status =3D 200;
			this.readyState =3D 4;
			this.responseText =3D doc.body.res;
			this.onreadystatechange();
			return;
		}
		setTimeout(this.readystatechanged.bind(this), 10);
	},
	open: function(method, url, async) {
		if(async =3D=3D false) {
			alert("Synchronous call using IFrameXMLHttp is not supported.");
			return;
		}
		if(this.iframe =3D=3D null) {
			var iframeID =3D "hans";
			if (document.createElement && document.documentElement &&
				(window.opera || navigator.userAgent.indexOf('MSIE 5.0') =3D=3D -1))
			{
				var ifr =3D document.createElement('iframe');
				ifr.setAttribute('id', iframeID);
				ifr.style.visibility =3D 'hidden';
				ifr.style.position =3D 'absolute';
				ifr.style.width =3D ifr.style.height =3D ifr.borderWidth =3D '0px';

				this.iframe =3D =
document.getElementsByTagName('body')[0].appendChild(ifr);
			}
			else if (document.body && document.body.insertAdjacentHTML)
			{
				document.body.insertAdjacentHTML('beforeEnd', '<iframe name=3D"' + =
iframeID + '" id=3D"' + iframeID + '" style=3D"border:1px solid =
black;display:none"></iframe>');
			}
			if (window.frames && window.frames[iframeID]) this.iframe =3D =
window.frames[iframeID];
			this.iframe.name =3D iframeID;
			this.iframe.document.open();
			this.iframe.document.write("<html><body></body></html>");
			this.iframe.document.close();
		}
		this.method =3D method;
		this.url =3D url;
		this.async =3D async;
	},
	setRequestHeader: function(name, value) {
		for(var i=3D0; i<this.headers.length; i++) {
			if(this.headers[i].name =3D=3D name) {
				this.headers[i].value =3D value;
				return;
			}
		}
		this.headers.push({"name":name,"value":value});
	},
	getResponseHeader: function(name, value) {
		return null;
	},
	addInput: function(doc, form, name, value) {
		var ele;
		var tag =3D "input";
		if(value.indexOf("\n") >=3D 0) tag =3D "textarea";
	=09
		if(doc.all) {
			ele =3D doc.createElement("<" + tag + " name=3D\"" + name + "\" />");
		}else{
			ele =3D doc.createElement(tag);
			ele.setAttribute("name", name);
		}
		ele.setAttribute("value", value);
		form.appendChild(ele);
		ele =3D null;
	},
	send: function(data) {
		if(this.iframe =3D=3D null) {
			return;
		}
		var doc =3D this.iframe.contentDocument || this.iframe.document;
		var form =3D doc.createElement("form");
	=09
		doc.body.appendChild(form);
	=09
		form.setAttribute("action", this.url);
		form.setAttribute("method", this.method);
	=09
		this.setRequestHeader("X-" + AjaxPro.ID + "-Processor", "IFrame");
	=09
		for(var i=3D0; i<this.headers.length; i++) {
			switch(this.headers[i].name.toLowerCase()) {
				case "content-length":
				case "accept-encoding":
					break;
				case "content-type":
					form.setAttribute("enctype", this.headers[i].value);
					break;
				default:
					this.addInput(doc, form, this.headers[i].name, =
this.headers[i].value);
			}
		}
		this.addInput(doc, form, "data", data);
		form.submit();
		setTimeout(this.readystatechanged.bind(this), 1);
	}
};

if(typeof XMLHttpRequest =3D=3D "undefined")
	XMLHttpRequest =3D function() {
		var xmlHttp =3D null;
		if(!AjaxPro.noActiveX) {
			var clsids =3D ["MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", =
"MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
			for(var i=3D0; i<clsids.length && xmlHttp =3D=3D null; i++) {
				try {
					xmlHttp =3D new ActiveXObject(clsids[i]);
				} catch(e){}
			}
		}
		if(xmlHttp =3D=3D null && MS.Browser.isIE) {
			return new AjaxPro.IFrameXmlHttp();
		}
		return xmlHttp;
	};

Object.extend(AjaxPro, {
	noOperation: function() {},
	onLoading: function() {},
	onError: function() {},
	onTimeout: function() {},
	onStateChanged: function() {},
	cryptProvider: null,
	queue: null,
	token: "",
	version: "6.6.14.2",
	ID: "AjaxPro",
	noActiveX: false,
	timeoutPeriod: 10*1000,
	queue: null,

	toJSON: function(o) {
		if(o =3D=3D null)
			return "null";
		switch(o.constructor) {
			case String:
				var v =3D [];
				for(var i=3D0; i<o.length; i++) {
					var c =3D o.charAt(i);
					if(c >=3D " ") {
						if(c =3D=3D "\\" || c =3D=3D '"') v.push("\\");
						v.push(c);
					} else {
						switch(c) {
							case "\n": v.push("\\n"); break;
							case "\r": v.push("\\r"); break;
							case "\b": v.push("\\b"); break;
							case "\f": v.push("\\f"); break;
							case "\t": v.push("\\t"); break;
							default:
								v.push("\\u00");
								v.push(c.charCodeAt().toString(16));
						}
					}
				}
				return '"' + v.join('') + '"';
			case Array:
				var v =3D [];
				for(var i=3D0; i<o.length; i++)
					v.push(AjaxPro.toJSON(o[i])) ;
				return "[" + v.join(",") + "]";
			case Number:
				return isFinite(o) ? o.toString() : AjaxPro.toJSON(null);
			case Boolean:
				return o.toString();
			case Date:
				var d =3D new Object();
				d.__type =3D "System.DateTime";
				d.Year =3D o.getUTCFullYear();
				d.Month =3D o.getUTCMonth() +1;
				d.Day =3D o.getUTCDate();
				d.Hour =3D o.getUTCHours();
				d.Minute =3D o.getUTCMinutes();
				d.Second =3D o.getUTCSeconds();
				d.Millisecond =3D o.getUTCMilliseconds();
				d.TimezoneOffset =3D o.getTimezoneOffset();
				return AjaxPro.toJSON(d);
			default:
				if(typeof o.toJSON =3D=3D "function")
					return o.toJSON();
				if(typeof o =3D=3D "object") {
					var v=3D[];
					for(attr in o) {
						if(typeof o[attr] !=3D "function")
							v.push('"' + attr + '":' + AjaxPro.toJSON(o[attr]));
					}
					if(v.length>0)
						return "{" + v.join(",") + "}";
					return "{}";	=09
				}
				return o.toString();
		}
	},
	dispose: function() {
		if(AjaxPro.queue !=3D null) {
			AjaxPro.queue.dispose();
		}
	}
}, false);

addEvent(window, "unload", AjaxPro.dispose);

AjaxPro.Request =3D function(url) {
	this.url =3D url;
	this.xmlHttp =3D null;
};

AjaxPro.Request.prototype =3D {
	url: null,
	callback: null,
	onLoading: AjaxPro.noOperation,
	onError: AjaxPro.noOperation,
	onTimeout: AjaxPro.noOperation,
	onStateChanged: AjaxPro.noOperation,
	args: null,
	context: null,
	isRunning: false,
	abort: function() {
		if(this.timeoutTimer !=3D null) clearTimeout(this.timeoutTimer);
		if(this.xmlHttp) {
			this.xmlHttp.onreadystatechange =3D AjaxPro.noOperation;
			this.xmlHttp.abort();
		}
		this.isRunning =3D false;
		this.onLoading(false);
	},
	dispose: function() {
		this.abort();
	},
	doStateChange: function() {
		this.onStateChanged(this.xmlHttp.readyState, this);

		if(this.xmlHttp.readyState !=3D 4 || !this.isRunning)
			return;

		this.isRunning =3D false;
		this.duration =3D new Date().getTime() - this.__start;

		if(this.timeoutTimer !=3D null) clearTimeout(this.timeoutTimer);
		this.onLoading(false);
	=09
		var res =3D {
			error: null,
			value: null,
			request: {method:this.method, args:this.args},
			context: this.context,
			duration: this.duration
		};

		if(this.xmlHttp.status =3D=3D 200) {
			res =3D this.createResponse(res);
		} else {
			res =3D this.createResponse(res, true);
			res.error =3D =
{Message:this.xmlHttp.statusText,Type:"ConnectFailure",Status:this.xmlHtt=
p.status};
		}
	=09
		this.abort();
		this.onError(res.error, this);
		=09
		if(typeof this.callback =3D=3D "function")
			this.callback(res, this);
	},
	createResponse: function(r, noContent) {
		if(!noContent) {
			var responseText =3D new String(this.xmlHttp.responseText);

			if(AjaxPro.cryptProvider !=3D null && typeof AjaxPro.cryptProvider =
=3D=3D "function")
				responseText =3D AjaxPro.cryptProvider.decrypt(responseText);

			if(this.xmlHttp.getResponseHeader("Content-Type") =3D=3D "text/xml")
				r.value =3D this.xmlHttp.responseXML;
			else
				if(responseText !=3D null && responseText.trim().length > 0) {
					r.json =3D responseText;
					eval("r.value =3D " + responseText + "*/");
				}
		}
	=09
		/* if(this.xmlHttp.getResponseHeader("X-" + AjaxPro.ID + "-Cache") =
=3D=3D "server") {
			r.isCached =3D true;
		} */
		return r;
	},
	timeout: function() {
		this.duration =3D new Date().getTime() - this.__start;
		var r =3D this.onTimeout(this.duration, this);
		if(typeof r =3D=3D "undefined" || r !=3D false) {
			this.abort();
		} else {
			this.timeoutTimer =3D setTimeout(this.timeout.bind(this), =
AjaxPro.timeoutPeriod);
		}
	},
	invoke: function(method, args, callback, context) {
		this.__start =3D new Date().getTime();

		if(this.xmlHttp =3D=3D null)
			this.xmlHttp =3D new XMLHttpRequest();

		this.isRunning =3D true;
		this.method =3D method;
		this.args =3D args;
		this.callback =3D callback;
		this.context =3D context;
	=09
		var async =3D typeof callback =3D=3D "function" && callback !=3D =
AjaxPro.noOperation;
		var json =3D AjaxPro.toJSON(args) + "";

		if(AjaxPro.cryptProvider !=3D null)
			json =3D AjaxPro.cryptProvider.encrypt(json);
		=09
		if(async) {
			this.xmlHttp.onreadystatechange =3D this.doStateChange.bind(this);
			this.onLoading(true);
		}

		this.xmlHttp.open("POST", this.url, async);
		this.xmlHttp.setRequestHeader("Content-Type", =
"application/x-www-form-urlencoded");
		this.xmlHttp.setRequestHeader("X-" + AjaxPro.ID + "-Method", method);
	=09
		if(AjaxPro.token !=3D null && AjaxPro.token.length > 0)
			this.xmlHttp.setRequestHeader("X-" + AjaxPro.ID + "-Token", =
AjaxPro.token);

		if(!MS.Browser.isIE)
			this.xmlHttp.setRequestHeader("Connection", "close");		// Mozilla Bug =
#246651

		this.timeoutTimer =3D setTimeout(this.timeout.bind(this), =
AjaxPro.timeoutPeriod);

		this.xmlHttp.send(json);
	=09
		json =3D null;
		args =3D null;

		if(!async) {
			return this.createResponse({error: null,value: null});
		}

		return true;=09
	}
};

AjaxPro.RequestQueue =3D function(conc) {
	this.queue =3D [];
	this.requests =3D [];
	this.timer =3D null;
=09
	if(isNaN(conc)) conc =3D 2;

	for(var i=3D0; i<conc; i++) {		// max 2 http connections
		this.requests[i] =3D new AjaxPro.Request();
		this.requests[i].callback =3D function(res) {
			var r =3D res.context;
			res.context =3D r[3][1];
			// try {
				r[3][0](res, this);
			// }catch(e){alert(e.description);}
		};
		this.requests[i].callbackHandle =3D =
this.requests[i].callback.bind(this.requests[i]);
	}
};

AjaxPro.RequestQueue.prototype =3D {
	process: function() {
		this.timer =3D null;
		if(this.queue.length =3D=3D 0) return;

		for(var i=3D0; i<this.requests.length && this.queue.length > 0; i++) {
			if(this.requests[i].isRunning =3D=3D false) {
				var r =3D this.queue.shift();

				this.requests[i].url =3D r[0];
				this.requests[i].onLoading =3D r[3].length >2 && r[3][2] !=3D null =
&& typeof r[3][2] =3D=3D "function" ? r[3][2] : AjaxPro.onLoading;
				this.requests[i].onError =3D r[3].length >3 && r[3][3] !=3D null && =
typeof r[3][3] =3D=3D "function" ? r[3][3] : AjaxPro.onError;
				this.requests[i].onTimeout =3D r[3].length >4 && r[3][4] !=3D null =
&& typeof r[3][4] =3D=3D "function" ? r[3][4] : AjaxPro.onTimeout;
				this.requests[i].onStateChanged =3D r[3].length >5 && r[3][5] !=3D =
null && typeof r[3][5] =3D=3D "function" ? r[3][5] : =
AjaxPro.onStateChanged;

				this.requests[i].invoke(r[1], r[2], this.requests[i].callbackHandle, =
r);
				r =3D null;
			}
		}
		if(this.queue.length > 0 && this.timer =3D=3D null) {
			this.timer =3D setTimeout(this.process.bind(this), 10);
		}
	},
	add: function(url, method, args, e) {
		this.queue.push([url, method, args, e]);

		if(this.timer =3D=3D null) {
			this.timer =3D setTimeout(this.process.bind(this), 1);
		}
	},
	abort: function() {
		this.queue.length =3D 0;
		if (this.timer !=3D null) {
			clearTimeout(this.timer);
		}
		this.timer =3D null;
		for(var i=3D0; i<this.requests.length; i++) {
			if(this.requests[i].isRunning =3D=3D true) {
				this.requests[i].abort();
			}
		}
	},
	dispose: function() {
		for(var i=3D0; i<this.requests.length; i++) {
			var r =3D this.requests[i];
			r.dispose();
		}
		this.requests.clear();
	}
};

AjaxPro.queue =3D new AjaxPro.RequestQueue(2);	// 2 http connections

AjaxPro.AjaxClass =3D function(url) {
	this.url =3D url;
};

AjaxPro.AjaxClass.prototype =3D {
	invoke: function(method, args, e) {
		if(e !=3D null) {
			if(e.length !=3D 6) for(;e.length<6;) e.push(null);
			if(e[0] !=3D null && typeof e[0] =3D=3D "function") {
				return AjaxPro.queue.add(this.url, method, args, e);
			}
		}
		var r =3D new AjaxPro.Request();
		r.url =3D this.url;
		return r.invoke(method, args);
	}
};

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://www.springerlink.com/ajaxpro/ms.ashx

var addNamespace = function(ns) {
	var nsParts = ns.split(".");
	var root = window;
	for(var i=0; i<nsParts.length; i++) {
		if(typeof root[nsParts[i]] == "undefined")
			root[nsParts[i]] = {};
		root = root[nsParts[i]];
	}
};

Object.extend(window, {
	$: function() {
		var elements = [];
		for(var i=0; i<arguments.length; i++) {
			var e = arguments[i];
			if(typeof e == 'string')
				e = document.getElementById(e);
			if (arguments.length == 1)
				return e;
			elements.push(e);
		}
		return elements;
	},
	Class: {
		create: function() {
			return function() {
				if(typeof this.initialize == "function")
					this.initialize.apply(this, arguments);
			}
		}
	}
}, false);

addNamespace("MS.Debug");
MS.Debug = {};		// has been removed to debug version of core.ashx

addNamespace("MS.Position");

Object.extend(MS.Position, {
	getLocation: function(ele) {
		var x = 0;
		var y = 0;
		var p;
		for(p=ele; p; p=p.offsetParent) {
			if(p.offsetLeft && p.offsetTop) {
				x += p.offsetLeft;
				y += p.offsetTop;
			}
		}
		return {left:x,top:y};
	},
	getBounds: function(ele) {
		var offset = MS.Position.getLocation(ele);
		var width = ele.offsetWidth;
		var height = ele.offsetHeight;
		return {left:offset.left, top:offset.top, width:width, height:height};
	},
	setLocation: function(ele, loc) {
		ele.style.position = "absolute";
		ele.style.left = loc.left + "px";
		ele.style.top = loc.top + "px";
	},
	setBounds: function(ele, rect) {
		if(rect.left && rect.top)
			MS.Position.setLocation(ele, rect);
		ele.style.width = rect.width + "px";
		ele.style.height = rect.height + "px";
	}
}, false);

addNamespace("MS.Keys");

Object.extend(MS.Keys, {
	TAB: 9,
	ESC: 27,
	KEYUP: 38,
	KEYDOWN: 40,
	KEYLEFT: 37,
	KEYRIGHT: 39,
	SHIFT: 16,
	CTRL: 17,
	ALT: 18,
	ENTER: 13,
	getCode: function(e) {
		e = MS.getEvent(e);
		if(e != null) return e.keyCode;
		return -1;
	}
}, false);

Object.extend(MS, {
	setText: function(ele, text) {
		if(ele == null) return;
		if(document.all)
			ele.innerText = text;
		else
			ele.textContent = text;
	},
	setHtml: function(ele, html) {
		if(ele == null) return;
		ele.innerHTML = html;
	},
	cancelEvent: function(e) {
		e = MS.getEvent(e);
		if(window.event)
			e.returnValue = false;
		else if(e) {
			e.preventDefault();
			e.stopPropagation();
		}
	},
	getEvent: function(e) {
		if(window.event) return window.event;
		if(e) return e;
		return null;
	},
	getTarget: function(e) {
		e = MS.getEvent(e);
		if(window.event) return e.srcElement;
		if(e) return e.target;
	}
}, false);

var StringBuilder = function() {
	this.v = [];
}

Object.extend(StringBuilder.prototype, {
	append: function(s) {
		this.v.push(s);
	},
	appendLine: function(s) {
		this.v.push(s + "\r\n");
	},
	clear: function() {
		this.v.clear();
	},
	toString: function() {
		return v.join("");
	}
}, true);

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/ajaxpro/converter.ashx

// NameValueCollectionConverter
if(typeof Ajax =3D=3D "undefined") Ajax=3D{};
if(typeof Ajax.Web =3D=3D "undefined") Ajax.Web=3D{};

Ajax.Web.NameValueCollection =3D function(items) {
	this.__type =3D "System.Collections.Specialized.NameValueCollection";
	this.keys =3D [];
	this.values =3D [];

	if(items !=3D null && !isNaN(items.length)) {
		for(var i=3D0; i<items.length; i++)
			this.add(items[i][0], items[i][1]);
	}
}
Object.extend(Ajax.Web.NameValueCollection.prototype, {
	add: function(k, v) {
		if(k =3D=3D null || k.constructor !=3D String || v =3D=3D null || =
v.constructor !=3D String)
			return -1;
		this.keys.push(k);
		this.values.push(v);
		return this.values.length -1;
	},
	containsKey: function(key) {
		for(var i=3D0; i<this.keys.length; i++)
			if(this.keys[i] =3D=3D key) return true;
		return false;
	},
	getKeys: function() {
		return this.keys;
	},
	getValue: function(k) {
		for(var i=3D0; i<this.keys.length && i<this.values.length; i++)
			if(this.keys[i] =3D=3D k) return this.values[i];
		return null;
	},
	setValue: function(k, v) {
		if(k =3D=3D null || k.constructor !=3D String || v =3D=3D null || =
v.constructor !=3D String)
			return -1;
		for(var i=3D0; i<this.keys.length && i<this.values.length; i++) {
			if(this.keys[i] =3D=3D k) this.values[i] =3D v;
			return i;
		}
		return this.add(k, v);
	},
	toJSON: function() {
		return =
AjaxPro.toJSON({__type:this.__type,keys:this.keys,values:this.values});
	}
}, true);

// DataSetConverter
if(typeof Ajax =3D=3D "undefined") Ajax=3D{};
if(typeof Ajax.Web =3D=3D "undefined") Ajax.Web=3D{};

Ajax.Web.DataSet =3D function(t) {
	this.__type =3D "System.Data.DataSet,System.Data";
	this.Tables =3D [];
	this.addTable =3D function(t) {
		this.Tables.push(t);
	}
	if(t !=3D null) {
		for(var i=3D0; i<t.length; i++) {
			this.addTable(t[i]);
		}
	}
}

// DataTableConverter
if(typeof Ajax =3D=3D "undefined") Ajax=3D{};
if(typeof Ajax.Web =3D=3D "undefined") Ajax.Web=3D{};

Ajax.Web.DataTable =3D function(c, r) {
	this.__type =3D "System.Data.DataTable,System.Data";
	this.Columns =3D [];
	this.Rows =3D [];
	this.addColumn =3D function(name, type) {
		this.Columns.push({Name:name,__type:type});
	}
	this.toJSON =3D function() {
		var dt =3D {};
		dt.Columns =3D [];
		for(var i=3D0; i<this.Columns.length; i++)
			dt.Columns.push([this.Columns[i].Name, this.Columns[i].__type]);
		dt.Rows =3D [];
		for(var i=3D0; i<this.Rows.length; i++) {
			var row =3D [];
			for(var j=3D0; j<this.Columns.length; j++)
				row.push(this.Rows[i][this.Columns[j].Name]);
			dt.Rows.push(row);
		}
		return AjaxPro.toJSON(dt);
	}
	this.addRow =3D function(row) {
		this.Rows.push(row);
	}
	if(c !=3D null) {
		for(var i=3D0; i<c.length; i++)
			this.addColumn(c[i][0], c[i][1]);
	}
	if(r !=3D null) {
		for(var i=3D0; i<r.length; i++) {
			var row =3D {};
			for(var c=3D0; c<this.Columns.length && c<r[i].length; c++)
				row[this.Columns[c].Name] =3D r[i][c];
			this.addRow(row);
		}
	}
}

// IDictionaryConverter
if(typeof Ajax =3D=3D "undefined") Ajax=3D{};
if(typeof Ajax.Web =3D=3D "undefined") Ajax.Web=3D{};

Ajax.Web.Dictionary =3D function(type,items) {
	this.__type =3D type;
	this.keys =3D [];
	this.values =3D [];

	if(items !=3D null && !isNaN(items.length)) {
		for(var i=3D0; i<items.length; i++)
			this.add(items[i][0], items[i][1]);
	}
}
Object.extend(Ajax.Web.Dictionary.prototype, {
	add: function(k, v) {
		this.keys.push(k);
		this.values.push(v);
		return this.values.length -1;
	},
	containsKey: function(key) {
		for(var i=3D0; i<this.keys.length; i++)
			if(this.keys[i] =3D=3D key) return true;
		return false;
	},
	getKeys: function() {
		return this.keys;
	},
	getValue: function(key) {
		for(var i=3D0; i<this.keys.length && i<this.values.length; i++)
			if(this.keys[i] =3D=3D key) return this.values[i];
		return null;
	},
	setValue: function(k, v) {
		for(var i=3D0; i<this.keys.length && i<this.values.length; i++) {
			if(this.keys[i] =3D=3D k) this.values[i] =3D v;
			return i;
		}
		return this.add(k, v);
	},
	toJSON: function() {
		return =
AjaxPro.toJSON({__type:this.__type,keys:this.keys,values:this.values});
	}
}, true);


------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/ajaxpro/MetaPress.Web.UI.Page,MetaPress.Web.ashx

if(typeof MetaPress =3D=3D "undefined") MetaPress=3D{};
if(typeof MetaPress.Web =3D=3D "undefined") MetaPress.Web=3D{};
if(typeof MetaPress.Web.UI =3D=3D "undefined") MetaPress.Web.UI=3D{};
MetaPress.Web.UI.Page_class =3D function() {};
Object.extend(MetaPress.Web.UI.Page_class.prototype, Object.extend(new =
AjaxPro.AjaxClass(), {
	LogError: function(message, url, lineNumber) {
		return this.invoke("LogError", {"message":message, "url":url, =
"lineNumber":lineNumber}, this.LogError.getArguments().slice(3));
	},
	LogException: function(name, description, number) {
		return this.invoke("LogException", {"name":name, =
"description":description, "number":number}, =
this.LogException.getArguments().slice(3));
	},
	url: '/ajaxpro/MetaPress.Web.UI.Page,MetaPress.Web.ashx'
}));
MetaPress.Web.UI.Page =3D new MetaPress.Web.UI.Page_class();


------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/ajaxpro/MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl,MetaPress.Products.Reader.ashx

if(typeof MetaPress =3D=3D "undefined") MetaPress=3D{};
if(typeof MetaPress.Products =3D=3D "undefined") =
MetaPress.Products=3D{};
if(typeof MetaPress.Products.Reader =3D=3D "undefined") =
MetaPress.Products.Reader=3D{};
if(typeof MetaPress.Products.Reader.Web =3D=3D "undefined") =
MetaPress.Products.Reader.Web=3D{};
if(typeof MetaPress.Products.Reader.Web.UI =3D=3D "undefined") =
MetaPress.Products.Reader.Web.UI=3D{};
MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl_class =3D =
function() {};
Object.extend(MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl_cl=
ass.prototype, Object.extend(new AjaxPro.AjaxClass(), {
	ToggleTocAlert: function(code) {
		return this.invoke("ToggleTocAlert", {"code":code}, =
this.ToggleTocAlert.getArguments().slice(1));
	},
	url: =
'/ajaxpro/MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl,MetaPr=
ess.Products.Reader.ashx'
}));
MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl =3D new =
MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl_class();


------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.SelectedItemsHyperLink.js,MetaPress.Web.js

function selectedItemsHyperLink_onLoad(collection)=20
{
  selectedItemsHyperLink_attachControls(collection);
  selectedItems_updateSelectedItemsHyperLinkCounts(collection);
}

function selectedItemsHyperLink_attachControls(collection)
{
  var boxes =3D selectedItems_getControls(collection);
 =20
  for (k =3D 0; k < boxes.length; k++)
  {
    addHandler(boxes[k], 'onclick', =
selectedItemsHyperLink_onCheckChanged);
    selectedItemLinkButton_onLoad(boxes[k]);
  }
}

function selectedItemsHyperLink_getCount(collection)
{
  return window[collection + 'Count'];
}

function selectedItemsHyperLink_setCount(collection, count)
{
  window[collection + 'Count'] =3D count;
}

function selectedItemsHyperLink_onCheckChanged(e)
{
  sender =3D getSender(e);
   =20
  if (sender.tagName !=3D 'A')
    sender =3D getParent(sender);
   =20
  var collection =3D getAttributeValue(sender, 'collection');

  selectedItems_updateSelectedItemsHyperLinkCounts(collection);
}

  
------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.Positioning.js,MetaPress.Web.js

function getWidth(element)
{
  var width;
 =20
  if (element.offsetWidth)
    width =3D element.offsetWidth;
  else if (element.clientWidth)
    width =3D element.clientWidth;
  else
    width =3D element.scrollWidth; =20
   =20
  width =3D parseInt(width);
  if (isNaN(width))
    return 0;
  else
    return width;
}


function getHeight(element)
{
  var height;
 =20
  if (element.offsetHeight)
    height =3D element.offsetHeight;
  else if (element.clientHeight)
    height =3D element.clientHeight;
  else
    height =3D element.scrollHeight; =20
   =20
  height =3D parseInt(height);
 =20
  if (isNaN(height))
    return 0;
  else
    return height;
}
function getLeft(element)
{
  var curLeft =3D 0;

  if (element.offsetParent)
  {
    while (element.offsetParent)
    {
      curLeft +=3D element.offsetLeft;
      element =3D element.offsetParent;
    }
  }
  else if (element.x)
    curLeft =3D element.x;
 =20
  return curLeft;
}
function getTop(element)
{
  var curTop =3D 0;
  if (element.offsetParent)
  {
    while (element.offsetParent)
    {

      curTop +=3D element.offsetTop;
      element =3D element.offsetParent;
    }
  }
  else if (element.y)
    curTop =3D element.y;
 =20
  return curTop;
}


function getRightAlignOffset(element, target)=20
{
  var offset =3D getLeft(target);
  offset +=3D getWidth(target);
  offset -=3D getWidth(element);
  return offset;
}

function getStringWidth(string)
{
  if (string =3D=3D '')
    return 0;
   =20
  var div =3D createHiddenDiv();
  div.innerHTML =3D string;
 =20
  return getWidth(div);
}

function getWindowWidth()
{
  if (window.innerWidth)
    return window.innerWidth;
  else if (document.documentElement && =
document.documentElement.clientWidth)
    return document.documentElement.clientWidth;
  else if (document.body && document.body.clientWidth)
    return document.body.clientWidth;
  else
    return -1;
}


function createHiddenDiv()
{

  var div =3D getElement('hiddenDiv');
  if (div =3D=3D null)
  {
    div =3D document.createElement('div');
    div.style.position =3D "absolute";
    div.style.left =3D -10000;
    div.id =3D 'hiddenDiv';
    div.style.padding =3D '0px';
    div.style.margin =3D '0px';
    document.body.appendChild(div);
  }
   =20
  return div;
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Products.Reader.PrimitiveHeadingControl.js,MetaPress.Products.Reader.js

function primitiveHeadingControl_markItem(sender)=20
{=20
  var value =3D getAttributeValue(sender, 'value');=20
  var selected =3D selectedItems_isSelected('SelectedPrimitives', =
value);=20
  if (selected)=20
  {=20
    selectedItems_setSelected('SelectedPrimitives', value, false);=20
    var text =3D getAttributeValue(sender, 'unselectedText');=20
  }=20
  else=20
  {=20
    selectedItems_setSelected('SelectedPrimitives', value, true);=20
    var text =3D getAttributeValue(sender, 'selectedText');=20
  }=20
  setInnerText(sender.childNodes[0], text);=20
  =
selectedItems_updateSelectedItemsHyperLinkCounts('SelectedPrimitives');
}=20

function primitiveHeadingControl_toggleTocAlert(sender)
{
  var code =3D getAttributeValue(sender, 'value');

  if =
(!MetaPress.Products.Reader.Web.UI.PrimitiveHeadingControl.ToggleTocAlert=
(code).value)
    return true;
   =20
  var eText =3D getAttributeValue(sender, 'enabledText');
  var dText =3D getAttributeValue(sender, 'disabledText');
 =20
  if (getInnerText(sender) =3D=3D eText)
    setInnerText(sender, dText);
  else
    setInnerText(sender, eText);=20

  return false;
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.Common.js,MetaPress.Web.js

/* -------------------- DOM Methods --------------------*/

function getElement(id)
{
  return document.getElementById(id);
}

function getElementByKeyAndTagName(parent, key, tagName)
{
  var elements =3D parent.getElementsByTagName(tagName);
 =20
  for (var k =3D 0; k < elements.length; k++)
  {
    if (getAttributeValue(elements[k], 'key') =3D=3D key)
      return elements[k];
  }
 =20
  if (tagName =3D=3D 'DIV') // backwards compatiblity because ASP.NET =
turns DIVs into TABLES.
  {
    elements =3D parent.getElementsByTagName('TABLE');
    for (var k =3D 0; k < elements.length; k++)
    {
      if (getAttributeValue(elements[k], 'key') =3D=3D key)
        return elements[k];
    }
  }
  return null;
}

function getParent(element)
{
  if (element.parentNode)
    return element.parentNode
  else if (element.parentElement)
    return element.parentElement;
  else
    return null;
}

function getAttributeValue(element, attributeName)
{=20
  if (element =3D=3D null)
    return null;
   =20
  if (element.attributes)
  {
    var attribute =3D element.attributes.getNamedItem(attributeName);=20
    if (attribute)
      return attribute.value;
  }=20
  else if (element.getAttribute)
  {
    return element.getAttribute(attributeName);
  }
 =20
  return '';
}

function setAttributeValue(element, attributeName, attributeValue)
{
  if (element && element.attributes)
  {
    var attribute =3D document.createAttribute(attributeName);
    attribute.value =3D attributeValue;
    element.attributes.setNamedItem(attribute);
  }
}

function getInnerText(element)
{
  if (element.innerText)
    return element.innerText
  else if (document.createRange)
  {
    var range =3D document.createRange();
    range.selectNodeContents(this);
    return range.toString();
  }
  else
    return '';
}

function setInnerText(element, value)
{
  if (element.innerText)
    element.innerText =3D value;
  else if (document.createRange)
  {
    var range =3D document.createRange();
    range.selectNodeContents(element);
    range.deleteContents();
    element.appendChild(document.createTextNode(value));
  }
}

function setDefaultFocus(elementId)=20
{
  var element =3D getElement(elementId);
  if (element =3D=3D null)
    return false;
  else
    element.focus();
} =20

/* -------------------- End DOM Methods -------------------- */

/* -------------------- Event Methods -------------------- */

function addHandler(element, eventName, eventHandler)
{
  if (!element)
    return false;
   =20
  if (element.addEventListener)
  {
    if (eventName.substring(0,2) =3D=3D 'on')
      eventName =3D eventName.substring(2);
    element.addEventListener(eventName, eventHandler, false);
    }
  else if(element.attachEvent)
    element.attachEvent(eventName, eventHandler);
  else
    element[eventName] =3D eventHandler;
}

function removeHandler(element, eventName, eventHandler)
{
  if (!element)
    return false;
   =20
  if (element.removeEventListener)
  {
    if (eventName.substring(0,2) =3D=3D 'on')
      eventName =3D eventName.substring(2);
    element.removeEventListener(eventName, eventHandler, false);
    }
  else if(element.detachEvent)
    element.detachEvent(eventName, eventHandler);
  else
    element[eventName] =3D null;
}

function getEvent(e)
{
  if (e)
    return e;
  else
    return window.event;
}

function getSender(e)
{
  if (e.srcElement)
    return e.srcElement
  else
    return e.target;
}

function abortEvent(e)
{
  if (isIE) =20
  { =20
      e.cancelBubble =3D true; =20
      e.returnValue =3D false; =20
  } =20
  else
  {=20
    e.stopPropagation(); =20
    e.preventDefault(); =20
  } =20
}

/* -------------------- End Event Methods -------------------- */

/* --------------------  Style Methods --------------------  */

function getCurrentStyle(element)
{
  if (element =3D=3D null)
    return null;
   =20
  if (element.currentStyle)
    return element.currentStyle
  else if (window.getComputedStyle)
    return window.getComputedStyle(element, '');
  else
    return null;
}

/* -------------------- End Style Methods -------------------- */

/* -------------------- Misc Methods -------------------- */

function getQueryStringValue(key)
{
  var query =3D window.location.search.substring(1);
  var vars =3D query.split("&");
  for (var i=3D0;i<vars.length;i++)=20
  {
    var pair =3D vars[i].split("=3D");
    if (pair[0] =3D=3D key)=20
      return pair[1];
  }=20
  return '';
}

function setFocus(element)
{
  if (element !=3D null && canAcceptFocus(element))=20
  {
     element.focus();
     switch (element.tagName)
     {
       case 'SELECT':
         if (element.options.length > 0)
            element.selectedIndex =3D 0;
         break;
      =20
       case 'INPUT':
         switch (getAttributeValue(element, 'type'))
         {
           case '', 'text', 'password':
             element.select();
             break;
         }
         break;
     }
  }
}

function canAcceptFocus(element)
{
  if (element.style.display =3D=3D 'none' )
    return false;
   =20
  return true;
}

function isDefined(variableName)
{
  return window[variableName] !=3D null;
}

function toggleVisibility(element, visibleStyle)
{
  if (element =3D=3D null)
    return;
   =20
  if (visibleStyle =3D=3D null)
    visibleStyle =3D '';
   =20
  if (getCurrentStyle(element).display =3D=3D 'none')
    element.style.display =3D visibleStyle;
  else
    element.style.display =3D 'none';
}

/* -------------------- End Misc Methods -------------------- */

/* -------------------- String Methods -------------------- */

function trim(text)
{=20
  return text;
  while (text.substring(0,1) =3D=3D ' ')=20
  {
    text =3D text.substring(1, text.length);
  }
 =20
  while (text.substring(text.length-1,text.length) =3D=3D ' ')
  {
    text =3D text.substring(0, text.length-1);
  }
}

function startsWith(string, value)
{
  if (string =3D=3D null || value =3D=3D null)
    return false;
   =20
  if (string =3D=3D '' || value =3D=3D '')
    return false;
   =20
  if (string.length < value.length)
    return false;
   =20
  return string.substring(string, value.length) =3D=3D value;
}

/*
function endsWith(string, value)
{
  if (string =3D=3D null || value =3D=3D null)
    return false;
   =20
  if (string.length < value.length)
    return false;
   =20
  return (string.substring(string.length - value.length, value.length) =
=3D=3D value)
}
*/

/* -------------------- End String Methods -------------------- */

function initValidators()=20
{
  if (typeof ValidatorOnLoad =3D=3D 'undefined' )
    return;
   =20
  ValidatorOnLoad();
  var i;
  for (i =3D 0; i < Page_Validators.length; i++) {
      ValidatorValidate(Page_Validators[i]);
  }
  ValidatorUpdateIsValid();
  Page_BlockSubmit =3D !Page_IsValid;
 =20
  return Page_IsValid;
}
------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.Latex.js,MetaPress.Web.js

function latex_initClientSide()
{
  latex_showClientSide();
  try
  {
    jsMath.Autoload.Check();
    jsMath.Process();
  }
  catch(e)
  {
    if (handleException)
      handleException(e);
  }
  jsMath.Synchronize('latex_hideErrors()');
}

function latex_showClientSide()
{
  var tex =3D document.getElementsByTagName('SPAN');
  for (k =3D 0; k < tex.length; k++)
  {
    if (tex[k].className =3D=3D 'cs')
      tex[k].style.display =3D 'inline';
    else if (tex[k].className =3D=3D 'ss')
      tex[k].style.display =3D 'none';
  }
}


function latex_hideErrors()=20
{
  var tex =3D document.getElementsByTagName('SPAN');
  for (k =3D 0; k < tex.length; k++)
  {
    if (tex[k].className =3D=3D 'error' )
    {
      var parent =3D getParent(tex[k]);
      if (parent && parent.className =3D=3D 'typeset')
      {
        parent =3D getParent(parent);
        if (parent && parent.className =3D=3D 'cs')
        {
          parent =3D getParent(parent);
          if (parent && parent.className =3D=3D 'latex')
          {
            parent.childNodes[0].style.display =3D 'inline';
            parent.childNodes[1].style.display =3D 'none';               =
        =20
          }
        }
      }  =20
    }
  }
}=20

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.PopOutMenuItem.js,MetaPress.Web.js


function popOutMenuItem_init()
{
  var items =3D document.getElementsByTagName('A');
 =20
  for (var k =3D 0; k < items.length; k++)
  {
    if (items[k].className =3D=3D 'noScriptLink')
      items[k].style.cursor =3D 'default';
  }
 // addIFrames();
}

function popOutMenuItem_addEventHandlers(itemId) =20
{ =20
  var item =3D getElement(itemId);

  if (document.getElementById) =20
  { =20
    item.onmouseover =3D popOutMenuItem_expand; =20
    item.onmouseout =3D popOutMenuItem_collapse; =20
  =20
    var children =3D item.getElementsByTagName('LI');
   =20
    for (var k =3D 0; k < children.length; k++)
    {
      item =3D children[k];
      if (item.attributes.getNamedItem('direction'))
      {
        item.onmouseover =3D popOutMenuItem_expand; =20
        item.onmouseout =3D popOutMenuItem_collapse; =20
      }
    }
  } =20
}

function popOutMenuItem_collapse(e) =20
{ =20
  e =3D getEvent(e);
  var sender =3D getSender(e);
 =20
  this.className =3D this.className.replace('expanded', 'collapsed');
  if (this.iFrame)
  {
    this.iFrame.className =3D 'iFrameCollapsed';
    this.iFrame.style.display =3D 'none';
  }
} =20

function popOutMenuItem_getPopOutDirection(item)
{
  var direction =3D item.attributes.getNamedItem('direction')
  if (direction && direction.value =3D=3D 'vertical')
    return 'vertical';
  else
    return 'horizontal';
}

function popOutMenuItem_expand(e) =20
{ =20
  e =3D getEvent(e);
  var sender =3D getSender(e);
       =20
  this.className =3D this.className.replace('collapsed', 'expanded');
  if (this.iFrame )
  {
    this.iFrame.style.left =3D getLeft(this);
    this.iFrame.style.top =3D getTop(this);
    this.iFrame.style.width =3D getIFrameWidth(this) +  'px';
    this.iFrame.style.height =3D getIFrameHeight(this) + 'px';
    this.iFrame.className =3D 'iFrameExpanded';
    this.iFrame.style.display =3D 'block';
  }

  if (popOutMenuItem_getPopOutDirection(this) =3D=3D 'vertical')
    popOutMenuItem_popOutVertical(this);
  else
    popOutMenuItem_popOutHorizontal(this);
   =20
}=20


function popOutMenuItem_popOutHorizontal(item)
{
  var width =3D getWidth(getParent(item));=20
  if (isIE)
  {
      var padding =3D parseInt(getCurrentStyle(item).paddingLeft);
      padding -=3D =
parseInt(getCurrentStyle(getParent(getParent(item))).paddingRight);
      width -=3D padding;
  }
 =20
  var children =3D item.childNodes;
  var child;
 =20
  for (var k =3D 0; k < children.length; k++)
  {
    child =3D children[k];
    if (child.style)
    {
      child.style.top =3D 0;
      child.style.left =3D width;
    }
  }
}

function popOutMenuItem_popOutVertical(item)
{
  var height =3D getHeight(item);

  //if (!isIE)
    height -=3D 1;
   =20
  var children =3D item.childNodes;
  var child;
 =20
  for (var k =3D 0; k < children.length; k++)
  {
    child =3D children[k];
    if (child.style)
    {
      child.style.top =3D height; =20
      child.style.left =3D 0;
    }
  }
}

function getIFrameWidth(sender)
{
  var maxWidth =3D getWidth(sender);
  var children =3D sender.childNodes;
 =20
  for (k =3D 0; k < children.length; k++)
  {
    var item =3D children[k];
    var width =3D getWidth(item);
     =20
    if (width > maxWidth)
      maxWidth =3D width;
  } =20
    return maxWidth;
}

function getIFrameHeight(sender)
{
 =20
  var totalHeight =3D getHeight(sender);
  var children =3D sender.childNodes;
 =20
  for (k =3D 0; k < children.length; k++)
    totalHeight +=3D getHeight(children[k]);

  return totalHeight;
}

function addIFrames()
{
  var items =3D document.getElementsByTagName('LI');
 =20
  for (var k =3D 0; k < items.length; k++)
  {
    if (getAttributeValue(items[k], 'direction') !=3D '')
    {
      var iFrame =3D document.createElement('IFRAME');
      iFrame.frameBorder =3D 0;
      iFrame.src =3D 'javascript:;';
      iFrame.className =3D 'collapsed';
      iFrame.style.position =3D 'absolute';
      iFrame.style.width =3D '0px';
      iFrame.style.height =3D '0px';
      iFrame.style.display =3D 'none';
      iFrame.style.filter =3D =
'progid:DXImageTransform.Microsoft.Alpha(style=3D0,opacity=3D0)';
      items[k].iFrame =3D items[k].parentNode.insertBefore(iFrame, =
items[k]);
      iFrame.zIndex =3D 1000;
      items[k].zIndex =3D 10000;
    }
  }
}
------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.SelectedItems.js,MetaPress.Web.js

function selectedItems_getCount(collection)
{
  var c =3D getCookie(collection);
  if (c)
  {
    return c.split(',').length - 1;
    }
  else
    return 0;
}

function selectedItems_setSelected(collection, value, select)=20
{                           =20
  if (select)=20
  {
    if (getCookie(collection) =3D=3D null)=20
      setCookie(collection, ",'" + value + "'");
    else
      setCookie(collection, getCookie(collection) + ",'" + value + "'");
  } else {
    setCookie(collection, getCookie(collection).replace(",'" + value + =
"'", ""));
  }
}

function selectedItems_isSelected(collection, value)
{
  var c =3D getCookie(collection);
  if (c =3D=3D null)
    return false;
  else
    return (getCookie(collection).indexOf(",'" + value + "'") > -1);
}

function getCookie(key)=20
{=20
  if (document.cookie.length > 0)=20
  {=20
    begin =3D document.cookie.indexOf(key + "=3D");=20
    if (begin !=3D -1) {=20
      begin +=3D key.length + 1;=20
      end =3D document.cookie.indexOf(";", begin);
      if (end =3D=3D -1)=20
        end =3D document.cookie.length;
      return unescape(document.cookie.substring(begin, end));=20
    }=20
  }
  return null;=20
}

function setCookie(key, value)=20
{=20
  document.cookie =3D key + "=3D" + escape(value) + ";path=3D/";
}

function delCookie (key)=20
{=20
  if (getCookie(key))=20
  {
    document.cookie =3D key + "=3D" + "; expires=3DThu, 01-Jan-70 =
00:00:01 GMT";
  }
}


function selectedItems_getControls(collection)
{

  var controls =3D new Array();
  var boxes =3D document.getElementsByTagName('A');
 =20
  for (k =3D 0; k < boxes.length; k++)
  {
    if (getAttributeValue(boxes[k], 'collection') =3D=3D collection &&
        getAttributeValue(boxes[k], 'isSelectedItemControl') =3D=3D =
'true')
        {
          controls =3D controls.concat(boxes[k]);
        }
  }
  return controls;
}

function selectedItems_setSelectedItemsHyperLinkText(link, count)
{
  var span =3D link.childNodes[1];
  if (count =3D=3D 0 || count =3D=3D null)
  {
    setInnerText(span, '');
    link.style.fontWeight =3D 'normal';
  }
  else =20
  {
    span.innerHTML =3D '&nbsp;(' + count + ')';
    link.style.fontWeight =3D 'bold';
  }
}

function selectedItems_updateSelectedItemsHyperLinkCounts(collection)
{
  var links =3D document.getElementsByTagName('a');
  var count =3D selectedItems_getCount(collection);
 =20
  for (var k =3D 0; k < links.length; k++)
  {=20
    if (getAttributeValue(links[k], 'isSelectedItemsLink') =3D=3D 'true' =
&&
        getAttributeValue(links[k], 'displayCount') =3D=3D 'true' &&
        getAttributeValue(links[k], 'collection') =3D=3D collection)
      selectedItems_setSelectedItemsHyperLinkText(links[k], count);
  }
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/jsMath/plugins/noImageFonts.js

/*
 *  noImageFonts.js
 * =20
 *  Part of the jsMath package for mathematics on the web.
 *
 *  This file indicates that no image fonts are available.
 *  It should be loaded BEFORE jsMath.js is loaded.
 *
 *  =
---------------------------------------------------------------------
 *
 *  Copyright 2004-2006 by Davide P. Cervone
 *=20
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *=20
 *      http://www.apache.org/licenses/LICENSE-2.0
 *=20
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or =
implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */

if (!window.jsMath) {window.jsMath =3D {}}
window.jsMath.noImgFonts =3D 1;

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/jsMath/plugins/autoload.js

/*
 *  autoload.js
 * =20
 *  Part of the jsMath package for mathematics on the web.
 *
 *  This file is a plugin that checks if a page contains any math
 *  that must be processed by jsMath, and only loads jsMath.js
 *  when there is.
 * =20
 *  You can control the items to look for via the variables
 * =20
 *      jsMath.Autoload.findMathElements
 *      jsMath.Autoload.findTeXstrings
 *      jsMath.Autoload.findLaTeXstrings
 *      jsMath.Autoload.findCustomStrings
 *      jsMath.Autoload.findCustomSettings
 * =20
 *  which control whether to look for SPAN and DIV elements of class
 *  "math", TeX strings that will be converted by jsMath.ConvertTeX(), =
or
 *  LaTeX strings that will be converted by jsMath.ConvertLaTeX().  By
 *  default, the first is true and the second and third are false.  The
 *  findCustomStrings can be used to specify your own delimiters for
 *  in-line and display mathematics, e.g
 * =20
 *      jsMath.Autoload.findCustomStrings =3D [
 *         '[math],'[/math]',          // start and end in-line math
 *         '[display]','[/display]'    // start and end display math
 *      ];
 * =20
 *  Finally, findCustomSettings can be set to an object reference whose
 *  name:value pairs control the individual search settings for =
tex2math. =20
 *  (See the plugins/tex2math.js file for more details).
 * =20
 *  If any math strings are found, jsMath.js will be loaded =
automatically,=20
 *  but not loaded otherwise.  If any of the last four are set and TeX =
math
 *  strings are found, then plugins/tex2ath.js will be loaded
 *  automatically.  jsMath.Autoload.needsJsMath will be set to true or
 *  false depending on whether jsMath needed to be loaded.
 * =20
 *  The value of jsMath.Autoload.element controls the element to be
 *  searched by the autoload plug-in.  If unset, the complete document =
will
 *  be searched.  If set to a string, the element with that name will be
 *  searched.  If set to a DOM object, that object and its children will
 *  be searched.
 * =20
 *  Finally, there are two additional parameters that control files to
 *  be loaded after jsMath.js, should it be needed.  These are
 * =20
 *      jsMath.Autoload.loadFonts
 *      jsMath.Autoload.loadFiles
 * =20
 *  If jsMath.js is loaded, the fonts contained in the loadFonts array
 *  will be loaded, and the JavaScript files listed in the loadFiles =
array
 *  will be run.  Relative URL's are loaded based from the URL =
containing
 *  jsMath.js.
 * =20
 *  The autoload plugin can be loaded in the document HEAD or in the =
BODY.=20
 *  If it is loaded in the HEAD, you will need to call =
jsMath.Autoload.Check()
 *  at the end of the BODY (say in the window.onload handler) in order =
to
 *  get it to check the page for math that needs to be tagged, otherwise =
load
 *  the file at the bottom of the BODY and it will run the check =
automatically.
 *
 *  You can call jsMath.Autoload.Run() after the check has been =
performed
 *  in order to call the appropriate tex2math routines for the given =
Autoload
 *  settings.  You can call jsMath.Autoload.Run() even when jsMath isn't =
loaded.
 * =20
 *  =
---------------------------------------------------------------------
 *
 *  Copyright 2004-2006 by Davide P. Cervone
 *=20
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *=20
 *      http://www.apache.org/licenses/LICENSE-2.0
 *=20
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or =
implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */

/************************************************************************=
*/

/*
 *  Make sure jsMath.Autoload is available
 */
if (!window.jsMath) {window.jsMath =3D {}}
if (jsMath.Autoload =3D=3D null) {jsMath.Autoload =3D {}}
jsMath.Add =3D function (dst,src) {for (var id in src) {dst[id] =3D =
src[id]}},
jsMath.document =3D document; // tex2math needs this

jsMath.Add(jsMath.Autoload,{
 =20
  Script: {

    iframe: null,  // the hidden iframe

    /*
     *  Load an external JavaScript file asynchronously
     */
    Load: function (url) {
      this.iframe =3D document.createElement('iframe');
      this.iframe.style.visibility =3D 'hidden';
      this.iframe.style.position =3D 'absolute';
      this.iframe.style.width  =3D '0px';
      this.iframe.style.height =3D '0px';
      if (document.body.firstChild) {
        =
document.body.insertBefore(this.iframe,document.body.firstChild);
      } else {
        document.body.appendChild(this.iframe);
      }
      this.url =3D url; =
setTimeout('jsMath.Autoload.Script.setURL()',100);
    },
    endLoad: function () =
{setTimeout('jsMath.Autoload.Script.AfterLoad()',1)},

    /*
     *  Use location.replace() to avoid browsers placing the file in
     *  the history (and messing up the BACK button action).  Not
     *  completely effective in Firefox 1.0.x.  Safari won't handle
     *  replace() if the document is local (not sure if that's really
     *  the issue, but that's the only time I see it).
     */
    setURL: function () {
      var url =3D jsMath.Autoload.root+"jsMath-autoload.html";
      var doc =3D this.iframe.contentDocument;
      if (!doc && this.iframe.contentWindow) {doc =3D =
this.iframe.contentWindow.document}
      if (navigator.vendor =3D=3D "Apple Computer, Inc." &&
          document.location.protocol =3D=3D 'file:') {doc =3D null}
      if (doc) {doc.location.replace(url)} else {this.iframe.src =3D =
url}
    },

    /*
     *  Queue items that need to be postponed until jsMath has run
     */
    queue: [],
    Push: function (name,data) {this.queue[this.queue.length] =3D =
[name,data]},
    RunStack: function () {
      if (this.tex2math) {jsMath.Autoload.Check2(); return}
      for (var i =3D 0; i < this.queue.length; i++) {
        var name =3D this.queue[i][0];
        var data =3D this.queue[i][1];
        if (data.length =3D=3D 1) {jsMath[name](data[0])}
          else {jsMath[name](data[0],data[1],data[2],data[3])}
      }
    },
 =20
    AfterLoad: function () {jsMath.Autoload.Script.RunStack()},

    /*
     *  Look up the jsMath root directory, if it is not already supplied
     */
    Root: function () {
      if (jsMath.Autoload.root) return;
      var script =3D document.getElementsByTagName('script');
      if (script) {
        for (var i =3D 0; i < script.length; i++) {
          var src =3D script[i].src;
          if (src && src.match('(^|/)plugins/autoload.js$')) {
            jsMath.Autoload.root =3D =
src.replace(/plugins\/autoload.js$/,'');
            break;
          }
        }
      }
    }

  },
 =20
  /**************************************************************/
 =20
  /*
   *  Load tex2math first (so we can call its search functions
   *  to look to see if anything needs to be turned into math)
   *  if it is needed, otherwise go on to the second check.
   */
  Check: function () {
    if (this.checked) return; this.checked =3D 1;
    if (this.findTeXstrings || this.findLaTeXstrings ||
        this.findCustomStrings || this.findCustomSettings) {
      this.Script.tex2math =3D 1;
      this.Script.Load('plugins/tex2math.js');
    } else {
      if (!jsMath.tex2math) {jsMath.tex2math =3D {}}
      this.Check2();
    }
  },

  /*
   *  Once tex2math is loaded, use it to check for math that
   *  needs to be tagged for jsMath, and load jsMath if it is needed
   */
  Check2: function () {
    this.Script.tex2math =3D 0;
    this.needsJsMath =3D 0; if (this.checkElement =3D=3D null) =
{this.checkElement =3D null}
    if (this.findMathElements) {
      this.needsJsMath =3D this.areMathElements(this.checkElement);
    }
    jsMath.tex2math.callback =3D this.tex2mathCallback;
    if (this.findTeXstrings && !this.needsJsMath) {
      jsMath.tex2math.ConvertTeX(this.checkElement);
    }
    if (this.findLaTeXstrings && !this.needsJsMath) {
      jsMath.tex2math.ConvertLaTeX(this.checkElement);
    }
    if (this.findCustomSettings && !this.needsJsMath) {
      =
jsMath.tex2math.Convert(this.checkElement,this.findCustomSettings);
    }
    if (this.findCustomStrings && !this.needsJsMath) {
      var s =3D this.findCustomStrings;
      jsMath.tex2math.CustomSearch(s[0],s[1],s[2],s[3]);
      jsMath.tex2math.ConvertCustom(this.checkElement);
    }
    jsMath.tex2math.callback =3D null;

    if (this.needsJsMath) {
      this.LoadJsMath();
    } else {
      jsMath.Autoload.Script =3D null;
      jsMath.Process =3D function () {};
      jsMath.ProcessBeforeShowing =3D function () {};
      jsMath.Synchronize =3D function () {};
      jsMath.ConvertTeX =3D function () {};
      jsMath.ConvertTeX2 =3D function () {};
      jsMath.ConvertLaTeX =3D function () {};
      jsMath.ConvertCustom =3D function () {};
      jsMath.CustomSearch =3D function () {};
      jsMath.Macro =3D function () {};
      jsMath.Autoload.Run =3D function () {};
    }
  },

  /*
   *  A callback used in the tex2math searches to signal that
   *  some math has been found.
   */
  tex2mathCallback: function () {
    jsMath.Autoload.needsJsMath =3D 1;
    return false;
  },

  /*
   *  jsMath.Autoload.Run() can be called to perform the=20
   *  tex2math calls given by the Autoload parameters.
   */
  Run: function (data) {this.Script.Push('Autorun',[data])},

  Autorun: function () {
    if (this.findTeXstrings) {jsMath.ConvertTeX(this.checkElement)}
    if (this.findLaTeXstrings) {jsMath.ConvertLaTeX(this.checkElement)}
    if (this.findCustomSettings) {
      jsMath.Synchronize(function () {
        jsMath.tex2math.Convert(jsMath.Autoload.checkElement,
                                jsMath.Autoload.findCustomSettings);
      });
    }
    if (this.findCustomStrings) {
      var s =3D this.findCustomStrings;
      jsMath.CustomSearch(s[0],s[1],s[2],s[3]);
      jsMath.ConvertCustom(this.checkElement);
    }
  },

  /*
   *  Look to see if there are SPAN or DIV elements of class "math".
   */
  areMathElements: function (obj) {
    if (!obj) {obj =3D document}
    if (typeof(obj) =3D=3D 'string') {obj =3D =
document.getElementById(obj)}
    if (!obj.getElementsByTagName) {return false}
    var math =3D obj.getElementsByTagName('div');
    for (var k =3D 0; k < math.length; k++)=20
      {if (math[k].className.match(/(^| )math( |$)/)) {return true}}
    math =3D obj.getElementsByTagName('span');
    for (var k =3D 0; k < math.length; k++)=20
      {if (math[k].className.match(/(^| )math( |$)/)) {return true}}
    return false;
  },

  /*
   *  When math tags are found, load the jsMath.js file,
   *  and afterward, load any auxiliary files or fonts,
   *  and then do any pending commands.
   */
  LoadJsMath: function () {
    if (this.root) {
      this.setMessage('Loading jsMath...');
      this.Script.AfterLoad =3D this.afterLoad;
      this.Script.Load('jsMath.js');
    } else {
      alert("Can't determine URL for jsMath.js");
    }
  },
  afterLoad: function () {
    if (jsMath.tex2math.window) {jsMath.tex2math.window.jsMath =3D =
jsMath}
    //
    //  Handle MSIE bug where jsMath.window both is and is not the =
actual window
    //
    if (jsMath.browser =3D=3D 'MSIE') {window.onscroll =3D =
jsMath.window.onscroll};
    var fonts =3D jsMath.Autoload.loadFonts;
    if (fonts) {
      if (typeof(fonts) !=3D 'object') {fonts =3D [fonts]}
      for (var i in fonts) {jsMath.Font.Load(fonts[i])}
    }
    var files =3D jsMath.Autoload.loadFiles;
    if (files) {
      if (typeof(files) !=3D 'object') {files =3D [files]}
      for (var i in files) {jsMath.Setup.Script(files[i])}
    }
    jsMath.Synchronize(function () {jsMath.Autoload.Script.RunStack()});
    jsMath.Autoload.setMessage();
  },

  /*
   *  Display a message in a small box at the bottom of the screen
   */
  setMessage: function (message) {
    if (message) {
      this.div =3D document.createElement('div');
      if (!document.body.hasChildNodes) =
{document.body.appendChild(this.div)}
        else =
{document.body.insertBefore(this.div,document.body.firstChild)}
      var style =3D {
        position:'absolute', bottom:'1px', left:'2px',
        backgroundColor:'#E6E6E6', border:'solid 1px #959595',
        margin:'0px', padding:'1px 8px', zIndex:102,
        color:'black', fontSize:'75%', width:'auto'
      };
      for (var id in style) {this.div.style[id] =3D style[id]}
      this.div.appendChild(jsMath.document.createTextNode(message));
    } else {
      this.div.firstChild.nodeValue =3D "";
      this.div.style.visibility =3D 'hidden';
    }
  }
 =20
});

/*
 *  Queue these so we can do them after jsMath has been loaded
 */
jsMath.Add(jsMath,{
  Process: function (data) =
{jsMath.Autoload.Script.Push('Process',[data])},
  ProcessBeforeShowing: function (data) =
{jsMath.Autoload.Script.Push('ProcessBeforeShowing',[data])},
  ConvertTeX: function (data) =
{jsMath.Autoload.Script.Push('ConvertTeX',[data])},
  ConvertTeX2: function (data) =
{jsMath.Autoload.Script.Push('ConvertTeX2',[data])},
  ConvertLaTeX: function (data) =
{jsMath.Autoload.Script.Push('ConvertLaTeX',[data])},
  ConvertCustom: function (data) =
{jsMath.Autoload.Script.Push('ConvertCustom',[data])},
  CustomSearch: function (d1,d2,d3,d4) =
{jsMath.Autoload.Script.Push('CustomSearch',[d1,d2,d3,d4])},
  Synchronize: function (data) =
{jsMath.Autoload.Script.Push('Synchronize',[data])},
  Macro: function (cs,def,params) =
{jsMath.Autoload.Script.Push('Macro',[cs,def,params])},
  Autorun: function () {jsMath.Autoload.Autorun()}
});

/*
 *  Initialize
 */

if (jsMath.Autoload.findMathElements =3D=3D null) =
{jsMath.Autoload.findMathElements =3D 1}
if (jsMath.Autoload.findTeXstrings =3D=3D null)   =
{jsMath.Autoload.findTeXstrings =3D 0}
if (jsMath.Autoload.findLaTeXstrings =3D=3D null) =
{jsMath.Autoload.findLaTeXstrings =3D 0}

jsMath.Autoload.Script.Root();
//if (document.body) {jsMath.Autoload.Check()}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.HyperLinkButton.js,MetaPress.Web.js

function hyperLinkButton_getTrueSender(sender)
{
  var isSender =3D false;
  isSender =3D (sender.tagName =3D=3D 'A' && getAttributeValue(sender, =
'value'));
   =20
  while (sender && !isSender)
  {
    sender =3D getParent(sender);
    isSender =3D (sender.tagName =3D=3D 'A' && getAttributeValue(sender, =
'value'));
  }
 =20
  return sender;
}

function hyperLinkButton_onClick(e)
{
  e =3D getEvent(e);
  var sender =3D hyperLinkButton_getTrueSender(getSender(e));
   =20
  var methodName =3D getAttributeValue(sender, 'onClickMethod');

  if (methodName !=3D '' && window[methodName])
    var ret =3D window[methodName](sender);

  return ret || false;
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://www.springerlink.com/js/MetaPress.Web.DefaultTextBox.js,MetaPress.Web.js

function defaultTextBox_captureEnter(e)  
{  
  e = getEvent(e);
  var sender = getSender(e);
  var target = getElement(getAttributeValue(sender, 'target'));

  if (target == null)
  {
    alert('target for ' + sender.id + ' is null');
    return false;
  }

  if (e.keyCode == 13)  
  {  
    abortEvent(e);
    switch(getAttributeValue(sender, 'action'))
    {  
        case 'click': defaultTextBox_click(target); break;  
        case 'focus': setFocus(target); break;  
        default: defaultTextBox_click(target);  
    }  
  }  
} 

function defaultTextBox_click(element) 
{
  if (element != null)
    element.click(); 
}

function defaultTextBox_setFocus(element)
{
  if (element != null) 
  {
     element.focus();
     switch (element.tagName)
     {
       case 'SELECT':
         if (element.options.length > 0)
            element.selectedIndex = 0;
         break;
       
       case 'INPUT':
         switch (getAttributeValue(element, type))
         {
           case '', 'text', 'password':
             element.select();
             break;
         }
         break;
     }
  }
}
------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Products.Reader.QueryBuilderControl.js,MetaPress.Products.Reader.js


function queryBuilder_wireUpEvents(senderId)
{
  var sender =3D queryBuilder_getRoot(getElement(senderId));

  var textBox =3D queryBuilder_getTextBox(sender);
  var operatorList =3D queryBuilder_getOperatorList(sender);
  var fieldList =3D queryBuilder_getFieldList(sender);


  for(var k =3D 0; k < fieldList.childNodes.length; k++)
  {
    if (fieldList.childNodes[k].className !=3D 'empty')
    {  =20
      addHandler(fieldList.childNodes[k].childNodes[0], 'onclick', =
queryBuilder_onFieldClick);
      addHandler(fieldList.childNodes[k], 'onclick', =
queryBuilder_onFieldClick);
      addHandler(fieldList.childNodes[k], 'onmouseover', =
queryBuilder_onMouseOver);
      addHandler(fieldList.childNodes[k], 'onmouseout', =
queryBuilder_onMouseOut);
    }
  }
  for(var k =3D 0; k < operatorList.childNodes.length; k++)
  {
    if (operatorList.childNodes[k].className !=3D 'empty')
    {
      if (getAttributeValue(operatorList.childNodes[k], 'arg') =3D=3D =
'*')
      {
        addHandler(operatorList.childNodes[k].childNodes[0], 'onclick', =
queryBuilder_onWildcardClick);
        addHandler(operatorList.childNodes[k], 'onclick', =
queryBuilder_onWildcardClick);
      }
      else
      {
        addHandler(operatorList.childNodes[k].childNodes[0], 'onclick', =
queryBuilder_onOperatorClick);
        addHandler(operatorList.childNodes[k], 'onclick', =
queryBuilder_onOperatorClick);
      }
      addHandler(operatorList.childNodes[k], 'onmouseover', =
queryBuilder_onMouseOver);
      addHandler(operatorList.childNodes[k], 'onmouseout', =
queryBuilder_onMouseOut);
    }
  }
 =20
  addHandler(textBox, 'onclick', queryBuilder_updateSelection);
  addHandler(textBox, 'onselect', queryBuilder_updateSelection);
  addHandler(textBox, 'onfocus', queryBuilder_updateSelection);
  addHandler(textBox, 'onkeyup', queryBuilder_updateSelection);
  addHandler(textBox, 'onkeydown', queryBuilder_onKeyPress);
}

function queryBuilder_getRoot(sender)
{
  while (sender !=3D null && getAttributeValue(sender, 'key') !=3D =
'advancedTextBox')
    sender =3D getParent(sender);
   =20
  return sender;
}

function queryBuilder_getTextBox(sender)
{
  return getElementByKeyAndTagName(queryBuilder_getRoot(sender), 'text', =
'INPUT');
}

function queryBuilder_getOperatorList(sender)
{
  return getElementByKeyAndTagName(queryBuilder_getRoot(sender), =
'operatorList', 'UL');
}

function queryBuilder_getFieldList(sender)
{
  return getElementByKeyAndTagName(queryBuilder_getRoot(sender), =
'fieldList', 'UL');
}

function queryBuilder_getSelectionStart(sender)
{
  var start =3D getAttributeValue(queryBuilder_getRoot(sender), 'ss');
  if (start =3D=3D '')
    return 0;
  else
    return start;
}

function queryBuilder_setSelectionStart(sender, selectionStart)
{
  setAttributeValue(queryBuilder_getRoot(sender), 'ss', selectionStart);
}

function queryBuilder_getSelectionEnd(sender)
{
  var end =3D getAttributeValue(queryBuilder_getRoot(sender), 'se');
  if (end =3D=3D '')
    return 0;
  else
    return end;
}

function queryBuilder_setSelectionEnd(sender, selectionEnd)
{
  setAttributeValue(queryBuilder_getRoot(sender), 'se', selectionEnd);
}


function queryBuilder_onFieldClick(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
  if (sender.tagName !=3D 'LI')
    sender =3D getParent(sender);
   =20
  var textBox =3D queryBuilder_getTextBox(sender);
  var text =3D getAttributeValue(sender, 'arg');

  var selectionStart =3D queryBuilder_getSelectionStart(sender);
  var selectionEnd =3D queryBuilder_getSelectionEnd(sender);
  if (selectionStart =3D=3D selectionEnd || !isIE)
  {
    textBox.value +=3D ' ' + text;
    queryBuilder_setCaretPos(textBox, textBox.value.length - 1);
    queryBuilder_updateSelection(e);
  }
  else
  {
    textBox.focus();
    var range =3D document.selection.createRange();
    range.moveStart('character', selectionStart);
    range.moveEnd('character', selectionEnd - selectionStart);
    range.text =3D text;
    queryBuilder_updateSelection(e);
    range.select();
 =20
  }
 =20
  abortEvent(e);
  return false;
}

function queryBuilder_onOperatorClick(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
 =20
  if (sender.tagName !=3D 'LI')
    sender =3D getParent(sender);
   =20
  var textBox =3D queryBuilder_getTextBox(sender);
  var text =3D getAttributeValue(sender, 'arg');
 =20
  var selectionStart =3D queryBuilder_getSelectionStart(sender);
  var selectionEnd =3D queryBuilder_getSelectionEnd(sender);
 =20
  textBox.focus();
  if (selectionStart =3D=3D selectionEnd || !isIE)
  {
    textBox.value +=3D ' ' + text;
    queryBuilder_setCaretPos(textBox, textBox.value.length - 1);
    queryBuilder_updateSelection(e);
  }
  else
  {
    var range =3D document.selection.createRange();
    range.moveStart('character', selectionStart);
    range.moveEnd('character', selectionEnd - selectionStart);
    range.text =3D text;
    queryBuilder_updateSelection(e);
    range.select();
  }
 =20
  abortEvent(e);
  return false;
}


function queryBuilder_onWildcardClick(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
 =20
  if (sender.tagName !=3D 'LI')
    sender =3D getParent(sender);
   =20
  var textBox =3D queryBuilder_getTextBox(sender);
  var text =3D getAttributeValue(sender, 'arg');
  var selectionStart =3D queryBuilder_getSelectionStart(sender);
  var selectionEnd =3D queryBuilder_getSelectionEnd(sender);
  textBox.focus();
  if (!isIE)
  {
    textBox.value +=3D text;
    queryBuilder_setCaretPos(textBox, textBox.value.length - 1);
    queryBuilder_updateSelection(e);
  }
  else if (selectionStart =3D=3D selectionEnd)
  {
    var range =3D document.selection.createRange();
    range.text =3D text;
    queryBuilder_updateSelection(e);
    range.select();
  }
  else
  {
    var range =3D document.selection.createRange();
    range.moveStart('character', selectionStart);
    range.moveEnd('character', selectionEnd - selectionStart);
    range.text =3D text;
    queryBuilder_updateSelection(e);
    range.select();
  }
 =20
  abortEvent(e);
  return false;
}

function queryBuilder_setCaretPos(textBox, position)
{
  if (textBox.selectionStart)
  {
    textBox.selectionStart =3D position;
    textBox.selectionEnd =3D position;
  }
  else
  {
    var range =3D textBox.createTextRange();
    range.moveStart('character', position);
    range.collapse();
    range.select();
  }
}

function queryBuilder_findSelectionStart(textBox)=20
{
	if (isIE)
	{
	  var range =3D document.selection.createRange();
		var isCollapsed =3D range.compareEndPoints("StartToEnd", range) =3D=3D =
0;
	  if (!isCollapsed)
		  range.collapse(true);
	  var b =3D range.getBookmark();
	  return b.charCodeAt(2) - 2;
	}
	else
	  return textBox.selectionStart;
}

function queryBuilder_findSelectionEnd(textBox)=20
{
  if (isIE)
  {
    var range =3D document.selection.createRange();
	  var isCollapsed =3D range.compareEndPoints("StartToEnd", range) =
=3D=3D 0;
	  if (!isCollapsed)
		  range.collapse(false);
	  var b =3D range.getBookmark();
	  return b.charCodeAt(2) - 2; =20
  }
  else
	  return textBox.selectionEnd;
}

function queryBuilder_updateSelection(e)
{

  e =3D getEvent(e);
  var sender =3D getSender(e);
  var textBox =3D queryBuilder_getTextBox(sender)
  if (document.activeElement =3D=3D textBox || sender =3D=3D textBox)
  {
    queryBuilder_setSelectionStart(sender, =
queryBuilder_findSelectionStart(textBox));
    queryBuilder_setSelectionEnd(sender, =
queryBuilder_findSelectionEnd(textBox));
  }
  //window.status =3D queryBuilder_findSelectionStart(textBox) + ' -> ' =
+ queryBuilder_findSelectionEnd(textBox);
}

function queryBuilder_clear(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
  var textBox =3D queryBuilder_getTextBox(sender);
  textBox.value =3D '';
  textBox.focus();=20
}

function queryBuilder_close(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
  var root =3D queryBuilder_getRoot(sender);
 =20
  var div =3D getElementByKeyAndTagName(root, 'contents', 'DIV');
  advancedTextBox_collapse(div);
  getElementByKeyAndTagName(root, 'text', 'INPUT').focus();
 =20
}

function queryBuilder_onMouseOver(e) =20
{ =20
  e =3D getEvent(e);
  var sender =3D getSender(e);
  if (sender.tagName !=3D 'LI')
    sender =3D getParent(sender);
  sender.className =3D 'hover';
} =20

function queryBuilder_onMouseOut(e) =20
{ =20
  e =3D getEvent(e);
  var sender =3D getSender(e);
  if (sender.tagName !=3D 'LI')
    sender =3D getParent(sender);
  sender.className =3D '';
}=20

function queryBuilder_onKeyPress(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
  if (e.keyCode =3D=3D 27)
  {
    abortEvent(e);
    queryBuilder_close(e);
  }
 =20
  var key =3D String.fromCharCode(e.keyCode);
  if (key =3D=3D '')
    return false;
   =20
  key =3D key.toLowerCase();
  var needsAlt =3D false;
  var needsCtrl =3D false;
  var target =3D '';
         =20
  if (e.altKey || e.ctrlKey)
  {
    var links =3D =
queryBuilder_getRoot(sender).getElementsByTagName('LI');
    for (var k =3D 0; k < links.length; k++)
    {
      var hotkey =3D getAttributeValue(links[k], 'hotkey');
      if (hotkey !=3D '')
      {
        needsAlt =3D false;
        needsCtrl =3D false;
        target =3D '';
        var keys =3D hotkey.split('+');
        for (i =3D 0; i < keys.length; i++)
        {
          switch(keys[i].toLowerCase())
          {
            case 'alt' :
              needsAlt =3D true;
              break;
            case 'ctrl' :
              needsCtrl =3D true;
              break;
            default :
              target =3D keys[i].toLowerCase();
              break;
          }
        }
        if (needsAlt =3D=3D e.altKey && needsCtrl =3D=3D e.ctrlKey && =
key =3D=3D target)
        {
          links[k].childNodes[0].click();
          abortEvent(e);
          return true;
        }
      } =20
    }
  }
}

------=_NextPart_000_0082_01C6C6EA.10068EF0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.springerlink.com/js/MetaPress.Web.AdvancedTextBox.js,MetaPress.Web.js

function advancedTextBox_onLoad(senderId)
{
  var sender =3D getElement(senderId);
 =20
  var expandButton =3D getElementByKeyAndTagName(sender, 'expand', =
'INPUT');
  if (expandButton)
    expandButton.style.display =3D 'inline';
 =20
  if (getAttributeValue(sender, 'gdm') > 0)
    getElementByKeyAndTagName(sender, 'go', 'INPUT').style.display =3D =
'none';
   =20
  advancedTextBox_position(sender);
 =20
  addHandler(getElementByKeyAndTagName(sender, 'text', 'INPUT'), =
'onblur', advancedTextBox_onBlur);
  addHandler(getElementByKeyAndTagName(sender, 'go', 'INPUT'), =
'onclick', advancedTextBox_onGo);
}


function advancedTextBox_position(sender)
{
  var textBox =3D getElementByKeyAndTagName(sender, 'text', 'INPUT');
  var div =3D getElementByKeyAndTagName(sender, 'contents', 'DIV');
 =20
  if (getAttributeValue(sender, 'da') =3D=3D '1')
    div.style.left =3D (getLeft(textBox) + getWidth(textBox)) - =
getWidth(div);
  else
    div.style.left =3D getLeft(textBox);
   =20
  div.style.top =3D getTop(textBox) + getHeight(textBox);
}

function advancedTextBox_collapse(sender)
{ =20
  sender.style.display =3D 'none';
}

function advancedTextBox_expand(sender)
{
  sender.style.display =3D 'block';
  advancedTextBox_position(getParent(sender));
}

function advancedTextBox_toggle(e)
{
  e =3D getEvent(e);
  var sender =3D getParent(getSender(e));
  var div =3D getElementByKeyAndTagName(sender, 'contents', 'DIV');
  =20
  if (getCurrentStyle(div).display =3D=3D 'block')
    advancedTextBox_collapse(div);
  else
    advancedTextBox_expand(div);
   =20
  getElementByKeyAndTagName(sender, 'text', 'INPUT').focus();
  return false;
}

function advancedTextBox_onBlur(e)
{
 if (!document.activeElement)
    return false;
   =20
  e =3D getEvent(e);
  var sender =3D getSender(e);
  var parent =3D getParent(sender);
 =20
  var current =3D document.activeElement;
  while (current)
  {
    if (current =3D=3D parent)
      return true;
     =20
    current =3D getParent(current);
  }
 =20
  var div =3D getElementByKeyAndTagName(parent, 'contents', 'DIV');
  advancedTextBox_collapse(div);
}

function advancedTextBox_onGo(e)
{
  e =3D getEvent(e);
  var sender =3D getSender(e);
  var parent =3D getParent(sender);
  var div =3D getElementByKeyAndTagName(parent, 'contents', 'DIV');
  advancedTextBox_collapse(div);
}
------=_NextPart_000_0082_01C6C6EA.10068EF0--

