diff --git a/params.json b/params.json
index 90dbf55..338cdd9 100644
--- a/params.json
+++ b/params.json
@@ -1 +1 @@
-{"name":"gvt","tagline":"The simplest go vendoring tool","body":"`gvt` is a simple Go vendoring tool made for the GO15VENDOREXPERIMENT, based on [gb-vendor](https://github.com/constabulary/gb).\r\n\r\nIt lets you easily and \"idiomatically\" include external dependencies in your repository to get reproducible builds.\r\n\r\n  * **No need to learn a new tool or format!**  \r\n    You already know how to use `gvt`: just run `gvt fetch` when and like you would run `go get`. You can imagine what `gvt update` and `gvt delete` do.\r\n\r\n  * **No need to change how you build your project!**  \r\n    `gvt` downloads packages to `./vendor/...`. With `GO15VENDOREXPERIMENT=1` the stock Go compiler will find and use those dependencies automatically (without import path or GOPATH changes).\r\n\r\n  * **No need to manually chase, copy or cleanup dependencies!**  \r\n    `gvt` works recursively as you would expect, and lets you update vendored dependencies. It also writes a manifest to `./vendor/manifest` and never touches your system GOPATH. Finally, it strips the VCS metadata so that you can commit the vendored source cleanly.\r\n\r\n  * **No need for your users and occasional contributors to install or even know about gvt!**  \r\n    Packages whose dependencies are vendored with `gvt` are `go build`-able and `go get`-able out of the box by Go 1.5 with `GO15VENDOREXPERIMENT=1` set.\r\n\r\n*Note that projects must live within the GOPATH tree in order to be go buildable with the GO15VENDOREXPERIMENT flag.*\r\n\r\n\r\n## Installation\r\n\r\n```\r\nGO15VENDOREXPERIMENT=1 go get -u github.com/FiloSottile/gvt\r\n```\r\n\r\n## Usage\r\n\r\nYou know how to use `go get`? That's how you use `gvt fetch`.\r\n\r\n```\r\n$ gvt fetch github.com/fatih/color\r\n2015/09/05 02:38:06 fetching recursive dependency github.com/mattn/go-isatty\r\n2015/09/05 02:38:07 fetching recursive dependency github.com/shiena/ansicolor\r\n\r\n$ tree -d\r\n.\r\n└── vendor\r\n    └── github.com\r\n        ├── fatih\r\n        │   └── color\r\n        ├── mattn\r\n        │   └── go-isatty\r\n        └── shiena\r\n            └── ansicolor\r\n                └── ansicolor\r\n\r\n9 directories\r\n\r\n$ cat > main.go\r\npackage main\r\nimport \"github.com/fatih/color\"\r\nfunc main() {\r\n    color.Red(\"Hello, world!\")\r\n}\r\n\r\n$ export GO15VENDOREXPERIMENT=1\r\n$ go build .\r\n$ ./hello\r\nHello, world!\r\n\r\n$ git add main.go vendor/ && git commit\r\n\r\n```\r\n\r\nFull usage on [GoDoc ![GoDoc](https://godoc.org/github.com/FiloSottile/gvt?status.svg)](http://godoc.org/github.com/FiloSottile/gvt)\r\n\r\nIf you use `gvt` for your projects, it would definitely make my day better if you dropped a line at `gvt -at- filippo.io` :)\r\n\r\n## Alternative: not checking in vendored source\r\n\r\nSome developers prefer not to check in the source of the vendored dependencies. In that case you can add lines like these to e.g. your `.gitignore`\r\n\r\n    vendor/**\r\n    !vendor/manifest\r\n\r\nWhen you check out the source again, you can then run `gvt restore` to fetch all the dependencies at the revisions specified in the `vendor/manifest` file.\r\n\r\nPlease consider that this approach has the following consequences:\r\n\r\n  * the package consumer will need gvt to fetch the dependencies\r\n  * the dependencies will need to remain available from the source repositories: if the original repository goes down or rewrites history, build reproducibility is lost\r\n  * `go get` won't work on your package\r\n\r\n## Troubleshooting\r\n\r\n### `error: tag 'fetch' not found.`\r\n\r\nThis kind of errors happens because you have an alias for `gvt` pointing to `git verify-tag`.\r\n\r\nRun this, or add it to your `~/.bashrc` / `~/.zshrc`:\r\n\r\n```\r\nunalias gvt\r\n```\r\n\r\n### `go build` can't find the vendored package\r\n\r\nMake sure you set `GO15VENDOREXPERIMENT=1`.\r\n\r\nAlso note that GO15VENDOREXPERIMENT does not apply when outside the GOPATH tree. That is, your project must be somewhere in a subfolder of `$GOPATH`.","google":"UA-37225193-1","note":"Don't delete this file! It's used internally to help with page regeneration."}
\ No newline at end of file
+{"name":"gvt","tagline":"The simplest go vendoring tool, based on [gb-vendor](https://github.com/constabulary/gb)","body":"`gvt` lets you easily and \"idiomatically\" include external dependencies in your repository with the GO15VENDOREXPERIMENT to get reproducible builds.\r\n\r\n  * **No need to learn a new tool or format!**  \r\n    You already know how to use `gvt`: just run `gvt fetch` when and like you would run `go get`. You can imagine what `gvt update` and `gvt delete` do.\r\n\r\n  * **No need to change how you build your project!**  \r\n    `gvt` downloads packages to `./vendor/...`. With `GO15VENDOREXPERIMENT=1` the stock Go compiler will find and use those dependencies automatically (without import path or GOPATH changes).\r\n\r\n  * **No need to manually chase, copy or cleanup dependencies!**  \r\n    `gvt` works recursively as you would expect, and lets you update vendored dependencies. It also writes a manifest to `./vendor/manifest` and never touches your system GOPATH. Finally, it strips the VCS metadata so that you can commit the vendored source cleanly.\r\n\r\n  * **No need for your users and occasional contributors to install or even know about gvt!**  \r\n    Packages whose dependencies are vendored with `gvt` are `go build`-able and `go get`-able out of the box by Go 1.5 with `GO15VENDOREXPERIMENT=1` set.\r\n\r\n*Note that projects must live within the GOPATH tree in order to be go buildable with the GO15VENDOREXPERIMENT flag.*\r\n\r\n\r\n## Installation\r\n\r\n```\r\nGO15VENDOREXPERIMENT=1 go get -u github.com/FiloSottile/gvt\r\n```\r\n\r\n## Usage\r\n\r\nYou know how to use `go get`? That's how you use `gvt fetch`.\r\n\r\n```\r\n$ gvt fetch github.com/fatih/color\r\n2015/09/05 02:38:06 fetching recursive dependency github.com/mattn/go-isatty\r\n2015/09/05 02:38:07 fetching recursive dependency github.com/shiena/ansicolor\r\n\r\n$ tree -d\r\n.\r\n└── vendor\r\n    └── github.com\r\n        ├── fatih\r\n        │   └── color\r\n        ├── mattn\r\n        │   └── go-isatty\r\n        └── shiena\r\n            └── ansicolor\r\n                └── ansicolor\r\n\r\n9 directories\r\n\r\n$ cat > main.go\r\npackage main\r\nimport \"github.com/fatih/color\"\r\nfunc main() {\r\n    color.Red(\"Hello, world!\")\r\n}\r\n\r\n$ export GO15VENDOREXPERIMENT=1\r\n$ go build .\r\n$ ./hello\r\nHello, world!\r\n\r\n$ git add main.go vendor/ && git commit\r\n\r\n```\r\n\r\nFull usage on [GoDoc ![GoDoc](https://godoc.org/github.com/FiloSottile/gvt?status.svg)](http://godoc.org/github.com/FiloSottile/gvt)\r\n\r\nIf you use `gvt` for your projects, it would definitely make my day better if you dropped a line at `gvt -at- filippo.io` :)\r\n\r\n## Alternative: not checking in vendored source\r\n\r\nSome developers prefer not to check in the source of the vendored dependencies. In that case you can add lines like these to e.g. your `.gitignore`\r\n\r\n    vendor/**\r\n    !vendor/manifest\r\n\r\nWhen you check out the source again, you can then run `gvt restore` to fetch all the dependencies at the revisions specified in the `vendor/manifest` file.\r\n\r\nPlease consider that this approach has the following consequences:\r\n\r\n  * the package consumer will need gvt to fetch the dependencies\r\n  * the dependencies will need to remain available from the source repositories: if the original repository goes down or rewrites history, build reproducibility is lost\r\n  * `go get` won't work on your package\r\n\r\n## Troubleshooting\r\n\r\n### `error: tag 'fetch' not found.`\r\n\r\nThis kind of errors happens because you have an alias for `gvt` pointing to `git verify-tag`.\r\n\r\nRun this, or add it to your `~/.bashrc` / `~/.zshrc`:\r\n\r\n```\r\nunalias gvt\r\n```\r\n\r\n### `go build` can't find the vendored package\r\n\r\nMake sure you set `GO15VENDOREXPERIMENT=1`.\r\n\r\nAlso note that GO15VENDOREXPERIMENT does not apply when outside the GOPATH tree. That is, your project must be somewhere in a subfolder of `$GOPATH`.","google":"UA-37225193-1","note":"Don't delete this file! It's used internally to help with page regeneration."}
