  	}
  	c.i, c.j = i, j
  }
-diff -r 87dea3f5ebe7 src/pkg/crypto/rsa/pss_test.go
---- a/src/pkg/crypto/rsa/pss_test.go
-+++ b/src/pkg/crypto/rsa/pss_test.go
-@@ -77,6 +77,8 @@
- // TestPSSGolden tests all the test vectors in pss-vect.txt from
- // ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-1/pkcs-1v2-1-vec.zip
- func TestPSSGolden(t *testing.T) {
-+	t.Skip()
-+
- 	inFile, err := os.Open("testdata/pss-vect.txt.bz2")
- 	if err != nil {
- 		t.Fatalf("Failed to open input file: %s", err)
-diff -r 87dea3f5ebe7 src/pkg/encoding/base64/base64_test.go
---- a/src/pkg/encoding/base64/base64_test.go
-+++ b/src/pkg/encoding/base64/base64_test.go
-@@ -265,6 +265,7 @@
- 
- // tests that we don't ignore errors from our underlying reader
- func TestDecoderIssue3577(t *testing.T) {
-+	t.Skip()
- 	next := make(chan nextRead, 10)
- 	wantErr := errors.New("my error")
- 	next <- nextRead{5, nil}
+diff -r 87dea3f5ebe7 src/pkg/encoding/json/stream_test.go
+--- a/src/pkg/encoding/json/stream_test.go
++++ b/src/pkg/encoding/json/stream_test.go
+@@ -7,7 +7,7 @@
+ import (
+ 	"bytes"
+ 	"io/ioutil"
+-	"net"
++	// "net"
+ 	"reflect"
+ 	"strings"
+ 	"testing"
+@@ -171,26 +171,26 @@
+ 	}
+ }
+ 
+-var blockingTests = []string{
+-	`{"x": 1}`,
+-	`[1, 2, 3]`,
+-}
++// var blockingTests = []string{
++// 	`{"x": 1}`,
++// 	`[1, 2, 3]`,
++// }
+ 
+-func TestBlocking(t *testing.T) {
+-	for _, enc := range blockingTests {
+-		r, w := net.Pipe()
+-		go w.Write([]byte(enc))
+-		var val interface{}
++// func TestBlocking(t *testing.T) {
++// 	for _, enc := range blockingTests {
++// 		r, w := net.Pipe()
++// 		go w.Write([]byte(enc))
++// 		var val interface{}
+ 
+-		// If Decode reads beyond what w.Write writes above,
+-		// it will block, and the test will deadlock.
+-		if err := NewDecoder(r).Decode(&val); err != nil {
+-			t.Errorf("decoding %s: %v", enc, err)
+-		}
+-		r.Close()
+-		w.Close()
+-	}
+-}
++// 		// If Decode reads beyond what w.Write writes above,
++// 		// it will block, and the test will deadlock.
++// 		if err := NewDecoder(r).Decode(&val); err != nil {
++// 			t.Errorf("decoding %s: %v", enc, err)
++// 		}
++// 		r.Close()
++// 		w.Close()
++// 	}
++// }
+ 
+ func BenchmarkEncoderEncode(b *testing.B) {
+ 	b.ReportAllocs()
 diff -r 87dea3f5ebe7 src/pkg/go/build/build.go
 --- a/src/pkg/go/build/build.go
 +++ b/src/pkg/go/build/build.go

 
 func TestIssue2607(t *testing.T) {
 	// This code sequence used to hang.
diff -r 87dea3f5ebe7 src/pkg/math/big/nat.go
--- a/src/pkg/math/big/nat.go
+++ b/src/pkg/math/big/nat.go
@@ -920,11 +920,13 @@
 	ndigits int // digit length of divisor in terms of output base digits
 }
 
-var cacheBase10 struct {
+type cacheBase10struct struct {
 	sync.Mutex
 	table [64]divisor // cached divisors for base 10
 }
 
+var cacheBase10 cacheBase10struct
+
 // expWW computes x**y
 func (z nat) expWW(x, y Word) nat {
 	return z.expNN(nat(nil).setWord(x), nat(nil).setWord(y), nil)
diff -r 87dea3f5ebe7 src/pkg/math/big/nat_test.go
--- a/src/pkg/math/big/nat_test.go
+++ b/src/pkg/math/big/nat_test.go

 }
 
 func readTestFile(t *testing.T, zt ZipTest, ft ZipTestFile, f *File) {
diff -r 87dea3f5ebe7 src/pkg/crypto/rc4/rc4_ref.go
--- a/src/pkg/crypto/rc4/rc4_ref.go
+++ b/src/pkg/crypto/rc4/rc4_ref.go
