_content: remove trailing spaces

Change-Id: Ide6008487c296dbd8d8f8cd6bd4eae54c2590127
Reviewed-on: https://go-review.googlesource.com/c/website/+/296381
Trust: Russ Cox <rsc@golang.org>
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
diff --git a/_content/doc/debugging_with_gdb.html b/_content/doc/debugging_with_gdb.html
index e1fb292..98b70fb 100644
--- a/_content/doc/debugging_with_gdb.html
+++ b/_content/doc/debugging_with_gdb.html
@@ -17,7 +17,7 @@
 Gccgo has native gdb support.
 </p>
 <p>
-Note that 
+Note that
 <a href="https://github.com/go-delve/delve">Delve</a> is a better
 alternative to GDB when debugging Go programs built with the standard
 toolchain. It understands the Go runtime, data structures, and
@@ -220,7 +220,7 @@
 Reading symbols from  /home/user/go/src/regexp/regexp.test...
 done.
 Loading Go Runtime support.
-(gdb) 
+(gdb)
 </pre>
 
 <p>
@@ -282,7 +282,7 @@
 <p>
 Variable and function names must be qualified with the name of the packages
 they belong to. The <code>Compile</code> function from the <code>regexp</code>
-package is known to GDB as <code>'regexp.Compile'</code>. 
+package is known to GDB as <code>'regexp.Compile'</code>.
 </p>
 
 <p>
@@ -362,7 +362,7 @@
 #2  0x0000000000403299 in runtime.chanrecv1 (t=void, c=void) at/home/user/go/src/runtime/chan.c:423
 #3  0x000000000043075b in testing.RunTests (matchString={void (struct string, struct string, bool *, error *)}
  0x7ffff7f9ef60, tests=  []testing.InternalTest = {...}) at /home/user/go/src/testing/testing.go:201
-#4  0x00000000004302b1 in testing.Main (matchString={void (struct string, struct string, bool *, error *)} 
+#4  0x00000000004302b1 in testing.Main (matchString={void (struct string, struct string, bool *, error *)}
  0x7ffff7f9ef80, tests= []testing.InternalTest = {...}, benchmarks= []testing.InternalBenchmark = {...})
 at /home/user/go/src/testing/testing.go:168
 #5  0x0000000000400dc1 in main.main () at /home/user/go/src/regexp/_testmain.go:98
@@ -378,7 +378,7 @@
 <pre>
 (gdb) <b>info frame</b>
 Stack level 0, frame at 0x7ffff7f9ff88:
- rip = 0x425530 in regexp.TestFind (/home/user/go/src/regexp/find_test.go:148); 
+ rip = 0x425530 in regexp.TestFind (/home/user/go/src/regexp/find_test.go:148);
     saved rip 0x430233
  called by frame at 0x7ffff7f9ffa8
  source language minimal.
@@ -441,12 +441,12 @@
 (gdb) <b>p re</b>
 $5 = (struct regexp.Regexp *) 0xf84068d070
 (gdb) <b>p *re</b>
