From: <Saved by Windows Internet Explorer 7>
Subject: Adobe Dreamweaver CS4 * Create a new CSS rule
Date: Sun, 8 Feb 2009 17:47:15 -0800
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0027_01C98A15.47365860"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350

This is a multi-part message in MIME format.

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/WScbb6b82af5544594822510a94ae8d65-7e21a.html

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=3D(0022)http://help.adobe.com/ --><HTML=20
lang=3Den-us><HEAD><TITLE>Adobe Dreamweaver CS4 * Create a new CSS =
rule</TITLE>
<META http-equiv=3Dcontent-type content=3D"text/html; charset=3DUTF-8">
<META content=3Den-us name=3Dlang>
<META content=3Dlivedocs name=3Darea><LINK =
href=3D"images/Dreamweaver.ico"=20
rel=3D"shortcut icon">
<META content=3D"Using Dreamweaver CS4" name=3Dbook>
<META content=3Ddreamweaver name=3Dproduct>
<META content=3D"" name=3Dkeywords>
<SCRIPT language=3DJavascript type=3Dtext/javascript =
charset=3DUTF-8><!--[CDATA[
        var currentTreeNode =3D =
"WScbb6b82af5544594822510a94ae8d65-7e21a.html";
// ]]--></SCRIPT>

<SCRIPT language=3DJavascript=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/terms.js"=20
type=3Dtext/javascript charset=3DUTF-8>...</SCRIPT>

<SCRIPT language=3DJavascript=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/help.js"=20
type=3Dtext/javascript charset=3DUTF-8>...</SCRIPT>

<SCRIPT language=3DJavascript=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/utilities.js"=20
type=3Dtext/javascript charset=3DUTF-8>...</SCRIPT>

<SCRIPT language=3DJavascript=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/event.js"=20
type=3Dtext/javascript charset=3DUTF-8>...</SCRIPT>

<SCRIPT language=3DJavascript=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/treeview.js"=20
type=3Dtext/javascript charset=3DUTF-8>...</SCRIPT>

<SCRIPT language=3DJavascript=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/toc.js"=20
type=3Dtext/javascript charset=3DUTF-8>..</SCRIPT>

<SCRIPT type=3Dtext/javascript>
<!--[CDATA[
var headId =3D document.getElementsByTagName("head")[0];        =20
if (use_ie_6_behavior) {
    var linkId =3D document.createElement("link");
    linkId.href =3D "content-ie6.css";
    linkId.rel =3D "stylesheet";
    linkId.type =3D "text/css";
    headId.appendChild(linkId);
}
function initRoboHelpDOM() {
    if (use_chm_behavior) {
        hideElement("search");
        hideElement("col1");
    }
    if (use_robohelp_behavior) {
        hideElement("search");
        hideElement("productmenu");
        hideElement("notyourversion");
    }
}
YAHOO.util.Event.onDOMReady(initRoboHelpDOM);
// ]]-->
</SCRIPT>

<SCRIPT language=3DJavascript type=3Dtext/javascript charset=3DUTF-8>=0A=
// <![CDATA[=0A=
	var gaJsHost =3D (("https:" =3D=3D document.location.protocol) ? =
"https://ssl." : "http://www.");=0A=
	document.write(unescape("%3Cscript src=3D'" + gaJsHost + =
"google-analytics.com/ga.js' type=3D'text/javascript'%3E%3C/script%3E"));=0A=
// ]]>=0A=
</SCRIPT>
<LINK =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/tree.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/content-fonts.=
css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/content-hyperl=
inks.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/content.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/localeSpecific=
.css"=20
type=3Dtext/css rel=3Dstylesheet>
<META content=3D"MSHTML 6.00.6000.16788" name=3DGENERATOR></HEAD>
<BODY id=3Dcontent_body onload=3Dwindow.focus();><A shape=3Drect =
name=3Dtop></A>
<DIV id=3Dmnemonic><!--googleoff: index-->
<DIV class=3DDreamweaver xmlns:adobe=3D"http://www.adobe.com/saxon">
<DIV class=3Dbanner>Adobe Dreamweaver CS4<SPAN =
id=3Dnotyourversion>|&nbsp; <A=20
href=3D"http://www.adobe.com/support/documentation/en/dreamweaver/"=20
rel=3Dnofollow>Not your=20
version?</A></SPAN></DIV></DIV><!--googleon: index--></DIV>
<DIV id=3Dsearchbar><!--googleoff: index-->
<DIV xmlns:adobe=3D"http://www.adobe.com/saxon">
<DIV id=3Dpdf><IMG height=3D16=20
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/PDF.gif"=
=20
width=3D16><A title=3D"Download Help PDF"=20
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/dreamweaver_cs=
4_help.pdf">Download=20
Help PDF ( 20MB) </A></DIV></DIV><!--googleon: index--></DIV><!-- BEGIN =
SEARCH CONTENT -->
<FORM id=3Dsearch name=3Dsearch action=3Dsearch.html target=3D_self>
<SCRIPT type=3Dtext/javascript>
<!--[CDATA[
    function clearSearch(){
        if (document.search.q.value =3D=3D =
terms_AHV_SEARCH_BUTTON){document.search.q.value =3D ""};=20
    }
    if ((typeof(terms_AHV_SEARCH_CONSTRAINT) !=3D "undefined") && =
(terms_AHV_SEARCH_CONSTRAINT.length > 0) && =
document.location.href.indexOf(".adobe.com") > 0) {
        if ((typeof(terms_SEARCH_THIS_HELP_ONLY) !=3D "undefined") && =
(terms_SEARCH_THIS_HELP_ONLY =3D=3D "ON")) {
            document.write('<div id=3D\"searchscope\"> \
                    <input class=3D\"gsa\" \
                    name=3D\"gsa\" \
                    id=3D\"gsa\" \
                    type=3D\"checkbox\" \
                    checked=3D\"checked\" \
                    value=3D\"1\" ><\/input>');=20
        }
        else {
            document.write('<div id=3D\"searchscope\"> \
                    <input id=3D\"gsa\" \
                    name=3D\"gsa\" \
                    id=3D\"gsa\" \
                    type=3D\"checkbox\" \
                    value=3D\"1\" ><\/input>');=20
        }
        document.write('<span class=3D\"gsalabel\">' + =
terms_AHV_SEARCH_CONSTRAINT + '<\/span><\/div>');=20
    }
   =20
    document.write('<input class=3D\"searchinput\" \
                name=3D\"q\" \
                id=3D\"q\" \
                type=3D\"text\" \
                maxlength=3D\"256\" \
                value=3D\"' + terms_AHV_SEARCH_BUTTON + '\" \
                onclick=3D\"clearSearch()\"><\/input><input \
                type=3D\"button\" \
                name=3D\"searchbutton\" \
                class=3D\"searchbutton\" \
                onclick=3D\"submit()\" />');=20
// ]]-->
</SCRIPT>
</FORM><!-- END SEARCH CONTENT --><!-- BEGIN PAGE CONTENT WRAPPER -->
<DIV id=3Dpage_content_wrapper><!-- BEGIN PAGE WRAPPER -->
<TABLE id=3Dpage_content_table>
  <TBODY>
  <TR>
    <TD id=3Dcol1><!-- BEGIN GROUP TOC WRAPPER -->
      <DIV id=3Dgroup_toc>
      <P>Dreamweaver CS4 Resources</P>
      <UL xmlns:xs=3D"http://www.w3.org/2001/XMLSchema"=20
      xmlns:fo=3D"http://www.w3.org/1999/XSL/Format"=20
      xmlns:fn=3D"http://www.w3.org/2005/xpath-functions">
        <LI>
        <P><A=20
        =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/index.html"=20
        target=3D_self>Using Dreamweaver CS4</A></P>
        <LI>
        <P><A=20
        =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Extending/index.html=
"=20
        target=3D_self>Extending Dreamweaver CS4</A></P>
        <LI>
        <P><A=20
        =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_API_Ref/index.html" =

        target=3D_self>Dreamweaver API =
Reference</A></P></LI></UL></DIV><!-- END GROUP TOC WRAPPER --><!-- =
BEGIN NAV WRAPPER -->
      <DIV id=3Dgroup_toc>
      <SCRIPT type=3Dtext/javascript>
<!--[CDATA[
if ( typeof(terms_BOOK_SHORT) !=3D 'undefined' ) {
  document.write("<p>" + terms_BOOK_SHORT + "<\/p>");
}
// ]]-->


</SCRIPT>
      </DIV>
      <DIV id=3Dnav_content></DIV><!-- END NAV WRAPPER --></TD>
    <TD id=3Dcol2><!-- BEGIN CONTENT WRAPPER --><!-- BEGIN BREADCRUMBS =
-->
      <DIV id=3Dbreadcrumb>
      <UL class=3Dnavigation>
        <LI class=3Dprev><A class=3Dprev title=3D"Set CSS Styles =
preferences"=20
        accessKey=3Dp=20
        =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/WScbb6b82af554=
4594822510a94ae8d65-7dd1a.html"><IMG=20
        height=3D17 alt=3DPrevious=20
        =
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/blank.gi=
f"=20
        width=3D17></A>
        <LI class=3Dnext><A class=3Dnext title=3D"Set CSS properties" =
accessKey=3Dn=20
        =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/WSE4424F18-82C=
5-4fea-A020-899CD47A1E86a.html"><IMG=20
        height=3D17 alt=3DNext=20
        =
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/blank.gi=
f"=20
        width=3D17></A></LI></UL>
      <DIV class=3Dhierarchy id=3Dhierarchy><A=20
      =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/WScbb6b82af554=
4594822510a94ae8d65-7e32a.html">Creating=20
      pages with CSS</A> / <A=20
      =
href=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/WScbb6b82af554=
4594822510a94ae8d65-7e29a.html"><B>Creating=20
      and managing CSS</B></A> </DIV></DIV><!-- END BREADCRUMBS -->
      <DIV id=3Dcontent_wrapper><!-- BEGIN PAGE TITLE -->
      <H1>Create a new CSS rule </H1><!-- END PAGE TITLE --><!-- BEGIN =
IONCOMMENTCOUNT -->
      <DIV id=3DionCount></DIV><!-- END IONCOMMENTCOUNT -->
      <DIV>
      <DIV class=3Dsection>
      <P>You can create a CSS rule to automate the formatting of HTML =
tags or a=20
      range of text identified by <SAMP class=3Dcodeph>class</SAMP> or =
<SAMP=20
      class=3Dcodeph>ID</SAMP> attributes.</P></DIV>
      <OL>
        <LI class=3Dstepexpand><SPAN>Place the insertion point in the =
document,=20
        and then do one of the following to open the New CSS Rule dialog =

        box:</SPAN>
        <UL>
          <LI>
          <P>Select Format&nbsp;&gt; CSS Styles&nbsp;&gt; New.</P>
          <LI>
          <P>In the CSS Styles panel (Window&nbsp;&gt; CSS Styles), =
click the=20
          New CSS Rule (+) button located in the lower-right side of the =
panel.=20
          </P>
          <LI>
          <P>Select text in the Document window, select New CSS Rule =
from the=20
          Targeted Rule pop-up menu in the CSS Property inspector =
(Window &gt;=20
          Properties); then click the Edit Rule button or select an =
option from=20
          the Property inspector (for example, click the Bold button), =
to=20
          initiate a new rule.</P></LI></UL>
        <LI class=3Dstepexpand><SPAN>In the New CSS Rule dialog box, =
specify the=20
        selector type for the CSS rule you want to create:</SPAN>
        <UL>
          <LI>
          <P>To create a custom style that can be applied as a <SAMP=20
          class=3Dcodeph>class</SAMP> attribute to any HTML element, =
select the=20
          Class option from the Selector Type pop-up menu and then enter =
a name=20
          for the style in the Selector Name text box. </P>
          <DIV class=3Dnote><SPAN class=3Dnotetitle>Note: </SPAN>Class =
names must=20
          begin with a period and can contain any combination of letters =
and=20
          numbers (for example, .myhead1). If you don=E2=80=99t enter a =
beginning=20
          period, Dreamweaver automatically enters it&nbsp;for =
you.</DIV>
          <LI>
          <P>To define the formatting for a tag that contains a specific =
<SAMP=20
          class=3Dcodeph>ID</SAMP> attribute, select the ID option from =
the=20
          Selector Type pop-up menu and then enter the unique ID (for =
example,=20
          containerDIV) in the Selector Name text box.</P>
          <DIV class=3Dnote><SPAN class=3Dnotetitle>Note: </SPAN>IDs =
must begin with=20
          a pound (#) sign and can contain any combination of letters =
and=20
          numbers (for example, #myID1). If you don=E2=80=99t enter a =
beginning pound=20
          sign, Dreamweaver automatically enters it&nbsp;for you.</DIV>
          <LI>
          <P>To redefine the default formatting of a specific HTML tag, =
select=20
          the Tag option from the Selector Type pop-up menu; then enter =
an HTML=20
          tag in the Selector Name text box or select one from the=20
          pop=E2=80=91up&nbsp;menu. </P>
          <LI>
          <P>To define a compound rule that affects two or more tags, =
classes,=20
          or IDs simultaneously, select the Compound option and enter =
the=20
          selectors for your compound rule. For example if you enter =
<STRONG>div=20
          p</STRONG>, all p elements within div tags will be affected by =
the=20
          rule. A description text area explains exactly which elements =
the rule=20
          will affect as you add or delete selectors.</P></LI></UL>
        <LI class=3Dstepexpand><SPAN>Select the location in which you =
want to=20
        define the rule, and then click OK: </SPAN>
        <UL>
          <LI>
          <P>To place the rule in a style sheet that is already attached =
to the=20
          document, select the style sheet.</P>
          <LI>
          <P>To create an external style sheet, select New Style Sheet =
File.</P>
          <LI>
          <P>To embed the style in the current document, select This =
Document=20
          Only.</P></LI></UL>
        <LI class=3Dstepexpand><SPAN>In the CSS Rule Definition dialog =
box, select=20
        the style options you want to set for the new CSS rule. For more =

        information, see the next section.</SPAN>=20
        <LI class=3Dstepexpand><SPAN>When you are finished setting style =

        properties, click OK.</SPAN>=20
        <DIV class=3Dnote><SPAN class=3Dnotetitle>Note: </SPAN>Clicking =
OK without=20
        setting style options results in a new, empty =
rule.</DIV></LI></OL></DIV><!-- BEGIN USER PREFERENCES -->
      <DIV id=3Duserprefs></DIV><!-- END USER PREFERENCES -->
      <DIV id=3Drelated>
      <DIV class=3Dseparator></DIV></DIV>
      <DIV id=3Dfooter><!-- BEGIN IONCOMMENTS -->
      <DIV id=3DionComHere></DIV><!-- END IONCOMMENTS -->
      <SCRIPT language=3DJavaScript=20
      src=3D"http://community.adobe.com/help/comment/ionComments.js"=20
      type=3Dtext/javascript></SCRIPT>
      <LINK media=3Dscreen=20
      href=3D"http://community.adobe.com/ion/comment/ionComments.css"=20
      type=3Dtext/css rel=3Dstylesheet>
      <SCRIPT type=3Dtext/javascript>=0A=
<!--=0A=
// <![CDATA[=0A=
var ionProductsArr =3D new Array("acrobat", "actionscript", =
"adobemediaencoder", "aftereffects", "air", "as3lcr", "bridge", =
"captivate", "contribute", "devicecentral", "dreamweaver", "encoredvd", =
"extensionmanager", "fireworks", "flash", "flashlite", "framemaker", =
"illustrator", "incopy", "indesign", "lightroom", "onlocation", =
"photoshop", "premierepro", "reader",  "robohelp", "soundbooth");=0A=
var ionLabelsArr =3D   new Array("acrobat", "flash",        "flash",     =
        "aftereffects", "air", "flash",  "bridge", "captivate", =
"contribute", "devicecentral", "dreamweaver", "encore",    =
"extensionmanager", "fireworks", "flash", "flashlite", "framemaker", =
"illustrator", "incopy", "indesign", "lightroom", "onlocation", =
"photoshop", "premierepro", "acrobat", "robohelp", "soundbooth");=0A=
var loc =3D getLangName();=0A=
var label =3D getIonLabel();=0A=
=0A=
function getLangName() {=0A=
	var lang =3D "en-us";=0A=
	var metaElements =3D document.all ?=0A=
			document.all.tags('meta') :=0A=
			document.getElementsByTagName ?=0A=
			document.getElementsByTagName ('meta') : new Array();=0A=
  for (var m =3D 0; m < metaElements.length; m++) {=0A=
    if (metaElements[m].name =3D=3D "lang") {=0A=
      lang =3D metaElements[m].content;=0A=
      break;=0A=
    }=0A=
	}=0A=
	var ptn =3D /(..)-(..)/;=0A=
	if (ptn.test(lang)) {=0A=
		var countryCode =3D lang.replace(ptn, "$1");=0A=
		var languageCode =3D lang.replace(ptn, "$2");=0A=
		lang =3D countryCode + "_" + languageCode.toUpperCase();=0A=
	}=0A=
  return lang;=0A=
}=0A=
=0A=
function isHomepage() {=0A=
	var metaElements =3D document.all ?=0A=
			document.all.tags('meta') :=0A=
			document.getElementsByTagName ?=0A=
			document.getElementsByTagName ('meta') : new Array();=0A=
	for (var m =3D 0; m < metaElements.length; m++) {=0A=
		if ((metaElements[m].name =3D=3D "topictype") && =
(metaElements[m].content =3D=3D "homepage")) {=0A=
		  return true;=0A=
		}=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
function getIonLabel() {=0A=
	var ptn =3D /\.adobe\.com\/(.._..)\/(.+?)\//;=0A=
	var href =3D "" + document.location.href;=0A=
	var product =3D "";=0A=
	var label =3D "";=0A=
	// No commenting for the home page=0A=
	if (isHomepage()) {=0A=
		return label;=0A=
	}=0A=
	// 3D Reviewer doesn't get commenting, but the rest of Acrobat does.=0A=
	if (href.indexOf("Acrobat/9.0/Reviewer") !=3D -1) {=0A=
		return label;=0A=
	}=0A=
	if (ptn.test(href)) {=0A=
		var matches =3D ptn.exec(href);=0A=
		product =3D matches[2].toLowerCase();=0A=
		if ((product) && (product.length > 0)) {=0A=
			for (var i =3D 0; i < ionProductsArr.length; i++) {=0A=
				if (ionProductsArr[i] =3D=3D product) {=0A=
					label =3D ionLabelsArr[i] + "_product_adobelr";=0A=
					break;=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
	=0A=
	if ((label) && (label.length > 0)) {=0A=
		return label;=0A=
	}=0A=
	else {=0A=
		try {=0A=
			if ((terms_ionLabel) && (terms_ionLabel.length > 0)) {=0A=
				label =3D terms_ionLabel;=0A=
			}=0A=
		}=0A=
		catch (err) {=0A=
		}=0A=
	}=0A=
	=0A=
	return label;=0A=
}=0A=
=0A=
=0A=
if ((!use_robohelp_behavior) && (label) && (loc) && (label.length > 0)&& =
(loc.length > 0)) {=0A=
        var commentsContainer =3D "ionComHere";=0A=
        ionComAddLoadEvent(function(){=0A=
        	var thisURL =3D encodeURIComponent(window.location);=0A=
	        var resource =3D thisURL.replace(new RegExp(/%23(.*)/),"");=0A=
	        resource =3D thisURL.replace(new RegExp(/index\.html$/),"");=0A=
	        ionComments.setup(resource, loc, commentsContainer, { siteArea: =
'help', comAnchor: 'ionCount', productLabel: label });=0A=
        });=0A=
}=0A=
//-->=0A=
</SCRIPT>

      <P id=3Dcreativecommons><A id=3Dcreativecommons_text=20
      href=3D"http://creativecommons.org/licenses/by-nc-sa/3.0/"><IMG=20
      id=3Dcreativecommons_img=20
      alt=3D"This work is licensed under a Creative Commons =
Attribution-Noncommercial-Share Alike 3.0 Unported License"=20
      =
src=3D"http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/CC.png">=
</A></P></DIV></DIV><!-- END CONTENT WRAPPER =
--></TD></TR></TBODY></TABLE></DIV><!-- END PAGE CONTENT WRAPPER -->
<SCRIPT type=3Dtext/javascript>
<!--[CDATA[
scrollToNameAnchor();
// ]]-->
</SCRIPT>
<!-- START CS4 DROPDOWN PRODUCTS MENU --><!-- CS4 products build after =
Nov 23, 2008 -->
<STYLE>#menutop {
	FONT-SIZE: 11px; RIGHT: 23px; WIDTH: auto; COLOR: #fff; POSITION: =
absolute; TOP: 4px; TEXT-ALIGN: right
}
#menutop A {
	COLOR: #fff
}
#menuitems {
	OVERFLOW-Y: scroll; DISPLAY: none; RIGHT: 20px; BACKGROUND: #505050; =
WIDTH: 200px; POSITION: absolute; TOP: 24px; HEIGHT: 241px
}
#menuitems A {
	COLOR: #fff; TEXT-DECORATION: none
}
#menuitems P {
	PADDING-RIGHT: 4px; PADDING-LEFT: 8px; FONT-SIZE: 11px! important; =
PADDING-BOTTOM: 4px; MARGIN: 0px; COLOR: #fff; PADDING-TOP: 4px; =
BORDER-BOTTOM: #666666 1px solid
}
#menuitems P:hover {
	BACKGROUND: #404040; CURSOR: pointer
}
#menuitems P:active {
	BACKGROUND: #303030
}
.item IMG {
	VERTICAL-ALIGN: middle; MARGIN-RIGHT: 6px
}
</STYLE>
<!-- script src=3D"/en_US/ssi/" type=3D"text/javascript" / -->
<DIV id=3Dproductmenu>
<DIV id=3Dmenutop><A href=3D"http://adobe.com/support/">Choose a=20
product...</A>&nbsp;&nbsp;&nbsp;&nbsp; </DIV></DIV><!-- END CS4 DROPDOWN =
PRODUCTS MENU -->
<SCRIPT language=3DJavascript type=3Dtext/javascript charset=3DUTF-8>=0A=
// <![CDATA[=0A=
	var pageTracker =3D _gat._getTracker("UA-2987543-3");=0A=
	pageTracker._trackPageview();=0A=
// ]]>=0A=
</SCRIPT>

<TABLE width=3D"100%" border=3D0>
  <TBODY>
  <TR>
    <TD width=3D315>&nbsp;</TD>
    <TD>
      <SCRIPT language=3Djavascript>=0A=
// Start Acrobat.com products survey=0A=
=0A=
var AcrobatcomSurvey =3D '<a title=3D"Take a survey" =
href=3D"http://www.surveymonkey.com/s.aspx?sm=3DxFAe_2flFWiXV_2bqhCJcAqpf=
g_3d_3d">\=0A=
                      <img alt=3D"Take a survey" border=3D"0" =
src=3D"/Take_a_survey_Icon_w_text.gif"/></a>';=0A=
var BuzzwordSurvey   =3D '<a title=3D"Take a survey" =
href=3D"http://www.surveymonkey.com/s.aspx?sm=3DfgjlE1i4cTHH5_2f7aqzUIwA_=
3d_3d">\=0A=
                      <img alt=3D"Take a survey" border=3D"0" =
src=3D"/Take_a_survey_Icon_w_text.gif"/></a>';=0A=
var ConnectNowSurvey =3D '<a title=3D"Take a survey" =
href=3D"http://www.surveymonkey.com/s.aspx?sm=3DTkQE1Hl32zgeWdfuavUSSA_3d=
_3d">\=0A=
                      <img alt=3D"Take a survey" border=3D"0" =
src=3D"/Take_a_survey_Icon_w_text.gif"/></a>';=0A=
=0A=
if ( document.location.href.indexOf("/en_US/Acrobat.com/Acrobat/") > -1 =
){=0A=
  document.write(AcrobatcomSurvey);=0A=
}else if ( =
document.location.href.indexOf("/en_US/Acrobat.com/Buzzword/") > -1 ){=0A=
  document.write(BuzzwordSurvey);=0A=
}else if ( =
document.location.href.indexOf("/en_US/Acrobat.com/ConnectNow/") > -1 ){=0A=
  document.write(ConnectNowSurvey);=0A=
}=0A=
=0A=
// End Acrobat.com products survey=0A=
</SCRIPT>
    </TD></TR></TBODY></TABLE>
<DIV style=3D"DISPLAY: none"><!-- SiteCatalyst code version: G.9.=0A=
Copyright 2002 Omniture, Inc. More info available at=0A=
http://www.omniture.com -->
<SCRIPT language=3DJavaScript=20
type=3Dtext/javascript><!--=0A=
var s_code=3D' '//--></SCRIPT>

<SCRIPT language=3DJavaScript=20
src=3D"http://help.adobe.com/uber/js/omniture_s_code.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript><!--=0A=
var s_accountName;=0A=
var s_docHost =3D window.location.hostname.toLowerCase();=0A=
var s_docURL =3D window.location.pathname.toLowerCase();=0A=
=0A=
if (!!window.adobe) {=0A=
  var sc_iFrame=3Dadobe.Cookie.get("adobe.omniture.save");=0A=
}=0A=
if (!!sc_iFrame && (sc_iFrame.indexOf("initialLoad") !=3D -1) && =
(s_docURL.indexOf("/ssi/iframe/") !=3D -1))  {=0A=
}=0A=
else {=0A=
if ((s_docHost.indexOf(".dev.adobe.") !=3D -1) || =
(s_docHost.indexOf("stage.") !=3D -1) || (s_docHost.indexOf("staging.") =
!=3D -1) || (s_docHost.indexOf(".sea.adobe") !=3D -1) || =
(s_docHost.indexOf(".corp.adobe") !=3D -1)) {  =
s_accountName=3D"mxadobetest";=0A=
}=0A=
else {=0A=
  s_accountName=3D"mxmacromedia";=0A=
}=0A=
if (s_docURL.indexOf("/devnet/") !=3D -1) {=0A=
  s_channel=3D"DevNet";=0A=
  // Track Tabs as Pages when targeted directly=0A=
  if (document.URL.indexOf("navID=3D") !=3D -1) {=0A=
    var s_pairs =3D window.location.search.substring(1).split("&");=0A=
	for (i=3D0;i<s_pairs.length;i++) {=0A=
	  if (s_pairs[i].indexOf("navID=3D") !=3D -1)=0A=
  		s_pageName=3Ddocument.URL.substring(0, document.URL.indexOf("?")+1) =
+ s_pairs[i];=0A=
		s_pageName=3Ds_pageName.toLowerCase();=0A=
	}=0A=
  }=0A=
}=0A=
else if (s_docHost.indexOf("help.adobe.com") !=3D -1) {=0A=
  // Tracking Learning Resources help.adobe.com=0A=
  s_channel=3D"Support Help.adobe.com";=0A=
  var s_title=3Ddocument.title;=0A=
  if (s_title.indexOf("*") !=3D -1) { =0A=
    s_title=3Ddocument.title.substring(0,document.title.indexOf("*"));=0A=
  }=0A=
  s_pageName=3D"Support help.adobe.com: " + s_title;=0A=
  s_prop23=3Ddocument.URL.toLowerCase();=0A=
}=0A=
else if (s_docHost.indexOf("kb.adobe.com") !=3D -1) {=0A=
  s_channel=3D"Support Knowledgebase";=0A=
  if (s_docURL.indexOf("searchentry.do") !=3D -1) {=0A=
  	try {=0A=
		var SearchStringValue =3D =
adobe.Element.getElementsByClassName($("simple-options"),"input","textfie=
ld")[0].value;=0A=
		var s_prop11=3DSearchStringValue.toLowerCase();=0A=
		var s_eVar21=3Ds_prop11;=0A=
	} catch (ex) { =0A=
	}=0A=
  }=0A=
  else if (s_docURL.indexOf("microsite.do") !=3D -1) {=0A=
     var s_pageName =3D document.URL.toLowerCase();=0A=
     if (s_pageName.indexOf(';') !=3D -1) {=0A=
       s_pageName=3Ds_pageName.substring(0,s_pageName.indexOf(';'));=0A=
     }=0A=
  }=0A=
}=0A=
else if (s_docURL.indexOf("/designcenter/") !=3D -1) {=0A=
  s_channel=3D"Adobe Design Center";=0A=
  if (s_docURL.indexOf("/articles/") !=3D -1) {=0A=
    mymetatags =3D document.getElementsByTagName("meta");=0A=
	var adc_Title=3Ds_docURL;=0A=
	var adc_Products=3D"";=0A=
	var adc_Topics=3D"";=0A=
	var adc_Type=3D"";=0A=
	for (i=3D0;i < mymetatags.length;i++)  {=0A=
		if (mymetatags[i].getAttribute("name") =3D=3D "product") {=0A=
		   if (mymetatags[i].getAttribute("content").indexOf("[product") =
=3D=3D -1)=0A=
		     =
adc_Products=3D(adc_Products=3D=3D"")?';'+mymetatags[i].getAttribute("con=
tent"):adc_Products+',;'+mymetatags[i].getAttribute("content"); =0A=
		}=0A=
		else if (mymetatags[i].getAttribute("name") =3D=3D "topic") {=0A=
			=
adc_Topics=3D(adc_Topics=3D=3D"")?mymetatags[i].getAttribute("content"):a=
dc_Topics+','+mymetatags[i].getAttribute("content");=0A=
		}=0A=
		else if (mymetatags[i].getAttribute("name") =3D=3D "columntype") {=0A=
			adc_Type=3Dmymetatags[i].getAttribute("content");=0A=
		}=0A=
	}=0A=
	var s_eVar22=3Dadc_Title;=0A=
	if (adc_Type !=3D "") var s_eVar23=3Dadc_Type;=0A=
	if (adc_Topics !=3D "") var s_eVar24=3Dadc_Topics;=0A=
	if (adc_Products !=3D "") {=0A=
	  var s_products=3Dadc_Products;=0A=
	  var s_events=3D"event12";=0A=
	}=0A=
   }    =0A=
}=0A=
	if (!window.scMMInclude) {=0A=
		var s_wd=3Dwindow,s_tm=3Dnew Date;=0A=
		if(s_code!=3D' '){=0A=
			s_code=3Ds_dc(s_accountName);=0A=
		    if(s_code)document.write(s_code)=0A=
		} =0A=
	} else {=0A=
		  s_wds(s_accountName);s_ca(s_accountName); =0A=
  	}	=0A=
}=0A=
function sendAnalyticsEvent(str){var =
ns=3Ds_accountName;if(str!=3Dnull)ns+=3D","+str;void(s_gs(ns));}=0A=
function sendLinkEvent(accnt,lnkname,type){=0A=
accnt=3Ds_accountName;s_linkType=3Dtype;s_lnk=3Dtrue;s_linkName=3Dlnkname=
;void(s_gs(accnt));}=0A=
var searchForm =3D (document.forms["globalnav-search"]) || =
(document.forms["adc-globalnav-search"]);=0A=
if(searchForm) {=0A=
	if (typeof s_channel =3D=3D "undefined") { var s_channel; }=0A=
	s_pageName_input_value =3D (s_pageName!=3D"" && s_pageName !=3D null) ? =
s_pageName : window.location.href.split("?");=0A=
	s_channel_input_value =3D (s_channel!=3D"") ? s_channel : "Channel:n/a";=0A=
	var s_pageName_input =3D new Element('input');=0A=
	s_pageName_input.writeAttribute({=0A=
		 "name" : "s_pageName",=0A=
		 "type" : "hidden",=0A=
		 "value": s_pageName_input_value[0]=0A=
	});=0A=
	var s_channel_input =3D new Element('input');=0A=
	s_channel_input.writeAttribute({=0A=
		 "name" : "s_channel",=0A=
		 "type" : "hidden",=0A=
		 "value": s_channel_input_value=0A=
	});=0A=
	Element.insert(searchForm, s_pageName_input ).insert(s_channel_input);=0A=
}=0A=
//--></SCRIPT>
<NOSCRIPT><IMG height=3D1 alt=3D""=20
src=3D"http://stats.adobe.com/b/ss/mxmacromedia/1/G.9-XELvs" width=3D1=20
border=3D0></NOSCRIPT><!--/DO NOT REMOVE/--> <!-- End SiteCatalyst code =
version: G.6. --></DIV></BODY></HTML>

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/PDF.gif

R0lGODlhEAAQANUgAP9WTOaurdLU1P25tPXk4/be271bWPvFwfP3+PnJx/X09Pvc2v/T0P/p5vvi
4vfk5PjDwPfY1fL4+d6Fgf/Qyvq8uPKhpPjy8v/p6Pi4surd3eMvHP9gV8JcWG5ubv///////wAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACAALAAAAAAQABAAAAZsQJAQ
5CkajcOk58NsegQeYWdKpTKXUFCHw+1yOlcmdOvlGq7HqrqBaX6iw2UTwHDDhXJmAGBXuikbfXFu
AxsLTn5MDhsHGwEVBHdETBcbCQ8RGQAWkksFGxAKCBJMGp0fARNuiIOrgnhHsUVBADs=

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/blank.gif

R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/images/CC.png

iVBORw0KGgoAAAANSUhEUgAAAFAAAAAPCAIAAAD8q9/YAAAACXBIWXMAAAsTAAALEwEAmpwYAAAK
T2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AU
kSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXX
Pues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgAB
eNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAt
AGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3
AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dX
Lh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+
5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk
5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd
0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA
4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzA
BhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/ph
CJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5
h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+
Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhM
WE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQ
AkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+Io
UspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdp
r+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZ
D5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61Mb
U2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY
/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllir
SKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79u
p+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6Vh
lWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1
mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lO
k06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7Ry
FDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3I
veRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+B
Z7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/
0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5p
DoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5q
PNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIs
OpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5
hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQ
rAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9
rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1d
T1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aX
Dm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7
vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3S
PVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKa
RptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO
32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21
e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfV
P1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i
/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8
IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADq
YAAAOpgAABdvkl/FRgAAArtJREFUeNrklzFIG2EUgN+zxQ6aXxxi0YyZmniJSCYTyImKQ0sX6znU
dgwuShdDLWhTOkhDioIFL2uxtGTIUNohlZITdbIxJJrrZsE4VSr1jw4KzXV46XFcLtFuSt5wvP/+
997937137/8PoMEEAUDTtEahRbxJ2pd0yjihpNfmX87H4/FQKFTtJknS6urqG3nJ3mEHgK5ORzAQ
PPp1dMVpKa9N1ROHPw+Xl5Zr0QJAIpEYGhpaiC3SsFQqRZ5HrkuSLYDfv/vgcDhq0ZJEIpHMt8yn
j58BoHTCxQFx/PH4dQVeX1+fmpoCAFVVBUFAREmSOOeSJCGiIAiqqrpcrtHR0XwuX/k2mnBwYNBU
PyTKRpqGpCgbacuWoRsYewpFqLV0CqXb6EM9zqWA1cJ3/pt7PB4AGBsb8/v9mqb5fD5ZlhVFOT4+
np2dLRaLAODz+bLZrF7VXq+3ukMgYtAvkk5K0C8iouVSyMD4CtY2FUSsxUyhSIxDU5wLgE9PTwCA
McY5393d7e3tBYBwOLy3tycIAmNMkqTh4eF/zhX38/MzvIHVSdM0Tcdb21SIwVQCxhdkYhMD/XTf
0oUCmkrjwh3HDNzS0goAnHPGWHd39/b2NrXl9vb2nZ0dznk0Gk0kEmRcLpdJaW6+pf3RLDOsr4BW
T1d91pRtYjAWrbHCTS5ioN+U0uqAFwO73HcYY/l8HgBisVgymUREp9M5MzMjimJbW1sqlerr6wOA
ra0toUcgL5vNlsvlLDOsp/QyIgb6dXsiMdaIZfz/fUTl4GHchxdeL+7/2C8UCnXcVFV1u92TTybv
3b8LAJ23u6KvoitvV674PoyIFl16/NHDg4NiPB6v4zw3N+ft8RCtrZUpX5UrTltvW7J32MPPwhMT
E7IsW/qMPBjJZDLTT6f1eo68uDYHj4Y7SzfazxL8HQDeEHmHog5aAAAAAABJRU5ErkJggg==

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://stats.adobe.com/b/ss/mxmacromedia/1/G.9-XELvs

R0lGODlhAgACAIAAAP///wAAACH5BAEAAAAALAAAAAACAAIAAAIChFEAOw==

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/tree.css

.ygtvtn {
	BACKGROUND: url(images/tn.gif) no-repeat 0px 0px; WIDTH: 17px; HEIGHT: =
22px
}
.ygtvtm {
	BACKGROUND: url(images/tm.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvtmh {
	BACKGROUND: url(images/tmh.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvtp {
	BACKGROUND: url(images/tp.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvtph {
	BACKGROUND: url(images/tph.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvln {
	BACKGROUND: url(images/ln.gif) no-repeat 0px 0px; WIDTH: 17px; HEIGHT: =
22px
}
.ygtvlm {
	BACKGROUND: url(images/lm.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvlmh {
	BACKGROUND: url(images/lmh.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvlp {
	BACKGROUND: url(images/lp.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvlph {
	BACKGROUND: url(images/lph.gif) no-repeat 0px 0px; WIDTH: 17px; CURSOR: =
pointer; HEIGHT: 22px
}
.ygtvloading {
	BACKGROUND: url(images/loading.gif) no-repeat 0px 0px; WIDTH: 17px; =
HEIGHT: 22px
}
.ygtvdepthcell {
	BACKGROUND: url(images/vline.gif) no-repeat 0px 0px; WIDTH: 17px; =
HEIGHT: 22px
}
.ygtvblankdepthcell {
	WIDTH: 17px; HEIGHT: 22px
}
.ygtvitem {
=09
}
.ygtvchildren {
=09
}
* HTML .ygtvchildren {
	HEIGHT: 1%
}
.ygtvlabel {
	TEXT-DECORATION: none
}
.ygtvlabel:link {
	TEXT-DECORATION: none
}
.ygtvlabel:visited {
	TEXT-DECORATION: none
}
.ygtvlabel:hover {
	TEXT-DECORATION: none
}

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/content-fonts.css

BODY {
	FONT-SIZE: 12pt
}
BODY * {
	LINE-HEIGHT: 150%
}
.codeph {
	FONT-SIZE: 9pt; FONT-FAMILY: "Courier New", Courier, monospace
}
PRE {
	FONT-SIZE: 9pt; FONT-FAMILY: "Courier New", Courier, monospace
}
.userinput {
	FONT-WEIGHT: bold
}
DIV#nav_content TABLE TBODY TR TD {
	FONT-WEIGHT: bold; FONT-SIZE: 63%; COLOR: #666666
}
UL#tabsRow LI {
	FONT-WEIGHT: bold; FONT-SIZE: 63%; COLOR: #666666
}
DIV.letterList {
	FONT-WEIGHT: bold; FONT-SIZE: 63%; COLOR: #666666
}
DIV#breadcrumb {
	FONT-WEIGHT: bold; FONT-SIZE: 63%; COLOR: #666666
}
P.sharedproducts {
	FONT-WEIGHT: bold; FONT-SIZE: 63%; COLOR: #666666
}
FORM {
	FONT-SIZE: 67%
}
#searching_message {
	FONT-SIZE: 67%
}
.loadSearch {
	FONT-SIZE: 67%
}
#results {
	FONT-SIZE: 67%
}
#mnemonic {
	FONT-SIZE: 67%
}
#searchbar {
	FONT-SIZE: 67%
}
#content_wrapper {
	FONT-SIZE: 67%
}
INPUT.submit {
	FONT-WEIGHT: bold; FONT-SIZE: 100%
}
DIV#homepage_content DIV A {
	FONT-SIZE: 75%
}
H1.contentHead {
	FONT-SIZE: 79%
}
DIV#content_wrapper DIV DL {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV LI LI {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV LI P {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV DIV {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV DIV P {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV DIV DD {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV .dlterm {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV H4 {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV LI {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV SPAN {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV#bottomPageLinks UL {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV#bottomPageLinks LI {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV TABLE {
	FONT-SIZE: 100%
}
DIV#content_wrapper H3 {
	FONT-SIZE: 100%
}
DIV#content_wrapper DIV DIV {
	LINE-HEIGHT: 150%
}
DIV#content_wrapper DIV LI {
	LINE-HEIGHT: 150%
}
DIV#content_wrapper DIV DL {
	LINE-HEIGHT: 150%
}
DIV#content_wrapper DIV P {
	LINE-HEIGHT: 150%
}
.sup {
	FONT-WEIGHT: lighter; FONT-SIZE: smaller; VERTICAL-ALIGN: super
}
H1 {
	FONT-WEIGHT: normal; FONT-SIZE: 200%! important; LINE-HEIGHT: 130%
}
H2 {
	FONT-WEIGHT: normal; FONT-SIZE: 170%! important; LINE-HEIGHT: 130%
}
.nochunk H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 120%! important; LINE-HEIGHT: 130%
}
#minitoc * {
	FONT-WEIGHT: bold; FONT-SIZE: 100%! important
}
.tiptitle {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
.importanttitle {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
EM {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
TH {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
DIV#nav_content TABLE TBODY TR TD {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
H4 {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
.highlight {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
H1.contentHead {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
DIV.fignone DT {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
DFN.term {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
DIV#breadcrumb DIV.hierarchy {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
DT {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
LABEL {
	FONT-WEIGHT: bold; FONT-STYLE: normal
}
.notetitle {
	FONT-WEIGHT: bold
}
DIV#breadcrumb DIV.hierarchy A {
	FONT-WEIGHT: normal
}
DIV.fignone {
	FONT-STYLE: normal
}
DFN.term {
	FONT-STYLE: normal
}
DT {
	FONT-STYLE: normal
}
DD {
	FONT-STYLE: normal
}
DFN.term {
	COLOR: #333
}
PRE {
	COLOR: #333
}
DIV#content_wrapper DIV TABLE.choicetableborder TR TH {
	COLOR: #333
}
DIV#content_wrapper DIV TABLE.choicetableborder TR TD STRONG {
	COLOR: #666
}
DIV#breadcrumb DIV.nav {
	COLOR: #999
}
DIV#breadcrumb DIV.hierarchy {
	COLOR: #999
}
UL#tabsRow {
	COLOR: #999
}
FORM LABEL {
	COLOR: #000
}
UL#tabsRow LI SPAN.highlight {
	COLOR: #000
}
DIV#content_wrapper DIV TABLE.choicetableborder TR TD STRONG {
	LINE-HEIGHT: 200%
}
DIV#content_wrapper DIV TABLE.choicetableborder TR TD P {
	LINE-HEIGHT: 200%
}
DIV#breadcrumb DIV.hierarchy {
	LINE-HEIGHT: 200%
}
DIV#related_in H3 {
	PADDING-RIGHT: 5px; PADDING-LEFT: 8px; FONT-SIZE: 1em; MARGIN-BOTTOM: =
4px; PADDING-BOTTOM: 3px; COLOR: #fff; PADDING-TOP: 0px; FONT-FAMILY: =
Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #777
}
DIV#related H4 {
	PADDING-RIGHT: 5px; PADDING-LEFT: 10px; MARGIN-BOTTOM: 1px; =
PADDING-BOTTOM: 1px; MARGIN-LEFT: 1px; COLOR: #666666; MARGIN-RIGHT: =
1px; PADDING-TOP: 5px; FONT-FAMILY: Arial, Helvetica, sans-serif; =
HEIGHT: 1em
}

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/content-hyperlinks.css

A {
	TEXT-DECORATION: none
}
H3.topictitle3 A {
	TEXT-DECORATION: none
}
H3.topictitle3off A {
	TEXT-DECORATION: none
}
#breadcrumb A {
	TEXT-DECORATION: none
}
DIV#homepage_content DIV A {
	TEXT-DECORATION: none
}
DIV#nav_content TABLE TBODY TR TD A {
	FONT-WEIGHT: bold
}
DIV#homepage_content DIV A {
	FONT-WEIGHT: bold
}
DIV#nav_content TABLE TBODY TR TD A:link {
	COLOR: #047
}
DIV#nav_content TABLE TBODY TR TD A:hover {
	COLOR: #047
}
A:link {
	COLOR: #047
}
H3.topictitle3 A:link {
	COLOR: #047
}
#breadcrumb A.prev:link {
	COLOR: #047
}
#breadcrumb A.next:link {
	COLOR: #047
}
A.tabOff:link {
	COLOR: #047
}
A.tabOff:visited {
	COLOR: #047
}
DIV.letterList A:link {
	COLOR: #047
}
DIV.letterList A:visited {
	COLOR: #047
}
#results A:link {
	COLOR: #047
}
DIV#related A:link {
	COLOR: #047
}
DIV#homepage_content DIV A:link {
	COLOR: #047
}
#breadcrumb A:link {
	COLOR: #999
}
#breadcrumb A:visited {
	COLOR: #999
}
#breadcrumb A.prev:visited {
	COLOR: #5a6f7f
}
#breadcrumb A.next:visited {
	COLOR: #5a6f7f
}
A:visited {
	COLOR: #5a6f7f
}
DIV#nav_content TABLE TBODY TR TD A:visited {
	COLOR: #5a6f7f
}
#results A:visited {
	COLOR: #5a6f7f
}
DIV#related A:visited {
	COLOR: #5a6f7f
}
DIV#homepage_content DIV A:visited {
	COLOR: #5a6f7f
}
DIV#related A:active {
	COLOR: #c00
}
A:hover {
	COLOR: #c00
}
A.tabOff:hover {
	COLOR: #c00
}
#breadcrumb A.prev:hover {
	COLOR: #c00
}
#breadcrumb A.next:hover {
	COLOR: #c00
}
#breadcrumb A:hover {
	COLOR: #c00
}
DIV.letterList A:hover {
	COLOR: #c00
}
#results A:hover {
	COLOR: #c00
}
DIV#related A:hover {
	COLOR: #c00
}
DIV#homepage_content DIV A:hover {
	COLOR: #c00
}
DIV.fignone A {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 5px; PADDING-BOTTOM: =
0px; PADDING-TOP: 5px
}
DIV#homepage_content DIV A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
H3.topictitle3off A {
	MARGIN: 5px
}
H3.topictitle3 A {
	MARGIN: 5px
}
DIV#nav_content TABLE TBODY TR TD A:hover {
	BACKGROUND-COLOR: #ddd
}
.banner A {
	COLOR: #fff
}
.banner A:visited {
	COLOR: #fff
}
.banner A:hover {
	COLOR: #fff
}
.pod A {
	COLOR: #fff
}
.pod A:visited {
	COLOR: #fff
}
.pod A:hover {
	COLOR: #fff
}
.Acrobat .banner A {
	COLOR: #505050
}
.Acrobat .banner A:visited {
	COLOR: #505050
}
.Acrobat .banner A:hover {
	COLOR: #505050
}
.Acrobat .notyourversion A {
	COLOR: #505050
}
.Acrobat .notyourversion A:visited {
	COLOR: #505050
}
.Acrobat .notyourversion A:hover {
	COLOR: #505050
}
.Acrobat .pod A {
	COLOR: #505050
}
.Acrobat .pod A:visited {
	COLOR: #505050
}
.Acrobat .pod A:hover {
	COLOR: #505050
}
.banner A:hover {
	TEXT-DECORATION: underline
}
.pod A:hover {
	TEXT-DECORATION: underline
}
#group_toc A:visited {
	COLOR: #047
}
#product_list A:visited {
	COLOR: #047
}
#group_toc A:hover {
	COLOR: #c00
}

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/content.css

UNKNOWN {
	WIDTH: 100%
}
DIV.breadcrumb {
	BACKGROUND-COLOR: #fff
}
#nav_body {
	BACKGROUND-COLOR: #fff
}
DIV#breadcrumb SPAN.links {
	BACKGROUND-COLOR: #fff
}
DIV#content_wrapper DIV TABLE TR TH {
	BACKGROUND-COLOR: #fff
}
PRE {
	BACKGROUND-COLOR: #f0f7fe
}
HTML {
	OVERFLOW-Y: scroll; MIN-WIDTH: 400px
}
HTML {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DT {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
TABLE {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#selectBox {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
UL#tabsRow {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#nav_content TABLE {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.fignone DIV.figdesc {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.fignone DL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.relinfo {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.mainTable {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
P.Level1IX {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
P.Level2IX {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.listImage {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper DIV {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper DIV DIV {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper DIV DIV.section {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper LI P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper UL UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper LI LI P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper UL UL UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper LI LI LI P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper UL UL UL UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper LI LI LI LI P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper UL.navlinklist {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#homepage_wrapper {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.bottom-breadcrumb {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV#content_wrapper LI P {
	MARGIN-TOP: 4px
}
DIV#content_wrapper LI LI P {
	MARGIN-TOP: 4px
}
IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
IMG.image {
	PADDING-RIGHT: 2pt; PADDING-LEFT: 2pt
}
IMG.topicView {
	PADDING-RIGHT: 4px; MARGIN-BOTTOM: -2px
}
DL {
	MARGIN-TOP: 10px; MARGIN-BOTTOM: 10px
}
DL DL {
	MARGIN: 5px 20px
}
DIV#content_wrapper DL P.dlseparator {
	MARGIN-TOP: 0px; DISPLAY: block; MARGIN-BOTTOM: 3px; PADDING-BOTTOM: =
3px; PADDING-TOP: 0px
}
DIV#content_wrapper DL DD P {
	MARGIN-TOP: 2px; DISPLAY: block; PADDING-TOP: 2px
}
DIV#content_wrapper DIV.fignone DL P.dlseparator {
	DISPLAY: inline; MARGIN-LEFT: -4px
}
DIV.fignone DL DD {
	PADDING-RIGHT: 4px; MARGIN-LEFT: 0px; MARGIN-RIGHT: 4px
}
DIV.nav DL.page DD {
	PADDING-RIGHT: 6px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#page_content_wrapper H1 {
	FONT-WEIGHT: bold; MARGIN: 10px 0px 25px
}
H2 {
	PADDING-TOP: 0.5em
}
TABLE {
	BORDER-COLLAPSE: collapse
}
#content_wrapper TABLE {
	BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid; BORDER-LEFT: 1px solid; =
BORDER-BOTTOM: 1px solid; BORDER-COLLAPSE: collapse
}
TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
TH {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#homepage_body {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; HEIGHT: 100%; BACKGROUND-COLOR: white
}
DIV#homepage_wrapper {
	BACKGROUND: url(images/homepage.png) white no-repeat left top; HEIGHT: =
100px
}
DIV#homepage_content {
	PADDING-RIGHT: 0px; PADDING-LEFT: 21px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 130px
}
DIV#homepage_content DIV A {
	DISPLAY: block
}
#content_body {
	PADDING-RIGHT: 0px; PADDING-LEFT: 30px; PADDING-BOTTOM: 25px; MARGIN: =
0px 0px 25px; PADDING-TOP: 0px; BACKGROUND-COLOR: white
}
#mnemonic .Spry {
	COLOR: #999
}
DIV#content_wrapper DIV {
	MARGIN: 0px 0px 20px
}
DIV#content_wrapper DIV TABLE TR TH {
	PADDING-RIGHT: 5px
}
DIV#content_wrapper DIV TABLE TR TD {
	PADDING-RIGHT: 5px
}
DIV#content_wrapper DIV DIV.relinfo {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
20px 0px 0px; PADDING-TOP: 0px
}
DIV#content_wrapper DIV.fignone DIV.figdesc {
	MARGIN-TOP: 8px; MARGIN-BOTTOM: 12px
}
DIV#content_wrapper DIV.fignone DL {
	MARGIN-TOP: -8px; MARGIN-BOTTOM: 20px
}
DIV#content_wrapper DIV TABLE {
	MARGIN-TOP: 20px; MARGIN-BOTTOM: 20px
}
DIV#content_wrapper DIV TABLE TR TH {
	PADDING-RIGHT: 10px; PADDING-LEFT: 8px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
DIV#content_wrapper DIV TABLE TR TH {
	BACKGROUND: #eee
}
DIV#content_wrapper DIV TABLE TR TD {
	PADDING-RIGHT: 10px; PADDING-LEFT: 8px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
DIV#content_wrapper DIV TABLE TR TD P {
	MARGIN-TOP: 6px; MARGIN-BOTTOM: 8px
}
DIV#breadcrumb {
	PADDING-BOTTOM: 10px; PADDING-TOP: 0px
}
DIV#content_wrapper DIV.note {
	MARGIN-TOP: 3px; DISPLAY: block; MARGIN-BOTTOM: 5px; PADDING-BOTTOM: =
5px; PADDING-TOP: 3px
}
DIV#content_wrapper DIV.important {
	MARGIN-TOP: 3px; DISPLAY: block; MARGIN-BOTTOM: 5px; PADDING-BOTTOM: =
5px; PADDING-TOP: 3px
}
DIV#content_wrapper DIV DIV.section DIV.note {
	MARGIN-BOTTOM: 15px
}
DIV#content_wrapper DIV DIV.numbered UL {
	MARGIN-BOTTOM: 15px
}
DIV#content_wrapper DIV DIV.numbered DIV.note {
	MARGIN-BOTTOM: 15px
}
DIV#content_wrapper DIV DIV.numbered DIV.fignone {
	MARGIN-BOTTOM: 15px
}
DIV#breadcrumb DIV.bottom-breadcrumb {
	BORDER-TOP: #999 1px solid
}
DIV#breadcrumb DIV.bottom-breadcrumb {
	PADDING-TOP: 5px
}
DIV#breadcrumb DIV.bottom-breadcrumb DIV.nav {
	BORDER-BOTTOM-STYLE: none
}
DIV#breadcrumb DIV.hierarchy {
	PADDING-RIGHT: 50px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
DIV#breadcrumb SPAN.links {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 9px; =
PADDING-TOP: 5px; WHITE-SPACE: nowrap
}
DIV#tocrule {
	BORDER-TOP: #999 1px solid; MARGIN: 10px 0px
}
#nav_body {
	PADDING-RIGHT: 10px; PADDING-LEFT: 25px; BACKGROUND: =
url(images/bkg-line.gif) #fff repeat-y 100% 50%; PADDING-BOTTOM: 50px; =
PADDING-TOP: 20px
}
UL#tabsRow {
	MARGIN-BOTTOM: 10px
}
DIV.fignone {
	PADDING-LEFT: 20px
}
DIV.fignone IMG {
	MARGIN: 10px 0px 5px
}
DIV.p DIV.tip {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 200px; MARGIN: =
200px 0px; PADDING-TOP: 200px
}
DIV.tip {
	MARGIN-BOTTOM: 10px! important
}
TABLE {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 12px
}
#content_body TD {
	PADDING-LEFT: 2px; MARGIN-LEFT: 2px; VERTICAL-ALIGN: top
}
#content_body TH {
	PADDING-LEFT: 2px; MARGIN-LEFT: 2px; VERTICAL-ALIGN: top
}
#nav_content TD {
	PADDING-LEFT: 2px; PADDING-BOTTOM: 4px; MARGIN-LEFT: 2px; =
VERTICAL-ALIGN: middle
}
#nav_content TH {
	PADDING-LEFT: 2px; PADDING-BOTTOM: 4px; MARGIN-LEFT: 2px; =
VERTICAL-ALIGN: middle
}
FORM {
	PADDING-RIGHT: 5px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 10px
}
FORM LABEL {
	PADDING-BOTTOM: 5px
}
DIV#nav_content DIV.letterList {
	PADDING-RIGHT: 0px; BORDER-TOP: #999 1px solid; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 10px; PADDING-TOP: 10px; BORDER-BOTTOM: #999 1px solid
}
DIV.important {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 20px; =
PADDING-TOP: 10px
}
.loadSearch {
	BORDER-RIGHT: 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: 1px solid; =
PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: 20px; BORDER-LEFT: 1px =
solid; PADDING-TOP: 10px; BORDER-BOTTOM: 1px solid
}
P.Level1IX {
	PADDING-LEFT: 5px; PADDING-TOP: 2px
}
P.Level2IX {
	PADDING-LEFT: 15px; PADDING-TOP: 1px
}
DIV#content_wrapper UL LI {
	LIST-STYLE-TYPE: square
}
DIV#content_wrapper LI LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.25em 6px; PADDING-TOP: 0px
}
DIV#content_wrapper LI LI LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.25em 6px; PADDING-TOP: 0px
}
DIV#content_wrapper LI LI LI LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0.25em 6px; PADDING-TOP: 0px
}
DIV#content_wrapper OL {
	MARGIN: 0px 34px
}
DIV#content_wrapper OL UL {
	MARGIN: 0px 10px
}
DIV#content_wrapper UL {
	MARGIN: 0px 15px
}
DIV#content_wrapper LI {
	MARGIN: 2px 0px
}
DIV#content_wrapper UL OL LI {
	MARGIN: 0px 4px; LIST-STYLE-TYPE: decimal
}
DIV#content_wrapper OL OL {
	MARGIN: 0px 15px; LIST-STYLE-TYPE: lower-alpha
}
DIV#content_wrapper UL UL {
	MARGIN: 0px 15px
}
DIV#content_wrapper UL.navlinklist {
	MARGIN-TOP: 25px
}
DIV#content_wrapper UL.navlinklist LI {
	LIST-STYLE-IMAGE: none; MARGIN: 0px 0px 5px; LIST-STYLE-TYPE: none
}
.topic {
	BORDER-RIGHT: 1px solid; PADDING-RIGHT: 4px; PADDING-LEFT: 4px; =
PADDING-BOTTOM: 4px; PADDING-TOP: 4px; BORDER-BOTTOM: 1px solid
}
.listImage {
	PADDING-RIGHT: 4px; MARGIN-BOTTOM: -3px
}
#indexLettersTop {
	MARGIN-BOTTOM: 5px; PADDING-BOTTOM: 5px; BORDER-BOTTOM: 1px solid
}
#indexLettersBottom {
	BORDER-TOP: 1px solid; MARGIN-TOP: 5px; PADDING-TOP: 5px
}
.optgroup {
	TEXT-ALIGN: center
}
.optgroup OPTION {
	TEXT-ALIGN: left
}
H1.contentHead {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 0px
}
DIV.choption {
	MARGIN-RIGHT: 3px
}
DIV.dt {
	MARGIN-RIGHT: 3px
}
.dlentry {
	PADDING-LEFT: 16px
}
.dlentry .dlentry {
	DISPLAY: list-item; MARGIN-LEFT: 36px; LIST-STYLE-TYPE: disc
}
.chdesc {
	PADDING-LEFT: 16px
}
.related-links {
	PADDING-LEFT: 16px
}
PRE {
	BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: #ccc 1px =
solid; DISPLAY: block; PADDING-LEFT: 10px; OVERFLOW-X: auto; =
PADDING-BOTTOM: 25px; BORDER-LEFT: #ccc 1px solid; MARGIN-RIGHT: 10px; =
PADDING-TOP: 15px; BORDER-BOTTOM: #ccc 1px solid
}
DIV.fignone IMG {
	DISPLAY: block
}
DL BR {
	DISPLAY: block
}
DL {
	DISPLAY: block
}
.show {
	DISPLAY: block
}
.showIt {
	DISPLAY: block
}
.toggleImageLink {
	DISPLAY: block
}
FORM LABEL {
	DISPLAY: block
}
.fig IMG {
	DISPLAY: block
}
DT {
	DISPLAY: inline
}
DD {
	DISPLAY: inline
}
DD P {
	DISPLAY: inline
}
DIV.fignone DT {
	DISPLAY: inline
}
DIV.fignone DD {
	DISPLAY: inline
}
.keyword {
	DISPLAY: inline
}
.dt {
	DISPLAY: inline
}
.fig .dd {
	DISPLAY: inline
}
.fig .dlentry {
	DISPLAY: inline
}
.fig .dt {
	DISPLAY: inline
}
.keyword {
	DISPLAY: inline
}
.ph {
	DISPLAY: inline
}
.ph {
	DISPLAY: inline
}
.sup {
	DISPLAY: inline
}
.term {
	DISPLAY: inline
}
.tm {
	DISPLAY: inline
}
#tabsRow LI {
	DISPLAY: inline
}
.hide {
	DISPLAY: none
}
.hideIt {
	DISPLAY: none
}
DIV.fignone BR {
	DISPLAY: none
}
.choption:unknown {
	content: "&nbsp;"
}
.fig .dlentry:unknown {
	content: "&nbsp;"
}
.fig .dt:unknown {
	content: "&nbsp;"
}
#content_body .sharedproducts {
	PADDING-RIGHT: 10px; MARGIN-BOTTOM: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; TEXT-ALIGN: right! important
}
#content_body .sharedproductindicators {
	PADDING-BOTTOM: 0px; MARGIN: 5px 10px 10px 5px; PADDING-TOP: 0px; =
TEXT-ALIGN: right! important
}
#content_body .sharedproductindicators IMG {
	MARGIN: 0px 0px 0px 2px
}
DL.side-menu DT {
	DISPLAY: list-item; LIST-STYLE-POSITION: outside; LIST-STYLE-TYPE: none
}
DL.dd.side-menu {
	DISPLAY: list-item; LIST-STYLE-POSITION: outside; LIST-STYLE-TYPE: none
}
.page {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; TEXT-ALIGN: right
}
.page UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.page UL LI A {
	PADDING-RIGHT: 0.7ex; PADDING-LEFT: 0.7ex; PADDING-BOTTOM: 0.1em; =
PADDING-TOP: 0.1em
}
.page DT {
	FLOAT: left; MARGIN-RIGHT: -6px
}
.page DD {
	FLOAT: left; MARGIN-RIGHT: -6px
}
.page DD.next {
	BACKGROUND-IMAGE: url(images/next_null.gif); MARGIN-LEFT: -2px
}
.page DD.prev {
	BACKGROUND-IMAGE: url(images/prev_null.gif); MARGIN-LEFT: 0px
}
.page DD.next A {
	DISPLAY: block; FONT-SIZE: 1px; BACKGROUND-IMAGE: url(images/next.gif); =
WORD-BREAK: keep-all
}
.page DD.prev A {
	DISPLAY: block; FONT-SIZE: 1px; BACKGROUND-IMAGE: url(images/prev.gif); =
WORD-BREAK: keep-all
}
.page .prev A {
	BACKGROUND-POSITION: 0px 0px; OVERFLOW: hidden; WIDTH: 17px; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px
}
.page .prev {
	BACKGROUND-POSITION: 0px 0px; OVERFLOW: hidden; WIDTH: 17px; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px
}
.page .next A {
	BACKGROUND-POSITION: 0px 0px; OVERFLOW: hidden; WIDTH: 17px; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px
}
.page .next {
	BACKGROUND-POSITION: 0px 0px; OVERFLOW: hidden; WIDTH: 17px; =
BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px
}
.page DD.prev A {
	DISPLAY: block; OVERFLOW: hidden; TEXT-INDENT: 9999px
}
.page DD.next A {
	DISPLAY: block; OVERFLOW: hidden; TEXT-INDENT: 9999px
}
.page DD.prev A:hover {
	BACKGROUND-IMAGE: url(images/prev_hover.gif); BACKGROUND-COLOR: =
transparent
}
.page DD.prev A:focus {
	BACKGROUND-IMAGE: url(images/prev_hover.gif); BACKGROUND-COLOR: =
transparent
}
.page DD.next A:hover {
	BACKGROUND-IMAGE: url(images/next_hover.gif); BACKGROUND-COLOR: =
transparent
}
.page DD.next A:focus {
	BACKGROUND-IMAGE: url(images/next_hover.gif); BACKGROUND-COLOR: =
transparent
}
.t {
	WIDTH: 100%
}
.b {
	WIDTH: 100%
}
.l {
	BACKGROUND-COLOR: #e6e7e8
}
.r {
	BACKGROUND-COLOR: #e6e7e8
}
.bl {
	BACKGROUND: url(images/sw.gif) no-repeat 0px 100%
}
.br {
	BACKGROUND: url(images/se.gif) no-repeat 100% 100%
}
.tl {
	BACKGROUND: url(images/p1headernw.gif) no-repeat 0px 0px
}
.tr {
	BACKGROUND: url(images/p1headerne.gif) no-repeat 100% 0px
}
IMG.adobeLogoSplashScreen {
	Z-INDEX: -1000; LEFT: 21px; FLOAT: left; BOTTOM: 17px; POSITION: =
absolute
}
#mnemonic .AdobeMediaEncoder {
	BACKGROUND: url(images/AdobeMediaEncoderLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .AdobeMediaPlayer {
	BACKGROUND: url(images/AdobeMediaPlayerLinkIndicatorTopBar.png) #ea7c00 =
no-repeat left top
}
#mnemonic .AdsForAdobePDF {
	BACKGROUND: url(images/AdsForAdobePDFLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .Acrobat {
	BACKGROUND: url(images/AcrobatLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .Acrobatcom {
	BACKGROUND: url(images/AcrobatcomLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .AcrobatConnectPro {
	BACKGROUND: url(images/AcrobatConnectProLinkIndicatorTopBar.png) =
#467461 no-repeat left top
}
#mnemonic .ActionScript {
	BACKGROUND: url(images/ActionScriptLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .AIR {
	BACKGROUND: url(images/AIRLinkIndicatorTopBar.png) #ccc no-repeat left =
top
}
#mnemonic .AS2LCR {
	BACKGROUND: url(images/AS2LCRLinkIndicatorTopBar.png) #af2e22 no-repeat =
left top
}
#mnemonic .AfterEffects {
	BACKGROUND: url(images/AfterEffectsLinkIndicatorTopBar.png) #669999 =
no-repeat left top
}
#mnemonic .Audition {
	BACKGROUND: url(images/AuditionLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .Buzzword {
	BACKGROUND: url(images/BuzzwordLinkIndicatorTopBar.png) #dc5516 =
no-repeat left top
}
#mnemonic .Breeze {
	BACKGROUND: url(images/BreezeLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .Bridge {
	BACKGROUND: url(images/BridgeLinkIndicatorTopBar.png) #dc5516 no-repeat =
left top
}
#mnemonic .ConnectNow {
	BACKGROUND: url(images/ConnectNowLinkIndicatorTopBar.png) #dc5516 =
no-repeat left top
}
#mnemonic .Contribute {
	BACKGROUND: url(images/ContributeLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .Captivate {
	BACKGROUND: url(images/CaptivateLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .DeviceCentral {
	BACKGROUND: url(images/DeviceCentralLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .Dreamweaver {
	BACKGROUND: url(images/DreamweaverLinkIndicatorTopBar.png) #a5bf24 =
no-repeat left top
}
#mnemonic .EncoreDVD {
	BACKGROUND: url(images/EncoreDVDLinkIndicatorTopBar.png) #8ca9d1 =
no-repeat left top
}
#mnemonic .ExtensionManager {
	BACKGROUND: url(images/ExtensionManagerLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .FLIP {
	BACKGROUND: url(images/FLIPLinkIndicatorTopBar.png) #ccc no-repeat left =
top
}
#mnemonic .Flash {
	BACKGROUND: url(images/FlashLinkIndicatorTopBar.png) #af2e22 no-repeat =
left top
}
#mnemonic .FlashLite {
	BACKGROUND: url(images/FlashLiteLinkIndicatorTopBar.png) #af2e22 =
no-repeat left top
}
#mnemonic .FlashMediaLiveEncoder {
	BACKGROUND: url(images/FlashMediaLiveEncoderLinkIndicatorTopBar.png) =
#ac1120 no-repeat left top
}
#mnemonic .FlashMediaServer {
	BACKGROUND: url(images/FlashMediaServerLinkIndicatorTopBar.png) #af2e22 =
no-repeat left top
}
#mnemonic .Fireworks {
	BACKGROUND: url(images/FireworksLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .Flex {
	BACKGROUND: url(images/FlexLinkIndicatorTopBar.png) #ccc no-repeat left =
top
}
#mnemonic .FrameMaker {
	BACKGROUND: url(images/FrameMakerLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .GaijiSING {
	BACKGROUND: url(images/GaijiSINGLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .GoLive {
	BACKGROUND: url(images/GoLiveLinkIndicatorTopBar.png) #8077ad no-repeat =
left top
}
#mnemonic .Illustrator {
	BACKGROUND: url(images/IllustratorLinkIndicatorTopBar.png) #f6a80e =
no-repeat left top
}
#mnemonic .InCopy {
	BACKGROUND: url(images/InCopyLinkIndicatorTopBar.png) #7a5897 no-repeat =
left top
}
#mnemonic .InDesign {
	BACKGROUND: url(images/InDesignLinkIndicatorTopBar.png) #99217c =
no-repeat left top
}
#mnemonic .Lightroom {
	BACKGROUND: url(images/LightroomLinkIndicatorTopBar.png) #547990 =
no-repeat left top
}
#mnemonic .OnLocation {
	BACKGROUND: url(images/OnLocationLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .PhotoshopElements {
	BACKGROUND: url(images/PhotoshopElementsLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .Photoshop {
	BACKGROUND: url(images/PhotoshopLinkIndicatorTopBar.png) #0373b2 =
no-repeat left top
}
#mnemonic .PremiereElements {
	BACKGROUND: url(images/PremiereElementsLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .PremierePro {
	BACKGROUND: url(images/PremiereProLinkIndicatorTopBar.png) #aaa =
no-repeat left top
}
#mnemonic .Presenter {
	BACKGROUND: url(images/PresenterLinkIndicatorTopBar.png) #aaa no-repeat =
left top
}
#mnemonic .Reader {
	BACKGROUND: url(images/ReaderLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .RoboHelp {
	BACKGROUND: url(images/RoboHelpLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .Scene7 {
	BACKGROUND: url(images/Scene7LinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .Soundbooth {
	BACKGROUND: url(images/SoundboothLinkIndicatorTopBar.png) #d9d297 =
no-repeat left top
}
#mnemonic .Spry {
	BACKGROUND: url(images/SpryLinkIndicatorTopBar.png) #d9d297 no-repeat =
left top
}
#mnemonic .StockPhoto {
	BACKGROUND: url(images/StockphotoLinkIndicatorTopBar.png) #ccc =
no-repeat left top
}
#mnemonic .Validator {
	BACKGROUND: url(images/ValidatorLinkIndicatorTopBar.png) #ccc no-repeat =
left top
}
#mnemonic .VersionCue {
	BACKGROUND: url(images/VersionCueLinkIndicatorTopBar.png) #5cbcb4 =
no-repeat left top
}
#mnemonic .Wave {
	BACKGROUND: url(images/WaveLinkIndicatorTopBar.png) #cccccc no-repeat =
left top
}
.pdf-file {
	BACKGROUND: url(images/pdf_fileicon.png) no-repeat
}
.swf-file {
	BACKGROUND: url(images/swf_fileicon.png) no-repeat
}
BODY {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; PADDING-TOP: 0px! important
}
#mnemonic {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; BACKGROUND: =
#666666; LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 100%; =
COLOR: #fff; PADDING-TOP: 0px; TOP: 0px; HEIGHT: 24px
}
#mnemonic .banner {
	PADDING-RIGHT: 0px; PADDING-LEFT: 36px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 0px; COLOR: #fff; PADDING-TOP: 3px; HEIGHT: 24px
}
#mnemonic #notyourversion {
	PADDING-LEFT: 10px; FONT-WEIGHT: normal; COLOR: #fff; PADDING-TOP: 3px
}
#mnemonic .beta {
	PADDING-LEFT: 40px; FONT-WEIGHT: bold; COLOR: #fff; PADDING-TOP: 3px
}
#mnemonic .Acrobat .banner {
	COLOR: #505050
}
#mnemonic .Acrobat #notyourversion {
	COLOR: #505050
}
#mnemonic .Acrobat A {
	COLOR: #505050
}
#mnemonic .AcrobatConnectPro .banner {
	COLOR: #505050
}
#mnemonic .AcrobatConnectPro #notyourversion {
	COLOR: #505050
}
#mnemonic .AcrobatConnectPro A {
	COLOR: #505050
}
#mnemonic .Acrobatcom .banner {
	COLOR: #505050
}
#mnemonic .Acrobatcom #notyourversion {
	COLOR: #505050
}
#mnemonic .Acrobatcom A {
	COLOR: #505050
}
#mnemonic .Presenter .banner {
	COLOR: #505050
}
#mnemonic .Presenter #notyourversion {
	COLOR: #505050
}
#mnemonic .Presenter A {
	COLOR: #505050
}
#mnemonic .Scene7 .banner {
	COLOR: #505050
}
#mnemonic .Scene7 #notyourversion {
	COLOR: #505050
}
#mnemonic .Scene7 A {
	COLOR: #505050
}
#mnemonic .FlashMediaServer .banner {
	COLOR: #505050
}
#mnemonic .FlashMediaServer #notyourversion {
	COLOR: #505050
}
#mnemonic .FlashMediaServer A {
	COLOR: #505050
}
#mnemonic .Wave .banner {
	COLOR: #505050
}
#mnemonic .Wave #notyourversion {
	COLOR: #505050
}
#mnemonic .Wave A {
	COLOR: #505050
}
#mnemonic .AdsForAdobePDF .banner {
	DISPLAY: none
}
#group_toc {
	PADDING-LEFT: 12px
}
#nav_content {
	PADDING-LEFT: 12px
}
#page_content_table {
	WIDTH: 99%
}
#col1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 6px
}
.TOCLevel1 {
	MIN-WIDTH: 225px; WIDTH: 225px
}
.TOCLevel2 {
	MIN-WIDTH: 250px; WIDTH: 250px
}
.TOCLevel3 {
	MIN-WIDTH: 300px; WIDTH: 300px
}
.TOCLevel4 {
	MIN-WIDTH: 350px; WIDTH: 350px
}
#col2 {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 18px! important; =
PADDING-BOTTOM: 0px! important; PADDING-TOP: 2px! important
}
#group_toc {
	MARGIN-TOP: 0px; FONT-WEIGHT: bold; FONT-SIZE: 63%; BACKGROUND: #fff; =
MARGIN-BOTTOM: 10px; WIDTH: 250px; COLOR: #000
}
#group_toc P {
	PADDING-LEFT: 12px; MARGIN: 0px 0px 4px
}
#group_toc UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; MARGIN: =
9px 20px 0px 0px; COLOR: #999; LINE-HEIGHT: 150%; PADDING-TOP: 0px
}
#group_toc UL LI {
	MARGIN-BOTTOM: 9px; MARGIN-LEFT: 10px; LIST-STYLE-TYPE: none
}
#sectiontitle {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 70%; PADDING-BOTTOM: =
0px; MARGIN: 0px 20px; COLOR: #000; LINE-HEIGHT: 100%; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none
}
#product_list {
	BORDER-RIGHT: 0px solid; BORDER-TOP: 0px solid; MARGIN-TOP: 80px; =
FONT-SIZE: 100%; BORDER-LEFT: 0px solid; BORDER-BOTTOM: 0px solid
}
#product_list H1 {
	FONT-WEIGHT: bold; FONT-SIZE: 24px; MARGIN: 25px 20px; COLOR: #000; =
FONT-FAMILY: Verdana, Arial, Helvetica
}
#product_list P {
	MARGIN-LEFT: 20px; COLOR: #333
}
#product_list UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; MARGIN: =
0px 20px; COLOR: #000; LINE-HEIGHT: 130%; PADDING-TOP: 0px; =
LIST-STYLE-TYPE: none
}
#product_list LI {
	MARGIN-BOTTOM: 6px
}
#product_list LI.weblink {
	LIST-STYLE-IMAGE: url(images/bullet-weblink.png); LIST-STYLE-TYPE: disc
}
#splash {
	MARGIN-TOP: 40px; WIDTH: 400px; LINE-HEIGHT: 180%
}
#splash B {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 120%; COLOR: #900
}
#splash IMG {
	MARGIN: 0px 5px 4px 0px; VERTICAL-ALIGN: middle
}
#resultsTop {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 20px
}
#results {
	FONT-SIZE: 100%
}
.searchresults {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#related P {
	MARGIN: 4px 0px 0px
}
#footer P {
	MARGIN: 4px 0px 0px
}
IMG.linkIndicator {
	MARGIN-LEFT: 8px; VERTICAL-ALIGN: -2px
}
DIV.separator {
	BACKGROUND: url(images/Dash.png) #fff repeat-x left bottom; WIDTH: 100%
}
DIV.separator A {
	FLOAT: right; MARGIN-BOTTOM: 3px; MARGIN-RIGHT: 20px; TEXT-ALIGN: right
}
.navigation {
	MARGIN-TOP: 0px; BACKGROUND: #fff; FLOAT: right; WIDTH: 50px; =
MARGIN-RIGHT: 10px; PADDING-TOP: 2px; TEXT-ALIGN: right
}
.navigation LI {
	DISPLAY: inline
}
.navigation LI.next {
	MARGIN-LEFT: -1px
}
A.prev IMG {
	BACKGROUND: url(images/prev.gif) no-repeat left top
}
A.next IMG {
	BACKGROUND: url(images/next.gif) no-repeat left top
}
A.prev:hover IMG {
	BACKGROUND: url(images/prev_hover.gif) no-repeat left top
}
A.next:hover IMG {
	BACKGROUND: url(images/next_hover.gif) no-repeat left top
}
H4 {
	MARGIN-TOP: 20px; MARGIN-BOTTOM: -2px
}
H4.sectiontitle {
	MARGIN-TOP: 6px; MARGIN-BOTTOM: -2px
}
H3.topictitle3 {
	MARGIN-BOTTOM: 4px
}
.right {
	TEXT-ALIGN: right
}
#content_wrapper .p {
	MARGIN-TOP: 9px
}
#content_wrapper .para {
	MARGIN-TOP: 9px
}
#content_wrapper .section UL {
	MARGIN-TOP: 8px; MARGIN-BOTTOM: 12px
}
#content_wrapper .section OL {
	MARGIN-TOP: 8px; MARGIN-BOTTOM: 12px
}
#content_wrapper .nochunk UL UL {
	MARGIN-LEFT: 8px
}
#content_wrapper .nochunk H3 {
	MARGIN-TOP: 14px; MARGIN-BOTTOM: 10px
}
UNKNOWN {
	COLOR: #ff0000
}
P#creativecommons {
	MARGIN-TOP: 15px
}
#ionCount {
	FONT-WEIGHT: bold; FONT-SIZE: 100%; MARGIN: -10px 0px 5px; FONT-FAMILY: =
Arial, Helvetica, sans-serif
}
#ionCom {
	MARGIN-BOTTOM: 30px
}
#ionComHere #ionCom H3 {
	FONT-SIZE: 100%; PADDING-BOTTOM: 5px; COLOR: #000; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif
}
#ionComList {
	MARGIN: 0px
}
#ionComList LI {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; FONT-SIZE: =
98%! important; PADDING-BOTTOM: 4px! important; PADDING-TOP: 4px! =
important; FONT-FAMILY: Verdana,Arial,Helvetica,sans-serif; =
LIST-STYLE-TYPE: none! important
}
#ionComList LI.ionComMessage {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 4px! important; =
FONT-WEIGHT: normal; LIST-STYLE-POSITION: inside; BACKGROUND: #ffffcc; =
PADDING-BOTTOM: 4px! important; MARGIN: 0px; COLOR: #000; PADDING-TOP: =
4px! important; FONT-STYLE: normal; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; LIST-STYLE-TYPE: none
}
#ionComButAdd {
	MARGIN-LEFT: 0px! important
}
.defaultTextArea {
	FONT-SIZE: 160%! important
}
#ionCom FIELDSET .button {
	FONT-SIZE: 150%
}
.ionComMessage {
	FONT-SIZE: 150%
}
#ionComPreview H4 {
	FONT-SIZE: 150%! important; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif
}
#ionComPreview #ionComPreviewTextArea {
	FONT-SIZE: 150%! important; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif
}
#ionCom A {
	COLOR: #047! important
}
#ionCom A:visited {
	COLOR: #047! important
}
#ionCom A:hover {
	COLOR: #c00! important; TEXT-DECORATION: none! important
}
.edit {
	COLOR: #ff0000
}
.help_breadcrumbs {
	DISPLAY: none
}
#minitoc {
	MIN-WIDTH: 400px; DISPLAY: block; WIDTH: 400px; FONT-FAMILY: Arial, =
Helvetica, sans-serif; BACKGROUND-COLOR: #e6e7e8
}
#minitoc DIV DIV DIV DIV DIV DIV DIV DIV DIV {
	PADDING-RIGHT: 10px; PADDING-LEFT: 12px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 9px
}
#minitoc UL#minitoc-links LI {
	MARGIN-TOP: 6px; LIST-STYLE-IMAGE: none; MARGIN-BOTTOM: 6px; =
LIST-STYLE-TYPE: none
}
#minitoc_in {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; MARGIN-BOTTOM: 0px; =
PADDING-BOTTOM: 0px; PADDING-TOP: 5px
}
#minitoc .topictitle1 {
	MARGIN: 10px 10px 0px 0px
}
#minitoc .topictitle2 {
	MARGIN: 10px 10px 0px 0px
}
#minitoc .topictitle3 {
	MARGIN: 10px 10px 0px 0px
}
#minitoc .topictitle4 {
	MARGIN: 10px 10px 0px 12px
}
#minitoc .topictitle5 {
	MARGIN: 10px 10px 0px 16px
}
#minitoc .topictitle6 {
	MARGIN: 10px 10px 0px 20px
}
#minitoc H1 {
	PADDING-TOP: 2px
}
#minitoc H2 {
	PADDING-TOP: 2px
}
#minitoc H3 {
	PADDING-TOP: 2px
}
#minitoc H4 {
	PADDING-TOP: 2px
}
#minitoc {
	MARGIN-TOP: -20px; MARGIN-BOTTOM: -80px
}
#searchbar {
	PADDING-RIGHT: 0px; BORDER-TOP: #202020 1px solid; PADDING-LEFT: 0px; =
BACKGROUND: #303030; PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 100%; =
PADDING-TOP: 0px; TOP: 24px; HEIGHT: 24px
}
#pdf {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 3px
}
#pdf IMG {
	MARGIN: 0px 8px 0px 33px; VERTICAL-ALIGN: top
}
#pdf A {
	FONT-SIZE: 11px; COLOR: #fff
}
#pdf A:hover {
	TEXT-DECORATION: underline
}
#searchscope {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; RIGHT: 188px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; POSITION: absolute; TOP: 26px
}
#gsa {
	MARGIN: 4px 6px 0px 0px
}
.gsalabel {
	VERTICAL-ALIGN: 15%; COLOR: #fff
}
#search INPUT.searchinput {
	PADDING-RIGHT: 0px; PADDING-LEFT: 3px; FONT-SIZE: 12px; RIGHT: 36px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 140px; BORDER-TOP-STYLE: none; =
PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
POSITION: absolute; TOP: 28px; HEIGHT: 18px; BACKGROUND-COLOR: #fff; =
BORDER-BOTTOM-STYLE: none
}
#search INPUT.searchbutton {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; RIGHT: 18px; BACKGROUND-IMAGE: =
url(images/searchbutton.png); PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: =
18px; CURSOR: pointer; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; =
BACKGROUND-REPEAT: no-repeat; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; POSITION: absolute; TOP: 28px; HEIGHT: 18px; =
BACKGROUND-COLOR: #ddd; BORDER-BOTTOM-STYLE: none
}

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-css
Content-Transfer-Encoding: 7bit
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/localeSpecific.css

BODY {
	FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
}
.fig {
	FONT-STYLE: italic
}
.fig .desc {
	FONT-STYLE: italic
}
DIV.figdesc {
	FONT-STYLE: italic
}
DIV.fignone DL DT {
	FONT-STYLE: italic
}
.fig .dlentry {
	FONT-STYLE: italic
}
.keyword {
	FONT-STYLE: italic
}
.note {
	FONT-STYLE: italic
}
.important {
	FONT-STYLE: italic
}
.tip {
	FONT-STYLE: italic
}
.related-links:unknown {
	FONT-STYLE: italic
}
DIV.fignone {
	FONT-STYLE: italic
}
DIV.fignone DD {
	FONT-STYLE: italic
}

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://community.adobe.com/ion/comment/ionComments.css

#ionCom H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom FIELDSET {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom TEXTAREA {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom EM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ionCom FIELDSET {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
#ionCom UL {
	LIST-STYLE-TYPE: none
}
#ionCom H3 EM {
	FONT-STYLE: normal
}
#ionCom {
	FONT: 12px Arial, Helvetica, sans-serif; WIDTH: 515px
}
#ionCom H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 12pt; PADDING-BOTTOM: 10px; COLOR: =
#0066cc; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#ionCom BUTTON {
	MARGIN-TOP: 12px; COLOR: #000
}
#ionCom A {
	COLOR: #0066cc; TEXT-DECORATION: none
}
#ionCom A:hover {
	COLOR: #1e6a00; TEXT-DECORATION: underline
}
#ionComList {
	CLEAR: both; BORDER-TOP: #b2b2b2 1px solid; LIST-STYLE-TYPE: none
}
#ionComList LI {
	PADDING-RIGHT: 12px; PADDING-LEFT: 14px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 12px; BORDER-BOTTOM: #b2b2b2 1px solid
}
#ionComList P {
	OVERFLOW-Y: visible; OVERFLOW-X: auto; LINE-HEIGHT: 14pt
}
#ionComPreviewTextArea {
	OVERFLOW-Y: visible; OVERFLOW-X: auto; LINE-HEIGHT: 14pt
}
#ionComList P {
	CLEAR: both
}
#ionComList .even {
	BACKGROUND: #eee
}
.ionComMetaData {
	PADDING-BOTTOM: 10px
}
.ionComMetaData SPAN {
	DISPLAY: block
}
.ionComMetaData .ionComAuthor {
	FONT-SIZE: 10pt; FLOAT: left; COLOR: #6c6c6c
}
#ionComList .ionComAuthor A {
	PADDING-RIGHT: 5px; DISPLAY: block; FONT-WEIGHT: bold; FLOAT: left
}
#ionComList .ionComEmployee {
	PADDING-LEFT: 20px; BACKGROUND: url(images/logo_adobe.gif) no-repeat =
left center; HEIGHT: 16px
}
.ionComMetaData .ionComPostDate {
	CLEAR: right; PADDING-LEFT: 6px; FONT-SIZE: 10pt; FLOAT: right; COLOR: =
#6c6c6c
}
#ionComPagination {
	PADDING-RIGHT: 0px; PADDING-LEFT: 12px; BACKGROUND: #fafafa; =
PADDING-BOTTOM: 10px; OVERFLOW: visible; PADDING-TOP: 10px; =
BORDER-BOTTOM: #b2b2b2 1px solid; HEIGHT: 12px
}
#ionComPagination SPAN {
	PADDING-RIGHT: 5px; FONT-WEIGHT: bold; FLOAT: left; COLOR: #111
}
#ionComPagination A {
	DISPLAY: block; PADDING-LEFT: 6px; FONT-WEIGHT: bold; FLOAT: left; =
WIDTH: auto
}
#ionComPagination A#ionComCurrPage {
	COLOR: #111
}
#ionComAddForm {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 12px; =
PADDING-TOP: 12px
}
#ionComAddForm TEXTAREA {
	BORDER-RIGHT: #b2b2b2 1px solid; PADDING-RIGHT: 12px; BORDER-TOP: =
#b2b2b2 1px solid; PADDING-LEFT: 12px; BACKGROUND: #eee; PADDING-BOTTOM: =
12px; BORDER-LEFT: #b2b2b2 1px solid; WIDTH: 489px; PADDING-TOP: 12px; =
BORDER-BOTTOM: #b2b2b2 1px solid; FONT-FAMILY: Arial, Helvetica, =
sans-serif
}
#ionComAddForm .defaultTextArea {
	FONT-SIZE: 10pt; COLOR: #000
}
#ionComAddForm FIELDSET {
	TEXT-ALIGN: right
}
#ionComPreview {
	BORDER-RIGHT: #004477 1px solid; PADDING-RIGHT: 12px; BORDER-TOP: =
#004477 1px solid; PADDING-LEFT: 12px; BACKGROUND: #eee; PADDING-BOTTOM: =
12px; BORDER-LEFT: #004477 1px solid; PADDING-TOP: 12px; BORDER-BOTTOM: =
#004477 1px solid
}
#ionComPreview H4 {
	FONT-WEIGHT: bold; FONT-SIZE: 12pt; PADDING-BOTTOM: 12px; COLOR: =
#004477
}
#ionComAdd {
	DISPLAY: none
}
#ionComPreview {
	DISPLAY: none
}
.ionComMessage {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; BACKGROUND: #ffc; COLOR: #6c6c6c; =
FONT-STYLE: italic
}
LI .ionComMessage {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.ionComMessage A {
	COLOR: #0066cc; TEXT-DECORATION: none
}
.ionComMessage A:hover {
	TEXT-DECORATION: underline
}
.ionComCenter {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; PADDING-TOP: 10px; TEXT-ALIGN: center
}
.ionComLoading {
	BACKGROUND: url(images/loading.gif) no-repeat left center
}
.ionComErr {
	FONT-WEIGHT: bold; BACKGROUND: #ffeaea; COLOR: #cc3300
}
.ionComErr A {
	FONT-WEIGHT: bold; BACKGROUND: #ffeaea; COLOR: #cc3300
}
.ionComErr A:hover {
	TEXT-DECORATION: none
}
.button {
	BORDER-RIGHT: rgb(172,181,181) 1px solid; PADDING-RIGHT: 1.5ex; =
BORDER-TOP: #c4cccc 1px solid; PADDING-LEFT: 1.5ex; FONT-WEIGHT: bold; =
BACKGROUND: url(images/element_bg.gif) #fefefe repeat-x 0% 50%; =
PADDING-BOTTOM: 0.2em; OVERFLOW: visible; BORDER-LEFT: rgb(172,181,181) =
1px solid; CURSOR: pointer; COLOR: #2b333c; PADDING-TOP: 0.2em; =
BORDER-BOTTOM: rgb(111,119,119) 1px solid; FONT-FAMILY: inherit; =
TEXT-ALIGN: center
}
BUTTON:visited {
	COLOR: #2b333c
}
.button {
=09
}
* + .button {
	MARGIN-LEFT: 1ex
}
A.button {
	WHITE-SPACE: nowrap; TEXT-DECORATION: none
}

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/terms.js

var terms_LANGUAGE =3D "en-us";=0A=
    var terms_legend =3D "Indicates a topic that appears only in Help";=0A=
    var terms_chapter_r =3D "Adobe Dreamweaver CS4";=0A=
    var terms_header_r_NewFeatureNotes =3D "New Feature Notes";=0A=
    var terms_header_r_GettingStarted =3D "Getting Started Guide";=0A=
    var terms_header_r_InstallationConfiguration =3D "Installation and =
Configuration Guide";=0A=
    var terms_chapter_l =3D "Chapter <$chapnum>";=0A=
    var terms_chap_name =3D "Chapter <$chapnum>: ";=0A=
    var terms_chap_nameTOC =3D "Chapter <n+>: ";=0A=
    var terms_TOCTitle =3D "Contents";=0A=
    var terms_index_name =3D "Index";=0A=
    var terms_note =3D "Note: ";=0A=
    var terms_important =3D "Important: ";=0A=
    var terms_seehelp =3D "See Help: ";=0A=
    var terms_head_see_also =3D "See also";=0A=
    var terms_Heading___Page =3D =
"\=E2=80=9C<activelink><$paratext><Default =C2=B6 Font>\=E2=80=9D on =
page\ <$pagenum>";=0A=
    var terms_Heading =3D "<activelink><$paratext>";=0A=
    var terms_SEE_ALSO_FOR_PRINT_ONE =3D "For more information, see $1.";=0A=
    var terms_SEE_ALSO_FOR_PRINT_TWO =3D "For more information, see $1 =
and $2.";=0A=
    var terms_GROUP_TITLES_IX_TEXT =3D "Symbols[\ =
];Numerics[0];A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z";=0A=
    var terms_SORT_ORDER_IX_TEXT =3D =
"<$symbols><$numerics><$alphabetics>";=0A=
    var terms_MORE_INFORMATION_LINK_TEXT =3D "More information";=0A=
    var terms_DETAILED_GRAPHIC_LINK_TEXT =3D "View full size graphic";=0A=
    var terms_MOVIE_CLIP_LINK_TEXT =3D "Movie clip";=0A=
    var terms_AUDIO_CLIP_TEXT =3D "Audio clip";=0A=
    var terms_livedocs_text =3D "This page on the Web";=0A=
    var terms_back =3D "Back";=0A=
    var terms_Next_Topic =3D "Next";=0A=
    var terms_Previous_Topic =3D "Previous";=0A=
    var terms_ColonSymbol =3D "";=0A=
    var terms_Related_Information =3D "Related Information";=0A=
    var terms_Option =3D "Option";=0A=
    var terms_Description =3D "Description";=0A=
    var terms_Tip =3D "Tip: ";=0A=
    var terms_AHV_CONTENTS_TAB =3D "Contents";=0A=
    var terms_AHV_INDEX_TAB =3D "Index";=0A=
    var terms_AHV_SEARCH_TAB =3D "Search";=0A=
    var terms_AHV_SEARCH_TERM_FIELD =3D "Find pages containing:";=0A=
    var terms_AHV_SEARCH_BUTTON =3D "Search";=0A=
    var terms_AHV_NO_SEARCH_TERM =3D "No search term entered.";=0A=
    var terms_AHV_STOPWORDS_ONLY =3D "All common search words were =
excluded.";=0A=
    var terms_AHV_NO_MATCHES =3D "No pages contain:";=0A=
    var terms_AHV_MATCHES =3D "Pages containing:";=0A=
    var terms_AHV_BANNER_FRAME =3D "banner";=0A=
    var terms_AHV_LINE_FRAME =3D "line";=0A=
    var terms_AHV_NAVIGATION_FRAME =3D "navigation";=0A=
    var terms_AHV_CONTENT_FRAME =3D "content";=0A=
    var terms_AHV_LARGE_GRAPHIC =3D "View full size graphic";=0A=
    var terms_AHV_SMALL_GRAPHIC =3D "View small graphic";=0A=
    var terms_AHV_SYMBOLS_HEAD =3D "Symbols";=0A=
    var terms_AHV_NUMERICS_HEAD =3D "Numerics";=0A=
    var terms_AHV_ENABLE_JAVASCRIPT =3D "To use Search, make JavaScript =
active in your web browser.";=0A=
    var terms_AHV_SHORT_WORDS =3D "Short and common words are excluded =
from the search database.";=0A=
    var terms_AHV_QUICKSTART_PREFIX =3D "Quickstart: ";=0A=
    var terms_FLASH_9_0_FPH_HEADING =3D "Using Flash";=0A=
    var terms_AHV_HELP_RESOURCE_CENTER =3D "Help Resource Center";=0A=
    var terms_AHV_WEB_RESOURCES =3D "Web Resources";=0A=
    var terms_AHV_TOPIC_APPEARS_IN =3D "TOPIC APPEARS IN: ";=0A=
    var terms_AHV_RESOURCES_ONLINE =3D "Related Resources Online";=0A=
    var terms_AHV_SHOW =3D "Show";=0A=
    var terms_AHV_HIDE =3D "Hide";=0A=
    var terms_AHV_CREATIVE_COMMONS =3D "This work is licensed under a =
Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported =
License";=0A=
    var terms_AHV_COMMUNITY_HELP_SHORT =3D "community help (adobe.com)";=0A=
    var terms_AHV_COMMUNITY_HELP_LONG =3D "Complete, updated Help is on =
the web.  For complete Help plus community-based instruction, =
inspiration, and support, go to community.adobe.com/help.";=0A=
    var terms_AHV_NOT_YOUR_VERSION =3D "Not your version?";=0A=
    var terms_AHV_PRINTABLE_PDF =3D "Download Help PDF";=0A=
    var terms_AHV_SEARCH_CONSTRAINT =3D "This Help system only";=0A=
    var terms_VERSION =3D "10.0";=0A=
    var terms_FRIENDLY_NAME =3D "Adobe Dreamweaver CS4";=0A=
    var terms_PRODUCT_LONG =3D =
"Adobe=C2=AE=C2=A0Dreamweaver=C2=AE=C2=A0CS4";=0A=
    var terms_PRODUCT_SHORT =3D "Dreamweaver";=0A=
    var terms_BOOK_LONG =3D "Using Adobe=C2=AE Dreamweaver=C2=AE CS4";=0A=
    var terms_BOOK_SHORT =3D "Using Dreamweaver CS4";=0A=
    var terms_header_r =3D "Using Dreamweaver CS4";=0A=
    var terms_TOCLevel =3D "3";=0A=
    var terms_AHV_PRINTABLE_PDF_HREF =3D "dreamweaver_cs4_help.pdf";=0A=
    var terms_SUITE =3D "CS";=0A=
    var terms_PRINT_TEMPLATE_LAYOUT =3D "-1col";=0A=
    var terms_AHV_NOT_YOUR_VERSION_HREF =3D =
"http://www.adobe.com/support/documentation/en/dreamweaver/";=0A=
    var terms_GEP_BUILD_TYPE =3D "process.map.for.web";=0A=
    var terms_ws_user_email =3D "kyarwood@adobe.com";=0A=
    
------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/help.js

/*=0A=
// History=0A=
//	Updated by Erich Champion on 06/17/08 - fixing search bugs 1762094, =
1826817, 1821365, 1795591=0A=
//  Updated by Erich Champion on 06/08/08 - fixing bug 1762094 another =
way=0A=
//  Updated by Erich Champion on 05/29/08 - integrating changes from =
version 14=0A=
//  Updated by Carlos Miqueo on 05/21/08 - bugfix 1762094=0A=
//  Updated by Carlos Miqueo on 04/22/08 - bugfix 1762094=0A=
*/=0A=
=0A=
//For AHV 1.1, this goes back to previous page in history.=0A=
=0A=
function closePopup()=0A=
{=0A=
  window.close();=0A=
}=0A=
=0A=
function updateTOCClass() {=0A=
  //function to make the TOC wider, based upon the number of levels.=0A=
  var TOCLevel =3D "TOCLevel2";=0A=
  if ( typeof(terms_TOCLevel) !=3D 'undefined' ) {=0A=
      TOCLevel =3D "TOCLevel" + terms_TOCLevel;=0A=
  }=0A=
  if (document.getElementById) { // DOM3 =3D IE5, NS6=0A=
    document.getElementById("col1").className =3D TOCLevel;=0A=
  }=0A=
}=0A=
=0A=
function hideElement(id) {=0A=
	//safe function to hide an element with a specified id=0A=
	if (document.getElementById) { // DOM3 =3D IE5, NS6=0A=
		document.getElementById(id).style.display =3D 'none';=0A=
	}=0A=
	else {=0A=
		if (document.layers) { // Netscape 4=0A=
			document.id.display =3D 'none';=0A=
		}=0A=
		else { // IE 4=0A=
			document.all.id.style.display =3D 'none';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
function showElement(id) {=0A=
	//safe function to hide an element with a specified id=0A=
	if (document.getElementById) { // DOM3 =3D IE5, NS6=0A=
		document.getElementById(id).style.display =3D 'block';=0A=
	}=0A=
	else {=0A=
		if (document.layers) { // Netscape 4=0A=
			document.id.display =3D 'block';=0A=
		}=0A=
		else { // IE 4=0A=
			document.all.id.style.display =3D 'block';=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
// HIDES AND SHOWS MINI-TOC IN THE CONTENT PAGES=0A=
function toggleMiniToc(listId, obj) =0A=
{=0A=
	if( obj.className =3D=3D "hideLink" )=0A=
	{=0A=
			hideElement(listId);=0A=
			obj.className=3D"showLink";=0A=
			obj.href=3D"#";=0A=
			obj.firstChild.nodeValue =3D terms_AHV_SHOW;=0A=
			window.focus();=0A=
	}=0A=
	else=0A=
	{=0A=
			showElement(listId);=0A=
			obj.className=3D"hideLink";=0A=
			obj.href=3D"#";=0A=
			obj.firstChild.nodeValue =3D terms_AHV_HIDE;=0A=
			window.focus();=0A=
	}=0A=
	return false;=0A=
}=0A=
=0A=
// HIDES AND SHOWS LARGE GRAPHICS IN THE CONTENT PAGES=0A=
function showHideImage(thisID, obj) =0A=
{=0A=
	=0A=
	var imgElement =3D document.getElementById(thisID);=0A=
	var imgText =3D obj;=0A=
=0A=
	if( imgElement.className =3D=3D "largeImage" )=0A=
	{=0A=
			imgElement.src =3D "images/" + thisID + ".png";=0A=
			imgElement.className=3D"smallImage";=0A=
			obj.className=3D"showImageLink";=0A=
			obj.href=3D"#";=0A=
			obj.firstChild.nodeValue =3D terms_AHV_LARGE_GRAPHIC;=0A=
			window.focus();=0A=
	}=0A=
	else=0A=
	{=0A=
			imgElement.src =3D "images/" + thisID + "_popup.png";=0A=
			imgElement.className=3D"largeImage";=0A=
			obj.className=3D"hideImageLink";=0A=
			obj.href=3D"#";=0A=
			obj.firstChild.nodeValue =3D terms_AHV_SMALL_GRAPHIC;=0A=
			window.focus();=0A=
	}=0A=
	return false;=0A=
}=0A=
// js function for expand collapse menu functionality=0A=
function KeyCheck(e, tree, idx)=0A=
{=0A=
  var KeyID =3D (window.event) ? event.keyCode : e.keyCode;=0A=
  var node =3D  YAHOO.widget.TreeView.getNode(tree, idx);=0A=
   switch(KeyID)=0A=
   {=0A=
      case 37:=0A=
     // alert("Arrow Left");=0A=
      node.collapse();=0A=
      break;=0A=
      case 39:=0A=
     // alert("Arrow Right");=0A=
      node.expand();=0A=
      break;=0A=
   }=0A=
}=0A=
// js function for hide/display mini-elements functionality=0A=
function toggleLayer(whichLayer) {=0A=
	if (document.getElementById) {=0A=
		// this is the way the standards work=0A=
		var obj=3Ddocument.getElementById(whichLayer);=0A=
		var img =3D obj.previousSibling.firstChild.firstChild;=0A=
		img.setAttribute("src","images/on.gif");=0A=
		var styleatt =3D obj.style;=0A=
		styleatt.display =3D styleatt.display? "":"block";=0A=
		=0A=
		//change the class of the h3 per design=0A=
		if (obj.previousSibling.className =3D=3D=3D "topictitle3")	{=0A=
			obj.previousSibling.className =3D"topictitle3off";=0A=
		    img.setAttribute("src","images/on.gif");=0A=
		} else if (obj.previousSibling.className =3D=3D=3D "topictitle3off")	{=0A=
			obj.previousSibling.className =3D"topictitle3";=0A=
			img.setAttribute("src","images/off.gif");=0A=
		} =0A=
	}=0A=
	else if (document.all) {=0A=
		// this is the way old msie versions work=0A=
		var style2 =3D document.all[whichLayer].style;=0A=
		style2.display =3D style2.display? "":"block";=0A=
	}=0A=
}=0A=
 function addBookmark( bm_url_str, bm_str_label ) {=0A=
  parent.navigation.flashProxy.call('addBookmark', bm_url_str, =
bm_str_label );=0A=
}=0A=
=0A=
var upperAsciiXlatTbl =3D new Array(=0A=
223,"ss",=0A=
230,"ae",=0A=
198,"ae",=0A=
156,"oe",=0A=
140,"oe",=0A=
240,"eth",=0A=
208,"eth",=0A=
141,"y",=0A=
159,"y"=0A=
);=0A=
=0A=
var maxNumberOfShownSearchHits =3D 20;=0A=
var showInputStringAlerts =3D 0;=0A=
var navigationCookie =3D "";=0A=
=0A=
////////////// COOKIE-RELATED FUNCTIONS =
/////////////////////////////////////////=0A=
//  test the navigator object for cookie enabling=0A=
//  additional code would need to be added for=0A=
//  to support browsers pre navigator 4 or IE5 or =0A=
//  other browsers that dont support=0A=
//  the navigator object if any .. =0A=
 function cookiesNotEnabled() =0A=
{=0A=
	return true;     // We're not going to use cookies=0A=
}=0A=
/*=0A=
 * This function parses comma-separated name=3Dvalue =0A=
 * argument pairs from the query string of the URL. =0A=
 * It stores the name=3Dvalue pairs in =0A=
 * properties of an object and returns that object.=0A=
 */=0A=
function getArgs() =0A=
{=0A=
	var args =3D new Object();=0A=
	var query =3D top.location.search.substring(1); =0A=
	// Get query string=0A=
	if (query.length > 0)	{=0A=
		var pairs =3D query.split("&");=0A=
		// Break at ampersand=0A=
		for(var i =3D 0; i < pairs.length; i++) =0A=
		{=0A=
			var pos =3D pairs[i].indexOf('=3D');=0A=
			  // Look for "name=3Dvalue"=0A=
			if (pos =3D=3D -1) continue;=0A=
			  // If not found, skip=0A=
			var argname =3D pairs[i].substring(0,pos);=0A=
			  // Extract the name=0A=
			var value =3D pairs[i].substring(pos+1);=0A=
			  // Extract the value=0A=
			args[argname] =3D decodeURIComponent(value);=0A=
		  	  // Store as a property=0A=
			  // In JavaScript 1.5, use decodeURIComponent(  ) =0A=
			  // instead of escape(  )=0A=
		}=0A=
	} else {=0A=
		args[name] =3D false;		=0A=
	}=0A=
	return args;     // Return the object=0A=
}=0A=
=0A=
/////////////////////////////// COOKIE-RELATED FUNCTIONS =
////////////////////////=0A=
// Bill Dortch getCookieVal and GetCookie routines=0A=
function getCookieVal(offset) {=0A=
  var endstr=3Ddocument.cookie.indexOf(";",offset);=0A=
  if (endstr=3D=3D-1)endstr=3Ddocument.cookie.length;=0A=
  return decodeURIComponent(document.cookie.substring(offset, endstr));=0A=
}=0A=
function GetCookie(name) {=0A=
  var arg=3Dname+"=3D";=0A=
  var alen=3Darg.length;=0A=
  var clen=3Ddocument.cookie.length;=0A=
  var i=3D0;=0A=
=0A=
  if (cookiesNotEnabled())=0A=
  {=0A=
	var args =3D getArgs();=0A=
	if (args[name] !=3D=3D false) { =0A=
		return args[name];=0A=
	}	=0A=
  } else {=0A=
	  while(i<clen){=0A=
	    var j=3Di+alen;=0A=
	    if(document.cookie.substring(i,j)=3D=3Darg)return getCookieVal(j);=0A=
	    i=3Ddocument.cookie.indexOf(" ",i)+1;=0A=
	    if(i=3D=3D0)break; =0A=
	  }=0A=
	  return null;=0A=
	}=0A=
}=0A=
function getTopCookieVal(offset) {=0A=
  var endstr=3Dtop.document.cookie.indexOf(";",offset);=0A=
  if (endstr=3D=3D-1)endstr=3Dtop.document.cookie.length;=0A=
  return decodeURIComponent(top.document.cookie.substring(offset, =
endstr));=0A=
}=0A=
function GetTopCookie(name) {=0A=
  var arg=3Dname+"=3D";=0A=
  var alen=3Darg.length;=0A=
  var clen=3Dtop.document.cookie.length;=0A=
  var i=3D0;=0A=
  while(i<clen){=0A=
    var j=3Di+alen;=0A=
    if(top.document.cookie.substring(i,j)=3D=3Darg)return =
getTopCookieVal(j);=0A=
    i=3Dtop.document.cookie.indexOf(" ",i)+1;=0A=
    if(i=3D=3D0)break; =0A=
  }=0A=
  return null;=0A=
}=0A=
// SetCookie=0A=
// -----------=0A=
// This function is called to set a cookie in the current document.=0A=
//  params:=0A=
//		n - name of the cookie=0A=
//		v - value of the cookie=0A=
//		minutes - the duration of the cookie in minutes (that is, how many =
minutes before it expires)=0A=
function SetCookie(n,v,minutes) {=0A=
 var Then =3D new Date();=0A=
 Then.setTime(Then.getTime() + minutes * 60 * 1000);=0A=
 document.cookie =3D n + "=3D" + v + ";expires=3D" + Then.toGMTString();=0A=
}=0A=
// getContentCookie=0A=
// ----------------=0A=
// This function reads the content cookie set by the handleContext =
funtion.=0A=
//=0A=
function getContentCookie()=0A=
{=0A=
	var contentCookie =3D GetCookie("content");=0A=
	top.document.cookie =3D "content=3D";=0A=
=0A=
	// What does this expression mean?=0A=
	// (contentCookie.indexOf("htm") !=3D -1)=0A=
	if ( (contentCookie !=3D null) && (contentCookie.indexOf("htm") !=3D =
-1) ) =0A=
	{=0A=
		document.cookie =3D "content=3D"; // Wipe out the cookie=0A=
		top.document.cookie =3D "histR=3D" + contentCookie;=0A=
		location.replace(contentCookie);=0A=
	}			=0A=
}=0A=
// getNavigationCookie=0A=
// -------------------=0A=
// This function reads the content cookie set by the handleContext =
funtion.=0A=
//=0A=
function getNavigationCookie()=0A=
{=0A=
	navigationCookie =3D GetCookie("navigation");=0A=
	top.document.cookie =3D "navigation=3D";=0A=
=0A=
	// What does this expression mean?=0A=
	// (navigationCookie.indexOf("htm") !=3D -1)=0A=
	if ( (navigationCookie !=3D null) && (navigationCookie.indexOf("htm") =
!=3D -1) ) =0A=
	{=0A=
		document.cookie =3D "navigation=3D"; // Wipe out the cookie=0A=
		top.document.cookie =3D "histL=3D" + navigationCookie;=0A=
		location.replace(navigationCookie);=0A=
	}=0A=
				=0A=
}=0A=
=0A=
// handleContext=0A=
// -------------=0A=
// This function is called from content pages. It sets a cookie as soon=0A=
// as the page is loaded. If the content page is not in it's proper place=0A=
// in the frameset, the frameset will be loaded and the page will be =0A=
// restored using the value in this cookie.=0A=
//=0A=
function handleContext(which)=0A=
{=0A=
}=0A=
// lastNodeOf=0A=
// ----------=0A=
// This function gets passed a URL and returns the last node of same.=0A=
function lastNodeOf(e)=0A=
{=0A=
	var expr =3D "" + e;=0A=
	var to =3D expr.indexOf("?");=0A=
	if( to !=3D=3D -1) {=0A=
		var path =3D expr.substring(0,to);		=0A=
		var pieces =3D path.split("/");=0A=
		return pieces[pieces.length -1];=0A=
	}  else	{	=0A=
		var pos =3D expr.lastIndexOf("/");	=0A=
		if( (pos !=3D -1) && (pos+1 !=3D expr.length) ) {=0A=
			return expr.substr(pos+1);=0A=
		} else {=0A=
			return expr;=0A=
		}=0A=
	}=0A=
}=0A=
// frameBuster=0A=
// -----------=0A=
// This function is called by the frameset to ensure it's always loaded=0A=
// at the top level of the current window.=0A=
//=0A=
function frameBuster()=0A=
{=0A=
}=0A=
=0A=
=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
// SEARCH RELATED.......................................SEARCH RELATED=0A=
function bubbleSortWithShadow(a,b)=0A=
{=0A=
	var temp;=0A=
	for(var j=3D1; j<a.length; j++) {=0A=
		for(var i=3D0; i<j; i++) {=0A=
			if( a[i] < a[j] ) {	=0A=
				temp =3D a[j];a[j] =3D a[i];a[i] =3D temp;=0A=
				temp =3D b[j];b[j] =3D b[i];b[i] =3D temp;=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
//---------------------------------------------------=0A=
function buildHtmlResultsStr()=0A=
{=0A=
	var innerHTMLstring,ndxEnd;=0A=
=0A=
	// Gather all of the results display lines into the 'resultsArr'=0A=
	ndxEnd =3D (matchesArrIndices.length > maxNumberOfShownSearchHits ) ? =
maxNumberOfShownSearchHits : matchesArrIndices.length;=0A=
=0A=
	for(var ndx=3D0, resultsArr =3D new Array(); ndx < ndxEnd; ndx++) {=0A=
		resultsArr[resultsArr.length] =3D =
buildResultsStrOneLine(matchesArrIndices[ndx],matchesArrHits[ndx]);=0A=
	}=0A=
=0A=
	// Convert this 'resultsArr' into a single string that will be injected =
into this search page.=0A=
	innerHTMLstring =3D "<ol>";=0A=
	for( var ndx=3D0; ndx < resultsArr.length; ndx++ ) {=0A=
		innerHTMLstring =3D innerHTMLstring + resultsArr[ndx];=0A=
	}=0A=
	innerHTMLstring =3D innerHTMLstring + "</ol>";=0A=
	return innerHTMLstring;=0A=
}=0A=
//---------------------------------------------------=0A=
function buildResultsStrOneLine(a,b)=0A=
{=0A=
	var retStr;=0A=
	retStr =3D "<li class=3D\"searchresults\"><a href=3D\"" + =
top.fileArr[a] + ".html\"";=0A=
=0A=
	// for debug...=0A=
	//retStr +=3D "target=3D\"_self\" ";=0A=
	//retStr +=3D "title=3D\"" + top.fileArr[a] + ".html-";=0A=
	//retStr +=3D a + "-" + b + "\">";=0A=
=0A=
	// for production...=0A=
	retStr +=3D "target=3D\"_self\" >";=0A=
=0A=
	retStr +=3D top.titleArr[a] + "</a></li>";=0A=
	return retStr;=0A=
}=0A=
//---------------------------------------------------=0A=
// checkForHits=0A=
//  Break up the search term into words.=0A=
//  Check each of those words against...=0A=
//		(a) cached titles and =0A=
//		(b) cached content lines =0A=
//  Perform the hit detection for each one, =0A=
//  storing the results into (hits-ordered) =0A=
//		'matchesArrIndices' and =0A=
//		'matchesArrHits'.=0A=
//---------------------------------------------------=0A=
function checkForHits()=0A=
{=0A=
	var inputWords =3D new Array();=0A=
	var tempArr =3D new Array();=0A=
=0A=
	// Split the search term into individual search words=0A=
		tempArr =3D searchTerm.split(" ");=0A=
		for(var ndx=3D0; ndx < tempArr.length; ndx++) {=0A=
			if( tempArr[ndx].length ) {=0A=
				inputWords[inputWords.length] =3D tempArr[ndx];=0A=
			}=0A=
		}=0A=
=0A=
	// Initialization=0A=
		matchesArrHits =3D new Array();=0A=
		matchesArrIndices =3D new Array();=0A=
=0A=
	// Initialize the 'maskArr' and the 'hitsArr'=0A=
		maskArr =3D new Array();=0A=
		hitsArr =3D new Array();=0A=
		for( var ndx =3D 0; ndx < top.fileArr.length; ndx++ ) {=0A=
			maskArr[maskArr.length] =3D 1;=0A=
			hitsArr[hitsArr.length] =3D 0;=0A=
		}=0A=
=0A=
	// Do checking for matches on EACH OF THE INPUT WORDS=0A=
		for( var ndx =3D 0; ndx < inputWords.length; ndx++ ) {=0A=
=0A=
			// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!=0A=
			if( ! checkForHitsWordAgainstPages( inputWords[ndx] ) ) {=0A=
				return; 	// No sense in continuing, match has failed.=0A=
			}=0A=
			// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!=0A=
=0A=
			for( var ndx2 =3D 0; ndx2 < hitsArr.length; ndx2++ ) {=0A=
				if( hitsArr[ndx2] =3D=3D 0 ) {=0A=
					maskArr[ndx2] =3D 0;=0A=
				}=0A=
				else {=0A=
					if( maskArr[ndx2] !=3D 0 ) {=0A=
						maskArr[ndx2] +=3D hitsArr[ndx2];=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
=0A=
	// From the final 'maskArr', generate 'matchesArrHits' and =
'matchesArrIndices'	=0A=
		for( var ndx =3D 0; ndx < maskArr.length; ndx++ ) {=0A=
			if( maskArr[ndx] ) {=0A=
				matchesArrHits[matchesArrHits.length] =3D maskArr[ndx];=0A=
				matchesArrIndices[matchesArrIndices.length] =3D ndx;=0A=
			}=0A=
		}=0A=
=0A=
	// If there were any hits, then sort them by highest hits first=0A=
		if( matchesArrIndices.length ) {=0A=
			bubbleSortWithShadow(matchesArrHits, matchesArrIndices);=0A=
		}=0A=
}=0A=
//---------------------------------------------------=0A=
function checkForHitsWordAgainstPages(w)		=0A=
{=0A=
	var hitAnywhere =3D 0;=0A=
	=0A=
	if(showInputStringAlerts){alert( "Length of sc2: " + top.sc2.length );}=0A=
=0A=
	// Process each of the content lines (one per file/page)=0A=
		for(var ndx=3D0; ndx < top.sc2.length; ndx++) {=0A=
=0A=
			// Put the cached title into glob_title=0A=
				glob_title =3D top.sc1[ndx];=0A=
=0A=
			// Put the cached content line into glob_phrase=0A=
				glob_phrase =3D top.sc2[ndx];=0A=
				=0A=
			if( maskArr[ndx] ) {=0A=
			// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!=0A=
				if( top.isDblByte ) {=0A=
					hitsArr[ndx] =3D checkForHitsWordAgainstTitleAndLine2(w,ndx);=0A=
				}=0A=
				else {=0A=
					hitsArr[ndx] =3D checkForHitsWordAgainstTitleAndLine(w,ndx);=0A=
				}=0A=
				if( hitsArr[ndx] ) {=0A=
					hitAnywhere =3D 1;=0A=
				}=0A=
			// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!=0A=
			}=0A=
		}=0A=
	return hitAnywhere;=0A=
}=0A=
//---------------------------------------------------=0A=
function checkForHitsWordAgainstTitleAndLine(w, lineNdx)=0A=
{=0A=
	var words;=0A=
	var titleHitCnt =3D 0;=0A=
	var contentHitCnt =3D 0;=0A=
	var regex =3D new RegExp(w, "i");=0A=
=0A=
	// TITLE .........................................=0A=
		words =3D new Array();=0A=
		words =3D glob_title.split(" ");=0A=
=0A=
		// EXECUTE TITLE MATCH TEST=0A=
		for( var ndx =3D 0; ndx < words.length; ndx++ ) {=0A=
			if( w =3D=3D words[ndx] ) {=0A=
				titleHitCnt +=3D 100;=0A=
				break;=0A=
			}=0A=
		}=0A=
=0A=
	// CONTENT .........................................=0A=
		words =3D new Array();=0A=
		words =3D glob_phrase.split(" ");=0A=
=0A=
		// EXECUTE CONTENT MATCH TEST=0A=
		if( regex.test(glob_phrase) ) {	// See if word is anywhere within the =
phrase first.=0A=
			for( var ndx =3D 0; ndx < words.length; ndx++ ) {=0A=
				if( w =3D=3D words[ndx] ) {=0A=
					contentHitCnt +=3D getInstanceCount(lineNdx,ndx);=0A=
					break;=0A=
				}=0A=
				//else if( w < words[ndx] ) { // If word is greater than the =
remaining words, leave=0A=
				//	break;=0A=
				//}=0A=
			}=0A=
		}=0A=
=0A=
	return titleHitCnt + contentHitCnt;=0A=
}=0A=
//---------------------------------------------------=0A=
function checkForHitsWordAgainstTitleAndLine2(w, lineNdx)=0A=
{=0A=
	var titleHitCnt =3D 0;=0A=
	var contentHitCnt =3D 0;=0A=
=0A=
	// TITLE .........................................=0A=
		if( glob_title.indexOf(w) !=3D -1 ) {=0A=
			titleHitCnt =3D 100;=0A=
		}=0A=
=0A=
	// CONTENT .........................................=0A=
		contentHitCnt =3D indexesOf(glob_phrase,w);=0A=
=0A=
	return titleHitCnt + contentHitCnt;=0A=
}=0A=
//---------------------------------------------------=0A=
// checkTheInputString=0A=
// =0A=
//  returns...=0A=
//		empty string - if there is valid input to search=0A=
//		message string - if there is NO VALID INPUT to search=0A=
//---------------------------------------------------=0A=
function checkTheInputString()=0A=
{=0A=
	var myArr =3D new Array();=0A=
	var tempArr =3D new Array();=0A=
	var foundStopOrShortWord =3D 0;=0A=
	var ptn1 =3D /\d\D/;=0A=
	var ptn2 =3D /\D\d/;=0A=
=0A=
	handleWhitespaceRemoval();=0A=
=0A=
	searchTerm =3D searchTerm.toLowerCase();=0A=
=0A=
	searchTerm =3D filterTheChars(searchTerm);=0A=
		=0A=
	handleWhitespaceRemoval();=0A=
=0A=
	if( searchTerm.length ) {=0A=
		=0A=
		// Split the searchTerm=0A=
			tempArr =3D searchTerm.split(" ",100);=0A=
			if(showInputStringAlerts){alert( "size of tempArr: " + tempArr.length =
);}=0A=
=0A=
		// Handle periods=0A=
			for( var ndx =3D 0; ndx < tempArr.length; ndx++ ) {=0A=
				if( tempArr[ndx].charCodeAt(0) =3D=3D 46 ) {	// periods at the start =
of word=0A=
					//tempArr[ndx] =3D tempArr[ndx].substr(1); // NOTE: We don't want =
to do this. (e.g. ".txt")=0A=
				}=0A=
				if( tempArr[ndx].charCodeAt(tempArr[ndx].length-1) =3D=3D 46 ) { // =
end of word=0A=
					tempArr[ndx] =3D tempArr[ndx].substr(0,tempArr[ndx].length-1);=0A=
				}=0A=
			}=0A=
			=0A=
		// Do stopwords and shortwords removal=0A=
			for( var ndx =3D 0; ndx < tempArr.length; ndx++ ) {=0A=
				var word =3D tempArr[ndx];=0A=
				if(showInputStringAlerts){alert( "Checking word: " + word );}=0A=
				=0A=
				if( ! top.sw[word] ) {=0A=
					if( word.length < 2 ) {=0A=
						foundStopOrShortWord =3D 1;=0A=
					}=0A=
					else if( (word.length > 2) || (ptn1.test(word) || ptn2.test(word)) =
) {=0A=
						myArr[myArr.length] =3D tempArr[ndx];=0A=
					}=0A=
					else {=0A=
						foundStopOrShortWord =3D 1;=0A=
					}=0A=
				}=0A=
				else {=0A=
					foundStopOrShortWord =3D 1;=0A=
				}=0A=
			}=0A=
=0A=
		// Now reconstruct the searchTerm, based upon the 'myArr'=0A=
			searchTerm =3D "";=0A=
			for( var ndx =3D 0; ndx < myArr.length; ndx++ ) {=0A=
				searchTerm =3D searchTerm + myArr[ndx] + " ";=0A=
			}=0A=
=0A=
		handleWhitespaceRemoval();=0A=
=0A=
		if(showInputStringAlerts){alert( "FINAL SEARCH TERM: *" + searchTerm + =
"*" );}=0A=
			=0A=
		if( foundStopOrShortWord && ! searchTerm.length ) {=0A=
			return MSG_stopAndShortWords;=0A=
		}=0A=
		top.srch_input_massaged =3D searchTerm;=0A=
		=0A=
		return "";=0A=
	} =0A=
	else {=0A=
		return MSG_noSearchTermEntered;=0A=
	}=0A=
}=0A=
//qWR=0A=
//---------------------------------------------------=0A=
// checkTheInputString3=0A=
// =0A=
//  returns...=0A=
//		empty string - if there is valid input to search=0A=
//		message string - if there is NO VALID INPUT to search=0A=
//---------------------------------------------------=0A=
function checkTheInputString3()=0A=
{=0A=
	var myArr =3D new Array();=0A=
	var tempArr =3D new Array();=0A=
	var foundStopOrShortWord =3D 0;=0A=
	var ptn1 =3D /\d\D/;=0A=
	var ptn2 =3D /\D\d/;=0A=
=0A=
	handleWhitespaceRemoval();=0A=
=0A=
	searchTerm =3D searchTerm.toLowerCase();=0A=
=0A=
	//searchTerm =3D filterTheChars(searchTerm);=0A=
		=0A=
	handleWhitespaceRemoval();=0A=
=0A=
	if( searchTerm.length ) {=0A=
		=0A=
		// Split the searchTerm=0A=
			tempArr =3D searchTerm.split(" ",100);=0A=
			if(showInputStringAlerts){alert( "size of tempArr: " + tempArr.length =
);}=0A=
=0A=
		// Handle periods=0A=
			for( var ndx =3D 0; ndx < tempArr.length; ndx++ ) {=0A=
				if( tempArr[ndx].charCodeAt(0) =3D=3D 46 ) {	// periods at the start =
of word=0A=
					//tempArr[ndx] =3D tempArr[ndx].substr(1); // NOTE: We don't want =
to do this. (e.g. ".txt")=0A=
				}=0A=
				if( tempArr[ndx].charCodeAt(tempArr[ndx].length-1) =3D=3D 46 ) { // =
end of word=0A=
					tempArr[ndx] =3D tempArr[ndx].substr(0,tempArr[ndx].length-1);=0A=
				}=0A=
			}=0A=
			=0A=
		// Do stopwords and shortwords removal=0A=
			for( var ndx =3D 0; ndx < tempArr.length; ndx++ ) {=0A=
				var word =3D tempArr[ndx];=0A=
				if(showInputStringAlerts){alert( "Checking word: " + word );}=0A=
				=0A=
				if( ! top.sw[word] ) {=0A=
					if( word.length < 2 ) {=0A=
						foundStopOrShortWord =3D 1;=0A=
					}=0A=
					else if( (word.length > 2) || (ptn1.test(word) || ptn2.test(word)) =
) {=0A=
						myArr[myArr.length] =3D tempArr[ndx];=0A=
					}=0A=
					else {=0A=
						foundStopOrShortWord =3D 1;=0A=
					}=0A=
				}=0A=
				else {=0A=
					foundStopOrShortWord =3D 1;=0A=
				}=0A=
			}=0A=
=0A=
		// Now reconstruct the searchTerm, based upon the 'myArr'=0A=
			searchTerm =3D "";=0A=
			for( var ndx =3D 0; ndx < myArr.length; ndx++ ) {=0A=
				searchTerm =3D searchTerm + myArr[ndx] + " ";=0A=
			}=0A=
=0A=
		handleWhitespaceRemoval();=0A=
=0A=
		if(showInputStringAlerts){alert( "FINAL SEARCH TERM: *" + searchTerm + =
"*" );}=0A=
			=0A=
		if( foundStopOrShortWord && ! searchTerm.length ) {=0A=
			return MSG_stopAndShortWords;=0A=
		}=0A=
		top.srch_input_massaged =3D searchTerm;=0A=
		return "";=0A=
	} =0A=
	else {=0A=
		return MSG_noSearchTermEntered;=0A=
	}=0A=
}=0A=
// !qWR=0A=
//---------------------------------------------------=0A=
function checkTheInputString2()		// double-byte version=0A=
{=0A=
	var tempArr =3D new Array();=0A=
=0A=
	handleWhitespaceRemoval();=0A=
	searchTerm =3D searchTerm.toLowerCase();=0A=
=0A=
	if( searchTerm.length ) {=0A=
=0A=
		// Split the searchTerm=0A=
			tempArr =3D searchTerm.split(" ",100);=0A=
			if(showInputStringAlerts){alert( "number of search terms: " + =
tempArr.length );}=0A=
=0A=
		// Now reconstruct the searchTerm, based upon the 'tempArr'=0A=
			searchTerm =3D "";=0A=
			for( var ndx =3D 0; ndx < tempArr.length; ndx++ ) {=0A=
				searchTerm =3D searchTerm + tempArr[ndx] + " ";=0A=
			}=0A=
			handleWhitespaceRemoval();=0A=
=0A=
if(showInputStringAlerts){alert( "Massaged search term: " + searchTerm =
);}=0A=
=0A=
		top.srch_input_massaged =3D searchTerm;=0A=
		return "";=0A=
	}=0A=
	else {=0A=
		return MSG_noSearchTermEntered;=0A=
	}=0A=
}=0A=
//---------------------------------------------------=0A=
function doIEsearch()=0A=
{=0A=
	var stStr =3D "";=0A=
			=0A=
	document.forms[0].q.value =3D top.srch_input_massaged;=0A=
=0A=
	if( top.srch_message.length ) {=0A=
		document.getElementById("results").innerHTML =3D top.srch_message;=0A=
		top.srch_message =3D "";=0A=
	}=0A=
	else if( top.srch_1_shot ) {=0A=
		top.srch_1_shot =3D 0;=0A=
		=0A=
		searchTerm =3D top.srch_input_massaged;=0A=
		checkForHits();	// Sets: 'matchesArrIndices' and 'matchesArrHits'=0A=
=0A=
		if( matchesArrIndices.length ) {	// If there were matches/hits...  /* =
Changed for CS4 */=0A=
=0A=
			stStr =3D "<div class=3D\"form\">" + MSG_pagesContaining + "<strong>" =
+ top.srch_input_massaged  + "</strong></div><br /><br />\n";=0A=
=0A=
			document.getElementById("results").innerHTML =3D stStr + =
buildHtmlResultsStr();=0A=
		}=0A=
		else {                                                  /* Changed for =
CS4 */=0A=
			document.getElementById("results").innerHTML =3D MSG_noPagesContain + =
"<strong>" + top.srch_input_massaged  + "</strong><br /><br />";=0A=
=0A=
		}=0A=
		//searching_message.style.visibility=3D"visible";=0A=
	}=0A=
	top.srch_input_verbatim =3D "";=0A=
}=0A=
//---------------------------------------------------=0A=
function getInstanceCount( lineIndex, wordIndex )=0A=
{=0A=
	var instancesStr =3D top.instances[lineIndex];	// e.g. "1432931"=0A=
	var ch =3D instancesStr.substr(wordIndex,1);=0A=
	=0A=
	return parseInt(ch);=0A=
}=0A=
//---------------------------------------------------=0A=
function handleWhitespaceRemoval()=0A=
{=0A=
	var re_1 =3D /^\s/;=0A=
	var re_2 =3D /\s$/;=0A=
	var re_3 =3D /\s\s/;=0A=
	var temp;=0A=
=0A=
	// Remove leading whitespace=0A=
		while( true ) {=0A=
			temp =3D searchTerm.replace(re_1,"");=0A=
			if( temp =3D=3D searchTerm ) {=0A=
				break;=0A=
			}=0A=
			searchTerm =3D temp;=0A=
		}=0A=
	// Remove trailing whitespace=0A=
		while( true ) {=0A=
			temp =3D searchTerm.replace(re_2,"");=0A=
			if( temp =3D=3D searchTerm ) {=0A=
				break;=0A=
			}=0A=
			searchTerm =3D temp;=0A=
		}=0A=
	// Replace multiple contiguous spaces with a single space=0A=
		while( searchTerm.search(re_3) !=3D -1 ) {=0A=
			temp =3D searchTerm.replace(re_3," ");=0A=
			searchTerm =3D temp;=0A=
		}=0A=
}=0A=
//--------------------------------------------------=0A=
function isAcceptableChar(chrNdx)=0A=
{=0A=
	var acceptableChars =3D new Array( 32, 46, 95 );	// space, period, =
underscore=0A=
	=0A=
	for( var ndx =3D 0; ndx < acceptableChars.length; ndx++ ) {=0A=
		if( chrNdx =3D=3D acceptableChars[ndx] ) {=0A=
			return true;=0A=
		}=0A=
	}=0A=
	return false;=0A=
}=0A=
//--------------------------------------------------=0A=
function indexesOf(str,ptn)=0A=
{=0A=
	var position =3D 0;=0A=
	var hits =3D -1;=0A=
	var start =3D -1;=0A=
=0A=
	while( position !=3D -1 ) {=0A=
		position =3D str.indexOf(ptn, start+1);=0A=
		hits +=3D 1;=0A=
		start =3D position;=0A=
	}=0A=
	return hits;=0A=
}=0A=
//--------------------------------------------------=0A=
function filterTheChars(line)=0A=
{=0A=
	var retStr =3D "",tempStr;=0A=
	var ch, chCode, retChr;=0A=
	var ndx;=0A=
	=0A=
	for( ndx =3D 0; ndx < line.length; ndx++ ) {=0A=
		ch =3D line.substr(ndx,1);=0A=
		chCode =3D ch.charCodeAt(0);=0A=
		=0A=
		=0A=
			if( (chCode >=3D 192) && (chCode <=3D 221) ) {	// Handle capital =
upper-ASCII characters=0A=
				chCode =3D chCode + 32;=0A=
				retChr =3D ASCII_to_char(chCode);=0A=
			}=0A=
			else if( withinAcceptableRanges(chCode) || isAcceptableChar(chCode) ) =
{ // Acceptable characters=0A=
				retChr =3D ch;=0A=
			}=0A=
			else {=0A=
				tempStr =3D isLigatureChar(chCode);=0A=
=0A=
				if( tempStr.length ) {	//Don't replace ligatures.=0A=
					retChr =3D ch;=0A=
				}=0A=
				else {		// Turn all else into space	=0A=
					retChr =3D " ";=0A=
				}=0A=
			}=0A=
=0A=
		// Grow the return string=0A=
			retStr +=3D retChr;=0A=
	}=0A=
	=0A=
	return retStr;=0A=
}=0A=
//--------------------------------------------------=0A=
function isLigatureChar(codeToCheck) {=0A=
	var xlatTblNdx, code, replStr =3D "";=0A=
=0A=
	for( xlatTblNdx =3D 0; xlatTblNdx < upperAsciiXlatTbl.length; =
xlatTblNdx+=3D2 ) {=0A=
=0A=
		code =3D upperAsciiXlatTbl[xlatTblNdx];=0A=
		if( code =3D=3D codeToCheck ) {=0A=
			replStr =3D upperAsciiXlatTbl[xlatTblNdx+1];=0A=
			break;=0A=
		}=0A=
	}=0A=
	=0A=
	return replStr;=0A=
}=0A=
//--------------------------------------------------=0A=
function respondToSearchButton() =0A=
{=0A=
	var myStr;=0A=
	document.getElementById("results").innerHTML =3D ""; //We don't expect =
this to be slow enough to need a message.	=0A=
	top.srch_input_verbatim =3D document.forms[0].q.value;=0A=
	searchTerm =3D document.forms[0].q.value;=0A=
	=0A=
	if( top.isDblByte ) {=0A=
		myStr =3D checkTheInputString2();=0A=
	}=0A=
	else if (top.isT4) {=0A=
		myStr =3D checkTheInputString3();=0A=
	}=0A=
	else {=0A=
		myStr =3D checkTheInputString();	=0A=
	}=0A=
	=0A=
	top.srch_message =3D myStr;=0A=
	top.srch_1_shot =3D top.srch_message.length ? 0 : 1;=0A=
	=0A=
	doIEsearch();=0A=
}=0A=
//--------------------------------------------------=0A=
function respondToSearchLoad() =0A=
{=0A=
	var externalQuery =3D GetCookie("externalQuery");=0A=
	if (externalQuery =3D=3D null) { =0A=
			externalQuery =3D GetCookie("q");=0A=
	}=0A=
=0A=
	if (externalQuery !=3D null) { =0A=
		var myStr;=0A=
=0A=
		// Erich: bugfix 1762094, 1826817, 1821365, 1795591=0A=
		top.srch_input_verbatim =3D =
externalQuery.replace(/[\u0020-\u002d]|\u002f|[\u003a-\u0040]|[\u005b-\u0=
05e]|\u0060|[\u007b-\u0089]|\u008b|[\u0091-\u0099]|\u009b|[\u00a1-\u00bf]=
|[\u2000-\u206f]|[\u3000-\u303f]|[\uff01-\uff0f]|[\uff1a-\uff1f]+/g, " =
");=0A=
 		searchTerm =3D top.srch_input_verbatim;=0A=
=0A=
		if( top.isDblByte ) {=0A=
		  myStr =3D checkTheInputString2();=0A=
		}=0A=
		else {=0A=
		  myStr =3D checkTheInputString();	=0A=
		}=0A=
		=0A=
		top.srch_message =3D myStr;=0A=
		top.srch_1_shot =3D top.srch_message.length ? 0 : 1;=0A=
		=0A=
		doIEsearch();=0A=
	}=0A=
}=0A=
//---------------------------------------------------=0A=
function strReplace(orig,src,dest)=0A=
{=0A=
	var startPos=3D0;=0A=
	var matchPos =3D orig.indexOf(src,startPos);=0A=
	var retLine=3D"";=0A=
	=0A=
	while(matchPos !=3D -1) {=0A=
		retLine =3D retLine + orig.substring(startPos,matchPos) + dest;=0A=
		startPos =3D matchPos+1;=0A=
		matchPos =3D orig.indexOf(src,startPos);=0A=
	}=0A=
	if(! retLine.length) {return orig;}=0A=
	else {return retLine+orig.substring(startPos,orig.length);}=0A=
}=0A=
//--------------------------------------------------=0A=
function withinAcceptableRanges(chrNdx)=0A=
{	=0A=
	var acceptableRanges =3D new Array( =
"48-57","65-90","97-122","224-229","231-239","241-246","248-253","255-255=
");=0A=
=0A=
    if (chrNdx > 255) {=0A=
        return true;=0A=
    }=0A=
=0A=
	for( var ndx =3D 0; ndx < acceptableRanges.length; ndx++ ) {=0A=
		var start_finish =3D new Array();=0A=
=0A=
		start_finish =3D acceptableRanges[ndx].split("-");=0A=
		=0A=
		if( (chrNdx >=3D start_finish[0]) && (chrNdx <=3D start_finish[1]) ) {=0A=
			return true;=0A=
		}=0A=
	}=0A=
	return false;=0A=
}=0A=
//--------------------------------------------------=0A=
function ASCII_to_char(num_in)=0A=
{=0A=
	var str_out =3D "";=0A=
	var num_out =3D parseInt(num_in);=0A=
	=0A=
	num_out =3D decodeURIComponent('%' + num_out.toString(16));=0A=
	str_out +=3D num_out;=0A=
	=0A=
	return decodeURIComponent(str_out);=0A=
}=0A=
//--------------------------------------------------=0A=
var agt=3Dnavigator.userAgent.toLowerCase();=0A=
var use_chm_behavior =3D false;=0A=
var use_robohelp_behavior =3D false;=0A=
var use_ie_behavior =3D false;=0A=
var use_ie_6_behavior =3D false;=0A=
=0A=
if (agt.indexOf("adobe help viewer 2") !=3D -1) {=0A=
  use_robohelp_behavior =3D true;=0A=
}=0A=
// Check for .chm extension too...=0A=
if ((""+self.location).toLowerCase().indexOf(".chm")!=3D-1) {=0A=
  use_chm_behavior =3D true;=0A=
}=0A=
=0A=
if (agt.indexOf("msie") !=3D -1) {=0A=
  use_ie_behavior =3D true;=0A=
}=0A=
if ((agt.indexOf("msie 5") !=3D -1) || (agt.indexOf("msie 6") !=3D -1) =
|| (agt.indexOf("msie 7") !=3D -1)) {=0A=
  use_ie_6_behavior =3D true;=0A=
}=0A=
=0A=
//--------------------------------------------------=0A=
=0A=
var Url =3D {=0A=
=0A=
	// public method for url encoding=0A=
	encode : function (string) {=0A=
		return escape(this._utf8_encode(string));=0A=
	},=0A=
=0A=
	// public method for url decoding=0A=
	decode : function (string) {=0A=
		return this._utf8_decode(unescape(string));=0A=
	},=0A=
=0A=
	// private method for UTF-8 encoding=0A=
	_utf8_encode : function (string) {=0A=
		string =3D string.replace(/\r\n/g,"\n");=0A=
		var utftext =3D "";=0A=
=0A=
		for (var n =3D 0; n < string.length; n++) {=0A=
=0A=
			var c =3D string.charCodeAt(n);=0A=
=0A=
			if (c < 128) {=0A=
				utftext +=3D String.fromCharCode(c);=0A=
			}=0A=
			else if((c > 127) && (c < 2048)) {=0A=
				utftext +=3D String.fromCharCode((c >> 6) | 192);=0A=
				utftext +=3D String.fromCharCode((c & 63) | 128);=0A=
			}=0A=
			else {=0A=
				utftext +=3D String.fromCharCode((c >> 12) | 224);=0A=
				utftext +=3D String.fromCharCode(((c >> 6) & 63) | 128);=0A=
				utftext +=3D String.fromCharCode((c & 63) | 128);=0A=
			}=0A=
=0A=
		}=0A=
=0A=
		return utftext;=0A=
	},=0A=
=0A=
	// private method for UTF-8 decoding=0A=
	_utf8_decode : function (utftext) {=0A=
		var string =3D "";=0A=
		var i =3D 0;=0A=
		var c =3D c1 =3D c2 =3D 0;=0A=
=0A=
		while ( i < utftext.length ) {=0A=
=0A=
			c =3D utftext.charCodeAt(i);=0A=
=0A=
			if (c < 128) {=0A=
				string +=3D String.fromCharCode(c);=0A=
				i++;=0A=
			}=0A=
			else if((c > 191) && (c < 224)) {=0A=
				c2 =3D utftext.charCodeAt(i+1);=0A=
				string +=3D String.fromCharCode(((c & 31) << 6) | (c2 & 63));=0A=
				i +=3D 2;=0A=
			}=0A=
			else {=0A=
				c2 =3D utftext.charCodeAt(i+1);=0A=
				c3 =3D utftext.charCodeAt(i+2);=0A=
				string +=3D String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) =
| (c3 & 63));=0A=
				i +=3D 3;=0A=
			}=0A=
=0A=
		}=0A=
=0A=
		return string;=0A=
	}=0A=
=0A=
}=0A=
//--------------------------------------------------=0A=
function scrollToNameAnchor() =0A=
{=0A=
	var nameAnchor =3D GetCookie("nameAnchor");=0A=
	if (nameAnchor !=3D null) { =0A=
		document.location.hash =3D nameAnchor;=0A=
	}=0A=
}=0A=
=0A=
=0A=
// ugly workaround for missing support for selectorText in =
Netscape6/Mozilla=0A=
// call onLoad() or before you need to do anything you would have =
otherwise used=0A=
// selectorText for.=0A=
var ugly_selectorText_workaround_flag =3D false;=0A=
var allStyleRules;=0A=
// code developed using the following workaround (CVS v1.15) as an =
example.=0A=
// =
http://lxr.mozilla.org/seamonkey/source/extensions/xmlterm/ui/content/XML=
TermCommands.js=0A=
function ugly_selectorText_workaround() {=0A=
	if((navigator.userAgent.indexOf("Gecko") =3D=3D -1) ||=0A=
	   (ugly_selectorText_workaround_flag)) {=0A=
		return; // we've already been here or shouldn't be here=0A=
	}=0A=
	var styleElements =3D document.getElementsByTagName("style");=0A=
	=0A=
	for(var i =3D 0; i < styleElements.length; i++) {=0A=
		var styleText =3D styleElements[i].firstChild.data;=0A=
		// this should be using match(/\b[\w-.]+(?=3D\s*\{)/g but ?=3D causes =
an=0A=
		// error in IE5, so we include the open brace and then strip it=0A=
		allStyleRules =3D styleText.match(/\b[\w-.]+(\s*\{)/g);=0A=
	}=0A=
=0A=
	for(var i =3D 0; i < allStyleRules.length; i++) {=0A=
		// probably insufficient for people who like random gobs of =0A=
		// whitespace in their styles=0A=
		allStyleRules[i] =3D allStyleRules[i].substr(0, =
(allStyleRules[i].length - 2));=0A=
	}=0A=
	ugly_selectorText_workaround_flag =3D true;=0A=
}=0A=
=0A=
=0A=
// setStyleById: given an element id, style property and =0A=
// value, apply the style.=0A=
// args:=0A=
//  i - element id=0A=
//  p - property=0A=
//  v - value=0A=
//=0A=
function setStyleById(i, p, v) {=0A=
	var n =3D document.getElementById(i);=0A=
	n.style[p] =3D v;=0A=
}=0A=
=0A=
// getStyleById: given an element ID and style property=0A=
// return the current setting for that property, or null.=0A=
// args:=0A=
//  i - element id=0A=
//  p - property=0A=
function getStyleById(i, p) {=0A=
	var n =3D document.getElementById(i);=0A=
	var s =3D eval("n.style." + p);=0A=
=0A=
	// try inline=0A=
	if((s !=3D "") && (s !=3D null)) {=0A=
		return s;=0A=
	}=0A=
=0A=
	// try currentStyle=0A=
	if(n.currentStyle) {=0A=
		var s =3D eval("n.currentStyle." + p);=0A=
		if((s !=3D "") && (s !=3D null)) {=0A=
			return s;=0A=
		}=0A=
	}=0A=
	=0A=
	// try styleSheets=0A=
	var sheets =3D document.styleSheets;=0A=
	if(sheets.length > 0) {=0A=
		// loop over each sheet=0A=
		for(var x =3D 0; x < sheets.length; x++) {=0A=
			// grab stylesheet rules=0A=
			var rules =3D sheets[x].cssRules;=0A=
			if(rules.length > 0) {=0A=
				// check each rule=0A=
				for(var y =3D 0; y < rules.length; y++) {=0A=
					var z =3D rules[y].style;=0A=
					// selectorText broken in NS 6/Mozilla: see=0A=
					// http://bugzilla.mozilla.org/show_bug.cgi?id=3D51944=0A=
					ugly_selectorText_workaround();=0A=
					if(allStyleRules) {=0A=
						if(allStyleRules[y] =3D=3D i) {=0A=
							return z[p];=0A=
						}			=0A=
					} else {=0A=
						// use the native selectorText and style stuff=0A=
						if(((z[p] !=3D "") && (z[p] !=3D null)) ||=0A=
						   (rules[y].selectorText =3D=3D i)) {=0A=
							return z[p];=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
	return null;=0A=
}=0A=
=0A=
// setStyleByClass: given an element type and a class selector,=0A=
// style property and value, apply the style.=0A=
// args:=0A=
//  t - type of tag to check for (e.g., SPAN)=0A=
//  c - class name=0A=
//  p - CSS property=0A=
//  v - value=0A=
var ie =3D (document.all) ? true : false;=0A=
=0A=
function setStyleByClass(t,c,p,v){=0A=
	var elements;=0A=
	if(t =3D=3D '*') {=0A=
		// '*' not supported by IE/Win 5.5 and below=0A=
		elements =3D (ie) ? document.all : document.getElementsByTagName('*');=0A=
	} else {=0A=
		elements =3D document.getElementsByTagName(t);=0A=
	}=0A=
	for(var i =3D 0; i < elements.length; i++){=0A=
		var node =3D elements.item(i);=0A=
		for(var j =3D 0; j < node.attributes.length; j++) {=0A=
			if(node.attributes.item(j).nodeName =3D=3D 'class') {=0A=
				if(node.attributes.item(j).nodeValue =3D=3D c) {=0A=
					eval('node.style.' + p + " =3D '" +v + "'");=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
// getStyleByClass: given an element type, a class selector and a =
property,=0A=
// return the value of the property for that element type.=0A=
// args:=0A=
//  t - element type=0A=
//  c - class identifier=0A=
//  p - CSS property=0A=
function getStyleByClass(t, c, p) {=0A=
	// first loop over elements, because if they've been modified they=0A=
	// will contain style data more recent than that in the stylesheet=0A=
	var elements;=0A=
	if(t =3D=3D '*') {=0A=
		// '*' not supported by IE/Win 5.5 and below=0A=
		elements =3D (ie) ? document.all : document.getElementsByTagName('*');=0A=
	} else {=0A=
		elements =3D document.getElementsByTagName(t);=0A=
	}=0A=
	for(var i =3D 0; i < elements.length; i++){=0A=
		var node =3D elements.item(i);=0A=
		for(var j =3D 0; j < node.attributes.length; j++) {=0A=
			if(node.attributes.item(j).nodeName =3D=3D 'class') {=0A=
				if(node.attributes.item(j).nodeValue =3D=3D c) {=0A=
					var theStyle =3D eval('node.style.' + p);=0A=
					if((theStyle !=3D "") && (theStyle !=3D null)) {=0A=
						return theStyle;=0A=
					}=0A=
				}=0A=
			}=0A=
		}		=0A=
	}=0A=
	// if we got here it's because we didn't find anything=0A=
	// try styleSheets=0A=
	var sheets =3D document.styleSheets;=0A=
	if(sheets.length > 0) {=0A=
		// loop over each sheet=0A=
		for(var x =3D 0; x < sheets.length; x++) {=0A=
			// grab stylesheet rules=0A=
			var rules =3D sheets[x].cssRules;=0A=
			if(rules.length > 0) {=0A=
				// check each rule=0A=
				for(var y =3D 0; y < rules.length; y++) {=0A=
					var z =3D rules[y].style;=0A=
					// selectorText broken in NS 6/Mozilla: see=0A=
					// http://bugzilla.mozilla.org/show_bug.cgi?id=3D51944=0A=
					ugly_selectorText_workaround();=0A=
					if(allStyleRules) {=0A=
						if((allStyleRules[y] =3D=3D c) ||=0A=
						   (allStyleRules[y] =3D=3D (t + "." + c))) {=0A=
							return z[p];=0A=
						}			=0A=
					} else {=0A=
						// use the native selectorText and style stuff=0A=
						if(((z[p] !=3D "") && (z[p] !=3D null)) &&=0A=
						   ((rules[y].selectorText =3D=3D c) ||=0A=
						    (rules[y].selectorText =3D=3D (t + "." + c)))) {=0A=
							return z[p];=0A=
						}=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	return null;=0A=
}=0A=
=0A=
// setStyleByTag: given an element type, style property and =0A=
// value, and whether the property should override inline styles or=0A=
// just global stylesheet preferences, apply the style.=0A=
// args:=0A=
//  e - element type or id=0A=
//  p - property=0A=
//  v - value=0A=
//  g - boolean 0: modify global only; 1: modify all elements in document=0A=
function setStyleByTag(e, p, v, g) {=0A=
	if(g) {=0A=
		var elements =3D document.getElementsByTagName(e);=0A=
		for(var i =3D 0; i < elements.length; i++) {=0A=
			elements.item(i).style[p] =3D v;=0A=
		}=0A=
	} else {=0A=
		var sheets =3D document.styleSheets;=0A=
		if(sheets.length > 0) {=0A=
			for(var i =3D 0; i < sheets.length; i++) {=0A=
				var rules =3D sheets[i].cssRules;=0A=
				if(rules.length > 0) {=0A=
					for(var j =3D 0; j < rules.length; j++) {=0A=
						var s =3D rules[j].style;=0A=
						// selectorText broken in NS 6/Mozilla: see=0A=
						// http://bugzilla.mozilla.org/show_bug.cgi?id=3D51944=0A=
						ugly_selectorText_workaround();=0A=
						if(allStyleRules) {=0A=
							if(allStyleRules[j] =3D=3D e) {=0A=
								s[p] =3D v;=0A=
							}			=0A=
						} else {=0A=
							// use the native selectorText and style stuff=0A=
							if(((s[p] !=3D "") && (s[p] !=3D null)) &&=0A=
							   (rules[j].selectorText =3D=3D e)) {=0A=
								s[p] =3D v;=0A=
							}=0A=
						}=0A=
=0A=
					}=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
}=0A=
=0A=
// getStyleByTag: given an element type and style property, return=0A=
// the property's value=0A=
// args:=0A=
//  e - element type=0A=
//  p - property=0A=
function getStyleByTag(e, p) {=0A=
	var sheets =3D document.styleSheets;=0A=
	if(sheets.length > 0) {=0A=
		for(var i =3D 0; i < sheets.length; i++) {=0A=
			var rules =3D sheets[i].cssRules;=0A=
			if(rules.length > 0) {=0A=
				for(var j =3D 0; j < rules.length; j++) {=0A=
					var s =3D rules[j].style;=0A=
					// selectorText broken in NS 6/Mozilla: see=0A=
					// http://bugzilla.mozilla.org/show_bug.cgi?id=3D51944=0A=
					ugly_selectorText_workaround();=0A=
					if(allStyleRules) {=0A=
						if(allStyleRules[j] =3D=3D e) {=0A=
							return s[p];=0A=
						}			=0A=
					} else {=0A=
						// use the native selectorText and style stuff=0A=
						if(((s[p] !=3D "") && (s[p] !=3D null)) &&=0A=
						   (rules[j].selectorText =3D=3D e)) {=0A=
							return s[p];=0A=
						}=0A=
					}=0A=
=0A=
				}=0A=
			}=0A=
		}=0A=
	}=0A=
=0A=
	// if we don't find any style sheets, return the value for the first=0A=
	// element of this type we encounter without a CLASS or STYLE attribute=0A=
	var elements =3D document.getElementsByTagName(e);=0A=
	var sawClassOrStyleAttribute =3D false;=0A=
	for(var i =3D 0; i < elements.length; i++) {=0A=
		var node =3D elements.item(i);=0A=
		for(var j =3D 0; j < node.attributes.length; j++) {=0A=
			if((node.attributes.item(j).nodeName =3D=3D 'class') ||=0A=
			   (node.attributes.item(j).nodeName =3D=3D 'style')){=0A=
			   sawClassOrStyleAttribute =3D true;=0A=
			}=0A=
		}=0A=
		if(! sawClassOrStyleAttribute) {=0A=
			return elements.item(i).style[p];=0A=
		}=0A=
	}=0A=
}=0A=

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/utilities.js

/*=0A=
Copyright (c) 2008, Yahoo! Inc. All rights reserved.=0A=
Code licensed under the BSD License:=0A=
http://developer.yahoo.net/yui/license.txt=0A=
version: 2.5.1=0A=
*/=0A=
/**=0A=
 * The YAHOO object is the single global object used by YUI Library.  It=0A=
 * contains utility function for setting up namespaces, inheritance, and=0A=
 * logging.  YAHOO.util, YAHOO.widget, and YAHOO.example are namespaces=0A=
 * created automatically for and used by the library.=0A=
 * @module yahoo=0A=
 * @title  YAHOO Global=0A=
 */=0A=
=0A=
/**=0A=
 * YAHOO_config is not included as part of the library.  Instead it is =
an =0A=
 * object that can be defined by the implementer immediately before =0A=
 * including the YUI library.  The properties included in this object=0A=
 * will be used to configure global properties needed as soon as the =0A=
 * library begins to load.=0A=
 * @class YAHOO_config=0A=
 * @static=0A=
 */=0A=
=0A=
/**=0A=
 * A reference to a function that will be executed every time a YAHOO =
module=0A=
 * is loaded.  As parameter, this function will receive the version=0A=
 * information for the module. See <a href=3D"YAHOO.env.html#getVersion">=0A=
 * YAHOO.env.getVersion</a> for the description of the version data =
structure.=0A=
 * @property listener=0A=
 * @type Function=0A=
 * @static=0A=
 * @default undefined=0A=
 */=0A=
=0A=
/**=0A=
 * Set to true if the library will be dynamically loaded after =
window.onload.=0A=
 * Defaults to false =0A=
 * @property injecting=0A=
 * @type boolean=0A=
 * @static=0A=
 * @default undefined=0A=
 */=0A=
=0A=
/**=0A=
 * Instructs the yuiloader component to dynamically load yui components =
and=0A=
 * their dependencies.  See the yuiloader documentation for more =
information=0A=
 * about dynamic loading=0A=
 * @property load=0A=
 * @static=0A=
 * @default undefined=0A=
 * @see yuiloader=0A=
 */=0A=
=0A=
/**=0A=
 * Forces the use of the supplied locale where applicable in the library=0A=
 * @property locale=0A=
 * @type string=0A=
 * @static=0A=
 * @default undefined=0A=
 */=0A=
=0A=
if (typeof YAHOO =3D=3D "undefined" || !YAHOO) {=0A=
    /**=0A=
     * The YAHOO global namespace object.  If YAHOO is already defined, =
the=0A=
     * existing YAHOO object will not be overwritten so that defined=0A=
     * namespaces are preserved.=0A=
     * @class YAHOO=0A=
     * @static=0A=
     */=0A=
    var YAHOO =3D {};=0A=
}=0A=
=0A=
/**=0A=
 * Returns the namespace specified and creates it if it doesn't exist=0A=
 * <pre>=0A=
 * YAHOO.namespace("property.package");=0A=
 * YAHOO.namespace("YAHOO.property.package");=0A=
 * </pre>=0A=
 * Either of the above would create YAHOO.property, then=0A=
 * YAHOO.property.package=0A=
 *=0A=
 * Be careful when naming packages. Reserved words may work in some =
browsers=0A=
 * and not others. For instance, the following will fail in Safari:=0A=
 * <pre>=0A=
 * YAHOO.namespace("really.long.nested.namespace");=0A=
 * </pre>=0A=
 * This fails because "long" is a future reserved word in ECMAScript=0A=
 *=0A=
 * @method namespace=0A=
 * @static=0A=
 * @param  {String*} arguments 1-n namespaces to create =0A=
 * @return {Object}  A reference to the last namespace object created=0A=
 */=0A=
YAHOO.namespace =3D function() {=0A=
    var a=3Darguments, o=3Dnull, i, j, d;=0A=
    for (i=3D0; i<a.length; i=3Di+1) {=0A=
        d=3Da[i].split(".");=0A=
        o=3DYAHOO;=0A=
=0A=
        // YAHOO is implied, so it is ignored if it is included=0A=
        for (j=3D(d[0] =3D=3D "YAHOO") ? 1 : 0; j<d.length; j=3Dj+1) {=0A=
            o[d[j]]=3Do[d[j]] || {};=0A=
            o=3Do[d[j]];=0A=
        }=0A=
    }=0A=
=0A=
    return o;=0A=
};=0A=
=0A=
/**=0A=
 * Uses YAHOO.widget.Logger to output a log message, if the widget is=0A=
 * available.=0A=
 *=0A=
 * @method log=0A=
 * @static=0A=
 * @param  {String}  msg  The message to log.=0A=
 * @param  {String}  cat  The log category for the message.  Default=0A=
 *                        categories are "info", "warn", "error", time".=0A=
 *                        Custom categories can be used as well. (opt)=0A=
 * @param  {String}  src  The source of the the message (opt)=0A=
 * @return {Boolean}      True if the log operation was successful.=0A=
 */=0A=
YAHOO.log =3D function(msg, cat, src) {=0A=
    var l=3DYAHOO.widget.Logger;=0A=
    if(l && l.log) {=0A=
        return l.log(msg, cat, src);=0A=
    } else {=0A=
        return false;=0A=
    }=0A=
};=0A=
=0A=
/**=0A=
 * Registers a module with the YAHOO object=0A=
 * @method register=0A=
 * @static=0A=
 * @param {String}   name    the name of the module (event, slider, etc)=0A=
 * @param {Function} mainClass a reference to class in the module.  This=0A=
 *                             class will be tagged with the version info=0A=
 *                             so that it will be possible to identify =
the=0A=
 *                             version that is in use when multiple =
versions=0A=
 *                             have loaded=0A=
 * @param {Object}   data      metadata object for the module.  =
Currently it=0A=
 *                             is expected to contain a "version" =
property=0A=
 *                             and a "build" property at minimum.=0A=
 */=0A=
YAHOO.register =3D function(name, mainClass, data) {=0A=
    var mods =3D YAHOO.env.modules;=0A=
    if (!mods[name]) {=0A=
        mods[name] =3D { versions:[], builds:[] };=0A=
    }=0A=
    var =
m=3Dmods[name],v=3Ddata.version,b=3Ddata.build,ls=3DYAHOO.env.listeners;=0A=
    m.name =3D name;=0A=
    m.version =3D v;=0A=
    m.build =3D b;=0A=
    m.versions.push(v);=0A=
    m.builds.push(b);=0A=
    m.mainClass =3D mainClass;=0A=
    // fire the module load listeners=0A=
    for (var i=3D0;i<ls.length;i=3Di+1) {=0A=
        ls[i](m);=0A=
    }=0A=
    // label the main class=0A=
    if (mainClass) {=0A=
        mainClass.VERSION =3D v;=0A=
        mainClass.BUILD =3D b;=0A=
    } else {=0A=
        YAHOO.log("mainClass is undefined for module " + name, "warn");=0A=
    }=0A=
};=0A=
=0A=
/**=0A=
 * YAHOO.env is used to keep track of what is known about the YUI =
library and=0A=
 * the browsing environment=0A=
 * @class YAHOO.env=0A=
 * @static=0A=
 */=0A=
YAHOO.env =3D YAHOO.env || {=0A=
=0A=
    /**=0A=
     * Keeps the version info for all YUI modules that have reported =
themselves=0A=
     * @property modules=0A=
     * @type Object[]=0A=
     */=0A=
    modules: [],=0A=
    =0A=
    /**=0A=
     * List of functions that should be executed every time a YUI module=0A=
     * reports itself.=0A=
     * @property listeners=0A=
     * @type Function[]=0A=
     */=0A=
    listeners: []=0A=
};=0A=
=0A=
/**=0A=
 * Returns the version data for the specified module:=0A=
 *      <dl>=0A=
 *      <dt>name:</dt>      <dd>The name of the module</dd>=0A=
 *      <dt>version:</dt>   <dd>The version in use</dd>=0A=
 *      <dt>build:</dt>     <dd>The build number in use</dd>=0A=
 *      <dt>versions:</dt>  <dd>All versions that were registered</dd>=0A=
 *      <dt>builds:</dt>    <dd>All builds that were registered.</dd>=0A=
 *      <dt>mainClass:</dt> <dd>An object that was was stamped with the=0A=
 *                 current version and build. If =0A=
 *                 mainClass.VERSION !=3D version or mainClass.BUILD =
!=3D build,=0A=
 *                 multiple versions of pieces of the library have been=0A=
 *                 loaded, potentially causing issues.</dd>=0A=
 *       </dl>=0A=
 *=0A=
 * @method getVersion=0A=
 * @static=0A=
 * @param {String}  name the name of the module (event, slider, etc)=0A=
 * @return {Object} The version info=0A=
 */=0A=
YAHOO.env.getVersion =3D function(name) {=0A=
    return YAHOO.env.modules[name] || null;=0A=
};=0A=
=0A=
/**=0A=
 * Do not fork for a browser if it can be avoided.  Use feature =
detection when=0A=
 * you can.  Use the user agent as a last resort.  YAHOO.env.ua stores a =
version=0A=
 * number for the browser engine, 0 otherwise.  This value may or may =
not map=0A=
 * to the version number of the browser using the engine.  The value is =0A=
 * presented as a float so that it can easily be used for boolean =
evaluation =0A=
 * as well as for looking for a particular range of versions.  Because =
of this, =0A=
 * some of the granularity of the version info may be lost (e.g., Gecko =
1.8.0.9 =0A=
 * reports 1.8).=0A=
 * @class YAHOO.env.ua=0A=
 * @static=0A=
 */=0A=
YAHOO.env.ua =3D function() {=0A=
    var o=3D{=0A=
=0A=
        /**=0A=
         * Internet Explorer version number or 0.  Example: 6=0A=
         * @property ie=0A=
         * @type float=0A=
         */=0A=
        ie:0,=0A=
=0A=
        /**=0A=
         * Opera version number or 0.  Example: 9.2=0A=
         * @property opera=0A=
         * @type float=0A=
         */=0A=
        opera:0,=0A=
=0A=
        /**=0A=
         * Gecko engine revision number.  Will evaluate to 1 if Gecko =0A=
         * is detected but the revision could not be found. Other =
browsers=0A=
         * will be 0.  Example: 1.8=0A=
         * <pre>=0A=
         * Firefox 1.0.0.4: 1.7.8   <-- Reports 1.7=0A=
         * Firefox 1.5.0.9: 1.8.0.9 <-- Reports 1.8=0A=
         * Firefox 2.0.0.3: 1.8.1.3 <-- Reports 1.8=0A=
         * Firefox 3 alpha: 1.9a4   <-- Reports 1.9=0A=
         * </pre>=0A=
         * @property gecko=0A=
         * @type float=0A=
         */=0A=
        gecko:0,=0A=
=0A=
        /**=0A=
         * AppleWebKit version.  KHTML browsers that are not WebKit =
browsers =0A=
         * will evaluate to 1, other browsers 0.  Example: 418.9.1=0A=
         * <pre>=0A=
         * Safari 1.3.2 (312.6): 312.8.1 <-- Reports 312.8 -- currently =
the =0A=
         *                                   latest available for Mac =
OSX 10.3.=0A=
         * Safari 2.0.2:         416     <-- hasOwnProperty introduced=0A=
         * Safari 2.0.4:         418     <-- preventDefault fixed=0A=
         * Safari 2.0.4 (419.3): 418.9.1 <-- One version of Safari may =
run=0A=
         *                                   different versions of webkit=0A=
         * Safari 2.0.4 (419.3): 419     <-- Tiger installations that =
have been=0A=
         *                                   updated, but not updated=0A=
         *                                   to the latest patch.=0A=
         * Webkit 212 nightly:   522+    <-- Safari 3.0 precursor (with =
native SVG=0A=
         *                                   and many major issues =
fixed).  =0A=
         * 3.x yahoo.com, flickr:422     <-- Safari 3.x hacks the user =
agent=0A=
         *                                   string when hitting =
yahoo.com and =0A=
         *                                   flickr.com.=0A=
         * Safari 3.0.4 (523.12):523.12  <-- First Tiger release - =
automatic update=0A=
         *                                   from 2.x via the 10.4.11 OS =
patch=0A=
         * Webkit nightly 1/2008:525+    <-- Supports DOMContentLoaded =
event.=0A=
         *                                   yahoo.com user agent hack =
removed.=0A=
         *                                   =0A=
         * </pre>=0A=
         * http://developer.apple.com/internet/safari/uamatrix.html=0A=
         * @property webkit=0A=
         * @type float=0A=
         */=0A=
        webkit: 0,=0A=
=0A=
        /**=0A=
         * The mobile property will be set to a string containing any =
relevant=0A=
         * user agent information when a modern mobile browser is =
detected.=0A=
         * Currently limited to Safari on the iPhone/iPod Touch, Nokia =
N-series=0A=
         * devices with the WebKit-based browser, and Opera Mini.  =0A=
         * @property mobile =0A=
         * @type string=0A=
         */=0A=
        mobile: null,=0A=
=0A=
        /**=0A=
         * Adobe AIR version number or 0.  Only populated if webkit is =
detected.=0A=
         * Example: 1.0=0A=
         * @property air=0A=
         * @type float=0A=
         */=0A=
        air: 0=0A=
=0A=
    };=0A=
=0A=
    var ua=3Dnavigator.userAgent, m;=0A=
=0A=
    // Modern KHTML browsers should qualify as Safari X-Grade=0A=
    if ((/KHTML/).test(ua)) {=0A=
        o.webkit=3D1;=0A=
    }=0A=
    // Modern WebKit browsers are at least X-Grade=0A=
    m=3Dua.match(/AppleWebKit\/([^\s]*)/);=0A=
    if (m&&m[1]) {=0A=
        o.webkit=3DparseFloat(m[1]);=0A=
=0A=
        // Mobile browser check=0A=
        if (/ Mobile\//.test(ua)) {=0A=
            o.mobile =3D "Apple"; // iPhone or iPod Touch=0A=
        } else {=0A=
            m=3Dua.match(/NokiaN[^\/]*/);=0A=
            if (m) {=0A=
                o.mobile =3D m[0]; // Nokia N-series, ex: NokiaN95=0A=
            }=0A=
        }=0A=
=0A=
        m=3Dua.match(/AdobeAIR\/([^\s]*)/);=0A=
        if (m) {=0A=
            o.air =3D m[0]; // Adobe AIR 1.0 or better=0A=
        }=0A=
=0A=
    }=0A=
=0A=
    if (!o.webkit) { // not webkit=0A=
        // @todo check Opera/8.01 (J2ME/MIDP; Opera Mini/2.0.4509/1316; =
fi; U; ssr)=0A=
        m=3Dua.match(/Opera[\s\/]([^\s]*)/);=0A=
        if (m&&m[1]) {=0A=
            o.opera=3DparseFloat(m[1]);=0A=
            m=3Dua.match(/Opera Mini[^;]*/);=0A=
            if (m) {=0A=
                o.mobile =3D m[0]; // ex: Opera Mini/2.0.4509/1316=0A=
            }=0A=
        } else { // not opera or webkit=0A=
            m=3Dua.match(/MSIE\s([^;]*)/);=0A=
            if (m&&m[1]) {=0A=
                o.ie=3DparseFloat(m[1]);=0A=
            } else { // not opera, webkit, or ie=0A=
                m=3Dua.match(/Gecko\/([^\s]*)/);=0A=
                if (m) {=0A=
                    o.gecko=3D1; // Gecko detected, look for revision=0A=
                    m=3Dua.match(/rv:([^\s\)]*)/);=0A=
                    if (m&&m[1]) {=0A=
                        o.gecko=3DparseFloat(m[1]);=0A=
                    }=0A=
                }=0A=
            }=0A=
        }=0A=
    }=0A=
    =0A=
    return o;=0A=
}();=0A=
=0A=
/*=0A=
 * Initializes the global by creating the default namespaces and applying=0A=
 * any new configuration information that is detected.  This is the setup=0A=
 * for env.=0A=
 * @method init=0A=
 * @static=0A=
 * @private=0A=
 */=0A=
(function() {=0A=
    YAHOO.namespace("util", "widget", "example");=0A=
    if ("undefined" !=3D=3D typeof YAHOO_config) {=0A=
        var =
l=3DYAHOO_config.listener,ls=3DYAHOO.env.listeners,unique=3Dtrue,i;=0A=
        if (l) {=0A=
            // if YAHOO is loaded multiple times we need to check to see =
if=0A=
            // this is a new config object.  If it is, add the new =
component=0A=
            // load listener to the stack=0A=
            for (i=3D0;i<ls.length;i=3Di+1) {=0A=
                if (ls[i]=3D=3Dl) {=0A=
                    unique=3Dfalse;=0A=
                    break;=0A=
                }=0A=
            }=0A=
            if (unique) {=0A=
                ls.push(l);=0A=
            }=0A=
        }=0A=
    }=0A=
})();=0A=
/**=0A=
 * Provides the language utilites and extensions used by the library=0A=
 * @class YAHOO.lang=0A=
 */=0A=
YAHOO.lang =3D YAHOO.lang || {=0A=
    /**=0A=
     * Determines whether or not the provided object is an array.=0A=
     * Testing typeof/instanceof/constructor of arrays across frame =0A=
     * boundaries isn't possible in Safari unless you have a reference=0A=
     * to the other frame to test against its Array prototype.  To=0A=
     * handle this case, we test well-known array properties instead.=0A=
     * properties.=0A=
     * @method isArray=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isArray: function(o) { =0A=
        if (o) {=0A=
           var l =3D YAHOO.lang;=0A=
           return l.isNumber(o.length) && l.isFunction(o.splice);=0A=
        }=0A=
        return false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Determines whether or not the provided object is a boolean=0A=
     * @method isBoolean=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isBoolean: function(o) {=0A=
        return typeof o =3D=3D=3D 'boolean';=0A=
    },=0A=
    =0A=
    /**=0A=
     * Determines whether or not the provided object is a function=0A=
     * @method isFunction=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isFunction: function(o) {=0A=
        return typeof o =3D=3D=3D 'function';=0A=
    },=0A=
        =0A=
    /**=0A=
     * Determines whether or not the provided object is null=0A=
     * @method isNull=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isNull: function(o) {=0A=
        return o =3D=3D=3D null;=0A=
    },=0A=
        =0A=
    /**=0A=
     * Determines whether or not the provided object is a legal number=0A=
     * @method isNumber=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isNumber: function(o) {=0A=
        return typeof o =3D=3D=3D 'number' && isFinite(o);=0A=
    },=0A=
      =0A=
    /**=0A=
     * Determines whether or not the provided object is of type object=0A=
     * or function=0A=
     * @method isObject=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */  =0A=
    isObject: function(o) {=0A=
return (o && (typeof o =3D=3D=3D 'object' || YAHOO.lang.isFunction(o))) =
|| false;=0A=
    },=0A=
        =0A=
    /**=0A=
     * Determines whether or not the provided object is a string=0A=
     * @method isString=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isString: function(o) {=0A=
        return typeof o =3D=3D=3D 'string';=0A=
    },=0A=
        =0A=
    /**=0A=
     * Determines whether or not the provided object is undefined=0A=
     * @method isUndefined=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    isUndefined: function(o) {=0A=
        return typeof o =3D=3D=3D 'undefined';=0A=
    },=0A=
    =0A=
    /**=0A=
     * Determines whether or not the property was added=0A=
     * to the object instance.  Returns false if the property is not =
present=0A=
     * in the object, or was inherited from the prototype.=0A=
     * This abstraction is provided to enable hasOwnProperty for Safari =
1.3.x.=0A=
     * There is a discrepancy between YAHOO.lang.hasOwnProperty and=0A=
     * Object.prototype.hasOwnProperty when the property is a primitive =
added to=0A=
     * both the instance AND prototype with the same value:=0A=
     * <pre>=0A=
     * var A =3D function() {};=0A=
     * A.prototype.foo =3D 'foo';=0A=
     * var a =3D new A();=0A=
     * a.foo =3D 'foo';=0A=
     * alert(a.hasOwnProperty('foo')); // true=0A=
     * alert(YAHOO.lang.hasOwnProperty(a, 'foo')); // false when using =
fallback=0A=
     * </pre>=0A=
     * @method hasOwnProperty=0A=
     * @param {any} o The object being testing=0A=
     * @return {boolean} the result=0A=
     */=0A=
    hasOwnProperty: function(o, prop) {=0A=
        if (Object.prototype.hasOwnProperty) {=0A=
            return o.hasOwnProperty(prop);=0A=
        }=0A=
        =0A=
        return !YAHOO.lang.isUndefined(o[prop]) && =0A=
                o.constructor.prototype[prop] !=3D=3D o[prop];=0A=
    },=0A=
 =0A=
    /**=0A=
     * IE will not enumerate native functions in a derived object even =
if the=0A=
     * function was overridden.  This is a workaround for specific =
functions =0A=
     * we care about on the Object prototype. =0A=
     * @property _IEEnumFix=0A=
     * @param {Function} r  the object to receive the augmentation=0A=
     * @param {Function} s  the object that supplies the properties to =
augment=0A=
     * @static=0A=
     * @private=0A=
     */=0A=
    _IEEnumFix: function(r, s) {=0A=
        if (YAHOO.env.ua.ie) {=0A=
            var add=3D["toString", "valueOf"], i;=0A=
            for (i=3D0;i<add.length;i=3Di+1) {=0A=
                var fname=3Dadd[i],f=3Ds[fname];=0A=
                if (YAHOO.lang.isFunction(f) && =
f!=3DObject.prototype[fname]) {=0A=
                    r[fname]=3Df;=0A=
                }=0A=
            }=0A=
        }=0A=
    },=0A=
       =0A=
    /**=0A=
     * Utility to set up the prototype, constructor and superclass =
properties to=0A=
     * support an inheritance strategy that can chain constructors and =
methods.=0A=
     * Static members will not be inherited.=0A=
     *=0A=
     * @method extend=0A=
     * @static=0A=
     * @param {Function} subc   the object to modify=0A=
     * @param {Function} superc the object to inherit=0A=
     * @param {Object} overrides  additional properties/methods to add =
to the=0A=
     *                              subclass prototype.  These will =
override the=0A=
     *                              matching items obtained from the =
superclass =0A=
     *                              if present.=0A=
     */=0A=
    extend: function(subc, superc, overrides) {=0A=
        if (!superc||!subc) {=0A=
            throw new Error("YAHOO.lang.extend failed, please check that =
" +=0A=
                            "all dependencies are included.");=0A=
        }=0A=
        var F =3D function() {};=0A=
        F.prototype=3Dsuperc.prototype;=0A=
        subc.prototype=3Dnew F();=0A=
        subc.prototype.constructor=3Dsubc;=0A=
        subc.superclass=3Dsuperc.prototype;=0A=
        if (superc.prototype.constructor =3D=3D =
Object.prototype.constructor) {=0A=
            superc.prototype.constructor=3Dsuperc;=0A=
        }=0A=
    =0A=
        if (overrides) {=0A=
            for (var i in overrides) {=0A=
                subc.prototype[i]=3Doverrides[i];=0A=
            }=0A=
=0A=
            YAHOO.lang._IEEnumFix(subc.prototype, overrides);=0A=
        }=0A=
    },=0A=
   =0A=
    /**=0A=
     * Applies all properties in the supplier to the receiver if the=0A=
     * receiver does not have these properties yet.  Optionally, one or =0A=
     * more methods/properties can be specified (as additional =0A=
     * parameters).  This option will overwrite the property if receiver =0A=
     * has it already.  If true is passed as the third parameter, all =0A=
     * properties will be applied and _will_ overwrite properties in =0A=
     * the receiver.=0A=
     *=0A=
     * @method augmentObject=0A=
     * @static=0A=
     * @since 2.3.0=0A=
     * @param {Function} r  the object to receive the augmentation=0A=
     * @param {Function} s  the object that supplies the properties to =
augment=0A=
     * @param {String*|boolean}  arguments zero or more properties =
methods =0A=
     *        to augment the receiver with.  If none specified, =
everything=0A=
     *        in the supplier will be used unless it would=0A=
     *        overwrite an existing property in the receiver. If true=0A=
     *        is specified as the third parameter, all properties will=0A=
     *        be applied and will overwrite an existing property in=0A=
     *        the receiver=0A=
     */=0A=
    augmentObject: function(r, s) {=0A=
        if (!s||!r) {=0A=
            throw new Error("Absorb failed, verify dependencies.");=0A=
        }=0A=
        var a=3Darguments, i, p, override=3Da[2];=0A=
        if (override && override!=3D=3Dtrue) { // only absorb the =
specified properties=0A=
            for (i=3D2; i<a.length; i=3Di+1) {=0A=
                r[a[i]] =3D s[a[i]];=0A=
            }=0A=
        } else { // take everything, overwriting only if the third =
parameter is true=0A=
            for (p in s) { =0A=
                if (override || !r[p]) {=0A=
                    r[p] =3D s[p];=0A=
                }=0A=
            }=0A=
            =0A=
            YAHOO.lang._IEEnumFix(r, s);=0A=
        }=0A=
    },=0A=
 =0A=
    /**=0A=
     * Same as YAHOO.lang.augmentObject, except it only applies =
prototype properties=0A=
     * @see YAHOO.lang.augmentObject=0A=
     * @method augmentProto=0A=
     * @static=0A=
     * @param {Function} r  the object to receive the augmentation=0A=
     * @param {Function} s  the object that supplies the properties to =
augment=0A=
     * @param {String*|boolean}  arguments zero or more properties =
methods =0A=
     *        to augment the receiver with.  If none specified, =
everything =0A=
     *        in the supplier will be used unless it would overwrite an =
existing =0A=
     *        property in the receiver.  if true is specified as the =
third =0A=
     *        parameter, all properties will be applied and will =
overwrite an =0A=
     *        existing property in the receiver=0A=
     */=0A=
    augmentProto: function(r, s) {=0A=
        if (!s||!r) {=0A=
            throw new Error("Augment failed, verify dependencies.");=0A=
        }=0A=
        //var a=3D[].concat(arguments);=0A=
        var a=3D[r.prototype,s.prototype];=0A=
        for (var i=3D2;i<arguments.length;i=3Di+1) {=0A=
            a.push(arguments[i]);=0A=
        }=0A=
        YAHOO.lang.augmentObject.apply(this, a);=0A=
    },=0A=
=0A=
      =0A=
    /**=0A=
     * Returns a simple string representation of the object or array.=0A=
     * Other types of objects will be returned unprocessed.  Arrays=0A=
     * are expected to be indexed.  Use object notation for=0A=
     * associative arrays.=0A=
     * @method dump=0A=
     * @since 2.3.0=0A=
     * @param o {Object} The object to dump=0A=
     * @param d {int} How deep to recurse child objects, default 3=0A=
     * @return {String} the dump result=0A=
     */=0A=
    dump: function(o, d) {=0A=
        var l=3DYAHOO.lang,i,len,s=3D[],OBJ=3D"{...}",FUN=3D"f(){...}",=0A=
            COMMA=3D', ', ARROW=3D' =3D> ';=0A=
=0A=
        // Cast non-objects to string=0A=
        // Skip dates because the std toString is what we want=0A=
        // Skip HTMLElement-like objects because trying to dump =0A=
        // an element will cause an unhandled exception in FF 2.x=0A=
        if (!l.isObject(o)) {=0A=
            return o + "";=0A=
        } else if (o instanceof Date || ("nodeType" in o && "tagName" in =
o)) {=0A=
            return o;=0A=
        } else if  (l.isFunction(o)) {=0A=
            return FUN;=0A=
        }=0A=
=0A=
        // dig into child objects the depth specifed. Default 3=0A=
        d =3D (l.isNumber(d)) ? d : 3;=0A=
=0A=
        // arrays [1, 2, 3]=0A=
        if (l.isArray(o)) {=0A=
            s.push("[");=0A=
            for (i=3D0,len=3Do.length;i<len;i=3Di+1) {=0A=
                if (l.isObject(o[i])) {=0A=
                    s.push((d > 0) ? l.dump(o[i], d-1) : OBJ);=0A=
                } else {=0A=
                    s.push(o[i]);=0A=
                }=0A=
                s.push(COMMA);=0A=
            }=0A=
            if (s.length > 1) {=0A=
                s.pop();=0A=
            }=0A=
            s.push("]");=0A=
        // objects {k1 =3D> v1, k2 =3D> v2}=0A=
        } else {=0A=
            s.push("{");=0A=
            for (i in o) {=0A=
                if (l.hasOwnProperty(o, i)) {=0A=
                    s.push(i + ARROW);=0A=
                    if (l.isObject(o[i])) {=0A=
                        s.push((d > 0) ? l.dump(o[i], d-1) : OBJ);=0A=
                    } else {=0A=
                        s.push(o[i]);=0A=
                    }=0A=
                    s.push(COMMA);=0A=
                }=0A=
            }=0A=
            if (s.length > 1) {=0A=
                s.pop();=0A=
            }=0A=
            s.push("}");=0A=
        }=0A=
=0A=
        return s.join("");=0A=
    },=0A=
=0A=
    /**=0A=
     * Does variable substitution on a string. It scans through the =
string =0A=
     * looking for expressions enclosed in { } braces. If an expression =0A=
     * is found, it is used a key on the object.  If there is a space in=0A=
     * the key, the first word is used for the key and the rest is =
provided=0A=
     * to an optional function to be used to programatically determine =
the=0A=
     * value (the extra information might be used for this decision). If =0A=
     * the value for the key in the object, or what is returned from the=0A=
     * function has a string value, number value, or object value, it is =0A=
     * substituted for the bracket expression and it repeats.  If this=0A=
     * value is an object, it uses the Object's toString() if this has=0A=
     * been overridden, otherwise it does a shallow dump of the key/value=0A=
     * pairs.=0A=
     * @method substitute=0A=
     * @since 2.3.0=0A=
     * @param s {String} The string that will be modified.=0A=
     * @param o {Object} An object containing the replacement values=0A=
     * @param f {Function} An optional function that can be used to=0A=
     *                     process each match.  It receives the key,=0A=
     *                     value, and any extra metadata included with=0A=
     *                     the key inside of the braces.=0A=
     * @return {String} the substituted string=0A=
     */=0A=
    substitute: function (s, o, f) {=0A=
        var i, j, k, key, v, meta, l=3DYAHOO.lang, saved=3D[], token, =0A=
            DUMP=3D'dump', SPACE=3D' ', LBRACE=3D'{', RBRACE=3D'}';=0A=
=0A=
=0A=
        for (;;) {=0A=
            i =3D s.lastIndexOf(LBRACE);=0A=
            if (i < 0) {=0A=
                break;=0A=
            }=0A=
            j =3D s.indexOf(RBRACE, i);=0A=
            if (i + 1 >=3D j) {=0A=
                break;=0A=
            }=0A=
=0A=
            //Extract key and meta info =0A=
            token =3D s.substring(i + 1, j);=0A=
            key =3D token;=0A=
            meta =3D null;=0A=
            k =3D key.indexOf(SPACE);=0A=
            if (k > -1) {=0A=
                meta =3D key.substring(k + 1);=0A=
                key =3D key.substring(0, k);=0A=
            }=0A=
=0A=
            // lookup the value=0A=
            v =3D o[key];=0A=
=0A=
            // if a substitution function was provided, execute it=0A=
            if (f) {=0A=
                v =3D f(key, v, meta);=0A=
            }=0A=
=0A=
            if (l.isObject(v)) {=0A=
                if (l.isArray(v)) {=0A=
                    v =3D l.dump(v, parseInt(meta, 10));=0A=
                } else {=0A=
                    meta =3D meta || "";=0A=
=0A=
                    // look for the keyword 'dump', if found force obj =
dump=0A=
                    var dump =3D meta.indexOf(DUMP);=0A=
                    if (dump > -1) {=0A=
                        meta =3D meta.substring(4);=0A=
                    }=0A=
=0A=
                    // use the toString if it is not the Object toString =0A=
                    // and the 'dump' meta info was not found=0A=
                    if =
(v.toString=3D=3D=3DObject.prototype.toString||dump>-1) {=0A=
                        v =3D l.dump(v, parseInt(meta, 10));=0A=
                    } else {=0A=
                        v =3D v.toString();=0A=
                    }=0A=
                }=0A=
            } else if (!l.isString(v) && !l.isNumber(v)) {=0A=
                // This {block} has no replace string. Save it for later.=0A=
                v =3D "~-" + saved.length + "-~";=0A=
                saved[saved.length] =3D token;=0A=
=0A=
                // break;=0A=
            }=0A=
=0A=
            s =3D s.substring(0, i) + v + s.substring(j + 1);=0A=
=0A=
=0A=
        }=0A=
=0A=
        // restore saved {block}s=0A=
        for (i=3Dsaved.length-1; i>=3D0; i=3Di-1) {=0A=
            s =3D s.replace(new RegExp("~-" + i + "-~"), "{"  + saved[i] =
+ "}", "g");=0A=
        }=0A=
=0A=
        return s;=0A=
    },=0A=
=0A=
=0A=
    /**=0A=
     * Returns a string without any leading or trailing whitespace.  If =0A=
     * the input is not a string, the input will be returned untouched.=0A=
     * @method trim=0A=
     * @since 2.3.0=0A=
     * @param s {string} the string to trim=0A=
     * @return {string} the trimmed string=0A=
     */=0A=
    trim: function(s){=0A=
        try {=0A=
            return s.replace(/^\s+|\s+$/g, "");=0A=
        } catch(e) {=0A=
            return s;=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns a new object containing all of the properties of=0A=
     * all the supplied objects.  The properties from later objects=0A=
     * will overwrite those in earlier objects.=0A=
     * @method merge=0A=
     * @since 2.3.0=0A=
     * @param arguments {Object*} the objects to merge=0A=
     * @return the new merged object=0A=
     */=0A=
    merge: function() {=0A=
        var o=3D{}, a=3Darguments;=0A=
        for (var i=3D0, l=3Da.length; i<l; i=3Di+1) {=0A=
            YAHOO.lang.augmentObject(o, a[i], true);=0A=
        }=0A=
        return o;=0A=
    },=0A=
=0A=
    /**=0A=
     * Executes the supplied function in the context of the supplied =0A=
     * object 'when' milliseconds later.  Executes the function a =0A=
     * single time unless periodic is set to true.=0A=
     * @method later=0A=
     * @since 2.4.0=0A=
     * @param when {int} the number of milliseconds to wait until the fn =0A=
     * is executed=0A=
     * @param o the context object=0A=
     * @param fn {Function|String} the function to execute or the name =
of =0A=
     * the method in the 'o' object to execute=0A=
     * @param data [Array] data that is provided to the function.  This =
accepts=0A=
     * either a single item or an array.  If an array is provided, the=0A=
     * function is executed with one parameter for each array item.  If=0A=
     * you need to pass a single array parameter, it needs to be wrapped =
in=0A=
     * an array [myarray]=0A=
     * @param periodic {boolean} if true, executes continuously at =
supplied =0A=
     * interval until canceled=0A=
     * @return a timer object. Call the cancel() method on this object =
to =0A=
     * stop the timer.=0A=
     */=0A=
    later: function(when, o, fn, data, periodic) {=0A=
        when =3D when || 0; =0A=
        o =3D o || {};=0A=
        var m=3Dfn, d=3Ddata, f, r;=0A=
=0A=
        if (YAHOO.lang.isString(fn)) {=0A=
            m =3D o[fn];=0A=
        }=0A=
=0A=
        if (!m) {=0A=
            throw new TypeError("method undefined");=0A=
        }=0A=
=0A=
        if (!YAHOO.lang.isArray(d)) {=0A=
            d =3D [data];=0A=
        }=0A=
=0A=
        f =3D function() {=0A=
            m.apply(o, d);=0A=
        };=0A=
=0A=
        r =3D (periodic) ? setInterval(f, when) : setTimeout(f, when);=0A=
=0A=
        return {=0A=
            interval: periodic,=0A=
            cancel: function() {=0A=
                if (this.interval) {=0A=
                    clearInterval(r);=0A=
                } else {=0A=
                    clearTimeout(r);=0A=
                }=0A=
            }=0A=
        };=0A=
    },=0A=
    =0A=
    /**=0A=
     * A convenience method for detecting a legitimate non-null value.=0A=
     * Returns false for null/undefined/NaN, true for other values, =0A=
     * including 0/false/''=0A=
     * @method isValue=0A=
     * @since 2.3.0=0A=
     * @param o {any} the item to test=0A=
     * @return {boolean} true if it is not null/undefined/NaN || false=0A=
     */=0A=
    isValue: function(o) {=0A=
        // return (o || o =3D=3D=3D false || o =3D=3D=3D 0 || o =
=3D=3D=3D ''); // Infinity fails=0A=
        var l =3D YAHOO.lang;=0A=
return (l.isObject(o) || l.isString(o) || l.isNumber(o) || =
l.isBoolean(o));=0A=
    }=0A=
=0A=
};=0A=
=0A=
/*=0A=
 * An alias for <a href=3D"YAHOO.lang.html">YAHOO.lang</a>=0A=
 * @class YAHOO.util.Lang=0A=
 */=0A=
YAHOO.util.Lang =3D YAHOO.lang;=0A=
 =0A=
/**=0A=
 * Same as YAHOO.lang.augmentObject, except it only applies prototype =0A=
 * properties.  This is an alias for augmentProto.=0A=
 * @see YAHOO.lang.augmentObject=0A=
 * @method augment=0A=
 * @static=0A=
 * @param {Function} r  the object to receive the augmentation=0A=
 * @param {Function} s  the object that supplies the properties to =
augment=0A=
 * @param {String*|boolean}  arguments zero or more properties methods =
to =0A=
 *        augment the receiver with.  If none specified, everything=0A=
 *        in the supplier will be used unless it would=0A=
 *        overwrite an existing property in the receiver.  if true=0A=
 *        is specified as the third parameter, all properties will=0A=
 *        be applied and will overwrite an existing property in=0A=
 *        the receiver=0A=
 */=0A=
YAHOO.lang.augment =3D YAHOO.lang.augmentProto;=0A=
=0A=
/**=0A=
 * An alias for <a =
href=3D"YAHOO.lang.html#augment">YAHOO.lang.augment</a>=0A=
 * @for YAHOO=0A=
 * @method augment=0A=
 * @static=0A=
 * @param {Function} r  the object to receive the augmentation=0A=
 * @param {Function} s  the object that supplies the properties to =
augment=0A=
 * @param {String*}  arguments zero or more properties methods to =0A=
 *        augment the receiver with.  If none specified, everything=0A=
 *        in the supplier will be used unless it would=0A=
 *        overwrite an existing property in the receiver=0A=
 */=0A=
YAHOO.augment =3D YAHOO.lang.augmentProto;=0A=
       =0A=
/**=0A=
 * An alias for <a href=3D"YAHOO.lang.html#extend">YAHOO.lang.extend</a>=0A=
 * @method extend=0A=
 * @static=0A=
 * @param {Function} subc   the object to modify=0A=
 * @param {Function} superc the object to inherit=0A=
 * @param {Object} overrides  additional properties/methods to add to the=0A=
 *        subclass prototype.  These will override the=0A=
 *        matching items obtained from the superclass if present.=0A=
 */=0A=
YAHOO.extend =3D YAHOO.lang.extend;=0A=
=0A=
YAHOO.register("yahoo", YAHOO, {version: "2.5.1", build: "984"});=0A=

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/event.js

/*=0A=
Copyright (c) 2008, Yahoo! Inc. All rights reserved.=0A=
Code licensed under the BSD License:=0A=
http://developer.yahoo.net/yui/license.txt=0A=
version: 2.5.1=0A=
*/=0A=
=0A=
/**=0A=
 * The CustomEvent class lets you define events for your application=0A=
 * that can be subscribed to by one or more independent component.=0A=
 *=0A=
 * @param {String}  type The type of event, which is passed to the =
callback=0A=
 *                  when the event fires=0A=
 * @param {Object}  oScope The context the event will fire from.  "this" =
will=0A=
 *                  refer to this object in the callback.  Default =
value: =0A=
 *                  the window object.  The listener can override this.=0A=
 * @param {boolean} silent pass true to prevent the event from writing to=0A=
 *                  the debugsystem=0A=
 * @param {int}     signature the signature that the custom event =
subscriber=0A=
 *                  will receive. YAHOO.util.CustomEvent.LIST or =0A=
 *                  YAHOO.util.CustomEvent.FLAT.  The default is=0A=
 *                  YAHOO.util.CustomEvent.LIST.=0A=
 * @namespace YAHOO.util=0A=
 * @class CustomEvent=0A=
 * @constructor=0A=
 */=0A=
YAHOO.util.CustomEvent =3D function(type, oScope, silent, signature) {=0A=
=0A=
    /**=0A=
     * The type of event, returned to subscribers when the event fires=0A=
     * @property type=0A=
     * @type string=0A=
     */=0A=
    this.type =3D type;=0A=
=0A=
    /**=0A=
     * The scope the the event will fire from by default.  Defaults to =
the window =0A=
     * obj=0A=
     * @property scope=0A=
     * @type object=0A=
     */=0A=
    this.scope =3D oScope || window;=0A=
=0A=
    /**=0A=
     * By default all custom events are logged in the debug build, set =
silent=0A=
     * to true to disable debug outpu for this event.=0A=
     * @property silent=0A=
     * @type boolean=0A=
     */=0A=
    this.silent =3D silent;=0A=
=0A=
    /**=0A=
     * Custom events support two styles of arguments provided to the =
event=0A=
     * subscribers.  =0A=
     * <ul>=0A=
     * <li>YAHOO.util.CustomEvent.LIST: =0A=
     *   <ul>=0A=
     *   <li>param1: event name</li>=0A=
     *   <li>param2: array of arguments sent to fire</li>=0A=
     *   <li>param3: <optional> a custom object supplied by the =
subscriber</li>=0A=
     *   </ul>=0A=
     * </li>=0A=
     * <li>YAHOO.util.CustomEvent.FLAT=0A=
     *   <ul>=0A=
     *   <li>param1: the first argument passed to fire.  If you need to=0A=
     *           pass multiple parameters, use and array or object =
literal</li>=0A=
     *   <li>param2: <optional> a custom object supplied by the =
subscriber</li>=0A=
     *   </ul>=0A=
     * </li>=0A=
     * </ul>=0A=
     *   @property signature=0A=
     *   @type int=0A=
     */=0A=
    this.signature =3D signature || YAHOO.util.CustomEvent.LIST;=0A=
=0A=
    /**=0A=
     * The subscribers to this event=0A=
     * @property subscribers=0A=
     * @type Subscriber[]=0A=
     */=0A=
    this.subscribers =3D [];=0A=
=0A=
    if (!this.silent) {=0A=
    }=0A=
=0A=
    var onsubscribeType =3D "_YUICEOnSubscribe";=0A=
=0A=
    // Only add subscribe events for events that are not generated by =0A=
    // CustomEvent=0A=
    if (type !=3D=3D onsubscribeType) {=0A=
=0A=
        /**=0A=
         * Custom events provide a custom event that fires whenever =
there is=0A=
         * a new subscriber to the event.  This provides an opportunity =
to=0A=
         * handle the case where there is a non-repeating event that has=0A=
         * already fired has a new subscriber.  =0A=
         *=0A=
         * @event subscribeEvent=0A=
         * @type YAHOO.util.CustomEvent=0A=
         * @param {Function} fn The function to execute=0A=
         * @param {Object}   obj An object to be passed along when the =
event =0A=
         *                       fires=0A=
         * @param {boolean|Object}  override If true, the obj passed in =
becomes =0A=
         *                                   the execution scope of the =
listener.=0A=
         *                                   if an object, that object =
becomes the=0A=
         *                                   the execution scope.=0A=
         */=0A=
        this.subscribeEvent =3D =0A=
                new YAHOO.util.CustomEvent(onsubscribeType, this, true);=0A=
=0A=
    } =0A=
=0A=
=0A=
    /**=0A=
     * In order to make it possible to execute the rest of the subscriber=0A=
     * stack when one thows an exception, the subscribers exceptions are=0A=
     * caught.  The most recent exception is stored in this property=0A=
     * @property lastError=0A=
     * @type Error=0A=
     */=0A=
    this.lastError =3D null;=0A=
};=0A=
=0A=
/**=0A=
 * Subscriber listener sigature constant.  The LIST type returns three=0A=
 * parameters: the event type, the array of args passed to fire, and=0A=
 * the optional custom object=0A=
 * @property YAHOO.util.CustomEvent.LIST=0A=
 * @static=0A=
 * @type int=0A=
 */=0A=
YAHOO.util.CustomEvent.LIST =3D 0;=0A=
=0A=
/**=0A=
 * Subscriber listener sigature constant.  The FLAT type returns two=0A=
 * parameters: the first argument passed to fire and the optional =0A=
 * custom object=0A=
 * @property YAHOO.util.CustomEvent.FLAT=0A=
 * @static=0A=
 * @type int=0A=
 */=0A=
YAHOO.util.CustomEvent.FLAT =3D 1;=0A=
=0A=
YAHOO.util.CustomEvent.prototype =3D {=0A=
=0A=
    /**=0A=
     * Subscribes the caller to this event=0A=
     * @method subscribe=0A=
     * @param {Function} fn        The function to execute=0A=
     * @param {Object}   obj       An object to be passed along when the =
event =0A=
     *                             fires=0A=
     * @param {boolean|Object}  override If true, the obj passed in =
becomes =0A=
     *                                   the execution scope of the =
listener.=0A=
     *                                   if an object, that object =
becomes the=0A=
     *                                   the execution scope.=0A=
     */=0A=
    subscribe: function(fn, obj, override) {=0A=
=0A=
        if (!fn) {=0A=
throw new Error("Invalid callback for subscriber to '" + this.type + =
"'");=0A=
        }=0A=
=0A=
        if (this.subscribeEvent) {=0A=
            this.subscribeEvent.fire(fn, obj, override);=0A=
        }=0A=
=0A=
        this.subscribers.push( new YAHOO.util.Subscriber(fn, obj, =
override) );=0A=
    },=0A=
=0A=
    /**=0A=
     * Unsubscribes subscribers.=0A=
     * @method unsubscribe=0A=
     * @param {Function} fn  The subscribed function to remove, if not =
supplied=0A=
     *                       all will be removed=0A=
     * @param {Object}   obj  The custom object passed to subscribe.  =
This is=0A=
     *                        optional, but if supplied will be used to=0A=
     *                        disambiguate multiple listeners that are =
the same=0A=
     *                        (e.g., you subscribe many object using a =
function=0A=
     *                        that lives on the prototype)=0A=
     * @return {boolean} True if the subscriber was found and detached.=0A=
     */=0A=
    unsubscribe: function(fn, obj) {=0A=
=0A=
        if (!fn) {=0A=
            return this.unsubscribeAll();=0A=
        }=0A=
=0A=
        var found =3D false;=0A=
        for (var i=3D0, len=3Dthis.subscribers.length; i<len; ++i) {=0A=
            var s =3D this.subscribers[i];=0A=
            if (s && s.contains(fn, obj)) {=0A=
                this._delete(i);=0A=
                found =3D true;=0A=
            }=0A=
        }=0A=
=0A=
        return found;=0A=
    },=0A=
=0A=
    /**=0A=
     * Notifies the subscribers.  The callback functions will be executed=0A=
     * from the scope specified when the event was created, and with the =0A=
     * following parameters:=0A=
     *   <ul>=0A=
     *   <li>The type of event</li>=0A=
     *   <li>All of the arguments fire() was executed with as an =
array</li>=0A=
     *   <li>The custom object (if any) that was passed into the =
subscribe() =0A=
     *       method</li>=0A=
     *   </ul>=0A=
     * @method fire =0A=
     * @param {Object*} arguments an arbitrary set of parameters to pass =
to =0A=
     *                            the handler.=0A=
     * @return {boolean} false if one of the subscribers returned false, =0A=
     *                   true otherwise=0A=
     */=0A=
    fire: function() {=0A=
        var len=3Dthis.subscribers.length;=0A=
        if (!len && this.silent) {=0A=
            return true;=0A=
        }=0A=
=0A=
        var args=3D[].slice.call(arguments, 0), ret=3Dtrue, i, =
rebuild=3Dfalse;=0A=
=0A=
        if (!this.silent) {=0A=
        }=0A=
=0A=
        // make a copy of the subscribers so that there are=0A=
        // no index problems if one subscriber removes another.=0A=
        var subs =3D this.subscribers.slice();=0A=
=0A=
        for (i=3D0; i<len; ++i) {=0A=
            var s =3D subs[i];=0A=
            if (!s) {=0A=
                rebuild=3Dtrue;=0A=
            } else {=0A=
                if (!this.silent) {=0A=
                }=0A=
=0A=
                var scope =3D s.getScope(this.scope);=0A=
=0A=
                if (this.signature =3D=3D YAHOO.util.CustomEvent.FLAT) {=0A=
                    var param =3D null;=0A=
                    if (args.length > 0) {=0A=
                        param =3D args[0];=0A=
                    }=0A=
=0A=
                    try {=0A=
                        ret =3D s.fn.call(scope, param, s.obj);=0A=
                    } catch(e) {=0A=
                        this.lastError =3D e;=0A=
                    }=0A=
                } else {=0A=
                    try {=0A=
                        ret =3D s.fn.call(scope, this.type, args, s.obj);=0A=
                    } catch(ex) {=0A=
                        this.lastError =3D ex;=0A=
                    }=0A=
                }=0A=
                if (false =3D=3D=3D ret) {=0A=
                    if (!this.silent) {=0A=
                    }=0A=
=0A=
                    //break;=0A=
                    return false;=0A=
                }=0A=
            }=0A=
        }=0A=
=0A=
        =0A=
        // if (rebuild) {=0A=
        //     var newlist=3Dthis.,subs=3Dthis.subscribers;=0A=
        //     for (i=3D0,len=3Dsubs.length; i<len; i=3Di+1) {=0A=
        //         // this wasn't doing anything before=0A=
        //         newlist.push(subs[i]);=0A=
        //     }=0A=
        //     this.subscribers=3Dnewlist;=0A=
        // }=0A=
=0A=
        return true;=0A=
    },=0A=
=0A=
    /**=0A=
     * Removes all listeners=0A=
     * @method unsubscribeAll=0A=
     * @return {int} The number of listeners unsubscribed=0A=
     */=0A=
    unsubscribeAll: function() {=0A=
        for (var i=3Dthis.subscribers.length-1; i>-1; i--) {=0A=
            this._delete(i);=0A=
        }=0A=
=0A=
        this.subscribers=3D[];=0A=
=0A=
        return i;=0A=
    },=0A=
=0A=
    /**=0A=
     * @method _delete=0A=
     * @private=0A=
     */=0A=
    _delete: function(index) {=0A=
        var s =3D this.subscribers[index];=0A=
        if (s) {=0A=
            delete s.fn;=0A=
            delete s.obj;=0A=
        }=0A=
=0A=
        // this.subscribers[index]=3Dnull;=0A=
        this.subscribers.splice(index, 1);=0A=
    },=0A=
=0A=
    /**=0A=
     * @method toString=0A=
     */=0A=
    toString: function() {=0A=
         return "CustomEvent: " + "'" + this.type  + "', " + =0A=
             "scope: " + this.scope;=0A=
=0A=
    }=0A=
};=0A=
=0A=
/////////////////////////////////////////////////////////////////////=0A=
=0A=
/**=0A=
 * Stores the subscriber information to be used when the event fires.=0A=
 * @param {Function} fn       The function to execute=0A=
 * @param {Object}   obj      An object to be passed along when the =
event fires=0A=
 * @param {boolean}  override If true, the obj passed in becomes the =
execution=0A=
 *                            scope of the listener=0A=
 * @class Subscriber=0A=
 * @constructor=0A=
 */=0A=
YAHOO.util.Subscriber =3D function(fn, obj, override) {=0A=
=0A=
    /**=0A=
     * The callback that will be execute when the event fires=0A=
     * @property fn=0A=
     * @type function=0A=
     */=0A=
    this.fn =3D fn;=0A=
=0A=
    /**=0A=
     * An optional custom object that will passed to the callback when=0A=
     * the event fires=0A=
     * @property obj=0A=
     * @type object=0A=
     */=0A=
    this.obj =3D YAHOO.lang.isUndefined(obj) ? null : obj;=0A=
=0A=
    /**=0A=
     * The default execution scope for the event listener is defined =
when the=0A=
     * event is created (usually the object which contains the event).=0A=
     * By setting override to true, the execution scope becomes the =
custom=0A=
     * object passed in by the subscriber.  If override is an object, =
that =0A=
     * object becomes the scope.=0A=
     * @property override=0A=
     * @type boolean|object=0A=
     */=0A=
    this.override =3D override;=0A=
=0A=
};=0A=
=0A=
/**=0A=
 * Returns the execution scope for this listener.  If override was set =
to true=0A=
 * the custom obj will be the scope.  If override is an object, that is =
the=0A=
 * scope, otherwise the default scope will be used.=0A=
 * @method getScope=0A=
 * @param {Object} defaultScope the scope to use if this listener does =
not=0A=
 *                              override it.=0A=
 */=0A=
YAHOO.util.Subscriber.prototype.getScope =3D function(defaultScope) {=0A=
    if (this.override) {=0A=
        if (this.override =3D=3D=3D true) {=0A=
            return this.obj;=0A=
        } else {=0A=
            return this.override;=0A=
        }=0A=
    }=0A=
    return defaultScope;=0A=
};=0A=
=0A=
/**=0A=
 * Returns true if the fn and obj match this objects properties.=0A=
 * Used by the unsubscribe method to match the right subscriber.=0A=
 *=0A=
 * @method contains=0A=
 * @param {Function} fn the function to execute=0A=
 * @param {Object} obj an object to be passed along when the event fires=0A=
 * @return {boolean} true if the supplied arguments match this =0A=
 *                   subscriber's signature.=0A=
 */=0A=
YAHOO.util.Subscriber.prototype.contains =3D function(fn, obj) {=0A=
    if (obj) {=0A=
        return (this.fn =3D=3D fn && this.obj =3D=3D obj);=0A=
    } else {=0A=
        return (this.fn =3D=3D fn);=0A=
    }=0A=
};=0A=
=0A=
/**=0A=
 * @method toString=0A=
 */=0A=
YAHOO.util.Subscriber.prototype.toString =3D function() {=0A=
    return "Subscriber { obj: " + this.obj  + =0A=
           ", override: " +  (this.override || "no") + " }";=0A=
};=0A=
=0A=
/**=0A=
 * The Event Utility provides utilities for managing DOM Events and tools=0A=
 * for building event systems=0A=
 *=0A=
 * @module event=0A=
 * @title Event Utility=0A=
 * @namespace YAHOO.util=0A=
 * @requires yahoo=0A=
 */=0A=
=0A=
// The first instance of Event will win if it is loaded more than once.=0A=
// @TODO this needs to be changed so that only the state data that needs =
to=0A=
// be preserved is kept, while methods are overwritten/added as needed.=0A=
// This means that the module pattern can't be used.=0A=
if (!YAHOO.util.Event) {=0A=
=0A=
/**=0A=
 * The event utility provides functions to add and remove event =
listeners,=0A=
 * event cleansing.  It also tries to automatically remove listeners it=0A=
 * registers during the unload event.=0A=
 *=0A=
 * @class Event=0A=
 * @static=0A=
 */=0A=
    YAHOO.util.Event =3D function() {=0A=
=0A=
        /**=0A=
         * True after the onload event has fired=0A=
         * @property loadComplete=0A=
         * @type boolean=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var loadComplete =3D  false;=0A=
=0A=
        /**=0A=
         * Cache of wrapped listeners=0A=
         * @property listeners=0A=
         * @type array=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var listeners =3D [];=0A=
=0A=
        /**=0A=
         * User-defined unload function that will be fired before all =
events=0A=
         * are detached=0A=
         * @property unloadListeners=0A=
         * @type array=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var unloadListeners =3D [];=0A=
=0A=
        /**=0A=
         * Cache of DOM0 event handlers to work around issues with DOM2 =
events=0A=
         * in Safari=0A=
         * @property legacyEvents=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var legacyEvents =3D [];=0A=
=0A=
        /**=0A=
         * Listener stack for DOM0 events=0A=
         * @property legacyHandlers=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var legacyHandlers =3D [];=0A=
=0A=
        /**=0A=
         * The number of times to poll after window.onload.  This number =
is=0A=
         * increased if additional late-bound handlers are requested =
after=0A=
         * the page load.=0A=
         * @property retryCount=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var retryCount =3D 0;=0A=
=0A=
        /**=0A=
         * onAvailable listeners=0A=
         * @property onAvailStack=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var onAvailStack =3D [];=0A=
=0A=
        /**=0A=
         * Lookup table for legacy events=0A=
         * @property legacyMap=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var legacyMap =3D [];=0A=
=0A=
        /**=0A=
         * Counter for auto id generation=0A=
         * @property counter=0A=
         * @static=0A=
         * @private=0A=
         */=0A=
        var counter =3D 0;=0A=
        =0A=
        /**=0A=
         * Normalized keycodes for webkit/safari=0A=
         * @property webkitKeymap=0A=
         * @type {int: int}=0A=
         * @private=0A=
         * @static=0A=
         * @final=0A=
         */=0A=
        var webkitKeymap =3D {=0A=
            63232: 38, // up=0A=
            63233: 40, // down=0A=
            63234: 37, // left=0A=
            63235: 39, // right=0A=
            63276: 33, // page up=0A=
            63277: 34, // page down=0A=
            25: 9      // SHIFT-TAB (Safari provides a different key =
code in=0A=
                       // this case, even though the shiftKey modifier =
is set)=0A=
        };=0A=
=0A=
        return {=0A=
=0A=
            /**=0A=
             * The number of times we should look for elements that are =
not=0A=
             * in the DOM at the time the event is requested after the =
document=0A=
             * has been loaded.  The default is 2000@amp;20 ms, so it =
will poll=0A=
             * for 40 seconds or until all outstanding handlers are bound=0A=
             * (whichever comes first).=0A=
             * @property POLL_RETRYS=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            POLL_RETRYS: 2000,=0A=
=0A=
            /**=0A=
             * The poll interval in milliseconds=0A=
             * @property POLL_INTERVAL=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            POLL_INTERVAL: 20,=0A=
=0A=
            /**=0A=
             * Element to bind, int constant=0A=
             * @property EL=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            EL: 0,=0A=
=0A=
            /**=0A=
             * Type of event, int constant=0A=
             * @property TYPE=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            TYPE: 1,=0A=
=0A=
            /**=0A=
             * Function to execute, int constant=0A=
             * @property FN=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            FN: 2,=0A=
=0A=
            /**=0A=
             * Function wrapped for scope correction and cleanup, int =
constant=0A=
             * @property WFN=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            WFN: 3,=0A=
=0A=
            /**=0A=
             * Object passed in by the user that will be returned as a =0A=
             * parameter to the callback, int constant.  Specific to=0A=
             * unload listeners=0A=
             * @property OBJ=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            UNLOAD_OBJ: 3,=0A=
=0A=
            /**=0A=
             * Adjusted scope, either the element we are registering the =
event=0A=
             * on or the custom object passed in by the listener, int =
constant=0A=
             * @property ADJ_SCOPE=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            ADJ_SCOPE: 4,=0A=
=0A=
            /**=0A=
             * The original obj passed into addListener=0A=
             * @property OBJ=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            OBJ: 5,=0A=
=0A=
            /**=0A=
             * The original scope parameter passed into addListener=0A=
             * @property OVERRIDE=0A=
             * @type int=0A=
             * @static=0A=
             * @final=0A=
             */=0A=
            OVERRIDE: 6,=0A=
=0A=
            /**=0A=
             * addListener/removeListener can throw errors in unexpected =
scenarios.=0A=
             * These errors are suppressed, the method returns false, =
and this property=0A=
             * is set=0A=
             * @property lastError=0A=
             * @static=0A=
             * @type Error=0A=
             */=0A=
            lastError: null,=0A=
=0A=
            /**=0A=
             * Safari detection=0A=
             * @property isSafari=0A=
             * @private=0A=
             * @static=0A=
             * @deprecated use YAHOO.env.ua.webkit=0A=
             */=0A=
            isSafari: YAHOO.env.ua.webkit,=0A=
            =0A=
            /**=0A=
             * webkit version=0A=
             * @property webkit=0A=
             * @type string=0A=
             * @private=0A=
             * @static=0A=
             * @deprecated use YAHOO.env.ua.webkit=0A=
             */=0A=
            webkit: YAHOO.env.ua.webkit,=0A=
            =0A=
            /**=0A=
             * IE detection =0A=
             * @property isIE=0A=
             * @private=0A=
             * @static=0A=
             * @deprecated use YAHOO.env.ua.ie=0A=
             */=0A=
            isIE: YAHOO.env.ua.ie,=0A=
=0A=
            /**=0A=
             * poll handle=0A=
             * @property _interval=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _interval: null,=0A=
=0A=
            /**=0A=
             * document readystate poll handle=0A=
             * @property _dri=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
             _dri: null,=0A=
=0A=
            /**=0A=
             * True when the document is initially usable=0A=
             * @property DOMReady=0A=
             * @type boolean=0A=
             * @static=0A=
             */=0A=
            DOMReady: false,=0A=
=0A=
            /**=0A=
             * @method startInterval=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            startInterval: function() {=0A=
                if (!this._interval) {=0A=
                    var self =3D this;=0A=
                    var callback =3D function() { =
self._tryPreloadAttach(); };=0A=
                    this._interval =3D setInterval(callback, =
this.POLL_INTERVAL);=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Executes the supplied callback when the item with the =
supplied=0A=
             * id is found.  This is meant to be used to execute =
behavior as=0A=
             * soon as possible as the page loads.  If you use this =
after the=0A=
             * initial page load it will poll for a fixed time for the =
element.=0A=
             * The number of times it will poll and the frequency are=0A=
             * configurable.  By default it will poll for 10 seconds.=0A=
             *=0A=
             * <p>The callback is executed with a single parameter:=0A=
             * the custom object parameter, if provided.</p>=0A=
             *=0A=
             * @method onAvailable=0A=
             *=0A=
             * @param {string||string[]}   p_id the id of the element, =
or an array=0A=
             * of ids to look for.=0A=
             * @param {function} p_fn what to execute when the element =
is found.=0A=
             * @param {object}   p_obj an optional object to be passed =
back as=0A=
             *                   a parameter to p_fn.=0A=
             * @param {boolean|object}  p_override If set to true, p_fn =
will execute=0A=
             *                   in the scope of p_obj, if set to an =
object it=0A=
             *                   will execute in the scope of that object=0A=
             * @param checkContent {boolean} check child node readiness =
(onContentReady)=0A=
             * @static=0A=
             */=0A=
            onAvailable: function(p_id, p_fn, p_obj, p_override, =
checkContent) {=0A=
=0A=
                var a =3D (YAHOO.lang.isString(p_id)) ? [p_id] : p_id;=0A=
=0A=
                for (var i=3D0; i<a.length; i=3Di+1) {=0A=
                    onAvailStack.push({id:         a[i], =0A=
                                       fn:         p_fn, =0A=
                                       obj:        p_obj, =0A=
                                       override:   p_override, =0A=
                                       checkReady: checkContent });=0A=
                }=0A=
=0A=
                retryCount =3D this.POLL_RETRYS;=0A=
=0A=
                this.startInterval();=0A=
            },=0A=
=0A=
            /**=0A=
             * Works the same way as onAvailable, but additionally =
checks the=0A=
             * state of sibling elements to determine if the content of =
the=0A=
             * available element is safe to modify.=0A=
             *=0A=
             * <p>The callback is executed with a single parameter:=0A=
             * the custom object parameter, if provided.</p>=0A=
             *=0A=
             * @method onContentReady=0A=
             *=0A=
             * @param {string}   p_id the id of the element to look for.=0A=
             * @param {function} p_fn what to execute when the element =
is ready.=0A=
             * @param {object}   p_obj an optional object to be passed =
back as=0A=
             *                   a parameter to p_fn.=0A=
             * @param {boolean|object}  p_override If set to true, p_fn =
will execute=0A=
             *                   in the scope of p_obj.  If an object, =
p_fn will=0A=
             *                   exectute in the scope of that object=0A=
             *=0A=
             * @static=0A=
             */=0A=
            onContentReady: function(p_id, p_fn, p_obj, p_override) {=0A=
                this.onAvailable(p_id, p_fn, p_obj, p_override, true);=0A=
            },=0A=
=0A=
            /**=0A=
             * Executes the supplied callback when the DOM is first =
usable.  This=0A=
             * will execute immediately if called after the DOMReady =
event has=0A=
             * fired.   @todo the DOMContentReady event does not fire =
when the=0A=
             * script is dynamically injected into the page.  This means =
the=0A=
             * DOMReady custom event will never fire in FireFox or Opera =
when the=0A=
             * library is injected.  It _will_ fire in Safari, and the =
IE =0A=
             * implementation would allow for us to fire it if the =
defered script=0A=
             * is not available.  We want this to behave the same in all =
browsers.=0A=
             * Is there a way to identify when the script has been =
injected =0A=
             * instead of included inline?  Is there a way to know =
whether the =0A=
             * window onload event has fired without having had a =
listener attached =0A=
             * to it when it did so?=0A=
             *=0A=
             * <p>The callback is a CustomEvent, so the signature is:</p>=0A=
             * <p>type &lt;string&gt;, args &lt;array&gt;, customobject =
&lt;object&gt;</p>=0A=
             * <p>For DOMReady events, there are no fire argments, so the=0A=
             * signature is:</p>=0A=
             * <p>"DOMReady", [], obj</p>=0A=
             *=0A=
             *=0A=
             * @method onDOMReady=0A=
             *=0A=
             * @param {function} p_fn what to execute when the element =
is found.=0A=
             * @param {object}   p_obj an optional object to be passed =
back as=0A=
             *                   a parameter to p_fn.=0A=
             * @param {boolean|object}  p_scope If set to true, p_fn =
will execute=0A=
             *                   in the scope of p_obj, if set to an =
object it=0A=
             *                   will execute in the scope of that object=0A=
             *=0A=
             * @static=0A=
             */=0A=
            onDOMReady: function(p_fn, p_obj, p_override) {=0A=
                if (this.DOMReady) {=0A=
                    setTimeout(function() {=0A=
                        var s =3D window;=0A=
                        if (p_override) {=0A=
                            if (p_override =3D=3D=3D true) {=0A=
                                s =3D p_obj;=0A=
                            } else {=0A=
                                s =3D p_override;=0A=
                            }=0A=
                        }=0A=
                        p_fn.call(s, "DOMReady", [], p_obj);=0A=
                    }, 0);=0A=
                } else {=0A=
                    this.DOMReadyEvent.subscribe(p_fn, p_obj, =
p_override);=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Appends an event handler=0A=
             *=0A=
             * @method addListener=0A=
             *=0A=
             * @param {String|HTMLElement|Array|NodeList} el An id, an =
element =0A=
             *  reference, or a collection of ids and/or elements to =
assign the =0A=
             *  listener to.=0A=
             * @param {String}   sType     The type of event to append=0A=
             * @param {Function} fn        The method the event invokes=0A=
             * @param {Object}   obj    An arbitrary object that will be =0A=
             *                             passed as a parameter to the =
handler=0A=
             * @param {Boolean|object}  override  If true, the obj =
passed in becomes=0A=
             *                             the execution scope of the =
listener. If an=0A=
             *                             object, this object becomes =
the execution=0A=
             *                             scope.=0A=
             * @return {Boolean} True if the action was successful or =
defered,=0A=
             *                        false if one or more of the =
elements =0A=
             *                        could not have the listener =
attached,=0A=
             *                        or if the operation throws an =
exception.=0A=
             * @static=0A=
             */=0A=
            addListener: function(el, sType, fn, obj, override) {=0A=
=0A=
                if (!fn || !fn.call) {=0A=
                    return false;=0A=
                }=0A=
=0A=
                // The el argument can be an array of elements or =
element ids.=0A=
                if ( this._isValidCollection(el)) {=0A=
                    var ok =3D true;=0A=
                    for (var i=3D0,len=3Del.length; i<len; ++i) {=0A=
                        ok =3D this.on(el[i], =0A=
                                       sType, =0A=
                                       fn, =0A=
                                       obj, =0A=
                                       override) && ok;=0A=
                    }=0A=
                    return ok;=0A=
=0A=
                } else if (YAHOO.lang.isString(el)) {=0A=
                    var oEl =3D this.getEl(el);=0A=
                    // If the el argument is a string, we assume it is =0A=
                    // actually the id of the element.  If the page is =
loaded=0A=
                    // we convert el to the actual element, otherwise we =0A=
                    // defer attaching the event until onload event fires=0A=
=0A=
                    // check to see if we need to delay hooking up the =
event =0A=
                    // until after the page loads.=0A=
                    if (oEl) {=0A=
                        el =3D oEl;=0A=
                    } else {=0A=
                        // defer adding the event until the element is =
available=0A=
                        this.onAvailable(el, function() {=0A=
                           YAHOO.util.Event.on(el, sType, fn, obj, =
override);=0A=
                        });=0A=
=0A=
                        return true;=0A=
                    }=0A=
                }=0A=
=0A=
                // Element should be an html element or an array if we =
get =0A=
                // here.=0A=
                if (!el) {=0A=
                    return false;=0A=
                }=0A=
=0A=
                // we need to make sure we fire registered unload events =0A=
                // prior to automatically unhooking them.  So we hang on =
to =0A=
                // these instead of attaching them to the window and =
fire the=0A=
                // handles explicitly during our one unload event.=0A=
                if ("unload" =3D=3D sType && obj !=3D=3D this) {=0A=
                    unloadListeners[unloadListeners.length] =3D=0A=
                            [el, sType, fn, obj, override];=0A=
                    return true;=0A=
                }=0A=
=0A=
=0A=
                // if the user chooses to override the scope, we use the =
custom=0A=
                // object passed in, otherwise the executing scope will =
be the=0A=
                // HTML element that the event is registered on=0A=
                var scope =3D el;=0A=
                if (override) {=0A=
                    if (override =3D=3D=3D true) {=0A=
                        scope =3D obj;=0A=
                    } else {=0A=
                        scope =3D override;=0A=
                    }=0A=
                }=0A=
=0A=
                // wrap the function so we can return the obj object when=0A=
                // the event fires;=0A=
                var wrappedFn =3D function(e) {=0A=
                        return fn.call(scope, =
YAHOO.util.Event.getEvent(e, el), =0A=
                                obj);=0A=
                    };=0A=
=0A=
                var li =3D [el, sType, fn, wrappedFn, scope, obj, =
override];=0A=
                var index =3D listeners.length;=0A=
                // cache the listener so we can try to automatically =
unload=0A=
                listeners[index] =3D li;=0A=
=0A=
                if (this.useLegacyEvent(el, sType)) {=0A=
                    var legacyIndex =3D this.getLegacyIndex(el, sType);=0A=
=0A=
                    // Add a new dom0 wrapper if one is not detected for =
this=0A=
                    // element=0A=
                    if ( legacyIndex =3D=3D -1 || =0A=
                                el !=3D legacyEvents[legacyIndex][0] ) {=0A=
=0A=
                        legacyIndex =3D legacyEvents.length;=0A=
                        legacyMap[el.id + sType] =3D legacyIndex;=0A=
=0A=
                        // cache the signature for the DOM0 event, and =0A=
                        // include the existing handler for the event, =
if any=0A=
                        legacyEvents[legacyIndex] =3D =0A=
                            [el, sType, el["on" + sType]];=0A=
                        legacyHandlers[legacyIndex] =3D [];=0A=
=0A=
                        el["on" + sType] =3D =0A=
                            function(e) {=0A=
                                YAHOO.util.Event.fireLegacyEvent(=0A=
                                    YAHOO.util.Event.getEvent(e), =
legacyIndex);=0A=
                            };=0A=
                    }=0A=
=0A=
                    // add a reference to the wrapped listener to our =
custom=0A=
                    // stack of events=0A=
                    //legacyHandlers[legacyIndex].push(index);=0A=
                    legacyHandlers[legacyIndex].push(li);=0A=
=0A=
                } else {=0A=
                    try {=0A=
                        this._simpleAdd(el, sType, wrappedFn, false);=0A=
                    } catch(ex) {=0A=
                        // handle an error trying to attach an event.  =
If it fails=0A=
                        // we need to clean up the cache=0A=
                        this.lastError =3D ex;=0A=
                        this.removeListener(el, sType, fn);=0A=
                        return false;=0A=
                    }=0A=
                }=0A=
=0A=
                return true;=0A=
                =0A=
            },=0A=
=0A=
            /**=0A=
             * When using legacy events, the handler is routed to this =
object=0A=
             * so we can fire our custom listener stack.=0A=
             * @method fireLegacyEvent=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            fireLegacyEvent: function(e, legacyIndex) {=0A=
                var ok=3Dtrue, le, lh, li, scope, ret;=0A=
                =0A=
                lh =3D legacyHandlers[legacyIndex].slice();=0A=
                for (var i=3D0, len=3Dlh.length; i<len; ++i) {=0A=
                // for (var i in lh.length) {=0A=
                    li =3D lh[i];=0A=
                    if ( li && li[this.WFN] ) {=0A=
                        scope =3D li[this.ADJ_SCOPE];=0A=
                        ret =3D li[this.WFN].call(scope, e);=0A=
                        ok =3D (ok && ret);=0A=
                    }=0A=
                }=0A=
=0A=
                // Fire the original handler if we replaced one.  We =
fire this=0A=
                // after the other events to keep =
stopPropagation/preventDefault=0A=
                // that happened in the DOM0 handler from touching our =
DOM2=0A=
                // substitute=0A=
                le =3D legacyEvents[legacyIndex];=0A=
                if (le && le[2]) {=0A=
                    le[2](e);=0A=
                }=0A=
                =0A=
                return ok;=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the legacy event index that matches the supplied =0A=
             * signature=0A=
             * @method getLegacyIndex=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            getLegacyIndex: function(el, sType) {=0A=
                var key =3D this.generateId(el) + sType;=0A=
                if (typeof legacyMap[key] =3D=3D "undefined") { =0A=
                    return -1;=0A=
                } else {=0A=
                    return legacyMap[key];=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Logic that determines when we should automatically use =
legacy=0A=
             * events instead of DOM2 events.  Currently this is limited =
to old=0A=
             * Safari browsers with a broken preventDefault=0A=
             * @method useLegacyEvent=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            useLegacyEvent: function(el, sType) {=0A=
                if (this.webkit && ("click"=3D=3DsType || =
"dblclick"=3D=3DsType)) {=0A=
                    var v =3D parseInt(this.webkit, 10);=0A=
                    if (!isNaN(v) && v<418) {=0A=
                        return true;=0A=
                    }=0A=
                }=0A=
                return false;=0A=
            },=0A=
                    =0A=
            /**=0A=
             * Removes an event listener=0A=
             *=0A=
             * @method removeListener=0A=
             *=0A=
             * @param {String|HTMLElement|Array|NodeList} el An id, an =
element =0A=
             *  reference, or a collection of ids and/or elements to =
remove=0A=
             *  the listener from.=0A=
             * @param {String} sType the type of event to remove.=0A=
             * @param {Function} fn the method the event invokes.  If fn =
is=0A=
             *  undefined, then all event handlers for the type of event =
are =0A=
             *  removed.=0A=
             * @return {boolean} true if the unbind was successful, =
false =0A=
             *  otherwise.=0A=
             * @static=0A=
             */=0A=
            removeListener: function(el, sType, fn) {=0A=
                var i, len, li;=0A=
=0A=
                // The el argument can be a string=0A=
                if (typeof el =3D=3D "string") {=0A=
                    el =3D this.getEl(el);=0A=
                // The el argument can be an array of elements or =
element ids.=0A=
                } else if ( this._isValidCollection(el)) {=0A=
                    var ok =3D true;=0A=
                    for (i=3Del.length-1; i>-1; i--) {=0A=
                        ok =3D ( this.removeListener(el[i], sType, fn) =
&& ok );=0A=
                    }=0A=
                    return ok;=0A=
                }=0A=
=0A=
                if (!fn || !fn.call) {=0A=
                    //return false;=0A=
                    return this.purgeElement(el, false, sType);=0A=
                }=0A=
=0A=
                if ("unload" =3D=3D sType) {=0A=
=0A=
                    for (i=3DunloadListeners.length-1; i>-1; i--) {=0A=
                        li =3D unloadListeners[i];=0A=
                        if (li && =0A=
                            li[0] =3D=3D el && =0A=
                            li[1] =3D=3D sType && =0A=
                            li[2] =3D=3D fn) {=0A=
                                unloadListeners.splice(i, 1);=0A=
                                // unloadListeners[i]=3Dnull;=0A=
                                return true;=0A=
                        }=0A=
                    }=0A=
=0A=
                    return false;=0A=
                }=0A=
=0A=
                var cacheItem =3D null;=0A=
=0A=
                // The index is a hidden parameter; needed to remove it =
from=0A=
                // the method signature because it was tempting users to=0A=
                // try and take advantage of it, which is not possible.=0A=
                var index =3D arguments[3];=0A=
  =0A=
                if ("undefined" =3D=3D=3D typeof index) {=0A=
                    index =3D this._getCacheIndex(el, sType, fn);=0A=
                }=0A=
=0A=
                if (index >=3D 0) {=0A=
                    cacheItem =3D listeners[index];=0A=
                }=0A=
=0A=
                if (!el || !cacheItem) {=0A=
                    return false;=0A=
                }=0A=
=0A=
=0A=
                if (this.useLegacyEvent(el, sType)) {=0A=
                    var legacyIndex =3D this.getLegacyIndex(el, sType);=0A=
                    var llist =3D legacyHandlers[legacyIndex];=0A=
                    if (llist) {=0A=
                        for (i=3D0, len=3Dllist.length; i<len; ++i) {=0A=
                        // for (i in llist.length) {=0A=
                            li =3D llist[i];=0A=
                            if (li && =0A=
                                li[this.EL] =3D=3D el && =0A=
                                li[this.TYPE] =3D=3D sType && =0A=
                                li[this.FN] =3D=3D fn) {=0A=
                                    llist.splice(i, 1);=0A=
                                    // llist[i]=3Dnull;=0A=
                                    break;=0A=
                            }=0A=
                        }=0A=
                    }=0A=
=0A=
                } else {=0A=
                    try {=0A=
                        this._simpleRemove(el, sType, =
cacheItem[this.WFN], false);=0A=
                    } catch(ex) {=0A=
                        this.lastError =3D ex;=0A=
                        return false;=0A=
                    }=0A=
                }=0A=
=0A=
                // removed the wrapped handler=0A=
                delete listeners[index][this.WFN];=0A=
                delete listeners[index][this.FN];=0A=
                listeners.splice(index, 1);=0A=
                // listeners[index]=3Dnull;=0A=
=0A=
                return true;=0A=
=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the event's target element.  Safari sometimes =
provides=0A=
             * a text node, and this is automatically resolved to the =
text=0A=
             * node's parent so that it behaves like other browsers.=0A=
             * @method getTarget=0A=
             * @param {Event} ev the event=0A=
             * @param {boolean} resolveTextNode when set to true the =
target's=0A=
             *                  parent will be returned if the target is =
a =0A=
             *                  text node.  @deprecated, the text node is=0A=
             *                  now resolved automatically=0A=
             * @return {HTMLElement} the event's target=0A=
             * @static=0A=
             */=0A=
            getTarget: function(ev, resolveTextNode) {=0A=
                var t =3D ev.target || ev.srcElement;=0A=
                return this.resolveTextNode(t);=0A=
            },=0A=
=0A=
            /**=0A=
             * In some cases, some browsers will return a text node =
inside=0A=
             * the actual element that was targeted.  This normalizes the=0A=
             * return value for getTarget and getRelatedTarget.=0A=
             * @method resolveTextNode=0A=
             * @param {HTMLElement} node node to resolve=0A=
             * @return {HTMLElement} the normized node=0A=
             * @static=0A=
             */=0A=
            resolveTextNode: function(n) {=0A=
                try {=0A=
                    if (n && 3 =3D=3D n.nodeType) {=0A=
                        return n.parentNode;=0A=
                    }=0A=
                } catch(e) { }=0A=
=0A=
                return n;=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the event's pageX=0A=
             * @method getPageX=0A=
             * @param {Event} ev the event=0A=
             * @return {int} the event's pageX=0A=
             * @static=0A=
             */=0A=
            getPageX: function(ev) {=0A=
                var x =3D ev.pageX;=0A=
                if (!x && 0 !=3D=3D x) {=0A=
                    x =3D ev.clientX || 0;=0A=
=0A=
                    if ( this.isIE ) {=0A=
                        x +=3D this._getScrollLeft();=0A=
                    }=0A=
                }=0A=
=0A=
                return x;=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the event's pageY=0A=
             * @method getPageY=0A=
             * @param {Event} ev the event=0A=
             * @return {int} the event's pageY=0A=
             * @static=0A=
             */=0A=
            getPageY: function(ev) {=0A=
                var y =3D ev.pageY;=0A=
                if (!y && 0 !=3D=3D y) {=0A=
                    y =3D ev.clientY || 0;=0A=
=0A=
                    if ( this.isIE ) {=0A=
                        y +=3D this._getScrollTop();=0A=
                    }=0A=
                }=0A=
=0A=
=0A=
                return y;=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the pageX and pageY properties as an indexed =
array.=0A=
             * @method getXY=0A=
             * @param {Event} ev the event=0A=
             * @return {[x, y]} the pageX and pageY properties of the =
event=0A=
             * @static=0A=
             */=0A=
            getXY: function(ev) {=0A=
                return [this.getPageX(ev), this.getPageY(ev)];=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the event's related target =0A=
             * @method getRelatedTarget=0A=
             * @param {Event} ev the event=0A=
             * @return {HTMLElement} the event's relatedTarget=0A=
             * @static=0A=
             */=0A=
            getRelatedTarget: function(ev) {=0A=
                var t =3D ev.relatedTarget;=0A=
                if (!t) {=0A=
                    if (ev.type =3D=3D "mouseout") {=0A=
                        t =3D ev.toElement;=0A=
                    } else if (ev.type =3D=3D "mouseover") {=0A=
                        t =3D ev.fromElement;=0A=
                    }=0A=
                }=0A=
=0A=
                return this.resolveTextNode(t);=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the time of the event.  If the time is not =
included, the=0A=
             * event is modified using the current time.=0A=
             * @method getTime=0A=
             * @param {Event} ev the event=0A=
             * @return {Date} the time of the event=0A=
             * @static=0A=
             */=0A=
            getTime: function(ev) {=0A=
                if (!ev.time) {=0A=
                    var t =3D new Date().getTime();=0A=
                    try {=0A=
                        ev.time =3D t;=0A=
                    } catch(ex) { =0A=
                        this.lastError =3D ex;=0A=
                        return t;=0A=
                    }=0A=
                }=0A=
=0A=
                return ev.time;=0A=
            },=0A=
=0A=
            /**=0A=
             * Convenience method for stopPropagation + preventDefault=0A=
             * @method stopEvent=0A=
             * @param {Event} ev the event=0A=
             * @static=0A=
             */=0A=
            stopEvent: function(ev) {=0A=
                this.stopPropagation(ev);=0A=
                this.preventDefault(ev);=0A=
            },=0A=
=0A=
            /**=0A=
             * Stops event propagation=0A=
             * @method stopPropagation=0A=
             * @param {Event} ev the event=0A=
             * @static=0A=
             */=0A=
            stopPropagation: function(ev) {=0A=
                if (ev.stopPropagation) {=0A=
                    ev.stopPropagation();=0A=
                } else {=0A=
                    ev.cancelBubble =3D true;=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Prevents the default behavior of the event=0A=
             * @method preventDefault=0A=
             * @param {Event} ev the event=0A=
             * @static=0A=
             */=0A=
            preventDefault: function(ev) {=0A=
                if (ev.preventDefault) {=0A=
                    ev.preventDefault();=0A=
                } else {=0A=
                    ev.returnValue =3D false;=0A=
                }=0A=
            },=0A=
             =0A=
            /**=0A=
             * Finds the event in the window object, the caller's =
arguments, or=0A=
             * in the arguments of another method in the callstack.  =
This is=0A=
             * executed automatically for events registered through the =
event=0A=
             * manager, so the implementer should not normally need to =
execute=0A=
             * this function at all.=0A=
             * @method getEvent=0A=
             * @param {Event} e the event parameter from the handler=0A=
             * @param {HTMLElement} boundEl the element the listener is =
attached to=0A=
             * @return {Event} the event =0A=
             * @static=0A=
             */=0A=
            getEvent: function(e, boundEl) {=0A=
                var ev =3D e || window.event;=0A=
=0A=
                if (!ev) {=0A=
                    var c =3D this.getEvent.caller;=0A=
                    while (c) {=0A=
                        ev =3D c.arguments[0];=0A=
                        if (ev && Event =3D=3D ev.constructor) {=0A=
                            break;=0A=
                        }=0A=
                        c =3D c.caller;=0A=
                    }=0A=
                }=0A=
=0A=
                return ev;=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the charcode for an event=0A=
             * @method getCharCode=0A=
             * @param {Event} ev the event=0A=
             * @return {int} the event's charCode=0A=
             * @static=0A=
             */=0A=
            getCharCode: function(ev) {=0A=
                var code =3D ev.keyCode || ev.charCode || 0;=0A=
=0A=
                // webkit key normalization=0A=
                if (YAHOO.env.ua.webkit && (code in webkitKeymap)) {=0A=
                    code =3D webkitKeymap[code];=0A=
                }=0A=
                return code;=0A=
            },=0A=
=0A=
            /**=0A=
             * Locating the saved event handler data by function ref=0A=
             *=0A=
             * @method _getCacheIndex=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _getCacheIndex: function(el, sType, fn) {=0A=
                for (var i=3D0, l=3Dlisteners.length; i<l; i=3Di+1) {=0A=
                    var li =3D listeners[i];=0A=
                    if ( li                 && =0A=
                         li[this.FN] =3D=3D fn  && =0A=
                         li[this.EL] =3D=3D el  && =0A=
                         li[this.TYPE] =3D=3D sType ) {=0A=
                        return i;=0A=
                    }=0A=
                }=0A=
=0A=
                return -1;=0A=
            },=0A=
=0A=
            /**=0A=
             * Generates an unique ID for the element if it does not =
already =0A=
             * have one.=0A=
             * @method generateId=0A=
             * @param el the element to create the id for=0A=
             * @return {string} the resulting id of the element=0A=
             * @static=0A=
             */=0A=
            generateId: function(el) {=0A=
                var id =3D el.id;=0A=
=0A=
                if (!id) {=0A=
                    id =3D "yuievtautoid-" + counter;=0A=
                    ++counter;=0A=
                    el.id =3D id;=0A=
                }=0A=
=0A=
                return id;=0A=
            },=0A=
=0A=
=0A=
            /**=0A=
             * We want to be able to use getElementsByTagName as a =
collection=0A=
             * to attach a group of events to.  Unfortunately, different =0A=
             * browsers return different types of collections.  This =
function=0A=
             * tests to determine if the object is array-like.  It will =
also =0A=
             * fail if the object is an array, but is empty.=0A=
             * @method _isValidCollection=0A=
             * @param o the object to test=0A=
             * @return {boolean} true if the object is array-like and =
populated=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _isValidCollection: function(o) {=0A=
                try {=0A=
                    return ( o                     && // o is something=0A=
                             typeof o !=3D=3D "string" && // o is not a =
string=0A=
                             o.length              && // o is indexed=0A=
                             !o.tagName            && // o is not an =
HTML element=0A=
                             !o.alert              && // o is not a =
window=0A=
                             typeof o[0] !=3D=3D "undefined" );=0A=
                } catch(ex) {=0A=
                    return false;=0A=
                }=0A=
=0A=
            },=0A=
=0A=
            /**=0A=
             * @private=0A=
             * @property elCache=0A=
             * DOM element cache=0A=
             * @static=0A=
             * @deprecated Elements are not cached due to issues that =
arise when=0A=
             * elements are removed and re-added=0A=
             */=0A=
            elCache: {},=0A=
=0A=
            /**=0A=
             * We cache elements bound by id because when the unload =
event =0A=
             * fires, we can no longer use document.getElementById=0A=
             * @method getEl=0A=
             * @static=0A=
             * @private=0A=
             * @deprecated Elements are not cached any longer=0A=
             */=0A=
            getEl: function(id) {=0A=
                return (typeof id =3D=3D=3D "string") ? =
document.getElementById(id) : id;=0A=
            },=0A=
=0A=
            /**=0A=
             * Clears the element cache=0A=
             * @deprecated Elements are not cached any longer=0A=
             * @method clearCache=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            clearCache: function() { },=0A=
=0A=
            /**=0A=
             * Custom event the fires when the dom is initially usable=0A=
             * @event DOMReadyEvent=0A=
             */=0A=
            DOMReadyEvent: new YAHOO.util.CustomEvent("DOMReady", this),=0A=
=0A=
            /**=0A=
             * hook up any deferred listeners=0A=
             * @method _load=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _load: function(e) {=0A=
=0A=
                if (!loadComplete) {=0A=
                    loadComplete =3D true;=0A=
                    var EU =3D YAHOO.util.Event;=0A=
=0A=
                    // Just in case DOMReady did not go off for some =
reason=0A=
                    EU._ready();=0A=
=0A=
                    // Available elements may not have been detected =
before the=0A=
                    // window load event fires. Try to find them now so =
that the=0A=
                    // the user is more likely to get the onAvailable =
notifications=0A=
                    // before the window load notification=0A=
                    EU._tryPreloadAttach();=0A=
=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Fires the DOMReady event listeners the first time the =
document is=0A=
             * usable.=0A=
             * @method _ready=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _ready: function(e) {=0A=
                var EU =3D YAHOO.util.Event;=0A=
                if (!EU.DOMReady) {=0A=
                    EU.DOMReady=3Dtrue;=0A=
=0A=
                    // Fire the content ready custom event=0A=
                    EU.DOMReadyEvent.fire();=0A=
=0A=
                    // Remove the DOMContentLoaded (FF/Opera)=0A=
                    EU._simpleRemove(document, "DOMContentLoaded", =
EU._ready);=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Polling function that runs before the onload event fires, =0A=
             * attempting to attach to DOM Nodes as soon as they are =0A=
             * available=0A=
             * @method _tryPreloadAttach=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _tryPreloadAttach: function() {=0A=
=0A=
                if (onAvailStack.length =3D=3D=3D 0) {=0A=
                    retryCount =3D 0;=0A=
                    clearInterval(this._interval);=0A=
                    this._interval =3D null;=0A=
                    return;=0A=
                }=0A=
=0A=
                if (this.locked) {=0A=
                    return;=0A=
                }=0A=
=0A=
                if (this.isIE) {=0A=
                    // Hold off if DOMReady has not fired and check =
current=0A=
                    // readyState to protect against the IE operation =
aborted=0A=
                    // issue.=0A=
                    if (!this.DOMReady) {=0A=
                        this.startInterval();=0A=
                        return;=0A=
                    }=0A=
                }=0A=
=0A=
                this.locked =3D true;=0A=
=0A=
=0A=
                // keep trying until after the page is loaded.  We need =
to =0A=
                // check the page load state prior to trying to bind the =0A=
                // elements so that we can be certain all elements have =
been =0A=
                // tested appropriately=0A=
                var tryAgain =3D !loadComplete;=0A=
                if (!tryAgain) {=0A=
                    tryAgain =3D (retryCount > 0 && onAvailStack.length =
> 0);=0A=
                }=0A=
=0A=
                // onAvailable=0A=
                var notAvail =3D [];=0A=
=0A=
                var executeItem =3D function (el, item) {=0A=
                    var scope =3D el;=0A=
                    if (item.override) {=0A=
                        if (item.override =3D=3D=3D true) {=0A=
                            scope =3D item.obj;=0A=
                        } else {=0A=
                            scope =3D item.override;=0A=
                        }=0A=
                    }=0A=
                    item.fn.call(scope, item.obj);=0A=
                };=0A=
=0A=
                var i, len, item, el, ready=3D[];=0A=
=0A=
                // onAvailable onContentReady=0A=
                for (i=3D0, len=3DonAvailStack.length; i<len; i=3Di+1) {=0A=
                    item =3D onAvailStack[i];=0A=
                    if (item) {=0A=
                        el =3D this.getEl(item.id);=0A=
                        if (el) {=0A=
                            if (item.checkReady) {=0A=
                                if (loadComplete || el.nextSibling || =
!tryAgain) {=0A=
                                    ready.push(item);=0A=
                                    onAvailStack[i] =3D null;=0A=
                                }=0A=
                            } else {=0A=
                                executeItem(el, item);=0A=
                                onAvailStack[i] =3D null;=0A=
                            }=0A=
                        } else {=0A=
                            notAvail.push(item);=0A=
                        }=0A=
                    }=0A=
                }=0A=
                =0A=
                // make sure onContentReady fires after onAvailable=0A=
                for (i=3D0, len=3Dready.length; i<len; i=3Di+1) {=0A=
                    item =3D ready[i];=0A=
                    executeItem(this.getEl(item.id), item);=0A=
                }=0A=
=0A=
=0A=
                retryCount--;=0A=
=0A=
                if (tryAgain) {=0A=
                    for (i=3DonAvailStack.length-1; i>-1; i--) {=0A=
                        item =3D onAvailStack[i];=0A=
                        if (!item || !item.id) {=0A=
                            onAvailStack.splice(i, 1);=0A=
                        }=0A=
                    }=0A=
=0A=
                    this.startInterval();=0A=
                } else {=0A=
                    clearInterval(this._interval);=0A=
                    this._interval =3D null;=0A=
                }=0A=
=0A=
                this.locked =3D false;=0A=
=0A=
            },=0A=
=0A=
            /**=0A=
             * Removes all listeners attached to the given element via =
addListener.=0A=
             * Optionally, the node's children can also be purged.=0A=
             * Optionally, you can specify a specific type of event to =
remove.=0A=
             * @method purgeElement=0A=
             * @param {HTMLElement} el the element to purge=0A=
             * @param {boolean} recurse recursively purge this element's =
children=0A=
             * as well.  Use with caution.=0A=
             * @param {string} sType optional type of listener to purge. =
If=0A=
             * left out, all listeners will be removed=0A=
             * @static=0A=
             */=0A=
            purgeElement: function(el, recurse, sType) {=0A=
                var oEl =3D (YAHOO.lang.isString(el)) ? this.getEl(el) : =
el;=0A=
                var elListeners =3D this.getListeners(oEl, sType), i, =
len;=0A=
                if (elListeners) {=0A=
                    for (i=3DelListeners.length-1; i>-1; i--) {=0A=
                        var l =3D elListeners[i];=0A=
                        this.removeListener(oEl, l.type, l.fn);=0A=
                    }=0A=
                }=0A=
=0A=
                if (recurse && oEl && oEl.childNodes) {=0A=
                    for (i=3D0,len=3DoEl.childNodes.length; i<len ; ++i) =
{=0A=
                        this.purgeElement(oEl.childNodes[i], recurse, =
sType);=0A=
                    }=0A=
                }=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns all listeners attached to the given element via =
addListener.=0A=
             * Optionally, you can specify a specific type of event to =
return.=0A=
             * @method getListeners=0A=
             * @param el {HTMLElement|string} the element or element id =
to inspect =0A=
             * @param sType {string} optional type of listener to =
return. If=0A=
             * left out, all listeners will be returned=0A=
             * @return {Object} the listener. Contains the following =
fields:=0A=
             * &nbsp;&nbsp;type:   (string)   the type of event=0A=
             * &nbsp;&nbsp;fn:     (function) the callback supplied to =
addListener=0A=
             * &nbsp;&nbsp;obj:    (object)   the custom object supplied =
to addListener=0A=
             * &nbsp;&nbsp;adjust: (boolean|object)  whether or not to =
adjust the default scope=0A=
             * &nbsp;&nbsp;scope: (boolean)  the derived scope based on =
the adjust parameter=0A=
             * &nbsp;&nbsp;index:  (int)      its position in the Event =
util listener cache=0A=
             * @static=0A=
             */           =0A=
            getListeners: function(el, sType) {=0A=
                var results=3D[], searchLists;=0A=
                if (!sType) {=0A=
                    searchLists =3D [listeners, unloadListeners];=0A=
                } else if (sType =3D=3D=3D "unload") {=0A=
                    searchLists =3D [unloadListeners];=0A=
                } else {=0A=
                    searchLists =3D [listeners];=0A=
                }=0A=
=0A=
                var oEl =3D (YAHOO.lang.isString(el)) ? this.getEl(el) : =
el;=0A=
=0A=
                for (var j=3D0;j<searchLists.length; j=3Dj+1) {=0A=
                    var searchList =3D searchLists[j];=0A=
                    if (searchList) {=0A=
                        for (var i=3D0,len=3DsearchList.length; i<len ; =
++i) {=0A=
                            var l =3D searchList[i];=0A=
                            if ( l  && l[this.EL] =3D=3D=3D oEl && =0A=
                                    (!sType || sType =3D=3D=3D =
l[this.TYPE]) ) {=0A=
                                results.push({=0A=
                                    type:   l[this.TYPE],=0A=
                                    fn:     l[this.FN],=0A=
                                    obj:    l[this.OBJ],=0A=
                                    adjust: l[this.OVERRIDE],=0A=
                                    scope:  l[this.ADJ_SCOPE],=0A=
                                    index:  i=0A=
                                });=0A=
                            }=0A=
                        }=0A=
                    }=0A=
                }=0A=
=0A=
                return (results.length) ? results : null;=0A=
            },=0A=
=0A=
            /**=0A=
             * Removes all listeners registered by pe.event.  Called =0A=
             * automatically during the unload event.=0A=
             * @method _unload=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _unload: function(e) {=0A=
=0A=
                var EU =3D YAHOO.util.Event, i, j, l, len, index,=0A=
                         ul =3D unloadListeners.slice();=0A=
=0A=
                // execute and clear stored unload listeners=0A=
                for (i=3D0,len=3DunloadListeners.length; i<len; ++i) {=0A=
                    l =3D ul[i];=0A=
                    if (l) {=0A=
                        var scope =3D window;=0A=
                        if (l[EU.ADJ_SCOPE]) {=0A=
                            if (l[EU.ADJ_SCOPE] =3D=3D=3D true) {=0A=
                                scope =3D l[EU.UNLOAD_OBJ];=0A=
                            } else {=0A=
                                scope =3D l[EU.ADJ_SCOPE];=0A=
                            }=0A=
                        }=0A=
                        l[EU.FN].call(scope, EU.getEvent(e, l[EU.EL]), =
l[EU.UNLOAD_OBJ] );=0A=
                        ul[i] =3D null;=0A=
                        l=3Dnull;=0A=
                        scope=3Dnull;=0A=
                    }=0A=
                }=0A=
=0A=
                unloadListeners =3D null;=0A=
=0A=
                // Remove listeners to handle IE memory leaks=0A=
                //if (YAHOO.env.ua.ie && listeners && listeners.length > =
0) {=0A=
                =0A=
                // 2.5.0 listeners are removed for all browsers again.  =
FireFox preserves=0A=
                // at least some listeners between page refreshes, =
potentially causing=0A=
                // errors during page load (mouseover listeners firing =
before they=0A=
                // should if the user moves the mouse at the correct =
moment).=0A=
                if (listeners) {=0A=
                    for (j=3Dlisteners.length-1; j>-1; j--) {=0A=
                        l =3D listeners[j];=0A=
                        if (l) {=0A=
                            EU.removeListener(l[EU.EL], l[EU.TYPE], =
l[EU.FN], j);=0A=
                        } =0A=
                    }=0A=
                    l=3Dnull;=0A=
                }=0A=
=0A=
                legacyEvents =3D null;=0A=
=0A=
                EU._simpleRemove(window, "unload", EU._unload);=0A=
=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns scrollLeft=0A=
             * @method _getScrollLeft=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _getScrollLeft: function() {=0A=
                return this._getScroll()[1];=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns scrollTop=0A=
             * @method _getScrollTop=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _getScrollTop: function() {=0A=
                return this._getScroll()[0];=0A=
            },=0A=
=0A=
            /**=0A=
             * Returns the scrollTop and scrollLeft.  Used to calculate =
the =0A=
             * pageX and pageY in Internet Explorer=0A=
             * @method _getScroll=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _getScroll: function() {=0A=
                var dd =3D document.documentElement, db =3D =
document.body;=0A=
                if (dd && (dd.scrollTop || dd.scrollLeft)) {=0A=
                    return [dd.scrollTop, dd.scrollLeft];=0A=
                } else if (db) {=0A=
                    return [db.scrollTop, db.scrollLeft];=0A=
                } else {=0A=
                    return [0, 0];=0A=
                }=0A=
            },=0A=
            =0A=
            /**=0A=
             * Used by old versions of CustomEvent, restored for =
backwards=0A=
             * compatibility=0A=
             * @method regCE=0A=
             * @private=0A=
             * @static=0A=
             * @deprecated still here for backwards compatibility=0A=
             */=0A=
            regCE: function() {=0A=
                // does nothing=0A=
            },=0A=
=0A=
            /**=0A=
             * Adds a DOM event directly without the caching, cleanup, =
scope adj, etc=0A=
             *=0A=
             * @method _simpleAdd=0A=
             * @param {HTMLElement} el      the element to bind the =
handler to=0A=
             * @param {string}      sType   the type of event handler=0A=
             * @param {function}    fn      the callback to invoke=0A=
             * @param {boolen}      capture capture or bubble phase=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _simpleAdd: function () {=0A=
                if (window.addEventListener) {=0A=
                    return function(el, sType, fn, capture) {=0A=
                        el.addEventListener(sType, fn, (capture));=0A=
                    };=0A=
                } else if (window.attachEvent) {=0A=
                    return function(el, sType, fn, capture) {=0A=
                        el.attachEvent("on" + sType, fn);=0A=
                    };=0A=
                } else {=0A=
                    return function(){};=0A=
                }=0A=
            }(),=0A=
=0A=
            /**=0A=
             * Basic remove listener=0A=
             *=0A=
             * @method _simpleRemove=0A=
             * @param {HTMLElement} el      the element to bind the =
handler to=0A=
             * @param {string}      sType   the type of event handler=0A=
             * @param {function}    fn      the callback to invoke=0A=
             * @param {boolen}      capture capture or bubble phase=0A=
             * @static=0A=
             * @private=0A=
             */=0A=
            _simpleRemove: function() {=0A=
                if (window.removeEventListener) {=0A=
                    return function (el, sType, fn, capture) {=0A=
                        el.removeEventListener(sType, fn, (capture));=0A=
                    };=0A=
                } else if (window.detachEvent) {=0A=
                    return function (el, sType, fn) {=0A=
                        el.detachEvent("on" + sType, fn);=0A=
                    };=0A=
                } else {=0A=
                    return function(){};=0A=
                }=0A=
            }()=0A=
        };=0A=
=0A=
    }();=0A=
=0A=
    (function() {=0A=
        var EU =3D YAHOO.util.Event;=0A=
=0A=
        /**=0A=
         * YAHOO.util.Event.on is an alias for addListener=0A=
         * @method on=0A=
         * @see addListener=0A=
         * @static=0A=
         */=0A=
        EU.on =3D EU.addListener;=0A=
=0A=
/*! DOMReady: based on work by: Dean Edwards/John Resig/Matthias Miller =
*/=0A=
=0A=
        // Internet Explorer: use the readyState of a defered script.=0A=
        // This isolates what appears to be a safe moment to manipulate=0A=
        // the DOM prior to when the document's readyState suggests=0A=
        // it is safe to do so.=0A=
        if (EU.isIE) {=0A=
=0A=
            // Process onAvailable/onContentReady items when the =0A=
            // DOM is ready.=0A=
            YAHOO.util.Event.onDOMReady(=0A=
                    YAHOO.util.Event._tryPreloadAttach,=0A=
                    YAHOO.util.Event, true);=0A=
            =0A=
            var n =3D document.createElement('p');  =0A=
=0A=
            EU._dri =3D setInterval(function() {=0A=
                try {=0A=
                    // throws an error if doc is not ready=0A=
                    n.doScroll('left');=0A=
                    clearInterval(EU._dri);=0A=
                    EU._dri =3D null;=0A=
                    EU._ready();=0A=
                    n =3D null;=0A=
                } catch (ex) { =0A=
                }=0A=
            }, EU.POLL_INTERVAL); =0A=
=0A=
        =0A=
        // The document's readyState in Safari currently will=0A=
        // change to loaded/complete before images are loaded.=0A=
        } else if (EU.webkit && EU.webkit < 525) {=0A=
=0A=
            EU._dri =3D setInterval(function() {=0A=
                var rs=3Ddocument.readyState;=0A=
                if ("loaded" =3D=3D rs || "complete" =3D=3D rs) {=0A=
                    clearInterval(EU._dri);=0A=
                    EU._dri =3D null;=0A=
                    EU._ready();=0A=
                }=0A=
            }, EU.POLL_INTERVAL); =0A=
=0A=
        // FireFox and Opera: These browsers provide a event for this=0A=
        // moment.  The latest WebKit releases now support this event.=0A=
        } else {=0A=
=0A=
            EU._simpleAdd(document, "DOMContentLoaded", EU._ready);=0A=
=0A=
        }=0A=
        /////////////////////////////////////////////////////////////=0A=
=0A=
=0A=
        EU._simpleAdd(window, "load", EU._load);=0A=
        EU._simpleAdd(window, "unload", EU._unload);=0A=
        EU._tryPreloadAttach();=0A=
    })();=0A=
=0A=
}=0A=
/**=0A=
 * EventProvider is designed to be used with YAHOO.augment to wrap =0A=
 * CustomEvents in an interface that allows events to be subscribed to =0A=
 * and fired by name.  This makes it possible for implementing code to=0A=
 * subscribe to an event that either has not been created yet, or will=0A=
 * not be created at all.=0A=
 *=0A=
 * @Class EventProvider=0A=
 */=0A=
YAHOO.util.EventProvider =3D function() { };=0A=
=0A=
YAHOO.util.EventProvider.prototype =3D {=0A=
=0A=
    /**=0A=
     * Private storage of custom events=0A=
     * @property __yui_events=0A=
     * @type Object[]=0A=
     * @private=0A=
     */=0A=
    __yui_events: null,=0A=
=0A=
    /**=0A=
     * Private storage of custom event subscribers=0A=
     * @property __yui_subscribers=0A=
     * @type Object[]=0A=
     * @private=0A=
     */=0A=
    __yui_subscribers: null,=0A=
    =0A=
    /**=0A=
     * Subscribe to a CustomEvent by event type=0A=
     *=0A=
     * @method subscribe=0A=
     * @param p_type     {string}   the type, or name of the event=0A=
     * @param p_fn       {function} the function to exectute when the =
event fires=0A=
     * @param p_obj      {Object}   An object to be passed along when =
the event =0A=
     *                              fires=0A=
     * @param p_override {boolean}  If true, the obj passed in becomes =
the =0A=
     *                              execution scope of the listener=0A=
     */=0A=
    subscribe: function(p_type, p_fn, p_obj, p_override) {=0A=
=0A=
        this.__yui_events =3D this.__yui_events || {};=0A=
        var ce =3D this.__yui_events[p_type];=0A=
=0A=
        if (ce) {=0A=
            ce.subscribe(p_fn, p_obj, p_override);=0A=
        } else {=0A=
            this.__yui_subscribers =3D this.__yui_subscribers || {};=0A=
            var subs =3D this.__yui_subscribers;=0A=
            if (!subs[p_type]) {=0A=
                subs[p_type] =3D [];=0A=
            }=0A=
            subs[p_type].push(=0A=
                { fn: p_fn, obj: p_obj, override: p_override } );=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Unsubscribes one or more listeners the from the specified event=0A=
     * @method unsubscribe=0A=
     * @param p_type {string}   The type, or name of the event.  If the =
type=0A=
     *                          is not specified, it will attempt to =
remove=0A=
     *                          the listener from all hosted events.=0A=
     * @param p_fn   {Function} The subscribed function to unsubscribe, =
if not=0A=
     *                          supplied, all subscribers will be =
removed.=0A=
     * @param p_obj  {Object}   The custom object passed to subscribe.  =
This is=0A=
     *                        optional, but if supplied will be used to=0A=
     *                        disambiguate multiple listeners that are =
the same=0A=
     *                        (e.g., you subscribe many object using a =
function=0A=
     *                        that lives on the prototype)=0A=
     * @return {boolean} true if the subscriber was found and detached.=0A=
     */=0A=
    unsubscribe: function(p_type, p_fn, p_obj) {=0A=
        this.__yui_events =3D this.__yui_events || {};=0A=
        var evts =3D this.__yui_events;=0A=
        if (p_type) {=0A=
            var ce =3D evts[p_type];=0A=
            if (ce) {=0A=
                return ce.unsubscribe(p_fn, p_obj);=0A=
            }=0A=
        } else {=0A=
            var ret =3D true;=0A=
            for (var i in evts) {=0A=
                if (YAHOO.lang.hasOwnProperty(evts, i)) {=0A=
                    ret =3D ret && evts[i].unsubscribe(p_fn, p_obj);=0A=
                }=0A=
            }=0A=
            return ret;=0A=
        }=0A=
=0A=
        return false;=0A=
    },=0A=
    =0A=
    /**=0A=
     * Removes all listeners from the specified event.  If the event type=0A=
     * is not specified, all listeners from all hosted custom events will=0A=
     * be removed.=0A=
     * @method unsubscribeAll=0A=
     * @param p_type {string}   The type, or name of the event=0A=
     */=0A=
    unsubscribeAll: function(p_type) {=0A=
        return this.unsubscribe(p_type);=0A=
    },=0A=
=0A=
    /**=0A=
     * Creates a new custom event of the specified type.  If a custom =
event=0A=
     * by that name already exists, it will not be re-created.  In either=0A=
     * case the custom event is returned. =0A=
     *=0A=
     * @method createEvent=0A=
     *=0A=
     * @param p_type {string} the type, or name of the event=0A=
     * @param p_config {object} optional config params.  Valid =
properties are:=0A=
     *=0A=
     *  <ul>=0A=
     *    <li>=0A=
     *      scope: defines the default execution scope.  If not defined=0A=
     *      the default scope will be this instance.=0A=
     *    </li>=0A=
     *    <li>=0A=
     *      silent: if true, the custom event will not generate log =
messages.=0A=
     *      This is false by default.=0A=
     *    </li>=0A=
     *    <li>=0A=
     *      onSubscribeCallback: specifies a callback to execute when the=0A=
     *      event has a new subscriber.  This will fire immediately for=0A=
     *      each queued subscriber if any exist prior to the creation of=0A=
     *      the event.=0A=
     *    </li>=0A=
     *  </ul>=0A=
     *=0A=
     *  @return {CustomEvent} the custom event=0A=
     *=0A=
     */=0A=
    createEvent: function(p_type, p_config) {=0A=
=0A=
        this.__yui_events =3D this.__yui_events || {};=0A=
        var opts =3D p_config || {};=0A=
        var events =3D this.__yui_events;=0A=
=0A=
        if (events[p_type]) {=0A=
        } else {=0A=
=0A=
            var scope  =3D opts.scope  || this;=0A=
            var silent =3D (opts.silent);=0A=
=0A=
            var ce =3D new YAHOO.util.CustomEvent(p_type, scope, silent,=0A=
                    YAHOO.util.CustomEvent.FLAT);=0A=
            events[p_type] =3D ce;=0A=
=0A=
            if (opts.onSubscribeCallback) {=0A=
                ce.subscribeEvent.subscribe(opts.onSubscribeCallback);=0A=
            }=0A=
=0A=
            this.__yui_subscribers =3D this.__yui_subscribers || {};=0A=
            var qs =3D this.__yui_subscribers[p_type];=0A=
=0A=
            if (qs) {=0A=
                for (var i=3D0; i<qs.length; ++i) {=0A=
                    ce.subscribe(qs[i].fn, qs[i].obj, qs[i].override);=0A=
                }=0A=
            }=0A=
        }=0A=
=0A=
        return events[p_type];=0A=
    },=0A=
=0A=
=0A=
   /**=0A=
     * Fire a custom event by name.  The callback functions will be =
executed=0A=
     * from the scope specified when the event was created, and with the =0A=
     * following parameters:=0A=
     *   <ul>=0A=
     *   <li>The first argument fire() was executed with</li>=0A=
     *   <li>The custom object (if any) that was passed into the =
subscribe() =0A=
     *       method</li>=0A=
     *   </ul>=0A=
     * If the custom event has not been explicitly created, it will be=0A=
     * created now with the default config, scoped to the host object=0A=
     * @method fireEvent=0A=
     * @param p_type    {string}  the type, or name of the event=0A=
     * @param arguments {Object*} an arbitrary set of parameters to pass =
to =0A=
     *                            the handler.=0A=
     * @return {boolean} the return value from CustomEvent.fire=0A=
     *                   =0A=
     */=0A=
    fireEvent: function(p_type, arg1, arg2, etc) {=0A=
=0A=
        this.__yui_events =3D this.__yui_events || {};=0A=
        var ce =3D this.__yui_events[p_type];=0A=
=0A=
        if (!ce) {=0A=
            return null;=0A=
        }=0A=
=0A=
        var args =3D [];=0A=
        for (var i=3D1; i<arguments.length; ++i) {=0A=
            args.push(arguments[i]);=0A=
        }=0A=
        return ce.fire.apply(ce, args);=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns true if the custom event of the provided type has been =
created=0A=
     * with createEvent.=0A=
     * @method hasEvent=0A=
     * @param type {string} the type, or name of the event=0A=
     */=0A=
    hasEvent: function(type) {=0A=
        if (this.__yui_events) {=0A=
            if (this.__yui_events[type]) {=0A=
                return true;=0A=
            }=0A=
        }=0A=
        return false;=0A=
    }=0A=
=0A=
};=0A=
=0A=
/**=0A=
* KeyListener is a utility that provides an easy interface for listening =
for=0A=
* keydown/keyup events fired against DOM elements.=0A=
* @namespace YAHOO.util=0A=
* @class KeyListener=0A=
* @constructor=0A=
* @param {HTMLElement} attachTo The element or element ID to which the =
key =0A=
*                               event should be attached=0A=
* @param {String}      attachTo The element or element ID to which the =
key=0A=
*                               event should be attached=0A=
* @param {Object}      keyData  The object literal representing the =
key(s) =0A=
*                               to detect. Possible attributes are =0A=
*                               shift(boolean), alt(boolean), =
ctrl(boolean) =0A=
*                               and keys(either an int or an array of =
ints =0A=
*                               representing keycodes).=0A=
* @param {Function}    handler  The CustomEvent handler to fire when the =0A=
*                               key event is detected=0A=
* @param {Object}      handler  An object literal representing the =
handler. =0A=
* @param {String}      event    Optional. The event (keydown or keyup) =
to =0A=
*                               listen for. Defaults automatically to =
keydown.=0A=
*=0A=
* @knownissue the "keypress" event is completely broken in Safari 2.x =
and below.=0A=
*             the workaround is use "keydown" for key listening.  =
However, if=0A=
*             it is desired to prevent the default behavior of the =
keystroke,=0A=
*             that can only be done on the keypress event.  This makes =
key=0A=
*             handling quite ugly.=0A=
* @knownissue keydown is also broken in Safari 2.x and below for the ESC =
key.=0A=
*             There currently is no workaround other than choosing =
another=0A=
*             key to listen for.=0A=
*/=0A=
YAHOO.util.KeyListener =3D function(attachTo, keyData, handler, event) {=0A=
    if (!attachTo) {=0A=
    } else if (!keyData) {=0A=
    } else if (!handler) {=0A=
    } =0A=
    =0A=
    if (!event) {=0A=
        event =3D YAHOO.util.KeyListener.KEYDOWN;=0A=
    }=0A=
=0A=
    /**=0A=
    * The CustomEvent fired internally when a key is pressed=0A=
    * @event keyEvent=0A=
    * @private=0A=
    * @param {Object} keyData The object literal representing the key(s) =
to =0A=
    *                         detect. Possible attributes are =
shift(boolean), =0A=
    *                         alt(boolean), ctrl(boolean) and =
keys(either an =0A=
    *                         int or an array of ints representing =
keycodes).=0A=
    */=0A=
    var keyEvent =3D new YAHOO.util.CustomEvent("keyPressed");=0A=
    =0A=
    /**=0A=
    * The CustomEvent fired when the KeyListener is enabled via the =
enable() =0A=
    * function=0A=
    * @event enabledEvent=0A=
    * @param {Object} keyData The object literal representing the key(s) =
to =0A=
    *                         detect. Possible attributes are =
shift(boolean), =0A=
    *                         alt(boolean), ctrl(boolean) and =
keys(either an =0A=
    *                         int or an array of ints representing =
keycodes).=0A=
    */=0A=
    this.enabledEvent =3D new YAHOO.util.CustomEvent("enabled");=0A=
=0A=
    /**=0A=
    * The CustomEvent fired when the KeyListener is disabled via the =0A=
    * disable() function=0A=
    * @event disabledEvent=0A=
    * @param {Object} keyData The object literal representing the key(s) =
to =0A=
    *                         detect. Possible attributes are =
shift(boolean), =0A=
    *                         alt(boolean), ctrl(boolean) and =
keys(either an =0A=
    *                         int or an array of ints representing =
keycodes).=0A=
    */=0A=
    this.disabledEvent =3D new YAHOO.util.CustomEvent("disabled");=0A=
=0A=
    if (typeof attachTo =3D=3D 'string') {=0A=
        attachTo =3D document.getElementById(attachTo);=0A=
    }=0A=
=0A=
    if (typeof handler =3D=3D 'function') {=0A=
        keyEvent.subscribe(handler);=0A=
    } else {=0A=
        keyEvent.subscribe(handler.fn, handler.scope, =
handler.correctScope);=0A=
    }=0A=
=0A=
    /**=0A=
    * Handles the key event when a key is pressed.=0A=
    * @method handleKeyPress=0A=
    * @param {DOMEvent} e   The keypress DOM event=0A=
    * @param {Object}   obj The DOM event scope object=0A=
    * @private=0A=
    */=0A=
    function handleKeyPress(e, obj) {=0A=
        if (! keyData.shift) {  =0A=
            keyData.shift =3D false; =0A=
        }=0A=
        if (! keyData.alt) {    =0A=
            keyData.alt =3D false;=0A=
        }=0A=
        if (! keyData.ctrl) {=0A=
            keyData.ctrl =3D false;=0A=
        }=0A=
=0A=
        // check held down modifying keys first=0A=
        if (e.shiftKey =3D=3D keyData.shift && =0A=
            e.altKey   =3D=3D keyData.alt &&=0A=
            e.ctrlKey  =3D=3D keyData.ctrl) { // if we pass this, all =
modifiers match=0A=
            =0A=
            var dataItem;=0A=
=0A=
            if (keyData.keys instanceof Array) {=0A=
                for (var i=3D0;i<keyData.keys.length;i++) {=0A=
                    dataItem =3D keyData.keys[i];=0A=
=0A=
                    if (dataItem =3D=3D e.charCode ) {=0A=
                        keyEvent.fire(e.charCode, e);=0A=
                        break;=0A=
                    } else if (dataItem =3D=3D e.keyCode) {=0A=
                        keyEvent.fire(e.keyCode, e);=0A=
                        break;=0A=
                    }=0A=
                }=0A=
            } else {=0A=
                dataItem =3D keyData.keys;=0A=
                if (dataItem =3D=3D e.charCode ) {=0A=
                    keyEvent.fire(e.charCode, e);=0A=
                } else if (dataItem =3D=3D e.keyCode) {=0A=
                    keyEvent.fire(e.keyCode, e);=0A=
                }=0A=
            }=0A=
        }=0A=
    }=0A=
=0A=
    /**=0A=
    * Enables the KeyListener by attaching the DOM event listeners to =
the =0A=
    * target DOM element=0A=
    * @method enable=0A=
    */=0A=
    this.enable =3D function() {=0A=
        if (! this.enabled) {=0A=
            YAHOO.util.Event.addListener(attachTo, event, =
handleKeyPress);=0A=
            this.enabledEvent.fire(keyData);=0A=
        }=0A=
        /**=0A=
        * Boolean indicating the enabled/disabled state of the Tooltip=0A=
        * @property enabled=0A=
        * @type Boolean=0A=
        */=0A=
        this.enabled =3D true;=0A=
    };=0A=
=0A=
    /**=0A=
    * Disables the KeyListener by removing the DOM event listeners from =
the =0A=
    * target DOM element=0A=
    * @method disable=0A=
    */=0A=
    this.disable =3D function() {=0A=
        if (this.enabled) {=0A=
            YAHOO.util.Event.removeListener(attachTo, event, =
handleKeyPress);=0A=
            this.disabledEvent.fire(keyData);=0A=
        }=0A=
        this.enabled =3D false;=0A=
    };=0A=
=0A=
    /**=0A=
    * Returns a String representation of the object.=0A=
    * @method toString=0A=
    * @return {String}  The string representation of the KeyListener=0A=
    */ =0A=
    this.toString =3D function() {=0A=
        return "KeyListener [" + keyData.keys + "] " + attachTo.tagName =
+ =0A=
                (attachTo.id ? "[" + attachTo.id + "]" : "");=0A=
    };=0A=
=0A=
};=0A=
=0A=
/**=0A=
* Constant representing the DOM "keydown" event.=0A=
* @property YAHOO.util.KeyListener.KEYDOWN=0A=
* @static=0A=
* @final=0A=
* @type String=0A=
*/=0A=
YAHOO.util.KeyListener.KEYDOWN =3D "keydown";=0A=
=0A=
/**=0A=
* Constant representing the DOM "keyup" event.=0A=
* @property YAHOO.util.KeyListener.KEYUP=0A=
* @static=0A=
* @final=0A=
* @type String=0A=
*/=0A=
YAHOO.util.KeyListener.KEYUP =3D "keyup";=0A=
=0A=
/**=0A=
 * keycode constants for a subset of the special keys=0A=
 * @property KEY=0A=
 * @static=0A=
 * @final=0A=
 */=0A=
YAHOO.util.KeyListener.KEY =3D {=0A=
    ALT          : 18,=0A=
    BACK_SPACE   : 8,=0A=
    CAPS_LOCK    : 20,=0A=
    CONTROL      : 17,=0A=
    DELETE       : 46,=0A=
    DOWN         : 40,=0A=
    END          : 35,=0A=
    ENTER        : 13,=0A=
    ESCAPE       : 27,=0A=
    HOME         : 36,=0A=
    LEFT         : 37,=0A=
    META         : 224,=0A=
    NUM_LOCK     : 144,=0A=
    PAGE_DOWN    : 34,=0A=
    PAGE_UP      : 33, =0A=
    PAUSE        : 19,=0A=
    PRINTSCREEN  : 44,=0A=
    RIGHT        : 39,=0A=
    SCROLL_LOCK  : 145,=0A=
    SHIFT        : 16,=0A=
    SPACE        : 32,=0A=
    TAB          : 9,=0A=
    UP           : 38=0A=
};=0A=
YAHOO.register("event", YAHOO.util.Event, {version: "2.5.1", build: =
"984"});=0A=

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/treeview.js

/*=0A=
Copyright (c) 2008, Yahoo! Inc. All rights reserved.=0A=
Code licensed under the BSD License:=0A=
http://developer.yahoo.net/yui/license.txt=0A=
version: 2.5.1=0A=
*/=0A=
/**=0A=
 * The treeview widget is a generic tree building tool.=0A=
 * @module treeview=0A=
 * @title TreeView Widget=0A=
 * @requires yahoo, event=0A=
 * @optional animation=0A=
 * @namespace YAHOO.widget=0A=
 */=0A=
=0A=
/**=0A=
 * Contains the tree view state data and the root node.=0A=
 *=0A=
 * @class TreeView=0A=
 * @uses YAHOO.util.EventProvider=0A=
 * @constructor=0A=
 * @param {string|HTMLElement} id The id of the element, or the element=0A=
 * itself that the tree will be inserted into.=0A=
 */=0A=
YAHOO.widget.TreeView =3D function(id) {=0A=
    if (id) { this.init(id); }=0A=
};=0A=
=0A=
YAHOO.widget.TreeView.prototype =3D {=0A=
=0A=
    /**=0A=
     * The id of tree container element=0A=
     * @property id=0A=
     * @type String=0A=
     */=0A=
    id: null,=0A=
=0A=
    /**=0A=
     * The host element for this tree=0A=
     * @property _el=0A=
     * @private=0A=
     */=0A=
    _el: null,=0A=
=0A=
     /**=0A=
     * Flat collection of all nodes in this tree.  This is a sparse=0A=
     * array, so the length property can't be relied upon for a=0A=
     * node count for the tree.=0A=
     * @property _nodes=0A=
     * @type Node[]=0A=
     * @private=0A=
     */=0A=
    _nodes: null,=0A=
=0A=
    /**=0A=
     * We lock the tree control while waiting for the dynamic loader to =
return=0A=
     * @property locked=0A=
     * @type boolean=0A=
     */=0A=
    locked: false,=0A=
=0A=
    /**=0A=
     * The animation to use for expanding children, if any=0A=
     * @property _expandAnim=0A=
     * @type string=0A=
     * @private=0A=
     */=0A=
    _expandAnim: null,=0A=
=0A=
    /**=0A=
     * The animation to use for collapsing children, if any=0A=
     * @property _collapseAnim=0A=
     * @type string=0A=
     * @private=0A=
     */=0A=
    _collapseAnim: null,=0A=
=0A=
    /**=0A=
     * The current number of animations that are executing=0A=
     * @property _animCount=0A=
     * @type int=0A=
     * @private=0A=
     */=0A=
    _animCount: 0,=0A=
=0A=
    /**=0A=
     * The maximum number of animations to run at one time.=0A=
     * @property maxAnim=0A=
     * @type int=0A=
     */=0A=
    maxAnim: 2,=0A=
=0A=
    /**=0A=
     * Sets up the animation for expanding children=0A=
     * @method setExpandAnim=0A=
     * @param {string} type the type of animation (acceptable values =
defined =0A=
     * in YAHOO.widget.TVAnim)=0A=
     */=0A=
    setExpandAnim: function(type) {=0A=
        this._expandAnim =3D (YAHOO.widget.TVAnim.isValid(type)) ? type =
: null;=0A=
    },=0A=
=0A=
    /**=0A=
     * Sets up the animation for collapsing children=0A=
     * @method setCollapseAnim=0A=
     * @param {string} the type of animation (acceptable values defined =
in =0A=
     * YAHOO.widget.TVAnim)=0A=
     */=0A=
    setCollapseAnim: function(type) {=0A=
        this._collapseAnim =3D (YAHOO.widget.TVAnim.isValid(type)) ? =
type : null;=0A=
    },=0A=
=0A=
    /**=0A=
     * Perform the expand animation if configured, or just show the=0A=
     * element if not configured or too many animations are in progress=0A=
     * @method animateExpand=0A=
     * @param el {HTMLElement} the element to animate=0A=
     * @param node {YAHOO.util.Node} the node that was expanded=0A=
     * @return {boolean} true if animation could be invoked, false =
otherwise=0A=
     */=0A=
    animateExpand: function(el, node) {=0A=
=0A=
        if (this._expandAnim && this._animCount < this.maxAnim) {=0A=
            // this.locked =3D true;=0A=
            var tree =3D this;=0A=
            var a =3D YAHOO.widget.TVAnim.getAnim(this._expandAnim, el, =0A=
                            function() { tree.expandComplete(node); });=0A=
            if (a) { =0A=
                ++this._animCount;=0A=
                this.fireEvent("animStart", {=0A=
                        "node": node, =0A=
                        "type": "expand"=0A=
                    });=0A=
                a.animate();=0A=
            }=0A=
=0A=
            return true;=0A=
        }=0A=
=0A=
        return false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Perform the collapse animation if configured, or just show the=0A=
     * element if not configured or too many animations are in progress=0A=
     * @method animateCollapse=0A=
     * @param el {HTMLElement} the element to animate=0A=
     * @param node {YAHOO.util.Node} the node that was expanded=0A=
     * @return {boolean} true if animation could be invoked, false =
otherwise=0A=
     */=0A=
    animateCollapse: function(el, node) {=0A=
=0A=
        if (this._collapseAnim && this._animCount < this.maxAnim) {=0A=
            // this.locked =3D true;=0A=
            var tree =3D this;=0A=
            var a =3D YAHOO.widget.TVAnim.getAnim(this._collapseAnim, =
el, =0A=
                            function() { tree.collapseComplete(node); });=0A=
            if (a) { =0A=
                ++this._animCount;=0A=
                this.fireEvent("animStart", {=0A=
                        "node": node, =0A=
                        "type": "collapse"=0A=
                    });=0A=
                a.animate();=0A=
            }=0A=
=0A=
            return true;=0A=
        }=0A=
=0A=
        return false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Function executed when the expand animation completes=0A=
     * @method expandComplete=0A=
     */=0A=
    expandComplete: function(node) {=0A=
        --this._animCount;=0A=
        this.fireEvent("animComplete", {=0A=
                "node": node, =0A=
                "type": "expand"=0A=
            });=0A=
        // this.locked =3D false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Function executed when the collapse animation completes=0A=
     * @method collapseComplete=0A=
     */=0A=
    collapseComplete: function(node) {=0A=
        --this._animCount;=0A=
        this.fireEvent("animComplete", {=0A=
                "node": node, =0A=
                "type": "collapse"=0A=
            });=0A=
        // this.locked =3D false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Initializes the tree=0A=
     * @method init=0A=
     * @parm {string|HTMLElement} id the id of the element that will =
hold the tree=0A=
     * @private=0A=
     */=0A=
    init: function(id) {=0A=
=0A=
        this.id =3D id;=0A=
=0A=
        if ("string" !=3D=3D typeof id) {=0A=
            this._el =3D id;=0A=
            this.id =3D this.generateId(id);=0A=
        }=0A=
=0A=
        /**=0A=
         * When animation is enabled, this event fires when the animation=0A=
         * starts=0A=
         * @event animStart=0A=
         * @type CustomEvent=0A=
         * @param {YAHOO.widget.Node} node the node that is =
expanding/collapsing=0A=
         * @parm {String} type the type of animation ("expand" or =
"collapse")=0A=
         */=0A=
        this.createEvent("animStart", this);=0A=
=0A=
        /**=0A=
         * When animation is enabled, this event fires when the animation=0A=
         * completes=0A=
         * @event animComplete=0A=
         * @type CustomEvent=0A=
         * @param {YAHOO.widget.Node} node the node that is =
expanding/collapsing=0A=
         * @parm {String} type the type of animation ("expand" or =
"collapse")=0A=
         */=0A=
        this.createEvent("animComplete", this);=0A=
=0A=
        /**=0A=
         * Fires when a node is going to be collapsed.  Return false to =
stop=0A=
         * the collapse.=0A=
         * @event collapse=0A=
         * @type CustomEvent=0A=
         * @param {YAHOO.widget.Node} node the node that is collapsing=0A=
         */=0A=
        this.createEvent("collapse", this);=0A=
=0A=
        /**=0A=
         * Fires after a node is successfully collapsed.  This event =
will not fire=0A=
         * if the "collapse" event was cancelled.=0A=
         * @event collapseComplete=0A=
         * @type CustomEvent=0A=
         * @param {YAHOO.widget.Node} node the node that was collapsed=0A=
         */=0A=
        this.createEvent("collapseComplete", this);=0A=
=0A=
        /**=0A=
         * Fires when a node is going to be expanded.  Return false to =
stop=0A=
         * the collapse.=0A=
         * @event expand=0A=
         * @type CustomEvent=0A=
         * @param {YAHOO.widget.Node} node the node that is expanding=0A=
         */=0A=
        this.createEvent("expand", this);=0A=
=0A=
        /**=0A=
         * Fires after a node is successfully expanded.  This event will =
not fire=0A=
         * if the "expand" event was cancelled.=0A=
         * @event expandComplete=0A=
         * @type CustomEvent=0A=
         * @param {YAHOO.widget.Node} node the node that was expanded=0A=
         */=0A=
        this.createEvent("expandComplete", this);=0A=
=0A=
        this._nodes =3D [];=0A=
=0A=
        // store a global reference=0A=
        YAHOO.widget.TreeView.trees[this.id] =3D this;=0A=
=0A=
        // Set up the root node=0A=
        this.root =3D new YAHOO.widget.RootNode(this);=0A=
=0A=
        var LW =3D YAHOO.widget.LogWriter;=0A=
=0A=
=0A=
=0A=
        // YAHOO.util.Event.onContentReady(this.id, =
this.handleAvailable, this, true);=0A=
        // YAHOO.util.Event.on(this.id, "click", this.handleClick, this, =
true);=0A=
    },=0A=
=0A=
    //handleAvailable: function() {=0A=
        //var Event =3D YAHOO.util.Event;=0A=
        //Event.on(this.id, =0A=
    //},=0A=
=0A=
    /**=0A=
     * Renders the tree boilerplate and visible nodes=0A=
     * @method draw=0A=
     */=0A=
    draw: function() {=0A=
        var html =3D this.root.getHtml();=0A=
        this.getEl().innerHTML =3D html;=0A=
        this.firstDraw =3D false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the tree's host element=0A=
     * @method getEl=0A=
     * @return {HTMLElement} the host element=0A=
     */=0A=
    getEl: function() {=0A=
        if (! this._el) {=0A=
            this._el =3D document.getElementById(this.id);=0A=
        }=0A=
        return this._el;=0A=
    },=0A=
=0A=
    /**=0A=
     * Nodes register themselves with the tree instance when they are =
created.=0A=
     * @method regNode=0A=
     * @param node {Node} the node to register=0A=
     * @private=0A=
     */=0A=
    regNode: function(node) {=0A=
        this._nodes[node.index] =3D node;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the root node of this tree=0A=
     * @method getRoot=0A=
     * @return {Node} the root node=0A=
     */=0A=
    getRoot: function() {=0A=
        return this.root;=0A=
    },=0A=
=0A=
    /**=0A=
     * Configures this tree to dynamically load all child data=0A=
     * @method setDynamicLoad=0A=
     * @param {function} fnDataLoader the function that will be called =
to get the data=0A=
     * @param iconMode {int} configures the icon that is displayed when =
a dynamic=0A=
     * load node is expanded the first time without children.  By =
default, the =0A=
     * "collapse" icon will be used.  If set to 1, the leaf node icon =
will be=0A=
     * displayed.=0A=
     */=0A=
    setDynamicLoad: function(fnDataLoader, iconMode) { =0A=
        this.root.setDynamicLoad(fnDataLoader, iconMode);=0A=
    },=0A=
=0A=
    /**=0A=
     * Expands all child nodes.  Note: this conflicts with the =
"multiExpand"=0A=
     * node property.  If expand all is called in a tree with nodes that=0A=
     * do not allow multiple siblings to be displayed, only the last =
sibling=0A=
     * will be expanded.=0A=
     * @method expandAll=0A=
     */=0A=
    expandAll: function() { =0A=
        if (!this.locked) {=0A=
            this.root.expandAll(); =0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Collapses all expanded child nodes in the entire tree.=0A=
     * @method collapseAll=0A=
     */=0A=
    collapseAll: function() { =0A=
        if (!this.locked) {=0A=
            this.root.collapseAll(); =0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns a node in the tree that has the specified index (this =
index=0A=
     * is created internally, so this function probably will only be used=0A=
     * in html generated for a given node.)=0A=
     * @method getNodeByIndex=0A=
     * @param {int} nodeIndex the index of the node wanted=0A=
     * @return {Node} the node with index=3DnodeIndex, null if no match=0A=
     */=0A=
    getNodeByIndex: function(nodeIndex) {=0A=
        var n =3D this._nodes[nodeIndex];=0A=
        return (n) ? n : null;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns a node that has a matching property and value in the data=0A=
     * object that was passed into its constructor.=0A=
     * @method getNodeByProperty=0A=
     * @param {object} property the property to search (usually a string)=0A=
     * @param {object} value the value we want to find (usuall an int or =
string)=0A=
     * @return {Node} the matching node, null if no match=0A=
     */=0A=
    getNodeByProperty: function(property, value) {=0A=
        for (var i in this._nodes) {=0A=
            var n =3D this._nodes[i];=0A=
            if (n.data && value =3D=3D n.data[property]) {=0A=
                return n;=0A=
            }=0A=
        }=0A=
=0A=
        return null;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns a collection of nodes that have a matching property =0A=
     * and value in the data object that was passed into its =
constructor.  =0A=
     * @method getNodesByProperty=0A=
     * @param {object} property the property to search (usually a string)=0A=
     * @param {object} value the value we want to find (usuall an int or =
string)=0A=
     * @return {Array} the matching collection of nodes, null if no match=0A=
     */=0A=
    getNodesByProperty: function(property, value) {=0A=
        var values =3D [];=0A=
        for (var i in this._nodes) {=0A=
            var n =3D this._nodes[i];=0A=
            if (n.data && value =3D=3D n.data[property]) {=0A=
                values.push(n);=0A=
            }=0A=
        }=0A=
=0A=
        return (values.length) ? values : null;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the treeview node reference for an anscestor element=0A=
     * of the node, or null if it is not contained within any node=0A=
     * in this tree.=0A=
     * @method getNodeByElement=0A=
     * @param {HTMLElement} the element to test=0A=
     * @return {YAHOO.widget.Node} a node reference or null=0A=
     */=0A=
    getNodeByElement: function(el) {=0A=
=0A=
        var p=3Del, m, re=3D/ygtv([^\d]*)(.*)/;=0A=
=0A=
        do {=0A=
=0A=
            if (p && p.id) {=0A=
                m =3D p.id.match(re);=0A=
                if (m && m[2]) {=0A=
                    return this.getNodeByIndex(m[2]);=0A=
                }=0A=
            }=0A=
=0A=
            p =3D p.parentNode;=0A=
=0A=
            if (!p || !p.tagName) {=0A=
                break;=0A=
            }=0A=
=0A=
        } =0A=
        while (p.id !=3D=3D this.id && p.tagName.toLowerCase() !=3D=3D =
"body");=0A=
=0A=
        return null;=0A=
    },=0A=
=0A=
    /**=0A=
     * Removes the node and its children, and optionally refreshes the =0A=
     * branch of the tree that was affected.=0A=
     * @method removeNode=0A=
     * @param {Node} The node to remove=0A=
     * @param {boolean} autoRefresh automatically refreshes branch if =
true=0A=
     * @return {boolean} False is there was a problem, true otherwise.=0A=
     */=0A=
    removeNode: function(node, autoRefresh) { =0A=
=0A=
        // Don't delete the root node=0A=
        if (node.isRoot()) {=0A=
            return false;=0A=
        }=0A=
=0A=
        // Get the branch that we may need to refresh=0A=
        var p =3D node.parent;=0A=
        if (p.parent) {=0A=
            p =3D p.parent;=0A=
        }=0A=
=0A=
        // Delete the node and its children=0A=
        this._deleteNode(node);=0A=
=0A=
        // Refresh the parent of the parent=0A=
        if (autoRefresh && p && p.childrenRendered) {=0A=
            p.refresh();=0A=
        }=0A=
=0A=
        return true;=0A=
    },=0A=
=0A=
    /**=0A=
     * wait until the animation is complete before deleting =0A=
     * to avoid javascript errors=0A=
     * @method _removeChildren_animComplete=0A=
     * @param o the custom event payload=0A=
     * @private=0A=
     */=0A=
    _removeChildren_animComplete: function(o) {=0A=
        this.unsubscribe(this._removeChildren_animComplete);=0A=
        this.removeChildren(o.node);=0A=
    },=0A=
=0A=
    /**=0A=
     * Deletes this nodes child collection, recursively.  Also collapses=0A=
     * the node, and resets the dynamic load flag.  The primary use for=0A=
     * this method is to purge a node and allow it to fetch its data=0A=
     * dynamically again.=0A=
     * @method removeChildren=0A=
     * @param {Node} node the node to purge=0A=
     */=0A=
    removeChildren: function(node) { =0A=
=0A=
        if (node.expanded) {=0A=
            // wait until the animation is complete before deleting to=0A=
            // avoid javascript errors=0A=
            if (this._collapseAnim) {=0A=
                this.subscribe("animComplete", =0A=
                        this._removeChildren_animComplete, this, true);=0A=
                YAHOO.widget.Node.prototype.collapse.call(node);=0A=
                return;=0A=
            }=0A=
=0A=
            node.collapse();=0A=
        }=0A=
=0A=
        while (node.children.length) {=0A=
            this._deleteNode(node.children[0]);=0A=
        }=0A=
=0A=
        if (node.isRoot()) {=0A=
            YAHOO.widget.Node.prototype.expand.call(node);=0A=
        }=0A=
=0A=
        node.childrenRendered =3D false;=0A=
        node.dynamicLoadComplete =3D false;=0A=
=0A=
        node.updateIcon();=0A=
    },=0A=
=0A=
    /**=0A=
     * Deletes the node and recurses children=0A=
     * @method _deleteNode=0A=
     * @private=0A=
     */=0A=
    _deleteNode: function(node) { =0A=
        // Remove all the child nodes first=0A=
        this.removeChildren(node);=0A=
=0A=
        // Remove the node from the tree=0A=
        this.popNode(node);=0A=
    },=0A=
=0A=
    /**=0A=
     * Removes the node from the tree, preserving the child collection =0A=
     * to make it possible to insert the branch into another part of the =0A=
     * tree, or another tree.=0A=
     * @method popNode=0A=
     * @param {Node} the node to remove=0A=
     */=0A=
    popNode: function(node) { =0A=
        var p =3D node.parent;=0A=
=0A=
        // Update the parent's collection of children=0A=
        var a =3D [];=0A=
=0A=
        for (var i=3D0, len=3Dp.children.length;i<len;++i) {=0A=
            if (p.children[i] !=3D node) {=0A=
                a[a.length] =3D p.children[i];=0A=
            }=0A=
        }=0A=
=0A=
        p.children =3D a;=0A=
=0A=
        // reset the childrenRendered flag for the parent=0A=
        p.childrenRendered =3D false;=0A=
=0A=
         // Update the sibling relationship=0A=
        if (node.previousSibling) {=0A=
            node.previousSibling.nextSibling =3D node.nextSibling;=0A=
        }=0A=
=0A=
        if (node.nextSibling) {=0A=
            node.nextSibling.previousSibling =3D node.previousSibling;=0A=
        }=0A=
=0A=
        node.parent =3D null;=0A=
        node.previousSibling =3D null;=0A=
        node.nextSibling =3D null;=0A=
        node.tree =3D null;=0A=
=0A=
        // Update the tree's node collection =0A=
        delete this._nodes[node.index];=0A=
    },=0A=
=0A=
=0A=
    /**=0A=
     * TreeView instance toString=0A=
     * @method toString=0A=
     * @return {string} string representation of the tree=0A=
     */=0A=
    toString: function() {=0A=
        return "TreeView " + this.id;=0A=
    },=0A=
=0A=
    /**=0A=
     * Generates an unique id for an element if it doesn't yet have one=0A=
     * @method generateId=0A=
     * @private=0A=
     */=0A=
    generateId: function(el) {=0A=
        var id =3D el.id;=0A=
=0A=
        if (!id) {=0A=
            id =3D "yui-tv-auto-id-" + YAHOO.widget.TreeView.counter;=0A=
            ++YAHOO.widget.TreeView.counter;=0A=
        }=0A=
=0A=
        return id;=0A=
    },=0A=
=0A=
    /**=0A=
     * Abstract method that is executed when a node is expanded=0A=
     * @method onExpand=0A=
     * @param node {Node} the node that was expanded=0A=
     * @deprecated use treeobj.subscribe("expand") instead=0A=
     */=0A=
    onExpand: function(node) { },=0A=
=0A=
    /**=0A=
     * Abstract method that is executed when a node is collapsed.=0A=
     * @method onCollapse=0A=
     * @param node {Node} the node that was collapsed.=0A=
     * @deprecated use treeobj.subscribe("collapse") instead=0A=
     */=0A=
    onCollapse: function(node) { }=0A=
=0A=
};=0A=
=0A=
YAHOO.augment(YAHOO.widget.TreeView, YAHOO.util.EventProvider);=0A=
=0A=
/**=0A=
 * Running count of all nodes created in all trees.  This is =0A=
 * used to provide unique identifies for all nodes.  Deleting=0A=
 * nodes does not change the nodeCount.=0A=
 * @property YAHOO.widget.TreeView.nodeCount=0A=
 * @type int=0A=
 * @static=0A=
 */=0A=
YAHOO.widget.TreeView.nodeCount =3D 0;=0A=
=0A=
/**=0A=
 * Global cache of tree instances=0A=
 * @property YAHOO.widget.TreeView.trees=0A=
 * @type Array=0A=
 * @static=0A=
 * @private=0A=
 */=0A=
YAHOO.widget.TreeView.trees =3D [];=0A=
=0A=
/**=0A=
 * Counter for generating a new unique element id=0A=
 * @property YAHOO.widget.TreeView.counter=0A=
 * @static=0A=
 * @private=0A=
 */=0A=
YAHOO.widget.TreeView.counter =3D 0;=0A=
=0A=
/**=0A=
 * Global method for getting a tree by its id.  Used in the generated=0A=
 * tree html.=0A=
 * @method YAHOO.widget.TreeView.getTree=0A=
 * @param treeId {String} the id of the tree instance=0A=
 * @return {TreeView} the tree instance requested, null if not found.=0A=
 * @static=0A=
 */=0A=
YAHOO.widget.TreeView.getTree =3D function(treeId) {=0A=
    var t =3D YAHOO.widget.TreeView.trees[treeId];=0A=
    return (t) ? t : null;=0A=
};=0A=
=0A=
=0A=
/**=0A=
 * Global method for getting a node by its id.  Used in the generated=0A=
 * tree html.=0A=
 * @method YAHOO.widget.TreeView.getNode=0A=
 * @param treeId {String} the id of the tree instance=0A=
 * @param nodeIndex {String} the index of the node to return=0A=
 * @return {Node} the node instance requested, null if not found=0A=
 * @static=0A=
 */=0A=
YAHOO.widget.TreeView.getNode =3D function(treeId, nodeIndex) {=0A=
    var t =3D YAHOO.widget.TreeView.getTree(treeId);=0A=
    return (t) ? t.getNodeByIndex(nodeIndex) : null;=0A=
};=0A=
=0A=
/**=0A=
 * Add a DOM event=0A=
 * @method YAHOO.widget.TreeView.addHandler=0A=
 * @param el the elment to bind the handler to=0A=
 * @param {string} sType the type of event handler=0A=
 * @param {function} fn the callback to invoke=0A=
 * @static=0A=
 */=0A=
YAHOO.widget.TreeView.addHandler =3D function (el, sType, fn) {=0A=
    if (el.addEventListener) {=0A=
        el.addEventListener(sType, fn, false);=0A=
    } else if (el.attachEvent) {=0A=
        el.attachEvent("on" + sType, fn);=0A=
    }=0A=
};=0A=
=0A=
/**=0A=
 * Remove a DOM event=0A=
 * @method YAHOO.widget.TreeView.removeHandler=0A=
 * @param el the elment to bind the handler to=0A=
 * @param {string} sType the type of event handler=0A=
 * @param {function} fn the callback to invoke=0A=
 * @static=0A=
 */=0A=
=0A=
YAHOO.widget.TreeView.removeHandler =3D function (el, sType, fn) {=0A=
    if (el.removeEventListener) {=0A=
        el.removeEventListener(sType, fn, false);=0A=
    } else if (el.detachEvent) {=0A=
        el.detachEvent("on" + sType, fn);=0A=
    }=0A=
};=0A=
=0A=
/**=0A=
 * Attempts to preload the images defined in the styles used to draw the =
tree by=0A=
 * rendering off-screen elements that use the styles.=0A=
 * @method YAHOO.widget.TreeView.preload=0A=
 * @param {string} prefix the prefix to use to generate the names of the=0A=
 * images to preload, default is ygtv=0A=
 * @static=0A=
 */=0A=
YAHOO.widget.TreeView.preload =3D function(e, prefix) {=0A=
    prefix =3D prefix || "ygtv";=0A=
=0A=
=0A=
    var styles =3D =
["tn","tm","tmh","tp","tph","ln","lm","lmh","lp","lph","loading"];=0A=
    // var styles =3D ["tp"];=0A=
=0A=
    var sb =3D [];=0A=
    =0A=
    // save the first one for the outer container=0A=
    for (var i=3D1; i < styles.length; i=3Di+1) { =0A=
        sb[sb.length] =3D '<span class=3D"' + prefix + styles[i] + =
'">&#160;</span>';=0A=
    }=0A=
=0A=
    var f =3D document.createElement("div");=0A=
    var s =3D f.style;=0A=
    s.className =3D prefix + styles[0];=0A=
    s.position =3D "absolute";=0A=
    s.height =3D "1px";=0A=
    s.width =3D "1px";=0A=
    s.top =3D "-1000px";=0A=
    s.left =3D "-1000px";=0A=
    f.innerHTML =3D sb.join("");=0A=
=0A=
    document.body.appendChild(f);=0A=
=0A=
    YAHOO.widget.TreeView.removeHandler(window, =0A=
                "load", YAHOO.widget.TreeView.preload);=0A=
=0A=
};=0A=
=0A=
YAHOO.widget.TreeView.addHandler(window, =0A=
                "load", YAHOO.widget.TreeView.preload);=0A=
=0A=
/**=0A=
 * The base class for all tree nodes.  The node's presentation and =
behavior in=0A=
 * response to mouse events is handled in Node subclasses.=0A=
 * @namespace YAHOO.widget=0A=
 * @class Node=0A=
 * @uses YAHOO.util.EventProvider=0A=
 * @param oData {object} a string or object containing the data that will=0A=
 * be used to render this node, and any custom attributes that should be=0A=
 * stored with the node (which is available in noderef.data).=0A=
 * @param oParent {Node} this node's parent node=0A=
 * @param expanded {boolean} the initial expanded/collapsed state=0A=
 * @constructor=0A=
 */=0A=
YAHOO.widget.Node =3D function(oData, oParent, expanded) {=0A=
    if (oData) { this.init(oData, oParent, expanded); }=0A=
};=0A=
=0A=
YAHOO.widget.Node.prototype =3D {=0A=
=0A=
    /**=0A=
     * The index for this instance obtained from global counter in =
YAHOO.widget.TreeView.=0A=
     * @property index=0A=
     * @type int=0A=
     */=0A=
    index: 0,=0A=
=0A=
    /**=0A=
     * This node's child node collection.=0A=
     * @property children=0A=
     * @type Node[] =0A=
     */=0A=
    children: null,=0A=
=0A=
    /**=0A=
     * Tree instance this node is part of=0A=
     * @property tree=0A=
     * @type TreeView=0A=
     */=0A=
    tree: null,=0A=
=0A=
    /**=0A=
     * The data linked to this node.  This can be any object or primitive=0A=
     * value, and the data can be used in getNodeHtml().=0A=
     * @property data=0A=
     * @type object=0A=
     */=0A=
    data: null,=0A=
=0A=
    /**=0A=
     * Parent node=0A=
     * @property parent=0A=
     * @type Node=0A=
     */=0A=
    parent: null,=0A=
=0A=
    /**=0A=
     * The depth of this node.  We start at -1 for the root node.=0A=
     * @property depth=0A=
     * @type int=0A=
     */=0A=
    depth: -1,=0A=
=0A=
    /**=0A=
     * The href for the node's label.  If one is not specified, the href =
will=0A=
     * be set so that it toggles the node.=0A=
     * @property href=0A=
     * @type string=0A=
     */=0A=
    href: null,=0A=
=0A=
    /**=0A=
     * The label href target, defaults to current window=0A=
     * @property target=0A=
     * @type string=0A=
     */=0A=
    target: "_self",=0A=
=0A=
    /**=0A=
     * The node's expanded/collapsed state=0A=
     * @property expanded=0A=
     * @type boolean=0A=
     */=0A=
    expanded: false,=0A=
=0A=
    /**=0A=
     * Can multiple children be expanded at once?=0A=
     * @property multiExpand=0A=
     * @type boolean=0A=
     */=0A=
    multiExpand: true,=0A=
=0A=
    /**=0A=
     * Should we render children for a collapsed node?  It is possible =
that the=0A=
     * implementer will want to render the hidden data...  @todo verify =
that we =0A=
     * need this, and implement it if we do.=0A=
     * @property renderHidden=0A=
     * @type boolean=0A=
     */=0A=
    renderHidden: false,=0A=
=0A=
    /**=0A=
     * This flag is set to true when the html is generated for this =
node's=0A=
     * children, and set to false when new children are added.=0A=
     * @property childrenRendered=0A=
     * @type boolean=0A=
     */=0A=
    childrenRendered: false,=0A=
=0A=
    /**=0A=
     * Dynamically loaded nodes only fetch the data the first time they =
are=0A=
     * expanded.  This flag is set to true once the data has been =
fetched.=0A=
     * @property dynamicLoadComplete=0A=
     * @type boolean=0A=
     */=0A=
    dynamicLoadComplete: false,=0A=
=0A=
    /**=0A=
     * This node's previous sibling=0A=
     * @property previousSibling=0A=
     * @type Node=0A=
     */=0A=
    previousSibling: null,=0A=
=0A=
    /**=0A=
     * This node's next sibling=0A=
     * @property nextSibling=0A=
     * @type Node=0A=
     */=0A=
    nextSibling: null,=0A=
=0A=
    /**=0A=
     * We can set the node up to call an external method to get the child=0A=
     * data dynamically.=0A=
     * @property _dynLoad=0A=
     * @type boolean=0A=
     * @private=0A=
     */=0A=
    _dynLoad: false,=0A=
=0A=
    /**=0A=
     * Function to execute when we need to get this node's child data.=0A=
     * @property dataLoader=0A=
     * @type function=0A=
     */=0A=
    dataLoader: null,=0A=
=0A=
    /**=0A=
     * This is true for dynamically loading nodes while waiting for the=0A=
     * callback to return.=0A=
     * @property isLoading=0A=
     * @type boolean=0A=
     */=0A=
    isLoading: false,=0A=
=0A=
    /**=0A=
     * The toggle/branch icon will not show if this is set to false.  =
This=0A=
     * could be useful if the implementer wants to have the child contain=0A=
     * extra info about the parent, rather than an actual node.=0A=
     * @property hasIcon=0A=
     * @type boolean=0A=
     */=0A=
    hasIcon: true,=0A=
=0A=
    /**=0A=
     * Used to configure what happens when a dynamic load node is =
expanded=0A=
     * and we discover that it does not have children.  By default, it is=0A=
     * treated as if it still could have children (plus/minus icon).  Set=0A=
     * iconMode to have it display like a leaf node instead.=0A=
     * @property iconMode=0A=
     * @type int=0A=
     */=0A=
    iconMode: 0,=0A=
=0A=
    /**=0A=
     * Specifies whether or not the content area of the node should be =
allowed=0A=
     * to wrap.=0A=
     * @property nowrap=0A=
     * @type boolean=0A=
     * @default false=0A=
     */=0A=
    nowrap: false,=0A=
=0A=
    /**=0A=
     * If true, the node will alway be rendered as a leaf node.  This =
can be=0A=
     * used to override the presentation when dynamically loading the =
entire=0A=
     * tree.  Setting this to true also disables the dynamic load call =
for the=0A=
     * node.=0A=
     * @property isLeaf=0A=
     * @type boolean=0A=
     * @default false=0A=
     */=0A=
    isLeaf: false,=0A=
=0A=
    /**=0A=
     * The node type=0A=
     * @property _type=0A=
     * @private=0A=
     */=0A=
    _type: "Node",=0A=
=0A=
    /*=0A=
    spacerPath: "http://us.i1.yimg.com/us.yimg.com/i/space.gif",=0A=
    expandedText: "Expanded",=0A=
    collapsedText: "Collapsed",=0A=
    loadingText: "Loading",=0A=
    */=0A=
=0A=
    /**=0A=
     * Initializes this node, gets some of the properties from the parent=0A=
     * @method init=0A=
     * @param oData {object} a string or object containing the data that =
will=0A=
     * be used to render this node=0A=
     * @param oParent {Node} this node's parent node=0A=
     * @param expanded {boolean} the initial expanded/collapsed state=0A=
     */=0A=
    init: function(oData, oParent, expanded) {=0A=
=0A=
        this.data       =3D oData;=0A=
        this.children   =3D [];=0A=
        this.index      =3D YAHOO.widget.TreeView.nodeCount;=0A=
        ++YAHOO.widget.TreeView.nodeCount;=0A=
        this.expanded   =3D expanded;=0A=
=0A=
        /**=0A=
         * The parentChange event is fired when a parent element is =
applied=0A=
         * to the node.  This is useful if you need to apply tree-level=0A=
         * properties to a tree that need to happen if a node is moved =
from=0A=
         * one tree to another.=0A=
         *=0A=
         * @event parentChange=0A=
         * @type CustomEvent=0A=
         */=0A=
        this.createEvent("parentChange", this);=0A=
=0A=
        // oParent should never be null except when we create the root =
node.=0A=
        if (oParent) {=0A=
            oParent.appendChild(this);=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Certain properties for the node cannot be set until the parent=0A=
     * is known. This is called after the node is inserted into a tree.=0A=
     * the parent is also applied to this node's children in order to=0A=
     * make it possible to move a branch from one tree to another.=0A=
     * @method applyParent=0A=
     * @param {Node} parentNode this node's parent node=0A=
     * @return {boolean} true if the application was successful=0A=
     */=0A=
    applyParent: function(parentNode) {=0A=
        if (!parentNode) {=0A=
            return false;=0A=
        }=0A=
=0A=
        this.tree   =3D parentNode.tree;=0A=
        this.parent =3D parentNode;=0A=
        this.depth  =3D parentNode.depth + 1;=0A=
=0A=
        if (!this.href) {=0A=
            this.href =3D "javascript:" + this.getToggleLink();=0A=
        }=0A=
=0A=
        // @todo why was this put here.  This causes new nodes added at =
the=0A=
        // root level to lose the menu behavior.=0A=
        // if (! this.multiExpand) {=0A=
            // this.multiExpand =3D parentNode.multiExpand;=0A=
        // }=0A=
=0A=
        this.tree.regNode(this);=0A=
        parentNode.childrenRendered =3D false;=0A=
=0A=
        // cascade update existing children=0A=
        for (var i=3D0, len=3Dthis.children.length;i<len;++i) {=0A=
            this.children[i].applyParent(this);=0A=
        }=0A=
=0A=
        this.fireEvent("parentChange");=0A=
=0A=
        return true;=0A=
    },=0A=
=0A=
    /**=0A=
     * Appends a node to the child collection.=0A=
     * @method appendChild=0A=
     * @param childNode {Node} the new node=0A=
     * @return {Node} the child node=0A=
     * @private=0A=
     */=0A=
    appendChild: function(childNode) {=0A=
        if (this.hasChildren()) {=0A=
            var sib =3D this.children[this.children.length - 1];=0A=
            sib.nextSibling =3D childNode;=0A=
            childNode.previousSibling =3D sib;=0A=
        }=0A=
        this.children[this.children.length] =3D childNode;=0A=
        childNode.applyParent(this);=0A=
=0A=
        // part of the IE display issue workaround. If child nodes=0A=
        // are added after the initial render, and the node was=0A=
        // instantiated with expanded =3D true, we need to show the=0A=
        // children div now that the node has a child.=0A=
        if (this.childrenRendered && this.expanded) {=0A=
            this.getChildrenEl().style.display =3D "";=0A=
        }=0A=
=0A=
        return childNode;=0A=
    },=0A=
=0A=
    /**=0A=
     * Appends this node to the supplied node's child collection=0A=
     * @method appendTo=0A=
     * @param parentNode {Node} the node to append to.=0A=
     * @return {Node} The appended node=0A=
     */=0A=
    appendTo: function(parentNode) {=0A=
        return parentNode.appendChild(this);=0A=
    },=0A=
=0A=
    /**=0A=
    * Inserts this node before this supplied node=0A=
    * @method insertBefore=0A=
    * @param node {Node} the node to insert this node before=0A=
    * @return {Node} the inserted node=0A=
    */=0A=
    insertBefore: function(node) {=0A=
        var p =3D node.parent;=0A=
        if (p) {=0A=
=0A=
            if (this.tree) {=0A=
                this.tree.popNode(this);=0A=
            }=0A=
=0A=
            var refIndex =3D node.isChildOf(p);=0A=
            p.children.splice(refIndex, 0, this);=0A=
            if (node.previousSibling) {=0A=
                node.previousSibling.nextSibling =3D this;=0A=
            }=0A=
            this.previousSibling =3D node.previousSibling;=0A=
            this.nextSibling =3D node;=0A=
            node.previousSibling =3D this;=0A=
=0A=
            this.applyParent(p);=0A=
        }=0A=
=0A=
        return this;=0A=
    },=0A=
 =0A=
    /**=0A=
    * Inserts this node after the supplied node=0A=
    * @method insertAfter=0A=
    * @param node {Node} the node to insert after=0A=
    * @return {Node} the inserted node=0A=
    */=0A=
    insertAfter: function(node) {=0A=
        var p =3D node.parent;=0A=
        if (p) {=0A=
=0A=
            if (this.tree) {=0A=
                this.tree.popNode(this);=0A=
            }=0A=
=0A=
            var refIndex =3D node.isChildOf(p);=0A=
=0A=
            if (!node.nextSibling) {=0A=
                this.nextSibling =3D null;=0A=
                return this.appendTo(p);=0A=
            }=0A=
=0A=
            p.children.splice(refIndex + 1, 0, this);=0A=
=0A=
            node.nextSibling.previousSibling =3D this;=0A=
            this.previousSibling =3D node;=0A=
            this.nextSibling =3D node.nextSibling;=0A=
            node.nextSibling =3D this;=0A=
=0A=
            this.applyParent(p);=0A=
        }=0A=
=0A=
        return this;=0A=
    },=0A=
=0A=
    /**=0A=
    * Returns true if the Node is a child of supplied Node=0A=
    * @method isChildOf=0A=
    * @param parentNode {Node} the Node to check=0A=
    * @return {boolean} The node index if this Node is a child of =0A=
    *                   supplied Node, else -1.=0A=
    * @private=0A=
    */=0A=
    isChildOf: function(parentNode) {=0A=
        if (parentNode && parentNode.children) {=0A=
            for (var i=3D0, len=3DparentNode.children.length; i<len ; =
++i) {=0A=
                if (parentNode.children[i] =3D=3D=3D this) {=0A=
                    return i;=0A=
                }=0A=
            }=0A=
        }=0A=
=0A=
        return -1;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns a node array of this node's siblings, null if none.=0A=
     * @method getSiblings=0A=
     * @return Node[]=0A=
     */=0A=
    getSiblings: function() {=0A=
        return this.parent.children;=0A=
    },=0A=
=0A=
    /**=0A=
     * Shows this node's children=0A=
     * @method showChildren=0A=
     */=0A=
    showChildren: function() {=0A=
        if (!this.tree.animateExpand(this.getChildrenEl(), this)) {=0A=
            if (this.hasChildren()) {=0A=
                this.getChildrenEl().style.display =3D "";=0A=
            }=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Hides this node's children=0A=
     * @method hideChildren=0A=
     */=0A=
    hideChildren: function() {=0A=
=0A=
        if (!this.tree.animateCollapse(this.getChildrenEl(), this)) {=0A=
            this.getChildrenEl().style.display =3D "none";=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the id for this node's container div=0A=
     * @method getElId=0A=
     * @return {string} the element id=0A=
     */=0A=
    getElId: function() {=0A=
        return "ygtv" + this.index;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the id for this node's children div=0A=
     * @method getChildrenElId=0A=
     * @return {string} the element id for this node's children div=0A=
     */=0A=
    getChildrenElId: function() {=0A=
        return "ygtvc" + this.index;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the id for this node's toggle element=0A=
     * @method getToggleElId=0A=
     * @return {string} the toggel element id=0A=
     */=0A=
    getToggleElId: function() {=0A=
        return "ygtvt" + this.index;=0A=
    },=0A=
=0A=
=0A=
    /*=0A=
     * Returns the id for this node's spacer image.  The spacer is =
positioned=0A=
     * over the toggle and provides feedback for screen readers.=0A=
     * @method getSpacerId=0A=
     * @return {string} the id for the spacer image=0A=
     */=0A=
    /*=0A=
    getSpacerId: function() {=0A=
        return "ygtvspacer" + this.index;=0A=
    }, =0A=
    */=0A=
=0A=
    /**=0A=
     * Returns this node's container html element=0A=
     * @method getEl=0A=
     * @return {HTMLElement} the container html element=0A=
     */=0A=
    getEl: function() {=0A=
        return document.getElementById(this.getElId());=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the div that was generated for this node's children=0A=
     * @method getChildrenEl=0A=
     * @return {HTMLElement} this node's children div=0A=
     */=0A=
    getChildrenEl: function() {=0A=
        return document.getElementById(this.getChildrenElId());=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the element that is being used for this node's toggle.=0A=
     * @method getToggleEl=0A=
     * @return {HTMLElement} this node's toggle html element=0A=
     */=0A=
    getToggleEl: function() {=0A=
        return document.getElementById(this.getToggleElId());=0A=
    },=0A=
=0A=
    /*=0A=
     * Returns the element that is being used for this node's spacer.=0A=
     * @method getSpacer=0A=
     * @return {HTMLElement} this node's spacer html element=0A=
     */=0A=
    /*=0A=
    getSpacer: function() {=0A=
        return document.getElementById( this.getSpacerId() ) || {};=0A=
    },=0A=
    */=0A=
=0A=
    /*=0A=
    getStateText: function() {=0A=
        if (this.isLoading) {=0A=
            return this.loadingText;=0A=
        } else if (this.hasChildren(true)) {=0A=
            if (this.expanded) {=0A=
                return this.expandedText;=0A=
            } else {=0A=
                return this.collapsedText;=0A=
            }=0A=
        } else {=0A=
            return "";=0A=
        }=0A=
    },=0A=
    */=0A=
=0A=
    /**=0A=
     * Generates the link that will invoke this node's toggle method=0A=
     * @method getToggleLink=0A=
     * @return {string} the javascript url for toggling this node=0A=
     */=0A=
    getToggleLink: function() {=0A=
        return "YAHOO.widget.TreeView.getNode(\'" + this.tree.id + "\'," =
+ =0A=
            this.index + ").toggle()";=0A=
    },=0A=
=0A=
    /**=0A=
     * Hides this nodes children (creating them if necessary), changes =
the=0A=
     * @method collapse=0A=
     * toggle style.=0A=
     */=0A=
    collapse: function() {=0A=
        // Only collapse if currently expanded=0A=
        if (!this.expanded) { return; }=0A=
=0A=
        // fire the collapse event handler=0A=
        var ret =3D this.tree.onCollapse(this);=0A=
=0A=
        if (false =3D=3D=3D ret) {=0A=
            return;=0A=
        }=0A=
=0A=
        ret =3D this.tree.fireEvent("collapse", this);=0A=
=0A=
        if (false =3D=3D=3D ret) {=0A=
            return;=0A=
        }=0A=
=0A=
=0A=
        if (!this.getEl()) {=0A=
            this.expanded =3D false;=0A=
        } else {=0A=
            // hide the child div=0A=
            this.hideChildren();=0A=
            this.expanded =3D false;=0A=
=0A=
            this.updateIcon();=0A=
        }=0A=
=0A=
        // this.getSpacer().title =3D this.getStateText();=0A=
=0A=
        ret =3D this.tree.fireEvent("collapseComplete", this);=0A=
=0A=
    },=0A=
=0A=
    /**=0A=
     * Shows this nodes children (creating them if necessary), changes =
the=0A=
     * toggle style, and collapses its siblings if multiExpand is not =
set.=0A=
     * @method expand=0A=
     */=0A=
    expand: function(lazySource) {=0A=
        // Only expand if currently collapsed.=0A=
        if (this.expanded && !lazySource) { =0A=
            return; =0A=
        }=0A=
=0A=
        var ret =3D true;=0A=
=0A=
        // When returning from the lazy load handler, expand is called =
again=0A=
        // in order to render the new children.  The "expand" event =
already=0A=
        // fired before fething the new data, so we need to skip it now.=0A=
        if (!lazySource) {=0A=
            // fire the expand event handler=0A=
            ret =3D this.tree.onExpand(this);=0A=
=0A=
            if (false =3D=3D=3D ret) {=0A=
                return;=0A=
            }=0A=
            =0A=
            ret =3D this.tree.fireEvent("expand", this);=0A=
        }=0A=
=0A=
        if (false =3D=3D=3D ret) {=0A=
            return;=0A=
        }=0A=
=0A=
        if (!this.getEl()) {=0A=
            this.expanded =3D true;=0A=
            return;=0A=
        }=0A=
=0A=
        if (!this.childrenRendered) {=0A=
            this.getChildrenEl().innerHTML =3D this.renderChildren();=0A=
        } else {=0A=
        }=0A=
=0A=
        this.expanded =3D true;=0A=
=0A=
        this.updateIcon();=0A=
=0A=
        // this.getSpacer().title =3D this.getStateText();=0A=
=0A=
        // We do an extra check for children here because the lazy=0A=
        // load feature can expose nodes that have no children.=0A=
=0A=
        // if (!this.hasChildren()) {=0A=
        if (this.isLoading) {=0A=
            this.expanded =3D false;=0A=
            return;=0A=
        }=0A=
=0A=
        if (! this.multiExpand) {=0A=
            var sibs =3D this.getSiblings();=0A=
            for (var i=3D0; i<sibs.length; ++i) {=0A=
                if (sibs[i] !=3D this && sibs[i].expanded) { =0A=
                    sibs[i].collapse(); =0A=
                }=0A=
            }=0A=
        }=0A=
=0A=
        this.showChildren();=0A=
=0A=
        ret =3D this.tree.fireEvent("expandComplete", this);=0A=
    },=0A=
=0A=
    updateIcon: function() {=0A=
        if (this.hasIcon) {=0A=
            var el =3D this.getToggleEl();=0A=
            if (el) {=0A=
                el.className =3D this.getStyle();=0A=
            }=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the css style name for the toggle=0A=
     * @method getStyle=0A=
     * @return {string} the css class for this node's toggle=0A=
     */=0A=
    getStyle: function() {=0A=
        if (this.isLoading) {=0A=
            return "ygtvloading";=0A=
        } else {=0A=
            // location top or bottom, middle nodes also get the top =
style=0A=
            var loc =3D (this.nextSibling) ? "t" : "l";=0A=
=0A=
            // type p=3Dplus(expand), m=3Dminus(collapase), n=3Dnone(no =
children)=0A=
            var type =3D "n";=0A=
            if (this.hasChildren(true) || (this.isDynamic() && =
!this.getIconMode())) {=0A=
            // if (this.hasChildren(true)) {=0A=
                type =3D (this.expanded) ? "m" : "p";=0A=
            }=0A=
=0A=
            return "ygtv" + loc + type;=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the hover style for the icon=0A=
     * @return {string} the css class hover state=0A=
     * @method getHoverStyle=0A=
     */=0A=
    getHoverStyle: function() { =0A=
        var s =3D this.getStyle();=0A=
        if (this.hasChildren(true) && !this.isLoading) { =0A=
            s +=3D "h"; =0A=
        }=0A=
        return s;=0A=
    },=0A=
=0A=
    /**=0A=
     * Recursively expands all of this node's children.=0A=
     * @method expandAll=0A=
     */=0A=
    expandAll: function() { =0A=
        for (var i=3D0;i<this.children.length;++i) {=0A=
            var c =3D this.children[i];=0A=
            if (c.isDynamic()) {=0A=
                alert("Not supported (lazy load + expand all)");=0A=
                break;=0A=
            } else if (! c.multiExpand) {=0A=
                alert("Not supported (no multi-expand + expand all)");=0A=
                break;=0A=
            } else {=0A=
                c.expand();=0A=
                c.expandAll();=0A=
            }=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Recursively collapses all of this node's children.=0A=
     * @method collapseAll=0A=
     */=0A=
    collapseAll: function() { =0A=
        for (var i=3D0;i<this.children.length;++i) {=0A=
            this.children[i].collapse();=0A=
            this.children[i].collapseAll();=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Configures this node for dynamically obtaining the child data=0A=
     * when the node is first expanded.  Calling it without the callback=0A=
     * will turn off dynamic load for the node.=0A=
     * @method setDynamicLoad=0A=
     * @param fmDataLoader {function} the function that will be used to =
get the data.=0A=
     * @param iconMode {int} configures the icon that is displayed when =
a dynamic=0A=
     * load node is expanded the first time without children.  By =
default, the =0A=
     * "collapse" icon will be used.  If set to 1, the leaf node icon =
will be=0A=
     * displayed.=0A=
     */=0A=
    setDynamicLoad: function(fnDataLoader, iconMode) { =0A=
        if (fnDataLoader) {=0A=
            this.dataLoader =3D fnDataLoader;=0A=
            this._dynLoad =3D true;=0A=
        } else {=0A=
            this.dataLoader =3D null;=0A=
            this._dynLoad =3D false;=0A=
        }=0A=
=0A=
        if (iconMode) {=0A=
            this.iconMode =3D iconMode;=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Evaluates if this node is the root node of the tree=0A=
     * @method isRoot=0A=
     * @return {boolean} true if this is the root node=0A=
     */=0A=
    isRoot: function() { =0A=
        return (this =3D=3D this.tree.root);=0A=
    },=0A=
=0A=
    /**=0A=
     * Evaluates if this node's children should be loaded dynamically.  =
Looks for=0A=
     * the property both in this instance and the root node.  If the =
tree is=0A=
     * defined to load all children dynamically, the data callback =
function is=0A=
     * defined in the root node=0A=
     * @method isDynamic=0A=
     * @return {boolean} true if this node's children are to be loaded =
dynamically=0A=
     */=0A=
    isDynamic: function() { =0A=
        if (this.isLeaf) {=0A=
            return false;=0A=
        } else {=0A=
            return (!this.isRoot() && (this._dynLoad || =
this.tree.root._dynLoad));=0A=
            // return lazy;=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the current icon mode.  This refers to the way childless =
dynamic=0A=
     * load nodes appear (this comes into play only after the initial =
dynamic=0A=
     * load request produced no children).=0A=
     * @method getIconMode=0A=
     * @return {int} 0 for collapse style, 1 for leaf node style=0A=
     */=0A=
    getIconMode: function() {=0A=
        return (this.iconMode || this.tree.root.iconMode);=0A=
    },=0A=
=0A=
    /**=0A=
     * Checks if this node has children.  If this node is lazy-loading =
and the=0A=
     * children have not been rendered, we do not know whether or not =
there=0A=
     * are actual children.  In most cases, we need to assume that there =
are=0A=
     * children (for instance, the toggle needs to show the expandable =0A=
     * presentation state).  In other times we want to know if there are =
rendered=0A=
     * children.  For the latter, "checkForLazyLoad" should be false.=0A=
     * @method hasChildren=0A=
     * @param checkForLazyLoad {boolean} should we check for unloaded =
children?=0A=
     * @return {boolean} true if this has children or if it might and we =
are=0A=
     * checking for this condition.=0A=
     */=0A=
    hasChildren: function(checkForLazyLoad) { =0A=
        if (this.isLeaf) {=0A=
            return false;=0A=
        } else {=0A=
            return ( this.children.length > 0 || =0A=
(checkForLazyLoad && this.isDynamic() && !this.dynamicLoadComplete) );=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Expands if node is collapsed, collapses otherwise.=0A=
     * @method toggle=0A=
     */=0A=
    toggle: function() {=0A=
        if (!this.tree.locked && ( this.hasChildren(true) || =
this.isDynamic()) ) {=0A=
            if (this.expanded) { this.collapse(); } else { =
this.expand(); }=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the markup for this node and its children.=0A=
     * @method getHtml=0A=
     * @return {string} the markup for this node and its expanded =
children.=0A=
     */=0A=
    getHtml: function() {=0A=
=0A=
        this.childrenRendered =3D false;=0A=
=0A=
        var sb =3D [];=0A=
        sb[sb.length] =3D '<div class=3D"ygtvitem" id=3D"' + =
this.getElId() + '">';=0A=
        sb[sb.length] =3D this.getNodeHtml();=0A=
        sb[sb.length] =3D this.getChildrenHtml();=0A=
        sb[sb.length] =3D '</div>';=0A=
        return sb.join("");=0A=
    },=0A=
=0A=
    /**=0A=
     * Called when first rendering the tree.  We always build the div =
that will=0A=
     * contain this nodes children, but we don't render the children =
themselves=0A=
     * unless this node is expanded.=0A=
     * @method getChildrenHtml=0A=
     * @return {string} the children container div html and any expanded =
children=0A=
     * @private=0A=
     */=0A=
    getChildrenHtml: function() {=0A=
=0A=
=0A=
        var sb =3D [];=0A=
        sb[sb.length] =3D '<div class=3D"ygtvchildren"';=0A=
        sb[sb.length] =3D ' id=3D"' + this.getChildrenElId() + '"';=0A=
=0A=
        // This is a workaround for an IE rendering issue, the child div =
has layout=0A=
        // in IE, creating extra space if a leaf node is created with =
the expanded=0A=
        // property set to true.=0A=
        if (!this.expanded || !this.hasChildren()) {=0A=
            sb[sb.length] =3D ' style=3D"display:none;"';=0A=
        }=0A=
        sb[sb.length] =3D '>';=0A=
=0A=
=0A=
        // Don't render the actual child node HTML unless this node is =
expanded.=0A=
        if ( (this.hasChildren(true) && this.expanded) ||=0A=
                (this.renderHidden && !this.isDynamic()) ) {=0A=
            sb[sb.length] =3D this.renderChildren();=0A=
        }=0A=
=0A=
        sb[sb.length] =3D '</div>';=0A=
=0A=
        return sb.join("");=0A=
    },=0A=
=0A=
    /**=0A=
     * Generates the markup for the child nodes.  This is not done until =
the node=0A=
     * is expanded.=0A=
     * @method renderChildren=0A=
     * @return {string} the html for this node's children=0A=
     * @private=0A=
     */=0A=
    renderChildren: function() {=0A=
=0A=
=0A=
        var node =3D this;=0A=
=0A=
        if (this.isDynamic() && !this.dynamicLoadComplete) {=0A=
            this.isLoading =3D true;=0A=
            this.tree.locked =3D true;=0A=
=0A=
            if (this.dataLoader) {=0A=
=0A=
                setTimeout( =0A=
                    function() {=0A=
                        node.dataLoader(node, =0A=
                            function() { =0A=
                                node.loadComplete(); =0A=
                            });=0A=
                    }, 10);=0A=
                =0A=
            } else if (this.tree.root.dataLoader) {=0A=
=0A=
                setTimeout( =0A=
                    function() {=0A=
                        node.tree.root.dataLoader(node, =0A=
                            function() { =0A=
                                node.loadComplete(); =0A=
                            });=0A=
                    }, 10);=0A=
=0A=
            } else {=0A=
                return "Error: data loader not found or not specified.";=0A=
            }=0A=
=0A=
            return "";=0A=
=0A=
        } else {=0A=
            return this.completeRender();=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Called when we know we have all the child data.=0A=
     * @method completeRender=0A=
     * @return {string} children html=0A=
     */=0A=
    completeRender: function() {=0A=
        var sb =3D [];=0A=
=0A=
        for (var i=3D0; i < this.children.length; ++i) {=0A=
            // this.children[i].childrenRendered =3D false;=0A=
            sb[sb.length] =3D this.children[i].getHtml();=0A=
        }=0A=
        =0A=
        this.childrenRendered =3D true;=0A=
=0A=
        return sb.join("");=0A=
    },=0A=
=0A=
    /**=0A=
     * Load complete is the callback function we pass to the data =
provider=0A=
     * in dynamic load situations.=0A=
     * @method loadComplete=0A=
     */=0A=
    loadComplete: function() {=0A=
        this.getChildrenEl().innerHTML =3D this.completeRender();=0A=
        this.dynamicLoadComplete =3D true;=0A=
        this.isLoading =3D false;=0A=
        this.expand(true);=0A=
        this.tree.locked =3D false;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns this node's ancestor at the specified depth.=0A=
     * @method getAncestor=0A=
     * @param {int} depth the depth of the ancestor.=0A=
     * @return {Node} the ancestor=0A=
     */=0A=
    getAncestor: function(depth) {=0A=
        if (depth >=3D this.depth || depth < 0)  {=0A=
            return null;=0A=
        }=0A=
=0A=
        var p =3D this.parent;=0A=
        =0A=
        while (p.depth > depth) {=0A=
            p =3D p.parent;=0A=
        }=0A=
=0A=
        return p;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the css class for the spacer at the specified depth for=0A=
     * this node.  If this node's ancestor at the specified depth=0A=
     * has a next sibling the presentation is different than if it=0A=
     * does not have a next sibling=0A=
     * @method getDepthStyle=0A=
     * @param {int} depth the depth of the ancestor.=0A=
     * @return {string} the css class for the spacer=0A=
     */=0A=
    getDepthStyle: function(depth) {=0A=
        return (this.getAncestor(depth).nextSibling) ? =0A=
            "ygtvdepthcell" : "ygtvblankdepthcell";=0A=
    },=0A=
=0A=
    /**=0A=
     * Get the markup for the node.  This is designed to be overrided so =
that we can=0A=
     * support different types of nodes.=0A=
     * @method getNodeHtml=0A=
     * @return {string} The HTML that will render this node.=0A=
     */=0A=
    getNodeHtml: function() { =0A=
        return ""; =0A=
    },=0A=
=0A=
    /**=0A=
     * Regenerates the html for this node and its children.  To be used =
when the=0A=
     * node is expanded and new children have been added.=0A=
     * @method refresh=0A=
     */=0A=
    refresh: function() {=0A=
        // this.loadComplete();=0A=
        this.getChildrenEl().innerHTML =3D this.completeRender();=0A=
=0A=
        if (this.hasIcon) {=0A=
            var el =3D this.getToggleEl();=0A=
            if (el) {=0A=
                el.className =3D this.getStyle();=0A=
            }=0A=
        }=0A=
    },=0A=
=0A=
    /**=0A=
     * Node toString=0A=
     * @method toString=0A=
     * @return {string} string representation of the node=0A=
     */=0A=
    toString: function() {=0A=
        return "Node (" + this.index + ")";=0A=
    }=0A=
=0A=
};=0A=
=0A=
YAHOO.augment(YAHOO.widget.Node, YAHOO.util.EventProvider);=0A=
=0A=
/**=0A=
 * The default node presentation.  The first parameter should be=0A=
 * either a string that will be used as the node's label, or an object=0A=
 * that has a string propery called label.  By default, the clicking the=0A=
 * label will toggle the expanded/collapsed state of the node.  By=0A=
 * changing the href property of the instance, this behavior can be=0A=
 * changed so that the label will go to the specified href.=0A=
 * @namespace YAHOO.widget=0A=
 * @class TextNode=0A=
 * @extends YAHOO.widget.Node=0A=
 * @constructor=0A=
 * @param oData {object} a string or object containing the data that will=0A=
 * be used to render this node.=0A=
 * Valid properties: =0A=
 * <dl>=0A=
 *   <dt>label</dt>=0A=
 *   <dd>The text for the node's label</dd>=0A=
 *   <dt>title</dt>=0A=
 *   <dd>The title attribute for the label anchor</dd>=0A=
 *   <dt>title</dt>=0A=
 *   <dd>The title attribute for the label anchor</dd>=0A=
 *   <dt>href</dt>=0A=
 *   <dd>The href for the node's label.  By default it is set to=0A=
 *   expand/collapse the node.</dd>=0A=
 *   <dt>target</dt>=0A=
 *   <dd>The target attribute for the label anchor</dd>=0A=
 *   <dt>style</dt>=0A=
 *   <dd>A CSS class to apply to the label anchor</dd>=0A=
 * </dl>=0A=
 * All other attributes are made available in noderef.data, which=0A=
 * can be used to store custom attributes.  TreeView.getNode(s)ByProperty=0A=
 * can be used to retreive a node by one of the attributes.=0A=
 * @param oParent {YAHOO.widget.Node} this node's parent node=0A=
 * @param expanded {boolean} the initial expanded/collapsed state=0A=
 */=0A=
YAHOO.widget.TextNode =3D function(oData, oParent, expanded) {=0A=
=0A=
    if (oData) { =0A=
        this.init(oData, oParent, expanded);=0A=
        this.setUpLabel(oData);=0A=
    }=0A=
=0A=
};=0A=
=0A=
YAHOO.extend(YAHOO.widget.TextNode, YAHOO.widget.Node, {=0A=
    =0A=
    /**=0A=
     * The CSS class for the label href.  Defaults to ygtvlabel, but can =
be=0A=
     * overridden to provide a custom presentation for a specific node.=0A=
     * @property labelStyle=0A=
     * @type string=0A=
     */=0A=
    labelStyle: "ygtvlabel",=0A=
=0A=
    /**=0A=
     * The derived element id of the label for this node=0A=
     * @property labelElId=0A=
     * @type string=0A=
     */=0A=
    labelElId: null,=0A=
=0A=
    /**=0A=
     * The text for the label.  It is assumed that the oData parameter =
will=0A=
     * either be a string that will be used as the label, or an object =
that=0A=
     * has a property called "label" that we will use.=0A=
     * @property label=0A=
     * @type string=0A=
     */=0A=
    label: null,=0A=
=0A=
    textNodeParentChange: function() {=0A=
 =0A=
        /**=0A=
         * Custom event that is fired when the text node label is =
clicked.  The=0A=
         * custom event is defined on the tree instance, so there is a =
single=0A=
         * event that handles all nodes in the tree.  The node clicked =
is =0A=
         * provided as an argument=0A=
         *=0A=
         * @event labelClick=0A=
         * @for YAHOO.widget.TreeView=0A=
         * @param {YAHOO.widget.Node} node the node clicked=0A=
         */=0A=
        if (this.tree && !this.tree.hasEvent("labelClick")) {=0A=
            this.tree.createEvent("labelClick", this.tree);=0A=
        }=0A=
       =0A=
    },=0A=
=0A=
    /**=0A=
     * Sets up the node label=0A=
     * @method setUpLabel=0A=
     * @param oData string containing the label, or an object with a =
label property=0A=
     */=0A=
    setUpLabel: function(oData) { =0A=
        =0A=
        // set up the custom event on the tree=0A=
        this.textNodeParentChange();=0A=
        this.subscribe("parentChange", this.textNodeParentChange);=0A=
=0A=
        if (typeof oData =3D=3D "string") {=0A=
            oData =3D { label: oData };=0A=
        }=0A=
        this.label =3D oData.label;=0A=
        this.data.label =3D oData.label;=0A=
        =0A=
        // update the link=0A=
        if (oData.href) {=0A=
            this.href =3D encodeURI(oData.href);=0A=
        }=0A=
=0A=
        // set the target=0A=
        if (oData.target) {=0A=
            this.target =3D oData.target;=0A=
        }=0A=
=0A=
        if (oData.style) {=0A=
            this.labelStyle =3D oData.style;=0A=
        }=0A=
=0A=
        if (oData.title) {=0A=
            this.title =3D oData.title;=0A=
        }=0A=
=0A=
        this.labelElId =3D "ygtvlabelel" + this.index;=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the label element=0A=
     * @for YAHOO.widget.TextNode=0A=
     * @method getLabelEl=0A=
     * @return {object} the element=0A=
     */=0A=
    getLabelEl: function() { =0A=
        return document.getElementById(this.labelElId);=0A=
    },=0A=
=0A=
    // overrides YAHOO.widget.Node=0A=
    getNodeHtml: function() { =0A=
        var sb =3D [];=0A=
=0A=
        sb[sb.length] =3D '<table border=3D"0" cellpadding=3D"0" =
cellspacing=3D"0">';=0A=
        sb[sb.length] =3D '<tr>';=0A=
        =0A=
        for (var i=3D0;i<this.depth;++i) {=0A=
            //sb[sb.length] =3D '<td><div class=3D"' + =
this.getDepthStyle(i) + '">&#160;</div></td>';=0A=
            //sb[sb.length] =3D '<td><div class=3D"' + =
this.getDepthStyle(i) + '"></div></td>';=0A=
            sb[sb.length] =3D '<td class=3D"' + this.getDepthStyle(i) + =
'"><div class=3D"ygtvspacer"></div></td>';=0A=
        }=0A=
=0A=
        var getNode =3D 'YAHOO.widget.TreeView.getNode(\'' +=0A=
                        this.tree.id + '\',' + this.index + ')';=0A=
=0A=
        sb[sb.length] =3D '<td';=0A=
        // sb[sb.length] =3D ' onselectstart=3D"return false"';=0A=
        sb[sb.length] =3D ' id=3D"' + this.getToggleElId() + '"';=0A=
        sb[sb.length] =3D ' class=3D"' + this.getStyle() + '"';=0A=
        if (this.hasChildren(true)) {=0A=
            sb[sb.length] =3D ' onmouseover=3D"this.className=3D';=0A=
            sb[sb.length] =3D getNode + '.getHoverStyle()"';=0A=
            sb[sb.length] =3D ' onmouseout=3D"this.className=3D';=0A=
            sb[sb.length] =3D getNode + '.getStyle()"';=0A=
        }=0A=
        sb[sb.length] =3D ' onclick=3D"javascript:' + =
this.getToggleLink() + '">';=0A=
=0A=
        sb[sb.length] =3D '<div class=3D"ygtvspacer">';=0A=
=0A=
        /*=0A=
        sb[sb.length] =3D '<img id=3D"' + this.getSpacerId() + '"';=0A=
        sb[sb.length] =3D ' alt=3D""';=0A=
        sb[sb.length] =3D ' tabindex=3D0';=0A=
        sb[sb.length] =3D ' src=3D"' + this.spacerPath + '"';=0A=
        sb[sb.length] =3D ' title=3D"' + this.getStateText() + '"';=0A=
        sb[sb.length] =3D ' class=3D"ygtvspacer"';=0A=
        // sb[sb.length] =3D ' onkeypress=3D"return ' + getNode + =
'".onKeyPress()"';=0A=
        sb[sb.length] =3D ' />';=0A=
        */=0A=
=0A=
        //sb[sb.length] =3D '&#160;';=0A=
=0A=
        sb[sb.length] =3D '</div>';=0A=
        sb[sb.length] =3D '</td>';=0A=
        sb[sb.length] =3D '<td ';=0A=
        sb[sb.length] =3D (this.nowrap) ? ' nowrap=3D"nowrap" ' : '';=0A=
        sb[sb.length] =3D ' >';=0A=
        sb[sb.length] =3D '<a';=0A=
        sb[sb.length] =3D ' id=3D"' + this.labelElId + '"';=0A=
        if (this.title) {=0A=
            sb[sb.length] =3D ' title=3D"' + this.title + '"';=0A=
        }=0A=
        sb[sb.length] =3D ' class=3D"' + this.labelStyle + '"';=0A=
        sb[sb.length] =3D ' href=3D"' + this.href + '"';=0A=
        sb[sb.length] =3D ' target=3D"' + this.target + '"';=0A=
        sb[sb.length] =3D ' onclick=3D"return ' + getNode + =
'.onLabelClick(' + getNode +')"';=0A=
        if (this.hasChildren(true)) {=0A=
            sb[sb.length] =3D ' =
onmouseover=3D"document.getElementById(\'';=0A=
            sb[sb.length] =3D this.getToggleElId() + '\').className=3D';=0A=
            sb[sb.length] =3D getNode + '.getHoverStyle()"';=0A=
            sb[sb.length] =3D ' =
onmouseout=3D"document.getElementById(\'';=0A=
            sb[sb.length] =3D this.getToggleElId() + '\').className=3D';=0A=
            sb[sb.length] =3D getNode + '.getStyle()"';=0A=
        }=0A=
        sb[sb.length] =3D ' >';=0A=
        sb[sb.length] =3D this.label;=0A=
        sb[sb.length] =3D '</a>';=0A=
        sb[sb.length] =3D '</td>';=0A=
        sb[sb.length] =3D '</tr>';=0A=
        sb[sb.length] =3D '</table>';=0A=
=0A=
        return sb.join("");=0A=
    },=0A=
=0A=
=0A=
    /**=0A=
     * Executed when the label is clicked.  Fires the labelClick custom =
event.=0A=
     * @method onLabelClick=0A=
     * @param me {Node} this node=0A=
     * @scope the anchor tag clicked=0A=
     * @return false to cancel the anchor click=0A=
     */=0A=
    onLabelClick: function(me) { =0A=
        return me.tree.fireEvent("labelClick", me);=0A=
        //return true;=0A=
    },=0A=
=0A=
    toString: function() { =0A=
        return "TextNode (" + this.index + ") " + this.label;=0A=
    }=0A=
=0A=
});=0A=
/**=0A=
 * A custom YAHOO.widget.Node that handles the unique nature of =0A=
 * the virtual, presentationless root node.=0A=
 * @namespace YAHOO.widget=0A=
 * @class RootNode=0A=
 * @extends YAHOO.widget.Node=0A=
 * @param oTree {YAHOO.widget.TreeView} The tree instance this node =
belongs to=0A=
 * @constructor=0A=
 */=0A=
YAHOO.widget.RootNode =3D function(oTree) {=0A=
	// Initialize the node with null params.  The root node is a=0A=
	// special case where the node has no presentation.  So we have=0A=
	// to alter the standard properties a bit.=0A=
	this.init(null, null, true);=0A=
	=0A=
	/*=0A=
	 * For the root node, we get the tree reference from as a param=0A=
	 * to the constructor instead of from the parent element.=0A=
	 */=0A=
	this.tree =3D oTree;=0A=
};=0A=
=0A=
YAHOO.extend(YAHOO.widget.RootNode, YAHOO.widget.Node, {=0A=
    =0A=
    // overrides YAHOO.widget.Node=0A=
    getNodeHtml: function() { =0A=
        return ""; =0A=
    },=0A=
=0A=
    toString: function() { =0A=
        return "RootNode";=0A=
    },=0A=
=0A=
    loadComplete: function() { =0A=
        this.tree.draw();=0A=
    },=0A=
=0A=
    collapse: function() {},=0A=
    expand: function() {}=0A=
=0A=
});=0A=
/**=0A=
 * This implementation takes either a string or object for the=0A=
 * oData argument.  If is it a string, we will use it for the display=0A=
 * of this node (and it can contain any html code).  If the parameter=0A=
 * is an object, we look for a parameter called "html" that will be=0A=
 * used for this node's display.=0A=
 * @namespace YAHOO.widget=0A=
 * @class HTMLNode=0A=
 * @extends YAHOO.widget.Node=0A=
 * @constructor=0A=
 * @param oData {object} a string or object containing the data that will=0A=
 * be used to render this node.  =0A=
 * Valid configuration properties: =0A=
 * <dl>=0A=
 *   <dt>html</dt>=0A=
 *   <dd>The html content for the node</dd>=0A=
 * </dl>=0A=
 * All other attributes are made available in noderef.data, which=0A=
 * can be used to store custom attributes.  TreeView.getNode(s)ByProperty=0A=
 * can be used to retreive a node by one of the attributes.=0A=
 * @param oParent {YAHOO.widget.Node} this node's parent node=0A=
 * @param expanded {boolean} the initial expanded/collapsed state=0A=
 * @param hasIcon {boolean} specifies whether or not leaf nodes should=0A=
 * be rendered with or without a horizontal line line icon. If the icon=0A=
 * is not displayed, the content fills the space it would have occupied.=0A=
 * This option operates independently of the leaf node presentation logic=0A=
 * for dynamic nodes.=0A=
 */=0A=
YAHOO.widget.HTMLNode =3D function(oData, oParent, expanded, hasIcon) {=0A=
    if (oData) { =0A=
        this.init(oData, oParent, expanded);=0A=
        this.initContent(oData, hasIcon);=0A=
    }=0A=
};=0A=
=0A=
YAHOO.extend(YAHOO.widget.HTMLNode, YAHOO.widget.Node, {=0A=
=0A=
    /**=0A=
     * The CSS class for the html content container.  Defaults to =
ygtvhtml, but =0A=
     * can be overridden to provide a custom presentation for a specific =
node.=0A=
     * @property contentStyle=0A=
     * @type string=0A=
     */=0A=
    contentStyle: "ygtvhtml",=0A=
=0A=
    /**=0A=
     * The generated id that will contain the data passed in by the =
implementer.=0A=
     * @property contentElId=0A=
     * @type string=0A=
     */=0A=
    contentElId: null,=0A=
=0A=
    /**=0A=
     * The HTML content to use for this node's display=0A=
     * @property html=0A=
     * @type string=0A=
     */=0A=
    html: null,=0A=
=0A=
    /**=0A=
     * Sets up the node label=0A=
     * @property initContent=0A=
     * @param oData {object} An html string or object containing an html =
property=0A=
     * @param hasIcon {boolean} determines if the node will be rendered =
with an=0A=
     * icon or not=0A=
     */=0A=
    initContent: function(oData, hasIcon) { =0A=
        this.setHtml(oData);=0A=
        this.contentElId =3D "ygtvcontentel" + this.index;=0A=
        this.hasIcon =3D hasIcon;=0A=
=0A=
    },=0A=
=0A=
    /**=0A=
     * Synchronizes the node.data, node.html, and the node's content=0A=
     * @property setHtml=0A=
     * @param o {object} An html string or object containing an html =
property=0A=
     */=0A=
    setHtml: function(o) {=0A=
=0A=
        this.data =3D o;=0A=
        this.html =3D (typeof o =3D=3D=3D "string") ? o : o.html;=0A=
=0A=
        var el =3D this.getContentEl();=0A=
        if (el) {=0A=
            el.innerHTML =3D this.html;=0A=
        }=0A=
=0A=
    },=0A=
=0A=
    /**=0A=
     * Returns the outer html element for this node's content=0A=
     * @method getContentEl=0A=
     * @return {HTMLElement} the element=0A=
     */=0A=
    getContentEl: function() { =0A=
        return document.getElementById(this.contentElId);=0A=
    },=0A=
=0A=
    // overrides YAHOO.widget.Node=0A=
    getNodeHtml: function() { =0A=
        var sb =3D [];=0A=
=0A=
        sb[sb.length] =3D '<table border=3D"0" cellpadding=3D"0" =
cellspacing=3D"0">';=0A=
        sb[sb.length] =3D '<tr>';=0A=
        =0A=
        for (var i=3D0;i<this.depth;++i) {=0A=
            //sb[sb.length] =3D '<td class=3D"' + this.getDepthStyle(i) =
+ '">&#160;</td>';=0A=
            sb[sb.length] =3D '<td class=3D"' + this.getDepthStyle(i) + =
'"><div class=3D"ygtvspacer"></div></td>';=0A=
        }=0A=
=0A=
        if (this.hasIcon) {=0A=
            sb[sb.length] =3D '<td';=0A=
            sb[sb.length] =3D ' id=3D"' + this.getToggleElId() + '"';=0A=
            sb[sb.length] =3D ' class=3D"' + this.getStyle() + '"';=0A=
            sb[sb.length] =3D ' onclick=3D"javascript:' + =
this.getToggleLink() + '"';=0A=
            if (this.hasChildren(true)) {=0A=
                sb[sb.length] =3D ' onmouseover=3D"this.className=3D';=0A=
                sb[sb.length] =3D 'YAHOO.widget.TreeView.getNode(\'';=0A=
                sb[sb.length] =3D this.tree.id + '\',' + this.index +  =
').getHoverStyle()"';=0A=
                sb[sb.length] =3D ' onmouseout=3D"this.className=3D';=0A=
                sb[sb.length] =3D 'YAHOO.widget.TreeView.getNode(\'';=0A=
                sb[sb.length] =3D this.tree.id + '\',' + this.index +  =
').getStyle()"';=0A=
            }=0A=
            //sb[sb.length] =3D '>&#160;</td>';=0A=
            sb[sb.length] =3D '><div class=3D"ygtvspacer"></div></td>';=0A=
        }=0A=
=0A=
        sb[sb.length] =3D '<td';=0A=
        sb[sb.length] =3D ' id=3D"' + this.contentElId + '"';=0A=
        sb[sb.length] =3D ' class=3D"' + this.contentStyle + '"';=0A=
        sb[sb.length] =3D (this.nowrap) ? ' nowrap=3D"nowrap" ' : '';=0A=
        sb[sb.length] =3D ' >';=0A=
        sb[sb.length] =3D this.html;=0A=
        sb[sb.length] =3D '</td>';=0A=
        sb[sb.length] =3D '</tr>';=0A=
        sb[sb.length] =3D '</table>';=0A=
=0A=
        return sb.join("");=0A=
    },=0A=
=0A=
    toString: function() { =0A=
        return "HTMLNode (" + this.index + ")";=0A=
    }=0A=
=0A=
});=0A=
/**=0A=
 * A menu-specific implementation that differs from TextNode in that =
only =0A=
 * one sibling can be expanded at a time.=0A=
 * @namespace YAHOO.widget=0A=
 * @class MenuNode=0A=
 * @extends YAHOO.widget.TextNode=0A=
 * @param oData {object} a string or object containing the data that will=0A=
 * be used to render this node.=0A=
 * Valid properties: =0A=
 * <dl>=0A=
 *   <dt>label</dt>=0A=
 *   <dd>The text for the node's label</dd>=0A=
 *   <dt>title</dt>=0A=
 *   <dd>The title attribute for the label anchor</dd>=0A=
 *   <dt>title</dt>=0A=
 *   <dd>The title attribute for the label anchor</dd>=0A=
 *   <dt>href</dt>=0A=
 *   <dd>The href for the node's label.  By default it is set to=0A=
 *   expand/collapse the node.</dd>=0A=
 *   <dt>target</dt>=0A=
 *   <dd>The target attribute for the label anchor</dd>=0A=
 *   <dt>style</dt>=0A=
 *   <dd>A CSS class to apply to the label anchor</dd>=0A=
 * </dl>=0A=
 * All other attributes are made available in noderef.data, which=0A=
 * can be used to store custom attributes.  TreeView.getNode(s)ByProperty=0A=
 * can be used to retreive a node by one of the attributes.=0A=
 * @param oParent {YAHOO.widget.Node} this node's parent node=0A=
 * @param expanded {boolean} the initial expanded/collapsed state=0A=
 * @constructor=0A=
 */=0A=
YAHOO.widget.MenuNode =3D function(oData, oParent, expanded) {=0A=
	if (oData) { =0A=
		this.init(oData, oParent, expanded);=0A=
		this.setUpLabel(oData);=0A=
	}=0A=
=0A=
    /*=0A=
     * Menus usually allow only one branch to be open at a time.=0A=
     */=0A=
	this.multiExpand =3D false;=0A=
=0A=
=0A=
};=0A=
=0A=
YAHOO.extend(YAHOO.widget.MenuNode, YAHOO.widget.TextNode, {=0A=
=0A=
    toString: function() { =0A=
        return "MenuNode (" + this.index + ") " + this.label;=0A=
    }=0A=
=0A=
});=0A=
/**=0A=
 * A static factory class for tree view expand/collapse animations=0A=
 * @class TVAnim=0A=
 * @static=0A=
 */=0A=
YAHOO.widget.TVAnim =3D function() {=0A=
    return {=0A=
        /**=0A=
         * Constant for the fade in animation=0A=
         * @property FADE_IN=0A=
         * @type string=0A=
         * @static=0A=
         */=0A=
        FADE_IN: "TVFadeIn",=0A=
=0A=
        /**=0A=
         * Constant for the fade out animation=0A=
         * @property FADE_OUT=0A=
         * @type string=0A=
         * @static=0A=
         */=0A=
        FADE_OUT: "TVFadeOut",=0A=
=0A=
        /**=0A=
         * Returns a ygAnim instance of the given type=0A=
         * @method getAnim=0A=
         * @param type {string} the type of animation=0A=
         * @param el {HTMLElement} the element to element (probably the =
children div)=0A=
         * @param callback {function} function to invoke when the =
animation is done.=0A=
         * @return {YAHOO.util.Animation} the animation instance=0A=
         * @static=0A=
         */=0A=
        getAnim: function(type, el, callback) {=0A=
            if (YAHOO.widget[type]) {=0A=
                return new YAHOO.widget[type](el, callback);=0A=
            } else {=0A=
                return null;=0A=
            }=0A=
        },=0A=
=0A=
        /**=0A=
         * Returns true if the specified animation class is available=0A=
         * @method isValid=0A=
         * @param type {string} the type of animation=0A=
         * @return {boolean} true if valid, false if not=0A=
         * @static=0A=
         */=0A=
        isValid: function(type) {=0A=
            return (YAHOO.widget[type]);=0A=
        }=0A=
    };=0A=
} ();=0A=
=0A=
/**=0A=
 * A 1/2 second fade-in animation.=0A=
 * @class TVFadeIn=0A=
 * @constructor=0A=
 * @param el {HTMLElement} the element to animate=0A=
 * @param callback {function} function to invoke when the animation is =
finished=0A=
 */=0A=
YAHOO.widget.TVFadeIn =3D function(el, callback) {=0A=
    /**=0A=
     * The element to animate=0A=
     * @property el=0A=
     * @type HTMLElement=0A=
     */=0A=
    this.el =3D el;=0A=
=0A=
    /**=0A=
     * the callback to invoke when the animation is complete=0A=
     * @property callback=0A=
     * @type function=0A=
     */=0A=
    this.callback =3D callback;=0A=
=0A=
};=0A=
=0A=
YAHOO.widget.TVFadeIn.prototype =3D {=0A=
    /**=0A=
     * Performs the animation=0A=
     * @method animate=0A=
     */=0A=
    animate: function() {=0A=
        var tvanim =3D this;=0A=
=0A=
        var s =3D this.el.style;=0A=
        s.opacity =3D 0.1;=0A=
        s.filter =3D "alpha(opacity=3D10)";=0A=
        s.display =3D "";=0A=
=0A=
        var dur =3D 0.4; =0A=
        var a =3D new YAHOO.util.Anim(this.el, {opacity: {from: 0.1, to: =
1, unit:""}}, dur);=0A=
        a.onComplete.subscribe( function() { tvanim.onComplete(); } );=0A=
        a.animate();=0A=
    },=0A=
=0A=
    /**=0A=
     * Clean up and invoke callback=0A=
     * @method onComplete=0A=
     */=0A=
    onComplete: function() {=0A=
        this.callback();=0A=
    },=0A=
=0A=
    /**=0A=
     * toString=0A=
     * @method toString=0A=
     * @return {string} the string representation of the instance=0A=
     */=0A=
    toString: function() {=0A=
        return "TVFadeIn";=0A=
    }=0A=
};=0A=
=0A=
/**=0A=
 * A 1/2 second fade out animation.=0A=
 * @class TVFadeOut=0A=
 * @constructor=0A=
 * @param el {HTMLElement} the element to animate=0A=
 * @param callback {Function} function to invoke when the animation is =
finished=0A=
 */=0A=
YAHOO.widget.TVFadeOut =3D function(el, callback) {=0A=
    /**=0A=
     * The element to animate=0A=
     * @property el=0A=
     * @type HTMLElement=0A=
     */=0A=
    this.el =3D el;=0A=
=0A=
    /**=0A=
     * the callback to invoke when the animation is complete=0A=
     * @property callback=0A=
     * @type function=0A=
     */=0A=
    this.callback =3D callback;=0A=
=0A=
};=0A=
=0A=
YAHOO.widget.TVFadeOut.prototype =3D {=0A=
    /**=0A=
     * Performs the animation=0A=
     * @method animate=0A=
     */=0A=
    animate: function() {=0A=
        var tvanim =3D this;=0A=
        var dur =3D 0.4;=0A=
        var a =3D new YAHOO.util.Anim(this.el, {opacity: {from: 1, to: =
0.1, unit:""}}, dur);=0A=
        a.onComplete.subscribe( function() { tvanim.onComplete(); } );=0A=
        a.animate();=0A=
    },=0A=
=0A=
    /**=0A=
     * Clean up and invoke callback=0A=
     * @method onComplete=0A=
     */=0A=
    onComplete: function() {=0A=
        var s =3D this.el.style;=0A=
        s.display =3D "none";=0A=
        // s.opacity =3D 1;=0A=
        s.filter =3D "alpha(opacity=3D100)";=0A=
        this.callback();=0A=
    },=0A=
=0A=
    /**=0A=
     * toString=0A=
     * @method toString=0A=
     * @return {string} the string representation of the instance=0A=
     */=0A=
    toString: function() {=0A=
        return "TVFadeOut";=0A=
    }=0A=
};=0A=
=0A=
YAHOO.register("treeview", YAHOO.widget.TreeView, {version: "2.5.1", =
build: "984"});=0A=

------=_NextPart_000_0027_01C98A15.47365860
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://help.adobe.com/en_US/Dreamweaver/10.0_Using/toc.js

=0A=
(function() {=0A=
var tree;=0A=
function treeInit() {=0A=
	tree =3D new YAHOO.widget.TreeView("nav_content");=0A=
	var root =3D tree.getRoot();            =0A=
	=0A=
	=0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ffbahtml =3D =0A=
        { label: "Resources",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ffba.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ffbahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ffbahtml=
, =0A=
        root, false);=0A=
        =0A=
        var dataObjWSC2A06A56B1C5499a8E5C665EAD5C3DAFhtml =3D =0A=
        { label: "Activation and registration",=0A=
        href:"WSC2A06A56-B1C5-499a-8E5C-665EAD5C3DAF.html",=0A=
        target:"_self"};=0A=
        var WSC2A06A56B1C5499a8E5C665EAD5C3DAFhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSC2A06A56B1C5499a8E5C665EAD5C3DAFhtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ffbahtml, false);=0A=
        =0A=
        var dataObjWS2BE9B3A744AF4d86AC08912E2D9F1ECBhtml =3D =0A=
        { label: "Help and support",=0A=
        href:"WS2BE9B3A7-44AF-4d86-AC08-912E2D9F1ECB.html",=0A=
        target:"_self"};=0A=
        var WS2BE9B3A744AF4d86AC08912E2D9F1ECBhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS2BE9B3A744AF4d86AC08912E2D9F1ECBhtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ffbahtml, false);=0A=
        =0A=
        var dataObjWS3431573C0AAA414b9EEE253C503C1E2Fhtml =3D =0A=
        { label: "Services, downloads, and extras",=0A=
        href:"WS3431573C-0AAA-414b-9EEE-253C503C1E2F.html",=0A=
        target:"_self"};=0A=
        var WS3431573C0AAA414b9EEE253C503C1E2Fhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS3431573C0AAA414b9EEE253C503C1E2Fhtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ffbahtml, false);=0A=
        =0A=
        var dataObjWS2C41F19D502B4fb58A544442E2127C84ahtml =3D =0A=
        { label: "What=E2=80=99s new",=0A=
        href:"WS2C41F19D-502B-4fb5-8A54-4442E2127C84a.html",=0A=
        target:"_self"};=0A=
        var WS2C41F19D502B4fb58A544442E2127C84ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS2C41F19D502B4fb58A544442E2127C84ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ffbahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc8ahtml =3D =0A=
        { label: "Workspace",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc8a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc8ahtml, =0A=
        root, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc5ahtml =3D =0A=
        { label: "Dreamweaver workflow and workspace",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc5a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc5ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc5ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc8ahtml, false);=0A=
        =0A=
        var dataObjWSCD839EA342904f119046E81316EF66EFahtml =3D =0A=
        { label: "Dreamweaver workflow overview",=0A=
        href:"WSCD839EA3-4290-4f11-9046-E81316EF66EFa.html",=0A=
        target:"_self"};=0A=
        var WSCD839EA342904f119046E81316EF66EFahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSCD839EA342904f119046E81316EF66EFahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc4ahtml =3D =0A=
        { label: "Workspace layout overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc4a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc4ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc3ahtml =3D =0A=
        { label: "Workspace elements overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc3a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc3ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc3ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc2ahtml =3D =0A=
        { label: "Document window overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc2a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc2ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc1ahtml =3D =0A=
        { label: "Document toolbar overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc1a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fc0ahtml =3D =0A=
        { label: "Standard toolbar overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fc0a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fc0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fc0ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fbfahtml =3D =0A=
        { label: "Status bar overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fbfa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fbfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fbfahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fbdahtml =3D =0A=
        { label: "Coding toolbar overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fbda.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fbdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fbdahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fbcahtml =3D =0A=
        { label: "Style Rendering toolbar overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fbca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fbcahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fbcahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fbbahtml =3D =0A=
        { label: "Property inspector overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fbba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fbbahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fbbahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fbeahtml =3D =0A=
        { label: "Insert panel overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fbea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fbeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fbeahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fbaahtml =3D =0A=
        { label: "Files panel overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fbaa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fbaahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fbaahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fb9ahtml =3D =0A=
        { label: "CSS Styles panel overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fb9a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fb9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fb9ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fb8ahtml =3D =0A=
        { label: "Visual guides overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fb8a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fb8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fb8ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWS73AD9CA4FBC64645AB88BCC4C63764FCahtml =3D =0A=
        { label: "GoLive users",=0A=
        href:"WS73AD9CA4-FBC6-4645-AB88-BCC4C63764FCa.html",=0A=
        target:"_self"};=0A=
        var WS73AD9CA4FBC64645AB88BCC4C63764FCahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS73AD9CA4FBC64645AB88BCC4C63764FCahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc5ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fb7ahtml =3D =0A=
        { label: "Working in the Document window",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fb7a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fb7ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fb7ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc8ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fb6ahtml =3D =0A=
        { label: "Switch between views in the Document window",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fb6a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fb6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fb6ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fb7ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fb1ahtml =3D =0A=
        { label: "Cascade or tile Document windows",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fb1a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fb1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fb1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fb7ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657faeahtml =3D =0A=
        { label: "Resize the Document window",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7faea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657faeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657faeahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fb7ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657faaahtml =3D =0A=
        { label: "Set window size and connection speed",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7faaa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657faaahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657faaahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fb7ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fa9ahtml =3D =0A=
        { label: "Reports in Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fa9a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fa9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fa9ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fb7ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fa8ahtml =3D =0A=
        { label: "Using toolbars, inspectors, and context menus",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fa8a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fa8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fa8ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc8ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fa7ahtml =3D =0A=
        { label: "Display toolbars",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fa7a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fa7ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fa7ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fa8ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f9bahtml =3D =0A=
        { label: "Use the Property inspector",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f9ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f9bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f9bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fa8ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f96ahtml =3D =0A=
        { label: "Use context menus",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f96a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f96ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f96ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fa8ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f82ahtml =3D =0A=
        { label: "Customizing the CS4 workspace",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f82a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f82ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f82ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc8ahtml, false);=0A=
        =0A=
        var dataObjWS8599BC5C3E44406c9288C3B3BBEB5E88html =3D =0A=
        { label: "Manage windows and panels",=0A=
        href:"WS8599BC5C-3E44-406c-9288-C3B3BBEB5E88.html",=0A=
        target:"_self"};=0A=
        var WS8599BC5C3E44406c9288C3B3BBEB5E88html =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS8599BC5C3E44406c9288C3B3BBEB5E88html, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWS9403857B903B4bd595D4D6B4F21C24BBhtml =3D =0A=
        { label: "Save and switch workspaces",=0A=
        href:"WS9403857B-903B-4bd5-95D4-D6B4F21C24BB.html",=0A=
        target:"_self"};=0A=
        var WS9403857B903B4bd595D4D6B4F21C24BBhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS9403857B903B4bd595D4D6B4F21C24BBhtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f7dahtml =3D =0A=
        { label: "Display tabbed documents (Dreamweaver Macintosh)",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f7da.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f7dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f7dahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWS1E7CF3CE6CE1459c81D086AA5395B5EBhtml =3D =0A=
        { label: "Turn on color icons",=0A=
        href:"WS1E7CF3CE-6CE1-459c-81D0-86AA5395B5EB.html",=0A=
        target:"_self"};=0A=
        var WS1E7CF3CE6CE1459c81D086AA5395B5EBhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS1E7CF3CE6CE1459c81D086AA5395B5EBhtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f75ahtml =3D =0A=
        { label: "Hide and display the Dreamweaver Welcome screen",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f75a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f75ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f75ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f72ahtml =3D =0A=
        { label: "About customizing Dreamweaver in multiuser systems",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f72a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f72ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f72ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f71ahtml =3D =0A=
        { label: "Set General preferences for Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f71a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f71ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f71ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f70ahtml =3D =0A=
        { label: "Set Fonts preferences for documents in Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f70a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f70ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f70ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f6bahtml =3D =0A=
        { label: "Customize Dreamweaver highlighting colors",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f6ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f6bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f6bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f82ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657764ahtml =3D =0A=
        { label: "Keyboard shortcuts",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7764a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657764ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657764ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc8ahtml, false);=0A=
        =0A=
        var dataObjWS9C38B39DA7F946e7A689A354790CA0C2ahtml =3D =0A=
        { label: "Create a reference sheet for the current shortcut set",=0A=
        href:"WS9C38B39D-A7F9-46e7-A689-A354790CA0C2a.html",=0A=
        target:"_self"};=0A=
        var WS9C38B39DA7F946e7A689A354790CA0C2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS9C38B39DA7F946e7A689A354790CA0C2ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657764ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657763ahtml =3D =0A=
        { label: "Customize keyboard shortcuts",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7763a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657763ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657763ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657764ahtml, false);=0A=
        =0A=
        var dataObjWS2141B5CADFF6482b915B2180742302D9ahtml =3D =0A=
        { label: "About keyboard shortcuts and non-U.S. keyboards",=0A=
        href:"WS2141B5CA-DFF6-482b-915B-2180742302D9a.html",=0A=
        target:"_self"};=0A=
        var WS2141B5CADFF6482b915B2180742302D9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS2141B5CADFF6482b915B2180742302D9ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657764ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657762ahtml =3D =0A=
        { label: "Extensions",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7762a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657762ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657762ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657fc8ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657761ahtml =3D =0A=
        { label: "Add and manage extensions in Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7761a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657761ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657761ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657762ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f63ahtml =3D =0A=
        { label: "Working with Dreamweaver sites",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f63a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f63ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f63ahtml, =0A=
        root, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f62ahtml =3D =0A=
        { label: "Setting up a Dreamweaver site",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f62a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f62ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f62ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f63ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f61ahtml =3D =0A=
        { label: "About Dreamweaver sites",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f61a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f61ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f61ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f60ahtml =3D =0A=
        { label: "Understanding local and remote folder structure",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f60a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f60ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f60ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f09ahtml =3D =0A=
        { label: "Using the Manage Sites dialog box",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f09a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f09ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f09ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f5fahtml =3D =0A=
        { label: "Set up and edit a local root folder",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f5fa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f5fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f5fahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWSBE25912DA9DE4ba19F854C692F5C14ADahtml =3D =0A=
        { label: "Set up a remote folder",=0A=
        href:"WSBE25912D-A9DE-4ba1-9F85-4C692F5C14ADa.html",=0A=
        target:"_self"};=0A=
        var WSBE25912DA9DE4ba19F854C692F5C14ADahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSBE25912DA9DE4ba19F854C692F5C14ADahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f56ahtml =3D =0A=
        { label: "Troubleshoot the remote folder setup",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f56a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f56ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f56ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f2179e0ahtml =3D =0A=
        { label: "Set up a testing server",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-79e0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f2179e0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f2179e0ahtml=
, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f2179dfahtml =3D =0A=
        { label: "About the URL prefix for the testing server",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-79dfa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f2179dfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f2179dfahtml=
, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f53ahtml =3D =0A=
        { label: "Edit an existing remote website in Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f53a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f53ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f53ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f38ahtml =3D =0A=
        { label: "Remove a Dreamweaver site from your list of sites",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f38a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f38ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f38ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f3bahtml =3D =0A=
        { label: "Import and export site settings",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f3ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f3bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f3bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eceahtml =3D =0A=
        { label: "Set site preferences for transferring files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ecea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eceahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eceahtml=
, =0A=
        WScbb6b82af5544594822510a94ae8d657f62ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f37ahtml =3D =0A=
        { label: "Managing Contribute sites with Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f37a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f37ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f37ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f63ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f36ahtml =3D =0A=
        { label: "Managing Contribute sites",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f36a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f36ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f36ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f35ahtml =3D =0A=
        { label: "Site structure and page design for a Contribute site",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f35a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f35ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f35ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f33ahtml =3D =0A=
        { label: "File transfer to and from a Contribute site",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f33a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f33ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f33ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f32ahtml =3D =0A=
        { label: "Contribute file and folder permissions on the server",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f32a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f32ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f32ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f31ahtml =3D =0A=
        { label: "Contribute special files",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f31a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f31ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f31ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f30ahtml =3D =0A=
        { label: "Prepare a site for use with Contribute",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f30a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f30ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f30ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f2fahtml =3D =0A=
        { label: "Administer a Contribute site using Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f2fa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f2fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f2fahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f2cahtml =3D =0A=
        { label: "Delete, move, or rename a remote file in a Contribute =
site",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f2ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f2cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f2cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f2bahtml =3D =0A=
        { label: "Enable Contribute users to access templates without =
root folder access",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f2ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f2bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f2bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657f24ahtml =3D =0A=
        { label: "Troubleshoot a Contribute site",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7f24a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657f24ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657f24ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f37ahtml, false);=0A=
        =0A=
        var dataObjWS941A29E3F7124f45811F63D223E8FFF1ahtml =3D =0A=
        { label: "Working on files without defining a site",=0A=
        href:"WS941A29E3-F712-4f45-811F-63D223E8FFF1a.html",=0A=
        target:"_self"};=0A=
        var WS941A29E3F7124f45811F63D223E8FFF1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS941A29E3F7124f45811F63D223E8FFF1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f63ahtml, false);=0A=
        =0A=
        var dataObjWS5356E7AD00DC4db1A50AF4B995376618ahtml =3D =0A=
        { label: "Connect to an FTP server without defining a site",=0A=
        href:"WS5356E7AD-00DC-4db1-A50A-F4B995376618a.html",=0A=
        target:"_self"};=0A=
        var WS5356E7AD00DC4db1A50AF4B995376618ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS5356E7AD00DC4db1A50AF4B995376618ahtml, =0A=
        WS941A29E3F7124f45811F63D223E8FFF1ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e80ahtml =3D =0A=
        { label: "Connect to an RDS server without defining a site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e80a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e80ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e80ahtml=
, =0A=
        WS941A29E3F7124f45811F63D223E8FFF1ahtml, false);=0A=
        =0A=
        var dataObjWSAB3E616C504045edB1ABBBEC97F1B63Aahtml =3D =0A=
        { label: "Basic tab options",=0A=
        href:"WSAB3E616C-5040-45ed-B1AB-BBEC97F1B63Aa.html",=0A=
        target:"_self"};=0A=
        var WSAB3E616C504045edB1ABBBEC97F1B63Aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSAB3E616C504045edB1ABBBEC97F1B63Aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657f63ahtml, false);=0A=
        =0A=
        var dataObjWS09C787F056BA4fbc87524B897684AC75ahtml =3D =0A=
        { label: "Set Basic tab Editing Files options",=0A=
        href:"WS09C787F0-56BA-4fbc-8752-4B897684AC75a.html",=0A=
        target:"_self"};=0A=
        var WS09C787F056BA4fbc87524B897684AC75ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS09C787F056BA4fbc87524B897684AC75ahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWS0F81A17DF487445dB983CE411BC04A48ahtml =3D =0A=
        { label: "Set Basic tab Editing Files Part 2 options",=0A=
        href:"WS0F81A17D-F487-445d-B983-CE411BC04A48a.html",=0A=
        target:"_self"};=0A=
        var WS0F81A17DF487445dB983CE411BC04A48ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS0F81A17DF487445dB983CE411BC04A48ahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWSCCEB775A88B249c6939B7962CAC447C8ahtml =3D =0A=
        { label: "Set Basic tab Editing Files Part 3 options",=0A=
        href:"WSCCEB775A-88B2-49c6-939B-7962CAC447C8a.html",=0A=
        target:"_self"};=0A=
        var WSCCEB775A88B249c6939B7962CAC447C8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSCCEB775A88B249c6939B7962CAC447C8ahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWS83BCCA064F5E4d3e9D5CC4002FDADE7Dahtml =3D =0A=
        { label: "Set Basic tab Testing Files options (URL prefix)",=0A=
        href:"WS83BCCA06-4F5E-4d3e-9D5C-C4002FDADE7Da.html",=0A=
        target:"_self"};=0A=
        var WS83BCCA064F5E4d3e9D5CC4002FDADE7Dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS83BCCA064F5E4d3e9D5CC4002FDADE7Dahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWS254B47A797C14f0d86DF0D7C8CABE1E8ahtml =3D =0A=
        { label: "Set Basic tab Testing Files options (remote access)",=0A=
        href:"WS254B47A7-97C1-4f0d-86DF-0D7C8CABE1E8a.html",=0A=
        target:"_self"};=0A=
        var WS254B47A797C14f0d86DF0D7C8CABE1E8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS254B47A797C14f0d86DF0D7C8CABE1E8ahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWS998B139FD4DC4fd9B06EAACB0440932Cahtml =3D =0A=
        { label: "Set Basic tab remote folder setup options",=0A=
        href:"WS998B139F-D4DC-4fd9-B06E-AACB0440932Ca.html",=0A=
        target:"_self"};=0A=
        var WS998B139FD4DC4fd9B06EAACB0440932Cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS998B139FD4DC4fd9B06EAACB0440932Cahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWS16879562691447909CA7DBFD65AD006Bahtml =3D =0A=
        { label: "Set Basic tab Sharing Files options (remote access)",=0A=
        href:"WS16879562-6914-4790-9CA7-DBFD65AD006Ba.html",=0A=
        target:"_self"};=0A=
        var WS16879562691447909CA7DBFD65AD006Bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS16879562691447909CA7DBFD65AD006Bahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWS5FF651FF98C343f99B481BFF214BBC65ahtml =3D =0A=
        { label: "Set Basic tab Sharing Files options (check in/check =
out)",=0A=
        href:"WS5FF651FF-98C3-43f9-9B48-1BFF214BBC65a.html",=0A=
        target:"_self"};=0A=
        var WS5FF651FF98C343f99B481BFF214BBC65ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS5FF651FF98C343f99B481BFF214BBC65ahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWSF370E246D0D64cc1AC8D35836B894C41ahtml =3D =0A=
        { label: "Basic tab Summary options",=0A=
        href:"WSF370E246-D0D6-4cc1-AC8D-35836B894C41a.html",=0A=
        target:"_self"};=0A=
        var WSF370E246D0D64cc1AC8D35836B894C41ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSF370E246D0D64cc1AC8D35836B894C41ahtml, =0A=
        WSAB3E616C504045edB1ABBBEC97F1B63Aahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217f05ahtml =3D =0A=
        { label: "Creating and Managing Files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7f05a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217f05ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217f05ahtml=
, =0A=
        root, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217f04ahtml =3D =0A=
        { label: "Creating and opening documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7f04a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217f04ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217f04ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217f02ahtml =3D =0A=
        { label: "About creating Dreamweaver documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7f02a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217f02ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217f02ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217f01ahtml =3D =0A=
        { label: "Dreamweaver file types",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7f01a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217f01ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217f01ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217effahtml =3D =0A=
        { label: "Create a blank page",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7effa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217effahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217effahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWS9B867CC3285945adAE856F4924CBD786ahtml =3D =0A=
        { label: "Create a blank template",=0A=
        href:"WS9B867CC3-2859-45ad-AE85-6F4924CBD786a.html",=0A=
        target:"_self"};=0A=
        var WS9B867CC3285945adAE856F4924CBD786ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS9B867CC3285945adAE856F4924CBD786ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217efdahtml =3D =0A=
        { label: "Create a page based on an existing template",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7efda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217efdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217efdahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217efeahtml =3D =0A=
        { label: "Create a page based on a Dreamweaver sample file",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7efea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217efeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217efeahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWS4F461C8C98784792ACE0D6DDA7630319ahtml =3D =0A=
        { label: "Create other kinds of pages",=0A=
        href:"WS4F461C8C-9878-4792-ACE0-D6DDA7630319a.html",=0A=
        target:"_self"};=0A=
        var WS4F461C8C98784792ACE0D6DDA7630319ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS4F461C8C98784792ACE0D6DDA7630319ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d0eahtml =3D =0A=
        { label: "Save and revert documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d0ea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d0eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d0eahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef8ahtml =3D =0A=
        { label: "Set default document type and encoding",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef8a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef8ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef7ahtml =3D =0A=
        { label: "Set the default file extension of new HTML documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef7a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef7ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef7ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef6ahtml =3D =0A=
        { label: "Open and edit existing documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef6a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef6ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWS1D290DED2D5C41349BFCD5F9AECD206Fhtml =3D =0A=
        { label: "Open related files",=0A=
        href:"WS1D290DED-2D5C-4134-9BFC-D5F9AECD206F.html",=0A=
        target:"_self"};=0A=
        var WS1D290DED2D5C41349BFCD5F9AECD206Fhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS1D290DED2D5C41349BFCD5F9AECD206Fhtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef5ahtml =3D =0A=
        { label: "Clean up Microsoft Word HTML files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef5a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef5ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef5ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f04ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ed0ahtml =3D =0A=
        { label: "Managing files and folders",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ed0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ed0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ed0ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ecfahtml =3D =0A=
        { label: "About managing files and folders",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ecfa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ecfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ecfahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e7fahtml =3D =0A=
        { label: "Using the Files panel",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e7fa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e7fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e7fahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ee6ahtml =3D =0A=
        { label: "View files and folders",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ee6a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ee6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ee6ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ecdahtml =3D =0A=
        { label: "Work with files in the Files panel",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ecda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ecdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ecdahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ec6ahtml =3D =0A=
        { label: "Find files in your Dreamweaver site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ec6a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ec6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ec6ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ea0ahtml =3D =0A=
        { label: "Identify and delete unused files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ea0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ea0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ea0ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eedahtml =3D =0A=
        { label: "Access sites, a server, and local drives",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eeda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eedahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eedahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ee0ahtml =3D =0A=
        { label: "Customize the file and folder details displayed in the =
expanded Files panel",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ee0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ee0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ee0ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eb4ahtml =3D =0A=
        { label: "Getting and putting files to and from your server",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eb4a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eb4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eb4ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eeeahtml =3D =0A=
        { label: "File transfer and dependent files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eeea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eeeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eeeahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eb4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef1ahtml =3D =0A=
        { label: "About background file transfers",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef1a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef1ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eb4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eb2ahtml =3D =0A=
        { label: "Get files from a remote server",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eb2a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eb2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eb2ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eb4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eaeahtml =3D =0A=
        { label: "Put files on a remote server",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eaea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eaeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eaeahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eb4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eaaahtml =3D =0A=
        { label: "Manage file transfers",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eaaa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eaaahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eaaahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eb4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ebfahtml =3D =0A=
        { label: "Checking in and checking out files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ebfa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ebfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ebfahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef2ahtml =3D =0A=
        { label: "About the Check In/Check Out system",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef2a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef2ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ebfahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ebdahtml =3D =0A=
        { label: "Set up the Check In/Check Out system",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ebda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ebdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ebdahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ebfahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eb9ahtml =3D =0A=
        { label: "Check files into and out of a remote folder",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eb9a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eb9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eb9ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ebfahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ebcahtml =3D =0A=
        { label: "Use WebDAV to check in and check out files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ebca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ebcahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ebcahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ebfahtml, false);=0A=
        =0A=
        var dataObjWS80FE60AC15F845a2842E52D29F540FEDhtml =3D =0A=
        { label: "Use Subversion (SVN) to get and check in files",=0A=
        href:"WS80FE60AC-15F8-45a2-842E-52D29F540FED.html",=0A=
        target:"_self"};=0A=
        var WS80FE60AC15F845a2842E52D29F540FEDhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS80FE60AC15F845a2842E52D29F540FEDhtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ebfahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ea5ahtml =3D =0A=
        { label: "Synchronizing files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ea5a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ea5ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ea5ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ea4ahtml =3D =0A=
        { label: "Synchronize the files on your local and remote sites",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ea4a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ea4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ea4ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ea5ahtml, false);=0A=
        =0A=
        var dataObjWSDD8EB85D905A495dA7437CF9002372EAhtml =3D =0A=
        { label: "Creating InContext Editing files",=0A=
        href:"WSDD8EB85D-905A-495d-A743-7CF9002372EA.html",=0A=
        target:"_self"};=0A=
        var WSDD8EB85D905A495dA7437CF9002372EAhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSDD8EB85D905A495dA7437CF9002372EAhtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWS0A432CF3CD3F4f27B67314BD8536AF1Chtml =3D =0A=
        { label: "About Adobe InContext Editing",=0A=
        href:"WS0A432CF3-CD3F-4f27-B673-14BD8536AF1C.html",=0A=
        target:"_self"};=0A=
        var WS0A432CF3CD3F4f27B67314BD8536AF1Chtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS0A432CF3CD3F4f27B67314BD8536AF1Chtml, =0A=
        WSDD8EB85D905A495dA7437CF9002372EAhtml, false);=0A=
        =0A=
        var dataObjWS5C3A0564A1014332B1A1CB6D5B27E0BAhtml =3D =0A=
        { label: "Create an InContext Editing editable region",=0A=
        href:"WS5C3A0564-A101-4332-B1A1-CB6D5B27E0BA.html",=0A=
        target:"_self"};=0A=
        var WS5C3A0564A1014332B1A1CB6D5B27E0BAhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS5C3A0564A1014332B1A1CB6D5B27E0BAhtml, =0A=
        WSDD8EB85D905A495dA7437CF9002372EAhtml, false);=0A=
        =0A=
        var dataObjWS228F034D1255463fBE80D075F0BACF11html =3D =0A=
        { label: "Create an InContext Editing repeating region",=0A=
        href:"WS228F034D-1255-463f-BE80-D075F0BACF11.html",=0A=
        target:"_self"};=0A=
        var WS228F034D1255463fBE80D075F0BACF11html =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS228F034D1255463fBE80D075F0BACF11html, =0A=
        WSDD8EB85D905A495dA7437CF9002372EAhtml, false);=0A=
        =0A=
        var dataObjWS107ACF6263D24ef392097A32C239014Chtml =3D =0A=
        { label: "Delete a region",=0A=
        href:"WS107ACF62-63D2-4ef3-9209-7A32C239014C.html",=0A=
        target:"_self"};=0A=
        var WS107ACF6263D24ef392097A32C239014Chtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS107ACF6263D24ef392097A32C239014Chtml, =0A=
        WSDD8EB85D905A495dA7437CF9002372EAhtml, false);=0A=
        =0A=
        var dataObjWS0A778E8886244c20BAC4BCAB0A7B2C5Chtml =3D =0A=
        { label: "Specify CSS classes for formatting",=0A=
        href:"WS0A778E88-8624-4c20-BAC4-BCAB0A7B2C5C.html",=0A=
        target:"_self"};=0A=
        var WS0A778E8886244c20BAC4BCAB0A7B2C5Chtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS0A778E8886244c20BAC4BCAB0A7B2C5Chtml, =0A=
        WSDD8EB85D905A495dA7437CF9002372EAhtml, false);=0A=
        =0A=
        var dataObjWSCF97C2E714BA4a1d947C26A00A7A59EAhtml =3D =0A=
        { label: "InContext Editing Error messages",=0A=
        href:"WSCF97C2E7-14BA-4a1d-947C-26A00A7A59EA.html",=0A=
        target:"_self"};=0A=
        var WSCF97C2E714BA4a1d947C26A00A7A59EAhtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSCF97C2E714BA4a1d947C26A00A7A59EAhtml, =0A=
        WSDD8EB85D905A495dA7437CF9002372EAhtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eddahtml =3D =0A=
        { label: "Comparing files for differences",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7edda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eddahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eddahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217edcahtml =3D =0A=
        { label: "Compare local and remote files for differences",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7edca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217edcahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217edcahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eddahtml, false);=0A=
        =0A=
        var dataObjWS3300961D2BEA4bb19605C7C0B15047D6ahtml =3D =0A=
        { label: "Compare before putting files",=0A=
        href:"WS3300961D-2BEA-4bb1-9605-C7C0B15047D6a.html",=0A=
        target:"_self"};=0A=
        var WS3300961D2BEA4bb19605C7C0B15047D6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS3300961D2BEA4bb19605C7C0B15047D6ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eddahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ed4ahtml =3D =0A=
        { label: "Compare files when synchronizing",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ed4a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ed4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ed4ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217eddahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ed2ahtml =3D =0A=
        { label: "Rolling back files (Contribute users)",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ed2a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ed2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ed2ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ed1ahtml =3D =0A=
        { label: "Roll back files (Contribute users)",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ed1a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ed1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ed1ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217ed2ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e9fahtml =3D =0A=
        { label: "Cloaking files and folders in your site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e9fa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e9fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e9fahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ef0ahtml =3D =0A=
        { label: "About site cloaking",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ef0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ef0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ef0ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e9eahtml =3D =0A=
        { label: "Enable and disable site cloaking",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e9ea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e9eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e9eahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e9dahtml =3D =0A=
        { label: "Cloak and uncloak site files and folders",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e9da.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e9dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e9dahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e9cahtml =3D =0A=
        { label: "Cloak and uncloak specific file types",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e9ca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e9cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e9cahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e99ahtml =3D =0A=
        { label: "Uncloak all files and folders",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e99a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e99ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e99ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e98ahtml =3D =0A=
        { label: "Storing file information in Design Notes",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e98a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e98ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e98ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217eefahtml =3D =0A=
        { label: "About Design Notes",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7eefa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217eefahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217eefahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e98ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e97ahtml =3D =0A=
        { label: "Enable and disable Design Notes for a site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e97a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e97ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e97ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e98ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e96ahtml =3D =0A=
        { label: "Associate Design Notes with files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e96a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e96ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e96ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e98ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e95ahtml =3D =0A=
        { label: "Work with Design Notes",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e95a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e95ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e95ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e98ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e91ahtml =3D =0A=
        { label: "Testing your site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e91a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e91ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e91ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217f05ahtml, false);=0A=
        =0A=
        var dataObjWS12D32600F2DB4fd583F2550FD00D0F52ahtml =3D =0A=
        { label: "Site testing guidelines",=0A=
        href:"WS12D32600-F2DB-4fd5-83F2-550FD00D0F52a.html",=0A=
        target:"_self"};=0A=
        var WS12D32600F2DB4fd583F2550FD00D0F52ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS12D32600F2DB4fd583F2550FD00D0F52ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e91ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e8fahtml =3D =0A=
        { label: "Use reports to test your site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e8fa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e8fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e8fahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e91ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e6bahtml =3D =0A=
        { label: "Managing assets and libraries",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e6ba.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e6bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e6bahtml=
, =0A=
        root, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e6aahtml =3D =0A=
        { label: "About assets and libraries",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e6aa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e6aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e6aahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e6bahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e69ahtml =3D =0A=
        { label: "About assets",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e69a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e69ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e69ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e6aahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e68ahtml =3D =0A=
        { label: "About library items",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e68a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e68ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e68ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e6aahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e67ahtml =3D =0A=
        { label: "Working with assets",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e67a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e67ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e67ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e6bahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e66ahtml =3D =0A=
        { label: "Assets panel overview",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e66a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e66ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e66ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e67ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e5aahtml =3D =0A=
        { label: "Add an asset to a document",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e5aa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e5aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e5aahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e67ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e59ahtml =3D =0A=
        { label: "Apply a color to text using the Assets panel",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e59a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e59ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e59ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e67ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e58ahtml =3D =0A=
        { label: "Apply a URL to an image or text using the Assets =
panel",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e58a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e58ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e58ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e67ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e57ahtml =3D =0A=
        { label: "Select and edit assets",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e57a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e57ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e57ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e67ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e54ahtml =3D =0A=
        { label: "Reuse assets in another site",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e54a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e54ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e54ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e67ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e51ahtml =3D =0A=
        { label: "Creating and managing a list of favorite assets",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e51a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e51ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e51ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e6bahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e50ahtml =3D =0A=
        { label: "Managing favorite assets",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e50a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e50ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e50ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e51ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e4fahtml =3D =0A=
        { label: "Add or remove favorite assets",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e4fa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e4fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e4fahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e51ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e4bahtml =3D =0A=
        { label: "Create a nickname for a favorite asset",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e4ba.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e4bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e4bahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e51ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e4aahtml =3D =0A=
        { label: "Group assets in a Favorites folder",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e4aa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e4aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e4aahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e51ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e49ahtml =3D =0A=
        { label: "Working with library items",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e49a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e49ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e49ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e6bahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e47ahtml =3D =0A=
        { label: "Create a library item",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e47a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e47ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e47ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e44ahtml =3D =0A=
        { label: "Insert a library item into a document",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e44a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e44ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e44ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e43ahtml =3D =0A=
        { label: "Edit library items and update documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e43a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e43ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e43ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e3cahtml =3D =0A=
        { label: "Customize highlighting of library items",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e3ca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e3cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e3cahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e39ahtml =3D =0A=
        { label: "Edit the properties of a library item",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e39a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e39ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e39ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e38ahtml =3D =0A=
        { label: "Make library items editable in a document",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e38a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e38ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e38ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217e37ahtml =3D =0A=
        { label: "Edit a behavior in a library item",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7e37a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217e37ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217e37ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217e49ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e32ahtml =3D =0A=
        { label: "Creating pages with CSS",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e32a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e32ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e32ahtml, =0A=
        root, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e31ahtml =3D =0A=
        { label: "Understanding Cascading Style Sheets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e31a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e31ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e31ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e32ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e30ahtml =3D =0A=
        { label: "About Cascading Style Sheets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e30a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e30ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e30ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e31ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e2fahtml =3D =0A=
        { label: "About CSS rules",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e2fa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e2fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e2fahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e31ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e2eahtml =3D =0A=
        { label: "About cascading styles",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e2ea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e2eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e2eahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e31ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e28ahtml =3D =0A=
        { label: "About text formatting and CSS",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e28a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e28ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e28ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e31ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e2dahtml =3D =0A=
        { label: "About Shorthand CSS properties",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e2da.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e2dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e2dahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e31ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e29ahtml =3D =0A=
        { label: "Creating and managing CSS",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e29a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e29ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e29ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e32ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e2cahtml =3D =0A=
        { label: "About the CSS Styles panel",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e2ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e2cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e2cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e2bahtml =3D =0A=
        { label: "The CSS Styles panel in Current mode",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e2ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e2bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e2bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e2aahtml =3D =0A=
        { label: "The CSS Styles panel in All mode",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e2aa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e2aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e2aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e22ahtml =3D =0A=
        { label: "CSS Styles panel buttons and views",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e22a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e22ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e22ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e27ahtml =3D =0A=
        { label: "Open the CSS Styles panel",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e27a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e27ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e27ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dd1ahtml =3D =0A=
        { label: "Set CSS Styles preferences",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dd1a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dd1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dd1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e21ahtml =3D =0A=
        { label: "Create a new CSS rule",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e21a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e21ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e21ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWSE4424F1882C54feaA020899CD47A1E86ahtml =3D =0A=
        { label: "Set CSS properties",=0A=
        href:"WSE4424F18-82C5-4fea-A020-899CD47A1E86a.html",=0A=
        target:"_self"};=0A=
        var WSE4424F1882C54feaA020899CD47A1E86ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSE4424F1882C54feaA020899CD47A1E86ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e1aahtml =3D =0A=
        { label: "Edit a CSS rule",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e1aa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e1aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e1aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWS7F32B329669E455e9E238AFB15658457ahtml =3D =0A=
        { label: "Add a property to a rule",=0A=
        href:"WS7F32B329-669E-455e-9E23-8AFB15658457a.html",=0A=
        target:"_self"};=0A=
        var WS7F32B329669E455e9E238AFB15658457ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS7F32B329669E455e9E238AFB15658457ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e20ahtml =3D =0A=
        { label: "Apply, remove, or rename class styles",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e20a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e20ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e20ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWSD152C40DCCA84901BD43FB9F1471A986ahtml =3D =0A=
        { label: "Move/export CSS rules",=0A=
        href:"WSD152C40D-CCA8-4901-BD43-FB9F1471A986a.html",=0A=
        target:"_self"};=0A=
        var WSD152C40DCCA84901BD43FB9F1471A986ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSD152C40DCCA84901BD43FB9F1471A986ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWS8BC8A54F60BC40bdA36850A405C51350ahtml =3D =0A=
        { label: "Convert inline CSS to a CSS rule",=0A=
        href:"WS8BC8A54F-60BC-40bd-A368-50A405C51350a.html",=0A=
        target:"_self"};=0A=
        var WS8BC8A54F60BC40bdA36850A405C51350ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS8BC8A54F60BC40bdA36850A405C51350ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e1cahtml =3D =0A=
        { label: "Link to an external CSS style sheet",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e1ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e1cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e1cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e19ahtml =3D =0A=
        { label: "Edit a CSS style sheet",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e19a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e19ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e19ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWS6A10E93F65874e1b956C03CBD7F678BBahtml =3D =0A=
        { label: "Format CSS code",=0A=
        href:"WS6A10E93F-6587-4e1b-956C-03CBD7F678BBa.html",=0A=
        target:"_self"};=0A=
        var WS6A10E93F65874e1b956C03CBD7F678BBahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS6A10E93F65874e1b956C03CBD7F678BBahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWSA994C0FE60C8456d8EF9EC09DF0FD914ahtml =3D =0A=
        { label: "Check for cross-browser CSS rendering issues",=0A=
        href:"WSA994C0FE-60C8-456d-8EF9-EC09DF0FD914a.html",=0A=
        target:"_self"};=0A=
        var WSA994C0FE60C8456d8EF9EC09DF0FD914ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSA994C0FE60C8456d8EF9EC09DF0FD914ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e17ahtml =3D =0A=
        { label: "Use Design-Time style sheets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e17a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e17ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e17ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e1bahtml =3D =0A=
        { label: "Use Dreamweaver sample style sheets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e1ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e1bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e1bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e18ahtml =3D =0A=
        { label: "Update CSS style sheets in a Contribute site",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e18a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e18ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e18ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e29ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e16ahtml =3D =0A=
        { label: "Laying out pages with CSS",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e16a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e16ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e16ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e32ahtml, false);=0A=
        =0A=
        var dataObjWSC928599C7FD044feB23C54A5E159A69Aahtml =3D =0A=
        { label: "About CSS page layout",=0A=
        href:"WSC928599C-7FD0-44fe-B23C-54A5E159A69Aa.html",=0A=
        target:"_self"};=0A=
        var WSC928599C7FD044feB23C54A5E159A69Aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSC928599C7FD044feB23C54A5E159A69Aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e15ahtml =3D =0A=
        { label: "About CSS page layout structure",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e15a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e15ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e15ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWS64790c24e2ee40e79cb0f410a909319007ffbahtml =3D =0A=
        { label: "Create a page with a CSS layout",=0A=
        href:"WS64790c24e2ee40e79cb0f410a90931900-7ffba.html",=0A=
        target:"_self"};=0A=
        var WS64790c24e2ee40e79cb0f410a909319007ffbahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS64790c24e2ee40e79cb0f410a909319007ffbahtml=
, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e14ahtml =3D =0A=
        { label: "About AP elements in Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e14a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e14ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e14ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e13ahtml =3D =0A=
        { label: "HTML code for AP Div elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e13a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e13ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e13ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e12ahtml =3D =0A=
        { label: "Insert an AP Div",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e12a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e12ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e12ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e0cahtml =3D =0A=
        { label: "Work with nested AP Divs",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e0ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e0cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e0cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e07ahtml =3D =0A=
        { label: "View or set AP element preferences",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e07a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e07ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e07ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e06ahtml =3D =0A=
        { label: "View or set properties for a single AP element",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e06a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e06ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e06ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e05ahtml =3D =0A=
        { label: "View or set properties for multiple AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e05a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e05ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e05ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e02ahtml =3D =0A=
        { label: "AP Elements panel overview",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e02a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e02ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e02ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657e01ahtml =3D =0A=
        { label: "Select AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7e01a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657e01ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657e01ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dfdahtml =3D =0A=
        { label: "Change the stacking order of AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dfda.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dfdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dfdahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dfaahtml =3D =0A=
        { label: "Show and hide AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dfaa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dfaahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dfaahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657df7ahtml =3D =0A=
        { label: "Resize AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7df7a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657df7ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657df7ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657df4ahtml =3D =0A=
        { label: "Move AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7df4a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657df4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657df4ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657df3ahtml =3D =0A=
        { label: "Align AP elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7df3a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657df3ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657df3ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657df2ahtml =3D =0A=
        { label: "Converting AP elements to tables",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7df2a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657df2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657df2ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657df0ahtml =3D =0A=
        { label: "Convert between AP elements and tables",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7df0a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657df0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657df0ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657df1ahtml =3D =0A=
        { label: "Prevent AP element overlaps",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7df1a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657df1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657df1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e16ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dedahtml =3D =0A=
        { label: "Working with div tags",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7deda.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dedahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dedahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657e32ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657decahtml =3D =0A=
        { label: "About working with div tags",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7deca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657decahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657decahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657debahtml =3D =0A=
        { label: "Insert div tags",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7deba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657debahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657debahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657deaahtml =3D =0A=
        { label: "Edit div tags",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7deaa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657deaahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657deaahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWSF3152EEBCD0F4b2dB0DCB5229803667Aahtml =3D =0A=
        { label: "Change the highlight color of div tags",=0A=
        href:"WSF3152EEB-CD0F-4b2d-B0DC-B5229803667Aa.html",=0A=
        target:"_self"};=0A=
        var WSF3152EEBCD0F4b2dB0DCB5229803667Aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSF3152EEBCD0F4b2dB0DCB5229803667Aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657de5ahtml =3D =0A=
        { label: "Visualizing CSS layout blocks",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7de5a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657de5ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657de5ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657de4ahtml =3D =0A=
        { label: "View CSS layout blocks",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7de4a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657de4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657de4ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657de0ahtml =3D =0A=
        { label: "Use visual aids with non-CSS layout block elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7de0a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657de0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657de0ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dedahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dbfahtml =3D =0A=
        { label: "Laying out pages with HTML",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dbfa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dbfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dbfahtml, =0A=
        root, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dbeahtml =3D =0A=
        { label: "Using visual aids for layout",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dbea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dbeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dbeahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbfahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dbdahtml =3D =0A=
        { label: "Set rulers",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dbda.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dbdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dbdahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbeahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dbcahtml =3D =0A=
        { label: "Set layout guides",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dbca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dbcahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dbcahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbeahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657daeahtml =3D =0A=
        { label: "Using guides with templates",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7daea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657daeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657daeahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbeahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657dadahtml =3D =0A=
        { label: "Use the layout grid",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7dada.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657dadahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657dadahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbeahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657da9ahtml =3D =0A=
        { label: "Use a tracing image",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7da9a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657da9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657da9ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbeahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657da3ahtml =3D =0A=
        { label: "Presenting content with tables",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7da3a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657da3ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657da3ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbfahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657da2ahtml =3D =0A=
        { label: "About tables",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7da2a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657da2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657da2ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657da1ahtml =3D =0A=
        { label: "Table formatting precedence in HTML",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7da1a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657da1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657da1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657da0ahtml =3D =0A=
        { label: "About splitting and merging table cells",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7da0a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657da0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657da0ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d9fahtml =3D =0A=
        { label: "Insert a table and add content",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d9fa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d9fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d9fahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d9eahtml =3D =0A=
        { label: "Import and export tabular data",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d9ea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d9eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d9eahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d9bahtml =3D =0A=
        { label: "Select table elements",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d9ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d9bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d9bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWS50742BC8C9CB46949EF714CC94C8D9E1ahtml =3D =0A=
        { label: "Set table properties",=0A=
        href:"WS50742BC8-C9CB-4694-9EF7-14CC94C8D9E1a.html",=0A=
        target:"_self"};=0A=
        var WS50742BC8C9CB46949EF714CC94C8D9E1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS50742BC8C9CB46949EF714CC94C8D9E1ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWS9CA317DFCF044177918024C0BA715489ahtml =3D =0A=
        { label: "Set cell, row, or column properties",=0A=
        href:"WS9CA317DF-CF04-4177-9180-24C0BA715489a.html",=0A=
        target:"_self"};=0A=
        var WS9CA317DFCF044177918024C0BA715489ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS9CA317DFCF044177918024C0BA715489ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d93ahtml =3D =0A=
        { label: "Use Expanded Tables mode for easier table editing",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d93a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d93ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d93ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d90ahtml =3D =0A=
        { label: "Format tables and cells",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d90a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d90ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d90ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d8bahtml =3D =0A=
        { label: "Resizing tables, columns, and rows",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d8ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d8bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d8bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWSFE63B9E5C5364c25BA305C122914F9ADahtml =3D =0A=
        { label: "Resize tables, columns, and rows",=0A=
        href:"WSFE63B9E5-C536-4c25-BA30-5C122914F9ADa.html",=0A=
        target:"_self"};=0A=
        var WSFE63B9E5C5364c25BA305C122914F9ADahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSFE63B9E5C5364c25BA305C122914F9ADahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d81ahtml =3D =0A=
        { label: "Add and remove rows and columns",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d81a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d81ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d81ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d7cahtml =3D =0A=
        { label: "Split and merge cells",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d7ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d7cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d7cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d78ahtml =3D =0A=
        { label: "Copy, paste, and delete cells",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d78a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d78ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d78ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d73ahtml =3D =0A=
        { label: "Nest tables",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d73a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d73ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d73ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d72ahtml =3D =0A=
        { label: "Sort tables",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d72a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d72ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d72ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657da3ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d4eahtml =3D =0A=
        { label: "Using Frames",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d4ea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d4eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d4eahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657dbfahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d4cahtml =3D =0A=
        { label: "How frames and framesets work",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d4ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d4cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d4cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d4bahtml =3D =0A=
        { label: "Deciding whether to use frames",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d4ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d4bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d4bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d4aahtml =3D =0A=
        { label: "Nested framesets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d4aa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d4aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d4aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d49ahtml =3D =0A=
        { label: "Work with framesets in the Document window",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d49a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d49ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d49ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d48ahtml =3D =0A=
        { label: "Create frames and framesets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d48a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d48ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d48ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d41ahtml =3D =0A=
        { label: "Select frames and framesets",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d41a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d41ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d41ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d3aahtml =3D =0A=
        { label: "Open a document in a frame",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d3aa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d3aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d3aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d39ahtml =3D =0A=
        { label: "Save frame and frameset files",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d39a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d39ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d39ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d35ahtml =3D =0A=
        { label: "View and set frame properties and attributes",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d35a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d35ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d35ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d30ahtml =3D =0A=
        { label: "View and set frameset properties",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d30a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d30ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d30ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d2dahtml =3D =0A=
        { label: "Control frame content with links",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d2da.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d2dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d2dahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d2cahtml =3D =0A=
        { label: "Provide content for browsers without frame support",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d2ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d2cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d2cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657d2bahtml =3D =0A=
        { label: "Using JavaScript behaviors with frames",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7d2ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657d2bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657d2bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657d4eahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d17ahtml =3D =0A=
        { label: "Adding content to pages",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d17a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d17ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d17ahtml=
, =0A=
        root, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d16ahtml =3D =0A=
        { label: "Working with pages",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d16a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d16ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d16ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657fa6ahtml =3D =0A=
        { label: "Use the Insert panel",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7fa6a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657fa6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657fa6ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d09ahtml =3D =0A=
        { label: "Set page properties",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d09a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d09ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d09ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d10ahtml =3D =0A=
        { label: "Understanding document encoding",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d10a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d10ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d10ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d03ahtml =3D =0A=
        { label: "Select and view elements in the Document window",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d03a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d03ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d03ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d11ahtml =3D =0A=
        { label: "Web-safe colors",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d11a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d11ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d11ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217d05ahtml =3D =0A=
        { label: "Use the color picker",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7d05a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217d05ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217d05ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cfdahtml =3D =0A=
        { label: "Zoom in and out",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cfda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cfdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cfdahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cefahtml =3D =0A=
        { label: "Using JavaScript behaviors to detect browsers and =
plug=E2=80=91ins",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cefa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cefahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cefahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ceeahtml =3D =0A=
        { label: "Set download time and size preferences",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ceea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ceeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ceeahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d16ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cedahtml =3D =0A=
        { label: "Adding and formatting text",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ceda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cedahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cedahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ce9ahtml =3D =0A=
        { label: "Add text to a document",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ce9a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ce9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ce9ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cccahtml =3D =0A=
        { label: "Insert special characters",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ccca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cccahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cccahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ccbahtml =3D =0A=
        { label: "Add space between characters",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ccba.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ccbahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ccbahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cd9ahtml =3D =0A=
        { label: "Create bulleted and numbered lists",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cd9a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cd9ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cd9ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cc7ahtml =3D =0A=
        { label: "Search for and replace text",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cc7a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cc7ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cc7ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSC4D21F98B5104543887E36568EF587C8ahtml =3D =0A=
        { label: "Define abbreviations and acronyms",=0A=
        href:"WSC4D21F98-B510-4543-887E-36568EF587C8a.html",=0A=
        target:"_self"};=0A=
        var WSC4D21F98B5104543887E36568EF587C8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSC4D21F98B5104543887E36568EF587C8ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ce8ahtml =3D =0A=
        { label: "Set copy and paste preferences",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ce8a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ce8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ce8ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cc8ahtml =3D =0A=
        { label: "Check and correct spelling",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cc8a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cc8ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cc8ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ce7ahtml =3D =0A=
        { label: "Import tabular data",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ce7a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ce7ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ce7ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ce6ahtml =3D =0A=
        { label: "Import Microsoft Office documents (Windows only)",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ce6a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ce6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ce6ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ce5ahtml =3D =0A=
        { label: "Create a link to a Word or Excel document",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ce5a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ce5ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ce5ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cebahtml =3D =0A=
        { label: "About formatting text (CSS versus HTML)",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ceba.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cebahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cebahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c75ahtml =3D =0A=
        { label: "Set text properties in the Property inspector",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c75a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c75ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c75ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWS09C98DBB63324f868AB8A50265CEC6A3html =3D =0A=
        { label: "Use HTML Formatting",=0A=
        href:"WS09C98DBB-6332-4f86-8AB8-A50265CEC6A3.html",=0A=
        target:"_self"};=0A=
        var WS09C98DBB63324f868AB8A50265CEC6A3html =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS09C98DBB63324f868AB8A50265CEC6A3html, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cd4ahtml =3D =0A=
        { label: "Rename a class from the HTML Property inspector",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cd4a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cd4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cd4ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cdfahtml =3D =0A=
        { label: "Add paragraph spacing",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cdfa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cdfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cdfahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cdcahtml =3D =0A=
        { label: "Use horizontal rules",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cdca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cdcahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cdcahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cd3ahtml =3D =0A=
        { label: "Modify font combinations",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cd3a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cd3ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cd3ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ccdahtml =3D =0A=
        { label: "Insert dates",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ccda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ccdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ccdahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cedahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cc4ahtml =3D =0A=
        { label: "Adding and modifying images",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cc4a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cc4ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cc4ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cc3ahtml =3D =0A=
        { label: "About images",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cc3a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cc3ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cc3ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cc1ahtml =3D =0A=
        { label: "Insert an image",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cc1a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cc1ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cc1ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cbdahtml =3D =0A=
        { label: "Align an image",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cbda.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cbdahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cbdahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cbcahtml =3D =0A=
        { label: "Visually resize an image",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cbca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cbcahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cbcahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cbfahtml =3D =0A=
        { label: "Insert an image placeholder",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cbfa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cbfahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cbfahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cbeahtml =3D =0A=
        { label: "Replace an image placeholder",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cbea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cbeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cbeahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c60ahtml =3D =0A=
        { label: "Set image placeholder properties",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c60a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c60ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c60ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cc2ahtml =3D =0A=
        { label: "Edit images in Dreamweaver",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cc2a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cc2ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cc2ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cb0ahtml =3D =0A=
        { label: "Create a rollover image",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cb0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cb0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cb0ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cafahtml =3D =0A=
        { label: "Use an external image editor",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cafa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cafahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cafahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217caeahtml =3D =0A=
        { label: "Applying behaviors to images",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7caea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217caeahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217caeahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cc4ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cadahtml =3D =0A=
        { label: "Inserting SWF files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cada.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cadahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cadahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cacahtml =3D =0A=
        { label: "About FLA, SWF, and FLV file types",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7caca.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cacahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cacahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cadahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ca6ahtml =3D =0A=
        { label: "Insert and preview SWF files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ca6a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ca6ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ca6ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cadahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217ca0ahtml =3D =0A=
        { label: "Insert FlashPaper documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7ca0a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217ca0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217ca0ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217cadahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c9fahtml =3D =0A=
        { label: "Inserting FLV files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c9fa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c9fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c9fahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c9eahtml =3D =0A=
        { label: "Insert FLV files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c9ea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c9eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c9eahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c99ahtml =3D =0A=
        { label: "Edit or delete an FLV component",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c99a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c99ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c99ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c9fahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c96ahtml =3D =0A=
        { label: "Adding Sound",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c96a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c96ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c96ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c95ahtml =3D =0A=
        { label: "Audio file formats",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c95a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c95ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c95ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c96ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c94ahtml =3D =0A=
        { label: "Link to an audio file",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c94a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c94ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c94ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c96ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c93ahtml =3D =0A=
        { label: "Embed a sound file",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c93a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c93ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c93ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c96ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c92ahtml =3D =0A=
        { label: "Adding other media objects",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c92a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c92ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c92ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c91ahtml =3D =0A=
        { label: "Insert and edit media objects",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c91a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c91ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c91ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c8fahtml =3D =0A=
        { label: "Start an external editor for media files",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c8fa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c8fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c8fahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c8eahtml =3D =0A=
        { label: "Specify the editor to start from Dreamweaver",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c8ea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c8eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c8eahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c8aahtml =3D =0A=
        { label: "Use Design Notes with media objects",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c8aa.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c8aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c8aahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c89ahtml =3D =0A=
        { label: "Insert Shockwave movies",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c89a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c89ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c89ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c88ahtml =3D =0A=
        { label: "Add video (non-FLV)",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c88a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c88ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c88ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c87ahtml =3D =0A=
        { label: "Insert Netscape Navigator plug=E2=80=91in content",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c87a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c87ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c87ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c83ahtml =3D =0A=
        { label: "Troubleshooting Netscape Navigator plug=E2=80=91ins",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c83a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c83ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c83ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c82ahtml =3D =0A=
        { label: "Insert an ActiveX control",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c82a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c82ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c82ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c81ahtml =3D =0A=
        { label: "Insert a Java applet",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c81a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c81ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c81ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c80ahtml =3D =0A=
        { label: "Using behaviors to control media",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c80a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c80ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c80ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217c57ahtml =3D =0A=
        { label: "Use parameters to control media objects",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7c57a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217c57ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217c57ahtml=
, =0A=
        WSc78c5058ca073340dcda9110b1f693f217c92ahtml, false);=0A=
        =0A=
        var dataObjWS14D31E230CD24b3aA1110CE6B659E9E0ahtml =3D =0A=
        { label: "Automating tasks",=0A=
        href:"WS14D31E23-0CD2-4b3a-A111-0CE6B659E9E0a.html",=0A=
        target:"_self"};=0A=
        var WS14D31E230CD24b3aA1110CE6B659E9E0ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWS14D31E230CD24b3aA1110CE6B659E9E0ahtml, =0A=
        WSc78c5058ca073340dcda9110b1f693f217d17ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f21778eahtml =3D =0A=
        { label: "Task automation",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-778ea.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f21778eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f21778eahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217cf5ahtml =3D =0A=
        { label: "Use the History panel",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7cf5a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217cf5ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217cf5ahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217787ahtml =3D =0A=
        { label: "Repeat steps",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7787a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217787ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217787ahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217783ahtml =3D =0A=
        { label: "Apply steps in the History panel to objects",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7783a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217783ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217783ahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217781ahtml =3D =0A=
        { label: "Copy and paste steps between documents",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7781a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217781ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217781ahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f217780ahtml =3D =0A=
        { label: "Create and use commands from history steps",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-7780a.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f217780ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f217780ahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWSc78c5058ca073340dcda9110b1f693f21777bahtml =3D =0A=
        { label: "Record and save commands",=0A=
        href:"WSc78c5058ca073340dcda9110b1f693f21-777ba.html",=0A=
        target:"_self"};=0A=
        var WSc78c5058ca073340dcda9110b1f693f21777bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWSc78c5058ca073340dcda9110b1f693f21777bahtml=
, =0A=
        WS14D31E230CD24b3aA1110CE6B659E9E0ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c45ahtml =3D =0A=
        { label: "Linking and navigation",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c45a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c45ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c45ahtml, =0A=
        root, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c44ahtml =3D =0A=
        { label: "About linking and navigation",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c44a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c44ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c44ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c45ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c43ahtml =3D =0A=
        { label: "About links",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c43a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c43ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c43ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c44ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c42ahtml =3D =0A=
        { label: "Document locations and paths",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c42a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c42ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c42ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c44ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c3eahtml =3D =0A=
        { label: "Linking",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c3ea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c3eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c3eahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c45ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c3cahtml =3D =0A=
        { label: "Linking files and documents",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c3ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c3cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c3cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c20ahtml =3D =0A=
        { label: "Attaching JavaScript behaviors to links",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c20a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c20ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c20ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c3bahtml =3D =0A=
        { label: "Link to documents using the Property inspector",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c3ba.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c3bahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c3bahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c3aahtml =3D =0A=
        { label: "Link to documents using the Point-To-File icon",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c3aa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c3aahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c3aahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c36ahtml =3D =0A=
        { label: "Add a link using the Hyperlink command",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c36a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c36ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c36ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c35ahtml =3D =0A=
        { label: "Set the relative path of new links",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c35a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c35ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c35ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c34ahtml =3D =0A=
        { label: "Link to a specific place in a document",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c34a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c34ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c34ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c30ahtml =3D =0A=
        { label: "Create an e=E2=80=91mail link",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c30a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c30ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c30ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c2dahtml =3D =0A=
        { label: "Create null and script links",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c2da.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c2dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c2dahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c29ahtml =3D =0A=
        { label: "Update links automatically",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c29a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c29ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c29ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c21ahtml =3D =0A=
        { label: "Change a link sitewide",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c21a.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c21ahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c21ahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c1fahtml =3D =0A=
        { label: "Test links in Dreamweaver",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c1fa.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c1fahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c1fahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c3eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c1eahtml =3D =0A=
        { label: "Jump menus",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c1ea.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c1eahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c1eahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c45ahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c1dahtml =3D =0A=
        { label: "About jump menus",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c1da.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c1dahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c1dahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c1eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af5544594822510a94ae8d657c1cahtml =3D =0A=
        { label: "Insert a jump menu",=0A=
        href:"WScbb6b82af5544594822510a94ae8d65-7c1ca.html",=0A=
        target:"_self"};=0A=
        var WScbb6b82af5544594822510a94ae8d657c1cahtml =3D =0A=
        new =
YAHOO.widget.TextNode(dataObjWScbb6b82af5544594822510a94ae8d657c1cahtml, =0A=
        WScbb6b82af5544594822510a94ae8d657c1eahtml, false);=0A=
        =0A=
        var dataObjWScbb6b82af554459482251