if(window.jstiming){window.jstiming.beaconImageReferences_={};window.jstiming.reportCounter_=1;var getTick=function(b,a,f){a=b.t[a];b=b.t.start;if(!a||!(b||f))return undefined;if(f!=undefined)b=f;return a-b};window.jstiming.report=function(b,a,f){var e="";if(window.jstiming.pt){e+="&srt="+window.jstiming.pt;delete window.jstiming.pt}try{if(window.external&&window.external.tran)e+="&tran="+window.external.tran;else if(window.gtbExternal&&window.gtbExternal.tran)e+="&tran="+window.gtbExternal.tran()}catch(c){}if(b.dapperCookie_)e+=
"&"+b.dapperCookie_;var i=b.t,d=i.start,h=[];for(var r in i)r!="start"&&d&&h.push(r+"."+getTick(b,r));delete i.start;if(a)for(var m in a)e+="&"+m+"="+a[m];b=[f?f:"http://csi.gstatic.com/csi","?v=3","&s="+(window.jstiming.sn||"codesite")+"&action=",b.name,e,"&rt=",h.join(",")].join("");a=new Image;var z=window.jstiming.reportCounter_++;window.jstiming.beaconImageReferences_[z]=a;a.onload=a.onerror=function(){delete window.jstiming.beaconImageReferences_[z]};a.src=b;a=null;return b}};(function(){var b={dictionariesList:["products","programs","searchSuggest","searchResultTabs"],products:{includeInSearchSuggest:true,entries:{android:{title:"Android",groupsTitle:"Android \u7f51\u4e0a\u8bba\u575b",url:"/android/",keywords:{"\u79fb\u52a8\u8bbe\u5907":10}},gdata:{title:"Google \u6570\u636e API",groupsTitle:"Google Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/gdata/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":6,Gentry:10,"Data API":10,java:1}},blogger:{title:"Blogger \u6570\u636e API \uff08\u5b9e\u9a8c\u5ba4\uff09",
groupsTitle:"Blogger Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/blogger/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":2,Gentry:1,"Data API":4}},chromium:{title:"Chromium",groupsTitle:"Chromium \u7f51\u4e0a\u8bba\u575b",url:"/chromium/",keywords:{"\u6d4f\u89c8\u5668":1,chrome:1,chromium:1,v8:1}},feedburner:{title:"Feedburner API\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"FeedBurner \u7f51\u4e0a\u8bba\u575b",url:"/apis/feedburner/",keywords:{"\u4f9b\u7a3f":10}},accounts:{title:"Google \u5e10\u6237\u9a8c\u8bc1",
groupsTitle:"Google \u5e10\u6237\u9a8c\u8bc1\u7f51\u4e0a\u8bba\u575b",url:"/apis/accounts/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":1,"\u5de5\u4f5c\u4eba\u5458":1}},adsense:{title:"Google AdSense API",groupsTitle:"Google AdSense API \u7f51\u4e0a\u8bba\u575b",url:"/apis/adsense/",keywords:{"\u5e7f\u544a":1,API:1}},adwords:{title:"Google AdWords API",groupsTitle:"Google AdWords API \u7f51\u4e0a\u8bba\u575b",url:"/apis/adwords/",keywords:{"\u5e7f\u544a":2,API:1}},ajax:{title:"Google AJAX API",
groupsTitle:"Google AJAX API \u7f51\u4e0a\u8bba\u575b",url:"/apis/ajax/",keywords:{ajax:10,API:10}},ajaxfeeds:{title:"Google AJAX \u4f9b\u7a3f API",groupsTitle:"Google AJAX \u4f9b\u7a3f API \u7f51\u4e0a\u8bba\u575b",url:"/apis/ajaxfeeds/",keywords:{ajax:8,api:5,"\u4f9b\u7a3f":6}},ajaxlanguage:{title:"Google AJAX \u8bed\u8a00 API",groupsTitle:"Google AJAX \u8bed\u8a00 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/ajaxlanguage/",keywords:{ajax:8,api:5,"\u8bed\u8a00":10}},ajaxsearch:{title:"Google AJAX \u641c\u7d22 API",
groupsTitle:"Google AJAX \u641c\u7d22 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/ajaxsearch/",keywords:{ajax:9,api:10,"\u641c\u7d22":6,"\u7ffb\u8bd1":5}},analytics:{title:"Google Analytics\uff08\u5206\u6790\uff09",groupsTitle:"Google Analytics\uff08\u5206\u6790\uff09\u7f51\u4e0a\u8bba\u575b",url:"/apis/analytics/",keywords:{"\u5de5\u5177":1,api:1,"\u6570\u636e API":1}},appengine:{title:"Google App Engine",groupsTitle:"Google App Engine \u7f51\u4e0a\u8bba\u575b",url:"/appengine/",keywords:{api:5,"\u5de5\u5177":1,
java:8,eclipse:1,app:8,"app engine":10,"\u63d2\u4ef6":1}},googleapps:{title:"Google \u4f01\u4e1a\u5e94\u7528\u5957\u4ef6\u5f00\u53d1\u4eba\u5458\u5de5\u5177",url:"/googleapps/",keywords:{"Google \u4f01\u4e1a\u5e94\u7528\u5957\u4ef6":10,"\u5c0f\u5de5\u5177":1,"\u4f01\u4e1a":1,"app engine":1,"\u5546\u6237":1,"\u9632\u706b\u5899":1,sdc:1}},apps:{title:"Google \u4f01\u4e1a\u5e94\u7528\u5957\u4ef6 API",groupsTitle:"Google \u4f01\u4e1a\u5e94\u7528\u5957\u4ef6 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/apps/",
keywords:{API:1}},base:{title:"Google Base \u6570\u636e API \uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Google Base Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/base/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":2,Gentry:1,"Data API":2}},books:{title:"Google \u56fe\u4e66\u641c\u7d22 API \uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Google \u56fe\u4e66\u641c\u7d22 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/books/",keywords:{ajax:9,api:10,"\u641c\u7d22":1,"\u4f9b\u7a3f":1,"\u56fe\u4e66":1}},calendar:{title:"Google \u65e5\u5386 API \u548c\u5de5\u5177",
groupsTitle:"Google \u65e5\u5386 API \u548c\u5de5\u5177\u7f51\u4e0a\u8bba\u575b",url:"/apis/calendar/",keywords:{api:1,"\u4f9b\u7a3f":5,"\u6761\u76ee":2,"\u5c0f\u5de5\u5177":3,Gentry:1,"Data API":3,"\u5de5\u5177":1}},chart:{title:"Google \u56fe\u8868 API",groupsTitle:"Google \u56fe\u8868 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/chart/",keywords:{api:1,"\u56fe\u8868":1}},checkout:{title:"Google Checkout API",groupsTitle:"Google Checkout API \u7f51\u4e0a\u8bba\u575b",url:"/apis/checkout/",keywords:{API:5}},
csearch:{title:"Google \u4ee3\u7801\u641c\u7d22\uff08\u5b9e\u9a8c\u5ba4\uff09",url:"http://www.google.com/codesearch",keywords:{"\u641c\u7d22":1}},codesearch:{title:"Google \u4ee3\u7801\u641c\u7d22\u6570\u636e API \uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Google \u4ee3\u7801\u641c\u7d22 Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/codesearch/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":1,Gentry:1,"\u641c\u7d22":1}},customsearch:{title:"Google \u81ea\u5b9a\u4e49\u641c\u7d22 API",groupsTitle:"Google \u81ea\u5b9a\u4e49\u641c\u7d22 API \u7f51\u4e0a\u8bba\u575b",
url:"/apis/customsearch/",keywords:{api:1,"\u5e7f\u544a":1,"\u81ea\u5b9a\u4e49":1,"\u641c\u7d22":3,cse:1}},contacts:{title:"Google \u901a\u8baf\u5f55 API",groupsTitle:"Google \u901a\u8baf\u5f55 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/contacts/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":2,Gentry:1,"\u8054\u7cfb\u4eba":1,"Data API":4}},coupons:{title:"Google Coupon \u4f9b\u7a3f \uff08\u5b9e\u9a8c\u5ba4\uff09",url:"/apis/coupons/",keywords:{"\u4f9b\u7a3f":1}},desktop:{title:"Google \u684c\u9762 API\uff08\u5b9e\u9a8c\u5ba4\uff09",
groupsTitle:"Google Desktop API \u7f51\u4e0a\u8bba\u575b",url:"/apis/desktop/",keywords:{"\u5c0f\u5de5\u5177":1,"\u641c\u7d22":1}},documents:{title:"Google \u5728\u7ebf\u6587\u6863\u5217\u8868\u6570\u636e API",groupsTitle:"Google Documents \u5217\u8868 Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/documents/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":2,Gentry:1,"Data API":3}},"in-stream":{title:"DoubleClick In-Stream\uff08\u5b9e\u9a8c\u5ba4\uff09",url:"/apis/in-stream/",keywords:{api:1,DoubleClick:10,
"\u5e7f\u544a":1,"\u89c6\u9891":1,flash:1}},earth:{title:"Google \u5730\u7403 API",groupsTitle:"Google \u5730\u7403 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/earth/",keywords:{api:4,"\u5f00\u53d1\u4eba\u5458":1,"\u5f00\u53d1\u4eba\u5458\u65e5":1,"\u5730\u7406":6,"\u5730\u56fe":6,kml:6}},eclipse:{title:"Eclipse Google \u63d2\u4ef6",url:"/eclipse/",keywords:{java:3,gwt:1,"app engine":1,"plug-in":10}},finance:{title:"Google \u8d22\u7ecf\u6570\u636e API\uff08\u5b9e\u9a8c\u5ba4\uff09",url:"/apis/finance/",
keywords:{api:4,"\u4f9b\u7a3f":1,"\u6570\u636e API":1}},flashmaps:{title:"\u9002\u7528\u4e8e Flash \u7684 Google \u5730\u56fe API",url:"/apis/maps/documentation/flash/",keywords:{ajax:7,api:4,actionscript:1,"\u5730\u7406":6,"\u5730\u56fe":6}},friendconnect:{title:"Google Friend Connect API\uff08\u5b9e\u9a8c\u5ba4\uff09",url:"/apis/friendconnect/",keywords:{api:5,"\u5c0f\u5de5\u5177":5,"\u793e\u4ea4":10,"\u597d\u53cb":10}},gadgets:{title:"\u5c0f\u5de5\u5177 API",groupsTitle:"\u5c0f\u5de5\u5177 API \u7f51\u4e0a\u8bba\u575b",
url:"/apis/gadgets/",keywords:{"\u8d22\u52a1":1,api:8,"\u5c0f\u5de5\u5177":6}},gears:{title:"Gears\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Gears \u7f51\u4e0a\u8bba\u575b",url:"/apis/gears/",keywords:{ajax:5,api:9,"\u5de5\u5177":1}},health:{title:"Google Health API",groupsTitle:"Google Health \u5f00\u53d1\u4eba\u5458\u7f51\u4e0a\u8bba\u575b",url:"/apis/health/",keywords:{"Data API":3,"\u4f9b\u7a3f":1,"\u5065\u5eb7":1,java:1}},igoogle:{title:"iGoogle \u5f00\u53d1\u4eba\u5458\u4e3b\u9875\uff08\u5b9e\u9a8c\u5ba4\uff09",
groupsTitle:"iGoogle \u5f00\u53d1\u4eba\u5458\u7f51\u4e0a\u8bba\u575b",url:"/apis/igoogle/",keywords:{"\u5e7f\u544a":3,API:1,"\u5c0f\u5de5\u5177":1,"\u793e\u4ea4":1}},themes:{title:"iGoogle \u4e3b\u9898 API\uff08\u5b9e\u9a8c\u5ba4\uff09",url:"/apis/themes/",keywords:{API:1}},kml:{title:"KML",groupsTitle:"KML \u7f51\u4e0a\u8bba\u575b",url:"/apis/kml/",keywords:{api:1,"\u5730\u7406":4,"\u5730\u56fe":1}},mapplets:{title:"Google Mapplets",url:"/apis/maps/documentation/mapplets/",keywords:{api:1,"\u5c0f\u5de5\u5177":1,
"\u5730\u7406":5,"\u5730\u56fe":1}},maps:{title:"Google \u5730\u56fe API",groupsTitle:"Google \u5730\u56fe API \u7f51\u4e0a\u8bba\u575b",url:"/apis/maps/",keywords:{ajax:7,api:4,"\u5730\u7406":6,"\u5730\u56fe":6}},o3d:{title:"O3D API\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"O3D \u7f51\u4e0a\u8bba\u575b",url:"/apis/o3d/",keywords:{"\u56fe\u5f62":10,"\u5f00\u6e90":1,javascript:1,"3d":10}},opensocial:{title:"OpenSocial",groupsTitle:"OpenSocial \u7f51\u4e0a\u8bba\u575b",url:"/apis/opensocial/",keywords:{"\u793e\u4ea4":10,
"\u5f00\u6e90":2,API:8}},orkut:{title:"Orkut \u5f00\u53d1\u4eba\u5458\u4e3b\u9875",groupsTitle:"Orkut \u7f51\u4e0a\u8bba\u575b",url:"/apis/orkut/",keywords:{"\u793e\u4ea4":8}},safebrowsing:{title:"Google \u5b89\u5168\u6d4f\u89c8 API\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Google Safe Browsing API \u7f51\u4e0a\u8bba\u575b",url:"/apis/safebrowsing/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":1,Gentry:1}},securedataconnector:{title:"Google \u5b89\u5168\u6570\u636e\u8fde\u63a5\u5668",groupsTitle:"Google \u4f01\u4e1a\u5e94\u7528\u5957\u4ef6 API \u8bba\u575b",
url:"/securedataconnector/",keywords:{"\u6570\u636e API":3,sdc:10,"\u5c0f\u5de5\u5177":1,"\u9632\u706b\u5899":10,"\u4f01\u4e1a":1,"app engine":1,"\u7f51\u7edc":1,"Google \u4f01\u4e1a\u5e94\u7528\u5957\u4ef6":2}},sitemaps:{title:"Google Sitemaps",url:"https://www.google.com/webmasters/tools/docs/en/about.html",keywords:{"\u641c\u7d22":1,"\u5de5\u5177":1}},sketchup:{title:"Google SketchUp Ruby API",groupsTitle:"Google SketchUp Ruby API \u7f51\u4e0a\u8bba\u575b",url:"/apis/sketchup/",keywords:{api:1,
"\u5730\u7406":3}},socialgraph:{title:"Social Graph API\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Social Graph API \u7f51\u4e0a\u8bba\u575b",url:"/apis/socialgraph/",keywords:{"\u793e\u4ea4":9}},spreadsheets:{title:"Google \u7535\u5b50\u8868\u683c\u6570\u636e API \uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Google Spreadsheets Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/spreadsheets/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":2,Gentry:1,"Data API":4}},staticmaps:{title:"Google Static Maps API",
url:"/apis/maps/documentation/staticmaps/",keywords:{api:1,"\u5730\u7406":6,"\u5730\u56fe":2}},talk:{title:"\u9762\u5411\u5f00\u53d1\u4eba\u5458\u7684 Google Talk\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Google Talk XMPP \u7f51\u4e0a\u8bba\u575b",url:"/apis/talk/",keywords:{API:1}},toolbar:{title:"Google \u5de5\u5177\u680f API\uff08\u5b9e\u9a8c\u5ba4\uff09",url:"http://www.google.com/tools/toolbar/buttons/apis",keywords:{api:1,"\u5de5\u5177":1}},transit:{title:"Google \u516c\u4ea4\u641c\u7d22\u4f9b\u7a3f\u89c4\u8303",
groupsTitle:"Google \u516c\u4ea4\u641c\u7d22\u4f9b\u7a3f\u7f51\u4e0a\u8bba\u575b",url:"/transit/spec/transit_feed_specification.html",keywords:{"\u4f9b\u7a3f":1,"\u5730\u7406":1,"\u5730\u56fe":1}},visualization:{title:"Google \u53ef\u89c6\u5316 API",groupsTitle:"Google \u53ef\u89c6\u5316 API \u7f51\u4e0a\u8bba\u575b",url:"/apis/visualization/",keywords:{ajax:1,api:3,Gentry:1,"\u5c0f\u5de5\u5177":3}},webtoolkit:{title:"Google Web Toolkit",groupsTitle:"Google Web Toolkit \u7f51\u4e0a\u8bba\u575b",url:"/webtoolkit/",
keywords:{ajax:6,java:1,"\u5de5\u5177":6,eclipse:1,gwt:10}},picasa:{title:"Picasa API \uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"Picasa API \u7f51\u4e0a\u8bba\u575b",url:"/apis/picasa/",keywords:{API:3,Gentry:1}},picasaweb:{title:"Picasa \u7f51\u7edc\u76f8\u518c\u6570\u636e API",groupsTitle:"Picasa \u7f51\u7edc\u76f8\u518c Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/picasaweb/",keywords:{"\u4f9b\u7a3f":1,"\u6761\u76ee":1,Gentry:1,"Data API":3}},v8:{title:"V8",url:"/apis/v8/",keywords:{api:1,"\u6d4f\u89c8\u5668":1,
chrome:1,chromium:1,"\u5de5\u5177":1}},wave:{title:"Google Wave API",groupsTitle:"Google Wave API \u7f51\u4e0a\u8bba\u575b",url:"/apis/wave",keywords:{wave:10,"\u673a\u5668\u4eba":5,"\u5c0f\u5de5\u5177":1,"\u5d4c\u5165":3,"\u6269\u5c55":1}},webelements:{title:"Google \u7f51\u9875\u5143\u7d20",url:"http://www.google.com/webelements/",keywords:{"\u5143\u7d20":10,"\u65b0\u95fb":1,"\u65e5\u5386":1,"\u5730\u56fe":1,youtube:1,"\u7535\u5b50\u8868\u683c":1,"\u6f14\u793a\u6587\u7a3f":1,"\u641c\u7d22":1}},
webmastertools:{title:"Google \u7f51\u7ad9\u7ba1\u7406\u5458\u5de5\u5177\u6570\u636e API\uff08\u5b9e\u9a8c\u5ba4\uff09",groupsTitle:"\u7f51\u7ad9\u7ba1\u7406\u5458\u5de5\u5177\u6570\u636e API \u7f51\u4e0a\u8bba\u575b",url:"/apis/webmastertools/",keywords:{"\u6570\u636e API":1,"\u641c\u7d22":1,"\u5de5\u5177":1}},youtube:{title:"YouTube API",groupsTitle:"YouTube Data API \u7f51\u4e0a\u8bba\u575b",url:"/apis/youtube/",keywords:{"\u4f9b\u7a3f":4,"\u6761\u76ee":2,Gentry:6}}}},programs:{includeInSearchSuggest:true,
entries:{opensource:{title:"OpenSource",url:"/opensource/",keywords:{"\u5f00\u6e90":10}},soc:{title:"Google Summer of Code",url:"/soc/",keywords:{"\u5f00\u6e90":5}},ghop:{title:"\u9ad8\u5ea6\u5f00\u653e\u7684\u53c2\u4e0e\u6027\u7ade\u8d5b",url:"/opensource/ghop/2007-8/",keywords:{"\u5f00\u6e90":2}},projectHosting:{title:"\u9879\u76ee\u6258\u7ba1",url:"/hosting/",keywords:{"\u5f00\u6e90":6}},mac:{title:"Google Mac \u5f00\u53d1\u4eba\u5458\u56ed\u5730",url:"/mac/",keywords:{"\u5f00\u6e90":2,osx:6,apple:6,
iphone:6}},edu:{title:"Google \u7f16\u7a0b\u5b66\u9662",groupsTitle:"Google \u7f16\u7a0b\u5b66\u9662\u7f51\u4e0a\u8bba\u575b",url:"/edu/",keywords:{"\u6559\u80b2\u5de5\u4f5c\u8005":1}},doctype:{title:"Google DocType",groupsTitle:"Google DocType \u7f51\u4e0a\u8bba\u575b",url:"/doctype/",keywords:{"\u6559\u80b2\u5de5\u4f5c\u8005":1}},speed:{title:"\u8ba9\u6211\u4eec\u4f7f\u7f51\u7edc\u8fd0\u8f6c\u66f4\u5feb",groupsTitle:"\u4f7f\u7f51\u7edc\u8fd0\u8f6c\u66f4\u5feb",url:"/speed/",keywords:{"\u901f\u5ea6":8,
"\u6027\u80fd":9}},"page-speed":{title:"Page Speed",groupsTitle:"Page Speed \u793e\u533a",url:"/speed/page-speed/",keywords:{"\u901f\u5ea6":8,"\u6027\u80fd":9}},events:{title:"\u5f00\u53d1\u4eba\u5458\u6d3b\u52a8",url:"/events/",keywords:{"\u5f00\u53d1\u4eba\u5458":1,gdd:1,"\u5f00\u53d1\u4eba\u5458\u65e5":1}},googleio:{title:"Google I/O",url:"/events/io/",keywords:{API:1,Gentry:1,"google io":10,"\u6d3b\u52a8":10,io:10}},gtug:{title:"Google \u6280\u672f\u7528\u6237\u7f51\u4e0a\u8bba\u575b",url:"http://www.gtugs.org/",
keywords:{gtug:10,"\u6d3b\u52a8":9,"\u7f51\u4e0a\u8bba\u575b":1,"\u6280\u672f":1,"\u7528\u6237":1}},developerday:{title:"\u5f00\u53d1\u4eba\u5458\u65e5",url:"/events/developerday/",keywords:{"\u5f00\u53d1\u4eba\u5458":1,"\u5f00\u53d1\u4eba\u5458\u65e5":1,gdd:10,"\u6d3b\u52a8":2,"Google \u5f00\u53d1\u4eba\u5458\u65e5":10}},campfire:{title:"Google Campfire One",url:"/campfire/",keywords:{"\u5f00\u53d1\u4eba\u5458":1}}}},searchSuggest:{includeInSearchSuggest:true,entries:{adsenseforaudio:{title:"Google \u8bed\u97f3 AdSense API\uff08\u4e0d\u5efa\u8bae\u4f7f\u7528\uff09",
url:"/apis/adsenseforaudio/",keywords:{"\u5e7f\u544a":1,API:1}},gme:{title:"Google \u6df7\u642d\u7f16\u8f91\u5668\uff08\u4e0d\u5efa\u8bae\u4f7f\u7528\uff09",url:"/gme/",keywords:{ajax:2,"\u6761\u76ee":1,Gentry:1,"\u5de5\u5177":5}},notebook:{title:"Google \u8bb0\u4e8b\u672c\u6570\u636e API\uff08\u4e0d\u5efa\u8bae\u4f7f\u7528\uff09",url:"/apis/notebook/",keywords:{api:1,"\u4f9b\u7a3f":1,"\u6761\u76ee":1,Gentry:1,"Data API":3}},gra:{title:"Google \u6536\u97f3\u673a\u81ea\u52a8\u5316 API\uff08\u4e0d\u5efa\u8bae\u4f7f\u7528\uff09",
url:"/apis/gra/",keywords:{java:1,api:1,"\u6536\u97f3\u673a":10,"\u81ea\u52a8\u5316":3}},soapsearch:{title:"Google SOAP \u641c\u7d22 API\uff08\u4e0d\u5efa\u8bae\u4f7f\u7528\uff09",url:"/apis/soapsearch/",keywords:{soap:1,api:1,"\u641c\u7d22":1}},support:{title:"\u77e5\u8bc6\u5e93",url:"/support/",keywords:{"\u5e38\u89c1\u95ee\u9898\u89e3\u7b54":1}},codeblog:{title:"Google \u4ee3\u7801\u535a\u5ba2",url:"http://google-code-updates.blogspot.com/",keywords:{"\u5f00\u53d1\u4eba\u5458":1}},featuredprojects:{title:"\u7279\u8272\u9879\u76ee",
url:"http://google-code-featured.blogspot.com/",keywords:{"\u5f00\u53d1\u4eba\u5458":1}},opensourceprojects:{title:"\u5f00\u6e90\u9879\u76ee",url:"/hosting/projects.html",keywords:{"\u5f00\u6e90":1}},qualify:{title:"\u5f00\u53d1\u4eba\u5458\u8d44\u683c",url:"/qualify/",keywords:{"\u8d44\u683c":10,"\u8bc1\u4e66":10,"\u57f9\u8bad":10}},protocolbuffers:{title:"Protocol Buffers",groupsTitle:"Protocol Buffers \u7f51\u4e0a\u8bba\u575b",url:"/apis/protocolbuffers/",keywords:{"\u5e8f\u5217\u5316":10,"\u5f00\u6e90":4,
API:8,"\u7ed3\u6784\u5316\u6570\u636e":10,"\u6570\u636e":1}}}},searchResultTabs:{includeInSearchSuggest:false,entries:{google_code:{title:"Google \u4ee3\u7801\u7f51\u7ad9"},discussion:{title:"Google Code Groups",groupsTitle:"Google \u4ee3\u7801\u7f51\u4e0a\u8bba\u575b"},project_hosting:{title:"\u9879\u76ee\u6258\u7ba1"}}}};window.CODESITE_productDictionary_default=b;window.CODESITE_productDictionary=b})();(function(){window.CODESITE_CSIReportDelay=500;window.CODESITE_reportedToCSI=false;function b(){if(jQuery("body.gc-documentation").length>0)return"product_doc";if(window._homepageGadgetData_)return"codesite_home";if(jQuery("#gc-home").length>0)return"product_home";return"other"}function a(){var e=["codesite","sc"],c=b(),i=CODESITE_getProduct();if(i)if(i=="more")e.push("site_directory");else if(i=="search")e.push("cse");else if(i=="support")e.push(i);else if(i=="events")e.push(i);else if(c=="product_doc"){e.push(c);
e.push(i+"_doc")}else{if(c=="product_home"){e.push(c);e.push(i+"_home")}}else c=="codesite_home"&&e.push(c);e.push("intl_"+CODESITE_langLoc);return e.join(",")}function f(){if(!CODESITE_reportedToCSI){var e=a();CODESITE_CSITimer.load.name=e;CODESITE_CSITimer.toc.name=e;window.setTimeout(function(){for(var c in CODESITE_CSITimer)window.jstiming.report(CODESITE_CSITimer[c])},CODESITE_CSIReportDelay);window.CODESITE_reportedToCSI=true}}jQuery(document).ready(function(){CODESITE_CSITimer.load.tick("dom")});
jQuery(window).load(function(){CODESITE_CSITimer.load.tick("plt");f()})})(jQuery);window.CODESITE_langCode={en:"English",de:"Deutsch",es:"Espa\u00f1ol",fa:"\u0641\u0627\u0631\u0633\u06cc",ja:"\u65e5\u672c\u8a9e",ko:"\ud55c\uad6d\uc5b4","pt-BR":"Portugu\u00eas (Brasil)",ru:"P\u0443\u0441\u0441\u043a\u0438\u0439",vi:"Ti\u1ebfng Vi\u1ec7t","zh-CN":"\u4e2d\u6587 (\u7b80\u4f53)","zh-TW":"\u4e2d\u6587 (\u7e41\u9ad4)"};
window.CODESITE_prodLang=[{url:"/apis/orkut/",langloc:["en","es","ja","ko","pt-BR","ru","vi","zh-CN","zh-TW"]},{url:"/apis/maps/",langloc:["en","es","de","ja","ko","pt-BR","ru","zh-CN","zh-TW"]},{url:"/apis/ajaxlanguage/",langloc:["en","es","de","ja","fa","pt-BR","zh-CN"]}];(function(){var b=/\/\/([^\/]*)?(\/intl\/[^\/]*)?(\/.*)?/,a=/\/intl\/(([a-zA-Z]+)(-[a-zA-Z]+)?)(_[a-zA-Z]+)?/,f=a.exec(window.location.href);if(f==null){window.CODESITE_langLoc="en";window.CODESITE_langUrl=""}else{window.CODESITE_langLoc=f[1];window.CODESITE_langUrl=f[0].replace(/_ALL/,"")}jQuery(document).ready(window.CODESITE_langSelectInit=function(e,c){var i=e("#lang-dropdown")[0];if(i){var d=e("#menuIcon-lang-dropdown")[0],h=null;c=c||window.location;c=b.exec(c.href);for(var r=0;r<window.CODESITE_prodLang.length;r++)if(c[3].indexOf(window.CODESITE_prodLang[r].url)>=
0){h=window.CODESITE_prodLang[r].langloc;break}h||(h=["en","es","ja","ko","pt-BR","ru","zh-CN","zh-TW"]);i=new Menu(i,null,null,function(){CODESITE_click("/gb/sc/langselect/"+CODESITE_langLoc)},d);for(d=0;d<h.length;d++){c=h[d];r=CODESITE_localeRedirect(c,window.location,false);i.addItem(window.CODESITE_langCode[c],r)}e("body").append(i.menu)}});window.CODESITE_localeRedirect=function(e,c,i){c=c||window.location;var d=b.exec(c.href);i=i==null?true:false;var h=c.href;if(d){h=d[3]?"http://"+d[1]+"/intl/"+
e+d[3]:"http://"+d[1]+"/intl/"+e+"/";if(i)c.href=h}return h};window.CODESITE_redirectToI18nContent=function(e,c){c=c||CODESITE_localeRedirect;e=(e=a.exec(e.href))&&e[1]||"en";c(e,null);return false}})(jQuery);(function(){function b(c){return window.encodeURIComponent?encodeURIComponent(c):escape(c)}function a(c){return window.decodeURIComponent?decodeURIComponent(c):unescape(c)}RegExp.escape=function(){var c=["/",".","*","+","?","|","(",")","[","]","{","}","\\"],i=new RegExp("(\\"+c.join("|\\")+")","g");return function(d){return d.replace(i,"\\$1")}}();window.CODESITE_minWidth=function(){var c=[],i=function(){if(CODESITE_minWidth)for(var d=0,h=c[0]||null;d<c.length;++d,h=c[d])try{if(h.parent_.offsetWidth<=
h.minWidth_){h.style.width=h.minWidth_+"px";h.style.overflow="hidden"}else{h.style.width="";h.style.overflow=""}}catch(r){}};if(jQuery.browser.msie){jQuery(window).resize(i);jQuery(i)}return function(d,h){if(jQuery.browser.msie){d=jQuery(d)[0];d.minWidth_=h-0;d.parent_=d.parentNode;c.push(d)}}}();window.CODESITE_createImageBar=function(c,i){c=new google.feeds.Feed(c);c.setResultFormat(google.feeds.Feed.XML_FORMAT);c.setNumEntries(2);c.load(function(d){if(!d.error){var h=jQuery(i);d=jQuery("item",
d.xmlDocument);var r=0;if(d.length>=2)r=2;for(var m=['<div class="post techtalk"><div class="screenshot"><a href="@link"><img alt="@origTitle" src="@thumb" height="80" width="90"></a></div><div class="info"><div class="name"><a href="@link" title="@origTitle">@title</a></div><div class="author videodateformat">',CODESITE_msgs.imagebar.POSTED_ON," @date</div></div></div>"].join(""),z=jQuery('<div class="g-section g-tpl-50-50 gc-techtalk"><div class="g-unit g-first">&nbsp;</div><div class="g-unit">&nbsp;</div></div>'),
A=0;A<r;A++){var H=jQuery("title:first",d[A]).text(),E=H,N=jQuery("link:first",d[A]).text(),P=N.substring(31),I;if((I=d.eq(A).find("atom\\:updated, updated")).length){var O=I.eq(0).text().replace(/(\d{4})-(\d{2})-(\d{2})T.*/,"$2 $3 $1").split(" ");I=new Date;I.setFullYear(O[2],O[0]-1,O[1])}else if((I=d.eq(A).find("dc\\:date, date")).length)I=new Date(I.eq(0).text());O=google.feeds.getElementsByTagNameNS(d[A],"http://search.yahoo.com/mrss/","thumbnail")[0];var ia=O.getAttribute("url");O.getAttribute("width");
O.getAttribute("height");I=I.getMonth()+1+"/"+I.getDate()+"/"+I.getFullYear();H=jQuery(m.replace(/@link/g,N).replace(/@videoid/g,P).replace(/@thumb/g,ia).replace(/@origTitle/g,H).replace(/@title/g,E).replace(/@date/g,I));jQuery(".g-unit:eq("+A+")",z).prepend(H)}h.append(z)}})};window.CODESITE_loadFeedAPI=function(){google.load("feeds","1",{callback:CODESITE_initFeedAPI})};jQuery(function(){jQuery("#searchForm").show();jQuery("#searchForm2").hide()});window.CODESITE_initFeedAPI=function(){if(CODESITE_codeVideoDiv.length)if(typeof _homepageGadgetData_!==
"undefined"){CODESITE_createImageBar(_homepageGadgetData_.homepageVideoFeedUrl,"#gc-codevideo");CODESITE_minWidth("#codesiteContent",1000)}if(CODESITE_macRecentChangesDiv.length){var c=new BlogPreview(document.getElementById("recentchanges"));c.show("http://googlemacplayground.blogspot.com/atom.xml","changes")}};function f(){var c="http://google-code-feed-gadget.googlecode.com/svn/build/prod/feedgadget/feedgadget.xml",i="",d="#parent="+escape(/[^?]*/.exec(window.location));if(/gadgettest=1/.exec(window.location)){c=
c.replace("/prod/","/test/");i="&debug=1&nocache=1"}var h=/\/intl\/(.*?)\//.exec(document.location);h=h?["&lang=",h[1]].join(""):"";c="http://www.gmodules.com/gadgets/ifr?synd=code&url="+c+h+i+d+"&";function r(N){var P="",I;if(typeof N=="string"){if(N!="")P="&"+b(N)}else for(I in N)P+=["&",I,"=",b(N[I])].join("");return P}if(CODESITE_codeBlogDiv.length){var m=[];d=window._apiGadgetData_||window._homepageGadgetData_;h=d.blogOptions;var z=410,A="100%",H="__MSG_blogs__";i="";if(h){A=h.width||A;z=h.height||
z;H=h.up_gadgetTitle||H;i=h.xtraFeeds||i}if(d.blogFeedUrl&&d.blogFeedUrl.length){if(!d.blogFeedName||d.blogFeedName.length==0)d.blogFeedName="__MSG_blogs__";m.push(b([d.blogFeedName,":",jQuery.trim(d.blogFeedUrl)].join("")))}d.googleCodeBlogIntlFeedUrl&&d.googleCodeBlogIntlFeedUrl.length&&m.push(b(["__MSG_blogs.local__:",jQuery.trim(d.googleCodeBlogIntlFeedUrl)].join("")));d.googleCodeBlogFeedUrl&&d.googleCodeBlogFeedUrl.length&&m.push(b(["__MSG_blogs.googleCode__:",jQuery.trim(d.googleCodeBlogFeedUrl)].join("")));
d.relatedDeveloperBlogsFeedUrl&&d.relatedDeveloperBlogsFeedUrl.length&&m.push(b(["__MSG_blogs.related__:",jQuery.trim(d.relatedDeveloperBlogsFeedUrl)].join("")));if(i.length){i=a(i).split("|");for(d=0;d<i.length;d++)m.push(b(jQuery.trim(i[d])))}if(m.length)jQuery('<iframe frameborder="0">').attr({src:[c,"up_showaddbutton=true&up_random=true&up_defer=true&up_gadgetTitle=",b(H),"&up_feeds=",m.join("|"),r(h||"")].join(""),frameborder:"0",width:A,height:z}).css({border:"none"}).appendTo(CODESITE_codeBlogDiv)}if(CODESITE_featuredDiv.length){var E=
[];d=window._apiGadgetData_||window._homepageGadgetData_;h=d.groupOptions;z=410;A="100%";H="__MSG_groups.community__";i="";if(h){A=h.width||A;z=h.height||z;H=h.up_gadgetTitle||H;i=h.xtraFeeds||i}d.featuredProjectsFeedUrl&&d.featuredProjectsFeedUrl.length&&E.push(b(["featured:__MSG_featured.projects__:",jQuery.trim(d.featuredProjectsFeedUrl)].join("")));if(d.groupFeedUrl&&d.groupFeedUrl.length){if(!d.groupFeedName||d.groupFeedName.length==0)d.groupFeedName="__MSG_groups.community__";E.push(b([d.groupFeedName,
":",jQuery.trim(d.groupFeedUrl)].join("")))}d.featureFeedUrl&&d.featureFeedUrl.length&&E.push(b(["featured:__MSG_featured.projects__:",jQuery.trim(d.featureFeedUrl)].join("")));d.articleFeedUrl&&d.articleFeedUrl.length&&E.push(b(["__MSG_articles__:",jQuery.trim(d.articleFeedUrl)].join("")));d.userGroupsFeedUrl&&d.userGroupsFeedUrl.length&&E.push(b(["__MSG_groups.user__:",jQuery.trim(d.userGroupsFeedUrl)].join("")));if(i.length){i=a(i).split("|");for(d=0;d<i.length;d++)E.push(b(jQuery.trim(i[d])))}if(E.length)jQuery('<iframe frameborder="0">').attr({src:[c,
"up_showaddbutton=true&up_defer=true&up_gadgetTitle=",b(H),"&up_feeds=",E.join("|"),r(h||"")].join(""),frameborder:"0",width:A,height:z}).css({border:"none"}).appendTo(CODESITE_featuredDiv)}}jQuery(function(){try{prettyPrint()}catch(c){}});jQuery(function(){var c=jQuery("#gc-pagecontent"),i=jQuery("#gc-toc");if(c.length){var d=jQuery('<div id="gc-collapsible-arrow">'),h=jQuery('<div id="gc-collapsible">'),r=function(m){var z=c.offset();d.css({left:z.left+"px",top:(m.pageY||m.clientY)+"px"})};c.css("position",
"relative").append(h);jQuery(document.body).append(d);jQuery.browser.msie&&jQuery.browser.version<7&&c.css("left","-5px");c.is(".skip-collapsible")||h.mouseover(function(m){h.addClass("hover");if(i.is(":hidden")){h.css("left","-3px");d.addClass("collapsed")}else d.removeClass("collapsed");d.show();r(m)}).mousemove(function(m){r(m)}).mouseout(function(){h.removeClass("hover");h.css("left","");d.hide()}).click(function(){d.hide();h.removeClass("hover").css("left","");i.toggle();if(i.is(":visible")){c.css("margin-left",
"");jQuery.browser.msie&&jQuery.browser.version<7&&c.css("left","-5px")}else{c.css("margin-left","0px");jQuery.browser.msie&&jQuery.browser.version<7&&c.css("left","")}});h.height(c.height())}});jQuery(window.CODESITE_createVideoAndGadgets=function(){CODESITE_codeBlogDiv=jQuery("#gc-blog-gadget");CODESITE_featuredDiv=jQuery("#gc-community-gadget");CODESITE_codeVideoDiv=jQuery("#gc-codevideo");CODESITE_macRecentChangesDiv=jQuery("#recentchanges");if(CODESITE_codeVideoDiv.length||CODESITE_macRecentChangesDiv.length)if(typeof window.google===
"undefined"||typeof window.google.feeds==="undefined"){var c=document.createElement("script");c.src="http://www.google.com/jsapi?key=internal-codesite&callback=CODESITE_loadFeedAPI";c.type="text/javascript";document.getElementsByTagName("head")[0].appendChild(c)}else CODESITE_loadFeedAPI();if(CODESITE_codeBlogDiv.length||CODESITE_featuredDiv.length)f()});window.CODESITE_getIntlUrl=function(c){var i=["/intl/","/p/","/u/","/hosting/","/support/","/soc/","/codejam/","/apis/youtube/dashboard/"];if(c.indexOf("/")==
0){for(var d in i)if(c.indexOf(i[d])>=0)return c;return CODESITE_langUrl+c}else return c};window.CODESITE_getProduct=function(c){c=c||window.location.href;var i=/https?:\/\/[^\/]*(\/intl\/[^\/]*)?(\/apis)?(\/([a-z0-9]*))?\//;c=i.exec(c);if(!c)return"";return(c=c[4])?c:""};jQuery(window).load(function(){window.setTimeout(function(){jQuery.ajax({type:"GET",url:"http://www.google-analytics.com/ga.js",dataType:"script",success:e,cache:true})},0)});function e(){if(window._gat)try{siteTracker=window._gat._getTracker("UA-18071-1");
siteTracker._trackPageview()}catch(c){}}window.CODESITE_click=function(c){window.setTimeout(function(){if(window.siteTracker)try{siteTracker._trackPageview(c)}catch(i){}},0)}})(jQuery);var CSE={QUERY_REGEX_HASH:/([^\#]*)\#(p=([^&]*)&)?q=(.*)$/,QUERY_REGEX_QUES:/([^\?]*)\?(p=([^&]*)&)?q=(.*)$/,CSE_URL:"http://code.google.com/cse/googlecode-context.xml",searchControl:{},recentQuery:"",showingSearchResults:false,iframeUrlInSync:true,init:function(){CSE.searchControl=new GSearchControl;CSE.searchControl.setResultSetSize(GSearch.LARGE_RESULTSET);CSE.searchControl.setLinkTarget(GSearch.LINK_TARGET_TOP);var b=CSE.getProductParam();if(CODESITE_getSearchTabTitle(b)!=null){CSE.addSearcher(b,
false);CODESITE_getSearchTabTitle(b,true)!=null&&CSE.addSearcher(b,true)}CSE.addSearcher("google_code",false);CSE.addSearcher("discussion",true);CSE.addSearcher("project_hosting",false);b=new GvideoSearch;b.setQueryAddition("ytchannel:GoogleDevelopers");b.setResultSetSize(GSearch.SMALL_RESULTSET);b.setUserDefinedLabel(CODESITE_getSearchTabTitle("developer_videos"));CSE.searchControl.addSearcher(b);b=document.getElementById("searchControl");var a=new GdrawOptions;a.setDrawMode(GSearchControl.DRAW_MODE_TABBED);
CSE.searchControl.draw(b,a);CSE.checkHash(CSE.QUERY_REGEX_HASH,window.location.href)},addSearcher:function(b,a){var f=new GwebSearch;a?f.setSiteRestriction({crefUrl:CSE.CSE_URL},b+"_groups"):f.setSiteRestriction({crefUrl:CSE.CSE_URL},b);f.setUserDefinedLabel(CODESITE_getSearchTabTitle(b,a));CSE.searchControl.addSearcher(f)},checkHash:function(b,a){if(b=b.exec(a)){b=decodeURI(b[4]);if(b!=""&&b!=CSE.recentQuery){jQuery("#gsearchInput").attr("value",b);CSE.executeQuery(b)}}else{if(CSE.showingSearchResults){jQuery("#searchControl").hide();
jQuery("#codesiteContent").show();CSE.recentQuery="";CSE.showingSearchResults=false;window.history.back(-1)}return false}return true},getProductParam:function(){var b=CSE.QUERY_REGEX_HASH.exec(window.location.href),a="";if(b&&b[4]){a=decodeURI(b[3]);if(CODESITE_getSearchTabTitle(a)==null)a=""}return a},executeQuery:function(b){if(b!="")if(CSE.iframeUrlInSync){var a=CSE.getProductParam();CSE.handleAnalytics(b,a);a=a!=""?"p="+encodeURI(a)+"&q="+encodeURI(b):"q="+encodeURI(b);jQuery.browser.msie&&CSE.handleIeHistory(a);
CSE.recentQuery=b;CODESITE_setURL("#"+a);jQuery("#searchControl").show();jQuery("#codesiteContent").hide();CSE.showingSearchResults=true;a=CSE.makeNoResultsHtml(b);CSE.searchControl.setNoResultsString(a);CSE.searchControl.execute(b)}},handleIeHistory:function(b){CSE.iframeUrlInSync=false;window.backiFrame.location.search=b;var a=window.setInterval(f,window.CODESITE_backButton.IFRAME_POLLING_INTERVAL);function f(){if(window.backiFrame.location.search.substring(1)==b){CSE.iframeUrlInSync=true;window.clearInterval(a)}}
},makeNoResultsHtml:function(b){for(var a=[CODESITE_msgs.search.NO_RESULTS_FOUND,"<b>",CSE.escapeHtml(b),"</b><br><br>",CODESITE_msgs.search.SUGGESTIONS_TITLE,":<br><br><ul>"].join(""),f=0,e=CODESITE_msgs.search.SUGGESTIONS_ITEMS.length;f<e;f++)a=[a,"<li>",CODESITE_msgs.search.SUGGESTIONS_ITEMS[f],"</li>"].join("");return[a,'</ul><br><a href="',CODESITE_msgs.search.SEARCH_URL,encodeURI(b),'">',CODESITE_msgs.search.TRY_WEBSEARCH,"</a>."].join("")},handleAnalytics:function(b,a){var f=jQuery("#searchControl").css("display")==
"block"?jQuery("div.gsc-tabhActive").text():"";b="/search/?q="+b+"&product="+a+"&tab="+f;if(window.siteTracker)try{siteTracker._trackPageview(b)}catch(e){}},escapeHtml:function(b){return b.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\'/g,"&#039;").replace(/\"/g,"&quot;")},pollHash:function(){if(jQuery.browser.msie)CSE.iframeUrlInSync&&CSE.checkHash(CSE.QUERY_REGEX_QUES,window.backiFrame.location.href)&&CSE.checkHash(CSE.QUERY_REGEX_HASH,window.location.href);else CSE.checkHash(CSE.QUERY_REGEX_HASH,
window.location.href)}};window.CODESITE_CSE=CSE;window.CODESITE_setURL=function(b){location.href=b};window.executeGSearch=function(b){if(b!="")if(CODESITE_CSE.iframeUrlInSync){var a=CODESITE_getProduct();if(a=="search")CODESITE_CSE.executeQuery(b);else{if(CODESITE_getSearchTabTitle(a)==null)a="";b=a!=""?"p="+encodeURI(a)+"&q="+encodeURI(b):"q="+encodeURI(b);CODESITE_setURL(CODESITE_langUrl+"/search/#"+b)}}};
window.CODESITE_getSearchTabTitle=function(b,a){if(!b)return null;var f=CODESITE_productDictionary.dictionariesList;for(var e in f){var c=CODESITE_productDictionary[f[e]].entries[b];if(c)if(a){if(c.groupsTitle)return c.groupsTitle}else return c.searchTabTitle||c.title}f=CODESITE_productDictionary.dictionariesList;for(e in f)if(c=CODESITE_productDictionary_default[f[e]].entries[b])if(a){if(c.groupsTitle)return c.groupsTitle}else return c.searchTabTitle||c.title;return null};(function(){function b(a,f){this.results_=[];this.buttonEl_=jQuery("#"+f);this.inputFieldEl_=jQuery("#"+a);var e=this;jQuery(this.buttonEl_).focus(function(){e.hideResultsWindow_()});this.searchResultsEl_=jQuery('<div id="cs-searchresults">');this.searchResultsEl_.click(function(c){(event||c).cancelBubble=true});this.searchResultsEl_.appendTo(document.body);jQuery('<div id="cs-recommended">').html(CODESITE_msgs.search.SUGGESTIONS).appendTo(this.searchResultsEl_);a=0;for(f=1;a<this.MAX_RESULTS_;a++,
f++)jQuery('<div id="searchResult'+f+'">').appendTo(this.searchResultsEl_);jQuery(document.body).click(function(c){return e.handleBodyClick_.call(e,c)});jQuery(document).keydown(function(c){return e.handleBodyKeyDown_.call(e,c)}).keypress(function(c){return e.handleBodyKeyPress_.call(e,c)}).keyup(function(c){return e.handleBodyKeyUp_.call(e,c)});jQuery(window).resize(function(c){e.handleBodyResize_.call(e,c)});window.onpageshow=function(c){c.persisted&&e.hideResultsWindow_()};this.inputFieldEl_.keyup(function(c){return e.handleInputKeyUp_.call(e,
c)}).focus(function(c){return e.handleInputFocus_.call(e,c)}).blur(function(c){return e.handleInputBlur_.call(e,c)}).click(function(c){return e.handleInputClick_.call(e,c)}).attr("autocomplete","off");this.initialized_=!!(this.inputFieldEl_.length&&this.searchResultsEl_.length&&this.buttonEl_.length)}b.prototype={results_:null,initialized_:false,searchActive_:true,resultsWindowHidden_:true,inputFieldEl_:0,searchResultsEl_:0,inputFieldHasFocus_:0,activeResult_:0,arrowKeyProcessed_:false,typedQuery_:"",
backgroundHover:"#3366CC",foregroundHover:"#ffffff",backgroundOff:"#ffffff",foregroundOff:"#000000",MAX_RESULTS_:7,FIRST_RESULT_:1,getQueryFromInputField_:function(){return jQuery.trim(this.inputFieldEl_.val().toLowerCase())},querySearch_:function(){if(this.searchActive_)if(this.typedQuery_.length==0)this.hideResultsWindow_();else{this.results_.splice(0,this.results_.length);var a=CODESITE_productDictionary.dictionariesList;for(var f in a){var e=CODESITE_productDictionary[a[f]];if(e.includeInSearchSuggest)for(var c in e.entries){var i=
e.entries[c],d=0,h=new RegExp("(?:\\s|^)"+RegExp.escape(this.typedQuery_)),r=i.title.toLowerCase().match(h);if(r!=null)d=2;for(var m in i.keywords){r=m.match(h);if(r!=null)d+=i.keywords[m];r=this.typedQuery_.split(" ");if(r.length>1)for(c=0;c<r.length;c++){var z=new RegExp("(?:\\s|^)"+r[c]);z=m.match(z);if(z!=null)d+=i.keywords[m]}}d>0&&this.results_.push({match:d,title:i.title,url:CODESITE_getIntlUrl(i.url)})}}this.results_.sort(this.sortMatches_);this.results_.length=Math.min(this.results_.length,
6);this.prepareResultsWindow_()}},sortMatches_:function(a,f){f=f.match;a=a.match;return f<a?-1:f>a?1:0},createSearchResultDiv:function(a){var f=a+1,e=this,c=jQuery("#searchResult"+f);c.attr("class","cs-searchresult").css({display:"block",textAlign:"left",zoom:"1"}).html(['<a tabindex="-1" id="searchResultLink',f,'" href="',this.results_[a].url,'">',this.results_[a].title,"</a>"].join("")).unbind().mouseover(function(){e.deactivateAllResults_();e.activateSearchResult_(f)}).mouseout(function(){e.deactivateSearchResult_(f)}).click(function(){window.location.href=
e.results_[a].url})},prepareResultsWindow_:function(){this.activeResult_=0;if(this.results_.length==0)this.hideResultsWindow_();else{for(var a=0;a<this.results_.length;a++)this.createSearchResultDiv(a);this.deactivateAllResults_();var f=this.results_.length+1;a=jQuery("#searchResult"+f);var e=this;a.attr("class","").css({textAlign:"right",display:"block",zoom:"1"}).html('<a style="color: #0000ff; text-decoration: underline;" id="searchResultLink'+f+'"> '+CODESITE_msgs.search.MORE+" &raquo;</a>").unbind().mouseup(function(){e.hideResultsWindow_();
executeGSearch(e.inputFieldEl_.val())}).mouseover(function(){e.deactivateAllResults_();e.activateSearchResult_(f)}).mouseout(function(){e.deactivateSearchResult_(f)});for(a=f+1;a<=this.MAX_RESULTS_;a++)jQuery("#searchResult"+a).hide();this.resultsWindowHidden_&&this.showResultsWindow_()}},updateDimensions_:function(){if(this.searchActive_){var a=this.inputFieldEl_.offset();a.left+=3;this.searchResultsEl_.css({left:a.left+"px",top:a.top+this.inputFieldEl_[0].offsetHeight+2+"px",width:this.inputFieldEl_.css("width")})}},
showResultsWindow_:function(){if(this.searchActive_){this.searchResultsEl_.css("visibility","hidden");this.updateDimensions_();this.searchResultsEl_.css("display","block");this.searchResultsEl_.css("visibility","visible");this.resultsWindowHidden_=false}},hideResultsWindow_:function(){if(!this.resultsWindowHidden_){this.searchResultsEl_.hide();this.resultsWindowHidden_=true;this.activeResult_=0}},activateSearchResult_:function(a){this.inputFieldEl_[0].blur();var f=jQuery("#searchResult"+a);a=jQuery("#searchResultLink"+
a);f.length&&f.css("backgroundColor",this.backgroundHover);a.length&&a.css("color","white")},deactivateSearchResult_:function(a){var f=jQuery("#searchResult"+a),e=jQuery("#searchResultLink"+a);f&&f.css("background",this.backgroundOff);if(e&&a==this.results_.length+1)e.css("color","#0000ff");else e&&e.css("color",this.foregroundOff)},deactivateAllResults_:function(){for(var a=0,f=this.results_.length+1;a<f;a++)this.deactivateSearchResult_(a+1)},activateNextSearchResult_:function(){if(this.results_.length>
0)if(this.activeResult_<=this.results_.length){this.deactivateSearchResult_(this.activeResult_);this.activeResult_++;this.activateSearchResult_(this.activeResult_)}},activatePrevSearchResult_:function(){if(this.results_.length>0)if(this.activeResult_==this.FIRST_RESULT_){this.deactivateSearchResult_(this.activeResult_);this.activeResult_=0;this.inputFieldEl_[0].focus()}else if(this.activeResult_>this.FIRST_RESULT_){this.deactivateSearchResult_(this.activeResult_);this.activeResult_--;this.activateSearchResult_(this.activeResult_)}},
handleInputKeyUp_:function(a){if(this.initialized_)if(this.searchActive_){a=a||window.event;a=a.which?a.which:a.keyCode;if(a==13){this.hideResultsWindow_();executeGSearch(this.inputFieldEl_.val())}else{a=this.getQueryFromInputField_();if(a!=this.typedQuery_){this.typedQuery_=a;this.querySearch_()}return true}}},handleBodyKeyDown_:function(a){var f=true,e=false;if(this.initialized_){a=a||window.event;var c=a.which?a.which:a.keyCode;a=a.target?a.target:a.srcElement;for(var i=jQuery("#searchResultLink"+
this.activeResult_),d=[this.inputFieldEl_[0],document.documentElement,document.body],h=0;h<d.length;h++)if(a==d[h])e=true;if(!e)return true;switch(c){case 13:if(this.activeResult_>=0){if(this.activeResult_==this.results_.length+1){this.hideResultsWindow_();executeGSearch(this.inputFieldEl_.val())}else if(i.length)location.href=i.attr("href");f=false}break;case 27:if(this.searchActive_){this.resultsWindowHidden_?this.inputFieldEl_.val(""):this.hideResultsWindow_();f=false}else{this.searchActive_=true;
this.inputFieldEl_[0].focus();f=true}break;case 40:case 63233:if(this.resultsWindowHidden_&&this.inputFieldHasFocus_&&c!=39){this.searchActive_=true;this.querySearch_();f=false}else if(!this.resultsWindowHidden_&&(this.activeResult_>0||c!=39)){this.deactivateAllResults_();this.activateNextSearchResult_();f=false;this.arrowKeyProcessed_=true}break;case 38:case 63235:if(!this.resultsWindowHidden_){this.deactivateAllResults_();this.activatePrevSearchResult_();f=false;this.arrowKeyProcessed_=true}break;
case 37:case 39:if(!this.inputFieldHasFocus_&&!this.resultsWindowHidden_){this.arrowKeyProcessed_=false;this.inputFieldEl_[0].focus()}}}return f},handleBodyKeyPress_:function(a){if(this.initialized_){a=a||window.event;a=a.which?a.which:a.keyCode;if(this.arrowKeyProcessed_&&a>=37&&a<=40)return false;return true}},handleBodyKeyUp_:function(a){var f=true;a=a||window.event;this.arrowKeyProcessed_=false;return f},handleBodyResize_:function(){this.updateDimensions_();return true},handleInputBlur_:function(){this.inputFieldHasFocus_=
0},handleInputFocus_:function(){this.inputFieldHasFocus_=0.5;this.initialized_&&this.deactivateAllResults_()},handleInputClick_:function(a){a=a||window.event;this.searchActive_=a.cancelBubble=true;if(this.inputFieldHasFocus_==1)this.resultsWindowHidden_&&this.querySearch_();else this.inputFieldHasFocus_=1},handleBodyClick_:function(a){a=a||window.event;(a=a.target?a.target:a.srcElement)&&a.parentNode&&this.hideResultsWindow_()}};window.CODESITE_asYouTypeSearch=b;jQuery(function(){try{new b("gsearchInput",
"gsearchButton")}catch(a){}})})(jQuery);(function(){var b={POLLING_INTERVAL:450,IFRAME_POLLING_INTERVAL:50,init:function(){var a=window.location.href.match(/\/search\//);if(jQuery.browser.msie||jQuery.browser.mozilla||navigator.userAgent.indexOf("Chrome")!=-1||jQuery.browser.safari&&navigator.userAgent.indexOf("Version/")!=-1)b.poll(a)},poll:function(a){a&&window.setInterval(function(){a&&window.CODESITE_CSE.pollHash()},b.POLLING_INTERVAL)}};window.CODESITE_backButton=b})(jQuery);jQuery(document).ready(function(){window.CODESITE_backButton.init()});(function(){var b=true,a=null,f=false;window.PR_SHOULD_USE_CONTINUATION=b;window.PR_TAB_WIDTH=8;window.PR_normalizedHtml=window.PR=window.prettyPrintOne=window.prettyPrint=void 0;window._pr_isIE6=function(){var X=navigator&&navigator.userAgent&&/\bMSIE 6\./.test(navigator.userAgent);window._pr_isIE6=function(){return X};return X};var e="!",c="!=",i="!==",d="#",h="%",r="%=",m="&",z="&&",A="&&=",H="&=",E="(",N="*",P="*=",I="+=",O=",",ia="-=",ab="->",sa="/",bb="/=",cb=":",db="::",ta=";",Y="<",eb="<<",
fb="<<=",gb="<=",hb="=",ib="==",jb="===",Z=">",kb=">=",lb=">>",mb=">>=",nb=">>>",ob=">>>=",pb="?",ua="@",V="[",S="^",qb="^=",rb="^^",sb="^^=",tb="{",aa="|",ub="|=",vb="||",wb="||=",xb="~",yb="break",zb="case",Ab="continue",Bb="delete",Cb="do",Db="else",Eb="finally",Fb="instanceof",Gb="return",Hb="throw",Ib="try",Jb="typeof",Kb="(?:^^|[+-]",Lb="\\$1",Mb=")\\s*",va="&amp;",wa="&lt;",xa="&gt;",Nb="&quot;",Ob="&#",ya="x",Pb="'",za='"',Aa=" ",Qb="XMP",Rb="</",Sb='="',K="",Q="\\",Tb="b",Ub="t",Vb="n",Wb=
"v",Xb="f",Yb="r",Zb="u",$b="0",ac="1",bc="2",cc="3",dc="4",ec="5",fc="6",gc="7",hc="\\x0",ic="\\x",ja="-",ka="]",jc="\\\\u[0-9A-Fa-f]{4}|\\\\x[0-9A-Fa-f]{2}|\\\\[0-3][0-7]{0,2}|\\\\[0-7]{1,2}|\\\\[\\s\\S]|-|[^-\\\\]",ba="g",kc="\\B",lc="\\b",mc="\\D",nc="\\d",oc="\\S",pc="\\s",qc="\\W",rc="\\w",sc="(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)",Ba="(?:",tc=")",uc="gi",la="PRE",vc='<!DOCTYPE foo PUBLIC "foo bar">\n<foo />',
wc="\t",Ca="\n",xc="[^<]+|<!--[\\s\\S]*?--\>|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>|</?[a-zA-Z][^>]*>|<",Da="nocode",yc=' $1="$2$3$4"',R="pln",zc="string",ca="lang-",Ea="src",W="str",Ac="'\"",Bc="'\"`",Fa="\"'",T="com",Cc="lang-regex",Dc="(/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/)",Ga="kwd",Ec="^(?:",Fc=")\\b",Gc=" \r\n\t\u00a0",ma="lit",Ha="typ",Hc="0123456789",da="pun",Ic="break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try alignof align_union asm axiom bool concept concept_map const_cast constexpr decltype dynamic_cast explicit export friend inline late_check mutable namespace nullptr reinterpret_cast static_assert static_cast template typeid typename typeof using virtual wchar_t where break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try boolean byte extends final finally implements import instanceof null native package strictfp super synchronized throws transient as base by checked decimal delegate descending event fixed foreach from group implicit in interface internal into is lock object out override orderby params partial readonly ref sbyte sealed stackalloc string select uint ulong unchecked unsafe ushort var break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try debugger eval export function get null set undefined var with Infinity NaN caller delete die do dump elsif eval exit foreach for goto if import last local my next no our print package redo require sub undef unless until use wantarray while BEGIN END break continue do else for if return while and as assert class def del elif except exec finally from global import in is lambda nonlocal not or pass print raise try with yield False True None break continue do else for if return while alias and begin case class def defined elsif end ensure false in module next nil not or redo rescue retry self super then true undef unless until when yield BEGIN END break continue do else for if return while case done elif esac eval fi function in local set then until ",
na="</span>",Jc='<span class="',Kc='">',Lc="$1&nbsp;",Mc="&nbsp;<br />",Nc="<br />",Ia="console",Oc="cannot override language handler %s",Ja="default-markup",Ka="default-code",La="dec",ea="lang-js",fa="lang-css",Pc="lang-in.tag",Qc="htm",Rc="html",Sc="mxml",Tc="xhtml",Uc="xml",Vc="xsl",Wc=" \t\r\n",oa="atv",Ma="tag",Na="atn",Xc="lang-uq.val",Yc="in.tag",Zc="uq.val",$c="break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try alignof align_union asm axiom bool concept concept_map const_cast constexpr decltype dynamic_cast explicit export friend inline late_check mutable namespace nullptr reinterpret_cast static_assert static_cast template typeid typename typeof using virtual wchar_t where ",
ad="c",bd="cc",cd="cpp",dd="cxx",ed="cyc",fd="m",gd="null true false",hd="json",id="break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try boolean byte extends final finally implements import instanceof null native package strictfp super synchronized throws transient as base by checked decimal delegate descending event fixed foreach from group implicit in interface internal into is lock object out override orderby params partial readonly ref sbyte sealed stackalloc string select uint ulong unchecked unsafe ushort var ",
jd="cs",kd="break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try boolean byte extends final finally implements import instanceof null native package strictfp super synchronized throws transient ",ld="java",md="break continue do else for if return while case done elif esac eval fi function in local set then until ",
nd="bsh",od="csh",pd="sh",qd="break continue do else for if return while and as assert class def del elif except exec finally from global import in is lambda nonlocal not or pass print raise try with yield False True None ",rd="cv",sd="py",td="caller delete die do dump elsif eval exit foreach for goto if import last local my next no our print package redo require sub undef unless until use wantarray while BEGIN END ",ud="perl",vd="pl",wd="pm",xd="break continue do else for if return while alias and begin case class def defined elsif end ensure false in module next nil not or redo rescue retry self super then true undef unless until when yield BEGIN END ",
yd="rb",zd="break continue do else for if return while auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try debugger eval export function get null set undefined var with Infinity NaN ",Ad="js",Bd="regex",Oa="pre",Pa="code",Qa="xmp",Ra="prettyprint",Cd="class",Dd="br",Ed="\r";(function(){var X=function(){for(var g=
[e,c,i,d,h,r,m,z,A,H,E,N,P,I,O,ia,ab,sa,bb,cb,db,ta,Y,eb,fb,gb,hb,ib,jb,Z,kb,lb,mb,nb,ob,pb,ua,V,S,qb,rb,sb,tb,aa,ub,vb,wb,xb,yb,zb,Ab,Bb,Cb,Db,Eb,Fb,Gb,Hb,Ib,Jb],j=Kb,o=0;o<g.length;++o)j+=aa+g[o].replace(/([^=<>:&a-z])/g,Lb);j+=Mb;return j}(),Sa=/&/g,Ta=/</g,Ua=/>/g,Fd=/\"/g;function Gd(g){return g.replace(Sa,va).replace(Ta,wa).replace(Ua,xa).replace(Fd,Nb)}function pa(g){return g.replace(Sa,va).replace(Ta,wa).replace(Ua,xa)}var Hd=/&lt;/g,Id=/&gt;/g,Jd=/&apos;/g,Kd=/&quot;/g,Ld=/&amp;/g,Md=/&nbsp;/g;
function Nd(g){var j=g.indexOf(m);if(j<0)return g;for(--j;(j=g.indexOf(Ob,j+1))>=0;){var o=g.indexOf(ta,j);if(o>=0){var k=g.substring(j+3,o),t=10;if(k&&k.charAt(0)===ya){k=k.substring(1);t=16}k=parseInt(k,t);isNaN(k)||(g=g.substring(0,j)+String.fromCharCode(k)+g.substring(o+1))}}return g.replace(Hd,Y).replace(Id,Z).replace(Jd,Pb).replace(Kd,za).replace(Ld,m).replace(Md,Aa)}function Va(g){return Qb===g.tagName}function ga(g,j){switch(g.nodeType){case 1:var o=g.tagName.toLowerCase();j.push(Y,o);for(var k=
0;k<g.attributes.length;++k){var t=g.attributes[k];if(t.specified){j.push(Aa);ga(t,j)}}j.push(Z);for(k=g.firstChild;k;k=k.nextSibling)ga(k,j);if(g.firstChild||!/^(?:br|link|img)$/.test(o))j.push(Rb,o,Z);break;case 2:j.push(g.name.toLowerCase(),Sb,Gd(g.value),za);break;case 3:case 4:j.push(pa(g.nodeValue));break}}function Wa(g){for(var j=0,o=f,k=f,t=0,y=g.length;t<y;++t){var x=g[t];if(x.ignoreCase)k=b;else if(/[a-z]/i.test(x.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,K))){o=b;k=f;break}}function v(n){if(n.charAt(0)!==
Q)return n.charCodeAt(0);switch(n.charAt(1)){case Tb:return 8;case Ub:return 9;case Vb:return 10;case Wb:return 11;case Xb:return 12;case Yb:return 13;case Zb:case ya:return parseInt(n.substring(2),16)||n.charCodeAt(1);case $b:case ac:case bc:case cc:case dc:case ec:case fc:case gc:return parseInt(n.substring(1),8);default:return n.charCodeAt(1)}}function C(n){if(n<32)return(n<16?hc:ic)+n.toString(16);n=String.fromCharCode(n);if(n===Q||n===ja||n===V||n===ka)n=Q+n;return n}function B(n){var q=n.substring(1,
n.length-1).match(new RegExp(jc,ba));n=[];for(var s=[],w=q[0]===S,p=w?1:0,l=q.length;p<l;++p){var u=q[p];switch(u){case kc:case lc:case mc:case nc:case oc:case pc:case qc:case rc:n.push(u);continue}u=v(u);var D;if(p+2<l&&ja===q[p+1]){D=v(q[p+2]);p+=2}else D=u;s.push([u,D]);if(!(D<65||u>122)){D<65||u>90||s.push([Math.max(65,u)|32,Math.min(D,90)|32]);D<97||u>122||s.push([Math.max(97,u)&-33,Math.min(D,122)&-33])}}s.sort(function(L,Xa){return L[0]-Xa[0]||Xa[1]-L[1]});q=[];u=[NaN,NaN];for(p=0;p<s.length;++p){l=
s[p];if(l[0]<=u[1]+1)u[1]=Math.max(u[1],l[1]);else q.push(u=l)}s=[V];w&&s.push(S);s.push.apply(s,n);for(p=0;p<q.length;++p){l=q[p];s.push(C(l[0]));if(l[1]>l[0]){l[1]+1>l[0]&&s.push(ja);s.push(C(l[1]))}}s.push(ka);return s.join(K)}function G(n){var q=n.source.match(new RegExp(sc,ba)),s=q.length,w=[],p,l=0;for(p=0;l<s;++l){var u=q[l];if(u===E)++p;else if(Q===u.charAt(0)){var D=+u.substring(1);if(D&&D<=p)w[D]=-1}}for(l=1;l<w.length;++l)if(-1===w[l])w[l]=++j;for(p=l=0;l<s;++l){u=q[l];if(u===E){++p;if(w[p]===
undefined)q[l]=Ba}else if(Q===u.charAt(0))if((D=+u.substring(1))&&D<=p)q[l]=Q+w[p]}for(p=l=0;l<s;++l)if(S===q[l]&&S!==q[l+1])q[l]=K;if(n.ignoreCase&&o)for(l=0;l<s;++l){u=q[l];n=u.charAt(0);if(u.length>=2&&n===V)q[l]=B(u);else if(n!==Q)q[l]=u.replace(/[a-zA-Z]/g,function(L){L=L.charCodeAt(0);return V+String.fromCharCode(L&-33,L|32)+ka})}return q.join(K)}var F=[];t=0;for(y=g.length;t<y;++t){x=g[t];if(x.global||x.multiline)throw new Error(K+x);F.push(Ba+G(x)+tc)}return new RegExp(F.join(aa),k?uc:ba)}
var qa=a;function Od(g){if(a===qa){var j=document.createElement(la);j.appendChild(document.createTextNode(vc));qa=!/</.test(j.innerHTML)}if(qa){j=g.innerHTML;if(Va(g))j=pa(j);return j}j=[];for(g=g.firstChild;g;g=g.nextSibling)ga(g,j);return j.join(K)}function Pd(g){var j=0;return function(o){for(var k=a,t=0,y=0,x=o.length;y<x;++y){var v=o.charAt(y);switch(v){case wc:k||(k=[]);k.push(o.substring(t,y));t=g-j%g;for(j+=t;t>=0;t-=16)k.push("                ".substring(0,t));t=y+1;break;case Ca:j=0;break;
default:++j}}if(!k)return o;k.push(o.substring(t));return k.join(K)}}var Qd=new RegExp(xc,ba),Rd=/^<\!--/,Sd=/^<\[CDATA\[/,Td=/^<br\b/i,Ya=/^<(\/?)([a-zA-Z]+)/;function Ud(g){var j=g.match(Qd),o=[],k=0,t=[];if(j)for(var y=0,x=j.length;y<x;++y){var v=j[y];if(v.length>1&&v.charAt(0)===Y){if(!Rd.test(v))if(Sd.test(v)){o.push(v.substring(9,v.length-3));k+=v.length-12}else if(Td.test(v)){o.push(Ca);++k}else if(v.indexOf(Da)>=0&&Vd(v)){var C=v.match(Ya)[2],B=1,G;G=y+1;a:for(;G<x;++G){var F=j[G].match(Ya);
if(F&&F[2]===C)if(F[1]===sa){if(--B===0)break a}else++B}if(G<x){t.push(k,j.slice(y,G+1).join(K));y=G}else t.push(k,v)}else t.push(k,v)}else{v=Nd(v);o.push(v);k+=v.length}}return{source:o.join(K),tags:t}}function Vd(g){return!!g.replace(/\s(\w+)\s*=\s*(?:\"([^\"]*)\"|'([^\']*)'|(\S+))/g,yc).match(/[cC][lL][aA][sS][sS]=\"[^\"]*\bnocode\b/)}function ra(g,j,o,k){if(j){g={source:j,b:g};o(g);k.push.apply(k,g.c)}}function U(g,j){var o={},k;(function(){for(var x=g.concat(j),v=[],C={},B=0,G=x.length;B<G;++B){var F=
x[B],n=F[3];if(n)for(var q=n.length;--q>=0;)o[n.charAt(q)]=F;F=F[1];n=K+F;if(!C.hasOwnProperty(n)){v.push(F);C[n]=a}}v.push(/[\0-\uffff]/);k=Wa(v)})();var t=j.length,y=function(x){var v=x.source,C=x.b,B=[C,R],G=0;v=v.match(k)||[];for(var F={},n=0,q=v.length;n<q;++n){var s=v[n],w=F[s],p,l;if(typeof w===zc)l=f;else{var u=o[s.charAt(0)];if(u){p=s.match(u[1]);w=u[0]}else{for(l=0;l<t;++l){u=j[l];if(p=s.match(u[1])){w=u[0];break}}p||(w=R)}if((l=w.length>=5&&ca===w.substring(0,5))&&!(p&&p[1])){l=f;w=Ea}l||
(F[s]=w)}u=G;G+=s.length;if(l){l=p[1];var D=s.indexOf(l),L=D+l.length;w=w.substring(5);ra(C+u,s.substring(0,D),y,B);ra(C+u+D,l,Za(w,l),B);ra(C+u+L,s.substring(L),y,B)}else B.push(C+u,w)}x.c=B};return y}function M(g){var j=[],o=[];if(g.tripleQuotedStrings)j.push([W,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,a,Ac]);else g.multiLineStrings?j.push([W,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,
a,Bc]):j.push([W,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,a,Fa]);if(g.hashComments)g.cStyleComments?j.push([T,/^#(?:[^\r\n\/]|\/(?!\*)|\/\*[^\r\n]*?\*\/)*/,a,d]):j.push([T,/^#[^\r\n]*/,a,d]);if(g.cStyleComments){o.push([T,/^\/\/[^\r\n]*/,a]);o.push([T,/^\/\*[\s\S]*?(?:\*\/|$)/,a])}g.regexLiterals&&o.push([Cc,new RegExp(S+X+Dc)]);g=g.keywords.replace(/^\s+|\s+$/g,K);g.length&&o.push([Ga,new RegExp(Ec+g.replace(/\s+/g,aa)+Fc),a]);j.push([R,/^\s+/,a,Gc]);o.push([ma,/^@[a-z_$][a-z_$@0-9]*/i,
a,ua],[Ha,/^@?[A-Z]+[a-z][A-Za-z_$@0-9]*/,a],[R,/^[a-z_$][a-z_$@0-9]*/i,a],[ma,/^(?:0x[a-f0-9]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+\-]?\d+)?)[a-z]*/i,a,Hc],[da,/^.[^\s\w\.$@\'\"\`\/\#]*/,a]);return U(j,o)}var Wd=M({keywords:Ic,hashComments:b,cStyleComments:b,multiLineStrings:b,regexLiterals:b});function Xd(g){var j=g.source,o=g.f,k=g.c,t=[],y=0,x=a,v=a,C=0,B=0,G=Pd(window.PR_TAB_WIDTH),F=/([\r\n ]) /g,n=/(^| ) /gm,q=/\r\n?|\n/g,s=/[ \r\n]$/,w=b;function p(u){if(u>y){if(x&&x!==v){t.push(na);
x=a}if(!x&&v){x=v;t.push(Jc,x,Kc)}var D=pa(G(j.substring(y,u))).replace(w?n:F,Lc);w=s.test(D);var L=window._pr_isIE6()?Mc:Nc;t.push(D.replace(q,L));y=u}}for(;1;){var l;if(l=C<o.length?B<k.length?o[C]<=k[B]:b:f){p(o[C]);if(x){t.push(na);x=a}t.push(o[C+1]);C+=2}else if(B<k.length){p(k[B]);v=k[B+1];B+=2}else break}p(j.length);x&&t.push(na);g.a=t.join(K)}var ha={};function J(g,j){for(var o=j.length;--o>=0;){var k=j[o];if(ha.hasOwnProperty(k))Ia in window&&console.i(Oc,k);else ha[k]=g}}function Za(g,j){g&&
ha.hasOwnProperty(g)||(g=/^\s*</.test(j)?Ja:Ka);return ha[g]}J(Wd,[Ka]);J(U([],[[R,/^[^<?]+/],[La,/^<!\w[^>]*(?:>|$)/],[T,/^<\!--[\s\S]*?(?:-\->|$)/],[ca,/^<\?([\s\S]+?)(?:\?>|$)/],[ca,/^<%([\s\S]+?)(?:%>|$)/],[da,/^(?:<[%?]|[%?]>)/],[ca,/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],[ea,/^<script\b[^>]*>([\s\S]+?)<\/script\b[^>]*>/i],[fa,/^<style\b[^>]*>([\s\S]+?)<\/style\b[^>]*>/i],[Pc,/^(<\/?[a-z][^<>]*>)/i]]),[Ja,Qc,Rc,Sc,Tc,Uc,Vc]);J(U([[R,/^[\s]+/,a,Wc],[oa,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,a,Fa]],
[[Ma,/^^<\/?[a-z](?:[\w:-]*\w)?|\/?>$/],[Na,/^(?!style\b|on)[a-z](?:[\w:-]*\w)?/],[Xc,/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[da,/^[=<>\/]+/],[ea,/^on\w+\s*=\s*\"([^\"]+)\"/i],[ea,/^on\w+\s*=\s*\'([^\']+)\'/i],[ea,/^on\w+\s*=\s*([^\"\'>\s]+)/i],[fa,/^sty\w+\s*=\s*\"([^\"]+)\"/i],[fa,/^sty\w+\s*=\s*\'([^\']+)\'/i],[fa,/^sty\w+\s*=\s*([^\"\'>\s]+)/i]]),[Yc]);J(U([],[[oa,/^[\s\S]+/]]),[Zc]);J(M({keywords:$c,hashComments:b,cStyleComments:b}),[ad,bd,cd,dd,ed,fd]);J(M({keywords:gd}),[hd]);J(M({keywords:id,
hashComments:b,cStyleComments:b}),[jd]);J(M({keywords:kd,cStyleComments:b}),[ld]);J(M({keywords:md,hashComments:b,multiLineStrings:b}),[nd,od,pd]);J(M({keywords:qd,hashComments:b,multiLineStrings:b,tripleQuotedStrings:b}),[rd,sd]);J(M({keywords:td,hashComments:b,multiLineStrings:b,regexLiterals:b}),[ud,vd,wd]);J(M({keywords:xd,hashComments:b,multiLineStrings:b,regexLiterals:b}),[yd]);J(M({keywords:zd,cStyleComments:b,regexLiterals:b}),[Ad]);J(U([],[[W,/^[\s\S]+/]]),[Bd]);function $a(g){var j=g.e,
o=g.d;g.a=j;try{var k=Ud(j),t=k.source;g.source=t;g.b=0;g.f=k.tags;Za(o,t)(g);Xd(g)}catch(y){if(Ia in window){console.log(y);console.h()}}}function Yd(g,j){g={e:g,d:j};$a(g);return g.a}function Zd(g){for(var j=window._pr_isIE6(),o=[document.getElementsByTagName(Oa),document.getElementsByTagName(Pa),document.getElementsByTagName(Qa)],k=[],t=0;t<o.length;++t)for(var y=0,x=o[t].length;y<x;++y)k.push(o[t][y]);o=a;var v=Date;v.now||(v={now:function(){return(new Date).getTime()}});var C=0,B;function G(){for(var n=
window.PR_SHOULD_USE_CONTINUATION?v.now()+250:Infinity;C<k.length&&v.now()<n;C++){var q=k[C];if(q.className&&q.className.indexOf(Ra)>=0){var s=q.className.match(/\blang-(\w+)\b/);if(s)s=s[1];for(var w=f,p=q.parentNode;p;p=p.parentNode)if((p.tagName===Oa||p.tagName===Pa||p.tagName===Qa)&&p.className&&p.className.indexOf(Ra)>=0){w=b;break}if(!w){w=Od(q);w=w.replace(/(?:\r\n?|\n)$/,K);B={e:w,d:s,g:q};$a(B);F()}}}if(C<k.length)setTimeout(G,250);else g&&g()}function F(){var n=B.a;if(n){var q=B.g;if(Va(q)){for(var s=
document.createElement(la),w=0;w<q.attributes.length;++w){var p=q.attributes[w];if(p.specified){var l=p.name.toLowerCase();if(l===Cd)s.className=p.value;else s.setAttribute(p.name,p.value)}}s.innerHTML=n;q.parentNode.replaceChild(s,q);q=s}else q.innerHTML=n;if(j&&q.tagName===la){n=q.getElementsByTagName(Dd);for(q=n.length;--q>=0;){s=n[q];s.parentNode.replaceChild(document.createTextNode(Ed),s)}}}}G()}window.PR_normalizedHtml=ga;window.prettyPrintOne=Yd;window.prettyPrint=Zd;window.PR={combinePrefixPatterns:Wa,
createSimpleLexer:U,registerLangHandler:J,sourceDecorator:M,PR_ATTRIB_NAME:Na,PR_ATTRIB_VALUE:oa,PR_COMMENT:T,PR_DECLARATION:La,PR_KEYWORD:Ga,PR_LITERAL:ma,PR_NOCODE:Da,PR_PLAIN:R,PR_PUNCTUATION:da,PR_SOURCE:Ea,PR_STRING:W,PR_TAG:Ma,PR_TYPE:Ha}})()})();(function(){function b(a){this.parentElem=a.parent;this.controlsElem=a.controls;this.contentElem=a.content;if(!(!this.parentElem||!this.controlsElem||!this.contentElem)){b.active[this.index=b.active.length]=this;var f=this;this.toggleElem=jQuery('<img src="images/cleardot.gif">').addClass("collapsible-control").mouseover(function(){var e=jQuery(this);e.addClass("collapsible-hover")}).mouseout(function(){var e=jQuery(this);e.removeClass("collapsible-hover")});this.controlsElem.mousedown(function(){var e=
jQuery(f.toggleElem),c=jQuery(f.contentElem);if(c.is(":visible")){e.addClass("collapsible-plus").removeClass("collapsible-minus");c.hide()}else{e.addClass("collapsible-minus").removeClass("collapsible-plus");c.show()}});if(this.parentElem.is(".closed"))a.opened=false;if(this.parentElem.is(".opened"))a.opened=true;if(a.opened===true)this.toggleElem.addClass("collapsible-minus");else{this.toggleElem.addClass("collapsible-plus");this.contentElem.hide()}this.controlsElem.prepend(this.toggleElem);this.parentElem.addClass("collapsible-done")}}
b.prototype={index:-1,parentElem:null,controlsElem:null,contentElem:null,toggleElem:null};jQuery.extend(b,{active:[],convert:function(){for(var a=jQuery(".collapsible"),f=0;f<a.length;f++)if(a[f].className.indexOf("collapsible-done")==-1){var e=jQuery(".collapsible-controls",a[f]),c=jQuery(".collapsible-content",a[f]);e.length&&c.length&&new b({parent:jQuery(a[f]),controls:e,content:c})}}});window.CODESITE_collapsible=b;jQuery(function(){CODESITE_collapsible.convert()})})();(function(){var b=function(h,r,m){this.numCompleteTranslations=0;this.contentContainers=h;this.originalText=[];this.translatedText=[];this.srcLang=r;this.destLang=m;for(h=0;h<this.contentContainers.length;h++)this.originalText.push(this.contentContainers[h].innerHTML)};b.prototype.translationComplete=function(h,r,m,z){if(m==200&&!z){for(m=0;m<r.length;m++)if(r[m].responseStatus!=200){r.slice(m);m--}this.translatedText[h]=r;this.numCompleteTranslations++;if(this.numCompleteTranslations==this.numTranslations){h=
[];for(m=0;m<this.translatedText.length;m++)h=h.concat(this.translatedText[m]);this.translatedText=h;for(m=0;m<this.translatedText.length;m++)if(this.translatedText[m].responseStatus==200)this.contentContainers[m].innerHTML=this.translatedText[m].responseData.translatedText}}};b.prototype.createScriptURLs=function(){var h=this.contentContainers,r=this.srcLang,m=this.destLang,z=[];r="http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&callback=CODESITE_newsBlogTH.translationComplete&langpair="+
r+"%7C"+m;m=0;for(var A=r+"&context="+m,H=0;H<h.length;H++){var E=encodeURIComponent(h[H].innerHTML);if(E)if((A+E).length<1800)A+="&q="+E;else{z.push(A);m++;A=r+"&context="+m;if((A+E).length<1800)A+="&q="+E}}z.push(A);return z};b.prototype.translate=function(){if(this.translatedText.length>0)for(var h=0;h<this.translatedText.length;h++){if(this.translatedText[h].responseStatus==200)this.contentContainers[h].innerHTML=this.translatedText[h].responseData.translatedText}else{var r=this.createScriptURLs();
this.numTranslations=r.length;for(h=0;h<r.length;h++)jQuery.ajax({type:"GET",url:r[h],dataType:"script"})}};b.prototype.revert=function(){for(var h=0;h<this.contentContainers.length;h++)jQuery(this.contentContainers[h]).text(this.originalText[h])};function a(){window.CODESITE_newsBlogTH.translate();jQuery("#gc-translate-direction").html("&nbsp;&larr;");jQuery(this).unbind();jQuery(this).click(f)}function f(){window.CODESITE_newsBlogTH.revert();jQuery("#gc-translate-direction").html("&nbsp;&rarr;");
jQuery(this).unbind();jQuery(this).click(a)}function e(h){switch(h){case "pt-BR":return"pt-PT";default:return h}}var c=document.getElementById("news")||null;if(c&&CODESITE_langLoc&&typeof window.CODESITE_langCode[CODESITE_langLoc]!=="undefined"){c=c.getElementsByTagName("p");for(var i=[],d=0;d<c.length;d++)c[d].className.indexOf("blog-entry-summary")!=-1&&i.push(c[d]);window.CODESITE_newsBlogTH=new b(i,"",e(CODESITE_langLoc));b=jQuery("#gc-translate-blogs");b.text(window.CODESITE_langCode[CODESITE_langLoc]);
b.click(a)}})(jQuery);(function(b){function a(){var f=window.location.pathname.replace(/\/index[.]html$/,"/");return"http://"+window.location.hostname+f}window.CODESITE_displayComments=function(){var f=b('<h2 id="commentWidgetTitle">User Notes</h2>'+CODESITE_zipItDesc+'<div id="commentwidget"></div>');b("#gc-pagecontent").append(f);f=a();google.annotations.create("CommentThread","commentwidget",{entity:{url:f},inline:true,collapsiblePoster:true,commentTemplate:'<div class="commentHeader"><z:Nickname/> - <z:DateTime/> <z:NumUsersFoundThisHelpful/></div><div class="commentContent"><z:CommentDisplay/></div><div class="commentHelpful">Was this note helpful? <z:VotingEditor/></div><div class="commentSpam"><z:ReportSpamLink/></div>'});
google.annotations.fetch()};window.CODESITE_initComments=function(f,e,c){f=f||"http://www.google.com";e=e||window.location;var i=c||b.getScript;if(e.pathname.indexOf("/intl/")==-1){c="&callback=CODESITE_displayComments&appid=92";if(e.hostname!="code.google.com")c+="&dev=1";var d=f+"/reviews/scripts/annotations_bootstrap.js?"+c;b(function(){i(d)})}}})(jQuery);