-$6 = {expr = "", prog = 0xf840688b80, prefix = "", prefixBytes =  []uint8, prefixComplete = true, 
-  prefixRune = 0, cond = 0 '\000', numSubexp = 0, longest = false, mu = {state = 0, sema = 0}, 
+$6 = {expr = "", prog = 0xf840688b80, prefix = "", prefixBytes =  []uint8, prefixComplete = true,
+  prefixRune = 0, cond = 0 '\000', numSubexp = 0, longest = false, mu = {state = 0, sema = 0},
   machine =  []*regexp.machine}
 (gdb) <b>p *re->prog</b>
-$7 = {Inst =  []regexp/syntax.Inst = {{Op = 5 '\005', Out = 0, Arg = 0, Rune =  []int}, {Op = 
-    6 '\006', Out = 2, Arg = 0, Rune =  []int}, {Op = 4 '\004', Out = 0, Arg = 0, Rune =  []int}}, 
+$7 = {Inst =  []regexp/syntax.Inst = {{Op = 5 '\005', Out = 0, Arg = 0, Rune =  []int}, {Op =
+    6 '\006', Out = 2, Arg = 0, Rune =  []int}, {Op = 4 '\004', Out = 0, Arg = 0, Rune =  []int}},
   Start = 1, NumCap = 2}
 </pre>
 
@@ -515,7 +515,7 @@
 (gdb) <b>p slc</b>
 $11 =  []int = {0, 0}
 (gdb) <b>p slc-&gt;</b><i>&lt;TAB&gt;</i>
-array  slc    len    
+array  slc    len
 (gdb) <b>p slc->array</b>
 $12 = (int *) 0xf84057af00
 (gdb) <b>p slc->array[1]</b>
diff --git a/_content/doc/devel/pre_go1.html b/_content/doc/devel/pre_go1.html
index 813e23c..7f1ad7b 100644
--- a/_content/doc/devel/pre_go1.html
+++ b/_content/doc/devel/pre_go1.html
@@ -10,7 +10,7 @@
 <h2 id="r60">r60 (released 2011/09/07)</h2>
 
 <p>
-The r60 release corresponds to 
+The r60 release corresponds to
 <code><a href="weekly.html#2011-08-17">weekly.2011-08-17</a></code>.
 This section highlights the most significant changes in this release.
 For a more detailed summary, see the
@@ -49,7 +49,7 @@
 <a href="/pkg/image/draw/">image/draw</a>, and then encode the result using
 <a href="/pkg/img/png">image/png</a>, then your code should still work as
 before.
-If your code <i>does</i> refer to <code>Pix</code> fields see the 
+If your code <i>does</i> refer to <code>Pix</code> fields see the
 <a href="/doc/devel/weekly.html#2011-07-19">weekly.2011-07-19</a>
 snapshot notes for how to update your code.
 </p>
@@ -85,7 +85,7 @@
 <h3 id="r60.minor">Minor revisions</h3>
 
 <p>
-r60.1 includes a 
+r60.1 includes a
 <a href="//golang.org/change/1824581bf62d">linker
 fix</a>, a pair of
 <a href="//golang.org/change/9ef4429c2c64">goplay</a>
@@ -111,7 +111,7 @@
 <h2 id="r59">r59 (released 2011/08/01)</h2>
 
 <p>
-The r59 release corresponds to 
+The r59 release corresponds to
 <code><a href="weekly.html#2011-07-07">weekly.2011-07-07</a></code>.
 This section highlights the most significant changes in this release.
 For a more detailed summary, see the
@@ -218,7 +218,7 @@
 <h2 id="r58">r58 (released 2011/06/29)</h2>
 
 <p>
-The r58 release corresponds to 
+The r58 release corresponds to
 <code><a href="weekly.html#2011-06-09">weekly.2011-06-09</a></code>
 with additional bug fixes.
 This section highlights the most significant changes in this release.
@@ -262,12 +262,12 @@
 Previously Quote would escape all non-ASCII characters.
 This also affects the <a href="/pkg/fmt/">fmt</a> package's <code>"%q"</code>
 formatting directive. The previous quoting behavior is still available via
-strconv's new <a href="/pkg/strconv/#QuoteToASCII">QuoteToASCII</a> function.   
+strconv's new <a href="/pkg/strconv/#QuoteToASCII">QuoteToASCII</a> function.
 </p>
 
 <p>
 <a href="/pkg/os/signal/">Package os/signal</a>'s
-<a href="/pkg/os/#Signal">Signal</a> and 
+<a href="/pkg/os/#Signal">Signal</a> and
 <a href="/pkg/os/#UnixSignal">UnixSignal</a> types have been moved to the
 <a href="/pkg/os/">os</a> package.
 </p>
@@ -289,7 +289,7 @@
 
 <h3 id="r58.minor">Minor revisions</h3>
 
-<p>r58.1 adds 
+<p>r58.1 adds
 <a href="//golang.org/change/293c25943586">build</a> and
 <a href="//golang.org/change/bf17e96b6582">runtime</a>
 changes to make Go run on OS X 10.7 Lion.
@@ -298,7 +298,7 @@
 <h2 id="r57">r57 (released 2011/05/03)</h2>
 
 <p>
-The r57 release corresponds to 
+The r57 release corresponds to
 <code><a href="weekly.html#2011-04-27">weekly.2011-04-27</a></code>
 with additional bug fixes.
 This section highlights the most significant changes in this release.
@@ -312,7 +312,7 @@
 newer ones.  After you update to a new Go release, gofix helps make the
 necessary changes to your programs. Gofix will handle the http, os, and syscall
 package changes described below, and we will update the program to keep up with
-future changes to the libraries. 
+future changes to the libraries.
 Gofix can’t
 handle all situations perfectly, so read and test the changes it makes before
 committing them.
@@ -352,7 +352,7 @@
 <a href="/pkg/gob/">Package gob</a> will now encode and decode values of types that implement the
 <a href="/pkg/gob/#GobEncoder">GobEncoder</a> and
 <a href="/pkg/gob/#GobDecoder">GobDecoder</a> interfaces. This allows types with unexported
-fields to transmit self-consistent descriptions; examples include 
+fields to transmit self-consistent descriptions; examples include
 <a href="/pkg/big/#Int.GobDecode">big.Int</a> and <a href="/pkg/big/#Rat.GobDecode">big.Rat</a>.
 </p>
 
@@ -383,7 +383,7 @@
 The implementation now uses <a href="/cmd/cgo/">cgo</a> to implement
 network name lookups using the C library getaddrinfo(3)
 function when possible.  This ensures that Go and C programs
-resolve names the same way and also avoids the OS X 
+resolve names the same way and also avoids the OS X
 application-level firewall.
 </p>
 
@@ -431,7 +431,7 @@
 
 <p>
 The run-time support now implements CPU and memory profiling.
-Gotest's new 
+Gotest's new
 <a href="/cmd/gotest/"><code>-test.cpuprofile</code> and
 <code>-test.memprofile</code> flags</a> make it easy to
 profile tests.
diff --git a/_content/doc/devel/weekly.html b/_content/doc/devel/weekly.html
index e17461d..cf3ea59 100644
--- a/_content/doc/devel/weekly.html
+++ b/_content/doc/devel/weekly.html
@@ -850,10 +850,10 @@
 be present in the Go 1 distribution, but will be installable from source.
 
 Error variables in the archive/tar, archive/zip, compress/gzip, compress/zlib,
-and crypto/bcrypt packages have been renamed from FooError to ErrFoo. 
+and crypto/bcrypt packages have been renamed from FooError to ErrFoo.
 There is no gofix, but the compiler will flag code that needs updating.
 
-This weekly snapshot relocates many packages to sub-repositories of the main 
+This weekly snapshot relocates many packages to sub-repositories of the main
 Go repository. These are the old and new import paths:
 
 	crypto/bcrypt          code.google.com/p/go.crypto/bcrypt
@@ -1315,7 +1315,7 @@
 	http://weekly.golang.org/doc/go1.html#equality
 
 The rune type is now an alias for int32 and character literals have the default
-type of rune. Code that uses int where it should use rune will break. 
+type of rune. Code that uses int where it should use rune will break.
 See the Go 1 release notes for the details:
 	http://weekly.golang.org/doc/go1.html#rune
 
@@ -2948,7 +2948,7 @@
 not classified as printable by unicode.IsPrint. Previously Quote would escape
 all non-ASCII characters. This also affects the fmt package's "%q" formatting
 directive. The previous quoting behavior is still available via strconv's new
-QuoteToASCII function.   
+QuoteToASCII function.
 
 Most instances of the type map[string][]string in the http package have been
 replaced with the new Values type. The http.Values type has the Get, Set, Add,
@@ -4079,7 +4079,7 @@
 
 The log package's Exit, Exitf, and Exitln functions have been renamed Fatal,
 Fatalf, and Fatalln respectively. This brings them in line with the naming of
-the testing package. 
+the testing package.
 
 The port to the "tiny" operating system has been removed. It is unmaintained
 and untested. It was a toy to show that Go can run on raw hardware and it
@@ -4087,7 +4087,7 @@
 history, so it could be brought back if needed later.
 
 This release also changes some of the internal structure of the memory
-allocator in preparation for other garbage collector changes. 
+allocator in preparation for other garbage collector changes.
 If you run into problems, please let us know.
 There is one known issue that we are aware of but have not debugged yet:
 	http://code.google.com/p/go/issues/detail?id=1464&amp;.
@@ -4322,7 +4322,7 @@
 <h2 id="2010-12-22">2010-12-22</h2>
 
 <pre>
-A small release this week. The most significant change is that some 
+A small release this week. The most significant change is that some
 outstanding cgo issues were resolved.
 
 * cgo: handle references to symbols in shared libraries.
@@ -4585,7 +4585,7 @@
 few bugs, mostly around conversions between unsigned integer and floating-point
 values, but it's stabilizing.
 
-In addition, there have been many smaller fixes and updates: 
+In addition, there have been many smaller fixes and updates:
 
 * 6l: generate dwarf variable names with disambiguating suffix.
 * container/list: make Remove return Value of removed element.
@@ -4643,7 +4643,7 @@
 <h2 id="2010-10-27">2010-10-27</h2>
 
 <pre>
-*** This release changes the encoding used by package gob. 
+*** This release changes the encoding used by package gob.
     If you store gobs on disk, see below. ***
 
 The ARM port (5g) now passes all tests. The optimizer is not yet enabled, and
@@ -4659,11 +4659,11 @@
 can be simplified to:
 	[][]int{{1, 2, 3}, {4, 5}}
 	map[string]Point{"x": {1.5, -3.5}, "y": {0, 0}}
-Gofmt can make these simplifications mechanically when invoked with the 
+Gofmt can make these simplifications mechanically when invoked with the
 new -s flag.
 
 The built-in copy function can now copy bytes from a string value to a []byte.
-Code like this (for []byte b and string s): 
+Code like this (for []byte b and string s):
 	for i := 0; i &lt; len(s); i++ {
 		b[i] = s[i]
 	}
@@ -4674,7 +4674,7 @@
 registered ahead of time with the new Register function. These changes required
 a backwards-incompatible change to the wire format.  Data written with the old
 version of the package will not be readable with the new one, and vice versa.
-(Steps were made in this change to make sure this doesn't happen again.) 
+(Steps were made in this change to make sure this doesn't happen again.)
 We don't know of anyone using gobs to create permanent data, but if you do this
 and need help converting, please let us know, and do not update to this release
 yet.  We will help you convert your data.
@@ -4717,7 +4717,7 @@
 See the previous release notes for details:
 	http://golang.org/doc/devel/release.html#2010-10-13
 
-Also included are major improvements to the linker. It is now faster, 
+Also included are major improvements to the linker. It is now faster,
 uses less memory, and more parallelizable (but not yet parallel).
 
 The nntp package has been removed from the standard library.
@@ -4840,7 +4840,7 @@
 If you want the promotion to ...,  append ... to the argument:
         func message(f string, s ...interface{}) { fmt.Printf(f, s...) }
 Without the ..., s would be passed to Printf as a single argument of type
-[]interface{}.  The bad news is you might need to fix up some of your code, 
+[]interface{}.  The bad news is you might need to fix up some of your code,
 but the compiler will detect the situation and warn you.
 
 Also, the http.Handler and http.HandlerFunc types have changed. Where http
@@ -4850,8 +4850,8 @@
 of your handler function's first parameter. See:
   http://golang.org/pkg/http/#Handler
 
-The utf8 package has a new type, String, that provides efficient indexing 
-into utf8 strings by rune (previously an expensive conversion to []int 
+The utf8 package has a new type, String, that provides efficient indexing
+into utf8 strings by rune (previously an expensive conversion to []int
 was required). See:
   http://golang.org/pkg/utf8/#String
 
@@ -5045,7 +5045,7 @@
 
 <pre>
 This release includes the syntactic modernization of more than 100 files in /test,
-and these additions, changes, and fixes: 
+and these additions, changes, and fixes:
 * 6l/8l: emit DWARF in macho.
 * 8g: use FCHS, not FMUL, for minus float.
 * 8l: emit DWARF in ELF,
@@ -5118,7 +5118,7 @@
 to make changes to your environment variables and Makefiles.
 
 All environment variables are now optional:
- - $GOOS and $GOARCH are now optional; their values should now be inferred 
+ - $GOOS and $GOARCH are now optional; their values should now be inferred
    automatically by the build system,
  - $GOROOT is now optional, but if you choose not to set it you must run
    'gomake' instead of 'make' or 'gmake' when developing Go programs
@@ -5133,7 +5133,7 @@
 to this:
     include ../../Make.inc
 
-This release also removes the deprecated functions in regexp and the 
+This release also removes the deprecated functions in regexp and the
 once package. Any code that still uses them will break.
 See the notes from the last release for details:
     http://golang.org/doc/devel/release.html#2010-08-11
@@ -5191,13 +5191,13 @@
 the once package after this release. See:
     http://golang.org/pkg/sync/#Once
 All instances of once in the standard library have been replaced with
-sync.Once. Reviewing these changes may help you modify your existing code. 
+sync.Once. Reviewing these changes may help you modify your existing code.
 The relevant changeset:
     http://code.google.com/p/go/source/detail?r=fa2c43595119
 
 A new set of methods has been added to the regular expression package, regexp.
 These provide a uniformly named approach to discovering the matches of an
-expression within a piece of text; see the package documentation for details: 
+expression within a piece of text; see the package documentation for details:
     http://golang.org/pkg/regexp/
 These new methods will, in a later release, replace the old methods for
 matching substrings.  The following methods are deprecated:
@@ -5207,10 +5207,10 @@
     MatchSlices (use FindSubmatch)
     AllMatches (use FindAll; note that n&lt;0 means 'all matches'; was n&lt;=0)
     AllMatchesString (use FindAllString; note that n&lt;0 means 'all matches'; was n&lt;=0)
-(Plus there are ten new methods you didn't know you wanted.) 
+(Plus there are ten new methods you didn't know you wanted.)
 Please update your code to use the new routines before the next release.
 
-An image.Image now has a Bounds rectangle, where previously it ranged 
+An image.Image now has a Bounds rectangle, where previously it ranged
 from (0, 0) to (Width, Height). Loops that previously looked like:
     for y := 0; y &lt; img.Height(); y++ {
         for x := 0; x &lt; img.Width(); x++ {
@@ -5283,7 +5283,7 @@
 * syscall: make go errors not clash with windows errors (thanks Alex Brainman).
 * test/run: diff old new,
 * websocket: correct challenge response (thanks Tarmigan Casebolt),
-        fix bug involving spaces in header keys (thanks Bill Neubauer). 
+        fix bug involving spaces in header keys (thanks Bill Neubauer).
 </pre>
 
 <h2 id="2010-07-29">2010-07-29</h2>
@@ -5379,12 +5379,12 @@
 <h2 id="2010-07-01">2010-07-01</h2>
 
 <pre>
-This release includes some package changes that may require changes to 
+This release includes some package changes that may require changes to
 client code.
 
 The Split function in the bytes and strings packages has been changed.
 The count argument, which limits the size of the return, previously treated
-zero as unbounded. It now treats 0 as 0, and will return an empty slice.  
+zero as unbounded. It now treats 0 as 0, and will return an empty slice.
 To request unbounded results, use -1 (or some other negative value).
 The new Replace functions in bytes and strings share this behavior.
 This may require you change your existing code.
@@ -5397,7 +5397,7 @@
 It describes an idiomatic Go program that uses goroutines and channels:
 	http://golang.org/doc/codewalk/sharemem/
 
-There is now a Projects page on the Go Dashboard that lists Go programs, 
+There is now a Projects page on the Go Dashboard that lists Go programs,
 tools, and libraries:
 	http://godashboard.appspot.com/project
 
@@ -5431,7 +5431,7 @@
 * syscall: add syscall_bsd.go to zsycall_freebsd_386.go (thanks Peter Mundy),
         add socketpair (thanks Ivan Krasin).
 * time: implement time zones for Windows (thanks Alex Brainman).
-* x509: support non-self-signed certs. 
+* x509: support non-self-signed certs.
 </pre>
 
 <h2 id="2010-06-21">2010-06-21</h2>
@@ -5445,7 +5445,7 @@
 code. For details, see:
         https://groups.google.com/group/golang-nuts/msg/6fffba90a3e3dc06
 
-The reflect package has been changed. If you have code that uses reflect, 
+The reflect package has been changed. If you have code that uses reflect,
 it will need to be updated. For details, see:
         https://groups.google.com/group/golang-nuts/msg/7a93d07c590e7beb
 
@@ -5477,7 +5477,7 @@
         fix 386 signal handler bug.
 * strconv: add AtofN, FtoaN.
 * string: add IndexFunc and LastIndexFunc (thanks Roger Peppe).
-* syslog: use local network for tests. 
+* syslog: use local network for tests.
 </pre>
 
 <h2 id="2010-06-09">2010-06-09</h2>
@@ -5491,7 +5491,7 @@
 (write x[0:] instead of &amp;x), and conversions can no longer change the names of
 types inside composite types.
 
-The fmt package now includes flexible type-driven (fmt.Scan) and 
+The fmt package now includes flexible type-driven (fmt.Scan) and
 format-driven (fmt.Scanf) scanners for all basic types.
 
 * big: bug fix for Quo aliasing problem.
@@ -5524,7 +5524,7 @@
 * spec: clean-ups and consolidation.
 * syscall: additional Windows compatibility fixes (thanks Alex Brainman).
 * test/bench: added regex-dna-parallel.go (thanks Kyle Consalus).
-* vector: type-specific Do functions now take f(type) (thanks Michael Hoisie). 
+* vector: type-specific Do functions now take f(type) (thanks Michael Hoisie).
 </pre>
 
 <h2 id="2010-05-27">2010-05-27</h2>
@@ -5532,7 +5532,7 @@
 <pre>
 A sizeable release, including standard library improvements and a slew of
 compiler bug fixes. The three-week interval was largely caused by the team
-preparing for Google I/O. 
+preparing for Google I/O.
 
 * big: add Rat type (thanks Evan Shaw),
         new features, much performance tuning, cleanups, and more tests.
@@ -5627,7 +5627,7 @@
 
 <pre>
 This release includes a new Codelab that illustrates the construction of a
-simple wiki web application: 
+simple wiki web application:
 	http://golang.org/doc/codelab/wiki/
 
 It also includes a Codewalk framework for documenting code. See:
@@ -5707,7 +5707,7 @@
 * io/ioutil: fix bug in ReadFile when Open succeeds but Stat fails.
 * kate: update for recent language changes (thanks Evan Shaw).
 * libcgo: initial mingw port work - builds but untested (thanks Joe Poirier).
-* math: new functions and special cases (thanks Charles L. Dorian) 
+* math: new functions and special cases (thanks Charles L. Dorian)
 * net: use chan bool instead of chan *netFD to avoid cycle.
 * netchan: allow client to send as well as receive.
 * nntp: new package, NNTP client (thanks Conrad Meyer).
@@ -5727,17 +5727,17 @@
 <pre>
 This release contains three language changes:
 
-1. Accessing a non-existent key in a map is no longer a run-time error.  
+1. Accessing a non-existent key in a map is no longer a run-time error.
 It now evaluates to the zero value for that type.  For example:
         x := myMap[i]   is now equivalent to:   x, _ := myMap[i]
 
-2. It is now legal to take the address of a function's return value.  
+2. It is now legal to take the address of a function's return value.
 The return values are copied back to the caller only after deferred
 functions have run.
 
 3. The functions panic and recover, intended for reporting and recovering from
 failure, have been added to the spec:
-	http://golang.org/doc/go_spec.html#Handling_panics 
+	http://golang.org/doc/go_spec.html#Handling_panics
 In a related change, panicln is gone, and panic is now a single-argument
 function.  Panic and recover are recognized by the gc compilers but the new
 behavior is not yet implemented.
@@ -5781,7 +5781,7 @@
 * xgb: fix request length and request size (thanks Firmansyah Adiputra).
 * xml: add CopyToken (thanks Kyle Consalus),
         add line numbers to syntax errors (thanks Kyle Consalus),
-        use io.ReadByter in place of local readByter (thanks Raif S. Naffah). 
+        use io.ReadByter in place of local readByter (thanks Raif S. Naffah).
 </pre>
 
 <h2 id="2010-03-22">2010-03-22</h2>
@@ -5827,7 +5827,7 @@
 	http://golang.org/doc/go_spec.html#Complex_numbers
 There is no library support as yet.
 
-This release also includes the goinstall command-line tool. 
+This release also includes the goinstall command-line tool.
 	http://golang.org/cmd/goinstall/
 	http://groups.google.com/group/golang-nuts/t/f091704771128e32
 
@@ -5849,7 +5849,7 @@
 * hash: add Sum64 interface.
 * hash/crc32: add Update function.
 * hash/crc64: new package implementing 64-bit CRC.
-* math: add ilogb, logb, remainder. (thanks Charles L. Dorian) 
+* math: add ilogb, logb, remainder. (thanks Charles L. Dorian)
 * regexp: add ReplaceAllFunc, ReplaceAllStringFunc.
 * runtime: clock garbage collection on bytes allocated, not pages in use.
 * strings: make Split(s, "", n) faster. (thanks Spring Mc)
@@ -5860,12 +5860,12 @@
 <h2 id="2010-03-04">2010-03-04</h2>
 
 <pre>
-There is one language change: the ability to convert a string to []byte or 
+There is one language change: the ability to convert a string to []byte or
 []int.  This deprecates the strings.Bytes and strings.Runes functions.
 You can convert your existing sources using these gofmt commands:
 	gofmt -r 'strings.Bytes(x) -&gt; []byte(x)' -w file-or-directory-list
 	gofmt -r 'strings.Runes(x) -&gt; []int(x)' -w file-or-directory-list
-After running these you might need to delete unused imports of the "strings" 
+After running these you might need to delete unused imports of the "strings"
 package.
 
 Other changes and fixes:
@@ -5883,7 +5883,7 @@
 * path: add Match,
 	fix bug in Match with non-greedy stars (thanks Kevin Ballard)
 * strings: delete Bytes, Runes (see above)
-* tests: an Eratosthenesque concurrent prime sieve (thanks Anh Hai Trinh) 
+* tests: an Eratosthenesque concurrent prime sieve (thanks Anh Hai Trinh)
 </pre>
 
 <h2 id="2010-02-23">2010-02-23</h2>
@@ -5908,7 +5908,7 @@
 sync: fix to work on armv5 (thanks Dean Prichard)
 websocket: fix binary frame size decoding (thanks Timo Savola)
 xml: allow unquoted attribute values in non-Strict mode (thanks Amrut Joshi)
-	treat bool as value in Unmarshal (thanks Michael Hoisie) 
+	treat bool as value in Unmarshal (thanks Michael Hoisie)
 </pre>
 
 <h2 id="2010-02-17">2010-02-17</h2>
@@ -5948,7 +5948,7 @@
 There is one language change: support for ...T parameters:
 	http://golang.org/doc/go_spec.html#Function_types
 
-You can now check build status on various platforms at the Go Dashboard: 
+You can now check build status on various platforms at the Go Dashboard:
 	http://godashboard.appspot.com
 
 * 5l/6l/8l: several minor fixes
@@ -5980,7 +5980,7 @@
 
 <pre>
 There are two small language changes: the meaning of chan &lt;- chan int
-is now defined, and functions returning functions do not need to 
+is now defined, and functions returning functions do not need to
 parenthesize the result type.
 
 There is one significant implementation change: the compilers can
@@ -6136,65 +6136,65 @@
 <h2 id="2009-12-09">2009-12-09</h2>
 
 <pre>
-Since the last release there are two changes to the language: 
+Since the last release there are two changes to the language:
 
-* new builtin copy(dst, src) copies n = min(len(dst), len(src)) 
-  elements to dst from src and returns n.  It works correctly 
-  even if dst and src overlap.  bytes.Copy is gone. 
-  Convert your programs using: 
-      gofmt -w -r 'bytes.Copy(d, s) -&gt; copy(d, s)' *.go 
+* new builtin copy(dst, src) copies n = min(len(dst), len(src))
+  elements to dst from src and returns n.  It works correctly
+  even if dst and src overlap.  bytes.Copy is gone.
+  Convert your programs using:
+      gofmt -w -r 'bytes.Copy(d, s) -&gt; copy(d, s)' *.go
 
-* new syntax x[lo:] is shorthand for x[lo:len(x)]. 
-  Convert your programs using: 
-      gofmt -w -r 'a[b:len(a)] -&gt; a[b:]' *.go 
+* new syntax x[lo:] is shorthand for x[lo:len(x)].
+  Convert your programs using:
+      gofmt -w -r 'a[b:len(a)] -&gt; a[b:]' *.go
 
-In addition, there have been many smaller fixes and updates: 
+In addition, there have been many smaller fixes and updates:
 
-* 6g/8g/5g: many bug fixes 
-* 8g: fix 386 floating point stack bug (thanks Charles Dorian) 
-* all.bash: now works even when $GOROOT has spaces (thanks Sergio Luis O. B. Correia), 
-    starting to make build work with mingw (thanks Hector Chu), 
-    FreeBSD support (thanks Devon O'Dell) 
-* big: much faster on 386. 
-* bytes: new function IndexByte, implemented in assembly 
-    new function Runes (thanks Peter Froehlich), 
-    performance tuning in bytes.Buffer. 
-* codereview: various bugs fixed 
-* container/vector: New is gone; just declare a Vector instead. 
-    call Resize to set len and cap. 
-* cgo: many bug fixes (thanks Eden Li) 
-* crypto: added MD4 (thanks Chris Lennert), 
-    added XTEA (thanks Adrian O'Grady). 
-* crypto/tls: basic client 
-* exp/iterable: new functions (thanks Michael Elkins) 
-* exp/nacl: native client tree builds again 
-* fmt: preliminary performance tuning 
-* go/ast: more powerful Visitor (thanks Roger Peppe) 
-* gob: a few bug fixes 
-* gofmt: better handling of standard input, error reporting (thanks Fazlul Shahriar) 
-    new -r flag for rewriting programs 
-* gotest: support for Benchmark functions (thanks Trevor Strohman) 
-* io: ReadFile, WriteFile, ReadDir now in separate package io/ioutil. 
-* json: new Marshal function (thanks Michael Hoisie), 
-    better white space handling (thanks Andrew Skiba), 
-    decoding into native data structures (thanks Sergey Gromov), 
-    handling of nil interface values (thanks Ross Light). 
-* math: correct handling of sin/cos of large angles 
-* net: better handling of Close (thanks Devon O'Dell and Christopher Wedgwood) 
-    support for UDP broadcast (thanks Jonathan Wills), 
-    support for empty packets 
-* rand: top-level functions now safe to call from multiple goroutines 
-(thanks Roger Peppe). 
-* regexp: a few easy optimizations 
-* rpc: better error handling, a few bug fixes 
-* runtime: better signal handling on OS X, malloc fixes, 
-    global channel lock is gone. 
-* sync: RWMutex now allows concurrent readers (thanks Péter Szabó) 
-* template: can use maps as data (thanks James Meneghello) 
-* unicode: updated to Unicode 5.2. 
-* websocket: new package (thanks Fumitoshi Ukai) 
-* xgb: preliminary X Go Bindings (thanks Tor Andersson) 
-* xml: fixed crash (thanks Vish Subramanian) 
-* misc: bbedit config (thanks Anthony Starks), 
-    kate config (thanks Evan Shaw) 
+* 6g/8g/5g: many bug fixes
+* 8g: fix 386 floating point stack bug (thanks Charles Dorian)
+* all.bash: now works even when $GOROOT has spaces (thanks Sergio Luis O. B. Correia),
+    starting to make build work with mingw (thanks Hector Chu),
+    FreeBSD support (thanks Devon O'Dell)
+* big: much faster on 386.
+* bytes: new function IndexByte, implemented in assembly
+    new function Runes (thanks Peter Froehlich),
+    performance tuning in bytes.Buffer.
+* codereview: various bugs fixed
+* container/vector: New is gone; just declare a Vector instead.
+    call Resize to set len and cap.
+* cgo: many bug fixes (thanks Eden Li)
+* crypto: added MD4 (thanks Chris Lennert),
+    added XTEA (thanks Adrian O'Grady).
+* crypto/tls: basic client
+* exp/iterable: new functions (thanks Michael Elkins)
+* exp/nacl: native client tree builds again
+* fmt: preliminary performance tuning
+* go/ast: more powerful Visitor (thanks Roger Peppe)
+* gob: a few bug fixes
+* gofmt: better handling of standard input, error reporting (thanks Fazlul Shahriar)
+    new -r flag for rewriting programs
+* gotest: support for Benchmark functions (thanks Trevor Strohman)
+* io: ReadFile, WriteFile, ReadDir now in separate package io/ioutil.
+* json: new Marshal function (thanks Michael Hoisie),
+    better white space handling (thanks Andrew Skiba),
+    decoding into native data structures (thanks Sergey Gromov),
+    handling of nil interface values (thanks Ross Light).
+* math: correct handling of sin/cos of large angles
+* net: better handling of Close (thanks Devon O'Dell and Christopher Wedgwood)
+    support for UDP broadcast (thanks Jonathan Wills),
+    support for empty packets
+* rand: top-level functions now safe to call from multiple goroutines
+(thanks Roger Peppe).
+* regexp: a few easy optimizations
+* rpc: better error handling, a few bug fixes
+* runtime: better signal handling on OS X, malloc fixes,
+    global channel lock is gone.
+* sync: RWMutex now allows concurrent readers (thanks Péter Szabó)
+* template: can use maps as data (thanks James Meneghello)
+* unicode: updated to Unicode 5.2.
+* websocket: new package (thanks Fumitoshi Ukai)
+* xgb: preliminary X Go Bindings (thanks Tor Andersson)
+* xml: fixed crash (thanks Vish Subramanian)
+* misc: bbedit config (thanks Anthony Starks),
+    kate config (thanks Evan Shaw)
 </pre>
diff --git a/_content/doc/go1.2.html b/_content/doc/go1.2.html
index 1f60514..ee5b8f9 100644
--- a/_content/doc/go1.2.html
+++ b/_content/doc/go1.2.html
@@ -307,7 +307,7 @@
 
 <p>
 The cover tool does two things.
-First, when "go test" is given the <code>-cover</code> flag, it is run automatically 
+First, when "go test" is given the <code>-cover</code> flag, it is run automatically
 to rewrite the source for the package and insert instrumentation statements.
 The test is then compiled and run as usual, and basic coverage statistics are reported:
 </p>
@@ -375,7 +375,7 @@
 There are a number of significant performance improvements in the standard library; here are a few of them.
 </p>
 
-<ul> 
+<ul>
 
 <li>
 The <a href="/pkg/compress/bzip2/"><code>compress/bzip2</code></a>
@@ -568,7 +568,7 @@
 </p>
 
 <pre>
-{{"{{"}}if eq .A 1{{"}}"}} X {{"{{"}}else{{"}}"}} {{"{{"}}if eq .A 2{{"}}"}} Y {{"{{"}}end{{"}}"}} {{"{{"}}end{{"}}"}} 
+{{"{{"}}if eq .A 1{{"}}"}} X {{"{{"}}else{{"}}"}} {{"{{"}}if eq .A 2{{"}}"}} Y {{"{{"}}end{{"}}"}} {{"{{"}}end{{"}}"}}
 </pre>
 
 <p>
@@ -632,7 +632,7 @@
 These methods allow the <a href="/pkg/io/#Reader"><code>Readers</code></a>
 and <a href="/pkg/io/#Writer"><code>Writers</code></a>
 to be re-used on new input and output readers and writers, saving
-allocation overhead. 
+allocation overhead.
 </li>
 
 <li>
@@ -642,7 +642,7 @@
 
 <li>
 The <a href="/pkg/compress/flate/"><code>compress/flate</code></a>
-package adds a <a href="/pkg/compress/flate/#Writer.Reset"><code>Reset</code></a> 
+package adds a <a href="/pkg/compress/flate/#Writer.Reset"><code>Reset</code></a>
 method on the <a href="/pkg/compress/flate/#Writer"><code>Writer</code></a>,
 to make it possible to reduce allocation when, for instance, constructing an
 archive to hold multiple compressed files.
@@ -683,14 +683,14 @@
 </li>
 
 <li>
-The 
+The
 <a href="/pkg/crypto/md5/"><code>crypto/md5</code></a> package
 adds a new <a href="/pkg/crypto/md5/#Sum"><code>Sum</code></a> function
 to simplify hashing without sacrificing performance.
 </li>
 
 <li>
-Similarly, the 
+Similarly, the
 <a href="/pkg/crypto/md5/"><code>crypto/sha1</code></a> package
 adds a new <a href="/pkg/crypto/sha1/#Sum"><code>Sum</code></a> function.
 </li>
@@ -826,7 +826,7 @@
 functions.
 Their options argument allows specification of an image
 <a href="/pkg/image/draw/#Quantizer"><code>Quantizer</code></a> to use;
-if it is <code>nil</code>, the generated GIF will use the 
+if it is <code>nil</code>, the generated GIF will use the
 <a href="/pkg/image/color/palette/#Plan9"><code>Plan9</code></a>
 color map (palette) defined in the new
 <a href="/pkg/image/color/palette/"><code>image/color/palette</code></a> package.
@@ -875,7 +875,7 @@
 whereupon it assumes a GET request.
 Finally, an HTTP server will now serve HEAD
 requests transparently, without the need for special casing in handler code.
-While serving a HEAD request, writes to a 
+While serving a HEAD request, writes to a
 <a href="/pkg/net/http/#Handler"><code>Handler</code></a>'s
 <a href="/pkg/net/http/#ResponseWriter"><code>ResponseWriter</code></a>
 are absorbed by the
@@ -884,8 +884,8 @@
 </li>
 
 <li>
-The <a href="/pkg/os/exec/"><code>os/exec</code></a> package's 
-<a href="/pkg/os/exec/#Cmd.StdinPipe"><code>Cmd.StdinPipe</code></a> method 
+The <a href="/pkg/os/exec/"><code>os/exec</code></a> package's
+<a href="/pkg/os/exec/#Cmd.StdinPipe"><code>Cmd.StdinPipe</code></a> method
 returns an <code>io.WriteCloser</code>, but has changed its concrete
 implementation from <code>*os.File</code> to an unexported type that embeds
 <code>*os.File</code>, and it is now safe to close the returned value.
@@ -946,7 +946,7 @@
 <a href="/pkg/testing/#AllocsPerRun"><code>AllocsPerRun</code></a>
 function now quantizes the return value to an integer (although it
 still has type <code>float64</code>), to round off any error caused by
-initialization and make the result more repeatable. 
+initialization and make the result more repeatable.
 </li>
 
 <li>
diff --git a/_content/doc/go1.3.html b/_content/doc/go1.3.html
index 18b3ec6..42bc589 100644
--- a/_content/doc/go1.3.html
+++ b/_content/doc/go1.3.html
@@ -9,7 +9,7 @@
 <p>
 The latest Go release, version 1.3, arrives six months after 1.2,
 and contains no language changes.
-It focuses primarily on implementation work, providing 
+It focuses primarily on implementation work, providing
 precise garbage collection,
 a major refactoring of the compiler toolchain that results in
 faster builds, especially for large projects,
@@ -18,7 +18,7 @@
 It also has an important refinement to the memory model regarding synchronization.
 As always, Go 1.3 keeps the <a href="/doc/go1compat.html">promise
 of compatibility</a>,
-and almost everything 
+and almost everything
 will continue to compile and run without change when moved to 1.3.
 </p>
 
@@ -297,13 +297,13 @@
 
 <h3 id="godoc">Changes to godoc</h3>
 <p>
-When invoked with the <code>-analysis</code> flag, 
+When invoked with the <code>-analysis</code> flag,
 <a href="//godoc.org/golang.org/x/tools/cmd/godoc">godoc</a>
 now performs sophisticated <a href="/lib/godoc/analysis/help.html">static
-analysis</a> of the code it indexes.  
+analysis</a> of the code it indexes.
 The results of analysis are presented in both the source view and the
 package documentation view, and include the call graph of each package
-and the relationships between 
+and the relationships between
 definitions and references,
 types and their methods,
 interfaces and their implementations,
@@ -334,7 +334,7 @@
 Significant instances include:
 </p>
 
-<ul> 
+<ul>
 
 <li>
 The runtime handles defers more efficiently, reducing the memory footprint by about two kilobytes
@@ -536,7 +536,7 @@
 </li>
 
 <li>
-The <a href="/pkg/net/http/"><code>net/http</code></a> package's 
+The <a href="/pkg/net/http/"><code>net/http</code></a> package's
 <a href="/pkg/net/http/#Transport"><code>Transport</code></a>
 now closes <a href="/pkg/net/http/#Request"><code>Request.Body</code></a>
 consistently, even on error.
@@ -556,7 +556,7 @@
 </li>
 
 <li>
-If the main goroutine calls 
+If the main goroutine calls
 <a href="/pkg/runtime/#Goexit"><code>runtime.Goexit</code></a>
 and all other goroutines finish execution, the program now always crashes,
 reporting a detected deadlock.
diff --git a/_content/doc/go1.4.html b/_content/doc/go1.4.html
index c8f7c9c..5d12a10 100644
--- a/_content/doc/go1.4.html
+++ b/_content/doc/go1.4.html
@@ -32,7 +32,7 @@
 <p>
 As always, Go 1.4 keeps the <a href="/doc/go1compat.html">promise
 of compatibility</a>,
-and almost everything 
+and almost everything
 will continue to compile and run without change when moved to 1.4.
 </p>
 
@@ -169,7 +169,7 @@
 docs for the <a href="/pkg/unsafe/"><code>unsafe</code></a> package
 are now explicit that unsafe code is not guaranteed to remain compatible.
 </p>
-  
+
 <p>
 <em>Updating</em>: Nothing technical has changed; this is just a clarification
 of the documentation.
@@ -369,7 +369,7 @@
 <p>
 With this in place,
 the <code>go</code> command will
-refuse to compile a package that imports <code>github.com/rsc/pdf</code>, 
+refuse to compile a package that imports <code>github.com/rsc/pdf</code>,
 ensuring that the code can be moved without breaking users.
 </p>
 
@@ -425,7 +425,7 @@
 </p>
 
 <p>
-For more information, see the 
+For more information, see the
 <a href="https://golang.org/s/go1.4-generate">design document</a>.
 </p>
 
@@ -486,7 +486,7 @@
 <li>
 The <a href="/cmd/go/#hdr-Test_packages"><code>go</code> <code>test</code></a>
 subcommand will compile and link all <code>*_test.go</code> files in the package,
-even when there are no <code>Test</code> functions in them. 
+even when there are no <code>Test</code> functions in them.
 It previously ignored such files.
 </li>
 
@@ -588,7 +588,7 @@
 The <a href="/pkg/bufio/#Scanner"><code>Scanner</code></a> type in the
 <a href="/pkg/bufio/"><code>bufio</code></a> package
 has had a bug fixed that may require changes to custom
-<a href="/pkg/bufio/#SplitFunc"><code>split functions</code></a>. 
+<a href="/pkg/bufio/#SplitFunc"><code>split functions</code></a>.
 The bug made it impossible to generate an empty token at EOF; the fix
 changes the end conditions seen by the split function.
 Previously, scanning stopped at EOF if there was no more data.
@@ -681,7 +681,7 @@
 </li>
 
 <li>
-Also in the crypto/tls package, the server now supports 
+Also in the crypto/tls package, the server now supports
 <a href="https://tools.ietf.org/html/draft-ietf-tls-downgrade-scsv-00">TLS_FALLBACK_SCSV</a>
 to help clients detect fallback attacks.
 (The Go client does not support fallback at all, so it is not vulnerable to
@@ -852,7 +852,7 @@
 has a new facility to provide more control over running a set of tests.
 If the test code contains a function
 <pre>
-func TestMain(m *<a href="/pkg/testing/#M"><code>testing.M</code></a>) 
+func TestMain(m *<a href="/pkg/testing/#M"><code>testing.M</code></a>)
 </pre>
 
 that function will be called instead of running the tests directly.
diff --git a/_content/doc/go1.6.html b/_content/doc/go1.6.html
index c8ec7e7..81be89a 100644
--- a/_content/doc/go1.6.html
+++ b/_content/doc/go1.6.html
@@ -720,10 +720,10 @@
 Second, the
 <a href="/pkg/net/http/#ServeFile"><code>ServeFile</code></a> function now refuses to serve a result
 if the request's URL path contains &ldquo;..&rdquo; (dot-dot) as a path element.
-Programs should typically use <code>FileServer</code> and 
+Programs should typically use <code>FileServer</code> and
 <a href="/pkg/net/http/#Dir"><code>Dir</code></a>
 instead of calling <code>ServeFile</code> directly.
-Programs that need to serve file content in response to requests for URLs containing dot-dot can 
+Programs that need to serve file content in response to requests for URLs containing dot-dot can
 still call <a href="/pkg/net/http/#ServeContent"><code>ServeContent</code></a>.
 Third, the
 <a href="/pkg/net/http/#Client"><code>Client</code></a> now allows user code to set the
diff --git a/_content/doc/go1.8.html b/_content/doc/go1.8.html
index 2a47fac..3b7982c 100644
--- a/_content/doc/go1.8.html
+++ b/_content/doc/go1.8.html
@@ -639,7 +639,7 @@
 <p>
   A known limitation for Go 1.8 is that the profile only reports contention for
   <a href="/pkg/sync/#Mutex"><code>sync.Mutex</code></a>,
-  not 
+  not
   <a href="/pkg/sync/#RWMutex"><code>sync.RWMutex</code></a>.
 </p>
 
diff --git a/_content/doc/mod.md b/_content/doc/mod.md
index 83c147e..e0d058e 100644
--- a/_content/doc/mod.md
+++ b/_content/doc/mod.md
@@ -3567,7 +3567,7 @@
         <code>GONOSUMDB</code>. See
         <a href="#private-module-privacy">Privacy</a>. <code>GOPRIVATE</code>
         also determines whether a module is considered private for
-        <code>GOVCS</code>. 
+        <code>GOVCS</code>.
       </td>
     </tr>
     <tr>
diff --git a/_content/doc/modules/gomod-ref.md b/_content/doc/modules/gomod-ref.md
index ba75ca3..4642884 100644
--- a/_content/doc/modules/gomod-ref.md
+++ b/_content/doc/modules/gomod-ref.md
@@ -36,7 +36,7 @@
 
 For reference on `go` commands, see [Command go](/cmd/go/).
 You can get help from the command line by typing `go help` _command-name_, as
-with `go help mod tidy`. 
+with `go help mod tidy`.
 
 **See also**
 
@@ -232,7 +232,7 @@
 ### Examples {#replace-examples}
 
 * Replacing with a fork of the module repository
-  
+
   In the following example, any version of example.com/othermodule is replaced
   with the specified fork of its code.
 
diff --git a/_content/doc/modules/major-version.md b/_content/doc/modules/major-version.md
index 9143634..0c4fa40 100644
--- a/_content/doc/modules/major-version.md
+++ b/_content/doc/modules/major-version.md
@@ -31,10 +31,10 @@
 
 * Be clear with your users about what releasing the new major version means
   for your support of previous major versions.
-  
+
   Are previous versions deprecated? Supported as they were before? Will you be
   maintaining previous versions, including with bug fixes?
-  
+
 * Be ready to take on the maintenance of two versions: the old and the new.
   For example, if you fix bugs in one, you'll often be porting those fixes into
   the other.
diff --git a/_content/doc/modules/managing-dependencies.md b/_content/doc/modules/managing-dependencies.md
index 1385a6f..b11547a 100644
--- a/_content/doc/modules/managing-dependencies.md
+++ b/_content/doc/modules/managing-dependencies.md
@@ -1,6 +1,6 @@
 <!--{
   "Title": "Managing dependencies",
-  "Path": "/doc/modules/managing-dependencies" 
+  "Path": "/doc/modules/managing-dependencies"
 }-->
 
 When your code uses external packages, those packages (distributed as modules)
@@ -70,7 +70,7 @@
 ## Locating and importing useful packages {#locating_packages}
 
 You can search [pkg.go.dev](https://pkg.go.dev) to find packages with functions
-you might find useful. 
+you might find useful.
 
 When you've found a package you want to use in your code, locate the package
 path at the top of the page and click the Copy path button to copy the path to
@@ -108,7 +108,7 @@
 directory.
 
 As you use Go tools to manage dependencies, the tools update the go.mod file so
-that it maintains a current list of your dependencies. 
+that it maintains a current list of your dependencies.
 
 When you add dependencies, Go tools also create a go.sum file that contains
 checksums of modules you depend on. Go uses this to verify the integrity of
@@ -267,7 +267,7 @@
 You might want to do this when:
 
 *   You want to make your own changes to an external module's code, such as
-    after forking and/or cloning it. For example, you might want to prepare a 
+    after forking and/or cloning it. For example, you might want to prepare a
     fix to the module, then send it as a pull request to the module's developer.
 *   You're building a new module and haven't yet published it, so it's
     unavailable on a repository where the `go get` command can reach it.
@@ -445,7 +445,7 @@
 reference](https://golang.org/cmd/go/#hdr-Module_downloading_and_verification).
 
 You can set the variable to URLs for other module proxy servers, separating URLs
-with either a comma or a pipe. 
+with either a comma or a pipe.
 
 *   When you use a comma, Go tools will try the next URL in the list only if the
     current URL returns an HTTP 404 or 410.
diff --git a/_content/doc/modules/managing-source.md b/_content/doc/modules/managing-source.md
index cb41dce..7c28fb2 100644
--- a/_content/doc/modules/managing-source.md
+++ b/_content/doc/modules/managing-source.md
@@ -52,7 +52,7 @@
 into a repository is generally as simple as with other code.
 
 The following diagram illustrates a source hierarchy for a simple module with
-two packages. 
+two packages.
 
 <img src="images/source-hierarchy.png"
      alt="Diagram illustrating a module source code hierarchy"
@@ -117,7 +117,7 @@
 ## Choosing repository scope {#repository-scope}
 
 You publish code in a module when the code should be versioned independently
-from code in other modules. 
+from code in other modules.
 
 Designing your repository so that it hosts a single module at its root directory
 will help keep maintenance simpler, particularly over time as you publish new
diff --git a/_content/doc/modules/publishing.md b/_content/doc/modules/publishing.md
index f98f07c..737ecd1 100644
--- a/_content/doc/modules/publishing.md
+++ b/_content/doc/modules/publishing.md
@@ -19,9 +19,9 @@
 * For an overview of module development, see [Developing and publishing
   modules](developing)
 * For a high-level module development workflow -- which includes publishing --
-  see [Module release and versioning workflow](/doc/modules/release-workflow).
+  see [Module release and versioning workflow](release-workflow).
 
-## Publishing steps {#steps}
+## Publishing steps
 
 Use the following steps to publish a module.
 
@@ -62,9 +62,9 @@
     ```
 
 1.  Make the module available by running the [`go list`
-  command](/cmd/go/#hdr-List_packages_or_modules) to prompt
-  Go to update its index of modules with information about the module you're
-  publishing. 
+  command](https://golang.org/cmd/go/#hdr-List_packages_or_modules) to prompt
+  Go to update its index of modules with 1nformation about the module you're
+  publishing.
 
     Precede the command with a statement to set the `GOPROXY` environment
     variable to a Go proxy. This will ensure that your request reaches the
@@ -74,12 +74,10 @@
     $ GOPROXY=proxy.golang.org go list -m example.com/mymodule@v0.1.0
     ```
 
-Developers interested in your module import a package from it and run the
-[`go get` command](/ref/mod#go-get)
-just as they would with any other module. They can run the
-[`go get` command](/ref/mod#go-get)
-for latest versions or they can specify a particular version, as in the
-following example:
+Developers interested in your module import a package from it and run the [`go
+get` command]() just as they would with any other module. They can run the [`go
+get` command]() for latest versions or they can specify a particular version, as
+in the following example:
 
 ```
 $ go get example.com/mymodule@v0.1.0
diff --git a/_content/doc/modules/release-workflow.md b/_content/doc/modules/release-workflow.md
index 097a57a..e09af4b 100644
--- a/_content/doc/modules/release-workflow.md
+++ b/_content/doc/modules/release-workflow.md
@@ -5,7 +5,7 @@
 
 When you develop modules for use by other developers, you can follow a workflow
 that helps ensure a reliable, consistent experience for developers using the
-module. This topic describes the high-level steps in that workflow. 
+module. This topic describes the high-level steps in that workflow.
 
 For an overview of module development, see [Developing and publishing
 modules](developing).
@@ -50,7 +50,7 @@
     out. For more, see [Publishing the first (unstable) version](#first-unstable).
 
 1.  After your v0 version is published, you can (and should!) continue to
-    **release new versions** of it. 
+    **release new versions** of it.
 
     These new versions might include bug fixes (patch releases), additions to
     the module's public API (minor releases), and even breaking changes. Because
@@ -99,7 +99,7 @@
 
 You can publish pre-release versions to make a module available for others to
 try it out and give you feedback. A pre-release version includes no guarantee of
-stability. 
+stability.
 
 Pre-release version numbers are appended with a pre-release identifier. For more
 on version numbers, see [Module version numbering](/doc/modules/version-numbers).
diff --git a/_content/doc/modules/version-numbers.md b/_content/doc/modules/version-numbers.md
index 70ec30b..7ad9d97 100644
--- a/_content/doc/modules/version-numbers.md
+++ b/_content/doc/modules/version-numbers.md
@@ -10,23 +10,18 @@
 
 When you're developing code that uses external modules, you can use the version
 numbers to understand an external module's stability when you're considering an
-upgrade. For more on managing versions, see
-[Managing dependencies](/doc/modules/managing-dependencies).
-
-When you're developing your own modules, your version numbers will
+upgrade. When you're developing your own modules, your version numbers will
 signal your modules' stability and backward compatibility to other developers.
-For more about versioning in the module development workflow, see
-[Module release and versioning workflow](/doc/modules/release-workflow).
 
 This topic describes what module version numbers mean.
 
 **See also**
 
 * When you're using external packages in your code, you can manage those
-  dependencies with Go tools. For more, see [Managing dependencies](/doc/modules/managing-dependencies).
+  dependencies with Go tools. For more, see [Managingdependencies](managing-dependencies).
 * If you're developing modules for others to use, you apply a version number
   when you publish the module, tagging the module in its repository. For more,
-  see [Publishing a module](/doc/modules/publishing).
+  see [Publishing a module](publishing).
 
 A released module is published with a version number in the semantic versioning
 model, as in the following illustration:
@@ -86,7 +81,8 @@
   </tbody>
 </table>
 
-## In development {#in-development}
+<a id="in-development" ></a>
+## In development
 
 Signals that the module is still in development and **unstable**. This release
 carries no backward compatibility or stability guarantees.
@@ -95,17 +91,14 @@
 
 **Pseudo-version number**
 
-```
-v0.0.0-20170915032832-14c0d48ead0c
-```
+> v0.0.0-20170915032832-14c0d48ead0c
 
 **v0 number**
 
-```
-v0.x.x
-```
+> v0.x.x
 
-### Pseudo-version number {#pseudo}
+<a id="pseudo" ></a>
+### Pseudo-version number
 
 When a module has not been tagged in its repository, Go tools will generate a
 pseudo-version number for use in the go.mod file of code that calls functions in
@@ -121,11 +114,11 @@
 A pseudo-version number has three parts separated by dashes, as shown in the
 following form:
 
-#### Syntax {#pseudo-syntax}
+#### Syntax
 
 _baseVersionPrefix_-_timestamp_-_revisionIdentifier_
 
-#### Parts {#pseudo-parts}
+#### Parts
 
 * **baseVersionPrefix** (vX.0.0 or vX.Y.Z-0) is a value derived either from a
   semantic version tag that precedes the revision or from vX.0.0 if there is no
@@ -137,7 +130,8 @@
 * **revisionIdentifier** (abcdefabcdef) is a 12-character prefix of the commit
   hash, or in Subversion, a zero-padded revision number.
 
-### v0 number {#v0}
+<a id="v0" ></a>
+### v0 number
 
 A module published with a v0 number will have a formal semantic version number
 with a major, minor, and patch part, as well as an optional pre-release
@@ -149,12 +143,13 @@
 developer with code consuming functions in a v0 module is responsible for
 adapting to incompatible changes until v1 is released.
 
-## Pre-release version {#pre-release}
+<a id="pre-release" ></a>
+## Pre-release version
 
 Signals that this is a pre-release milestone, such as an alpha or beta. This
 release carries no stability guarantees.
 
-#### Example {#pre-release-example}
+#### Example
 
 ```
 vx.x.x-beta.2
@@ -163,12 +158,13 @@
 A module's developer can use a pre-release identifier with any major.minor.patch
 combination by appending a hyphen and the pre-release identifier.
 
-## Minor version {#minor}
+<a id="minor" ></a>
+## Minor version
 
 Signals backward-compatible changes to the module’s public API. This release
 guarantees backward compatibility and stability.
 
-#### Example {#minor-example}
+#### Example
 
 ```
 vx.4.x
@@ -182,12 +178,13 @@
 that another developer might want to use. However, a developer using previous
 minor versions needn’t change their code otherwise.
 
-## Patch version {#patch}
+<a id="patch" ></a>
+## Patch version
 
 Signals changes that don't affect the module's public API or its dependencies.
 This release guarantees backward compatibility and stability.
 
-#### Example {#patch-example}
+#### Example
 
 ```
 vx.x.1
@@ -197,17 +194,16 @@
 fixes. Developers of consuming code can upgrade to this version safely without
 needing to change their code.
 
-## Major version {#major}
+<a id="major" ></a>
+## Major version
 
 Signals backward-incompatible changes in a module’s public API. This release
 carries no guarantee that it will be backward compatible with preceding major
 versions.
 
-#### Example {#major-example}
+#### Example
 
-```
 v1.x.x
-```
 
 A v1 or above version number signals that the module is stable for use (with
 exceptions for its pre-release versions).
@@ -234,6 +230,6 @@
 A major version update makes this a new module with a separate history from the
 module's previous version. If you're developing modules to publish for others,
 see "Publishing breaking API changes" in [Module release and versioning
-workflow](/doc/modules/release-workflow). 
+workflow](release-workflow).
 
-For more on the module directive, see [go.mod reference](/doc/modules/gomod-ref).
+For more on the module directive, see [go.mod reference](gomod-ref).
diff --git a/_content/doc/tutorial/add-a-test.html b/_content/doc/tutorial/add-a-test.html
index 65756cb..d14ddf4 100644
--- a/_content/doc/tutorial/add-a-test.html
+++ b/_content/doc/tutorial/add-a-test.html
@@ -42,7 +42,7 @@
     "regexp"
 )
 
-// TestHelloName calls greetings.Hello with a name, checking 
+// TestHelloName calls greetings.Hello with a name, checking
 // for a valid return value.
 func TestHelloName(t *testing.T) {
     name := "Gladys"
@@ -53,7 +53,7 @@
     }
 }
 
-// TestHelloEmpty calls greetings.Hello with an empty string, 
+// TestHelloEmpty calls greetings.Hello with an empty string,
 // checking for an error.
 func TestHelloEmpty(t *testing.T) {
     msg, err := Hello("")
diff --git a/_content/doc/tutorial/greetings-multiple-people.html b/_content/doc/tutorial/greetings-multiple-people.html
index 1d83192..1e53217 100644
--- a/_content/doc/tutorial/greetings-multiple-people.html
+++ b/_content/doc/tutorial/greetings-multiple-people.html
@@ -66,7 +66,7 @@
         if err != nil {
             return nil, err
         }
-        // In the map, associate the retrieved message with 
+        // In the map, associate the retrieved message with
         // the name.
         messages[name] = message
     }
diff --git a/_content/doc/tutorial/handle-errors.html b/_content/doc/tutorial/handle-errors.html
index 76f7a4f..4ffadbc 100644
--- a/_content/doc/tutorial/handle-errors.html
+++ b/_content/doc/tutorial/handle-errors.html
@@ -39,7 +39,7 @@
         return "", errors.New("empty name")
     }</ins>
 
-    // If a name was received, return a value that embeds the name 
+    // If a name was received, return a value that embeds the name
     // in a greeting message.
     message := fmt.Sprintf("Hi, %v. Welcome!", name)
     return message<ins>, nil</ins>