diff --git a/src/pkg/archive/zip/writer_test.go b/src/pkg/archive/zip/writer_test.go
index b562f8430538e51425a70d2e8edc63beaa86a07b..25491dc753d56225b08c7af0285b867e7442d706 100644
--- a/src/pkg/archive/zip/writer_test.go
+++ b/src/pkg/archive/zip/writer_test.go
@@ -7,7 +7,7 @@ package zip
 import (
 	"bytes"
 	"io/ioutil"
-	"rand"
+	"math/rand"
 	"testing"
 )
 
diff --git a/src/pkg/bufio/bufio.go b/src/pkg/bufio/bufio.go
index 7c4f90d85c14bcdb2b92c748285a8631e6db88ce..61e338b61657519aeec1744f41fc7aff601ec03e 100644
--- a/src/pkg/bufio/bufio.go
+++ b/src/pkg/bufio/bufio.go
@@ -11,7 +11,7 @@ import (
 	"bytes"
 	"io"
 	"strconv"
-	"utf8"
+	"unicode/utf8"
 )
 
 const (
diff --git a/src/pkg/bufio/bufio_test.go b/src/pkg/bufio/bufio_test.go
index 1d3acea367ff97dda8abab7860ecfa95fd490b9c..1f893951c15bd14c63595d760a421d6556c9cf1d 100644
--- a/src/pkg/bufio/bufio_test.go
+++ b/src/pkg/bufio/bufio_test.go
@@ -14,7 +14,7 @@ import (
 	"strings"
 	"testing"
 	"testing/iotest"
-	"utf8"
+	"unicode/utf8"
 )
 
 // Reads from a reader and rot13s the result.
diff --git a/src/pkg/bytes/buffer.go b/src/pkg/bytes/buffer.go
index d1a5b68dc812527dd33b223105d98e4069ab7a03..e66ac026e5beb8232a71dae4c10d6077220dc74a 100644
--- a/src/pkg/bytes/buffer.go
+++ b/src/pkg/bytes/buffer.go
@@ -9,7 +9,7 @@ package bytes
 import (
 	"errors"
 	"io"
-	"utf8"
+	"unicode/utf8"
 )
 
 // A Buffer is a variable-sized buffer of bytes with Read and Write methods.
diff --git a/src/pkg/bytes/buffer_test.go b/src/pkg/bytes/buffer_test.go
index c271b482e152d67fe7c0d0a370aabca9c8c86b88..523597003226100e1a1334c7bfcf17f5c60e5b48 100644
--- a/src/pkg/bytes/buffer_test.go
+++ b/src/pkg/bytes/buffer_test.go
@@ -7,9 +7,9 @@ package bytes_test
 import (
 	. "bytes"
 	"io"
-	"rand"
+	"math/rand"
 	"testing"
-	"utf8"
+	"unicode/utf8"
 )
 
 const N = 10000  // make this bigger for a larger (and slower) test
diff --git a/src/pkg/bytes/bytes.go b/src/pkg/bytes/bytes.go
index 56306b0288fc720f501335d0cc5805c8d54519b3..9bfd88fa39894a589fa7658495a52f4a5ee66408 100644
--- a/src/pkg/bytes/bytes.go
+++ b/src/pkg/bytes/bytes.go
@@ -8,7 +8,7 @@ package bytes
 
 import (
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // Compare returns an integer comparing the two byte arrays lexicographically.
diff --git a/src/pkg/bytes/bytes_test.go b/src/pkg/bytes/bytes_test.go
index 62f258de8ac32978437c516848f54191e20d006f..9256b1842742a24298ab825c87e214f78c304df4 100644
--- a/src/pkg/bytes/bytes_test.go
+++ b/src/pkg/bytes/bytes_test.go
@@ -9,7 +9,7 @@ import (
 	"reflect"
 	"testing"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 func eq(a, b []string) bool {
diff --git a/src/pkg/crypto/dsa/dsa.go b/src/pkg/crypto/dsa/dsa.go
index 692d62aa9efcce1b3f94158e0041c6a70a196dec..a2adc7eb5c334f88732a946b54df65a27a045cbf 100644
--- a/src/pkg/crypto/dsa/dsa.go
+++ b/src/pkg/crypto/dsa/dsa.go
@@ -6,9 +6,9 @@
 package dsa
 
 import (
-	"big"
 	"errors"
 	"io"
+	"math/big"
 )
 
 // Parameters represents the domain parameters for a key. These parameters can
diff --git a/src/pkg/crypto/dsa/dsa_test.go b/src/pkg/crypto/dsa/dsa_test.go
index deec08dfd8adad17da19d68ff96dadcd6cf7219e..177aa444dfd207a9a20f730f96d7fb40c7c64f37 100644
--- a/src/pkg/crypto/dsa/dsa_test.go
+++ b/src/pkg/crypto/dsa/dsa_test.go
@@ -5,8 +5,8 @@
 package dsa
 
 import (
-	"big"
 	"crypto/rand"
+	"math/big"
 	"testing"
 )
 
diff --git a/src/pkg/crypto/ecdsa/ecdsa.go b/src/pkg/crypto/ecdsa/ecdsa.go
index b7f235b3b10f819149aa073fd5aad94c9845192b..2f199990c24b4c66e13e27e10478caa53275411c 100644
--- a/src/pkg/crypto/ecdsa/ecdsa.go
+++ b/src/pkg/crypto/ecdsa/ecdsa.go
@@ -13,9 +13,9 @@ package ecdsa
 //     http://www.secg.org/download/aid-780/sec1-v2.pdf
 
 import (
-	"big"
 	"crypto/elliptic"
 	"io"
+	"math/big"
 )
 
 // PublicKey represents an ECDSA public key.
diff --git a/src/pkg/crypto/ecdsa/ecdsa_test.go b/src/pkg/crypto/ecdsa/ecdsa_test.go
index baa3c9e933fd73239704178a6f1d159633b914d7..22360b5708c53e5ab34beed4a9d47c3465200271 100644
--- a/src/pkg/crypto/ecdsa/ecdsa_test.go
+++ b/src/pkg/crypto/ecdsa/ecdsa_test.go
@@ -5,11 +5,11 @@
 package ecdsa
 
 import (
-	"big"
 	"crypto/elliptic"
 	"crypto/rand"
 	"crypto/sha1"
 	"encoding/hex"
+	"math/big"
 	"testing"
 )
 
diff --git a/src/pkg/crypto/elliptic/elliptic.go b/src/pkg/crypto/elliptic/elliptic.go
index 3c3327fe030218a97d7e91dfded2617177b5eb70..b7232a2fad0752f07d85137bf130d78ebc7b17da 100644
--- a/src/pkg/crypto/elliptic/elliptic.go
+++ b/src/pkg/crypto/elliptic/elliptic.go
@@ -14,8 +14,8 @@ package elliptic
 // reverse the transform than to operate in affine coordinates.
 
 import (
-	"big"
 	"io"
+	"math/big"
 	"sync"
 )
 
diff --git a/src/pkg/crypto/elliptic/elliptic_test.go b/src/pkg/crypto/elliptic/elliptic_test.go
index 9578364b58f7e80b70824884eb7a5f0198d2c6ea..a68a3807dfd145c31eb2839c801035e68371d264 100644
--- a/src/pkg/crypto/elliptic/elliptic_test.go
+++ b/src/pkg/crypto/elliptic/elliptic_test.go
@@ -5,9 +5,9 @@
 package elliptic
 
 import (
-	"big"
 	"crypto/rand"
 	"fmt"
+	"math/big"
 	"testing"
 )
 
diff --git a/src/pkg/crypto/ocsp/ocsp.go b/src/pkg/crypto/ocsp/ocsp.go
index f697fa170c43adf3d9b86eb2ab8f5b2c1227336e..a04b5bd713513892a80fff02e526da760f77c399 100644
--- a/src/pkg/crypto/ocsp/ocsp.go
+++ b/src/pkg/crypto/ocsp/ocsp.go
@@ -8,12 +8,12 @@
 package ocsp
 
 import (
-	"asn1"
 	"crypto"
 	"crypto/rsa"
 	_ "crypto/sha1"
 	"crypto/x509"
 	"crypto/x509/pkix"
+	"encoding/asn1"
 	"time"
 )
 
diff --git a/src/pkg/crypto/openpgp/elgamal/elgamal.go b/src/pkg/crypto/openpgp/elgamal/elgamal.go
index 2ed49f621333ef0ac8eb10842a9599f7fbc47b94..a553bdee8dd6ab7e216a55b9611051a26fc45d46 100644
--- a/src/pkg/crypto/openpgp/elgamal/elgamal.go
+++ b/src/pkg/crypto/openpgp/elgamal/elgamal.go
@@ -13,11 +13,11 @@
 package elgamal
 
 import (
-	"big"
 	"crypto/rand"
 	"crypto/subtle"
 	"errors"
 	"io"
+	"math/big"
 )
 
 // PublicKey represents an ElGamal public key.
diff --git a/src/pkg/crypto/openpgp/elgamal/elgamal_test.go b/src/pkg/crypto/openpgp/elgamal/elgamal_test.go
index 101121aa65820e9ad59d7583fa3c7ca832c5a710..c4f99f5c48cd21ff31eb21353ffb76617aa5523b 100644
--- a/src/pkg/crypto/openpgp/elgamal/elgamal_test.go
+++ b/src/pkg/crypto/openpgp/elgamal/elgamal_test.go
@@ -5,9 +5,9 @@
 package elgamal
 
 import (
-	"big"
 	"bytes"
 	"crypto/rand"
+	"math/big"
 	"testing"
 )
 
diff --git a/src/pkg/crypto/openpgp/packet/encrypted_key.go b/src/pkg/crypto/openpgp/packet/encrypted_key.go
index d05103fcd82610959a19cd05dec329e50fe4ace2..b24fa3a3fd3f0f05dcf4a98a2f51be2b82c6d743 100644
--- a/src/pkg/crypto/openpgp/packet/encrypted_key.go
+++ b/src/pkg/crypto/openpgp/packet/encrypted_key.go
@@ -5,13 +5,13 @@
 package packet
 
 import (
-	"big"
 	"crypto/openpgp/elgamal"
 	error_ "crypto/openpgp/error"
 	"crypto/rand"
 	"crypto/rsa"
 	"encoding/binary"
 	"io"
+	"math/big"
 	"strconv"
 )
 
diff --git a/src/pkg/crypto/openpgp/packet/encrypted_key_test.go b/src/pkg/crypto/openpgp/packet/encrypted_key_test.go
index b402245bdae2d9bf3bb4cf1ec3885c4beb37fc93..2b8eff7b3a9a614c8ce7755b69d17c7024e4e6cd 100644
--- a/src/pkg/crypto/openpgp/packet/encrypted_key_test.go
+++ b/src/pkg/crypto/openpgp/packet/encrypted_key_test.go
@@ -5,11 +5,11 @@
 package packet
 
 import (
-	"big"
 	"bytes"
 	"crypto/rand"
 	"crypto/rsa"
 	"fmt"
+	"math/big"
 	"testing"
 )
 
diff --git a/src/pkg/crypto/openpgp/packet/packet.go b/src/pkg/crypto/openpgp/packet/packet.go
index f7ed3536c52502cee7a7f600c0c185d13f56eba6..778df15c0bd17bd39c509c4abb4410b560982b6e 100644
--- a/src/pkg/crypto/openpgp/packet/packet.go
+++ b/src/pkg/crypto/openpgp/packet/packet.go
@@ -7,12 +7,12 @@
 package packet
 
 import (
-	"big"
 	"crypto/aes"
 	"crypto/cast5"
 	"crypto/cipher"
 	error_ "crypto/openpgp/error"
 	"io"
+	"math/big"
 )
 
 // readFull is the same as io.ReadFull except that reading zero bytes returns
diff --git a/src/pkg/crypto/openpgp/packet/private_key.go b/src/pkg/crypto/openpgp/packet/private_key.go
index 742ac51e6e385243e4ee4d9a56ef4623719bd9be..c0ff82b4135fcd107d0cfa78745a6fe4f954302c 100644
--- a/src/pkg/crypto/openpgp/packet/private_key.go
+++ b/src/pkg/crypto/openpgp/packet/private_key.go
@@ -5,7 +5,6 @@
 package packet
 
 import (
-	"big"
 	"bytes"
 	"crypto/cipher"
 	"crypto/dsa"
@@ -16,6 +15,7 @@ import (
 	"crypto/sha1"
 	"io"
 	"io/ioutil"
+	"math/big"
 	"strconv"
 )
 
diff --git a/src/pkg/crypto/openpgp/packet/public_key.go b/src/pkg/crypto/openpgp/packet/public_key.go
index af0bc2273f892efb67547bfbc25947f3cafc43e3..7d71dc49a7b2983718a2930b46a013591675db29 100644
--- a/src/pkg/crypto/openpgp/packet/public_key.go
+++ b/src/pkg/crypto/openpgp/packet/public_key.go
@@ -5,7 +5,6 @@
 package packet
 
 import (
-	"big"
 	"crypto/dsa"
 	"crypto/openpgp/elgamal"
 	error_ "crypto/openpgp/error"
@@ -15,6 +14,7 @@ import (
 	"fmt"
 	"hash"
 	"io"
+	"math/big"
 	"strconv"
 )
 
diff --git a/src/pkg/crypto/rand/util.go b/src/pkg/crypto/rand/util.go
index 322da4aed409fad75c729a714f17da2dec2d9452..b44ae9897ba2acc8039ac6163a2a6505c799eb21 100644
--- a/src/pkg/crypto/rand/util.go
+++ b/src/pkg/crypto/rand/util.go
@@ -5,8 +5,8 @@
 package rand
 
 import (
-	"big"
 	"io"
+	"math/big"
 	"os"
 )
 
diff --git a/src/pkg/crypto/rsa/pkcs1v15.go b/src/pkg/crypto/rsa/pkcs1v15.go
index 901539df174b78ed6ba796fdf1be6a1cb15209b2..d7b053fec5cc40383d6ed1bee1a741acc9ab34f1 100644
--- a/src/pkg/crypto/rsa/pkcs1v15.go
+++ b/src/pkg/crypto/rsa/pkcs1v15.go
@@ -5,11 +5,11 @@
 package rsa
 
 import (
-	"big"
 	"crypto"
 	"crypto/subtle"
 	"errors"
 	"io"
+	"math/big"
 )
 
 // This file implements encryption and decryption using PKCS#1 v1.5 padding.
diff --git a/src/pkg/crypto/rsa/pkcs1v15_test.go b/src/pkg/crypto/rsa/pkcs1v15_test.go
index d69bacfd68506933afdc7eb3fa2488891cb849d0..66188ac10ed8fa4432f523c7c5c26e273a11dc6c 100644
--- a/src/pkg/crypto/rsa/pkcs1v15_test.go
+++ b/src/pkg/crypto/rsa/pkcs1v15_test.go
@@ -5,7 +5,6 @@
 package rsa
 
 import (
-	"big"
 	"bytes"
 	"crypto"
 	"crypto/rand"
@@ -13,6 +12,7 @@ import (
 	"encoding/base64"
 	"encoding/hex"
 	"io"
+	"math/big"
 	"testing"
 	"testing/quick"
 )
diff --git a/src/pkg/crypto/rsa/rsa.go b/src/pkg/crypto/rsa/rsa.go
index c9344ffadffecf2ce22c77d648f425cccf5bd77f..27ccf61c4fc1bf78caadac8e0bdded6405ed4a2d 100644
--- a/src/pkg/crypto/rsa/rsa.go
+++ b/src/pkg/crypto/rsa/rsa.go
@@ -8,12 +8,12 @@ package rsa
 // TODO(agl): Add support for PSS padding.
 
 import (
-	"big"
 	"crypto/rand"
 	"crypto/subtle"
 	"errors"
 	"hash"
 	"io"
+	"math/big"
 )
 
 var bigZero = big.NewInt(0)
diff --git a/src/pkg/crypto/rsa/rsa_test.go b/src/pkg/crypto/rsa/rsa_test.go
index c36bca1cd371d11f0a166bcd97c48bb19c6487a8..0fb9875d0440bde4be6a12635674b6a12b0856da 100644
--- a/src/pkg/crypto/rsa/rsa_test.go
+++ b/src/pkg/crypto/rsa/rsa_test.go
@@ -5,10 +5,10 @@
 package rsa
 
 import (
-	"big"
 	"bytes"
 	"crypto/rand"
 	"crypto/sha1"
+	"math/big"
 	"testing"
 )
 
diff --git a/src/pkg/crypto/tls/generate_cert.go b/src/pkg/crypto/tls/generate_cert.go
index ee8784ca6932e4c13b319878585f66627e3d1c12..c4463ff48f8bd096fa7736dd8341969a5d4be817 100644
--- a/src/pkg/crypto/tls/generate_cert.go
+++ b/src/pkg/crypto/tls/generate_cert.go
@@ -8,7 +8,6 @@
 package main
 
 import (
-	"big"
 	"crypto/rand"
 	"crypto/rsa"
 	"crypto/x509"
@@ -16,6 +15,7 @@ import (
 	"encoding/pem"
 	"flag"
 	"log"
+	"math/big"
 	"os"
 	"time"
 )
diff --git a/src/pkg/crypto/tls/handshake_messages_test.go b/src/pkg/crypto/tls/handshake_messages_test.go
index dc68a12239a4eb849213c3f9ba9794d3eb609ceb..87e8f7e428d90e24eb6932fa620233b278bf8b05 100644
--- a/src/pkg/crypto/tls/handshake_messages_test.go
+++ b/src/pkg/crypto/tls/handshake_messages_test.go
@@ -5,7 +5,7 @@
 package tls
 
 import (
-	"rand"
+	"math/rand"
 	"reflect"
 	"testing"
 	"testing/quick"
diff --git a/src/pkg/crypto/tls/handshake_server_test.go b/src/pkg/crypto/tls/handshake_server_test.go
index f2b0a144e5e892b9dc4d31580d52ac7884a1ad49..bc3797947f5fe96ed249ad71fea94327e3a5ce4a 100644
--- a/src/pkg/crypto/tls/handshake_server_test.go
+++ b/src/pkg/crypto/tls/handshake_server_test.go
@@ -5,12 +5,12 @@
 package tls
 
 import (
-	"big"
 	"bytes"
 	"crypto/rsa"
 	"encoding/hex"
 	"flag"
 	"io"
+	"math/big"
 	"net"
 	"strconv"
 	"strings"
diff --git a/src/pkg/crypto/tls/key_agreement.go b/src/pkg/crypto/tls/key_agreement.go
index ba34606eea2f214bc614df554372468478913bcc..08fb852d66a7403ad5d0ec941f8c6b84e41279c1 100644
--- a/src/pkg/crypto/tls/key_agreement.go
+++ b/src/pkg/crypto/tls/key_agreement.go
@@ -5,7 +5,6 @@
 package tls
 
 import (
-	"big"
 	"crypto"
 	"crypto/elliptic"
 	"crypto/md5"
@@ -14,6 +13,7 @@ import (
 	"crypto/x509"
 	"errors"
 	"io"
+	"math/big"
 )
 
 // rsaKeyAgreement implements the standard TLS key agreement where the client
diff --git a/src/pkg/crypto/x509/pkcs1.go b/src/pkg/crypto/x509/pkcs1.go
index 8338ae1dd53e1db27be3f8d0d39c21aef11363fe..31d0dd0c2264e50ededc180794addbcfccc07c96 100644
--- a/src/pkg/crypto/x509/pkcs1.go
+++ b/src/pkg/crypto/x509/pkcs1.go
@@ -5,10 +5,10 @@
 package x509
 
 import (
-	"asn1"
-	"big"
 	"crypto/rsa"
+	"encoding/asn1"
 	"errors"
+	"math/big"
 )
 
 // pkcs1PrivateKey is a structure which mirrors the PKCS#1 ASN.1 for an RSA private key.
diff --git a/src/pkg/crypto/x509/pkix/pkix.go b/src/pkg/crypto/x509/pkix/pkix.go
index 332a39462120a3a8b114cab77c24e18f2ad245de..b35274c9ae16b6340da0f06fccafea651ccef226 100644
--- a/src/pkg/crypto/x509/pkix/pkix.go
+++ b/src/pkg/crypto/x509/pkix/pkix.go
@@ -7,8 +7,8 @@
 package pkix
 
 import (
-	"asn1"
-	"big"
+	"encoding/asn1"
+	"math/big"
 	"time"
 )
 
diff --git a/src/pkg/crypto/x509/x509.go b/src/pkg/crypto/x509/x509.go
index da8b28337ebe1d01c67251f42ab12592e38b350d..9ff7db9a0f99ffb0fa02e80d88ac1e2110d8b623 100644
--- a/src/pkg/crypto/x509/x509.go
+++ b/src/pkg/crypto/x509/x509.go
@@ -6,17 +6,17 @@
 package x509
 
 import (
-	"asn1"
-	"big"
 	"bytes"
 	"crypto"
 	"crypto/dsa"
 	"crypto/rsa"
 	"crypto/sha1"
 	"crypto/x509/pkix"
+	"encoding/asn1"
 	"encoding/pem"
 	"errors"
 	"io"
+	"math/big"
 	"time"
 )
 
diff --git a/src/pkg/crypto/x509/x509_test.go b/src/pkg/crypto/x509/x509_test.go
index d113f850eb067f8575bdae88bdd7c11def9f13cc..c42471507bebf78f122021e5f5fdf61ade367d42 100644
--- a/src/pkg/crypto/x509/x509_test.go
+++ b/src/pkg/crypto/x509/x509_test.go
@@ -5,16 +5,16 @@
 package x509
 
 import (
-	"asn1"
-	"big"
 	"bytes"
 	"crypto/dsa"
 	"crypto/rand"
 	"crypto/rsa"
 	"crypto/x509/pkix"
+	"encoding/asn1"
 	"encoding/base64"
 	"encoding/hex"
 	"encoding/pem"
+	"math/big"
 	"testing"
 	"time"
 )
diff --git a/src/pkg/encoding/asn1/asn1.go b/src/pkg/encoding/asn1/asn1.go
index 73e733e365912b7fe7b60a2c0034509e3261be7d..a0066654f8d0208006c6e4030d9d33f851b93008 100644
--- a/src/pkg/encoding/asn1/asn1.go
+++ b/src/pkg/encoding/asn1/asn1.go
@@ -20,8 +20,8 @@ package asn1
 // everything by any means.
 
 import (
-	"big"
 	"fmt"
+	"math/big"
 	"reflect"
 	"time"
 )
diff --git a/src/pkg/encoding/asn1/marshal.go b/src/pkg/encoding/asn1/marshal.go
index 583d0104711e3bf7a28face0cffaded9e05ad63c..89c50a70ef4716df86b6beaefbd840f80921955f 100644
--- a/src/pkg/encoding/asn1/marshal.go
+++ b/src/pkg/encoding/asn1/marshal.go
@@ -5,10 +5,10 @@
 package asn1
 
 import (
-	"big"
 	"bytes"
 	"fmt"
 	"io"
+	"math/big"
 	"reflect"
 	"time"
 )
diff --git a/src/pkg/encoding/csv/writer.go b/src/pkg/encoding/csv/writer.go
index 5ea20e100e802211dc4a90f92c9d434ad536af28..c4dcba5668af61672db93d4abb0a7a87aafda8ec 100644
--- a/src/pkg/encoding/csv/writer.go
+++ b/src/pkg/encoding/csv/writer.go
@@ -9,7 +9,7 @@ import (
 	"io"
 	"strings"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // A Writer writes records to a CSV encoded file.
diff --git a/src/pkg/encoding/gob/dump.go b/src/pkg/encoding/gob/dump.go
index c4d4331f76bd2bb5953a20fe0ef508c389b88574..0d0017cc783c6224b4b2e904c33e534bdc60862e 100644
--- a/src/pkg/encoding/gob/dump.go
+++ b/src/pkg/encoding/gob/dump.go
@@ -3,8 +3,8 @@ package main
 // Need to compile package gob with debug.go to build this program.
 
 import (
+	"encoding/gob"
 	"fmt"
-	"gob"
 	"os"
 )
 
diff --git a/src/pkg/encoding/gob/type.go b/src/pkg/encoding/gob/type.go
index 3b862e690e5f66b8a4ddf1ec7d81a03b2f1b9385..1b20843fa2574004f7f9fa76da7736720fa702e4 100644
--- a/src/pkg/encoding/gob/type.go
+++ b/src/pkg/encoding/gob/type.go
@@ -11,7 +11,7 @@ import (
 	"reflect"
 	"sync"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // userTypeInfo stores the information associated with a type the user has handed
diff --git a/src/pkg/encoding/json/decode.go b/src/pkg/encoding/json/decode.go
index 8abd7b4b4cb9543523a8e6010700c83030ce6e60..41295d2d24142d8eeb8815676dc5338c9453e124 100644
--- a/src/pkg/encoding/json/decode.go
+++ b/src/pkg/encoding/json/decode.go
@@ -15,8 +15,8 @@ import (
 	"strconv"
 	"strings"
 	"unicode"
-	"utf16"
-	"utf8"
+	"unicode/utf16"
+	"unicode/utf8"
 )
 
 // Unmarshal parses the JSON-encoded data and stores the result
diff --git a/src/pkg/encoding/json/encode.go b/src/pkg/encoding/json/encode.go
index aac8f91a4473d80d510d63a68ce160153a46d67a..35964c5d9c2378fd5fe021855b6876b67f8b75d4 100644
--- a/src/pkg/encoding/json/encode.go
+++ b/src/pkg/encoding/json/encode.go
@@ -17,7 +17,7 @@ import (
 	"sort"
 	"strconv"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // Marshal returns the JSON encoding of v.
diff --git a/src/pkg/encoding/json/scanner_test.go b/src/pkg/encoding/json/scanner_test.go
index 429ac366d3c64dc0b6aa6aae26d9b360aeaeccf7..a0a5995af8ffb1e695264c10067974780be2b271 100644
--- a/src/pkg/encoding/json/scanner_test.go
+++ b/src/pkg/encoding/json/scanner_test.go
@@ -7,7 +7,7 @@ package json
 import (
 	"bytes"
 	"math"
-	"rand"
+	"math/rand"
 	"reflect"
 	"testing"
 )
diff --git a/src/pkg/encoding/xml/read.go b/src/pkg/encoding/xml/read.go
index 9617150c8f1d1e871b20119b804fbca0fc0a8cd8..c6a3d75a8019432a99359806233c5a3b77104754 100644
--- a/src/pkg/encoding/xml/read.go
+++ b/src/pkg/encoding/xml/read.go
@@ -13,7 +13,7 @@ import (
 	"strconv"
 	"strings"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // BUG(rsc): Mapping between XML elements and data structures is inherently flawed:
diff --git a/src/pkg/encoding/xml/xml.go b/src/pkg/encoding/xml/xml.go
index 525635067e1f6db8075e7cbf53a0f305fb33d982..216d8889b239a92805eff6b7d7af0647b22d3b21 100644
--- a/src/pkg/encoding/xml/xml.go
+++ b/src/pkg/encoding/xml/xml.go
@@ -21,7 +21,7 @@ import (
 	"strconv"
 	"strings"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // A SyntaxError represents a syntax error in the XML input stream.
diff --git a/src/pkg/exp/ebnf/ebnf.go b/src/pkg/exp/ebnf/ebnf.go
index 15c199af6cbd43cbf293eada0c9938f90da6e260..cd8c83c92101556c54c3c44c00c4636cc9b2b716 100644
--- a/src/pkg/exp/ebnf/ebnf.go
+++ b/src/pkg/exp/ebnf/ebnf.go
@@ -25,9 +25,9 @@ package ebnf
 import (
 	"errors"
 	"fmt"
-	"scanner"
+	"text/scanner"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // ----------------------------------------------------------------------------
diff --git a/src/pkg/exp/ebnf/parser.go b/src/pkg/exp/ebnf/parser.go
index 2dad9b4c13d43cf774f2ffbad72acfe875a39525..7a7e3cc16e4441ccdbc18396b08673cbbfb3844e 100644
--- a/src/pkg/exp/ebnf/parser.go
+++ b/src/pkg/exp/ebnf/parser.go
@@ -6,8 +6,8 @@ package ebnf
 
 import (
 	"io"
-	"scanner"
 	"strconv"
+	"text/scanner"
 )
 
 type parser struct {
diff --git a/src/pkg/exp/norm/composition.go b/src/pkg/exp/norm/composition.go
index 7965ffc5742dbc11d9516a83089f62152201f97b..7cad8a2ccd79abdd8fc4b0ca6c1d07f585d502db 100644
--- a/src/pkg/exp/norm/composition.go
+++ b/src/pkg/exp/norm/composition.go
@@ -4,7 +4,7 @@
 
 package norm
 
-import "utf8"
+import "unicode/utf8"
 
 const (
 	maxCombiningChars = 30
diff --git a/src/pkg/exp/norm/input.go b/src/pkg/exp/norm/input.go
index 12360a8fda1e22419d69ae1cf3de144c6e90ef45..ce159e9050cea671ecc1953a8f12207c90623760 100644
--- a/src/pkg/exp/norm/input.go
+++ b/src/pkg/exp/norm/input.go
@@ -4,7 +4,7 @@
 
 package norm
 
-import "utf8"
+import "unicode/utf8"
 
 type input interface {
 	skipASCII(p int) int
diff --git a/src/pkg/exp/norm/maketables.go b/src/pkg/exp/norm/maketables.go
index c7a3762bdeb625edee63ca31a590a839403c7d30..39bab7f0b6a80ea33582af8b782c80ccf0981ad4 100644
--- a/src/pkg/exp/norm/maketables.go
+++ b/src/pkg/exp/norm/maketables.go
@@ -12,9 +12,9 @@ import (
 	"bytes"
 	"flag"
 	"fmt"
-	"http"
 	"io"
 	"log"
+	"net/http"
 	"os"
 	"regexp"
 	"strconv"
diff --git a/src/pkg/exp/norm/normalize.go b/src/pkg/exp/norm/normalize.go
index 391bc4184f26bede29f42cd065d6ca7ad89ead8e..25bb28d517fb6f1d8f5d9e921a066db0ae5f2624 100644
--- a/src/pkg/exp/norm/normalize.go
+++ b/src/pkg/exp/norm/normalize.go
@@ -5,7 +5,7 @@
 // Package norm contains types and functions for normalizing Unicode strings.
 package norm
 
-import "utf8"
+import "unicode/utf8"
 
 // A Form denotes a canonical representation of Unicode code points.
 // The Unicode-defined normalization and equivalence forms are:
diff --git a/src/pkg/exp/norm/normregtest.go b/src/pkg/exp/norm/normregtest.go
index 744bb1cd6c2c51f2923679a9efecb3a642f11c6e..6610c257e512617dfb9bb59be8839730af066418 100644
--- a/src/pkg/exp/norm/normregtest.go
+++ b/src/pkg/exp/norm/normregtest.go
@@ -10,9 +10,9 @@ import (
 	"exp/norm"
 	"flag"
 	"fmt"
-	"http"
 	"io"
 	"log"
+	"net/http"
 	"os"
 	"path"
 	"regexp"
@@ -20,7 +20,7 @@ import (
 	"strconv"
 	"strings"
 	"time"
-	"utf8"
+	"unicode/utf8"
 )
 
 func main() {
diff --git a/src/pkg/exp/norm/trie_test.go b/src/pkg/exp/norm/trie_test.go
index bbd5c03e7b3a1af5b833a93a46a88a8837d5e9e6..7308d281b5032c0c0005e14d525b71f955260825 100644
--- a/src/pkg/exp/norm/trie_test.go
+++ b/src/pkg/exp/norm/trie_test.go
@@ -2,7 +2,7 @@ package norm
 
 import (
 	"testing"
-	"utf8"
+	"unicode/utf8"
 )
 
 // Test data is located in triedata_test.go; generated by maketesttables.
diff --git a/src/pkg/exp/norm/triegen.go b/src/pkg/exp/norm/triegen.go
index 56cba3219668c510b39649708507d8eeb4c56067..5edadac0a41672e1df5ccfba8825895184a0b1fe 100644
--- a/src/pkg/exp/norm/triegen.go
+++ b/src/pkg/exp/norm/triegen.go
@@ -14,7 +14,7 @@ import (
 	"fmt"
 	"hash/crc32"
 	"log"
-	"utf8"
+	"unicode/utf8"
 )
 
 const blockSize = 64
diff --git a/src/pkg/exp/spdy/read.go b/src/pkg/exp/spdy/read.go
index 3de80c04d78412573c2a3279a753855fcadf933b..4830a1d6bfd3ae02a4771bd59b0c0b8f247baefd 100644
--- a/src/pkg/exp/spdy/read.go
+++ b/src/pkg/exp/spdy/read.go
@@ -7,8 +7,8 @@ package spdy
 import (
 	"compress/zlib"
 	"encoding/binary"
-	"http"
 	"io"
+	"net/http"
 	"strings"
 )
 
diff --git a/src/pkg/exp/spdy/spdy_test.go b/src/pkg/exp/spdy/spdy_test.go
index cb91e028613c5be13b57dd9a413df8211b4951c8..c1cad4b37c6b3c1f22fb36a23771f209996f9e05 100644
--- a/src/pkg/exp/spdy/spdy_test.go
+++ b/src/pkg/exp/spdy/spdy_test.go
@@ -6,8 +6,8 @@ package spdy
 
 import (
 	"bytes"
-	"http"
 	"io"
+	"net/http"
 	"reflect"
 	"testing"
 )
diff --git a/src/pkg/exp/spdy/types.go b/src/pkg/exp/spdy/types.go
index 87d6edbd560307a76bb37dcc81dd73643eb09b05..2648c4f75f93fc08a9e5209c8ec48a9db65cad87 100644
--- a/src/pkg/exp/spdy/types.go
+++ b/src/pkg/exp/spdy/types.go
@@ -7,8 +7,8 @@ package spdy
 import (
 	"bytes"
 	"compress/zlib"
-	"http"
 	"io"
+	"net/http"
 )
 
 //  Data Frame Format
diff --git a/src/pkg/exp/spdy/write.go b/src/pkg/exp/spdy/write.go
index 537154fbd3d2208992716d35fc32ff04c7749baf..3dd2ca1d5d8ef644bed70ea7ddbc280ccabf289b 100644
--- a/src/pkg/exp/spdy/write.go
+++ b/src/pkg/exp/spdy/write.go
@@ -6,8 +6,8 @@ package spdy
 
 import (
 	"encoding/binary"
-	"http"
 	"io"
+	"net/http"
 	"strings"
 )
 
diff --git a/src/pkg/exp/ssh/client.go b/src/pkg/exp/ssh/client.go
index 9a2c0c597709cbca9e2f60b51861d894657df5d5..da45688eee08ca362a471a8c0eed54386006b3ef 100644
--- a/src/pkg/exp/ssh/client.go
+++ b/src/pkg/exp/ssh/client.go
@@ -5,12 +5,12 @@
 package ssh
 
 import (
-	"big"
 	"crypto"
 	"crypto/rand"
 	"errors"
 	"fmt"
 	"io"
+	"math/big"
 	"net"
 	"sync"
 )
diff --git a/src/pkg/exp/ssh/common.go b/src/pkg/exp/ssh/common.go
index f68c353a397b0dcd5d484e0ed23abf9e19939efe..273820b6428c62706df848f91f0cce4f83b37a7c 100644
--- a/src/pkg/exp/ssh/common.go
+++ b/src/pkg/exp/ssh/common.go
@@ -5,7 +5,7 @@
 package ssh
 
 import (
-	"big"
+	"math/big"
 	"strconv"
 	"sync"
 )
diff --git a/src/pkg/exp/ssh/messages.go b/src/pkg/exp/ssh/messages.go
index 5eae181872a2d12a161a42f7784b52815a1b433b..e24b6398b56fbd57fc349570634b5834e5edf09d 100644
--- a/src/pkg/exp/ssh/messages.go
+++ b/src/pkg/exp/ssh/messages.go
@@ -5,9 +5,9 @@
 package ssh
 
 import (
-	"big"
 	"bytes"
 	"io"
+	"math/big"
 	"reflect"
 )
 
diff --git a/src/pkg/exp/ssh/messages_test.go b/src/pkg/exp/ssh/messages_test.go
index 629f3d3b145acf183e31044c0b486541dde6d89d..fe4c397dc3a2ccc6bb81c1a474adef54b564874f 100644
--- a/src/pkg/exp/ssh/messages_test.go
+++ b/src/pkg/exp/ssh/messages_test.go
@@ -5,8 +5,8 @@
 package ssh
 
 import (
-	"big"
-	"rand"
+	"math/big"
+	"math/rand"
 	"reflect"
 	"testing"
 	"testing/quick"
diff --git a/src/pkg/exp/ssh/server.go b/src/pkg/exp/ssh/server.go
index 2ae8079d2dba713fc253bf59475d453482e394b9..62035d52b7dd6ba7e5539ac497ecfee19440da17 100644
--- a/src/pkg/exp/ssh/server.go
+++ b/src/pkg/exp/ssh/server.go
@@ -5,7 +5,6 @@
 package ssh
 
 import (
-	"big"
 	"bytes"
 	"crypto"
 	"crypto/rand"
@@ -14,6 +13,7 @@ import (
 	"encoding/pem"
 	"errors"
 	"io"
+	"math/big"
 	"net"
 	"sync"
 )
diff --git a/src/pkg/exp/types/const.go b/src/pkg/exp/types/const.go
index 7b0e35566f265d42940c20d2e0fd4bd21f1517e9..048f63bb7d380ebadb59405a5a42e2b371a979f1 100644
--- a/src/pkg/exp/types/const.go
+++ b/src/pkg/exp/types/const.go
@@ -7,8 +7,8 @@
 package types
 
 import (
-	"big"
 	"go/token"
+	"math/big"
 	"strconv"
 )
 
diff --git a/src/pkg/exp/types/gcimporter.go b/src/pkg/exp/types/gcimporter.go
index 69dbd5ac5f34c2c766ef66f9f9808d3b82d4d7ae..4167caf3f0e7875f283e5068283d205d44481c0b 100644
--- a/src/pkg/exp/types/gcimporter.go
+++ b/src/pkg/exp/types/gcimporter.go
@@ -8,17 +8,17 @@
 package types
 
 import (
-	"big"
 	"errors"
 	"fmt"
 	"go/ast"
 	"go/token"
 	"io"
+	"math/big"
 	"os"
 	"path/filepath"
 	"runtime"
-	"scanner"
 	"strconv"
+	"text/scanner"
 )
 
 const trace = false // set to true for debugging
diff --git a/src/pkg/exp/types/gcimporter_test.go b/src/pkg/exp/types/gcimporter_test.go
index ec87f5d514b3535b497b1b171bae7ca862c0329d..3f66d226153aa69bbe0c2616c8afb82f6d4c9b40 100644
--- a/src/pkg/exp/types/gcimporter_test.go
+++ b/src/pkg/exp/types/gcimporter_test.go
@@ -5,9 +5,9 @@
 package types
 
 import (
-	"exec"
 	"go/ast"
 	"io/ioutil"
+	"os/exec"
 	"path/filepath"
 	"runtime"
 	"strings"
diff --git a/src/pkg/expvar/expvar.go b/src/pkg/expvar/expvar.go
index f5d6ed586c87276ef5dcbd62009309a19465ece9..629280acf76e05297cac9ead95457db2ef91b0f8 100644
--- a/src/pkg/expvar/expvar.go
+++ b/src/pkg/expvar/expvar.go
@@ -23,10 +23,10 @@ package expvar
 
 import (
 	"bytes"
+	"encoding/json"
 	"fmt"
-	"http"
-	"json"
 	"log"
+	"net/http"
 	"os"
 	"runtime"
 	"strconv"
diff --git a/src/pkg/expvar/expvar_test.go b/src/pkg/expvar/expvar_test.go
index 8f7a48168eaa61b05df3f36f6d52cde371fbfad4..fc607274b280062572e74895ca57108481ee644a 100644
--- a/src/pkg/expvar/expvar_test.go
+++ b/src/pkg/expvar/expvar_test.go
@@ -5,7 +5,7 @@
 package expvar
 
 import (
-	"json"
+	"encoding/json"
 	"testing"
 )
 
diff --git a/src/pkg/fmt/format.go b/src/pkg/fmt/format.go
index 80eb9863353c73e7b793f11d9a8923244eadf229..3957a5a261df160c91385b2b03053947143c76e3 100644
--- a/src/pkg/fmt/format.go
+++ b/src/pkg/fmt/format.go
@@ -8,7 +8,7 @@ import (
 	"bytes"
 	"strconv"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 const (
diff --git a/src/pkg/fmt/print.go b/src/pkg/fmt/print.go
index 13456445449b5850bb7c6c31d6a9b9d403860940..bfa88d187049ab9d6a88030fe60830f2c6cbdd94 100644
--- a/src/pkg/fmt/print.go
+++ b/src/pkg/fmt/print.go
@@ -12,7 +12,7 @@ import (
 	"reflect"
 	"sync"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // Some constants in the form of bytes, to avoid string overhead.
diff --git a/src/pkg/fmt/scan.go b/src/pkg/fmt/scan.go
index 7ac3b8edcc171f7ed41749276c6b96c09e1455f3..85571e80c7a1ed04b36d377a079082da66829ba9 100644
--- a/src/pkg/fmt/scan.go
+++ b/src/pkg/fmt/scan.go
@@ -14,7 +14,7 @@ import (
 	"strconv"
 	"strings"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // runeUnreader is the interface to something that can unread runes.
diff --git a/src/pkg/fmt/scan_test.go b/src/pkg/fmt/scan_test.go
index 7dd0015b270a1048e8409a525ec7f2398093bb43..d3c39be60714e5a0ae15760d82b62e0bf15e2144 100644
--- a/src/pkg/fmt/scan_test.go
+++ b/src/pkg/fmt/scan_test.go
@@ -15,7 +15,7 @@ import (
 	"regexp"
 	"strings"
 	"testing"
-	"utf8"
+	"unicode/utf8"
 )
 
 type ScanTest struct {
diff --git a/src/pkg/go/ast/ast.go b/src/pkg/go/ast/ast.go
index f8caafc179a62ec7ece999d9f6737a1c91fd9ab0..a0aa5ff12049f10677da60d4062b61b5ad4e9953 100644
--- a/src/pkg/go/ast/ast.go
+++ b/src/pkg/go/ast/ast.go
@@ -10,7 +10,7 @@ package ast
 import (
 	"go/token"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // ----------------------------------------------------------------------------
diff --git a/src/pkg/go/build/build.go b/src/pkg/go/build/build.go
index 282a508b3b0085327d414f4b8e83a2fd0738d72a..e3de8d0fa7f7a80e5de8cccc03c66dcd2e6efdda 100644
--- a/src/pkg/go/build/build.go
+++ b/src/pkg/go/build/build.go
@@ -8,9 +8,9 @@ package build
 import (
 	"bytes"
 	"errors"
-	"exec"
 	"fmt"
 	"os"
+	"os/exec"
 	"path/filepath"
 	"regexp"
 	"runtime"
diff --git a/src/pkg/go/build/build_test.go b/src/pkg/go/build/build_test.go
index 398e31ce26f7864f20a6c379b3663da80d522821..db8bc6c8a591533f3a510cd08a4536db6543357d 100644
--- a/src/pkg/go/build/build_test.go
+++ b/src/pkg/go/build/build_test.go
@@ -5,7 +5,7 @@
 package build
 
 import (
-	"exec"
+	"os/exec"
 	"path/filepath"
 	"reflect"
 	"runtime"
diff --git a/src/pkg/go/doc/comment.go b/src/pkg/go/doc/comment.go
index e1989226b68cb725245b4fb9c079c9f65dd73ad2..19216f85b96838dfb3e6117140f0db49b6fec61f 100644
--- a/src/pkg/go/doc/comment.go
+++ b/src/pkg/go/doc/comment.go
@@ -11,7 +11,7 @@ import (
 	"io"
 	"regexp"
 	"strings"
-	"template" // for HTMLEscape
+	"text/template" // for HTMLEscape
 )
 
 func isWhitespace(ch byte) bool { return ch == ' ' || ch == '\t' || ch == '\n' || ch == '\r' }
diff --git a/src/pkg/go/doc/example.go b/src/pkg/go/doc/example.go
index 7fdf0bcff6637eede8a87ff7a3b05b2d6eb12fdb..196c957544a1a12428860eeb09a4814378875d74 100644
--- a/src/pkg/go/doc/example.go
+++ b/src/pkg/go/doc/example.go
@@ -10,7 +10,7 @@ import (
 	"go/ast"
 	"strings"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 type Example struct {
diff --git a/src/pkg/go/printer/printer.go b/src/pkg/go/printer/printer.go
index 8f1ed1159dfb7a8ae2f580f1b5db977e9a828801..aba7d93a64bbff874bb94bd87d95d354aa48bdcc 100644
--- a/src/pkg/go/printer/printer.go
+++ b/src/pkg/go/printer/printer.go
@@ -13,7 +13,7 @@ import (
 	"io"
 	"os"
 	"path/filepath"
-	"tabwriter"
+	"text/tabwriter"
 )
 
 const debug = false // enable for debugging
diff --git a/src/pkg/go/scanner/scanner.go b/src/pkg/go/scanner/scanner.go
index dfbdaa3a125dce4b9aa32a4d7ab3c27eca7c6423..cef9c4865083fd333f1a9a888b240695a841b803 100644
--- a/src/pkg/go/scanner/scanner.go
+++ b/src/pkg/go/scanner/scanner.go
@@ -27,7 +27,7 @@ import (
 	"path/filepath"
 	"strconv"
 	"unicode"
-	"utf8"
+	"unicode/utf8"
 )
 
 // A Scanner holds the scanner's internal state while processing
diff --git a/src/pkg/go/token/serialize.go b/src/pkg/go/token/serialize.go
index 611b1b3be9dab5c602bc8deeae0af0acde9cc79f..042d6abdf9d236db8ee759ad448e339e63dc36ff 100644
--- a/src/pkg/go/token/serialize.go
+++ b/src/pkg/go/token/serialize.go
@@ -5,7 +5,7 @@
 package token
 
 import (
-	"gob"
+	"encoding/gob"
 	"io"
 )
 
diff --git a/src/pkg/html/entity_test.go b/src/pkg/html/entity_test.go
index 2cf49d61d2dc5a17b2b6f0a0aadaeaccdae84d6e..b53f866fa2ddff6f22e9c9c831c8eabb1d7197b2 100644
--- a/src/pkg/html/entity_test.go
+++ b/src/pkg/html/entity_test.go
@@ -6,7 +6,7 @@ package html
 
 import (
 	"testing"
-	"utf8"
+	"unicode/utf8"
 )
 
 func TestEntityLength(t *testing.T) {
diff --git a/src/pkg/html/escape.go b/src/pkg/html/escape.go
index b8e6571a2921f3ef91f0d5a141ff98afda87859c..ac9e100df0cb3c8fc1553fa7d5e5a7146502c105 100644
--- a/src/pkg/html/escape.go
+++ b/src/pkg/html/escape.go
@@ -7,7 +7,7 @@ package html
 import (
 	"bytes"
 	"strings"
-	"utf8"
+	"unicode/utf8"
 )
 
 // These replacements permit compatibility with old numeric entities that 
diff --git a/src/pkg/image/jpeg/writer_test.go b/src/pkg/image/jpeg/writer_test.go
index 76b5281c088008747b375a28cb48d223edc52cb4..28e87321361618198a8efc04fa6dc8fd489bc614 100644
--- a/src/pkg/image/jpeg/writer_test.go
+++ b/src/pkg/image/jpeg/writer_test.go
@@ -10,8 +10,8 @@ import (
 	"image/color"
 	"image/png"
 	"io/ioutil"
+	"math/rand"
 	"os"
-	"rand"
 	"testing"
 )
 
diff --git a/src/pkg/index/suffixarray/suffixarray_test.go b/src/pkg/index/suffixarray/suffixarray_test.go
index f6b2f00fb7d8eb53d0a7920dbe50a3b8600ec0f3..df3e449d322e4bd2e29d78d6a3d355028e330113 100644
--- a/src/pkg/index/suffixarray/suffixarray_test.go
+++ b/src/pkg/index/suffixarray/suffixarray_test.go
@@ -6,7 +6,7 @@ package suffixarray
 
 import (
 	"bytes"
-	"rand"
+	"math/rand"
 	"regexp"
 	"sort"
 	"strings"