//
//  iWeb - iWebSite.js
//  Copyright (c) 2007 Apple Inc. All rights reserved.
//
//
//  This file includes a copy of the Prototype JavaScript framework:
//
//  Prototype JavaScript framework, version 1.5.0
//  (c) 2005-2007 Sam Stephenson
//
//  Prototype is freely distributable under the terms of an MIT-style license.
//  For details, see the Prototype web site: http://prototype.conio.net/

var windowsInternetExplorer=false;var isGecko=false;var isMozilla=false;var isFirefox=false;var isCamino=false;var isSafari=false;var isNS=false;var isWebKit=false;var isOpera=false;var isiPhone=false;var isEarlyWebKitVersion=false;var browserDetected=false;var listOfIE7FloatsFix=[];function detectBrowser()
{if(browserDetected===false)
{windowsInternetExplorer=false;var appVersion=navigator.appVersion;if((appVersion.indexOf("MSIE")!=-1)&&(appVersion.indexOf("Macintosh")==-1))
{var temp=appVersion.split("MSIE");browserVersion=parseFloat(temp[1]);windowsInternetExplorer=true;if(typeof(Node)=="undefined")
{Node={};Node.ELEMENT_NODE=1;Node.ATTRIBUTE_NODE=2;Node.TEXT_NODE=3;Node.CDATA_SECTION_NODE=4;Node.ENTITY_REFERENCE_NODE=5;Node.ENTITY_NODE=6;Node.PROCESSING_INSTRUCTION_NODE=7;Node.COMMENT_NODE=8;}}
else
{var ua=navigator.userAgent.toLowerCase();isGecko=(ua.indexOf('gecko')!=-1);isMozilla=(this.isGecko&&ua.indexOf("gecko/")+14==ua.length);isFirefox=(this.isGecko&&ua.indexOf("firefox")!=-1);isCamino=(this.isGecko&&ua.indexOf("camino")!=-1);isSafari=(this.isGecko&&ua.indexOf("safari")!=-1);isNS=((this.isGecko)?(ua.indexOf('netscape')!=-1):((ua.indexOf('mozilla')!=-1)&&(ua.indexOf('spoofer')==-1)&&(ua.indexOf('compatible')==-1)&&(ua.indexOf('opera')==-1)&&(ua.indexOf('webtv')==-1)&&(ua.indexOf('hotjava')==-1)));isOpera=!!window.opera;var matchResult=ua.match(/applewebkit\/(\d+)/);if(matchResult)
{isiPhone=(ua.indexOf("mobile/")!=-1);isWebKit=true;webKitVersion=parseInt(matchResult[1]);isEarlyWebKitVersion=(webKitVersion<522);}}
browserDetected=true;}}
function shouldApplyCSSBackgroundPNGFix()
{detectBrowser();return(windowsInternetExplorer&&(browserVersion<7));}
function photocastHelper(url)
{var feed=new IWURL(url);var iPhotoVersionMin=600;var iPhotoMimeTypePlugin="application/photo";if(navigator.mimeTypes&&navigator.mimeTypes.length>0)
{var iPhoto=navigator.mimeTypes[iPhotoMimeTypePlugin];if(iPhoto)
{var description=iPhoto.description;try
{var components=description.split(" ");if(components&&components.length>1)
{var pluginVersion=components[1];if(pluginVersion>=iPhotoVersionMin)
{feed.mProtocol="photo";}}}
catch(exception)
{}}}
window.location=feed.toURLString();}
function loadCSS(file)
{var cssNode=document.createElement('link');cssNode.setAttribute('rel','stylesheet');cssNode.setAttribute('type','text/css');cssNode.setAttribute('href',file);document.getElementsByTagName('head')[0].appendChild(cssNode);}
function loadMozillaCSS(file)
{detectBrowser();if((isMozilla)||(isFirefox)||(isCamino))
{loadCSS(file);}}
function utf8sequence(c)
{if(c<=0x0000007f)return[c];if(c<=0x000007ff)return[(0xc0|(c>>>6)),(0x80|(c&0x3f))];if(c<=0x0000ffff)return[(0xe0|(c>>>12)),(0x80|((c>>>6)&0x3f)),(0x80|(c&0x3f))];if(c<=0x001fffff)return[(0xf0|(c>>>18)),(0x80|((c>>>12)&0x3f)),(0x80|((c>>>6)&0x3f)),(0x80|(c&0x3f))];if(c<=0x03ffffff)return[(0xf8|(c>>>24)),(0x80|((c>>>18)&0x3f)),(0x80|((c>>>12)&0x3f)),(0x80|((c>>>6)&0x3f)),(0x80|(c&0x3f))];if(c<=0x7fffffff)return[(0xfc|(c>>>30)),(0x80|((c>>>24)&0x3f)),(0x80|((c>>>18)&0x3f)),(0x80|((c>>>12)&0x3f)),(0x80|((c>>>6)&0x3f)),(0x80|(c&0x3f))];return[];}
function utf8encode(s)
{var result=[];var firstSurrogate=0;for(var i=0;i<s.length;++i)
{var code=s.charCodeAt(i);if(firstSurrogate!=0)
{if((code>=0xDC00)&&(code<=0xDFFF))
{code=(firstSurrogate-0xD800)*0x400+(code-0xDC00)+0x10000;firstSurrogate=0;}}
else
{if((code<0xD800)||(code>0xDFFF))
{}
else if((code>=0xD800)&&(code<0xDC00))
{firstSurrogate=code;continue;}
else
{continue;}}
result=result.concat(utf8sequence(code));}
var resultString="";for(i=0;i<result.length;++i)
{resultString+=String.fromCharCode(result[i]);}
return resultString;}
function IELatin1Munge(UTF8String)
{var munged="";for(var i=0;i<UTF8String.length;i++)
{var c=UTF8String.charCodeAt(i);switch(c){case 0x0080:c=0x20AC;break;case 0x0081:break;case 0x0082:c=0x201A;break;case 0x0083:c=0x0192;break;case 0x0084:c=0x201E;break;case 0x0085:c=0x2026;break;case 0x0086:c=0x2020;break;case 0x0087:c=0x2021;break;case 0x0088:c=0x02C6;break;case 0x0089:c=0x2030;break;case 0x008A:c=0x0160;break;case 0x008B:c=0x2039;break;case 0x008C:c=0x0152;break;case 0x008D:break;case 0x008E:c=0x017D;break;case 0x008F:break;case 0x0090:break;case 0x0091:c=0x2018;break;case 0x0092:c=0x2019;break;case 0x0093:c=0x201C;break;case 0x0094:c=0x201D;break;case 0x0095:c=0x2022;break;case 0x0096:c=0x2013;break;case 0x0097:c=0x2014;break;case 0x0098:c=0x02DC;break;case 0x0099:c=0x2122;break;case 0x009A:c=0x0161;break;case 0x009B:c=0x203A;break;case 0x009C:c=0x0153;break;case 0x009D:break;case 0x009E:c=0x017E;break;case 0x009F:c=0x0178;break;}
munged+=String.fromCharCode(c);}
return munged;}
function IEConvertURLForPNGFix(urlString)
{var result=urlString;detectBrowser();if(windowsInternetExplorer)
{var decoded=decodeURI(urlString);if(decoded.match(/[^\x00-\x7f]/))
{result=IELatin1Munge(utf8encode(decodeURI(urlString)));}}
return result;}
function fixAllIEPNGs(transparentGif)
{detectBrowser();if(windowsInternetExplorer)
{for(var i=0;i<document.images.length;++i)
{if(document.images[i].src.slice(-4).toLowerCase()==".png")
{var img=$(document.images[i]);var fixPng=function(img)
{if(!img.originalSrc)
{if((img.style.width=="")&&(img.style.height==""))
{var width=img.width;var height=img.height;img.style.width=width+"px";img.style.height=height+"px";}
var filterName='progid:DXImageTransform.Microsoft.AlphaImageLoader';var filterParams='src="'+IEConvertURLForPNGFix(img.src)+'", sizingMethod="scale"';img.setFilter(filterName,filterParams);img.originalSrc=img.src;img.src=transparentGif;}};if(img.complete)
{fixPng(img);}
else
{img.onload=fixPng.bind(null,img);}}}}}
function toPixels(value)
{var converted=0;var px_per_pt=window.screen.logicalXDPI?(window.screen.logicalXDPI/72.0):1.3333;if(value.indexOf("px")>0)
{converted=parseFloat(value);}
else if(value.indexOf("pt")>0)
{converted=px_per_pt*parseFloat(value);}
else if(value.indexOf("in")>0)
{converted=72*px_per_pt*parseFloat(value);}
else if(value.indexOf("pc")>0)
{converted=12*px_per_pt*parseFloat(value);}
else if(value.indexOf("mm")>0)
{converted=2.83465*px_per_pt*parseFloat(value);}
else if(value.indexOf("cm")>0)
{converted=28.3465*px_per_pt*parseFloat(value);}
return converted;}
function toPixelsAtElement(element,value,vertical)
{var converted=0;if(value.indexOf("%")>0)
{var containerSize=0;if(vertical)
{containerSize=$(element.parentNode).getHeight();}
else
{containerSize=$(element.parentNode).getWidth();}
converted=containerSize*parseFloat(value)/100.0;}
else if(value.indexOf("em")>0)
{converted=parseFloat(value)*toPixels(Element.getStyle(element,'fontSize'));}
else
{converted=toPixels(value);}
return converted;}
function backgroundPositionDimension(oBlock,currentBGPosition,blockDimension,imageDimension)
{var position=0;if(currentBGPosition==='center')
{position=(blockDimension/2)-(imageDimension/2);}
else if((currentBGPosition==='right')||(currentBGPosition==='bottom'))
{position=blockDimension-imageDimension;}
else if((currentBGPosition==='left')||(currentBGPosition==='top'))
{position=0;}
else if(currentBGPosition.indexOf("px")>0)
{position=parseFloat(currentBGPosition);}
else if(currentBGPosition.indexOf("em")>0)
{position=parseFloat(currentBGPosition)*toPixels(oBlock.currentStyle.fontSize);}
else if(currentBGPosition.indexOf("%")>0)
{position=parseFloat(currentBGPosition)*blockDimension/100.0;}
else if((currentBGPosition.indexOf("pt")>0)||(currentBGPosition.indexOf("in")>0)||(currentBGPosition.indexOf("pc")>0)||(currentBGPosition.indexOf("cm")>0)||(currentBGPosition.indexOf("mm")>0))
{position=toPixels(currentBGPosition);}
return position;}
function elementHasCSSBGPNG(element)
{return(element.currentStyle&&element.currentStyle.backgroundImage&&(element.currentStyle.backgroundImage.indexOf('url(')!=-1)&&(element.currentStyle.backgroundImage.indexOf('.png")')!=-1));}
function fixupIEPNGBG(oBlock)
{if(oBlock)
{if(elementHasCSSBGPNG(oBlock))
{var currentBGImage=oBlock.currentStyle.backgroundImage;var currentBGRepeat=oBlock.currentStyle.backgroundRepeat;var currentBGPositionX=oBlock.currentStyle.backgroundPositionX;var currentBGPositionY=oBlock.currentStyle.backgroundPositionY;var urlStart=currentBGImage.indexOf('url(');var urlEnd=currentBGImage.indexOf(')',urlStart);var imageURL=currentBGImage.substring(urlStart+4,urlEnd);if(imageURL.charAt(0)=='"')
{imageURL=imageURL.substring(1);}
if(imageURL.charAt(imageURL.length-1)=='"')
{imageURL=imageURL.substring(0,imageURL.length-1);}
imageURL=IEConvertURLForPNGFix(imageURL);var overrideRepeat=false;var filterStyle="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+
imageURL+"', sizingMethod='crop');";if(RegExp("/C[0-9A-F]{8}.png$").exec(imageURL)!==null)
{filterStyle="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+
imageURL+"', sizingMethod='scale');";overrideRepeat=true;}
var fixupIEPNGBG_helper=function(img)
{var tileWidth=img.width;var tileHeight=img.height;var blockWidth=0;var blockHeight=0;if(oBlock.style.width)
{blockWidth=parseInt(oBlock.style.width,10);}
else
{blockWidth=oBlock.offsetWidth;}
if(oBlock.style.height)
{blockHeight=parseInt(oBlock.style.height,10);}
else
{blockHeight=oBlock.offsetHeight;}
var blockPaddingLeft=parseInt(oBlock.style.paddingLeft||0,10);if((blockWidth===0)||(blockHeight===0))
{return;}
var wholeRows=1;var wholeCols=1;var extraHeight=0;var extraWidth=0;if((currentBGRepeat.indexOf("no-repeat")!=-1)||((tileWidth===0)&&(tileHeight===0))||overrideRepeat)
{tileWidth=blockWidth;tileHeight=blockHeight;}
else if((currentBGRepeat.indexOf("repeat-x")!=-1)||(tileHeight===0))
{wholeCols=Math.floor(blockWidth/tileWidth);extraWidth=blockWidth-(tileWidth*wholeCols);tileHeight=blockHeight;}
else if(currentBGRepeat.indexOf("repeat-y")!=-1)
{wholeRows=Math.floor(blockHeight/tileHeight);extraHeight=blockHeight-(tileHeight*wholeRows);tileWidth=blockWidth;}
else
{wholeCols=Math.floor(blockWidth/tileWidth);wholeRows=Math.floor(blockHeight/tileHeight);extraWidth=blockWidth-(tileWidth*wholeCols);extraHeight=blockHeight-(tileHeight*wholeRows);}
var wrappedContent=document.createElement("div");var pngBGFixIsWrappedContentEmpty=true;wrappedContent.style.position="relative";wrappedContent.style.zIndex="1";wrappedContent.style.left="0px";wrappedContent.style.top="0px";wrappedContent.style.background="transparent";if(!isNaN(parseInt(oBlock.style.width,10)))
{wrappedContent.style.width=""+blockWidth+"px";}
if(!isNaN(parseInt(oBlock.style.height,10)))
{wrappedContent.style.height=""+blockHeight+"px";}
while(oBlock.hasChildNodes())
{if(oBlock.firstChild.nodeType==3)
{if(RegExp("^ *$").exec(oBlock.firstChild.data)===null)
{pngBGFixIsWrappedContentEmpty=false;}}
else
{pngBGFixIsWrappedContentEmpty=false;}
wrappedContent.appendChild(oBlock.firstChild);}
if(pngBGFixIsWrappedContentEmpty)
{wrappedContent.style.lineHeight="0px";}
var bgPositionX=backgroundPositionDimension(oBlock,currentBGPositionX,blockWidth,img.width);var bgPositionY=backgroundPositionDimension(oBlock,currentBGPositionY,blockHeight,img.height);bgPositionX-=blockPaddingLeft;var newMarkup="";for(var currentRow=0;currentRow<wholeRows;currentRow++)
{for(currentCol=0;currentCol<wholeCols;currentCol++)
{newMarkup+="<div class='pngtile' style="+"\"position: absolute; line-height: 0px; "+"width: "+tileWidth+"px; "+"height: "+tileHeight+"px; "+"left:"+(bgPositionX+(currentCol*tileWidth))+"px; "+"top:"+(bgPositionY+(currentRow*tileHeight))+"px; "+"filter:"+filterStyle+"\" > </div>";}
if(extraWidth!==0)
{newMarkup+="<div class='pngtile' style="+"\"position: absolute; line-height: 0px; "+"width: "+extraWidth+"px; "+"height: "+tileHeight+"px; "+"left:"+(bgPositionX+(currentCol*tileWidth))+"px; "+"top:"+(bgPositionY+(currentRow*tileHeight))+"px; "+"filter:"+filterStyle+"\" > </div>";}}
if(extraHeight!==0)
{for(currentCol=0;currentCol<wholeCols;currentCol++)
{newMarkup+="<div class='pngtile' style="+"\"position: absolute; line-height: 0px; "+"width: "+tileWidth+"px; "+"height: "+extraHeight+"px; "+"left:"+(bgPositionX+(currentCol*tileWidth))+"px; "+"top:"+(bgPositionY+(currentRow*tileHeight))+"px; "+"filter:"+filterStyle+"\" > </div>";}
if(extraWidth!==0)
{newMarkup+="<div class='pngtile' style="+"\"position: absolute; line-height: 0px; "+"width: "+extraWidth+"px; "+"height: "+extraHeight+"px; "+"left:"+(bgPositionX+(currentCol*tileWidth))+"px; "+"top:"+(bgPositionY+(currentRow*tileHeight))+"px; "+"filter:"+filterStyle+"\" > </div>";}}
oBlock.innerHTML=newMarkup;if(!pngBGFixIsWrappedContentEmpty)
{oBlock.appendChild(wrappedContent);}
oBlock.style.background="";}
var backgroundImage=new Image();backgroundImage.src=imageURL;if(backgroundImage.complete)
{fixupIEPNGBG_helper(backgroundImage);}
else
{backgroundImage.onload=fixupIEPNGBG_helper.bind(null,backgroundImage);}}}}
function fixupIEPNGBGsInTree(oAncestor,forceAutoFixup)
{if(shouldApplyCSSBackgroundPNGFix())
{try
{var allDivs=$A(oAncestor.getElementsByTagName('DIV'));if(isDiv(oAncestor))
{allDivs.push(oAncestor);}
allDivs.each(function(oNode)
{if(!$(oNode).hasClassName("noAutoPNGFix")||forceAutoFixup)
{fixupIEPNGBG(oNode);}});}
catch(e)
{}}}
function fixupAllIEPNGBGs()
{setTimeout(fixupIEPNGBGsInTree.bind(null,document),1);}
function optOutOfCSSBackgroundPNGFix(element)
{if(shouldApplyCSSBackgroundPNGFix())
{var allDivs=$A(element.getElementsByTagName("DIV"));allDivs.each(function(item)
{if(elementHasCSSBGPNG(item))
{$(item).addClassName("noAutoPNGFix");}});}}
function fixupIECSS3Opacity(strElementID)
{detectBrowser();if(windowsInternetExplorer)
{var oNode=$(strElementID);if(oNode&&(oNode.getStyle('opacity')<1))
{var opacity=oNode.getStyle('opacity');oNode.style.height=''+oNode.offsetHeight+'px';var targetNode=oNode;if(oNode.tagName.toLowerCase()=='img')
{targetNode=$(document.createElement('div'));targetNode.style.position=oNode.style.position;targetNode.style.top=oNode.style.top;targetNode.style.left=oNode.style.left;targetNode.style.width=oNode.style.width;targetNode.style.height=oNode.style.height;targetNode.style.opacity=oNode.style.opacity;targetNode.style.zIndex=oNode.style.zIndex;oNode.style.left='0px';oNode.style.top='0px';oNode.style.opacity='';if(oNode.parentNode.tagName.toLowerCase()=='a')
{var anchor=oNode.parentNode;anchor.parentNode.insertBefore(targetNode,anchor);targetNode.appendChild(anchor);}
else
{oNode.parentNode.insertBefore(targetNode,oNode);targetNode.appendChild(oNode);}}
else if(oNode.tagName.toLowerCase()=='div')
{var bufferWidth=100;var oNodeWidth=oNode.offsetWidth;var oNodeHeight=oNode.offsetHeight;extents=new IWExtents(-bufferWidth,-bufferWidth,oNodeWidth+bufferWidth,oNodeHeight*2+bufferWidth);var positionStyleVal=oNode.getStyle("position");var floatStyleVal=oNode.getStyle("float");var positioned=((positionStyleVal=="relative")||(positionStyleVal=="absolute"));var absolutelyPositioned=(positionStyleVal=="absolute"&&(floatStyleVal=="none"));targetNode=$(document.createElement('div'));var classString=oNode.className;classString=classString.replace(/(shadow_\d+)/g,'');classString=classString.replace(/(stroke_\d+)/g,'');classString=classString.replace(/(reflection_\d+)/g,'');targetNode.className=classString;targetNode.style.position=positioned?positionStyleVal:"relative";targetNode.style.styleFloat=floatStyleVal;targetNode.style.clear=oNode.getStyle("clear");targetNode.style.width=extents.right-extents.left+"px";targetNode.style.height=extents.bottom-extents.top+"px";targetNode.style.opacity=oNode.style.opacity;targetNode.style.zIndex=oNode.style.zIndex;if(absolutelyPositioned)
{targetNode.style.top=(parseFloat(oNode.getStyle("top"))||0)+extents.top+"px";targetNode.style.left=(parseFloat(oNode.getStyle("left"))||0)+extents.left+"px";}
else
{targetNode.style.marginTop=(parseFloat(oNode.getStyle("marginTop"))||0)+extents.top+"px";targetNode.style.marginLeft=(parseFloat(oNode.getStyle("marginLeft"))||0)+extents.left+"px";targetNode.style.marginBottom=(parseFloat(oNode.getStyle("marginBottom"))||0)-
(extents.bottom-oNodeHeight)+"px";targetNode.style.marginRight=(parseFloat(oNode.getStyle("marginRight"))||0)-
(extents.right-oNodeWidth)+"px";}
oNode.style.position="absolute";oNode.style.styleFloat="none";oNode.style.clear="none";oNode.style.left=-extents.left+"px";oNode.style.top=-extents.top+"px";oNode.style.margin='0px';oNode.style.verticalAlign='baseline';oNode.style.display='block';oNode.style.opacity='';if(browserVersion<7)
{oNode.className=oNode.className.replace(/(shadow_\d+)/g,'');}
oNode.parentNode.insertBefore(targetNode,oNode);targetNode.appendChild(oNode);}
$(targetNode).setFilter('progid:DXImageTransform.Microsoft.BasicImage','opacity='+opacity);}}}
function IWSetDivOpacity(div,fraction,suppressFilterRemoval)
{if(windowsInternetExplorer)
{if(fraction<.99||(suppressFilterRemoval==true))
{$(div).setFilter('alpha','opacity='+fraction*100);}
else
{$(div).killFilter('alpha');}}
else
{div.style.opacity=fraction;}}
function IMpreload(path,name,areaIndex)
{var rolloverName=name+'_rollover_'+areaIndex;var rolloverPath=path+'/'+rolloverName+'.png';self[rolloverName]=new Image();self[rolloverName].src=rolloverPath;var linkName=name+'_link_'+areaIndex;var linkPath=path+'/'+linkName+'.png';self[linkName]=new Image();self[linkName].src=linkPath;return true;}
function swapAlphaImageLoaderFilterSrc(img,src)
{var filterName='progid:DXImageTransform.Microsoft.AlphaImageLoader';var filterParams='src="'+IEConvertURLForPNGFix(src)+'", sizingMethod="scale"';img.setFilter(filterName,filterParams);img.originalSrc=img.src;}
function IMmouseover(name,areaIndex)
{var rolloverName=name+'_rollover_'+areaIndex;var linkName=name+'_link_'+areaIndex;var img=document.getElementById(linkName);if(img)
{detectBrowser();if(windowsInternetExplorer&&img.originalSrc)
{swapAlphaImageLoaderFilterSrc(img,self[rolloverName].src);}
else
{img.src=self[rolloverName].src;}}
return true;}
function IMmouseout(name,areaIndex)
{var linkName=name+'_link_'+areaIndex;var img=document.getElementById(linkName);if(img)
{detectBrowser();if(windowsInternetExplorer&&img.originalSrc)
{swapAlphaImageLoaderFilterSrc(img,self[linkName].src);}
else
{img.src=self[linkName].src;}}
return true;}
var quicktimeAvailable=false;var quicktimeVersion702=false;var isQuicktimeDetectionInitialized=false;var minVersionNum=0x7028000;var minVersionArray=['7','0','2'];function initializeQuicktimeDetection()
{if((navigator.plugins!==null)&&(navigator.plugins.length>0))
{for(i=0;i<navigator.plugins.length;i++)
{var plugin=navigator.plugins[i];if(plugin.name.toLowerCase().indexOf('quicktime plug-in ')!=-1)
{quicktimeAvailable=true;quicktimeVersionString=plugin.name.substring(18);var qtVersionArray=quicktimeVersionString.split('.');for(j=0;j<minVersionArray.length&&j<qtVersionArray.length;j++)
{var qtVersionComponent=qtVersionArray[j];var minVersionComponent=minVersionArray[j];if((qtVersionComponent>minVersionComponent)||((qtVersionComponent==minVersionComponent)&&(j==minVersionArray.length-1)))
{quicktimeVersion702=true;break;}
else if(qtVersionComponent<minVersionComponent)
{break;}}
break;}}}
else if(window.ActiveXObject)
{try
{quicktimeObj=new ActiveXObject('QuickTimeCheckObject.QuickTimeCheck.1');if(quicktimeObj!==null)
{quicktimeAvailable=true;quicktimeVersionNum=quicktimeObj.QuickTimeVersion;if(quicktimeVersionNum>=minVersionNum)
{quicktimeVersion702=true;}}}
catch(e)
{}}
isQuictimeDetectionInitialized=true;}
function fixupPodcast(mediaId,anchorId)
{if(!isQuicktimeDetectionInitialized)
{initializeQuicktimeDetection();}
if(!quicktimeVersion702)
{var oMediaElem=document.getElementById(mediaId);var oAnchorElem=document.getElementById(anchorId);if(oMediaElem&&oAnchorElem)
{oAnchorElem.style.display='inline';oMediaElem.parentNode.removeChild(oMediaElem);}}}
function allListBulletImagesContainedBy(node)
{var result=[];for(var i=0;i<node.childNodes.length;++i)
{var child=node.childNodes[i];if((child.nodeName=="IMG")&&((node.nodeName=="SPAN")||(node.nodeName=="A"))&&(node.parentNode!=null)&&(node.parentNode.nodeName=="P")&&(node.parentNode.parentNode!=null)&&(node.parentNode.parentNode.nodeName=="LI"))
{result=result.concat([child]);}
result=result.concat(allListBulletImagesContainedBy(child));}
return result;}
function hideAllListBulletImagesContainedBy(node)
{var images=allListBulletImagesContainedBy(node);for(var i=0;((images!=null)&&(i<images.length));++i)
{images[i].style.display="none";}}
function showAllListBulletImagesContainedBy(node)
{var images=allListBulletImagesContainedBy(node);for(var i=0;((images!=null)&&(i<images.length));++i)
{images[i].style.display="";}}
function getChildOfType(oParent,sNodeName,requestedIndex)
{var childrenOfType=oParent.getElementsByTagName(sNodeName);return(requestedIndex<childrenOfType.length)?childrenOfType.item(requestedIndex):null;}
function isDescendantInsideFixedHeightDescendantOfAncestor(oDescendant,oAncestor)
{if(oDescendant===oAncestor||oDescendant==null)
{return false;}
else if(parseFloat(oDescendant.style.height)>0)
{return true;}
else
{return isDescendantInsideFixedHeightDescendantOfAncestor(oDescendant.parentNode,oAncestor);}}
function getShrinkableParaDescendants(oAncestor)
{var oParaDescendants=[];var oPotentialParagraphs=oAncestor.getElementsByTagName('DIV');for(var iIndex=0;iIndex<oPotentialParagraphs.length;iIndex++)
{var oNode=oPotentialParagraphs.item(iIndex);if(oNode.className.lastIndexOf('paragraph')!=-1)
{if(isDescendantInsideFixedHeightDescendantOfAncestor(oNode,oAncestor))
{continue;}
oParaDescendants.push(oNode);}}
var oPotentialParagraphs=oAncestor.getElementsByTagName('P');for(var iIndex=0;iIndex<oPotentialParagraphs.length;iIndex++)
{var oNode=oPotentialParagraphs.item(iIndex);if(isDescendantInsideFixedHeightDescendantOfAncestor(oNode,oAncestor))
{continue;}
oParaDescendants.push(oNode);}
return oParaDescendants;}
var MINIMUM_FONT="10";var UNITS="";function elementFontSize(element)
{var fontSize=MINIMUM_FONT;if(document.defaultView)
{var computedStyle=document.defaultView.getComputedStyle(element,null);if(computedStyle)
{fontSize=computedStyle.getPropertyValue("font-size");}}
else if(element.currentStyle)
{fontSize=element.currentStyle.fontSize;}
if((UNITS.length===0)&&(fontSize!=MINIMUM_FONT))
{UNITS=fontSize.substring(fontSize.length-2,fontSize.length);}
return parseFloat(fontSize);}
function isExceptionToOneLineRule(element)
{return($(element).hasClassName("Header"))}
var HEIGHT_ERROR_MARGIN=2;function adjustFontSizeIfTooBig(idOfElement)
{var oParagraphDiv;var oSpan;var oTextBoxInnerDiv;var oTextBoxOuterDiv=document.getElementById(idOfElement);if(oTextBoxOuterDiv)
{oTextBoxInnerDiv=getElementsByTagAndClassName(oTextBoxOuterDiv,"DIV","text-content")[0];if(oTextBoxInnerDiv)
{hideAllListBulletImagesContainedBy(oTextBoxInnerDiv);var offsetHeight=oTextBoxInnerDiv.offsetHeight;var specifiedHeight=offsetHeight;if(oTextBoxOuterDiv.style.height!=="")
{specifiedHeight=parseFloat(oTextBoxOuterDiv.style.height);}
if(offsetHeight>(specifiedHeight+HEIGHT_ERROR_MARGIN))
{var smallestFontSize=200;var aParaChildren=getShrinkableParaDescendants(oTextBoxInnerDiv);var oneLine=false;var exceptionToOneLineRule=false;for(i=0;i<aParaChildren.length;i++)
{oParagraphDiv=aParaChildren[i];var lineHeight=elementLineHeight(oParagraphDiv);if(!isNaN(lineHeight))
{oneLine=oneLine||(lineHeight*1.5>=specifiedHeight);exceptionToOneLineRule=oneLine&&isExceptionToOneLineRule(oParagraphDiv);}
var fontSize=elementFontSize(oParagraphDiv);if(!isNaN(fontSize))
{smallestFontSize=Math.min(smallestFontSize,fontSize);}
for(j=0;j<oParagraphDiv.childNodes.length;j++)
{oSpan=oParagraphDiv.childNodes[j];if((oSpan.nodeName=="SPAN")||(oSpan.nodeName=="A"))
{fontSize=elementFontSize(oSpan);if(!isNaN(fontSize))
{smallestFontSize=Math.min(smallestFontSize,fontSize);}}}}
var minimum=parseFloat(MINIMUM_FONT);var count=0;while((smallestFontSize>minimum)&&(offsetHeight>(specifiedHeight+HEIGHT_ERROR_MARGIN))&&(count<10))
{++count;if(oneLine&&!exceptionToOneLineRule)
{var oldWidth=parseInt(oTextBoxOuterDiv.style.width,10);oTextBoxInnerDiv.style.width=""+oldWidth*Math.pow(1.05,count)+"px";}
else
{var scale=Math.max(0.95,minimum/smallestFontSize);for(i=0;i<aParaChildren.length;i++)
{oParagraphDiv=aParaChildren[i];var paraFontSize=elementFontSize(oParagraphDiv)*scale;var paraLineHeight=elementLineHeight(oParagraphDiv)*scale;for(j=0;j<oParagraphDiv.childNodes.length;j++)
{oSpan=oParagraphDiv.childNodes[j];if((oSpan.nodeName=="SPAN")||(oSpan.nodeName=="A"))
{var spanLineHeight=elementLineHeight(oSpan)*scale;if(!isNaN(spanLineHeight))
{oSpan.style.lineHeight=spanLineHeight+UNITS;}
var spanFontSize=elementFontSize(oSpan)*scale;if(!isNaN(spanFontSize))
{oSpan.style.fontSize=spanFontSize+UNITS;smallestFontSize=Math.min(smallestFontSize,spanFontSize);}}}
if(!isNaN(paraLineHeight))
{oParagraphDiv.style.lineHeight=paraLineHeight+UNITS;}
if(!isNaN(paraFontSize))
{oParagraphDiv.style.fontSize=paraFontSize+UNITS;smallestFontSize=Math.min(smallestFontSize,paraFontSize);}}}
offsetHeight=oTextBoxInnerDiv.offsetHeight;}}
showAllListBulletImagesContainedBy(oTextBoxInnerDiv);}}}
function elementLineHeight(element)
{var lineHeight=MINIMUM_FONT;if(document.defaultView)
{var computedStyle=document.defaultView.getComputedStyle(element,null);if(computedStyle)
{lineHeight=computedStyle.getPropertyValue("line-height");}}
else if(element.currentStyle)
{lineHeight=element.currentStyle.lineHeight;}
if((UNITS.length===0)&&(lineHeight!=MINIMUM_FONT))
{UNITS=lineHeight.substring(lineHeight.length-2,lineHeight.length);}
return parseFloat(lineHeight);}
function adjustLineHeightIfTooBig(idOfElement)
{var oTextBoxInnerDiv;var oTextBoxOuterDiv=document.getElementById(idOfElement);if(oTextBoxOuterDiv)
{oTextBoxInnerDiv=getElementsByTagAndClassName(oTextBoxOuterDiv,"DIV","text-content")[0];if(oTextBoxInnerDiv)
{hideAllListBulletImagesContainedBy(oTextBoxInnerDiv);var offsetHeight=oTextBoxInnerDiv.offsetHeight;var specifiedHeight=offsetHeight;if(oTextBoxOuterDiv.style.height!=="")
{specifiedHeight=parseFloat(oTextBoxOuterDiv.style.height);}
if(offsetHeight>(specifiedHeight+HEIGHT_ERROR_MARGIN))
{var adjusted=true;var count=0;while((adjusted)&&(offsetHeight>(specifiedHeight+HEIGHT_ERROR_MARGIN))&&(count<10))
{adjusted=false;++count;var aParaChildren=getShrinkableParaDescendants(oTextBoxInnerDiv);for(i=0;i<aParaChildren.length;i++)
{var fontSize;var lineHeight;var oParagraphDiv=aParaChildren[i];fontSize=elementFontSize(oParagraphDiv);lineHeight=elementLineHeight(oParagraphDiv)*0.95;if(!isNaN(lineHeight)&&lineHeight>=(fontSize*1.1))
{oParagraphDiv.style.lineHeight=lineHeight+UNITS;adjusted=true;}
for(j=0;j<oParagraphDiv.childNodes.length;j++)
{var oSpan=oParagraphDiv.childNodes[j];if((oSpan.nodeName=="SPAN")||(oSpan.nodeName=="A"))
{fontSize=elementFontSize(oSpan);lineHeight=elementLineHeight(oSpan)*0.95;if(!isNaN(lineHeight)&&lineHeight>=(fontSize*1.1))
{oSpan.style.lineHeight=lineHeight+UNITS;adjusted=true;}}}}
offsetHeight=oTextBoxInnerDiv.offsetHeight;}}
showAllListBulletImagesContainedBy(oTextBoxInnerDiv);}}}
function isDiv(node)
{return(node.nodeType==Node.ELEMENT_NODE)&&(node.tagName=="DIV");}
function fixupAllMozInlineBlocks()
{detectBrowser();if(isFirefox||isCamino)
{var oInlineBlocks=getElementsByTagAndClassName(document.body,"DIV","inline-block");for(var i=0,inlineBlocksLength=oInlineBlocks.length;i<inlineBlocksLength;++i)
{var oInlineBlock=oInlineBlocks[i];var oInterposingDiv=document.createElement("div");oInterposingDiv.style.position="relative";oInterposingDiv.style.overflow="visible";for(var j=0,childNodesLength=oInlineBlock.childNodes.length;j<childNodesLength;++j)
{var oChildNode=oInlineBlock.childNodes[0];oInlineBlock.removeChild(oChildNode);oInterposingDiv.appendChild(oChildNode);}
oInlineBlock.appendChild(oInterposingDiv);}}}
function getWidthDefiningAncestor(elem)
{var ancestor=elem.up('[style~="width:"]');if(!ancestor)
{ancestor=$$('body')[0];}
return ancestor;}
function updateListOfIE7FloatsFix(div)
{var div=$(div);var floatValue=div.getStyle("float");if(floatValue=="left"||floatValue=="right")
{var commonAncestor=getWidthDefiningAncestor(div);var floatDescendants=commonAncestor.getElementsBySelector('[style~="float:"]');while(floatDescendants.length>0)
{var floatElem=floatDescendants.shift();floatValue=floatElem.getStyle("float");if(floatValue=="left"||floatValue=="right")
{var floatAncestor=getWidthDefiningAncestor(floatElem);if(floatAncestor===commonAncestor)
{if(!listOfIE7FloatsFix.include(floatElem))
{listOfIE7FloatsFix.push(floatElem);}}}}}}
function fixupFloatsIfIE7()
{detectBrowser();if(windowsInternetExplorer&&browserVersion==7)
{if(listOfIE7FloatsFix.length>0)
{var floatsToRestore=[];var floatElem;var displayStyle;while(listOfIE7FloatsFix.length>0)
{floatElem=listOfIE7FloatsFix.shift();displayStyle=floatElem.getStyle("display");floatElem.setStyle({"display":"none"});floatsToRestore.push({element:floatElem,displayStyle:displayStyle});}
while(floatsToRestore.length>0)
{var queueEntry=floatsToRestore.shift();floatElem=queueEntry.element;displayStyle=queueEntry.displayStyle;floatElem.setStyle({"display":displayStyle});}}}}
function performPostEffectsFixups()
{fixupAllMozInlineBlocks();fixupFloatsIfIE7();}
function reduceLeftMarginIfIE6(element)
{detectBrowser();if(windowsInternetExplorer&&browserVersion<7)
{$(element).style.marginLeft=px(parseFloat($(element).style.marginLeft||0)-1);}}
function reduceRightMarginIfIE6(element)
{detectBrowser();if(windowsInternetExplorer&&browserVersion<7)
{$(element).style.marginRight=px(parseFloat($(element).style.marginRight||0)-1);}}
if(Object.keys===undefined)
{Object.keys=function(obj)
{var result=[];for(attr in obj)
result.push(attr);return result;}}
Object.objectType=function(obj)
{var result=typeof obj;if(result=="object")
{if(obj.constructor==Array)
result="Array";}
return result;}
Array.prototype.contains=function(value)
{for(var i=0;i<this.length;++i)
{if(this[i]==value)
{return true;}}
return false;};Array.prototype.forEach=function(f)
{for(var i=0;i<this.length;++i)
{f(this[i]);}};Array.prototype.indexOf=function(value)
{for(var i=0;i<this.length;++i)
{if(this[i]==value)
{return i;}}
return null;};Array.prototype.isEqual=function(that)
{if(this.length==that.length)
{for(var i=0;i<this.length;++i)
{if(this[i]!=that[i])
return false;}
return true;}
return false;}
Array.prototype.minusArray=function(that)
{var i=0;while(i<this.length)
{if(that.contains(this[i]))
this.splice(i,1);else
++i;}}
String.stringWithFormat=function(format)
{var formatted="";var nextArgument=1;var formatPattern=/%((\d+)\$)?([%s])?/;while(true)
{foundIndex=format.search(formatPattern);if(foundIndex==-1)
{formatted+=format;break;}
if(foundIndex>0)
{formatted+=format.substring(0,foundIndex)}
var matchInfo=format.match(formatPattern);var formatCharacter=matchInfo[3];if(formatCharacter=="%")
{formatted+="%";}
else
{if(matchInfo[2])
{argumentNumber=parseInt(matchInfo[2]);}
else
{argumentNumber=nextArgument++;}
argument=(argumentNumber<arguments.length)?arguments[argumentNumber]:"";if(formatCharacter=="s")
{formatted+=argument;}}
format=format.substring(foundIndex+matchInfo[0].length);}
return formatted;}
String.prototype.hasSuffix=function(suffix)
{return this.slice(-1*suffix.length)==suffix;};String.prototype.hasPrefix=function(prefix)
{return this.substr(0,prefix.length)==prefix;}
String.prototype.lastPathComponent=function()
{return this.substr(this.lastIndexOf("/")+1);};String.prototype.stringByDeletingLastPathComponent=function()
{return this.substr(0,this.lastIndexOf("/"));};String.prototype.stringByDeletingPathExtension=function()
{var lastSeparatorIndex=this.lastIndexOf("/");var lastDotIndex=this.lastIndexOf(".");if((lastDotIndex>lastSeparatorIndex+1)&&lastDotIndex>0)
return this.slice(0,lastDotIndex);return this;}
String.prototype.stringByAppendingPathComponent=function(component)
{if(this.hasSuffix("/"))
{return this+component;}
return this+"/"+component;};String.prototype.stringByAppendingAsQueryString=function(parameters)
{var result=this;if(parameters)
{var prependChar="?";Object.keys(parameters).forEach(function(key)
{if(parameters.hasOwnProperty(key))
{result+=prependChar+escape(key)+"="+escape(parameters[key]);prependChar="&";}});}
return result;};String.prototype.stringByUnescapingXML=function()
{var str=this.replace(/&lt;/g,'<');str=str.replace(/&gt;/g,'>');str=str.replace(/&quot;/g,'"');str=str.replace(/&apos;/g,"'");str=str.replace(/&amp;/g,'&');return str;};String.prototype.stringByEscapingXML=function(escapeAdditionalCharacters)
{var str=this.replace(/&/g,'&amp;');str=str.replace(/</g,'&lt;');if(escapeAdditionalCharacters)
{str=str.replace(/>/g,'&gt;');str=str.replace(/"/g,'&quot;');str=str.replace(/'/g,'&apos;');}
return str;};String.prototype.stringByConvertingNewlinesToBreakTags=function()
{return this.replace(/\n\r|\n|\r/g,'<br />');};String.prototype.urlStringByDeletingQueryAndFragment=function()
{var result=this;var lastIndex=result.lastIndexOf("?");if(lastIndex>0)
return result.substr(0,lastIndex);lastIndex=result.lastIndexOf("#");if(lastIndex>0)
result=result.substr(0,lastIndex);return result;}
String.prototype.toRelativeURL=function(baseURL)
{var result=this;if(baseURL&&this.indexOf(baseURL)==0)
{var chop=baseURL.length;if(this.charAt(chop)=='/')
++chop;result=this.substring(chop);}
return result;}
String.prototype.toAbsoluteURL=function()
{var result=this;if(this.indexOf(":/")==-1)
{var pageURL=document.URL.urlStringByDeletingQueryAndFragment();var pathURL=pageURL.stringByDeletingLastPathComponent();result=pathURL.stringByAppendingPathComponent(this);}
return result;}
String.prototype.toRebasedURL=function(baseURL)
{return this.toRelativeURL(baseURL).toAbsoluteURL();}
String.prototype.replaceStringWithString=function(target,replacement,global)
{var result=this;while(true)
{var pos=result.indexOf(target);if(pos==-1)
break;result=result.substr(0,pos)+replacement+result.substr(pos+target.length);pos+=replacement.length;if(pos>=result.length||!global)
break;}
return result;}
var trace=function(){};function ajaxRequest(url,func,obj)
{if(window.XMLHttpRequest)
{var req=new XMLHttpRequest();}
else if(window.ActiveXObject)
{isIE=true;try
{req=new ActiveXObject("Msxml2.XMLHTTP");}
catch(e)
{req=new ActiveXObject("Microsoft.XMLHTTP");}}
if(func)
{req.onreadystatechange=function(){func(req,obj);}}
req.open('GET',url,true);req.setRequestHeader('X-Requested-With','XMLHttpRequest');if(req.overrideMimeType)
{req.overrideMimeType("text/xml");}
req.send(null);return false;}
function isAjaxRequestReady(req)
{var result=req.readyState==4&&(req.status==null||req.status==0||req.status==200);return result;}
function ajaxGetDocumentElement(req)
{var elem=null;if(req.responseXML.documentElement)
{elem=req.responseXML.documentElement;}
else
{var dom=new ActiveXObject("MSXML.DOMDocument");dom.loadXML(req.responseText);elem=dom.documentElement;}
return elem;}
function iWLog(str)
{if(window.console)
{window.console.log(str);}
else if(window.dump)
{window.dump(str+"\n");}}
function position(abs,left,top,width,height)
{var pos="";if(abs)
pos="position: absolute; ";var size="";if(width&&height)
size=' width: '+width+'px; height: '+height+'px;';return pos+'left: '+left+'px; top: '+top+'px;'+size;}
var gIWUtilsTransparentGifURL="";function setTransparentGifURL(url)
{if(gIWUtilsTransparentGifURL=="")
{gIWUtilsTransparentGifURL=url;}}
function transparentGifURL()
{(function(){return gIWUtilsTransparentGifURL!=""}).assert("Transparent image URL not set");return gIWUtilsTransparentGifURL;}
function imgMarkup(src,style,attributes,alt)
{var markup="";if(src)
{if(style==null)
{style="";}
if(attributes==null)
{attributes="";}
if(alt==null)
{alt="";}
detectBrowser();if(windowsInternetExplorer)
{style+=" filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+IEConvertURLForPNGFix(src)+"', sizingMethod='scale');";src=gIWUtilsTransparentGifURL;}
if(style.length>0)
{style=' style="'+style+'"';}
if(attributes.length>0)
{attributes=' '+attributes;}
if(alt.length>0)
{alt=' alt="'+alt.stringByEscapingXML(true)+'"';}
markup='<img src="'+src+'"'+style+attributes+alt+' />';}
return markup;}
function setImgSrc(imgElement,src)
{detectBrowser();if(windowsInternetExplorer&&src.slice(-4).toLowerCase()==".png")
{$(imgElement).setFilter('progid:DXImageTransform.Microsoft.AlphaImageLoader','src="'+IEConvertURLForPNGFix(src)+'", sizingMethod="scale"');imgElement.src=gIWUtilsTransparentGifURL;}
else
{imgElement.src=src;}}
function iWOpacity(opacity)
{var style="";detectBrowser();if(windowsInternetExplorer)
{style=" progid:DXImageTransform.Microsoft.Alpha(opacity="+opacity*100+"); ";}
else
{style=" opacity: "+opacity+"; ";}
return style;}
function getElementsByTagAndClassName(that,tagName,className)
{var elementsByClassAndTag=[];var elementsByClass=$(that).getElementsByClassName(className);if(tagName=='*')
{elementsByClassAndTag=elementsByClass;}
else
{tagName=tagName.toLowerCase();for(var i=0,len=elementsByClass.length;i<len;++i)
{if(elementsByClass[i].tagName.toLowerCase()==tagName)
{elementsByClassAndTag.push(elementsByClass[i]);}}}
return elementsByClassAndTag;}
function getArgs()
{var args=new Object();var query=location.search.substring(1);var pairs=query.split("&");for(var i=0;i<pairs.length;++i)
{var pair=pairs[i];var pos=pair.indexOf('=');if(pos>0)
{var argname=decodeURIComponent(pair.substring(0,pos));var value=decodeURIComponent(pair.substring(pos+1));args[argname]=value;}}
return args;}
function IWRange(location,length)
{this.setLocation(location);this.setLength(length);}
IWRange.prototype.length=function()
{return this.p_length;}
IWRange.prototype.setLength=function(length)
{this.p_length=parseFloat(length);}
IWRange.prototype.location=function()
{return this.p_location;}
IWRange.prototype.setLocation=function(location)
{this.p_location=parseFloat(location);}
IWRange.prototype.max=function()
{return this.location()+this.length();}
IWRange.prototype.min=function()
{return this.location();}
IWRange.prototype.shift=function(amount)
{this.setLocation(this.location()+amount);}
IWRange.prototype.containsLocation=function(location)
{return((location>=this.min())&&(location<this.max()));}
function IWPageRange(location,length)
{IWRange.apply(this,arguments);}
IWPageRange.prototype=new IWRange();IWPageRange.prototype.constructor=IWRange;IWPageRange.prototype.setMax=function(newMax)
{var maxLength=this.p_lengthForMax(newMax);this.setLocation(Math.max(newMax-maxLength,0))
this.setLength(newMax-this.location());}
IWPageRange.prototype.shift=function(amount)
{IWRange.prototype.shift.call(this,amount);this.setMax(this.max());}
IWPageRange.prototype.p_lengthForMax=function(max)
{return(max<=9)?5:3;}
function px(s)
{return s.toString()+"px";}
function depx(s)
{return parseInt(s||0);}
function globalOriginOfDivNode(div)
{(function(){return div!==null;}).assert("div must not be null");(function(){return div.offsetParent!==null;}).assert("div has null offset parent, maybe hidden?");var p=Position.cumulativeOffset(div);return new IWPoint(p[0],p[1]);}
function globalRectOfDivNode(div)
{var globalOrigin=globalOriginOfDivNode(div);var size=new IWSize(div.offsetWidth,div.offsetHeight);return new IWRect(globalOrigin,size);}
function pageSetBodyLayerResidentRectangle(divId,rectangle)
{var div=$(divId);if(div)
{if(window.bodyLayerResidents===undefined)
{window.bodyLayerResidents=new Hash({});}
if(rectangle===null)
{bodyLayerResidents.remove(divId);}
else
{bodyLayerResidents[divId]=rectangle;}
var desiredBottom=0;bodyLayerResidents.each(function(pair)
{var itemBottom=pair.value.origin.y+pair.value.size.height;desiredBottom=Math.max(desiredBottom,itemBottom);});var bodyLayer=$('body_layer');if(bodyLayer)
{var bodyLayerSpacer=bodyLayer.getElementsByClassName('spacer')[0];if(bodyLayerSpacer)
{var bodySpacerRect=globalRectOfDivNode(bodyLayerSpacer);var desiredHeight=desiredBottom-bodySpacerRect.origin.y;bodyLayerSpacer.style.height=px(desiredHeight);}}}}
function locationHRef()
{var result=window.location.href;if(result.match(/file:\/[^\/]/))
{result="file://"+result.substr(5);}
return result;}
function IWSize(width,height)
{this.width=width;this.height=height;}
function IWZeroSize()
{return new IWSize(0,0);}
IWSize.prototype.scale=function(hscale,vscale,round)
{if(round===undefined)round=false;if(vscale===undefined)vscale=hscale;var scaled=new IWSize(this.width*hscale,this.height*vscale);if(round)
{scaled.width=Math.round(scaled.width);scaled.height=Math.round(scaled.height);}
return scaled;}
IWSize.prototype.round=function()
{return this.scale(1,1,true);}
IWSize.prototype.toString=function()
{return"Size("+this.width+", "+this.height+")";}
IWSize.prototype.aspectRatio=function()
{return this.width/this.height;}
IWSize.prototype.subtractSize=function(s)
{return new IWSize(this.width-s.width,this.height-s.height);}
function IWPoint(x,y)
{this.x=x;this.y=y;}
function IWZeroPoint()
{return new IWPoint(0,0);}
IWPoint.prototype.scale=function(hscale,vscale,round)
{if(round===undefined)round=false;if(vscale===undefined)vscale=hscale;var scaled=new IWPoint(this.x*hscale,this.y*vscale);if(round)
{scaled.x=Math.round(scaled.x);scaled.y=Math.round(scaled.y);}
return scaled;}
IWPoint.prototype.round=function()
{return this.scale(1,1,true);}
IWPoint.prototype.offset=function(deltaX,deltaY)
{return new IWPoint(this.x+deltaX,this.y+deltaY);}
IWPoint.prototype.toString=function()
{return"Point("+this.x+", "+th