diff --git a/godoc/static/gen.go b/godoc/static/gen.go index bfbc5bdde65..7991c8208da 100644 --- a/godoc/static/gen.go +++ b/godoc/static/gen.go @@ -38,6 +38,7 @@ var files = []string{ "favicon.ico", "godoc.html", "godocs.js", + "gopher/pkg.png", "images/minus.gif", "images/plus.gif", "images/treeview-black-line.gif", diff --git a/godoc/static/gopher/pkg.png b/godoc/static/gopher/pkg.png new file mode 100644 index 00000000000..ac96551b556 Binary files /dev/null and b/godoc/static/gopher/pkg.png differ diff --git a/godoc/static/packageroot.html b/godoc/static/packageroot.html index 6af463be579..98f570bec2f 100644 --- a/godoc/static/packageroot.html +++ b/godoc/static/packageroot.html @@ -21,6 +21,7 @@

Subdirectories

{{end}}
+
Standard library
{{if hasThirdParty .List }} @@ -38,7 +39,6 @@

Standard

Standard library ▾

-
diff --git a/godoc/static/static.go b/godoc/static/static.go index 35aece47c87..ada60fab6c2 100644 --- a/godoc/static/static.go +++ b/godoc/static/static.go @@ -53,6 +53,8 @@ var Files = map[string]string{ "godocs.js": "//\x20Copyright\x202012\x20The\x20Go\x20Authors.\x20All\x20rights\x20reserved.\x0a//\x20Use\x20of\x20this\x20source\x20code\x20is\x20governed\x20by\x20a\x20BSD-style\x0a//\x20license\x20that\x20can\x20be\x20found\x20in\x20the\x20LICENSE\x20file.\x0a\x0a/*\x20A\x20little\x20code\x20to\x20ease\x20navigation\x20of\x20these\x20documents.\x0a\x20*\x0a\x20*\x20On\x20window\x20load\x20we:\x0a\x20*\x20\x20+\x20Generate\x20a\x20table\x20of\x20contents\x20(generateTOC)\x0a\x20*\x20\x20+\x20Bind\x20foldable\x20sections\x20(bindToggles)\x0a\x20*\x20\x20+\x20Bind\x20links\x20to\x20foldable\x20sections\x20(bindToggleLinks)\x0a\x20*/\x0a\x0a(function()\x20{\x0a\x20\x20'use\x20strict';\x0a\x0a\x20\x20//\x20Mobile-friendly\x20topbar\x20menu\x0a\x20\x20$(function()\x20{\x0a\x20\x20\x20\x20var\x20menu\x20=\x20$('#menu');\x0a\x20\x20\x20\x20var\x20menuButton\x20=\x20$('#menu-button');\x0a\x20\x20\x20\x20var\x20menuButtonArrow\x20=\x20$('#menu-button-arrow');\x0a\x20\x20\x20\x20menuButton.click(function(event)\x20{\x0a\x20\x20\x20\x20\x20\x20menu.toggleClass('menu-visible');\x0a\x20\x20\x20\x20\x20\x20menuButtonArrow.toggleClass('vertical-flip');\x0a\x20\x20\x20\x20\x20\x20event.preventDefault();\x0a\x20\x20\x20\x20\x20\x20return\x20false;\x0a\x20\x20\x20\x20});\x0a\x20\x20});\x0a\x0a\x20\x20/*\x20Generates\x20a\x20table\x20of\x20contents:\x20looks\x20for\x20h2\x20and\x20h3\x20elements\x20and\x20generates\x0a\x20\x20\x20*\x20links.\x20\"Decorates\"\x20the\x20element\x20with\x20id==\"nav\"\x20with\x20this\x20table\x20of\x20contents.\x0a\x20\x20\x20*/\x0a\x20\x20function\x20generateTOC()\x20{\x0a\x20\x20\x20\x20if\x20($('#manual-nav').length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20//\x20For\x20search,\x20we\x20send\x20the\x20toc\x20precomputed\x20from\x20server-side.\x0a\x20\x20\x20\x20//\x20TODO:\x20Ideally,\x20this\x20should\x20always\x20be\x20precomputed\x20for\x20all\x20pages,\x20but\x20then\x0a\x20\x20\x20\x20//\x20we\x20need\x20to\x20do\x20HTML\x20parsing\x20on\x20the\x20server-side.\x0a\x20\x20\x20\x20if\x20(location.pathname\x20===\x20'/search')\x20{\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20nav\x20=\x20$('#nav');\x0a\x20\x20\x20\x20if\x20(nav.length\x20===\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20toc_items\x20=\x20[];\x0a\x20\x20\x20\x20$(nav)\x0a\x20\x20\x20\x20\x20\x20.nextAll('h2,\x20h3')\x0a\x20\x20\x20\x20\x20\x20.each(function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20node\x20=\x20this;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(node.id\x20==\x20'')\x20node.id\x20=\x20'tmp_'\x20+\x20toc_items.length;\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20link\x20=\x20$('')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.attr('href',\x20'#'\x20+\x20node.id)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.text($(node).text());\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20item;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20($(node).is('h2'))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20item\x20=\x20$('
');\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20h3\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20item\x20=\x20$('');\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20item.append(link);\x0a\x20\x20\x20\x20\x20\x20\x20\x20toc_items.push(item);\x0a\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20if\x20(toc_items.length\x20<=\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20var\x20dl1\x20=\x20$('
');\x0a\x20\x20\x20\x20var\x20dl2\x20=\x20$('
');\x0a\x0a\x20\x20\x20\x20var\x20split_index\x20=\x20toc_items.length\x20/\x202\x20+\x201;\x0a\x20\x20\x20\x20if\x20(split_index\x20<\x208)\x20{\x0a\x20\x20\x20\x20\x20\x20split_index\x20=\x20toc_items.length;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20split_index;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20dl1.append(toc_items[i]);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20for\x20(;\x20/*\x20keep\x20using\x20i\x20*/\x20i\x20<\x20toc_items.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20dl2.append(toc_items[i]);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20tocTable\x20=\x20$('').appendTo(nav);\x0a\x20\x20\x20\x20var\x20tocBody\x20=\x20$('
').appendTo(tocTable);\x0a\x20\x20\x20\x20var\x20tocRow\x20=\x20$('').appendTo(tocBody);\x0a\x0a\x20\x20\x20\x20//\x201st\x20column\x0a\x20\x20\x20\x20$('')\x0a\x20\x20\x20\x20\x20\x20.appendTo(tocRow)\x0a\x20\x20\x20\x20\x20\x20.append(dl1);\x0a\x20\x20\x20\x20//\x202nd\x20column\x0a\x20\x20\x20\x20$('\x0a\x09\x09\x0a\x09\x09{{$file}}:\x0a\x09\x09\x0a\x09\x09\x0a\x09\x09{{len\x20.Lines}}\x0a\x09\x09\x0a\x09\x09\x0a\x09\x09{{range\x20.Lines}}\x0a\x09\x09\x09{{html\x20.}}\x0a\x09\x09{{end}}\x0a\x09\x09{{if\x20not\x20$.Complete}}\x0a\x09\x09\x09...\x0a\x09\x09{{end}}\x0a\x09\x09\x0a\x09\x09\x0a\x09{{end}}\x0a\x09{{if\x20not\x20$.Complete}}\x0a\x09\x09...\x0a\x09{{end}}\x0a\x09
')\x0a\x20\x20\x20\x20\x20\x20.appendTo(tocRow)\x0a\x20\x20\x20\x20\x20\x20.append(dl2);\x0a\x20\x20}\x0a\x0a\x20\x20function\x20bindToggle(el)\x20{\x0a\x20\x20\x20\x20$('.toggleButton',\x20el).click(function()\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20($(this).closest('.toggle,\x20.toggleVisible')[0]\x20!=\x20el)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Only\x20trigger\x20the\x20closest\x20toggle\x20header.\x0a\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20if\x20($(el).is('.toggle'))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$(el)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addClass('toggleVisible')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.removeClass('toggle');\x0a\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$(el)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.addClass('toggle')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.removeClass('toggleVisible');\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20function\x20bindToggles(selector)\x20{\x0a\x20\x20\x20\x20$(selector).each(function(i,\x20el)\x20{\x0a\x20\x20\x20\x20\x20\x20bindToggle(el);\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20function\x20bindToggleLink(el,\x20prefix)\x20{\x0a\x20\x20\x20\x20$(el).click(function()\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20href\x20=\x20$(el).attr('href');\x0a\x20\x20\x20\x20\x20\x20var\x20i\x20=\x20href.indexOf('#'\x20+\x20prefix);\x0a\x20\x20\x20\x20\x20\x20if\x20(i\x20<\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20var\x20id\x20=\x20'#'\x20+\x20prefix\x20+\x20href.slice(i\x20+\x201\x20+\x20prefix.length);\x0a\x20\x20\x20\x20\x20\x20if\x20($(id).is('.toggle'))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$(id)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.find('.toggleButton')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.first()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.click();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x20\x20function\x20bindToggleLinks(selector,\x20prefix)\x20{\x0a\x20\x20\x20\x20$(selector).each(function(i,\x20el)\x20{\x0a\x20\x20\x20\x20\x20\x20bindToggleLink(el,\x20prefix);\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20function\x20setupDropdownPlayground()\x20{\x0a\x20\x20\x20\x20if\x20(!$('#page').is('.wide'))\x20{\x0a\x20\x20\x20\x20\x20\x20return;\x20//\x20don't\x20show\x20on\x20front\x20page\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20var\x20button\x20=\x20$('#playgroundButton');\x0a\x20\x20\x20\x20var\x20div\x20=\x20$('#playground');\x0a\x20\x20\x20\x20var\x20setup\x20=\x20false;\x0a\x20\x20\x20\x20button.toggle(\x0a\x20\x20\x20\x20\x20\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20button.addClass('active');\x0a\x20\x20\x20\x20\x20\x20\x20\x20div.show();\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(setup)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20setup\x20=\x20true;\x0a\x20\x20\x20\x20\x20\x20\x20\x20playground({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codeEl:\x20$('.code',\x20div),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20outputEl:\x20$('.output',\x20div),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20runEl:\x20$('.run',\x20div),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20fmtEl:\x20$('.fmt',\x20div),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20shareEl:\x20$('.share',\x20div),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20shareRedirect:\x20'//play.golang.org/p/',\x0a\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20button.removeClass('active');\x0a\x20\x20\x20\x20\x20\x20\x20\x20div.hide();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20);\x0a\x20\x20\x20\x20$('#menu').css('min-width',\x20'+=60');\x0a\x0a\x20\x20\x20\x20//\x20Hide\x20inline\x20playground\x20if\x20we\x20click\x20somewhere\x20on\x20the\x20page.\x0a\x20\x20\x20\x20//\x20This\x20is\x20needed\x20in\x20mobile\x20devices,\x20where\x20the\x20\"Play\"\x20button\x0a\x20\x20\x20\x20//\x20is\x20not\x20clickable\x20once\x20the\x20playground\x20opens\x20up.\x0a\x20\x20\x20\x20$('#page').click(function()\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(button.hasClass('active'))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20button.click();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20function\x20setupInlinePlayground()\x20{\x0a\x20\x20\x20\x20'use\x20strict';\x0a\x20\x20\x20\x20//\x20Set\x20up\x20playground\x20when\x20each\x20element\x20is\x20toggled.\x0a\x20\x20\x20\x20$('div.play').each(function(i,\x20el)\x20{\x0a\x20\x20\x20\x20\x20\x20//\x20Set\x20up\x20playground\x20for\x20this\x20example.\x0a\x20\x20\x20\x20\x20\x20var\x20setup\x20=\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20code\x20=\x20$('.code',\x20el);\x0a\x20\x20\x20\x20\x20\x20\x20\x20playground({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20codeEl:\x20code,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20outputEl:\x20$('.output',\x20el),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20runEl:\x20$('.run',\x20el),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20fmtEl:\x20$('.fmt',\x20el),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20shareEl:\x20$('.share',\x20el),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20shareRedirect:\x20'//play.golang.org/p/',\x0a\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Make\x20the\x20code\x20textarea\x20resize\x20to\x20fit\x20content.\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20resize\x20=\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20code.height(0);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20h\x20=\x20code[0].scrollHeight;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20code.height(h\x20+\x2020);\x20//\x20minimize\x20bouncing.\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20code.closest('.input').height(h);\x0a\x20\x20\x20\x20\x20\x20\x20\x20};\x0a\x20\x20\x20\x20\x20\x20\x20\x20code.on('keydown',\x20resize);\x0a\x20\x20\x20\x20\x20\x20\x20\x20code.on('keyup',\x20resize);\x0a\x20\x20\x20\x20\x20\x20\x20\x20code.keyup();\x20//\x20resize\x20now.\x0a\x20\x20\x20\x20\x20\x20};\x0a\x0a\x20\x20\x20\x20\x20\x20//\x20If\x20example\x20already\x20visible,\x20set\x20up\x20playground\x20now.\x0a\x20\x20\x20\x20\x20\x20if\x20($(el).is(':visible'))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20setup();\x0a\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20//\x20Otherwise,\x20set\x20up\x20playground\x20when\x20example\x20is\x20expanded.\x0a\x20\x20\x20\x20\x20\x20var\x20built\x20=\x20false;\x0a\x20\x20\x20\x20\x20\x20$(el)\x0a\x20\x20\x20\x20\x20\x20\x20\x20.closest('.toggle')\x0a\x20\x20\x20\x20\x20\x20\x20\x20.click(function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20//\x20Only\x20set\x20up\x20once.\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!built)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20setup();\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20built\x20=\x20true;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20//\x20fixFocus\x20tries\x20to\x20put\x20focus\x20to\x20div#page\x20so\x20that\x20keyboard\x20navigation\x20works.\x0a\x20\x20function\x20fixFocus()\x20{\x0a\x20\x20\x20\x20var\x20page\x20=\x20$('div#page');\x0a\x20\x20\x20\x20var\x20topbar\x20=\x20$('div#topbar');\x0a\x20\x20\x20\x20page.css('outline',\x200);\x20//\x20disable\x20outline\x20when\x20focused\x0a\x20\x20\x20\x20page.attr('tabindex',\x20-1);\x20//\x20and\x20set\x20tabindex\x20so\x20that\x20it\x20is\x20focusable\x0a\x20\x20\x20\x20$(window)\x0a\x20\x20\x20\x20\x20\x20.resize(function(evt)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20only\x20focus\x20page\x20when\x20the\x20topbar\x20is\x20at\x20fixed\x20position\x20(that\x20is,\x20it's\x20in\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20front\x20of\x20page,\x20and\x20keyboard\x20event\x20will\x20go\x20to\x20the\x20former\x20by\x20default.)\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20by\x20focusing\x20page,\x20keyboard\x20event\x20will\x20go\x20to\x20page\x20so\x20that\x20up/down\x20arrow,\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20space,\x20etc.\x20will\x20work\x20as\x20expected.\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(topbar.css('position')\x20==\x20'fixed')\x20page.focus();\x0a\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20\x20\x20.resize();\x0a\x20\x20}\x0a\x0a\x20\x20function\x20toggleHash()\x20{\x0a\x20\x20\x20\x20var\x20id\x20=\x20window.location.hash.substring(1);\x0a\x20\x20\x20\x20//\x20Open\x20all\x20of\x20the\x20toggles\x20for\x20a\x20particular\x20hash.\x0a\x20\x20\x20\x20var\x20els\x20=\x20$(\x0a\x20\x20\x20\x20\x20\x20document.getElementById(id),\x0a\x20\x20\x20\x20\x20\x20$('a[name]').filter(function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20return\x20$(this).attr('name')\x20==\x20id;\x0a\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20);\x0a\x0a\x20\x20\x20\x20while\x20(els.length)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20els.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20el\x20=\x20$(els[i]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(el.is('.toggle'))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20el.find('.toggleButton')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.first()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.click();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20els\x20=\x20el.parent();\x0a\x20\x20\x20\x20}\x0a\x20\x20}\x0a\x0a\x20\x20function\x20personalizeInstallInstructions()\x20{\x0a\x20\x20\x20\x20var\x20prefix\x20=\x20'?download=';\x0a\x20\x20\x20\x20var\x20s\x20=\x20window.location.search;\x0a\x20\x20\x20\x20if\x20(s.indexOf(prefix)\x20!=\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20//\x20No\x20'download'\x20query\x20string;\x20detect\x20\"test\"\x20instructions\x20from\x20User\x20Agent.\x0a\x20\x20\x20\x20\x20\x20if\x20(navigator.platform.indexOf('Win')\x20!=\x20-1)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$('.testUnix').hide();\x0a\x20\x20\x20\x20\x20\x20\x20\x20$('.testWindows').show();\x0a\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$('.testUnix').show();\x0a\x20\x20\x20\x20\x20\x20\x20\x20$('.testWindows').hide();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20filename\x20=\x20s.substr(prefix.length);\x0a\x20\x20\x20\x20var\x20filenameRE\x20=\x20/^go1\\.\\d+(\\.\\d+)?([a-z0-9]+)?\\.([a-z0-9]+)(-[a-z0-9]+)?(-osx10\\.[68])?\\.([a-z.]+)$/;\x0a\x20\x20\x20\x20var\x20m\x20=\x20filenameRE.exec(filename);\x0a\x20\x20\x20\x20if\x20(!m)\x20{\x0a\x20\x20\x20\x20\x20\x20//\x20Can't\x20interpret\x20file\x20name;\x20bail.\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20$('.downloadFilename').text(filename);\x0a\x20\x20\x20\x20$('.hideFromDownload').hide();\x0a\x0a\x20\x20\x20\x20var\x20os\x20=\x20m[3];\x0a\x20\x20\x20\x20var\x20ext\x20=\x20m[6];\x0a\x20\x20\x20\x20if\x20(ext\x20!=\x20'tar.gz')\x20{\x0a\x20\x20\x20\x20\x20\x20$('#tarballInstructions').hide();\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if\x20(os\x20!=\x20'darwin'\x20||\x20ext\x20!=\x20'pkg')\x20{\x0a\x20\x20\x20\x20\x20\x20$('#darwinPackageInstructions').hide();\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if\x20(os\x20!=\x20'windows')\x20{\x0a\x20\x20\x20\x20\x20\x20$('#windowsInstructions').hide();\x0a\x20\x20\x20\x20\x20\x20$('.testUnix').show();\x0a\x20\x20\x20\x20\x20\x20$('.testWindows').hide();\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(ext\x20!=\x20'msi')\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$('#windowsInstallerInstructions').hide();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20if\x20(ext\x20!=\x20'zip')\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$('#windowsZipInstructions').hide();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20$('.testUnix').hide();\x0a\x20\x20\x20\x20\x20\x20$('.testWindows').show();\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20download\x20=\x20'https://dl.google.com/go/'\x20+\x20filename;\x0a\x0a\x20\x20\x20\x20var\x20message\x20=\x20$(\x0a\x20\x20\x20\x20\x20\x20''\x20+\x0a\x20\x20\x20\x20\x20\x20\x20\x20'Your\x20download\x20should\x20begin\x20shortly.\x20'\x20+\x0a\x20\x20\x20\x20\x20\x20\x20\x20'If\x20it\x20does\x20not,\x20click\x20this\x20link.

'\x0a\x20\x20\x20\x20);\x0a\x20\x20\x20\x20message.find('a').attr('href',\x20download);\x0a\x20\x20\x20\x20message.insertAfter('#nav');\x0a\x0a\x20\x20\x20\x20window.location\x20=\x20download;\x0a\x20\x20}\x0a\x0a\x20\x20function\x20updateVersionTags()\x20{\x0a\x20\x20\x20\x20var\x20v\x20=\x20window.goVersion;\x0a\x20\x20\x20\x20if\x20(/^go[0-9.]+$/.test(v))\x20{\x0a\x20\x20\x20\x20\x20\x20$('.versionTag')\x0a\x20\x20\x20\x20\x20\x20\x20\x20.empty()\x0a\x20\x20\x20\x20\x20\x20\x20\x20.text(v);\x0a\x20\x20\x20\x20\x20\x20$('.whereTag').hide();\x0a\x20\x20\x20\x20}\x0a\x20\x20}\x0a\x0a\x20\x20function\x20addPermalinks()\x20{\x0a\x20\x20\x20\x20function\x20addPermalink(source,\x20parent)\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20id\x20=\x20source.attr('id');\x0a\x20\x20\x20\x20\x20\x20if\x20(id\x20==\x20''\x20||\x20id.indexOf('tmp_')\x20===\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Auto-generated\x20permalink.\x0a\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20if\x20(parent.find('>\x20.permalink').length)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Already\x20attached.\x0a\x20\x20\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20parent\x0a\x20\x20\x20\x20\x20\x20\x20\x20.append('\x20')\x0a\x20\x20\x20\x20\x20\x20\x20\x20.append($(\"¶\").attr('href',\x20'#'\x20+\x20id));\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20$('#page\x20.container')\x0a\x20\x20\x20\x20\x20\x20.find('h2[id],\x20h3[id]')\x0a\x20\x20\x20\x20\x20\x20.each(function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20el\x20=\x20$(this);\x0a\x20\x20\x20\x20\x20\x20\x20\x20addPermalink(el,\x20el);\x0a\x20\x20\x20\x20\x20\x20});\x0a\x0a\x20\x20\x20\x20$('#page\x20.container')\x0a\x20\x20\x20\x20\x20\x20.find('dl[id]')\x0a\x20\x20\x20\x20\x20\x20.each(function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20el\x20=\x20$(this);\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20Add\x20the\x20anchor\x20to\x20the\x20\"dt\"\x20element.\x0a\x20\x20\x20\x20\x20\x20\x20\x20addPermalink(el,\x20el.find('>\x20dt').first());\x0a\x20\x20\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20$('.js-expandAll').click(function()\x20{\x0a\x20\x20\x20\x20if\x20($(this).hasClass('collapsed'))\x20{\x0a\x20\x20\x20\x20\x20\x20toggleExamples('toggle');\x0a\x20\x20\x20\x20\x20\x20$(this).text('(Collapse\x20All)');\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20toggleExamples('toggleVisible');\x0a\x20\x20\x20\x20\x20\x20$(this).text('(Expand\x20All)');\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20$(this).toggleClass('collapsed');\x0a\x20\x20});\x0a\x0a\x20\x20function\x20toggleExamples(className)\x20{\x0a\x20\x20\x20\x20//\x20We\x20need\x20to\x20explicitly\x20iterate\x20through\x20divs\x20starting\x20with\x20\"example_\"\x0a\x20\x20\x20\x20//\x20to\x20avoid\x20toggling\x20Overview\x20and\x20Index\x20collapsibles.\x0a\x20\x20\x20\x20$(\"[id^='example_']\").each(function()\x20{\x0a\x20\x20\x20\x20\x20\x20//\x20Check\x20for\x20state\x20and\x20click\x20it\x20only\x20if\x20required.\x0a\x20\x20\x20\x20\x20\x20if\x20($(this).hasClass(className))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20$(this)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.find('.toggleButton')\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.first()\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.click();\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20});\x0a\x20\x20}\x0a\x0a\x20\x20$(document).ready(function()\x20{\x0a\x20\x20\x20\x20generateTOC();\x0a\x20\x20\x20\x20addPermalinks();\x0a\x20\x20\x20\x20bindToggles('.toggle');\x0a\x20\x20\x20\x20bindToggles('.toggleVisible');\x0a\x20\x20\x20\x20bindToggleLinks('.exampleLink',\x20'example_');\x0a\x20\x20\x20\x20bindToggleLinks('.overviewLink',\x20'');\x0a\x20\x20\x20\x20bindToggleLinks('.examplesLink',\x20'');\x0a\x20\x20\x20\x20bindToggleLinks('.indexLink',\x20'');\x0a\x20\x20\x20\x20setupDropdownPlayground();\x0a\x20\x20\x20\x20setupInlinePlayground();\x0a\x20\x20\x20\x20fixFocus();\x0a\x20\x20\x20\x20setupTypeInfo();\x0a\x20\x20\x20\x20setupCallgraphs();\x0a\x20\x20\x20\x20toggleHash();\x0a\x20\x20\x20\x20personalizeInstallInstructions();\x0a\x20\x20\x20\x20updateVersionTags();\x0a\x0a\x20\x20\x20\x20//\x20godoc.html\x20defines\x20window.initFuncs\x20in\x20the\x20\x20tag,\x20and\x20root.html\x20and\x0a\x20\x20\x20\x20//\x20codewalk.js\x20push\x20their\x20on-page-ready\x20functions\x20to\x20the\x20list.\x0a\x20\x20\x20\x20//\x20We\x20execute\x20those\x20functions\x20here,\x20to\x20avoid\x20loading\x20jQuery\x20until\x20the\x20page\x0a\x20\x20\x20\x20//\x20content\x20is\x20loaded.\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20window.initFuncs.length;\x20i++)\x20window.initFuncs[i]();\x0a\x20\x20});\x0a\x0a\x20\x20//\x20--\x20analysis\x20---------------------------------------------------------\x0a\x0a\x20\x20//\x20escapeHTML\x20returns\x20HTML\x20for\x20s,\x20with\x20metacharacters\x20quoted.\x0a\x20\x20//\x20It\x20is\x20safe\x20for\x20use\x20in\x20both\x20elements\x20and\x20attributes\x0a\x20\x20//\x20(unlike\x20the\x20\"set\x20innerText,\x20read\x20innerHTML\"\x20trick).\x0a\x20\x20function\x20escapeHTML(s)\x20{\x0a\x20\x20\x20\x20return\x20s\x0a\x20\x20\x20\x20\x20\x20.replace(/&/g,\x20'&')\x0a\x20\x20\x20\x20\x20\x20.replace(/\\\"/g,\x20'"')\x0a\x20\x20\x20\x20\x20\x20.replace(/\\'/g,\x20''')\x0a\x20\x20\x20\x20\x20\x20.replace(//g,\x20'>');\x0a\x20\x20}\x0a\x0a\x20\x20//\x20makeAnchor\x20returns\x20HTML\x20for\x20an\x20\x20element,\x20given\x20an\x20anchorJSON\x20object.\x0a\x20\x20function\x20makeAnchor(json)\x20{\x0a\x20\x20\x20\x20var\x20html\x20=\x20escapeHTML(json.Text);\x0a\x20\x20\x20\x20if\x20(json.Href\x20!=\x20'')\x20{\x0a\x20\x20\x20\x20\x20\x20html\x20=\x20\"\"\x20+\x20html\x20+\x20'';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20html;\x0a\x20\x20}\x0a\x0a\x20\x20function\x20showLowFrame(html)\x20{\x0a\x20\x20\x20\x20var\x20lowframe\x20=\x20document.getElementById('lowframe');\x0a\x20\x20\x20\x20lowframe.style.height\x20=\x20'200px';\x0a\x20\x20\x20\x20lowframe.innerHTML\x20=\x0a\x20\x20\x20\x20\x20\x20\"\"\x20+\x0a\x20\x20\x20\x20\x20\x20html\x20+\x0a\x20\x20\x20\x20\x20\x20'

\\n'\x20+\x0a\x20\x20\x20\x20\x20\x20\"\xe2\x9c\x98\";\x0a\x20\x20}\x0a\x0a\x20\x20document.hideLowFrame\x20=\x20function()\x20{\x0a\x20\x20\x20\x20var\x20lowframe\x20=\x20document.getElementById('lowframe');\x0a\x20\x20\x20\x20lowframe.style.height\x20=\x20'0px';\x0a\x20\x20};\x0a\x0a\x20\x20//\x20onClickCallers\x20is\x20the\x20onclick\x20action\x20for\x20the\x20'func'\x20tokens\x20of\x20a\x0a\x20\x20//\x20function\x20declaration.\x0a\x20\x20document.onClickCallers\x20=\x20function(index)\x20{\x0a\x20\x20\x20\x20var\x20data\x20=\x20document.ANALYSIS_DATA[index];\x0a\x20\x20\x20\x20if\x20(data.Callers.length\x20==\x201\x20&&\x20data.Callers[0].Sites.length\x20==\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20document.location\x20=\x20data.Callers[0].Sites[0].Href;\x20//\x20jump\x20to\x20sole\x20caller\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20html\x20=\x0a\x20\x20\x20\x20\x20\x20'Callers\x20of\x20'\x20+\x20escapeHTML(data.Callee)\x20+\x20':
\\n';\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20data.Callers.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20caller\x20=\x20data.Callers[i];\x0a\x20\x20\x20\x20\x20\x20html\x20+=\x20''\x20+\x20escapeHTML(caller.Func)\x20+\x20'';\x0a\x20\x20\x20\x20\x20\x20var\x20sites\x20=\x20caller.Sites;\x0a\x20\x20\x20\x20\x20\x20if\x20(sites\x20!=\x20null\x20&&\x20sites.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20'\x20at\x20line\x20';\x0a\x20\x20\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20sites.length;\x20j++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(j\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20',\x20';\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20''\x20+\x20makeAnchor(sites[j])\x20+\x20'';\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20html\x20+=\x20'
\\n';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20showLowFrame(html);\x0a\x20\x20};\x0a\x0a\x20\x20//\x20onClickCallees\x20is\x20the\x20onclick\x20action\x20for\x20the\x20'('\x20token\x20of\x20a\x20function\x20call.\x0a\x20\x20document.onClickCallees\x20=\x20function(index)\x20{\x0a\x20\x20\x20\x20var\x20data\x20=\x20document.ANALYSIS_DATA[index];\x0a\x20\x20\x20\x20if\x20(data.Callees.length\x20==\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20document.location\x20=\x20data.Callees[0].Href;\x20//\x20jump\x20to\x20sole\x20callee\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20html\x20=\x20'Callees\x20of\x20this\x20'\x20+\x20escapeHTML(data.Descr)\x20+\x20':
\\n';\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20data.Callees.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20html\x20+=\x20''\x20+\x20makeAnchor(data.Callees[i])\x20+\x20'
\\n';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20showLowFrame(html);\x0a\x20\x20};\x0a\x0a\x20\x20//\x20onClickTypeInfo\x20is\x20the\x20onclick\x20action\x20for\x20identifiers\x20declaring\x20a\x20named\x20type.\x0a\x20\x20document.onClickTypeInfo\x20=\x20function(index)\x20{\x0a\x20\x20\x20\x20var\x20data\x20=\x20document.ANALYSIS_DATA[index];\x0a\x20\x20\x20\x20var\x20html\x20=\x0a\x20\x20\x20\x20\x20\x20'Type\x20'\x20+\x0a\x20\x20\x20\x20\x20\x20data.Name\x20+\x0a\x20\x20\x20\x20\x20\x20':\x20'\x20+\x0a\x20\x20\x20\x20\x20\x20'      (size='\x20+\x0a\x20\x20\x20\x20\x20\x20data.Size\x20+\x0a\x20\x20\x20\x20\x20\x20',\x20align='\x20+\x0a\x20\x20\x20\x20\x20\x20data.Align\x20+\x0a\x20\x20\x20\x20\x20\x20')
\\n';\x0a\x20\x20\x20\x20html\x20+=\x20implementsHTML(data);\x0a\x20\x20\x20\x20html\x20+=\x20methodsetHTML(data);\x0a\x20\x20\x20\x20showLowFrame(html);\x0a\x20\x20};\x0a\x0a\x20\x20//\x20implementsHTML\x20returns\x20HTML\x20for\x20the\x20implements\x20relation\x20of\x20the\x0a\x20\x20//\x20specified\x20TypeInfoJSON\x20value.\x0a\x20\x20function\x20implementsHTML(info)\x20{\x0a\x20\x20\x20\x20var\x20html\x20=\x20'';\x0a\x20\x20\x20\x20if\x20(info.ImplGroups\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20info.ImplGroups.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20group\x20=\x20info.ImplGroups[i];\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20x\x20=\x20''\x20+\x20escapeHTML(group.Descr)\x20+\x20'\x20';\x0a\x20\x20\x20\x20\x20\x20\x20\x20for\x20(var\x20j\x20=\x200;\x20j\x20<\x20group.Facts.length;\x20j++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20fact\x20=\x20group.Facts[j];\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20var\x20y\x20=\x20''\x20+\x20makeAnchor(fact.Other)\x20+\x20'';\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(fact.ByKind\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20escapeHTML(fact.ByKind)\x20+\x20'\x20type\x20'\x20+\x20y\x20+\x20'\x20implements\x20'\x20+\x20x;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20x\x20+\x20'\x20implements\x20'\x20+\x20y;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20'
\\n';\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20html;\x0a\x20\x20}\x0a\x0a\x20\x20//\x20methodsetHTML\x20returns\x20HTML\x20for\x20the\x20methodset\x20of\x20the\x20specified\x0a\x20\x20//\x20TypeInfoJSON\x20value.\x0a\x20\x20function\x20methodsetHTML(info)\x20{\x0a\x20\x20\x20\x20var\x20html\x20=\x20'';\x0a\x20\x20\x20\x20if\x20(info.Methods\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20info.Methods.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20html\x20+=\x20''\x20+\x20makeAnchor(info.Methods[i])\x20+\x20'
\\n';\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20html;\x0a\x20\x20}\x0a\x0a\x20\x20//\x20onClickComm\x20is\x20the\x20onclick\x20action\x20for\x20channel\x20\"make\"\x20and\x20\"<-\"\x0a\x20\x20//\x20send/receive\x20tokens.\x0a\x20\x20document.onClickComm\x20=\x20function(index)\x20{\x0a\x20\x20\x20\x20var\x20ops\x20=\x20document.ANALYSIS_DATA[index].Ops;\x0a\x20\x20\x20\x20if\x20(ops.length\x20==\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20document.location\x20=\x20ops[0].Op.Href;\x20//\x20jump\x20to\x20sole\x20element\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20html\x20=\x20'Operations\x20on\x20this\x20channel:
\\n';\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20ops.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20html\x20+=\x0a\x20\x20\x20\x20\x20\x20\x20\x20makeAnchor(ops[i].Op)\x20+\x0a\x20\x20\x20\x20\x20\x20\x20\x20'\x20by\x20'\x20+\x0a\x20\x20\x20\x20\x20\x20\x20\x20escapeHTML(ops[i].Fn)\x20+\x0a\x20\x20\x20\x20\x20\x20\x20\x20'
\\n';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20if\x20(ops.length\x20==\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20html\x20+=\x20'(none)
\\n';\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20showLowFrame(html);\x0a\x20\x20};\x0a\x0a\x20\x20$(window).load(function()\x20{\x0a\x20\x20\x20\x20//\x20Scroll\x20window\x20so\x20that\x20first\x20selection\x20is\x20visible.\x0a\x20\x20\x20\x20//\x20(This\x20means\x20we\x20don't\x20need\x20to\x20emit\x20id='L%d'\x20spans\x20for\x20each\x20line.)\x0a\x20\x20\x20\x20//\x20TODO(adonovan):\x20ideally,\x20scroll\x20it\x20so\x20that\x20it's\x20under\x20the\x20pointer,\x0a\x20\x20\x20\x20//\x20but\x20I\x20don't\x20know\x20how\x20to\x20get\x20the\x20pointer\x20y\x20coordinate.\x0a\x20\x20\x20\x20var\x20elts\x20=\x20document.getElementsByClassName('selection');\x0a\x20\x20\x20\x20if\x20(elts.length\x20>\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20elts[0].scrollIntoView();\x0a\x20\x20\x20\x20}\x0a\x20\x20});\x0a\x0a\x20\x20//\x20setupTypeInfo\x20populates\x20the\x20\"Implements\"\x20and\x20\"Method\x20set\"\x20toggle\x20for\x0a\x20\x20//\x20each\x20type\x20in\x20the\x20package\x20doc.\x0a\x20\x20function\x20setupTypeInfo()\x20{\x0a\x20\x20\x20\x20for\x20(var\x20i\x20in\x20document.ANALYSIS_DATA)\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20data\x20=\x20document.ANALYSIS_DATA[i];\x0a\x0a\x20\x20\x20\x20\x20\x20var\x20el\x20=\x20document.getElementById('implements-'\x20+\x20i);\x0a\x20\x20\x20\x20\x20\x20if\x20(el\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20el\x20!=\x20null\x20=>\x20data\x20is\x20TypeInfoJSON.\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(data.ImplGroups\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20el.innerHTML\x20=\x20implementsHTML(data);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20el.parentNode.parentNode.style.display\x20=\x20'block';\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20\x20\x20var\x20el\x20=\x20document.getElementById('methodset-'\x20+\x20i);\x0a\x20\x20\x20\x20\x20\x20if\x20(el\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20//\x20el\x20!=\x20null\x20=>\x20data\x20is\x20TypeInfoJSON.\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(data.Methods\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20el.innerHTML\x20=\x20methodsetHTML(data);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20el.parentNode.parentNode.style.display\x20=\x20'block';\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20}\x0a\x0a\x20\x20function\x20setupCallgraphs()\x20{\x0a\x20\x20\x20\x20if\x20(document.CALLGRAPH\x20==\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20return;\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20document.getElementById('pkg-callgraph').style.display\x20=\x20'block';\x0a\x0a\x20\x20\x20\x20var\x20treeviews\x20=\x20document.getElementsByClassName('treeview');\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20treeviews.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20tree\x20=\x20treeviews[i];\x0a\x20\x20\x20\x20\x20\x20if\x20(tree.id\x20==\x20null\x20||\x20tree.id.indexOf('callgraph-')\x20!=\x200)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20continue;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20var\x20id\x20=\x20tree.id.substring('callgraph-'.length);\x0a\x20\x20\x20\x20\x20\x20$(tree).treeview({\x20collapsed:\x20true,\x20animated:\x20'fast'\x20});\x0a\x20\x20\x20\x20\x20\x20document.cgAddChildren(tree,\x20tree,\x20[id]);\x0a\x20\x20\x20\x20\x20\x20tree.parentNode.parentNode.style.display\x20=\x20'block';\x0a\x20\x20\x20\x20}\x0a\x20\x20}\x0a\x0a\x20\x20document.cgAddChildren\x20=\x20function(tree,\x20ul,\x20indices)\x20{\x0a\x20\x20\x20\x20if\x20(indices\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20indices.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20var\x20li\x20=\x20cgAddChild(tree,\x20ul,\x20document.CALLGRAPH[indices[i]]);\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(i\x20==\x20indices.length\x20-\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20$(li).addClass('last');\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20$(tree).treeview({\x20animated:\x20'fast',\x20add:\x20ul\x20});\x0a\x20\x20};\x0a\x0a\x20\x20//\x20cgAddChild\x20adds\x20an\x20
  • \x20element\x20for\x20document.CALLGRAPH\x20node\x20cgn\x20to\x0a\x20\x20//\x20the\x20parent\x20
      \x20element\x20ul.\x20tree\x20is\x20the\x20tree's\x20root\x20
        \x20element.\x0a\x20\x20function\x20cgAddChild(tree,\x20ul,\x20cgn)\x20{\x0a\x20\x20\x20\x20var\x20li\x20=\x20document.createElement('li');\x0a\x20\x20\x20\x20ul.appendChild(li);\x0a\x20\x20\x20\x20li.className\x20=\x20'closed';\x0a\x0a\x20\x20\x20\x20var\x20code\x20=\x20document.createElement('code');\x0a\x0a\x20\x20\x20\x20if\x20(cgn.Callees\x20!=\x20null)\x20{\x0a\x20\x20\x20\x20\x20\x20$(li).addClass('expandable');\x0a\x0a\x20\x20\x20\x20\x20\x20//\x20Event\x20handlers\x20and\x20innerHTML\x20updates\x20don't\x20play\x20nicely\x20together,\x0a\x20\x20\x20\x20\x20\x20//\x20hence\x20all\x20this\x20explicit\x20DOM\x20manipulation.\x0a\x20\x20\x20\x20\x20\x20var\x20hitarea\x20=\x20document.createElement('div');\x0a\x20\x20\x20\x20\x20\x20hitarea.className\x20=\x20'hitarea\x20expandable-hitarea';\x0a\x20\x20\x20\x20\x20\x20li.appendChild(hitarea);\x0a\x0a\x20\x20\x20\x20\x20\x20li.appendChild(code);\x0a\x0a\x20\x20\x20\x20\x20\x20var\x20childUL\x20=\x20document.createElement('ul');\x0a\x20\x20\x20\x20\x20\x20li.appendChild(childUL);\x0a\x20\x20\x20\x20\x20\x20childUL.setAttribute('style',\x20'display:\x20none;');\x0a\x0a\x20\x20\x20\x20\x20\x20var\x20onClick\x20=\x20function()\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20document.cgAddChildren(tree,\x20childUL,\x20cgn.Callees);\x0a\x20\x20\x20\x20\x20\x20\x20\x20hitarea.removeEventListener('click',\x20onClick);\x0a\x20\x20\x20\x20\x20\x20};\x0a\x20\x20\x20\x20\x20\x20hitarea.addEventListener('click',\x20onClick);\x0a\x20\x20\x20\x20}\x20else\x20{\x0a\x20\x20\x20\x20\x20\x20li.appendChild(code);\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20code.innerHTML\x20+=\x20' '\x20+\x20makeAnchor(cgn.Func);\x0a\x20\x20\x20\x20return\x20li;\x0a\x20\x20}\x0a})();\x0a", + "gopher/pkg.png": "\x89PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\x00\x00S\x00\x00\x00x\x08\x00\x00\x00\x00\xab\xb2\x91)\x00\x00\x02\xediCCPICC\x20profile\x00\x00(\xcfc``\x9e\xe0\xe8\xe2\xe4\xca$\xc0\xc0PPTR\xe4\x1e\xe4\x18\x19\x11\x19\xa5\xc0~\x9e\x81\x8d\x81\x99\x01\x0c\x12\x93\x8b\x0b\x1c\x03\x02|@\xec\xbc\xfc\xbcT\x06T\xc0\xc8\xc0\xf0\xed\x1a\x88d`\xb8\xac\x0b2\x8b\x814\xc0\x9a\x0c\xb4\x18H\x1f\x00b\xa3\x94\xd4\xe2d\x20\xfd\x05\x88\xd3\xcbK\x0a\x80\xe2\x8c1@\xb6HR6\x98]\x00bg\x87\x049\x03\xd9-\x0c\x0cL<%\xa9\x15\x20\xbd\x0c\xce\xf9\x05\x95E\x99\xe9\x19%\x0a\x86\x96\x96\x96\x0a\x8e)\xf9I\xa9\x0a\xc1\x95\xc5%\xa9\xb9\xc5\x0a\x9ey\xc9\xf9E\x05\xf9E\x89%\xa9)@\xb5P;@\x80\xd7%\xbfD\xc1=13O\xc1\xc8@\x95\x81\xca\x00\x14\x8e\x10\x16\"|\x10b\x08\x90\\ZT\x06\x0fJ\x06\x06\x01\x06\x05\x06\x03\x06\x07\x86\x00\x86D\x86z\x86\x05\x0cG\x19\xde0\x8a3\xba0\x962\xae`\xbc\xc7$\xc6\x14\xc44\x81\xe9\x02\xb30s$\xf3B\xe67,\x96,\x1d,\xb7X\xf5X[Y\xef\xb1Y\xb2Mc\xfb\xc6\x1e\xce\xbe\x9bC\x89\xa3\x8b\xe3\x0bg\"\xe7\x05.G\xae-\xdc\x9a\xdc\x0bx\xa4x\xa6\xf2\x0a\xf1N\xe2\x13\xe6\x9b\xc6/\xc3\xbfX@G`\x87\xa0\xab\xe0\x15\xa1T\xa1\x1f\xc2\xbd\"*\"{E\xc3E\xbf\x88M\x127\x12\xbf\"Q!)'yL*_ZZ\xfa\x84L\x99\xac\xba\xec-\xb9>y\x17\xf9?\x0a[\x15\x0b\x95\xf4\x94\xde*\xafU)P5Q\xfd\xa9vP\xbdK#TSI\xf3\x83\xd6\x01\xedI:\xa9\xbaVz\x82z\xaf\xf4\x8f\x18,0\xac5\x8a1\xb65\x917e6}iv\xc1|\xa7\xc5\x12\xcb\x09Vu\xd6\xb96q\xb6\x81v\xae\xf6\xd6\x0e\xc6\x8e:Nj\xceJ.\x0a\xae\xf2n\x0a\xee\xca\x1e\xea\x9e\xba^&\xde6>\xee\xbe\xc1~\x09\xfe\xf9\x01\xf5\x81\x13\x83\x96\x06\xef\x0a\xb9\x18\xfa2\x9c)B.\xd2**\"\xba\"ff\xec\x9e\xb8\x07\x09l\x89\xbaIa\xc9\x0d)kRo\xa6sdXdff\xcd\xcd\xbe\x98\xcb\x9eg\x9f_Q\xb0\xa9\xf0]\xb1vIV\xe9\xaa\xb27\x15\xfa\x95%U\xbbj\x18k\xbd\xea\xa6\xd6?l\xd4k\xaai>\xdb*\xd7V\xd8~\xb4S\xba\xab\xa8\xfbt\xafj_c\xff\xdd\x896\x93fO\xfe;5~\xda\xe1\x19\x1a3\xfbg}\x9f\x930\xf7\xf4|\xf3\x05K\x17\x89,n]\xf2mY\xe6\xf2{+CV\x9d^\xe3\xb2v\xdfz\xcb\x0d\xdb6\x99l\xde\xb2\xd5d\xdb\xf6\x1dV;\xf7\xefv\xddsv_\xd8\xfe\x07\x07s\x0e\xfd<\xd2~L\xfc\xf8\x8a\x93\xd6\xa7\xce\x9dI>\xfb\xeb\xfc\xa4\x8b\xda\x97\x8e^I\xbc\xfa\xef\xfa\x9c\x9b6\xb7\xee\xde\xa9\xbf\xa7|\xff\xc4\xc3\xbc\xc7bO\xf6?\xcb|!\xf2\xf2\xe0\xeb\xfc\xb7\xf2\xef.|h\xfad\xfa\xf9\xd5\xd7\x05\xdf\xc3\x7f\x0a\xfc:\xf5\xa7\xf5\x9f\xe3\xff\xff\x00\x0d\x00\x0f4\xbao\xae\x1b\x00\x00\x00\x09pHYs\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\x00\x00\x07tIME\x07\xdc\x03\x06\x00&\x10\x15\x8a\xc0\xb8\x00\x00\x11\xc7IDATh\xde\xa5ZyTTg\x96\xaf\x9c\xcc\xcc\xe99==\xd3\x93\x9et\x92\x93\x8e\x99L\xa7M\x8f=\x9dL\x12L\xa2v4\x89\xc6}\xc1\x88\xa8\x89\x1a\x05\x15pC\x14\xa2\xe3\x8aQl%\xa2\xb8\x8bq\x8fK\xdc\x17DQ#(\x88\x0b\x8b\xc8^@\x15U@QT\x15UEm\xd4\xf2\xea}\xf77\x7f\xd4\xf2\xde+\x0a\xe2\xe9\xaes8\xbc\xaa\xf7\xde}\xf7\xbb\xeb\xef\xfb\xdd'#\x02\x01\x00@\x04\x10\x05\xbe\x80\xe0;AD\xe4\xfb\xee\xbf\x92\x00\xe1\x00\x20\x10\xf9\xee\xf6\xdf\x0a\x99H&\x04\x81\x7f\xbfL\x02\xf9\xfe((2\xf0\xab\xff\xe3\x17J\xc1K}\xe7\x84\x03\xf1\xa3e\xd2\xb5\x1b\x0a\xba|O\x0c\xd53\xa0\xfd3\xe9\x09\xc9\xc7qd\xab\x01\xc1\x93?\xf3\xa1n\x07\xdd\xedID\xf0l_o\x0a\xea\xf4\xb7\xea)\xb5'\x81e\xac\xb2\x04V.\xb6g\xe0\xcb\xb3\xda3x!\x080\xa6lu\x08.\xe9Ef`1\xbd\xf9(\xa0\xbf%\xf1\x9c+\xe0\xf9\xde\xd6\x1e\x14M\xe8)>\xc9\x1f\xf5\x0c\xea\xd8s\x10\x85c\xef2\x03?\x87\x93\xe9\x17\x09\"PE\\\x11X\xf0\xf6^}\x14V\xcf\x80\xeb\xfc\xe7\x18\x01<\xaeMmb\x08\xda\xd9\xff\xb0\xa0\x15Ib\xc6\xa0\xb4\xee\xf6$\x80\x7fxI\x05\x80\xf1\xf0\xae^\xea\x0a^\xd4\x9b\x9eB\xcc\x85\x8b%\x00\xa48\xb1\xf6\xa8\x1e`\x0c\xe6\xd4}^\xc1\x1a=\xc5RO~\x87(\xe0\xc1\x9e.\\|\x87\x81\x11\xec\xc9\xe7y\x9eX@^\xb0\xbcH\x13\x89\xc4\xc1\x1f\xa2gpqpe\xaf\xda\xd1\x00\x10\x9e\xce\xbe\xe6\x02\x81\x98`\xc4P=\xfd'z\x88O\x02\x18c>\xd9\xc6\x8b\x9b\x0a\xbd\x00_\xb4\xb9<\x18\xf5>\xd1\xe1\xed\x89\x9er\x939]<\x00\x801\xa0~\xcb\x05;\xe3\xdc\x8aVF\x00\x881\x12r\x15\x92\xdc\x0c\xe6ZX{v\xe6\xdcx\xa8\xf2\x00\xc4\x080\xff\xb0[\xc7\xfc\x01\xca3\x06\xb0\xc07\x89]\x09\x04F\x14\xde\x9e\x20\xc0Tz\xef\xcc\xb9\x9f,\xbe\xbbx\x8d\x83y\x01\xfd\x83S\xdb\xd3\x8e\xde\xaarXM.F$\x8a\xf1`y\x08\x06v\xf7<\"\x00`M?^/\xb3\x06\x0d\xf5to\xc6\xeeu\xd1cF\x8d\x8a\xcf\xc8o2\xb9y&\x8aT\x92V\xc3\x1ej\xb2\xef\x06S\x83\x92\x01\xc4\xbc\xb0\x7f\x17\x7f\xa0\x92\x83\xa3%\xff\xd0\xc8\xb1\xb1\xc7k\xda\x1c\x1c1\x88\xb2\x8a\x11\x9e\xa1&\xfb\x9cDD`\xcc0\x7f\x99\xd2\x7f\x89\xfb\xe2\xd0\xd8\xd9\xc7\x9eh\x1c\x1c\xcf\x13\x111\x7f\x06@(\xb3=\xd7\xe4\xe0\x8fD\xfc\x9a8\xab\xd0P\xd2\x87\xa4\x8c\xd9[\xdb\xd6\xe9\xe4x\x8e\xe7y&\x8ax!\xa3z\xecq\x81\xf8\xce\x9b\xa7\x0e\xa4\x02\x01e\x03c\xc7\xf6;\xd5\xa8Q\x94=,\xb8w\xffi\x95\xa2\xcd\xc61\xf0\x02(\xe8\xa5w\x04R\x9b\xefX\x7fK\xe8\x1d\x80sadb\xc4\xd0\x83\x9b\xe7\x0d\x1e=\xeb\xcb\xa8\xc9\x13&}\xb3'\xaf\xd9\xe6\xf4eI\xcf\xf1\x09\xb1\xae\xce\xb2=Vq(zw\xbe=\xfd\xab\xa8\x88\x05\xeb3w\xec\xc9:\xb1?}\xe9\x9c/>\x8f?\xf4To\xf70\xb1\x8b\xc2\xe1\x10\x7f\xdc\x81Y\x8f\xe5\x08\xb5\x81\x00:\xfa\xe1\xcc\xf8\x8b\x11\xf3\x1e\xd4V\x97?\xac\xa8W\xb7V\xe7\x7f\x9f4a\xea\xb6[uF\x97\x17\xd4\x1b\xb6\x09\xe0%\xde\xb0\xb6\x00B~\x10\xe8\xe4\xc8\xd8\xc4\xc7\x1b\xdf\xb9VS\xd7XW\xdd\xa0\xd4\x19\xb5\x9a\xa6\xda\x0bK\x13\xd6]U;8ie\xee\x8e\x19\x88@\xf0\xa8\x13\xca\x20\x8e>vt\xd2\xb4\xe5\x0f\xef\x0d\x8f\xad\xa8S\xa9[\x9bT\xedzS\x87\xae\xad]}#\xed\xabueV'\x0b\xc6l\x8fk\xa7.\xf5\xbc\xfb\x12=\xad3\xa7\x8e\xcb(|\xb8\xef\xfds\xf2FU\x8b\xa6\xa9Uo6wvh\xf5\x06U\xee\xdc)\x97\x0dN\x9e\x02H\xb0'\x99\xde.\xe3\xfc\xef\xfd\x11\xeb\xfb\xb4N\x19;\xfavQ~\xc1\x90i5\x8d\xaa\x16\x8dJ\xa3\xeb\xb4\x98\xccz\x9d\xd1\xd0^\xbb!\xfa\xbc\xdd\xc9\x8bT\x08\x13K\x00sX\xbe\x1b\xe7\x14\xc7\xd2\xd51\x83V>\xcc\xcb/\x9e\xf0\xa7,es\x93Z\xad\xe9\xb0;lV\x8b\xd9\xe2\xe84(v\xc5^1:\x19\x09\x10\x93\xc2\xf8\x88\\\x96\xbc\xbf\xfc(j\xc4\xf5\xd1\x1fO\xca-,,\xce\x9d\xb4kAn\x8bR\xd5\xa2\xd1\x9b\xac6\xab\xddlq9\xed\x16\xcd\xb1\x19g:\xba8&\x20\x19Y7\xacF\x8cw\xb4n\xf9\xe4~\xf0'C\xf4\xabc\x8e>x\x90\xffhk\xcc\x89\xf1\xe7Z\x15MZ\x8dVk\xb0tv\x9a,.\xb7\xc3b\xd1\x1c\x9a}^o\xe7\x03\x11%\xe9G\x81\x82\x08\xe6\xea\xac\xfa\xea\x832\x00<\xc79\xf2\xa3\x9f\x7f{w\xc9\xa3\x92\xc7WG-\x8a\xeb3\xfe\xd0C\xa5R\xd9\xaa\xd5\xeaM\x9dV\x9b\xc3\xe5\xb0ZL\xca]s\xaf6wyY\xa0\xab\xc8\x82\x8dV\x84\x8da7\xdc\x9d\xf0az\xbeB\xa3~\xbc\xfc\xf5_\xf5\xf9\xbe\xb2\xb2\xb4\xbcf\xdd\xe0i\x9f%\xbd1$.=\xa7J\xa9\xd2h;\xec6\x93\xc5\xd9e1\x99t\xf5\x99\x09\xb7\xf4n\x16@G2)R\xf3\xdb\x943\x96g\x0fy\xfe\x95\xfe\x9f\x0e\xed\xff\xcb\xdf\xbe\xf5\xed\xfdG\x15\xa5\xd5\x97\x87F\x8f\x8cN\xdeV\x9a\xb3o\xd3\x96+\xa5Mj\x9d\xd1\xdcn\xb0\xda;\xcd\xedZC\xc3\x9a\x94b\x13\xe7\x8fS\x92\x05\x0b\x0b\x82\x95\x801w{\xf9\xe1\xe9o\xfe\xc3s\xff\xf8\x9c\xec_\xfb\xa7\xdd).\xba\x93\xb5\xed\xd3\xc8\x98\xc1\xeb\xe3Z\x01\xb4\xe6\xac^~\xb6J\xdd\xa6\xd3\x19\xcc\x16\xb3I\xa7\xd1w\x14\xc4\x9cQ\xf8\xc3\x94\x82k\x87\xa8\xbc2\xce\xf6x\xd9\x9f?\xfb&5\xf1\xeb1\x83\xde\x1e1vZ|\xdc\xe0_\xbf\x1c\x9d9ki\xc2.\x00\x00\xaf\xbe\x98\xbc1W\xd5\xda\xaa\xed0Z\x8c\x1dm\x1a\x9d!cm\xb1\xc1\xc3\xfb\x14\x93\xea\xe9\x8f\x07\xeb\xb9\xe9\x09\xdb\xee\x16\xdf\xbfv\xe6\xdc\xd1\xac\x8dsf\x0cys\xe0g\x11#&\xf5\x9d4[\xe1_\x8fW\xbd'\xfep]s\xb3\xb6\xdd\xa63th\xf5\x1d\x15+\x0e6\xb8<\xbe\xdbe\xd2\xcd\x0b@D\x86C\x0bOU)\x1a\xe5\xf2\xea'ee\x15\x15\xc5\xa5y\x97\x0b\x8a~X\x10\x9d8~\xe6\xf9\xb6@\xc0\xb8\xf3\x97o,U([\xf4\x0a\xb5\xd1d4\x1a\x8f&\xe4[\xbc\x0c\x00\x91,\x80\xf8\xfc}\x80\x11\x9c\xa7\xe6\xe4U\x95\xc9\x1b\xea\xeb\x94\x8a\xc6\x86\xba\xc6\x86\x8a\xca\xea\xba\xea\xaa\x9a\x92\x9b\xb9\x07R\xd6\x9c\xb5\x07\xe2V\x9d\x19\x9b\xa3P\xb7(j;:\xcdF\xe3\xc3\xe9\x99:\x8f/\x9cdB\xc3\x0e8\xde\xbbr\xd8\x8f\xd7o\x94)\x1a\x1a\xd4\xea\xe6\xd6\xe6\x966UMU\x9d\\\xael\x94\x97\x14\x17]N\xcd\xac\xe6\xfc\xb9a:\x14wY\xa9T\xc8\xb5&\xb3^\xdb\x94\x92\xa0p\xf9\xf4\x92\x89\x8b\xb1\xdf\x08u+\x86\xbf9h\xfc\x97\x09\xab\xbeM\xdb\x9e\xb9g\xd7\xf77\x8a\x9fV\xd65*\x9b\xb5-\xf5rE\xed\xc9\xad\xc7\xe4\x1e_\xcey\xae,\xd8Z\xa9R4\xb5u\xe8\xdb\x8dg#\xcb\x9c\x08\xd53p\xc4\x00ed\xbf\x95k\x92R\xc6\xf6\xfb\xe3\x90qC\x07\x0c\xffba\xd2\xba\x83y\xb5\x1a\xad\xaa\xa9\xb9\xb6\xf8\xce\xf6\x0dEf\x1e\x00\x98\xfbn\\\xe2]\x85R\xa15\xe8\x0c\xa5\xe3oXx\xf8k\x88\xc8\xe9\x20\x9e\x03\xe0\x86!y\xf8\xc1\x9c\x98\x01\x09;\xf2*\xeb\x9e\x14\xe6\xe6\x9c]2&2qOnysKC\xf9\x93\xb2\x1f\xd2\xbe/\xf7IEeb\xdcOM\x8af\x9dN\xaf\x99\xba\xcd\xec\x0d\xe4f0\xd5}\x05\xaa\xfe\xf4e\x8d\xc7\xeb\xbd\xd8\xff\xbfFg\x1b=\x01\x87\xf0\xa6\xeaSk\x17/\xda{\xa7\xba\xbe\xbe\xae\xfaj\xd2\xba+\x0dn\x00`\xf2\xb5\xb1\xd7\x1b[ZZ\xb4\x86\x98\xb9\x1a7\x01\x20\x19\xa4\xd0?{\xe2\xc71q\xb3\xce\xc8\xb9\xa7\x03\xa3*\x83\x9d\xd4\xff8\xd5\xa5\xb4\xa8\xc8\xd4\x1brEu\xee\xc6E\xe9\x156\x00\xf0j\xb6\xc4\\on\xaaU\xe9\x93\xe6\xd4\xf9\xea\xa8\x0c\x82@B\xc7\x9c?\xaf|l\xb1\xcb\xf7$\xee\x1e\xb1\xbc#`\x13\x8f*\xef\xf0\xba\x9d?\xa9\x01P\xe9\xe2\xdf\xf5M\xbeW[Uvz\xc1\x92\x9b-\x1e\x02\xa8y\xc3\xbc\x1b\xf2\xaaf\xc3\x82\xf8Z\x8b7\xe0\xa3\xc0\x0e\x0a\\d\xdf{^\x00p\xaf\xf8\xcd\xb7\xa6\x80\x92\xad\xa9\x9f\xcfZ\xb5\xe1\xf0\xc9\x03\xc7\xca9\x80\xae\x8e\xf8\xf7\xa1\x17J\xe5\x8dEk&\xefmt\x13\xd0\xa5\xda\x15s\xa2F\xa5O\x9e^g\xf1\x10\x00Y\x00T\x13\xc0\xaf\x1aT\xe4!\x80\xc16m\x91\xd1_P(\xfb\xcb\xb8\xdb\x1d\x0c\x80!\x7f\xfb\xbe\x06\x00\x0d{\x06\xbc\xfb\xd7b\xb9\xa2f\xf3\xa4\xf5\xa5.\x80\x1c\xd5i\xe3\xb2j\xdb\x16F68xAO\x9f\xae\xc7?\xbex\xe3\xbe\xc7\xcb3\x1c\x9f\xde\x18Xw\xf6\xb8\xcb\xc1\x8a\xaf\xbf\x16\x9f\xc3\x00{\xd9\xc2\x81\xa9\x85\xd5\x8dM\xd91\x8bJ=\x048\x9f\xac\x99x]\xb3$Z\xe5\x0e\xd6y\xf0\xbe\x9e\x143b\xce\xabo\xacn\xe1a\x9eyJm\xf4!\xc7\xa7\xe3\x0f\x01\xc4s>\x10\xe3\xba\xbc\xc8\x00\xc0\xd9\xb0\xe7\xf3Ygk\x95\xcdW'N\xbb\xebd\x80\xf5\xd1\xc2\xa9O\xe6\xceiq\xfb\xe33\x88%\x9b?\x8dxq\x90Lv\x1285s\xf2\xb8\xa1\xcb\xca\xbc\x04\xfb\x82x\x17\x98\xc7\xa4\x0c\xe4cn!\x00fj><\xfc\xd3\xdde\xea\x86\xeb_~\x95\xe7\xf0\x02\xf6\x9b\x13V\x0c\xfd\xae\xdd\xe3\xd33\x08{\xb1\xff\xf3\x09/\xfdA\xf6\xfc9X\xe6\xbc\x12\x7fiw\xd4\x80\xdb.\xfe\xea\xc8\xfb\x00\x95\xad\x9a\xb4\xf6\xb1OU\xdd)\x0b\x18x\x9b.?v@\xe2\x91\xba\x86\xfc\xc4\x99wM\x1e\xc0\xb2\xff\xc3>\x97-\x9ct\x1f\xc7\xb0e\xfc\xfa\x7f\x92\xc9^nB\xe9\x9f\x96\xe9\xed\x16\xc5\xdcU:\xd3\xd2\x85\x16\xe0\xe9\x80\x88w\xde\x1b\xf9\x84\x03\x00:\xf5\x08\x8c\xc0[\xf4uK\x06~\xb4\xad\xbc\xaeh\xd9\xd4\xb3f\x80WF\xff\xf6\x8e\x95\x0f\xe6\x91o\x17\x84\xcd\x83\xf3\xd6\xf6\xffC:\x90\xf9~]\x97\xcd\xea\xd9=WQ\xb3\xf8:\x88-\x9e<\xe1\x85>/d8\x01\x80\x0a\x8f1\x10\xc0w\xd9\x14\xa9\xfd\"\x96\xdfQ\x96d\xcc>c\x05\xecq\xa3\xea]L\xe8\xc5\xbe\xb5\x1f~\xfb\xa6\xd7\xa1\xf5\x00)/?\xf08y\xeb\x94\x85-\xa7\xd7\xea\xc0\xac\xb3\x93\xfa\xc8\xfe\xe5\xbf\xd7;\x00\xc0\xdb\xb8\xc6\xe8/\xca\xd6\xb6\x15\x7f\xfc`\xeaME\xe1\xb6\xa9\x97\xac\xcc\xb0dk\xab\xcb\xdf\xdf\x05\xb0\xa0\xfe\xe4\x10\x00\x80\x9b\xfa\xfcG\x87o\x1e\x98\xd7wlF\xc2J'8\xef\xb2\x89\xff&\xfbe\xc4-\x1f\x8coJj\xf0\x97\x06\xa7I\xb5h\xc0\xb0Yg\x14\xb9+'g\x19\x1b\xd7\xdf\xd6\xbb\x20Y;\xc0\xb3\x8d\xf1z\x0f\x01\xa7\xff3u\xcd\xb2\x94\xa5;\xf3o.}i\xae\x1b\x0c\x85\x9f\xfc\xea\x17\xaf\xef\xf6\xfa\xe2\xb8cy\x05\xfc{\x1a\x97\xadq\xdb\x88QQ'+O\xcf\x1e\xb4w\xc3\xfc\xeaN\x8f\x14\xd7\x11\x18\x9e\x0c\xfbF\x0f\x98#\x97\x19\x9d\xee.\x87\xcd\xd8\xfe\x20\xa2\xbf\x11\x80\xf7\xee\xea\xb5\xb78?\xb0\xb0-|\x04\xe6/\xde\\\xa7\xe9\xda{\x03\xa36\xdf;\xb3\xea\xf7}\xf7\xab\xac\xbc\x14\xd7\x81\x88\xb1\x0bC\xd6(\xb8{\xef\xe6\xda\xed.\x97\xc3\xe1\xea\xb2oy\xa3\xc2\xb7\xe9\x0c\x82k\xa6\xfb\xba\xd4\xbf\xc9$\x90\xc7\xe48\xf2\xbb1_\xcc^\xb9\xf0\xf5\xc5\x0f\xdb\xec\xfe\x20\x96\x89\xf6\xbc\x8cJ\xe6\xcfI\xdb\xf1\xea^O\x97\xa3\xcb\xdai\xb3\x9aW\xfc\xf3\x15\x11QD\x00p\xe5k\x9dho\xc8\xd9;\xd3_Y\xb1\xad\xff/\xa6\xddh\xd0\xd98)\xf6&\"b\xcckz\x90:\xfb\xd7}\x8f\xdc.,S\xabZ\xb5\x97\"d\xc7\xc4[\x05\x02\xacI\x9b91\xb9\xe9\xec\xb4\xaf\x7f?\xf7\xaf\xbfy\xfb\xac\xda\xe2\xe4C\xecIDD\x8c\x83\xabi\xfaso\xbe\xfc\xd2[\xc3'|\xf8A\xf4\xaaw\xe7Ix\x19\xa2\xe3Q\xa5\x10\x88P\"\xe2\xbat\x93\x13\xaf\x8c\x97\xc5W\x18\xbb|\xadX\xb0\xa7/\x99x\x9ewM\xfe\x04\xc4#\xe7\x93'$\x19\x10\xf4\xba\xf6\xfbq%\x9e`\x20\x84\xe7\x04@(\x19u\x87\x89&H\xbd\xc9$P\xc5\xa2r\x0e\xe8\x95\x0f\x01P\x15U\xe0\x0e\x8d\x9d\x1e\xd6N\x80<\xf6\xb1'\x84\xb1\x0b];\x80\xe6\xb8'.\x09a\xdf\x9b\x9eh\x9a\x92\xcf\xf1\xe8\x95\xbb\x00`\x8d\x93;\x83,_0\x94(\xbc\xdfa\x9d~\x91\xe7!f\x05\xbbs\x17\x00\xf7\x7f\xf9\x1e)[,\xf0\xe6\xdd}\xc4\xc7\x1dw3\xdf\xac\xa0\x17\x8e\x05\xdf\xecf\x82,Q\x9f\x083\xeb\x01\x90\x96i\x0b\xd53\x0c_\xb7e\x89\x1b\xdd\xb2\x9c\xc2\xc6'\x01'\xd7[\xb80\xf6\x0c\xe1\xebNLj\x13]$\xf6\x11D\x04f@\xc6\xa3%Z\x0f\x84D\xec\x81\xaf+\x18Q\x19F\xa6\xd0\x08\xa52\x0d\xc9W\xbd\x02U\xd9\x13_\xd7\x12uG\xb2v\x89kD\xb1\xed\xfb\xef=\x9b\xce\x05\xc7(=\xea\xe9\x98q\xa0\xbb\x9e\x04\xe2\x01\xdc\xbd\x0d\xc9\xda\x09([\xa0\x84@^\x87\x95I\xe0\x96fpa\xe6\x86\xad'lp\xae\xce\xe9&\xd3\xb0\xee\x8a\x94\xad\xec\xce\xfd\x12\xb0gL\x1bB\xe7\xb0@\xd5,\x15r\x17\x19\xa5C\x0a\x80\\;7\x90h\x08\x10\x8e\xaf#\xe0\xe1\x88\x02\x91'\x02z\x16NS\xe0\xdb\xd5\x02T\x0a\x9cv^Xl\x13\xcdm\xbb\xf3u>T\xbdx\x83\xb3{\xd5\xcc\x9b\xd4\xdc>\xf5zp\xa3\x1c\xac[\xde\x1f\xe3\xec\x92\x8b\xc3r\xbf\xd85\xb2\x91\xef\xa6\xa7q\xdd\xa5\x15\xa9Lh\xa7~\xbf0nG\x12/\xa1K\xc3\xd8\x93\x08\xf2\x0f\x0e3Q\xd9\x80\x8f\xd20\x1e\xcb\xb6\x00\xd2\x11+\x11Y6\xee\x14l\xdc}\x0e\xeb\xcfh`z\x92[\xdc\x81Du#\xb4<\x10\xda\x93sEc\x95\x1e|D\xc0\xcd\xa8Z\xc9\x8cY\"38\x99\xf1\xed\x93JcT\xa29g\x0f\xf1\x09\x827\xe1\x84W\x8cDDp\x06$\x1eI\x80q\x87\x97\xba\xa4c\xc0\x1e\xf4\xc4\xa5\x19Z\x92\x8cp\x85\xbb\x84c\"\x80\xb7%\x1e\x0d\xf2\x1fap\x9dPu\x18\x96\x1c\xec\xf2\x0a\xb8(\xdc\x1c\xd6\xbfi8\xf9ZJ\x950m\xee1\xe6\x09\x04\xf9\xd8\\NT\xe4C\xfbQ\x20\xee\xac\x11Mw\xd1k\x1e\xf9\xcf\x9bg\x1e\xea(z\xe7\xf7YjI\xb3\xf7\x1d\xf3L\x97\xf9\x1f_6\x8a\xcd\xfd\x0c2\x09G#\x95\xce\x13\x83V\xafY\xba\xaf\xdc\xece\x12m\xa9\xf6\xf4\xe8>;\x8d!\xefA\xa0\xa7\x9a\x1c\xf80\xa4\xcf\xd4e\x0f=\xd6\xec\xae\xcd>\xb05\xeb\xc7\x82\xfa\x16\xad\xd1\x03\x90\xaeUss\xcd{\xaf\x0d-\xf0\x0f\xd0{\x7f7&D\xcf{\x89{W\\\xec\xf0\x91\xfc;\xe6\xcf\x9a3o\xfe\x92\x0d'\xaem\xee\xff?\x91\xd1\xcbG\x0dU\x8a\xc7.\xcf\xe6w\x10\xa0\xad\x11\x9a\x82\xb9\xe0\xf0\x96\xf4}Y\x99{\xb3f\xf4\xcbn\xeb\xcc\x98#\x8c^~f\x0e\x1b\xf2\x0e\x93\x10C<@\x1e\xa7\x9dy\xec\x9e\xebK\xaam\xde\x0d\x1bD(\xf4\xd9\xf5$\xc9TX\x88\xa8\xe2\xd8\xb3Ze\xe4}\xc9\x8bS\x10\xbf\x87\xd1K|\x86\xbc\xc6\x15\xccG\xcb\xa6\x09G\xa6gtu\x7f\x7f)\xf0\xf4\xde|\x14\x8a\xeb\x02[Lv\xe6@\x81W\xf4\xb6\x86xx\xfd\xb7\xca\x94pCR{\x12@\xf8\xb9\xb5Kp\x9d\xf0\xa2\x8d\xa4W\x84\xbe#\xf1\xff($9M\x94g\x06G\x00\x00\x00\x00IEND\xaeB`\x82", + "images/minus.gif": "GIF89a\x09\x00\x09\x00\xf0\x02\x00\x00\x00\x00\x80\x80\x80!\xf9\x04\x05\x00\x00\x02\x00,\x00\x00\x00\x00\x09\x00\x09\x00@\x02\x11\x8c\x8f\x89\x02\xddb\x84\x9c0\xd0\x19o\xd5[\xe7\x1b\x14\x00;", "images/plus.gif": "GIF89a\x09\x00\x09\x00\xf0\x02\x00\x00\x00\x00\x80\x80\x80!\xf9\x04\x05\x00\x00\x02\x00,\x00\x00\x00\x00\x09\x00\x09\x00\x00\x02\x14\x8c\x8f\xa2+\xb6\xb0\x9c\x82\xca\x81{[xq\xcf\xcet\x08R\x00\x00;", @@ -83,7 +85,7 @@ var Files = map[string]string{ "package.html": "\x0a\x0a{{with\x20.PDoc}}\x0a\x09\x0a\x0a\x09{{if\x20$.IsMain}}\x0a\x09\x09{{/*\x20command\x20documentation\x20*/}}\x0a\x09\x09{{comment_html\x20.Doc}}\x0a\x09{{else}}\x0a\x09\x09{{/*\x20package\x20documentation\x20*/}}\x0a\x09\x09\x0a\x09\x09\x09
        \x0a\x09\x09\x09
        import\x20\"{{html\x20.ImportPath}}\"
        \x0a\x09\x09\x09
        \x0a\x09\x09\x09
        \x0a\x09\x09\x09
        Overview
        \x0a\x09\x09\x09
        Index
        \x0a\x09\x09\x09{{if\x20$.Examples}}\x0a\x09\x09\x09\x09
        Examples
        \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09{{if\x20$.Dirs}}\x0a\x09\x09\x09\x09
        Subdirectories
        \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09
        \x0a\x09\x09\x0a\x09\x09\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Overview\x20\xe2\x96\xb9\x0a\x09\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Overview\x20\xe2\x96\xbe\x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09{{example_html\x20$\x20\"\"}}\x0a\x09\x09\x09\x0a\x09\x09\x0a\x0a\x09\x09\x0a\x09\x09\x0a\x09\x09\x09Index\x20\xe2\x96\xb9\x0a\x09\x09\x0a\x09\x09\x0a\x09\x09\x09Index\x20\xe2\x96\xbe\x0a\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09
        \x0a\x09\x09\x09{{if\x20.Consts}}\x0a\x09\x09\x09\x09
        Constants
        \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09{{if\x20.Vars}}\x0a\x09\x09\x09\x09
        Variables
        \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09{{range\x20.Funcs}}\x0a\x09\x09\x09\x09{{$name_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09\x09
        {{node_html\x20$\x20.Decl\x20false\x20|\x20sanitize}}
        \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09{{range\x20.Types}}\x0a\x09\x09\x09\x09{{$tname_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09\x09
        type\x20{{$tname_html}}
        \x0a\x09\x09\x09\x09{{range\x20.Funcs}}\x0a\x09\x09\x09\x09\x09{{$name_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09\x09\x09
         \x20 \x20{{node_html\x20$\x20.Decl\x20false\x20|\x20sanitize}}
        \x0a\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09{{range\x20.Methods}}\x0a\x09\x09\x09\x09\x09{{$name_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09\x09\x09
         \x20 \x20{{node_html\x20$\x20.Decl\x20false\x20|\x20sanitize}}
        \x0a\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09{{if\x20$.Notes}}\x0a\x09\x09\x09\x09{{range\x20$marker,\x20$item\x20:=\x20$.Notes}}\x0a\x09\x09\x09\x09
        {{noteTitle\x20$marker\x20|\x20html}}s
        \x0a\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09
        \x0a\x09\x09\x09\x0a\x0a\x09\x09{{if\x20$.Examples}}\x0a\x09\x09\x0a\x09\x09\x09

        Examples

        \x0a\x09\x09\x09(Expand\x20All)\x0a\x09\x09\x09
        \x0a\x09\x09\x09{{range\x20$.Examples}}\x0a\x09\x09\x09
        {{example_name\x20.Name}}
        \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09
        \x0a\x09\x09\x0a\x09\x09{{end}}\x0a\x0a\x09\x09{{with\x20.Filenames}}\x0a\x09\x09\x09

        Package\x20files

        \x0a\x09\x09\x09

        \x0a\x09\x09\x09\x0a\x09\x09\x09{{range\x20.}}\x0a\x09\x09\x09\x09{{.|filename|html}}\x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09\x0a\x09\x09\x09

        \x0a\x09\x09{{end}}\x0a\x09\x09\x0a\x09\x09\x0a\x0a\x09\x09{{if\x20ne\x20$.CallGraph\x20\"null\"}}\x0a\x09\x09\x0a\x09\x09\x0a\x09\x09\x09Internal\x20call\x20graph\x20\xe2\x96\xb9\x0a\x09\x09\x20\x0a\x09\x09\x0a\x09\x09\x09Internal\x20call\x20graph\x20\xe2\x96\xbe\x0a\x09\x09\x09

        \x0a\x09\x09\x09\x20\x20In\x20the\x20call\x20graph\x20viewer\x20below,\x20each\x20node\x0a\x09\x09\x09\x20\x20is\x20a\x20function\x20belonging\x20to\x20this\x20package\x0a\x09\x09\x09\x20\x20and\x20its\x20children\x20are\x20the\x20functions\x20it\x0a\x09\x09\x09\x20\x20calls—perhaps\x20dynamically.\x0a\x09\x09\x09

        \x0a\x09\x09\x09

        \x0a\x09\x09\x09\x20\x20The\x20root\x20nodes\x20are\x20the\x20entry\x20points\x20of\x20the\x0a\x09\x09\x09\x20\x20package:\x20functions\x20that\x20may\x20be\x20called\x20from\x0a\x09\x09\x09\x20\x20outside\x20the\x20package.\x0a\x09\x09\x09\x20\x20There\x20may\x20be\x20non-exported\x20or\x20anonymous\x0a\x09\x09\x09\x20\x20functions\x20among\x20them\x20if\x20they\x20are\x20called\x0a\x09\x09\x09\x20\x20dynamically\x20from\x20another\x20package.\x0a\x09\x09\x09

        \x0a\x09\x09\x09

        \x0a\x09\x09\x09\x20\x20Click\x20a\x20node\x20to\x20visit\x20that\x20function's\x20source\x20code.\x0a\x09\x09\x09\x20\x20From\x20there\x20you\x20can\x20visit\x20its\x20callers\x20by\x0a\x09\x09\x09\x20\x20clicking\x20its\x20declaring\x20func\x0a\x09\x09\x09\x20\x20token.\x0a\x09\x09\x09

        \x0a\x09\x09\x09

        \x0a\x09\x09\x09\x20\x20Functions\x20may\x20be\x20omitted\x20if\x20they\x20were\x0a\x09\x09\x09\x20\x20determined\x20to\x20be\x20unreachable\x20in\x20the\x0a\x09\x09\x09\x20\x20particular\x20programs\x20or\x20tests\x20that\x20were\x0a\x09\x09\x09\x20\x20analyzed.\x0a\x09\x09\x09

        \x0a\x09\x09\x09\x0a\x09\x09\x09
      \x0a\x09\x09\x0a\x09\x09\x20\x0a\x09\x09{{end}}\x0a\x0a\x09\x09{{with\x20.Consts}}\x0a\x09\x09\x09Constants\x0a\x09\x09\x09{{range\x20.}}\x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09{{end}}\x0a\x09\x09{{end}}\x0a\x09\x09{{with\x20.Vars}}\x0a\x09\x09\x09Variables\x0a\x09\x09\x09{{range\x20.}}\x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09{{end}}\x0a\x09\x09{{end}}\x0a\x09\x09{{range\x20.Funcs}}\x0a\x09\x09\x09{{/*\x20Name\x20is\x20a\x20string\x20-\x20no\x20need\x20for\x20FSet\x20*/}}\x0a\x09\x09\x09{{$name_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09func\x20{{$name_html}}\x0a\x09\x09\x09\x09¶\x0a\x09\x09\x09\x09{{$since\x20:=\x20since\x20\"func\"\x20\"\"\x20.Name\x20$.PDoc.ImportPath}}\x0a\x09\x09\x09\x09{{if\x20$since}}{{$since}}{{end}}\x0a\x09\x09\x09\x0a\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09{{example_html\x20$\x20.Name}}\x0a\x09\x09\x09{{callgraph_html\x20$\x20\"\"\x20.Name}}\x0a\x0a\x09\x09{{end}}\x0a\x09\x09{{range\x20.Types}}\x0a\x09\x09\x09{{$tname\x20:=\x20.Name}}\x0a\x09\x09\x09{{$tname_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09type\x20{{$tname_html}}\x0a\x09\x09\x09\x09¶\x0a\x09\x09\x09\x09{{$since\x20:=\x20since\x20\"type\"\x20\"\"\x20.Name\x20$.PDoc.ImportPath}}\x0a\x09\x09\x09\x09{{if\x20$since}}{{$since}}{{end}}\x0a\x09\x09\x09\x0a\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x0a\x09\x09\x09{{range\x20.Consts}}\x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09{{end}}\x0a\x0a\x09\x09\x09{{range\x20.Vars}}\x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09{{end}}\x0a\x0a\x09\x09\x09{{example_html\x20$\x20$tname}}\x0a\x09\x09\x09{{implements_html\x20$\x20$tname}}\x0a\x09\x09\x09{{methodset_html\x20$\x20$tname}}\x0a\x0a\x09\x09\x09{{range\x20.Funcs}}\x0a\x09\x09\x09\x09{{$name_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09\x09func\x20{{$name_html}}\x0a\x09\x09\x09\x09\x09¶\x0a\x09\x09\x09\x09\x09{{$since\x20:=\x20since\x20\"func\"\x20\"\"\x20.Name\x20$.PDoc.ImportPath}}\x0a\x09\x09\x09\x09\x09{{if\x20$since}}{{$since}}{{end}}\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09{{example_html\x20$\x20.Name}}\x0a\x09\x09\x09\x09{{callgraph_html\x20$\x20\"\"\x20.Name}}\x0a\x09\x09\x09{{end}}\x0a\x0a\x09\x09\x09{{range\x20.Methods}}\x0a\x09\x09\x09\x09{{$name_html\x20:=\x20html\x20.Name}}\x0a\x09\x09\x09\x09func\x20({{html\x20.Recv}})\x20{{$name_html}}\x0a\x09\x09\x09\x09\x09¶\x0a\x09\x09\x09\x09\x09{{$since\x20:=\x20since\x20\"method\"\x20.Recv\x20.Name\x20$.PDoc.ImportPath}}\x0a\x09\x09\x09\x09\x09{{if\x20$since}}{{$since}}{{end}}\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09
      {{node_html\x20$\x20.Decl\x20true}}
      \x0a\x09\x09\x09\x09{{comment_html\x20.Doc}}\x0a\x09\x09\x09\x09{{$name\x20:=\x20printf\x20\"%s_%s\"\x20$tname\x20.Name}}\x0a\x09\x09\x09\x09{{example_html\x20$\x20$name}}\x0a\x09\x09\x09\x09{{callgraph_html\x20$\x20.Recv\x20.Name}}\x0a\x09\x09\x09{{end}}\x0a\x09\x09{{end}}\x0a\x09{{end}}\x0a\x0a\x09{{with\x20$.Notes}}\x0a\x09\x09{{range\x20$marker,\x20$content\x20:=\x20.}}\x0a\x09\x09\x09{{noteTitle\x20$marker\x20|\x20html}}s\x0a\x09\x09\x09\x0a\x09\x09\x09{{range\x20.}}\x0a\x09\x09\x09
    • ☞\x20{{comment_html\x20.Body}}
    • \x0a\x09\x09\x09{{end}}\x0a\x09\x09\x09
    \x0a\x09\x09{{end}}\x0a\x09{{end}}\x0a{{end}}\x0a\x0a{{with\x20.PAst}}\x0a\x09{{range\x20$filename,\x20$ast\x20:=\x20.}}\x0a\x09\x09{{$filename|filename|html}}:
    {{node_html\x20$\x20$ast\x20false}}
    \x0a\x09{{end}}\x0a{{end}}\x0a\x0a{{with\x20.Dirs}}\x0a\x09{{/*\x20DirList\x20entries\x20are\x20numbers\x20and\x20strings\x20-\x20no\x20need\x20for\x20FSet\x20*/}}\x0a\x09{{if\x20$.PDoc}}\x0a\x09\x09Subdirectories\x0a\x09{{end}}\x0a\x09\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Name\x0a\x09\x09\x09\x09Synopsis\x0a\x09\x09\x09\x0a\x0a\x09\x09\x09{{if\x20not\x20(or\x20(eq\x20$.Dirname\x20\"/src/cmd\")\x20$.DirFlat)}}\x0a\x09\x09\x09\x0a\x09\x09\x09\x09..\x0a\x09\x09\x09\x0a\x09\x09\x09{{end}}\x0a\x0a\x09\x09\x09{{range\x20.List}}\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09{{if\x20$.DirFlat}}\x0a\x09\x09\x09\x09\x09{{if\x20.HasPkg}}\x0a\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{html\x20.Path}}\x0a\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09{{else}}\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09{{html\x20.Name}}\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09{{html\x20.Synopsis}}\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x0a\x09\x09\x09{{end}}\x0a\x09\x09
    \x0a\x09\x0a{{end}}\x0a", - "packageroot.html": "\x0a\x0a{{with\x20.PAst}}\x0a\x09{{range\x20$filename,\x20$ast\x20:=\x20.}}\x0a\x09\x09{{$filename|filename|html}}:
    {{node_html\x20$\x20$ast\x20false}}
    \x0a\x09{{end}}\x0a{{end}}\x0a\x0a{{with\x20.Dirs}}\x0a\x09{{/*\x20DirList\x20entries\x20are\x20numbers\x20and\x20strings\x20-\x20no\x20need\x20for\x20FSet\x20*/}}\x0a\x09{{if\x20$.PDoc}}\x0a\x09\x09Subdirectories\x0a\x09{{end}}\x0a\x09\x09\x0a\x09\x09\x09
    \x0a\x09\x09\x09\x09
    Standard\x20library
    \x0a\x09\x09\x09\x09{{if\x20hasThirdParty\x20.List\x20}}\x0a\x09\x09\x09\x09\x09
    Third\x20party
    \x0a\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09
    Other\x20packages
    \x0a\x09\x09\x09\x09
    Sub-repositories
    \x0a\x09\x09\x09\x09
    Community
    \x0a\x09\x09\x09
    \x0a\x09\x09\x0a\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Standard\x20library\x20\xe2\x96\xb9\x0a\x09\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Standard\x20library\x20\xe2\x96\xbe\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09Name\x0a\x09\x09\x09\x09\x09\x09\x09Synopsis\x0a\x09\x09\x09\x09\x09\x09\x0a\x0a\x09\x09\x09\x09\x09\x09{{range\x20.List}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{if\x20eq\x20.RootType\x20\"GOROOT\"}}\x0a\x09\x09\x09\x09\x09\x09\x09{{if\x20$.DirFlat}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20.HasPkg}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Path}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09{{else}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Name}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Synopsis}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09
    \x0a\x09\x09\x09\x09\x20\x0a\x09\x09\x09\x20\x0a\x09\x09\x20\x0a\x0a\x09{{if\x20hasThirdParty\x20.List\x20}}\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Third\x20party\x20\xe2\x96\xb9\x0a\x09\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Third\x20party\x20\xe2\x96\xbe\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09Name\x0a\x09\x09\x09\x09\x09\x09\x09Synopsis\x0a\x09\x09\x09\x09\x09\x09\x0a\x0a\x09\x09\x09\x09\x09\x09{{range\x20.List}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20eq\x20.RootType\x20\"GOPATH\"}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20$.DirFlat}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20.HasPkg}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Path}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{else}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Name}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Synopsis}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09
    \x0a\x09\x09\x09\x09\x20\x0a\x09\x09\x09\x20\x0a\x09\x09\x20\x0a\x09{{end}}\x0a\x0a\x09Other\x20packages\x0a\x09Sub-repositories\x0a\x09

    \x0a\x09These\x20packages\x20are\x20part\x20of\x20the\x20Go\x20Project\x20but\x20outside\x20the\x20main\x20Go\x20tree.\x0a\x09They\x20are\x20developed\x20under\x20looser\x20compatibility\x20requirements\x20than\x20the\x20Go\x20core.\x0a\x09Install\x20them\x20with\x20\"go\x20get\".\x0a\x09

    \x0a\x09
      \x0a\x09\x09
    • benchmarks\x20\xe2\x80\x94\x20benchmarks\x20to\x20measure\x20Go\x20as\x20it\x20is\x20developed.
    • \x0a\x09\x09
    • blog\x20\xe2\x80\x94\x20blog.golang.org's\x20implementation.
    • \x0a\x09\x09
    • build\x20\xe2\x80\x94\x20build.golang.org's\x20implementation.
    • \x0a\x09\x09
    • crypto\x20\xe2\x80\x94\x20additional\x20cryptography\x20packages.
    • \x0a\x09\x09
    • debug\x20\xe2\x80\x94\x20an\x20experimental\x20debugger\x20for\x20Go.
    • \x0a\x09\x09
    • image\x20\xe2\x80\x94\x20additional\x20imaging\x20packages.
    • \x0a\x09\x09
    • mobile\x20\xe2\x80\x94\x20experimental\x20support\x20for\x20Go\x20on\x20mobile\x20platforms.
    • \x0a\x09\x09
    • net\x20\xe2\x80\x94\x20additional\x20networking\x20packages.
    • \x0a\x09\x09
    • perf\x20\xe2\x80\x94\x20packages\x20and\x20tools\x20for\x20performance\x20measurement,\x20storage,\x20and\x20analysis.
    • \x0a\x09\x09
    • pkgsite\x20\xe2\x80\x94\x20home\x20of\x20the\x20pkg.go.dev\x20website.
    • \x0a\x09\x09
    • review\x20\xe2\x80\x94\x20a\x20tool\x20for\x20working\x20with\x20Gerrit\x20code\x20reviews.
    • \x0a\x09\x09
    • sync\x20\xe2\x80\x94\x20additional\x20concurrency\x20primitives.
    • \x0a\x09\x09
    • sys\x20\xe2\x80\x94\x20packages\x20for\x20making\x20system\x20calls.
    • \x0a\x09\x09
    • text\x20\xe2\x80\x94\x20packages\x20for\x20working\x20with\x20text.
    • \x0a\x09\x09
    • time\x20\xe2\x80\x94\x20additional\x20time\x20packages.
    • \x0a\x09\x09
    • tools\x20\xe2\x80\x94\x20godoc,\x20goimports,\x20gorename,\x20and\x20other\x20tools.
    • \x0a\x09\x09
    • tour\x20\xe2\x80\x94\x20tour.golang.org's\x20implementation.
    • \x0a\x09\x09
    • exp\x20\xe2\x80\x94\x20experimental\x20and\x20deprecated\x20packages\x20(handle\x20with\x20care;\x20may\x20change\x20without\x20warning).
    • \x0a\x09
    \x0a\x0a\x09Community\x0a\x09

    \x0a\x09These\x20services\x20can\x20help\x20you\x20find\x20Open\x20Source\x20packages\x20provided\x20by\x20the\x20community.\x0a\x09

    \x0a\x09
      \x0a\x09\x09
    • Pkg.go.dev\x20-\x20the\x20Go\x20package\x20discovery\x20site.
    • \x0a\x09\x09
    • Projects\x20at\x20the\x20Go\x20Wiki\x20-\x20a\x20curated\x20list\x20of\x20Go\x20projects.
    • \x0a\x09
    \x0a{{end}}\x0a", + "packageroot.html": "\x0a\x0a{{with\x20.PAst}}\x0a\x09{{range\x20$filename,\x20$ast\x20:=\x20.}}\x0a\x09\x09{{$filename|filename|html}}:
    {{node_html\x20$\x20$ast\x20false}}
    \x0a\x09{{end}}\x0a{{end}}\x0a\x0a{{with\x20.Dirs}}\x0a\x09{{/*\x20DirList\x20entries\x20are\x20numbers\x20and\x20strings\x20-\x20no\x20need\x20for\x20FSet\x20*/}}\x0a\x09{{if\x20$.PDoc}}\x0a\x09\x09Subdirectories\x0a\x09{{end}}\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09
    \x0a\x09\x09\x09\x09
    Standard\x20library
    \x0a\x09\x09\x09\x09{{if\x20hasThirdParty\x20.List\x20}}\x0a\x09\x09\x09\x09\x09
    Third\x20party
    \x0a\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09
    Other\x20packages
    \x0a\x09\x09\x09\x09
    Sub-repositories
    \x0a\x09\x09\x09\x09
    Community
    \x0a\x09\x09\x09
    \x0a\x09\x09\x0a\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Standard\x20library\x20\xe2\x96\xb9\x0a\x09\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Standard\x20library\x20\xe2\x96\xbe\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09Name\x0a\x09\x09\x09\x09\x09\x09\x09Synopsis\x0a\x09\x09\x09\x09\x09\x09\x0a\x0a\x09\x09\x09\x09\x09\x09{{range\x20.List}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{if\x20eq\x20.RootType\x20\"GOROOT\"}}\x0a\x09\x09\x09\x09\x09\x09\x09{{if\x20$.DirFlat}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20.HasPkg}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Path}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09{{else}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Name}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Synopsis}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09
    \x0a\x09\x09\x09\x09\x20\x0a\x09\x09\x09\x20\x0a\x09\x09\x20\x0a\x0a\x09{{if\x20hasThirdParty\x20.List\x20}}\x0a\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Third\x20party\x20\xe2\x96\xb9\x0a\x09\x09\x09\x0a\x09\x09\x09\x0a\x09\x09\x09\x09Third\x20party\x20\xe2\x96\xbe\x0a\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09Name\x0a\x09\x09\x09\x09\x09\x09\x09Synopsis\x0a\x09\x09\x09\x09\x09\x09\x0a\x0a\x09\x09\x09\x09\x09\x09{{range\x20.List}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20eq\x20.RootType\x20\"GOPATH\"}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20$.DirFlat}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09{{if\x20.HasPkg}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Path}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{else}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Name}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x09{{html\x20.Synopsis}}\x0a\x09\x09\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09\x09\x09\x0a\x09\x09\x09\x09\x09\x09{{end}}\x0a\x09\x09\x09\x09\x09
    \x0a\x09\x09\x09\x09\x20\x0a\x09\x09\x09\x20\x0a\x09\x09\x20\x0a\x09{{end}}\x0a\x0a\x09Other\x20packages\x0a\x09Sub-repositories\x0a\x09

    \x0a\x09These\x20packages\x20are\x20part\x20of\x20the\x20Go\x20Project\x20but\x20outside\x20the\x20main\x20Go\x20tree.\x0a\x09They\x20are\x20developed\x20under\x20looser\x20compatibility\x20requirements\x20than\x20the\x20Go\x20core.\x0a\x09Install\x20them\x20with\x20\"go\x20get\".\x0a\x09

    \x0a\x09
      \x0a\x09\x09
    • benchmarks\x20\xe2\x80\x94\x20benchmarks\x20to\x20measure\x20Go\x20as\x20it\x20is\x20developed.
    • \x0a\x09\x09
    • blog\x20\xe2\x80\x94\x20blog.golang.org's\x20implementation.
    • \x0a\x09\x09
    • build\x20\xe2\x80\x94\x20build.golang.org's\x20implementation.
    • \x0a\x09\x09
    • crypto\x20\xe2\x80\x94\x20additional\x20cryptography\x20packages.
    • \x0a\x09\x09
    • debug\x20\xe2\x80\x94\x20an\x20experimental\x20debugger\x20for\x20Go.
    • \x0a\x09\x09
    • image\x20\xe2\x80\x94\x20additional\x20imaging\x20packages.
    • \x0a\x09\x09
    • mobile\x20\xe2\x80\x94\x20experimental\x20support\x20for\x20Go\x20on\x20mobile\x20platforms.
    • \x0a\x09\x09
    • net\x20\xe2\x80\x94\x20additional\x20networking\x20packages.
    • \x0a\x09\x09
    • perf\x20\xe2\x80\x94\x20packages\x20and\x20tools\x20for\x20performance\x20measurement,\x20storage,\x20and\x20analysis.
    • \x0a\x09\x09
    • pkgsite\x20\xe2\x80\x94\x20home\x20of\x20the\x20pkg.go.dev\x20website.
    • \x0a\x09\x09
    • review\x20\xe2\x80\x94\x20a\x20tool\x20for\x20working\x20with\x20Gerrit\x20code\x20reviews.
    • \x0a\x09\x09
    • sync\x20\xe2\x80\x94\x20additional\x20concurrency\x20primitives.
    • \x0a\x09\x09
    • sys\x20\xe2\x80\x94\x20packages\x20for\x20making\x20system\x20calls.
    • \x0a\x09\x09
    • text\x20\xe2\x80\x94\x20packages\x20for\x20working\x20with\x20text.
    • \x0a\x09\x09
    • time\x20\xe2\x80\x94\x20additional\x20time\x20packages.
    • \x0a\x09\x09
    • tools\x20\xe2\x80\x94\x20godoc,\x20goimports,\x20gorename,\x20and\x20other\x20tools.
    • \x0a\x09\x09
    • tour\x20\xe2\x80\x94\x20tour.golang.org's\x20implementation.
    • \x0a\x09\x09
    • exp\x20\xe2\x80\x94\x20experimental\x20and\x20deprecated\x20packages\x20(handle\x20with\x20care;\x20may\x20change\x20without\x20warning).
    • \x0a\x09
    \x0a\x0a\x09Community\x0a\x09

    \x0a\x09These\x20services\x20can\x20help\x20you\x20find\x20Open\x20Source\x20packages\x20provided\x20by\x20the\x20community.\x0a\x09

    \x0a\x09
      \x0a\x09\x09
    • Pkg.go.dev\x20-\x20the\x20Go\x20package\x20discovery\x20site.
    • \x0a\x09\x09
    • Projects\x20at\x20the\x20Go\x20Wiki\x20-\x20a\x20curated\x20list\x20of\x20Go\x20projects.
    • \x0a\x09
    \x0a{{end}}\x0a", "play.js": "//\x20Copyright\x202012\x20The\x20Go\x20Authors.\x20All\x20rights\x20reserved.\x0a//\x20Use\x20of\x20this\x20source\x20code\x20is\x20governed\x20by\x20a\x20BSD-style\x0a//\x20license\x20that\x20can\x20be\x20found\x20in\x20the\x20LICENSE\x20file.\x0a\x0afunction\x20initPlayground(transport)\x20{\x0a\x20\x20'use\x20strict';\x0a\x0a\x20\x20function\x20text(node)\x20{\x0a\x20\x20\x20\x20var\x20s\x20=\x20'';\x0a\x20\x20\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20node.childNodes.length;\x20i++)\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20n\x20=\x20node.childNodes[i];\x0a\x20\x20\x20\x20\x20\x20if\x20(n.nodeType\x20===\x201)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(n.tagName\x20===\x20'BUTTON')\x20continue;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(n.tagName\x20===\x20'SPAN'\x20&&\x20n.className\x20===\x20'number')\x20continue;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(n.tagName\x20===\x20'DIV'\x20||\x20n.tagName\x20===\x20'BR'\x20||\x20n.tagName\x20===\x20'PRE')\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20s\x20+=\x20'\\n';\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20s\x20+=\x20text(n);\x0a\x20\x20\x20\x20\x20\x20\x20\x20continue;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20if\x20(n.nodeType\x20===\x203)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20s\x20+=\x20n.nodeValue;\x0a\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20}\x0a\x20\x20\x20\x20return\x20s.replace('\\xA0',\x20'\x20');\x20//\x20replace\x20non-breaking\x20spaces\x0a\x20\x20}\x0a\x0a\x20\x20//\x20When\x20presenter\x20notes\x20are\x20enabled,\x20the\x20index\x20passed\x0a\x20\x20//\x20here\x20will\x20identify\x20the\x20playground\x20to\x20be\x20synced\x0a\x20\x20function\x20init(code,\x20index)\x20{\x0a\x20\x20\x20\x20var\x20output\x20=\x20document.createElement('div');\x0a\x20\x20\x20\x20var\x20outpre\x20=\x20document.createElement('pre');\x0a\x20\x20\x20\x20var\x20running;\x0a\x0a\x20\x20\x20\x20if\x20($\x20&&\x20$(output).resizable)\x20{\x0a\x20\x20\x20\x20\x20\x20$(output).resizable({\x0a\x20\x20\x20\x20\x20\x20\x20\x20handles:\x20'n,w,nw',\x0a\x20\x20\x20\x20\x20\x20\x20\x20minHeight:\x2027,\x0a\x20\x20\x20\x20\x20\x20\x20\x20minWidth:\x20135,\x0a\x20\x20\x20\x20\x20\x20\x20\x20maxHeight:\x20608,\x0a\x20\x20\x20\x20\x20\x20\x20\x20maxWidth:\x20990,\x0a\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20function\x20onKill()\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(running)\x20running.Kill();\x0a\x20\x20\x20\x20\x20\x20if\x20(window.notesEnabled)\x20updatePlayStorage('onKill',\x20index);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20function\x20onRun(e)\x20{\x0a\x20\x20\x20\x20\x20\x20var\x20sk\x20=\x20e.shiftKey\x20||\x20localStorage.getItem('play-shiftKey')\x20===\x20'true';\x0a\x20\x20\x20\x20\x20\x20if\x20(running)\x20running.Kill();\x0a\x20\x20\x20\x20\x20\x20output.style.display\x20=\x20'block';\x0a\x20\x20\x20\x20\x20\x20outpre.textContent\x20=\x20'';\x0a\x20\x20\x20\x20\x20\x20run1.style.display\x20=\x20'none';\x0a\x20\x20\x20\x20\x20\x20var\x20options\x20=\x20{\x20Race:\x20sk\x20};\x0a\x20\x20\x20\x20\x20\x20running\x20=\x20transport.Run(text(code),\x20PlaygroundOutput(outpre),\x20options);\x0a\x20\x20\x20\x20\x20\x20if\x20(window.notesEnabled)\x20updatePlayStorage('onRun',\x20index,\x20e);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20function\x20onClose()\x20{\x0a\x20\x20\x20\x20\x20\x20if\x20(running)\x20running.Kill();\x0a\x20\x20\x20\x20\x20\x20output.style.display\x20=\x20'none';\x0a\x20\x20\x20\x20\x20\x20run1.style.display\x20=\x20'inline-block';\x0a\x20\x20\x20\x20\x20\x20if\x20(window.notesEnabled)\x20updatePlayStorage('onClose',\x20index);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20if\x20(window.notesEnabled)\x20{\x0a\x20\x20\x20\x20\x20\x20playgroundHandlers.onRun.push(onRun);\x0a\x20\x20\x20\x20\x20\x20playgroundHandlers.onClose.push(onClose);\x0a\x20\x20\x20\x20\x20\x20playgroundHandlers.onKill.push(onKill);\x0a\x20\x20\x20\x20}\x0a\x0a\x20\x20\x20\x20var\x20run1\x20=\x20document.createElement('button');\x0a\x20\x20\x20\x20run1.textContent\x20=\x20'Run';\x0a\x20\x20\x20\x20run1.className\x20=\x20'run';\x0a\x20\x20\x20\x20run1.addEventListener('click',\x20onRun,\x20false);\x0a\x20\x20\x20\x20var\x20run2\x20=\x20document.createElement('button');\x0a\x20\x20\x20\x20run2.className\x20=\x20'run';\x0a\x20\x20\x20\x20run2.textContent\x20=\x20'Run';\x0a\x20\x20\x20\x20run2.addEventListener('click',\x20onRun,\x20false);\x0a\x20\x20\x20\x20var\x20kill\x20=\x20document.createElement('button');\x0a\x20\x20\x20\x20kill.className\x20=\x20'kill';\x0a\x20\x20\x20\x20kill.textContent\x20=\x20'Kill';\x0a\x20\x20\x20\x20kill.addEventListener('click',\x20onKill,\x20false);\x0a\x20\x20\x20\x20var\x20close\x20=\x20document.createElement('button');\x0a\x20\x20\x20\x20close.className\x20=\x20'close';\x0a\x20\x20\x20\x20close.textContent\x20=\x20'Close';\x0a\x20\x20\x20\x20close.addEventListener('click',\x20onClose,\x20false);\x0a\x0a\x20\x20\x20\x20var\x20button\x20=\x20document.createElement('div');\x0a\x20\x20\x20\x20button.classList.add('buttons');\x0a\x20\x20\x20\x20button.appendChild(run1);\x0a\x20\x20\x20\x20//\x20Hack\x20to\x20simulate\x20insertAfter\x0a\x20\x20\x20\x20code.parentNode.insertBefore(button,\x20code.nextSibling);\x0a\x0a\x20\x20\x20\x20var\x20buttons\x20=\x20document.createElement('div');\x0a\x20\x20\x20\x20buttons.classList.add('buttons');\x0a\x20\x20\x20\x20buttons.appendChild(run2);\x0a\x20\x20\x20\x20buttons.appendChild(kill);\x0a\x20\x20\x20\x20buttons.appendChild(close);\x0a\x0a\x20\x20\x20\x20output.classList.add('output');\x0a\x20\x20\x20\x20output.appendChild(buttons);\x0a\x20\x20\x20\x20output.appendChild(outpre);\x0a\x20\x20\x20\x20output.style.display\x20=\x20'none';\x0a\x20\x20\x20\x20code.parentNode.insertBefore(output,\x20button.nextSibling);\x0a\x20\x20}\x0a\x0a\x20\x20var\x20play\x20=\x20document.querySelectorAll('div.playground');\x0a\x20\x20for\x20(var\x20i\x20=\x200;\x20i\x20<\x20play.length;\x20i++)\x20{\x0a\x20\x20\x20\x20init(play[i],\x20i);\x0a\x20\x20}\x0a}\x0a", @@ -97,5 +99,5 @@ var Files = map[string]string{ "searchtxt.html": "\x0a{{$query_url\x20:=\x20urlquery\x20.Query}}\x0a{{with\x20.Textual}}\x0a\x09{{if\x20$.Complete}}\x0a\x09\x09{{html\x20$.Found}}\x20textual\x20occurrences\x0a\x09{{else}}\x0a\x09\x09More\x20than\x20{{html\x20$.Found}}\x20textual\x20occurrences\x0a\x09\x09

    \x0a\x09\x09Not\x20all\x20files\x20or\x20lines\x20containing\x20\"{{html\x20$.Query}}\"\x20are\x20shown.\x0a\x09\x09

    \x0a\x09{{end}}\x0a\x09

    \x0a\x09\x0a\x09{{range\x20.}}\x0a\x09\x09{{$file\x20:=\x20.Filename}}\x0a\x09\x09

  • \x0a\x09

    \x0a{{end}}\x0a", - "style.css": "body\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20font-family:\x20Arial,\x20sans-serif;\x0a\x20\x20background-color:\x20#fff;\x0a\x20\x20line-height:\x201.3;\x0a\x20\x20text-align:\x20center;\x0a\x20\x20color:\x20#222;\x0a}\x0atextarea\x20{\x0a\x20\x20/*\x20Inherit\x20text\x20color\x20from\x20body\x20avoiding\x20illegible\x20text\x20in\x20the\x20case\x20where\x20the\x0a\x20\x09*\x20user\x20has\x20inverted\x20the\x20browsers\x20custom\x20text\x20and\x20background\x20colors.\x20*/\x0a\x20\x20color:\x20inherit;\x0a}\x0apre,\x0acode\x20{\x0a\x20\x20font-family:\x20Menlo,\x20monospace;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0apre\x20{\x0a\x20\x20line-height:\x201.4;\x0a\x20\x20overflow-x:\x20auto;\x0a}\x0apre\x20.comment\x20{\x0a\x20\x20color:\x20#006600;\x0a}\x0apre\x20.highlight,\x0apre\x20.highlight-comment,\x0apre\x20.selection-highlight,\x0apre\x20.selection-highlight-comment\x20{\x0a\x20\x20background:\x20#ffff00;\x0a}\x0apre\x20.selection,\x0apre\x20.selection-comment\x20{\x0a\x20\x20background:\x20#ff9632;\x0a}\x0apre\x20.ln\x20{\x0a\x20\x20color:\x20#999;\x0a\x20\x20background:\x20#efefef;\x0a}\x0a.ln\x20{\x0a\x20\x20-webkit-user-select:\x20none;\x0a\x20\x20-moz-user-select:\x20none;\x0a\x20\x20-ms-user-select:\x20none;\x0a\x20\x20user-select:\x20none;\x0a\x0a\x20\x20/*\x20Ensure\x208\x20characters\x20in\x20the\x20document\x20-\x20which\x20due\x20to\x20floating\x0a\x20\x20\x20*\x20point\x20rendering\x20issues,\x20might\x20have\x20a\x20width\x20of\x20less\x20than\x201\x20each\x20-\x20are\x208\x0a\x20\x20\x20*\x20characters\x20wide,\x20so\x20a\x20tab\x20in\x20the\x209th\x20position\x20indents\x20properly.\x20See\x0a\x20\x20\x20*\x20https://github.com/webcompat/web-bugs/issues/17530#issuecomment-402675091\x0a\x20\x20\x20*\x20for\x20more\x20information.\x20*/\x0a\x20\x20display:\x20inline-block;\x0a\x20\x20width:\x208ch;\x0a}\x0a\x0a.search-nav\x20{\x0a\x20\x20margin-left:\x201.25rem;\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20column-gap:\x201.25rem;\x0a\x20\x20column-fill:\x20auto;\x0a\x20\x20column-width:\x2014rem;\x0a}\x0a\x0a.search-nav\x20.indent\x20{\x0a\x20\x20margin-left:\x201.25rem;\x0a}\x0a\x0aa,\x0a.exampleHeading\x20.text,\x0a.expandAll\x20{\x0a\x20\x20color:\x20#375eab;\x0a\x20\x20text-decoration:\x20none;\x0a}\x0aa:hover,\x0a.exampleHeading\x20.text:hover,\x0a.expandAll:hover\x20{\x0a\x20\x20text-decoration:\x20underline;\x0a}\x0a.article\x20a\x20{\x0a\x20\x20text-decoration:\x20underline;\x0a}\x0a.article\x20.title\x20a\x20{\x0a\x20\x20text-decoration:\x20none;\x0a}\x0a\x0a.permalink\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a:hover\x20>\x20.permalink\x20{\x0a\x20\x20display:\x20inline;\x0a}\x0a\x0ap,\x0ali\x20{\x0a\x20\x20max-width:\x2050rem;\x0a\x20\x20word-wrap:\x20break-word;\x0a}\x0ap,\x0apre,\x0aul,\x0aol\x20{\x0a\x20\x20margin:\x201.25rem;\x0a}\x0apre\x20{\x0a\x20\x20background:\x20#efefef;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0a\x0ah1,\x0ah2,\x0ah3,\x0ah4,\x0a.rootHeading\x20{\x0a\x20\x20margin:\x201.25rem\x200\x201.25rem;\x0a\x20\x20padding:\x200;\x0a\x20\x20color:\x20#375eab;\x0a\x20\x20font-weight:\x20bold;\x0a}\x0ah1\x20{\x0a\x20\x20font-size:\x201.75rem;\x0a\x20\x20line-height:\x201;\x0a}\x0ah1\x20.text-muted\x20{\x0a\x20\x20color:\x20#777;\x0a}\x0ah2\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20background:\x20#e0ebf5;\x0a\x20\x20padding:\x200.5rem;\x0a\x20\x20line-height:\x201.25;\x0a\x20\x20font-weight:\x20normal;\x0a\x20\x20overflow:\x20auto;\x0a\x20\x20overflow-wrap:\x20break-word;\x0a}\x0ah2\x20a\x20{\x0a\x20\x20font-weight:\x20bold;\x0a}\x0ah3\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20line-height:\x201.25;\x0a\x20\x20overflow:\x20auto;\x0a\x20\x20overflow-wrap:\x20break-word;\x0a}\x0ah3,\x0ah4\x20{\x0a\x20\x20margin:\x201.25rem\x200.3125rem;\x0a}\x0ah4\x20{\x0a\x20\x20font-size:\x201rem;\x0a}\x0a.rootHeading\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20margin:\x200;\x0a}\x0a\x0ah2\x20>\x20span,\x0ah3\x20>\x20span\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20margin:\x200\x2025px\x200\x200;\x0a\x20\x20font-weight:\x20normal;\x0a\x20\x20color:\x20#5279c7;\x0a}\x0a\x0adl\x20{\x0a\x20\x20margin:\x201.25rem;\x0a}\x0add\x20{\x0a\x20\x20margin:\x200\x200\x200\x201.25rem;\x0a}\x0adl,\x0add\x20{\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv#nav\x20table\x20td\x20{\x0a\x20\x20vertical-align:\x20top;\x0a}\x0a\x0a#pkg-index\x20h3\x20{\x0a\x20\x20font-size:\x201rem;\x0a}\x0a.pkg-dir\x20{\x0a\x20\x20padding:\x200\x200.625rem;\x0a}\x0a.pkg-dir\x20table\x20{\x0a\x20\x20border-collapse:\x20collapse;\x0a\x20\x20border-spacing:\x200;\x0a}\x0a.pkg-name\x20{\x0a\x20\x20padding-right:\x200.625rem;\x0a}\x0a.alert\x20{\x0a\x20\x20color:\x20#aa0000;\x0a}\x0a\x0a.top-heading\x20{\x0a\x20\x20float:\x20left;\x0a\x20\x20padding:\x201.313rem\x200;\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20font-weight:\x20normal;\x0a}\x0a.top-heading\x20a\x20{\x0a\x20\x20color:\x20#222;\x0a\x20\x20text-decoration:\x20none;\x0a}\x0a\x0a#pkg-examples\x20h3\x20{\x0a\x20\x20float:\x20left;\x0a}\x0a\x0a#pkg-examples\x20dl\x20{\x0a\x20\x20clear:\x20both;\x0a}\x0a\x0a.expandAll\x20{\x0a\x20\x20cursor:\x20pointer;\x0a\x20\x20float:\x20left;\x0a\x20\x20margin:\x201.25rem\x200;\x0a}\x0a\x0adiv#topbar\x20{\x0a\x20\x20background:\x20#e0ebf5;\x0a\x20\x20height:\x204rem;\x0a\x20\x20overflow:\x20hidden;\x0a}\x0a\x0adiv#page\x20{\x0a\x20\x20width:\x20100%;\x0a}\x0adiv#page\x20>\x20.container,\x0adiv#topbar\x20>\x20.container\x20{\x0a\x20\x20text-align:\x20left;\x0a\x20\x20margin-left:\x20auto;\x0a\x20\x20margin-right:\x20auto;\x0a\x20\x20padding:\x200\x201.25rem;\x0a}\x0adiv#topbar\x20>\x20.container,\x0adiv#page\x20>\x20.container\x20{\x0a\x20\x20max-width:\x2059.38rem;\x0a}\x0adiv#page.wide\x20>\x20.container,\x0adiv#topbar.wide\x20>\x20.container\x20{\x0a\x20\x20max-width:\x20none;\x0a}\x0adiv#plusone\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20clear:\x20right;\x0a\x20\x20margin-top:\x200.3125rem;\x0a}\x0a\x0adiv#footer\x20{\x0a\x20\x20text-align:\x20center;\x0a\x20\x20color:\x20#666;\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20margin:\x202.5rem\x200;\x0a}\x0a\x0adiv#menu\x20>\x20a,\x0ainput#search,\x0adiv#learn\x20.buttons\x20a,\x0adiv.play\x20.buttons\x20a,\x0adiv#blog\x20.read\x20a,\x0a#menu-button\x20{\x0a\x20\x20padding:\x200.625rem;\x0a\x0a\x20\x20text-decoration:\x20none;\x0a\x20\x20font-size:\x201rem;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0adiv#playground\x20.buttons\x20a,\x0adiv#menu\x20>\x20a,\x0ainput#search,\x0a#menu-button\x20{\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a}\x0adiv#playground\x20.buttons\x20a,\x0adiv#menu\x20>\x20a,\x0a#menu-button\x20{\x0a\x20\x20color:\x20white;\x0a\x20\x20background:\x20#375eab;\x0a}\x0a#playgroundButton.active\x20{\x0a\x20\x20background:\x20white;\x0a\x20\x20color:\x20#375eab;\x0a}\x0aa#start,\x0adiv#learn\x20.buttons\x20a,\x0adiv.play\x20.buttons\x20a,\x0adiv#blog\x20.read\x20a\x20{\x0a\x20\x20color:\x20#222;\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a\x20\x20background:\x20#e0ebf5;\x0a}\x0a.download\x20{\x0a\x20\x20width:\x209.375rem;\x0a}\x0a\x0adiv#menu\x20{\x0a\x20\x20text-align:\x20right;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20white-space:\x20nowrap;\x0a\x20\x20max-height:\x200;\x0a\x20\x20-moz-transition:\x20max-height\x200.25s\x20linear;\x0a\x20\x20transition:\x20max-height\x200.25s\x20linear;\x0a\x20\x20width:\x20100%;\x0a}\x0adiv#menu.menu-visible\x20{\x0a\x20\x20max-height:\x2031.25rem;\x0a}\x0adiv#menu\x20>\x20a,\x0a#menu-button\x20{\x0a\x20\x20margin:\x200.625rem\x200.125rem;\x0a\x20\x20padding:\x200.625rem;\x0a}\x0a::-webkit-input-placeholder\x20{\x0a\x20\x20color:\x20#7f7f7f;\x0a\x20\x20opacity:\x201;\x0a}\x0a::placeholder\x20{\x0a\x20\x20color:\x20#7f7f7f;\x0a\x20\x20opacity:\x201;\x0a}\x0a#menu\x20.search-box\x20{\x0a\x20\x20display:\x20inline-flex;\x0a\x20\x20width:\x208.75rem;\x0a}\x0ainput#search\x20{\x0a\x20\x20background:\x20white;\x0a\x20\x20color:\x20#222;\x0a\x20\x20box-sizing:\x20border-box;\x0a\x20\x20-webkit-appearance:\x20none;\x0a\x20\x20border-top-right-radius:\x200;\x0a\x20\x20border-bottom-right-radius:\x200;\x0a\x20\x20border-right:\x200;\x0a\x20\x20margin-right:\x200;\x0a\x20\x20flex-grow:\x201;\x0a\x20\x20max-width:\x20100%;\x0a\x20\x20min-width:\x205.625rem;\x0a}\x0ainput#search:-webkit-search-decoration\x20{\x0a\x20\x20-webkit-appearance:\x20none;\x0a}\x0ainput#search:-moz-ui-invalid\x20{\x0a\x20\x20box-shadow:\x20unset;\x0a}\x0ainput#search\x20+\x20button\x20{\x0a\x20\x20display:\x20inline;\x0a\x20\x20font-size:\x201em;\x0a\x20\x20background-color:\x20#375eab;\x0a\x20\x20color:\x20white;\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a\x20\x20border-top-left-radius:\x200;\x0a\x20\x20border-top-right-radius:\x200.3125rem;\x0a\x20\x20border-bottom-left-radius:\x200;\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a\x20\x20margin-left:\x200;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0ainput#search\x20+\x20button\x20span\x20{\x0a\x20\x20display:\x20flex;\x0a}\x0ainput#search\x20+\x20button\x20svg\x20{\x0a\x20\x20fill:\x20white;\x0a}\x0a\x0a#menu-button\x20{\x0a\x20\x20display:\x20none;\x0a\x20\x20position:\x20absolute;\x0a\x20\x20right:\x200.3125rem;\x0a\x20\x20top:\x200;\x0a\x20\x20margin-right:\x200.3125rem;\x0a}\x0a#menu-button-arrow\x20{\x0a\x20\x20display:\x20inline-block;\x0a}\x0a.vertical-flip\x20{\x0a\x20\x20transform:\x20rotate(-180deg);\x0a}\x0a\x0adiv.left\x20{\x0a\x20\x20float:\x20left;\x0a\x20\x20clear:\x20left;\x0a\x20\x20margin-right:\x202.5%;\x0a}\x0adiv.right\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20clear:\x20right;\x0a\x20\x20margin-left:\x202.5%;\x0a}\x0adiv.left,\x0adiv.right\x20{\x0a\x20\x20width:\x2045%;\x0a}\x0a\x0adiv#learn,\x0adiv#about\x20{\x0a\x20\x20padding-top:\x201.25rem;\x0a}\x0adiv#learn\x20h2,\x0adiv#about\x20{\x0a\x20\x20margin:\x200;\x0a}\x0adiv#about\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20margin:\x200\x20auto\x201.875rem;\x0a}\x0adiv#gopher\x20{\x0a\x20\x20background:\x20url(https://golang.org/doc/gopher/frontpage.png)\x20no-repeat;\x0a\x20\x20background-position:\x20center\x20top;\x0a\x20\x20height:\x209.688rem;\x0a\x20\x20max-height:\x20200px;\x20/*\x20Setting\x20in\x20px\x20to\x20prevent\x20the\x20gopher\x20from\x20blowing\x20up\x20in\x20very\x20high\x20default\x20font-sizes\x20*/\x0a}\x0aa#start\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20padding:\x200.625rem;\x0a\x0a\x20\x20text-align:\x20center;\x0a\x20\x20text-decoration:\x20none;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0aa#start\x20.big\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20font-weight:\x20bold;\x0a\x20\x20font-size:\x201.25rem;\x0a}\x0aa#start\x20.desc\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20font-weight:\x20normal;\x0a\x20\x20margin-top:\x200.3125rem;\x0a}\x0a\x0adiv#learn\x20.popout\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20display:\x20block;\x0a\x20\x20cursor:\x20pointer;\x0a\x20\x20font-size:\x200.75rem;\x0a\x20\x20background:\x20url(/doc/share.png)\x20no-repeat;\x0a\x20\x20background-position:\x20right\x20center;\x0a\x20\x20padding:\x200.375rem\x201.688rem;\x0a}\x0adiv#learn\x20pre,\x0adiv#learn\x20textarea\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20margin:\x200;\x0a\x20\x20font-family:\x20Menlo,\x20monospace;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv#learn\x20.input\x20{\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20margin-top:\x200.625rem;\x0a\x20\x20height:\x209.375rem;\x0a\x0a\x20\x20border-top-left-radius:\x200.3125rem;\x0a\x20\x20border-top-right-radius:\x200.3125rem;\x0a}\x0adiv#learn\x20.input\x20textarea\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20height:\x20100%;\x0a\x20\x20border:\x20none;\x0a\x20\x20outline:\x20none;\x0a\x20\x20resize:\x20none;\x0a}\x0adiv#learn\x20.output\x20{\x0a\x20\x20border-top:\x20none\x20!important;\x0a\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20height:\x203.688rem;\x0a\x20\x20overflow:\x20auto;\x0a\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a\x20\x20border-bottom-left-radius:\x200.3125rem;\x0a}\x0adiv#learn\x20.output\x20pre\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20border-radius:\x200;\x0a}\x0adiv#learn\x20.input,\x0adiv#learn\x20.input\x20textarea,\x0adiv#learn\x20.output,\x0adiv#learn\x20.output\x20pre\x20{\x0a\x20\x20background:\x20#ffffd8;\x0a}\x0adiv#learn\x20.input,\x0adiv#learn\x20.output\x20{\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a}\x0adiv#learn\x20.buttons\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20padding:\x201.25rem\x200\x200.625rem\x200;\x0a\x20\x20text-align:\x20right;\x0a}\x0adiv#learn\x20.buttons\x20a\x20{\x0a\x20\x20height:\x201rem;\x0a\x20\x20margin-left:\x200.3125rem;\x0a\x20\x20padding:\x200.625rem;\x0a}\x0adiv#learn\x20.toys\x20{\x0a\x20\x20margin-top:\x200.5rem;\x0a}\x0adiv#learn\x20.toys\x20select\x20{\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a\x20\x20margin:\x200;\x0a}\x0adiv#learn\x20.output\x20.exit\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a\x0adiv#video\x20{\x0a\x20\x20max-width:\x20100%;\x0a}\x0adiv#blog,\x0adiv#video\x20{\x0a\x20\x20margin-top:\x202.5rem;\x0a}\x0adiv#blog\x20>\x20a,\x0adiv#blog\x20>\x20div,\x0adiv#blog\x20>\x20h2,\x0adiv#video\x20>\x20a,\x0adiv#video\x20>\x20div,\x0adiv#video\x20>\x20h2\x20{\x0a\x20\x20margin-bottom:\x200.625rem;\x0a}\x0adiv#blog\x20.title,\x0adiv#video\x20.title\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20font-size:\x201.25rem;\x0a}\x0adiv#blog\x20.when\x20{\x0a\x20\x20color:\x20#666;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv#blog\x20.read\x20{\x0a\x20\x20text-align:\x20right;\x0a}\x0a\x0a@supports\x20(--c:\x200)\x20{\x0a\x20\x20[style*='--aspect-ratio-padding:']\x20{\x0a\x20\x20\x20\x20position:\x20relative;\x0a\x20\x20\x20\x20overflow:\x20hidden;\x0a\x20\x20\x20\x20padding-top:\x20var(--aspect-ratio-padding);\x0a\x20\x20}\x0a\x0a\x20\x20[style*='--aspect-ratio-padding:']\x20>\x20*\x20{\x0a\x20\x20\x20\x20position:\x20absolute;\x0a\x20\x20\x20\x20top:\x200;\x0a\x20\x20\x20\x20left:\x200;\x0a\x20\x20\x20\x20width:\x20100%;\x0a\x20\x20\x20\x20height:\x20100%;\x0a\x20\x20}\x0a}\x0a\x0a.toggleButton\x20{\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a.toggle\x20>\x20.collapsed\x20{\x0a\x20\x20display:\x20block;\x0a}\x0a.toggle\x20>\x20.expanded\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a.toggleVisible\x20>\x20.collapsed\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a.toggleVisible\x20>\x20.expanded\x20{\x0a\x20\x20display:\x20block;\x0a}\x0a\x0atable.codetable\x20{\x0a\x20\x20margin-left:\x20auto;\x0a\x20\x20margin-right:\x20auto;\x0a\x20\x20border-style:\x20none;\x0a}\x0atable.codetable\x20td\x20{\x0a\x20\x20padding-right:\x200.625rem;\x0a}\x0ahr\x20{\x0a\x20\x20border-style:\x20none;\x0a\x20\x20border-top:\x200.0625rem\x20solid\x20black;\x0a}\x0a\x0aimg.gopher\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20margin-left:\x200.625rem;\x0a\x20\x20margin-bottom:\x200.625rem;\x0a\x20\x20z-index:\x20-1;\x0a}\x0ah2\x20{\x0a\x20\x20clear:\x20right;\x0a}\x0a\x0a/*\x20example\x20and\x20drop-down\x20playground\x20*/\x0adiv.play\x20{\x0a\x20\x20padding:\x200\x201.25rem\x202.5rem\x201.25rem;\x0a}\x0adiv.play\x20pre,\x0adiv.play\x20textarea,\x0adiv.play\x20.lines\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20margin:\x200;\x0a\x20\x20font-family:\x20Menlo,\x20monospace;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv.play\x20.input\x20{\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20margin-top:\x200.625rem;\x0a\x0a\x20\x20border-top-left-radius:\x200.3125rem;\x0a\x20\x20border-top-right-radius:\x200.3125rem;\x0a\x0a\x20\x20overflow:\x20hidden;\x0a}\x0adiv.play\x20.input\x20textarea\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20height:\x20100%;\x0a\x20\x20border:\x20none;\x0a\x20\x20outline:\x20none;\x0a\x20\x20resize:\x20none;\x0a\x0a\x20\x20overflow:\x20hidden;\x0a}\x0adiv#playground\x20.input\x20textarea\x20{\x0a\x20\x20overflow:\x20auto;\x0a\x20\x20resize:\x20auto;\x0a}\x0adiv.play\x20.output\x20{\x0a\x20\x20border-top:\x20none\x20!important;\x0a\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20max-height:\x2012.5rem;\x0a\x20\x20overflow:\x20auto;\x0a\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a\x20\x20border-bottom-left-radius:\x200.3125rem;\x0a}\x0adiv.play\x20.output\x20pre\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20border-radius:\x200;\x0a}\x0adiv.play\x20.input,\x0adiv.play\x20.input\x20textarea,\x0adiv.play\x20.output,\x0adiv.play\x20.output\x20pre\x20{\x0a\x20\x20background:\x20#ffffd8;\x0a}\x0adiv.play\x20.input,\x0adiv.play\x20.output\x20{\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a}\x0adiv.play\x20.buttons\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20padding:\x201.25rem\x200\x200.625rem\x200;\x0a\x20\x20text-align:\x20right;\x0a}\x0adiv.play\x20.buttons\x20a\x20{\x0a\x20\x20height:\x201rem;\x0a\x20\x20margin-left:\x200.3125rem;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a.output\x20.stderr\x20{\x0a\x20\x20color:\x20#933;\x0a}\x0a.output\x20.system\x20{\x0a\x20\x20color:\x20#999;\x0a}\x0a\x0a/*\x20drop-down\x20playground\x20*/\x0adiv#playground\x20{\x0a\x20\x20/*\x20start\x20hidden;\x20revealed\x20by\x20javascript\x20*/\x0a\x20\x20display:\x20none;\x0a}\x0adiv#playground\x20{\x0a\x20\x20position:\x20absolute;\x0a\x20\x20top:\x203.938rem;\x0a\x20\x20right:\x201.25rem;\x0a\x20\x20padding:\x200\x200.625rem\x200.625rem\x200.625rem;\x0a\x20\x20z-index:\x201;\x0a\x20\x20text-align:\x20left;\x0a\x20\x20background:\x20#e0ebf5;\x0a\x0a\x20\x20border:\x200.0625rem\x20solid\x20#b0bbc5;\x0a\x20\x20border-top:\x20none;\x0a\x0a\x20\x20border-bottom-left-radius:\x200.3125rem;\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a}\x0adiv#playground\x20.code\x20{\x0a\x20\x20width:\x2032.5rem;\x0a\x20\x20height:\x2012.5rem;\x0a}\x0adiv#playground\x20.output\x20{\x0a\x20\x20height:\x206.25rem;\x0a}\x0a\x0a/*\x20Inline\x20runnable\x20snippets\x20(play.js/initPlayground)\x20*/\x0a#content\x20.code\x20pre,\x0a#content\x20.playground\x20pre,\x0a#content\x20.output\x20pre\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20padding:\x200;\x0a\x20\x20background:\x20none;\x0a\x20\x20border:\x20none;\x0a\x20\x20outline:\x200\x20solid\x20transparent;\x0a\x20\x20overflow:\x20auto;\x0a}\x0a#content\x20.playground\x20.number,\x0a#content\x20.code\x20.number\x20{\x0a\x20\x20color:\x20#999;\x0a}\x0a#content\x20.code,\x0a#content\x20.playground,\x0a#content\x20.output\x20{\x0a\x20\x20width:\x20auto;\x0a\x20\x20margin:\x201.25rem;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0a#content\x20.code,\x0a#content\x20.playground\x20{\x0a\x20\x20background:\x20#e9e9e9;\x0a}\x0a#content\x20.output\x20{\x0a\x20\x20background:\x20#202020;\x0a}\x0a#content\x20.output\x20.stdout,\x0a#content\x20.output\x20pre\x20{\x0a\x20\x20color:\x20#e6e6e6;\x0a}\x0a#content\x20.output\x20.stderr,\x0a#content\x20.output\x20.error\x20{\x0a\x20\x20color:\x20rgb(244,\x2074,\x2063);\x0a}\x0a#content\x20.output\x20.system,\x0a#content\x20.output\x20.exit\x20{\x0a\x20\x20color:\x20rgb(255,\x20209,\x2077);\x0a}\x0a#content\x20.buttons\x20{\x0a\x20\x20position:\x20relative;\x0a\x20\x20float:\x20right;\x0a\x20\x20top:\x20-3.125rem;\x0a\x20\x20right:\x201.875rem;\x0a}\x0a#content\x20.output\x20.buttons\x20{\x0a\x20\x20top:\x20-3.75rem;\x0a\x20\x20right:\x200;\x0a\x20\x20height:\x200;\x0a}\x0a#content\x20.buttons\x20.kill\x20{\x0a\x20\x20display:\x20none;\x0a\x20\x20visibility:\x20hidden;\x0a}\x0aa.error\x20{\x0a\x20\x20font-weight:\x20bold;\x0a\x20\x20color:\x20white;\x0a\x20\x20background-color:\x20darkred;\x0a\x20\x20border-bottom-left-radius:\x200.25rem;\x0a\x20\x20border-bottom-right-radius:\x200.25rem;\x0a\x20\x20border-top-left-radius:\x200.25rem;\x0a\x20\x20border-top-right-radius:\x200.25rem;\x0a\x20\x20padding:\x200.125rem\x200.25rem\x200.125rem\x200.25rem;\x20/*\x20TRBL\x20*/\x0a}\x0a\x0a#heading-narrow\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a\x0a.downloading\x20{\x0a\x20\x20background:\x20#f9f9be;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20text-align:\x20center;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0a\x0a@media\x20(max-width:\x2058.125em)\x20{\x0a\x20\x20#heading-wide\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x20\x20#heading-narrow\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(max-width:\x2047.5em)\x20{\x0a\x20\x20.container\x20.left,\x0a\x20\x20.container\x20.right\x20{\x0a\x20\x20\x20\x20width:\x20auto;\x0a\x20\x20\x20\x20float:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20div#about\x20{\x0a\x20\x20\x20\x20max-width:\x2031.25rem;\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(min-width:\x2043.75em)\x20and\x20(max-width:\x2062.5em)\x20{\x0a\x20\x20div#menu\x20>\x20a\x20{\x0a\x20\x20\x20\x20margin:\x200.3125rem\x200;\x0a\x20\x20\x20\x20font-size:\x200.875rem;\x0a\x20\x20}\x0a\x0a\x20\x20input#search\x20{\x0a\x20\x20\x20\x20font-size:\x200.875rem;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(max-width:\x2043.75em)\x20{\x0a\x20\x20body\x20{\x0a\x20\x20\x20\x20font-size:\x200.9375rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#playground\x20{\x0a\x20\x20\x20\x20left:\x200;\x0a\x20\x20\x20\x20right:\x200;\x0a\x20\x20}\x0a\x0a\x20\x20pre,\x0a\x20\x20code\x20{\x0a\x20\x20\x20\x20font-size:\x200.866rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#page\x20>\x20.container\x20{\x0a\x20\x20\x20\x20padding:\x200\x200.625rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#topbar\x20{\x0a\x20\x20\x20\x20height:\x20auto;\x0a\x20\x20\x20\x20padding:\x200.625rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#topbar\x20>\x20.container\x20{\x0a\x20\x20\x20\x20padding:\x200;\x0a\x20\x20}\x0a\x0a\x20\x20#heading-wide\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20}\x0a\x20\x20#heading-narrow\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20.top-heading\x20{\x0a\x20\x20\x20\x20float:\x20none;\x0a\x20\x20\x20\x20display:\x20inline-block;\x0a\x20\x20\x20\x20padding:\x200.75rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#menu\x20{\x0a\x20\x20\x20\x20padding:\x200;\x0a\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20text-align:\x20left;\x0a\x20\x20\x20\x20float:\x20left;\x0a\x20\x20}\x0a\x0a\x20\x20div#menu\x20>\x20a\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20\x20\x20margin-left:\x200;\x0a\x20\x20\x20\x20margin-right:\x200;\x0a\x20\x20}\x0a\x0a\x20\x20#menu\x20.search-box\x20{\x0a\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20width:\x20100%;\x0a\x20\x20}\x0a\x0a\x20\x20#menu-button\x20{\x0a\x20\x20\x20\x20display:\x20inline-block;\x0a\x20\x20}\x0a\x0a\x20\x20p,\x0a\x20\x20pre,\x0a\x20\x20ul,\x0a\x20\x20ol\x20{\x0a\x20\x20\x20\x20margin:\x200.625rem;\x0a\x20\x20}\x0a\x0a\x20\x20.pkg-synopsis\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20img.gopher\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(max-width:\x2030em)\x20{\x0a\x20\x20#heading-wide\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x20\x20#heading-narrow\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20print\x20{\x0a\x20\x20pre\x20{\x0a\x20\x20\x20\x20background:\x20#fff;\x0a\x20\x20\x20\x20border:\x200.0625rem\x20solid\x20#bbb;\x0a\x20\x20\x20\x20white-space:\x20pre-wrap;\x0a\x20\x20}\x0a}\x0a", + "style.css": "body\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20font-family:\x20Arial,\x20sans-serif;\x0a\x20\x20background-color:\x20#fff;\x0a\x20\x20line-height:\x201.3;\x0a\x20\x20text-align:\x20center;\x0a\x20\x20color:\x20#222;\x0a}\x0atextarea\x20{\x0a\x20\x20/*\x20Inherit\x20text\x20color\x20from\x20body\x20avoiding\x20illegible\x20text\x20in\x20the\x20case\x20where\x20the\x0a\x20\x09*\x20user\x20has\x20inverted\x20the\x20browsers\x20custom\x20text\x20and\x20background\x20colors.\x20*/\x0a\x20\x20color:\x20inherit;\x0a}\x0apre,\x0acode\x20{\x0a\x20\x20font-family:\x20Menlo,\x20monospace;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0apre\x20{\x0a\x20\x20line-height:\x201.4;\x0a\x20\x20overflow-x:\x20auto;\x0a}\x0apre\x20.comment\x20{\x0a\x20\x20color:\x20#006600;\x0a}\x0apre\x20.highlight,\x0apre\x20.highlight-comment,\x0apre\x20.selection-highlight,\x0apre\x20.selection-highlight-comment\x20{\x0a\x20\x20background:\x20#ffff00;\x0a}\x0apre\x20.selection,\x0apre\x20.selection-comment\x20{\x0a\x20\x20background:\x20#ff9632;\x0a}\x0apre\x20.ln\x20{\x0a\x20\x20color:\x20#999;\x0a\x20\x20background:\x20#efefef;\x0a}\x0a.ln\x20{\x0a\x20\x20-webkit-user-select:\x20none;\x0a\x20\x20-moz-user-select:\x20none;\x0a\x20\x20-ms-user-select:\x20none;\x0a\x20\x20user-select:\x20none;\x0a\x0a\x20\x20/*\x20Ensure\x208\x20characters\x20in\x20the\x20document\x20-\x20which\x20due\x20to\x20floating\x0a\x20\x20\x20*\x20point\x20rendering\x20issues,\x20might\x20have\x20a\x20width\x20of\x20less\x20than\x201\x20each\x20-\x20are\x208\x0a\x20\x20\x20*\x20characters\x20wide,\x20so\x20a\x20tab\x20in\x20the\x209th\x20position\x20indents\x20properly.\x20See\x0a\x20\x20\x20*\x20https://github.com/webcompat/web-bugs/issues/17530#issuecomment-402675091\x0a\x20\x20\x20*\x20for\x20more\x20information.\x20*/\x0a\x20\x20display:\x20inline-block;\x0a\x20\x20width:\x208ch;\x0a}\x0a\x0a.search-nav\x20{\x0a\x20\x20margin-left:\x201.25rem;\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20column-gap:\x201.25rem;\x0a\x20\x20column-fill:\x20auto;\x0a\x20\x20column-width:\x2014rem;\x0a}\x0a\x0a.search-nav\x20.indent\x20{\x0a\x20\x20margin-left:\x201.25rem;\x0a}\x0a\x0aa,\x0a.exampleHeading\x20.text,\x0a.expandAll\x20{\x0a\x20\x20color:\x20#375eab;\x0a\x20\x20text-decoration:\x20none;\x0a}\x0aa:hover,\x0a.exampleHeading\x20.text:hover,\x0a.expandAll:hover\x20{\x0a\x20\x20text-decoration:\x20underline;\x0a}\x0a.article\x20a\x20{\x0a\x20\x20text-decoration:\x20underline;\x0a}\x0a.article\x20.title\x20a\x20{\x0a\x20\x20text-decoration:\x20none;\x0a}\x0a\x0a.permalink\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a:hover\x20>\x20.permalink\x20{\x0a\x20\x20display:\x20inline;\x0a}\x0a\x0ap,\x0ali\x20{\x0a\x20\x20max-width:\x2050rem;\x0a\x20\x20word-wrap:\x20break-word;\x0a}\x0ap,\x0apre,\x0aul,\x0aol\x20{\x0a\x20\x20margin:\x201.25rem;\x0a}\x0apre\x20{\x0a\x20\x20background:\x20#efefef;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0a\x0ah1,\x0ah2,\x0ah3,\x0ah4,\x0a.rootHeading\x20{\x0a\x20\x20margin:\x201.25rem\x200\x201.25rem;\x0a\x20\x20padding:\x200;\x0a\x20\x20color:\x20#375eab;\x0a\x20\x20font-weight:\x20bold;\x0a}\x0ah1\x20{\x0a\x20\x20font-size:\x201.75rem;\x0a\x20\x20line-height:\x201;\x0a}\x0ah1\x20.text-muted\x20{\x0a\x20\x20color:\x20#777;\x0a}\x0ah2\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20background:\x20#e0ebf5;\x0a\x20\x20padding:\x200.5rem;\x0a\x20\x20line-height:\x201.25;\x0a\x20\x20font-weight:\x20normal;\x0a\x20\x20overflow:\x20auto;\x0a\x20\x20overflow-wrap:\x20break-word;\x0a}\x0ah2\x20a\x20{\x0a\x20\x20font-weight:\x20bold;\x0a}\x0ah3\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20line-height:\x201.25;\x0a\x20\x20overflow:\x20auto;\x0a\x20\x20overflow-wrap:\x20break-word;\x0a}\x0ah3,\x0ah4\x20{\x0a\x20\x20margin:\x201.25rem\x200.3125rem;\x0a}\x0ah4\x20{\x0a\x20\x20font-size:\x201rem;\x0a}\x0a.rootHeading\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20margin:\x200;\x0a}\x0a\x0ah2\x20>\x20span,\x0ah3\x20>\x20span\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20margin:\x200\x2025px\x200\x200;\x0a\x20\x20font-weight:\x20normal;\x0a\x20\x20color:\x20#5279c7;\x0a}\x0a\x0adl\x20{\x0a\x20\x20margin:\x201.25rem;\x0a}\x0add\x20{\x0a\x20\x20margin:\x200\x200\x200\x201.25rem;\x0a}\x0adl,\x0add\x20{\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv#nav\x20table\x20td\x20{\x0a\x20\x20vertical-align:\x20top;\x0a}\x0a\x0a#pkg-index\x20h3\x20{\x0a\x20\x20font-size:\x201rem;\x0a}\x0a.pkg-dir\x20{\x0a\x20\x20padding:\x200\x200.625rem;\x0a}\x0a.pkg-dir\x20table\x20{\x0a\x20\x20border-collapse:\x20collapse;\x0a\x20\x20border-spacing:\x200;\x0a}\x0a.pkg-name\x20{\x0a\x20\x20padding-right:\x200.625rem;\x0a}\x0a.alert\x20{\x0a\x20\x20color:\x20#aa0000;\x0a}\x0a\x0a.top-heading\x20{\x0a\x20\x20float:\x20left;\x0a\x20\x20padding:\x201.313rem\x200;\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20font-weight:\x20normal;\x0a}\x0a.top-heading\x20a\x20{\x0a\x20\x20color:\x20#222;\x0a\x20\x20text-decoration:\x20none;\x0a}\x0a\x0a#pkg-examples\x20h3\x20{\x0a\x20\x20float:\x20left;\x0a}\x0a\x0a#pkg-examples\x20dl\x20{\x0a\x20\x20clear:\x20both;\x0a}\x0a\x0a.expandAll\x20{\x0a\x20\x20cursor:\x20pointer;\x0a\x20\x20float:\x20left;\x0a\x20\x20margin:\x201.25rem\x200;\x0a}\x0a\x0adiv#topbar\x20{\x0a\x20\x20background:\x20#e0ebf5;\x0a\x20\x20height:\x204rem;\x0a\x20\x20overflow:\x20hidden;\x0a}\x0a\x0adiv#page\x20{\x0a\x20\x20width:\x20100%;\x0a}\x0adiv#page\x20>\x20.container,\x0adiv#topbar\x20>\x20.container\x20{\x0a\x20\x20text-align:\x20left;\x0a\x20\x20margin-left:\x20auto;\x0a\x20\x20margin-right:\x20auto;\x0a\x20\x20padding:\x200\x201.25rem;\x0a}\x0adiv#topbar\x20>\x20.container,\x0adiv#page\x20>\x20.container\x20{\x0a\x20\x20max-width:\x2059.38rem;\x0a}\x0adiv#page.wide\x20>\x20.container,\x0adiv#topbar.wide\x20>\x20.container\x20{\x0a\x20\x20max-width:\x20none;\x0a}\x0adiv#plusone\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20clear:\x20right;\x0a\x20\x20margin-top:\x200.3125rem;\x0a}\x0a\x0adiv#footer\x20{\x0a\x20\x20text-align:\x20center;\x0a\x20\x20color:\x20#666;\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20margin:\x202.5rem\x200;\x0a}\x0a\x0adiv#menu\x20>\x20a,\x0ainput#search,\x0adiv#learn\x20.buttons\x20a,\x0adiv.play\x20.buttons\x20a,\x0adiv#blog\x20.read\x20a,\x0a#menu-button\x20{\x0a\x20\x20padding:\x200.625rem;\x0a\x0a\x20\x20text-decoration:\x20none;\x0a\x20\x20font-size:\x201rem;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0adiv#playground\x20.buttons\x20a,\x0adiv#menu\x20>\x20a,\x0ainput#search,\x0a#menu-button\x20{\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a}\x0adiv#playground\x20.buttons\x20a,\x0adiv#menu\x20>\x20a,\x0a#menu-button\x20{\x0a\x20\x20color:\x20white;\x0a\x20\x20background:\x20#375eab;\x0a}\x0a#playgroundButton.active\x20{\x0a\x20\x20background:\x20white;\x0a\x20\x20color:\x20#375eab;\x0a}\x0aa#start,\x0adiv#learn\x20.buttons\x20a,\x0adiv.play\x20.buttons\x20a,\x0adiv#blog\x20.read\x20a\x20{\x0a\x20\x20color:\x20#222;\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a\x20\x20background:\x20#e0ebf5;\x0a}\x0a.download\x20{\x0a\x20\x20width:\x209.375rem;\x0a}\x0a\x0adiv#menu\x20{\x0a\x20\x20text-align:\x20right;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20white-space:\x20nowrap;\x0a\x20\x20max-height:\x200;\x0a\x20\x20-moz-transition:\x20max-height\x200.25s\x20linear;\x0a\x20\x20transition:\x20max-height\x200.25s\x20linear;\x0a\x20\x20width:\x20100%;\x0a}\x0adiv#menu.menu-visible\x20{\x0a\x20\x20max-height:\x2031.25rem;\x0a}\x0adiv#menu\x20>\x20a,\x0a#menu-button\x20{\x0a\x20\x20margin:\x200.625rem\x200.125rem;\x0a\x20\x20padding:\x200.625rem;\x0a}\x0a::-webkit-input-placeholder\x20{\x0a\x20\x20color:\x20#7f7f7f;\x0a\x20\x20opacity:\x201;\x0a}\x0a::placeholder\x20{\x0a\x20\x20color:\x20#7f7f7f;\x0a\x20\x20opacity:\x201;\x0a}\x0a#menu\x20.search-box\x20{\x0a\x20\x20display:\x20inline-flex;\x0a\x20\x20width:\x208.75rem;\x0a}\x0ainput#search\x20{\x0a\x20\x20background:\x20white;\x0a\x20\x20color:\x20#222;\x0a\x20\x20box-sizing:\x20border-box;\x0a\x20\x20-webkit-appearance:\x20none;\x0a\x20\x20border-top-right-radius:\x200;\x0a\x20\x20border-bottom-right-radius:\x200;\x0a\x20\x20border-right:\x200;\x0a\x20\x20margin-right:\x200;\x0a\x20\x20flex-grow:\x201;\x0a\x20\x20max-width:\x20100%;\x0a\x20\x20min-width:\x205.625rem;\x0a}\x0ainput#search:-webkit-search-decoration\x20{\x0a\x20\x20-webkit-appearance:\x20none;\x0a}\x0ainput#search:-moz-ui-invalid\x20{\x0a\x20\x20box-shadow:\x20unset;\x0a}\x0ainput#search\x20+\x20button\x20{\x0a\x20\x20display:\x20inline;\x0a\x20\x20font-size:\x201em;\x0a\x20\x20background-color:\x20#375eab;\x0a\x20\x20color:\x20white;\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a\x20\x20border-top-left-radius:\x200;\x0a\x20\x20border-top-right-radius:\x200.3125rem;\x0a\x20\x20border-bottom-left-radius:\x200;\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a\x20\x20margin-left:\x200;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0ainput#search\x20+\x20button\x20span\x20{\x0a\x20\x20display:\x20flex;\x0a}\x0ainput#search\x20+\x20button\x20svg\x20{\x0a\x20\x20fill:\x20white;\x0a}\x0a\x0a#menu-button\x20{\x0a\x20\x20display:\x20none;\x0a\x20\x20position:\x20absolute;\x0a\x20\x20right:\x200.3125rem;\x0a\x20\x20top:\x200;\x0a\x20\x20margin-right:\x200.3125rem;\x0a}\x0a#menu-button-arrow\x20{\x0a\x20\x20display:\x20inline-block;\x0a}\x0a.vertical-flip\x20{\x0a\x20\x20transform:\x20rotate(-180deg);\x0a}\x0a\x0adiv.left\x20{\x0a\x20\x20float:\x20left;\x0a\x20\x20clear:\x20left;\x0a\x20\x20margin-right:\x202.5%;\x0a}\x0adiv.right\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20clear:\x20right;\x0a\x20\x20margin-left:\x202.5%;\x0a}\x0adiv.left,\x0adiv.right\x20{\x0a\x20\x20width:\x2045%;\x0a}\x0a\x0adiv#learn,\x0adiv#about\x20{\x0a\x20\x20padding-top:\x201.25rem;\x0a}\x0adiv#learn\x20h2,\x0adiv#about\x20{\x0a\x20\x20margin:\x200;\x0a}\x0adiv#about\x20{\x0a\x20\x20font-size:\x201.25rem;\x0a\x20\x20margin:\x200\x20auto\x201.875rem;\x0a}\x0aa#start\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20padding:\x200.625rem;\x0a\x0a\x20\x20text-align:\x20center;\x0a\x20\x20text-decoration:\x20none;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0aa#start\x20.big\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20font-weight:\x20bold;\x0a\x20\x20font-size:\x201.25rem;\x0a}\x0aa#start\x20.desc\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20font-weight:\x20normal;\x0a\x20\x20margin-top:\x200.3125rem;\x0a}\x0a\x0adiv#learn\x20.popout\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20display:\x20block;\x0a\x20\x20cursor:\x20pointer;\x0a\x20\x20font-size:\x200.75rem;\x0a\x20\x20background:\x20url(/doc/share.png)\x20no-repeat;\x0a\x20\x20background-position:\x20right\x20center;\x0a\x20\x20padding:\x200.375rem\x201.688rem;\x0a}\x0adiv#learn\x20pre,\x0adiv#learn\x20textarea\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20margin:\x200;\x0a\x20\x20font-family:\x20Menlo,\x20monospace;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv#learn\x20.input\x20{\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20margin-top:\x200.625rem;\x0a\x20\x20height:\x209.375rem;\x0a\x0a\x20\x20border-top-left-radius:\x200.3125rem;\x0a\x20\x20border-top-right-radius:\x200.3125rem;\x0a}\x0adiv#learn\x20.input\x20textarea\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20height:\x20100%;\x0a\x20\x20border:\x20none;\x0a\x20\x20outline:\x20none;\x0a\x20\x20resize:\x20none;\x0a}\x0adiv#learn\x20.output\x20{\x0a\x20\x20border-top:\x20none\x20!important;\x0a\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20height:\x203.688rem;\x0a\x20\x20overflow:\x20auto;\x0a\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a\x20\x20border-bottom-left-radius:\x200.3125rem;\x0a}\x0adiv#learn\x20.output\x20pre\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20border-radius:\x200;\x0a}\x0adiv#learn\x20.input,\x0adiv#learn\x20.input\x20textarea,\x0adiv#learn\x20.output,\x0adiv#learn\x20.output\x20pre\x20{\x0a\x20\x20background:\x20#ffffd8;\x0a}\x0adiv#learn\x20.input,\x0adiv#learn\x20.output\x20{\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a}\x0adiv#learn\x20.buttons\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20padding:\x201.25rem\x200\x200.625rem\x200;\x0a\x20\x20text-align:\x20right;\x0a}\x0adiv#learn\x20.buttons\x20a\x20{\x0a\x20\x20height:\x201rem;\x0a\x20\x20margin-left:\x200.3125rem;\x0a\x20\x20padding:\x200.625rem;\x0a}\x0adiv#learn\x20.toys\x20{\x0a\x20\x20margin-top:\x200.5rem;\x0a}\x0adiv#learn\x20.toys\x20select\x20{\x0a\x20\x20font-size:\x200.875rem;\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a\x20\x20margin:\x200;\x0a}\x0adiv#learn\x20.output\x20.exit\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a\x0adiv#video\x20{\x0a\x20\x20max-width:\x20100%;\x0a}\x0adiv#blog,\x0adiv#video\x20{\x0a\x20\x20margin-top:\x202.5rem;\x0a}\x0adiv#blog\x20>\x20a,\x0adiv#blog\x20>\x20div,\x0adiv#blog\x20>\x20h2,\x0adiv#video\x20>\x20a,\x0adiv#video\x20>\x20div,\x0adiv#video\x20>\x20h2\x20{\x0a\x20\x20margin-bottom:\x200.625rem;\x0a}\x0adiv#blog\x20.title,\x0adiv#video\x20.title\x20{\x0a\x20\x20display:\x20block;\x0a\x20\x20font-size:\x201.25rem;\x0a}\x0adiv#blog\x20.when\x20{\x0a\x20\x20color:\x20#666;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv#blog\x20.read\x20{\x0a\x20\x20text-align:\x20right;\x0a}\x0a\x0a@supports\x20(--c:\x200)\x20{\x0a\x20\x20[style*='--aspect-ratio-padding:']\x20{\x0a\x20\x20\x20\x20position:\x20relative;\x0a\x20\x20\x20\x20overflow:\x20hidden;\x0a\x20\x20\x20\x20padding-top:\x20var(--aspect-ratio-padding);\x0a\x20\x20}\x0a\x0a\x20\x20[style*='--aspect-ratio-padding:']\x20>\x20*\x20{\x0a\x20\x20\x20\x20position:\x20absolute;\x0a\x20\x20\x20\x20top:\x200;\x0a\x20\x20\x20\x20left:\x200;\x0a\x20\x20\x20\x20width:\x20100%;\x0a\x20\x20\x20\x20height:\x20100%;\x0a\x20\x20}\x0a}\x0a\x0a.toggleButton\x20{\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a.toggle\x20>\x20.collapsed\x20{\x0a\x20\x20display:\x20block;\x0a}\x0a.toggle\x20>\x20.expanded\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a.toggleVisible\x20>\x20.collapsed\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a.toggleVisible\x20>\x20.expanded\x20{\x0a\x20\x20display:\x20block;\x0a}\x0a\x0atable.codetable\x20{\x0a\x20\x20margin-left:\x20auto;\x0a\x20\x20margin-right:\x20auto;\x0a\x20\x20border-style:\x20none;\x0a}\x0atable.codetable\x20td\x20{\x0a\x20\x20padding-right:\x200.625rem;\x0a}\x0ahr\x20{\x0a\x20\x20border-style:\x20none;\x0a\x20\x20border-top:\x200.0625rem\x20solid\x20black;\x0a}\x0a\x0aimg.gopher\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20margin-left:\x200.625rem;\x0a\x20\x20margin-top:\x20-2.5rem;\x0a\x20\x20margin-bottom:\x200.625rem;\x0a\x20\x20z-index:\x20-1;\x0a}\x0ah2\x20{\x0a\x20\x20clear:\x20right;\x0a}\x0a\x0a/*\x20example\x20and\x20drop-down\x20playground\x20*/\x0adiv.play\x20{\x0a\x20\x20padding:\x200\x201.25rem\x202.5rem\x201.25rem;\x0a}\x0adiv.play\x20pre,\x0adiv.play\x20textarea,\x0adiv.play\x20.lines\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20margin:\x200;\x0a\x20\x20font-family:\x20Menlo,\x20monospace;\x0a\x20\x20font-size:\x200.875rem;\x0a}\x0adiv.play\x20.input\x20{\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20margin-top:\x200.625rem;\x0a\x0a\x20\x20border-top-left-radius:\x200.3125rem;\x0a\x20\x20border-top-right-radius:\x200.3125rem;\x0a\x0a\x20\x20overflow:\x20hidden;\x0a}\x0adiv.play\x20.input\x20textarea\x20{\x0a\x20\x20width:\x20100%;\x0a\x20\x20height:\x20100%;\x0a\x20\x20border:\x20none;\x0a\x20\x20outline:\x20none;\x0a\x20\x20resize:\x20none;\x0a\x0a\x20\x20overflow:\x20hidden;\x0a}\x0adiv#playground\x20.input\x20textarea\x20{\x0a\x20\x20overflow:\x20auto;\x0a\x20\x20resize:\x20auto;\x0a}\x0adiv.play\x20.output\x20{\x0a\x20\x20border-top:\x20none\x20!important;\x0a\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20max-height:\x2012.5rem;\x0a\x20\x20overflow:\x20auto;\x0a\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a\x20\x20border-bottom-left-radius:\x200.3125rem;\x0a}\x0adiv.play\x20.output\x20pre\x20{\x0a\x20\x20padding:\x200;\x0a\x20\x20border-radius:\x200;\x0a}\x0adiv.play\x20.input,\x0adiv.play\x20.input\x20textarea,\x0adiv.play\x20.output,\x0adiv.play\x20.output\x20pre\x20{\x0a\x20\x20background:\x20#ffffd8;\x0a}\x0adiv.play\x20.input,\x0adiv.play\x20.output\x20{\x0a\x20\x20border:\x200.0625rem\x20solid\x20#375eab;\x0a}\x0adiv.play\x20.buttons\x20{\x0a\x20\x20float:\x20right;\x0a\x20\x20padding:\x201.25rem\x200\x200.625rem\x200;\x0a\x20\x20text-align:\x20right;\x0a}\x0adiv.play\x20.buttons\x20a\x20{\x0a\x20\x20height:\x201rem;\x0a\x20\x20margin-left:\x200.3125rem;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20cursor:\x20pointer;\x0a}\x0a.output\x20.stderr\x20{\x0a\x20\x20color:\x20#933;\x0a}\x0a.output\x20.system\x20{\x0a\x20\x20color:\x20#999;\x0a}\x0a\x0a/*\x20drop-down\x20playground\x20*/\x0adiv#playground\x20{\x0a\x20\x20/*\x20start\x20hidden;\x20revealed\x20by\x20javascript\x20*/\x0a\x20\x20display:\x20none;\x0a}\x0adiv#playground\x20{\x0a\x20\x20position:\x20absolute;\x0a\x20\x20top:\x203.938rem;\x0a\x20\x20right:\x201.25rem;\x0a\x20\x20padding:\x200\x200.625rem\x200.625rem\x200.625rem;\x0a\x20\x20z-index:\x201;\x0a\x20\x20text-align:\x20left;\x0a\x20\x20background:\x20#e0ebf5;\x0a\x0a\x20\x20border:\x200.0625rem\x20solid\x20#b0bbc5;\x0a\x20\x20border-top:\x20none;\x0a\x0a\x20\x20border-bottom-left-radius:\x200.3125rem;\x0a\x20\x20border-bottom-right-radius:\x200.3125rem;\x0a}\x0adiv#playground\x20.code\x20{\x0a\x20\x20width:\x2032.5rem;\x0a\x20\x20height:\x2012.5rem;\x0a}\x0adiv#playground\x20.output\x20{\x0a\x20\x20height:\x206.25rem;\x0a}\x0a\x0a/*\x20Inline\x20runnable\x20snippets\x20(play.js/initPlayground)\x20*/\x0a#content\x20.code\x20pre,\x0a#content\x20.playground\x20pre,\x0a#content\x20.output\x20pre\x20{\x0a\x20\x20margin:\x200;\x0a\x20\x20padding:\x200;\x0a\x20\x20background:\x20none;\x0a\x20\x20border:\x20none;\x0a\x20\x20outline:\x200\x20solid\x20transparent;\x0a\x20\x20overflow:\x20auto;\x0a}\x0a#content\x20.playground\x20.number,\x0a#content\x20.code\x20.number\x20{\x0a\x20\x20color:\x20#999;\x0a}\x0a#content\x20.code,\x0a#content\x20.playground,\x0a#content\x20.output\x20{\x0a\x20\x20width:\x20auto;\x0a\x20\x20margin:\x201.25rem;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0a#content\x20.code,\x0a#content\x20.playground\x20{\x0a\x20\x20background:\x20#e9e9e9;\x0a}\x0a#content\x20.output\x20{\x0a\x20\x20background:\x20#202020;\x0a}\x0a#content\x20.output\x20.stdout,\x0a#content\x20.output\x20pre\x20{\x0a\x20\x20color:\x20#e6e6e6;\x0a}\x0a#content\x20.output\x20.stderr,\x0a#content\x20.output\x20.error\x20{\x0a\x20\x20color:\x20rgb(244,\x2074,\x2063);\x0a}\x0a#content\x20.output\x20.system,\x0a#content\x20.output\x20.exit\x20{\x0a\x20\x20color:\x20rgb(255,\x20209,\x2077);\x0a}\x0a#content\x20.buttons\x20{\x0a\x20\x20position:\x20relative;\x0a\x20\x20float:\x20right;\x0a\x20\x20top:\x20-3.125rem;\x0a\x20\x20right:\x201.875rem;\x0a}\x0a#content\x20.output\x20.buttons\x20{\x0a\x20\x20top:\x20-3.75rem;\x0a\x20\x20right:\x200;\x0a\x20\x20height:\x200;\x0a}\x0a#content\x20.buttons\x20.kill\x20{\x0a\x20\x20display:\x20none;\x0a\x20\x20visibility:\x20hidden;\x0a}\x0aa.error\x20{\x0a\x20\x20font-weight:\x20bold;\x0a\x20\x20color:\x20white;\x0a\x20\x20background-color:\x20darkred;\x0a\x20\x20border-bottom-left-radius:\x200.25rem;\x0a\x20\x20border-bottom-right-radius:\x200.25rem;\x0a\x20\x20border-top-left-radius:\x200.25rem;\x0a\x20\x20border-top-right-radius:\x200.25rem;\x0a\x20\x20padding:\x200.125rem\x200.25rem\x200.125rem\x200.25rem;\x20/*\x20TRBL\x20*/\x0a}\x0a\x0a#heading-narrow\x20{\x0a\x20\x20display:\x20none;\x0a}\x0a\x0a.downloading\x20{\x0a\x20\x20background:\x20#f9f9be;\x0a\x20\x20padding:\x200.625rem;\x0a\x20\x20text-align:\x20center;\x0a\x20\x20border-radius:\x200.3125rem;\x0a}\x0a\x0a@media\x20(max-width:\x2058.125em)\x20{\x0a\x20\x20#heading-wide\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x20\x20#heading-narrow\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(max-width:\x2047.5em)\x20{\x0a\x20\x20.container\x20.left,\x0a\x20\x20.container\x20.right\x20{\x0a\x20\x20\x20\x20width:\x20auto;\x0a\x20\x20\x20\x20float:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20div#about\x20{\x0a\x20\x20\x20\x20max-width:\x2031.25rem;\x0a\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(min-width:\x2043.75em)\x20and\x20(max-width:\x2062.5em)\x20{\x0a\x20\x20div#menu\x20>\x20a\x20{\x0a\x20\x20\x20\x20margin:\x200.3125rem\x200;\x0a\x20\x20\x20\x20font-size:\x200.875rem;\x0a\x20\x20}\x0a\x0a\x20\x20input#search\x20{\x0a\x20\x20\x20\x20font-size:\x200.875rem;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(max-width:\x2043.75em)\x20{\x0a\x20\x20body\x20{\x0a\x20\x20\x20\x20font-size:\x200.9375rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#playground\x20{\x0a\x20\x20\x20\x20left:\x200;\x0a\x20\x20\x20\x20right:\x200;\x0a\x20\x20}\x0a\x0a\x20\x20pre,\x0a\x20\x20code\x20{\x0a\x20\x20\x20\x20font-size:\x200.866rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#page\x20>\x20.container\x20{\x0a\x20\x20\x20\x20padding:\x200\x200.625rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#topbar\x20{\x0a\x20\x20\x20\x20height:\x20auto;\x0a\x20\x20\x20\x20padding:\x200.625rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#topbar\x20>\x20.container\x20{\x0a\x20\x20\x20\x20padding:\x200;\x0a\x20\x20}\x0a\x0a\x20\x20#heading-wide\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20}\x0a\x20\x20#heading-narrow\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20.top-heading\x20{\x0a\x20\x20\x20\x20float:\x20none;\x0a\x20\x20\x20\x20display:\x20inline-block;\x0a\x20\x20\x20\x20padding:\x200.75rem;\x0a\x20\x20}\x0a\x0a\x20\x20div#menu\x20{\x0a\x20\x20\x20\x20padding:\x200;\x0a\x20\x20\x20\x20min-width:\x200;\x0a\x20\x20\x20\x20text-align:\x20left;\x0a\x20\x20\x20\x20float:\x20left;\x0a\x20\x20}\x0a\x0a\x20\x20div#menu\x20>\x20a\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20\x20\x20margin-left:\x200;\x0a\x20\x20\x20\x20margin-right:\x200;\x0a\x20\x20}\x0a\x0a\x20\x20#menu\x20.search-box\x20{\x0a\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20width:\x20100%;\x0a\x20\x20}\x0a\x0a\x20\x20#menu-button\x20{\x0a\x20\x20\x20\x20display:\x20inline-block;\x0a\x20\x20}\x0a\x0a\x20\x20p,\x0a\x20\x20pre,\x0a\x20\x20ul,\x0a\x20\x20ol\x20{\x0a\x20\x20\x20\x20margin:\x200.625rem;\x0a\x20\x20}\x0a\x0a\x20\x20.pkg-synopsis\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x0a\x20\x20img.gopher\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20(max-width:\x2030em)\x20{\x0a\x20\x20#heading-wide\x20{\x0a\x20\x20\x20\x20display:\x20none;\x0a\x20\x20}\x0a\x20\x20#heading-narrow\x20{\x0a\x20\x20\x20\x20display:\x20block;\x0a\x20\x20}\x0a}\x0a\x0a@media\x20print\x20{\x0a\x20\x20pre\x20{\x0a\x20\x20\x20\x20background:\x20#fff;\x0a\x20\x20\x20\x20border:\x200.0625rem\x20solid\x20#bbb;\x0a\x20\x20\x20\x20white-space:\x20pre-wrap;\x0a\x20\x20}\x0a}\x0a", } diff --git a/godoc/static/style.css b/godoc/static/style.css index 9e048256f2a..e54ad6fcc2c 100644 --- a/godoc/static/style.css +++ b/godoc/static/style.css @@ -403,12 +403,6 @@ div#about { font-size: 1.25rem; margin: 0 auto 1.875rem; } -div#gopher { - background: url(https://golang.org/doc/gopher/frontpage.png) no-repeat; - background-position: center top; - height: 9.688rem; - max-height: 200px; /* Setting in px to prevent the gopher from blowing up in very high default font-sizes */ -} a#start { display: block; padding: 0.625rem; @@ -582,6 +576,7 @@ hr { img.gopher { float: right; margin-left: 0.625rem; + margin-top: -2.5rem; margin-bottom: 0.625rem; z-index: -1; }