diff --git a/README.md b/README.md
index a7d334d..4a6ca8e 100644
--- a/README.md
+++ b/README.md
@@ -3,4 +3,11 @@
 This repository holds machine architecture information used by the Go toolchain.
 The parts needed in the main Go repository are copied in.
 
-This repository requires Go 1.5+ with the vendor experiment enabled.
+## Report Issues / Send Patches
+
+This repository uses Gerrit for code changes. To learn how to submit changes to
+this repository, see https://golang.org/doc/contribute.html.
+
+The main issue tracker for the arch repository is located at
+https://github.com/golang/go/issues. Prefix your issue with "x/arch:" in the
+subject line, so it is easy to find.
diff --git a/vendor/modules.txt b/vendor/modules.txt
new file mode 100644
index 0000000..fac1149
--- /dev/null
+++ b/vendor/modules.txt
@@ -0,0 +1,2 @@
+# rsc.io/pdf v0.1.1
+rsc.io/pdf
diff --git a/vendor/rsc.io/pdf/lex.go b/vendor/rsc.io/pdf/lex.go
index 0a7e335..ee73fd9 100644
--- a/vendor/rsc.io/pdf/lex.go
+++ b/vendor/rsc.io/pdf/lex.go
@@ -2,10 +2,6 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build go1.6
-// +build !386 go1.8
-// ... see golang.org/issue/12840
-
 // Reading of PDF tokens and objects from a raw byte stream.
 
 package pdf
diff --git a/vendor/rsc.io/pdf/page.go b/vendor/rsc.io/pdf/page.go
index 7ce5f48..77f02b1 100644
--- a/vendor/rsc.io/pdf/page.go
+++ b/vendor/rsc.io/pdf/page.go
@@ -2,10 +2,6 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build go1.6
-// +build !386 go1.8
-// ... see golang.org/issue/12840
-
 package pdf
 
 import (
@@ -50,6 +46,7 @@
 				num--
 			}
 		}
+		break
 	}
 	return Page{}
 }
diff --git a/vendor/rsc.io/pdf/ps.go b/vendor/rsc.io/pdf/ps.go
index 8c829f0..90c551e 100644
--- a/vendor/rsc.io/pdf/ps.go
+++ b/vendor/rsc.io/pdf/ps.go
@@ -2,10 +2,6 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build go1.6
-// +build !386 go1.8
-// ... see golang.org/issue/12840
-
 package pdf
 
 import (
diff --git a/vendor/rsc.io/pdf/read.go b/vendor/rsc.io/pdf/read.go
index 4d67c14..32a7c80 100644
--- a/vendor/rsc.io/pdf/read.go
+++ b/vendor/rsc.io/pdf/read.go
@@ -2,10 +2,6 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-// +build go1.6
-// +build !386 go1.8
-// ... see golang.org/issue/12840
-
 // Package pdf implements reading of PDF files.
 //
 // Overview
@@ -700,7 +696,7 @@
 }
 
 // Len returns the length of the array v.
-// If v.Kind() != Array, Len returns a null Value.
+// If v.Kind() != Array, Len returns 0.
 func (v Value) Len() int {
 	x, ok := v.data.(array)
 	if !ok {
@@ -759,7 +755,7 @@
 			def, ok := obj.(objdef)
 			if !ok {
 				panic(fmt.Errorf("loading %v: found %T instead of objdef", ptr, obj))
-				return Value{}
+				//return Value{}
 			}
 			if def.ptr != ptr {
 				panic(fmt.Errorf("loading %v: found %v", ptr, def.ptr))
@@ -1056,7 +1052,7 @@
 		rd = &cbcReader{cbc: cbc, rd: rd, buf: make([]byte, 16)}
 	} else {
 		c, _ := rc4.NewCipher(key)
-		rd = &cipher.StreamReader{c, rd}
+		rd = &cipher.StreamReader{S: c, R: rd}
 	}
 	return rd
 }
diff --git a/vendor/vendor.json b/vendor/vendor.json
deleted file mode 100644
index dc333c0..0000000
--- a/vendor/vendor.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
-	"package": [
-		{
-			"canonical": "rsc.io/pdf",
-			"local": "rsc.io/pdf",
-			"revision": "371ad118eb63f9f52971201c4e903420401ed37f",
-			"revisionTime": "2015-07-23T06:11:39Z"
-		}
-	]
-}
