var pbDisplayCookie=new Object();pbDisplayCookie.getValue=function(name,subname){if(pbDisplayCookie[name]==null){var value=getCookie("pb_"+name);if(value==null||value.length==0){return null}pbDisplayCookie[name]=stringToObject(value)}return pbDisplayCookie[name][subname]};pbDisplayCookie.setValue=function(name,subname,subvalue){if(pbDisplayCookie[name]==null){var value=getCookie("pb_"+name);if(value==null||value.length==0){value=subname+"="+subvalue;setCookie("pb_"+name,value,null,"/")}pbDisplayCookie[name]=stringToObject(value)}if(pbDisplayCookie[name][subname]==subvalue){return}pbDisplayCookie[name][subname]=subvalue;var value=objectToString(pbDisplayCookie[name]);setCookie("pb_"+name,value,null,"/")};function toggleButton_init(button){if(!button){return}button.setStyleDisplay=function(value){if(button.style.display==value){return}button.style.display=value;if(button.onStyleDisplayChange){button.onStyleDisplayChange(button)}button.updateAppearance()};button.setToggled=function(value){if(button.disabled||button.style.display=="none"||button.toggled==value){return}button.toggled=value;var proceed;if(button.onToggledChange!=null){proceed=button.onToggledChange(button)}button.updateAppearance();return proceed};button.updateAppearance=function(){button.className=button.className.replace(/ up| down| hover| disabled/g,"");button.className+=button.disabled?" disabled":button.toggled?" down":" up"};button.onclick=function(){return button.setToggled(!button.toggled)};button.onmousedown=function(){button.className=button.className.replace(/ up| down| hover/g,"");button.className+=" down"};button.onmousemove=function(){if(!button.toggled&&button.className.indexOf(" hover")<0){button.className+=" hover"}};button.onmouseout=function(){button.updateAppearance()};button.updateAppearance()}function allButton_onToggledChange(allButton){for(var name in allButton.controlledButtons){var button=allButton.controlledButtons[name];button.setToggled(allButton.toggled)}setCookie(allButton.id,allButton.toggled,null,"/")}function infoToolbar_init(infoFieldTypes){var infoPanes=new Object();var infoButtons=new Object();for(var i=0;i<infoFieldTypes.length;i++){var name=infoFieldTypes[i];infoPanes[name]=document.getElementById("pb_"+name+"_info_pane");infoButtons[name]=document.getElementById("pb_"+name+"_info_btn")}function infoButton_onToggledChange(button){infoPanes[button.name].style.display=button.toggled?"":"none";pbDisplayCookie.setValue("info",button.name,button.toggled)}for(var name in infoButtons){var button=infoButtons[name];toggleButton_init(button);button.name=name;button.onToggledChange=infoButton_onToggledChange;button.setToggled(pbDisplayCookie.getValue("info",button.name)=="true")}var info_allButton=document.getElementById("pb_info_all_btn");info_allButton.toggled=getCookie(info_allButton.id)=="true";toggleButton_init(info_allButton);info_allButton.controlledButtons=infoButtons;info_allButton.onToggledChange=allButton_onToggledChange}function logToolbars_init(logLevelNames,numRequiredLogLevels,logFieldNames){var logLevelCssRulesArray=getCssRulesByStyleId("pb_log_level_style");var logLevelCssRulesTable=new Object();var logLevelButtons=new Object();for(var i=0;i<logLevelNames.length;i++){var name=logLevelNames[i];logLevelCssRulesTable[name]=logLevelCssRulesArray[i];logLevelButtons[name]=document.getElementById("pb_"+name+"_log_level_btn")}var logFieldCssRulesArray=getCssRulesByStyleId("pb_log_field_style");var logFieldCssRulesTable=new Object();var logFieldButtons=new Object();for(var i=0;i<logFieldNames.length;i++){var name=logFieldNames[i];logFieldCssRulesTable[name]=logFieldCssRulesArray[i];logFieldButtons[name]=document.getElementById("pb_"+name+"_log_field_btn")}var logFieldBar_updateAppearance=function(){var count=0;for(var name in logLevelButtons){var button=logLevelButtons[name];if(!button.disabled&&button.toggled&&button.style.display!="none"){count++}}document.getElementById("pb_log_field_bar").style.display=(count>0)?"":"none"};var logLevelButton_onToggledChange=function(button){var rule=logLevelCssRulesTable[button.name];rule.style.display=button.toggled?"":"none";if(button.toggled){logSearch_updateLogLevel(button.name)}logFieldBar_updateAppearance();pbDisplayCookie.setValue("log_levels",button.name,button.toggled)};var logLevelButton_onStyleDisplayChange=function(button){if(button.style.display=="none"&&button.toggled){button.toggled=false;logLevelButton_onToggledChange(button)}};var logFieldButton_onToggledChange=function(button){var rule=logFieldCssRulesTable[button.name];rule.style.display=button.toggled?"":"none";pbDisplayCookie.setValue("log_fields",button.name,button.toggled)};for(var name in logLevelButtons){var button=logLevelButtons[name];toggleButton_init(button);button.name=name;button.onToggledChange=logLevelButton_onToggledChange;button.onStyleDisplayChange=logLevelButton_onStyleDisplayChange;var toggledValue=pbDisplayCookie.getValue("log_levels",button.name);button.setToggled(toggledValue=="true")}for(var name in logFieldButtons){var button=logFieldButtons[name];toggleButton_init(button);button.name=name;button.onToggledChange=logFieldButton_onToggledChange;var toggledValue=pbDisplayCookie.getValue("log_fields",button.name);button.setToggled(toggledValue!="false")}var logLevel_allButton=document.getElementById("pb_log_level_all_btn");logLevel_allButton.toggled=(getCookie(logLevel_allButton.id)=="true");toggleButton_init(logLevel_allButton);logLevel_allButton.controlledButtons=logLevelButtons;logLevel_allButton.onToggledChange=allButton_onToggledChange;var logField_allButton=document.getElementById("pb_log_field_all_btn");logField_allButton.toggled=(getCookie(logField_allButton.id)!="false");toggleButton_init(logField_allButton);logField_allButton.controlledButtons=logFieldButtons;logField_allButton.onToggledChange=allButton_onToggledChange;var logLevel_moreButton=document.getElementById("pb_log_level_more_btn");toggleButton_init(logLevel_moreButton);logLevel_moreButton.onToggledChange=function(moreButton){moreButton.value=moreButton.toggled?"<<":">>";for(var i=numRequiredLogLevels;i<logLevelNames.length;i++){var logLevelName=logLevelNames[i];var button=logLevelButtons[logLevelName];button.setStyleDisplay(moreButton.toggled?"":"none")}setCookie(moreButton.id,moreButton.toggled,null,"/")};logLevel_moreButton.setToggled(getCookie(logLevel_moreButton.id)=="true");var logSearch_updateAllLogLevels=function(){for(var name in logLevelButtons){var button=logLevelButtons[name];if(button.toggled){logSearch_updateLogLevel(name)}}}}var logEntryElements;var logEntryTextArray;var logEntryPositionsTable=new Object();function logPane_init(logLevelNames){var pane=document.getElementById("pb_log_pane");var placeholder=document.getElementById("pb_log_pane_placeholder");pane.parentNode.removeChild(pane);placeholder.parentNode.replaceChild(pane,placeholder);logEntryElements=getChildElements(pane);logEntryTextArray=new Array(logEntryElements.length);for(var i=0;i<logEntryElements.length;i++){var logEntryElement=logEntryElements[i];var classNames=logEntryElement.className.split(" ");var levelName=classNames[classNames.length-1];var logEntryPositions=logEntryPositionsTable[levelName];if(logEntryPositions){logEntryPositions.push(i)}else{logEntryPositionsTable[levelName]=[i]}}for(var i=0;i<logLevelNames.length;i++){var logLevelName=logLevelNames[i];logSearch_updateLogLevel(logLevelName)}for(var i=0;i<logEntryElements.length;i++){var logEntryElement=logEntryElements[i];logEntryElement.onmouseover=function(){logEntry_insertLinks(this);this.onmouseover=null}}}function logSearch_updateLogLevel(logLevelName){var logEntryPositions=logEntryPositionsTable[logLevelName];if(logEntryPositions==null){return}var doSearch=document.getElementById("pb_log_search_btn").toggled;var searchCriteria=document.getElementById("pb_log_search_txt").value;if(doSearch&&searchCriteria!=""){var doRegExpSearch=document.getElementById("pb_log_search_re_chk").checked;if(doRegExpSearch){searchCriteria=new RegExp(searchCriteria)}for(var i=0;i<logEntryPositions.length;i++){var logEntryPosition=logEntryPositions[i];var logEntryElement=logEntryElements[logEntryPosition];var logEntryText=logEntryTextArray[logEntryPosition];if(logEntryText==null){logEntryText=decodeNumericEntities(logEntryElement.innerHTML.replace(/<[^>]+>/g,""));logEntryTextArray[logEntryPosition]=logEntryText}var doDisplay=doRegExpSearch?searchCriteria.test(logEntryText):(logEntryText.indexOf(searchCriteria,0)>=0);logEntryElement.style.display=doDisplay?"":"none"}}else{for(var i=0;i<logEntryPositions.length;i++){var logEntryElement=logEntryElements[logEntryPositions[i]];logEntryElement.style.display=""}}}function logEntry_insertLinks(logEntryElement){var eidElement=logEntryElement;while(eidElement.lastChild!=null&&eidElement.lastChild.nodeType==1){eidElement=eidElement.lastChild}var eidText=eidElement.lastChild;if(eidText.nodeType!=3){return}var eidBegins=eidText.data.lastIndexOf("EID=");if(eidBegins>0){eidText.splitText(eidBegins)}else{return}eidText=eidText.nextSibling;var eidLink=document.createElement("a");eidLink.target="_blank";eidLink.href="http://wiki.amazon.com/?"+eidText.data.replace("=",":");eidText.parentNode.replaceChild(eidLink,eidText);eidLink.appendChild(eidText)}function memleakPane_init(){var pane=document.getElementById("pb_memleak_pane");var anchors=pane.getElementsByTagName("a");for(var i=0;i<anchors.length;i++){var a=anchors[i];var overlayId=a.href.split("#")[1];var overlayElem=document.getElementById(overlayId);a.obj=overlayElem;a.onToggledChange=function(button){if(button.toggled){button.firstChild.data="Hide";button.obj.style.display="";button.obj.style.visibility="visible"}else{button.firstChild.data="Show";button.obj.style.display="none";button.obj.style.visibility="hidden"}return false};toggleButton_init(a);a.setToggled(false)}}function stringToObject(str){var result=new Object();var entries=str.split("; ");for(var i=0;i<entries.length;i++){var entry=entries[i];var index=entry.indexOf("=");var name=entry.substring(0,index);var value=entry.substring(index+1,entry.length);result[name]=value}return result}function objectToString(hash){var str="";for(var key in hash){if(str!=""){str+="; "}str+=key+"="+hash[key]}return str}function getChildElements(element){if(element.children){return element.children}var childNodes=element.childNodes;var childElements=new Array();for(var i=0;i<childNodes.length;i++){if(childNodes[i].nodeType==1){childElements.push(childNodes[i])}}return childElements}function getCssRulesByStyleId(styleId){var cssRules;for(var i=0;i<document.styleSheets.length;i++){var styleSheet=document.styleSheets[i];var owner;if(styleSheet.ownerNode){owner=styleSheet.ownerNode}else{if(styleSheet.owningElement){owner=styleSheet.owningElement}}if(owner.id==styleId){if(document.styleSheets[i].cssRules){cssRules=document.styleSheets[i].cssRules}else{if(document.styleSheets[i].rules){cssRules=document.styleSheets[i].rules}}return cssRules}}}function decodeEntities(value){var result=value;result=result.replace("&quot;",'"');result=result.replace("&lt;","<");result=result.replace("&gt;",">");result=result.replace("&amp;","&");return result}function decodeNumericEntities(value){var result=value;result=result.replace(/&#([0-9]+);/,function(encodedEntity,charCode){return String.fromCharCode(parseInt(charCode))});return result}function setCookie(name,value,expires,path,domain,secure){var curCookie=name+"="+escape(value)+((expires)?"; expires="+expires:"")+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+((secure)?"; secure":"");document.cookie=curCookie}function getCookie(name){var dc=document.cookie;var prefix=name+"=";begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0){return null}}else{begin+=2}var end=dc.indexOf(";",begin);if(end==-1){end=dc.length}return unescape(dc.substring(begin+prefix.length,end))}var cki={mouseoverfunc:function(){var other=this.cki.other;this.cki.prevClassName=this.className;this.className=this.originalClassName+" hover";other.cki.prevClassName=other.className;other.className=other.originalClassName+" hover"},mouseoutfunc:function(){var other=this.cki.other;this.className=this.cki.prevClassName;other.className=other.cki.prevClassName},mouseclickfunc:function(){var other=this.cki.other;var otherpane=other.cki.parentPane;var offset=other.offsetTop-otherpane.offsetTop-(otherpane.clientHeight/2);if(offset<0){offset=0}otherpane.scrollTop=offset;if(cki.selectedItem){var s=cki.selectedItem;var so=s.cki.other;s.className=s.cki.originalClassName;s.cki.prevClassName=s.cki.originalClassName;so.className=so.cki.originalClassName;so.cki.prevClassName=so.cki.originalClassName}cki.selectedItem=this;this.className=this.cki.prevClassName=this.originalClassName+" selected";other.className=other.cki.prevClassName=other.originalClassName+" selected"},setupScrollBehavior:function(leftPane,rightPane,leftItem,rightItem){if(!rightItem.cki){rightItem.cki={}}if(!leftItem.cki){leftItem.cki={}}rightItem.cki.other=leftItem;rightItem.cki.originalClassName=rightItem.className;leftItem.cki.other=rightItem;leftItem.cki.originalClassName=leftItem.className;rightItem.onmouseover=cki.mouseoverfunc;leftItem.onmouseover=cki.mouseoverfunc;leftItem.onmouseout=cki.mouseoutfunc;rightItem.onmouseout=cki.mouseoutfunc;leftItem.cki.parentPane=leftPane;rightItem.cki.parentPane=rightPane;leftItem.onclick=cki.mouseclickfunc;rightItem.onclick=cki.mouseclickfunc},pretty:function(leftPane){var paneHeight="600";if(window.innerHeight){paneHeight=window.innerHeight}else{if(document.documentElement.clientHeight){paneHeight=document.documentElement.clientHeight}}if(document.body.clientHeight){paneHeight=document.body.clientHeight}paneHeight=(Math.round(paneHeight*0.9));leftPane.className+=" left scroll_pane";leftPane.style.height=paneHeight;var rightPane=document.createElement("DIV");rightPane.className="right scroll_pane";rightPane.style.height=paneHeight;var paneParent=leftPane.parentNode;var paneSibling=leftPane.nextSibling;leftPane.parentNode.removeChild(leftPane);var pane=document.createElement("DIV");pane.appendChild(leftPane);pane.appendChild(rightPane);if(paneSibling){paneParent.insertBefore(pane,paneSibling)}else{paneParent.appendChild(pane)}for(var serviceName=cki.getNextByTag(leftPane.firstChild,"H1");serviceName;serviceName=cki.getNextByTag(serviceName.nextSibling,"H1")){var methodsUL=cki.getNextByTag(serviceName,"UL");var rpServiceName=document.createElement("H1");rpServiceName.innerHTML=serviceName.innerHTML;rightPane.appendChild(rpServiceName);var rpMethodsUL=document.createElement("UL");rightPane.appendChild(rpMethodsUL);for(var methodLI=cki.getNextByTag(methodsUL.firstChild,"LI");methodLI;methodLI=cki.getNextByTag(methodLI.nextSibling,"LI")){var methodName=cki.getNextByTag(methodLI.firstChild,"H2");var resultsUL=cki.getNextByTag(methodName,"UL");var rpMethodLI=document.createElement("LI");rpMethodLI.className="pretty";rpMethodsUL.appendChild(rpMethodLI);var rpMethodName=document.createElement("H2");rpMethodName.className="pretty";rpMethodName.innerHTML=methodName.innerHTML;rpMethodLI.appendChild(rpMethodName);var rpResultsUL=document.createElement("UL");rpMethodLI.appendChild(rpResultsUL);var keycount=0;for(var resultLI=cki.getNextByTag(resultsUL.firstChild,"LI");resultLI;resultLI=cki.getNextByTag(resultLI.nextSibling,"LI")){var rpResultLI=document.createElement("LI");rpResultsUL.appendChild(rpResultLI);var key=cki.getNextByTag(resultLI.firstChild,"PRE");var arg=cki.getNextByTag(key.nextSibling,"PRE");var result=cki.getNextByTag(arg.nextSibling,"PRE");resultLI.removeChild(key);rpResultLI.appendChild(key);resultLI.removeChild(arg);rpResultLI.appendChild(arg);resultLI.removeChild(result);rpResultLI.appendChild(result);cki.setupScrollBehavior(leftPane,rightPane,resultLI,rpResultLI);var tooltiptext=serviceName.innerHTML+"::"+methodName.innerHTML;resultLI.setAttribute("title",tooltiptext);rpResultLI.setAttribute("title",tooltiptext);var keyname=document.createElement("SPAN");keyname.innerHTML=""+(keycount+1);resultLI.appendChild(keyname);keycount++}}}},getNextByTag:function(elem,tag){if(!elem){return null}for(var p=elem;p;p=p.nextSibling){if(p.tagName==tag){return p}}return null}};(function(){var old=window.onload||function(){};window.onload=function(e){old(e);var element=document.getElementById("cache_key_invalidate");if(element){cki.pretty(element)}}})();