diff --git a/api/go1.7.txt b/api/go1.7.txt
new file mode 100644
index 0000000..35afa91
--- /dev/null
+++ b/api/go1.7.txt
@@ -0,0 +1,276 @@
+pkg bytes, func ContainsAny([]uint8, string) bool
+pkg bytes, func ContainsRune([]uint8, int32) bool
+pkg bytes, method (*Reader) Reset([]uint8)
+pkg compress/flate, const HuffmanOnly = -2
+pkg compress/flate, const HuffmanOnly ideal-int
+pkg context, func Background() Context
+pkg context, func TODO() Context
+pkg context, func WithCancel(Context) (Context, CancelFunc)
+pkg context, func WithDeadline(Context, time.Time) (Context, CancelFunc)
+pkg context, func WithTimeout(Context, time.Duration) (Context, CancelFunc)
+pkg context, func WithValue(Context, interface{}, interface{}) Context
+pkg context, type CancelFunc func()
+pkg context, type Context interface { Deadline, Done, Err, Value }
+pkg context, type Context interface, Deadline() (time.Time, bool)
+pkg context, type Context interface, Done() <-chan struct
+pkg context, type Context interface, Err() error
+pkg context, type Context interface, Value(interface{}) interface{}
+pkg context, var Canceled error
+pkg context, var DeadlineExceeded error
+pkg crypto/tls, const RenegotiateFreelyAsClient = 2
+pkg crypto/tls, const RenegotiateFreelyAsClient RenegotiationSupport
+pkg crypto/tls, const RenegotiateNever = 0
+pkg crypto/tls, const RenegotiateNever RenegotiationSupport
+pkg crypto/tls, const RenegotiateOnceAsClient = 1
+pkg crypto/tls, const RenegotiateOnceAsClient RenegotiationSupport
+pkg crypto/tls, type Config struct, DynamicRecordSizingDisabled bool
+pkg crypto/tls, type Config struct, Renegotiation RenegotiationSupport
+pkg crypto/tls, type RenegotiationSupport int
+pkg crypto/x509, func SystemCertPool() (*CertPool, error)
+pkg crypto/x509, type SystemRootsError struct, Err error
+pkg debug/dwarf, method (*Data) Ranges(*Entry) ([][2]uint64, error)
+pkg debug/dwarf, method (*Reader) SeekPC(uint64) (*Entry, error)
+pkg debug/elf, const R_390_12 = 2
+pkg debug/elf, const R_390_12 R_390
+pkg debug/elf, const R_390_16 = 3
+pkg debug/elf, const R_390_16 R_390
+pkg debug/elf, const R_390_20 = 57
+pkg debug/elf, const R_390_20 R_390
+pkg debug/elf, const R_390_32 = 4
+pkg debug/elf, const R_390_32 R_390
+pkg debug/elf, const R_390_64 = 22
+pkg debug/elf, const R_390_64 R_390
+pkg debug/elf, const R_390_8 = 1
+pkg debug/elf, const R_390_8 R_390
+pkg debug/elf, const R_390_COPY = 9
+pkg debug/elf, const R_390_COPY R_390
+pkg debug/elf, const R_390_GLOB_DAT = 10
+pkg debug/elf, const R_390_GLOB_DAT R_390
+pkg debug/elf, const R_390_GOT12 = 6
+pkg debug/elf, const R_390_GOT12 R_390
+pkg debug/elf, const R_390_GOT16 = 15
+pkg debug/elf, const R_390_GOT16 R_390
+pkg debug/elf, const R_390_GOT20 = 58
+pkg debug/elf, const R_390_GOT20 R_390
+pkg debug/elf, const R_390_GOT32 = 7
+pkg debug/elf, const R_390_GOT32 R_390
+pkg debug/elf, const R_390_GOT64 = 24
+pkg debug/elf, const R_390_GOT64 R_390
+pkg debug/elf, const R_390_GOTENT = 26
+pkg debug/elf, const R_390_GOTENT R_390
+pkg debug/elf, const R_390_GOTOFF = 13
+pkg debug/elf, const R_390_GOTOFF R_390
+pkg debug/elf, const R_390_GOTOFF16 = 27
+pkg debug/elf, const R_390_GOTOFF16 R_390
+pkg debug/elf, const R_390_GOTOFF64 = 28
+pkg debug/elf, const R_390_GOTOFF64 R_390
+pkg debug/elf, const R_390_GOTPC = 14
+pkg debug/elf, const R_390_GOTPC R_390
+pkg debug/elf, const R_390_GOTPCDBL = 21
+pkg debug/elf, const R_390_GOTPCDBL R_390
+pkg debug/elf, const R_390_GOTPLT12 = 29
+pkg debug/elf, const R_390_GOTPLT12 R_390
+pkg debug/elf, const R_390_GOTPLT16 = 30
+pkg debug/elf, const R_390_GOTPLT16 R_390
+pkg debug/elf, const R_390_GOTPLT20 = 59
+pkg debug/elf, const R_390_GOTPLT20 R_390
+pkg debug/elf, const R_390_GOTPLT32 = 31
+pkg debug/elf, const R_390_GOTPLT32 R_390
+pkg debug/elf, const R_390_GOTPLT64 = 32
+pkg debug/elf, const R_390_GOTPLT64 R_390
+pkg debug/elf, const R_390_GOTPLTENT = 33
+pkg debug/elf, const R_390_GOTPLTENT R_390
+pkg debug/elf, const R_390_GOTPLTOFF16 = 34
+pkg debug/elf, const R_390_GOTPLTOFF16 R_390
+pkg debug/elf, const R_390_GOTPLTOFF32 = 35
+pkg debug/elf, const R_390_GOTPLTOFF32 R_390
+pkg debug/elf, const R_390_GOTPLTOFF64 = 36
+pkg debug/elf, const R_390_GOTPLTOFF64 R_390
+pkg debug/elf, const R_390_JMP_SLOT = 11
+pkg debug/elf, const R_390_JMP_SLOT R_390
+pkg debug/elf, const R_390_NONE = 0
+pkg debug/elf, const R_390_NONE R_390
+pkg debug/elf, const R_390_PC16 = 16
+pkg debug/elf, const R_390_PC16 R_390
+pkg debug/elf, const R_390_PC16DBL = 17
+pkg debug/elf, const R_390_PC16DBL R_390
+pkg debug/elf, const R_390_PC32 = 5
+pkg debug/elf, const R_390_PC32 R_390
+pkg debug/elf, const R_390_PC32DBL = 19
+pkg debug/elf, const R_390_PC32DBL R_390
+pkg debug/elf, const R_390_PC64 = 23
+pkg debug/elf, const R_390_PC64 R_390
+pkg debug/elf, const R_390_PLT16DBL = 18
+pkg debug/elf, const R_390_PLT16DBL R_390
+pkg debug/elf, const R_390_PLT32 = 8
+pkg debug/elf, const R_390_PLT32 R_390
+pkg debug/elf, const R_390_PLT32DBL = 20
+pkg debug/elf, const R_390_PLT32DBL R_390
+pkg debug/elf, const R_390_PLT64 = 25
+pkg debug/elf, const R_390_PLT64 R_390
+pkg debug/elf, const R_390_RELATIVE = 12
+pkg debug/elf, const R_390_RELATIVE R_390
+pkg debug/elf, const R_390_TLS_DTPMOD = 54
+pkg debug/elf, const R_390_TLS_DTPMOD R_390
+pkg debug/elf, const R_390_TLS_DTPOFF = 55
+pkg debug/elf, const R_390_TLS_DTPOFF R_390
+pkg debug/elf, const R_390_TLS_GD32 = 40
+pkg debug/elf, const R_390_TLS_GD32 R_390
+pkg debug/elf, const R_390_TLS_GD64 = 41
+pkg debug/elf, const R_390_TLS_GD64 R_390
+pkg debug/elf, const R_390_TLS_GDCALL = 38
+pkg debug/elf, const R_390_TLS_GDCALL R_390
+pkg debug/elf, const R_390_TLS_GOTIE12 = 42
+pkg debug/elf, const R_390_TLS_GOTIE12 R_390
+pkg debug/elf, const R_390_TLS_GOTIE20 = 60
+pkg debug/elf, const R_390_TLS_GOTIE20 R_390
+pkg debug/elf, const R_390_TLS_GOTIE32 = 43
+pkg debug/elf, const R_390_TLS_GOTIE32 R_390
+pkg debug/elf, const R_390_TLS_GOTIE64 = 44
+pkg debug/elf, const R_390_TLS_GOTIE64 R_390
+pkg debug/elf, const R_390_TLS_IE32 = 47
+pkg debug/elf, const R_390_TLS_IE32 R_390
+pkg debug/elf, const R_390_TLS_IE64 = 48
+pkg debug/elf, const R_390_TLS_IE64 R_390
+pkg debug/elf, const R_390_TLS_IEENT = 49
+pkg debug/elf, const R_390_TLS_IEENT R_390
+pkg debug/elf, const R_390_TLS_LDCALL = 39
+pkg debug/elf, const R_390_TLS_LDCALL R_390
+pkg debug/elf, const R_390_TLS_LDM32 = 45
+pkg debug/elf, const R_390_TLS_LDM32 R_390
+pkg debug/elf, const R_390_TLS_LDM64 = 46
+pkg debug/elf, const R_390_TLS_LDM64 R_390
+pkg debug/elf, const R_390_TLS_LDO32 = 52
+pkg debug/elf, const R_390_TLS_LDO32 R_390
+pkg debug/elf, const R_390_TLS_LDO64 = 53
+pkg debug/elf, const R_390_TLS_LDO64 R_390
+pkg debug/elf, const R_390_TLS_LE32 = 50
+pkg debug/elf, const R_390_TLS_LE32 R_390
+pkg debug/elf, const R_390_TLS_LE64 = 51
+pkg debug/elf, const R_390_TLS_LE64 R_390
+pkg debug/elf, const R_390_TLS_LOAD = 37
+pkg debug/elf, const R_390_TLS_LOAD R_390
+pkg debug/elf, const R_390_TLS_TPOFF = 56
+pkg debug/elf, const R_390_TLS_TPOFF R_390
+pkg debug/elf, method (R_390) GoString() string
+pkg debug/elf, method (R_390) String() string
+pkg debug/elf, type R_390 int
+pkg encoding/json, method (*Encoder) SetEscapeHTML(bool)
+pkg encoding/json, method (*Encoder) SetIndent(string, string)
+pkg go/build, type Package struct, BinaryOnly bool
+pkg go/build, type Package struct, CgoFFLAGS []string
+pkg go/build, type Package struct, FFiles []string
+pkg go/doc, type Example struct, Unordered bool
+pkg io, const SeekCurrent = 1
+pkg io, const SeekCurrent ideal-int
+pkg io, const SeekEnd = 2
+pkg io, const SeekEnd ideal-int
+pkg io, const SeekStart = 0
+pkg io, const SeekStart ideal-int
+pkg math/big, method (*Float) GobDecode([]uint8) error
+pkg math/big, method (*Float) GobEncode() ([]uint8, error)
+pkg net, method (*Dialer) DialContext(context.Context, string, string) (Conn, error)
+pkg net/http, const StatusAlreadyReported = 208
+pkg net/http, const StatusAlreadyReported ideal-int
+pkg net/http, const StatusFailedDependency = 424
+pkg net/http, const StatusFailedDependency ideal-int
+pkg net/http, const StatusIMUsed = 226
+pkg net/http, const StatusIMUsed ideal-int
+pkg net/http, const StatusInsufficientStorage = 507
+pkg net/http, const StatusInsufficientStorage ideal-int
+pkg net/http, const StatusLocked = 423
+pkg net/http, const StatusLocked ideal-int
+pkg net/http, const StatusLoopDetected = 508
+pkg net/http, const StatusLoopDetected ideal-int
+pkg net/http, const StatusMultiStatus = 207
+pkg net/http, const StatusMultiStatus ideal-int
+pkg net/http, const StatusNotExtended = 510
+pkg net/http, const StatusNotExtended ideal-int
+pkg net/http, const StatusPermanentRedirect = 308
+pkg net/http, const StatusPermanentRedirect ideal-int
+pkg net/http, const StatusProcessing = 102
+pkg net/http, const StatusProcessing ideal-int
+pkg net/http, const StatusUnprocessableEntity = 422
+pkg net/http, const StatusUnprocessableEntity ideal-int
+pkg net/http, const StatusUpgradeRequired = 426
+pkg net/http, const StatusUpgradeRequired ideal-int
+pkg net/http, const StatusVariantAlsoNegotiates = 506
+pkg net/http, const StatusVariantAlsoNegotiates ideal-int
+pkg net/http, method (*Request) Context() context.Context
+pkg net/http, method (*Request) WithContext(context.Context) *Request
+pkg net/http, type Request struct, Response *Response
+pkg net/http, type Response struct, Uncompressed bool
+pkg net/http, type Transport struct, DialContext func(context.Context, string, string) (net.Conn, error)
+pkg net/http, type Transport struct, IdleConnTimeout time.Duration
+pkg net/http, type Transport struct, MaxIdleConns int
+pkg net/http, type Transport struct, MaxResponseHeaderBytes int64
+pkg net/http, var ErrUseLastResponse error
+pkg net/http, var LocalAddrContextKey *contextKey
+pkg net/http, var ServerContextKey *contextKey
+pkg net/http/cgi, type Handler struct, Stderr io.Writer
+pkg net/http/httptest, func NewRequest(string, string, io.Reader) *http.Request
+pkg net/http/httptest, method (*ResponseRecorder) Result() *http.Response
+pkg net/http/httptrace, func ContextClientTrace(context.Context) *ClientTrace
+pkg net/http/httptrace, func WithClientTrace(context.Context, *ClientTrace) context.Context
+pkg net/http/httptrace, type ClientTrace struct
+pkg net/http/httptrace, type ClientTrace struct, ConnectDone func(string, string, error)
+pkg net/http/httptrace, type ClientTrace struct, ConnectStart func(string, string)
+pkg net/http/httptrace, type ClientTrace struct, DNSDone func(DNSDoneInfo)
+pkg net/http/httptrace, type ClientTrace struct, DNSStart func(DNSStartInfo)
+pkg net/http/httptrace, type ClientTrace struct, GetConn func(string)
+pkg net/http/httptrace, type ClientTrace struct, Got100Continue func()
+pkg net/http/httptrace, type ClientTrace struct, GotConn func(GotConnInfo)
+pkg net/http/httptrace, type ClientTrace struct, GotFirstResponseByte func()
+pkg net/http/httptrace, type ClientTrace struct, PutIdleConn func(error)
+pkg net/http/httptrace, type ClientTrace struct, Wait100Continue func()
+pkg net/http/httptrace, type ClientTrace struct, WroteHeaders func()
+pkg net/http/httptrace, type ClientTrace struct, WroteRequest func(WroteRequestInfo)
+pkg net/http/httptrace, type DNSDoneInfo struct
+pkg net/http/httptrace, type DNSDoneInfo struct, Addrs []net.IPAddr
+pkg net/http/httptrace, type DNSDoneInfo struct, Coalesced bool
+pkg net/http/httptrace, type DNSDoneInfo struct, Err error
+pkg net/http/httptrace, type DNSStartInfo struct
+pkg net/http/httptrace, type DNSStartInfo struct, Host string
+pkg net/http/httptrace, type GotConnInfo struct
+pkg net/http/httptrace, type GotConnInfo struct, Conn net.Conn
+pkg net/http/httptrace, type GotConnInfo struct, IdleTime time.Duration
+pkg net/http/httptrace, type GotConnInfo struct, Reused bool
+pkg net/http/httptrace, type GotConnInfo struct, WasIdle bool
+pkg net/http/httptrace, type WroteRequestInfo struct
+pkg net/http/httptrace, type WroteRequestInfo struct, Err error
+pkg net/url, type URL struct, ForceQuery bool
+pkg os/exec, func CommandContext(context.Context, string, ...string) *Cmd
+pkg os/user, func LookupGroup(string) (*Group, error)
+pkg os/user, func LookupGroupId(string) (*Group, error)
+pkg os/user, method (*User) GroupIds() ([]string, error)
+pkg os/user, method (UnknownGroupError) Error() string
+pkg os/user, method (UnknownGroupIdError) Error() string
+pkg os/user, type Group struct
+pkg os/user, type Group struct, Gid string
+pkg os/user, type Group struct, Name string
+pkg os/user, type UnknownGroupError string
+pkg os/user, type UnknownGroupIdError string
+pkg reflect, func StructOf([]StructField) Type
+pkg reflect, method (StructTag) Lookup(string) (string, bool)
+pkg runtime, func CallersFrames([]uintptr) *Frames
+pkg runtime, func KeepAlive(interface{})
+pkg runtime, func SetCgoTraceback(int, unsafe.Pointer, unsafe.Pointer, unsafe.Pointer)
+pkg runtime, method (*Frames) Next() (Frame, bool)
+pkg runtime, type Frame struct
+pkg runtime, type Frame struct, Entry uintptr
+pkg runtime, type Frame struct, File string
+pkg runtime, type Frame struct, Func *Func
+pkg runtime, type Frame struct, Function string
+pkg runtime, type Frame struct, Line int
+pkg runtime, type Frame struct, PC uintptr
+pkg runtime, type Frames struct
+pkg strings, method (*Reader) Reset(string)
+pkg syscall (linux-386), type SysProcAttr struct, Unshareflags uintptr
+pkg syscall (linux-386-cgo), type SysProcAttr struct, Unshareflags uintptr
+pkg syscall (linux-amd64), type SysProcAttr struct, Unshareflags uintptr
+pkg syscall (linux-amd64-cgo), type SysProcAttr struct, Unshareflags uintptr
+pkg syscall (linux-arm), type SysProcAttr struct, Unshareflags uintptr
+pkg syscall (linux-arm-cgo), type SysProcAttr struct, Unshareflags uintptr
+pkg testing, method (*B) Run(string, func(*B)) bool
+pkg testing, method (*T) Run(string, func(*T)) bool
+pkg testing, type InternalExample struct, Unordered bool
diff --git a/api/next.txt b/api/next.txt
index 35afa91..e69de29 100644
--- a/api/next.txt
+++ b/api/next.txt
@@ -1,276 +0,0 @@
-pkg bytes, func ContainsAny([]uint8, string) bool
-pkg bytes, func ContainsRune([]uint8, int32) bool
-pkg bytes, method (*Reader) Reset([]uint8)
-pkg compress/flate, const HuffmanOnly = -2
-pkg compress/flate, const HuffmanOnly ideal-int
-pkg context, func Background() Context
-pkg context, func TODO() Context
-pkg context, func WithCancel(Context) (Context, CancelFunc)
-pkg context, func WithDeadline(Context, time.Time) (Context, CancelFunc)
-pkg context, func WithTimeout(Context, time.Duration) (Context, CancelFunc)
-pkg context, func WithValue(Context, interface{}, interface{}) Context
-pkg context, type CancelFunc func()
-pkg context, type Context interface { Deadline, Done, Err, Value }
-pkg context, type Context interface, Deadline() (time.Time, bool)
-pkg context, type Context interface, Done() <-chan struct
-pkg context, type Context interface, Err() error
-pkg context, type Context interface, Value(interface{}) interface{}
-pkg context, var Canceled error
-pkg context, var DeadlineExceeded error
-pkg crypto/tls, const RenegotiateFreelyAsClient = 2
-pkg crypto/tls, const RenegotiateFreelyAsClient RenegotiationSupport
-pkg crypto/tls, const RenegotiateNever = 0
-pkg crypto/tls, const RenegotiateNever RenegotiationSupport
-pkg crypto/tls, const RenegotiateOnceAsClient = 1
-pkg crypto/tls, const RenegotiateOnceAsClient RenegotiationSupport
-pkg crypto/tls, type Config struct, DynamicRecordSizingDisabled bool
-pkg crypto/tls, type Config struct, Renegotiation RenegotiationSupport
-pkg crypto/tls, type RenegotiationSupport int
-pkg crypto/x509, func SystemCertPool() (*CertPool, error)
-pkg crypto/x509, type SystemRootsError struct, Err error
-pkg debug/dwarf, method (*Data) Ranges(*Entry) ([][2]uint64, error)
-pkg debug/dwarf, method (*Reader) SeekPC(uint64) (*Entry, error)
-pkg debug/elf, const R_390_12 = 2
-pkg debug/elf, const R_390_12 R_390
-pkg debug/elf, const R_390_16 = 3
-pkg debug/elf, const R_390_16 R_390
-pkg debug/elf, const R_390_20 = 57
-pkg debug/elf, const R_390_20 R_390
-pkg debug/elf, const R_390_32 = 4
-pkg debug/elf, const R_390_32 R_390
-pkg debug/elf, const R_390_64 = 22
-pkg debug/elf, const R_390_64 R_390
-pkg debug/elf, const R_390_8 = 1
-pkg debug/elf, const R_390_8 R_390
-pkg debug/elf, const R_390_COPY = 9
-pkg debug/elf, const R_390_COPY R_390
-pkg debug/elf, const R_390_GLOB_DAT = 10
-pkg debug/elf, const R_390_GLOB_DAT R_390
-pkg debug/elf, const R_390_GOT12 = 6
-pkg debug/elf, const R_390_GOT12 R_390
-pkg debug/elf, const R_390_GOT16 = 15
-pkg debug/elf, const R_390_GOT16 R_390
-pkg debug/elf, const R_390_GOT20 = 58
-pkg debug/elf, const R_390_GOT20 R_390
-pkg debug/elf, const R_390_GOT32 = 7
-pkg debug/elf, const R_390_GOT32 R_390
-pkg debug/elf, const R_390_GOT64 = 24
-pkg debug/elf, const R_390_GOT64 R_390
-pkg debug/elf, const R_390_GOTENT = 26
-pkg debug/elf, const R_390_GOTENT R_390
-pkg debug/elf, const R_390_GOTOFF = 13
-pkg debug/elf, const R_390_GOTOFF R_390
-pkg debug/elf, const R_390_GOTOFF16 = 27
-pkg debug/elf, const R_390_GOTOFF16 R_390
-pkg debug/elf, const R_390_GOTOFF64 = 28
-pkg debug/elf, const R_390_GOTOFF64 R_390
-pkg debug/elf, const R_390_GOTPC = 14
-pkg debug/elf, const R_390_GOTPC R_390
-pkg debug/elf, const R_390_GOTPCDBL = 21
-pkg debug/elf, const R_390_GOTPCDBL R_390
-pkg debug/elf, const R_390_GOTPLT12 = 29
-pkg debug/elf, const R_390_GOTPLT12 R_390
-pkg debug/elf, const R_390_GOTPLT16 = 30
-pkg debug/elf, const R_390_GOTPLT16 R_390
-pkg debug/elf, const R_390_GOTPLT20 = 59
-pkg debug/elf, const R_390_GOTPLT20 R_390
-pkg debug/elf, const R_390_GOTPLT32 = 31
-pkg debug/elf, const R_390_GOTPLT32 R_390
-pkg debug/elf, const R_390_GOTPLT64 = 32
-pkg debug/elf, const R_390_GOTPLT64 R_390
-pkg debug/elf, const R_390_GOTPLTENT = 33
-pkg debug/elf, const R_390_GOTPLTENT R_390
-pkg debug/elf, const R_390_GOTPLTOFF16 = 34
-pkg debug/elf, const R_390_GOTPLTOFF16 R_390
-pkg debug/elf, const R_390_GOTPLTOFF32 = 35
-pkg debug/elf, const R_390_GOTPLTOFF32 R_390
-pkg debug/elf, const R_390_GOTPLTOFF64 = 36
-pkg debug/elf, const R_390_GOTPLTOFF64 R_390
-pkg debug/elf, const R_390_JMP_SLOT = 11
-pkg debug/elf, const R_390_JMP_SLOT R_390
-pkg debug/elf, const R_390_NONE = 0
-pkg debug/elf, const R_390_NONE R_390
-pkg debug/elf, const R_390_PC16 = 16
-pkg debug/elf, const R_390_PC16 R_390
-pkg debug/elf, const R_390_PC16DBL = 17
-pkg debug/elf, const R_390_PC16DBL R_390
-pkg debug/elf, const R_390_PC32 = 5
-pkg debug/elf, const R_390_PC32 R_390
-pkg debug/elf, const R_390_PC32DBL = 19
-pkg debug/elf, const R_390_PC32DBL R_390
-pkg debug/elf, const R_390_PC64 = 23
-pkg debug/elf, const R_390_PC64 R_390
-pkg debug/elf, const R_390_PLT16DBL = 18
-pkg debug/elf, const R_390_PLT16DBL R_390
-pkg debug/elf, const R_390_PLT32 = 8
-pkg debug/elf, const R_390_PLT32 R_390
-pkg debug/elf, const R_390_PLT32DBL = 20
-pkg debug/elf, const R_390_PLT32DBL R_390
-pkg debug/elf, const R_390_PLT64 = 25
-pkg debug/elf, const R_390_PLT64 R_390
-pkg debug/elf, const R_390_RELATIVE = 12
-pkg debug/elf, const R_390_RELATIVE R_390
-pkg debug/elf, const R_390_TLS_DTPMOD = 54
-pkg debug/elf, const R_390_TLS_DTPMOD R_390
-pkg debug/elf, const R_390_TLS_DTPOFF = 55
-pkg debug/elf, const R_390_TLS_DTPOFF R_390
-pkg debug/elf, const R_390_TLS_GD32 = 40
-pkg debug/elf, const R_390_TLS_GD32 R_390
-pkg debug/elf, const R_390_TLS_GD64 = 41
-pkg debug/elf, const R_390_TLS_GD64 R_390
-pkg debug/elf, const R_390_TLS_GDCALL = 38
-pkg debug/elf, const R_390_TLS_GDCALL R_390
-pkg debug/elf, const R_390_TLS_GOTIE12 = 42
-pkg debug/elf, const R_390_TLS_GOTIE12 R_390
-pkg debug/elf, const R_390_TLS_GOTIE20 = 60
-pkg debug/elf, const R_390_TLS_GOTIE20 R_390
-pkg debug/elf, const R_390_TLS_GOTIE32 = 43
-pkg debug/elf, const R_390_TLS_GOTIE32 R_390
-pkg debug/elf, const R_390_TLS_GOTIE64 = 44
-pkg debug/elf, const R_390_TLS_GOTIE64 R_390
-pkg debug/elf, const R_390_TLS_IE32 = 47
-pkg debug/elf, const R_390_TLS_IE32 R_390
-pkg debug/elf, const R_390_TLS_IE64 = 48
-pkg debug/elf, const R_390_TLS_IE64 R_390
-pkg debug/elf, const R_390_TLS_IEENT = 49
-pkg debug/elf, const R_390_TLS_IEENT R_390
-pkg debug/elf, const R_390_TLS_LDCALL = 39
-pkg debug/elf, const R_390_TLS_LDCALL R_390
-pkg debug/elf, const R_390_TLS_LDM32 = 45
-pkg debug/elf, const R_390_TLS_LDM32 R_390
-pkg debug/elf, const R_390_TLS_LDM64 = 46
-pkg debug/elf, const R_390_TLS_LDM64 R_390
-pkg debug/elf, const R_390_TLS_LDO32 = 52
-pkg debug/elf, const R_390_TLS_LDO32 R_390
-pkg debug/elf, const R_390_TLS_LDO64 = 53
-pkg debug/elf, const R_390_TLS_LDO64 R_390
-pkg debug/elf, const R_390_TLS_LE32 = 50
-pkg debug/elf, const R_390_TLS_LE32 R_390
-pkg debug/elf, const R_390_TLS_LE64 = 51
-pkg debug/elf, const R_390_TLS_LE64 R_390
-pkg debug/elf, const R_390_TLS_LOAD = 37
-pkg debug/elf, const R_390_TLS_LOAD R_390
-pkg debug/elf, const R_390_TLS_TPOFF = 56
-pkg debug/elf, const R_390_TLS_TPOFF R_390
-pkg debug/elf, method (R_390) GoString() string
-pkg debug/elf, method (R_390) String() string
-pkg debug/elf, type R_390 int
-pkg encoding/json, method (*Encoder) SetEscapeHTML(bool)
-pkg encoding/json, method (*Encoder) SetIndent(string, string)
-pkg go/build, type Package struct, BinaryOnly bool
-pkg go/build, type Package struct, CgoFFLAGS []string
-pkg go/build, type Package struct, FFiles []string
-pkg go/doc, type Example struct, Unordered bool
-pkg io, const SeekCurrent = 1
-pkg io, const SeekCurrent ideal-int
-pkg io, const SeekEnd = 2
-pkg io, const SeekEnd ideal-int
-pkg io, const SeekStart = 0
-pkg io, const SeekStart ideal-int
-pkg math/big, method (*Float) GobDecode([]uint8) error
-pkg math/big, method (*Float) GobEncode() ([]uint8, error)
-pkg net, method (*Dialer) DialContext(context.Context, string, string) (Conn, error)
-pkg net/http, const StatusAlreadyReported = 208
-pkg net/http, const StatusAlreadyReported ideal-int
-pkg net/http, const StatusFailedDependency = 424
-pkg net/http, const StatusFailedDependency ideal-int
-pkg net/http, const StatusIMUsed = 226
-pkg net/http, const StatusIMUsed ideal-int
-pkg net/http, const StatusInsufficientStorage = 507
-pkg net/http, const StatusInsufficientStorage ideal-int
-pkg net/http, const StatusLocked = 423
-pkg net/http, const StatusLocked ideal-int
-pkg net/http, const StatusLoopDetected = 508
-pkg net/http, const StatusLoopDetected ideal-int
-pkg net/http, const StatusMultiStatus = 207
-pkg net/http, const StatusMultiStatus ideal-int
-pkg net/http, const StatusNotExtended = 510
-pkg net/http, const StatusNotExtended ideal-int
-pkg net/http, const StatusPermanentRedirect = 308
-pkg net/http, const StatusPermanentRedirect ideal-int
-pkg net/http, const StatusProcessing = 102
-pkg net/http, const StatusProcessing ideal-int
-pkg net/http, const StatusUnprocessableEntity = 422
-pkg net/http, const StatusUnprocessableEntity ideal-int
-pkg net/http, const StatusUpgradeRequired = 426
-pkg net/http, const StatusUpgradeRequired ideal-int
-pkg net/http, const StatusVariantAlsoNegotiates = 506
-pkg net/http, const StatusVariantAlsoNegotiates ideal-int
-pkg net/http, method (*Request) Context() context.Context
-pkg net/http, method (*Request) WithContext(context.Context) *Request
-pkg net/http, type Request struct, Response *Response
-pkg net/http, type Response struct, Uncompressed bool
-pkg net/http, type Transport struct, DialContext func(context.Context, string, string) (net.Conn, error)
-pkg net/http, type Transport struct, IdleConnTimeout time.Duration
-pkg net/http, type Transport struct, MaxIdleConns int
-pkg net/http, type Transport struct, MaxResponseHeaderBytes int64
-pkg net/http, var ErrUseLastResponse error
-pkg net/http, var LocalAddrContextKey *contextKey
-pkg net/http, var ServerContextKey *contextKey
-pkg net/http/cgi, type Handler struct, Stderr io.Writer
-pkg net/http/httptest, func NewRequest(string, string, io.Reader) *http.Request
-pkg net/http/httptest, method (*ResponseRecorder) Result() *http.Response
-pkg net/http/httptrace, func ContextClientTrace(context.Context) *ClientTrace
-pkg net/http/httptrace, func WithClientTrace(context.Context, *ClientTrace) context.Context
-pkg net/http/httptrace, type ClientTrace struct
-pkg net/http/httptrace, type ClientTrace struct, ConnectDone func(string, string, error)
-pkg net/http/httptrace, type ClientTrace struct, ConnectStart func(string, string)
-pkg net/http/httptrace, type ClientTrace struct, DNSDone func(DNSDoneInfo)
-pkg net/http/httptrace, type ClientTrace struct, DNSStart func(DNSStartInfo)
-pkg net/http/httptrace, type ClientTrace struct, GetConn func(string)
-pkg net/http/httptrace, type ClientTrace struct, Got100Continue func()
-pkg net/http/httptrace, type ClientTrace struct, GotConn func(GotConnInfo)
-pkg net/http/httptrace, type ClientTrace struct, GotFirstResponseByte func()
-pkg net/http/httptrace, type ClientTrace struct, PutIdleConn func(error)
-pkg net/http/httptrace, type ClientTrace struct, Wait100Continue func()
-pkg net/http/httptrace, type ClientTrace struct, WroteHeaders func()
-pkg net/http/httptrace, type ClientTrace struct, WroteRequest func(WroteRequestInfo)
-pkg net/http/httptrace, type DNSDoneInfo struct
-pkg net/http/httptrace, type DNSDoneInfo struct, Addrs []net.IPAddr
-pkg net/http/httptrace, type DNSDoneInfo struct, Coalesced bool
-pkg net/http/httptrace, type DNSDoneInfo struct, Err error
-pkg net/http/httptrace, type DNSStartInfo struct
-pkg net/http/httptrace, type DNSStartInfo struct, Host string
-pkg net/http/httptrace, type GotConnInfo struct
-pkg net/http/httptrace, type GotConnInfo struct, Conn net.Conn
-pkg net/http/httptrace, type GotConnInfo struct, IdleTime time.Duration
-pkg net/http/httptrace, type GotConnInfo struct, Reused bool
-pkg net/http/httptrace, type GotConnInfo struct, WasIdle bool
-pkg net/http/httptrace, type WroteRequestInfo struct
-pkg net/http/httptrace, type WroteRequestInfo struct, Err error
-pkg net/url, type URL struct, ForceQuery bool
-pkg os/exec, func CommandContext(context.Context, string, ...string) *Cmd
-pkg os/user, func LookupGroup(string) (*Group, error)
-pkg os/user, func LookupGroupId(string) (*Group, error)
-pkg os/user, method (*User) GroupIds() ([]string, error)
-pkg os/user, method (UnknownGroupError) Error() string
-pkg os/user, method (UnknownGroupIdError) Error() string
-pkg os/user, type Group struct
-pkg os/user, type Group struct, Gid string
-pkg os/user, type Group struct, Name string
-pkg os/user, type UnknownGroupError string
-pkg os/user, type UnknownGroupIdError string
-pkg reflect, func StructOf([]StructField) Type
-pkg reflect, method (StructTag) Lookup(string) (string, bool)
-pkg runtime, func CallersFrames([]uintptr) *Frames
-pkg runtime, func KeepAlive(interface{})
-pkg runtime, func SetCgoTraceback(int, unsafe.Pointer, unsafe.Pointer, unsafe.Pointer)
-pkg runtime, method (*Frames) Next() (Frame, bool)
-pkg runtime, type Frame struct
-pkg runtime, type Frame struct, Entry uintptr
-pkg runtime, type Frame struct, File string
-pkg runtime, type Frame struct, Func *Func
-pkg runtime, type Frame struct, Function string
-pkg runtime, type Frame struct, Line int
-pkg runtime, type Frame struct, PC uintptr
-pkg runtime, type Frames struct
-pkg strings, method (*Reader) Reset(string)
-pkg syscall (linux-386), type SysProcAttr struct, Unshareflags uintptr
-pkg syscall (linux-386-cgo), type SysProcAttr struct, Unshareflags uintptr
-pkg syscall (linux-amd64), type SysProcAttr struct, Unshareflags uintptr
-pkg syscall (linux-amd64-cgo), type SysProcAttr struct, Unshareflags uintptr
-pkg syscall (linux-arm), type SysProcAttr struct, Unshareflags uintptr
-pkg syscall (linux-arm-cgo), type SysProcAttr struct, Unshareflags uintptr
-pkg testing, method (*B) Run(string, func(*B)) bool
-pkg testing, method (*T) Run(string, func(*T)) bool
-pkg testing, type InternalExample struct, Unordered bool
diff --git a/src/cmd/api/run.go b/src/cmd/api/run.go
index bd49dfa..c8433c5 100644
--- a/src/cmd/api/run.go
+++ b/src/cmd/api/run.go
@@ -26,7 +26,7 @@
 	}
 
 	out, err := exec.Command("go", "tool", "api",
-		"-c", file("go1", "go1.1", "go1.2", "go1.3", "go1.4", "go1.5", "go1.6"),
+		"-c", file("go1", "go1.1", "go1.2", "go1.3", "go1.4", "go1.5", "go1.6", "go1.7"),
 		"-next", file("next"),
 		"-except", file("except")).CombinedOutput()
 	if err != nil {
