diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json
index 1392509fa8..b87bd550a5 100644
--- a/Godeps/Godeps.json
+++ b/Godeps/Godeps.json
@@ -1,6 +1,6 @@
{
"ImportPath": "github.com/hashicorp/vault",
- "GoVersion": "go1.5",
+ "GoVersion": "go1.6",
"Packages": [
"./..."
],
@@ -15,112 +15,92 @@
},
{
"ImportPath": "github.com/asaskevich/govalidator",
- "Comment": "v2-45-g1295808",
- "Rev": "129580890d97de923d9d9aec06cb1aa771812aff"
+ "Comment": "v2-51-g9699ab6",
+ "Rev": "9699ab6b38bee2e02cd3fe8b99ecf67665395c96"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/aws",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/private/endpoints",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/ec2query",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
- },
- {
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/json/jsonutil",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
- },
- {
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/jsonrpc",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
- },
- {
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/query",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
- },
- {
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/rest",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
- },
- {
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/restxml",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
- },
- {
- "ImportPath": "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "ImportPath": "github.com/aws/aws-sdk-go/private/protocol",
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/private/signer/v4",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/private/waiter",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/service/dynamodb",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/service/ec2",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/service/iam",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/service/s3",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/aws/aws-sdk-go/service/sts",
- "Comment": "v1.0.11-1-g87b1e60",
- "Rev": "87b1e60a50b09e4812dee560b33a238f67305804"
+ "Comment": "v1.1.3",
+ "Rev": "72440a9c5a884936f1c679591fcf04e31a9b772a"
},
{
"ImportPath": "github.com/bgentry/speakeasy",
"Rev": "36e9cfdd690967f4f690c6edcc9ffacd006014a0"
},
+ {
+ "ImportPath": "github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec",
+ "Comment": "v2.3.0-alpha.1-12-ge6d6b64",
+ "Rev": "e6d6b648c4b17a5dbe0787786d8ac62063d1b630"
+ },
+ {
+ "ImportPath": "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context",
+ "Comment": "v2.3.0-alpha.1-12-ge6d6b64",
+ "Rev": "e6d6b648c4b17a5dbe0787786d8ac62063d1b630"
+ },
{
"ImportPath": "github.com/coreos/etcd/client",
- "Comment": "v2.3.0-alpha.0-594-g3729082",
- "Rev": "37290820de4c76e905a43edded858dc28f2fe2c5"
+ "Comment": "v2.3.0-alpha.1-12-ge6d6b64",
+ "Rev": "e6d6b648c4b17a5dbe0787786d8ac62063d1b630"
},
{
"ImportPath": "github.com/coreos/etcd/pkg/pathutil",
- "Comment": "v2.3.0-alpha.0-594-g3729082",
- "Rev": "37290820de4c76e905a43edded858dc28f2fe2c5"
+ "Comment": "v2.3.0-alpha.1-12-ge6d6b64",
+ "Rev": "e6d6b648c4b17a5dbe0787786d8ac62063d1b630"
},
{
"ImportPath": "github.com/coreos/etcd/pkg/transport",
- "Comment": "v2.3.0-alpha.0-594-g3729082",
- "Rev": "37290820de4c76e905a43edded858dc28f2fe2c5"
+ "Comment": "v2.3.0-alpha.1-12-ge6d6b64",
+ "Rev": "e6d6b648c4b17a5dbe0787786d8ac62063d1b630"
},
{
"ImportPath": "github.com/coreos/etcd/pkg/types",
- "Comment": "v2.3.0-alpha.0-594-g3729082",
- "Rev": "37290820de4c76e905a43edded858dc28f2fe2c5"
+ "Comment": "v2.3.0-alpha.1-12-ge6d6b64",
+ "Rev": "e6d6b648c4b17a5dbe0787786d8ac62063d1b630"
},
{
"ImportPath": "github.com/duosecurity/duo_api_golang",
@@ -136,35 +116,35 @@
},
{
"ImportPath": "github.com/go-ini/ini",
- "Comment": "v1.8.6",
- "Rev": "afbd495e5aaea13597b5e14fe514ddeaa4d76fc3"
+ "Comment": "v1.9.0",
+ "Rev": "193d1ecb466bf97aae8b454a5cfc192941c64809"
},
{
"ImportPath": "github.com/go-ldap/ldap",
- "Comment": "v2.2-2-gf24903d",
- "Rev": "f24903dc69b694cd18db4724d714ac47e4fad4f2"
+ "Comment": "v2.2.1",
+ "Rev": "07a7330929b9ee80495c88a4439657d89c7dbd87"
},
{
"ImportPath": "github.com/go-sql-driver/mysql",
- "Comment": "v1.2-156-g7c7f556",
- "Rev": "7c7f556282622f94213bc028b4d0a7b6151ba239"
+ "Comment": "v1.2-175-g1309049",
+ "Rev": "1309049fd598c1faa0290fd70ab1afde2b6df0f9"
},
{
"ImportPath": "github.com/gocql/gocql",
- "Comment": "pre-node-events-131-g4fd9e05",
- "Rev": "4fd9e05d55bae4c3732f98ef4e8aa7f006ead320"
+ "Comment": "pre-node-events-214-gd2ea216",
+ "Rev": "d2ea2162444fb32340b0468f13341782c34ea24f"
},
{
"ImportPath": "github.com/golang/snappy",
- "Rev": "723cc1e459b8eea2dea4583200fd60757d40097a"
+ "Rev": "d1d908a252c22fd7afd36190d5cffb144aa8f777"
},
{
"ImportPath": "github.com/google/go-github/github",
- "Rev": "b8b4ac742977310ff6e75140a403a38dab109977"
+ "Rev": "ac4445ca1c9dfacf5c0bbf34b712b23a3bb59b6c"
},
{
"ImportPath": "github.com/google/go-querystring/query",
- "Rev": "2a60fc2ba6c19de80291203597d752e9ba58e4c0"
+ "Rev": "6bb77fe6f42b85397288d4f6f67ac72f8f400ee7"
},
{
"ImportPath": "github.com/hailocab/go-hostpool",
@@ -172,8 +152,8 @@
},
{
"ImportPath": "github.com/hashicorp/consul/api",
- "Comment": "v0.6.3-22-g4070793",
- "Rev": "40707934d26803d22c112f1bf37ce8e0e447901b"
+ "Comment": "v0.6.3-134-g09e60af",
+ "Rev": "09e60af97c5512ed57980931b314658611254ce0"
},
{
"ImportPath": "github.com/hashicorp/errwrap",
@@ -197,7 +177,7 @@
},
{
"ImportPath": "github.com/hashicorp/golang-lru",
- "Rev": "5c7531c003d8bf158b0fe5063649a2f41a822146"
+ "Rev": "a0d98a5f288019575c6d1f4bb1573fef2d1fcdc4"
},
{
"ImportPath": "github.com/hashicorp/hcl",
@@ -209,18 +189,18 @@
},
{
"ImportPath": "github.com/hashicorp/serf/coordinate",
- "Comment": "v0.7.0-12-ge4ec8cc",
- "Rev": "e4ec8cc423bbe20d26584b96efbeb9102e16d05f"
+ "Comment": "v0.7.0-18-gc4c55f1",
+ "Rev": "c4c55f16bae1aed9b355ad655d3ebf0215734461"
},
{
"ImportPath": "github.com/jmespath/go-jmespath",
- "Comment": "0.2.2-2-gc01cf91",
- "Rev": "c01cf91b011868172fdcd9f41838e80c9d716264"
+ "Comment": "0.2.2-12-g0b12d6b",
+ "Rev": "0b12d6b521d83fc7f755e7cfc1b1fbdd35a01a74"
},
{
"ImportPath": "github.com/lib/pq",
- "Comment": "go1.0-cutoff-74-g8ad2b29",
- "Rev": "8ad2b298cadd691a77015666a5372eae5dbfac8f"
+ "Comment": "go1.0-cutoff-81-g69552e5",
+ "Rev": "69552e54d2a9d4c6a2438926a774930f7bc398ec"
},
{
"ImportPath": "github.com/mattn/go-isatty",
@@ -228,11 +208,11 @@
},
{
"ImportPath": "github.com/mitchellh/cli",
- "Rev": "cb6853d606ea4a12a15ac83cc43503df99fd28fb"
+ "Rev": "5c87c51cedf76a1737bf5ca3979e8644871598a6"
},
{
"ImportPath": "github.com/mitchellh/copystructure",
- "Rev": "6fc66267e9da7d155a9d3bd489e00dad02666dc6"
+ "Rev": "80adcec1955ee4e97af357c30dee61aadcc02c10"
},
{
"ImportPath": "github.com/mitchellh/go-homedir",
@@ -240,7 +220,7 @@
},
{
"ImportPath": "github.com/mitchellh/mapstructure",
- "Rev": "281073eb9eb092240d33ef253c404f1cca550309"
+ "Rev": "d2dd0262208475919e1a362f675cfc0e7c10e905"
},
{
"ImportPath": "github.com/mitchellh/reflectwalk",
@@ -255,10 +235,6 @@
"ImportPath": "github.com/samuel/go-zookeeper/zk",
"Rev": "218e9c81c0dd8b3b18172b2bbfad92cc7d6db55f"
},
- {
- "ImportPath": "github.com/ugorji/go/codec",
- "Rev": "1a8bf87a90ddcdc7deaa0038f127ac62135fdd58"
- },
{
"ImportPath": "golang.org/x/crypto/bcrypt",
"Rev": "1f22c0103821b9390939b6776727195525381532"
@@ -285,15 +261,15 @@
},
{
"ImportPath": "golang.org/x/net/context",
- "Rev": "04b9de9b512f58addf28c9853d50ebef61c3953e"
+ "Rev": "b6d7b1396ec874c3b00f6c84cd4301a17c56c8ed"
},
{
"ImportPath": "golang.org/x/oauth2",
- "Rev": "8a57ed94ffd43444c0879fe75701732a38afc985"
+ "Rev": "188fb45fbef6ffd967b3a8abcfe176fd473361df"
},
{
"ImportPath": "golang.org/x/sys/unix",
- "Rev": "833a04a10549a95dc34458c195cbad61bbb6cb4d"
+ "Rev": "50c6bc5e4292a1d4e65c6e9be5f53be28bcbe28e"
},
{
"ImportPath": "gopkg.in/asn1-ber.v1",
diff --git a/Godeps/_workspace/.gitignore b/Godeps/_workspace/.gitignore
deleted file mode 100644
index f037d684ef..0000000000
--- a/Godeps/_workspace/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/pkg
-/bin
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/keys.generated.go b/Godeps/_workspace/src/github.com/coreos/etcd/client/keys.generated.go
deleted file mode 100644
index 748283aa95..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/keys.generated.go
+++ /dev/null
@@ -1,1000 +0,0 @@
-// ************************************************************
-// DO NOT EDIT.
-// THIS FILE IS AUTO-GENERATED BY codecgen.
-// ************************************************************
-
-package client
-
-import (
- "errors"
- "fmt"
- codec1978 "github.com/ugorji/go/codec"
- "reflect"
- "runtime"
- time "time"
-)
-
-const (
- // ----- content types ----
- codecSelferC_UTF81819 = 1
- codecSelferC_RAW1819 = 0
- // ----- value types used ----
- codecSelferValueTypeArray1819 = 10
- codecSelferValueTypeMap1819 = 9
- // ----- containerStateValues ----
- codecSelfer_containerMapKey1819 = 2
- codecSelfer_containerMapValue1819 = 3
- codecSelfer_containerMapEnd1819 = 4
- codecSelfer_containerArrayElem1819 = 6
- codecSelfer_containerArrayEnd1819 = 7
-)
-
-var (
- codecSelferBitsize1819 = uint8(reflect.TypeOf(uint(0)).Bits())
- codecSelferOnlyMapOrArrayEncodeToStructErr1819 = errors.New(`only encoded map or array can be decoded into a struct`)
-)
-
-type codecSelfer1819 struct{}
-
-func init() {
- if codec1978.GenVersion != 5 {
- _, file, _, _ := runtime.Caller(0)
- err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v",
- 5, codec1978.GenVersion, file)
- panic(err)
- }
- if false { // reference the types, but skip this branch at build/run time
- var v0 time.Time
- _ = v0
- }
-}
-
-func (x *Response) CodecEncodeSelf(e *codec1978.Encoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperEncoder(e)
- _, _, _ = h, z, r
- if x == nil {
- r.EncodeNil()
- } else {
- yym1 := z.EncBinary()
- _ = yym1
- if false {
- } else if z.HasExtensions() && z.EncExt(x) {
- } else {
- yysep2 := !z.EncBinary()
- yy2arr2 := z.EncBasicHandle().StructToArray
- var yyq2 [3]bool
- _, _, _ = yysep2, yyq2, yy2arr2
- const yyr2 bool = false
- var yynn2 int
- if yyr2 || yy2arr2 {
- r.EncodeArrayStart(3)
- } else {
- yynn2 = 3
- for _, b := range yyq2 {
- if b {
- yynn2++
- }
- }
- r.EncodeMapStart(yynn2)
- yynn2 = 0
- }
- if yyr2 || yy2arr2 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- yym4 := z.EncBinary()
- _ = yym4
- if false {
- } else {
- r.EncodeString(codecSelferC_UTF81819, string(x.Action))
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("action"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym5 := z.EncBinary()
- _ = yym5
- if false {
- } else {
- r.EncodeString(codecSelferC_UTF81819, string(x.Action))
- }
- }
- if yyr2 || yy2arr2 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if x.Node == nil {
- r.EncodeNil()
- } else {
- x.Node.CodecEncodeSelf(e)
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("node"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- if x.Node == nil {
- r.EncodeNil()
- } else {
- x.Node.CodecEncodeSelf(e)
- }
- }
- if yyr2 || yy2arr2 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if x.PrevNode == nil {
- r.EncodeNil()
- } else {
- x.PrevNode.CodecEncodeSelf(e)
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("prevNode"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- if x.PrevNode == nil {
- r.EncodeNil()
- } else {
- x.PrevNode.CodecEncodeSelf(e)
- }
- }
- if yyr2 || yy2arr2 {
- z.EncSendContainerState(codecSelfer_containerArrayEnd1819)
- } else {
- z.EncSendContainerState(codecSelfer_containerMapEnd1819)
- }
- }
- }
-}
-
-func (x *Response) CodecDecodeSelf(d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- yym8 := z.DecBinary()
- _ = yym8
- if false {
- } else if z.HasExtensions() && z.DecExt(x) {
- } else {
- yyct9 := r.ContainerType()
- if yyct9 == codecSelferValueTypeMap1819 {
- yyl9 := r.ReadMapStart()
- if yyl9 == 0 {
- z.DecSendContainerState(codecSelfer_containerMapEnd1819)
- } else {
- x.codecDecodeSelfFromMap(yyl9, d)
- }
- } else if yyct9 == codecSelferValueTypeArray1819 {
- yyl9 := r.ReadArrayStart()
- if yyl9 == 0 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- } else {
- x.codecDecodeSelfFromArray(yyl9, d)
- }
- } else {
- panic(codecSelferOnlyMapOrArrayEncodeToStructErr1819)
- }
- }
-}
-
-func (x *Response) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- var yys10Slc = z.DecScratchBuffer() // default slice to decode into
- _ = yys10Slc
- var yyhl10 bool = l >= 0
- for yyj10 := 0; ; yyj10++ {
- if yyhl10 {
- if yyj10 >= l {
- break
- }
- } else {
- if r.CheckBreak() {
- break
- }
- }
- z.DecSendContainerState(codecSelfer_containerMapKey1819)
- yys10Slc = r.DecodeBytes(yys10Slc, true, true)
- yys10 := string(yys10Slc)
- z.DecSendContainerState(codecSelfer_containerMapValue1819)
- switch yys10 {
- case "action":
- if r.TryDecodeAsNil() {
- x.Action = ""
- } else {
- x.Action = string(r.DecodeString())
- }
- case "node":
- if r.TryDecodeAsNil() {
- if x.Node != nil {
- x.Node = nil
- }
- } else {
- if x.Node == nil {
- x.Node = new(Node)
- }
- x.Node.CodecDecodeSelf(d)
- }
- case "prevNode":
- if r.TryDecodeAsNil() {
- if x.PrevNode != nil {
- x.PrevNode = nil
- }
- } else {
- if x.PrevNode == nil {
- x.PrevNode = new(Node)
- }
- x.PrevNode.CodecDecodeSelf(d)
- }
- default:
- z.DecStructFieldNotFound(-1, yys10)
- } // end switch yys10
- } // end for yyj10
- z.DecSendContainerState(codecSelfer_containerMapEnd1819)
-}
-
-func (x *Response) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- var yyj14 int
- var yyb14 bool
- var yyhl14 bool = l >= 0
- yyj14++
- if yyhl14 {
- yyb14 = yyj14 > l
- } else {
- yyb14 = r.CheckBreak()
- }
- if yyb14 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.Action = ""
- } else {
- x.Action = string(r.DecodeString())
- }
- yyj14++
- if yyhl14 {
- yyb14 = yyj14 > l
- } else {
- yyb14 = r.CheckBreak()
- }
- if yyb14 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- if x.Node != nil {
- x.Node = nil
- }
- } else {
- if x.Node == nil {
- x.Node = new(Node)
- }
- x.Node.CodecDecodeSelf(d)
- }
- yyj14++
- if yyhl14 {
- yyb14 = yyj14 > l
- } else {
- yyb14 = r.CheckBreak()
- }
- if yyb14 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- if x.PrevNode != nil {
- x.PrevNode = nil
- }
- } else {
- if x.PrevNode == nil {
- x.PrevNode = new(Node)
- }
- x.PrevNode.CodecDecodeSelf(d)
- }
- for {
- yyj14++
- if yyhl14 {
- yyb14 = yyj14 > l
- } else {
- yyb14 = r.CheckBreak()
- }
- if yyb14 {
- break
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- z.DecStructFieldNotFound(yyj14-1, "")
- }
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
-}
-
-func (x *Node) CodecEncodeSelf(e *codec1978.Encoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperEncoder(e)
- _, _, _ = h, z, r
- if x == nil {
- r.EncodeNil()
- } else {
- yym18 := z.EncBinary()
- _ = yym18
- if false {
- } else if z.HasExtensions() && z.EncExt(x) {
- } else {
- yysep19 := !z.EncBinary()
- yy2arr19 := z.EncBasicHandle().StructToArray
- var yyq19 [8]bool
- _, _, _ = yysep19, yyq19, yy2arr19
- const yyr19 bool = false
- yyq19[1] = x.Dir != false
- yyq19[6] = x.Expiration != nil
- yyq19[7] = x.TTL != 0
- var yynn19 int
- if yyr19 || yy2arr19 {
- r.EncodeArrayStart(8)
- } else {
- yynn19 = 5
- for _, b := range yyq19 {
- if b {
- yynn19++
- }
- }
- r.EncodeMapStart(yynn19)
- yynn19 = 0
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- yym21 := z.EncBinary()
- _ = yym21
- if false {
- } else {
- r.EncodeString(codecSelferC_UTF81819, string(x.Key))
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("key"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym22 := z.EncBinary()
- _ = yym22
- if false {
- } else {
- r.EncodeString(codecSelferC_UTF81819, string(x.Key))
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if yyq19[1] {
- yym24 := z.EncBinary()
- _ = yym24
- if false {
- } else {
- r.EncodeBool(bool(x.Dir))
- }
- } else {
- r.EncodeBool(false)
- }
- } else {
- if yyq19[1] {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("dir"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym25 := z.EncBinary()
- _ = yym25
- if false {
- } else {
- r.EncodeBool(bool(x.Dir))
- }
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- yym27 := z.EncBinary()
- _ = yym27
- if false {
- } else {
- r.EncodeString(codecSelferC_UTF81819, string(x.Value))
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("value"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym28 := z.EncBinary()
- _ = yym28
- if false {
- } else {
- r.EncodeString(codecSelferC_UTF81819, string(x.Value))
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if x.Nodes == nil {
- r.EncodeNil()
- } else {
- x.Nodes.CodecEncodeSelf(e)
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("nodes"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- if x.Nodes == nil {
- r.EncodeNil()
- } else {
- x.Nodes.CodecEncodeSelf(e)
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- yym31 := z.EncBinary()
- _ = yym31
- if false {
- } else {
- r.EncodeUint(uint64(x.CreatedIndex))
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("createdIndex"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym32 := z.EncBinary()
- _ = yym32
- if false {
- } else {
- r.EncodeUint(uint64(x.CreatedIndex))
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- yym34 := z.EncBinary()
- _ = yym34
- if false {
- } else {
- r.EncodeUint(uint64(x.ModifiedIndex))
- }
- } else {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("modifiedIndex"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym35 := z.EncBinary()
- _ = yym35
- if false {
- } else {
- r.EncodeUint(uint64(x.ModifiedIndex))
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if yyq19[6] {
- if x.Expiration == nil {
- r.EncodeNil()
- } else {
- yym37 := z.EncBinary()
- _ = yym37
- if false {
- } else if yym38 := z.TimeRtidIfBinc(); yym38 != 0 {
- r.EncodeBuiltin(yym38, x.Expiration)
- } else if z.HasExtensions() && z.EncExt(x.Expiration) {
- } else if yym37 {
- z.EncBinaryMarshal(x.Expiration)
- } else if !yym37 && z.IsJSONHandle() {
- z.EncJSONMarshal(x.Expiration)
- } else {
- z.EncFallback(x.Expiration)
- }
- }
- } else {
- r.EncodeNil()
- }
- } else {
- if yyq19[6] {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("expiration"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- if x.Expiration == nil {
- r.EncodeNil()
- } else {
- yym39 := z.EncBinary()
- _ = yym39
- if false {
- } else if yym40 := z.TimeRtidIfBinc(); yym40 != 0 {
- r.EncodeBuiltin(yym40, x.Expiration)
- } else if z.HasExtensions() && z.EncExt(x.Expiration) {
- } else if yym39 {
- z.EncBinaryMarshal(x.Expiration)
- } else if !yym39 && z.IsJSONHandle() {
- z.EncJSONMarshal(x.Expiration)
- } else {
- z.EncFallback(x.Expiration)
- }
- }
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if yyq19[7] {
- yym42 := z.EncBinary()
- _ = yym42
- if false {
- } else {
- r.EncodeInt(int64(x.TTL))
- }
- } else {
- r.EncodeInt(0)
- }
- } else {
- if yyq19[7] {
- z.EncSendContainerState(codecSelfer_containerMapKey1819)
- r.EncodeString(codecSelferC_UTF81819, string("ttl"))
- z.EncSendContainerState(codecSelfer_containerMapValue1819)
- yym43 := z.EncBinary()
- _ = yym43
- if false {
- } else {
- r.EncodeInt(int64(x.TTL))
- }
- }
- }
- if yyr19 || yy2arr19 {
- z.EncSendContainerState(codecSelfer_containerArrayEnd1819)
- } else {
- z.EncSendContainerState(codecSelfer_containerMapEnd1819)
- }
- }
- }
-}
-
-func (x *Node) CodecDecodeSelf(d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- yym44 := z.DecBinary()
- _ = yym44
- if false {
- } else if z.HasExtensions() && z.DecExt(x) {
- } else {
- yyct45 := r.ContainerType()
- if yyct45 == codecSelferValueTypeMap1819 {
- yyl45 := r.ReadMapStart()
- if yyl45 == 0 {
- z.DecSendContainerState(codecSelfer_containerMapEnd1819)
- } else {
- x.codecDecodeSelfFromMap(yyl45, d)
- }
- } else if yyct45 == codecSelferValueTypeArray1819 {
- yyl45 := r.ReadArrayStart()
- if yyl45 == 0 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- } else {
- x.codecDecodeSelfFromArray(yyl45, d)
- }
- } else {
- panic(codecSelferOnlyMapOrArrayEncodeToStructErr1819)
- }
- }
-}
-
-func (x *Node) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- var yys46Slc = z.DecScratchBuffer() // default slice to decode into
- _ = yys46Slc
- var yyhl46 bool = l >= 0
- for yyj46 := 0; ; yyj46++ {
- if yyhl46 {
- if yyj46 >= l {
- break
- }
- } else {
- if r.CheckBreak() {
- break
- }
- }
- z.DecSendContainerState(codecSelfer_containerMapKey1819)
- yys46Slc = r.DecodeBytes(yys46Slc, true, true)
- yys46 := string(yys46Slc)
- z.DecSendContainerState(codecSelfer_containerMapValue1819)
- switch yys46 {
- case "key":
- if r.TryDecodeAsNil() {
- x.Key = ""
- } else {
- x.Key = string(r.DecodeString())
- }
- case "dir":
- if r.TryDecodeAsNil() {
- x.Dir = false
- } else {
- x.Dir = bool(r.DecodeBool())
- }
- case "value":
- if r.TryDecodeAsNil() {
- x.Value = ""
- } else {
- x.Value = string(r.DecodeString())
- }
- case "nodes":
- if r.TryDecodeAsNil() {
- x.Nodes = nil
- } else {
- yyv50 := &x.Nodes
- yyv50.CodecDecodeSelf(d)
- }
- case "createdIndex":
- if r.TryDecodeAsNil() {
- x.CreatedIndex = 0
- } else {
- x.CreatedIndex = uint64(r.DecodeUint(64))
- }
- case "modifiedIndex":
- if r.TryDecodeAsNil() {
- x.ModifiedIndex = 0
- } else {
- x.ModifiedIndex = uint64(r.DecodeUint(64))
- }
- case "expiration":
- if r.TryDecodeAsNil() {
- if x.Expiration != nil {
- x.Expiration = nil
- }
- } else {
- if x.Expiration == nil {
- x.Expiration = new(time.Time)
- }
- yym54 := z.DecBinary()
- _ = yym54
- if false {
- } else if yym55 := z.TimeRtidIfBinc(); yym55 != 0 {
- r.DecodeBuiltin(yym55, x.Expiration)
- } else if z.HasExtensions() && z.DecExt(x.Expiration) {
- } else if yym54 {
- z.DecBinaryUnmarshal(x.Expiration)
- } else if !yym54 && z.IsJSONHandle() {
- z.DecJSONUnmarshal(x.Expiration)
- } else {
- z.DecFallback(x.Expiration, false)
- }
- }
- case "ttl":
- if r.TryDecodeAsNil() {
- x.TTL = 0
- } else {
- x.TTL = int64(r.DecodeInt(64))
- }
- default:
- z.DecStructFieldNotFound(-1, yys46)
- } // end switch yys46
- } // end for yyj46
- z.DecSendContainerState(codecSelfer_containerMapEnd1819)
-}
-
-func (x *Node) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- var yyj57 int
- var yyb57 bool
- var yyhl57 bool = l >= 0
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.Key = ""
- } else {
- x.Key = string(r.DecodeString())
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.Dir = false
- } else {
- x.Dir = bool(r.DecodeBool())
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.Value = ""
- } else {
- x.Value = string(r.DecodeString())
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.Nodes = nil
- } else {
- yyv61 := &x.Nodes
- yyv61.CodecDecodeSelf(d)
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.CreatedIndex = 0
- } else {
- x.CreatedIndex = uint64(r.DecodeUint(64))
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.ModifiedIndex = 0
- } else {
- x.ModifiedIndex = uint64(r.DecodeUint(64))
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- if x.Expiration != nil {
- x.Expiration = nil
- }
- } else {
- if x.Expiration == nil {
- x.Expiration = new(time.Time)
- }
- yym65 := z.DecBinary()
- _ = yym65
- if false {
- } else if yym66 := z.TimeRtidIfBinc(); yym66 != 0 {
- r.DecodeBuiltin(yym66, x.Expiration)
- } else if z.HasExtensions() && z.DecExt(x.Expiration) {
- } else if yym65 {
- z.DecBinaryUnmarshal(x.Expiration)
- } else if !yym65 && z.IsJSONHandle() {
- z.DecJSONUnmarshal(x.Expiration)
- } else {
- z.DecFallback(x.Expiration, false)
- }
- }
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
- return
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- if r.TryDecodeAsNil() {
- x.TTL = 0
- } else {
- x.TTL = int64(r.DecodeInt(64))
- }
- for {
- yyj57++
- if yyhl57 {
- yyb57 = yyj57 > l
- } else {
- yyb57 = r.CheckBreak()
- }
- if yyb57 {
- break
- }
- z.DecSendContainerState(codecSelfer_containerArrayElem1819)
- z.DecStructFieldNotFound(yyj57-1, "")
- }
- z.DecSendContainerState(codecSelfer_containerArrayEnd1819)
-}
-
-func (x Nodes) CodecEncodeSelf(e *codec1978.Encoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperEncoder(e)
- _, _, _ = h, z, r
- if x == nil {
- r.EncodeNil()
- } else {
- yym68 := z.EncBinary()
- _ = yym68
- if false {
- } else if z.HasExtensions() && z.EncExt(x) {
- } else {
- h.encNodes((Nodes)(x), e)
- }
- }
-}
-
-func (x *Nodes) CodecDecodeSelf(d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
- yym69 := z.DecBinary()
- _ = yym69
- if false {
- } else if z.HasExtensions() && z.DecExt(x) {
- } else {
- h.decNodes((*Nodes)(x), d)
- }
-}
-
-func (x codecSelfer1819) encNodes(v Nodes, e *codec1978.Encoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperEncoder(e)
- _, _, _ = h, z, r
- r.EncodeArrayStart(len(v))
- for _, yyv70 := range v {
- z.EncSendContainerState(codecSelfer_containerArrayElem1819)
- if yyv70 == nil {
- r.EncodeNil()
- } else {
- yyv70.CodecEncodeSelf(e)
- }
- }
- z.EncSendContainerState(codecSelfer_containerArrayEnd1819)
-}
-
-func (x codecSelfer1819) decNodes(v *Nodes, d *codec1978.Decoder) {
- var h codecSelfer1819
- z, r := codec1978.GenHelperDecoder(d)
- _, _, _ = h, z, r
-
- yyv71 := *v
- yyh71, yyl71 := z.DecSliceHelperStart()
- var yyc71 bool
- if yyl71 == 0 {
- if yyv71 == nil {
- yyv71 = []*Node{}
- yyc71 = true
- } else if len(yyv71) != 0 {
- yyv71 = yyv71[:0]
- yyc71 = true
- }
- } else if yyl71 > 0 {
- var yyrr71, yyrl71 int
- var yyrt71 bool
- if yyl71 > cap(yyv71) {
-
- yyrg71 := len(yyv71) > 0
- yyv271 := yyv71
- yyrl71, yyrt71 = z.DecInferLen(yyl71, z.DecBasicHandle().MaxInitLen, 8)
- if yyrt71 {
- if yyrl71 <= cap(yyv71) {
- yyv71 = yyv71[:yyrl71]
- } else {
- yyv71 = make([]*Node, yyrl71)
- }
- } else {
- yyv71 = make([]*Node, yyrl71)
- }
- yyc71 = true
- yyrr71 = len(yyv71)
- if yyrg71 {
- copy(yyv71, yyv271)
- }
- } else if yyl71 != len(yyv71) {
- yyv71 = yyv71[:yyl71]
- yyc71 = true
- }
- yyj71 := 0
- for ; yyj71 < yyrr71; yyj71++ {
- yyh71.ElemContainerState(yyj71)
- if r.TryDecodeAsNil() {
- if yyv71[yyj71] != nil {
- *yyv71[yyj71] = Node{}
- }
- } else {
- if yyv71[yyj71] == nil {
- yyv71[yyj71] = new(Node)
- }
- yyw72 := yyv71[yyj71]
- yyw72.CodecDecodeSelf(d)
- }
-
- }
- if yyrt71 {
- for ; yyj71 < yyl71; yyj71++ {
- yyv71 = append(yyv71, nil)
- yyh71.ElemContainerState(yyj71)
- if r.TryDecodeAsNil() {
- if yyv71[yyj71] != nil {
- *yyv71[yyj71] = Node{}
- }
- } else {
- if yyv71[yyj71] == nil {
- yyv71[yyj71] = new(Node)
- }
- yyw73 := yyv71[yyj71]
- yyw73.CodecDecodeSelf(d)
- }
-
- }
- }
-
- } else {
- yyj71 := 0
- for ; !r.CheckBreak(); yyj71++ {
-
- if yyj71 >= len(yyv71) {
- yyv71 = append(yyv71, nil) // var yyz71 *Node
- yyc71 = true
- }
- yyh71.ElemContainerState(yyj71)
- if yyj71 < len(yyv71) {
- if r.TryDecodeAsNil() {
- if yyv71[yyj71] != nil {
- *yyv71[yyj71] = Node{}
- }
- } else {
- if yyv71[yyj71] == nil {
- yyv71[yyj71] = new(Node)
- }
- yyw74 := yyv71[yyj71]
- yyw74.CodecDecodeSelf(d)
- }
-
- } else {
- z.DecSwallow()
- }
-
- }
- if yyj71 < len(yyv71) {
- yyv71 = yyv71[:yyj71]
- yyc71 = true
- } else if yyj71 == 0 && yyv71 == nil {
- yyv71 = []*Node{}
- yyc71 = true
- }
- }
- yyh71.End()
- if yyc71 {
- *v = yyv71
- }
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/pathutil/path.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/pathutil/path.go
deleted file mode 100644
index f26254ba93..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/pathutil/path.go
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// Package pathutil implements utility functions for handling slash-separated
-// paths.
-package pathutil
-
-import "path"
-
-// CanonicalURLPath returns the canonical url path for p, which follows the rules:
-// 1. the path always starts with "/"
-// 2. replace multiple slashes with a single slash
-// 3. replace each '.' '..' path name element with equivalent one
-// 4. keep the trailing slash
-// The function is borrowed from stdlib http.cleanPath in server.go.
-func CanonicalURLPath(p string) string {
- if p == "" {
- return "/"
- }
- if p[0] != '/' {
- p = "/" + p
- }
- np := path.Clean(p)
- // path.Clean removes trailing slash except for root,
- // put the trailing slash back if necessary.
- if p[len(p)-1] == '/' && np != "/" {
- np += "/"
- }
- return np
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/keepalive_listener.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/keepalive_listener.go
deleted file mode 100644
index 1fe1ba80dd..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/keepalive_listener.go
+++ /dev/null
@@ -1,99 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "crypto/tls"
- "fmt"
- "net"
- "time"
-)
-
-type keepAliveConn interface {
- SetKeepAlive(bool) error
- SetKeepAlivePeriod(d time.Duration) error
-}
-
-// NewKeepAliveListener returns a listener that listens on the given address.
-// Be careful when wrap around KeepAliveListener with another Listener if TLSInfo is not nil.
-// Some pkgs (like go/http) might expect Listener to return TLSConn type to start TLS handshake.
-// http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html
-func NewKeepAliveListener(l net.Listener, scheme string, info TLSInfo) (net.Listener, error) {
- if scheme == "https" {
- if info.Empty() {
- return nil, fmt.Errorf("cannot listen on TLS for given listener: KeyFile and CertFile are not presented")
- }
- cfg, err := info.ServerConfig()
- if err != nil {
- return nil, err
- }
-
- return newTLSKeepaliveListener(l, cfg), nil
- }
-
- return &keepaliveListener{
- Listener: l,
- }, nil
-}
-
-type keepaliveListener struct{ net.Listener }
-
-func (kln *keepaliveListener) Accept() (net.Conn, error) {
- c, err := kln.Listener.Accept()
- if err != nil {
- return nil, err
- }
- kac := c.(keepAliveConn)
- // detection time: tcp_keepalive_time + tcp_keepalive_probes + tcp_keepalive_intvl
- // default on linux: 30 + 8 * 30
- // default on osx: 30 + 8 * 75
- kac.SetKeepAlive(true)
- kac.SetKeepAlivePeriod(30 * time.Second)
- return c, nil
-}
-
-// A tlsKeepaliveListener implements a network listener (net.Listener) for TLS connections.
-type tlsKeepaliveListener struct {
- net.Listener
- config *tls.Config
-}
-
-// Accept waits for and returns the next incoming TLS connection.
-// The returned connection c is a *tls.Conn.
-func (l *tlsKeepaliveListener) Accept() (c net.Conn, err error) {
- c, err = l.Listener.Accept()
- if err != nil {
- return
- }
- kac := c.(keepAliveConn)
- // detection time: tcp_keepalive_time + tcp_keepalive_probes + tcp_keepalive_intvl
- // default on linux: 30 + 8 * 30
- // default on osx: 30 + 8 * 75
- kac.SetKeepAlive(true)
- kac.SetKeepAlivePeriod(30 * time.Second)
- c = tls.Server(c, l.config)
- return
-}
-
-// NewListener creates a Listener which accepts connections from an inner
-// Listener and wraps each connection with Server.
-// The configuration config must be non-nil and must have
-// at least one certificate.
-func newTLSKeepaliveListener(inner net.Listener, config *tls.Config) net.Listener {
- l := &tlsKeepaliveListener{}
- l.Listener = inner
- l.config = config
- return l
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/listener.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/listener.go
deleted file mode 100644
index 56c77b409c..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/listener.go
+++ /dev/null
@@ -1,213 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "crypto/tls"
- "crypto/x509"
- "encoding/pem"
- "fmt"
- "io/ioutil"
- "net"
- "net/http"
- "time"
-)
-
-func NewListener(addr string, scheme string, info TLSInfo) (net.Listener, error) {
- nettype := "tcp"
- if scheme == "unix" {
- // unix sockets via unix://laddr
- nettype = scheme
- }
-
- l, err := net.Listen(nettype, addr)
- if err != nil {
- return nil, err
- }
-
- if scheme == "https" {
- if info.Empty() {
- return nil, fmt.Errorf("cannot listen on TLS for %s: KeyFile and CertFile are not presented", scheme+"://"+addr)
- }
- cfg, err := info.ServerConfig()
- if err != nil {
- return nil, err
- }
-
- l = tls.NewListener(l, cfg)
- }
-
- return l, nil
-}
-
-func NewTransport(info TLSInfo, dialtimeoutd time.Duration) (*http.Transport, error) {
- cfg, err := info.ClientConfig()
- if err != nil {
- return nil, err
- }
-
- t := &http.Transport{
- Dial: (&net.Dialer{
- Timeout: dialtimeoutd,
- // value taken from http.DefaultTransport
- KeepAlive: 30 * time.Second,
- }).Dial,
- // value taken from http.DefaultTransport
- TLSHandshakeTimeout: 10 * time.Second,
- TLSClientConfig: cfg,
- }
-
- return t, nil
-}
-
-type TLSInfo struct {
- CertFile string
- KeyFile string
- CAFile string
- TrustedCAFile string
- ClientCertAuth bool
-
- // parseFunc exists to simplify testing. Typically, parseFunc
- // should be left nil. In that case, tls.X509KeyPair will be used.
- parseFunc func([]byte, []byte) (tls.Certificate, error)
-}
-
-func (info TLSInfo) String() string {
- return fmt.Sprintf("cert = %s, key = %s, ca = %s, trusted-ca = %s, client-cert-auth = %v", info.CertFile, info.KeyFile, info.CAFile, info.TrustedCAFile, info.ClientCertAuth)
-}
-
-func (info TLSInfo) Empty() bool {
- return info.CertFile == "" && info.KeyFile == ""
-}
-
-func (info TLSInfo) baseConfig() (*tls.Config, error) {
- if info.KeyFile == "" || info.CertFile == "" {
- return nil, fmt.Errorf("KeyFile and CertFile must both be present[key: %v, cert: %v]", info.KeyFile, info.CertFile)
- }
-
- cert, err := ioutil.ReadFile(info.CertFile)
- if err != nil {
- return nil, err
- }
-
- key, err := ioutil.ReadFile(info.KeyFile)
- if err != nil {
- return nil, err
- }
-
- parseFunc := info.parseFunc
- if parseFunc == nil {
- parseFunc = tls.X509KeyPair
- }
-
- tlsCert, err := parseFunc(cert, key)
- if err != nil {
- return nil, err
- }
-
- cfg := &tls.Config{
- Certificates: []tls.Certificate{tlsCert},
- MinVersion: tls.VersionTLS10,
- }
- return cfg, nil
-}
-
-// cafiles returns a list of CA file paths.
-func (info TLSInfo) cafiles() []string {
- cs := make([]string, 0)
- if info.CAFile != "" {
- cs = append(cs, info.CAFile)
- }
- if info.TrustedCAFile != "" {
- cs = append(cs, info.TrustedCAFile)
- }
- return cs
-}
-
-// ServerConfig generates a tls.Config object for use by an HTTP server.
-func (info TLSInfo) ServerConfig() (*tls.Config, error) {
- cfg, err := info.baseConfig()
- if err != nil {
- return nil, err
- }
-
- cfg.ClientAuth = tls.NoClientCert
- if info.CAFile != "" || info.ClientCertAuth {
- cfg.ClientAuth = tls.RequireAndVerifyClientCert
- }
-
- CAFiles := info.cafiles()
- if len(CAFiles) > 0 {
- cp, err := newCertPool(CAFiles)
- if err != nil {
- return nil, err
- }
- cfg.ClientCAs = cp
- }
-
- return cfg, nil
-}
-
-// ClientConfig generates a tls.Config object for use by an HTTP client.
-func (info TLSInfo) ClientConfig() (*tls.Config, error) {
- var cfg *tls.Config
- var err error
-
- if !info.Empty() {
- cfg, err = info.baseConfig()
- if err != nil {
- return nil, err
- }
- } else {
- cfg = &tls.Config{}
- }
-
- CAFiles := info.cafiles()
- if len(CAFiles) > 0 {
- cfg.RootCAs, err = newCertPool(CAFiles)
- if err != nil {
- return nil, err
- }
- }
-
- return cfg, nil
-}
-
-// newCertPool creates x509 certPool with provided CA files.
-func newCertPool(CAFiles []string) (*x509.CertPool, error) {
- certPool := x509.NewCertPool()
-
- for _, CAFile := range CAFiles {
- pemByte, err := ioutil.ReadFile(CAFile)
- if err != nil {
- return nil, err
- }
-
- for {
- var block *pem.Block
- block, pemByte = pem.Decode(pemByte)
- if block == nil {
- break
- }
- cert, err := x509.ParseCertificate(block.Bytes)
- if err != nil {
- return nil, err
- }
- certPool.AddCert(cert)
- }
- }
-
- return certPool, nil
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_conn.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_conn.go
deleted file mode 100644
index daca554e93..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_conn.go
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "net"
- "time"
-)
-
-type timeoutConn struct {
- net.Conn
- wtimeoutd time.Duration
- rdtimeoutd time.Duration
-}
-
-func (c timeoutConn) Write(b []byte) (n int, err error) {
- if c.wtimeoutd > 0 {
- if err := c.SetWriteDeadline(time.Now().Add(c.wtimeoutd)); err != nil {
- return 0, err
- }
- }
- return c.Conn.Write(b)
-}
-
-func (c timeoutConn) Read(b []byte) (n int, err error) {
- if c.rdtimeoutd > 0 {
- if err := c.SetReadDeadline(time.Now().Add(c.rdtimeoutd)); err != nil {
- return 0, err
- }
- }
- return c.Conn.Read(b)
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_dialer.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_dialer.go
deleted file mode 100644
index 9bd6129804..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_dialer.go
+++ /dev/null
@@ -1,36 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "net"
- "time"
-)
-
-type rwTimeoutDialer struct {
- wtimeoutd time.Duration
- rdtimeoutd time.Duration
- net.Dialer
-}
-
-func (d *rwTimeoutDialer) Dial(network, address string) (net.Conn, error) {
- conn, err := d.Dialer.Dial(network, address)
- tconn := &timeoutConn{
- rdtimeoutd: d.rdtimeoutd,
- wtimeoutd: d.wtimeoutd,
- Conn: conn,
- }
- return tconn, err
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_listener.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_listener.go
deleted file mode 100644
index 6992a8eee0..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_listener.go
+++ /dev/null
@@ -1,53 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "net"
- "time"
-)
-
-// NewTimeoutListener returns a listener that listens on the given address.
-// If read/write on the accepted connection blocks longer than its time limit,
-// it will return timeout error.
-func NewTimeoutListener(addr string, scheme string, info TLSInfo, rdtimeoutd, wtimeoutd time.Duration) (net.Listener, error) {
- ln, err := NewListener(addr, scheme, info)
- if err != nil {
- return nil, err
- }
- return &rwTimeoutListener{
- Listener: ln,
- rdtimeoutd: rdtimeoutd,
- wtimeoutd: wtimeoutd,
- }, nil
-}
-
-type rwTimeoutListener struct {
- net.Listener
- wtimeoutd time.Duration
- rdtimeoutd time.Duration
-}
-
-func (rwln *rwTimeoutListener) Accept() (net.Conn, error) {
- c, err := rwln.Listener.Accept()
- if err != nil {
- return nil, err
- }
- return timeoutConn{
- Conn: c,
- wtimeoutd: rwln.wtimeoutd,
- rdtimeoutd: rwln.rdtimeoutd,
- }, nil
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_transport.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_transport.go
deleted file mode 100644
index e3dbb6b226..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/transport/timeout_transport.go
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package transport
-
-import (
- "net"
- "net/http"
- "time"
-)
-
-// NewTimeoutTransport returns a transport created using the given TLS info.
-// If read/write on the created connection blocks longer than its time limit,
-// it will return timeout error.
-// If read/write timeout is set, transport will not be able to reuse connection.
-func NewTimeoutTransport(info TLSInfo, dialtimeoutd, rdtimeoutd, wtimeoutd time.Duration) (*http.Transport, error) {
- tr, err := NewTransport(info, dialtimeoutd)
- if err != nil {
- return nil, err
- }
-
- if rdtimeoutd != 0 || wtimeoutd != 0 {
- // the timeouted connection will timeout soon after it is idle.
- // it should not be put back to http transport as an idle connection for future usage.
- tr.MaxIdleConnsPerHost = -1
- }
-
- tr.Dial = (&rwTimeoutDialer{
- Dialer: net.Dialer{
- Timeout: dialtimeoutd,
- KeepAlive: 30 * time.Second,
- },
- rdtimeoutd: rdtimeoutd,
- wtimeoutd: wtimeoutd,
- }).Dial
- return tr, nil
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/id.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/id.go
deleted file mode 100644
index 88cb9e6349..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/id.go
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package types
-
-import (
- "strconv"
-)
-
-// ID represents a generic identifier which is canonically
-// stored as a uint64 but is typically represented as a
-// base-16 string for input/output
-type ID uint64
-
-func (i ID) String() string {
- return strconv.FormatUint(uint64(i), 16)
-}
-
-// IDFromString attempts to create an ID from a base-16 string.
-func IDFromString(s string) (ID, error) {
- i, err := strconv.ParseUint(s, 16, 64)
- return ID(i), err
-}
-
-// IDSlice implements the sort interface
-type IDSlice []ID
-
-func (p IDSlice) Len() int { return len(p) }
-func (p IDSlice) Less(i, j int) bool { return uint64(p[i]) < uint64(p[j]) }
-func (p IDSlice) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/set.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/set.go
deleted file mode 100644
index bb997174c7..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/set.go
+++ /dev/null
@@ -1,178 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package types
-
-import (
- "reflect"
- "sort"
- "sync"
-)
-
-type Set interface {
- Add(string)
- Remove(string)
- Contains(string) bool
- Equals(Set) bool
- Length() int
- Values() []string
- Copy() Set
- Sub(Set) Set
-}
-
-func NewUnsafeSet(values ...string) *unsafeSet {
- set := &unsafeSet{make(map[string]struct{})}
- for _, v := range values {
- set.Add(v)
- }
- return set
-}
-
-func NewThreadsafeSet(values ...string) *tsafeSet {
- us := NewUnsafeSet(values...)
- return &tsafeSet{us, sync.RWMutex{}}
-}
-
-type unsafeSet struct {
- d map[string]struct{}
-}
-
-// Add adds a new value to the set (no-op if the value is already present)
-func (us *unsafeSet) Add(value string) {
- us.d[value] = struct{}{}
-}
-
-// Remove removes the given value from the set
-func (us *unsafeSet) Remove(value string) {
- delete(us.d, value)
-}
-
-// Contains returns whether the set contains the given value
-func (us *unsafeSet) Contains(value string) (exists bool) {
- _, exists = us.d[value]
- return
-}
-
-// ContainsAll returns whether the set contains all given values
-func (us *unsafeSet) ContainsAll(values []string) bool {
- for _, s := range values {
- if !us.Contains(s) {
- return false
- }
- }
- return true
-}
-
-// Equals returns whether the contents of two sets are identical
-func (us *unsafeSet) Equals(other Set) bool {
- v1 := sort.StringSlice(us.Values())
- v2 := sort.StringSlice(other.Values())
- v1.Sort()
- v2.Sort()
- return reflect.DeepEqual(v1, v2)
-}
-
-// Length returns the number of elements in the set
-func (us *unsafeSet) Length() int {
- return len(us.d)
-}
-
-// Values returns the values of the Set in an unspecified order.
-func (us *unsafeSet) Values() (values []string) {
- values = make([]string, 0)
- for val := range us.d {
- values = append(values, val)
- }
- return
-}
-
-// Copy creates a new Set containing the values of the first
-func (us *unsafeSet) Copy() Set {
- cp := NewUnsafeSet()
- for val := range us.d {
- cp.Add(val)
- }
-
- return cp
-}
-
-// Sub removes all elements in other from the set
-func (us *unsafeSet) Sub(other Set) Set {
- oValues := other.Values()
- result := us.Copy().(*unsafeSet)
-
- for _, val := range oValues {
- if _, ok := result.d[val]; !ok {
- continue
- }
- delete(result.d, val)
- }
-
- return result
-}
-
-type tsafeSet struct {
- us *unsafeSet
- m sync.RWMutex
-}
-
-func (ts *tsafeSet) Add(value string) {
- ts.m.Lock()
- defer ts.m.Unlock()
- ts.us.Add(value)
-}
-
-func (ts *tsafeSet) Remove(value string) {
- ts.m.Lock()
- defer ts.m.Unlock()
- ts.us.Remove(value)
-}
-
-func (ts *tsafeSet) Contains(value string) (exists bool) {
- ts.m.RLock()
- defer ts.m.RUnlock()
- return ts.us.Contains(value)
-}
-
-func (ts *tsafeSet) Equals(other Set) bool {
- ts.m.RLock()
- defer ts.m.RUnlock()
- return ts.us.Equals(other)
-}
-
-func (ts *tsafeSet) Length() int {
- ts.m.RLock()
- defer ts.m.RUnlock()
- return ts.us.Length()
-}
-
-func (ts *tsafeSet) Values() (values []string) {
- ts.m.RLock()
- defer ts.m.RUnlock()
- return ts.us.Values()
-}
-
-func (ts *tsafeSet) Copy() Set {
- ts.m.RLock()
- defer ts.m.RUnlock()
- usResult := ts.us.Copy().(*unsafeSet)
- return &tsafeSet{usResult, sync.RWMutex{}}
-}
-
-func (ts *tsafeSet) Sub(other Set) Set {
- ts.m.RLock()
- defer ts.m.RUnlock()
- usResult := ts.us.Sub(other).(*unsafeSet)
- return &tsafeSet{usResult, sync.RWMutex{}}
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/slice.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/slice.go
deleted file mode 100644
index 0327950f70..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/slice.go
+++ /dev/null
@@ -1,22 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package types
-
-// Uint64Slice implements sort interface
-type Uint64Slice []uint64
-
-func (p Uint64Slice) Len() int { return len(p) }
-func (p Uint64Slice) Less(i, j int) bool { return p[i] < p[j] }
-func (p Uint64Slice) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/urls.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/urls.go
deleted file mode 100644
index ce2483ffaa..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/urls.go
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package types
-
-import (
- "errors"
- "fmt"
- "net"
- "net/url"
- "sort"
- "strings"
-)
-
-type URLs []url.URL
-
-func NewURLs(strs []string) (URLs, error) {
- all := make([]url.URL, len(strs))
- if len(all) == 0 {
- return nil, errors.New("no valid URLs given")
- }
- for i, in := range strs {
- in = strings.TrimSpace(in)
- u, err := url.Parse(in)
- if err != nil {
- return nil, err
- }
- if u.Scheme != "http" && u.Scheme != "https" {
- return nil, fmt.Errorf("URL scheme must be http or https: %s", in)
- }
- if _, _, err := net.SplitHostPort(u.Host); err != nil {
- return nil, fmt.Errorf(`URL address does not have the form "host:port": %s`, in)
- }
- if u.Path != "" {
- return nil, fmt.Errorf("URL must not contain a path: %s", in)
- }
- all[i] = *u
- }
- us := URLs(all)
- us.Sort()
-
- return us, nil
-}
-
-func (us URLs) String() string {
- return strings.Join(us.StringSlice(), ",")
-}
-
-func (us *URLs) Sort() {
- sort.Sort(us)
-}
-func (us URLs) Len() int { return len(us) }
-func (us URLs) Less(i, j int) bool { return us[i].String() < us[j].String() }
-func (us URLs) Swap(i, j int) { us[i], us[j] = us[j], us[i] }
-
-func (us URLs) StringSlice() []string {
- out := make([]string, len(us))
- for i := range us {
- out[i] = us[i].String()
- }
-
- return out
-}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/urlsmap.go b/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/urlsmap.go
deleted file mode 100644
index f7d5c1c90a..0000000000
--- a/Godeps/_workspace/src/github.com/coreos/etcd/pkg/types/urlsmap.go
+++ /dev/null
@@ -1,91 +0,0 @@
-// Copyright 2015 CoreOS, Inc.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package types
-
-import (
- "fmt"
- "sort"
- "strings"
-)
-
-type URLsMap map[string]URLs
-
-// NewURLsMap returns a URLsMap instantiated from the given string,
-// which consists of discovery-formatted names-to-URLs, like:
-// mach0=http://1.1.1.1:2380,mach0=http://2.2.2.2::2380,mach1=http://3.3.3.3:2380,mach2=http://4.4.4.4:2380
-func NewURLsMap(s string) (URLsMap, error) {
- m := parse(s)
-
- cl := URLsMap{}
- for name, urls := range m {
- us, err := NewURLs(urls)
- if err != nil {
- return nil, err
- }
- cl[name] = us
- }
- return cl, nil
-}
-
-// String returns NameURLPairs into discovery-formatted name-to-URLs sorted by name.
-func (c URLsMap) String() string {
- pairs := make([]string, 0)
- for name, urls := range c {
- for _, url := range urls {
- pairs = append(pairs, fmt.Sprintf("%s=%s", name, url.String()))
- }
- }
- sort.Strings(pairs)
- return strings.Join(pairs, ",")
-}
-
-// URLs returns a list of all URLs.
-// The returned list is sorted in ascending lexicographical order.
-func (c URLsMap) URLs() []string {
- urls := make([]string, 0)
- for _, us := range c {
- for _, u := range us {
- urls = append(urls, u.String())
- }
- }
- sort.Strings(urls)
- return urls
-}
-
-func (c URLsMap) Len() int {
- return len(c)
-}
-
-// parse parses the given string and returns a map listing the values specified for each key.
-func parse(s string) map[string][]string {
- m := make(map[string][]string)
- for s != "" {
- key := s
- if i := strings.IndexAny(key, ","); i >= 0 {
- key, s = key[:i], key[i+1:]
- } else {
- s = ""
- }
- if key == "" {
- continue
- }
- value := ""
- if i := strings.Index(key, "="); i >= 0 {
- key, value = key[:i], key[i+1:]
- }
- m[key] = append(m[key], value)
- }
- return m
-}
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap-theme.css b/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap-theme.css
deleted file mode 100644
index ad11735693..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap-theme.css
+++ /dev/null
@@ -1,384 +0,0 @@
-.btn-default,
-.btn-primary,
-.btn-success,
-.btn-info,
-.btn-warning,
-.btn-danger {
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-
-.btn-default:active,
-.btn-primary:active,
-.btn-success:active,
-.btn-info:active,
-.btn-warning:active,
-.btn-danger:active,
-.btn-default.active,
-.btn-primary.active,
-.btn-success.active,
-.btn-info.active,
-.btn-warning.active,
-.btn-danger.active {
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-}
-
-.btn:active,
-.btn.active {
- background-image: none;
-}
-
-.btn-default {
- text-shadow: 0 1px 0 #fff;
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ffffff), to(#e6e6e6));
- background-image: -webkit-linear-gradient(top, #ffffff, 0%, #e6e6e6, 100%);
- background-image: -moz-linear-gradient(top, #ffffff 0%, #e6e6e6 100%);
- background-image: linear-gradient(to bottom, #ffffff 0%, #e6e6e6 100%);
- background-repeat: repeat-x;
- border-color: #e0e0e0;
- border-color: #ccc;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
-}
-
-.btn-default:active,
-.btn-default.active {
- background-color: #e6e6e6;
- border-color: #e0e0e0;
-}
-
-.btn-primary {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#3071a9));
- background-image: -webkit-linear-gradient(top, #428bca, 0%, #3071a9, 100%);
- background-image: -moz-linear-gradient(top, #428bca 0%, #3071a9 100%);
- background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%);
- background-repeat: repeat-x;
- border-color: #2d6ca2;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0);
-}
-
-.btn-primary:active,
-.btn-primary.active {
- background-color: #3071a9;
- border-color: #2d6ca2;
-}
-
-.btn-success {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5cb85c), to(#449d44));
- background-image: -webkit-linear-gradient(top, #5cb85c, 0%, #449d44, 100%);
- background-image: -moz-linear-gradient(top, #5cb85c 0%, #449d44 100%);
- background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
- background-repeat: repeat-x;
- border-color: #419641;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
-}
-
-.btn-success:active,
-.btn-success.active {
- background-color: #449d44;
- border-color: #419641;
-}
-
-.btn-warning {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f0ad4e), to(#ec971f));
- background-image: -webkit-linear-gradient(top, #f0ad4e, 0%, #ec971f, 100%);
- background-image: -moz-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
- background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
- background-repeat: repeat-x;
- border-color: #eb9316;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
-}
-
-.btn-warning:active,
-.btn-warning.active {
- background-color: #ec971f;
- border-color: #eb9316;
-}
-
-.btn-danger {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9534f), to(#c9302c));
- background-image: -webkit-linear-gradient(top, #d9534f, 0%, #c9302c, 100%);
- background-image: -moz-linear-gradient(top, #d9534f 0%, #c9302c 100%);
- background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
- background-repeat: repeat-x;
- border-color: #c12e2a;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
-}
-
-.btn-danger:active,
-.btn-danger.active {
- background-color: #c9302c;
- border-color: #c12e2a;
-}
-
-.btn-info {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5bc0de), to(#31b0d5));
- background-image: -webkit-linear-gradient(top, #5bc0de, 0%, #31b0d5, 100%);
- background-image: -moz-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
- background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
- background-repeat: repeat-x;
- border-color: #2aabd2;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
-}
-
-.btn-info:active,
-.btn-info.active {
- background-color: #31b0d5;
- border-color: #2aabd2;
-}
-
-.thumbnail,
-.img-thumbnail {
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
-}
-
-.dropdown-menu > li > a:hover,
-.dropdown-menu > li > a:focus,
-.dropdown-menu > .active > a,
-.dropdown-menu > .active > a:hover,
-.dropdown-menu > .active > a:focus {
- background-color: #357ebd;
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#357ebd));
- background-image: -webkit-linear-gradient(top, #428bca, 0%, #357ebd, 100%);
- background-image: -moz-linear-gradient(top, #428bca 0%, #357ebd 100%);
- background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
-}
-
-.navbar {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ffffff), to(#f8f8f8));
- background-image: -webkit-linear-gradient(top, #ffffff, 0%, #f8f8f8, 100%);
- background-image: -moz-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);
- background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);
- background-repeat: repeat-x;
- border-radius: 4px;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
-}
-
-.navbar .navbar-nav > .active > a {
- background-color: #f8f8f8;
-}
-
-.navbar-brand,
-.navbar-nav > li > a {
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
-}
-
-.navbar-inverse {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#3c3c3c), to(#222222));
- background-image: -webkit-linear-gradient(top, #3c3c3c, 0%, #222222, 100%);
- background-image: -moz-linear-gradient(top, #3c3c3c 0%, #222222 100%);
- background-image: linear-gradient(to bottom, #3c3c3c 0%, #222222 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
-}
-
-.navbar-inverse .navbar-nav > .active > a {
- background-color: #222222;
-}
-
-.navbar-inverse .navbar-brand,
-.navbar-inverse .navbar-nav > li > a {
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
-}
-
-.navbar-static-top,
-.navbar-fixed-top,
-.navbar-fixed-bottom {
- border-radius: 0;
-}
-
-.alert {
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-
-.alert-success {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#dff0d8), to(#c8e5bc));
- background-image: -webkit-linear-gradient(top, #dff0d8, 0%, #c8e5bc, 100%);
- background-image: -moz-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
- background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
- background-repeat: repeat-x;
- border-color: #b2dba1;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
-}
-
-.alert-info {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9edf7), to(#b9def0));
- background-image: -webkit-linear-gradient(top, #d9edf7, 0%, #b9def0, 100%);
- background-image: -moz-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
- background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
- background-repeat: repeat-x;
- border-color: #9acfea;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
-}
-
-.alert-warning {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#fcf8e3), to(#f8efc0));
- background-image: -webkit-linear-gradient(top, #fcf8e3, 0%, #f8efc0, 100%);
- background-image: -moz-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
- background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
- background-repeat: repeat-x;
- border-color: #f5e79e;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
-}
-
-.alert-danger {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f2dede), to(#e7c3c3));
- background-image: -webkit-linear-gradient(top, #f2dede, 0%, #e7c3c3, 100%);
- background-image: -moz-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
- background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
- background-repeat: repeat-x;
- border-color: #dca7a7;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
-}
-
-.progress {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ebebeb), to(#f5f5f5));
- background-image: -webkit-linear-gradient(top, #ebebeb, 0%, #f5f5f5, 100%);
- background-image: -moz-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
- background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
-}
-
-.progress-bar {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#3071a9));
- background-image: -webkit-linear-gradient(top, #428bca, 0%, #3071a9, 100%);
- background-image: -moz-linear-gradient(top, #428bca 0%, #3071a9 100%);
- background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0);
-}
-
-.progress-bar-success {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5cb85c), to(#449d44));
- background-image: -webkit-linear-gradient(top, #5cb85c, 0%, #449d44, 100%);
- background-image: -moz-linear-gradient(top, #5cb85c 0%, #449d44 100%);
- background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
-}
-
-.progress-bar-info {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#5bc0de), to(#31b0d5));
- background-image: -webkit-linear-gradient(top, #5bc0de, 0%, #31b0d5, 100%);
- background-image: -moz-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
- background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
-}
-
-.progress-bar-warning {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f0ad4e), to(#ec971f));
- background-image: -webkit-linear-gradient(top, #f0ad4e, 0%, #ec971f, 100%);
- background-image: -moz-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
- background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
-}
-
-.progress-bar-danger {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9534f), to(#c9302c));
- background-image: -webkit-linear-gradient(top, #d9534f, 0%, #c9302c, 100%);
- background-image: -moz-linear-gradient(top, #d9534f 0%, #c9302c 100%);
- background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
-}
-
-.list-group {
- border-radius: 4px;
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
-}
-
-.list-group-item.active,
-.list-group-item.active:hover,
-.list-group-item.active:focus {
- text-shadow: 0 -1px 0 #3071a9;
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#3278b3));
- background-image: -webkit-linear-gradient(top, #428bca, 0%, #3278b3, 100%);
- background-image: -moz-linear-gradient(top, #428bca 0%, #3278b3 100%);
- background-image: linear-gradient(to bottom, #428bca 0%, #3278b3 100%);
- background-repeat: repeat-x;
- border-color: #3278b3;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0);
-}
-
-.panel {
- -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
-}
-
-.panel-default > .panel-heading {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f5f5f5), to(#e8e8e8));
- background-image: -webkit-linear-gradient(top, #f5f5f5, 0%, #e8e8e8, 100%);
- background-image: -moz-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
- background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
-}
-
-.panel-primary > .panel-heading {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#428bca), to(#357ebd));
- background-image: -webkit-linear-gradient(top, #428bca, 0%, #357ebd, 100%);
- background-image: -moz-linear-gradient(top, #428bca 0%, #357ebd 100%);
- background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
-}
-
-.panel-success > .panel-heading {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#dff0d8), to(#d0e9c6));
- background-image: -webkit-linear-gradient(top, #dff0d8, 0%, #d0e9c6, 100%);
- background-image: -moz-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
- background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
-}
-
-.panel-info > .panel-heading {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#d9edf7), to(#c4e3f3));
- background-image: -webkit-linear-gradient(top, #d9edf7, 0%, #c4e3f3, 100%);
- background-image: -moz-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
- background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
-}
-
-.panel-warning > .panel-heading {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#fcf8e3), to(#faf2cc));
- background-image: -webkit-linear-gradient(top, #fcf8e3, 0%, #faf2cc, 100%);
- background-image: -moz-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
- background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
-}
-
-.panel-danger > .panel-heading {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#f2dede), to(#ebcccc));
- background-image: -webkit-linear-gradient(top, #f2dede, 0%, #ebcccc, 100%);
- background-image: -moz-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
- background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
-}
-
-.well {
- background-image: -webkit-gradient(linear, left 0%, left 100%, from(#e8e8e8), to(#f5f5f5));
- background-image: -webkit-linear-gradient(top, #e8e8e8, 0%, #f5f5f5, 100%);
- background-image: -moz-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
- background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
- background-repeat: repeat-x;
- border-color: #dcdcdc;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
- -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
-}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap-theme.min.css b/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap-theme.min.css
deleted file mode 100644
index cad36b4e60..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap-theme.min.css
+++ /dev/null
@@ -1 +0,0 @@
-.btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger{text-shadow:0 -1px 0 rgba(0,0,0,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075)}.btn-default:active,.btn-primary:active,.btn-success:active,.btn-info:active,.btn-warning:active,.btn-danger:active,.btn-default.active,.btn-primary.active,.btn-success.active,.btn-info.active,.btn-warning.active,.btn-danger.active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn:active,.btn.active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,0%,#e6e6e6,100%);background-image:-moz-linear-gradient(top,#fff 0,#e6e6e6 100%);background-image:linear-gradient(to bottom,#fff 0,#e6e6e6 100%);background-repeat:repeat-x;border-color:#e0e0e0;border-color:#ccc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0)}.btn-default:active,.btn-default.active{background-color:#e6e6e6;border-color:#e0e0e0}.btn-primary{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3071a9));background-image:-webkit-linear-gradient(top,#428bca,0%,#3071a9,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;border-color:#2d6ca2;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.btn-primary:active,.btn-primary.active{background-color:#3071a9;border-color:#2d6ca2}.btn-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5cb85c),to(#449d44));background-image:-webkit-linear-gradient(top,#5cb85c,0%,#449d44,100%);background-image:-moz-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;border-color:#419641;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.btn-success:active,.btn-success.active{background-color:#449d44;border-color:#419641}.btn-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f0ad4e),to(#ec971f));background-image:-webkit-linear-gradient(top,#f0ad4e,0%,#ec971f,100%);background-image:-moz-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;border-color:#eb9316;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.btn-warning:active,.btn-warning.active{background-color:#ec971f;border-color:#eb9316}.btn-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9534f),to(#c9302c));background-image:-webkit-linear-gradient(top,#d9534f,0%,#c9302c,100%);background-image:-moz-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;border-color:#c12e2a;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.btn-danger:active,.btn-danger.active{background-color:#c9302c;border-color:#c12e2a}.btn-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5bc0de),to(#31b0d5));background-image:-webkit-linear-gradient(top,#5bc0de,0%,#31b0d5,100%);background-image:-moz-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;border-color:#2aabd2;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.btn-info:active,.btn-info.active{background-color:#31b0d5;border-color:#2aabd2}.thumbnail,.img-thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{background-color:#357ebd;background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#357ebd));background-image:-webkit-linear-gradient(top,#428bca,0%,#357ebd,100%);background-image:-moz-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.navbar{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fff),to(#f8f8f8));background-image:-webkit-linear-gradient(top,#fff,0%,#f8f8f8,100%);background-image:-moz-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);background-repeat:repeat-x;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff8f8f8',GradientType=0);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 5px rgba(0,0,0,0.075)}.navbar .navbar-nav>.active>a{background-color:#f8f8f8}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,0.25)}.navbar-inverse{background-image:-webkit-gradient(linear,left 0,left 100%,from(#3c3c3c),to(#222));background-image:-webkit-linear-gradient(top,#3c3c3c,0%,#222,100%);background-image:-moz-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c',endColorstr='#ff222222',GradientType=0)}.navbar-inverse .navbar-nav>.active>a{background-color:#222}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-static-top,.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}.alert{text-shadow:0 1px 0 rgba(255,255,255,0.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.25),0 1px 2px rgba(0,0,0,0.05)}.alert-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#dff0d8),to(#c8e5bc));background-image:-webkit-linear-gradient(top,#dff0d8,0%,#c8e5bc,100%);background-image:-moz-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);background-repeat:repeat-x;border-color:#b2dba1;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffc8e5bc',GradientType=0)}.alert-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9edf7),to(#b9def0));background-image:-webkit-linear-gradient(top,#d9edf7,0%,#b9def0,100%);background-image:-moz-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);background-repeat:repeat-x;border-color:#9acfea;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffb9def0',GradientType=0)}.alert-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fcf8e3),to(#f8efc0));background-image:-webkit-linear-gradient(top,#fcf8e3,0%,#f8efc0,100%);background-image:-moz-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);background-repeat:repeat-x;border-color:#f5e79e;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fff8efc0',GradientType=0)}.alert-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f2dede),to(#e7c3c3));background-image:-webkit-linear-gradient(top,#f2dede,0%,#e7c3c3,100%);background-image:-moz-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);background-repeat:repeat-x;border-color:#dca7a7;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffe7c3c3',GradientType=0)}.progress{background-image:-webkit-gradient(linear,left 0,left 100%,from(#ebebeb),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#ebebeb,0%,#f5f5f5,100%);background-image:-moz-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb',endColorstr='#fff5f5f5',GradientType=0)}.progress-bar{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3071a9));background-image:-webkit-linear-gradient(top,#428bca,0%,#3071a9,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3071a9 100%);background-image:linear-gradient(to bottom,#428bca 0,#3071a9 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3071a9',GradientType=0)}.progress-bar-success{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5cb85c),to(#449d44));background-image:-webkit-linear-gradient(top,#5cb85c,0%,#449d44,100%);background-image:-moz-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c',endColorstr='#ff449d44',GradientType=0)}.progress-bar-info{background-image:-webkit-gradient(linear,left 0,left 100%,from(#5bc0de),to(#31b0d5));background-image:-webkit-linear-gradient(top,#5bc0de,0%,#31b0d5,100%);background-image:-moz-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff31b0d5',GradientType=0)}.progress-bar-warning{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f0ad4e),to(#ec971f));background-image:-webkit-linear-gradient(top,#f0ad4e,0%,#ec971f,100%);background-image:-moz-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e',endColorstr='#ffec971f',GradientType=0)}.progress-bar-danger{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9534f),to(#c9302c));background-image:-webkit-linear-gradient(top,#d9534f,0%,#c9302c,100%);background-image:-moz-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f',endColorstr='#ffc9302c',GradientType=0)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.075);box-shadow:0 1px 2px rgba(0,0,0,0.075)}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{text-shadow:0 -1px 0 #3071a9;background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#3278b3));background-image:-webkit-linear-gradient(top,#428bca,0%,#3278b3,100%);background-image:-moz-linear-gradient(top,#428bca 0,#3278b3 100%);background-image:linear-gradient(to bottom,#428bca 0,#3278b3 100%);background-repeat:repeat-x;border-color:#3278b3;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff3278b3',GradientType=0)}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.panel-default>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f5f5f5),to(#e8e8e8));background-image:-webkit-linear-gradient(top,#f5f5f5,0%,#e8e8e8,100%);background-image:-moz-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#ffe8e8e8',GradientType=0)}.panel-primary>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#428bca),to(#357ebd));background-image:-webkit-linear-gradient(top,#428bca,0%,#357ebd,100%);background-image:-moz-linear-gradient(top,#428bca 0,#357ebd 100%);background-image:linear-gradient(to bottom,#428bca 0,#357ebd 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca',endColorstr='#ff357ebd',GradientType=0)}.panel-success>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#dff0d8),to(#d0e9c6));background-image:-webkit-linear-gradient(top,#dff0d8,0%,#d0e9c6,100%);background-image:-moz-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',endColorstr='#ffd0e9c6',GradientType=0)}.panel-info>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#d9edf7),to(#c4e3f3));background-image:-webkit-linear-gradient(top,#d9edf7,0%,#c4e3f3,100%);background-image:-moz-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7',endColorstr='#ffc4e3f3',GradientType=0)}.panel-warning>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#fcf8e3),to(#faf2cc));background-image:-webkit-linear-gradient(top,#fcf8e3,0%,#faf2cc,100%);background-image:-moz-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3',endColorstr='#fffaf2cc',GradientType=0)}.panel-danger>.panel-heading{background-image:-webkit-gradient(linear,left 0,left 100%,from(#f2dede),to(#ebcccc));background-image:-webkit-linear-gradient(top,#f2dede,0%,#ebcccc,100%);background-image:-moz-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede',endColorstr='#ffebcccc',GradientType=0)}.well{background-image:-webkit-gradient(linear,left 0,left 100%,from(#e8e8e8),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#e8e8e8,0%,#f5f5f5,100%);background-image:-moz-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);background-repeat:repeat-x;border-color:#dcdcdc;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8',endColorstr='#fff5f5f5',GradientType=0);-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 3px rgba(0,0,0,0.05),0 1px 0 rgba(255,255,255,0.1)}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap.css b/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap.css
deleted file mode 100644
index bbda4eed4a..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap.css
+++ /dev/null
@@ -1,6805 +0,0 @@
-/*!
- * Bootstrap v3.0.0
- *
- * Copyright 2013 Twitter, Inc
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Designed and built with all the love in the world by @mdo and @fat.
- */
-
-/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
-
-article,
-aside,
-details,
-figcaption,
-figure,
-footer,
-header,
-hgroup,
-main,
-nav,
-section,
-summary {
- display: block;
-}
-
-audio,
-canvas,
-video {
- display: inline-block;
-}
-
-audio:not([controls]) {
- display: none;
- height: 0;
-}
-
-[hidden] {
- display: none;
-}
-
-html {
- font-family: sans-serif;
- -webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
-}
-
-body {
- margin: 0;
-}
-
-a:focus {
- outline: thin dotted;
-}
-
-a:active,
-a:hover {
- outline: 0;
-}
-
-h1 {
- margin: 0.67em 0;
- font-size: 2em;
-}
-
-abbr[title] {
- border-bottom: 1px dotted;
-}
-
-b,
-strong {
- font-weight: bold;
-}
-
-dfn {
- font-style: italic;
-}
-
-hr {
- height: 0;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
-}
-
-mark {
- color: #000;
- background: #ff0;
-}
-
-code,
-kbd,
-pre,
-samp {
- font-family: monospace, serif;
- font-size: 1em;
-}
-
-pre {
- white-space: pre-wrap;
-}
-
-q {
- quotes: "\201C" "\201D" "\2018" "\2019";
-}
-
-small {
- font-size: 80%;
-}
-
-sub,
-sup {
- position: relative;
- font-size: 75%;
- line-height: 0;
- vertical-align: baseline;
-}
-
-sup {
- top: -0.5em;
-}
-
-sub {
- bottom: -0.25em;
-}
-
-img {
- border: 0;
-}
-
-svg:not(:root) {
- overflow: hidden;
-}
-
-figure {
- margin: 0;
-}
-
-fieldset {
- padding: 0.35em 0.625em 0.75em;
- margin: 0 2px;
- border: 1px solid #c0c0c0;
-}
-
-legend {
- padding: 0;
- border: 0;
-}
-
-button,
-input,
-select,
-textarea {
- margin: 0;
- font-family: inherit;
- font-size: 100%;
-}
-
-button,
-input {
- line-height: normal;
-}
-
-button,
-select {
- text-transform: none;
-}
-
-button,
-html input[type="button"],
-input[type="reset"],
-input[type="submit"] {
- cursor: pointer;
- -webkit-appearance: button;
-}
-
-button[disabled],
-html input[disabled] {
- cursor: default;
-}
-
-input[type="checkbox"],
-input[type="radio"] {
- padding: 0;
- box-sizing: border-box;
-}
-
-input[type="search"] {
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
- -webkit-appearance: textfield;
-}
-
-input[type="search"]::-webkit-search-cancel-button,
-input[type="search"]::-webkit-search-decoration {
- -webkit-appearance: none;
-}
-
-button::-moz-focus-inner,
-input::-moz-focus-inner {
- padding: 0;
- border: 0;
-}
-
-textarea {
- overflow: auto;
- vertical-align: top;
-}
-
-table {
- border-collapse: collapse;
- border-spacing: 0;
-}
-
-@media print {
- * {
- color: #000 !important;
- text-shadow: none !important;
- background: transparent !important;
- box-shadow: none !important;
- }
- a,
- a:visited {
- text-decoration: underline;
- }
- a[href]:after {
- content: " (" attr(href) ")";
- }
- abbr[title]:after {
- content: " (" attr(title) ")";
- }
- .ir a:after,
- a[href^="javascript:"]:after,
- a[href^="#"]:after {
- content: "";
- }
- pre,
- blockquote {
- border: 1px solid #999;
- page-break-inside: avoid;
- }
- thead {
- display: table-header-group;
- }
- tr,
- img {
- page-break-inside: avoid;
- }
- img {
- max-width: 100% !important;
- }
- @page {
- margin: 2cm .5cm;
- }
- p,
- h2,
- h3 {
- orphans: 3;
- widows: 3;
- }
- h2,
- h3 {
- page-break-after: avoid;
- }
- .navbar {
- display: none;
- }
- .table td,
- .table th {
- background-color: #fff !important;
- }
- .btn > .caret,
- .dropup > .btn > .caret {
- border-top-color: #000 !important;
- }
- .label {
- border: 1px solid #000;
- }
- .table {
- border-collapse: collapse !important;
- }
- .table-bordered th,
- .table-bordered td {
- border: 1px solid #ddd !important;
- }
-}
-
-*,
-*:before,
-*:after {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-
-html {
- font-size: 62.5%;
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-}
-
-body {
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- font-size: 14px;
- line-height: 1.428571429;
- color: #333333;
- background-color: #ffffff;
-}
-
-input,
-button,
-select,
-textarea {
- font-family: inherit;
- font-size: inherit;
- line-height: inherit;
-}
-
-button,
-input,
-select[multiple],
-textarea {
- background-image: none;
-}
-
-a {
- color: #428bca;
- text-decoration: none;
-}
-
-a:hover,
-a:focus {
- color: #2a6496;
- text-decoration: underline;
-}
-
-a:focus {
- outline: thin dotted #333;
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-
-img {
- vertical-align: middle;
-}
-
-.img-responsive {
- display: block;
- height: auto;
- max-width: 100%;
-}
-
-.img-rounded {
- border-radius: 6px;
-}
-
-.img-thumbnail {
- display: inline-block;
- height: auto;
- max-width: 100%;
- padding: 4px;
- line-height: 1.428571429;
- background-color: #ffffff;
- border: 1px solid #dddddd;
- border-radius: 4px;
- -webkit-transition: all 0.2s ease-in-out;
- transition: all 0.2s ease-in-out;
-}
-
-.img-circle {
- border-radius: 50%;
-}
-
-hr {
- margin-top: 20px;
- margin-bottom: 20px;
- border: 0;
- border-top: 1px solid #eeeeee;
-}
-
-.sr-only {
- position: absolute;
- width: 1px;
- height: 1px;
- padding: 0;
- margin: -1px;
- overflow: hidden;
- clip: rect(0 0 0 0);
- border: 0;
-}
-
-p {
- margin: 0 0 10px;
-}
-
-.lead {
- margin-bottom: 20px;
- font-size: 16.099999999999998px;
- font-weight: 200;
- line-height: 1.4;
-}
-
-@media (min-width: 768px) {
- .lead {
- font-size: 21px;
- }
-}
-
-small {
- font-size: 85%;
-}
-
-cite {
- font-style: normal;
-}
-
-.text-muted {
- color: #999999;
-}
-
-.text-primary {
- color: #428bca;
-}
-
-.text-warning {
- color: #c09853;
-}
-
-.text-danger {
- color: #b94a48;
-}
-
-.text-success {
- color: #468847;
-}
-
-.text-info {
- color: #3a87ad;
-}
-
-.text-left {
- text-align: left;
-}
-
-.text-right {
- text-align: right;
-}
-
-.text-center {
- text-align: center;
-}
-
-h1,
-h2,
-h3,
-h4,
-h5,
-h6,
-.h1,
-.h2,
-.h3,
-.h4,
-.h5,
-.h6 {
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- font-weight: 500;
- line-height: 1.1;
-}
-
-h1 small,
-h2 small,
-h3 small,
-h4 small,
-h5 small,
-h6 small,
-.h1 small,
-.h2 small,
-.h3 small,
-.h4 small,
-.h5 small,
-.h6 small {
- font-weight: normal;
- line-height: 1;
- color: #999999;
-}
-
-h1,
-h2,
-h3 {
- margin-top: 20px;
- margin-bottom: 10px;
-}
-
-h4,
-h5,
-h6 {
- margin-top: 10px;
- margin-bottom: 10px;
-}
-
-h1,
-.h1 {
- font-size: 36px;
-}
-
-h2,
-.h2 {
- font-size: 30px;
-}
-
-h3,
-.h3 {
- font-size: 24px;
-}
-
-h4,
-.h4 {
- font-size: 18px;
-}
-
-h5,
-.h5 {
- font-size: 14px;
-}
-
-h6,
-.h6 {
- font-size: 12px;
-}
-
-h1 small,
-.h1 small {
- font-size: 24px;
-}
-
-h2 small,
-.h2 small {
- font-size: 18px;
-}
-
-h3 small,
-.h3 small,
-h4 small,
-.h4 small {
- font-size: 14px;
-}
-
-.page-header {
- padding-bottom: 9px;
- margin: 40px 0 20px;
- border-bottom: 1px solid #eeeeee;
-}
-
-ul,
-ol {
- margin-top: 0;
- margin-bottom: 10px;
-}
-
-ul ul,
-ol ul,
-ul ol,
-ol ol {
- margin-bottom: 0;
-}
-
-.list-unstyled {
- padding-left: 0;
- list-style: none;
-}
-
-.list-inline {
- padding-left: 0;
- list-style: none;
-}
-
-.list-inline > li {
- display: inline-block;
- padding-right: 5px;
- padding-left: 5px;
-}
-
-dl {
- margin-bottom: 20px;
-}
-
-dt,
-dd {
- line-height: 1.428571429;
-}
-
-dt {
- font-weight: bold;
-}
-
-dd {
- margin-left: 0;
-}
-
-@media (min-width: 768px) {
- .dl-horizontal dt {
- float: left;
- width: 160px;
- overflow: hidden;
- clear: left;
- text-align: right;
- text-overflow: ellipsis;
- white-space: nowrap;
- }
- .dl-horizontal dd {
- margin-left: 180px;
- }
- .dl-horizontal dd:before,
- .dl-horizontal dd:after {
- display: table;
- content: " ";
- }
- .dl-horizontal dd:after {
- clear: both;
- }
- .dl-horizontal dd:before,
- .dl-horizontal dd:after {
- display: table;
- content: " ";
- }
- .dl-horizontal dd:after {
- clear: both;
- }
-}
-
-abbr[title],
-abbr[data-original-title] {
- cursor: help;
- border-bottom: 1px dotted #999999;
-}
-
-abbr.initialism {
- font-size: 90%;
- text-transform: uppercase;
-}
-
-blockquote {
- padding: 10px 20px;
- margin: 0 0 20px;
- border-left: 5px solid #eeeeee;
-}
-
-blockquote p {
- font-size: 17.5px;
- font-weight: 300;
- line-height: 1.25;
-}
-
-blockquote p:last-child {
- margin-bottom: 0;
-}
-
-blockquote small {
- display: block;
- line-height: 1.428571429;
- color: #999999;
-}
-
-blockquote small:before {
- content: '\2014 \00A0';
-}
-
-blockquote.pull-right {
- padding-right: 15px;
- padding-left: 0;
- border-right: 5px solid #eeeeee;
- border-left: 0;
-}
-
-blockquote.pull-right p,
-blockquote.pull-right small {
- text-align: right;
-}
-
-blockquote.pull-right small:before {
- content: '';
-}
-
-blockquote.pull-right small:after {
- content: '\00A0 \2014';
-}
-
-q:before,
-q:after,
-blockquote:before,
-blockquote:after {
- content: "";
-}
-
-address {
- display: block;
- margin-bottom: 20px;
- font-style: normal;
- line-height: 1.428571429;
-}
-
-code,
-pre {
- font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
-}
-
-code {
- padding: 2px 4px;
- font-size: 90%;
- color: #c7254e;
- white-space: nowrap;
- background-color: #f9f2f4;
- border-radius: 4px;
-}
-
-pre {
- display: block;
- padding: 9.5px;
- margin: 0 0 10px;
- font-size: 13px;
- line-height: 1.428571429;
- color: #333333;
- word-break: break-all;
- word-wrap: break-word;
- background-color: #f5f5f5;
- border: 1px solid #cccccc;
- border-radius: 4px;
-}
-
-pre.prettyprint {
- margin-bottom: 20px;
-}
-
-pre code {
- padding: 0;
- font-size: inherit;
- color: inherit;
- white-space: pre-wrap;
- background-color: transparent;
- border: 0;
-}
-
-.pre-scrollable {
- max-height: 340px;
- overflow-y: scroll;
-}
-
-.container {
- padding-right: 15px;
- padding-left: 15px;
- margin-right: auto;
- margin-left: auto;
-}
-
-.container:before,
-.container:after {
- display: table;
- content: " ";
-}
-
-.container:after {
- clear: both;
-}
-
-.container:before,
-.container:after {
- display: table;
- content: " ";
-}
-
-.container:after {
- clear: both;
-}
-
-.row {
- margin-right: -15px;
- margin-left: -15px;
-}
-
-.row:before,
-.row:after {
- display: table;
- content: " ";
-}
-
-.row:after {
- clear: both;
-}
-
-.row:before,
-.row:after {
- display: table;
- content: " ";
-}
-
-.row:after {
- clear: both;
-}
-
-.col-xs-1,
-.col-xs-2,
-.col-xs-3,
-.col-xs-4,
-.col-xs-5,
-.col-xs-6,
-.col-xs-7,
-.col-xs-8,
-.col-xs-9,
-.col-xs-10,
-.col-xs-11,
-.col-xs-12,
-.col-sm-1,
-.col-sm-2,
-.col-sm-3,
-.col-sm-4,
-.col-sm-5,
-.col-sm-6,
-.col-sm-7,
-.col-sm-8,
-.col-sm-9,
-.col-sm-10,
-.col-sm-11,
-.col-sm-12,
-.col-md-1,
-.col-md-2,
-.col-md-3,
-.col-md-4,
-.col-md-5,
-.col-md-6,
-.col-md-7,
-.col-md-8,
-.col-md-9,
-.col-md-10,
-.col-md-11,
-.col-md-12,
-.col-lg-1,
-.col-lg-2,
-.col-lg-3,
-.col-lg-4,
-.col-lg-5,
-.col-lg-6,
-.col-lg-7,
-.col-lg-8,
-.col-lg-9,
-.col-lg-10,
-.col-lg-11,
-.col-lg-12 {
- position: relative;
- min-height: 1px;
- padding-right: 15px;
- padding-left: 15px;
-}
-
-.col-xs-1,
-.col-xs-2,
-.col-xs-3,
-.col-xs-4,
-.col-xs-5,
-.col-xs-6,
-.col-xs-7,
-.col-xs-8,
-.col-xs-9,
-.col-xs-10,
-.col-xs-11 {
- float: left;
-}
-
-.col-xs-1 {
- width: 8.333333333333332%;
-}
-
-.col-xs-2 {
- width: 16.666666666666664%;
-}
-
-.col-xs-3 {
- width: 25%;
-}
-
-.col-xs-4 {
- width: 33.33333333333333%;
-}
-
-.col-xs-5 {
- width: 41.66666666666667%;
-}
-
-.col-xs-6 {
- width: 50%;
-}
-
-.col-xs-7 {
- width: 58.333333333333336%;
-}
-
-.col-xs-8 {
- width: 66.66666666666666%;
-}
-
-.col-xs-9 {
- width: 75%;
-}
-
-.col-xs-10 {
- width: 83.33333333333334%;
-}
-
-.col-xs-11 {
- width: 91.66666666666666%;
-}
-
-.col-xs-12 {
- width: 100%;
-}
-
-@media (min-width: 768px) {
- .container {
- max-width: 750px;
- }
- .col-sm-1,
- .col-sm-2,
- .col-sm-3,
- .col-sm-4,
- .col-sm-5,
- .col-sm-6,
- .col-sm-7,
- .col-sm-8,
- .col-sm-9,
- .col-sm-10,
- .col-sm-11 {
- float: left;
- }
- .col-sm-1 {
- width: 8.333333333333332%;
- }
- .col-sm-2 {
- width: 16.666666666666664%;
- }
- .col-sm-3 {
- width: 25%;
- }
- .col-sm-4 {
- width: 33.33333333333333%;
- }
- .col-sm-5 {
- width: 41.66666666666667%;
- }
- .col-sm-6 {
- width: 50%;
- }
- .col-sm-7 {
- width: 58.333333333333336%;
- }
- .col-sm-8 {
- width: 66.66666666666666%;
- }
- .col-sm-9 {
- width: 75%;
- }
- .col-sm-10 {
- width: 83.33333333333334%;
- }
- .col-sm-11 {
- width: 91.66666666666666%;
- }
- .col-sm-12 {
- width: 100%;
- }
- .col-sm-push-1 {
- left: 8.333333333333332%;
- }
- .col-sm-push-2 {
- left: 16.666666666666664%;
- }
- .col-sm-push-3 {
- left: 25%;
- }
- .col-sm-push-4 {
- left: 33.33333333333333%;
- }
- .col-sm-push-5 {
- left: 41.66666666666667%;
- }
- .col-sm-push-6 {
- left: 50%;
- }
- .col-sm-push-7 {
- left: 58.333333333333336%;
- }
- .col-sm-push-8 {
- left: 66.66666666666666%;
- }
- .col-sm-push-9 {
- left: 75%;
- }
- .col-sm-push-10 {
- left: 83.33333333333334%;
- }
- .col-sm-push-11 {
- left: 91.66666666666666%;
- }
- .col-sm-pull-1 {
- right: 8.333333333333332%;
- }
- .col-sm-pull-2 {
- right: 16.666666666666664%;
- }
- .col-sm-pull-3 {
- right: 25%;
- }
- .col-sm-pull-4 {
- right: 33.33333333333333%;
- }
- .col-sm-pull-5 {
- right: 41.66666666666667%;
- }
- .col-sm-pull-6 {
- right: 50%;
- }
- .col-sm-pull-7 {
- right: 58.333333333333336%;
- }
- .col-sm-pull-8 {
- right: 66.66666666666666%;
- }
- .col-sm-pull-9 {
- right: 75%;
- }
- .col-sm-pull-10 {
- right: 83.33333333333334%;
- }
- .col-sm-pull-11 {
- right: 91.66666666666666%;
- }
- .col-sm-offset-1 {
- margin-left: 8.333333333333332%;
- }
- .col-sm-offset-2 {
- margin-left: 16.666666666666664%;
- }
- .col-sm-offset-3 {
- margin-left: 25%;
- }
- .col-sm-offset-4 {
- margin-left: 33.33333333333333%;
- }
- .col-sm-offset-5 {
- margin-left: 41.66666666666667%;
- }
- .col-sm-offset-6 {
- margin-left: 50%;
- }
- .col-sm-offset-7 {
- margin-left: 58.333333333333336%;
- }
- .col-sm-offset-8 {
- margin-left: 66.66666666666666%;
- }
- .col-sm-offset-9 {
- margin-left: 75%;
- }
- .col-sm-offset-10 {
- margin-left: 83.33333333333334%;
- }
- .col-sm-offset-11 {
- margin-left: 91.66666666666666%;
- }
-}
-
-@media (min-width: 992px) {
- .container {
- max-width: 970px;
- }
- .col-md-1,
- .col-md-2,
- .col-md-3,
- .col-md-4,
- .col-md-5,
- .col-md-6,
- .col-md-7,
- .col-md-8,
- .col-md-9,
- .col-md-10,
- .col-md-11 {
- float: left;
- }
- .col-md-1 {
- width: 8.333333333333332%;
- }
- .col-md-2 {
- width: 16.666666666666664%;
- }
- .col-md-3 {
- width: 25%;
- }
- .col-md-4 {
- width: 33.33333333333333%;
- }
- .col-md-5 {
- width: 41.66666666666667%;
- }
- .col-md-6 {
- width: 50%;
- }
- .col-md-7 {
- width: 58.333333333333336%;
- }
- .col-md-8 {
- width: 66.66666666666666%;
- }
- .col-md-9 {
- width: 75%;
- }
- .col-md-10 {
- width: 83.33333333333334%;
- }
- .col-md-11 {
- width: 91.66666666666666%;
- }
- .col-md-12 {
- width: 100%;
- }
- .col-md-push-0 {
- left: auto;
- }
- .col-md-push-1 {
- left: 8.333333333333332%;
- }
- .col-md-push-2 {
- left: 16.666666666666664%;
- }
- .col-md-push-3 {
- left: 25%;
- }
- .col-md-push-4 {
- left: 33.33333333333333%;
- }
- .col-md-push-5 {
- left: 41.66666666666667%;
- }
- .col-md-push-6 {
- left: 50%;
- }
- .col-md-push-7 {
- left: 58.333333333333336%;
- }
- .col-md-push-8 {
- left: 66.66666666666666%;
- }
- .col-md-push-9 {
- left: 75%;
- }
- .col-md-push-10 {
- left: 83.33333333333334%;
- }
- .col-md-push-11 {
- left: 91.66666666666666%;
- }
- .col-md-pull-0 {
- right: auto;
- }
- .col-md-pull-1 {
- right: 8.333333333333332%;
- }
- .col-md-pull-2 {
- right: 16.666666666666664%;
- }
- .col-md-pull-3 {
- right: 25%;
- }
- .col-md-pull-4 {
- right: 33.33333333333333%;
- }
- .col-md-pull-5 {
- right: 41.66666666666667%;
- }
- .col-md-pull-6 {
- right: 50%;
- }
- .col-md-pull-7 {
- right: 58.333333333333336%;
- }
- .col-md-pull-8 {
- right: 66.66666666666666%;
- }
- .col-md-pull-9 {
- right: 75%;
- }
- .col-md-pull-10 {
- right: 83.33333333333334%;
- }
- .col-md-pull-11 {
- right: 91.66666666666666%;
- }
- .col-md-offset-0 {
- margin-left: 0;
- }
- .col-md-offset-1 {
- margin-left: 8.333333333333332%;
- }
- .col-md-offset-2 {
- margin-left: 16.666666666666664%;
- }
- .col-md-offset-3 {
- margin-left: 25%;
- }
- .col-md-offset-4 {
- margin-left: 33.33333333333333%;
- }
- .col-md-offset-5 {
- margin-left: 41.66666666666667%;
- }
- .col-md-offset-6 {
- margin-left: 50%;
- }
- .col-md-offset-7 {
- margin-left: 58.333333333333336%;
- }
- .col-md-offset-8 {
- margin-left: 66.66666666666666%;
- }
- .col-md-offset-9 {
- margin-left: 75%;
- }
- .col-md-offset-10 {
- margin-left: 83.33333333333334%;
- }
- .col-md-offset-11 {
- margin-left: 91.66666666666666%;
- }
-}
-
-@media (min-width: 1200px) {
- .container {
- max-width: 1170px;
- }
- .col-lg-1,
- .col-lg-2,
- .col-lg-3,
- .col-lg-4,
- .col-lg-5,
- .col-lg-6,
- .col-lg-7,
- .col-lg-8,
- .col-lg-9,
- .col-lg-10,
- .col-lg-11 {
- float: left;
- }
- .col-lg-1 {
- width: 8.333333333333332%;
- }
- .col-lg-2 {
- width: 16.666666666666664%;
- }
- .col-lg-3 {
- width: 25%;
- }
- .col-lg-4 {
- width: 33.33333333333333%;
- }
- .col-lg-5 {
- width: 41.66666666666667%;
- }
- .col-lg-6 {
- width: 50%;
- }
- .col-lg-7 {
- width: 58.333333333333336%;
- }
- .col-lg-8 {
- width: 66.66666666666666%;
- }
- .col-lg-9 {
- width: 75%;
- }
- .col-lg-10 {
- width: 83.33333333333334%;
- }
- .col-lg-11 {
- width: 91.66666666666666%;
- }
- .col-lg-12 {
- width: 100%;
- }
- .col-lg-push-0 {
- left: auto;
- }
- .col-lg-push-1 {
- left: 8.333333333333332%;
- }
- .col-lg-push-2 {
- left: 16.666666666666664%;
- }
- .col-lg-push-3 {
- left: 25%;
- }
- .col-lg-push-4 {
- left: 33.33333333333333%;
- }
- .col-lg-push-5 {
- left: 41.66666666666667%;
- }
- .col-lg-push-6 {
- left: 50%;
- }
- .col-lg-push-7 {
- left: 58.333333333333336%;
- }
- .col-lg-push-8 {
- left: 66.66666666666666%;
- }
- .col-lg-push-9 {
- left: 75%;
- }
- .col-lg-push-10 {
- left: 83.33333333333334%;
- }
- .col-lg-push-11 {
- left: 91.66666666666666%;
- }
- .col-lg-pull-0 {
- right: auto;
- }
- .col-lg-pull-1 {
- right: 8.333333333333332%;
- }
- .col-lg-pull-2 {
- right: 16.666666666666664%;
- }
- .col-lg-pull-3 {
- right: 25%;
- }
- .col-lg-pull-4 {
- right: 33.33333333333333%;
- }
- .col-lg-pull-5 {
- right: 41.66666666666667%;
- }
- .col-lg-pull-6 {
- right: 50%;
- }
- .col-lg-pull-7 {
- right: 58.333333333333336%;
- }
- .col-lg-pull-8 {
- right: 66.66666666666666%;
- }
- .col-lg-pull-9 {
- right: 75%;
- }
- .col-lg-pull-10 {
- right: 83.33333333333334%;
- }
- .col-lg-pull-11 {
- right: 91.66666666666666%;
- }
- .col-lg-offset-0 {
- margin-left: 0;
- }
- .col-lg-offset-1 {
- margin-left: 8.333333333333332%;
- }
- .col-lg-offset-2 {
- margin-left: 16.666666666666664%;
- }
- .col-lg-offset-3 {
- margin-left: 25%;
- }
- .col-lg-offset-4 {
- margin-left: 33.33333333333333%;
- }
- .col-lg-offset-5 {
- margin-left: 41.66666666666667%;
- }
- .col-lg-offset-6 {
- margin-left: 50%;
- }
- .col-lg-offset-7 {
- margin-left: 58.333333333333336%;
- }
- .col-lg-offset-8 {
- margin-left: 66.66666666666666%;
- }
- .col-lg-offset-9 {
- margin-left: 75%;
- }
- .col-lg-offset-10 {
- margin-left: 83.33333333333334%;
- }
- .col-lg-offset-11 {
- margin-left: 91.66666666666666%;
- }
-}
-
-table {
- max-width: 100%;
- background-color: transparent;
-}
-
-th {
- text-align: left;
-}
-
-.table {
- width: 100%;
- margin-bottom: 20px;
-}
-
-.table thead > tr > th,
-.table tbody > tr > th,
-.table tfoot > tr > th,
-.table thead > tr > td,
-.table tbody > tr > td,
-.table tfoot > tr > td {
- padding: 8px;
- line-height: 1.428571429;
- vertical-align: top;
- border-top: 1px solid #dddddd;
-}
-
-.table thead > tr > th {
- vertical-align: bottom;
- border-bottom: 2px solid #dddddd;
-}
-
-.table caption + thead tr:first-child th,
-.table colgroup + thead tr:first-child th,
-.table thead:first-child tr:first-child th,
-.table caption + thead tr:first-child td,
-.table colgroup + thead tr:first-child td,
-.table thead:first-child tr:first-child td {
- border-top: 0;
-}
-
-.table tbody + tbody {
- border-top: 2px solid #dddddd;
-}
-
-.table .table {
- background-color: #ffffff;
-}
-
-.table-condensed thead > tr > th,
-.table-condensed tbody > tr > th,
-.table-condensed tfoot > tr > th,
-.table-condensed thead > tr > td,
-.table-condensed tbody > tr > td,
-.table-condensed tfoot > tr > td {
- padding: 5px;
-}
-
-.table-bordered {
- border: 1px solid #dddddd;
-}
-
-.table-bordered > thead > tr > th,
-.table-bordered > tbody > tr > th,
-.table-bordered > tfoot > tr > th,
-.table-bordered > thead > tr > td,
-.table-bordered > tbody > tr > td,
-.table-bordered > tfoot > tr > td {
- border: 1px solid #dddddd;
-}
-
-.table-bordered > thead > tr > th,
-.table-bordered > thead > tr > td {
- border-bottom-width: 2px;
-}
-
-.table-striped > tbody > tr:nth-child(odd) > td,
-.table-striped > tbody > tr:nth-child(odd) > th {
- background-color: #f9f9f9;
-}
-
-.table-hover > tbody > tr:hover > td,
-.table-hover > tbody > tr:hover > th {
- background-color: #f5f5f5;
-}
-
-table col[class*="col-"] {
- display: table-column;
- float: none;
-}
-
-table td[class*="col-"],
-table th[class*="col-"] {
- display: table-cell;
- float: none;
-}
-
-.table > thead > tr > td.active,
-.table > tbody > tr > td.active,
-.table > tfoot > tr > td.active,
-.table > thead > tr > th.active,
-.table > tbody > tr > th.active,
-.table > tfoot > tr > th.active,
-.table > thead > tr.active > td,
-.table > tbody > tr.active > td,
-.table > tfoot > tr.active > td,
-.table > thead > tr.active > th,
-.table > tbody > tr.active > th,
-.table > tfoot > tr.active > th {
- background-color: #f5f5f5;
-}
-
-.table > thead > tr > td.success,
-.table > tbody > tr > td.success,
-.table > tfoot > tr > td.success,
-.table > thead > tr > th.success,
-.table > tbody > tr > th.success,
-.table > tfoot > tr > th.success,
-.table > thead > tr.success > td,
-.table > tbody > tr.success > td,
-.table > tfoot > tr.success > td,
-.table > thead > tr.success > th,
-.table > tbody > tr.success > th,
-.table > tfoot > tr.success > th {
- background-color: #dff0d8;
- border-color: #d6e9c6;
-}
-
-.table-hover > tbody > tr > td.success:hover,
-.table-hover > tbody > tr > th.success:hover,
-.table-hover > tbody > tr.success:hover > td {
- background-color: #d0e9c6;
- border-color: #c9e2b3;
-}
-
-.table > thead > tr > td.danger,
-.table > tbody > tr > td.danger,
-.table > tfoot > tr > td.danger,
-.table > thead > tr > th.danger,
-.table > tbody > tr > th.danger,
-.table > tfoot > tr > th.danger,
-.table > thead > tr.danger > td,
-.table > tbody > tr.danger > td,
-.table > tfoot > tr.danger > td,
-.table > thead > tr.danger > th,
-.table > tbody > tr.danger > th,
-.table > tfoot > tr.danger > th {
- background-color: #f2dede;
- border-color: #eed3d7;
-}
-
-.table-hover > tbody > tr > td.danger:hover,
-.table-hover > tbody > tr > th.danger:hover,
-.table-hover > tbody > tr.danger:hover > td {
- background-color: #ebcccc;
- border-color: #e6c1c7;
-}
-
-.table > thead > tr > td.warning,
-.table > tbody > tr > td.warning,
-.table > tfoot > tr > td.warning,
-.table > thead > tr > th.warning,
-.table > tbody > tr > th.warning,
-.table > tfoot > tr > th.warning,
-.table > thead > tr.warning > td,
-.table > tbody > tr.warning > td,
-.table > tfoot > tr.warning > td,
-.table > thead > tr.warning > th,
-.table > tbody > tr.warning > th,
-.table > tfoot > tr.warning > th {
- background-color: #fcf8e3;
- border-color: #fbeed5;
-}
-
-.table-hover > tbody > tr > td.warning:hover,
-.table-hover > tbody > tr > th.warning:hover,
-.table-hover > tbody > tr.warning:hover > td {
- background-color: #faf2cc;
- border-color: #f8e5be;
-}
-
-@media (max-width: 768px) {
- .table-responsive {
- width: 100%;
- margin-bottom: 15px;
- overflow-x: scroll;
- overflow-y: hidden;
- border: 1px solid #dddddd;
- }
- .table-responsive > .table {
- margin-bottom: 0;
- background-color: #fff;
- }
- .table-responsive > .table > thead > tr > th,
- .table-responsive > .table > tbody > tr > th,
- .table-responsive > .table > tfoot > tr > th,
- .table-responsive > .table > thead > tr > td,
- .table-responsive > .table > tbody > tr > td,
- .table-responsive > .table > tfoot > tr > td {
- white-space: nowrap;
- }
- .table-responsive > .table-bordered {
- border: 0;
- }
- .table-responsive > .table-bordered > thead > tr > th:first-child,
- .table-responsive > .table-bordered > tbody > tr > th:first-child,
- .table-responsive > .table-bordered > tfoot > tr > th:first-child,
- .table-responsive > .table-bordered > thead > tr > td:first-child,
- .table-responsive > .table-bordered > tbody > tr > td:first-child,
- .table-responsive > .table-bordered > tfoot > tr > td:first-child {
- border-left: 0;
- }
- .table-responsive > .table-bordered > thead > tr > th:last-child,
- .table-responsive > .table-bordered > tbody > tr > th:last-child,
- .table-responsive > .table-bordered > tfoot > tr > th:last-child,
- .table-responsive > .table-bordered > thead > tr > td:last-child,
- .table-responsive > .table-bordered > tbody > tr > td:last-child,
- .table-responsive > .table-bordered > tfoot > tr > td:last-child {
- border-right: 0;
- }
- .table-responsive > .table-bordered > thead > tr:last-child > th,
- .table-responsive > .table-bordered > tbody > tr:last-child > th,
- .table-responsive > .table-bordered > tfoot > tr:last-child > th,
- .table-responsive > .table-bordered > thead > tr:last-child > td,
- .table-responsive > .table-bordered > tbody > tr:last-child > td,
- .table-responsive > .table-bordered > tfoot > tr:last-child > td {
- border-bottom: 0;
- }
-}
-
-fieldset {
- padding: 0;
- margin: 0;
- border: 0;
-}
-
-legend {
- display: block;
- width: 100%;
- padding: 0;
- margin-bottom: 20px;
- font-size: 21px;
- line-height: inherit;
- color: #333333;
- border: 0;
- border-bottom: 1px solid #e5e5e5;
-}
-
-label {
- display: inline-block;
- margin-bottom: 5px;
- font-weight: bold;
-}
-
-input[type="search"] {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-
-input[type="radio"],
-input[type="checkbox"] {
- margin: 4px 0 0;
- margin-top: 1px \9;
- /* IE8-9 */
-
- line-height: normal;
-}
-
-input[type="file"] {
- display: block;
-}
-
-select[multiple],
-select[size] {
- height: auto;
-}
-
-select optgroup {
- font-family: inherit;
- font-size: inherit;
- font-style: inherit;
-}
-
-input[type="file"]:focus,
-input[type="radio"]:focus,
-input[type="checkbox"]:focus {
- outline: thin dotted #333;
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-
-input[type="number"]::-webkit-outer-spin-button,
-input[type="number"]::-webkit-inner-spin-button {
- height: auto;
-}
-
-.form-control:-moz-placeholder {
- color: #999999;
-}
-
-.form-control::-moz-placeholder {
- color: #999999;
-}
-
-.form-control:-ms-input-placeholder {
- color: #999999;
-}
-
-.form-control::-webkit-input-placeholder {
- color: #999999;
-}
-
-.form-control {
- display: block;
- width: 100%;
- height: 34px;
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.428571429;
- color: #555555;
- vertical-align: middle;
- background-color: #ffffff;
- border: 1px solid #cccccc;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
-}
-
-.form-control:focus {
- border-color: #66afe9;
- outline: 0;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
-}
-
-.form-control[disabled],
-.form-control[readonly],
-fieldset[disabled] .form-control {
- cursor: not-allowed;
- background-color: #eeeeee;
-}
-
-textarea.form-control {
- height: auto;
-}
-
-.form-group {
- margin-bottom: 15px;
-}
-
-.radio,
-.checkbox {
- display: block;
- min-height: 20px;
- padding-left: 20px;
- margin-top: 10px;
- margin-bottom: 10px;
- vertical-align: middle;
-}
-
-.radio label,
-.checkbox label {
- display: inline;
- margin-bottom: 0;
- font-weight: normal;
- cursor: pointer;
-}
-
-.radio input[type="radio"],
-.radio-inline input[type="radio"],
-.checkbox input[type="checkbox"],
-.checkbox-inline input[type="checkbox"] {
- float: left;
- margin-left: -20px;
-}
-
-.radio + .radio,
-.checkbox + .checkbox {
- margin-top: -5px;
-}
-
-.radio-inline,
-.checkbox-inline {
- display: inline-block;
- padding-left: 20px;
- margin-bottom: 0;
- font-weight: normal;
- vertical-align: middle;
- cursor: pointer;
-}
-
-.radio-inline + .radio-inline,
-.checkbox-inline + .checkbox-inline {
- margin-top: 0;
- margin-left: 10px;
-}
-
-input[type="radio"][disabled],
-input[type="checkbox"][disabled],
-.radio[disabled],
-.radio-inline[disabled],
-.checkbox[disabled],
-.checkbox-inline[disabled],
-fieldset[disabled] input[type="radio"],
-fieldset[disabled] input[type="checkbox"],
-fieldset[disabled] .radio,
-fieldset[disabled] .radio-inline,
-fieldset[disabled] .checkbox,
-fieldset[disabled] .checkbox-inline {
- cursor: not-allowed;
-}
-
-.input-sm {
- height: 30px;
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-
-select.input-sm {
- height: 30px;
- line-height: 30px;
-}
-
-textarea.input-sm {
- height: auto;
-}
-
-.input-lg {
- height: 45px;
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.33;
- border-radius: 6px;
-}
-
-select.input-lg {
- height: 45px;
- line-height: 45px;
-}
-
-textarea.input-lg {
- height: auto;
-}
-
-.has-warning .help-block,
-.has-warning .control-label {
- color: #c09853;
-}
-
-.has-warning .form-control {
- border-color: #c09853;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-
-.has-warning .form-control:focus {
- border-color: #a47e3c;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e;
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e;
-}
-
-.has-warning .input-group-addon {
- color: #c09853;
- background-color: #fcf8e3;
- border-color: #c09853;
-}
-
-.has-error .help-block,
-.has-error .control-label {
- color: #b94a48;
-}
-
-.has-error .form-control {
- border-color: #b94a48;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-
-.has-error .form-control:focus {
- border-color: #953b39;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392;
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392;
-}
-
-.has-error .input-group-addon {
- color: #b94a48;
- background-color: #f2dede;
- border-color: #b94a48;
-}
-
-.has-success .help-block,
-.has-success .control-label {
- color: #468847;
-}
-
-.has-success .form-control {
- border-color: #468847;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-}
-
-.has-success .form-control:focus {
- border-color: #356635;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b;
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b;
-}
-
-.has-success .input-group-addon {
- color: #468847;
- background-color: #dff0d8;
- border-color: #468847;
-}
-
-.form-control-static {
- padding-top: 7px;
- margin-bottom: 0;
-}
-
-.help-block {
- display: block;
- margin-top: 5px;
- margin-bottom: 10px;
- color: #737373;
-}
-
-@media (min-width: 768px) {
- .form-inline .form-group {
- display: inline-block;
- margin-bottom: 0;
- vertical-align: middle;
- }
- .form-inline .form-control {
- display: inline-block;
- }
- .form-inline .radio,
- .form-inline .checkbox {
- display: inline-block;
- padding-left: 0;
- margin-top: 0;
- margin-bottom: 0;
- }
- .form-inline .radio input[type="radio"],
- .form-inline .checkbox input[type="checkbox"] {
- float: none;
- margin-left: 0;
- }
-}
-
-.form-horizontal .control-label,
-.form-horizontal .radio,
-.form-horizontal .checkbox,
-.form-horizontal .radio-inline,
-.form-horizontal .checkbox-inline {
- padding-top: 7px;
- margin-top: 0;
- margin-bottom: 0;
-}
-
-.form-horizontal .form-group {
- margin-right: -15px;
- margin-left: -15px;
-}
-
-.form-horizontal .form-group:before,
-.form-horizontal .form-group:after {
- display: table;
- content: " ";
-}
-
-.form-horizontal .form-group:after {
- clear: both;
-}
-
-.form-horizontal .form-group:before,
-.form-horizontal .form-group:after {
- display: table;
- content: " ";
-}
-
-.form-horizontal .form-group:after {
- clear: both;
-}
-
-@media (min-width: 768px) {
- .form-horizontal .control-label {
- text-align: right;
- }
-}
-
-.btn {
- display: inline-block;
- padding: 6px 12px;
- margin-bottom: 0;
- font-size: 14px;
- font-weight: normal;
- line-height: 1.428571429;
- text-align: center;
- white-space: nowrap;
- vertical-align: middle;
- cursor: pointer;
- border: 1px solid transparent;
- border-radius: 4px;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- -o-user-select: none;
- user-select: none;
-}
-
-.btn:focus {
- outline: thin dotted #333;
- outline: 5px auto -webkit-focus-ring-color;
- outline-offset: -2px;
-}
-
-.btn:hover,
-.btn:focus {
- color: #333333;
- text-decoration: none;
-}
-
-.btn:active,
-.btn.active {
- background-image: none;
- outline: 0;
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-}
-
-.btn.disabled,
-.btn[disabled],
-fieldset[disabled] .btn {
- pointer-events: none;
- cursor: not-allowed;
- opacity: 0.65;
- filter: alpha(opacity=65);
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-
-.btn-default {
- color: #333333;
- background-color: #ffffff;
- border-color: #cccccc;
-}
-
-.btn-default:hover,
-.btn-default:focus,
-.btn-default:active,
-.btn-default.active,
-.open .dropdown-toggle.btn-default {
- color: #333333;
- background-color: #ebebeb;
- border-color: #adadad;
-}
-
-.btn-default:active,
-.btn-default.active,
-.open .dropdown-toggle.btn-default {
- background-image: none;
-}
-
-.btn-default.disabled,
-.btn-default[disabled],
-fieldset[disabled] .btn-default,
-.btn-default.disabled:hover,
-.btn-default[disabled]:hover,
-fieldset[disabled] .btn-default:hover,
-.btn-default.disabled:focus,
-.btn-default[disabled]:focus,
-fieldset[disabled] .btn-default:focus,
-.btn-default.disabled:active,
-.btn-default[disabled]:active,
-fieldset[disabled] .btn-default:active,
-.btn-default.disabled.active,
-.btn-default[disabled].active,
-fieldset[disabled] .btn-default.active {
- background-color: #ffffff;
- border-color: #cccccc;
-}
-
-.btn-primary {
- color: #ffffff;
- background-color: #428bca;
- border-color: #357ebd;
-}
-
-.btn-primary:hover,
-.btn-primary:focus,
-.btn-primary:active,
-.btn-primary.active,
-.open .dropdown-toggle.btn-primary {
- color: #ffffff;
- background-color: #3276b1;
- border-color: #285e8e;
-}
-
-.btn-primary:active,
-.btn-primary.active,
-.open .dropdown-toggle.btn-primary {
- background-image: none;
-}
-
-.btn-primary.disabled,
-.btn-primary[disabled],
-fieldset[disabled] .btn-primary,
-.btn-primary.disabled:hover,
-.btn-primary[disabled]:hover,
-fieldset[disabled] .btn-primary:hover,
-.btn-primary.disabled:focus,
-.btn-primary[disabled]:focus,
-fieldset[disabled] .btn-primary:focus,
-.btn-primary.disabled:active,
-.btn-primary[disabled]:active,
-fieldset[disabled] .btn-primary:active,
-.btn-primary.disabled.active,
-.btn-primary[disabled].active,
-fieldset[disabled] .btn-primary.active {
- background-color: #428bca;
- border-color: #357ebd;
-}
-
-.btn-warning {
- color: #ffffff;
- background-color: #f0ad4e;
- border-color: #eea236;
-}
-
-.btn-warning:hover,
-.btn-warning:focus,
-.btn-warning:active,
-.btn-warning.active,
-.open .dropdown-toggle.btn-warning {
- color: #ffffff;
- background-color: #ed9c28;
- border-color: #d58512;
-}
-
-.btn-warning:active,
-.btn-warning.active,
-.open .dropdown-toggle.btn-warning {
- background-image: none;
-}
-
-.btn-warning.disabled,
-.btn-warning[disabled],
-fieldset[disabled] .btn-warning,
-.btn-warning.disabled:hover,
-.btn-warning[disabled]:hover,
-fieldset[disabled] .btn-warning:hover,
-.btn-warning.disabled:focus,
-.btn-warning[disabled]:focus,
-fieldset[disabled] .btn-warning:focus,
-.btn-warning.disabled:active,
-.btn-warning[disabled]:active,
-fieldset[disabled] .btn-warning:active,
-.btn-warning.disabled.active,
-.btn-warning[disabled].active,
-fieldset[disabled] .btn-warning.active {
- background-color: #f0ad4e;
- border-color: #eea236;
-}
-
-.btn-danger {
- color: #ffffff;
- background-color: #d9534f;
- border-color: #d43f3a;
-}
-
-.btn-danger:hover,
-.btn-danger:focus,
-.btn-danger:active,
-.btn-danger.active,
-.open .dropdown-toggle.btn-danger {
- color: #ffffff;
- background-color: #d2322d;
- border-color: #ac2925;
-}
-
-.btn-danger:active,
-.btn-danger.active,
-.open .dropdown-toggle.btn-danger {
- background-image: none;
-}
-
-.btn-danger.disabled,
-.btn-danger[disabled],
-fieldset[disabled] .btn-danger,
-.btn-danger.disabled:hover,
-.btn-danger[disabled]:hover,
-fieldset[disabled] .btn-danger:hover,
-.btn-danger.disabled:focus,
-.btn-danger[disabled]:focus,
-fieldset[disabled] .btn-danger:focus,
-.btn-danger.disabled:active,
-.btn-danger[disabled]:active,
-fieldset[disabled] .btn-danger:active,
-.btn-danger.disabled.active,
-.btn-danger[disabled].active,
-fieldset[disabled] .btn-danger.active {
- background-color: #d9534f;
- border-color: #d43f3a;
-}
-
-.btn-success {
- color: #ffffff;
- background-color: #5cb85c;
- border-color: #4cae4c;
-}
-
-.btn-success:hover,
-.btn-success:focus,
-.btn-success:active,
-.btn-success.active,
-.open .dropdown-toggle.btn-success {
- color: #ffffff;
- background-color: #47a447;
- border-color: #398439;
-}
-
-.btn-success:active,
-.btn-success.active,
-.open .dropdown-toggle.btn-success {
- background-image: none;
-}
-
-.btn-success.disabled,
-.btn-success[disabled],
-fieldset[disabled] .btn-success,
-.btn-success.disabled:hover,
-.btn-success[disabled]:hover,
-fieldset[disabled] .btn-success:hover,
-.btn-success.disabled:focus,
-.btn-success[disabled]:focus,
-fieldset[disabled] .btn-success:focus,
-.btn-success.disabled:active,
-.btn-success[disabled]:active,
-fieldset[disabled] .btn-success:active,
-.btn-success.disabled.active,
-.btn-success[disabled].active,
-fieldset[disabled] .btn-success.active {
- background-color: #5cb85c;
- border-color: #4cae4c;
-}
-
-.btn-info {
- color: #ffffff;
- background-color: #5bc0de;
- border-color: #46b8da;
-}
-
-.btn-info:hover,
-.btn-info:focus,
-.btn-info:active,
-.btn-info.active,
-.open .dropdown-toggle.btn-info {
- color: #ffffff;
- background-color: #39b3d7;
- border-color: #269abc;
-}
-
-.btn-info:active,
-.btn-info.active,
-.open .dropdown-toggle.btn-info {
- background-image: none;
-}
-
-.btn-info.disabled,
-.btn-info[disabled],
-fieldset[disabled] .btn-info,
-.btn-info.disabled:hover,
-.btn-info[disabled]:hover,
-fieldset[disabled] .btn-info:hover,
-.btn-info.disabled:focus,
-.btn-info[disabled]:focus,
-fieldset[disabled] .btn-info:focus,
-.btn-info.disabled:active,
-.btn-info[disabled]:active,
-fieldset[disabled] .btn-info:active,
-.btn-info.disabled.active,
-.btn-info[disabled].active,
-fieldset[disabled] .btn-info.active {
- background-color: #5bc0de;
- border-color: #46b8da;
-}
-
-.btn-link {
- font-weight: normal;
- color: #428bca;
- cursor: pointer;
- border-radius: 0;
-}
-
-.btn-link,
-.btn-link:active,
-.btn-link[disabled],
-fieldset[disabled] .btn-link {
- background-color: transparent;
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-
-.btn-link,
-.btn-link:hover,
-.btn-link:focus,
-.btn-link:active {
- border-color: transparent;
-}
-
-.btn-link:hover,
-.btn-link:focus {
- color: #2a6496;
- text-decoration: underline;
- background-color: transparent;
-}
-
-.btn-link[disabled]:hover,
-fieldset[disabled] .btn-link:hover,
-.btn-link[disabled]:focus,
-fieldset[disabled] .btn-link:focus {
- color: #999999;
- text-decoration: none;
-}
-
-.btn-lg {
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.33;
- border-radius: 6px;
-}
-
-.btn-sm,
-.btn-xs {
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-
-.btn-xs {
- padding: 1px 5px;
-}
-
-.btn-block {
- display: block;
- width: 100%;
- padding-right: 0;
- padding-left: 0;
-}
-
-.btn-block + .btn-block {
- margin-top: 5px;
-}
-
-input[type="submit"].btn-block,
-input[type="reset"].btn-block,
-input[type="button"].btn-block {
- width: 100%;
-}
-
-.fade {
- opacity: 0;
- -webkit-transition: opacity 0.15s linear;
- transition: opacity 0.15s linear;
-}
-
-.fade.in {
- opacity: 1;
-}
-
-.collapse {
- display: none;
-}
-
-.collapse.in {
- display: block;
-}
-
-.collapsing {
- position: relative;
- height: 0;
- overflow: hidden;
- -webkit-transition: height 0.35s ease;
- transition: height 0.35s ease;
-}
-
-@font-face {
- font-family: 'Glyphicons Halflings';
- src: url('../fonts/glyphicons-halflings-regular.eot');
- src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
-}
-
-.glyphicon {
- position: relative;
- top: 1px;
- display: inline-block;
- font-family: 'Glyphicons Halflings';
- -webkit-font-smoothing: antialiased;
- font-style: normal;
- font-weight: normal;
- line-height: 1;
-}
-
-.glyphicon-asterisk:before {
- content: "\2a";
-}
-
-.glyphicon-plus:before {
- content: "\2b";
-}
-
-.glyphicon-euro:before {
- content: "\20ac";
-}
-
-.glyphicon-minus:before {
- content: "\2212";
-}
-
-.glyphicon-cloud:before {
- content: "\2601";
-}
-
-.glyphicon-envelope:before {
- content: "\2709";
-}
-
-.glyphicon-pencil:before {
- content: "\270f";
-}
-
-.glyphicon-glass:before {
- content: "\e001";
-}
-
-.glyphicon-music:before {
- content: "\e002";
-}
-
-.glyphicon-search:before {
- content: "\e003";
-}
-
-.glyphicon-heart:before {
- content: "\e005";
-}
-
-.glyphicon-star:before {
- content: "\e006";
-}
-
-.glyphicon-star-empty:before {
- content: "\e007";
-}
-
-.glyphicon-user:before {
- content: "\e008";
-}
-
-.glyphicon-film:before {
- content: "\e009";
-}
-
-.glyphicon-th-large:before {
- content: "\e010";
-}
-
-.glyphicon-th:before {
- content: "\e011";
-}
-
-.glyphicon-th-list:before {
- content: "\e012";
-}
-
-.glyphicon-ok:before {
- content: "\e013";
-}
-
-.glyphicon-remove:before {
- content: "\e014";
-}
-
-.glyphicon-zoom-in:before {
- content: "\e015";
-}
-
-.glyphicon-zoom-out:before {
- content: "\e016";
-}
-
-.glyphicon-off:before {
- content: "\e017";
-}
-
-.glyphicon-signal:before {
- content: "\e018";
-}
-
-.glyphicon-cog:before {
- content: "\e019";
-}
-
-.glyphicon-trash:before {
- content: "\e020";
-}
-
-.glyphicon-home:before {
- content: "\e021";
-}
-
-.glyphicon-file:before {
- content: "\e022";
-}
-
-.glyphicon-time:before {
- content: "\e023";
-}
-
-.glyphicon-road:before {
- content: "\e024";
-}
-
-.glyphicon-download-alt:before {
- content: "\e025";
-}
-
-.glyphicon-download:before {
- content: "\e026";
-}
-
-.glyphicon-upload:before {
- content: "\e027";
-}
-
-.glyphicon-inbox:before {
- content: "\e028";
-}
-
-.glyphicon-play-circle:before {
- content: "\e029";
-}
-
-.glyphicon-repeat:before {
- content: "\e030";
-}
-
-.glyphicon-refresh:before {
- content: "\e031";
-}
-
-.glyphicon-list-alt:before {
- content: "\e032";
-}
-
-.glyphicon-flag:before {
- content: "\e034";
-}
-
-.glyphicon-headphones:before {
- content: "\e035";
-}
-
-.glyphicon-volume-off:before {
- content: "\e036";
-}
-
-.glyphicon-volume-down:before {
- content: "\e037";
-}
-
-.glyphicon-volume-up:before {
- content: "\e038";
-}
-
-.glyphicon-qrcode:before {
- content: "\e039";
-}
-
-.glyphicon-barcode:before {
- content: "\e040";
-}
-
-.glyphicon-tag:before {
- content: "\e041";
-}
-
-.glyphicon-tags:before {
- content: "\e042";
-}
-
-.glyphicon-book:before {
- content: "\e043";
-}
-
-.glyphicon-print:before {
- content: "\e045";
-}
-
-.glyphicon-font:before {
- content: "\e047";
-}
-
-.glyphicon-bold:before {
- content: "\e048";
-}
-
-.glyphicon-italic:before {
- content: "\e049";
-}
-
-.glyphicon-text-height:before {
- content: "\e050";
-}
-
-.glyphicon-text-width:before {
- content: "\e051";
-}
-
-.glyphicon-align-left:before {
- content: "\e052";
-}
-
-.glyphicon-align-center:before {
- content: "\e053";
-}
-
-.glyphicon-align-right:before {
- content: "\e054";
-}
-
-.glyphicon-align-justify:before {
- content: "\e055";
-}
-
-.glyphicon-list:before {
- content: "\e056";
-}
-
-.glyphicon-indent-left:before {
- content: "\e057";
-}
-
-.glyphicon-indent-right:before {
- content: "\e058";
-}
-
-.glyphicon-facetime-video:before {
- content: "\e059";
-}
-
-.glyphicon-picture:before {
- content: "\e060";
-}
-
-.glyphicon-map-marker:before {
- content: "\e062";
-}
-
-.glyphicon-adjust:before {
- content: "\e063";
-}
-
-.glyphicon-tint:before {
- content: "\e064";
-}
-
-.glyphicon-edit:before {
- content: "\e065";
-}
-
-.glyphicon-share:before {
- content: "\e066";
-}
-
-.glyphicon-check:before {
- content: "\e067";
-}
-
-.glyphicon-move:before {
- content: "\e068";
-}
-
-.glyphicon-step-backward:before {
- content: "\e069";
-}
-
-.glyphicon-fast-backward:before {
- content: "\e070";
-}
-
-.glyphicon-backward:before {
- content: "\e071";
-}
-
-.glyphicon-play:before {
- content: "\e072";
-}
-
-.glyphicon-pause:before {
- content: "\e073";
-}
-
-.glyphicon-stop:before {
- content: "\e074";
-}
-
-.glyphicon-forward:before {
- content: "\e075";
-}
-
-.glyphicon-fast-forward:before {
- content: "\e076";
-}
-
-.glyphicon-step-forward:before {
- content: "\e077";
-}
-
-.glyphicon-eject:before {
- content: "\e078";
-}
-
-.glyphicon-chevron-left:before {
- content: "\e079";
-}
-
-.glyphicon-chevron-right:before {
- content: "\e080";
-}
-
-.glyphicon-plus-sign:before {
- content: "\e081";
-}
-
-.glyphicon-minus-sign:before {
- content: "\e082";
-}
-
-.glyphicon-remove-sign:before {
- content: "\e083";
-}
-
-.glyphicon-ok-sign:before {
- content: "\e084";
-}
-
-.glyphicon-question-sign:before {
- content: "\e085";
-}
-
-.glyphicon-info-sign:before {
- content: "\e086";
-}
-
-.glyphicon-screenshot:before {
- content: "\e087";
-}
-
-.glyphicon-remove-circle:before {
- content: "\e088";
-}
-
-.glyphicon-ok-circle:before {
- content: "\e089";
-}
-
-.glyphicon-ban-circle:before {
- content: "\e090";
-}
-
-.glyphicon-arrow-left:before {
- content: "\e091";
-}
-
-.glyphicon-arrow-right:before {
- content: "\e092";
-}
-
-.glyphicon-arrow-up:before {
- content: "\e093";
-}
-
-.glyphicon-arrow-down:before {
- content: "\e094";
-}
-
-.glyphicon-share-alt:before {
- content: "\e095";
-}
-
-.glyphicon-resize-full:before {
- content: "\e096";
-}
-
-.glyphicon-resize-small:before {
- content: "\e097";
-}
-
-.glyphicon-exclamation-sign:before {
- content: "\e101";
-}
-
-.glyphicon-gift:before {
- content: "\e102";
-}
-
-.glyphicon-leaf:before {
- content: "\e103";
-}
-
-.glyphicon-eye-open:before {
- content: "\e105";
-}
-
-.glyphicon-eye-close:before {
- content: "\e106";
-}
-
-.glyphicon-warning-sign:before {
- content: "\e107";
-}
-
-.glyphicon-plane:before {
- content: "\e108";
-}
-
-.glyphicon-random:before {
- content: "\e110";
-}
-
-.glyphicon-comment:before {
- content: "\e111";
-}
-
-.glyphicon-magnet:before {
- content: "\e112";
-}
-
-.glyphicon-chevron-up:before {
- content: "\e113";
-}
-
-.glyphicon-chevron-down:before {
- content: "\e114";
-}
-
-.glyphicon-retweet:before {
- content: "\e115";
-}
-
-.glyphicon-shopping-cart:before {
- content: "\e116";
-}
-
-.glyphicon-folder-close:before {
- content: "\e117";
-}
-
-.glyphicon-folder-open:before {
- content: "\e118";
-}
-
-.glyphicon-resize-vertical:before {
- content: "\e119";
-}
-
-.glyphicon-resize-horizontal:before {
- content: "\e120";
-}
-
-.glyphicon-hdd:before {
- content: "\e121";
-}
-
-.glyphicon-bullhorn:before {
- content: "\e122";
-}
-
-.glyphicon-certificate:before {
- content: "\e124";
-}
-
-.glyphicon-thumbs-up:before {
- content: "\e125";
-}
-
-.glyphicon-thumbs-down:before {
- content: "\e126";
-}
-
-.glyphicon-hand-right:before {
- content: "\e127";
-}
-
-.glyphicon-hand-left:before {
- content: "\e128";
-}
-
-.glyphicon-hand-up:before {
- content: "\e129";
-}
-
-.glyphicon-hand-down:before {
- content: "\e130";
-}
-
-.glyphicon-circle-arrow-right:before {
- content: "\e131";
-}
-
-.glyphicon-circle-arrow-left:before {
- content: "\e132";
-}
-
-.glyphicon-circle-arrow-up:before {
- content: "\e133";
-}
-
-.glyphicon-circle-arrow-down:before {
- content: "\e134";
-}
-
-.glyphicon-globe:before {
- content: "\e135";
-}
-
-.glyphicon-tasks:before {
- content: "\e137";
-}
-
-.glyphicon-filter:before {
- content: "\e138";
-}
-
-.glyphicon-fullscreen:before {
- content: "\e140";
-}
-
-.glyphicon-dashboard:before {
- content: "\e141";
-}
-
-.glyphicon-heart-empty:before {
- content: "\e143";
-}
-
-.glyphicon-link:before {
- content: "\e144";
-}
-
-.glyphicon-phone:before {
- content: "\e145";
-}
-
-.glyphicon-usd:before {
- content: "\e148";
-}
-
-.glyphicon-gbp:before {
- content: "\e149";
-}
-
-.glyphicon-sort:before {
- content: "\e150";
-}
-
-.glyphicon-sort-by-alphabet:before {
- content: "\e151";
-}
-
-.glyphicon-sort-by-alphabet-alt:before {
- content: "\e152";
-}
-
-.glyphicon-sort-by-order:before {
- content: "\e153";
-}
-
-.glyphicon-sort-by-order-alt:before {
- content: "\e154";
-}
-
-.glyphicon-sort-by-attributes:before {
- content: "\e155";
-}
-
-.glyphicon-sort-by-attributes-alt:before {
- content: "\e156";
-}
-
-.glyphicon-unchecked:before {
- content: "\e157";
-}
-
-.glyphicon-expand:before {
- content: "\e158";
-}
-
-.glyphicon-collapse-down:before {
- content: "\e159";
-}
-
-.glyphicon-collapse-up:before {
- content: "\e160";
-}
-
-.glyphicon-log-in:before {
- content: "\e161";
-}
-
-.glyphicon-flash:before {
- content: "\e162";
-}
-
-.glyphicon-log-out:before {
- content: "\e163";
-}
-
-.glyphicon-new-window:before {
- content: "\e164";
-}
-
-.glyphicon-record:before {
- content: "\e165";
-}
-
-.glyphicon-save:before {
- content: "\e166";
-}
-
-.glyphicon-open:before {
- content: "\e167";
-}
-
-.glyphicon-saved:before {
- content: "\e168";
-}
-
-.glyphicon-import:before {
- content: "\e169";
-}
-
-.glyphicon-export:before {
- content: "\e170";
-}
-
-.glyphicon-send:before {
- content: "\e171";
-}
-
-.glyphicon-floppy-disk:before {
- content: "\e172";
-}
-
-.glyphicon-floppy-saved:before {
- content: "\e173";
-}
-
-.glyphicon-floppy-remove:before {
- content: "\e174";
-}
-
-.glyphicon-floppy-save:before {
- content: "\e175";
-}
-
-.glyphicon-floppy-open:before {
- content: "\e176";
-}
-
-.glyphicon-credit-card:before {
- content: "\e177";
-}
-
-.glyphicon-transfer:before {
- content: "\e178";
-}
-
-.glyphicon-cutlery:before {
- content: "\e179";
-}
-
-.glyphicon-header:before {
- content: "\e180";
-}
-
-.glyphicon-compressed:before {
- content: "\e181";
-}
-
-.glyphicon-earphone:before {
- content: "\e182";
-}
-
-.glyphicon-phone-alt:before {
- content: "\e183";
-}
-
-.glyphicon-tower:before {
- content: "\e184";
-}
-
-.glyphicon-stats:before {
- content: "\e185";
-}
-
-.glyphicon-sd-video:before {
- content: "\e186";
-}
-
-.glyphicon-hd-video:before {
- content: "\e187";
-}
-
-.glyphicon-subtitles:before {
- content: "\e188";
-}
-
-.glyphicon-sound-stereo:before {
- content: "\e189";
-}
-
-.glyphicon-sound-dolby:before {
- content: "\e190";
-}
-
-.glyphicon-sound-5-1:before {
- content: "\e191";
-}
-
-.glyphicon-sound-6-1:before {
- content: "\e192";
-}
-
-.glyphicon-sound-7-1:before {
- content: "\e193";
-}
-
-.glyphicon-copyright-mark:before {
- content: "\e194";
-}
-
-.glyphicon-registration-mark:before {
- content: "\e195";
-}
-
-.glyphicon-cloud-download:before {
- content: "\e197";
-}
-
-.glyphicon-cloud-upload:before {
- content: "\e198";
-}
-
-.glyphicon-tree-conifer:before {
- content: "\e199";
-}
-
-.glyphicon-tree-deciduous:before {
- content: "\e200";
-}
-
-.glyphicon-briefcase:before {
- content: "\1f4bc";
-}
-
-.glyphicon-calendar:before {
- content: "\1f4c5";
-}
-
-.glyphicon-pushpin:before {
- content: "\1f4cc";
-}
-
-.glyphicon-paperclip:before {
- content: "\1f4ce";
-}
-
-.glyphicon-camera:before {
- content: "\1f4f7";
-}
-
-.glyphicon-lock:before {
- content: "\1f512";
-}
-
-.glyphicon-bell:before {
- content: "\1f514";
-}
-
-.glyphicon-bookmark:before {
- content: "\1f516";
-}
-
-.glyphicon-fire:before {
- content: "\1f525";
-}
-
-.glyphicon-wrench:before {
- content: "\1f527";
-}
-
-.caret {
- display: inline-block;
- width: 0;
- height: 0;
- margin-left: 2px;
- vertical-align: middle;
- border-top: 4px solid #000000;
- border-right: 4px solid transparent;
- border-bottom: 0 dotted;
- border-left: 4px solid transparent;
- content: "";
-}
-
-.dropdown {
- position: relative;
-}
-
-.dropdown-toggle:focus {
- outline: 0;
-}
-
-.dropdown-menu {
- position: absolute;
- top: 100%;
- left: 0;
- z-index: 1000;
- display: none;
- float: left;
- min-width: 160px;
- padding: 5px 0;
- margin: 2px 0 0;
- font-size: 14px;
- list-style: none;
- background-color: #ffffff;
- border: 1px solid #cccccc;
- border: 1px solid rgba(0, 0, 0, 0.15);
- border-radius: 4px;
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
- background-clip: padding-box;
-}
-
-.dropdown-menu.pull-right {
- right: 0;
- left: auto;
-}
-
-.dropdown-menu .divider {
- height: 1px;
- margin: 9px 0;
- overflow: hidden;
- background-color: #e5e5e5;
-}
-
-.dropdown-menu > li > a {
- display: block;
- padding: 3px 20px;
- clear: both;
- font-weight: normal;
- line-height: 1.428571429;
- color: #333333;
- white-space: nowrap;
-}
-
-.dropdown-menu > li > a:hover,
-.dropdown-menu > li > a:focus {
- color: #ffffff;
- text-decoration: none;
- background-color: #428bca;
-}
-
-.dropdown-menu > .active > a,
-.dropdown-menu > .active > a:hover,
-.dropdown-menu > .active > a:focus {
- color: #ffffff;
- text-decoration: none;
- background-color: #428bca;
- outline: 0;
-}
-
-.dropdown-menu > .disabled > a,
-.dropdown-menu > .disabled > a:hover,
-.dropdown-menu > .disabled > a:focus {
- color: #999999;
-}
-
-.dropdown-menu > .disabled > a:hover,
-.dropdown-menu > .disabled > a:focus {
- text-decoration: none;
- cursor: not-allowed;
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-}
-
-.open > .dropdown-menu {
- display: block;
-}
-
-.open > a {
- outline: 0;
-}
-
-.dropdown-header {
- display: block;
- padding: 3px 20px;
- font-size: 12px;
- line-height: 1.428571429;
- color: #999999;
-}
-
-.dropdown-backdrop {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 990;
-}
-
-.pull-right > .dropdown-menu {
- right: 0;
- left: auto;
-}
-
-.dropup .caret,
-.navbar-fixed-bottom .dropdown .caret {
- border-top: 0 dotted;
- border-bottom: 4px solid #000000;
- content: "";
-}
-
-.dropup .dropdown-menu,
-.navbar-fixed-bottom .dropdown .dropdown-menu {
- top: auto;
- bottom: 100%;
- margin-bottom: 1px;
-}
-
-@media (min-width: 768px) {
- .navbar-right .dropdown-menu {
- right: 0;
- left: auto;
- }
-}
-
-.btn-default .caret {
- border-top-color: #333333;
-}
-
-.btn-primary .caret,
-.btn-success .caret,
-.btn-warning .caret,
-.btn-danger .caret,
-.btn-info .caret {
- border-top-color: #fff;
-}
-
-.dropup .btn-default .caret {
- border-bottom-color: #333333;
-}
-
-.dropup .btn-primary .caret,
-.dropup .btn-success .caret,
-.dropup .btn-warning .caret,
-.dropup .btn-danger .caret,
-.dropup .btn-info .caret {
- border-bottom-color: #fff;
-}
-
-.btn-group,
-.btn-group-vertical {
- position: relative;
- display: inline-block;
- vertical-align: middle;
-}
-
-.btn-group > .btn,
-.btn-group-vertical > .btn {
- position: relative;
- float: left;
-}
-
-.btn-group > .btn:hover,
-.btn-group-vertical > .btn:hover,
-.btn-group > .btn:focus,
-.btn-group-vertical > .btn:focus,
-.btn-group > .btn:active,
-.btn-group-vertical > .btn:active,
-.btn-group > .btn.active,
-.btn-group-vertical > .btn.active {
- z-index: 2;
-}
-
-.btn-group > .btn:focus,
-.btn-group-vertical > .btn:focus {
- outline: none;
-}
-
-.btn-group .btn + .btn,
-.btn-group .btn + .btn-group,
-.btn-group .btn-group + .btn,
-.btn-group .btn-group + .btn-group {
- margin-left: -1px;
-}
-
-.btn-toolbar:before,
-.btn-toolbar:after {
- display: table;
- content: " ";
-}
-
-.btn-toolbar:after {
- clear: both;
-}
-
-.btn-toolbar:before,
-.btn-toolbar:after {
- display: table;
- content: " ";
-}
-
-.btn-toolbar:after {
- clear: both;
-}
-
-.btn-toolbar .btn-group {
- float: left;
-}
-
-.btn-toolbar > .btn + .btn,
-.btn-toolbar > .btn-group + .btn,
-.btn-toolbar > .btn + .btn-group,
-.btn-toolbar > .btn-group + .btn-group {
- margin-left: 5px;
-}
-
-.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
- border-radius: 0;
-}
-
-.btn-group > .btn:first-child {
- margin-left: 0;
-}
-
-.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-
-.btn-group > .btn:last-child:not(:first-child),
-.btn-group > .dropdown-toggle:not(:first-child) {
- border-bottom-left-radius: 0;
- border-top-left-radius: 0;
-}
-
-.btn-group > .btn-group {
- float: left;
-}
-
-.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
- border-radius: 0;
-}
-
-.btn-group > .btn-group:first-child > .btn:last-child,
-.btn-group > .btn-group:first-child > .dropdown-toggle {
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-
-.btn-group > .btn-group:last-child > .btn:first-child {
- border-bottom-left-radius: 0;
- border-top-left-radius: 0;
-}
-
-.btn-group .dropdown-toggle:active,
-.btn-group.open .dropdown-toggle {
- outline: 0;
-}
-
-.btn-group-xs > .btn {
- padding: 5px 10px;
- padding: 1px 5px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-
-.btn-group-sm > .btn {
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-
-.btn-group-lg > .btn {
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.33;
- border-radius: 6px;
-}
-
-.btn-group > .btn + .dropdown-toggle {
- padding-right: 8px;
- padding-left: 8px;
-}
-
-.btn-group > .btn-lg + .dropdown-toggle {
- padding-right: 12px;
- padding-left: 12px;
-}
-
-.btn-group.open .dropdown-toggle {
- -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
- box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
-}
-
-.btn .caret {
- margin-left: 0;
-}
-
-.btn-lg .caret {
- border-width: 5px 5px 0;
- border-bottom-width: 0;
-}
-
-.dropup .btn-lg .caret {
- border-width: 0 5px 5px;
-}
-
-.btn-group-vertical > .btn,
-.btn-group-vertical > .btn-group {
- display: block;
- float: none;
- width: 100%;
- max-width: 100%;
-}
-
-.btn-group-vertical > .btn-group:before,
-.btn-group-vertical > .btn-group:after {
- display: table;
- content: " ";
-}
-
-.btn-group-vertical > .btn-group:after {
- clear: both;
-}
-
-.btn-group-vertical > .btn-group:before,
-.btn-group-vertical > .btn-group:after {
- display: table;
- content: " ";
-}
-
-.btn-group-vertical > .btn-group:after {
- clear: both;
-}
-
-.btn-group-vertical > .btn-group > .btn {
- float: none;
-}
-
-.btn-group-vertical > .btn + .btn,
-.btn-group-vertical > .btn + .btn-group,
-.btn-group-vertical > .btn-group + .btn,
-.btn-group-vertical > .btn-group + .btn-group {
- margin-top: -1px;
- margin-left: 0;
-}
-
-.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
- border-radius: 0;
-}
-
-.btn-group-vertical > .btn:first-child:not(:last-child) {
- border-top-right-radius: 4px;
- border-bottom-right-radius: 0;
- border-bottom-left-radius: 0;
-}
-
-.btn-group-vertical > .btn:last-child:not(:first-child) {
- border-top-right-radius: 0;
- border-bottom-left-radius: 4px;
- border-top-left-radius: 0;
-}
-
-.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
- border-radius: 0;
-}
-
-.btn-group-vertical > .btn-group:first-child > .btn:last-child,
-.btn-group-vertical > .btn-group:first-child > .dropdown-toggle {
- border-bottom-right-radius: 0;
- border-bottom-left-radius: 0;
-}
-
-.btn-group-vertical > .btn-group:last-child > .btn:first-child {
- border-top-right-radius: 0;
- border-top-left-radius: 0;
-}
-
-.btn-group-justified {
- display: table;
- width: 100%;
- border-collapse: separate;
- table-layout: fixed;
-}
-
-.btn-group-justified .btn {
- display: table-cell;
- float: none;
- width: 1%;
-}
-
-[data-toggle="buttons"] > .btn > input[type="radio"],
-[data-toggle="buttons"] > .btn > input[type="checkbox"] {
- display: none;
-}
-
-.input-group {
- position: relative;
- display: table;
- border-collapse: separate;
-}
-
-.input-group.col {
- float: none;
- padding-right: 0;
- padding-left: 0;
-}
-
-.input-group .form-control {
- width: 100%;
- margin-bottom: 0;
-}
-
-.input-group-lg > .form-control,
-.input-group-lg > .input-group-addon,
-.input-group-lg > .input-group-btn > .btn {
- height: 45px;
- padding: 10px 16px;
- font-size: 18px;
- line-height: 1.33;
- border-radius: 6px;
-}
-
-select.input-group-lg > .form-control,
-select.input-group-lg > .input-group-addon,
-select.input-group-lg > .input-group-btn > .btn {
- height: 45px;
- line-height: 45px;
-}
-
-textarea.input-group-lg > .form-control,
-textarea.input-group-lg > .input-group-addon,
-textarea.input-group-lg > .input-group-btn > .btn {
- height: auto;
-}
-
-.input-group-sm > .form-control,
-.input-group-sm > .input-group-addon,
-.input-group-sm > .input-group-btn > .btn {
- height: 30px;
- padding: 5px 10px;
- font-size: 12px;
- line-height: 1.5;
- border-radius: 3px;
-}
-
-select.input-group-sm > .form-control,
-select.input-group-sm > .input-group-addon,
-select.input-group-sm > .input-group-btn > .btn {
- height: 30px;
- line-height: 30px;
-}
-
-textarea.input-group-sm > .form-control,
-textarea.input-group-sm > .input-group-addon,
-textarea.input-group-sm > .input-group-btn > .btn {
- height: auto;
-}
-
-.input-group-addon,
-.input-group-btn,
-.input-group .form-control {
- display: table-cell;
-}
-
-.input-group-addon:not(:first-child):not(:last-child),
-.input-group-btn:not(:first-child):not(:last-child),
-.input-group .form-control:not(:first-child):not(:last-child) {
- border-radius: 0;
-}
-
-.input-group-addon,
-.input-group-btn {
- width: 1%;
- white-space: nowrap;
- vertical-align: middle;
-}
-
-.input-group-addon {
- padding: 6px 12px;
- font-size: 14px;
- font-weight: normal;
- line-height: 1;
- text-align: center;
- background-color: #eeeeee;
- border: 1px solid #cccccc;
- border-radius: 4px;
-}
-
-.input-group-addon.input-sm {
- padding: 5px 10px;
- font-size: 12px;
- border-radius: 3px;
-}
-
-.input-group-addon.input-lg {
- padding: 10px 16px;
- font-size: 18px;
- border-radius: 6px;
-}
-
-.input-group-addon input[type="radio"],
-.input-group-addon input[type="checkbox"] {
- margin-top: 0;
-}
-
-.input-group .form-control:first-child,
-.input-group-addon:first-child,
-.input-group-btn:first-child > .btn,
-.input-group-btn:first-child > .dropdown-toggle,
-.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) {
- border-top-right-radius: 0;
- border-bottom-right-radius: 0;
-}
-
-.input-group-addon:first-child {
- border-right: 0;
-}
-
-.input-group .form-control:last-child,
-.input-group-addon:last-child,
-.input-group-btn:last-child > .btn,
-.input-group-btn:last-child > .dropdown-toggle,
-.input-group-btn:first-child > .btn:not(:first-child) {
- border-bottom-left-radius: 0;
- border-top-left-radius: 0;
-}
-
-.input-group-addon:last-child {
- border-left: 0;
-}
-
-.input-group-btn {
- position: relative;
- white-space: nowrap;
-}
-
-.input-group-btn > .btn {
- position: relative;
-}
-
-.input-group-btn > .btn + .btn {
- margin-left: -4px;
-}
-
-.input-group-btn > .btn:hover,
-.input-group-btn > .btn:active {
- z-index: 2;
-}
-
-.nav {
- padding-left: 0;
- margin-bottom: 0;
- list-style: none;
-}
-
-.nav:before,
-.nav:after {
- display: table;
- content: " ";
-}
-
-.nav:after {
- clear: both;
-}
-
-.nav:before,
-.nav:after {
- display: table;
- content: " ";
-}
-
-.nav:after {
- clear: both;
-}
-
-.nav > li {
- position: relative;
- display: block;
-}
-
-.nav > li > a {
- position: relative;
- display: block;
- padding: 10px 15px;
-}
-
-.nav > li > a:hover,
-.nav > li > a:focus {
- text-decoration: none;
- background-color: #eeeeee;
-}
-
-.nav > li.disabled > a {
- color: #999999;
-}
-
-.nav > li.disabled > a:hover,
-.nav > li.disabled > a:focus {
- color: #999999;
- text-decoration: none;
- cursor: not-allowed;
- background-color: transparent;
-}
-
-.nav .open > a,
-.nav .open > a:hover,
-.nav .open > a:focus {
- background-color: #eeeeee;
- border-color: #428bca;
-}
-
-.nav .nav-divider {
- height: 1px;
- margin: 9px 0;
- overflow: hidden;
- background-color: #e5e5e5;
-}
-
-.nav > li > a > img {
- max-width: none;
-}
-
-.nav-tabs {
- border-bottom: 1px solid #dddddd;
-}
-
-.nav-tabs > li {
- float: left;
- margin-bottom: -1px;
-}
-
-.nav-tabs > li > a {
- margin-right: 2px;
- line-height: 1.428571429;
- border: 1px solid transparent;
- border-radius: 4px 4px 0 0;
-}
-
-.nav-tabs > li > a:hover {
- border-color: #eeeeee #eeeeee #dddddd;
-}
-
-.nav-tabs > li.active > a,
-.nav-tabs > li.active > a:hover,
-.nav-tabs > li.active > a:focus {
- color: #555555;
- cursor: default;
- background-color: #ffffff;
- border: 1px solid #dddddd;
- border-bottom-color: transparent;
-}
-
-.nav-tabs.nav-justified {
- width: 100%;
- border-bottom: 0;
-}
-
-.nav-tabs.nav-justified > li {
- float: none;
-}
-
-.nav-tabs.nav-justified > li > a {
- text-align: center;
-}
-
-@media (min-width: 768px) {
- .nav-tabs.nav-justified > li {
- display: table-cell;
- width: 1%;
- }
-}
-
-.nav-tabs.nav-justified > li > a {
- margin-right: 0;
- border-bottom: 1px solid #dddddd;
-}
-
-.nav-tabs.nav-justified > .active > a {
- border-bottom-color: #ffffff;
-}
-
-.nav-pills > li {
- float: left;
-}
-
-.nav-pills > li > a {
- border-radius: 5px;
-}
-
-.nav-pills > li + li {
- margin-left: 2px;
-}
-
-.nav-pills > li.active > a,
-.nav-pills > li.active > a:hover,
-.nav-pills > li.active > a:focus {
- color: #ffffff;
- background-color: #428bca;
-}
-
-.nav-stacked > li {
- float: none;
-}
-
-.nav-stacked > li + li {
- margin-top: 2px;
- margin-left: 0;
-}
-
-.nav-justified {
- width: 100%;
-}
-
-.nav-justified > li {
- float: none;
-}
-
-.nav-justified > li > a {
- text-align: center;
-}
-
-@media (min-width: 768px) {
- .nav-justified > li {
- display: table-cell;
- width: 1%;
- }
-}
-
-.nav-tabs-justified {
- border-bottom: 0;
-}
-
-.nav-tabs-justified > li > a {
- margin-right: 0;
- border-bottom: 1px solid #dddddd;
-}
-
-.nav-tabs-justified > .active > a {
- border-bottom-color: #ffffff;
-}
-
-.tabbable:before,
-.tabbable:after {
- display: table;
- content: " ";
-}
-
-.tabbable:after {
- clear: both;
-}
-
-.tabbable:before,
-.tabbable:after {
- display: table;
- content: " ";
-}
-
-.tabbable:after {
- clear: both;
-}
-
-.tab-content > .tab-pane,
-.pill-content > .pill-pane {
- display: none;
-}
-
-.tab-content > .active,
-.pill-content > .active {
- display: block;
-}
-
-.nav .caret {
- border-top-color: #428bca;
- border-bottom-color: #428bca;
-}
-
-.nav a:hover .caret {
- border-top-color: #2a6496;
- border-bottom-color: #2a6496;
-}
-
-.nav-tabs .dropdown-menu {
- margin-top: -1px;
- border-top-right-radius: 0;
- border-top-left-radius: 0;
-}
-
-.navbar {
- position: relative;
- z-index: 1000;
- min-height: 50px;
- margin-bottom: 20px;
- border: 1px solid transparent;
-}
-
-.navbar:before,
-.navbar:after {
- display: table;
- content: " ";
-}
-
-.navbar:after {
- clear: both;
-}
-
-.navbar:before,
-.navbar:after {
- display: table;
- content: " ";
-}
-
-.navbar:after {
- clear: both;
-}
-
-@media (min-width: 768px) {
- .navbar {
- border-radius: 4px;
- }
-}
-
-.navbar-header:before,
-.navbar-header:after {
- display: table;
- content: " ";
-}
-
-.navbar-header:after {
- clear: both;
-}
-
-.navbar-header:before,
-.navbar-header:after {
- display: table;
- content: " ";
-}
-
-.navbar-header:after {
- clear: both;
-}
-
-@media (min-width: 768px) {
- .navbar-header {
- float: left;
- }
-}
-
-.navbar-collapse {
- max-height: 340px;
- padding-right: 15px;
- padding-left: 15px;
- overflow-x: visible;
- border-top: 1px solid transparent;
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
- -webkit-overflow-scrolling: touch;
-}
-
-.navbar-collapse:before,
-.navbar-collapse:after {
- display: table;
- content: " ";
-}
-
-.navbar-collapse:after {
- clear: both;
-}
-
-.navbar-collapse:before,
-.navbar-collapse:after {
- display: table;
- content: " ";
-}
-
-.navbar-collapse:after {
- clear: both;
-}
-
-.navbar-collapse.in {
- overflow-y: auto;
-}
-
-@media (min-width: 768px) {
- .navbar-collapse {
- width: auto;
- border-top: 0;
- box-shadow: none;
- }
- .navbar-collapse.collapse {
- display: block !important;
- height: auto !important;
- padding-bottom: 0;
- overflow: visible !important;
- }
- .navbar-collapse.in {
- overflow-y: visible;
- }
- .navbar-collapse .navbar-nav.navbar-left:first-child {
- margin-left: -15px;
- }
- .navbar-collapse .navbar-nav.navbar-right:last-child {
- margin-right: -15px;
- }
- .navbar-collapse .navbar-text:last-child {
- margin-right: 0;
- }
-}
-
-.container > .navbar-header,
-.container > .navbar-collapse {
- margin-right: -15px;
- margin-left: -15px;
-}
-
-@media (min-width: 768px) {
- .container > .navbar-header,
- .container > .navbar-collapse {
- margin-right: 0;
- margin-left: 0;
- }
-}
-
-.navbar-static-top {
- border-width: 0 0 1px;
-}
-
-@media (min-width: 768px) {
- .navbar-static-top {
- border-radius: 0;
- }
-}
-
-.navbar-fixed-top,
-.navbar-fixed-bottom {
- position: fixed;
- right: 0;
- left: 0;
- border-width: 0 0 1px;
-}
-
-@media (min-width: 768px) {
- .navbar-fixed-top,
- .navbar-fixed-bottom {
- border-radius: 0;
- }
-}
-
-.navbar-fixed-top {
- top: 0;
- z-index: 1030;
-}
-
-.navbar-fixed-bottom {
- bottom: 0;
- margin-bottom: 0;
-}
-
-.navbar-brand {
- float: left;
- padding: 15px 15px;
- font-size: 18px;
- line-height: 20px;
-}
-
-.navbar-brand:hover,
-.navbar-brand:focus {
- text-decoration: none;
-}
-
-@media (min-width: 768px) {
- .navbar > .container .navbar-brand {
- margin-left: -15px;
- }
-}
-
-.navbar-toggle {
- position: relative;
- float: right;
- padding: 9px 10px;
- margin-top: 8px;
- margin-right: 15px;
- margin-bottom: 8px;
- background-color: transparent;
- border: 1px solid transparent;
- border-radius: 4px;
-}
-
-.navbar-toggle .icon-bar {
- display: block;
- width: 22px;
- height: 2px;
- border-radius: 1px;
-}
-
-.navbar-toggle .icon-bar + .icon-bar {
- margin-top: 4px;
-}
-
-@media (min-width: 768px) {
- .navbar-toggle {
- display: none;
- }
-}
-
-.navbar-nav {
- margin: 7.5px -15px;
-}
-
-.navbar-nav > li > a {
- padding-top: 10px;
- padding-bottom: 10px;
- line-height: 20px;
-}
-
-@media (max-width: 767px) {
- .navbar-nav .open .dropdown-menu {
- position: static;
- float: none;
- width: auto;
- margin-top: 0;
- background-color: transparent;
- border: 0;
- box-shadow: none;
- }
- .navbar-nav .open .dropdown-menu > li > a,
- .navbar-nav .open .dropdown-menu .dropdown-header {
- padding: 5px 15px 5px 25px;
- }
- .navbar-nav .open .dropdown-menu > li > a {
- line-height: 20px;
- }
- .navbar-nav .open .dropdown-menu > li > a:hover,
- .navbar-nav .open .dropdown-menu > li > a:focus {
- background-image: none;
- }
-}
-
-@media (min-width: 768px) {
- .navbar-nav {
- float: left;
- margin: 0;
- }
- .navbar-nav > li {
- float: left;
- }
- .navbar-nav > li > a {
- padding-top: 15px;
- padding-bottom: 15px;
- }
-}
-
-@media (min-width: 768px) {
- .navbar-left {
- float: left !important;
- }
- .navbar-right {
- float: right !important;
- }
-}
-
-.navbar-form {
- padding: 10px 15px;
- margin-top: 8px;
- margin-right: -15px;
- margin-bottom: 8px;
- margin-left: -15px;
- border-top: 1px solid transparent;
- border-bottom: 1px solid transparent;
- -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
- box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
-}
-
-@media (min-width: 768px) {
- .navbar-form .form-group {
- display: inline-block;
- margin-bottom: 0;
- vertical-align: middle;
- }
- .navbar-form .form-control {
- display: inline-block;
- }
- .navbar-form .radio,
- .navbar-form .checkbox {
- display: inline-block;
- padding-left: 0;
- margin-top: 0;
- margin-bottom: 0;
- }
- .navbar-form .radio input[type="radio"],
- .navbar-form .checkbox input[type="checkbox"] {
- float: none;
- margin-left: 0;
- }
-}
-
-@media (max-width: 767px) {
- .navbar-form .form-group {
- margin-bottom: 5px;
- }
-}
-
-@media (min-width: 768px) {
- .navbar-form {
- width: auto;
- padding-top: 0;
- padding-bottom: 0;
- margin-right: 0;
- margin-left: 0;
- border: 0;
- -webkit-box-shadow: none;
- box-shadow: none;
- }
-}
-
-.navbar-nav > li > .dropdown-menu {
- margin-top: 0;
- border-top-right-radius: 0;
- border-top-left-radius: 0;
-}
-
-.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
- border-bottom-right-radius: 0;
- border-bottom-left-radius: 0;
-}
-
-.navbar-nav.pull-right > li > .dropdown-menu,
-.navbar-nav > li > .dropdown-menu.pull-right {
- right: 0;
- left: auto;
-}
-
-.navbar-btn {
- margin-top: 8px;
- margin-bottom: 8px;
-}
-
-.navbar-text {
- float: left;
- margin-top: 15px;
- margin-bottom: 15px;
-}
-
-@media (min-width: 768px) {
- .navbar-text {
- margin-right: 15px;
- margin-left: 15px;
- }
-}
-
-.navbar-default {
- background-color: #f8f8f8;
- border-color: #e7e7e7;
-}
-
-.navbar-default .navbar-brand {
- color: #777777;
-}
-
-.navbar-default .navbar-brand:hover,
-.navbar-default .navbar-brand:focus {
- color: #5e5e5e;
- background-color: transparent;
-}
-
-.navbar-default .navbar-text {
- color: #777777;
-}
-
-.navbar-default .navbar-nav > li > a {
- color: #777777;
-}
-
-.navbar-default .navbar-nav > li > a:hover,
-.navbar-default .navbar-nav > li > a:focus {
- color: #333333;
- background-color: transparent;
-}
-
-.navbar-default .navbar-nav > .active > a,
-.navbar-default .navbar-nav > .active > a:hover,
-.navbar-default .navbar-nav > .active > a:focus {
- color: #555555;
- background-color: #e7e7e7;
-}
-
-.navbar-default .navbar-nav > .disabled > a,
-.navbar-default .navbar-nav > .disabled > a:hover,
-.navbar-default .navbar-nav > .disabled > a:focus {
- color: #cccccc;
- background-color: transparent;
-}
-
-.navbar-default .navbar-toggle {
- border-color: #dddddd;
-}
-
-.navbar-default .navbar-toggle:hover,
-.navbar-default .navbar-toggle:focus {
- background-color: #dddddd;
-}
-
-.navbar-default .navbar-toggle .icon-bar {
- background-color: #cccccc;
-}
-
-.navbar-default .navbar-collapse,
-.navbar-default .navbar-form {
- border-color: #e6e6e6;
-}
-
-.navbar-default .navbar-nav > .dropdown > a:hover .caret,
-.navbar-default .navbar-nav > .dropdown > a:focus .caret {
- border-top-color: #333333;
- border-bottom-color: #333333;
-}
-
-.navbar-default .navbar-nav > .open > a,
-.navbar-default .navbar-nav > .open > a:hover,
-.navbar-default .navbar-nav > .open > a:focus {
- color: #555555;
- background-color: #e7e7e7;
-}
-
-.navbar-default .navbar-nav > .open > a .caret,
-.navbar-default .navbar-nav > .open > a:hover .caret,
-.navbar-default .navbar-nav > .open > a:focus .caret {
- border-top-color: #555555;
- border-bottom-color: #555555;
-}
-
-.navbar-default .navbar-nav > .dropdown > a .caret {
- border-top-color: #777777;
- border-bottom-color: #777777;
-}
-
-@media (max-width: 767px) {
- .navbar-default .navbar-nav .open .dropdown-menu > li > a {
- color: #777777;
- }
- .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
- .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
- color: #333333;
- background-color: transparent;
- }
- .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
- .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
- .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
- color: #555555;
- background-color: #e7e7e7;
- }
- .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
- .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
- .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
- color: #cccccc;
- background-color: transparent;
- }
-}
-
-.navbar-default .navbar-link {
- color: #777777;
-}
-
-.navbar-default .navbar-link:hover {
- color: #333333;
-}
-
-.navbar-inverse {
- background-color: #222222;
- border-color: #080808;
-}
-
-.navbar-inverse .navbar-brand {
- color: #999999;
-}
-
-.navbar-inverse .navbar-brand:hover,
-.navbar-inverse .navbar-brand:focus {
- color: #ffffff;
- background-color: transparent;
-}
-
-.navbar-inverse .navbar-text {
- color: #999999;
-}
-
-.navbar-inverse .navbar-nav > li > a {
- color: #999999;
-}
-
-.navbar-inverse .navbar-nav > li > a:hover,
-.navbar-inverse .navbar-nav > li > a:focus {
- color: #ffffff;
- background-color: transparent;
-}
-
-.navbar-inverse .navbar-nav > .active > a,
-.navbar-inverse .navbar-nav > .active > a:hover,
-.navbar-inverse .navbar-nav > .active > a:focus {
- color: #ffffff;
- background-color: #080808;
-}
-
-.navbar-inverse .navbar-nav > .disabled > a,
-.navbar-inverse .navbar-nav > .disabled > a:hover,
-.navbar-inverse .navbar-nav > .disabled > a:focus {
- color: #444444;
- background-color: transparent;
-}
-
-.navbar-inverse .navbar-toggle {
- border-color: #333333;
-}
-
-.navbar-inverse .navbar-toggle:hover,
-.navbar-inverse .navbar-toggle:focus {
- background-color: #333333;
-}
-
-.navbar-inverse .navbar-toggle .icon-bar {
- background-color: #ffffff;
-}
-
-.navbar-inverse .navbar-collapse,
-.navbar-inverse .navbar-form {
- border-color: #101010;
-}
-
-.navbar-inverse .navbar-nav > .open > a,
-.navbar-inverse .navbar-nav > .open > a:hover,
-.navbar-inverse .navbar-nav > .open > a:focus {
- color: #ffffff;
- background-color: #080808;
-}
-
-.navbar-inverse .navbar-nav > .dropdown > a:hover .caret {
- border-top-color: #ffffff;
- border-bottom-color: #ffffff;
-}
-
-.navbar-inverse .navbar-nav > .dropdown > a .caret {
- border-top-color: #999999;
- border-bottom-color: #999999;
-}
-
-.navbar-inverse .navbar-nav > .open > a .caret,
-.navbar-inverse .navbar-nav > .open > a:hover .caret,
-.navbar-inverse .navbar-nav > .open > a:focus .caret {
- border-top-color: #ffffff;
- border-bottom-color: #ffffff;
-}
-
-@media (max-width: 767px) {
- .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
- border-color: #080808;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
- color: #999999;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
- .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
- color: #ffffff;
- background-color: transparent;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
- color: #ffffff;
- background-color: #080808;
- }
- .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
- .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
- color: #444444;
- background-color: transparent;
- }
-}
-
-.navbar-inverse .navbar-link {
- color: #999999;
-}
-
-.navbar-inverse .navbar-link:hover {
- color: #ffffff;
-}
-
-.breadcrumb {
- padding: 8px 15px;
- margin-bottom: 20px;
- list-style: none;
- background-color: #f5f5f5;
- border-radius: 4px;
-}
-
-.breadcrumb > li {
- display: inline-block;
-}
-
-.breadcrumb > li + li:before {
- padding: 0 5px;
- color: #cccccc;
- content: "/\00a0";
-}
-
-.breadcrumb > .active {
- color: #999999;
-}
-
-.pagination {
- display: inline-block;
- padding-left: 0;
- margin: 20px 0;
- border-radius: 4px;
-}
-
-.pagination > li {
- display: inline;
-}
-
-.pagination > li > a,
-.pagination > li > span {
- position: relative;
- float: left;
- padding: 6px 12px;
- margin-left: -1px;
- line-height: 1.428571429;
- text-decoration: none;
- background-color: #ffffff;
- border: 1px solid #dddddd;
-}
-
-.pagination > li:first-child > a,
-.pagination > li:first-child > span {
- margin-left: 0;
- border-bottom-left-radius: 4px;
- border-top-left-radius: 4px;
-}
-
-.pagination > li:last-child > a,
-.pagination > li:last-child > span {
- border-top-right-radius: 4px;
- border-bottom-right-radius: 4px;
-}
-
-.pagination > li > a:hover,
-.pagination > li > span:hover,
-.pagination > li > a:focus,
-.pagination > li > span:focus {
- background-color: #eeeeee;
-}
-
-.pagination > .active > a,
-.pagination > .active > span,
-.pagination > .active > a:hover,
-.pagination > .active > span:hover,
-.pagination > .active > a:focus,
-.pagination > .active > span:focus {
- z-index: 2;
- color: #ffffff;
- cursor: default;
- background-color: #428bca;
- border-color: #428bca;
-}
-
-.pagination > .disabled > span,
-.pagination > .disabled > a,
-.pagination > .disabled > a:hover,
-.pagination > .disabled > a:focus {
- color: #999999;
- cursor: not-allowed;
- background-color: #ffffff;
- border-color: #dddddd;
-}
-
-.pagination-lg > li > a,
-.pagination-lg > li > span {
- padding: 10px 16px;
- font-size: 18px;
-}
-
-.pagination-lg > li:first-child > a,
-.pagination-lg > li:first-child > span {
- border-bottom-left-radius: 6px;
- border-top-left-radius: 6px;
-}
-
-.pagination-lg > li:last-child > a,
-.pagination-lg > li:last-child > span {
- border-top-right-radius: 6px;
- border-bottom-right-radius: 6px;
-}
-
-.pagination-sm > li > a,
-.pagination-sm > li > span {
- padding: 5px 10px;
- font-size: 12px;
-}
-
-.pagination-sm > li:first-child > a,
-.pagination-sm > li:first-child > span {
- border-bottom-left-radius: 3px;
- border-top-left-radius: 3px;
-}
-
-.pagination-sm > li:last-child > a,
-.pagination-sm > li:last-child > span {
- border-top-right-radius: 3px;
- border-bottom-right-radius: 3px;
-}
-
-.pager {
- padding-left: 0;
- margin: 20px 0;
- text-align: center;
- list-style: none;
-}
-
-.pager:before,
-.pager:after {
- display: table;
- content: " ";
-}
-
-.pager:after {
- clear: both;
-}
-
-.pager:before,
-.pager:after {
- display: table;
- content: " ";
-}
-
-.pager:after {
- clear: both;
-}
-
-.pager li {
- display: inline;
-}
-
-.pager li > a,
-.pager li > span {
- display: inline-block;
- padding: 5px 14px;
- background-color: #ffffff;
- border: 1px solid #dddddd;
- border-radius: 15px;
-}
-
-.pager li > a:hover,
-.pager li > a:focus {
- text-decoration: none;
- background-color: #eeeeee;
-}
-
-.pager .next > a,
-.pager .next > span {
- float: right;
-}
-
-.pager .previous > a,
-.pager .previous > span {
- float: left;
-}
-
-.pager .disabled > a,
-.pager .disabled > a:hover,
-.pager .disabled > a:focus,
-.pager .disabled > span {
- color: #999999;
- cursor: not-allowed;
- background-color: #ffffff;
-}
-
-.label {
- display: inline;
- padding: .2em .6em .3em;
- font-size: 75%;
- font-weight: bold;
- line-height: 1;
- color: #ffffff;
- text-align: center;
- white-space: nowrap;
- vertical-align: baseline;
- border-radius: .25em;
-}
-
-.label[href]:hover,
-.label[href]:focus {
- color: #ffffff;
- text-decoration: none;
- cursor: pointer;
-}
-
-.label:empty {
- display: none;
-}
-
-.label-default {
- background-color: #999999;
-}
-
-.label-default[href]:hover,
-.label-default[href]:focus {
- background-color: #808080;
-}
-
-.label-primary {
- background-color: #428bca;
-}
-
-.label-primary[href]:hover,
-.label-primary[href]:focus {
- background-color: #3071a9;
-}
-
-.label-success {
- background-color: #5cb85c;
-}
-
-.label-success[href]:hover,
-.label-success[href]:focus {
- background-color: #449d44;
-}
-
-.label-info {
- background-color: #5bc0de;
-}
-
-.label-info[href]:hover,
-.label-info[href]:focus {
- background-color: #31b0d5;
-}
-
-.label-warning {
- background-color: #f0ad4e;
-}
-
-.label-warning[href]:hover,
-.label-warning[href]:focus {
- background-color: #ec971f;
-}
-
-.label-danger {
- background-color: #d9534f;
-}
-
-.label-danger[href]:hover,
-.label-danger[href]:focus {
- background-color: #c9302c;
-}
-
-.badge {
- display: inline-block;
- min-width: 10px;
- padding: 3px 7px;
- font-size: 12px;
- font-weight: bold;
- line-height: 1;
- color: #ffffff;
- text-align: center;
- white-space: nowrap;
- vertical-align: baseline;
- background-color: #999999;
- border-radius: 10px;
-}
-
-.badge:empty {
- display: none;
-}
-
-a.badge:hover,
-a.badge:focus {
- color: #ffffff;
- text-decoration: none;
- cursor: pointer;
-}
-
-.btn .badge {
- position: relative;
- top: -1px;
-}
-
-a.list-group-item.active > .badge,
-.nav-pills > .active > a > .badge {
- color: #428bca;
- background-color: #ffffff;
-}
-
-.nav-pills > li > a > .badge {
- margin-left: 3px;
-}
-
-.jumbotron {
- padding: 30px;
- margin-bottom: 30px;
- font-size: 21px;
- font-weight: 200;
- line-height: 2.1428571435;
- color: inherit;
- background-color: #eeeeee;
-}
-
-.jumbotron h1 {
- line-height: 1;
- color: inherit;
-}
-
-.jumbotron p {
- line-height: 1.4;
-}
-
-.container .jumbotron {
- border-radius: 6px;
-}
-
-@media screen and (min-width: 768px) {
- .jumbotron {
- padding-top: 48px;
- padding-bottom: 48px;
- }
- .container .jumbotron {
- padding-right: 60px;
- padding-left: 60px;
- }
- .jumbotron h1 {
- font-size: 63px;
- }
-}
-
-.thumbnail {
- display: inline-block;
- display: block;
- height: auto;
- max-width: 100%;
- padding: 4px;
- line-height: 1.428571429;
- background-color: #ffffff;
- border: 1px solid #dddddd;
- border-radius: 4px;
- -webkit-transition: all 0.2s ease-in-out;
- transition: all 0.2s ease-in-out;
-}
-
-.thumbnail > img {
- display: block;
- height: auto;
- max-width: 100%;
-}
-
-a.thumbnail:hover,
-a.thumbnail:focus {
- border-color: #428bca;
-}
-
-.thumbnail > img {
- margin-right: auto;
- margin-left: auto;
-}
-
-.thumbnail .caption {
- padding: 9px;
- color: #333333;
-}
-
-.alert {
- padding: 15px;
- margin-bottom: 20px;
- border: 1px solid transparent;
- border-radius: 4px;
-}
-
-.alert h4 {
- margin-top: 0;
- color: inherit;
-}
-
-.alert .alert-link {
- font-weight: bold;
-}
-
-.alert > p,
-.alert > ul {
- margin-bottom: 0;
-}
-
-.alert > p + p {
- margin-top: 5px;
-}
-
-.alert-dismissable {
- padding-right: 35px;
-}
-
-.alert-dismissable .close {
- position: relative;
- top: -2px;
- right: -21px;
- color: inherit;
-}
-
-.alert-success {
- color: #468847;
- background-color: #dff0d8;
- border-color: #d6e9c6;
-}
-
-.alert-success hr {
- border-top-color: #c9e2b3;
-}
-
-.alert-success .alert-link {
- color: #356635;
-}
-
-.alert-info {
- color: #3a87ad;
- background-color: #d9edf7;
- border-color: #bce8f1;
-}
-
-.alert-info hr {
- border-top-color: #a6e1ec;
-}
-
-.alert-info .alert-link {
- color: #2d6987;
-}
-
-.alert-warning {
- color: #c09853;
- background-color: #fcf8e3;
- border-color: #fbeed5;
-}
-
-.alert-warning hr {
- border-top-color: #f8e5be;
-}
-
-.alert-warning .alert-link {
- color: #a47e3c;
-}
-
-.alert-danger {
- color: #b94a48;
- background-color: #f2dede;
- border-color: #eed3d7;
-}
-
-.alert-danger hr {
- border-top-color: #e6c1c7;
-}
-
-.alert-danger .alert-link {
- color: #953b39;
-}
-
-@-webkit-keyframes progress-bar-stripes {
- from {
- background-position: 40px 0;
- }
- to {
- background-position: 0 0;
- }
-}
-
-@-moz-keyframes progress-bar-stripes {
- from {
- background-position: 40px 0;
- }
- to {
- background-position: 0 0;
- }
-}
-
-@-o-keyframes progress-bar-stripes {
- from {
- background-position: 0 0;
- }
- to {
- background-position: 40px 0;
- }
-}
-
-@keyframes progress-bar-stripes {
- from {
- background-position: 40px 0;
- }
- to {
- background-position: 0 0;
- }
-}
-
-.progress {
- height: 20px;
- margin-bottom: 20px;
- overflow: hidden;
- background-color: #f5f5f5;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
-}
-
-.progress-bar {
- float: left;
- width: 0;
- height: 100%;
- font-size: 12px;
- color: #ffffff;
- text-align: center;
- background-color: #428bca;
- -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
- box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
- -webkit-transition: width 0.6s ease;
- transition: width 0.6s ease;
-}
-
-.progress-striped .progress-bar {
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-size: 40px 40px;
-}
-
-.progress.active .progress-bar {
- -webkit-animation: progress-bar-stripes 2s linear infinite;
- -moz-animation: progress-bar-stripes 2s linear infinite;
- -ms-animation: progress-bar-stripes 2s linear infinite;
- -o-animation: progress-bar-stripes 2s linear infinite;
- animation: progress-bar-stripes 2s linear infinite;
-}
-
-.progress-bar-success {
- background-color: #5cb85c;
-}
-
-.progress-striped .progress-bar-success {
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.progress-bar-info {
- background-color: #5bc0de;
-}
-
-.progress-striped .progress-bar-info {
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.progress-bar-warning {
- background-color: #f0ad4e;
-}
-
-.progress-striped .progress-bar-warning {
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.progress-bar-danger {
- background-color: #d9534f;
-}
-
-.progress-striped .progress-bar-danger {
- background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
- background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
- background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-}
-
-.media,
-.media-body {
- overflow: hidden;
- zoom: 1;
-}
-
-.media,
-.media .media {
- margin-top: 15px;
-}
-
-.media:first-child {
- margin-top: 0;
-}
-
-.media-object {
- display: block;
-}
-
-.media-heading {
- margin: 0 0 5px;
-}
-
-.media > .pull-left {
- margin-right: 10px;
-}
-
-.media > .pull-right {
- margin-left: 10px;
-}
-
-.media-list {
- padding-left: 0;
- list-style: none;
-}
-
-.list-group {
- padding-left: 0;
- margin-bottom: 20px;
-}
-
-.list-group-item {
- position: relative;
- display: block;
- padding: 10px 15px;
- margin-bottom: -1px;
- background-color: #ffffff;
- border: 1px solid #dddddd;
-}
-
-.list-group-item:first-child {
- border-top-right-radius: 4px;
- border-top-left-radius: 4px;
-}
-
-.list-group-item:last-child {
- margin-bottom: 0;
- border-bottom-right-radius: 4px;
- border-bottom-left-radius: 4px;
-}
-
-.list-group-item > .badge {
- float: right;
-}
-
-.list-group-item > .badge + .badge {
- margin-right: 5px;
-}
-
-a.list-group-item {
- color: #555555;
-}
-
-a.list-group-item .list-group-item-heading {
- color: #333333;
-}
-
-a.list-group-item:hover,
-a.list-group-item:focus {
- text-decoration: none;
- background-color: #f5f5f5;
-}
-
-.list-group-item.active,
-.list-group-item.active:hover,
-.list-group-item.active:focus {
- z-index: 2;
- color: #ffffff;
- background-color: #428bca;
- border-color: #428bca;
-}
-
-.list-group-item.active .list-group-item-heading,
-.list-group-item.active:hover .list-group-item-heading,
-.list-group-item.active:focus .list-group-item-heading {
- color: inherit;
-}
-
-.list-group-item.active .list-group-item-text,
-.list-group-item.active:hover .list-group-item-text,
-.list-group-item.active:focus .list-group-item-text {
- color: #e1edf7;
-}
-
-.list-group-item-heading {
- margin-top: 0;
- margin-bottom: 5px;
-}
-
-.list-group-item-text {
- margin-bottom: 0;
- line-height: 1.3;
-}
-
-.panel {
- margin-bottom: 20px;
- background-color: #ffffff;
- border: 1px solid transparent;
- border-radius: 4px;
- -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
-}
-
-.panel-body {
- padding: 15px;
-}
-
-.panel-body:before,
-.panel-body:after {
- display: table;
- content: " ";
-}
-
-.panel-body:after {
- clear: both;
-}
-
-.panel-body:before,
-.panel-body:after {
- display: table;
- content: " ";
-}
-
-.panel-body:after {
- clear: both;
-}
-
-.panel > .list-group {
- margin-bottom: 0;
-}
-
-.panel > .list-group .list-group-item {
- border-width: 1px 0;
-}
-
-.panel > .list-group .list-group-item:first-child {
- border-top-right-radius: 0;
- border-top-left-radius: 0;
-}
-
-.panel > .list-group .list-group-item:last-child {
- border-bottom: 0;
-}
-
-.panel-heading + .list-group .list-group-item:first-child {
- border-top-width: 0;
-}
-
-.panel > .table {
- margin-bottom: 0;
-}
-
-.panel > .panel-body + .table {
- border-top: 1px solid #dddddd;
-}
-
-.panel-heading {
- padding: 10px 15px;
- border-bottom: 1px solid transparent;
- border-top-right-radius: 3px;
- border-top-left-radius: 3px;
-}
-
-.panel-title {
- margin-top: 0;
- margin-bottom: 0;
- font-size: 16px;
-}
-
-.panel-title > a {
- color: inherit;
-}
-
-.panel-footer {
- padding: 10px 15px;
- background-color: #f5f5f5;
- border-top: 1px solid #dddddd;
- border-bottom-right-radius: 3px;
- border-bottom-left-radius: 3px;
-}
-
-.panel-group .panel {
- margin-bottom: 0;
- overflow: hidden;
- border-radius: 4px;
-}
-
-.panel-group .panel + .panel {
- margin-top: 5px;
-}
-
-.panel-group .panel-heading {
- border-bottom: 0;
-}
-
-.panel-group .panel-heading + .panel-collapse .panel-body {
- border-top: 1px solid #dddddd;
-}
-
-.panel-group .panel-footer {
- border-top: 0;
-}
-
-.panel-group .panel-footer + .panel-collapse .panel-body {
- border-bottom: 1px solid #dddddd;
-}
-
-.panel-default {
- border-color: #dddddd;
-}
-
-.panel-default > .panel-heading {
- color: #333333;
- background-color: #f5f5f5;
- border-color: #dddddd;
-}
-
-.panel-default > .panel-heading + .panel-collapse .panel-body {
- border-top-color: #dddddd;
-}
-
-.panel-default > .panel-footer + .panel-collapse .panel-body {
- border-bottom-color: #dddddd;
-}
-
-.panel-primary {
- border-color: #428bca;
-}
-
-.panel-primary > .panel-heading {
- color: #ffffff;
- background-color: #428bca;
- border-color: #428bca;
-}
-
-.panel-primary > .panel-heading + .panel-collapse .panel-body {
- border-top-color: #428bca;
-}
-
-.panel-primary > .panel-footer + .panel-collapse .panel-body {
- border-bottom-color: #428bca;
-}
-
-.panel-success {
- border-color: #d6e9c6;
-}
-
-.panel-success > .panel-heading {
- color: #468847;
- background-color: #dff0d8;
- border-color: #d6e9c6;
-}
-
-.panel-success > .panel-heading + .panel-collapse .panel-body {
- border-top-color: #d6e9c6;
-}
-
-.panel-success > .panel-footer + .panel-collapse .panel-body {
- border-bottom-color: #d6e9c6;
-}
-
-.panel-warning {
- border-color: #fbeed5;
-}
-
-.panel-warning > .panel-heading {
- color: #c09853;
- background-color: #fcf8e3;
- border-color: #fbeed5;
-}
-
-.panel-warning > .panel-heading + .panel-collapse .panel-body {
- border-top-color: #fbeed5;
-}
-
-.panel-warning > .panel-footer + .panel-collapse .panel-body {
- border-bottom-color: #fbeed5;
-}
-
-.panel-danger {
- border-color: #eed3d7;
-}
-
-.panel-danger > .panel-heading {
- color: #b94a48;
- background-color: #f2dede;
- border-color: #eed3d7;
-}
-
-.panel-danger > .panel-heading + .panel-collapse .panel-body {
- border-top-color: #eed3d7;
-}
-
-.panel-danger > .panel-footer + .panel-collapse .panel-body {
- border-bottom-color: #eed3d7;
-}
-
-.panel-info {
- border-color: #bce8f1;
-}
-
-.panel-info > .panel-heading {
- color: #3a87ad;
- background-color: #d9edf7;
- border-color: #bce8f1;
-}
-
-.panel-info > .panel-heading + .panel-collapse .panel-body {
- border-top-color: #bce8f1;
-}
-
-.panel-info > .panel-footer + .panel-collapse .panel-body {
- border-bottom-color: #bce8f1;
-}
-
-.well {
- min-height: 20px;
- padding: 19px;
- margin-bottom: 20px;
- background-color: #f5f5f5;
- border: 1px solid #e3e3e3;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
-}
-
-.well blockquote {
- border-color: #ddd;
- border-color: rgba(0, 0, 0, 0.15);
-}
-
-.well-lg {
- padding: 24px;
- border-radius: 6px;
-}
-
-.well-sm {
- padding: 9px;
- border-radius: 3px;
-}
-
-.close {
- float: right;
- font-size: 21px;
- font-weight: bold;
- line-height: 1;
- color: #000000;
- text-shadow: 0 1px 0 #ffffff;
- opacity: 0.2;
- filter: alpha(opacity=20);
-}
-
-.close:hover,
-.close:focus {
- color: #000000;
- text-decoration: none;
- cursor: pointer;
- opacity: 0.5;
- filter: alpha(opacity=50);
-}
-
-button.close {
- padding: 0;
- cursor: pointer;
- background: transparent;
- border: 0;
- -webkit-appearance: none;
-}
-
-.modal-open {
- overflow: hidden;
-}
-
-body.modal-open,
-.modal-open .navbar-fixed-top,
-.modal-open .navbar-fixed-bottom {
- margin-right: 15px;
-}
-
-.modal {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 1040;
- display: none;
- overflow: auto;
- overflow-y: scroll;
-}
-
-.modal.fade .modal-dialog {
- -webkit-transform: translate(0, -25%);
- -ms-transform: translate(0, -25%);
- transform: translate(0, -25%);
- -webkit-transition: -webkit-transform 0.3s ease-out;
- -moz-transition: -moz-transform 0.3s ease-out;
- -o-transition: -o-transform 0.3s ease-out;
- transition: transform 0.3s ease-out;
-}
-
-.modal.in .modal-dialog {
- -webkit-transform: translate(0, 0);
- -ms-transform: translate(0, 0);
- transform: translate(0, 0);
-}
-
-.modal-dialog {
- z-index: 1050;
- width: auto;
- padding: 10px;
- margin-right: auto;
- margin-left: auto;
-}
-
-.modal-content {
- position: relative;
- background-color: #ffffff;
- border: 1px solid #999999;
- border: 1px solid rgba(0, 0, 0, 0.2);
- border-radius: 6px;
- outline: none;
- -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
- box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
- background-clip: padding-box;
-}
-
-.modal-backdrop {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 1030;
- background-color: #000000;
-}
-
-.modal-backdrop.fade {
- opacity: 0;
- filter: alpha(opacity=0);
-}
-
-.modal-backdrop.in {
- opacity: 0.5;
- filter: alpha(opacity=50);
-}
-
-.modal-header {
- min-height: 16.428571429px;
- padding: 15px;
- border-bottom: 1px solid #e5e5e5;
-}
-
-.modal-header .close {
- margin-top: -2px;
-}
-
-.modal-title {
- margin: 0;
- line-height: 1.428571429;
-}
-
-.modal-body {
- position: relative;
- padding: 20px;
-}
-
-.modal-footer {
- padding: 19px 20px 20px;
- margin-top: 15px;
- text-align: right;
- border-top: 1px solid #e5e5e5;
-}
-
-.modal-footer:before,
-.modal-footer:after {
- display: table;
- content: " ";
-}
-
-.modal-footer:after {
- clear: both;
-}
-
-.modal-footer:before,
-.modal-footer:after {
- display: table;
- content: " ";
-}
-
-.modal-footer:after {
- clear: both;
-}
-
-.modal-footer .btn + .btn {
- margin-bottom: 0;
- margin-left: 5px;
-}
-
-.modal-footer .btn-group .btn + .btn {
- margin-left: -1px;
-}
-
-.modal-footer .btn-block + .btn-block {
- margin-left: 0;
-}
-
-@media screen and (min-width: 768px) {
- .modal-dialog {
- right: auto;
- left: 50%;
- width: 600px;
- padding-top: 30px;
- padding-bottom: 30px;
- }
- .modal-content {
- -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
- box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
- }
-}
-
-.tooltip {
- position: absolute;
- z-index: 1030;
- display: block;
- font-size: 12px;
- line-height: 1.4;
- opacity: 0;
- filter: alpha(opacity=0);
- visibility: visible;
-}
-
-.tooltip.in {
- opacity: 0.9;
- filter: alpha(opacity=90);
-}
-
-.tooltip.top {
- padding: 5px 0;
- margin-top: -3px;
-}
-
-.tooltip.right {
- padding: 0 5px;
- margin-left: 3px;
-}
-
-.tooltip.bottom {
- padding: 5px 0;
- margin-top: 3px;
-}
-
-.tooltip.left {
- padding: 0 5px;
- margin-left: -3px;
-}
-
-.tooltip-inner {
- max-width: 200px;
- padding: 3px 8px;
- color: #ffffff;
- text-align: center;
- text-decoration: none;
- background-color: #000000;
- border-radius: 4px;
-}
-
-.tooltip-arrow {
- position: absolute;
- width: 0;
- height: 0;
- border-color: transparent;
- border-style: solid;
-}
-
-.tooltip.top .tooltip-arrow {
- bottom: 0;
- left: 50%;
- margin-left: -5px;
- border-top-color: #000000;
- border-width: 5px 5px 0;
-}
-
-.tooltip.top-left .tooltip-arrow {
- bottom: 0;
- left: 5px;
- border-top-color: #000000;
- border-width: 5px 5px 0;
-}
-
-.tooltip.top-right .tooltip-arrow {
- right: 5px;
- bottom: 0;
- border-top-color: #000000;
- border-width: 5px 5px 0;
-}
-
-.tooltip.right .tooltip-arrow {
- top: 50%;
- left: 0;
- margin-top: -5px;
- border-right-color: #000000;
- border-width: 5px 5px 5px 0;
-}
-
-.tooltip.left .tooltip-arrow {
- top: 50%;
- right: 0;
- margin-top: -5px;
- border-left-color: #000000;
- border-width: 5px 0 5px 5px;
-}
-
-.tooltip.bottom .tooltip-arrow {
- top: 0;
- left: 50%;
- margin-left: -5px;
- border-bottom-color: #000000;
- border-width: 0 5px 5px;
-}
-
-.tooltip.bottom-left .tooltip-arrow {
- top: 0;
- left: 5px;
- border-bottom-color: #000000;
- border-width: 0 5px 5px;
-}
-
-.tooltip.bottom-right .tooltip-arrow {
- top: 0;
- right: 5px;
- border-bottom-color: #000000;
- border-width: 0 5px 5px;
-}
-
-.popover {
- position: absolute;
- top: 0;
- left: 0;
- z-index: 1010;
- display: none;
- max-width: 276px;
- padding: 1px;
- text-align: left;
- white-space: normal;
- background-color: #ffffff;
- border: 1px solid #cccccc;
- border: 1px solid rgba(0, 0, 0, 0.2);
- border-radius: 6px;
- -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
- background-clip: padding-box;
-}
-
-.popover.top {
- margin-top: -10px;
-}
-
-.popover.right {
- margin-left: 10px;
-}
-
-.popover.bottom {
- margin-top: 10px;
-}
-
-.popover.left {
- margin-left: -10px;
-}
-
-.popover-title {
- padding: 8px 14px;
- margin: 0;
- font-size: 14px;
- font-weight: normal;
- line-height: 18px;
- background-color: #f7f7f7;
- border-bottom: 1px solid #ebebeb;
- border-radius: 5px 5px 0 0;
-}
-
-.popover-content {
- padding: 9px 14px;
-}
-
-.popover .arrow,
-.popover .arrow:after {
- position: absolute;
- display: block;
- width: 0;
- height: 0;
- border-color: transparent;
- border-style: solid;
-}
-
-.popover .arrow {
- border-width: 11px;
-}
-
-.popover .arrow:after {
- border-width: 10px;
- content: "";
-}
-
-.popover.top .arrow {
- bottom: -11px;
- left: 50%;
- margin-left: -11px;
- border-top-color: #999999;
- border-top-color: rgba(0, 0, 0, 0.25);
- border-bottom-width: 0;
-}
-
-.popover.top .arrow:after {
- bottom: 1px;
- margin-left: -10px;
- border-top-color: #ffffff;
- border-bottom-width: 0;
- content: " ";
-}
-
-.popover.right .arrow {
- top: 50%;
- left: -11px;
- margin-top: -11px;
- border-right-color: #999999;
- border-right-color: rgba(0, 0, 0, 0.25);
- border-left-width: 0;
-}
-
-.popover.right .arrow:after {
- bottom: -10px;
- left: 1px;
- border-right-color: #ffffff;
- border-left-width: 0;
- content: " ";
-}
-
-.popover.bottom .arrow {
- top: -11px;
- left: 50%;
- margin-left: -11px;
- border-bottom-color: #999999;
- border-bottom-color: rgba(0, 0, 0, 0.25);
- border-top-width: 0;
-}
-
-.popover.bottom .arrow:after {
- top: 1px;
- margin-left: -10px;
- border-bottom-color: #ffffff;
- border-top-width: 0;
- content: " ";
-}
-
-.popover.left .arrow {
- top: 50%;
- right: -11px;
- margin-top: -11px;
- border-left-color: #999999;
- border-left-color: rgba(0, 0, 0, 0.25);
- border-right-width: 0;
-}
-
-.popover.left .arrow:after {
- right: 1px;
- bottom: -10px;
- border-left-color: #ffffff;
- border-right-width: 0;
- content: " ";
-}
-
-.carousel {
- position: relative;
-}
-
-.carousel-inner {
- position: relative;
- width: 100%;
- overflow: hidden;
-}
-
-.carousel-inner > .item {
- position: relative;
- display: none;
- -webkit-transition: 0.6s ease-in-out left;
- transition: 0.6s ease-in-out left;
-}
-
-.carousel-inner > .item > img,
-.carousel-inner > .item > a > img {
- display: block;
- height: auto;
- max-width: 100%;
- line-height: 1;
-}
-
-.carousel-inner > .active,
-.carousel-inner > .next,
-.carousel-inner > .prev {
- display: block;
-}
-
-.carousel-inner > .active {
- left: 0;
-}
-
-.carousel-inner > .next,
-.carousel-inner > .prev {
- position: absolute;
- top: 0;
- width: 100%;
-}
-
-.carousel-inner > .next {
- left: 100%;
-}
-
-.carousel-inner > .prev {
- left: -100%;
-}
-
-.carousel-inner > .next.left,
-.carousel-inner > .prev.right {
- left: 0;
-}
-
-.carousel-inner > .active.left {
- left: -100%;
-}
-
-.carousel-inner > .active.right {
- left: 100%;
-}
-
-.carousel-control {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- width: 15%;
- font-size: 20px;
- color: #ffffff;
- text-align: center;
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
- opacity: 0.5;
- filter: alpha(opacity=50);
-}
-
-.carousel-control.left {
- background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
- background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0), color-stop(rgba(0, 0, 0, 0.0001) 100%));
- background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
- background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
-}
-
-.carousel-control.right {
- right: 0;
- left: auto;
- background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
- background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0), color-stop(rgba(0, 0, 0, 0.5) 100%));
- background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
- background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
- background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
-}
-
-.carousel-control:hover,
-.carousel-control:focus {
- color: #ffffff;
- text-decoration: none;
- opacity: 0.9;
- filter: alpha(opacity=90);
-}
-
-.carousel-control .icon-prev,
-.carousel-control .icon-next,
-.carousel-control .glyphicon-chevron-left,
-.carousel-control .glyphicon-chevron-right {
- position: absolute;
- top: 50%;
- left: 50%;
- z-index: 5;
- display: inline-block;
-}
-
-.carousel-control .icon-prev,
-.carousel-control .icon-next {
- width: 20px;
- height: 20px;
- margin-top: -10px;
- margin-left: -10px;
- font-family: serif;
-}
-
-.carousel-control .icon-prev:before {
- content: '\2039';
-}
-
-.carousel-control .icon-next:before {
- content: '\203a';
-}
-
-.carousel-indicators {
- position: absolute;
- bottom: 10px;
- left: 50%;
- z-index: 15;
- width: 60%;
- padding-left: 0;
- margin-left: -30%;
- text-align: center;
- list-style: none;
-}
-
-.carousel-indicators li {
- display: inline-block;
- width: 10px;
- height: 10px;
- margin: 1px;
- text-indent: -999px;
- cursor: pointer;
- border: 1px solid #ffffff;
- border-radius: 10px;
-}
-
-.carousel-indicators .active {
- width: 12px;
- height: 12px;
- margin: 0;
- background-color: #ffffff;
-}
-
-.carousel-caption {
- position: absolute;
- right: 15%;
- bottom: 20px;
- left: 15%;
- z-index: 10;
- padding-top: 20px;
- padding-bottom: 20px;
- color: #ffffff;
- text-align: center;
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
-}
-
-.carousel-caption .btn {
- text-shadow: none;
-}
-
-@media screen and (min-width: 768px) {
- .carousel-control .icon-prev,
- .carousel-control .icon-next {
- width: 30px;
- height: 30px;
- margin-top: -15px;
- margin-left: -15px;
- font-size: 30px;
- }
- .carousel-caption {
- right: 20%;
- left: 20%;
- padding-bottom: 30px;
- }
- .carousel-indicators {
- bottom: 20px;
- }
-}
-
-.clearfix:before,
-.clearfix:after {
- display: table;
- content: " ";
-}
-
-.clearfix:after {
- clear: both;
-}
-
-.pull-right {
- float: right !important;
-}
-
-.pull-left {
- float: left !important;
-}
-
-.hide {
- display: none !important;
-}
-
-.show {
- display: block !important;
-}
-
-.invisible {
- visibility: hidden;
-}
-
-.text-hide {
- font: 0/0 a;
- color: transparent;
- text-shadow: none;
- background-color: transparent;
- border: 0;
-}
-
-.affix {
- position: fixed;
-}
-
-@-ms-viewport {
- width: device-width;
-}
-
-@media screen and (max-width: 400px) {
- @-ms-viewport {
- width: 320px;
- }
-}
-
-.hidden {
- display: none !important;
- visibility: hidden !important;
-}
-
-.visible-xs {
- display: none !important;
-}
-
-tr.visible-xs {
- display: none !important;
-}
-
-th.visible-xs,
-td.visible-xs {
- display: none !important;
-}
-
-@media (max-width: 767px) {
- .visible-xs {
- display: block !important;
- }
- tr.visible-xs {
- display: table-row !important;
- }
- th.visible-xs,
- td.visible-xs {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-xs.visible-sm {
- display: block !important;
- }
- tr.visible-xs.visible-sm {
- display: table-row !important;
- }
- th.visible-xs.visible-sm,
- td.visible-xs.visible-sm {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-xs.visible-md {
- display: block !important;
- }
- tr.visible-xs.visible-md {
- display: table-row !important;
- }
- th.visible-xs.visible-md,
- td.visible-xs.visible-md {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 1200px) {
- .visible-xs.visible-lg {
- display: block !important;
- }
- tr.visible-xs.visible-lg {
- display: table-row !important;
- }
- th.visible-xs.visible-lg,
- td.visible-xs.visible-lg {
- display: table-cell !important;
- }
-}
-
-.visible-sm {
- display: none !important;
-}
-
-tr.visible-sm {
- display: none !important;
-}
-
-th.visible-sm,
-td.visible-sm {
- display: none !important;
-}
-
-@media (max-width: 767px) {
- .visible-sm.visible-xs {
- display: block !important;
- }
- tr.visible-sm.visible-xs {
- display: table-row !important;
- }
- th.visible-sm.visible-xs,
- td.visible-sm.visible-xs {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-sm {
- display: block !important;
- }
- tr.visible-sm {
- display: table-row !important;
- }
- th.visible-sm,
- td.visible-sm {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-sm.visible-md {
- display: block !important;
- }
- tr.visible-sm.visible-md {
- display: table-row !important;
- }
- th.visible-sm.visible-md,
- td.visible-sm.visible-md {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 1200px) {
- .visible-sm.visible-lg {
- display: block !important;
- }
- tr.visible-sm.visible-lg {
- display: table-row !important;
- }
- th.visible-sm.visible-lg,
- td.visible-sm.visible-lg {
- display: table-cell !important;
- }
-}
-
-.visible-md {
- display: none !important;
-}
-
-tr.visible-md {
- display: none !important;
-}
-
-th.visible-md,
-td.visible-md {
- display: none !important;
-}
-
-@media (max-width: 767px) {
- .visible-md.visible-xs {
- display: block !important;
- }
- tr.visible-md.visible-xs {
- display: table-row !important;
- }
- th.visible-md.visible-xs,
- td.visible-md.visible-xs {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-md.visible-sm {
- display: block !important;
- }
- tr.visible-md.visible-sm {
- display: table-row !important;
- }
- th.visible-md.visible-sm,
- td.visible-md.visible-sm {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-md {
- display: block !important;
- }
- tr.visible-md {
- display: table-row !important;
- }
- th.visible-md,
- td.visible-md {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 1200px) {
- .visible-md.visible-lg {
- display: block !important;
- }
- tr.visible-md.visible-lg {
- display: table-row !important;
- }
- th.visible-md.visible-lg,
- td.visible-md.visible-lg {
- display: table-cell !important;
- }
-}
-
-.visible-lg {
- display: none !important;
-}
-
-tr.visible-lg {
- display: none !important;
-}
-
-th.visible-lg,
-td.visible-lg {
- display: none !important;
-}
-
-@media (max-width: 767px) {
- .visible-lg.visible-xs {
- display: block !important;
- }
- tr.visible-lg.visible-xs {
- display: table-row !important;
- }
- th.visible-lg.visible-xs,
- td.visible-lg.visible-xs {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .visible-lg.visible-sm {
- display: block !important;
- }
- tr.visible-lg.visible-sm {
- display: table-row !important;
- }
- th.visible-lg.visible-sm,
- td.visible-lg.visible-sm {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .visible-lg.visible-md {
- display: block !important;
- }
- tr.visible-lg.visible-md {
- display: table-row !important;
- }
- th.visible-lg.visible-md,
- td.visible-lg.visible-md {
- display: table-cell !important;
- }
-}
-
-@media (min-width: 1200px) {
- .visible-lg {
- display: block !important;
- }
- tr.visible-lg {
- display: table-row !important;
- }
- th.visible-lg,
- td.visible-lg {
- display: table-cell !important;
- }
-}
-
-.hidden-xs {
- display: block !important;
-}
-
-tr.hidden-xs {
- display: table-row !important;
-}
-
-th.hidden-xs,
-td.hidden-xs {
- display: table-cell !important;
-}
-
-@media (max-width: 767px) {
- .hidden-xs {
- display: none !important;
- }
- tr.hidden-xs {
- display: none !important;
- }
- th.hidden-xs,
- td.hidden-xs {
- display: none !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .hidden-xs.hidden-sm {
- display: none !important;
- }
- tr.hidden-xs.hidden-sm {
- display: none !important;
- }
- th.hidden-xs.hidden-sm,
- td.hidden-xs.hidden-sm {
- display: none !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .hidden-xs.hidden-md {
- display: none !important;
- }
- tr.hidden-xs.hidden-md {
- display: none !important;
- }
- th.hidden-xs.hidden-md,
- td.hidden-xs.hidden-md {
- display: none !important;
- }
-}
-
-@media (min-width: 1200px) {
- .hidden-xs.hidden-lg {
- display: none !important;
- }
- tr.hidden-xs.hidden-lg {
- display: none !important;
- }
- th.hidden-xs.hidden-lg,
- td.hidden-xs.hidden-lg {
- display: none !important;
- }
-}
-
-.hidden-sm {
- display: block !important;
-}
-
-tr.hidden-sm {
- display: table-row !important;
-}
-
-th.hidden-sm,
-td.hidden-sm {
- display: table-cell !important;
-}
-
-@media (max-width: 767px) {
- .hidden-sm.hidden-xs {
- display: none !important;
- }
- tr.hidden-sm.hidden-xs {
- display: none !important;
- }
- th.hidden-sm.hidden-xs,
- td.hidden-sm.hidden-xs {
- display: none !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .hidden-sm {
- display: none !important;
- }
- tr.hidden-sm {
- display: none !important;
- }
- th.hidden-sm,
- td.hidden-sm {
- display: none !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .hidden-sm.hidden-md {
- display: none !important;
- }
- tr.hidden-sm.hidden-md {
- display: none !important;
- }
- th.hidden-sm.hidden-md,
- td.hidden-sm.hidden-md {
- display: none !important;
- }
-}
-
-@media (min-width: 1200px) {
- .hidden-sm.hidden-lg {
- display: none !important;
- }
- tr.hidden-sm.hidden-lg {
- display: none !important;
- }
- th.hidden-sm.hidden-lg,
- td.hidden-sm.hidden-lg {
- display: none !important;
- }
-}
-
-.hidden-md {
- display: block !important;
-}
-
-tr.hidden-md {
- display: table-row !important;
-}
-
-th.hidden-md,
-td.hidden-md {
- display: table-cell !important;
-}
-
-@media (max-width: 767px) {
- .hidden-md.hidden-xs {
- display: none !important;
- }
- tr.hidden-md.hidden-xs {
- display: none !important;
- }
- th.hidden-md.hidden-xs,
- td.hidden-md.hidden-xs {
- display: none !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .hidden-md.hidden-sm {
- display: none !important;
- }
- tr.hidden-md.hidden-sm {
- display: none !important;
- }
- th.hidden-md.hidden-sm,
- td.hidden-md.hidden-sm {
- display: none !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .hidden-md {
- display: none !important;
- }
- tr.hidden-md {
- display: none !important;
- }
- th.hidden-md,
- td.hidden-md {
- display: none !important;
- }
-}
-
-@media (min-width: 1200px) {
- .hidden-md.hidden-lg {
- display: none !important;
- }
- tr.hidden-md.hidden-lg {
- display: none !important;
- }
- th.hidden-md.hidden-lg,
- td.hidden-md.hidden-lg {
- display: none !important;
- }
-}
-
-.hidden-lg {
- display: block !important;
-}
-
-tr.hidden-lg {
- display: table-row !important;
-}
-
-th.hidden-lg,
-td.hidden-lg {
- display: table-cell !important;
-}
-
-@media (max-width: 767px) {
- .hidden-lg.hidden-xs {
- display: none !important;
- }
- tr.hidden-lg.hidden-xs {
- display: none !important;
- }
- th.hidden-lg.hidden-xs,
- td.hidden-lg.hidden-xs {
- display: none !important;
- }
-}
-
-@media (min-width: 768px) and (max-width: 991px) {
- .hidden-lg.hidden-sm {
- display: none !important;
- }
- tr.hidden-lg.hidden-sm {
- display: none !important;
- }
- th.hidden-lg.hidden-sm,
- td.hidden-lg.hidden-sm {
- display: none !important;
- }
-}
-
-@media (min-width: 992px) and (max-width: 1199px) {
- .hidden-lg.hidden-md {
- display: none !important;
- }
- tr.hidden-lg.hidden-md {
- display: none !important;
- }
- th.hidden-lg.hidden-md,
- td.hidden-lg.hidden-md {
- display: none !important;
- }
-}
-
-@media (min-width: 1200px) {
- .hidden-lg {
- display: none !important;
- }
- tr.hidden-lg {
- display: none !important;
- }
- th.hidden-lg,
- td.hidden-lg {
- display: none !important;
- }
-}
-
-.visible-print {
- display: none !important;
-}
-
-tr.visible-print {
- display: none !important;
-}
-
-th.visible-print,
-td.visible-print {
- display: none !important;
-}
-
-@media print {
- .visible-print {
- display: block !important;
- }
- tr.visible-print {
- display: table-row !important;
- }
- th.visible-print,
- td.visible-print {
- display: table-cell !important;
- }
- .hidden-print {
- display: none !important;
- }
- tr.hidden-print {
- display: none !important;
- }
- th.hidden-print,
- td.hidden-print {
- display: none !important;
- }
-}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap.min.css b/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap.min.css
deleted file mode 100644
index a553c4f5e0..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/css/bootstrap.min.css
+++ /dev/null
@@ -1,9 +0,0 @@
-/*!
- * Bootstrap v3.0.0
- *
- * Copyright 2013 Twitter, Inc
- * Licensed under the Apache License v2.0
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Designed and built with all the love in the world by @mdo and @fat.
- *//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button,input,select[multiple],textarea{background-image:none}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-warning{color:#c09853}.text-danger{color:#b94a48}.text-success{color:#468847}.text-info{color:#3a87ad}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}h1 small,.h1 small{font-size:24px}h2 small,.h2 small{font-size:18px}h3 small,.h3 small,h4 small,.h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:1.428571429}code,pre{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{max-width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{max-width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{max-width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table thead>tr>th,.table tbody>tr>th,.table tfoot>tr>th,.table thead>tr>td,.table tbody>tr>td,.table tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table caption+thead tr:first-child th,.table colgroup+thead tr:first-child th,.table thead:first-child tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed thead>tr>th,.table-condensed tbody>tr>th,.table-condensed tfoot>tr>th,.table-condensed thead>tr>td,.table-condensed tbody>tr>td,.table-condensed tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#eed3d7}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td{background-color:#ebcccc;border-color:#e6c1c7}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#fbeed5}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td{background-color:#faf2cc;border-color:#f8e5be}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0;background-color:#fff}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>thead>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>thead>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-print:before{content:"\e045"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-briefcase:before{content:"\1f4bc"}.glyphicon-calendar:before{content:"\1f4c5"}.glyphicon-pushpin:before{content:"\1f4cc"}.glyphicon-paperclip:before{content:"\1f4ce"}.glyphicon-camera:before{content:"\1f4f7"}.glyphicon-lock:before{content:"\1f512"}.glyphicon-bell:before{content:"\1f514"}.glyphicon-bookmark:before{content:"\1f516"}.glyphicon-fire:before{content:"\1f525"}.glyphicon-wrench:before{content:"\1f527"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent;content:""}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none;background-color:#428bca}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}}.nav-tabs.nav-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs.nav-justified>.active>a{border-bottom-color:#fff}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:5px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs-justified>.active>a{border-bottom-color:#fff}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e6e6e6}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.alert-warning hr{border-top-color:#f8e5be}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger hr{border-top-color:#e6c1c7}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table{margin-bottom:0}.panel>.panel-body+.table{border-top:1px solid #ddd}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#fbeed5}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#fbeed5}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#fbeed5}.panel-danger{border-color:#eed3d7}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#eed3d7}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#eed3d7}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{right:auto;left:50%;width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;left:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}@media screen and (max-width:400px){@-ms-viewport{width:320px}}.hidden{display:none!important;visibility:hidden!important}.visible-xs{display:none!important}tr.visible-xs{display:none!important}th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm{display:none!important}tr.visible-sm{display:none!important}th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md{display:none!important}tr.visible-md{display:none!important}th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg{display:none!important}tr.visible-lg{display:none!important}th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs{display:none!important}tr.hidden-xs{display:none!important}th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm{display:none!important}tr.hidden-xs.hidden-sm{display:none!important}th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md{display:none!important}tr.hidden-xs.hidden-md{display:none!important}th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg{display:none!important}tr.hidden-xs.hidden-lg{display:none!important}th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs{display:none!important}tr.hidden-sm.hidden-xs{display:none!important}th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}tr.hidden-sm{display:none!important}th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md{display:none!important}tr.hidden-sm.hidden-md{display:none!important}th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg{display:none!important}tr.hidden-sm.hidden-lg{display:none!important}th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs{display:none!important}tr.hidden-md.hidden-xs{display:none!important}th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm{display:none!important}tr.hidden-md.hidden-sm{display:none!important}th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}tr.hidden-md{display:none!important}th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg{display:none!important}tr.hidden-md.hidden-lg{display:none!important}th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs{display:none!important}tr.hidden-lg.hidden-xs{display:none!important}th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm{display:none!important}tr.hidden-lg.hidden-sm{display:none!important}th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md{display:none!important}tr.hidden-lg.hidden-md{display:none!important}th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg{display:none!important}tr.hidden-lg{display:none!important}th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print{display:none!important}tr.visible-print{display:none!important}th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print{display:none!important}tr.hidden-print{display:none!important}th.hidden-print,td.hidden-print{display:none!important}}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/favicon.ico b/Godeps/_workspace/src/github.com/gocql/gocql/website/favicon.ico
deleted file mode 100644
index 8215473739..0000000000
Binary files a/Godeps/_workspace/src/github.com/gocql/gocql/website/favicon.ico and /dev/null differ
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.eot b/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.eot
deleted file mode 100644
index 87eaa43423..0000000000
Binary files a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.eot and /dev/null differ
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.svg b/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.svg
deleted file mode 100644
index 5fee068549..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.svg
+++ /dev/null
@@ -1,228 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.ttf b/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.ttf
deleted file mode 100644
index be784dc1d5..0000000000
Binary files a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.ttf and /dev/null differ
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.woff b/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.woff
deleted file mode 100644
index 2cc3e4852a..0000000000
Binary files a/Godeps/_workspace/src/github.com/gocql/gocql/website/fonts/glyphicons-halflings-regular.woff and /dev/null differ
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/gocql.png b/Godeps/_workspace/src/github.com/gocql/gocql/website/gocql.png
deleted file mode 100644
index a32cccd4eb..0000000000
Binary files a/Godeps/_workspace/src/github.com/gocql/gocql/website/gocql.png and /dev/null differ
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/index.html b/Godeps/_workspace/src/github.com/gocql/gocql/website/index.html
deleted file mode 100644
index 7016b2a6d1..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/index.html
+++ /dev/null
@@ -1,133 +0,0 @@
-
-
-
- GoCQL
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
GoCQL tux21b.org/v1/gocql
-
-
-
-
-
- Under Development: The GoCQL package is currently actively
- developed and the API may change in the future.
-
-
-
-
Highlights
-
-
-
-
Cluster Management
-
GoCQL automatically discovers all data centers, racks and hosts
- in your cluster, manages a pool of connections to them and distributes
- queries in a reasonable and efficient way.
-
-
-
-
Type Conversation
-
Automatic and safe type conversation between Cassandra and Go without
- any loss of precision. Basic types, collections and UUIDs are supported
- by default and custom types can implement their own marshaling logic.
-
-
-
-
Synchronous and Concurrent
-
Synchronous API with an asynchronous and concurrent back-end. Each
- connection can handle up to 128 concurrent queries and may receive
- server side push events at any time.
-
-
-
-
Failover Management
-
TODO :(
-
-
-
-
-
-
Result Paging
-
Iterate over large results sets and let GoCQL fetch one page after
- another. The next page is automatically pre-fetched in the background
- once the iterator has passed a certain threshold.
-
-
-
-
Atomic Batches
-
Execute a batch of related updates in a single query. GoCQL supports
- logged, unlogged and counter batches.
-
-
-
-
Query Tracing
-
Trace queries to obtain a detailed output of all events that
- happened during the query execution from Cassandra. The output might
- help to identify bugs and performance bottlenecks in your
- application.
-
-
-
-
Frame Compression
-
Speed up and reduce the network traffic by compressing the frames
- that are sent to Cassandra.
- Snappy , a
- compression algorithm that aims for very high speeds and reasonable
- compression, is enabled by default.
-
-
-
-
-
-
Multiple Cassandra Versions
-
GoCQL supports multiple Cassandra version. Currently Cassandra 1.2
- and Cassandra 2.0 are fully supported.
-
-
-
-
Thoroughly Tested
-
TODO :(
-
-
-
-
BSD License
-
Completely open source. Browse the source on
- GitHub and start
- contributing today.
-
-
-
-
-
-
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/js/bootstrap.js b/Godeps/_workspace/src/github.com/gocql/gocql/website/js/bootstrap.js
deleted file mode 100644
index 2c64257146..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/js/bootstrap.js
+++ /dev/null
@@ -1,1999 +0,0 @@
-/**
-* bootstrap.js v3.0.0 by @fat and @mdo
-* Copyright 2013 Twitter Inc.
-* http://www.apache.org/licenses/LICENSE-2.0
-*/
-if (!jQuery) { throw new Error("Bootstrap requires jQuery") }
-
-/* ========================================================================
- * Bootstrap: transition.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#transitions
- * ========================================================================
- * Copyright 2013 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)
- // ============================================================
-
- function transitionEnd() {
- var el = document.createElement('bootstrap')
-
- var transEndEventNames = {
- 'WebkitTransition' : 'webkitTransitionEnd'
- , 'MozTransition' : 'transitionend'
- , 'OTransition' : 'oTransitionEnd otransitionend'
- , 'transition' : 'transitionend'
- }
-
- for (var name in transEndEventNames) {
- if (el.style[name] !== undefined) {
- return { end: transEndEventNames[name] }
- }
- }
- }
-
- // http://blog.alexmaccaw.com/css-transitions
- $.fn.emulateTransitionEnd = function (duration) {
- var called = false, $el = this
- $(this).one($.support.transition.end, function () { called = true })
- var callback = function () { if (!called) $($el).trigger($.support.transition.end) }
- setTimeout(callback, duration)
- return this
- }
-
- $(function () {
- $.support.transition = transitionEnd()
- })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: alert.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#alerts
- * ========================================================================
- * Copyright 2013 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // ALERT CLASS DEFINITION
- // ======================
-
- var dismiss = '[data-dismiss="alert"]'
- var Alert = function (el) {
- $(el).on('click', dismiss, this.close)
- }
-
- Alert.prototype.close = function (e) {
- var $this = $(this)
- var selector = $this.attr('data-target')
-
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
- }
-
- var $parent = $(selector)
-
- if (e) e.preventDefault()
-
- if (!$parent.length) {
- $parent = $this.hasClass('alert') ? $this : $this.parent()
- }
-
- $parent.trigger(e = $.Event('close.bs.alert'))
-
- if (e.isDefaultPrevented()) return
-
- $parent.removeClass('in')
-
- function removeElement() {
- $parent.trigger('closed.bs.alert').remove()
- }
-
- $.support.transition && $parent.hasClass('fade') ?
- $parent
- .one($.support.transition.end, removeElement)
- .emulateTransitionEnd(150) :
- removeElement()
- }
-
-
- // ALERT PLUGIN DEFINITION
- // =======================
-
- var old = $.fn.alert
-
- $.fn.alert = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.alert')
-
- if (!data) $this.data('bs.alert', (data = new Alert(this)))
- if (typeof option == 'string') data[option].call($this)
- })
- }
-
- $.fn.alert.Constructor = Alert
-
-
- // ALERT NO CONFLICT
- // =================
-
- $.fn.alert.noConflict = function () {
- $.fn.alert = old
- return this
- }
-
-
- // ALERT DATA-API
- // ==============
-
- $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: button.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#buttons
- * ========================================================================
- * Copyright 2013 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // BUTTON PUBLIC CLASS DEFINITION
- // ==============================
-
- var Button = function (element, options) {
- this.$element = $(element)
- this.options = $.extend({}, Button.DEFAULTS, options)
- }
-
- Button.DEFAULTS = {
- loadingText: 'loading...'
- }
-
- Button.prototype.setState = function (state) {
- var d = 'disabled'
- var $el = this.$element
- var val = $el.is('input') ? 'val' : 'html'
- var data = $el.data()
-
- state = state + 'Text'
-
- if (!data.resetText) $el.data('resetText', $el[val]())
-
- $el[val](data[state] || this.options[state])
-
- // push to event loop to allow forms to submit
- setTimeout(function () {
- state == 'loadingText' ?
- $el.addClass(d).attr(d, d) :
- $el.removeClass(d).removeAttr(d);
- }, 0)
- }
-
- Button.prototype.toggle = function () {
- var $parent = this.$element.closest('[data-toggle="buttons"]')
-
- if ($parent.length) {
- var $input = this.$element.find('input')
- .prop('checked', !this.$element.hasClass('active'))
- .trigger('change')
- if ($input.prop('type') === 'radio') $parent.find('.active').removeClass('active')
- }
-
- this.$element.toggleClass('active')
- }
-
-
- // BUTTON PLUGIN DEFINITION
- // ========================
-
- var old = $.fn.button
-
- $.fn.button = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.button')
- var options = typeof option == 'object' && option
-
- if (!data) $this.data('bs.button', (data = new Button(this, options)))
-
- if (option == 'toggle') data.toggle()
- else if (option) data.setState(option)
- })
- }
-
- $.fn.button.Constructor = Button
-
-
- // BUTTON NO CONFLICT
- // ==================
-
- $.fn.button.noConflict = function () {
- $.fn.button = old
- return this
- }
-
-
- // BUTTON DATA-API
- // ===============
-
- $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) {
- var $btn = $(e.target)
- if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
- $btn.button('toggle')
- e.preventDefault()
- })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: carousel.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#carousel
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // CAROUSEL CLASS DEFINITION
- // =========================
-
- var Carousel = function (element, options) {
- this.$element = $(element)
- this.$indicators = this.$element.find('.carousel-indicators')
- this.options = options
- this.paused =
- this.sliding =
- this.interval =
- this.$active =
- this.$items = null
-
- this.options.pause == 'hover' && this.$element
- .on('mouseenter', $.proxy(this.pause, this))
- .on('mouseleave', $.proxy(this.cycle, this))
- }
-
- Carousel.DEFAULTS = {
- interval: 5000
- , pause: 'hover'
- , wrap: true
- }
-
- Carousel.prototype.cycle = function (e) {
- e || (this.paused = false)
-
- this.interval && clearInterval(this.interval)
-
- this.options.interval
- && !this.paused
- && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
-
- return this
- }
-
- Carousel.prototype.getActiveIndex = function () {
- this.$active = this.$element.find('.item.active')
- this.$items = this.$active.parent().children()
-
- return this.$items.index(this.$active)
- }
-
- Carousel.prototype.to = function (pos) {
- var that = this
- var activeIndex = this.getActiveIndex()
-
- if (pos > (this.$items.length - 1) || pos < 0) return
-
- if (this.sliding) return this.$element.one('slid', function () { that.to(pos) })
- if (activeIndex == pos) return this.pause().cycle()
-
- return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
- }
-
- Carousel.prototype.pause = function (e) {
- e || (this.paused = true)
-
- if (this.$element.find('.next, .prev').length && $.support.transition.end) {
- this.$element.trigger($.support.transition.end)
- this.cycle(true)
- }
-
- this.interval = clearInterval(this.interval)
-
- return this
- }
-
- Carousel.prototype.next = function () {
- if (this.sliding) return
- return this.slide('next')
- }
-
- Carousel.prototype.prev = function () {
- if (this.sliding) return
- return this.slide('prev')
- }
-
- Carousel.prototype.slide = function (type, next) {
- var $active = this.$element.find('.item.active')
- var $next = next || $active[type]()
- var isCycling = this.interval
- var direction = type == 'next' ? 'left' : 'right'
- var fallback = type == 'next' ? 'first' : 'last'
- var that = this
-
- if (!$next.length) {
- if (!this.options.wrap) return
- $next = this.$element.find('.item')[fallback]()
- }
-
- this.sliding = true
-
- isCycling && this.pause()
-
- var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction })
-
- if ($next.hasClass('active')) return
-
- if (this.$indicators.length) {
- this.$indicators.find('.active').removeClass('active')
- this.$element.one('slid', function () {
- var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
- $nextIndicator && $nextIndicator.addClass('active')
- })
- }
-
- if ($.support.transition && this.$element.hasClass('slide')) {
- this.$element.trigger(e)
- if (e.isDefaultPrevented()) return
- $next.addClass(type)
- $next[0].offsetWidth // force reflow
- $active.addClass(direction)
- $next.addClass(direction)
- $active
- .one($.support.transition.end, function () {
- $next.removeClass([type, direction].join(' ')).addClass('active')
- $active.removeClass(['active', direction].join(' '))
- that.sliding = false
- setTimeout(function () { that.$element.trigger('slid') }, 0)
- })
- .emulateTransitionEnd(600)
- } else {
- this.$element.trigger(e)
- if (e.isDefaultPrevented()) return
- $active.removeClass('active')
- $next.addClass('active')
- this.sliding = false
- this.$element.trigger('slid')
- }
-
- isCycling && this.cycle()
-
- return this
- }
-
-
- // CAROUSEL PLUGIN DEFINITION
- // ==========================
-
- var old = $.fn.carousel
-
- $.fn.carousel = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.carousel')
- var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)
- var action = typeof option == 'string' ? option : options.slide
-
- if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))
- if (typeof option == 'number') data.to(option)
- else if (action) data[action]()
- else if (options.interval) data.pause().cycle()
- })
- }
-
- $.fn.carousel.Constructor = Carousel
-
-
- // CAROUSEL NO CONFLICT
- // ====================
-
- $.fn.carousel.noConflict = function () {
- $.fn.carousel = old
- return this
- }
-
-
- // CAROUSEL DATA-API
- // =================
-
- $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {
- var $this = $(this), href
- var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
- var options = $.extend({}, $target.data(), $this.data())
- var slideIndex = $this.attr('data-slide-to')
- if (slideIndex) options.interval = false
-
- $target.carousel(options)
-
- if (slideIndex = $this.attr('data-slide-to')) {
- $target.data('bs.carousel').to(slideIndex)
- }
-
- e.preventDefault()
- })
-
- $(window).on('load', function () {
- $('[data-ride="carousel"]').each(function () {
- var $carousel = $(this)
- $carousel.carousel($carousel.data())
- })
- })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: collapse.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#collapse
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // COLLAPSE PUBLIC CLASS DEFINITION
- // ================================
-
- var Collapse = function (element, options) {
- this.$element = $(element)
- this.options = $.extend({}, Collapse.DEFAULTS, options)
- this.transitioning = null
-
- if (this.options.parent) this.$parent = $(this.options.parent)
- if (this.options.toggle) this.toggle()
- }
-
- Collapse.DEFAULTS = {
- toggle: true
- }
-
- Collapse.prototype.dimension = function () {
- var hasWidth = this.$element.hasClass('width')
- return hasWidth ? 'width' : 'height'
- }
-
- Collapse.prototype.show = function () {
- if (this.transitioning || this.$element.hasClass('in')) return
-
- var startEvent = $.Event('show.bs.collapse')
- this.$element.trigger(startEvent)
- if (startEvent.isDefaultPrevented()) return
-
- var actives = this.$parent && this.$parent.find('> .panel > .in')
-
- if (actives && actives.length) {
- var hasData = actives.data('bs.collapse')
- if (hasData && hasData.transitioning) return
- actives.collapse('hide')
- hasData || actives.data('bs.collapse', null)
- }
-
- var dimension = this.dimension()
-
- this.$element
- .removeClass('collapse')
- .addClass('collapsing')
- [dimension](0)
-
- this.transitioning = 1
-
- var complete = function () {
- this.$element
- .removeClass('collapsing')
- .addClass('in')
- [dimension]('auto')
- this.transitioning = 0
- this.$element.trigger('shown.bs.collapse')
- }
-
- if (!$.support.transition) return complete.call(this)
-
- var scrollSize = $.camelCase(['scroll', dimension].join('-'))
-
- this.$element
- .one($.support.transition.end, $.proxy(complete, this))
- .emulateTransitionEnd(350)
- [dimension](this.$element[0][scrollSize])
- }
-
- Collapse.prototype.hide = function () {
- if (this.transitioning || !this.$element.hasClass('in')) return
-
- var startEvent = $.Event('hide.bs.collapse')
- this.$element.trigger(startEvent)
- if (startEvent.isDefaultPrevented()) return
-
- var dimension = this.dimension()
-
- this.$element
- [dimension](this.$element[dimension]())
- [0].offsetHeight
-
- this.$element
- .addClass('collapsing')
- .removeClass('collapse')
- .removeClass('in')
-
- this.transitioning = 1
-
- var complete = function () {
- this.transitioning = 0
- this.$element
- .trigger('hidden.bs.collapse')
- .removeClass('collapsing')
- .addClass('collapse')
- }
-
- if (!$.support.transition) return complete.call(this)
-
- this.$element
- [dimension](0)
- .one($.support.transition.end, $.proxy(complete, this))
- .emulateTransitionEnd(350)
- }
-
- Collapse.prototype.toggle = function () {
- this[this.$element.hasClass('in') ? 'hide' : 'show']()
- }
-
-
- // COLLAPSE PLUGIN DEFINITION
- // ==========================
-
- var old = $.fn.collapse
-
- $.fn.collapse = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.collapse')
- var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)
-
- if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- $.fn.collapse.Constructor = Collapse
-
-
- // COLLAPSE NO CONFLICT
- // ====================
-
- $.fn.collapse.noConflict = function () {
- $.fn.collapse = old
- return this
- }
-
-
- // COLLAPSE DATA-API
- // =================
-
- $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) {
- var $this = $(this), href
- var target = $this.attr('data-target')
- || e.preventDefault()
- || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
- var $target = $(target)
- var data = $target.data('bs.collapse')
- var option = data ? 'toggle' : $this.data()
- var parent = $this.attr('data-parent')
- var $parent = parent && $(parent)
-
- if (!data || !data.transitioning) {
- if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed')
- $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
- }
-
- $target.collapse(option)
- })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: dropdown.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#dropdowns
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // DROPDOWN CLASS DEFINITION
- // =========================
-
- var backdrop = '.dropdown-backdrop'
- var toggle = '[data-toggle=dropdown]'
- var Dropdown = function (element) {
- var $el = $(element).on('click.bs.dropdown', this.toggle)
- }
-
- Dropdown.prototype.toggle = function (e) {
- var $this = $(this)
-
- if ($this.is('.disabled, :disabled')) return
-
- var $parent = getParent($this)
- var isActive = $parent.hasClass('open')
-
- clearMenus()
-
- if (!isActive) {
- if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
- // if mobile we we use a backdrop because click events don't delegate
- $('
').insertAfter($(this)).on('click', clearMenus)
- }
-
- $parent.trigger(e = $.Event('show.bs.dropdown'))
-
- if (e.isDefaultPrevented()) return
-
- $parent
- .toggleClass('open')
- .trigger('shown.bs.dropdown')
-
- $this.focus()
- }
-
- return false
- }
-
- Dropdown.prototype.keydown = function (e) {
- if (!/(38|40|27)/.test(e.keyCode)) return
-
- var $this = $(this)
-
- e.preventDefault()
- e.stopPropagation()
-
- if ($this.is('.disabled, :disabled')) return
-
- var $parent = getParent($this)
- var isActive = $parent.hasClass('open')
-
- if (!isActive || (isActive && e.keyCode == 27)) {
- if (e.which == 27) $parent.find(toggle).focus()
- return $this.click()
- }
-
- var $items = $('[role=menu] li:not(.divider):visible a', $parent)
-
- if (!$items.length) return
-
- var index = $items.index($items.filter(':focus'))
-
- if (e.keyCode == 38 && index > 0) index-- // up
- if (e.keyCode == 40 && index < $items.length - 1) index++ // down
- if (!~index) index=0
-
- $items.eq(index).focus()
- }
-
- function clearMenus() {
- $(backdrop).remove()
- $(toggle).each(function (e) {
- var $parent = getParent($(this))
- if (!$parent.hasClass('open')) return
- $parent.trigger(e = $.Event('hide.bs.dropdown'))
- if (e.isDefaultPrevented()) return
- $parent.removeClass('open').trigger('hidden.bs.dropdown')
- })
- }
-
- function getParent($this) {
- var selector = $this.attr('data-target')
-
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
- }
-
- var $parent = selector && $(selector)
-
- return $parent && $parent.length ? $parent : $this.parent()
- }
-
-
- // DROPDOWN PLUGIN DEFINITION
- // ==========================
-
- var old = $.fn.dropdown
-
- $.fn.dropdown = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('dropdown')
-
- if (!data) $this.data('dropdown', (data = new Dropdown(this)))
- if (typeof option == 'string') data[option].call($this)
- })
- }
-
- $.fn.dropdown.Constructor = Dropdown
-
-
- // DROPDOWN NO CONFLICT
- // ====================
-
- $.fn.dropdown.noConflict = function () {
- $.fn.dropdown = old
- return this
- }
-
-
- // APPLY TO STANDARD DROPDOWN ELEMENTS
- // ===================================
-
- $(document)
- .on('click.bs.dropdown.data-api', clearMenus)
- .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
- .on('click.bs.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
- .on('keydown.bs.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: modal.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#modals
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // MODAL CLASS DEFINITION
- // ======================
-
- var Modal = function (element, options) {
- this.options = options
- this.$element = $(element)
- this.$backdrop =
- this.isShown = null
-
- if (this.options.remote) this.$element.load(this.options.remote)
- }
-
- Modal.DEFAULTS = {
- backdrop: true
- , keyboard: true
- , show: true
- }
-
- Modal.prototype.toggle = function (_relatedTarget) {
- return this[!this.isShown ? 'show' : 'hide'](_relatedTarget)
- }
-
- Modal.prototype.show = function (_relatedTarget) {
- var that = this
- var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })
-
- this.$element.trigger(e)
-
- if (this.isShown || e.isDefaultPrevented()) return
-
- this.isShown = true
-
- this.escape()
-
- this.$element.on('click.dismiss.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this))
-
- this.backdrop(function () {
- var transition = $.support.transition && that.$element.hasClass('fade')
-
- if (!that.$element.parent().length) {
- that.$element.appendTo(document.body) // don't move modals dom position
- }
-
- that.$element.show()
-
- if (transition) {
- that.$element[0].offsetWidth // force reflow
- }
-
- that.$element
- .addClass('in')
- .attr('aria-hidden', false)
-
- that.enforceFocus()
-
- var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
-
- transition ?
- that.$element.find('.modal-dialog') // wait for modal to slide in
- .one($.support.transition.end, function () {
- that.$element.focus().trigger(e)
- })
- .emulateTransitionEnd(300) :
- that.$element.focus().trigger(e)
- })
- }
-
- Modal.prototype.hide = function (e) {
- if (e) e.preventDefault()
-
- e = $.Event('hide.bs.modal')
-
- this.$element.trigger(e)
-
- if (!this.isShown || e.isDefaultPrevented()) return
-
- this.isShown = false
-
- this.escape()
-
- $(document).off('focusin.bs.modal')
-
- this.$element
- .removeClass('in')
- .attr('aria-hidden', true)
- .off('click.dismiss.modal')
-
- $.support.transition && this.$element.hasClass('fade') ?
- this.$element
- .one($.support.transition.end, $.proxy(this.hideModal, this))
- .emulateTransitionEnd(300) :
- this.hideModal()
- }
-
- Modal.prototype.enforceFocus = function () {
- $(document)
- .off('focusin.bs.modal') // guard against infinite focus loop
- .on('focusin.bs.modal', $.proxy(function (e) {
- if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {
- this.$element.focus()
- }
- }, this))
- }
-
- Modal.prototype.escape = function () {
- if (this.isShown && this.options.keyboard) {
- this.$element.on('keyup.dismiss.bs.modal', $.proxy(function (e) {
- e.which == 27 && this.hide()
- }, this))
- } else if (!this.isShown) {
- this.$element.off('keyup.dismiss.bs.modal')
- }
- }
-
- Modal.prototype.hideModal = function () {
- var that = this
- this.$element.hide()
- this.backdrop(function () {
- that.removeBackdrop()
- that.$element.trigger('hidden.bs.modal')
- })
- }
-
- Modal.prototype.removeBackdrop = function () {
- this.$backdrop && this.$backdrop.remove()
- this.$backdrop = null
- }
-
- Modal.prototype.backdrop = function (callback) {
- var that = this
- var animate = this.$element.hasClass('fade') ? 'fade' : ''
-
- if (this.isShown && this.options.backdrop) {
- var doAnimate = $.support.transition && animate
-
- this.$backdrop = $('
')
- .appendTo(document.body)
-
- this.$element.on('click.dismiss.modal', $.proxy(function (e) {
- if (e.target !== e.currentTarget) return
- this.options.backdrop == 'static'
- ? this.$element[0].focus.call(this.$element[0])
- : this.hide.call(this)
- }, this))
-
- if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
-
- this.$backdrop.addClass('in')
-
- if (!callback) return
-
- doAnimate ?
- this.$backdrop
- .one($.support.transition.end, callback)
- .emulateTransitionEnd(150) :
- callback()
-
- } else if (!this.isShown && this.$backdrop) {
- this.$backdrop.removeClass('in')
-
- $.support.transition && this.$element.hasClass('fade')?
- this.$backdrop
- .one($.support.transition.end, callback)
- .emulateTransitionEnd(150) :
- callback()
-
- } else if (callback) {
- callback()
- }
- }
-
-
- // MODAL PLUGIN DEFINITION
- // =======================
-
- var old = $.fn.modal
-
- $.fn.modal = function (option, _relatedTarget) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.modal')
- var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)
-
- if (!data) $this.data('bs.modal', (data = new Modal(this, options)))
- if (typeof option == 'string') data[option](_relatedTarget)
- else if (options.show) data.show(_relatedTarget)
- })
- }
-
- $.fn.modal.Constructor = Modal
-
-
- // MODAL NO CONFLICT
- // =================
-
- $.fn.modal.noConflict = function () {
- $.fn.modal = old
- return this
- }
-
-
- // MODAL DATA-API
- // ==============
-
- $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) {
- var $this = $(this)
- var href = $this.attr('href')
- var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
- var option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())
-
- e.preventDefault()
-
- $target
- .modal(option, this)
- .one('hide', function () {
- $this.is(':visible') && $this.focus()
- })
- })
-
- $(document)
- .on('show.bs.modal', '.modal', function () { $(document.body).addClass('modal-open') })
- .on('hidden.bs.modal', '.modal', function () { $(document.body).removeClass('modal-open') })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: tooltip.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#tooltip
- * Inspired by the original jQuery.tipsy by Jason Frame
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // TOOLTIP PUBLIC CLASS DEFINITION
- // ===============================
-
- var Tooltip = function (element, options) {
- this.type =
- this.options =
- this.enabled =
- this.timeout =
- this.hoverState =
- this.$element = null
-
- this.init('tooltip', element, options)
- }
-
- Tooltip.DEFAULTS = {
- animation: true
- , placement: 'top'
- , selector: false
- , template: '
'
- , trigger: 'hover focus'
- , title: ''
- , delay: 0
- , html: false
- , container: false
- }
-
- Tooltip.prototype.init = function (type, element, options) {
- this.enabled = true
- this.type = type
- this.$element = $(element)
- this.options = this.getOptions(options)
-
- var triggers = this.options.trigger.split(' ')
-
- for (var i = triggers.length; i--;) {
- var trigger = triggers[i]
-
- if (trigger == 'click') {
- this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
- } else if (trigger != 'manual') {
- var eventIn = trigger == 'hover' ? 'mouseenter' : 'focus'
- var eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'
-
- this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
- this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
- }
- }
-
- this.options.selector ?
- (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
- this.fixTitle()
- }
-
- Tooltip.prototype.getDefaults = function () {
- return Tooltip.DEFAULTS
- }
-
- Tooltip.prototype.getOptions = function (options) {
- options = $.extend({}, this.getDefaults(), this.$element.data(), options)
-
- if (options.delay && typeof options.delay == 'number') {
- options.delay = {
- show: options.delay
- , hide: options.delay
- }
- }
-
- return options
- }
-
- Tooltip.prototype.getDelegateOptions = function () {
- var options = {}
- var defaults = this.getDefaults()
-
- this._options && $.each(this._options, function (key, value) {
- if (defaults[key] != value) options[key] = value
- })
-
- return options
- }
-
- Tooltip.prototype.enter = function (obj) {
- var self = obj instanceof this.constructor ?
- obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)
-
- clearTimeout(self.timeout)
-
- self.hoverState = 'in'
-
- if (!self.options.delay || !self.options.delay.show) return self.show()
-
- self.timeout = setTimeout(function () {
- if (self.hoverState == 'in') self.show()
- }, self.options.delay.show)
- }
-
- Tooltip.prototype.leave = function (obj) {
- var self = obj instanceof this.constructor ?
- obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)
-
- clearTimeout(self.timeout)
-
- self.hoverState = 'out'
-
- if (!self.options.delay || !self.options.delay.hide) return self.hide()
-
- self.timeout = setTimeout(function () {
- if (self.hoverState == 'out') self.hide()
- }, self.options.delay.hide)
- }
-
- Tooltip.prototype.show = function () {
- var e = $.Event('show.bs.'+ this.type)
-
- if (this.hasContent() && this.enabled) {
- this.$element.trigger(e)
-
- if (e.isDefaultPrevented()) return
-
- var $tip = this.tip()
-
- this.setContent()
-
- if (this.options.animation) $tip.addClass('fade')
-
- var placement = typeof this.options.placement == 'function' ?
- this.options.placement.call(this, $tip[0], this.$element[0]) :
- this.options.placement
-
- var autoToken = /\s?auto?\s?/i
- var autoPlace = autoToken.test(placement)
- if (autoPlace) placement = placement.replace(autoToken, '') || 'top'
-
- $tip
- .detach()
- .css({ top: 0, left: 0, display: 'block' })
- .addClass(placement)
-
- this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
-
- var pos = this.getPosition()
- var actualWidth = $tip[0].offsetWidth
- var actualHeight = $tip[0].offsetHeight
-
- if (autoPlace) {
- var $parent = this.$element.parent()
-
- var orgPlacement = placement
- var docScroll = document.documentElement.scrollTop || document.body.scrollTop
- var parentWidth = this.options.container == 'body' ? window.innerWidth : $parent.outerWidth()
- var parentHeight = this.options.container == 'body' ? window.innerHeight : $parent.outerHeight()
- var parentLeft = this.options.container == 'body' ? 0 : $parent.offset().left
-
- placement = placement == 'bottom' && pos.top + pos.height + actualHeight - docScroll > parentHeight ? 'top' :
- placement == 'top' && pos.top - docScroll - actualHeight < 0 ? 'bottom' :
- placement == 'right' && pos.right + actualWidth > parentWidth ? 'left' :
- placement == 'left' && pos.left - actualWidth < parentLeft ? 'right' :
- placement
-
- $tip
- .removeClass(orgPlacement)
- .addClass(placement)
- }
-
- var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)
-
- this.applyPlacement(calculatedOffset, placement)
- this.$element.trigger('shown.bs.' + this.type)
- }
- }
-
- Tooltip.prototype.applyPlacement = function(offset, placement) {
- var replace
- var $tip = this.tip()
- var width = $tip[0].offsetWidth
- var height = $tip[0].offsetHeight
-
- // manually read margins because getBoundingClientRect includes difference
- var marginTop = parseInt($tip.css('margin-top'), 10)
- var marginLeft = parseInt($tip.css('margin-left'), 10)
-
- // we must check for NaN for ie 8/9
- if (isNaN(marginTop)) marginTop = 0
- if (isNaN(marginLeft)) marginLeft = 0
-
- offset.top = offset.top + marginTop
- offset.left = offset.left + marginLeft
-
- $tip
- .offset(offset)
- .addClass('in')
-
- // check to see if placing tip in new offset caused the tip to resize itself
- var actualWidth = $tip[0].offsetWidth
- var actualHeight = $tip[0].offsetHeight
-
- if (placement == 'top' && actualHeight != height) {
- replace = true
- offset.top = offset.top + height - actualHeight
- }
-
- if (/bottom|top/.test(placement)) {
- var delta = 0
-
- if (offset.left < 0) {
- delta = offset.left * -2
- offset.left = 0
-
- $tip.offset(offset)
-
- actualWidth = $tip[0].offsetWidth
- actualHeight = $tip[0].offsetHeight
- }
-
- this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')
- } else {
- this.replaceArrow(actualHeight - height, actualHeight, 'top')
- }
-
- if (replace) $tip.offset(offset)
- }
-
- Tooltip.prototype.replaceArrow = function(delta, dimension, position) {
- this.arrow().css(position, delta ? (50 * (1 - delta / dimension) + "%") : '')
- }
-
- Tooltip.prototype.setContent = function () {
- var $tip = this.tip()
- var title = this.getTitle()
-
- $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
- $tip.removeClass('fade in top bottom left right')
- }
-
- Tooltip.prototype.hide = function () {
- var that = this
- var $tip = this.tip()
- var e = $.Event('hide.bs.' + this.type)
-
- function complete() {
- if (that.hoverState != 'in') $tip.detach()
- }
-
- this.$element.trigger(e)
-
- if (e.isDefaultPrevented()) return
-
- $tip.removeClass('in')
-
- $.support.transition && this.$tip.hasClass('fade') ?
- $tip
- .one($.support.transition.end, complete)
- .emulateTransitionEnd(150) :
- complete()
-
- this.$element.trigger('hidden.bs.' + this.type)
-
- return this
- }
-
- Tooltip.prototype.fixTitle = function () {
- var $e = this.$element
- if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
- $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
- }
- }
-
- Tooltip.prototype.hasContent = function () {
- return this.getTitle()
- }
-
- Tooltip.prototype.getPosition = function () {
- var el = this.$element[0]
- return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {
- width: el.offsetWidth
- , height: el.offsetHeight
- }, this.$element.offset())
- }
-
- Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {
- return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } :
- placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :
- placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :
- /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }
- }
-
- Tooltip.prototype.getTitle = function () {
- var title
- var $e = this.$element
- var o = this.options
-
- title = $e.attr('data-original-title')
- || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
-
- return title
- }
-
- Tooltip.prototype.tip = function () {
- return this.$tip = this.$tip || $(this.options.template)
- }
-
- Tooltip.prototype.arrow = function () {
- return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')
- }
-
- Tooltip.prototype.validate = function () {
- if (!this.$element[0].parentNode) {
- this.hide()
- this.$element = null
- this.options = null
- }
- }
-
- Tooltip.prototype.enable = function () {
- this.enabled = true
- }
-
- Tooltip.prototype.disable = function () {
- this.enabled = false
- }
-
- Tooltip.prototype.toggleEnabled = function () {
- this.enabled = !this.enabled
- }
-
- Tooltip.prototype.toggle = function (e) {
- var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this
- self.tip().hasClass('in') ? self.leave(self) : self.enter(self)
- }
-
- Tooltip.prototype.destroy = function () {
- this.hide().$element.off('.' + this.type).removeData('bs.' + this.type)
- }
-
-
- // TOOLTIP PLUGIN DEFINITION
- // =========================
-
- var old = $.fn.tooltip
-
- $.fn.tooltip = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.tooltip')
- var options = typeof option == 'object' && option
-
- if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- $.fn.tooltip.Constructor = Tooltip
-
-
- // TOOLTIP NO CONFLICT
- // ===================
-
- $.fn.tooltip.noConflict = function () {
- $.fn.tooltip = old
- return this
- }
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: popover.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#popovers
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // POPOVER PUBLIC CLASS DEFINITION
- // ===============================
-
- var Popover = function (element, options) {
- this.init('popover', element, options)
- }
-
- if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
-
- Popover.DEFAULTS = $.extend({} , $.fn.tooltip.Constructor.DEFAULTS, {
- placement: 'right'
- , trigger: 'click'
- , content: ''
- , template: '
'
- })
-
-
- // NOTE: POPOVER EXTENDS tooltip.js
- // ================================
-
- Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype)
-
- Popover.prototype.constructor = Popover
-
- Popover.prototype.getDefaults = function () {
- return Popover.DEFAULTS
- }
-
- Popover.prototype.setContent = function () {
- var $tip = this.tip()
- var title = this.getTitle()
- var content = this.getContent()
-
- $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
- $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
-
- $tip.removeClass('fade top bottom left right in')
-
- // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do
- // this manually by checking the contents.
- if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()
- }
-
- Popover.prototype.hasContent = function () {
- return this.getTitle() || this.getContent()
- }
-
- Popover.prototype.getContent = function () {
- var $e = this.$element
- var o = this.options
-
- return $e.attr('data-content')
- || (typeof o.content == 'function' ?
- o.content.call($e[0]) :
- o.content)
- }
-
- Popover.prototype.arrow = function () {
- return this.$arrow = this.$arrow || this.tip().find('.arrow')
- }
-
- Popover.prototype.tip = function () {
- if (!this.$tip) this.$tip = $(this.options.template)
- return this.$tip
- }
-
-
- // POPOVER PLUGIN DEFINITION
- // =========================
-
- var old = $.fn.popover
-
- $.fn.popover = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.popover')
- var options = typeof option == 'object' && option
-
- if (!data) $this.data('bs.popover', (data = new Popover(this, options)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- $.fn.popover.Constructor = Popover
-
-
- // POPOVER NO CONFLICT
- // ===================
-
- $.fn.popover.noConflict = function () {
- $.fn.popover = old
- return this
- }
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: scrollspy.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#scrollspy
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // SCROLLSPY CLASS DEFINITION
- // ==========================
-
- function ScrollSpy(element, options) {
- var href
- var process = $.proxy(this.process, this)
-
- this.$element = $(element).is('body') ? $(window) : $(element)
- this.$body = $('body')
- this.$scrollElement = this.$element.on('scroll.bs.scroll-spy.data-api', process)
- this.options = $.extend({}, ScrollSpy.DEFAULTS, options)
- this.selector = (this.options.target
- || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
- || '') + ' .nav li > a'
- this.offsets = $([])
- this.targets = $([])
- this.activeTarget = null
-
- this.refresh()
- this.process()
- }
-
- ScrollSpy.DEFAULTS = {
- offset: 10
- }
-
- ScrollSpy.prototype.refresh = function () {
- var offsetMethod = this.$element[0] == window ? 'offset' : 'position'
-
- this.offsets = $([])
- this.targets = $([])
-
- var self = this
- var $targets = this.$body
- .find(this.selector)
- .map(function () {
- var $el = $(this)
- var href = $el.data('target') || $el.attr('href')
- var $href = /^#\w/.test(href) && $(href)
-
- return ($href
- && $href.length
- && [[ $href[offsetMethod]().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href ]]) || null
- })
- .sort(function (a, b) { return a[0] - b[0] })
- .each(function () {
- self.offsets.push(this[0])
- self.targets.push(this[1])
- })
- }
-
- ScrollSpy.prototype.process = function () {
- var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
- var scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
- var maxScroll = scrollHeight - this.$scrollElement.height()
- var offsets = this.offsets
- var targets = this.targets
- var activeTarget = this.activeTarget
- var i
-
- if (scrollTop >= maxScroll) {
- return activeTarget != (i = targets.last()[0]) && this.activate(i)
- }
-
- for (i = offsets.length; i--;) {
- activeTarget != targets[i]
- && scrollTop >= offsets[i]
- && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
- && this.activate( targets[i] )
- }
- }
-
- ScrollSpy.prototype.activate = function (target) {
- this.activeTarget = target
-
- $(this.selector)
- .parents('.active')
- .removeClass('active')
-
- var selector = this.selector
- + '[data-target="' + target + '"],'
- + this.selector + '[href="' + target + '"]'
-
- var active = $(selector)
- .parents('li')
- .addClass('active')
-
- if (active.parent('.dropdown-menu').length) {
- active = active
- .closest('li.dropdown')
- .addClass('active')
- }
-
- active.trigger('activate')
- }
-
-
- // SCROLLSPY PLUGIN DEFINITION
- // ===========================
-
- var old = $.fn.scrollspy
-
- $.fn.scrollspy = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.scrollspy')
- var options = typeof option == 'object' && option
-
- if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- $.fn.scrollspy.Constructor = ScrollSpy
-
-
- // SCROLLSPY NO CONFLICT
- // =====================
-
- $.fn.scrollspy.noConflict = function () {
- $.fn.scrollspy = old
- return this
- }
-
-
- // SCROLLSPY DATA-API
- // ==================
-
- $(window).on('load', function () {
- $('[data-spy="scroll"]').each(function () {
- var $spy = $(this)
- $spy.scrollspy($spy.data())
- })
- })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: tab.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#tabs
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // TAB CLASS DEFINITION
- // ====================
-
- var Tab = function (element) {
- this.element = $(element)
- }
-
- Tab.prototype.show = function () {
- var $this = this.element
- var $ul = $this.closest('ul:not(.dropdown-menu)')
- var selector = $this.attr('data-target')
-
- if (!selector) {
- selector = $this.attr('href')
- selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
- }
-
- if ($this.parent('li').hasClass('active')) return
-
- var previous = $ul.find('.active:last a')[0]
- var e = $.Event('show.bs.tab', {
- relatedTarget: previous
- })
-
- $this.trigger(e)
-
- if (e.isDefaultPrevented()) return
-
- var $target = $(selector)
-
- this.activate($this.parent('li'), $ul)
- this.activate($target, $target.parent(), function () {
- $this.trigger({
- type: 'shown.bs.tab'
- , relatedTarget: previous
- })
- })
- }
-
- Tab.prototype.activate = function (element, container, callback) {
- var $active = container.find('> .active')
- var transition = callback
- && $.support.transition
- && $active.hasClass('fade')
-
- function next() {
- $active
- .removeClass('active')
- .find('> .dropdown-menu > .active')
- .removeClass('active')
-
- element.addClass('active')
-
- if (transition) {
- element[0].offsetWidth // reflow for transition
- element.addClass('in')
- } else {
- element.removeClass('fade')
- }
-
- if (element.parent('.dropdown-menu')) {
- element.closest('li.dropdown').addClass('active')
- }
-
- callback && callback()
- }
-
- transition ?
- $active
- .one($.support.transition.end, next)
- .emulateTransitionEnd(150) :
- next()
-
- $active.removeClass('in')
- }
-
-
- // TAB PLUGIN DEFINITION
- // =====================
-
- var old = $.fn.tab
-
- $.fn.tab = function ( option ) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.tab')
-
- if (!data) $this.data('bs.tab', (data = new Tab(this)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- $.fn.tab.Constructor = Tab
-
-
- // TAB NO CONFLICT
- // ===============
-
- $.fn.tab.noConflict = function () {
- $.fn.tab = old
- return this
- }
-
-
- // TAB DATA-API
- // ============
-
- $(document).on('click.bs.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
- e.preventDefault()
- $(this).tab('show')
- })
-
-}(window.jQuery);
-
-/* ========================================================================
- * Bootstrap: affix.js v3.0.0
- * http://twbs.github.com/bootstrap/javascript.html#affix
- * ========================================================================
- * Copyright 2012 Twitter, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ======================================================================== */
-
-
-+function ($) { "use strict";
-
- // AFFIX CLASS DEFINITION
- // ======================
-
- var Affix = function (element, options) {
- this.options = $.extend({}, Affix.DEFAULTS, options)
- this.$window = $(window)
- .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))
- .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))
-
- this.$element = $(element)
- this.affixed =
- this.unpin = null
-
- this.checkPosition()
- }
-
- Affix.RESET = 'affix affix-top affix-bottom'
-
- Affix.DEFAULTS = {
- offset: 0
- }
-
- Affix.prototype.checkPositionWithEventLoop = function () {
- setTimeout($.proxy(this.checkPosition, this), 1)
- }
-
- Affix.prototype.checkPosition = function () {
- if (!this.$element.is(':visible')) return
-
- var scrollHeight = $(document).height()
- var scrollTop = this.$window.scrollTop()
- var position = this.$element.offset()
- var offset = this.options.offset
- var offsetTop = offset.top
- var offsetBottom = offset.bottom
-
- if (typeof offset != 'object') offsetBottom = offsetTop = offset
- if (typeof offsetTop == 'function') offsetTop = offset.top()
- if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
-
- var affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ? false :
- offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? 'bottom' :
- offsetTop != null && (scrollTop <= offsetTop) ? 'top' : false
-
- if (this.affixed === affix) return
- if (this.unpin) this.$element.css('top', '')
-
- this.affixed = affix
- this.unpin = affix == 'bottom' ? position.top - scrollTop : null
-
- this.$element.removeClass(Affix.RESET).addClass('affix' + (affix ? '-' + affix : ''))
-
- if (affix == 'bottom') {
- this.$element.offset({ top: document.body.offsetHeight - offsetBottom - this.$element.height() })
- }
- }
-
-
- // AFFIX PLUGIN DEFINITION
- // =======================
-
- var old = $.fn.affix
-
- $.fn.affix = function (option) {
- return this.each(function () {
- var $this = $(this)
- var data = $this.data('bs.affix')
- var options = typeof option == 'object' && option
-
- if (!data) $this.data('bs.affix', (data = new Affix(this, options)))
- if (typeof option == 'string') data[option]()
- })
- }
-
- $.fn.affix.Constructor = Affix
-
-
- // AFFIX NO CONFLICT
- // =================
-
- $.fn.affix.noConflict = function () {
- $.fn.affix = old
- return this
- }
-
-
- // AFFIX DATA-API
- // ==============
-
- $(window).on('load', function () {
- $('[data-spy="affix"]').each(function () {
- var $spy = $(this)
- var data = $spy.data()
-
- data.offset = data.offset || {}
-
- if (data.offsetBottom) data.offset.bottom = data.offsetBottom
- if (data.offsetTop) data.offset.top = data.offsetTop
-
- $spy.affix(data)
- })
- })
-
-}(window.jQuery);
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/website/js/bootstrap.min.js b/Godeps/_workspace/src/github.com/gocql/gocql/website/js/bootstrap.min.js
deleted file mode 100644
index 1765631f41..0000000000
--- a/Godeps/_workspace/src/github.com/gocql/gocql/website/js/bootstrap.min.js
+++ /dev/null
@@ -1,6 +0,0 @@
-/**
-* bootstrap.js v3.0.0 by @fat and @mdo
-* Copyright 2013 Twitter Inc.
-* http://www.apache.org/licenses/LICENSE-2.0
-*/
-if(!jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(window.jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]');if(a.length){var b=this.$element.find("input").prop("checked",!this.$element.hasClass("active")).trigger("change");"radio"===b.prop("type")&&a.find(".active").removeClass("active")}this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(window.jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)}).emulateTransitionEnd(600)}else{if(this.$element.trigger(j),j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(){this.$element.removeClass("collapsing").addClass("in")[e]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?(this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350),void 0):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle=collapse][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(window.jQuery),+function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('
').insertAfter(a(this)).on("click",b),f.trigger(d=a.Event("show.bs.dropdown")),d.isDefaultPrevented())return;f.toggleClass("open").trigger("shown.bs.dropdown"),e.focus()}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).focus(),d.click();var h=a("[role=menu] li:not(.divider):visible a",f);if(h.length){var i=h.index(h.filter(":focus"));38==b.keyCode&&i>0&&i--,40==b.keyCode&&i
').appendTo(document.body),this.$element.on("click.dismiss.modal",a.proxy(function(a){a.target===a.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus.call(this.$element[0]):this.hide.call(this))},this)),d&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!b)return;d?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,b).emulateTransitionEnd(150):b()):b&&b()};var c=a.fn.modal;a.fn.modal=function(c,d){return this.each(function(){var e=a(this),f=e.data("bs.modal"),g=a.extend({},b.DEFAULTS,e.data(),"object"==typeof c&&c);f||e.data("bs.modal",f=new b(this,g)),"string"==typeof c?f[c](d):g.show&&f.show(d)})},a.fn.modal.Constructor=b,a.fn.modal.noConflict=function(){return a.fn.modal=c,this},a(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d=c.attr("href"),e=a(c.attr("data-target")||d&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({remote:!/#/.test(d)&&d},e.data(),c.data());b.preventDefault(),e.modal(f,this).one("hide",function(){c.is(":visible")&&c.focus()})}),a(document).on("show.bs.modal",".modal",function(){a(document.body).addClass("modal-open")}).on("hidden.bs.modal",".modal",function(){a(document.body).removeClass("modal-open")})}(window.jQuery),+function(a){"use strict";var b=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",a,b)};b.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},b.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d);for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focus",i="hover"==g?"mouseleave":"blur";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},b.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},b.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show),void 0):c.show()},b.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide),void 0):c.hide()},b.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){if(this.$element.trigger(b),b.isDefaultPrevented())return;var c=this.tip();this.setContent(),this.options.animation&&c.addClass("fade");var d="function"==typeof this.options.placement?this.options.placement.call(this,c[0],this.$element[0]):this.options.placement,e=/\s?auto?\s?/i,f=e.test(d);f&&(d=d.replace(e,"")||"top"),c.detach().css({top:0,left:0,display:"block"}).addClass(d),this.options.container?c.appendTo(this.options.container):c.insertAfter(this.$element);var g=this.getPosition(),h=c[0].offsetWidth,i=c[0].offsetHeight;if(f){var j=this.$element.parent(),k=d,l=document.documentElement.scrollTop||document.body.scrollTop,m="body"==this.options.container?window.innerWidth:j.outerWidth(),n="body"==this.options.container?window.innerHeight:j.outerHeight(),o="body"==this.options.container?0:j.offset().left;d="bottom"==d&&g.top+g.height+i-l>n?"top":"top"==d&&g.top-l-i<0?"bottom":"right"==d&&g.right+h>m?"left":"left"==d&&g.left-h
'}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content")[this.options.html?"html":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof c&&c;e||d.data("bs.popover",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(window.jQuery),+function(a){"use strict";function b(c,d){var e,f=a.proxy(this.process,this);this.$element=a(c).is("body")?a(window):a(c),this.$body=a("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",f),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||(e=a(c).attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=a([]),this.targets=a([]),this.activeTarget=null,this.refresh(),this.process()}b.DEFAULTS={offset:10},b.prototype.refresh=function(){var b=this.$element[0]==window?"offset":"position";this.offsets=a([]),this.targets=a([]);var c=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#\w/.test(e)&&a(e);return f&&f.length&&[[f[b]().top+(!a.isWindow(c.$scrollElement.get(0))&&c.$scrollElement.scrollTop()),e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){c.offsets.push(this[0]),c.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,d=c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(b>=d)return g!=(a=f.last()[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parents(".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate")};var c=a.fn.scrollspy;a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=c,this},a(window).on("load",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.parent("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},b.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),f.removeClass("in")};var c=a.fn.tab;a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new b(this)),"string"==typeof c&&e[c]()})},a.fn.tab.Constructor=b,a.fn.tab.noConflict=function(){return a.fn.tab=c,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.options=a.extend({},b.DEFAULTS,d),this.$window=a(window).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(c),this.affixed=this.unpin=null,this.checkPosition()};b.RESET="affix affix-top affix-bottom",b.DEFAULTS={offset:0},b.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},b.prototype.checkPosition=function(){if(this.$element.is(":visible")){var c=a(document).height(),d=this.$window.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top()),"function"==typeof h&&(h=f.bottom());var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=c-h?"bottom":null!=g&&g>=d?"top":!1;this.affixed!==i&&(this.unpin&&this.$element.css("top",""),this.affixed=i,this.unpin="bottom"==i?e.top-d:null,this.$element.removeClass(b.RESET).addClass("affix"+(i?"-"+i:"")),"bottom"==i&&this.$element.offset({top:document.body.offsetHeight-h-this.$element.height()}))}};var c=a.fn.affix;a.fn.affix=function(c){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof c&&c;e||d.data("bs.affix",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.affix.Constructor=b,a.fn.affix.noConflict=function(){return a.fn.affix=c,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var b=a(this),c=b.data();c.offset=c.offset||{},c.offsetBottom&&(c.offset.bottom=c.offsetBottom),c.offsetTop&&(c.offset.top=c.offsetTop),b.affix(c)})})}(window.jQuery);
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/encode.go b/Godeps/_workspace/src/github.com/golang/snappy/encode.go
deleted file mode 100644
index f3b5484bc7..0000000000
--- a/Godeps/_workspace/src/github.com/golang/snappy/encode.go
+++ /dev/null
@@ -1,254 +0,0 @@
-// Copyright 2011 The Snappy-Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package snappy
-
-import (
- "encoding/binary"
- "io"
-)
-
-// We limit how far copy back-references can go, the same as the C++ code.
-const maxOffset = 1 << 15
-
-// emitLiteral writes a literal chunk and returns the number of bytes written.
-func emitLiteral(dst, lit []byte) int {
- i, n := 0, uint(len(lit)-1)
- switch {
- case n < 60:
- dst[0] = uint8(n)<<2 | tagLiteral
- i = 1
- case n < 1<<8:
- dst[0] = 60<<2 | tagLiteral
- dst[1] = uint8(n)
- i = 2
- case n < 1<<16:
- dst[0] = 61<<2 | tagLiteral
- dst[1] = uint8(n)
- dst[2] = uint8(n >> 8)
- i = 3
- case n < 1<<24:
- dst[0] = 62<<2 | tagLiteral
- dst[1] = uint8(n)
- dst[2] = uint8(n >> 8)
- dst[3] = uint8(n >> 16)
- i = 4
- case int64(n) < 1<<32:
- dst[0] = 63<<2 | tagLiteral
- dst[1] = uint8(n)
- dst[2] = uint8(n >> 8)
- dst[3] = uint8(n >> 16)
- dst[4] = uint8(n >> 24)
- i = 5
- default:
- panic("snappy: source buffer is too long")
- }
- if copy(dst[i:], lit) != len(lit) {
- panic("snappy: destination buffer is too short")
- }
- return i + len(lit)
-}
-
-// emitCopy writes a copy chunk and returns the number of bytes written.
-func emitCopy(dst []byte, offset, length int) int {
- i := 0
- for length > 0 {
- x := length - 4
- if 0 <= x && x < 1<<3 && offset < 1<<11 {
- dst[i+0] = uint8(offset>>8)&0x07<<5 | uint8(x)<<2 | tagCopy1
- dst[i+1] = uint8(offset)
- i += 2
- break
- }
-
- x = length
- if x > 1<<6 {
- x = 1 << 6
- }
- dst[i+0] = uint8(x-1)<<2 | tagCopy2
- dst[i+1] = uint8(offset)
- dst[i+2] = uint8(offset >> 8)
- i += 3
- length -= x
- }
- return i
-}
-
-// Encode returns the encoded form of src. The returned slice may be a sub-
-// slice of dst if dst was large enough to hold the entire encoded block.
-// Otherwise, a newly allocated slice will be returned.
-// It is valid to pass a nil dst.
-func Encode(dst, src []byte) []byte {
- if n := MaxEncodedLen(len(src)); len(dst) < n {
- dst = make([]byte, n)
- }
-
- // The block starts with the varint-encoded length of the decompressed bytes.
- d := binary.PutUvarint(dst, uint64(len(src)))
-
- // Return early if src is short.
- if len(src) <= 4 {
- if len(src) != 0 {
- d += emitLiteral(dst[d:], src)
- }
- return dst[:d]
- }
-
- // Initialize the hash table. Its size ranges from 1<<8 to 1<<14 inclusive.
- const maxTableSize = 1 << 14
- shift, tableSize := uint(32-8), 1<<8
- for tableSize < maxTableSize && tableSize < len(src) {
- shift--
- tableSize *= 2
- }
- var table [maxTableSize]int
-
- // Iterate over the source bytes.
- var (
- s int // The iterator position.
- t int // The last position with the same hash as s.
- lit int // The start position of any pending literal bytes.
- )
- for s+3 < len(src) {
- // Update the hash table.
- b0, b1, b2, b3 := src[s], src[s+1], src[s+2], src[s+3]
- h := uint32(b0) | uint32(b1)<<8 | uint32(b2)<<16 | uint32(b3)<<24
- p := &table[(h*0x1e35a7bd)>>shift]
- // We need to to store values in [-1, inf) in table. To save
- // some initialization time, (re)use the table's zero value
- // and shift the values against this zero: add 1 on writes,
- // subtract 1 on reads.
- t, *p = *p-1, s+1
- // If t is invalid or src[s:s+4] differs from src[t:t+4], accumulate a literal byte.
- if t < 0 || s-t >= maxOffset || b0 != src[t] || b1 != src[t+1] || b2 != src[t+2] || b3 != src[t+3] {
- s++
- continue
- }
- // Otherwise, we have a match. First, emit any pending literal bytes.
- if lit != s {
- d += emitLiteral(dst[d:], src[lit:s])
- }
- // Extend the match to be as long as possible.
- s0 := s
- s, t = s+4, t+4
- for s < len(src) && src[s] == src[t] {
- s++
- t++
- }
- // Emit the copied bytes.
- d += emitCopy(dst[d:], s-t, s-s0)
- lit = s
- }
-
- // Emit any final pending literal bytes and return.
- if lit != len(src) {
- d += emitLiteral(dst[d:], src[lit:])
- }
- return dst[:d]
-}
-
-// MaxEncodedLen returns the maximum length of a snappy block, given its
-// uncompressed length.
-func MaxEncodedLen(srcLen int) int {
- // Compressed data can be defined as:
- // compressed := item* literal*
- // item := literal* copy
- //
- // The trailing literal sequence has a space blowup of at most 62/60
- // since a literal of length 60 needs one tag byte + one extra byte
- // for length information.
- //
- // Item blowup is trickier to measure. Suppose the "copy" op copies
- // 4 bytes of data. Because of a special check in the encoding code,
- // we produce a 4-byte copy only if the offset is < 65536. Therefore
- // the copy op takes 3 bytes to encode, and this type of item leads
- // to at most the 62/60 blowup for representing literals.
- //
- // Suppose the "copy" op copies 5 bytes of data. If the offset is big
- // enough, it will take 5 bytes to encode the copy op. Therefore the
- // worst case here is a one-byte literal followed by a five-byte copy.
- // That is, 6 bytes of input turn into 7 bytes of "compressed" data.
- //
- // This last factor dominates the blowup, so the final estimate is:
- return 32 + srcLen + srcLen/6
-}
-
-// NewWriter returns a new Writer that compresses to w, using the framing
-// format described at
-// https://github.com/google/snappy/blob/master/framing_format.txt
-func NewWriter(w io.Writer) *Writer {
- return &Writer{
- w: w,
- enc: make([]byte, MaxEncodedLen(maxUncompressedChunkLen)),
- }
-}
-
-// Writer is an io.Writer than can write Snappy-compressed bytes.
-type Writer struct {
- w io.Writer
- err error
- enc []byte
- buf [checksumSize + chunkHeaderSize]byte
- wroteHeader bool
-}
-
-// Reset discards the writer's state and switches the Snappy writer to write to
-// w. This permits reusing a Writer rather than allocating a new one.
-func (w *Writer) Reset(writer io.Writer) {
- w.w = writer
- w.err = nil
- w.wroteHeader = false
-}
-
-// Write satisfies the io.Writer interface.
-func (w *Writer) Write(p []byte) (n int, errRet error) {
- if w.err != nil {
- return 0, w.err
- }
- if !w.wroteHeader {
- copy(w.enc, magicChunk)
- if _, err := w.w.Write(w.enc[:len(magicChunk)]); err != nil {
- w.err = err
- return n, err
- }
- w.wroteHeader = true
- }
- for len(p) > 0 {
- var uncompressed []byte
- if len(p) > maxUncompressedChunkLen {
- uncompressed, p = p[:maxUncompressedChunkLen], p[maxUncompressedChunkLen:]
- } else {
- uncompressed, p = p, nil
- }
- checksum := crc(uncompressed)
-
- // Compress the buffer, discarding the result if the improvement
- // isn't at least 12.5%.
- chunkType := uint8(chunkTypeCompressedData)
- chunkBody := Encode(w.enc, uncompressed)
- if len(chunkBody) >= len(uncompressed)-len(uncompressed)/8 {
- chunkType, chunkBody = chunkTypeUncompressedData, uncompressed
- }
-
- chunkLen := 4 + len(chunkBody)
- w.buf[0] = chunkType
- w.buf[1] = uint8(chunkLen >> 0)
- w.buf[2] = uint8(chunkLen >> 8)
- w.buf[3] = uint8(chunkLen >> 16)
- w.buf[4] = uint8(checksum >> 0)
- w.buf[5] = uint8(checksum >> 8)
- w.buf[6] = uint8(checksum >> 16)
- w.buf[7] = uint8(checksum >> 24)
- if _, err := w.w.Write(w.buf[:]); err != nil {
- w.err = err
- return n, err
- }
- if _, err := w.w.Write(chunkBody); err != nil {
- w.err = err
- return n, err
- }
- n += len(uncompressed)
- }
- return n, nil
-}
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/test_util.go b/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/test_util.go
deleted file mode 100644
index 116e949337..0000000000
--- a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/test_util.go
+++ /dev/null
@@ -1,27 +0,0 @@
-package coordinate
-
-import (
- "math"
- "testing"
-)
-
-// verifyEqualFloats will compare f1 and f2 and fail if they are not
-// "equal" within a threshold.
-func verifyEqualFloats(t *testing.T, f1 float64, f2 float64) {
- const zeroThreshold = 1.0e-6
- if math.Abs(f1-f2) > zeroThreshold {
- t.Fatalf("equal assertion fail, %9.6f != %9.6f", f1, f2)
- }
-}
-
-// verifyEqualVectors will compare vec1 and vec2 and fail if they are not
-// "equal" within a threshold.
-func verifyEqualVectors(t *testing.T, vec1 []float64, vec2 []float64) {
- if len(vec1) != len(vec2) {
- t.Fatalf("vector length mismatch, %d != %d", len(vec1), len(vec2))
- }
-
- for i, _ := range vec1 {
- verifyEqualFloats(t, vec1[i], vec2[i])
- }
-}
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-1 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-1
deleted file mode 100644
index 1910281566..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-1
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-10 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-10
deleted file mode 100644
index 4d5f9756e5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-10
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-100 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-100
deleted file mode 100644
index bc4f6a3f49..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-100
+++ /dev/null
@@ -1 +0,0 @@
-ends_with(str, 'SStr')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-101 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-101
deleted file mode 100644
index 81bf07a7a1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-101
+++ /dev/null
@@ -1 +0,0 @@
-ends_with(str, 'foo')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-102 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-102
deleted file mode 100644
index 3225de9139..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-102
+++ /dev/null
@@ -1 +0,0 @@
-floor(`1.2`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-103 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-103
deleted file mode 100644
index 8cac959582..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-103
+++ /dev/null
@@ -1 +0,0 @@
-floor(decimals[0])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-104 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-104
deleted file mode 100644
index bd76f47e21..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-104
+++ /dev/null
@@ -1 +0,0 @@
-floor(foo)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-105 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-105
deleted file mode 100644
index c719add3de..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-105
+++ /dev/null
@@ -1 +0,0 @@
-length('abc')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-106 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-106
deleted file mode 100644
index ff12f04f14..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-106
+++ /dev/null
@@ -1 +0,0 @@
-length('')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-107 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-107
deleted file mode 100644
index 0eccba1d3a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-107
+++ /dev/null
@@ -1 +0,0 @@
-length(@)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-108 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-108
deleted file mode 100644
index ab14b0fa8e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-108
+++ /dev/null
@@ -1 +0,0 @@
-length(strings[0])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-109 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-109
deleted file mode 100644
index f1514bb743..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-109
+++ /dev/null
@@ -1 +0,0 @@
-length(str)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-110 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-110
deleted file mode 100644
index 09276059a2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-110
+++ /dev/null
@@ -1 +0,0 @@
-length(array)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-112 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-112
deleted file mode 100644
index ab14b0fa8e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-112
+++ /dev/null
@@ -1 +0,0 @@
-length(strings[0])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-115 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-115
deleted file mode 100644
index bfb41ae987..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-115
+++ /dev/null
@@ -1 +0,0 @@
-max(strings)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-118 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-118
deleted file mode 100644
index 915ec172ae..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-118
+++ /dev/null
@@ -1 +0,0 @@
-merge(`{}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-119 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-119
deleted file mode 100644
index 5b74e9b593..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-119
+++ /dev/null
@@ -1 +0,0 @@
-merge(`{}`, `{}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-12 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-12
deleted file mode 100644
index 64c5e5885a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-12
+++ /dev/null
@@ -1 +0,0 @@
-two
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-120 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-120
deleted file mode 100644
index f34dcd8fad..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-120
+++ /dev/null
@@ -1 +0,0 @@
-merge(`{"a": 1}`, `{"b": 2}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-121 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-121
deleted file mode 100644
index e335dc96fe..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-121
+++ /dev/null
@@ -1 +0,0 @@
-merge(`{"a": 1}`, `{"a": 2}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-122 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-122
deleted file mode 100644
index aac28fffeb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-122
+++ /dev/null
@@ -1 +0,0 @@
-merge(`{"a": 1, "b": 2}`, `{"a": 2, "c": 3}`, `{"d": 4}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-123 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-123
deleted file mode 100644
index 1c6fd67198..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-123
+++ /dev/null
@@ -1 +0,0 @@
-min(numbers)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-126 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-126
deleted file mode 100644
index 93e68db775..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-126
+++ /dev/null
@@ -1 +0,0 @@
-min(decimals)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-128 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-128
deleted file mode 100644
index 554601ea42..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-128
+++ /dev/null
@@ -1 +0,0 @@
-type('abc')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-129 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-129
deleted file mode 100644
index 1ab2d9834f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-129
+++ /dev/null
@@ -1 +0,0 @@
-type(`1.0`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-13 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-13
deleted file mode 100644
index 1d19714ffb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-13
+++ /dev/null
@@ -1 +0,0 @@
-three
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-130 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-130
deleted file mode 100644
index 3cee2f56f1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-130
+++ /dev/null
@@ -1 +0,0 @@
-type(`2`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-131 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-131
deleted file mode 100644
index 4821f9aefc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-131
+++ /dev/null
@@ -1 +0,0 @@
-type(`true`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-132 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-132
deleted file mode 100644
index 40b6913a6c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-132
+++ /dev/null
@@ -1 +0,0 @@
-type(`false`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-133 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-133
deleted file mode 100644
index c711252be2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-133
+++ /dev/null
@@ -1 +0,0 @@
-type(`null`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-134 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-134
deleted file mode 100644
index ec5d07e95c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-134
+++ /dev/null
@@ -1 +0,0 @@
-type(`[0]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-135 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-135
deleted file mode 100644
index 2080401e1e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-135
+++ /dev/null
@@ -1 +0,0 @@
-type(`{"a": "b"}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-136 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-136
deleted file mode 100644
index c5ee2ba5cb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-136
+++ /dev/null
@@ -1 +0,0 @@
-type(@)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-137 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-137
deleted file mode 100644
index 1814ca17b8..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-137
+++ /dev/null
@@ -1 +0,0 @@
-keys(objects)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-138 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-138
deleted file mode 100644
index e03cdb0d64..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-138
+++ /dev/null
@@ -1 +0,0 @@
-values(objects)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-139 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-139
deleted file mode 100644
index 7fea8d2ce5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-139
+++ /dev/null
@@ -1 +0,0 @@
-keys(empty_hash)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-14 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-14
deleted file mode 100644
index a17c92f597..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-14
+++ /dev/null
@@ -1 +0,0 @@
-one.two
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-140 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-140
deleted file mode 100644
index 4f1d882a40..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-140
+++ /dev/null
@@ -1 +0,0 @@
-join(', ', strings)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-141 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-141
deleted file mode 100644
index 4f1d882a40..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-141
+++ /dev/null
@@ -1 +0,0 @@
-join(', ', strings)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-142 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-142
deleted file mode 100644
index 19ec1fe090..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-142
+++ /dev/null
@@ -1 +0,0 @@
-join(',', `["a", "b"]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-143 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-143
deleted file mode 100644
index 761c68a6b5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-143
+++ /dev/null
@@ -1 +0,0 @@
-join('|', strings)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-144 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-144
deleted file mode 100644
index a0dd68eaa9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-144
+++ /dev/null
@@ -1 +0,0 @@
-join('|', decimals[].to_string(@))
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-145 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-145
deleted file mode 100644
index a4190b2ba2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-145
+++ /dev/null
@@ -1 +0,0 @@
-join('|', empty_list)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-146 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-146
deleted file mode 100644
index f5033c3022..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-146
+++ /dev/null
@@ -1 +0,0 @@
-reverse(numbers)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-147 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-147
deleted file mode 100644
index 822f054d50..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-147
+++ /dev/null
@@ -1 +0,0 @@
-reverse(array)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-148 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-148
deleted file mode 100644
index a584adcc0c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-148
+++ /dev/null
@@ -1 +0,0 @@
-reverse(`[]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-149 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-149
deleted file mode 100644
index fb4cc5dc48..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-149
+++ /dev/null
@@ -1 +0,0 @@
-reverse('')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-15 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-15
deleted file mode 100644
index 693f954962..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-15
+++ /dev/null
@@ -1 +0,0 @@
-foo."1"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-150 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-150
deleted file mode 100644
index aa260fabc1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-150
+++ /dev/null
@@ -1 +0,0 @@
-reverse('hello world')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-151 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-151
deleted file mode 100644
index d8c58826af..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-151
+++ /dev/null
@@ -1 +0,0 @@
-starts_with(str, 'S')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-152 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-152
deleted file mode 100644
index 32e16b7bb0..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-152
+++ /dev/null
@@ -1 +0,0 @@
-starts_with(str, 'St')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-153 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-153
deleted file mode 100644
index 5f575ae7fc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-153
+++ /dev/null
@@ -1 +0,0 @@
-starts_with(str, 'Str')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-155 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-155
deleted file mode 100644
index f31551c62f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-155
+++ /dev/null
@@ -1 +0,0 @@
-sum(numbers)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-156 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-156
deleted file mode 100644
index 18b90446cc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-156
+++ /dev/null
@@ -1 +0,0 @@
-sum(decimals)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-157 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-157
deleted file mode 100644
index def4d0bc19..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-157
+++ /dev/null
@@ -1 +0,0 @@
-sum(array[].to_number(@))
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-158 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-158
deleted file mode 100644
index 48e4a7707c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-158
+++ /dev/null
@@ -1 +0,0 @@
-sum(`[]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-159 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-159
deleted file mode 100644
index 9fb939a0b1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-159
+++ /dev/null
@@ -1 +0,0 @@
-to_array('foo')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-16 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-16
deleted file mode 100644
index 86155ed754..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-16
+++ /dev/null
@@ -1 +0,0 @@
-foo."1"[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-160 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-160
deleted file mode 100644
index 74ba7cc67d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-160
+++ /dev/null
@@ -1 +0,0 @@
-to_array(`0`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-161 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-161
deleted file mode 100644
index 57f8b983f0..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-161
+++ /dev/null
@@ -1 +0,0 @@
-to_array(objects)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-162 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-162
deleted file mode 100644
index d17c7345fa..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-162
+++ /dev/null
@@ -1 +0,0 @@
-to_array(`[1, 2, 3]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-163 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-163
deleted file mode 100644
index 15f70f7839..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-163
+++ /dev/null
@@ -1 +0,0 @@
-to_array(false)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-164 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-164
deleted file mode 100644
index 9b227529b4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-164
+++ /dev/null
@@ -1 +0,0 @@
-to_string('foo')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-165 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-165
deleted file mode 100644
index 489a42935a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-165
+++ /dev/null
@@ -1 +0,0 @@
-to_string(`1.2`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-166 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-166
deleted file mode 100644
index d17106a00f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-166
+++ /dev/null
@@ -1 +0,0 @@
-to_string(`[0, 1]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-167 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-167
deleted file mode 100644
index 4f4ae9e689..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-167
+++ /dev/null
@@ -1 +0,0 @@
-to_number('1.0')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-168 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-168
deleted file mode 100644
index ce932e2e6a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-168
+++ /dev/null
@@ -1 +0,0 @@
-to_number('1.1')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-169 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-169
deleted file mode 100644
index e246fa4dbc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-169
+++ /dev/null
@@ -1 +0,0 @@
-to_number('4')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-17 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-17
deleted file mode 100644
index de0b4c39d9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-17
+++ /dev/null
@@ -1 +0,0 @@
-foo."-1"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-170 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-170
deleted file mode 100644
index f8c264747e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-170
+++ /dev/null
@@ -1 +0,0 @@
-to_number('notanumber')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-171 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-171
deleted file mode 100644
index 7d423b1cd1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-171
+++ /dev/null
@@ -1 +0,0 @@
-to_number(`false`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-172 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-172
deleted file mode 100644
index 503716b687..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-172
+++ /dev/null
@@ -1 +0,0 @@
-to_number(`null`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-173 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-173
deleted file mode 100644
index 7f61dfa157..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-173
+++ /dev/null
@@ -1 +0,0 @@
-to_number(`[0]`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-174 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-174
deleted file mode 100644
index ee72a8c01a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-174
+++ /dev/null
@@ -1 +0,0 @@
-to_number(`{"foo": 0}`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-175 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-175
deleted file mode 100644
index 8d8f1f7590..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-175
+++ /dev/null
@@ -1 +0,0 @@
-sort(numbers)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-178 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-178
deleted file mode 100644
index 8cb54ba47b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-178
+++ /dev/null
@@ -1 +0,0 @@
-sort(empty_list)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-179 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-179
deleted file mode 100644
index cf2c9b1db2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-179
+++ /dev/null
@@ -1 +0,0 @@
-not_null(unknown_key, str)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-18 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-18
deleted file mode 100644
index b516b2c489..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-18
+++ /dev/null
@@ -1 +0,0 @@
-@
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-180 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-180
deleted file mode 100644
index e047d48668..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-180
+++ /dev/null
@@ -1 +0,0 @@
-not_null(unknown_key, foo.bar, empty_list, str)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-181 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-181
deleted file mode 100644
index c4cc87b9c1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-181
+++ /dev/null
@@ -1 +0,0 @@
-not_null(unknown_key, null_key, empty_list, str)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-182 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-182
deleted file mode 100644
index 2c7fa0a9c1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-182
+++ /dev/null
@@ -1 +0,0 @@
-not_null(all, expressions, are_null)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-183 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-183
deleted file mode 100644
index eb096e61cd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-183
+++ /dev/null
@@ -1 +0,0 @@
-numbers[].to_string(@)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-184 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-184
deleted file mode 100644
index 4958abaec4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-184
+++ /dev/null
@@ -1 +0,0 @@
-array[].to_number(@)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-185 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-185
deleted file mode 100644
index 1027084724..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-185
+++ /dev/null
@@ -1 +0,0 @@
-foo[].not_null(f, e, d, c, b, a)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-186 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-186
deleted file mode 100644
index 83cb916128..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-186
+++ /dev/null
@@ -1 +0,0 @@
-sort_by(people, &age)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-187 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-187
deleted file mode 100644
index a494d6c4bf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-187
+++ /dev/null
@@ -1 +0,0 @@
-sort_by(people, &to_number(age_str))
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-188 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-188
deleted file mode 100644
index 2294fc54d1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-188
+++ /dev/null
@@ -1 +0,0 @@
-sort_by(people, &age)[].name
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-189 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-189
deleted file mode 100644
index bb8c2b46d1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-189
+++ /dev/null
@@ -1 +0,0 @@
-sort_by(people, &age)[].extra
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-19 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-19
deleted file mode 100644
index e3ed49ac65..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-19
+++ /dev/null
@@ -1 +0,0 @@
-@.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-190 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-190
deleted file mode 100644
index 3ab0290340..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-190
+++ /dev/null
@@ -1 +0,0 @@
-sort_by(`[]`, &age)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-191 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-191
deleted file mode 100644
index 97db56f7b6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-191
+++ /dev/null
@@ -1 +0,0 @@
-max_by(people, &age)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-192 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-192
deleted file mode 100644
index a7e648de96..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-192
+++ /dev/null
@@ -1 +0,0 @@
-max_by(people, &age_str)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-193 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-193
deleted file mode 100644
index be4348d0c1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-193
+++ /dev/null
@@ -1 +0,0 @@
-max_by(people, &to_number(age_str))
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-194 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-194
deleted file mode 100644
index a707283d49..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-194
+++ /dev/null
@@ -1 +0,0 @@
-min_by(people, &age)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-195 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-195
deleted file mode 100644
index 2cd6618d84..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-195
+++ /dev/null
@@ -1 +0,0 @@
-min_by(people, &age_str)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-196 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-196
deleted file mode 100644
index 833e683738..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-196
+++ /dev/null
@@ -1 +0,0 @@
-min_by(people, &to_number(age_str))
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-198 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-198
deleted file mode 100644
index 706dbda89a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-198
+++ /dev/null
@@ -1 +0,0 @@
-__L
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-199 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-199
deleted file mode 100644
index ca593ca93c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-199
+++ /dev/null
@@ -1 +0,0 @@
-"!\r"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-2 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-2
deleted file mode 100644
index 4d5f9756e5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-2
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-20 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-20
deleted file mode 100644
index f300ab9178..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-20
+++ /dev/null
@@ -1 +0,0 @@
-@.foo[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-200 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-200
deleted file mode 100644
index 9c93843541..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-200
+++ /dev/null
@@ -1 +0,0 @@
-Y_1623
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-201 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-201
deleted file mode 100644
index c1b0730e01..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-201
+++ /dev/null
@@ -1 +0,0 @@
-x
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-202 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-202
deleted file mode 100644
index 1552ec63a6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-202
+++ /dev/null
@@ -1 +0,0 @@
-"\tF\uCebb"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-203 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-203
deleted file mode 100644
index 047041273f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-203
+++ /dev/null
@@ -1 +0,0 @@
-" \t"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-204 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-204
deleted file mode 100644
index efd782cc32..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-204
+++ /dev/null
@@ -1 +0,0 @@
-" "
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-205 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-205
deleted file mode 100644
index 8494ac2706..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-205
+++ /dev/null
@@ -1 +0,0 @@
-v2
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-206 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-206
deleted file mode 100644
index c61f7f7ebd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-206
+++ /dev/null
@@ -1 +0,0 @@
-"\t"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-207 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-207
deleted file mode 100644
index f6055f1898..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-207
+++ /dev/null
@@ -1 +0,0 @@
-_X
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-208 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-208
deleted file mode 100644
index 4f58e0e7bd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-208
+++ /dev/null
@@ -1 +0,0 @@
-"\t4\ud9da\udd15"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-209 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-209
deleted file mode 100644
index f536bfbf68..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-209
+++ /dev/null
@@ -1 +0,0 @@
-v24_W
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-21 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-21
deleted file mode 100644
index ef47ff2c05..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-21
+++ /dev/null
@@ -1 +0,0 @@
-"foo.bar"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-210 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-210
deleted file mode 100644
index 69759281cb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-210
+++ /dev/null
@@ -1 +0,0 @@
-"H"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-211 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-211
deleted file mode 100644
index c3e8b5927f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-211
+++ /dev/null
@@ -1 +0,0 @@
-"\f"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-212 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-212
deleted file mode 100644
index 24ecc222cb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-212
+++ /dev/null
@@ -1 +0,0 @@
-"E4"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-213 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-213
deleted file mode 100644
index 5693009d2e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-213
+++ /dev/null
@@ -1 +0,0 @@
-"!"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-214 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-214
deleted file mode 100644
index 62dd220e71..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-214
+++ /dev/null
@@ -1 +0,0 @@
-tM
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-215 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-215
deleted file mode 100644
index 3c1e81f55a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-215
+++ /dev/null
@@ -1 +0,0 @@
-" ["
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-216 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-216
deleted file mode 100644
index 493daa673c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-216
+++ /dev/null
@@ -1 +0,0 @@
-"R!"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-217 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-217
deleted file mode 100644
index 116b50ab38..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-217
+++ /dev/null
@@ -1 +0,0 @@
-_6W
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-218 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-218
deleted file mode 100644
index 0073fac452..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-218
+++ /dev/null
@@ -1 +0,0 @@
-"\uaBA1\r"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-219 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-219
deleted file mode 100644
index 00d8fa37ee..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-219
+++ /dev/null
@@ -1 +0,0 @@
-tL7
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-22 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-22
deleted file mode 100644
index 661ebcfa33..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-22
+++ /dev/null
@@ -1 +0,0 @@
-"foo bar"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-220 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-220
deleted file mode 100644
index c14f16e026..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-220
+++ /dev/null
@@ -1 +0,0 @@
-"<"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-257 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-257
deleted file mode 100644
index 8a2443e6e9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-257
+++ /dev/null
@@ -1 +0,0 @@
-hvu
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-258 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-258
deleted file mode 100644
index c9ddacbb61..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-258
+++ /dev/null
@@ -1 +0,0 @@
-"; !"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-259 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-259
deleted file mode 100644
index d0209c6df0..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-259
+++ /dev/null
@@ -1 +0,0 @@
-hU
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-26 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-26
deleted file mode 100644
index 82649bd24e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-26
+++ /dev/null
@@ -1 +0,0 @@
-"/unix/path"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-260 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-260
deleted file mode 100644
index c07242aa44..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-260
+++ /dev/null
@@ -1 +0,0 @@
-"!I\n\/"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-261 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-261
deleted file mode 100644
index 7aae4effc7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-261
+++ /dev/null
@@ -1 +0,0 @@
-"\uEEbF"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-262 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-262
deleted file mode 100644
index c1574f35ff..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-262
+++ /dev/null
@@ -1 +0,0 @@
-"U)\t"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-263 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-263
deleted file mode 100644
index 5197e3a2bf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-263
+++ /dev/null
@@ -1 +0,0 @@
-fa0_9
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-264 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-264
deleted file mode 100644
index 320558b005..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-264
+++ /dev/null
@@ -1 +0,0 @@
-"/"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-265 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-265
deleted file mode 100644
index 4a2cb08652..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-265
+++ /dev/null
@@ -1 +0,0 @@
-Gy
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-266 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-266
deleted file mode 100644
index 9524c83813..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-266
+++ /dev/null
@@ -1 +0,0 @@
-"\b"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-267 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-267
deleted file mode 100644
index 066b8d98b7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-267
+++ /dev/null
@@ -1 +0,0 @@
-"<"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-268 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-268
deleted file mode 100644
index c61f7f7ebd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-268
+++ /dev/null
@@ -1 +0,0 @@
-"\t"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-269 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-269
deleted file mode 100644
index a582f62d28..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-269
+++ /dev/null
@@ -1 +0,0 @@
-"\t&\\\r"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-27 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-27
deleted file mode 100644
index a1d50731c7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-27
+++ /dev/null
@@ -1 +0,0 @@
-"\"\"\""
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-270 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-270
deleted file mode 100644
index e3c5eedeb5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-270
+++ /dev/null
@@ -1 +0,0 @@
-"#"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-271 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-271
deleted file mode 100644
index e75309a524..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-271
+++ /dev/null
@@ -1 +0,0 @@
-B__
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-272 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-272
deleted file mode 100644
index 027177272c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-272
+++ /dev/null
@@ -1 +0,0 @@
-"\nS \n"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-273 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-273
deleted file mode 100644
index 99432276ec..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-273
+++ /dev/null
@@ -1 +0,0 @@
-Bp
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-274 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-274
deleted file mode 100644
index d4f8a788b8..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-274
+++ /dev/null
@@ -1 +0,0 @@
-",\t;"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-275 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-275
deleted file mode 100644
index 56c384f753..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-275
+++ /dev/null
@@ -1 +0,0 @@
-B_q
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-276 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-276
deleted file mode 100644
index f093d2aa3b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-276
+++ /dev/null
@@ -1 +0,0 @@
-"\/+\t\n\b!Z"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-277 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-277
deleted file mode 100644
index 11e1229d9e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-277
+++ /dev/null
@@ -1 +0,0 @@
-"\\ueFAc"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-278 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-278
deleted file mode 100644
index 90dbfcfcd3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-278
+++ /dev/null
@@ -1 +0,0 @@
-":\f"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-279 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-279
deleted file mode 100644
index b06b830252..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-279
+++ /dev/null
@@ -1 +0,0 @@
-"\/"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-28 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-28
deleted file mode 100644
index 5f55d73af6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-28
+++ /dev/null
@@ -1 +0,0 @@
-"bar"."baz"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-280 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-280
deleted file mode 100644
index 0e4bf7c113..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-280
+++ /dev/null
@@ -1 +0,0 @@
-_BW_6Hg_Gl
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-281 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-281
deleted file mode 100644
index 81bb45f805..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-281
+++ /dev/null
@@ -1 +0,0 @@
-""
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-282 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-282
deleted file mode 100644
index d0b4de1464..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-282
+++ /dev/null
@@ -1 +0,0 @@
-zs1DC
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-283 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-283
deleted file mode 100644
index 68797580ca..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-283
+++ /dev/null
@@ -1 +0,0 @@
-__434
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-284 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-284
deleted file mode 100644
index e61be91c4a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-284
+++ /dev/null
@@ -1 +0,0 @@
-""
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-285 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-285
deleted file mode 100644
index 026cb9cbb5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-285
+++ /dev/null
@@ -1 +0,0 @@
-Z_5
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-286 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-286
deleted file mode 100644
index ca9587d06c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-286
+++ /dev/null
@@ -1 +0,0 @@
-z_M_
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-287 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-287
deleted file mode 100644
index 67f6d9c42a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-287
+++ /dev/null
@@ -1 +0,0 @@
-YU_2
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-288 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-288
deleted file mode 100644
index 927ab653a7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-288
+++ /dev/null
@@ -1 +0,0 @@
-_0
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-289 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-289
deleted file mode 100644
index 39307ab938..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-289
+++ /dev/null
@@ -1 +0,0 @@
-"\b+"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-29 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-29
deleted file mode 100644
index 8b0c5b41bd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-29
+++ /dev/null
@@ -1 +0,0 @@
-foo[?name == 'a']
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-290 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-290
deleted file mode 100644
index a3ec2ed7a1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-290
+++ /dev/null
@@ -1 +0,0 @@
-"\""
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-291 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-291
deleted file mode 100644
index 26bf7e122d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-291
+++ /dev/null
@@ -1 +0,0 @@
-D7
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-292 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-292
deleted file mode 100644
index d595c9f43a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-292
+++ /dev/null
@@ -1 +0,0 @@
-_62L
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-293 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-293
deleted file mode 100644
index f686969496..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-293
+++ /dev/null
@@ -1 +0,0 @@
-"\tK\t"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-294 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-294
deleted file mode 100644
index f3a9b7edb5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-294
+++ /dev/null
@@ -1 +0,0 @@
-"\n\\\f"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-295 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-295
deleted file mode 100644
index 455f00ffc2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-295
+++ /dev/null
@@ -1 +0,0 @@
-I_
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-296 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-296
deleted file mode 100644
index ccd5968f9c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-296
+++ /dev/null
@@ -1 +0,0 @@
-W_a0_
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-297 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-297
deleted file mode 100644
index ee55c16fc8..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-297
+++ /dev/null
@@ -1 +0,0 @@
-BQ
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-298 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-298
deleted file mode 100644
index 0d1a169a67..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-298
+++ /dev/null
@@ -1 +0,0 @@
-"\tX$\uABBb"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-299 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-299
deleted file mode 100644
index 0573cfd73f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-299
+++ /dev/null
@@ -1 +0,0 @@
-Z9
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-3 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-3
deleted file mode 100644
index f0fcbd8eaf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-3
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar.baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-30 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-30
deleted file mode 100644
index 4f8e6a17aa..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-30
+++ /dev/null
@@ -1 +0,0 @@
-*[?[0] == `0`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-300 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-300
deleted file mode 100644
index a0db02bebf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-300
+++ /dev/null
@@ -1 +0,0 @@
-"\b%\""
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-301 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-301
deleted file mode 100644
index 56032f7a24..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-301
+++ /dev/null
@@ -1 +0,0 @@
-_F
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-302 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-302
deleted file mode 100644
index 4a8a3cff36..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-302
+++ /dev/null
@@ -1 +0,0 @@
-"!,"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-303 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-303
deleted file mode 100644
index 7c1efac000..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-303
+++ /dev/null
@@ -1 +0,0 @@
-"\"!"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-304 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-304
deleted file mode 100644
index a0f489d532..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-304
+++ /dev/null
@@ -1 +0,0 @@
-Hh
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-305 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-305
deleted file mode 100644
index c64e8d5ac8..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-305
+++ /dev/null
@@ -1 +0,0 @@
-"&"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-306 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-306
deleted file mode 100644
index 0567e992f1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-306
+++ /dev/null
@@ -1 +0,0 @@
-"9\r\\R"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-307 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-307
deleted file mode 100644
index ce8245c5b9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-307
+++ /dev/null
@@ -1 +0,0 @@
-M_k
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-308 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-308
deleted file mode 100644
index 8f16a5ac04..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-308
+++ /dev/null
@@ -1 +0,0 @@
-"!\b\n\"\""
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-309 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-309
deleted file mode 100644
index 504ff5ae39..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-309
+++ /dev/null
@@ -1 +0,0 @@
-"6"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-31 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-31
deleted file mode 100644
index 07fb57234b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-31
+++ /dev/null
@@ -1 +0,0 @@
-foo[?first == last]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-310 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-310
deleted file mode 100644
index 533dd8e546..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-310
+++ /dev/null
@@ -1 +0,0 @@
-_7
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-311 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-311
deleted file mode 100644
index 1e4a3a3415..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-311
+++ /dev/null
@@ -1 +0,0 @@
-"0"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-312 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-312
deleted file mode 100644
index 37961f6ca4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-312
+++ /dev/null
@@ -1 +0,0 @@
-"\\8\\"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-313 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-313
deleted file mode 100644
index 23480cff14..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-313
+++ /dev/null
@@ -1 +0,0 @@
-b7eo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-314 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-314
deleted file mode 100644
index e609f81a3b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-314
+++ /dev/null
@@ -1 +0,0 @@
-xIUo9
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-315 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-315
deleted file mode 100644
index d89a25f0b9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-315
+++ /dev/null
@@ -1 +0,0 @@
-"5"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-316 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-316
deleted file mode 100644
index 5adcf5e7dc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-316
+++ /dev/null
@@ -1 +0,0 @@
-"?"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-317 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-317
deleted file mode 100644
index ace4a897d3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-317
+++ /dev/null
@@ -1 +0,0 @@
-sU
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-318 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-318
deleted file mode 100644
index feffb7061b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-318
+++ /dev/null
@@ -1 +0,0 @@
-"VH2&H\\\/"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-319 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-319
deleted file mode 100644
index 8223f1e51e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-319
+++ /dev/null
@@ -1 +0,0 @@
-_C
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-32 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-32
deleted file mode 100644
index 7e85c4bdfe..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-32
+++ /dev/null
@@ -1 +0,0 @@
-foo[?first == last].first
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-320 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-320
deleted file mode 100644
index c9cdc63b07..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-320
+++ /dev/null
@@ -1 +0,0 @@
-_
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-321 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-321
deleted file mode 100644
index c82f7982ee..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-321
+++ /dev/null
@@ -1 +0,0 @@
-"<\t"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-322 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-322
deleted file mode 100644
index dae65c5155..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-322
+++ /dev/null
@@ -1 +0,0 @@
-"\uD834\uDD1E"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-323 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-323
deleted file mode 100644
index b6b3695438..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-323
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-324 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-324
deleted file mode 100644
index bf06e678c1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-324
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-325 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-325
deleted file mode 100644
index 5d48e0205c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-325
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-326 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-326
deleted file mode 100644
index de3af7230f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-326
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[3]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-327 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-327
deleted file mode 100644
index a1c3335084..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-327
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-328 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-328
deleted file mode 100644
index ad0fef91cf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-328
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[-2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-329 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-329
deleted file mode 100644
index 3e83c6f730..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-329
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[-3]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-33 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-33
deleted file mode 100644
index 72fc0a53e7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-33
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age > `25`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-330 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-330
deleted file mode 100644
index 433a737d65..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-330
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[-4]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-331 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-331
deleted file mode 100644
index 4d5f9756e5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-331
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-332 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-332
deleted file mode 100644
index 5e0d9b7177..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-332
+++ /dev/null
@@ -1 +0,0 @@
-foo[0].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-333 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-333
deleted file mode 100644
index 3cd7e9460f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-333
+++ /dev/null
@@ -1 +0,0 @@
-foo[1].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-334 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-334
deleted file mode 100644
index 74cb176555..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-334
+++ /dev/null
@@ -1 +0,0 @@
-foo[2].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-335 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-335
deleted file mode 100644
index 3cf2007f70..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-335
+++ /dev/null
@@ -1 +0,0 @@
-foo[3].notbar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-336 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-336
deleted file mode 100644
index 9674d88037..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-336
+++ /dev/null
@@ -1 +0,0 @@
-foo[3].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-337 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-337
deleted file mode 100644
index 9b0b2f8189..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-337
+++ /dev/null
@@ -1 +0,0 @@
-foo[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-338 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-338
deleted file mode 100644
index 83c639a185..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-338
+++ /dev/null
@@ -1 +0,0 @@
-foo[1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-339 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-339
deleted file mode 100644
index 3b76c9f64a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-339
+++ /dev/null
@@ -1 +0,0 @@
-foo[2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-34 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-34
deleted file mode 100644
index 9a2b0184ed..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-34
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age >= `25`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-340 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-340
deleted file mode 100644
index ff99e045d2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-340
+++ /dev/null
@@ -1 +0,0 @@
-foo[3]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-341 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-341
deleted file mode 100644
index 040ecb240c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-341
+++ /dev/null
@@ -1 +0,0 @@
-foo[4]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-342 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-342
deleted file mode 100644
index 6e7ea636ee..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-342
+++ /dev/null
@@ -1 +0,0 @@
-[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-343 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-343
deleted file mode 100644
index bace2a0be1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-343
+++ /dev/null
@@ -1 +0,0 @@
-[1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-344 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-344
deleted file mode 100644
index 5d50c80c06..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-344
+++ /dev/null
@@ -1 +0,0 @@
-[2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-345 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-345
deleted file mode 100644
index 99d21a2a0f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-345
+++ /dev/null
@@ -1 +0,0 @@
-[-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-346 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-346
deleted file mode 100644
index 133a9c6272..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-346
+++ /dev/null
@@ -1 +0,0 @@
-[-2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-347 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-347
deleted file mode 100644
index b7f78c5dc5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-347
+++ /dev/null
@@ -1 +0,0 @@
-[-3]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-348 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-348
deleted file mode 100644
index bd9de815f4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-348
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-349 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-349
deleted file mode 100644
index 55e6257352..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-349
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-35 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-35
deleted file mode 100644
index fa83f1da3b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-35
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age > `30`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-350 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-350
deleted file mode 100644
index 1661747c04..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-350
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].notinstances[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-351 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-351
deleted file mode 100644
index 1661747c04..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-351
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].notinstances[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-352 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-352
deleted file mode 100644
index 3debc70f89..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-352
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].foo[].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-353 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-353
deleted file mode 100644
index 75af2fda06..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-353
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].foo[].baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-354 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-354
deleted file mode 100644
index 4a70cd8a03..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-354
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].notfoo[].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-355 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-355
deleted file mode 100644
index 987985b002..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-355
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].notfoo[].notbar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-356 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-356
deleted file mode 100644
index 1661747c04..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-356
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].notinstances[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-357 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-357
deleted file mode 100644
index 634f937e55..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-357
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].foo[].notbar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-358 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-358
deleted file mode 100644
index 09cb7b8bb1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-358
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].bar[].baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-359 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-359
deleted file mode 100644
index f5d9ac5b76..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-359
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].baz[].baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-36 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-36
deleted file mode 100644
index 463a2a542d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-36
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age < `25`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-360 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-360
deleted file mode 100644
index d1016d6e75..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-360
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].qux[].baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-361 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-361
deleted file mode 100644
index ef54cf52d6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-361
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].qux[].baz[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-362 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-362
deleted file mode 100644
index bea506ff23..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-362
+++ /dev/null
@@ -1 +0,0 @@
-foo[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-363 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-363
deleted file mode 100644
index 20dd081e0e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-363
+++ /dev/null
@@ -1 +0,0 @@
-foo[][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-364 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-364
deleted file mode 100644
index 4803734b09..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-364
+++ /dev/null
@@ -1 +0,0 @@
-foo[][1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-365 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-365
deleted file mode 100644
index 1be5659853..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-365
+++ /dev/null
@@ -1 +0,0 @@
-foo[][0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-366 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-366
deleted file mode 100644
index d2cf6da59f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-366
+++ /dev/null
@@ -1 +0,0 @@
-foo[][2][2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-367 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-367
deleted file mode 100644
index c609ca64b1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-367
+++ /dev/null
@@ -1 +0,0 @@
-foo[][0][0][100]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-368 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-368
deleted file mode 100644
index 1910281566..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-368
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-369 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-369
deleted file mode 100644
index bea506ff23..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-369
+++ /dev/null
@@ -1 +0,0 @@
-foo[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-37 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-37
deleted file mode 100644
index 10ed5d3f61..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-37
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age <= `25`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-370 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-370
deleted file mode 100644
index 13f2c4a0b4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-370
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-371 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-371
deleted file mode 100644
index edf3d92775..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-371
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-372 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-372
deleted file mode 100644
index 2a3b993af2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-372
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar[].baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-373 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-373
deleted file mode 100644
index d5ca878a13..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-373
+++ /dev/null
@@ -1 +0,0 @@
-string[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-374 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-374
deleted file mode 100644
index fcd255f5d0..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-374
+++ /dev/null
@@ -1 +0,0 @@
-hash[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-375 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-375
deleted file mode 100644
index 2d53bd7cdc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-375
+++ /dev/null
@@ -1 +0,0 @@
-number[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-376 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-376
deleted file mode 100644
index cb10d2497e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-376
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-377 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-377
deleted file mode 100644
index f6c79ca84f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-377
+++ /dev/null
@@ -1 +0,0 @@
-string[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-378 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-378
deleted file mode 100644
index 09bf36e8a9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-378
+++ /dev/null
@@ -1 +0,0 @@
-hash[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-379 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-379
deleted file mode 100644
index 4c35781891..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-379
+++ /dev/null
@@ -1 +0,0 @@
-number[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-38 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-38
deleted file mode 100644
index 16a4c36acb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-38
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age < `20`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-380 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-380
deleted file mode 100644
index 2dd8ae2185..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-380
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue[].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-381 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-381
deleted file mode 100644
index dfed816038..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-381
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue[].foo[].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-382 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-382
deleted file mode 100644
index d7628e646e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-382
+++ /dev/null
@@ -1 +0,0 @@
-`"foo"`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-383 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-383
deleted file mode 100644
index 49c5269b12..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-383
+++ /dev/null
@@ -1 +0,0 @@
-`"\u03a6"`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-384 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-384
deleted file mode 100644
index d5db721d01..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-384
+++ /dev/null
@@ -1 +0,0 @@
-`"✓"`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-385 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-385
deleted file mode 100644
index a2b6e4ec85..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-385
+++ /dev/null
@@ -1 +0,0 @@
-`[1, 2, 3]`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-386 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-386
deleted file mode 100644
index f5801bdd68..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-386
+++ /dev/null
@@ -1 +0,0 @@
-`{"a": "b"}`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-387 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-387
deleted file mode 100644
index f87db59a8b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-387
+++ /dev/null
@@ -1 +0,0 @@
-`true`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-388 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-388
deleted file mode 100644
index 3b20d905f3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-388
+++ /dev/null
@@ -1 +0,0 @@
-`false`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-389 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-389
deleted file mode 100644
index 70bcd29a7a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-389
+++ /dev/null
@@ -1 +0,0 @@
-`null`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-39 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-39
deleted file mode 100644
index 351054d3e6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-39
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age == `20`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-390 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-390
deleted file mode 100644
index 0918d41559..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-390
+++ /dev/null
@@ -1 +0,0 @@
-`0`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-391 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-391
deleted file mode 100644
index ef70c4c11e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-391
+++ /dev/null
@@ -1 +0,0 @@
-`1`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-392 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-392
deleted file mode 100644
index b39a922f40..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-392
+++ /dev/null
@@ -1 +0,0 @@
-`2`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-393 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-393
deleted file mode 100644
index 7e65687dbf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-393
+++ /dev/null
@@ -1 +0,0 @@
-`3`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-394 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-394
deleted file mode 100644
index 770d1ece70..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-394
+++ /dev/null
@@ -1 +0,0 @@
-`4`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-395 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-395
deleted file mode 100644
index a8b81985c7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-395
+++ /dev/null
@@ -1 +0,0 @@
-`5`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-396 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-396
deleted file mode 100644
index 7f0861065e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-396
+++ /dev/null
@@ -1 +0,0 @@
-`6`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-397 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-397
deleted file mode 100644
index 495114d919..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-397
+++ /dev/null
@@ -1 +0,0 @@
-`7`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-398 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-398
deleted file mode 100644
index 94f355c46c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-398
+++ /dev/null
@@ -1 +0,0 @@
-`8`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-399 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-399
deleted file mode 100644
index 600d2aa3f4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-399
+++ /dev/null
@@ -1 +0,0 @@
-`9`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-4 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-4
deleted file mode 100644
index 3148522358..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-4
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar.baz.bad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-40 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-40
deleted file mode 100644
index 99d9258a62..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-40
+++ /dev/null
@@ -1 +0,0 @@
-foo[?age != `20`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-400 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-400
deleted file mode 100644
index 637015b5fd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-400
+++ /dev/null
@@ -1 +0,0 @@
-`"foo\`bar"`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-401 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-401
deleted file mode 100644
index 6fa7557b8d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-401
+++ /dev/null
@@ -1 +0,0 @@
-`"foo\"bar"`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-402 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-402
deleted file mode 100644
index 5aabeec341..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-402
+++ /dev/null
@@ -1 +0,0 @@
-`"1\`"`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-403 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-403
deleted file mode 100644
index 8302ea1984..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-403
+++ /dev/null
@@ -1 +0,0 @@
-`"\\"`.{a:`"b"`}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-404 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-404
deleted file mode 100644
index d88d014a96..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-404
+++ /dev/null
@@ -1 +0,0 @@
-`{"a": "b"}`.a
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-405 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-405
deleted file mode 100644
index 47152dddb7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-405
+++ /dev/null
@@ -1 +0,0 @@
-`{"a": {"b": "c"}}`.a.b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-406 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-406
deleted file mode 100644
index 895d429387..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-406
+++ /dev/null
@@ -1 +0,0 @@
-`[0, 1, 2]`[1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-407 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-407
deleted file mode 100644
index 42500a368c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-407
+++ /dev/null
@@ -1 +0,0 @@
-` {"foo": true}`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-408 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-408
deleted file mode 100644
index 08b944dad4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-408
+++ /dev/null
@@ -1 +0,0 @@
-`{"foo": true} `
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-409 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-409
deleted file mode 100644
index 6de163f80b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-409
+++ /dev/null
@@ -1 +0,0 @@
-'foo'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-41 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-41
deleted file mode 100644
index 5bc357d9fa..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-41
+++ /dev/null
@@ -1 +0,0 @@
-foo[?top.name == 'a']
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-410 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-410
deleted file mode 100644
index b84bbdb29f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-410
+++ /dev/null
@@ -1 +0,0 @@
-' foo '
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-411 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-411
deleted file mode 100644
index bf6a07ace3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-411
+++ /dev/null
@@ -1 +0,0 @@
-'0'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-412 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-412
deleted file mode 100644
index c742f5b0c9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-412
+++ /dev/null
@@ -1,2 +0,0 @@
-'newline
-'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-413 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-413
deleted file mode 100644
index 04e9b3ade6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-413
+++ /dev/null
@@ -1,2 +0,0 @@
-'
-'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-414 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-414
deleted file mode 100644
index ebdaf120d7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-414
+++ /dev/null
@@ -1 +0,0 @@
-'✓'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-415 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-415
deleted file mode 100644
index d0ba5d7fac..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-415
+++ /dev/null
@@ -1 +0,0 @@
-'𝄞'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-416 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-416
deleted file mode 100644
index 19c2e2ef41..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-416
+++ /dev/null
@@ -1 +0,0 @@
-' [foo] '
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-417 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-417
deleted file mode 100644
index 5faa483b19..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-417
+++ /dev/null
@@ -1 +0,0 @@
-'[foo]'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-418 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-418
deleted file mode 100644
index e3c05c163a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-418
+++ /dev/null
@@ -1 +0,0 @@
-'\u03a6'
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-419 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-419
deleted file mode 100644
index 7c13861ac7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-419
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar: bar}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-42 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-42
deleted file mode 100644
index d037a0a4dd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-42
+++ /dev/null
@@ -1 +0,0 @@
-foo[?top.first == top.last]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-420 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-420
deleted file mode 100644
index f795c25521..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-420
+++ /dev/null
@@ -1 +0,0 @@
-foo.{"bar": bar}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-421 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-421
deleted file mode 100644
index 772c45639c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-421
+++ /dev/null
@@ -1 +0,0 @@
-foo.{"foo.bar": bar}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-422 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-422
deleted file mode 100644
index 8808e92bf3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-422
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar: bar, baz: baz}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-423 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-423
deleted file mode 100644
index 3f13757a10..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-423
+++ /dev/null
@@ -1 +0,0 @@
-foo.{"bar": bar, "baz": baz}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-424 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-424
deleted file mode 100644
index 23cd8903e7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-424
+++ /dev/null
@@ -1 +0,0 @@
-{"baz": baz, "qux\"": "qux\""}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-425 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-425
deleted file mode 100644
index fabb6da4fe..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-425
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar:bar,baz:baz}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-426 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-426
deleted file mode 100644
index 4c3f615b1c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-426
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar: bar,qux: qux}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-427 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-427
deleted file mode 100644
index 8bc46535ac..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-427
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar: bar, noexist: noexist}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-428 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-428
deleted file mode 100644
index 2024b6f118..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-428
+++ /dev/null
@@ -1 +0,0 @@
-foo.{noexist: noexist, alsonoexist: alsonoexist}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-429 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-429
deleted file mode 100644
index b52191d10a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-429
+++ /dev/null
@@ -1 +0,0 @@
-foo.badkey.{nokey: nokey, alsonokey: alsonokey}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-43 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-43
deleted file mode 100644
index 8534a5cae9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-43
+++ /dev/null
@@ -1 +0,0 @@
-foo[?top == `{"first": "foo", "last": "bar"}`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-430 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-430
deleted file mode 100644
index 5cd310b6d2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-430
+++ /dev/null
@@ -1 +0,0 @@
-foo.nested.*.{a: a,b: b}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-431 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-431
deleted file mode 100644
index 0b24ef5352..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-431
+++ /dev/null
@@ -1 +0,0 @@
-foo.nested.three.{a: a, cinner: c.inner}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-432 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-432
deleted file mode 100644
index 473c1c351b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-432
+++ /dev/null
@@ -1 +0,0 @@
-foo.nested.three.{a: a, c: c.inner.bad.key}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-433 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-433
deleted file mode 100644
index 44ba735ab1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-433
+++ /dev/null
@@ -1 +0,0 @@
-foo.{a: nested.one.a, b: nested.two.b}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-434 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-434
deleted file mode 100644
index f5f89b12b5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-434
+++ /dev/null
@@ -1 +0,0 @@
-{bar: bar, baz: baz}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-435 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-435
deleted file mode 100644
index 697764cb30..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-435
+++ /dev/null
@@ -1 +0,0 @@
-{bar: bar}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-436 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-436
deleted file mode 100644
index 20447fb105..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-436
+++ /dev/null
@@ -1 +0,0 @@
-{otherkey: bar}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-437 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-437
deleted file mode 100644
index 310b9b1dd2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-437
+++ /dev/null
@@ -1 +0,0 @@
-{no: no, exist: exist}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-438 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-438
deleted file mode 100644
index c79b2e2406..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-438
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-439 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-439
deleted file mode 100644
index ab498ef654..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-439
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,baz]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-44 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-44
deleted file mode 100644
index 71307c4094..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-44
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `true`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-440 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-440
deleted file mode 100644
index 4b8f39a468..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-440
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,qux]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-441 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-441
deleted file mode 100644
index b8f9020f8e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-441
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,noexist]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-442 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-442
deleted file mode 100644
index b7c7b3f655..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-442
+++ /dev/null
@@ -1 +0,0 @@
-foo.[noexist,alsonoexist]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-443 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-443
deleted file mode 100644
index fabb6da4fe..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-443
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar:bar,baz:baz}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-444 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-444
deleted file mode 100644
index c15c39f82c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-444
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,baz[0]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-445 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-445
deleted file mode 100644
index 9cebd89844..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-445
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,baz[1]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-446 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-446
deleted file mode 100644
index c5bbfbf848..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-446
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,baz[2]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-447 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-447
deleted file mode 100644
index d81cb2b904..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-447
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,baz[3]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-448 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-448
deleted file mode 100644
index 3a65aa7d6f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-448
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar[0],baz[3]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-449 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-449
deleted file mode 100644
index 8808e92bf3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-449
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar: bar, baz: baz}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-45 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-45
deleted file mode 100644
index e142b22a25..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-45
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `false`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-450 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-450
deleted file mode 100644
index ab498ef654..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-450
+++ /dev/null
@@ -1 +0,0 @@
-foo.[bar,baz]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-451 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-451
deleted file mode 100644
index 8e3d22dc53..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-451
+++ /dev/null
@@ -1 +0,0 @@
-foo.{bar: bar.baz[1],includeme: includeme}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-452 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-452
deleted file mode 100644
index 398c7f8b06..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-452
+++ /dev/null
@@ -1 +0,0 @@
-foo.{"bar.baz.two": bar.baz[1].two, includeme: includeme}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-453 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-453
deleted file mode 100644
index a176444878..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-453
+++ /dev/null
@@ -1 +0,0 @@
-foo.[includeme, bar.baz[*].common]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-454 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-454
deleted file mode 100644
index da5225ddcc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-454
+++ /dev/null
@@ -1 +0,0 @@
-foo.[includeme, bar.baz[*].none]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-455 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-455
deleted file mode 100644
index a8870b22bc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-455
+++ /dev/null
@@ -1 +0,0 @@
-foo.[includeme, bar.baz[].common]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-456 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-456
deleted file mode 100644
index 420b1a57c4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-456
+++ /dev/null
@@ -1 +0,0 @@
-reservations[*].instances[*].{id: id, name: name}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-457 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-457
deleted file mode 100644
index 0761ee16dc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-457
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].{id: id, name: name}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-458 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-458
deleted file mode 100644
index aa1191a48c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-458
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[].[id, name]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-459 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-459
deleted file mode 100644
index 1910281566..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-459
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-46 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-46
deleted file mode 100644
index 9a24a464ee..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-46
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `0`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-460 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-460
deleted file mode 100644
index bea506ff23..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-460
+++ /dev/null
@@ -1 +0,0 @@
-foo[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-461 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-461
deleted file mode 100644
index 13f2c4a0b4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-461
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-462 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-462
deleted file mode 100644
index edf3d92775..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-462
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-463 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-463
deleted file mode 100644
index d965466e91..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-463
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar[].[baz, qux]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-464 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-464
deleted file mode 100644
index f1822a1742..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-464
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar[].[baz]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-465 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-465
deleted file mode 100644
index c6f77b80c3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-465
+++ /dev/null
@@ -1 +0,0 @@
-foo[].bar[].[baz, qux][]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-466 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-466
deleted file mode 100644
index db56262a4e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-466
+++ /dev/null
@@ -1 +0,0 @@
-foo.[baz[*].bar, qux[0]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-467 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-467
deleted file mode 100644
index b901067d27..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-467
+++ /dev/null
@@ -1 +0,0 @@
-foo.[baz[*].[bar, boo], qux[0]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-468 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-468
deleted file mode 100644
index 738479fa69..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-468
+++ /dev/null
@@ -1 +0,0 @@
-foo.[baz[*].not_there || baz[*].bar, qux[0]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-469 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-469
deleted file mode 100644
index 6926996a7b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-469
+++ /dev/null
@@ -1 +0,0 @@
-[[*],*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-47 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-47
deleted file mode 100644
index 6d33cc72c4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-47
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `1`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-470 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-470
deleted file mode 100644
index 736be0a31f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-470
+++ /dev/null
@@ -1 +0,0 @@
-[[*]]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-471 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-471
deleted file mode 100644
index 29e1fb20a5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-471
+++ /dev/null
@@ -1 +0,0 @@
-outer.foo || outer.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-472 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-472
deleted file mode 100644
index c0070ba783..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-472
+++ /dev/null
@@ -1 +0,0 @@
-outer.foo||outer.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-473 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-473
deleted file mode 100644
index 661b0bec5e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-473
+++ /dev/null
@@ -1 +0,0 @@
-outer.bar || outer.baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-474 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-474
deleted file mode 100644
index 296d5aeee1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-474
+++ /dev/null
@@ -1 +0,0 @@
-outer.bar||outer.baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-475 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-475
deleted file mode 100644
index ca140f8aa3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-475
+++ /dev/null
@@ -1 +0,0 @@
-outer.bad || outer.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-476 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-476
deleted file mode 100644
index 15d3092427..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-476
+++ /dev/null
@@ -1 +0,0 @@
-outer.bad||outer.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-477 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-477
deleted file mode 100644
index 56148d957b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-477
+++ /dev/null
@@ -1 +0,0 @@
-outer.foo || outer.bad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-478 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-478
deleted file mode 100644
index 6d3cf6d906..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-478
+++ /dev/null
@@ -1 +0,0 @@
-outer.foo||outer.bad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-479 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-479
deleted file mode 100644
index 100fa8339d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-479
+++ /dev/null
@@ -1 +0,0 @@
-outer.bad || outer.alsobad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-48 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-48
deleted file mode 100644
index de56fc042c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-48
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `[0]`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-480 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-480
deleted file mode 100644
index 64490352bf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-480
+++ /dev/null
@@ -1 +0,0 @@
-outer.bad||outer.alsobad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-481 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-481
deleted file mode 100644
index af901bde17..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-481
+++ /dev/null
@@ -1 +0,0 @@
-outer.empty_string || outer.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-482 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-482
deleted file mode 100644
index 36b63e462c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-482
+++ /dev/null
@@ -1 +0,0 @@
-outer.nokey || outer.bool || outer.empty_list || outer.empty_string || outer.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-483 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-483
deleted file mode 100644
index aba584f99e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-483
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.baz | [0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-484 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-484
deleted file mode 100644
index 4234ac0192..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-484
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.baz | [1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-485 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-485
deleted file mode 100644
index 12330d9902..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-485
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.baz | [2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-486 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-486
deleted file mode 100644
index 1b2d93e195..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-486
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar.* | [0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-487 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-487
deleted file mode 100644
index c371fc6457..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-487
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.notbaz | [*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-488 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-488
deleted file mode 100644
index 3c835642eb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-488
+++ /dev/null
@@ -1 +0,0 @@
-foo | bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-489 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-489
deleted file mode 100644
index decaa0421d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-489
+++ /dev/null
@@ -1 +0,0 @@
-foo | bar | baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-49 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-49
deleted file mode 100644
index 49d9c63a39..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-49
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `{"bar": [0]}`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-490 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-490
deleted file mode 100644
index b91068037b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-490
+++ /dev/null
@@ -1 +0,0 @@
-foo|bar| baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-491 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-491
deleted file mode 100644
index 11df74d8b4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-491
+++ /dev/null
@@ -1 +0,0 @@
-not_there | [0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-492 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-492
deleted file mode 100644
index 11df74d8b4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-492
+++ /dev/null
@@ -1 +0,0 @@
-not_there | [0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-493 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-493
deleted file mode 100644
index 37da9fc0b7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-493
+++ /dev/null
@@ -1 +0,0 @@
-[foo.bar, foo.other] | [0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-494 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-494
deleted file mode 100644
index 1f4fc943d7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-494
+++ /dev/null
@@ -1 +0,0 @@
-{"a": foo.bar, "b": foo.other} | a
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-495 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-495
deleted file mode 100644
index 67c7ea9cfe..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-495
+++ /dev/null
@@ -1 +0,0 @@
-{"a": foo.bar, "b": foo.other} | b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-496 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-496
deleted file mode 100644
index d87f9bba4c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-496
+++ /dev/null
@@ -1 +0,0 @@
-{"a": foo.bar, "b": foo.other} | *.baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-497 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-497
deleted file mode 100644
index ebf8e27114..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-497
+++ /dev/null
@@ -1 +0,0 @@
-foo.bam || foo.bar | baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-498 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-498
deleted file mode 100644
index f32bc6db51..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-498
+++ /dev/null
@@ -1 +0,0 @@
-foo | not_there || bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-499 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-499
deleted file mode 100644
index d04459d909..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-499
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[*] | [0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-5 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-5
deleted file mode 100644
index b537264a1d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-5
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar.bad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-50 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-50
deleted file mode 100644
index c17c1df170..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-50
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `null`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-500 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-500
deleted file mode 100644
index 3eb869f435..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-500
+++ /dev/null
@@ -1 +0,0 @@
-bar[0:10]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-501 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-501
deleted file mode 100644
index aa5d6be52c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-501
+++ /dev/null
@@ -1 +0,0 @@
-foo[0:10:1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-502 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-502
deleted file mode 100644
index 1a4d1682da..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-502
+++ /dev/null
@@ -1 +0,0 @@
-foo[0:10]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-503 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-503
deleted file mode 100644
index 5925a578b5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-503
+++ /dev/null
@@ -1 +0,0 @@
-foo[0:10:]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-504 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-504
deleted file mode 100644
index 081e93abd9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-504
+++ /dev/null
@@ -1 +0,0 @@
-foo[0::1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-505 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-505
deleted file mode 100644
index 9227001495..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-505
+++ /dev/null
@@ -1 +0,0 @@
-foo[0::]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-506 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-506
deleted file mode 100644
index fd2294d664..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-506
+++ /dev/null
@@ -1 +0,0 @@
-foo[0:]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-507 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-507
deleted file mode 100644
index c6b551d5ea..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-507
+++ /dev/null
@@ -1 +0,0 @@
-foo[:10:1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-508 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-508
deleted file mode 100644
index 503f58da6e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-508
+++ /dev/null
@@ -1 +0,0 @@
-foo[::1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-509 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-509
deleted file mode 100644
index f78bb770ca..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-509
+++ /dev/null
@@ -1 +0,0 @@
-foo[:10:]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-51 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-51
deleted file mode 100644
index 589a214f45..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-51
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `[1]`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-510 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-510
deleted file mode 100644
index eb9d2ba881..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-510
+++ /dev/null
@@ -1 +0,0 @@
-foo[::]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-511 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-511
deleted file mode 100644
index 1921a3d986..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-511
+++ /dev/null
@@ -1 +0,0 @@
-foo[:]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-512 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-512
deleted file mode 100644
index a87afcb1b3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-512
+++ /dev/null
@@ -1 +0,0 @@
-foo[1:9]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-513 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-513
deleted file mode 100644
index dbf51d8cde..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-513
+++ /dev/null
@@ -1 +0,0 @@
-foo[0:10:2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-514 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-514
deleted file mode 100644
index f7288763a7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-514
+++ /dev/null
@@ -1 +0,0 @@
-foo[5:]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-515 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-515
deleted file mode 100644
index 64395761df..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-515
+++ /dev/null
@@ -1 +0,0 @@
-foo[5::2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-516 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-516
deleted file mode 100644
index 706bb14dd7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-516
+++ /dev/null
@@ -1 +0,0 @@
-foo[::2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-517 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-517
deleted file mode 100644
index 8fcfaee95c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-517
+++ /dev/null
@@ -1 +0,0 @@
-foo[::-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-518 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-518
deleted file mode 100644
index f6a00bf9bb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-518
+++ /dev/null
@@ -1 +0,0 @@
-foo[1::2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-519 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-519
deleted file mode 100644
index ea068ee06f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-519
+++ /dev/null
@@ -1 +0,0 @@
-foo[10:0:-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-52 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-52
deleted file mode 100644
index 214917ac06..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-52
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key == `{"a":2}`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-520 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-520
deleted file mode 100644
index 1fe14258ed..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-520
+++ /dev/null
@@ -1 +0,0 @@
-foo[10:5:-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-521 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-521
deleted file mode 100644
index 4ba0e13022..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-521
+++ /dev/null
@@ -1 +0,0 @@
-foo[8:2:-2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-522 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-522
deleted file mode 100644
index 25db439ff7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-522
+++ /dev/null
@@ -1 +0,0 @@
-foo[0:20]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-523 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-523
deleted file mode 100644
index 8a965920af..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-523
+++ /dev/null
@@ -1 +0,0 @@
-foo[10:-20:-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-524 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-524
deleted file mode 100644
index b1e5ba3734..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-524
+++ /dev/null
@@ -1 +0,0 @@
-foo[10:-20]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-525 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-525
deleted file mode 100644
index 06253112e4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-525
+++ /dev/null
@@ -1 +0,0 @@
-foo[-4:-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-526 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-526
deleted file mode 100644
index 1e14a6a4c5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-526
+++ /dev/null
@@ -1 +0,0 @@
-foo[:-5:-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-527 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-527
deleted file mode 100644
index aef5c2747d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-527
+++ /dev/null
@@ -1 +0,0 @@
-foo[:2].a
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-528 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-528
deleted file mode 100644
index 93c95fcf68..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-528
+++ /dev/null
@@ -1 +0,0 @@
-foo[:2].b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-529 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-529
deleted file mode 100644
index 7e0733e595..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-529
+++ /dev/null
@@ -1 +0,0 @@
-foo[:2].a.b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-53 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-53
deleted file mode 100644
index 4c002ed80d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-53
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`true` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-530 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-530
deleted file mode 100644
index 2438b25762..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-530
+++ /dev/null
@@ -1 +0,0 @@
-bar[::-1].a.b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-531 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-531
deleted file mode 100644
index 549994b6bc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-531
+++ /dev/null
@@ -1 +0,0 @@
-bar[:2].a.b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-532 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-532
deleted file mode 100644
index ab98292b45..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-532
+++ /dev/null
@@ -1 +0,0 @@
-baz[:2].a
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-533 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-533
deleted file mode 100644
index 65fca96876..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-533
+++ /dev/null
@@ -1 +0,0 @@
-[:]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-534 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-534
deleted file mode 100644
index 18c5daf7be..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-534
+++ /dev/null
@@ -1 +0,0 @@
-[:2].a
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-535 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-535
deleted file mode 100644
index 1bb84f7d4b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-535
+++ /dev/null
@@ -1 +0,0 @@
-[::-1].a
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-536 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-536
deleted file mode 100644
index 7a0416f056..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-536
+++ /dev/null
@@ -1 +0,0 @@
-[:2].b
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-537 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-537
deleted file mode 100644
index 4d5f9756e5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-537
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-538 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-538
deleted file mode 100644
index 1910281566..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-538
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-539 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-539
deleted file mode 100644
index f59ec20aab..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-539
+++ /dev/null
@@ -1 +0,0 @@
-*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-54 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-54
deleted file mode 100644
index 23d27073e9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-54
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`false` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-540 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-540
deleted file mode 100644
index dee5695746..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-540
+++ /dev/null
@@ -1 +0,0 @@
-*.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-541 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-541
deleted file mode 100644
index 1a16f7418d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-541
+++ /dev/null
@@ -1 +0,0 @@
-*.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-542 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-542
deleted file mode 100644
index 7e8066d39f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-542
+++ /dev/null
@@ -1 +0,0 @@
-*[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-543 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-543
deleted file mode 100644
index 0637a088a0..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-543
+++ /dev/null
@@ -1 +0,0 @@
-[]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-544 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-544
deleted file mode 100644
index 6e7ea636ee..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-544
+++ /dev/null
@@ -1 +0,0 @@
-[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-545 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-545
deleted file mode 100644
index 5a5194647a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-545
+++ /dev/null
@@ -1 +0,0 @@
-[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-546 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-546
deleted file mode 100644
index 416127425c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-546
+++ /dev/null
@@ -1 +0,0 @@
-*.["0"]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-547 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-547
deleted file mode 100644
index cd9fb6ba77..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-547
+++ /dev/null
@@ -1 +0,0 @@
-[*].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-548 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-548
deleted file mode 100644
index 9f3ada4807..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-548
+++ /dev/null
@@ -1 +0,0 @@
-[*][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-549 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-549
deleted file mode 100644
index 9b0b2f8189..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-549
+++ /dev/null
@@ -1 +0,0 @@
-foo[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-55 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-55
deleted file mode 100644
index 6d840ee568..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-55
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`0` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-550 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-550
deleted file mode 100644
index b23413b92a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-550
+++ /dev/null
@@ -1 +0,0 @@
-foo.[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-551 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-551
deleted file mode 100644
index 08ab2e1c42..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-551
+++ /dev/null
@@ -1 +0,0 @@
-foo.[abc]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-552 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-552
deleted file mode 100644
index 78b05a5c64..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-552
+++ /dev/null
@@ -1 +0,0 @@
-foo.[abc, def]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-553 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-553
deleted file mode 100644
index 1e7b886e79..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-553
+++ /dev/null
@@ -1 +0,0 @@
-a.{foo: bar}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-554 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-554
deleted file mode 100644
index 91b4c9896e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-554
+++ /dev/null
@@ -1 +0,0 @@
-a.{foo: bar, baz: bam}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-555 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-555
deleted file mode 100644
index 8301ef981e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-555
+++ /dev/null
@@ -1 +0,0 @@
-{"\\":{" ":*}}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-556 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-556
deleted file mode 100644
index 8f75cc9133..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-556
+++ /dev/null
@@ -1 +0,0 @@
-foo || bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-557 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-557
deleted file mode 100644
index e5f122c569..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-557
+++ /dev/null
@@ -1 +0,0 @@
-foo.[a || b]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-558 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-558
deleted file mode 100644
index 39d1914328..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-558
+++ /dev/null
@@ -1 +0,0 @@
-foo[?bar==`"baz"`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-559 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-559
deleted file mode 100644
index d08bbe2501..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-559
+++ /dev/null
@@ -1 +0,0 @@
-foo[? bar == `"baz"` ]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-56 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-56
deleted file mode 100644
index addaf204c5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-56
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`1` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-560 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-560
deleted file mode 100644
index a77f355812..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-560
+++ /dev/null
@@ -1 +0,0 @@
-foo[?a.b.c==d.e.f]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-561 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-561
deleted file mode 100644
index c9697aa487..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-561
+++ /dev/null
@@ -1 +0,0 @@
-foo[?bar==`[0, 1, 2]`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-562 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-562
deleted file mode 100644
index fd7064a086..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-562
+++ /dev/null
@@ -1 +0,0 @@
-foo[?bar==`["a", "b", "c"]`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-563 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-563
deleted file mode 100644
index 61e5e1b8f7..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-563
+++ /dev/null
@@ -1 +0,0 @@
-foo[?bar==`["foo\`bar"]`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-564 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-564
deleted file mode 100644
index bc9d8af1d9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-564
+++ /dev/null
@@ -1 +0,0 @@
-[?"\\">`"foo"`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-565 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-565
deleted file mode 100644
index 2dd54dc390..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-565
+++ /dev/null
@@ -1 +0,0 @@
-[?"\\" > `"foo"`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-566 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-566
deleted file mode 100644
index 1910281566..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-566
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-567 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-567
deleted file mode 100644
index 7e9668e783..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-567
+++ /dev/null
@@ -1 +0,0 @@
-"foo"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-568 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-568
deleted file mode 100644
index d58ac16bf0..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-568
+++ /dev/null
@@ -1 +0,0 @@
-"\\"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-569 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-569
deleted file mode 100644
index 33ac9fba6f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-569
+++ /dev/null
@@ -1 +0,0 @@
-*||*|*|*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-57 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-57
deleted file mode 100644
index acf2435c7c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-57
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`[0]` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-570 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-570
deleted file mode 100644
index 99e19638ce..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-570
+++ /dev/null
@@ -1 +0,0 @@
-*[]||[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-571 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-571
deleted file mode 100644
index be0845011c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-571
+++ /dev/null
@@ -1 +0,0 @@
-[*.*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-572 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-572
deleted file mode 100644
index a84b51e1cd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-572
+++ /dev/null
@@ -1 +0,0 @@
-foo[]."✓"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-573 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-573
deleted file mode 100644
index c2de55815f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-573
+++ /dev/null
@@ -1 +0,0 @@
-"☯"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-574 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-574
deleted file mode 100644
index dc2dda0bb6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-574
+++ /dev/null
@@ -1 +0,0 @@
-"♪♫•*¨*•.¸¸❤¸¸.•*¨*•♫♪"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-575 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-575
deleted file mode 100644
index a2d3d5f6ae..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-575
+++ /dev/null
@@ -1 +0,0 @@
-"☃"
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-576 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-576
deleted file mode 100644
index 0971c37eaf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-576
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-577 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-577
deleted file mode 100644
index 0e39dfd695..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-577
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-578 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-578
deleted file mode 100644
index 89c1ce22dc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-578
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.notbaz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-579 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-579
deleted file mode 100644
index 5199b9f95d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-579
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.notbaz[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-58 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-58
deleted file mode 100644
index 99fe382c6c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-58
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`{"bar": [0]}` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-580 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-580
deleted file mode 100644
index 5bb6d4ae78..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-580
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.notbaz[-1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-581 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-581
deleted file mode 100644
index edac73189d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-581
+++ /dev/null
@@ -1 +0,0 @@
-foo.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-582 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-582
deleted file mode 100644
index 458d0a6ddd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-582
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-583 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-583
deleted file mode 100644
index f757fd5345..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-583
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.*.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-584 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-584
deleted file mode 100644
index 670049d96f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-584
+++ /dev/null
@@ -1 +0,0 @@
-foo.*.*.*.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-585 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-585
deleted file mode 100644
index 3c88caafe8..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-585
+++ /dev/null
@@ -1 +0,0 @@
-*.bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-586 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-586
deleted file mode 100644
index f59ec20aab..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-586
+++ /dev/null
@@ -1 +0,0 @@
-*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-587 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-587
deleted file mode 100644
index 0852fcc789..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-587
+++ /dev/null
@@ -1 +0,0 @@
-*.sub1
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-588 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-588
deleted file mode 100644
index dee5695746..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-588
+++ /dev/null
@@ -1 +0,0 @@
-*.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-589 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-589
deleted file mode 100644
index 66781bba40..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-589
+++ /dev/null
@@ -1 +0,0 @@
-*.*.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-59 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-59
deleted file mode 100644
index 4aad20ae69..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-59
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`null` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-590 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-590
deleted file mode 100644
index 0db15d97e4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-590
+++ /dev/null
@@ -1 +0,0 @@
-*.sub1.foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-591 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-591
deleted file mode 100644
index b24be9d7d1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-591
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-592 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-592
deleted file mode 100644
index e6efe133fc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-592
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].notbar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-593 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-593
deleted file mode 100644
index 5a5194647a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-593
+++ /dev/null
@@ -1 +0,0 @@
-[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-594 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-594
deleted file mode 100644
index cd9fb6ba77..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-594
+++ /dev/null
@@ -1 +0,0 @@
-[*].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-595 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-595
deleted file mode 100644
index cbf1a5d596..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-595
+++ /dev/null
@@ -1 +0,0 @@
-[*].notbar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-596 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-596
deleted file mode 100644
index 8bd13b7eb4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-596
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[*].baz
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-597 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-597
deleted file mode 100644
index 7239f3e887..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-597
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[*].baz[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-598 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-598
deleted file mode 100644
index f5e431d9e3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-598
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[*].baz[1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-599 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-599
deleted file mode 100644
index d0c2595396..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-599
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[*].baz[2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-6 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-6
deleted file mode 100644
index b9749b7489..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-6
+++ /dev/null
@@ -1 +0,0 @@
-foo.bad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-60 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-60
deleted file mode 100644
index dac67509bb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-60
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`[1]` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-600 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-600
deleted file mode 100644
index a6388271e4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-600
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[*].baz[3]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-601 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-601
deleted file mode 100644
index 2a66ffe93b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-601
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-602 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-602
deleted file mode 100644
index b6b3695438..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-602
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-603 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-603
deleted file mode 100644
index 7e57f9e74c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-603
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-604 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-604
deleted file mode 100644
index c5f8bef0be..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-604
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[0][0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-605 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-605
deleted file mode 100644
index 3decf08030..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-605
+++ /dev/null
@@ -1 +0,0 @@
-foo.bar[0][0][0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-606 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-606
deleted file mode 100644
index 655e2959be..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-606
+++ /dev/null
@@ -1 +0,0 @@
-foo[0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-607 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-607
deleted file mode 100644
index 2aa159718c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-607
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[*].kind
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-608 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-608
deleted file mode 100644
index 556b380bab..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-608
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[0].kind
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-609 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-609
deleted file mode 100644
index 0de3229b83..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-609
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar.kind
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-61 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-61
deleted file mode 100644
index 130ed3b379..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-61
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`{"a":2}` == key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-610 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-610
deleted file mode 100644
index 3b511f1335..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-610
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-611 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-611
deleted file mode 100644
index c8dfa16e6b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-611
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-612 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-612
deleted file mode 100644
index 69f04ee23f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-612
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-613 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-613
deleted file mode 100644
index 3b511f1335..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-613
+++ /dev/null
@@ -1 +0,0 @@
-foo[*].bar[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-614 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-614
deleted file mode 100644
index 03e0c0cb93..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-614
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-615 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-615
deleted file mode 100644
index ac1c896682..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-615
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-616 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-616
deleted file mode 100644
index 03e0c0cb93..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-616
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-617 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-617
deleted file mode 100644
index ac1c896682..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-617
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-618 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-618
deleted file mode 100644
index 6494cf1c6a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-618
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][0][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-619 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-619
deleted file mode 100644
index 1406be5721..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-619
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][1][0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-62 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-62
deleted file mode 100644
index 3d15fcc169..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-62
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `true`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-620 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-620
deleted file mode 100644
index 72b5aa281a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-620
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][0][1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-621 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-621
deleted file mode 100644
index 02a26491ae..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-621
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][1][1]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-622 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-622
deleted file mode 100644
index cb08037e20..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-622
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-623 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-623
deleted file mode 100644
index 91d695995a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-623
+++ /dev/null
@@ -1 +0,0 @@
-foo[*][2][2]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-624 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-624
deleted file mode 100644
index f40f261ad1..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-624
+++ /dev/null
@@ -1 +0,0 @@
-bar[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-625 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-625
deleted file mode 100644
index 03904b1dec..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-625
+++ /dev/null
@@ -1 +0,0 @@
-bar[*].baz[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-626 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-626
deleted file mode 100644
index fd7c21c340..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-626
+++ /dev/null
@@ -1 +0,0 @@
-string[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-627 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-627
deleted file mode 100644
index d7ca4719a9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-627
+++ /dev/null
@@ -1 +0,0 @@
-hash[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-628 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-628
deleted file mode 100644
index b3ddffe3cf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-628
+++ /dev/null
@@ -1 +0,0 @@
-number[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-629 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-629
deleted file mode 100644
index c03cd39ebf..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-629
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue[*]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-63 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-63
deleted file mode 100644
index 08731af690..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-63
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `false`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-630 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-630
deleted file mode 100644
index b3c40cd533..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-630
+++ /dev/null
@@ -1 +0,0 @@
-string[*].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-631 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-631
deleted file mode 100644
index c5930d543f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-631
+++ /dev/null
@@ -1 +0,0 @@
-hash[*].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-632 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-632
deleted file mode 100644
index cc0b1a4896..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-632
+++ /dev/null
@@ -1 +0,0 @@
-number[*].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-633 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-633
deleted file mode 100644
index d677b96585..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-633
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue[*].foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-634 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-634
deleted file mode 100644
index c116664015..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-634
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue[*].foo[*].bar
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-635 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-635
deleted file mode 100644
index e339977108..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-635
+++ /dev/null
@@ -1 +0,0 @@
-string.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-636 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-636
deleted file mode 100644
index 76f53453a8..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-636
+++ /dev/null
@@ -1 +0,0 @@
-hash.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-637 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-637
deleted file mode 100644
index dd485072f2..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-637
+++ /dev/null
@@ -1 +0,0 @@
-number.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-638 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-638
deleted file mode 100644
index 16000c003c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-638
+++ /dev/null
@@ -1 +0,0 @@
-array.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-639 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-639
deleted file mode 100644
index 1d0d03ed3b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-639
+++ /dev/null
@@ -1 +0,0 @@
-nullvalue.*
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-64 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-64
deleted file mode 100644
index b67aebe98a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-64
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `0`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-640 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-640
deleted file mode 100644
index 7e8066d39f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-640
+++ /dev/null
@@ -1 +0,0 @@
-*[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-641 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-641
deleted file mode 100644
index 41ebe5ba9d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-641
+++ /dev/null
@@ -1 +0,0 @@
-`foo`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-642 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-642
deleted file mode 100644
index fe0397993c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-642
+++ /dev/null
@@ -1 +0,0 @@
-`foo\"quote`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-643 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-643
deleted file mode 100644
index 1a27fd80c3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-643
+++ /dev/null
@@ -1 +0,0 @@
-`✓`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-644 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-644
deleted file mode 100644
index 559a13456b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-644
+++ /dev/null
@@ -1 +0,0 @@
-`foo\"bar`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-645 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-645
deleted file mode 100644
index e31621b438..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-645
+++ /dev/null
@@ -1 +0,0 @@
-`1\``
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-646 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-646
deleted file mode 100644
index 6bf7a10362..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-646
+++ /dev/null
@@ -1 +0,0 @@
-`\\`.{a:`b`}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-647 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-647
deleted file mode 100644
index 41ebe5ba9d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-647
+++ /dev/null
@@ -1 +0,0 @@
-`foo`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-648 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-648
deleted file mode 100644
index 28b9bcbbb5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-648
+++ /dev/null
@@ -1 +0,0 @@
-` foo`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-649 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-649
deleted file mode 100644
index 41ebe5ba9d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-649
+++ /dev/null
@@ -1 +0,0 @@
-`foo`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-65 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-65
deleted file mode 100644
index d3ac793bb6..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-65
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `1`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-650 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-650
deleted file mode 100644
index fe0397993c..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-650
+++ /dev/null
@@ -1 +0,0 @@
-`foo\"quote`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-651 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-651
deleted file mode 100644
index 1a27fd80c3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-651
+++ /dev/null
@@ -1 +0,0 @@
-`✓`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-652 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-652
deleted file mode 100644
index 559a13456b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-652
+++ /dev/null
@@ -1 +0,0 @@
-`foo\"bar`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-653 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-653
deleted file mode 100644
index e31621b438..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-653
+++ /dev/null
@@ -1 +0,0 @@
-`1\``
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-654 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-654
deleted file mode 100644
index 6bf7a10362..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-654
+++ /dev/null
@@ -1 +0,0 @@
-`\\`.{a:`b`}
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-655 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-655
deleted file mode 100644
index 41ebe5ba9d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-655
+++ /dev/null
@@ -1 +0,0 @@
-`foo`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-656 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-656
deleted file mode 100644
index 28b9bcbbb5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-656
+++ /dev/null
@@ -1 +0,0 @@
-` foo`
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-66 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-66
deleted file mode 100644
index 065295bc17..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-66
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `null`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-67 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-67
deleted file mode 100644
index 43d164927d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-67
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `[1]`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-68 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-68
deleted file mode 100644
index 6b884fa866..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-68
+++ /dev/null
@@ -1 +0,0 @@
-foo[?key != `{"a":2}`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-69 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-69
deleted file mode 100644
index d85c779d0a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-69
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`true` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-7 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-7
deleted file mode 100644
index 44d6628cdc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-7
+++ /dev/null
@@ -1 +0,0 @@
-bad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-70 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-70
deleted file mode 100644
index 3e6dcf3045..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-70
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`false` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-71 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-71
deleted file mode 100644
index bdb820b30b..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-71
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`0` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-72 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-72
deleted file mode 100644
index 3f3048a004..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-72
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`1` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-73 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-73
deleted file mode 100644
index dacc257245..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-73
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`null` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-74 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-74
deleted file mode 100644
index 32ebae8800..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-74
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`[1]` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-75 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-75
deleted file mode 100644
index dcd023e0fb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-75
+++ /dev/null
@@ -1 +0,0 @@
-foo[?`{"a":2}` != key]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-76 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-76
deleted file mode 100644
index e08cc13cbe..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-76
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[?bar==`1`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-77 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-77
deleted file mode 100644
index 1ec43f45fc..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-77
+++ /dev/null
@@ -1 +0,0 @@
-reservations[*].instances[?bar==`1`]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-78 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-78
deleted file mode 100644
index 3038711634..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-78
+++ /dev/null
@@ -1 +0,0 @@
-reservations[].instances[?bar==`1`][]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-79 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-79
deleted file mode 100644
index e3875746b3..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-79
+++ /dev/null
@@ -1 +0,0 @@
-foo[?bar==`1`].bar[0]
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-8 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-8
deleted file mode 100644
index da7bc1ccfd..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-8
+++ /dev/null
@@ -1 +0,0 @@
-bad.morebad.morebad
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-80 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-80
deleted file mode 100644
index 5c3d683565..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-80
+++ /dev/null
@@ -1 +0,0 @@
-foo[?a==`1`].b.c
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-81 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-81
deleted file mode 100644
index 6232808f0a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-81
+++ /dev/null
@@ -1 +0,0 @@
-abs(foo)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-82 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-82
deleted file mode 100644
index 6232808f0a..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-82
+++ /dev/null
@@ -1 +0,0 @@
-abs(foo)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-83 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-83
deleted file mode 100644
index 29497f4ff5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-83
+++ /dev/null
@@ -1 +0,0 @@
-abs(array[1])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-84 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-84
deleted file mode 100644
index 29497f4ff5..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-84
+++ /dev/null
@@ -1 +0,0 @@
-abs(array[1])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-85 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-85
deleted file mode 100644
index 346696563f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-85
+++ /dev/null
@@ -1 +0,0 @@
-abs(`-24`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-86 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-86
deleted file mode 100644
index 346696563f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-86
+++ /dev/null
@@ -1 +0,0 @@
-abs(`-24`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-87 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-87
deleted file mode 100644
index c6268f8473..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-87
+++ /dev/null
@@ -1 +0,0 @@
-avg(numbers)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-88 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-88
deleted file mode 100644
index 7ce703695e..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-88
+++ /dev/null
@@ -1 +0,0 @@
-ceil(`1.2`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-89 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-89
deleted file mode 100644
index 0561bc26d9..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-89
+++ /dev/null
@@ -1 +0,0 @@
-ceil(decimals[0])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-9 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-9
deleted file mode 100644
index 1910281566..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-9
+++ /dev/null
@@ -1 +0,0 @@
-foo
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-90 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-90
deleted file mode 100644
index c78c1fc300..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-90
+++ /dev/null
@@ -1 +0,0 @@
-ceil(decimals[1])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-91 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-91
deleted file mode 100644
index ebcb4bbdbb..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-91
+++ /dev/null
@@ -1 +0,0 @@
-ceil(decimals[2])
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-92 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-92
deleted file mode 100644
index 6edbf1afe4..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-92
+++ /dev/null
@@ -1 +0,0 @@
-contains('abc', 'a')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-93 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-93
deleted file mode 100644
index d2b2f070da..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-93
+++ /dev/null
@@ -1 +0,0 @@
-contains('abc', 'd')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-94 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-94
deleted file mode 100644
index 3535da2eca..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-94
+++ /dev/null
@@ -1 +0,0 @@
-contains(strings, 'a')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-95 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-95
deleted file mode 100644
index ba839fe60d..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-95
+++ /dev/null
@@ -1 +0,0 @@
-contains(decimals, `1.2`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-96 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-96
deleted file mode 100644
index f435818697..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-96
+++ /dev/null
@@ -1 +0,0 @@
-contains(decimals, `false`)
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-97 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-97
deleted file mode 100644
index adb65fc01f..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-97
+++ /dev/null
@@ -1 +0,0 @@
-ends_with(str, 'r')
\ No newline at end of file
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-98 b/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-98
deleted file mode 100644
index 93d6901bea..0000000000
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/corpus/expr-98
+++ /dev/null
@@ -1 +0,0 @@
-ends_with(str, 'tr')
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 327dc702ef..8363163dc7 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,6 @@
-TEST?=./...
+TEST?=$$(go list ./... | grep -v /vendor/)
VETARGS?=-asmdecl -atomic -bool -buildtags -copylocks -methods -nilfunc -printf -rangeloops -shift -structtags -unsafeptr
EXTERNAL_TOOLS=\
- github.com/tools/godep \
github.com/mitchellh/gox \
golang.org/x/tools/cmd/cover \
golang.org/x/tools/cmd/vet
@@ -19,7 +18,7 @@ dev: generate
# test runs the unit tests and vets the code
test: generate
- VAULT_TOKEN= TF_ACC= godep go test $(TEST) $(TESTARGS) -timeout=120s -parallel=4
+ VAULT_TOKEN= TF_ACC= go test $(TEST) $(TESTARGS) -timeout=120s -parallel=4
# testacc runs acceptance tests
testacc: generate
@@ -27,11 +26,11 @@ testacc: generate
echo "ERROR: Set TEST to a specific package"; \
exit 1; \
fi
- TF_ACC=1 godep go test $(TEST) -v $(TESTARGS) -timeout 45m
+ TF_ACC=1 go test $(TEST) -v $(TESTARGS) -timeout 45m
# testrace runs the race checker
testrace: generate
- CGO_ENABLED=1 VAULT_TOKEN= TF_ACC= godep go test -race $(TEST) $(TESTARGS)
+ CGO_ENABLED=1 VAULT_TOKEN= TF_ACC= go test -race $(TEST) $(TESTARGS)
cover:
./scripts/coverage.sh --html
@@ -39,7 +38,7 @@ cover:
# vet runs the Go source code static analysis tool `vet` to find
# any common errors.
vet:
- @go list -f '{{.Dir}}' ./... \
+ @go list -f '{{.Dir}}' ./... | grep -v /vendor/ \
| grep -v '.*github.com/hashicorp/vault$$' \
| xargs go tool vet ; if [ $$? -eq 1 ]; then \
echo ""; \
@@ -50,7 +49,7 @@ vet:
# generate runs `go generate` to build the dynamically generated
# source files.
generate:
- go generate ./...
+ go generate $(go list ./... | grep -v /vendor/)
# bootstrap the build by downloading additional tools
bootstrap:
diff --git a/README.md b/README.md
index 7f531128da..72e2fbad2e 100644
--- a/README.md
+++ b/README.md
@@ -57,11 +57,11 @@ Developing Vault
If you wish to work on Vault itself or any of its built-in systems,
you'll first need [Go](https://www.golang.org) installed on your
-machine (version 1.5+ is *required*).
+machine (version 1.6+ is *required*).
For local dev first make sure Go is properly installed, including setting up a
[GOPATH](https://golang.org/doc/code.html#GOPATH). After setting up Go, you can
-download the required build tools such as vet, cover, godep etc by bootstrapping
+download the required build tools such as vet, cover, etc by bootstrapping
your environment.
```sh
diff --git a/make.bat b/make.bat
index dbca83a4a3..f6252fd9d1 100644
--- a/make.bat
+++ b/make.bat
@@ -28,13 +28,13 @@ REM into ./bin/ as well as %GOPATH%/bin
REM generate runs `go generate` to build the dynamically generated
REM source files.
:generate
- go generate ./...
+ go list ./... | findstr /v vendor | go generate
goto :eof
REM test runs the unit tests and vets the code.
:test
call :testsetup
- godep go test %_TEST% %TESTARGS% -timeout=30s -parallel=4
+ go test %_TEST% %TESTARGS% -timeout=30s -parallel=4
call :setMaxExitCode %ERRORLEVEL%
echo.
goto vet
@@ -45,7 +45,7 @@ REM testacc runs acceptance tests.
if x%_TEST% == x./... goto testacc_fail
if x%_TEST% == x.\... goto testacc_fail
set TF_ACC=1
- godep go test %_TEST% -v %TESTARGS% -timeout 45m
+ go test %_TEST% -v %TESTARGS% -timeout 45m
exit /b %ERRORLEVEL%
:testacc_fail
echo ERROR: Set %%TEST%% to a specific package.
@@ -54,7 +54,7 @@ REM testacc runs acceptance tests.
REM testrace runs the race checker.
:testrace
call :testsetup
- godep go test -race %_TEST% %TESTARGS%
+ go test -race %_TEST% %TESTARGS%
exit /b %ERRORLEVEL%
REM testsetup calls `go generate` and defines the variables TF_ACC
@@ -80,7 +80,7 @@ REM any common errors.
set _vetExitCode=0
set _VAULT_PKG_DIRS=%TEMP%\vault-pkg-dirs.txt
- go list -f {{.Dir}} ./... >"%_VAULT_PKG_DIRS%"
+ go list -f {{.Dir}} ./... | findstr /v vendor >"%_VAULT_PKG_DIRS%"
REM Skip the first row, which is the main vault package (.*github.com/hashicorp/vault$)
for /f "delims= skip=1" %%d in ("%_VAULT_PKG_DIRS%") do (
go tool vet %_VETARGS% "%%d"
diff --git a/scripts/build.sh b/scripts/build.sh
index e997efc800..a1a78175e5 100755
--- a/scripts/build.sh
+++ b/scripts/build.sh
@@ -19,12 +19,10 @@ GIT_DIRTY=$(test -n "`git status --porcelain`" && echo "+CHANGES" || true)
XC_ARCH=${XC_ARCH:-"386 amd64 arm"}
XC_OS=${XC_OS:-linux darwin windows freebsd openbsd}
-# Store the original GOPATH so we can move the binary to it later
-ORIGINAL_GOPATH=${GOPATH:-$(go env GOPATH)}
-GOPATH="$(godep path):$ORIGINAL_GOPATH"
+GOPATH=${GOPATH:-$(go env GOPATH)}
case $(uname) in
CYGWIN*)
- ORIGINAL_GOPATH="$(cygpath $ORIGINAL_GOPATH)"
+ GOPATH="$(cygpath $GOPATH)"
;;
esac
@@ -53,7 +51,7 @@ gox \
# Move all the compiled things to the $GOPATH/bin
OLDIFS=$IFS
-IFS=: MAIN_GOPATH=($ORIGINAL_GOPATH)
+IFS=: MAIN_GOPATH=($GOPATH)
IFS=$OLDIFS
# Copy our OS/Arch to the bin/ directory
diff --git a/scripts/coverage.sh b/scripts/coverage.sh
index 1d64f1fe53..ad80496d15 100755
--- a/scripts/coverage.sh
+++ b/scripts/coverage.sh
@@ -38,7 +38,7 @@ push_to_coveralls() {
goveralls -coverprofile="$profile"
}
-generate_cover_data $(go list ./...)
+generate_cover_data $(go list ./... | grep -v /vendor/)
show_cover_report func
case "$1" in
"")
diff --git a/scripts/cross/Dockerfile b/scripts/cross/Dockerfile
index 2c7a0304b6..09b566daf3 100644
--- a/scripts/cross/Dockerfile
+++ b/scripts/cross/Dockerfile
@@ -20,7 +20,6 @@ ENV GOROOT /goroot
ENV PATH $GOROOT/bin:$GOPATH/bin:$PATH
RUN go get github.com/mitchellh/gox
-RUN go get github.com/tools/godep
RUN mkdir -p /gopath/src/github.com/hashicorp/vault
WORKDIR /gopath/src/github.com/hashicorp/vault
diff --git a/scripts/windows/build.bat b/scripts/windows/build.bat
index 86ff2f5f65..feace8f29b 100644
--- a/scripts/windows/build.bat
+++ b/scripts/windows/build.bat
@@ -44,13 +44,6 @@ md bin 2>nul
REM If its dev mode, only build for ourself
if not %_DEV_BUILD% equ 1 goto build
-set _ORIGINAL_GOPATH=%GOPATH%
-set _GODEP_PATH_FILE=%TEMP%\vault-godep-path.txt
-godep path >"%_GODEP_PATH_FILE%"
-set /p GOPATH=<"%_GODEP_PATH_FILE%"
-del /f "%_GODEP_PATH_FILE%" 2>nul
-set GOPATH=%GOPATH%;%_ORIGINAL_GOPATH%
-
:devbuild
echo ==^> Preparing for development build...
set _GO_ENV_TMP_FILE=%TEMP%\vault-go-env.txt
@@ -72,7 +65,6 @@ gox^
.
if %ERRORLEVEL% equ 1 set %_EXITCODE%=1
-set GOPATH=%_ORIGINAL_GOPATH%
if %_EXITCODE% equ 1 exit /b %_EXITCODE%
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/.gitignore b/vendor/github.com/armon/go-metrics/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/.gitignore
rename to vendor/github.com/armon/go-metrics/.gitignore
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/LICENSE b/vendor/github.com/armon/go-metrics/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/LICENSE
rename to vendor/github.com/armon/go-metrics/LICENSE
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/README.md b/vendor/github.com/armon/go-metrics/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/README.md
rename to vendor/github.com/armon/go-metrics/README.md
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/const_unix.go b/vendor/github.com/armon/go-metrics/const_unix.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/const_unix.go
rename to vendor/github.com/armon/go-metrics/const_unix.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/const_windows.go b/vendor/github.com/armon/go-metrics/const_windows.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/const_windows.go
rename to vendor/github.com/armon/go-metrics/const_windows.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/datadog/dogstatsd.go b/vendor/github.com/armon/go-metrics/datadog/dogstatsd.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/datadog/dogstatsd.go
rename to vendor/github.com/armon/go-metrics/datadog/dogstatsd.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/inmem.go b/vendor/github.com/armon/go-metrics/inmem.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/inmem.go
rename to vendor/github.com/armon/go-metrics/inmem.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/inmem_signal.go b/vendor/github.com/armon/go-metrics/inmem_signal.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/inmem_signal.go
rename to vendor/github.com/armon/go-metrics/inmem_signal.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/metrics.go b/vendor/github.com/armon/go-metrics/metrics.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/metrics.go
rename to vendor/github.com/armon/go-metrics/metrics.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/prometheus/prometheus.go b/vendor/github.com/armon/go-metrics/prometheus/prometheus.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/prometheus/prometheus.go
rename to vendor/github.com/armon/go-metrics/prometheus/prometheus.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/sink.go b/vendor/github.com/armon/go-metrics/sink.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/sink.go
rename to vendor/github.com/armon/go-metrics/sink.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/start.go b/vendor/github.com/armon/go-metrics/start.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/start.go
rename to vendor/github.com/armon/go-metrics/start.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/statsd.go b/vendor/github.com/armon/go-metrics/statsd.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/statsd.go
rename to vendor/github.com/armon/go-metrics/statsd.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-metrics/statsite.go b/vendor/github.com/armon/go-metrics/statsite.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-metrics/statsite.go
rename to vendor/github.com/armon/go-metrics/statsite.go
diff --git a/Godeps/_workspace/src/github.com/armon/go-radix/.gitignore b/vendor/github.com/armon/go-radix/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-radix/.gitignore
rename to vendor/github.com/armon/go-radix/.gitignore
diff --git a/Godeps/_workspace/src/github.com/armon/go-radix/.travis.yml b/vendor/github.com/armon/go-radix/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-radix/.travis.yml
rename to vendor/github.com/armon/go-radix/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/armon/go-radix/LICENSE b/vendor/github.com/armon/go-radix/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-radix/LICENSE
rename to vendor/github.com/armon/go-radix/LICENSE
diff --git a/Godeps/_workspace/src/github.com/armon/go-radix/README.md b/vendor/github.com/armon/go-radix/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-radix/README.md
rename to vendor/github.com/armon/go-radix/README.md
diff --git a/Godeps/_workspace/src/github.com/armon/go-radix/radix.go b/vendor/github.com/armon/go-radix/radix.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/armon/go-radix/radix.go
rename to vendor/github.com/armon/go-radix/radix.go
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/.travis.yml b/vendor/github.com/asaskevich/govalidator/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/.travis.yml
rename to vendor/github.com/asaskevich/govalidator/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/LICENSE b/vendor/github.com/asaskevich/govalidator/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/LICENSE
rename to vendor/github.com/asaskevich/govalidator/LICENSE
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/README.md b/vendor/github.com/asaskevich/govalidator/README.md
similarity index 98%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/README.md
rename to vendor/github.com/asaskevich/govalidator/README.md
index 05d81a4f92..a6feb84121 100644
--- a/Godeps/_workspace/src/github.com/asaskevich/govalidator/README.md
+++ b/vendor/github.com/asaskevich/govalidator/README.md
@@ -50,6 +50,8 @@ func IsBase64(str string) bool
func IsByteLength(str string, min, max int) bool
func IsCreditCard(str string) bool
func IsDataURI(str string) bool
+func IsDialString(str string) bool
+func IsDNSName(str string) bool
func IsDivisibleBy(str, num string) bool
func IsEmail(str string) bool
func IsFilePath(str string) (bool, int)
@@ -80,6 +82,7 @@ func IsNonNegative(value float64) bool
func IsNonPositive(value float64) bool
func IsNull(str string) bool
func IsNumeric(str string) bool
+func IsPort(str string) bool
func IsPositive(value float64) bool
func IsPrintableASCII(str string) bool
func IsRGBcolor(str string) bool
@@ -188,6 +191,8 @@ Here is a list of available validators for struct fields (validator - used funct
"base64": IsBase64,
"creditcard": IsCreditCard,
"datauri": IsDataURI,
+"dialstring": IsDialString,
+"dns": IsDNSName,
"email": IsEmail,
"float": IsFloat,
"fullwidth": IsFullWidth,
@@ -208,6 +213,7 @@ Here is a list of available validators for struct fields (validator - used funct
"multibyte": IsMultibyte,
"null": IsNull,
"numeric": IsNumeric,
+"port": IsPort,
"printableascii": IsPrintableASCII,
"requri": IsRequestURI,
"requrl": IsRequestURL,
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/arrays.go b/vendor/github.com/asaskevich/govalidator/arrays.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/arrays.go
rename to vendor/github.com/asaskevich/govalidator/arrays.go
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/converter.go b/vendor/github.com/asaskevich/govalidator/converter.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/converter.go
rename to vendor/github.com/asaskevich/govalidator/converter.go
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/error.go b/vendor/github.com/asaskevich/govalidator/error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/error.go
rename to vendor/github.com/asaskevich/govalidator/error.go
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/numerics.go b/vendor/github.com/asaskevich/govalidator/numerics.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/numerics.go
rename to vendor/github.com/asaskevich/govalidator/numerics.go
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/patterns.go b/vendor/github.com/asaskevich/govalidator/patterns.go
similarity index 97%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/patterns.go
rename to vendor/github.com/asaskevich/govalidator/patterns.go
index 474d0143dd..206822f0a5 100644
--- a/Godeps/_workspace/src/github.com/asaskevich/govalidator/patterns.go
+++ b/vendor/github.com/asaskevich/govalidator/patterns.go
@@ -29,6 +29,7 @@ const (
DataURI string = "^data:.+\\/(.+);base64$"
Latitude string = "^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?)$"
Longitude string = "^[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)$"
+ DNSName string = `^([a-zA-Z0-9]{1}[a-zA-Z0-9_-]{1,62}){1}(.[a-zA-Z0-9]{1}[a-zA-Z0-9_-]{1,62})*$`
URL string = `^((ftp|https?):\/\/)?(\S+(:\S*)?@)?((([1-9]\d?|1\d\d|2[01]\d|22[0-3])(\.(1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.([0-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(([a-zA-Z0-9]+([-\.][a-zA-Z0-9]+)*)|((www\.)?))?(([a-z\x{00a1}-\x{ffff}0-9]+-?-?)*[a-z\x{00a1}-\x{ffff}0-9]+)(?:\.([a-z\x{00a1}-\x{ffff}]{2,}))?))(:(\d{1,5}))?((\/|\?|#)[^\s]*)?$`
SSN string = `^\d{3}[- ]?\d{2}[- ]?\d{4}$`
WinPath string = `^[a-zA-Z]:\\(?:[^\\/:*?"<>|\r\n]+\\)*[^\\/:*?"<>|\r\n]*$`
@@ -73,6 +74,7 @@ var (
rxDataURI = regexp.MustCompile(DataURI)
rxLatitude = regexp.MustCompile(Latitude)
rxLongitude = regexp.MustCompile(Longitude)
+ rxDNSName = regexp.MustCompile(DNSName)
rxURL = regexp.MustCompile(URL)
rxSSN = regexp.MustCompile(SSN)
rxWinPath = regexp.MustCompile(WinPath)
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/types.go b/vendor/github.com/asaskevich/govalidator/types.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/types.go
rename to vendor/github.com/asaskevich/govalidator/types.go
index 6cc1d5bbd9..959846a3f1 100644
--- a/Godeps/_workspace/src/github.com/asaskevich/govalidator/types.go
+++ b/vendor/github.com/asaskevich/govalidator/types.go
@@ -46,6 +46,7 @@ var CustomTypeTagMap = map[string]CustomTypeValidator{}
var TagMap = map[string]Validator{
"email": IsEmail,
"url": IsURL,
+ "dialstring": IsDialString,
"requrl": IsRequestURL,
"requri": IsRequestURI,
"alpha": IsAlpha,
@@ -80,8 +81,10 @@ var TagMap = map[string]Validator{
"base64": IsBase64,
"datauri": IsDataURI,
"ip": IsIP,
+ "port": IsPort,
"ipv4": IsIPv4,
"ipv6": IsIPv6,
+ "dns": IsDNSName,
"mac": IsMAC,
"latitude": IsLatitude,
"longitude": IsLongitude,
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/utils.go b/vendor/github.com/asaskevich/govalidator/utils.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/utils.go
rename to vendor/github.com/asaskevich/govalidator/utils.go
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/validator.go b/vendor/github.com/asaskevich/govalidator/validator.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/validator.go
rename to vendor/github.com/asaskevich/govalidator/validator.go
index 8081c2380c..82b1ce4040 100644
--- a/Godeps/_workspace/src/github.com/asaskevich/govalidator/validator.go
+++ b/vendor/github.com/asaskevich/govalidator/validator.go
@@ -9,7 +9,9 @@ import (
"reflect"
"regexp"
"sort"
+ "strconv"
"strings"
+
"unicode"
"unicode/utf8"
)
@@ -450,11 +452,38 @@ func IsISO3166Alpha3(str string) bool {
return false
}
+// IsDNSName will validate the given string as a DNS name
+func IsDNSName(str string) bool {
+ if str == "" || len(strings.Replace(str,".","",-1)) > 255 {
+ // constraints already violated
+ return false
+ }
+ return rxDNSName.MatchString(str)
+}
+
+// IsDialString validates the given string for usage with the various Dial() functions
+func IsDialString(str string) bool {
+
+ if h, p, err := net.SplitHostPort(str); err == nil && h != "" && p != "" && (IsDNSName(h) || IsIP(h)) && IsPort(p) {
+ return true
+ }
+
+ return false
+}
+
// IsIP checks if a string is either IP version 4 or 6.
func IsIP(str string) bool {
return net.ParseIP(str) != nil
}
+// IsPort checks if a string represents a valid port
+func IsPort(str string) bool {
+ if i, err := strconv.Atoi(str); err == nil && i > 0 && i < 65536 {
+ return true
+ }
+ return false
+}
+
// IsIPv4 check if the string is an IP version 4.
func IsIPv4(str string) bool {
ip := net.ParseIP(str)
diff --git a/Godeps/_workspace/src/github.com/asaskevich/govalidator/wercker.yml b/vendor/github.com/asaskevich/govalidator/wercker.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/asaskevich/govalidator/wercker.yml
rename to vendor/github.com/asaskevich/govalidator/wercker.yml
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/LICENSE.txt b/vendor/github.com/aws/aws-sdk-go/LICENSE.txt
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/LICENSE.txt
rename to vendor/github.com/aws/aws-sdk-go/LICENSE.txt
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/NOTICE.txt b/vendor/github.com/aws/aws-sdk-go/NOTICE.txt
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/NOTICE.txt
rename to vendor/github.com/aws/aws-sdk-go/NOTICE.txt
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awserr/error.go b/vendor/github.com/aws/aws-sdk-go/aws/awserr/error.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awserr/error.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awserr/error.go
index be8b517b34..05a179c2c5 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awserr/error.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/awserr/error.go
@@ -14,13 +14,13 @@ package awserr
// if err != nil {
// if awsErr, ok := err.(awserr.Error); ok {
// // Get error details
-// log.Println("Error:", err.Code(), err.Message())
+// log.Println("Error:", awsErr.Code(), awsErr.Message())
//
// // Prints out full error message, including original error if there was one.
-// log.Println("Error:", err.Error())
+// log.Println("Error:", awsErr.Error())
//
// // Get original error
-// if origErr := err.Err(); origErr != nil {
+// if origErr := awsErr.OrigErr(); origErr != nil {
// // operate on original error.
// }
// } else {
@@ -64,9 +64,6 @@ type BatchError interface {
// If origErr satisfies the Error interface it will not be wrapped within a new
// Error object and will instead be returned.
func New(code, message string, origErr error) Error {
- if e, ok := origErr.(Error); ok && e != nil {
- return e
- }
return newBaseError(code, message, origErr)
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awserr/types.go b/vendor/github.com/aws/aws-sdk-go/aws/awserr/types.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awserr/types.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awserr/types.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/copy.go b/vendor/github.com/aws/aws-sdk-go/aws/awsutil/copy.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/copy.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awsutil/copy.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/equal.go b/vendor/github.com/aws/aws-sdk-go/aws/awsutil/equal.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/equal.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awsutil/equal.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/path_value.go b/vendor/github.com/aws/aws-sdk-go/aws/awsutil/path_value.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/path_value.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awsutil/path_value.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/prettify.go b/vendor/github.com/aws/aws-sdk-go/aws/awsutil/prettify.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/prettify.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awsutil/prettify.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/string_value.go b/vendor/github.com/aws/aws-sdk-go/aws/awsutil/string_value.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/awsutil/string_value.go
rename to vendor/github.com/aws/aws-sdk-go/aws/awsutil/string_value.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/client/client.go b/vendor/github.com/aws/aws-sdk-go/aws/client/client.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/client/client.go
rename to vendor/github.com/aws/aws-sdk-go/aws/client/client.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/client/default_retryer.go b/vendor/github.com/aws/aws-sdk-go/aws/client/default_retryer.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/client/default_retryer.go
rename to vendor/github.com/aws/aws-sdk-go/aws/client/default_retryer.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/client/metadata/client_info.go b/vendor/github.com/aws/aws-sdk-go/aws/client/metadata/client_info.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/client/metadata/client_info.go
rename to vendor/github.com/aws/aws-sdk-go/aws/client/metadata/client_info.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/config.go b/vendor/github.com/aws/aws-sdk-go/aws/config.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/config.go
rename to vendor/github.com/aws/aws-sdk-go/aws/config.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/convert_types.go b/vendor/github.com/aws/aws-sdk-go/aws/convert_types.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/convert_types.go
rename to vendor/github.com/aws/aws-sdk-go/aws/convert_types.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/corehandlers/handlers.go b/vendor/github.com/aws/aws-sdk-go/aws/corehandlers/handlers.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/corehandlers/handlers.go
rename to vendor/github.com/aws/aws-sdk-go/aws/corehandlers/handlers.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/corehandlers/param_validator.go b/vendor/github.com/aws/aws-sdk-go/aws/corehandlers/param_validator.go
similarity index 92%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/corehandlers/param_validator.go
rename to vendor/github.com/aws/aws-sdk-go/aws/corehandlers/param_validator.go
index 3b53f5e026..ea07580a9a 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/corehandlers/param_validator.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/corehandlers/param_validator.go
@@ -30,6 +30,11 @@ type validator struct {
errors []string
}
+// There's no validation to be done on the contents of []byte values. Prepare
+// to check validateAny arguments against that type so we can quickly skip
+// them.
+var byteSliceType = reflect.TypeOf([]byte(nil))
+
// validateAny will validate any struct, slice or map type. All validations
// are also performed recursively for nested types.
func (v *validator) validateAny(value reflect.Value, path string) {
@@ -42,6 +47,10 @@ func (v *validator) validateAny(value reflect.Value, path string) {
case reflect.Struct:
v.validateStruct(value, path)
case reflect.Slice:
+ if value.Type() == byteSliceType {
+ // We don't need to validate the contents of []byte.
+ return
+ }
for i := 0; i < value.Len(); i++ {
v.validateAny(value.Index(i), path+fmt.Sprintf("[%d]", i))
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/chain_provider.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/chain_provider.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/chain_provider.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/chain_provider.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/credentials.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/credentials.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go
index 5dd71f02e8..7b8ebf5f9d 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/credentials.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/credentials.go
@@ -76,6 +76,9 @@ type Value struct {
// AWS Session Token
SessionToken string
+
+ // Provider used to get credentials
+ ProviderName string
}
// A Provider is the interface for any component which will provide credentials
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds/ec2_role_provider.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds/ec2_role_provider.go
similarity index 87%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds/ec2_role_provider.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds/ec2_role_provider.go
index 04c8921a0e..aa9d689a01 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds/ec2_role_provider.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds/ec2_role_provider.go
@@ -14,6 +14,9 @@ import (
"github.com/aws/aws-sdk-go/aws/ec2metadata"
)
+// ProviderName provides a name of EC2Role provider
+const ProviderName = "EC2RoleProvider"
+
// A EC2RoleProvider retrieves credentials from the EC2 service, and keeps track if
// those credentials are expired.
//
@@ -85,17 +88,17 @@ func NewCredentialsWithClient(client *ec2metadata.EC2Metadata, options ...func(*
func (m *EC2RoleProvider) Retrieve() (credentials.Value, error) {
credsList, err := requestCredList(m.Client)
if err != nil {
- return credentials.Value{}, err
+ return credentials.Value{ProviderName: ProviderName}, err
}
if len(credsList) == 0 {
- return credentials.Value{}, awserr.New("EmptyEC2RoleList", "empty EC2 Role list", nil)
+ return credentials.Value{ProviderName: ProviderName}, awserr.New("EmptyEC2RoleList", "empty EC2 Role list", nil)
}
credsName := credsList[0]
roleCreds, err := requestCred(m.Client, credsName)
if err != nil {
- return credentials.Value{}, err
+ return credentials.Value{ProviderName: ProviderName}, err
}
m.SetExpiration(roleCreds.Expiration, m.ExpiryWindow)
@@ -104,6 +107,7 @@ func (m *EC2RoleProvider) Retrieve() (credentials.Value, error) {
AccessKeyID: roleCreds.AccessKeyID,
SecretAccessKey: roleCreds.SecretAccessKey,
SessionToken: roleCreds.Token,
+ ProviderName: ProviderName,
}, nil
}
@@ -128,7 +132,7 @@ const iamSecurityCredsPath = "/iam/security-credentials"
func requestCredList(client *ec2metadata.EC2Metadata) ([]string, error) {
resp, err := client.GetMetadata(iamSecurityCredsPath)
if err != nil {
- return nil, awserr.New("EC2RoleRequestError", "failed to list EC2 Roles", err)
+ return nil, awserr.New("EC2RoleRequestError", "no EC2 instance role found", err)
}
credsList := []string{}
@@ -138,7 +142,7 @@ func requestCredList(client *ec2metadata.EC2Metadata) ([]string, error) {
}
if err := s.Err(); err != nil {
- return nil, awserr.New("SerializationError", "failed to read list of EC2 Roles", err)
+ return nil, awserr.New("SerializationError", "failed to read EC2 instance role from metadata service", err)
}
return credsList, nil
@@ -153,7 +157,7 @@ func requestCred(client *ec2metadata.EC2Metadata, credsName string) (ec2RoleCred
if err != nil {
return ec2RoleCredRespBody{},
awserr.New("EC2RoleRequestError",
- fmt.Sprintf("failed to get %s EC2 Role credentials", credsName),
+ fmt.Sprintf("failed to get %s EC2 instance role credentials", credsName),
err)
}
@@ -161,7 +165,7 @@ func requestCred(client *ec2metadata.EC2Metadata, credsName string) (ec2RoleCred
if err := json.NewDecoder(strings.NewReader(resp)).Decode(&respCreds); err != nil {
return ec2RoleCredRespBody{},
awserr.New("SerializationError",
- fmt.Sprintf("failed to decode %s EC2 Role credentials", credsName),
+ fmt.Sprintf("failed to decode %s EC2 instance role credentials", credsName),
err)
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/env_provider.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/env_provider.go
similarity index 86%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/env_provider.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/env_provider.go
index 043e861d6f..96655bc46a 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/env_provider.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/env_provider.go
@@ -6,6 +6,9 @@ import (
"github.com/aws/aws-sdk-go/aws/awserr"
)
+// EnvProviderName provides a name of Env provider
+const EnvProviderName = "EnvProvider"
+
var (
// ErrAccessKeyIDNotFound is returned when the AWS Access Key ID can't be
// found in the process's environment.
@@ -52,11 +55,11 @@ func (e *EnvProvider) Retrieve() (Value, error) {
}
if id == "" {
- return Value{}, ErrAccessKeyIDNotFound
+ return Value{ProviderName: EnvProviderName}, ErrAccessKeyIDNotFound
}
if secret == "" {
- return Value{}, ErrSecretAccessKeyNotFound
+ return Value{ProviderName: EnvProviderName}, ErrSecretAccessKeyNotFound
}
e.retrieved = true
@@ -64,6 +67,7 @@ func (e *EnvProvider) Retrieve() (Value, error) {
AccessKeyID: id,
SecretAccessKey: secret,
SessionToken: os.Getenv("AWS_SESSION_TOKEN"),
+ ProviderName: EnvProviderName,
}, nil
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/example.ini b/vendor/github.com/aws/aws-sdk-go/aws/credentials/example.ini
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/example.ini
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/example.ini
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/shared_credentials_provider.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/shared_credentials_provider.go
similarity index 84%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/shared_credentials_provider.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/shared_credentials_provider.go
index 09bd00a950..7fb7cbf0db 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/shared_credentials_provider.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/shared_credentials_provider.go
@@ -10,6 +10,9 @@ import (
"github.com/aws/aws-sdk-go/aws/awserr"
)
+// SharedCredsProviderName provides a name of SharedCreds provider
+const SharedCredsProviderName = "SharedCredentialsProvider"
+
var (
// ErrSharedCredentialsHomeNotFound is emitted when the user directory cannot be found.
//
@@ -55,12 +58,12 @@ func (p *SharedCredentialsProvider) Retrieve() (Value, error) {
filename, err := p.filename()
if err != nil {
- return Value{}, err
+ return Value{ProviderName: SharedCredsProviderName}, err
}
creds, err := loadProfile(filename, p.profile())
if err != nil {
- return Value{}, err
+ return Value{ProviderName: SharedCredsProviderName}, err
}
p.retrieved = true
@@ -78,23 +81,23 @@ func (p *SharedCredentialsProvider) IsExpired() bool {
func loadProfile(filename, profile string) (Value, error) {
config, err := ini.Load(filename)
if err != nil {
- return Value{}, awserr.New("SharedCredsLoad", "failed to load shared credentials file", err)
+ return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsLoad", "failed to load shared credentials file", err)
}
iniProfile, err := config.GetSection(profile)
if err != nil {
- return Value{}, awserr.New("SharedCredsLoad", "failed to get profile", err)
+ return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsLoad", "failed to get profile", err)
}
id, err := iniProfile.GetKey("aws_access_key_id")
if err != nil {
- return Value{}, awserr.New("SharedCredsAccessKey",
+ return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsAccessKey",
fmt.Sprintf("shared credentials %s in %s did not contain aws_access_key_id", profile, filename),
err)
}
secret, err := iniProfile.GetKey("aws_secret_access_key")
if err != nil {
- return Value{}, awserr.New("SharedCredsSecret",
+ return Value{ProviderName: SharedCredsProviderName}, awserr.New("SharedCredsSecret",
fmt.Sprintf("shared credentials %s in %s did not contain aws_secret_access_key", profile, filename),
nil)
}
@@ -106,6 +109,7 @@ func loadProfile(filename, profile string) (Value, error) {
AccessKeyID: id.String(),
SecretAccessKey: secret.String(),
SessionToken: token.String(),
+ ProviderName: SharedCredsProviderName,
}, nil
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/static_provider.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/static_provider.go
similarity index 83%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/static_provider.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/static_provider.go
index 530a9ac2f3..71189e733d 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/static_provider.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/static_provider.go
@@ -4,6 +4,9 @@ import (
"github.com/aws/aws-sdk-go/aws/awserr"
)
+// StaticProviderName provides a name of Static provider
+const StaticProviderName = "StaticProvider"
+
var (
// ErrStaticCredentialsEmpty is emitted when static credentials are empty.
//
@@ -30,9 +33,10 @@ func NewStaticCredentials(id, secret, token string) *Credentials {
// Retrieve returns the credentials or error if the credentials are invalid.
func (s *StaticProvider) Retrieve() (Value, error) {
if s.AccessKeyID == "" || s.SecretAccessKey == "" {
- return Value{}, ErrStaticCredentialsEmpty
+ return Value{ProviderName: StaticProviderName}, ErrStaticCredentialsEmpty
}
+ s.Value.ProviderName = StaticProviderName
return s.Value, nil
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/stscreds/assume_role_provider.go b/vendor/github.com/aws/aws-sdk-go/aws/credentials/stscreds/assume_role_provider.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/stscreds/assume_role_provider.go
rename to vendor/github.com/aws/aws-sdk-go/aws/credentials/stscreds/assume_role_provider.go
index 0214860d4c..4d6408b9d8 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/credentials/stscreds/assume_role_provider.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/credentials/stscreds/assume_role_provider.go
@@ -14,6 +14,9 @@ import (
"github.com/aws/aws-sdk-go/service/sts"
)
+// ProviderName provides a name of AssumeRole provider
+const ProviderName = "AssumeRoleProvider"
+
// AssumeRoler represents the minimal subset of the STS client API used by this provider.
type AssumeRoler interface {
AssumeRole(input *sts.AssumeRoleInput) (*sts.AssumeRoleOutput, error)
@@ -116,7 +119,7 @@ func (p *AssumeRoleProvider) Retrieve() (credentials.Value, error) {
})
if err != nil {
- return credentials.Value{}, err
+ return credentials.Value{ProviderName: ProviderName}, err
}
// We will proactively generate new credentials before they expire.
@@ -126,5 +129,6 @@ func (p *AssumeRoleProvider) Retrieve() (credentials.Value, error) {
AccessKeyID: *roleOutput.Credentials.AccessKeyId,
SecretAccessKey: *roleOutput.Credentials.SecretAccessKey,
SessionToken: *roleOutput.Credentials.SessionToken,
+ ProviderName: ProviderName,
}, nil
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/defaults/defaults.go b/vendor/github.com/aws/aws-sdk-go/aws/defaults/defaults.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/defaults/defaults.go
rename to vendor/github.com/aws/aws-sdk-go/aws/defaults/defaults.go
index 42c883aa9f..043960d3fc 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/defaults/defaults.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/defaults/defaults.go
@@ -67,6 +67,7 @@ func Handlers() request.Handlers {
handlers.Validate.PushBackNamed(corehandlers.ValidateEndpointHandler)
handlers.Build.PushBackNamed(corehandlers.SDKVersionUserAgentHandler)
+ handlers.Build.AfterEachFn = request.HandlerListStopOnError
handlers.Sign.PushBackNamed(corehandlers.BuildContentLengthHandler)
handlers.Send.PushBackNamed(corehandlers.SendHandler)
handlers.AfterRetry.PushBackNamed(corehandlers.AfterRetryHandler)
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/ec2metadata/api.go b/vendor/github.com/aws/aws-sdk-go/aws/ec2metadata/api.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/ec2metadata/api.go
rename to vendor/github.com/aws/aws-sdk-go/aws/ec2metadata/api.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/ec2metadata/service.go b/vendor/github.com/aws/aws-sdk-go/aws/ec2metadata/service.go
similarity index 86%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/ec2metadata/service.go
rename to vendor/github.com/aws/aws-sdk-go/aws/ec2metadata/service.go
index 9e16c1cf7e..5b4379dbd8 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/ec2metadata/service.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/ec2metadata/service.go
@@ -3,7 +3,9 @@
package ec2metadata
import (
- "io/ioutil"
+ "bytes"
+ "errors"
+ "io"
"net/http"
"time"
@@ -91,23 +93,28 @@ type metadataOutput struct {
func unmarshalHandler(r *request.Request) {
defer r.HTTPResponse.Body.Close()
- b, err := ioutil.ReadAll(r.HTTPResponse.Body)
- if err != nil {
+ b := &bytes.Buffer{}
+ if _, err := io.Copy(b, r.HTTPResponse.Body); err != nil {
r.Error = awserr.New("SerializationError", "unable to unmarshal EC2 metadata respose", err)
+ return
}
- data := r.Data.(*metadataOutput)
- data.Content = string(b)
+ if data, ok := r.Data.(*metadataOutput); ok {
+ data.Content = b.String()
+ }
}
func unmarshalError(r *request.Request) {
defer r.HTTPResponse.Body.Close()
- _, err := ioutil.ReadAll(r.HTTPResponse.Body)
- if err != nil {
+ b := &bytes.Buffer{}
+ if _, err := io.Copy(b, r.HTTPResponse.Body); err != nil {
r.Error = awserr.New("SerializationError", "unable to unmarshal EC2 metadata error respose", err)
+ return
}
- // TODO extract the error...
+ // Response body format is not consistent between metadata endpoints.
+ // Grab the error message as a string and include that as the source error
+ r.Error = awserr.New("EC2MetadataError", "failed to make EC2Metadata request", errors.New(b.String()))
}
func validateEndpointHandler(r *request.Request) {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/errors.go b/vendor/github.com/aws/aws-sdk-go/aws/errors.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/errors.go
rename to vendor/github.com/aws/aws-sdk-go/aws/errors.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/logger.go b/vendor/github.com/aws/aws-sdk-go/aws/logger.go
similarity index 87%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/logger.go
rename to vendor/github.com/aws/aws-sdk-go/aws/logger.go
index f536948738..db87188e20 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/logger.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/logger.go
@@ -79,6 +79,20 @@ type Logger interface {
Log(...interface{})
}
+// A LoggerFunc is a convenience type to convert a function taking a variadic
+// list of arguments and wrap it so the Logger interface can be used.
+//
+// Example:
+// s3.New(sess, &aws.Config{Logger: aws.LoggerFunc(func(args ...interface{}) {
+// fmt.Fprintln(os.Stdout, args...)
+// })})
+type LoggerFunc func(...interface{})
+
+// Log calls the wrapped function with the arguments provided
+func (f LoggerFunc) Log(args ...interface{}) {
+ f(args...)
+}
+
// NewDefaultLogger returns a Logger which will write log messages to stdout, and
// use same formatting runes as the stdlib log.Logger
func NewDefaultLogger() Logger {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/handlers.go b/vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go
similarity index 70%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/handlers.go
rename to vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go
index 3e90a7976a..5279c19c09 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/handlers.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go
@@ -50,9 +50,28 @@ func (h *Handlers) Clear() {
h.AfterRetry.Clear()
}
+// A HandlerListRunItem represents an entry in the HandlerList which
+// is being run.
+type HandlerListRunItem struct {
+ Index int
+ Handler NamedHandler
+ Request *Request
+}
+
// A HandlerList manages zero or more handlers in a list.
type HandlerList struct {
list []NamedHandler
+
+ // Called after each request handler in the list is called. If set
+ // and the func returns true the HandlerList will continue to iterate
+ // over the request handlers. If false is returned the HandlerList
+ // will stop iterating.
+ //
+ // Should be used if extra logic to be performed between each handler
+ // in the list. This can be used to terminate a list's iteration
+ // based on a condition such as error like, HandlerListStopOnError.
+ // Or for logging like HandlerListLogItem.
+ AfterEachFn func(item HandlerListRunItem) bool
}
// A NamedHandler is a struct that contains a name and function callback.
@@ -63,7 +82,9 @@ type NamedHandler struct {
// copy creates a copy of the handler list.
func (l *HandlerList) copy() HandlerList {
- var n HandlerList
+ n := HandlerList{
+ AfterEachFn: l.AfterEachFn,
+ }
n.list = append([]NamedHandler{}, l.list...)
return n
}
@@ -111,11 +132,37 @@ func (l *HandlerList) Remove(n NamedHandler) {
// Run executes all handlers in the list with a given request object.
func (l *HandlerList) Run(r *Request) {
- for _, f := range l.list {
- f.Fn(r)
+ for i, h := range l.list {
+ h.Fn(r)
+ item := HandlerListRunItem{
+ Index: i, Handler: h, Request: r,
+ }
+ if l.AfterEachFn != nil && !l.AfterEachFn(item) {
+ return
+ }
}
}
+// HandlerListLogItem logs the request handler and the state of the
+// request's Error value. Always returns true to continue iterating
+// request handlers in a HandlerList.
+func HandlerListLogItem(item HandlerListRunItem) bool {
+ if item.Request.Config.Logger == nil {
+ return true
+ }
+ item.Request.Config.Logger.Log("DEBUG: RequestHandler",
+ item.Index, item.Handler.Name, item.Request.Error)
+
+ return true
+}
+
+// HandlerListStopOnError returns false to stop the HandlerList iterating
+// over request handlers if Request.Error is not nil. True otherwise
+// to continue iterating.
+func HandlerListStopOnError(item HandlerListRunItem) bool {
+ return item.Request.Error == nil
+}
+
// MakeAddToUserAgentHandler will add the name/version pair to the User-Agent request
// header. If the extra parameters are provided they will be added as metadata to the
// name/version pair resulting in the following format.
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/request.go b/vendor/github.com/aws/aws-sdk-go/aws/request/request.go
similarity index 86%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/request.go
rename to vendor/github.com/aws/aws-sdk-go/aws/request/request.go
index 3735d7fa53..4b36900507 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/request.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/request/request.go
@@ -22,20 +22,22 @@ type Request struct {
Handlers Handlers
Retryer
- Time time.Time
- ExpireTime time.Duration
- Operation *Operation
- HTTPRequest *http.Request
- HTTPResponse *http.Response
- Body io.ReadSeeker
- BodyStart int64 // offset from beginning of Body that the request body starts
- Params interface{}
- Error error
- Data interface{}
- RequestID string
- RetryCount int
- Retryable *bool
- RetryDelay time.Duration
+ Time time.Time
+ ExpireTime time.Duration
+ Operation *Operation
+ HTTPRequest *http.Request
+ HTTPResponse *http.Response
+ Body io.ReadSeeker
+ BodyStart int64 // offset from beginning of Body that the request body starts
+ Params interface{}
+ Error error
+ Data interface{}
+ RequestID string
+ RetryCount int
+ Retryable *bool
+ RetryDelay time.Duration
+ NotHoist bool
+ SignedHeaderVals http.Header
built bool
}
@@ -137,6 +139,7 @@ func (r *Request) SetReaderBody(reader io.ReadSeeker) {
// if the signing fails.
func (r *Request) Presign(expireTime time.Duration) (string, error) {
r.ExpireTime = expireTime
+ r.NotHoist = false
r.Sign()
if r.Error != nil {
return "", r.Error
@@ -144,6 +147,18 @@ func (r *Request) Presign(expireTime time.Duration) (string, error) {
return r.HTTPRequest.URL.String(), nil
}
+// PresignRequest behaves just like presign, but hoists all headers and signs them.
+// Also returns the signed hash back to the user
+func (r *Request) PresignRequest(expireTime time.Duration) (string, http.Header, error) {
+ r.ExpireTime = expireTime
+ r.NotHoist = true
+ r.Sign()
+ if r.Error != nil {
+ return "", nil, r.Error
+ }
+ return r.HTTPRequest.URL.String(), r.SignedHeaderVals, nil
+}
+
func debugLogReqError(r *Request, stage string, retrying bool, err error) {
if !r.Config.LogLevel.Matches(aws.LogDebugWithRequestErrors) {
return
@@ -177,6 +192,10 @@ func (r *Request) Build() error {
return r.Error
}
r.Handlers.Build.Run(r)
+ if r.Error != nil {
+ debugLogReqError(r, "Build Request", false, r.Error)
+ return r.Error
+ }
r.built = true
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/request_pagination.go b/vendor/github.com/aws/aws-sdk-go/aws/request/request_pagination.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/request_pagination.go
rename to vendor/github.com/aws/aws-sdk-go/aws/request/request_pagination.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/retryer.go b/vendor/github.com/aws/aws-sdk-go/aws/request/retryer.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/request/retryer.go
rename to vendor/github.com/aws/aws-sdk-go/aws/request/retryer.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/session/session.go b/vendor/github.com/aws/aws-sdk-go/aws/session/session.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/session/session.go
rename to vendor/github.com/aws/aws-sdk-go/aws/session/session.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/types.go b/vendor/github.com/aws/aws-sdk-go/aws/types.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/types.go
rename to vendor/github.com/aws/aws-sdk-go/aws/types.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/version.go b/vendor/github.com/aws/aws-sdk-go/aws/version.go
similarity index 87%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/version.go
rename to vendor/github.com/aws/aws-sdk-go/aws/version.go
index afe2bb1c03..c15f50b754 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws/version.go
+++ b/vendor/github.com/aws/aws-sdk-go/aws/version.go
@@ -5,4 +5,4 @@ package aws
const SDKName = "aws-sdk-go"
// SDKVersion is the version of this SDK
-const SDKVersion = "1.0.11"
+const SDKVersion = "1.1.3"
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints.go b/vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints.go
rename to vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints.json b/vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints.json
similarity index 71%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints.json
rename to vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints.json
index 7819eedc39..0cb6917bad 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints.json
+++ b/vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints.json
@@ -57,36 +57,14 @@
"endpoint": "sdb.amazonaws.com",
"signingRegion": "us-east-1"
},
+ "*/s3": {
+ "endpoint": "s3-{region}.amazonaws.com"
+ },
"us-east-1/s3": {
"endpoint": "s3.amazonaws.com"
},
- "us-west-1/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "us-west-2/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "eu-west-1/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "ap-southeast-1/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "ap-southeast-2/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "ap-northeast-1/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "ap-northeast-2/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
- "sa-east-1/s3": {
- "endpoint": "s3-{region}.amazonaws.com"
- },
"eu-central-1/s3": {
- "endpoint": "{service}.{region}.amazonaws.com",
- "signatureVersion": "v4"
+ "endpoint": "{service}.{region}.amazonaws.com"
}
}
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints_map.go b/vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints_map.go
similarity index 77%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints_map.go
rename to vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints_map.go
index 9b2e1b699b..6183dcd3de 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/endpoints/endpoints_map.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/endpoints/endpoints_map.go
@@ -46,6 +46,9 @@ var endpointsMap = endpointStruct{
Endpoint: "route53.amazonaws.com",
SigningRegion: "us-east-1",
},
+ "*/s3": {
+ Endpoint: "s3-{region}.amazonaws.com",
+ },
"*/sts": {
Endpoint: "sts.amazonaws.com",
SigningRegion: "us-east-1",
@@ -54,30 +57,12 @@ var endpointsMap = endpointStruct{
Endpoint: "waf.amazonaws.com",
SigningRegion: "us-east-1",
},
- "ap-northeast-1/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
- "ap-northeast-2/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
- "ap-southeast-1/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
- "ap-southeast-2/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
"cn-north-1/*": {
Endpoint: "{service}.{region}.amazonaws.com.cn",
},
"eu-central-1/s3": {
Endpoint: "{service}.{region}.amazonaws.com",
},
- "eu-west-1/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
- "sa-east-1/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
"us-east-1/s3": {
Endpoint: "s3.amazonaws.com",
},
@@ -94,11 +79,5 @@ var endpointsMap = endpointStruct{
"us-gov-west-1/sts": {
Endpoint: "sts.us-gov-west-1.amazonaws.com",
},
- "us-west-1/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
- "us-west-2/s3": {
- Endpoint: "s3-{region}.amazonaws.com",
- },
},
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go
similarity index 86%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go
index 0ead0126ee..68e344d1fc 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/build.go
@@ -11,6 +11,9 @@ import (
"github.com/aws/aws-sdk-go/private/protocol/query/queryutil"
)
+// BuildHandler is a named request handler for building ec2query protocol requests
+var BuildHandler = request.NamedHandler{Name: "awssdk.ec2query.Build", Fn: Build}
+
// Build builds a request for the EC2 protocol.
func Build(r *request.Request) {
body := url.Values{
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go
similarity index 72%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go
index 658190f705..9223e8422c 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/ec2query/unmarshal.go
@@ -11,6 +11,15 @@ import (
"github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil"
)
+// UnmarshalHandler is a named request handler for unmarshaling ec2query protocol requests
+var UnmarshalHandler = request.NamedHandler{Name: "awssdk.ec2query.Unmarshal", Fn: Unmarshal}
+
+// UnmarshalMetaHandler is a named request handler for unmarshaling ec2query protocol request metadata
+var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.ec2query.UnmarshalMeta", Fn: UnmarshalMeta}
+
+// UnmarshalErrorHandler is a named request handler for unmarshaling ec2query protocol request errors
+var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.ec2query.UnmarshalError", Fn: UnmarshalError}
+
// Unmarshal unmarshals a response body for the EC2 protocol.
func Unmarshal(r *request.Request) {
defer r.HTTPResponse.Body.Close()
diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/idempotency.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/idempotency.go
new file mode 100644
index 0000000000..53831dff98
--- /dev/null
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/idempotency.go
@@ -0,0 +1,75 @@
+package protocol
+
+import (
+ "crypto/rand"
+ "fmt"
+ "reflect"
+)
+
+// RandReader is the random reader the protocol package will use to read
+// random bytes from. This is exported for testing, and should not be used.
+var RandReader = rand.Reader
+
+const idempotencyTokenFillTag = `idempotencyToken`
+
+// CanSetIdempotencyToken returns true if the struct field should be
+// automatically populated with a Idempotency token.
+//
+// Only *string and string type fields that are tagged with idempotencyToken
+// which are not already set can be auto filled.
+func CanSetIdempotencyToken(v reflect.Value, f reflect.StructField) bool {
+ switch u := v.Interface().(type) {
+ // To auto fill an Idempotency token the field must be a string,
+ // tagged for auto fill, and have a zero value.
+ case *string:
+ return u == nil && len(f.Tag.Get(idempotencyTokenFillTag)) != 0
+ case string:
+ return len(u) == 0 && len(f.Tag.Get(idempotencyTokenFillTag)) != 0
+ }
+
+ return false
+}
+
+// GetIdempotencyToken returns a randomly generated idempotency token.
+func GetIdempotencyToken() string {
+ b := make([]byte, 16)
+ RandReader.Read(b)
+
+ return UUIDVersion4(b)
+}
+
+// SetIdempotencyToken will set the value provided with a Idempotency Token.
+// Given that the value can be set. Will panic if value is not setable.
+func SetIdempotencyToken(v reflect.Value) {
+ if v.Kind() == reflect.Ptr {
+ if v.IsNil() && v.CanSet() {
+ v.Set(reflect.New(v.Type().Elem()))
+ }
+ v = v.Elem()
+ }
+ v = reflect.Indirect(v)
+
+ if !v.CanSet() {
+ panic(fmt.Sprintf("unable to set idempotnecy token %v", v))
+ }
+
+ b := make([]byte, 16)
+ _, err := rand.Read(b)
+ if err != nil {
+ // TODO handle error
+ return
+ }
+
+ v.Set(reflect.ValueOf(UUIDVersion4(b)))
+}
+
+// UUIDVersion4 returns a Version 4 random UUID from the byte slice provided
+func UUIDVersion4(u []byte) string {
+ // https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_.28random.29
+ // 13th character is "4"
+ u[6] = (u[6] | 0x40) & 0x4F
+ // 17th character is "8", "9", "a", or "b"
+ u[8] = (u[8] | 0x80) & 0xBF
+
+ return fmt.Sprintf(`%X-%X-%X-%X-%X`, u[0:4], u[4:6], u[6:8], u[8:10], u[10:])
+}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/build.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/build.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/build.go
index 870707c6a6..1d552afe45 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/build.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/build.go
@@ -9,6 +9,8 @@ import (
"sort"
"strconv"
"time"
+
+ "github.com/aws/aws-sdk-go/private/protocol"
)
var timeType = reflect.ValueOf(time.Time{}).Type()
@@ -85,11 +87,8 @@ func buildStruct(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag)
first := true
for i := 0; i < t.NumField(); i++ {
member := value.Field(i)
- if (member.Kind() == reflect.Ptr || member.Kind() == reflect.Slice || member.Kind() == reflect.Map) && member.IsNil() {
- continue // ignore unset fields
- }
-
field := t.Field(i)
+
if field.PkgPath != "" {
continue // ignore unexported fields
}
@@ -100,6 +99,15 @@ func buildStruct(value reflect.Value, buf *bytes.Buffer, tag reflect.StructTag)
continue // ignore non-body elements
}
+ if protocol.CanSetIdempotencyToken(member, field) {
+ token := protocol.GetIdempotencyToken()
+ member = reflect.ValueOf(&token)
+ }
+
+ if (member.Kind() == reflect.Ptr || member.Kind() == reflect.Slice || member.Kind() == reflect.Map) && member.IsNil() {
+ continue // ignore unset fields
+ }
+
if first {
first = false
} else {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/unmarshal.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/unmarshal.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/json/jsonutil/unmarshal.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go
similarity index 79%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go
index c4e71cf487..7aff0e0fa4 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/jsonrpc/jsonrpc.go
@@ -18,6 +18,18 @@ import (
var emptyJSON = []byte("{}")
+// BuildHandler is a named request handler for building jsonrpc protocol requests
+var BuildHandler = request.NamedHandler{Name: "awssdk.jsonrpc.Build", Fn: Build}
+
+// UnmarshalHandler is a named request handler for unmarshaling jsonrpc protocol requests
+var UnmarshalHandler = request.NamedHandler{Name: "awssdk.jsonrpc.Unmarshal", Fn: Unmarshal}
+
+// UnmarshalMetaHandler is a named request handler for unmarshaling jsonrpc protocol request metadata
+var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.jsonrpc.UnmarshalMeta", Fn: UnmarshalMeta}
+
+// UnmarshalErrorHandler is a named request handler for unmarshaling jsonrpc protocol request errors
+var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.jsonrpc.UnmarshalError", Fn: UnmarshalError}
+
// Build builds a JSON payload for a JSON RPC request.
func Build(req *request.Request) {
var buf []byte
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go
similarity index 86%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/build.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go
index 2d78c35c24..56d69db05c 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/build.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/build.go
@@ -11,6 +11,9 @@ import (
"github.com/aws/aws-sdk-go/private/protocol/query/queryutil"
)
+// BuildHandler is a named request handler for building query protocol requests
+var BuildHandler = request.NamedHandler{Name: "awssdk.query.Build", Fn: Build}
+
// Build builds a request for an AWS Query service.
func Build(r *request.Request) {
body := url.Values{
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/queryutil/queryutil.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/queryutil/queryutil.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/queryutil/queryutil.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/query/queryutil/queryutil.go
index 4afa4cf0ee..60ea0bd1e5 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/queryutil/queryutil.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/queryutil/queryutil.go
@@ -9,6 +9,8 @@ import (
"strconv"
"strings"
"time"
+
+ "github.com/aws/aws-sdk-go/private/protocol"
)
// Parse parses an object i and fills a url.Values object. The isEC2 flag
@@ -68,14 +70,19 @@ func (q *queryParser) parseStruct(v url.Values, value reflect.Value, prefix stri
t := value.Type()
for i := 0; i < value.NumField(); i++ {
- if c := t.Field(i).Name[0:1]; strings.ToLower(c) == c {
+ elemValue := elemOf(value.Field(i))
+ field := t.Field(i)
+
+ if field.PkgPath != "" {
continue // ignore unexported fields
}
- elemValue := elemOf(value.Field(i))
- field := t.Field(i)
- var name string
+ if protocol.CanSetIdempotencyToken(value.Field(i), field) {
+ token := protocol.GetIdempotencyToken()
+ elemValue = reflect.ValueOf(token)
+ }
+ var name string
if q.isEC2 {
name = field.Tag.Get("queryName")
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go
similarity index 70%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go
index f961029ef7..a3ea40955d 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal.go
@@ -10,6 +10,12 @@ import (
"github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil"
)
+// UnmarshalHandler is a named request handler for unmarshaling query protocol requests
+var UnmarshalHandler = request.NamedHandler{Name: "awssdk.query.Unmarshal", Fn: Unmarshal}
+
+// UnmarshalMetaHandler is a named request handler for unmarshaling query protocol request metadata
+var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.query.UnmarshalMeta", Fn: UnmarshalMeta}
+
// Unmarshal unmarshals a response for an AWS Query service.
func Unmarshal(r *request.Request) {
defer r.HTTPResponse.Body.Close()
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal_error.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal_error.go
similarity index 82%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal_error.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal_error.go
index cb87b79f07..b8e3c7a312 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal_error.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/query/unmarshal_error.go
@@ -15,6 +15,9 @@ type xmlErrorResponse struct {
RequestID string `xml:"RequestId"`
}
+// UnmarshalErrorHandler is a name request handler to unmarshal request errors
+var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.query.UnmarshalError", Fn: UnmarshalError}
+
// UnmarshalError unmarshals an error response for an AWS Query service.
func UnmarshalError(r *request.Request) {
defer r.HTTPResponse.Body.Close()
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/rest/build.go
similarity index 97%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/build.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/rest/build.go
index ed3c2e0395..5469edb60b 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/build.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/rest/build.go
@@ -39,6 +39,9 @@ func init() {
}
}
+// BuildHandler is a named request handler for building rest protocol requests
+var BuildHandler = request.NamedHandler{Name: "awssdk.rest.Build", Fn: Build}
+
// Build builds the REST component of a service request.
func Build(r *request.Request) {
if r.ParamsFilled() {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/payload.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/rest/payload.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/payload.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/rest/payload.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/rest/unmarshal.go
similarity index 92%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/unmarshal.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/rest/unmarshal.go
index 46837f66c9..ba46f5bc9f 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/rest/unmarshal.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/rest/unmarshal.go
@@ -15,6 +15,12 @@ import (
"github.com/aws/aws-sdk-go/aws/request"
)
+// UnmarshalHandler is a named request handler for unmarshaling rest protocol requests
+var UnmarshalHandler = request.NamedHandler{Name: "awssdk.rest.Unmarshal", Fn: Unmarshal}
+
+// UnmarshalMetaHandler is a named request handler for unmarshaling rest protocol request metadata
+var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.rest.UnmarshalMeta", Fn: UnmarshalMeta}
+
// Unmarshal unmarshals the REST component of a response in a REST service.
func Unmarshal(r *request.Request) {
if r.DataFilled() {
diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go
new file mode 100644
index 0000000000..5a0877cb1b
--- /dev/null
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/restjson/restjson.go
@@ -0,0 +1,91 @@
+// Package restjson provides RESTful JSON serialisation of AWS
+// requests and responses.
+package restjson
+
+//go:generate go run ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/input/rest-json.json build_test.go
+//go:generate go run ../../../models/protocol_tests/generate.go ../../../models/protocol_tests/output/rest-json.json unmarshal_test.go
+
+import (
+ "encoding/json"
+ "io/ioutil"
+ "strings"
+
+ "github.com/aws/aws-sdk-go/aws/awserr"
+ "github.com/aws/aws-sdk-go/aws/request"
+ "github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
+ "github.com/aws/aws-sdk-go/private/protocol/rest"
+)
+
+// BuildHandler is a named request handler for building restjson protocol requests
+var BuildHandler = request.NamedHandler{Name: "awssdk.restjson.Build", Fn: Build}
+
+// UnmarshalHandler is a named request handler for unmarshaling restjson protocol requests
+var UnmarshalHandler = request.NamedHandler{Name: "awssdk.restjson.Unmarshal", Fn: Unmarshal}
+
+// UnmarshalMetaHandler is a named request handler for unmarshaling restjson protocol request metadata
+var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.restjson.UnmarshalMeta", Fn: UnmarshalMeta}
+
+// UnmarshalErrorHandler is a named request handler for unmarshaling restjson protocol request errors
+var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.restjson.UnmarshalError", Fn: UnmarshalError}
+
+// Build builds a request for the REST JSON protocol.
+func Build(r *request.Request) {
+ rest.Build(r)
+
+ if t := rest.PayloadType(r.Params); t == "structure" || t == "" {
+ jsonrpc.Build(r)
+ }
+}
+
+// Unmarshal unmarshals a response body for the REST JSON protocol.
+func Unmarshal(r *request.Request) {
+ if t := rest.PayloadType(r.Data); t == "structure" || t == "" {
+ jsonrpc.Unmarshal(r)
+ } else {
+ rest.Unmarshal(r)
+ }
+}
+
+// UnmarshalMeta unmarshals response headers for the REST JSON protocol.
+func UnmarshalMeta(r *request.Request) {
+ rest.UnmarshalMeta(r)
+}
+
+// UnmarshalError unmarshals a response error for the REST JSON protocol.
+func UnmarshalError(r *request.Request) {
+ code := r.HTTPResponse.Header.Get("X-Amzn-Errortype")
+ bodyBytes, err := ioutil.ReadAll(r.HTTPResponse.Body)
+ if err != nil {
+ r.Error = awserr.New("SerializationError", "failed reading REST JSON error response", err)
+ return
+ }
+ if len(bodyBytes) == 0 {
+ r.Error = awserr.NewRequestFailure(
+ awserr.New("SerializationError", r.HTTPResponse.Status, nil),
+ r.HTTPResponse.StatusCode,
+ "",
+ )
+ return
+ }
+ var jsonErr jsonErrorResponse
+ if err := json.Unmarshal(bodyBytes, &jsonErr); err != nil {
+ r.Error = awserr.New("SerializationError", "failed decoding REST JSON error response", err)
+ return
+ }
+
+ if code == "" {
+ code = jsonErr.Code
+ }
+
+ code = strings.SplitN(code, ":", 2)[0]
+ r.Error = awserr.NewRequestFailure(
+ awserr.New(code, jsonErr.Message, nil),
+ r.HTTPResponse.StatusCode,
+ r.RequestID,
+ )
+}
+
+type jsonErrorResponse struct {
+ Code string `json:"code"`
+ Message string `json:"message"`
+}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go
similarity index 70%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go
index a6bc0c74c8..c74088bfe8 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/restxml/restxml.go
@@ -16,6 +16,18 @@ import (
"github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil"
)
+// BuildHandler is a named request handler for building restxml protocol requests
+var BuildHandler = request.NamedHandler{Name: "awssdk.restxml.Build", Fn: Build}
+
+// UnmarshalHandler is a named request handler for unmarshaling restxml protocol requests
+var UnmarshalHandler = request.NamedHandler{Name: "awssdk.restxml.Unmarshal", Fn: Unmarshal}
+
+// UnmarshalMetaHandler is a named request handler for unmarshaling restxml protocol request metadata
+var UnmarshalMetaHandler = request.NamedHandler{Name: "awssdk.restxml.UnmarshalMeta", Fn: UnmarshalMeta}
+
+// UnmarshalErrorHandler is a named request handler for unmarshaling restxml protocol request errors
+var UnmarshalErrorHandler = request.NamedHandler{Name: "awssdk.restxml.UnmarshalError", Fn: UnmarshalError}
+
// Build builds a request payload for the REST XML protocol.
func Build(r *request.Request) {
rest.Build(r)
diff --git a/vendor/github.com/aws/aws-sdk-go/private/protocol/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/unmarshal.go
new file mode 100644
index 0000000000..da1a68111d
--- /dev/null
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/unmarshal.go
@@ -0,0 +1,21 @@
+package protocol
+
+import (
+ "io"
+ "io/ioutil"
+
+ "github.com/aws/aws-sdk-go/aws/request"
+)
+
+// UnmarshalDiscardBodyHandler is a named request handler to empty and close a response's body
+var UnmarshalDiscardBodyHandler = request.NamedHandler{Name: "awssdk.shared.UnmarshalDiscardBody", Fn: UnmarshalDiscardBody}
+
+// UnmarshalDiscardBody is a request handler to empty a response's body and closing it.
+func UnmarshalDiscardBody(r *request.Request) {
+ if r.HTTPResponse == nil || r.HTTPResponse.Body == nil {
+ return
+ }
+
+ io.Copy(ioutil.Discard, r.HTTPResponse.Body)
+ r.HTTPResponse.Body.Close()
+}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/build.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/build.go
similarity index 97%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/build.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/build.go
index 0d76dffbd6..ceb4132c53 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/build.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/build.go
@@ -8,8 +8,9 @@ import (
"reflect"
"sort"
"strconv"
- "strings"
"time"
+
+ "github.com/aws/aws-sdk-go/private/protocol"
)
// BuildXML will serialize params into an xml.Encoder.
@@ -120,18 +121,23 @@ func (b *xmlBuilder) buildStruct(value reflect.Value, current *XMLNode, tag refl
t := value.Type()
for i := 0; i < value.NumField(); i++ {
- if c := t.Field(i).Name[0:1]; strings.ToLower(c) == c {
+ member := elemOf(value.Field(i))
+ field := t.Field(i)
+
+ if field.PkgPath != "" {
continue // ignore unexported fields
}
- member := elemOf(value.Field(i))
- field := t.Field(i)
mTag := field.Tag
-
if mTag.Get("location") != "" { // skip non-body members
continue
}
+ if protocol.CanSetIdempotencyToken(value.Field(i), field) {
+ token := protocol.GetIdempotencyToken()
+ member = reflect.ValueOf(token)
+ }
+
memberName := mTag.Get("locationName")
if memberName == "" {
memberName = field.Name
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/unmarshal.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/unmarshal.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/unmarshal.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/unmarshal.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/xml_to_struct.go b/vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/xml_to_struct.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/xml_to_struct.go
rename to vendor/github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil/xml_to_struct.go
diff --git a/vendor/github.com/aws/aws-sdk-go/private/signer/v4/header_rules.go b/vendor/github.com/aws/aws-sdk-go/private/signer/v4/header_rules.go
new file mode 100644
index 0000000000..244c86da05
--- /dev/null
+++ b/vendor/github.com/aws/aws-sdk-go/private/signer/v4/header_rules.go
@@ -0,0 +1,82 @@
+package v4
+
+import (
+ "net/http"
+ "strings"
+)
+
+// validator houses a set of rule needed for validation of a
+// string value
+type rules []rule
+
+// rule interface allows for more flexible rules and just simply
+// checks whether or not a value adheres to that rule
+type rule interface {
+ IsValid(value string) bool
+}
+
+// IsValid will iterate through all rules and see if any rules
+// apply to the value and supports nested rules
+func (r rules) IsValid(value string) bool {
+ for _, rule := range r {
+ if rule.IsValid(value) {
+ return true
+ }
+ }
+ return false
+}
+
+// mapRule generic rule for maps
+type mapRule map[string]struct{}
+
+// IsValid for the map rule satisfies whether it exists in the map
+func (m mapRule) IsValid(value string) bool {
+ _, ok := m[value]
+ return ok
+}
+
+// whitelist is a generic rule for whitelisting
+type whitelist struct {
+ rule
+}
+
+// IsValid for whitelist checks if the value is within the whitelist
+func (w whitelist) IsValid(value string) bool {
+ return w.rule.IsValid(value)
+}
+
+// blacklist is a generic rule for blacklisting
+type blacklist struct {
+ rule
+}
+
+// IsValid for whitelist checks if the value is within the whitelist
+func (b blacklist) IsValid(value string) bool {
+ return !b.rule.IsValid(value)
+}
+
+type patterns []string
+
+// IsValid for patterns checks each pattern and returns if a match has
+// been found
+func (p patterns) IsValid(value string) bool {
+ for _, pattern := range p {
+ if strings.HasPrefix(http.CanonicalHeaderKey(value), pattern) {
+ return true
+ }
+ }
+ return false
+}
+
+// inclusiveRules rules allow for rules to depend on one another
+type inclusiveRules []rule
+
+// IsValid will return true if all rules are true
+func (r inclusiveRules) IsValid(value string) bool {
+ for _, rule := range r {
+ if !rule.IsValid(value) {
+ return false
+ }
+ }
+ return true
+}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/signer/v4/v4.go b/vendor/github.com/aws/aws-sdk-go/private/signer/v4/v4.go
similarity index 63%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/signer/v4/v4.go
rename to vendor/github.com/aws/aws-sdk-go/private/signer/v4/v4.go
index dc176f312b..14b0c66161 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/signer/v4/v4.go
+++ b/vendor/github.com/aws/aws-sdk-go/private/signer/v4/v4.go
@@ -26,11 +26,66 @@ const (
shortTimeFormat = "20060102"
)
-var ignoredHeaders = map[string]bool{
- "Authorization": true,
- "Content-Type": true,
- "Content-Length": true,
- "User-Agent": true,
+var ignoredHeaders = rules{
+ blacklist{
+ mapRule{
+ "Content-Length": struct{}{},
+ "User-Agent": struct{}{},
+ },
+ },
+}
+
+// requiredSignedHeaders is a whitelist for build canonical headers.
+var requiredSignedHeaders = rules{
+ whitelist{
+ mapRule{
+ "Cache-Control": struct{}{},
+ "Content-Disposition": struct{}{},
+ "Content-Encoding": struct{}{},
+ "Content-Language": struct{}{},
+ "Content-Md5": struct{}{},
+ "Content-Type": struct{}{},
+ "Expires": struct{}{},
+ "If-Match": struct{}{},
+ "If-Modified-Since": struct{}{},
+ "If-None-Match": struct{}{},
+ "If-Unmodified-Since": struct{}{},
+ "Range": struct{}{},
+ "X-Amz-Acl": struct{}{},
+ "X-Amz-Copy-Source": struct{}{},
+ "X-Amz-Copy-Source-If-Match": struct{}{},
+ "X-Amz-Copy-Source-If-Modified-Since": struct{}{},
+ "X-Amz-Copy-Source-If-None-Match": struct{}{},
+ "X-Amz-Copy-Source-If-Unmodified-Since": struct{}{},
+ "X-Amz-Copy-Source-Range": struct{}{},
+ "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Algorithm": struct{}{},
+ "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Key": struct{}{},
+ "X-Amz-Copy-Source-Server-Side-Encryption-Customer-Key-Md5": struct{}{},
+ "X-Amz-Grant-Full-control": struct{}{},
+ "X-Amz-Grant-Read": struct{}{},
+ "X-Amz-Grant-Read-Acp": struct{}{},
+ "X-Amz-Grant-Write": struct{}{},
+ "X-Amz-Grant-Write-Acp": struct{}{},
+ "X-Amz-Metadata-Directive": struct{}{},
+ "X-Amz-Mfa": struct{}{},
+ "X-Amz-Request-Payer": struct{}{},
+ "X-Amz-Server-Side-Encryption": struct{}{},
+ "X-Amz-Server-Side-Encryption-Aws-Kms-Key-Id": struct{}{},
+ "X-Amz-Server-Side-Encryption-Customer-Algorithm": struct{}{},
+ "X-Amz-Server-Side-Encryption-Customer-Key": struct{}{},
+ "X-Amz-Server-Side-Encryption-Customer-Key-Md5": struct{}{},
+ "X-Amz-Storage-Class": struct{}{},
+ "X-Amz-Website-Redirect-Location": struct{}{},
+ },
+ },
+ patterns{"X-Amz-Meta-"},
+}
+
+// allowedHoisting is a whitelist for build query headers. The boolean value
+// represents whether or not it is a pattern.
+var allowedQueryHoisting = inclusiveRules{
+ blacklist{requiredSignedHeaders},
+ patterns{"X-Amz-"},
}
type signer struct {
@@ -57,6 +112,8 @@ type signer struct {
stringToSign string
signature string
authorization string
+ notHoist bool
+ signedHeaderVals http.Header
}
// Sign requests with signature version 4.
@@ -92,9 +149,11 @@ func Sign(req *request.Request) {
Credentials: req.Config.Credentials,
Debug: req.Config.LogLevel.Value(),
Logger: req.Config.Logger,
+ notHoist: req.NotHoist,
}
req.Error = s.sign()
+ req.SignedHeaderVals = s.signedHeaderVals
}
func (v4 *signer) sign() error {
@@ -165,15 +224,25 @@ func (v4 *signer) logSigningInfo() {
}
func (v4 *signer) build() {
+
v4.buildTime() // no depends
v4.buildCredentialString() // no depends
+
+ unsignedHeaders := v4.Request.Header
if v4.isPresign {
- v4.buildQuery() // no depends
+ if !v4.notHoist {
+ urlValues := url.Values{}
+ urlValues, unsignedHeaders = buildQuery(allowedQueryHoisting, unsignedHeaders) // no depends
+ for k := range urlValues {
+ v4.Query[k] = urlValues[k]
+ }
+ }
}
- v4.buildCanonicalHeaders() // depends on cred string
- v4.buildCanonicalString() // depends on canon headers / signed headers
- v4.buildStringToSign() // depends on canon string
- v4.buildSignature() // depends on string to sign
+
+ v4.buildCanonicalHeaders(ignoredHeaders, unsignedHeaders)
+ v4.buildCanonicalString() // depends on canon headers / signed headers
+ v4.buildStringToSign() // depends on canon string
+ v4.buildSignature() // depends on string to sign
if v4.isPresign {
v4.Request.URL.RawQuery += "&X-Amz-Signature=" + v4.signature
@@ -213,31 +282,35 @@ func (v4 *signer) buildCredentialString() {
}
}
-func (v4 *signer) buildQuery() {
- for k, h := range v4.Request.Header {
- if strings.HasPrefix(http.CanonicalHeaderKey(k), "X-Amz-") {
- continue // never hoist x-amz-* headers, they must be signed
- }
- if _, ok := ignoredHeaders[http.CanonicalHeaderKey(k)]; ok {
- continue // never hoist ignored headers
- }
-
- v4.Request.Header.Del(k)
- v4.Query.Del(k)
- for _, v := range h {
- v4.Query.Add(k, v)
+func buildQuery(r rule, header http.Header) (url.Values, http.Header) {
+ query := url.Values{}
+ unsignedHeaders := http.Header{}
+ for k, h := range header {
+ if r.IsValid(k) {
+ query[k] = h
+ } else {
+ unsignedHeaders[k] = h
}
}
-}
-func (v4 *signer) buildCanonicalHeaders() {
+ return query, unsignedHeaders
+}
+func (v4 *signer) buildCanonicalHeaders(r rule, header http.Header) {
var headers []string
headers = append(headers, "host")
- for k := range v4.Request.Header {
- if _, ok := ignoredHeaders[http.CanonicalHeaderKey(k)]; ok {
+ for k, v := range header {
+ canonicalKey := http.CanonicalHeaderKey(k)
+ if !r.IsValid(canonicalKey) {
continue // ignored header
}
- headers = append(headers, strings.ToLower(k))
+
+ lowerCaseKey := strings.ToLower(k)
+ headers = append(headers, lowerCaseKey)
+
+ if v4.signedHeaderVals == nil {
+ v4.signedHeaderVals = make(http.Header)
+ }
+ v4.signedHeaderVals[lowerCaseKey] = v
}
sort.Strings(headers)
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/waiter/waiter.go b/vendor/github.com/aws/aws-sdk-go/private/waiter/waiter.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/private/waiter/waiter.go
rename to vendor/github.com/aws/aws-sdk-go/private/waiter/waiter.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/api.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/api.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/api.go
rename to vendor/github.com/aws/aws-sdk-go/service/dynamodb/api.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/customizations.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/customizations.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/customizations.go
rename to vendor/github.com/aws/aws-sdk-go/service/dynamodb/customizations.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute/converter.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute/converter.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute/converter.go
rename to vendor/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute/converter.go
index 7b2daf464b..d2ff2acfea 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute/converter.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute/converter.go
@@ -4,6 +4,11 @@
// These are most useful to serialize concrete types to dynamodb.AttributeValue for
// requests or unmarshalling the dynamodb.AttributeValue into a well known typed form.
//
+// Converting []byte fields to dynamodb.AttributeValue are only currently supported
+// if the input is a map[string]interface{} type. []byte within typed structs are not
+// converted correctly and are converted into base64 strings. This is a known bug,
+// and will be fixed in a later release.
+//
// Convert concrete type to dynamodb.AttributeValue: See (ExampleConvertTo)
//
// type Record struct {
@@ -376,15 +381,6 @@ func convertTo(in interface{}) *dynamodb.AttributeValue {
return a
}
- if l, ok := in.([]interface{}); ok {
- a.L = make([]*dynamodb.AttributeValue, len(l))
- for index, v := range l {
- a.L[index] = convertTo(v)
- }
- return a
- }
-
- // Only primitive types should remain.
v := reflect.ValueOf(in)
switch v.Kind() {
case reflect.Bool:
@@ -407,6 +403,16 @@ func convertTo(in interface{}) *dynamodb.AttributeValue {
a.S = new(string)
*a.S = v.String()
}
+ case reflect.Slice:
+ switch v.Type() {
+ case reflect.TypeOf(([]byte)(nil)):
+ a.B = v.Bytes()
+ default:
+ a.L = make([]*dynamodb.AttributeValue, v.Len())
+ for i := 0; i < v.Len(); i++ {
+ a.L[i] = convertTo(v.Index(i).Interface())
+ }
+ }
default:
panic(fmt.Sprintf("the type %s is not supported", v.Type().String()))
}
@@ -459,5 +465,9 @@ func convertFrom(a *dynamodb.AttributeValue) interface{} {
return l
}
+ if a.B != nil {
+ return a.B
+ }
+
panic(fmt.Sprintf("%#v is not a supported dynamodb.AttributeValue", a))
}
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbiface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbiface/interface.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbiface/interface.go
rename to vendor/github.com/aws/aws-sdk-go/service/dynamodb/dynamodbiface/interface.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/service.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/service.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/service.go
rename to vendor/github.com/aws/aws-sdk-go/service/dynamodb/service.go
index 12fc1d81f0..719b915461 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/service.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/service.go
@@ -163,10 +163,10 @@ func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegio
// Handlers
svc.Handlers.Sign.PushBack(v4.Sign)
- svc.Handlers.Build.PushBack(jsonrpc.Build)
- svc.Handlers.Unmarshal.PushBack(jsonrpc.Unmarshal)
- svc.Handlers.UnmarshalMeta.PushBack(jsonrpc.UnmarshalMeta)
- svc.Handlers.UnmarshalError.PushBack(jsonrpc.UnmarshalError)
+ svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler)
+ svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler)
+ svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler)
+ svc.Handlers.UnmarshalError.PushBackNamed(jsonrpc.UnmarshalErrorHandler)
// Run custom client initialization if present
if initClient != nil {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/waiters.go b/vendor/github.com/aws/aws-sdk-go/service/dynamodb/waiters.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/dynamodb/waiters.go
rename to vendor/github.com/aws/aws-sdk-go/service/dynamodb/waiters.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/api.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/api.go
rename to vendor/github.com/aws/aws-sdk-go/service/ec2/api.go
index cd018821b2..f4c4fb46a4 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/api.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go
@@ -8,6 +8,8 @@ import (
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
+ "github.com/aws/aws-sdk-go/private/protocol"
+ "github.com/aws/aws-sdk-go/private/protocol/ec2query"
)
const opAcceptVpcPeeringConnection = "AcceptVpcPeeringConnection"
@@ -115,6 +117,8 @@ func (c *EC2) AssignPrivateIpAddressesRequest(input *AssignPrivateIpAddressesInp
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AssignPrivateIpAddressesOutput{}
req.Data = output
return
@@ -195,6 +199,8 @@ func (c *EC2) AssociateDhcpOptionsRequest(input *AssociateDhcpOptionsInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AssociateDhcpOptionsOutput{}
req.Data = output
return
@@ -305,6 +311,8 @@ func (c *EC2) AttachInternetGatewayRequest(input *AttachInternetGatewayInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AttachInternetGatewayOutput{}
req.Data = output
return
@@ -441,6 +449,8 @@ func (c *EC2) AuthorizeSecurityGroupEgressRequest(input *AuthorizeSecurityGroupE
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AuthorizeSecurityGroupEgressOutput{}
req.Data = output
return
@@ -486,6 +496,8 @@ func (c *EC2) AuthorizeSecurityGroupIngressRequest(input *AuthorizeSecurityGroup
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AuthorizeSecurityGroupIngressOutput{}
req.Data = output
return
@@ -594,6 +606,8 @@ func (c *EC2) CancelConversionTaskRequest(input *CancelConversionTaskInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CancelConversionTaskOutput{}
req.Data = output
return
@@ -629,6 +643,8 @@ func (c *EC2) CancelExportTaskRequest(input *CancelExportTaskInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CancelExportTaskOutput{}
req.Data = output
return
@@ -1230,6 +1246,8 @@ func (c *EC2) CreateNetworkAclEntryRequest(input *CreateNetworkAclEntryInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CreateNetworkAclEntryOutput{}
req.Data = output
return
@@ -1304,6 +1322,8 @@ func (c *EC2) CreatePlacementGroupRequest(input *CreatePlacementGroupInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CreatePlacementGroupOutput{}
req.Data = output
return
@@ -1647,6 +1667,8 @@ func (c *EC2) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, o
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CreateTagsOutput{}
req.Data = output
return
@@ -1874,6 +1896,8 @@ func (c *EC2) CreateVpnConnectionRouteRequest(input *CreateVpnConnectionRouteInp
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CreateVpnConnectionRouteOutput{}
req.Data = output
return
@@ -1941,6 +1965,8 @@ func (c *EC2) DeleteCustomerGatewayRequest(input *DeleteCustomerGatewayInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteCustomerGatewayOutput{}
req.Data = output
return
@@ -1969,6 +1995,8 @@ func (c *EC2) DeleteDhcpOptionsRequest(input *DeleteDhcpOptionsInput) (req *requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteDhcpOptionsOutput{}
req.Data = output
return
@@ -2026,6 +2054,8 @@ func (c *EC2) DeleteInternetGatewayRequest(input *DeleteInternetGatewayInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteInternetGatewayOutput{}
req.Data = output
return
@@ -2054,6 +2084,8 @@ func (c *EC2) DeleteKeyPairRequest(input *DeleteKeyPairInput) (req *request.Requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteKeyPairOutput{}
req.Data = output
return
@@ -2110,6 +2142,8 @@ func (c *EC2) DeleteNetworkAclRequest(input *DeleteNetworkAclInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteNetworkAclOutput{}
req.Data = output
return
@@ -2138,6 +2172,8 @@ func (c *EC2) DeleteNetworkAclEntryRequest(input *DeleteNetworkAclEntryInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteNetworkAclEntryOutput{}
req.Data = output
return
@@ -2166,6 +2202,8 @@ func (c *EC2) DeleteNetworkInterfaceRequest(input *DeleteNetworkInterfaceInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteNetworkInterfaceOutput{}
req.Data = output
return
@@ -2194,6 +2232,8 @@ func (c *EC2) DeletePlacementGroupRequest(input *DeletePlacementGroupInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeletePlacementGroupOutput{}
req.Data = output
return
@@ -2224,6 +2264,8 @@ func (c *EC2) DeleteRouteRequest(input *DeleteRouteInput) (req *request.Request,
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteRouteOutput{}
req.Data = output
return
@@ -2251,6 +2293,8 @@ func (c *EC2) DeleteRouteTableRequest(input *DeleteRouteTableInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteRouteTableOutput{}
req.Data = output
return
@@ -2280,6 +2324,8 @@ func (c *EC2) DeleteSecurityGroupRequest(input *DeleteSecurityGroupInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSecurityGroupOutput{}
req.Data = output
return
@@ -2311,6 +2357,8 @@ func (c *EC2) DeleteSnapshotRequest(input *DeleteSnapshotInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSnapshotOutput{}
req.Data = output
return
@@ -2352,6 +2400,8 @@ func (c *EC2) DeleteSpotDatafeedSubscriptionRequest(input *DeleteSpotDatafeedSub
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSpotDatafeedSubscriptionOutput{}
req.Data = output
return
@@ -2379,6 +2429,8 @@ func (c *EC2) DeleteSubnetRequest(input *DeleteSubnetInput) (req *request.Reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSubnetOutput{}
req.Data = output
return
@@ -2407,6 +2459,8 @@ func (c *EC2) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, o
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteTagsOutput{}
req.Data = output
return
@@ -2438,6 +2492,8 @@ func (c *EC2) DeleteVolumeRequest(input *DeleteVolumeInput) (req *request.Reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteVolumeOutput{}
req.Data = output
return
@@ -2471,6 +2527,8 @@ func (c *EC2) DeleteVpcRequest(input *DeleteVpcInput) (req *request.Request, out
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteVpcOutput{}
req.Data = output
return
@@ -2560,6 +2618,8 @@ func (c *EC2) DeleteVpnConnectionRequest(input *DeleteVpnConnectionInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteVpnConnectionOutput{}
req.Data = output
return
@@ -2596,6 +2656,8 @@ func (c *EC2) DeleteVpnConnectionRouteRequest(input *DeleteVpnConnectionRouteInp
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteVpnConnectionRouteOutput{}
req.Data = output
return
@@ -2626,6 +2688,8 @@ func (c *EC2) DeleteVpnGatewayRequest(input *DeleteVpnGatewayInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteVpnGatewayOutput{}
req.Data = output
return
@@ -2657,6 +2721,8 @@ func (c *EC2) DeregisterImageRequest(input *DeregisterImageInput) (req *request.
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeregisterImageOutput{}
req.Data = output
return
@@ -4761,6 +4827,8 @@ func (c *EC2) DetachInternetGatewayRequest(input *DetachInternetGatewayInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DetachInternetGatewayOutput{}
req.Data = output
return
@@ -4790,6 +4858,8 @@ func (c *EC2) DetachNetworkInterfaceRequest(input *DetachNetworkInterfaceInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DetachNetworkInterfaceOutput{}
req.Data = output
return
@@ -4856,6 +4926,8 @@ func (c *EC2) DetachVpnGatewayRequest(input *DetachVpnGatewayInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DetachVpnGatewayOutput{}
req.Data = output
return
@@ -4890,6 +4962,8 @@ func (c *EC2) DisableVgwRoutePropagationRequest(input *DisableVgwRoutePropagatio
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DisableVgwRoutePropagationOutput{}
req.Data = output
return
@@ -4977,6 +5051,8 @@ func (c *EC2) DisassociateAddressRequest(input *DisassociateAddressInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DisassociateAddressOutput{}
req.Data = output
return
@@ -5012,6 +5088,8 @@ func (c *EC2) DisassociateRouteTableRequest(input *DisassociateRouteTableInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DisassociateRouteTableOutput{}
req.Data = output
return
@@ -5044,6 +5122,8 @@ func (c *EC2) EnableVgwRoutePropagationRequest(input *EnableVgwRoutePropagationI
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &EnableVgwRoutePropagationOutput{}
req.Data = output
return
@@ -5072,6 +5152,8 @@ func (c *EC2) EnableVolumeIORequest(input *EnableVolumeIOInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &EnableVolumeIOOutput{}
req.Data = output
return
@@ -5437,6 +5519,8 @@ func (c *EC2) ModifyIdFormatRequest(input *ModifyIdFormatInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifyIdFormatOutput{}
req.Data = output
return
@@ -5474,6 +5558,8 @@ func (c *EC2) ModifyImageAttributeRequest(input *ModifyImageAttributeInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifyImageAttributeOutput{}
req.Data = output
return
@@ -5505,6 +5591,8 @@ func (c *EC2) ModifyInstanceAttributeRequest(input *ModifyInstanceAttributeInput
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifyInstanceAttributeOutput{}
req.Data = output
return
@@ -5582,6 +5670,8 @@ func (c *EC2) ModifyNetworkInterfaceAttributeRequest(input *ModifyNetworkInterfa
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifyNetworkInterfaceAttributeOutput{}
req.Data = output
return
@@ -5643,6 +5733,8 @@ func (c *EC2) ModifySnapshotAttributeRequest(input *ModifySnapshotAttributeInput
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifySnapshotAttributeOutput{}
req.Data = output
return
@@ -5726,6 +5818,8 @@ func (c *EC2) ModifySubnetAttributeRequest(input *ModifySubnetAttributeInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifySubnetAttributeOutput{}
req.Data = output
return
@@ -5753,6 +5847,8 @@ func (c *EC2) ModifyVolumeAttributeRequest(input *ModifyVolumeAttributeInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifyVolumeAttributeOutput{}
req.Data = output
return
@@ -5789,6 +5885,8 @@ func (c *EC2) ModifyVpcAttributeRequest(input *ModifyVpcAttributeInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ModifyVpcAttributeOutput{}
req.Data = output
return
@@ -5979,6 +6077,8 @@ func (c *EC2) RebootInstancesRequest(input *RebootInstancesInput) (req *request.
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &RebootInstancesOutput{}
req.Data = output
return
@@ -6106,6 +6206,8 @@ func (c *EC2) ReleaseAddressRequest(input *ReleaseAddressInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ReleaseAddressOutput{}
req.Data = output
return
@@ -6215,6 +6317,8 @@ func (c *EC2) ReplaceNetworkAclEntryRequest(input *ReplaceNetworkAclEntryInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ReplaceNetworkAclEntryOutput{}
req.Data = output
return
@@ -6244,6 +6348,8 @@ func (c *EC2) ReplaceRouteRequest(input *ReplaceRouteInput) (req *request.Reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ReplaceRouteOutput{}
req.Data = output
return
@@ -6311,6 +6417,8 @@ func (c *EC2) ReportInstanceStatusRequest(input *ReportInstanceStatusInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ReportInstanceStatusOutput{}
req.Data = output
return
@@ -6419,6 +6527,8 @@ func (c *EC2) ResetImageAttributeRequest(input *ResetImageAttributeInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ResetImageAttributeOutput{}
req.Data = output
return
@@ -6448,6 +6558,8 @@ func (c *EC2) ResetInstanceAttributeRequest(input *ResetInstanceAttributeInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ResetInstanceAttributeOutput{}
req.Data = output
return
@@ -6483,6 +6595,8 @@ func (c *EC2) ResetNetworkInterfaceAttributeRequest(input *ResetNetworkInterface
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ResetNetworkInterfaceAttributeOutput{}
req.Data = output
return
@@ -6511,6 +6625,8 @@ func (c *EC2) ResetSnapshotAttributeRequest(input *ResetSnapshotAttributeInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ResetSnapshotAttributeOutput{}
req.Data = output
return
@@ -6574,6 +6690,8 @@ func (c *EC2) RevokeSecurityGroupEgressRequest(input *RevokeSecurityGroupEgressI
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &RevokeSecurityGroupEgressOutput{}
req.Data = output
return
@@ -6612,6 +6730,8 @@ func (c *EC2) RevokeSecurityGroupIngressRequest(input *RevokeSecurityGroupIngres
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &RevokeSecurityGroupIngressOutput{}
req.Data = output
return
@@ -6899,6 +7019,8 @@ func (c *EC2) UnassignPrivateIpAddressesRequest(input *UnassignPrivateIpAddresse
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(ec2query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UnassignPrivateIpAddressesOutput{}
req.Data = output
return
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/customizations.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/customizations.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/customizations.go
rename to vendor/github.com/aws/aws-sdk-go/service/ec2/customizations.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/ec2iface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/ec2iface/interface.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/ec2iface/interface.go
rename to vendor/github.com/aws/aws-sdk-go/service/ec2/ec2iface/interface.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/service.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/service.go
similarity index 90%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/service.go
rename to vendor/github.com/aws/aws-sdk-go/service/ec2/service.go
index 2ff4220f7d..9d5fa81608 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/service.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/service.go
@@ -62,10 +62,10 @@ func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegio
// Handlers
svc.Handlers.Sign.PushBack(v4.Sign)
- svc.Handlers.Build.PushBack(ec2query.Build)
- svc.Handlers.Unmarshal.PushBack(ec2query.Unmarshal)
- svc.Handlers.UnmarshalMeta.PushBack(ec2query.UnmarshalMeta)
- svc.Handlers.UnmarshalError.PushBack(ec2query.UnmarshalError)
+ svc.Handlers.Build.PushBackNamed(ec2query.BuildHandler)
+ svc.Handlers.Unmarshal.PushBackNamed(ec2query.UnmarshalHandler)
+ svc.Handlers.UnmarshalMeta.PushBackNamed(ec2query.UnmarshalMetaHandler)
+ svc.Handlers.UnmarshalError.PushBackNamed(ec2query.UnmarshalErrorHandler)
// Run custom client initialization if present
if initClient != nil {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/waiters.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/waiters.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/ec2/waiters.go
rename to vendor/github.com/aws/aws-sdk-go/service/ec2/waiters.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/api.go b/vendor/github.com/aws/aws-sdk-go/service/iam/api.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/api.go
rename to vendor/github.com/aws/aws-sdk-go/service/iam/api.go
index 89b862c273..465333a642 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/api.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/iam/api.go
@@ -8,6 +8,8 @@ import (
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
+ "github.com/aws/aws-sdk-go/private/protocol"
+ "github.com/aws/aws-sdk-go/private/protocol/query"
)
const opAddClientIDToOpenIDConnectProvider = "AddClientIDToOpenIDConnectProvider"
@@ -25,6 +27,8 @@ func (c *IAM) AddClientIDToOpenIDConnectProviderRequest(input *AddClientIDToOpen
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AddClientIDToOpenIDConnectProviderOutput{}
req.Data = output
return
@@ -56,6 +60,8 @@ func (c *IAM) AddRoleToInstanceProfileRequest(input *AddRoleToInstanceProfileInp
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AddRoleToInstanceProfileOutput{}
req.Data = output
return
@@ -86,6 +92,8 @@ func (c *IAM) AddUserToGroupRequest(input *AddUserToGroupInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AddUserToGroupOutput{}
req.Data = output
return
@@ -113,6 +121,8 @@ func (c *IAM) AttachGroupPolicyRequest(input *AttachGroupPolicyInput) (req *requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AttachGroupPolicyOutput{}
req.Data = output
return
@@ -147,6 +157,8 @@ func (c *IAM) AttachRolePolicyRequest(input *AttachRolePolicyInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AttachRolePolicyOutput{}
req.Data = output
return
@@ -185,6 +197,8 @@ func (c *IAM) AttachUserPolicyRequest(input *AttachUserPolicyInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &AttachUserPolicyOutput{}
req.Data = output
return
@@ -219,6 +233,8 @@ func (c *IAM) ChangePasswordRequest(input *ChangePasswordInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ChangePasswordOutput{}
req.Data = output
return
@@ -294,6 +310,8 @@ func (c *IAM) CreateAccountAliasRequest(input *CreateAccountAliasInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &CreateAccountAliasOutput{}
req.Data = output
return
@@ -683,6 +701,8 @@ func (c *IAM) DeactivateMFADeviceRequest(input *DeactivateMFADeviceInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeactivateMFADeviceOutput{}
req.Data = output
return
@@ -715,6 +735,8 @@ func (c *IAM) DeleteAccessKeyRequest(input *DeleteAccessKeyInput) (req *request.
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteAccessKeyOutput{}
req.Data = output
return
@@ -747,6 +769,8 @@ func (c *IAM) DeleteAccountAliasRequest(input *DeleteAccountAliasInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteAccountAliasOutput{}
req.Data = output
return
@@ -776,6 +800,8 @@ func (c *IAM) DeleteAccountPasswordPolicyRequest(input *DeleteAccountPasswordPol
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteAccountPasswordPolicyOutput{}
req.Data = output
return
@@ -803,6 +829,8 @@ func (c *IAM) DeleteGroupRequest(input *DeleteGroupInput) (req *request.Request,
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteGroupOutput{}
req.Data = output
return
@@ -831,6 +859,8 @@ func (c *IAM) DeleteGroupPolicyRequest(input *DeleteGroupPolicyInput) (req *requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteGroupPolicyOutput{}
req.Data = output
return
@@ -863,6 +893,8 @@ func (c *IAM) DeleteInstanceProfileRequest(input *DeleteInstanceProfileInput) (r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteInstanceProfileOutput{}
req.Data = output
return
@@ -897,6 +929,8 @@ func (c *IAM) DeleteLoginProfileRequest(input *DeleteLoginProfileInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteLoginProfileOutput{}
req.Data = output
return
@@ -930,6 +964,8 @@ func (c *IAM) DeleteOpenIDConnectProviderRequest(input *DeleteOpenIDConnectProvi
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteOpenIDConnectProviderOutput{}
req.Data = output
return
@@ -964,6 +1000,8 @@ func (c *IAM) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeletePolicyOutput{}
req.Data = output
return
@@ -1008,6 +1046,8 @@ func (c *IAM) DeletePolicyVersionRequest(input *DeletePolicyVersionInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeletePolicyVersionOutput{}
req.Data = output
return
@@ -1043,6 +1083,8 @@ func (c *IAM) DeleteRoleRequest(input *DeleteRoleInput) (req *request.Request, o
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteRoleOutput{}
req.Data = output
return
@@ -1075,6 +1117,8 @@ func (c *IAM) DeleteRolePolicyRequest(input *DeleteRolePolicyInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteRolePolicyOutput{}
req.Data = output
return
@@ -1107,6 +1151,8 @@ func (c *IAM) DeleteSAMLProviderRequest(input *DeleteSAMLProviderInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSAMLProviderOutput{}
req.Data = output
return
@@ -1140,6 +1186,8 @@ func (c *IAM) DeleteSSHPublicKeyRequest(input *DeleteSSHPublicKeyInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSSHPublicKeyOutput{}
req.Data = output
return
@@ -1173,6 +1221,8 @@ func (c *IAM) DeleteServerCertificateRequest(input *DeleteServerCertificateInput
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteServerCertificateOutput{}
req.Data = output
return
@@ -1215,6 +1265,8 @@ func (c *IAM) DeleteSigningCertificateRequest(input *DeleteSigningCertificateInp
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteSigningCertificateOutput{}
req.Data = output
return
@@ -1247,6 +1299,8 @@ func (c *IAM) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, o
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteUserOutput{}
req.Data = output
return
@@ -1275,6 +1329,8 @@ func (c *IAM) DeleteUserPolicyRequest(input *DeleteUserPolicyInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteUserPolicyOutput{}
req.Data = output
return
@@ -1307,6 +1363,8 @@ func (c *IAM) DeleteVirtualMFADeviceRequest(input *DeleteVirtualMFADeviceInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteVirtualMFADeviceOutput{}
req.Data = output
return
@@ -1337,6 +1395,8 @@ func (c *IAM) DetachGroupPolicyRequest(input *DetachGroupPolicyInput) (req *requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DetachGroupPolicyOutput{}
req.Data = output
return
@@ -1369,6 +1429,8 @@ func (c *IAM) DetachRolePolicyRequest(input *DetachRolePolicyInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DetachRolePolicyOutput{}
req.Data = output
return
@@ -1401,6 +1463,8 @@ func (c *IAM) DetachUserPolicyRequest(input *DetachUserPolicyInput) (req *reques
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DetachUserPolicyOutput{}
req.Data = output
return
@@ -1433,6 +1497,8 @@ func (c *IAM) EnableMFADeviceRequest(input *EnableMFADeviceInput) (req *request.
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &EnableMFADeviceOutput{}
req.Data = output
return
@@ -3305,6 +3371,8 @@ func (c *IAM) PutGroupPolicyRequest(input *PutGroupPolicyInput) (req *request.Re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutGroupPolicyOutput{}
req.Data = output
return
@@ -3348,6 +3416,8 @@ func (c *IAM) PutRolePolicyRequest(input *PutRolePolicyInput) (req *request.Requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutRolePolicyOutput{}
req.Data = output
return
@@ -3397,6 +3467,8 @@ func (c *IAM) PutUserPolicyRequest(input *PutUserPolicyInput) (req *request.Requ
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutUserPolicyOutput{}
req.Data = output
return
@@ -3440,6 +3512,8 @@ func (c *IAM) RemoveClientIDFromOpenIDConnectProviderRequest(input *RemoveClient
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &RemoveClientIDFromOpenIDConnectProviderOutput{}
req.Data = output
return
@@ -3471,6 +3545,8 @@ func (c *IAM) RemoveRoleFromInstanceProfileRequest(input *RemoveRoleFromInstance
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &RemoveRoleFromInstanceProfileOutput{}
req.Data = output
return
@@ -3506,6 +3582,8 @@ func (c *IAM) RemoveUserFromGroupRequest(input *RemoveUserFromGroupInput) (req *
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &RemoveUserFromGroupOutput{}
req.Data = output
return
@@ -3533,6 +3611,8 @@ func (c *IAM) ResyncMFADeviceRequest(input *ResyncMFADeviceInput) (req *request.
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &ResyncMFADeviceOutput{}
req.Data = output
return
@@ -3564,6 +3644,8 @@ func (c *IAM) SetDefaultPolicyVersionRequest(input *SetDefaultPolicyVersionInput
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &SetDefaultPolicyVersionOutput{}
req.Data = output
return
@@ -3696,6 +3778,8 @@ func (c *IAM) UpdateAccessKeyRequest(input *UpdateAccessKeyInput) (req *request.
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateAccessKeyOutput{}
req.Data = output
return
@@ -3734,6 +3818,8 @@ func (c *IAM) UpdateAccountPasswordPolicyRequest(input *UpdateAccountPasswordPol
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateAccountPasswordPolicyOutput{}
req.Data = output
return
@@ -3770,6 +3856,8 @@ func (c *IAM) UpdateAssumeRolePolicyRequest(input *UpdateAssumeRolePolicyInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateAssumeRolePolicyOutput{}
req.Data = output
return
@@ -3799,6 +3887,8 @@ func (c *IAM) UpdateGroupRequest(input *UpdateGroupInput) (req *request.Request,
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateGroupOutput{}
req.Data = output
return
@@ -3835,6 +3925,8 @@ func (c *IAM) UpdateLoginProfileRequest(input *UpdateLoginProfileInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateLoginProfileOutput{}
req.Data = output
return
@@ -3866,6 +3958,8 @@ func (c *IAM) UpdateOpenIDConnectProviderThumbprintRequest(input *UpdateOpenIDCo
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateOpenIDConnectProviderThumbprintOutput{}
req.Data = output
return
@@ -3935,6 +4029,8 @@ func (c *IAM) UpdateSSHPublicKeyRequest(input *UpdateSSHPublicKeyInput) (req *re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateSSHPublicKeyOutput{}
req.Data = output
return
@@ -3971,6 +4067,8 @@ func (c *IAM) UpdateServerCertificateRequest(input *UpdateServerCertificateInput
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateServerCertificateOutput{}
req.Data = output
return
@@ -4013,6 +4111,8 @@ func (c *IAM) UpdateSigningCertificateRequest(input *UpdateSigningCertificateInp
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateSigningCertificateOutput{}
req.Data = output
return
@@ -4047,6 +4147,8 @@ func (c *IAM) UpdateUserRequest(input *UpdateUserInput) (req *request.Request, o
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &UpdateUserOutput{}
req.Data = output
return
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/iamiface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/iam/iamiface/interface.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/iamiface/interface.go
rename to vendor/github.com/aws/aws-sdk-go/service/iam/iamiface/interface.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/service.go b/vendor/github.com/aws/aws-sdk-go/service/iam/service.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/service.go
rename to vendor/github.com/aws/aws-sdk-go/service/iam/service.go
index e8cfb9c6fd..e4416226b9 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/service.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/iam/service.go
@@ -106,10 +106,10 @@ func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegio
// Handlers
svc.Handlers.Sign.PushBack(v4.Sign)
- svc.Handlers.Build.PushBack(query.Build)
- svc.Handlers.Unmarshal.PushBack(query.Unmarshal)
- svc.Handlers.UnmarshalMeta.PushBack(query.UnmarshalMeta)
- svc.Handlers.UnmarshalError.PushBack(query.UnmarshalError)
+ svc.Handlers.Build.PushBackNamed(query.BuildHandler)
+ svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler)
+ svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler)
+ svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler)
// Run custom client initialization if present
if initClient != nil {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/waiters.go b/vendor/github.com/aws/aws-sdk-go/service/iam/waiters.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/iam/waiters.go
rename to vendor/github.com/aws/aws-sdk-go/service/iam/waiters.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/api.go b/vendor/github.com/aws/aws-sdk-go/service/s3/api.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/api.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/api.go
index 1d63122073..54bebd096b 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/api.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/s3/api.go
@@ -9,6 +9,8 @@ import (
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
+ "github.com/aws/aws-sdk-go/private/protocol"
+ "github.com/aws/aws-sdk-go/private/protocol/restxml"
)
const opAbortMultipartUpload = "AbortMultipartUpload"
@@ -171,6 +173,8 @@ func (c *S3) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketOutput{}
req.Data = output
return
@@ -199,6 +203,8 @@ func (c *S3) DeleteBucketCorsRequest(input *DeleteBucketCorsInput) (req *request
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketCorsOutput{}
req.Data = output
return
@@ -226,6 +232,8 @@ func (c *S3) DeleteBucketLifecycleRequest(input *DeleteBucketLifecycleInput) (re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketLifecycleOutput{}
req.Data = output
return
@@ -253,6 +261,8 @@ func (c *S3) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketPolicyOutput{}
req.Data = output
return
@@ -280,6 +290,8 @@ func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketReplicationOutput{}
req.Data = output
return
@@ -306,6 +318,8 @@ func (c *S3) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketTaggingOutput{}
req.Data = output
return
@@ -333,6 +347,8 @@ func (c *S3) DeleteBucketWebsiteRequest(input *DeleteBucketWebsiteInput) (req *r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &DeleteBucketWebsiteOutput{}
req.Data = output
return
@@ -460,6 +476,9 @@ const opGetBucketLifecycle = "GetBucketLifecycle"
// GetBucketLifecycleRequest generates a request for the GetBucketLifecycle operation.
func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput) {
+ if c.Client.Config.Logger != nil {
+ c.Client.Config.Logger.Log("This operation, GetBucketLifecycle, has been deprecated")
+ }
op := &request.Operation{
Name: opGetBucketLifecycle,
HTTPMethod: "GET",
@@ -569,6 +588,9 @@ const opGetBucketNotification = "GetBucketNotification"
// GetBucketNotificationRequest generates a request for the GetBucketNotification operation.
func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated) {
+ if c.Client.Config.Logger != nil {
+ c.Client.Config.Logger.Log("This operation, GetBucketNotification, has been deprecated")
+ }
op := &request.Operation{
Name: opGetBucketNotification,
HTTPMethod: "GET",
@@ -876,6 +898,8 @@ func (c *S3) HeadBucketRequest(input *HeadBucketInput) (req *request.Request, ou
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &HeadBucketOutput{}
req.Data = output
return
@@ -1126,6 +1150,8 @@ func (c *S3) PutBucketAclRequest(input *PutBucketAclInput) (req *request.Request
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketAclOutput{}
req.Data = output
return
@@ -1153,6 +1179,8 @@ func (c *S3) PutBucketCorsRequest(input *PutBucketCorsInput) (req *request.Reque
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketCorsOutput{}
req.Data = output
return
@@ -1169,6 +1197,9 @@ const opPutBucketLifecycle = "PutBucketLifecycle"
// PutBucketLifecycleRequest generates a request for the PutBucketLifecycle operation.
func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput) {
+ if c.Client.Config.Logger != nil {
+ c.Client.Config.Logger.Log("This operation, PutBucketLifecycle, has been deprecated")
+ }
op := &request.Operation{
Name: opPutBucketLifecycle,
HTTPMethod: "PUT",
@@ -1180,6 +1211,8 @@ func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketLifecycleOutput{}
req.Data = output
return
@@ -1207,6 +1240,8 @@ func (c *S3) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleCon
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketLifecycleConfigurationOutput{}
req.Data = output
return
@@ -1235,6 +1270,8 @@ func (c *S3) PutBucketLoggingRequest(input *PutBucketLoggingInput) (req *request
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketLoggingOutput{}
req.Data = output
return
@@ -1253,6 +1290,9 @@ const opPutBucketNotification = "PutBucketNotification"
// PutBucketNotificationRequest generates a request for the PutBucketNotification operation.
func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput) {
+ if c.Client.Config.Logger != nil {
+ c.Client.Config.Logger.Log("This operation, PutBucketNotification, has been deprecated")
+ }
op := &request.Operation{
Name: opPutBucketNotification,
HTTPMethod: "PUT",
@@ -1264,6 +1304,8 @@ func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (re
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketNotificationOutput{}
req.Data = output
return
@@ -1291,6 +1333,8 @@ func (c *S3) PutBucketNotificationConfigurationRequest(input *PutBucketNotificat
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketNotificationConfigurationOutput{}
req.Data = output
return
@@ -1318,6 +1362,8 @@ func (c *S3) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.R
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketPolicyOutput{}
req.Data = output
return
@@ -1346,6 +1392,8 @@ func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketReplicationOutput{}
req.Data = output
return
@@ -1374,6 +1422,8 @@ func (c *S3) PutBucketRequestPaymentRequest(input *PutBucketRequestPaymentInput)
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketRequestPaymentOutput{}
req.Data = output
return
@@ -1405,6 +1455,8 @@ func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketTaggingOutput{}
req.Data = output
return
@@ -1432,6 +1484,8 @@ func (c *S3) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *r
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketVersioningOutput{}
req.Data = output
return
@@ -1460,6 +1514,8 @@ func (c *S3) PutBucketWebsiteRequest(input *PutBucketWebsiteInput) (req *request
}
req = c.newRequest(op, input, output)
+ req.Handlers.Unmarshal.Remove(restxml.UnmarshalHandler)
+ req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
output = &PutBucketWebsiteOutput{}
req.Data = output
return
@@ -1784,7 +1840,7 @@ type CloudFunctionConfiguration struct {
CloudFunction *string `type:"string"`
// Bucket event for which to send notifications.
- Event *string `type:"string" enum:"Event"`
+ Event *string `deprecated:"true" type:"string" enum:"Event"`
Events []*string `locationName:"Event" type:"list" flattened:"true"`
@@ -5346,7 +5402,7 @@ type QueueConfigurationDeprecated struct {
_ struct{} `type:"structure"`
// Bucket event for which to send notifications.
- Event *string `type:"string" enum:"Event"`
+ Event *string `deprecated:"true" type:"string" enum:"Event"`
Events []*string `locationName:"Event" type:"list" flattened:"true"`
@@ -5714,7 +5770,7 @@ type TopicConfigurationDeprecated struct {
_ struct{} `type:"structure"`
// Bucket event for which to send notifications.
- Event *string `type:"string" enum:"Event"`
+ Event *string `deprecated:"true" type:"string" enum:"Event"`
Events []*string `locationName:"Event" type:"list" flattened:"true"`
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/bucket_location.go b/vendor/github.com/aws/aws-sdk-go/service/s3/bucket_location.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/bucket_location.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/bucket_location.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/content_md5.go b/vendor/github.com/aws/aws-sdk-go/service/s3/content_md5.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/content_md5.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/content_md5.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/customizations.go b/vendor/github.com/aws/aws-sdk-go/service/s3/customizations.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/customizations.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/customizations.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/host_style_bucket.go b/vendor/github.com/aws/aws-sdk-go/service/s3/host_style_bucket.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/host_style_bucket.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/host_style_bucket.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3iface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/s3/s3iface/interface.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3iface/interface.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/s3iface/interface.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/doc.go b/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/doc.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/doc.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/download.go b/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/download.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/download.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/download.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/s3manageriface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/s3manageriface/interface.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/s3manageriface/interface.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/s3manageriface/interface.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/upload.go b/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/upload.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/s3manager/upload.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/upload.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/service.go b/vendor/github.com/aws/aws-sdk-go/service/s3/service.go
similarity index 89%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/service.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/service.go
index e80d95429a..cf01da5350 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/service.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/s3/service.go
@@ -59,10 +59,10 @@ func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegio
// Handlers
svc.Handlers.Sign.PushBack(v4.Sign)
- svc.Handlers.Build.PushBack(restxml.Build)
- svc.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
- svc.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
- svc.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
+ svc.Handlers.Build.PushBackNamed(restxml.BuildHandler)
+ svc.Handlers.Unmarshal.PushBackNamed(restxml.UnmarshalHandler)
+ svc.Handlers.UnmarshalMeta.PushBackNamed(restxml.UnmarshalMetaHandler)
+ svc.Handlers.UnmarshalError.PushBackNamed(restxml.UnmarshalErrorHandler)
// Run custom client initialization if present
if initClient != nil {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/sse.go b/vendor/github.com/aws/aws-sdk-go/service/s3/sse.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/sse.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/sse.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/statusok_error.go b/vendor/github.com/aws/aws-sdk-go/service/s3/statusok_error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/statusok_error.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/statusok_error.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/unmarshal_error.go b/vendor/github.com/aws/aws-sdk-go/service/s3/unmarshal_error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/unmarshal_error.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/unmarshal_error.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/waiters.go b/vendor/github.com/aws/aws-sdk-go/service/s3/waiters.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/s3/waiters.go
rename to vendor/github.com/aws/aws-sdk-go/service/s3/waiters.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/api.go b/vendor/github.com/aws/aws-sdk-go/service/sts/api.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/api.go
rename to vendor/github.com/aws/aws-sdk-go/service/sts/api.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/customizations.go b/vendor/github.com/aws/aws-sdk-go/service/sts/customizations.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/customizations.go
rename to vendor/github.com/aws/aws-sdk-go/service/sts/customizations.go
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/service.go b/vendor/github.com/aws/aws-sdk-go/service/sts/service.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/service.go
rename to vendor/github.com/aws/aws-sdk-go/service/sts/service.go
index 33f49001fa..d1944ed202 100644
--- a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/service.go
+++ b/vendor/github.com/aws/aws-sdk-go/service/sts/service.go
@@ -103,10 +103,10 @@ func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegio
// Handlers
svc.Handlers.Sign.PushBack(v4.Sign)
- svc.Handlers.Build.PushBack(query.Build)
- svc.Handlers.Unmarshal.PushBack(query.Unmarshal)
- svc.Handlers.UnmarshalMeta.PushBack(query.UnmarshalMeta)
- svc.Handlers.UnmarshalError.PushBack(query.UnmarshalError)
+ svc.Handlers.Build.PushBackNamed(query.BuildHandler)
+ svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler)
+ svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler)
+ svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler)
// Run custom client initialization if present
if initClient != nil {
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/stsiface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/sts/stsiface/interface.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/service/sts/stsiface/interface.go
rename to vendor/github.com/aws/aws-sdk-go/service/sts/stsiface/interface.go
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/.gitignore b/vendor/github.com/bgentry/speakeasy/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/.gitignore
rename to vendor/github.com/bgentry/speakeasy/.gitignore
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/LICENSE_WINDOWS b/vendor/github.com/bgentry/speakeasy/LICENSE_WINDOWS
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/LICENSE_WINDOWS
rename to vendor/github.com/bgentry/speakeasy/LICENSE_WINDOWS
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/Readme.md b/vendor/github.com/bgentry/speakeasy/Readme.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/Readme.md
rename to vendor/github.com/bgentry/speakeasy/Readme.md
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/example/main.go b/vendor/github.com/bgentry/speakeasy/example/main.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/example/main.go
rename to vendor/github.com/bgentry/speakeasy/example/main.go
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/speakeasy.go b/vendor/github.com/bgentry/speakeasy/speakeasy.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/speakeasy.go
rename to vendor/github.com/bgentry/speakeasy/speakeasy.go
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/speakeasy_unix.go b/vendor/github.com/bgentry/speakeasy/speakeasy_unix.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/speakeasy_unix.go
rename to vendor/github.com/bgentry/speakeasy/speakeasy_unix.go
diff --git a/Godeps/_workspace/src/github.com/bgentry/speakeasy/speakeasy_windows.go b/vendor/github.com/bgentry/speakeasy/speakeasy_windows.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/bgentry/speakeasy/speakeasy_windows.go
rename to vendor/github.com/bgentry/speakeasy/speakeasy_windows.go
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/akrennmair/gopcap/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/akrennmair/gopcap/LICENSE
new file mode 100644
index 0000000000..385fac9f26
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/akrennmair/gopcap/LICENSE
@@ -0,0 +1,27 @@
+Copyright (c) 2009-2011 Andreas Krennmair. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Andreas Krennmair nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/bgentry/speakeasy/LICENSE_WINDOWS b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/bgentry/speakeasy/LICENSE_WINDOWS
new file mode 100644
index 0000000000..ff177f6124
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/bgentry/speakeasy/LICENSE_WINDOWS
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
+
+APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+Copyright [2013] [the CloudFoundry Authors]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/boltdb/bolt/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/boltdb/bolt/LICENSE
new file mode 100644
index 0000000000..004e77fe5d
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/boltdb/bolt/LICENSE
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2013 Ben Johnson
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/cheggaaa/pb/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/cheggaaa/pb/LICENSE
new file mode 100644
index 0000000000..13ef3fe53a
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/cheggaaa/pb/LICENSE
@@ -0,0 +1,12 @@
+Copyright (c) 2012, Sergey Cherepanov
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+* Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/codegangsta/cli/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/codegangsta/cli/LICENSE
new file mode 100644
index 0000000000..5515ccfb71
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/codegangsta/cli/LICENSE
@@ -0,0 +1,21 @@
+Copyright (C) 2013 Jeremy Saenz
+All Rights Reserved.
+
+MIT LICENSE
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/coreos/gexpect/LICENCE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/coreos/gexpect/LICENCE
new file mode 100644
index 0000000000..50adb0f19c
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/coreos/gexpect/LICENCE
@@ -0,0 +1,7 @@
+Copyright (C) 2014 Thomas Rooney
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/cpuguy83/go-md2man/LICENSE.md b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/cpuguy83/go-md2man/LICENSE.md
new file mode 100644
index 0000000000..1cade6cef6
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/cpuguy83/go-md2man/LICENSE.md
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014 Brian Goff
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/gogo/protobuf/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/gogo/protobuf/LICENSE
new file mode 100644
index 0000000000..335e38e19b
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/gogo/protobuf/LICENSE
@@ -0,0 +1,36 @@
+Extensions for Protocol Buffers to create more go like structures.
+
+Copyright (c) 2013, Vastech SA (PTY) LTD. All rights reserved.
+http://github.com/gogo/protobuf/gogoproto
+
+Go support for Protocol Buffers - Google's data interchange format
+
+Copyright 2010 The Go Authors. All rights reserved.
+https://github.com/golang/protobuf
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/vendor/github.com/go-ini/ini/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/golang/glog/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/vendor/github.com/go-ini/ini/LICENSE
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/golang/glog/LICENSE
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/golang/protobuf/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/golang/protobuf/LICENSE
new file mode 100644
index 0000000000..1b1b1921ef
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/golang/protobuf/LICENSE
@@ -0,0 +1,31 @@
+Go support for Protocol Buffers - Google's data interchange format
+
+Copyright 2010 The Go Authors. All rights reserved.
+https://github.com/golang/protobuf
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/google/btree/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/LICENSE
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/google/btree/LICENSE
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/inconshreveable/mousetrap/LICENSE
similarity index 85%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/LICENSE
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/inconshreveable/mousetrap/LICENSE
index b03310a91f..5f0d1fb6a7 100644
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/LICENSE
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/inconshreveable/mousetrap/LICENSE
@@ -1,10 +1,10 @@
-Copyright 2015 James Saryerwinnie
+Copyright 2014 Alan Shreve
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/jonboulle/clockwork/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/jonboulle/clockwork/LICENSE
new file mode 100644
index 0000000000..5c304d1a4a
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/jonboulle/clockwork/LICENSE
@@ -0,0 +1,201 @@
+Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "{}"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright {yyyy} {name of copyright owner}
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/kballard/go-shellquote/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/kballard/go-shellquote/LICENSE
new file mode 100644
index 0000000000..a6d77312e1
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/kballard/go-shellquote/LICENSE
@@ -0,0 +1,19 @@
+Copyright (C) 2014 Kevin Ballard
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
+OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/kr/pty/License b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/kr/pty/License
new file mode 100644
index 0000000000..6b7558b6b4
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/kr/pty/License
@@ -0,0 +1,23 @@
+Copyright (c) 2011 Keith Rarick
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated
+documentation files (the "Software"), to deal in the
+Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute,
+sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall
+be included in all copies or substantial portions of the
+Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
+OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/olekukonko/ts/LICENCE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/olekukonko/ts/LICENCE
new file mode 100644
index 0000000000..1fd8484253
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/olekukonko/ts/LICENCE
@@ -0,0 +1,19 @@
+Copyright (C) 2014 by Oleku Konko
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
\ No newline at end of file
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/prometheus/procfs/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/prometheus/procfs/LICENSE
new file mode 100644
index 0000000000..261eeb9e9f
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/prometheus/procfs/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/prometheus/procfs/NOTICE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/prometheus/procfs/NOTICE
new file mode 100644
index 0000000000..53c5e9aa11
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/prometheus/procfs/NOTICE
@@ -0,0 +1,7 @@
+procfs provides functions to retrieve system, kernel and process
+metrics from the pseudo-filesystem proc.
+
+Copyright 2014-2015 The Prometheus Authors
+
+This product includes software developed at
+SoundCloud Ltd. (http://soundcloud.com/).
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/russross/blackfriday/LICENSE.txt b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/russross/blackfriday/LICENSE.txt
new file mode 100644
index 0000000000..2885af3602
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/russross/blackfriday/LICENSE.txt
@@ -0,0 +1,29 @@
+Blackfriday is distributed under the Simplified BSD License:
+
+> Copyright © 2011 Russ Ross
+> All rights reserved.
+>
+> Redistribution and use in source and binary forms, with or without
+> modification, are permitted provided that the following conditions
+> are met:
+>
+> 1. Redistributions of source code must retain the above copyright
+> notice, this list of conditions and the following disclaimer.
+>
+> 2. Redistributions in binary form must reproduce the above
+> copyright notice, this list of conditions and the following
+> disclaimer in the documentation and/or other materials provided with
+> the distribution.
+>
+> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+> "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+> LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+> FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+> COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+> INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+> BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+> LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+> LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+> ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+> POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/shurcooL/sanitized_anchor_name/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/shurcooL/sanitized_anchor_name/LICENSE
new file mode 100644
index 0000000000..5f4e3ed57a
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/shurcooL/sanitized_anchor_name/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2015 Dmitri Shuralyov
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/cobra/LICENSE.txt b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/cobra/LICENSE.txt
new file mode 100644
index 0000000000..298f0e2665
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/cobra/LICENSE.txt
@@ -0,0 +1,174 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/cobra/cobra/cmd/licenses.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/cobra/cobra/cmd/licenses.go
new file mode 100644
index 0000000000..5ad9c96ef1
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/cobra/cobra/cmd/licenses.go
@@ -0,0 +1,1133 @@
+// Copyright © 2015 Steve Francia .
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Parts inspired by https://github.com/ryanuber/go-license
+
+package cmd
+
+import "strings"
+
+//Licenses contains all possible licenses a user can chose from
+var Licenses map[string]License
+
+//License represents a software license agreement, containing the Name of
+// the license, its possible matches (on the command line as given to cobra)
+// the header to be used with each file on the file's creating, and the text
+// of the license
+type License struct {
+ Name string // The type of license in use
+ PossibleMatches []string // Similar names to guess
+ Text string // License text data
+ Header string // License header for source files
+}
+
+// given a license name (in), try to match the license indicated
+func matchLicense(in string) string {
+ for key, lic := range Licenses {
+ for _, match := range lic.PossibleMatches {
+ if strings.EqualFold(in, match) {
+ return key
+ }
+ }
+ }
+ return ""
+}
+
+func init() {
+ Licenses = make(map[string]License)
+
+ Licenses["apache"] = License{
+ Name: "Apache 2.0",
+ PossibleMatches: []string{"apache", "apache20", "apache 2.0", "apache2.0", "apache-2.0"},
+ Header: `
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.`,
+ Text: `
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+`,
+ }
+
+ Licenses["mit"] = License{
+ Name: "Mit",
+ PossibleMatches: []string{"mit"},
+ Header: `
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.`,
+ Text: `The MIT License (MIT)
+
+{{ .copyright }}
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+`,
+ }
+
+ Licenses["bsd"] = License{
+ Name: "NewBSD",
+ PossibleMatches: []string{"bsd", "newbsd", "3 clause bsd"},
+ Header: `
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holder nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.`,
+ Text: `{{ .copyright }}
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holder nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+`,
+ }
+
+ Licenses["freebsd"] = License{
+ Name: "Simplified BSD License",
+ PossibleMatches: []string{"freebsd", "simpbsd", "simple bsd", "2 clause bsd"},
+ Header: `
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.`,
+ Text: `{{ .copyright }}
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+`,
+ }
+
+ Licenses["gpl3"] = License{
+ Name: "GNU General Public License 3.0",
+ PossibleMatches: []string{"gpl3", "gpl", "gnu gpl3", "gnu gpl"},
+ Header: `{{ .copyright }}
+
+ This file is part of {{ .appName }}.
+
+ {{ .appName }} is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ {{ .appName }} is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with {{ .appName }}. If not, see .
+ `,
+ Text: ` GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see .
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ Copyright (C)
+ This program comes with ABSOLUTELY NO WARRANTY; for details type 'show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type 'show c' for details.
+
+The hypothetical commands 'show w' and 'show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+ .
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+.
+`,
+ }
+
+ // Licenses["apache20"] = License{
+ // Name: "Apache 2.0",
+ // PossibleMatches: []string{"apache", "apache20", ""},
+ // Header: `
+ // `,
+ // Text: `
+ // `,
+ // }
+}
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/pflag/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/pflag/LICENSE
new file mode 100644
index 0000000000..63ed1cfea1
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/spf13/pflag/LICENSE
@@ -0,0 +1,28 @@
+Copyright (c) 2012 Alex Ogier. All rights reserved.
+Copyright (c) 2012 The Go Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/LICENSE
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/LICENSE
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/0doc.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/0doc.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/0doc.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/0doc.go
index 7f71f0ecbf..caa7e0a3b5 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/0doc.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/0doc.go
@@ -64,7 +64,6 @@ Rich Feature Set includes:
- Never silently skip data when decoding.
User decides whether to return an error or silently skip data when keys or indexes
in the data stream do not map to fields in the struct.
- - Detect and error when encoding a cyclic reference (instead of stack overflow shutdown)
- Encode/Decode from/to chan types (for iterative streaming support)
- Drop-in replacement for encoding/json. `json:` key in struct tag supported.
- Provides a RPC Server and Client Codec for net/rpc communication protocol.
@@ -172,8 +171,6 @@ package codec
// TODO:
//
-// - optimization for codecgen:
-// if len of entity is <= 3 words, then support a value receiver for encode.
// - (En|De)coder should store an error when it occurs.
// Until reset, subsequent calls return that error that was stored.
// This means that free panics must go away.
@@ -193,7 +190,4 @@ package codec
// - Consider making Handle used AS-IS within the encoding/decoding session.
// This means that we don't cache Handle information within the (En|De)coder,
// except we really need it at Reset(...)
-// - Consider adding math/big support
-// - Consider reducing the size of the generated functions:
-// Maybe use one loop, and put the conditionals in the loop.
-// for ... { if cLen > 0 { if j == cLen { break } } else if dd.CheckBreak() { break } }
+// - Handle recursive types during encoding/decoding?
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/README.md b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/README.md
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/README.md
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/binc.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/binc.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/binc.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/binc.go
index 766d26cf6d..c884d14dce 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/binc.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/binc.go
@@ -908,14 +908,10 @@ func (h *BincHandle) newDecDriver(d *Decoder) decDriver {
func (e *bincEncDriver) reset() {
e.w = e.e.w
- e.s = 0
- e.m = nil
}
func (d *bincDecDriver) reset() {
d.r = d.d.r
- d.s = nil
- d.bd, d.bdRead, d.vd, d.vs = 0, false, 0, 0
}
var _ decDriver = (*bincDecDriver)(nil)
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/cbor.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/cbor.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/cbor.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/cbor.go
index cfd89b7a43..0e5d32b2ea 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/cbor.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/cbor.go
@@ -578,7 +578,6 @@ func (e *cborEncDriver) reset() {
func (d *cborDecDriver) reset() {
d.r = d.d.r
- d.bd, d.bdRead = 0, false
}
var _ decDriver = (*cborDecDriver)(nil)
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/README.md b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/README.md
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/README.md
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/gen.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/gen.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/gen.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/gen.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/z.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/z.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/z.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/codecgen/z.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/decode.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/decode.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/decode.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/decode.go
index d842a24ba8..b3b99f0367 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/decode.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/decode.go
@@ -1862,7 +1862,6 @@ func (d *Decoder) intern(s string) {
}
}
-// nextValueBytes returns the next value in the stream as a set of bytes.
func (d *Decoder) nextValueBytes() []byte {
d.d.uncacheRead()
d.r.track()
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/encode.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/encode.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/encode.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/encode.go
index d7ad330201..99af6fa555 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/encode.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/encode.go
@@ -110,15 +110,6 @@ type EncodeOptions struct {
//
Canonical bool
- // CheckCircularRef controls whether we check for circular references
- // and error fast during an encode.
- //
- // If enabled, an error is received if a pointer to a struct
- // references itself either directly or through one of its fields (iteratively).
- //
- // This is opt-in, as there may be a performance hit to checking circular references.
- CheckCircularRef bool
-
// AsSymbols defines what should be encoded as symbols.
//
// Encoding as symbols can reduce the encoded size significantly.
@@ -512,7 +503,7 @@ func (f *encFnInfo) kStruct(rv reflect.Value) {
newlen := len(fti.sfi)
// Use sync.Pool to reduce allocating slices unnecessarily.
- // The cost of sync.Pool is less than the cost of new allocation.
+ // The cost of the occasional locking is less than the cost of new allocation.
pool, poolv, fkvs := encStructPoolGet(newlen)
// if toMap, use the sorted array. If toArray, use unsorted array (to match sequence in struct)
@@ -523,6 +514,11 @@ func (f *encFnInfo) kStruct(rv reflect.Value) {
var kv stringRv
for _, si := range tisfi {
kv.r = si.field(rv, false)
+ // if si.i != -1 {
+ // rvals[newlen] = rv.Field(int(si.i))
+ // } else {
+ // rvals[newlen] = rv.FieldByIndex(si.is)
+ // }
if toMap {
if si.omitEmpty && isEmptyValue(kv.r) {
continue
@@ -600,15 +596,13 @@ func (f *encFnInfo) kStruct(rv reflect.Value) {
// f.e.encodeValue(rv.Elem())
// }
-// func (f *encFnInfo) kInterface(rv reflect.Value) {
-// println("kInterface called")
-// debug.PrintStack()
-// if rv.IsNil() {
-// f.e.e.EncodeNil()
-// return
-// }
-// f.e.encodeValue(rv.Elem(), nil)
-// }
+func (f *encFnInfo) kInterface(rv reflect.Value) {
+ if rv.IsNil() {
+ f.e.e.EncodeNil()
+ return
+ }
+ f.e.encodeValue(rv.Elem(), nil)
+}
func (f *encFnInfo) kMap(rv reflect.Value) {
ee := f.e.e
@@ -883,7 +877,6 @@ type Encoder struct {
// as the handler MAY need to do some coordination.
w encWriter
s []encRtidFn
- ci set
be bool // is binary encoding
js bool // is json handle
@@ -1140,23 +1133,20 @@ func (e *Encoder) encode(iv interface{}) {
}
}
-func (e *Encoder) preEncodeValue(rv reflect.Value) (rv2 reflect.Value, sptr uintptr, proceed bool) {
+func (e *Encoder) encodeI(iv interface{}, checkFastpath, checkCodecSelfer bool) {
+ if rv, proceed := e.preEncodeValue(reflect.ValueOf(iv)); proceed {
+ rt := rv.Type()
+ rtid := reflect.ValueOf(rt).Pointer()
+ fn := e.getEncFn(rtid, rt, checkFastpath, checkCodecSelfer)
+ fn.f(&fn.i, rv)
+ }
+}
+
+func (e *Encoder) preEncodeValue(rv reflect.Value) (rv2 reflect.Value, proceed bool) {
// use a goto statement instead of a recursive function for ptr/interface.
TOP:
switch rv.Kind() {
- case reflect.Ptr:
- if rv.IsNil() {
- e.e.EncodeNil()
- return
- }
- rv = rv.Elem()
- if e.h.CheckCircularRef && rv.Kind() == reflect.Struct {
- // TODO: Movable pointers will be an issue here. Future problem.
- sptr = rv.UnsafeAddr()
- break TOP
- }
- goto TOP
- case reflect.Interface:
+ case reflect.Ptr, reflect.Interface:
if rv.IsNil() {
e.e.EncodeNil()
return
@@ -1173,39 +1163,18 @@ TOP:
return
}
- proceed = true
- rv2 = rv
- return
-}
-
-func (e *Encoder) doEncodeValue(rv reflect.Value, fn *encFn, sptr uintptr,
- checkFastpath, checkCodecSelfer bool) {
- if sptr != 0 {
- if (&e.ci).add(sptr) {
- e.errorf("circular reference found: # %d", sptr)
- }
- }
- if fn == nil {
- rt := rv.Type()
- rtid := reflect.ValueOf(rt).Pointer()
- fn = e.getEncFn(rtid, rt, true, true)
- }
- fn.f(&fn.i, rv)
- if sptr != 0 {
- (&e.ci).remove(sptr)
- }
-}
-
-func (e *Encoder) encodeI(iv interface{}, checkFastpath, checkCodecSelfer bool) {
- if rv, sptr, proceed := e.preEncodeValue(reflect.ValueOf(iv)); proceed {
- e.doEncodeValue(rv, nil, sptr, checkFastpath, checkCodecSelfer)
- }
+ return rv, true
}
func (e *Encoder) encodeValue(rv reflect.Value, fn *encFn) {
// if a valid fn is passed, it MUST BE for the dereferenced type of rv
- if rv, sptr, proceed := e.preEncodeValue(rv); proceed {
- e.doEncodeValue(rv, fn, sptr, true, true)
+ if rv, proceed := e.preEncodeValue(rv); proceed {
+ if fn == nil {
+ rt := rv.Type()
+ rtid := reflect.ValueOf(rt).Pointer()
+ fn = e.getEncFn(rtid, rt, true, true)
+ }
+ fn.f(&fn.i, rv)
}
}
@@ -1315,11 +1284,10 @@ func (e *Encoder) getEncFn(rtid uintptr, rt reflect.Type, checkFastpath, checkCo
fn.f = (*encFnInfo).kSlice
case reflect.Struct:
fn.f = (*encFnInfo).kStruct
- // reflect.Ptr and reflect.Interface are handled already by preEncodeValue
// case reflect.Ptr:
// fn.f = (*encFnInfo).kPtr
- // case reflect.Interface:
- // fn.f = (*encFnInfo).kInterface
+ case reflect.Interface:
+ fn.f = (*encFnInfo).kInterface
case reflect.Map:
fn.f = (*encFnInfo).kMap
default:
@@ -1385,6 +1353,25 @@ func encStructPoolGet(newlen int) (p *sync.Pool, v interface{}, s []stringRv) {
// panic(errors.New("encStructPoolLen must be equal to 4")) // defensive, in case it is changed
// }
// idxpool := newlen / 8
+
+ // if pool == nil {
+ // fkvs = make([]stringRv, newlen)
+ // } else {
+ // poolv = pool.Get()
+ // switch vv := poolv.(type) {
+ // case *[8]stringRv:
+ // fkvs = vv[:newlen]
+ // case *[16]stringRv:
+ // fkvs = vv[:newlen]
+ // case *[32]stringRv:
+ // fkvs = vv[:newlen]
+ // case *[64]stringRv:
+ // fkvs = vv[:newlen]
+ // case *[128]stringRv:
+ // fkvs = vv[:newlen]
+ // }
+ // }
+
if newlen <= 8 {
p = &encStructPool[0]
v = p.Get()
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.generated.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.generated.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.generated.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.generated.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.go.tmpl b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.go.tmpl
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.go.tmpl
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.go.tmpl
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.not.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.not.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.not.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/fast-path.not.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-array.go.tmpl b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-array.go.tmpl
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-array.go.tmpl
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-array.go.tmpl
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-map.go.tmpl b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-map.go.tmpl
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-map.go.tmpl
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-dec-map.go.tmpl
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.generated.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.generated.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.generated.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.generated.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.go.tmpl b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.go.tmpl
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.go.tmpl
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen-helper.go.tmpl
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/gen.generated.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen.generated.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/gen.generated.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen.generated.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/gen.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/gen.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/gen.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/helper.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper.go
similarity index 88%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/helper.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper.go
index 40065a01c8..560014ae39 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/helper.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper.go
@@ -155,10 +155,8 @@ const (
resetSliceElemToZeroValue bool = false
)
-var (
- oneByteArr = [1]byte{0}
- zeroByteSlice = oneByteArr[:0:0]
-)
+var oneByteArr = [1]byte{0}
+var zeroByteSlice = oneByteArr[:0:0]
type charEncoding uint8
@@ -217,24 +215,6 @@ const (
containerArrayEnd
)
-type rgetPoolT struct {
- encNames [8]string
- fNames [8]string
- etypes [8]uintptr
- sfis [8]*structFieldInfo
-}
-
-var rgetPool = sync.Pool{
- New: func() interface{} { return new(rgetPoolT) },
-}
-
-type rgetT struct {
- fNames []string
- encNames []string
- etypes []uintptr
- sfis []*structFieldInfo
-}
-
type containerStateRecv interface {
sendContainerState(containerState)
}
@@ -853,17 +833,14 @@ func (x *TypeInfos) get(rtid uintptr, rt reflect.Type) (pti *typeInfo) {
siInfo = parseStructFieldInfo(structInfoFieldName, x.structTag(f.Tag))
ti.toArray = siInfo.toArray
}
- pi := rgetPool.Get()
- pv := pi.(*rgetPoolT)
- pv.etypes[0] = ti.baseId
- vv := rgetT{pv.fNames[:0], pv.encNames[:0], pv.etypes[:1], pv.sfis[:0]}
- x.rget(rt, rtid, nil, &vv, siInfo)
- ti.sfip = make([]*structFieldInfo, len(vv.sfis))
- ti.sfi = make([]*structFieldInfo, len(vv.sfis))
- copy(ti.sfip, vv.sfis)
- sort.Sort(sfiSortedByEncName(vv.sfis))
- copy(ti.sfi, vv.sfis)
- rgetPool.Put(pi)
+ sfip := make([]*structFieldInfo, 0, rt.NumField())
+ x.rget(rt, nil, make(map[string]bool, 16), &sfip, siInfo)
+
+ ti.sfip = make([]*structFieldInfo, len(sfip))
+ ti.sfi = make([]*structFieldInfo, len(sfip))
+ copy(ti.sfip, sfip)
+ sort.Sort(sfiSortedByEncName(sfip))
+ copy(ti.sfi, sfip)
}
// sfi = sfip
@@ -876,37 +853,16 @@ func (x *TypeInfos) get(rtid uintptr, rt reflect.Type) (pti *typeInfo) {
return
}
-func (x *TypeInfos) rget(rt reflect.Type, rtid uintptr,
- indexstack []int, pv *rgetT, siInfo *structFieldInfo,
+func (x *TypeInfos) rget(rt reflect.Type, indexstack []int, fnameToHastag map[string]bool,
+ sfi *[]*structFieldInfo, siInfo *structFieldInfo,
) {
- // This will read up the fields and store how to access the value.
- // It uses the go language's rules for embedding, as below:
- // - if a field has been seen while traversing, skip it
- // - if an encName has been seen while traversing, skip it
- // - if an embedded type has been seen, skip it
- //
- // Also, per Go's rules, embedded fields must be analyzed AFTER all top-level fields.
- //
- // Note: we consciously use slices, not a map, to simulate a set.
- // Typically, types have < 16 fields, and iteration using equals is faster than maps there
-
- type anonField struct {
- ft reflect.Type
- idx int
- }
-
- var anonFields []anonField
-
-LOOP:
- for j, jlen := 0, rt.NumField(); j < jlen; j++ {
+ for j := 0; j < rt.NumField(); j++ {
f := rt.Field(j)
fkind := f.Type.Kind()
// skip if a func type, or is unexported, or structTag value == "-"
- switch fkind {
- case reflect.Func, reflect.Complex64, reflect.Complex128, reflect.UnsafePointer:
- continue LOOP
+ if fkind == reflect.Func {
+ continue
}
-
// if r1, _ := utf8.DecodeRuneInString(f.Name); r1 == utf8.RuneError || !unicode.IsUpper(r1) {
if f.PkgPath != "" && !f.Anonymous { // unexported, not embedded
continue
@@ -930,8 +886,11 @@ LOOP:
ft = ft.Elem()
}
if ft.Kind() == reflect.Struct {
- // handle anonymous fields after handling all the non-anon fields
- anonFields = append(anonFields, anonField{ft, j})
+ indexstack2 := make([]int, len(indexstack)+1, len(indexstack)+4)
+ copy(indexstack2, indexstack)
+ indexstack2[len(indexstack)] = j
+ // indexstack2 := append(append(make([]int, 0, len(indexstack)+4), indexstack...), j)
+ x.rget(ft, indexstack2, fnameToHastag, sfi, siInfo)
continue
}
}
@@ -942,39 +901,26 @@ LOOP:
continue
}
+ // do not let fields with same name in embedded structs override field at higher level.
+ // this must be done after anonymous check, to allow anonymous field
+ // still include their child fields
+ if _, ok := fnameToHastag[f.Name]; ok {
+ continue
+ }
if f.Name == "" {
panic(noFieldNameToStructFieldInfoErr)
}
-
- for _, k := range pv.fNames {
- if k == f.Name {
- continue LOOP
- }
- }
- pv.fNames = append(pv.fNames, f.Name)
-
if si == nil {
si = parseStructFieldInfo(f.Name, stag)
} else if si.encName == "" {
si.encName = f.Name
}
-
- for _, k := range pv.encNames {
- if k == si.encName {
- continue LOOP
- }
- }
- pv.encNames = append(pv.encNames, si.encName)
-
// si.ikind = int(f.Type.Kind())
if len(indexstack) == 0 {
si.i = int16(j)
} else {
si.i = -1
- si.is = make([]int, len(indexstack)+1)
- copy(si.is, indexstack)
- si.is[len(indexstack)] = j
- // si.is = append(append(make([]int, 0, len(indexstack)+4), indexstack...), j)
+ si.is = append(append(make([]int, 0, len(indexstack)+4), indexstack...), j)
}
if siInfo != nil {
@@ -982,26 +928,8 @@ LOOP:
si.omitEmpty = true
}
}
- pv.sfis = append(pv.sfis, si)
- }
-
- // now handle anonymous fields
-LOOP2:
- for _, af := range anonFields {
- // if etypes contains this, then do not call rget again (as the fields are already seen here)
- ftid := reflect.ValueOf(af.ft).Pointer()
- for _, k := range pv.etypes {
- if k == ftid {
- continue LOOP2
- }
- }
- pv.etypes = append(pv.etypes, ftid)
-
- indexstack2 := make([]int, len(indexstack)+1)
- copy(indexstack2, indexstack)
- indexstack2[len(indexstack)] = af.idx
- // indexstack2 := append(append(make([]int, 0, len(indexstack)+4), indexstack...), j)
- x.rget(af.ft, ftid, indexstack2, pv, siInfo)
+ *sfi = append(*sfi, si)
+ fnameToHastag[f.Name] = stag != ""
}
}
@@ -1199,73 +1127,3 @@ type bytesISlice []bytesI
func (p bytesISlice) Len() int { return len(p) }
func (p bytesISlice) Less(i, j int) bool { return bytes.Compare(p[i].v, p[j].v) == -1 }
func (p bytesISlice) Swap(i, j int) { p[i], p[j] = p[j], p[i] }
-
-// -----------------
-
-type set []uintptr
-
-func (s *set) add(v uintptr) (exists bool) {
- // e.ci is always nil, or len >= 1
- // defer func() { fmt.Printf("$$$$$$$$$$$ cirRef Add: %v, exists: %v\n", v, exists) }()
- x := *s
- if x == nil {
- x = make([]uintptr, 1, 8)
- x[0] = v
- *s = x
- return
- }
- // typically, length will be 1. make this perform.
- if len(x) == 1 {
- if j := x[0]; j == 0 {
- x[0] = v
- } else if j == v {
- exists = true
- } else {
- x = append(x, v)
- *s = x
- }
- return
- }
- // check if it exists
- for _, j := range x {
- if j == v {
- exists = true
- return
- }
- }
- // try to replace a "deleted" slot
- for i, j := range x {
- if j == 0 {
- x[i] = v
- return
- }
- }
- // if unable to replace deleted slot, just append it.
- x = append(x, v)
- *s = x
- return
-}
-
-func (s *set) remove(v uintptr) (exists bool) {
- // defer func() { fmt.Printf("$$$$$$$$$$$ cirRef Rm: %v, exists: %v\n", v, exists) }()
- x := *s
- if len(x) == 0 {
- return
- }
- if len(x) == 1 {
- if x[0] == v {
- x[0] = 0
- }
- return
- }
- for i, j := range x {
- if j == v {
- exists = true
- x[i] = 0 // set it to 0, as way to delete it.
- // copy(x[i:], x[i+1:])
- // x = x[:len(x)-1]
- return
- }
- }
- return
-}
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_internal.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_internal.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/helper_internal.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_internal.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_not_unsafe.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_not_unsafe.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/helper_not_unsafe.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_not_unsafe.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_unsafe.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_unsafe.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/helper_unsafe.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/helper_unsafe.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/json.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/json.go
similarity index 91%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/json.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/json.go
index 142d5b52a8..a18a5f7063 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/json.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/json.go
@@ -43,23 +43,18 @@ import (
//--------------------------------
-var (
- jsonLiterals = [...]byte{'t', 'r', 'u', 'e', 'f', 'a', 'l', 's', 'e', 'n', 'u', 'l', 'l'}
+var jsonLiterals = [...]byte{'t', 'r', 'u', 'e', 'f', 'a', 'l', 's', 'e', 'n', 'u', 'l', 'l'}
- jsonFloat64Pow10 = [...]float64{
- 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9,
- 1e10, 1e11, 1e12, 1e13, 1e14, 1e15, 1e16, 1e17, 1e18, 1e19,
- 1e20, 1e21, 1e22,
- }
+var jsonFloat64Pow10 = [...]float64{
+ 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9,
+ 1e10, 1e11, 1e12, 1e13, 1e14, 1e15, 1e16, 1e17, 1e18, 1e19,
+ 1e20, 1e21, 1e22,
+}
- jsonUint64Pow10 = [...]uint64{
- 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9,
- 1e10, 1e11, 1e12, 1e13, 1e14, 1e15, 1e16, 1e17, 1e18, 1e19,
- }
-
- // jsonTabs and jsonSpaces are used as caches for indents
- jsonTabs, jsonSpaces string
-)
+var jsonUint64Pow10 = [...]uint64{
+ 1e0, 1e1, 1e2, 1e3, 1e4, 1e5, 1e6, 1e7, 1e8, 1e9,
+ 1e10, 1e11, 1e12, 1e13, 1e14, 1e15, 1e16, 1e17, 1e18, 1e19,
+}
const (
// jsonUnreadAfterDecNum controls whether we unread after decoding a number.
@@ -90,23 +85,8 @@ const (
jsonNumUintMaxVal = 1< 0 {
- e.d = true
- e.ds = jsonSpaces[:e.h.Indent]
- } else if e.h.Indent < 0 {
- e.d = true
- e.dt = true
- e.ds = jsonTabs[:-(e.h.Indent)]
- }
}
func (d *jsonDecDriver) reset() {
d.r = d.d.r
- d.se.i = d.h.RawBytesExt
- if d.bs != nil {
- d.bs = d.bs[:0]
- }
- d.c, d.tok = 0, 0
- d.n.reset()
}
var jsonEncodeTerminate = []byte{' '}
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/msgpack.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/msgpack.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/msgpack.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/msgpack.go
index f9f8723627..5eb4c96368 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/msgpack.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/msgpack.go
@@ -374,7 +374,7 @@ func (d *msgpackDecDriver) DecodeNaked() {
}
if n.v == valueTypeUint && d.h.SignedInteger {
n.v = valueTypeInt
- n.i = int64(n.u)
+ n.i = int64(n.v)
}
return
}
@@ -729,7 +729,6 @@ func (e *msgpackEncDriver) reset() {
func (d *msgpackDecDriver) reset() {
d.r = d.d.r
- d.bd, d.bdRead = 0, false
}
//--------------------------------------------------
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/noop.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/noop.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/noop.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/noop.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.sh b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.sh
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.sh
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/prebuild.sh
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/rpc.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/rpc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/rpc.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/rpc.go
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/simple.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/simple.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/simple.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/simple.go
index 7c0ba7affc..c150496509 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/simple.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/simple.go
@@ -512,7 +512,6 @@ func (e *simpleEncDriver) reset() {
func (d *simpleDecDriver) reset() {
d.r = d.d.r
- d.bd, d.bdRead = 0, false
}
var _ decDriver = (*simpleDecDriver)(nil)
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/test-cbor-goldens.json b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/test-cbor-goldens.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/test-cbor-goldens.json
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/test-cbor-goldens.json
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/test.py b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/test.py
similarity index 100%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/test.py
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/test.py
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/tests.sh b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/tests.sh
similarity index 68%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/tests.sh
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/tests.sh
index 00857b6209..b1602ea7e7 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/tests.sh
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/tests.sh
@@ -6,7 +6,6 @@
_run() {
# 1. VARIATIONS: regular (t), canonical (c), IO R/W (i),
# binc-nosymbols (n), struct2array (s), intern string (e),
- # json-indent (d), circular (l)
# 2. MODE: reflection (r), external (x), codecgen (g), unsafe (u), notfastpath (f)
# 3. OPTIONS: verbose (v), reset (z), must (m),
#
@@ -17,7 +16,7 @@ _run() {
zargs=""
local OPTIND
OPTIND=1
- while getopts "_xurtcinsvgzmefdl" flag
+ while getopts "xurtcinsvgzmef" flag
do
case "x$flag" in
'xr') ;;
@@ -28,7 +27,6 @@ _run() {
'xv') zargs="$zargs -tv" ;;
'xz') zargs="$zargs -tr" ;;
'xm') zargs="$zargs -tm" ;;
- 'xl') zargs="$zargs -tl" ;;
*) ;;
esac
done
@@ -37,19 +35,15 @@ _run() {
# echo ">>>>>>> TAGS: $ztags"
OPTIND=1
- while getopts "_xurtcinsvgzmefdl" flag
+ while getopts "xurtcinsvgzmef" flag
do
case "x$flag" in
'xt') printf ">>>>>>> REGULAR : "; go test "-tags=$ztags" $zargs ; sleep 2 ;;
'xc') printf ">>>>>>> CANONICAL : "; go test "-tags=$ztags" $zargs -tc; sleep 2 ;;
'xi') printf ">>>>>>> I/O : "; go test "-tags=$ztags" $zargs -ti; sleep 2 ;;
- 'xn') printf ">>>>>>> NO_SYMBOLS : "; go test "-tags=$ztags" -run=Binc $zargs -tn; sleep 2 ;;
+ 'xn') printf ">>>>>>> NO_SYMBOLS : "; go test "-tags=$ztags" $zargs -tn; sleep 2 ;;
'xs') printf ">>>>>>> TO_ARRAY : "; go test "-tags=$ztags" $zargs -ts; sleep 2 ;;
'xe') printf ">>>>>>> INTERN : "; go test "-tags=$ztags" $zargs -te; sleep 2 ;;
- 'xd') printf ">>>>>>> INDENT : ";
- go test "-tags=$ztags" -run=JsonCodecsTable -td=-1 $zargs;
- go test "-tags=$ztags" -run=JsonCodecsTable -td=8 $zargs;
- sleep 2 ;;
*) ;;
esac
done
@@ -61,20 +55,20 @@ _run() {
# echo ">>>>>>> RUNNING VARIATIONS OF TESTS"
if [[ "x$@" = "x" ]]; then
# All: r, x, g, gu
- _run "-_tcinsed_ml" # regular
- _run "-_tcinsed_ml_z" # regular with reset
- _run "-_tcinsed_ml_f" # regular with no fastpath (notfastpath)
- _run "-x_tcinsed_ml" # external
- _run "-gx_tcinsed_ml" # codecgen: requires external
- _run "-gxu_tcinsed_ml" # codecgen + unsafe
+ _run "-rtcinsm" # regular
+ _run "-rtcinsmz" # regular with reset
+ _run "-rtcinsmf" # regular with no fastpath (notfastpath)
+ _run "-xtcinsm" # external
+ _run "-gxtcinsm" # codecgen: requires external
+ _run "-gxutcinsm" # codecgen + unsafe
elif [[ "x$@" = "x-Z" ]]; then
# Regular
- _run "-_tcinsed_ml" # regular
- _run "-_tcinsed_ml_z" # regular with reset
+ _run "-rtcinsm" # regular
+ _run "-rtcinsmz" # regular with reset
elif [[ "x$@" = "x-F" ]]; then
# regular with notfastpath
- _run "-_tcinsed_ml_f" # regular
- _run "-_tcinsed_ml_zf" # regular with reset
+ _run "-rtcinsmf" # regular
+ _run "-rtcinsmzf" # regular with reset
else
_run "$@"
fi
diff --git a/Godeps/_workspace/src/github.com/ugorji/go/codec/time.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/time.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/ugorji/go/codec/time.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/time.go
index 718b731ec5..fc4c63e1de 100644
--- a/Godeps/_workspace/src/github.com/ugorji/go/codec/time.go
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec/time.go
@@ -5,22 +5,11 @@ package codec
import (
"fmt"
- "reflect"
"time"
)
var (
- timeDigits = [...]byte{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}
- timeExtEncFn = func(rv reflect.Value) (bs []byte, err error) {
- defer panicToErr(&err)
- bs = timeExt{}.WriteExt(rv.Interface())
- return
- }
- timeExtDecFn = func(rv reflect.Value, bs []byte) (err error) {
- defer panicToErr(&err)
- timeExt{}.ReadExt(rv.Interface(), bs)
- return
- }
+ timeDigits = [...]byte{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}
)
type timeExt struct{}
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing/LICENSE
new file mode 100644
index 0000000000..cde8b8b05f
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/github.com/xiang90/probing/LICENSE
@@ -0,0 +1,22 @@
+The MIT License (MIT)
+
+Copyright (c) 2015 Xiang Li
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/LICENSE
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/LICENSE
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/PATENTS b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/PATENTS
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/PATENTS
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/PATENTS
diff --git a/Godeps/_workspace/src/golang.org/x/net/context/context.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/context.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/net/context/context.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/context.go
diff --git a/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq.go
diff --git a/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq_go14.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq_go14.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq_go14.go
rename to vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/cancelreq_go14.go
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/ctxhttp.go b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/ctxhttp.go
new file mode 100644
index 0000000000..8089ef0af1
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/ctxhttp.go
@@ -0,0 +1,140 @@
+// Copyright 2015 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// Package ctxhttp provides helper functions for performing context-aware HTTP requests.
+package ctxhttp
+
+import (
+ "io"
+ "net/http"
+ "net/url"
+ "strings"
+
+ "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
+)
+
+func nop() {}
+
+var (
+ testHookContextDoneBeforeHeaders = nop
+ testHookDoReturned = nop
+ testHookDidBodyClose = nop
+)
+
+// Do sends an HTTP request with the provided http.Client and returns an HTTP response.
+// If the client is nil, http.DefaultClient is used.
+// If the context is canceled or times out, ctx.Err() will be returned.
+func Do(ctx context.Context, client *http.Client, req *http.Request) (*http.Response, error) {
+ if client == nil {
+ client = http.DefaultClient
+ }
+
+ // Request cancelation changed in Go 1.5, see cancelreq.go and cancelreq_go14.go.
+ cancel := canceler(client, req)
+
+ type responseAndError struct {
+ resp *http.Response
+ err error
+ }
+ result := make(chan responseAndError, 1)
+
+ go func() {
+ resp, err := client.Do(req)
+ testHookDoReturned()
+ result <- responseAndError{resp, err}
+ }()
+
+ var resp *http.Response
+
+ select {
+ case <-ctx.Done():
+ testHookContextDoneBeforeHeaders()
+ cancel()
+ // Clean up after the goroutine calling client.Do:
+ go func() {
+ if r := <-result; r.resp != nil {
+ testHookDidBodyClose()
+ r.resp.Body.Close()
+ }
+ }()
+ return nil, ctx.Err()
+ case r := <-result:
+ var err error
+ resp, err = r.resp, r.err
+ if err != nil {
+ return resp, err
+ }
+ }
+
+ c := make(chan struct{})
+ go func() {
+ select {
+ case <-ctx.Done():
+ cancel()
+ case <-c:
+ // The response's Body is closed.
+ }
+ }()
+ resp.Body = ¬ifyingReader{resp.Body, c}
+
+ return resp, nil
+}
+
+// Get issues a GET request via the Do function.
+func Get(ctx context.Context, client *http.Client, url string) (*http.Response, error) {
+ req, err := http.NewRequest("GET", url, nil)
+ if err != nil {
+ return nil, err
+ }
+ return Do(ctx, client, req)
+}
+
+// Head issues a HEAD request via the Do function.
+func Head(ctx context.Context, client *http.Client, url string) (*http.Response, error) {
+ req, err := http.NewRequest("HEAD", url, nil)
+ if err != nil {
+ return nil, err
+ }
+ return Do(ctx, client, req)
+}
+
+// Post issues a POST request via the Do function.
+func Post(ctx context.Context, client *http.Client, url string, bodyType string, body io.Reader) (*http.Response, error) {
+ req, err := http.NewRequest("POST", url, body)
+ if err != nil {
+ return nil, err
+ }
+ req.Header.Set("Content-Type", bodyType)
+ return Do(ctx, client, req)
+}
+
+// PostForm issues a POST request via the Do function.
+func PostForm(ctx context.Context, client *http.Client, url string, data url.Values) (*http.Response, error) {
+ return Post(ctx, client, url, "application/x-www-form-urlencoded", strings.NewReader(data.Encode()))
+}
+
+// notifyingReader is an io.ReadCloser that closes the notify channel after
+// Close is called or a Read fails on the underlying ReadCloser.
+type notifyingReader struct {
+ io.ReadCloser
+ notify chan<- struct{}
+}
+
+func (r *notifyingReader) Read(p []byte) (int, error) {
+ n, err := r.ReadCloser.Read(p)
+ if err != nil && r.notify != nil {
+ close(r.notify)
+ r.notify = nil
+ }
+ return n, err
+}
+
+func (r *notifyingReader) Close() error {
+ err := r.ReadCloser.Close()
+ if r.notify != nil {
+ close(r.notify)
+ r.notify = nil
+ }
+ return err
+}
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/google.golang.org/grpc/LICENSE b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/google.golang.org/grpc/LICENSE
new file mode 100644
index 0000000000..f4988b4507
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/google.golang.org/grpc/LICENSE
@@ -0,0 +1,28 @@
+Copyright 2014, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/github.com/coreos/etcd/Godeps/_workspace/src/google.golang.org/grpc/PATENTS b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/google.golang.org/grpc/PATENTS
new file mode 100644
index 0000000000..619f9dbfe6
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/Godeps/_workspace/src/google.golang.org/grpc/PATENTS
@@ -0,0 +1,22 @@
+Additional IP Rights Grant (Patents)
+
+"This implementation" means the copyrightable works distributed by
+Google as part of the GRPC project.
+
+Google hereby grants to You a perpetual, worldwide, non-exclusive,
+no-charge, royalty-free, irrevocable (except as stated in this section)
+patent license to make, have made, use, offer to sell, sell, import,
+transfer and otherwise run, modify and propagate the contents of this
+implementation of GRPC, where such license applies only to those patent
+claims, both currently owned or controlled by Google and acquired in
+the future, licensable by Google that are necessarily infringed by this
+implementation of GRPC. This grant does not include claims that would be
+infringed only as a consequence of further modification of this
+implementation. If you or your agent or exclusive licensee institute or
+order or agree to the institution of patent litigation against any
+entity (including a cross-claim or counterclaim in a lawsuit) alleging
+that this implementation of GRPC or any code incorporated within this
+implementation of GRPC constitutes direct or contributory patent
+infringement, or inducement of patent infringement, then any patent
+rights granted to you under this License for this implementation of GRPC
+shall terminate as of the date such litigation is filed.
diff --git a/vendor/github.com/coreos/etcd/LICENSE b/vendor/github.com/coreos/etcd/LICENSE
new file mode 100644
index 0000000000..d645695673
--- /dev/null
+++ b/vendor/github.com/coreos/etcd/LICENSE
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/NOTICE b/vendor/github.com/coreos/etcd/NOTICE
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/NOTICE
rename to vendor/github.com/coreos/etcd/NOTICE
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/README.md b/vendor/github.com/coreos/etcd/client/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/README.md
rename to vendor/github.com/coreos/etcd/client/README.md
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/auth_role.go b/vendor/github.com/coreos/etcd/client/auth_role.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/auth_role.go
rename to vendor/github.com/coreos/etcd/client/auth_role.go
index 168c2d2adb..f410edbe0c 100644
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/auth_role.go
+++ b/vendor/github.com/coreos/etcd/client/auth_role.go
@@ -20,7 +20,7 @@ import (
"net/http"
"net/url"
- "golang.org/x/net/context"
+ "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
)
type Role struct {
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/auth_user.go b/vendor/github.com/coreos/etcd/client/auth_user.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/auth_user.go
rename to vendor/github.com/coreos/etcd/client/auth_user.go
index 7329be74af..8c04baa341 100644
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/auth_user.go
+++ b/vendor/github.com/coreos/etcd/client/auth_user.go
@@ -21,7 +21,7 @@ import (
"net/url"
"path"
- "golang.org/x/net/context"
+ "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
)
var (
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/cancelreq.go b/vendor/github.com/coreos/etcd/client/cancelreq.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/cancelreq.go
rename to vendor/github.com/coreos/etcd/client/cancelreq.go
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/cancelreq_go14.go b/vendor/github.com/coreos/etcd/client/cancelreq_go14.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/cancelreq_go14.go
rename to vendor/github.com/coreos/etcd/client/cancelreq_go14.go
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/client.go b/vendor/github.com/coreos/etcd/client/client.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/client.go
rename to vendor/github.com/coreos/etcd/client/client.go
index f935f2204b..5071ca408d 100644
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/client.go
+++ b/vendor/github.com/coreos/etcd/client/client.go
@@ -28,7 +28,7 @@ import (
"sync"
"time"
- "golang.org/x/net/context"
+ "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
)
var (
@@ -98,7 +98,7 @@ type Config struct {
// CheckRedirect specifies the policy for handling HTTP redirects.
// If CheckRedirect is not nil, the Client calls it before
// following an HTTP redirect. The sole argument is the number of
- // requests that have alrady been made. If CheckRedirect returns
+ // requests that have already been made. If CheckRedirect returns
// an error, Client.Do will not make any further requests and return
// the error back it to the caller.
//
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/cluster_error.go b/vendor/github.com/coreos/etcd/client/cluster_error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/cluster_error.go
rename to vendor/github.com/coreos/etcd/client/cluster_error.go
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/curl.go b/vendor/github.com/coreos/etcd/client/curl.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/curl.go
rename to vendor/github.com/coreos/etcd/client/curl.go
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/discover.go b/vendor/github.com/coreos/etcd/client/discover.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/discover.go
rename to vendor/github.com/coreos/etcd/client/discover.go
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/doc.go b/vendor/github.com/coreos/etcd/client/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/doc.go
rename to vendor/github.com/coreos/etcd/client/doc.go
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/keys.go b/vendor/github.com/coreos/etcd/client/keys.go
similarity index 97%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/keys.go
rename to vendor/github.com/coreos/etcd/client/keys.go
index bece95619f..c209cab37f 100644
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/keys.go
+++ b/vendor/github.com/coreos/etcd/client/keys.go
@@ -26,9 +26,9 @@ import (
"strings"
"time"
+ "github.com/coreos/etcd/Godeps/_workspace/src/github.com/ugorji/go/codec"
+ "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
"github.com/coreos/etcd/pkg/pathutil"
- "github.com/ugorji/go/codec"
- "golang.org/x/net/context"
)
const (
@@ -106,7 +106,7 @@ type KeysAPI interface {
// Set assigns a new value to a Node identified by a given key. The caller
// may define a set of conditions in the SetOptions. If SetOptions.Dir=true
- // than value is ignored.
+ // then value is ignored.
Set(ctx context.Context, key, value string, opts *SetOptions) (*Response, error)
// Delete removes a Node identified by the given key, optionally destroying
@@ -184,6 +184,11 @@ type SetOptions struct {
// a TTL of 0.
TTL time.Duration
+ // When refresh is set to true a TTL value can be updated
+ // without firing a watch or changing the node value. A
+ // value must not provided when refreshing a key.
+ Refresh bool
+
// Dir specifies whether or not this Node should be created as a directory.
Dir bool
}
@@ -327,6 +332,7 @@ func (k *httpKeysAPI) Set(ctx context.Context, key, val string, opts *SetOptions
act.PrevIndex = opts.PrevIndex
act.PrevExist = opts.PrevExist
act.TTL = opts.TTL
+ act.Refresh = opts.Refresh
act.Dir = opts.Dir
}
@@ -518,6 +524,7 @@ type setAction struct {
PrevIndex uint64
PrevExist PrevExistType
TTL time.Duration
+ Refresh bool
Dir bool
}
@@ -549,6 +556,10 @@ func (a *setAction) HTTPRequest(ep url.URL) *http.Request {
form.Add("ttl", strconv.FormatUint(uint64(a.TTL.Seconds()), 10))
}
+ if a.Refresh {
+ form.Add("refresh", "true")
+ }
+
u.RawQuery = params.Encode()
body := strings.NewReader(form.Encode())
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/members.go b/vendor/github.com/coreos/etcd/client/members.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/members.go
rename to vendor/github.com/coreos/etcd/client/members.go
index 8b602db54b..71b01b27ff 100644
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/members.go
+++ b/vendor/github.com/coreos/etcd/client/members.go
@@ -22,7 +22,7 @@ import (
"net/url"
"path"
- "golang.org/x/net/context"
+ "github.com/coreos/etcd/Godeps/_workspace/src/golang.org/x/net/context"
"github.com/coreos/etcd/pkg/types"
)
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/srv.go b/vendor/github.com/coreos/etcd/client/srv.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/srv.go
rename to vendor/github.com/coreos/etcd/client/srv.go
index bc48eb2cfe..06197967ca 100644
--- a/Godeps/_workspace/src/github.com/coreos/etcd/client/srv.go
+++ b/vendor/github.com/coreos/etcd/client/srv.go
@@ -27,7 +27,7 @@ var (
type srvDiscover struct{}
-// NewSRVDiscover constructs a new Dicoverer that uses the stdlib to lookup SRV records.
+// NewSRVDiscover constructs a new Discoverer that uses the stdlib to lookup SRV records.
func NewSRVDiscover() Discoverer {
return &srvDiscover{}
}
diff --git a/Godeps/_workspace/src/github.com/coreos/etcd/client/util.go b/vendor/github.com/coreos/etcd/client/util.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/coreos/etcd/client/util.go
rename to vendor/github.com/coreos/etcd/client/util.go
diff --git a/Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/LICENSE b/vendor/github.com/duosecurity/duo_api_golang/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/LICENSE
rename to vendor/github.com/duosecurity/duo_api_golang/LICENSE
diff --git a/Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/README.md b/vendor/github.com/duosecurity/duo_api_golang/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/README.md
rename to vendor/github.com/duosecurity/duo_api_golang/README.md
diff --git a/Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/authapi/authapi.go b/vendor/github.com/duosecurity/duo_api_golang/authapi/authapi.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/authapi/authapi.go
rename to vendor/github.com/duosecurity/duo_api_golang/authapi/authapi.go
diff --git a/Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/duoapi.go b/vendor/github.com/duosecurity/duo_api_golang/duoapi.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/duosecurity/duo_api_golang/duoapi.go
rename to vendor/github.com/duosecurity/duo_api_golang/duoapi.go
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/.gitignore b/vendor/github.com/fatih/structs/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/.gitignore
rename to vendor/github.com/fatih/structs/.gitignore
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/.travis.yml b/vendor/github.com/fatih/structs/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/.travis.yml
rename to vendor/github.com/fatih/structs/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/LICENSE b/vendor/github.com/fatih/structs/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/LICENSE
rename to vendor/github.com/fatih/structs/LICENSE
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/README.md b/vendor/github.com/fatih/structs/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/README.md
rename to vendor/github.com/fatih/structs/README.md
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/field.go b/vendor/github.com/fatih/structs/field.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/field.go
rename to vendor/github.com/fatih/structs/field.go
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/structs.go b/vendor/github.com/fatih/structs/structs.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/structs.go
rename to vendor/github.com/fatih/structs/structs.go
diff --git a/Godeps/_workspace/src/github.com/fatih/structs/tags.go b/vendor/github.com/fatih/structs/tags.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/fatih/structs/tags.go
rename to vendor/github.com/fatih/structs/tags.go
diff --git a/Godeps/_workspace/src/github.com/ghodss/yaml/.gitignore b/vendor/github.com/ghodss/yaml/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/ghodss/yaml/.gitignore
rename to vendor/github.com/ghodss/yaml/.gitignore
diff --git a/Godeps/_workspace/src/github.com/ghodss/yaml/.travis.yml b/vendor/github.com/ghodss/yaml/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/ghodss/yaml/.travis.yml
rename to vendor/github.com/ghodss/yaml/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/ghodss/yaml/LICENSE b/vendor/github.com/ghodss/yaml/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/ghodss/yaml/LICENSE
rename to vendor/github.com/ghodss/yaml/LICENSE
diff --git a/Godeps/_workspace/src/github.com/ghodss/yaml/README.md b/vendor/github.com/ghodss/yaml/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/ghodss/yaml/README.md
rename to vendor/github.com/ghodss/yaml/README.md
diff --git a/Godeps/_workspace/src/github.com/ghodss/yaml/fields.go b/vendor/github.com/ghodss/yaml/fields.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ghodss/yaml/fields.go
rename to vendor/github.com/ghodss/yaml/fields.go
diff --git a/Godeps/_workspace/src/github.com/ghodss/yaml/yaml.go b/vendor/github.com/ghodss/yaml/yaml.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ghodss/yaml/yaml.go
rename to vendor/github.com/ghodss/yaml/yaml.go
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/.gitignore b/vendor/github.com/go-ini/ini/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ini/ini/.gitignore
rename to vendor/github.com/go-ini/ini/.gitignore
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/LICENSE b/vendor/github.com/go-ini/ini/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ini/ini/LICENSE
rename to vendor/github.com/go-ini/ini/LICENSE
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/README.md b/vendor/github.com/go-ini/ini/README.md
similarity index 91%
rename from Godeps/_workspace/src/github.com/go-ini/ini/README.md
rename to vendor/github.com/go-ini/ini/README.md
index c52f63a471..7d50639d97 100644
--- a/Godeps/_workspace/src/github.com/go-ini/ini/README.md
+++ b/vendor/github.com/go-ini/ini/README.md
@@ -30,12 +30,16 @@ To use with latest changes:
go get github.com/go-ini/ini
+Please add `-u` flag to update in the future.
+
### Testing
If you want to test on your machine, please apply `-t` flag:
go get -t gopkg.in/ini.v1
+Please add `-u` flag to update in the future.
+
## Getting Started
### Loading from data sources
@@ -280,9 +284,13 @@ vals = cfg.Section("").Key("TIME").RangeTimeFormat(time.RFC3339, time.Now(), min
vals = cfg.Section("").Key("TIME").RangeTime(time.Now(), minTime, maxTime) // RFC3339
```
-To auto-split value into slice:
+##### Auto-split values into a slice
+
+To use zero value of type for invalid inputs:
```go
+// Input: 1.1, 2.2, 3.3, 4.4 -> [1.1 2.2 3.3 4.4]
+// Input: how, 2.2, are, you -> [0.0 2.2 0.0 0.0]
vals = cfg.Section("").Key("STRINGS").Strings(",")
vals = cfg.Section("").Key("FLOAT64S").Float64s(",")
vals = cfg.Section("").Key("INTS").Ints(",")
@@ -292,6 +300,32 @@ vals = cfg.Section("").Key("UINT64S").Uint64s(",")
vals = cfg.Section("").Key("TIMES").Times(",")
```
+To exclude invalid values out of result slice:
+
+```go
+// Input: 1.1, 2.2, 3.3, 4.4 -> [1.1 2.2 3.3 4.4]
+// Input: how, 2.2, are, you -> [2.2]
+vals = cfg.Section("").Key("FLOAT64S").ValidFloat64s(",")
+vals = cfg.Section("").Key("INTS").ValidInts(",")
+vals = cfg.Section("").Key("INT64S").ValidInt64s(",")
+vals = cfg.Section("").Key("UINTS").ValidUints(",")
+vals = cfg.Section("").Key("UINT64S").ValidUint64s(",")
+vals = cfg.Section("").Key("TIMES").ValidTimes(",")
+```
+
+Or to return nothing but error when have invalid inputs:
+
+```go
+// Input: 1.1, 2.2, 3.3, 4.4 -> [1.1 2.2 3.3 4.4]
+// Input: how, 2.2, are, you -> error
+vals = cfg.Section("").Key("FLOAT64S").StrictFloat64s(",")
+vals = cfg.Section("").Key("INTS").StrictInts(",")
+vals = cfg.Section("").Key("INT64S").StrictInt64s(",")
+vals = cfg.Section("").Key("UINTS").StrictUints(",")
+vals = cfg.Section("").Key("UINT64S").StrictUint64s(",")
+vals = cfg.Section("").Key("TIMES").StrictTimes(",")
+```
+
### Save your configuration
Finally, it's time to save your configuration to somewhere.
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/README_ZH.md b/vendor/github.com/go-ini/ini/README_ZH.md
similarity index 91%
rename from Godeps/_workspace/src/github.com/go-ini/ini/README_ZH.md
rename to vendor/github.com/go-ini/ini/README_ZH.md
index ce6d8eb45d..49bc6108f7 100644
--- a/Godeps/_workspace/src/github.com/go-ini/ini/README_ZH.md
+++ b/vendor/github.com/go-ini/ini/README_ZH.md
@@ -23,12 +23,16 @@
go get github.com/go-ini/ini
+如需更新请添加 `-u` 选项。
+
### 测试安装
如果您想要在自己的机器上运行测试,请使用 `-t` 标记:
go get -t gopkg.in/ini.v1
+如需更新请添加 `-u` 选项。
+
## 开始使用
### 从数据源加载
@@ -273,9 +277,13 @@ vals = cfg.Section("").Key("TIME").RangeTimeFormat(time.RFC3339, time.Now(), min
vals = cfg.Section("").Key("TIME").RangeTime(time.Now(), minTime, maxTime) // RFC3339
```
-自动分割键值为切片(slice):
+##### 自动分割键值到切片(slice)
+
+当存在无效输入时,使用零值代替:
```go
+// Input: 1.1, 2.2, 3.3, 4.4 -> [1.1 2.2 3.3 4.4]
+// Input: how, 2.2, are, you -> [0.0 2.2 0.0 0.0]
vals = cfg.Section("").Key("STRINGS").Strings(",")
vals = cfg.Section("").Key("FLOAT64S").Float64s(",")
vals = cfg.Section("").Key("INTS").Ints(",")
@@ -285,6 +293,32 @@ vals = cfg.Section("").Key("UINT64S").Uint64s(",")
vals = cfg.Section("").Key("TIMES").Times(",")
```
+从结果切片中剔除无效输入:
+
+```go
+// Input: 1.1, 2.2, 3.3, 4.4 -> [1.1 2.2 3.3 4.4]
+// Input: how, 2.2, are, you -> [2.2]
+vals = cfg.Section("").Key("FLOAT64S").ValidFloat64s(",")
+vals = cfg.Section("").Key("INTS").ValidInts(",")
+vals = cfg.Section("").Key("INT64S").ValidInt64s(",")
+vals = cfg.Section("").Key("UINTS").ValidUints(",")
+vals = cfg.Section("").Key("UINT64S").ValidUint64s(",")
+vals = cfg.Section("").Key("TIMES").ValidTimes(",")
+```
+
+当存在无效输入时,直接返回错误:
+
+```go
+// Input: 1.1, 2.2, 3.3, 4.4 -> [1.1 2.2 3.3 4.4]
+// Input: how, 2.2, are, you -> error
+vals = cfg.Section("").Key("FLOAT64S").StrictFloat64s(",")
+vals = cfg.Section("").Key("INTS").StrictInts(",")
+vals = cfg.Section("").Key("INT64S").StrictInt64s(",")
+vals = cfg.Section("").Key("UINTS").StrictUints(",")
+vals = cfg.Section("").Key("UINT64S").StrictUint64s(",")
+vals = cfg.Section("").Key("TIMES").StrictTimes(",")
+```
+
### 保存配置
终于到了这个时刻,是时候保存一下配置了。
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/ini.go b/vendor/github.com/go-ini/ini/ini.go
similarity index 78%
rename from Godeps/_workspace/src/github.com/go-ini/ini/ini.go
rename to vendor/github.com/go-ini/ini/ini.go
index 1a27f0680c..ca9f63488c 100644
--- a/Godeps/_workspace/src/github.com/go-ini/ini/ini.go
+++ b/vendor/github.com/go-ini/ini/ini.go
@@ -34,7 +34,7 @@ const (
// Maximum allowed depth when recursively substituing variable names.
_DEPTH_VALUES = 99
- _VERSION = "1.8.6"
+ _VERSION = "1.9.0"
)
func Version() string {
@@ -467,72 +467,228 @@ func (k *Key) Strings(delim string) []string {
return vals
}
-// Float64s returns list of float64 divided by given delimiter.
+// Float64s returns list of float64 divided by given delimiter. Any invalid input will be treated as zero value.
func (k *Key) Float64s(delim string) []float64 {
- strs := k.Strings(delim)
- vals := make([]float64, len(strs))
- for i := range strs {
- vals[i], _ = strconv.ParseFloat(strs[i], 64)
- }
+ vals, _ := k.getFloat64s(delim, true, false)
return vals
}
-// Ints returns list of int divided by given delimiter.
+// Ints returns list of int divided by given delimiter. Any invalid input will be treated as zero value.
func (k *Key) Ints(delim string) []int {
- strs := k.Strings(delim)
- vals := make([]int, len(strs))
- for i := range strs {
- vals[i], _ = strconv.Atoi(strs[i])
- }
+ vals, _ := k.getInts(delim, true, false)
return vals
}
-// Int64s returns list of int64 divided by given delimiter.
+// Int64s returns list of int64 divided by given delimiter. Any invalid input will be treated as zero value.
func (k *Key) Int64s(delim string) []int64 {
- strs := k.Strings(delim)
- vals := make([]int64, len(strs))
- for i := range strs {
- vals[i], _ = strconv.ParseInt(strs[i], 10, 64)
- }
+ vals, _ := k.getInt64s(delim, true, false)
return vals
}
-// Uints returns list of uint divided by given delimiter.
+// Uints returns list of uint divided by given delimiter. Any invalid input will be treated as zero value.
func (k *Key) Uints(delim string) []uint {
- strs := k.Strings(delim)
- vals := make([]uint, len(strs))
- for i := range strs {
- u, _ := strconv.ParseUint(strs[i], 10, 0)
- vals[i] = uint(u)
- }
+ vals, _ := k.getUints(delim, true, false)
return vals
}
-// Uint64s returns list of uint64 divided by given delimiter.
+// Uint64s returns list of uint64 divided by given delimiter. Any invalid input will be treated as zero value.
func (k *Key) Uint64s(delim string) []uint64 {
- strs := k.Strings(delim)
- vals := make([]uint64, len(strs))
- for i := range strs {
- vals[i], _ = strconv.ParseUint(strs[i], 10, 64)
- }
+ vals, _ := k.getUint64s(delim, true, false)
return vals
}
// TimesFormat parses with given format and returns list of time.Time divided by given delimiter.
+// Any invalid input will be treated as zero value (0001-01-01 00:00:00 +0000 UTC).
func (k *Key) TimesFormat(format, delim string) []time.Time {
- strs := k.Strings(delim)
- vals := make([]time.Time, len(strs))
- for i := range strs {
- vals[i], _ = time.Parse(format, strs[i])
- }
+ vals, _ := k.getTimesFormat(format, delim, true, false)
return vals
}
// Times parses with RFC3339 format and returns list of time.Time divided by given delimiter.
+// Any invalid input will be treated as zero value (0001-01-01 00:00:00 +0000 UTC).
func (k *Key) Times(delim string) []time.Time {
return k.TimesFormat(time.RFC3339, delim)
}
+// ValidFloat64s returns list of float64 divided by given delimiter. If some value is not float, then
+// it will not be included to result list.
+func (k *Key) ValidFloat64s(delim string) []float64 {
+ vals, _ := k.getFloat64s(delim, false, false)
+ return vals
+}
+
+// ValidInts returns list of int divided by given delimiter. If some value is not integer, then it will
+// not be included to result list.
+func (k *Key) ValidInts(delim string) []int {
+ vals, _ := k.getInts(delim, false, false)
+ return vals
+}
+
+// ValidInt64s returns list of int64 divided by given delimiter. If some value is not 64-bit integer,
+// then it will not be included to result list.
+func (k *Key) ValidInt64s(delim string) []int64 {
+ vals, _ := k.getInt64s(delim, false, false)
+ return vals
+}
+
+// ValidUints returns list of uint divided by given delimiter. If some value is not unsigned integer,
+// then it will not be included to result list.
+func (k *Key) ValidUints(delim string) []uint {
+ vals, _ := k.getUints(delim, false, false)
+ return vals
+}
+
+// ValidUint64s returns list of uint64 divided by given delimiter. If some value is not 64-bit unsigned
+// integer, then it will not be included to result list.
+func (k *Key) ValidUint64s(delim string) []uint64 {
+ vals, _ := k.getUint64s(delim, false, false)
+ return vals
+}
+
+// ValidTimesFormat parses with given format and returns list of time.Time divided by given delimiter.
+func (k *Key) ValidTimesFormat(format, delim string) []time.Time {
+ vals, _ := k.getTimesFormat(format, delim, false, false)
+ return vals
+}
+
+// ValidTimes parses with RFC3339 format and returns list of time.Time divided by given delimiter.
+func (k *Key) ValidTimes(delim string) []time.Time {
+ return k.ValidTimesFormat(time.RFC3339, delim)
+}
+
+// StrictFloat64s returns list of float64 divided by given delimiter or error on first invalid input.
+func (k *Key) StrictFloat64s(delim string) ([]float64, error) {
+ return k.getFloat64s(delim, false, true)
+}
+
+// StrictInts returns list of int divided by given delimiter or error on first invalid input.
+func (k *Key) StrictInts(delim string) ([]int, error) {
+ return k.getInts(delim, false, true)
+}
+
+// StrictInt64s returns list of int64 divided by given delimiter or error on first invalid input.
+func (k *Key) StrictInt64s(delim string) ([]int64, error) {
+ return k.getInt64s(delim, false, true)
+}
+
+// StrictUints returns list of uint divided by given delimiter or error on first invalid input.
+func (k *Key) StrictUints(delim string) ([]uint, error) {
+ return k.getUints(delim, false, true)
+}
+
+// StrictUint64s returns list of uint64 divided by given delimiter or error on first invalid input.
+func (k *Key) StrictUint64s(delim string) ([]uint64, error) {
+ return k.getUint64s(delim, false, true)
+}
+
+// StrictTimesFormat parses with given format and returns list of time.Time divided by given delimiter
+// or error on first invalid input.
+func (k *Key) StrictTimesFormat(format, delim string) ([]time.Time, error) {
+ return k.getTimesFormat(format, delim, false, true)
+}
+
+// StrictTimes parses with RFC3339 format and returns list of time.Time divided by given delimiter
+// or error on first invalid input.
+func (k *Key) StrictTimes(delim string) ([]time.Time, error) {
+ return k.StrictTimesFormat(time.RFC3339, delim)
+}
+
+// getFloat64s returns list of float64 divided by given delimiter.
+func (k *Key) getFloat64s(delim string, addInvalid, returnOnInvalid bool) ([]float64, error) {
+ strs := k.Strings(delim)
+ vals := make([]float64, 0, len(strs))
+ for _, str := range strs {
+ val, err := strconv.ParseFloat(str, 64)
+ if err != nil && returnOnInvalid {
+ return nil, err
+ }
+ if err == nil || addInvalid {
+ vals = append(vals, val)
+ }
+ }
+ return vals, nil
+}
+
+// getInts returns list of int divided by given delimiter.
+func (k *Key) getInts(delim string, addInvalid, returnOnInvalid bool) ([]int, error) {
+ strs := k.Strings(delim)
+ vals := make([]int, 0, len(strs))
+ for _, str := range strs {
+ val, err := strconv.Atoi(str)
+ if err != nil && returnOnInvalid {
+ return nil, err
+ }
+ if err == nil || addInvalid {
+ vals = append(vals, val)
+ }
+ }
+ return vals, nil
+}
+
+// getInt64s returns list of int64 divided by given delimiter.
+func (k *Key) getInt64s(delim string, addInvalid, returnOnInvalid bool) ([]int64, error) {
+ strs := k.Strings(delim)
+ vals := make([]int64, 0, len(strs))
+ for _, str := range strs {
+ val, err := strconv.ParseInt(str, 10, 64)
+ if err != nil && returnOnInvalid {
+ return nil, err
+ }
+ if err == nil || addInvalid {
+ vals = append(vals, val)
+ }
+ }
+ return vals, nil
+}
+
+// getUints returns list of uint divided by given delimiter.
+func (k *Key) getUints(delim string, addInvalid, returnOnInvalid bool) ([]uint, error) {
+ strs := k.Strings(delim)
+ vals := make([]uint, 0, len(strs))
+ for _, str := range strs {
+ val, err := strconv.ParseUint(str, 10, 0)
+ if err != nil && returnOnInvalid {
+ return nil, err
+ }
+ if err == nil || addInvalid {
+ vals = append(vals, uint(val))
+ }
+ }
+ return vals, nil
+}
+
+// getUint64s returns list of uint64 divided by given delimiter.
+func (k *Key) getUint64s(delim string, addInvalid, returnOnInvalid bool) ([]uint64, error) {
+ strs := k.Strings(delim)
+ vals := make([]uint64, 0, len(strs))
+ for _, str := range strs {
+ val, err := strconv.ParseUint(str, 10, 64)
+ if err != nil && returnOnInvalid {
+ return nil, err
+ }
+ if err == nil || addInvalid {
+ vals = append(vals, val)
+ }
+ }
+ return vals, nil
+}
+
+// getTimesFormat parses with given format and returns list of time.Time divided by given delimiter.
+func (k *Key) getTimesFormat(format, delim string, addInvalid, returnOnInvalid bool) ([]time.Time, error) {
+ strs := k.Strings(delim)
+ vals := make([]time.Time, 0, len(strs))
+ for _, str := range strs {
+ val, err := time.Parse(format, str)
+ if err != nil && returnOnInvalid {
+ return nil, err
+ }
+ if err == nil || addInvalid {
+ vals = append(vals, val)
+ }
+ }
+ return vals, nil
+}
+
// SetValue changes key value.
func (k *Key) SetValue(v string) {
if k.s.f.BlockMode {
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/parser.go b/vendor/github.com/go-ini/ini/parser.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ini/ini/parser.go
rename to vendor/github.com/go-ini/ini/parser.go
diff --git a/Godeps/_workspace/src/github.com/go-ini/ini/struct.go b/vendor/github.com/go-ini/ini/struct.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ini/ini/struct.go
rename to vendor/github.com/go-ini/ini/struct.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/.gitignore b/vendor/github.com/go-ldap/ldap/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/.gitignore
rename to vendor/github.com/go-ldap/ldap/.gitignore
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/.travis.yml b/vendor/github.com/go-ldap/ldap/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/.travis.yml
rename to vendor/github.com/go-ldap/ldap/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/LICENSE b/vendor/github.com/go-ldap/ldap/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/LICENSE
rename to vendor/github.com/go-ldap/ldap/LICENSE
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/README.md b/vendor/github.com/go-ldap/ldap/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/README.md
rename to vendor/github.com/go-ldap/ldap/README.md
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/add.go b/vendor/github.com/go-ldap/ldap/add.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/add.go
rename to vendor/github.com/go-ldap/ldap/add.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/bind.go b/vendor/github.com/go-ldap/ldap/bind.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/bind.go
rename to vendor/github.com/go-ldap/ldap/bind.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/client.go b/vendor/github.com/go-ldap/ldap/client.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/client.go
rename to vendor/github.com/go-ldap/ldap/client.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/compare.go b/vendor/github.com/go-ldap/ldap/compare.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/compare.go
rename to vendor/github.com/go-ldap/ldap/compare.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/conn.go b/vendor/github.com/go-ldap/ldap/conn.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/conn.go
rename to vendor/github.com/go-ldap/ldap/conn.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/control.go b/vendor/github.com/go-ldap/ldap/control.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/control.go
rename to vendor/github.com/go-ldap/ldap/control.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/debug.go b/vendor/github.com/go-ldap/ldap/debug.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/debug.go
rename to vendor/github.com/go-ldap/ldap/debug.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/del.go b/vendor/github.com/go-ldap/ldap/del.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/del.go
rename to vendor/github.com/go-ldap/ldap/del.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/dn.go b/vendor/github.com/go-ldap/ldap/dn.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/dn.go
rename to vendor/github.com/go-ldap/ldap/dn.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/doc.go b/vendor/github.com/go-ldap/ldap/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/doc.go
rename to vendor/github.com/go-ldap/ldap/doc.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/error.go b/vendor/github.com/go-ldap/ldap/error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/error.go
rename to vendor/github.com/go-ldap/ldap/error.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/filter.go b/vendor/github.com/go-ldap/ldap/filter.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/filter.go
rename to vendor/github.com/go-ldap/ldap/filter.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/ldap.go b/vendor/github.com/go-ldap/ldap/ldap.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/ldap.go
rename to vendor/github.com/go-ldap/ldap/ldap.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/modify.go b/vendor/github.com/go-ldap/ldap/modify.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/modify.go
rename to vendor/github.com/go-ldap/ldap/modify.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/passwdmodify.go b/vendor/github.com/go-ldap/ldap/passwdmodify.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/passwdmodify.go
rename to vendor/github.com/go-ldap/ldap/passwdmodify.go
diff --git a/Godeps/_workspace/src/github.com/go-ldap/ldap/search.go b/vendor/github.com/go-ldap/ldap/search.go
similarity index 88%
rename from Godeps/_workspace/src/github.com/go-ldap/ldap/search.go
rename to vendor/github.com/go-ldap/ldap/search.go
index f63c9fb021..23a2cf2b20 100644
--- a/Godeps/_workspace/src/github.com/go-ldap/ldap/search.go
+++ b/vendor/github.com/go-ldap/ldap/search.go
@@ -268,13 +268,32 @@ func NewSearchRequest(
}
}
+// SearchWithPaging accepts a search request and desired page size in order to execute LDAP queries to fulfill the
+// search request. All paged LDAP query responses will be buffered and the final result will be returned atomically.
+// The following four cases are possible given the arguments:
+// - given SearchRequest missing a control of type ControlTypePaging: we will add one with the desired paging size
+// - given SearchRequest contains a control of type ControlTypePaging that isn't actually a ControlPaging: fail without issuing any queries
+// - given SearchRequest contains a control of type ControlTypePaging with pagingSize equal to the size requested: no change to the search request
+// - given SearchRequest contains a control of type ControlTypePaging with pagingSize not equal to the size requested: fail without issuing any queries
+// A requested pagingSize of 0 is interpreted as no limit by LDAP servers.
func (l *Conn) SearchWithPaging(searchRequest *SearchRequest, pagingSize uint32) (*SearchResult, error) {
- if searchRequest.Controls == nil {
- searchRequest.Controls = make([]Control, 0)
+ var pagingControl *ControlPaging
+
+ control := FindControl(searchRequest.Controls, ControlTypePaging)
+ if control == nil {
+ pagingControl = NewControlPaging(pagingSize)
+ searchRequest.Controls = append(searchRequest.Controls, pagingControl)
+ } else {
+ castControl, ok := control.(*ControlPaging)
+ if !ok {
+ return nil, fmt.Errorf("Expected paging control to be of type *ControlPaging, got %v", control)
+ }
+ if castControl.PagingSize != pagingSize {
+ return nil, fmt.Errorf("Paging size given in search request (%d) conflicts with size given in search call (%d)", castControl.PagingSize, pagingSize)
+ }
+ pagingControl = castControl
}
- pagingControl := NewControlPaging(pagingSize)
- searchRequest.Controls = append(searchRequest.Controls, pagingControl)
searchResult := new(SearchResult)
for {
result, err := l.Search(searchRequest)
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/.gitignore b/vendor/github.com/go-sql-driver/mysql/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/.gitignore
rename to vendor/github.com/go-sql-driver/mysql/.gitignore
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/.travis.yml b/vendor/github.com/go-sql-driver/mysql/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/.travis.yml
rename to vendor/github.com/go-sql-driver/mysql/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS b/vendor/github.com/go-sql-driver/mysql/AUTHORS
similarity index 95%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS
rename to vendor/github.com/go-sql-driver/mysql/AUTHORS
index e86676ff45..986f017cbe 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/AUTHORS
+++ b/vendor/github.com/go-sql-driver/mysql/AUTHORS
@@ -31,6 +31,7 @@ Julien Schmidt
Kamil Dziedzic
Kevin Malachowski
Leonardo YongUk Kim
+Luca Looz
Lucas Liu
Luke Scott
Michael Woolnough
@@ -38,6 +39,7 @@ Nicola Peduzzi
Runrioter Wung
Soroush Pour
Stan Putrya
+Stanley Gunawan
Xiaobing Jiang
Xiuming Chen
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/CHANGELOG.md b/vendor/github.com/go-sql-driver/mysql/CHANGELOG.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/CHANGELOG.md
rename to vendor/github.com/go-sql-driver/mysql/CHANGELOG.md
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/CONTRIBUTING.md b/vendor/github.com/go-sql-driver/mysql/CONTRIBUTING.md
similarity index 67%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/CONTRIBUTING.md
rename to vendor/github.com/go-sql-driver/mysql/CONTRIBUTING.md
index f87c19824c..8fe16bcb49 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/CONTRIBUTING.md
+++ b/vendor/github.com/go-sql-driver/mysql/CONTRIBUTING.md
@@ -4,28 +4,11 @@
Before creating a new Issue, please check first if a similar Issue [already exists](https://github.com/go-sql-driver/mysql/issues?state=open) or was [recently closed](https://github.com/go-sql-driver/mysql/issues?direction=desc&page=1&sort=updated&state=closed).
-Please provide the following minimum information:
-* Your Go-MySQL-Driver version (or git SHA)
-* Your Go version (run `go version` in your console)
-* A detailed issue description
-* Error Log if present
-* If possible, a short example
-
-
## Contributing Code
By contributing to this project, you share your code under the Mozilla Public License 2, as specified in the LICENSE file.
Don't forget to add yourself to the AUTHORS file.
-### Pull Requests Checklist
-
-Please check the following points before submitting your pull request:
-- [x] Code compiles correctly
-- [x] Created tests, if possible
-- [x] All tests pass
-- [x] Extended the README / documentation, if necessary
-- [x] Added yourself to the AUTHORS file
-
### Code Review
Everyone is invited to review and comment on pull requests.
diff --git a/vendor/github.com/go-sql-driver/mysql/ISSUE_TEMPLATE.md b/vendor/github.com/go-sql-driver/mysql/ISSUE_TEMPLATE.md
new file mode 100644
index 0000000000..d9771f1ddc
--- /dev/null
+++ b/vendor/github.com/go-sql-driver/mysql/ISSUE_TEMPLATE.md
@@ -0,0 +1,21 @@
+### Issue description
+Tell us what should happen and what happens instead
+
+### Example code
+```go
+If possible, please enter some example code here to reproduce the issue.
+```
+
+### Error log
+```
+If you have an error log, please paste it here.
+```
+
+### Configuration
+*Driver version (or git SHA):*
+
+*Go version:* run `go version` in your console
+
+*Server version:* E.g. MySQL 5.6, MariaDB 10.0.20
+
+*Server OS:* E.g. Debian 8.1 (Jessie), Windows 10
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/LICENSE b/vendor/github.com/go-sql-driver/mysql/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/LICENSE
rename to vendor/github.com/go-sql-driver/mysql/LICENSE
diff --git a/vendor/github.com/go-sql-driver/mysql/PULL_REQUEST_TEMPLATE.md b/vendor/github.com/go-sql-driver/mysql/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000000..a2dd4bf1ae
--- /dev/null
+++ b/vendor/github.com/go-sql-driver/mysql/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,9 @@
+### Description
+Please explain the changes you made here.
+
+### Checklist
+- [ ] Code compiles correctly
+- [ ] Created tests, if possible
+- [ ] All tests passing
+- [ ] Extended the README / documentation, if necessary
+- [ ] Added myself / the copyright holder to the AUTHORS file
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md b/vendor/github.com/go-sql-driver/mysql/README.md
similarity index 97%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md
rename to vendor/github.com/go-sql-driver/mysql/README.md
index f3190e8ab8..3adedc6a56 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/README.md
+++ b/vendor/github.com/go-sql-driver/mysql/README.md
@@ -93,6 +93,8 @@ This has the same effect as an empty DSN string:
```
+Alternatively, [Config.FormatDSN](https://godoc.org/github.com/go-sql-driver/mysql#Config.FormatDSN) can be used to create a DSN string by filling a struct.
+
#### Password
Passwords can consist of any character. Escaping is **not** necessary.
@@ -219,6 +221,16 @@ Note that this sets the location for time.Time values but does not change MySQL'
Please keep in mind, that param values must be [url.QueryEscape](http://golang.org/pkg/net/url/#QueryEscape)'ed. Alternatively you can manually replace the `/` with `%2F`. For example `US/Pacific` would be `loc=US%2FPacific`.
+##### `multiStatements`
+
+```
+Type: bool
+Valid Values: true, false
+Default: false
+```
+
+Allow multiple statements in one query. While this allows batch queries, it also greatly increases the risk of SQL injections. Only the result of the first query is returned, all other results are silently discarded.
+
##### `parseTime`
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/appengine.go b/vendor/github.com/go-sql-driver/mysql/appengine.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/appengine.go
rename to vendor/github.com/go-sql-driver/mysql/appengine.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/buffer.go b/vendor/github.com/go-sql-driver/mysql/buffer.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/buffer.go
rename to vendor/github.com/go-sql-driver/mysql/buffer.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/collations.go b/vendor/github.com/go-sql-driver/mysql/collations.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/collations.go
rename to vendor/github.com/go-sql-driver/mysql/collations.go
index 6c1d613d5b..82079cfb93 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/collations.go
+++ b/vendor/github.com/go-sql-driver/mysql/collations.go
@@ -8,7 +8,7 @@
package mysql
-const defaultCollation byte = 33 // utf8_general_ci
+const defaultCollation = "utf8_general_ci"
// A list of available collations mapped to the internal ID.
// To update this map use the following MySQL query:
@@ -237,14 +237,14 @@ var collations = map[string]byte{
// A blacklist of collations which is unsafe to interpolate parameters.
// These multibyte encodings may contains 0x5c (`\`) in their trailing bytes.
-var unsafeCollations = map[byte]bool{
- 1: true, // big5_chinese_ci
- 13: true, // sjis_japanese_ci
- 28: true, // gbk_chinese_ci
- 84: true, // big5_bin
- 86: true, // gb2312_bin
- 87: true, // gbk_bin
- 88: true, // sjis_bin
- 95: true, // cp932_japanese_ci
- 96: true, // cp932_bin
+var unsafeCollations = map[string]bool{
+ "big5_chinese_ci": true,
+ "sjis_japanese_ci": true,
+ "gbk_chinese_ci": true,
+ "big5_bin": true,
+ "gb2312_bin": true,
+ "gbk_bin": true,
+ "sjis_bin": true,
+ "cp932_japanese_ci": true,
+ "cp932_bin": true,
}
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go b/vendor/github.com/go-sql-driver/mysql/connection.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/connection.go
rename to vendor/github.com/go-sql-driver/mysql/connection.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/const.go b/vendor/github.com/go-sql-driver/mysql/const.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/const.go
rename to vendor/github.com/go-sql-driver/mysql/const.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go b/vendor/github.com/go-sql-driver/mysql/driver.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/driver.go
rename to vendor/github.com/go-sql-driver/mysql/driver.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/dsn.go b/vendor/github.com/go-sql-driver/mysql/dsn.go
similarity index 62%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/dsn.go
rename to vendor/github.com/go-sql-driver/mysql/dsn.go
index 31fd530eec..29cce2d860 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/dsn.go
+++ b/vendor/github.com/go-sql-driver/mysql/dsn.go
@@ -9,6 +9,7 @@
package mysql
import (
+ "bytes"
"crypto/tls"
"errors"
"fmt"
@@ -33,12 +34,13 @@ type Config struct {
Addr string // Network address
DBName string // Database name
Params map[string]string // Connection parameters
+ Collation string // Connection collation
Loc *time.Location // Location for time.Time values
- TLS *tls.Config // TLS configuration
+ TLSConfig string // TLS configuration name
+ tls *tls.Config // TLS configuration
Timeout time.Duration // Dial timeout
ReadTimeout time.Duration // I/O read timeout
WriteTimeout time.Duration // I/O write timeout
- Collation uint8 // Connection collation
AllowAllFiles bool // Allow all files to be used with LOAD DATA LOCAL INFILE
AllowCleartextPasswords bool // Allows the cleartext client side plugin
@@ -46,10 +48,199 @@ type Config struct {
ClientFoundRows bool // Return number of matching rows instead of rows changed
ColumnsWithAlias bool // Prepend table alias to column names
InterpolateParams bool // Interpolate placeholders into query string
+ MultiStatements bool // Allow multiple statements in one query
ParseTime bool // Parse time values to time.Time
Strict bool // Return warnings as errors
}
+// FormatDSN formats the given Config into a DSN string which can be passed to
+// the driver.
+func (cfg *Config) FormatDSN() string {
+ var buf bytes.Buffer
+
+ // [username[:password]@]
+ if len(cfg.User) > 0 {
+ buf.WriteString(cfg.User)
+ if len(cfg.Passwd) > 0 {
+ buf.WriteByte(':')
+ buf.WriteString(cfg.Passwd)
+ }
+ buf.WriteByte('@')
+ }
+
+ // [protocol[(address)]]
+ if len(cfg.Net) > 0 {
+ buf.WriteString(cfg.Net)
+ if len(cfg.Addr) > 0 {
+ buf.WriteByte('(')
+ buf.WriteString(cfg.Addr)
+ buf.WriteByte(')')
+ }
+ }
+
+ // /dbname
+ buf.WriteByte('/')
+ buf.WriteString(cfg.DBName)
+
+ // [?param1=value1&...¶mN=valueN]
+ hasParam := false
+
+ if cfg.AllowAllFiles {
+ hasParam = true
+ buf.WriteString("?allowAllFiles=true")
+ }
+
+ if cfg.AllowCleartextPasswords {
+ if hasParam {
+ buf.WriteString("&allowCleartextPasswords=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?allowCleartextPasswords=true")
+ }
+ }
+
+ if cfg.AllowOldPasswords {
+ if hasParam {
+ buf.WriteString("&allowOldPasswords=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?allowOldPasswords=true")
+ }
+ }
+
+ if cfg.ClientFoundRows {
+ if hasParam {
+ buf.WriteString("&clientFoundRows=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?clientFoundRows=true")
+ }
+ }
+
+ if col := cfg.Collation; col != defaultCollation && len(col) > 0 {
+ if hasParam {
+ buf.WriteString("&collation=")
+ } else {
+ hasParam = true
+ buf.WriteString("?collation=")
+ }
+ buf.WriteString(col)
+ }
+
+ if cfg.ColumnsWithAlias {
+ if hasParam {
+ buf.WriteString("&columnsWithAlias=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?columnsWithAlias=true")
+ }
+ }
+
+ if cfg.InterpolateParams {
+ if hasParam {
+ buf.WriteString("&interpolateParams=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?interpolateParams=true")
+ }
+ }
+
+ if cfg.Loc != time.UTC && cfg.Loc != nil {
+ if hasParam {
+ buf.WriteString("&loc=")
+ } else {
+ hasParam = true
+ buf.WriteString("?loc=")
+ }
+ buf.WriteString(url.QueryEscape(cfg.Loc.String()))
+ }
+
+ if cfg.MultiStatements {
+ if hasParam {
+ buf.WriteString("&multiStatements=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?multiStatements=true")
+ }
+ }
+
+ if cfg.ParseTime {
+ if hasParam {
+ buf.WriteString("&parseTime=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?parseTime=true")
+ }
+ }
+
+ if cfg.ReadTimeout > 0 {
+ if hasParam {
+ buf.WriteString("&readTimeout=")
+ } else {
+ hasParam = true
+ buf.WriteString("?readTimeout=")
+ }
+ buf.WriteString(cfg.ReadTimeout.String())
+ }
+
+ if cfg.Strict {
+ if hasParam {
+ buf.WriteString("&strict=true")
+ } else {
+ hasParam = true
+ buf.WriteString("?strict=true")
+ }
+ }
+
+ if cfg.Timeout > 0 {
+ if hasParam {
+ buf.WriteString("&timeout=")
+ } else {
+ hasParam = true
+ buf.WriteString("?timeout=")
+ }
+ buf.WriteString(cfg.Timeout.String())
+ }
+
+ if len(cfg.TLSConfig) > 0 {
+ if hasParam {
+ buf.WriteString("&tls=")
+ } else {
+ hasParam = true
+ buf.WriteString("?tls=")
+ }
+ buf.WriteString(url.QueryEscape(cfg.TLSConfig))
+ }
+
+ if cfg.WriteTimeout > 0 {
+ if hasParam {
+ buf.WriteString("&writeTimeout=")
+ } else {
+ hasParam = true
+ buf.WriteString("?writeTimeout=")
+ }
+ buf.WriteString(cfg.WriteTimeout.String())
+ }
+
+ // other params
+ if cfg.Params != nil {
+ for param, value := range cfg.Params {
+ if hasParam {
+ buf.WriteByte('&')
+ } else {
+ hasParam = true
+ buf.WriteByte('?')
+ }
+
+ buf.WriteString(param)
+ buf.WriteByte('=')
+ buf.WriteString(url.QueryEscape(value))
+ }
+ }
+
+ return buf.String()
+}
+
// ParseDSN parses the DSN string to a Config
func ParseDSN(dsn string) (cfg *Config, err error) {
// New config with some default values
@@ -195,15 +386,7 @@ func parseDSNParams(cfg *Config, params string) (err error) {
// Collation
case "collation":
- collation, ok := collations[value]
- if !ok {
- // Note possibility for false negatives:
- // could be triggered although the collation is valid if the
- // collations map does not contain entries the server supports.
- err = errors.New("unknown collation")
- return
- }
- cfg.Collation = collation
+ cfg.Collation = value
break
case "columnsWithAlias":
@@ -235,6 +418,14 @@ func parseDSNParams(cfg *Config, params string) (err error) {
return
}
+ // multiple statements in one query
+ case "multiStatements":
+ var isBool bool
+ cfg.MultiStatements, isBool = readBool(value)
+ if !isBool {
+ return errors.New("invalid bool value: " + value)
+ }
+
// time.Time parsing
case "parseTime":
var isBool bool
@@ -270,14 +461,21 @@ func parseDSNParams(cfg *Config, params string) (err error) {
boolValue, isBool := readBool(value)
if isBool {
if boolValue {
- cfg.TLS = &tls.Config{}
+ cfg.TLSConfig = "true"
+ cfg.tls = &tls.Config{}
+ } else {
+ cfg.TLSConfig = "false"
}
- } else if value, err := url.QueryUnescape(value); err != nil {
- return fmt.Errorf("invalid value for TLS config name: %v", err)
+ } else if vl := strings.ToLower(value); vl == "skip-verify" {
+ cfg.TLSConfig = vl
+ cfg.tls = &tls.Config{InsecureSkipVerify: true}
} else {
- if strings.ToLower(value) == "skip-verify" {
- cfg.TLS = &tls.Config{InsecureSkipVerify: true}
- } else if tlsConfig, ok := tlsConfigRegister[value]; ok {
+ name, err := url.QueryUnescape(value)
+ if err != nil {
+ return fmt.Errorf("invalid value for TLS config name: %v", err)
+ }
+
+ if tlsConfig, ok := tlsConfigRegister[name]; ok {
if len(tlsConfig.ServerName) == 0 && !tlsConfig.InsecureSkipVerify {
host, _, err := net.SplitHostPort(cfg.Addr)
if err == nil {
@@ -285,9 +483,10 @@ func parseDSNParams(cfg *Config, params string) (err error) {
}
}
- cfg.TLS = tlsConfig
+ cfg.TLSConfig = name
+ cfg.tls = tlsConfig
} else {
- return errors.New("invalid value / unknown config name: " + value)
+ return errors.New("invalid value / unknown config name: " + name)
}
}
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go b/vendor/github.com/go-sql-driver/mysql/errors.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/errors.go
rename to vendor/github.com/go-sql-driver/mysql/errors.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go b/vendor/github.com/go-sql-driver/mysql/infile.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/infile.go
rename to vendor/github.com/go-sql-driver/mysql/infile.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go b/vendor/github.com/go-sql-driver/mysql/packets.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go
rename to vendor/github.com/go-sql-driver/mysql/packets.go
index f5be217207..d5ea888fd4 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/packets.go
+++ b/vendor/github.com/go-sql-driver/mysql/packets.go
@@ -13,6 +13,7 @@ import (
"crypto/tls"
"database/sql/driver"
"encoding/binary"
+ "errors"
"fmt"
"io"
"math"
@@ -166,7 +167,7 @@ func (mc *mysqlConn) readInitPacket() ([]byte, error) {
if mc.flags&clientProtocol41 == 0 {
return nil, ErrOldProtocol
}
- if mc.flags&clientSSL == 0 && mc.cfg.TLS != nil {
+ if mc.flags&clientSSL == 0 && mc.cfg.tls != nil {
return nil, ErrNoTLS
}
pos += 2
@@ -224,6 +225,7 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
clientTransactions |
clientLocalFiles |
clientPluginAuth |
+ clientMultiResults |
mc.flags&clientLongFlag
if mc.cfg.ClientFoundRows {
@@ -231,10 +233,14 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
}
// To enable TLS / SSL
- if mc.cfg.TLS != nil {
+ if mc.cfg.tls != nil {
clientFlags |= clientSSL
}
+ if mc.cfg.MultiStatements {
+ clientFlags |= clientMultiStatements
+ }
+
// User Password
scrambleBuff := scramblePassword(cipher, []byte(mc.cfg.Passwd))
@@ -267,18 +273,25 @@ func (mc *mysqlConn) writeAuthPacket(cipher []byte) error {
data[11] = 0x00
// Charset [1 byte]
- data[12] = mc.cfg.Collation
+ var found bool
+ data[12], found = collations[mc.cfg.Collation]
+ if !found {
+ // Note possibility for false negatives:
+ // could be triggered although the collation is valid if the
+ // collations map does not contain entries the server supports.
+ return errors.New("unknown collation")
+ }
// SSL Connection Request Packet
// http://dev.mysql.com/doc/internals/en/connection-phase-packets.html#packet-Protocol::SSLRequest
- if mc.cfg.TLS != nil {
+ if mc.cfg.tls != nil {
// Send TLS / SSL request packet
if err := mc.writePacket(data[:(4+4+1+23)+4]); err != nil {
return err
}
// Switch to TLS
- tlsConn := tls.Client(mc.netConn, mc.cfg.TLS)
+ tlsConn := tls.Client(mc.netConn, mc.cfg.tls)
if err := tlsConn.Handshake(); err != nil {
return err
}
@@ -519,6 +532,10 @@ func (mc *mysqlConn) handleErrorPacket(data []byte) error {
}
}
+func readStatus(b []byte) statusFlag {
+ return statusFlag(b[0]) | statusFlag(b[1])<<8
+}
+
// Ok Packet
// http://dev.mysql.com/doc/internals/en/generic-response-packets.html#packet-OK_Packet
func (mc *mysqlConn) handleOkPacket(data []byte) error {
@@ -533,7 +550,10 @@ func (mc *mysqlConn) handleOkPacket(data []byte) error {
mc.insertId, _, m = readLengthEncodedInteger(data[1+n:])
// server_status [2 bytes]
- mc.status = statusFlag(data[1+n+m]) | statusFlag(data[1+n+m+1])<<8
+ mc.status = readStatus(data[1+n+m : 1+n+m+2])
+ if err := mc.discardResults(); err != nil {
+ return err
+ }
// warning count [2 bytes]
if !mc.strict {
@@ -652,6 +672,11 @@ func (rows *textRows) readRow(dest []driver.Value) error {
// EOF Packet
if data[0] == iEOF && len(data) == 5 {
+ // server_status [2 bytes]
+ rows.mc.status = readStatus(data[3:])
+ if err := rows.mc.discardResults(); err != nil {
+ return err
+ }
rows.mc = nil
return io.EOF
}
@@ -709,6 +734,10 @@ func (mc *mysqlConn) readUntilEOF() error {
if err == nil && data[0] != iEOF {
continue
}
+ if err == nil && data[0] == iEOF && len(data) == 5 {
+ mc.status = readStatus(data[3:])
+ }
+
return err // Err or EOF
}
}
@@ -1013,6 +1042,28 @@ func (stmt *mysqlStmt) writeExecutePacket(args []driver.Value) error {
return mc.writePacket(data)
}
+func (mc *mysqlConn) discardResults() error {
+ for mc.status&statusMoreResultsExists != 0 {
+ resLen, err := mc.readResultSetHeaderPacket()
+ if err != nil {
+ return err
+ }
+ if resLen > 0 {
+ // columns
+ if err := mc.readUntilEOF(); err != nil {
+ return err
+ }
+ // rows
+ if err := mc.readUntilEOF(); err != nil {
+ return err
+ }
+ } else {
+ mc.status &^= statusMoreResultsExists
+ }
+ }
+ return nil
+}
+
// http://dev.mysql.com/doc/internals/en/binary-protocol-resultset-row.html
func (rows *binaryRows) readRow(dest []driver.Value) error {
data, err := rows.mc.readPacket()
@@ -1022,11 +1073,16 @@ func (rows *binaryRows) readRow(dest []driver.Value) error {
// packet indicator [1 byte]
if data[0] != iOK {
- rows.mc = nil
// EOF Packet
if data[0] == iEOF && len(data) == 5 {
+ rows.mc.status = readStatus(data[3:])
+ if err := rows.mc.discardResults(); err != nil {
+ return err
+ }
+ rows.mc = nil
return io.EOF
}
+ rows.mc = nil
// Error otherwise
return rows.mc.handleErrorPacket(data)
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/result.go b/vendor/github.com/go-sql-driver/mysql/result.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/result.go
rename to vendor/github.com/go-sql-driver/mysql/result.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go b/vendor/github.com/go-sql-driver/mysql/rows.go
similarity index 93%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go
rename to vendor/github.com/go-sql-driver/mysql/rows.go
index 5d21948ad5..c08255eeec 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/rows.go
+++ b/vendor/github.com/go-sql-driver/mysql/rows.go
@@ -38,7 +38,7 @@ type emptyRows struct{}
func (rows *mysqlRows) Columns() []string {
columns := make([]string, len(rows.columns))
- if rows.mc.cfg.ColumnsWithAlias {
+ if rows.mc != nil && rows.mc.cfg.ColumnsWithAlias {
for i := range columns {
if tableName := rows.columns[i].tableName; len(tableName) > 0 {
columns[i] = tableName + "." + rows.columns[i].name
@@ -65,6 +65,12 @@ func (rows *mysqlRows) Close() error {
// Remove unread packets from stream
err := mc.readUntilEOF()
+ if err == nil {
+ if err = mc.discardResults(); err != nil {
+ return err
+ }
+ }
+
rows.mc = nil
return err
}
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go b/vendor/github.com/go-sql-driver/mysql/statement.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go
rename to vendor/github.com/go-sql-driver/mysql/statement.go
index 6e869b3405..ead9a6bf47 100644
--- a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/statement.go
+++ b/vendor/github.com/go-sql-driver/mysql/statement.go
@@ -101,9 +101,9 @@ func (stmt *mysqlStmt) Query(args []driver.Value) (driver.Rows, error) {
}
rows := new(binaryRows)
- rows.mc = mc
if resLen > 0 {
+ rows.mc = mc
// Columns
// If not cached, read them and cache them
if stmt.columns == nil {
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/transaction.go b/vendor/github.com/go-sql-driver/mysql/transaction.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/transaction.go
rename to vendor/github.com/go-sql-driver/mysql/transaction.go
diff --git a/Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go b/vendor/github.com/go-sql-driver/mysql/utils.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/go-sql-driver/mysql/utils.go
rename to vendor/github.com/go-sql-driver/mysql/utils.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/.gitignore b/vendor/github.com/gocql/gocql/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/.gitignore
rename to vendor/github.com/gocql/gocql/.gitignore
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/.travis.yml b/vendor/github.com/gocql/gocql/.travis.yml
similarity index 88%
rename from Godeps/_workspace/src/github.com/gocql/gocql/.travis.yml
rename to vendor/github.com/gocql/gocql/.travis.yml
index bebef8a646..c0b78d7234 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/.travis.yml
+++ b/vendor/github.com/gocql/gocql/.travis.yml
@@ -16,16 +16,16 @@ env:
matrix:
- CASS=2.0.17
AUTH=false
- - CASS=2.1.11
+ - CASS=2.1.12
AUTH=false
- - CASS=2.1.11
+ - CASS=2.2.4
AUTH=true
- - CASS=2.2.3
+ - CASS=2.2.5
AUTH=false
go:
- - 1.4
- 1.5.3
+ - 1.6
install:
- pip install --user cql PyYAML six
@@ -39,7 +39,6 @@ install:
script:
- set -e
- - go test -v -tags unit
- PATH=$PATH:$HOME/.local/bin bash integration.sh $CASS $AUTH
- go vet .
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/AUTHORS b/vendor/github.com/gocql/gocql/AUTHORS
similarity index 97%
rename from Godeps/_workspace/src/github.com/gocql/gocql/AUTHORS
rename to vendor/github.com/gocql/gocql/AUTHORS
index 0d377880d7..1973f757d7 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/AUTHORS
+++ b/vendor/github.com/gocql/gocql/AUTHORS
@@ -62,4 +62,5 @@ Adriano Orioli
Claudiu Raveica
Artem Chernyshev
Ference Fu
-LOVOO
\ No newline at end of file
+LOVOO
+nikandfor
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/CONTRIBUTING.md b/vendor/github.com/gocql/gocql/CONTRIBUTING.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/CONTRIBUTING.md
rename to vendor/github.com/gocql/gocql/CONTRIBUTING.md
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/LICENSE b/vendor/github.com/gocql/gocql/LICENSE
similarity index 96%
rename from Godeps/_workspace/src/github.com/gocql/gocql/LICENSE
rename to vendor/github.com/gocql/gocql/LICENSE
index 18d25f9234..82380acef9 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/LICENSE
+++ b/vendor/github.com/gocql/gocql/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2012 The gocql Authors. All rights reserved.
+Copyright (c) 2016 The gocql Authors. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/README.md b/vendor/github.com/gocql/gocql/README.md
similarity index 87%
rename from Godeps/_workspace/src/github.com/gocql/gocql/README.md
rename to vendor/github.com/gocql/gocql/README.md
index e07d6d8fdf..96a3325a62 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/README.md
+++ b/vendor/github.com/gocql/gocql/README.md
@@ -30,6 +30,8 @@ Go/Cassandra | 2.0.x | 2.1.x | 2.2.x
Gocql has been tested in production against many different versions of Cassandra. Due to limits in our CI setup we only test against the latest 3 major releases, which coincide with the official support from the Apache project.
+NOTE: as of Cassandra 3.0 it requires Java 8, currently (06/02/2016) we can not install Java 8 in Travis to run the integration tests. To run on Cassandra >=3.0 enable protocol 4 and it should work fine, if not please report bugs.
+
Sunsetting Model
----------------
@@ -58,7 +60,6 @@ Features
* Round robin distribution of queries to different connections on a host
* Each connection can execute up to n concurrent queries (whereby n is the limit set by the protocol version the client chooses to use)
* Optional automatic discovery of nodes
- * Optional support for periodic node discovery via system.peers
* Policy based connection pool with token aware and round-robin policy implementations
* Support for password authentication
* Iteration over paged results with configurable page size
@@ -71,9 +72,22 @@ Features
* Support for tuple types
* Support for client side timestamps by default
* Support for UDTs via a custom marshaller or struct tags
+* Support for Cassandra 2.2+ [binary protocol version 4](https://github.com/apache/cassandra/blob/trunk/doc/native_protocol_v4.spec)
* An API to access the schema metadata of a given keyspace
-Please visit the [Roadmap](https://github.com/gocql/gocql/wiki/Roadmap) page to see what is on the horizion.
+Performance
+-----------
+While the driver strives to be highly performant, there are cases where it is difficult to test and verify. The driver is built
+with maintainability and code readability in mind first and then performance and features, as such every now and then performance
+may degrade, if this occurs please report and issue and it will be looked at and remedied. The only time the driver copies data from
+its read buffer is when it Unmarshal's data into supplied types.
+
+Some tips for getting more performance from the driver:
+* Use the TokenAware policy
+* Use many goroutines when doing inserts, the driver is asynchronous but provides a synchronous api, it can execute many queries concurrently
+* Tune query page size
+* Reading data from the network to unmarshal will incur a large ammount of allocations, this can adversly affect the garbage collector, tune `GOGC`
+* Close iterators after use to recycle byte buffers
Important Default Keyspace Changes
----------------------------------
@@ -200,6 +214,6 @@ For some reason, when you google `golang cassandra`, this project doesn't featur
License
-------
-> Copyright (c) 2012-2015 The gocql Authors. All rights reserved.
+> Copyright (c) 2012-2016 The gocql Authors. All rights reserved.
> Use of this source code is governed by a BSD-style
> license that can be found in the LICENSE file.
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/cluster.go b/vendor/github.com/gocql/gocql/cluster.go
similarity index 91%
rename from Godeps/_workspace/src/github.com/gocql/gocql/cluster.go
rename to vendor/github.com/gocql/gocql/cluster.go
index 6e62e474a4..ed18ce94ea 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/cluster.go
+++ b/vendor/github.com/gocql/gocql/cluster.go
@@ -6,41 +6,9 @@ package gocql
import (
"errors"
- "sync"
"time"
-
- "github.com/gocql/gocql/internal/lru"
)
-const defaultMaxPreparedStmts = 1000
-
-//preparedLRU is the prepared statement cache
-type preparedLRU struct {
- sync.Mutex
- lru *lru.Cache
-}
-
-//Max adjusts the maximum size of the cache and cleans up the oldest records if
-//the new max is lower than the previous value. Not concurrency safe.
-func (p *preparedLRU) max(max int) {
- p.Lock()
- defer p.Unlock()
-
- for p.lru.Len() > max {
- p.lru.RemoveOldest()
- }
- p.lru.MaxEntries = max
-}
-
-func (p *preparedLRU) clear() {
- p.Lock()
- defer p.Unlock()
-
- for p.lru.Len() > 0 {
- p.lru.RemoveOldest()
- }
-}
-
// PoolConfig configures the connection pool used by the driver, it defaults to
// using a round robbin host selection policy and a round robbin connection selection
// policy for each host.
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/compressor.go b/vendor/github.com/gocql/gocql/compressor.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/compressor.go
rename to vendor/github.com/gocql/gocql/compressor.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/conn.go b/vendor/github.com/gocql/gocql/conn.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/gocql/gocql/conn.go
rename to vendor/github.com/gocql/gocql/conn.go
index e413d9b89e..5f40f7822e 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/conn.go
+++ b/vendor/github.com/gocql/gocql/conn.go
@@ -9,6 +9,7 @@ import (
"crypto/tls"
"errors"
"fmt"
+ "github.com/gocql/gocql/internal/lru"
"io"
"io/ioutil"
"log"
@@ -138,6 +139,8 @@ type Conn struct {
currentKeyspace string
started bool
+ host *HostInfo
+
session *Session
closed int32
@@ -147,7 +150,9 @@ type Conn struct {
}
// Connect establishes a connection to a Cassandra node.
-func Connect(addr string, cfg *ConnConfig, errorHandler ConnErrorHandler, session *Session) (*Conn, error) {
+func Connect(host *HostInfo, addr string, cfg *ConnConfig,
+ errorHandler ConnErrorHandler, session *Session) (*Conn, error) {
+
var (
err error
conn net.Conn
@@ -195,6 +200,7 @@ func Connect(addr string, cfg *ConnConfig, errorHandler ConnErrorHandler, sessio
quit: make(chan struct{}),
session: session,
streams: streams.New(cfg.ProtoVersion),
+ host: host,
}
if cfg.Keepalive > 0 {
@@ -327,18 +333,16 @@ func (c *Conn) closeWithError(err error) {
return
}
+ // we should attempt to deliver the error back to the caller if it
+ // exists
if err != nil {
- // we should attempt to deliver the error back to the caller if it
- // exists
c.mu.RLock()
for _, req := range c.calls {
// we need to send the error to all waiting queries, put the state
// of this conn into not active so that it can not execute any queries.
- if err != nil {
- select {
- case req.resp <- err:
- default:
- }
+ select {
+ case req.resp <- err:
+ case <-req.timeout:
}
}
c.mu.RUnlock()
@@ -593,20 +597,19 @@ type inflightPrepare struct {
}
func (c *Conn) prepareStatement(stmt string, tracer Tracer) (*preparedStatment, error) {
- c.session.stmtsLRU.Lock()
- stmtCacheKey := c.addr + c.currentKeyspace + stmt
- if val, ok := c.session.stmtsLRU.lru.Get(stmtCacheKey); ok {
- c.session.stmtsLRU.Unlock()
- flight := val.(*inflightPrepare)
+ stmtCacheKey := c.session.stmtsLRU.keyFor(c.addr, c.currentKeyspace, stmt)
+ flight, ok := c.session.stmtsLRU.execIfMissing(stmtCacheKey, func(lru *lru.Cache) *inflightPrepare {
+ flight := new(inflightPrepare)
+ flight.wg.Add(1)
+ lru.Add(stmtCacheKey, flight)
+ return flight
+ })
+
+ if ok {
flight.wg.Wait()
return flight.preparedStatment, flight.err
}
- flight := new(inflightPrepare)
- flight.wg.Add(1)
- c.session.stmtsLRU.lru.Add(stmtCacheKey, flight)
- c.session.stmtsLRU.Unlock()
-
prep := &writePrepareFrame{
statement: stmt,
}
@@ -650,9 +653,7 @@ func (c *Conn) prepareStatement(stmt string, tracer Tracer) (*preparedStatment,
flight.wg.Done()
if flight.err != nil {
- c.session.stmtsLRU.Lock()
- c.session.stmtsLRU.lru.Remove(stmtCacheKey)
- c.session.stmtsLRU.Unlock()
+ c.session.stmtsLRU.remove(stmtCacheKey)
}
framerPool.Put(framer)
@@ -722,7 +723,7 @@ func (c *Conn) executeQuery(qry *Query) *Iter {
// TODO: handle query binding names
}
- params.skipMeta = !qry.isCAS
+ params.skipMeta = !qry.disableSkipMetadata
frame = &writeExecuteFrame{
preparedID: info.id,
@@ -754,8 +755,9 @@ func (c *Conn) executeQuery(qry *Query) *Iter {
return &Iter{framer: framer}
case *resultRowsFrame:
iter := &Iter{
- rows: x.rows,
- framer: framer,
+ meta: x.meta,
+ framer: framer,
+ numRows: x.numRows,
}
if params.skipMeta {
@@ -772,7 +774,7 @@ func (c *Conn) executeQuery(qry *Query) *Iter {
if len(x.meta.pagingState) > 0 && !qry.disableAutoPage {
iter.next = &nextIter{
qry: *qry,
- pos: int((1 - qry.prefetch) * float64(len(iter.rows))),
+ pos: int((1 - qry.prefetch) * float64(x.numRows)),
}
iter.next.qry.pageState = copyBytes(x.meta.pagingState)
@@ -785,9 +787,6 @@ func (c *Conn) executeQuery(qry *Query) *Iter {
case *resultKeyspaceFrame:
return &Iter{framer: framer}
case *schemaChangeKeyspace, *schemaChangeTable, *schemaChangeFunction:
- // Clear the statments cache so that we dont use stale table info for requests.
- // TODO: only reset a specific table/keyapce and only when it is changed.
- c.session.stmtsLRU.clear()
iter := &Iter{framer: framer}
if err := c.awaitSchemaAgreement(); err != nil {
// TODO: should have this behind a flag
@@ -798,14 +797,11 @@ func (c *Conn) executeQuery(qry *Query) *Iter {
// is not consistent with regards to its schema.
return iter
case *RequestErrUnprepared:
- c.session.stmtsLRU.Lock()
- stmtCacheKey := c.addr + c.currentKeyspace + qry.stmt
- if _, ok := c.session.stmtsLRU.lru.Get(stmtCacheKey); ok {
- c.session.stmtsLRU.lru.Remove(stmtCacheKey)
- c.session.stmtsLRU.Unlock()
+ stmtCacheKey := c.session.stmtsLRU.keyFor(c.addr, c.currentKeyspace, qry.stmt)
+ if c.session.stmtsLRU.remove(stmtCacheKey) {
return c.executeQuery(qry)
}
- c.session.stmtsLRU.Unlock()
+
return &Iter{err: x, framer: framer}
case error:
return &Iter{err: x, framer: framer}
@@ -944,9 +940,8 @@ func (c *Conn) executeBatch(batch *Batch) *Iter {
case *RequestErrUnprepared:
stmt, found := stmts[string(x.StatementId)]
if found {
- c.session.stmtsLRU.Lock()
- c.session.stmtsLRU.lru.Remove(c.addr + c.currentKeyspace + stmt)
- c.session.stmtsLRU.Unlock()
+ key := c.session.stmtsLRU.keyFor(c.addr, c.currentKeyspace, stmt)
+ c.session.stmtsLRU.remove(key)
}
framerPool.Put(framer)
@@ -958,9 +953,9 @@ func (c *Conn) executeBatch(batch *Batch) *Iter {
}
case *resultRowsFrame:
iter := &Iter{
- meta: x.meta,
- rows: x.rows,
- framer: framer,
+ meta: x.meta,
+ framer: framer,
+ numRows: x.numRows,
}
return iter
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/connectionpool.go b/vendor/github.com/gocql/gocql/connectionpool.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/gocql/gocql/connectionpool.go
rename to vendor/github.com/gocql/gocql/connectionpool.go
index 4a9b8964c7..6c2b5dcf7f 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/connectionpool.go
+++ b/vendor/github.com/gocql/gocql/connectionpool.go
@@ -241,24 +241,22 @@ func (p *policyConnPool) Close() {
func (p *policyConnPool) addHost(host *HostInfo) {
p.mu.Lock()
- defer p.mu.Unlock()
-
pool, ok := p.hostConnPools[host.Peer()]
- if ok {
- go pool.fill()
- return
+ if !ok {
+ pool = newHostConnPool(
+ p.session,
+ host,
+ host.Port(), // TODO: if port == 0 use pool.port?
+ p.numConns,
+ p.keyspace,
+ p.connPolicy(),
+ )
+
+ p.hostConnPools[host.Peer()] = pool
}
+ p.mu.Unlock()
- pool = newHostConnPool(
- p.session,
- host,
- host.Port(),
- p.numConns,
- p.keyspace,
- p.connPolicy(),
- )
-
- p.hostConnPools[host.Peer()] = pool
+ pool.fill()
// update policy
// TODO: policy should not have conns, it should have hosts and return a host
@@ -334,9 +332,7 @@ func newHostConnPool(session *Session, host *HostInfo, port, size int,
closed: false,
}
- // fill the pool with the initial connections before returning
- pool.fill()
-
+ // the pool is not filled or connected
return pool
}
@@ -463,6 +459,9 @@ func (pool *hostConnPool) logConnectErr(err error) {
if opErr, ok := err.(*net.OpError); ok && (opErr.Op == "dial" || opErr.Op == "read") {
// connection refused
// these are typical during a node outage so avoid log spam.
+ if gocqlDebug {
+ log.Printf("unable to dial %q: %v\n", pool.host.Peer(), err)
+ }
} else if err != nil {
// unexpected error
log.Printf("error: failed to connect to %s due to error: %v", pool.addr, err)
@@ -500,16 +499,26 @@ func (pool *hostConnPool) connectMany(count int) {
}
// create a new connection to the host and add it to the pool
-func (pool *hostConnPool) connect() error {
+func (pool *hostConnPool) connect() (err error) {
+ // TODO: provide a more robust connection retry mechanism, we should also
+ // be able to detect hosts that come up by trying to connect to downed ones.
+ const maxAttempts = 3
// try to connect
- conn, err := pool.session.connect(pool.addr, pool)
+ var conn *Conn
+ for i := 0; i < maxAttempts; i++ {
+ conn, err = pool.session.connect(pool.addr, pool, pool.host)
+ if err == nil {
+ break
+ }
+ }
+
if err != nil {
return err
}
if pool.keyspace != "" {
// set the keyspace
- if err := conn.UseKeyspace(pool.keyspace); err != nil {
+ if err = conn.UseKeyspace(pool.keyspace); err != nil {
conn.Close()
return err
}
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/control.go b/vendor/github.com/gocql/gocql/control.go
similarity index 70%
rename from Godeps/_workspace/src/github.com/gocql/gocql/control.go
rename to vendor/github.com/gocql/gocql/control.go
index 4c52b6daa3..968587f6db 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/control.go
+++ b/vendor/github.com/gocql/gocql/control.go
@@ -1,28 +1,39 @@
package gocql
import (
+ crand "crypto/rand"
"errors"
"fmt"
"log"
"math/rand"
"net"
"strconv"
- "sync"
"sync/atomic"
"time"
)
+var (
+ randr *rand.Rand
+)
+
+func init() {
+ b := make([]byte, 4)
+ if _, err := crand.Read(b); err != nil {
+ panic(fmt.Sprintf("unable to seed random number generator: %v", err))
+ }
+
+ randr = rand.New(rand.NewSource(int64(readInt(b))))
+}
+
// Ensure that the atomic variable is aligned to a 64bit boundary
// so that atomic operations can be applied on 32bit architectures.
type controlConn struct {
- connecting int64
-
session *Session
conn atomic.Value
retry RetryPolicy
- closeWg sync.WaitGroup
+ started int32
quit chan struct{}
}
@@ -39,13 +50,17 @@ func createControlConn(session *Session) *controlConn {
}
func (c *controlConn) heartBeat() {
- defer c.closeWg.Done()
+ if !atomic.CompareAndSwapInt32(&c.started, 0, 1) {
+ return
+ }
+
+ sleepTime := 1 * time.Second
for {
select {
case <-c.quit:
return
- case <-time.After(5 * time.Second):
+ case <-time.After(sleepTime):
}
resp, err := c.writeFrame(&writeOptionsFrame{})
@@ -55,6 +70,8 @@ func (c *controlConn) heartBeat() {
switch resp.(type) {
case *supportedFrame:
+ // Everything ok
+ sleepTime = 5 * time.Second
continue
case error:
goto reconn
@@ -63,61 +80,98 @@ func (c *controlConn) heartBeat() {
}
reconn:
+ // try to connect a bit faster
+ sleepTime = 1 * time.Second
c.reconnect(true)
// time.Sleep(5 * time.Second)
continue
}
}
-func (c *controlConn) connect(endpoints []string) error {
- // intial connection attmept, try to connect to each endpoint to get an initial
- // list of nodes.
-
- // shuffle endpoints so not all drivers will connect to the same initial
- // node.
- r := rand.New(rand.NewSource(time.Now().UnixNano()))
- perm := r.Perm(len(endpoints))
+func (c *controlConn) shuffleDial(endpoints []string) (conn *Conn, err error) {
+ perm := randr.Perm(len(endpoints))
shuffled := make([]string, len(endpoints))
for i, endpoint := range endpoints {
shuffled[perm[i]] = endpoint
}
- // store that we are not connected so that reconnect wont happen if we error
- atomic.StoreInt64(&c.connecting, -1)
-
- var (
- conn *Conn
- err error
- )
-
+ // shuffle endpoints so not all drivers will connect to the same initial
+ // node.
for _, addr := range shuffled {
- conn, err = c.session.connect(JoinHostPort(addr, c.session.cfg.Port), c)
+ if addr == "" {
+ return nil, fmt.Errorf("control: invalid address: %q", addr)
+ }
+
+ port := c.session.cfg.Port
+ addr = JoinHostPort(addr, port)
+ host, portStr, err := net.SplitHostPort(addr)
if err != nil {
- log.Printf("gocql: unable to control conn dial %v: %v\n", addr, err)
- continue
+ host = addr
+ port = c.session.cfg.Port
+ err = nil
+ } else {
+ port, err = strconv.Atoi(portStr)
+ if err != nil {
+ return nil, err
+ }
}
- if err = c.registerEvents(conn); err != nil {
- conn.Close()
- continue
+ hostInfo, _ := c.session.ring.addHostIfMissing(&HostInfo{peer: host, port: port})
+ conn, err = c.session.connect(addr, c, hostInfo)
+ if err == nil {
+ return conn, err
}
- // we should fetch the initial ring here and update initial host data. So that
- // when we return from here we have a ring topology ready to go.
- break
+ log.Printf("gocql: unable to dial control conn %v: %v\n", addr, err)
}
- if conn == nil {
- // this is fatal, not going to connect a session
+ return
+}
+
+func (c *controlConn) connect(endpoints []string) error {
+ if len(endpoints) == 0 {
+ return errors.New("control: no endpoints specified")
+ }
+
+ conn, err := c.shuffleDial(endpoints)
+ if err != nil {
+ return fmt.Errorf("control: unable to connect: %v", err)
+ } else if conn == nil {
+ return errors.New("control: unable to connect to initial endpoints")
+ }
+
+ if err := c.setupConn(conn); err != nil {
+ conn.Close()
+ return fmt.Errorf("control: unable to setup connection: %v", err)
+ }
+
+ // we could fetch the initial ring here and update initial host data. So that
+ // when we return from here we have a ring topology ready to go.
+
+ go c.heartBeat()
+
+ return nil
+}
+
+func (c *controlConn) setupConn(conn *Conn) error {
+ if err := c.registerEvents(conn); err != nil {
+ conn.Close()
return err
}
c.conn.Store(conn)
- atomic.StoreInt64(&c.connecting, 0)
- c.closeWg.Add(1)
- go c.heartBeat()
+ host, portstr, err := net.SplitHostPort(conn.conn.RemoteAddr().String())
+ if err != nil {
+ return err
+ }
+ port, err := strconv.Atoi(portstr)
+ if err != nil {
+ return err
+ }
+
+ c.session.handleNodeUp(net.ParseIP(host), port, false)
return nil
}
@@ -159,22 +213,6 @@ func (c *controlConn) registerEvents(conn *Conn) error {
func (c *controlConn) reconnect(refreshring bool) {
// TODO: simplify this function, use session.ring to get hosts instead of the
// connection pool
- if !atomic.CompareAndSwapInt64(&c.connecting, 0, 1) {
- return
- }
-
- success := false
- defer func() {
- // debounce reconnect a little
- if success {
- go func() {
- time.Sleep(500 * time.Millisecond)
- atomic.StoreInt64(&c.connecting, 0)
- }()
- } else {
- atomic.StoreInt64(&c.connecting, 0)
- }
- }()
addr := c.addr()
oldConn := c.conn.Load().(*Conn)
@@ -185,7 +223,7 @@ func (c *controlConn) reconnect(refreshring bool) {
var newConn *Conn
if addr != "" {
// try to connect to the old host
- conn, err := c.session.connect(addr, c)
+ conn, err := c.session.connect(addr, c, oldConn.host)
if err != nil {
// host is dead
// TODO: this is replicated in a few places
@@ -202,31 +240,24 @@ func (c *controlConn) reconnect(refreshring bool) {
if newConn == nil {
_, conn := c.session.pool.Pick(nil)
if conn == nil {
- return
- }
-
- if conn == nil {
+ c.connect(c.session.ring.endpoints)
return
}
var err error
- newConn, err = c.session.connect(conn.addr, c)
+ newConn, err = c.session.connect(conn.addr, c, conn.host)
if err != nil {
// TODO: add log handler for things like this
return
}
}
- if err := c.registerEvents(newConn); err != nil {
- // TODO: handle this case better
+ if err := c.setupConn(newConn); err != nil {
newConn.Close()
log.Printf("gocql: control unable to register events: %v\n", err)
return
}
- c.conn.Store(newConn)
- success = true
-
if refreshring {
c.session.hostSource.refreshRing()
}
@@ -284,13 +315,17 @@ func (c *controlConn) withConn(fn func(*Conn) *Iter) *Iter {
// query will return nil if the connection is closed or nil
func (c *controlConn) query(statement string, values ...interface{}) (iter *Iter) {
- q := c.session.Query(statement, values...).Consistency(One)
+ q := c.session.Query(statement, values...).Consistency(One).RoutingKey([]byte{})
for {
iter = c.withConn(func(conn *Conn) *Iter {
return conn.executeQuery(q)
})
+ if gocqlDebug && iter.err != nil {
+ log.Printf("control: error executing %q: %v\n", statement, iter.err)
+ }
+
q.attempts++
if iter.err == nil || !c.retry.Attempt(q) {
break
@@ -355,9 +390,9 @@ func (c *controlConn) addr() string {
}
func (c *controlConn) close() {
- // TODO: handle more gracefully
- close(c.quit)
- c.closeWg.Wait()
+ if atomic.CompareAndSwapInt32(&c.started, 1, -1) {
+ c.quit <- struct{}{}
+ }
conn := c.conn.Load().(*Conn)
if conn != nil {
conn.Close()
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/debug_off.go b/vendor/github.com/gocql/gocql/debug_off.go
similarity index 60%
rename from Godeps/_workspace/src/github.com/gocql/gocql/debug_off.go
rename to vendor/github.com/gocql/gocql/debug_off.go
index 70e2a2e3d1..3af3ae0f3e 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/debug_off.go
+++ b/vendor/github.com/gocql/gocql/debug_off.go
@@ -2,4 +2,4 @@
package gocql
-const debug = false
+const gocqlDebug = false
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/debug_on.go b/vendor/github.com/gocql/gocql/debug_on.go
similarity index 61%
rename from Godeps/_workspace/src/github.com/gocql/gocql/debug_on.go
rename to vendor/github.com/gocql/gocql/debug_on.go
index 83e757beff..e94a00ce5b 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/debug_on.go
+++ b/vendor/github.com/gocql/gocql/debug_on.go
@@ -2,4 +2,4 @@
package gocql
-const debug = true
+const gocqlDebug = true
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/doc.go b/vendor/github.com/gocql/gocql/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/doc.go
rename to vendor/github.com/gocql/gocql/doc.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/errors.go b/vendor/github.com/gocql/gocql/errors.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/errors.go
rename to vendor/github.com/gocql/gocql/errors.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/events.go b/vendor/github.com/gocql/gocql/events.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/gocql/gocql/events.go
rename to vendor/github.com/gocql/gocql/events.go
index d509b7c894..ab8de8feff 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/events.go
+++ b/vendor/github.com/gocql/gocql/events.go
@@ -91,7 +91,7 @@ func (s *Session) handleEvent(framer *framer) {
return
}
- if debug {
+ if gocqlDebug {
log.Printf("gocql: handling frame: %v\n", frame)
}
@@ -107,8 +107,6 @@ func (s *Session) handleEvent(framer *framer) {
}
func (s *Session) handleSchemaEvent(frames []frame) {
- // for now we dont care about them, just reset the prepared statements
- s.stmtsLRU.clear()
}
func (s *Session) handleNodeEvent(frames []frame) {
@@ -142,7 +140,7 @@ func (s *Session) handleNodeEvent(frames []frame) {
}
for _, f := range events {
- if debug {
+ if gocqlDebug {
log.Printf("gocql: dispatching event: %+v\n", f)
}
@@ -251,6 +249,7 @@ func (s *Session) handleNodeUp(ip net.IP, port int, waitForBinary bool) {
time.Sleep(t)
}
+ host.setPort(port)
s.pool.hostUp(host)
host.setState(NodeUp)
return
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/filters.go b/vendor/github.com/gocql/gocql/filters.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/filters.go
rename to vendor/github.com/gocql/gocql/filters.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/frame.go b/vendor/github.com/gocql/gocql/frame.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/gocql/gocql/frame.go
rename to vendor/github.com/gocql/gocql/frame.go
index fe27ad3e6c..d0e633d15a 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/frame.go
+++ b/vendor/github.com/gocql/gocql/frame.go
@@ -935,7 +935,8 @@ type resultRowsFrame struct {
frameHeader
meta resultMetadata
- rows [][][]byte
+ // dont parse the rows here as we only need to do it once
+ numRows int
}
func (f *resultRowsFrame) String() string {
@@ -943,28 +944,15 @@ func (f *resultRowsFrame) String() string {
}
func (f *framer) parseResultRows() frame {
- meta := f.parseResultMetadata()
+ result := &resultRowsFrame{}
+ result.meta = f.parseResultMetadata()
- numRows := f.readInt()
- if numRows < 0 {
- panic(fmt.Errorf("invalid row_count in result frame: %d", numRows))
+ result.numRows = f.readInt()
+ if result.numRows < 0 {
+ panic(fmt.Errorf("invalid row_count in result frame: %d", result.numRows))
}
- colCount := meta.colCount
-
- rows := make([][][]byte, numRows)
- for i := 0; i < numRows; i++ {
- rows[i] = make([][]byte, colCount)
- for j := 0; j < colCount; j++ {
- rows[i][j] = f.readBytes()
- }
- }
-
- return &resultRowsFrame{
- frameHeader: *f.header,
- meta: meta,
- rows: rows,
- }
+ return result
}
type resultKeyspaceFrame struct {
@@ -1563,19 +1551,28 @@ func (f *framer) readStringList() []string {
return l
}
-func (f *framer) readBytes() []byte {
+func (f *framer) readBytesInternal() ([]byte, error) {
size := f.readInt()
if size < 0 {
- return nil
+ return nil, nil
}
if len(f.rbuf) < size {
- panic(fmt.Errorf("not enough bytes in buffer to read bytes require %d got: %d", size, len(f.rbuf)))
+ return nil, fmt.Errorf("not enough bytes in buffer to read bytes require %d got: %d", size, len(f.rbuf))
}
l := f.rbuf[:size]
f.rbuf = f.rbuf[size:]
+ return l, nil
+}
+
+func (f *framer) readBytes() []byte {
+ l, err := f.readBytesInternal()
+ if err != nil {
+ panic(err)
+ }
+
return l
}
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/fuzz.go b/vendor/github.com/gocql/gocql/fuzz.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/fuzz.go
rename to vendor/github.com/gocql/gocql/fuzz.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/helpers.go b/vendor/github.com/gocql/gocql/helpers.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/helpers.go
rename to vendor/github.com/gocql/gocql/helpers.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/host_source.go b/vendor/github.com/gocql/gocql/host_source.go
similarity index 93%
rename from Godeps/_workspace/src/github.com/gocql/gocql/host_source.go
rename to vendor/github.com/gocql/gocql/host_source.go
index e40a7d0fa4..f43b24d251 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/host_source.go
+++ b/vendor/github.com/gocql/gocql/host_source.go
@@ -29,6 +29,14 @@ type cassVersion struct {
Major, Minor, Patch int
}
+func (c *cassVersion) Set(v string) error {
+ if v == "" {
+ return nil
+ }
+
+ return c.UnmarshalCQL(nil, []byte(v))
+}
+
func (c *cassVersion) UnmarshalCQL(info TypeInfo, data []byte) error {
version := strings.TrimSuffix(string(data), "-SNAPSHOT")
version = strings.TrimPrefix(version, "v")
@@ -55,6 +63,17 @@ func (c *cassVersion) UnmarshalCQL(info TypeInfo, data []byte) error {
return nil
}
+func (c cassVersion) Before(major, minor, patch int) bool {
+ if c.Major > major {
+ return true
+ } else if c.Minor > minor {
+ return true
+ } else if c.Patch > patch {
+ return true
+ }
+ return false
+}
+
func (c cassVersion) String() string {
return fmt.Sprintf("v%d.%d.%d", c.Major, c.Minor, c.Patch)
}
@@ -345,10 +364,12 @@ func (r *ringDescriber) refreshRing() error {
// TODO: move this to session
// TODO: handle removing hosts here
for _, h := range hosts {
- if host, ok := r.session.ring.addHostIfMissing(h); !ok {
- r.session.pool.addHost(h)
- } else {
- host.update(h)
+ if r.session.cfg.HostFilter == nil || r.session.cfg.HostFilter.Accept(h) {
+ if host, ok := r.session.ring.addHostIfMissing(h); !ok {
+ r.session.pool.addHost(h)
+ } else {
+ host.update(h)
+ }
}
}
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/integration.sh b/vendor/github.com/gocql/gocql/integration.sh
similarity index 63%
rename from Godeps/_workspace/src/github.com/gocql/gocql/integration.sh
rename to vendor/github.com/gocql/gocql/integration.sh
index 6c522d194a..3ed3a11ede 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/integration.sh
+++ b/vendor/github.com/gocql/gocql/integration.sh
@@ -55,29 +55,27 @@ function run_tests() {
sleep 1s
ccm list
- ccm start -v
+ ccm start
ccm status
ccm node1 nodetool status
+ local args="-v -gocql.timeout=60s -runssl -proto=$proto -rf=3 -clusterSize=$clusterSize -autowait=2000ms -compressor=snappy -gocql.cversion=$version -cluster=$(ccm liveset) ./..."
+
+ go test -v -tags unit
+
if [ "$auth" = true ]
then
sleep 30s
- go test -v . -timeout 15s -run=TestAuthentication -tags "integration gocql_debug" -runssl -runauth -proto=$proto -cluster=$(ccm liveset) -clusterSize=$clusterSize -autowait=1000ms
+ go test -run=TestAuthentication -tags "integration gocql_debug" -timeout=15s -runauth $args
else
+ sleep 1s
+ go test -tags "integration gocql_debug" -timeout=5m $args
- go test -timeout 10m -tags integration -v -gocql.timeout=10s -runssl -proto=$proto -rf=3 -cluster=$(ccm liveset) -clusterSize=$clusterSize -autowait=2000ms -compressor=snappy ./...
+ ccm clear
+ ccm start
+ sleep 1s
- if [ ${PIPESTATUS[0]} -ne 0 ]; then
- echo "--- FAIL: ccm status follows:"
- ccm status
- ccm node1 nodetool status
- ccm node1 showlog > status.log
- cat status.log
- echo "--- FAIL: Received a non-zero exit code from the go test execution, please investigate this"
- exit 1
- fi
-
- go test -timeout 10m -tags "ccm gocql_debug" -v -gocql.timeout=10s -runssl -proto=$proto -rf=3 -cluster=$(ccm liveset) -clusterSize=$clusterSize -autowait=2000ms -compressor=snappy ./...
+ go test -tags "ccm gocql_debug" -timeout=5m $args
fi
ccm remove
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/internal/ccm/ccm.go b/vendor/github.com/gocql/gocql/internal/ccm/ccm.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/internal/ccm/ccm.go
rename to vendor/github.com/gocql/gocql/internal/ccm/ccm.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/internal/lru/lru.go b/vendor/github.com/gocql/gocql/internal/lru/lru.go
similarity index 97%
rename from Godeps/_workspace/src/github.com/gocql/gocql/internal/lru/lru.go
rename to vendor/github.com/gocql/gocql/internal/lru/lru.go
index 0ad367838c..9f5719b346 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/internal/lru/lru.go
+++ b/vendor/github.com/gocql/gocql/internal/lru/lru.go
@@ -85,13 +85,17 @@ func (c *Cache) Get(key string) (value interface{}, ok bool) {
}
// Remove removes the provided key from the cache.
-func (c *Cache) Remove(key string) {
+func (c *Cache) Remove(key string) bool {
if c.cache == nil {
- return
+ return false
}
+
if ele, hit := c.cache[key]; hit {
c.removeElement(ele)
+ return true
}
+
+ return false
}
// RemoveOldest removes the oldest item from the cache.
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/internal/murmur/murmur.go b/vendor/github.com/gocql/gocql/internal/murmur/murmur.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/internal/murmur/murmur.go
rename to vendor/github.com/gocql/gocql/internal/murmur/murmur.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/internal/murmur/murmur_appengine.go b/vendor/github.com/gocql/gocql/internal/murmur/murmur_appengine.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/internal/murmur/murmur_appengine.go
rename to vendor/github.com/gocql/gocql/internal/murmur/murmur_appengine.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/internal/streams/streams.go b/vendor/github.com/gocql/gocql/internal/streams/streams.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/internal/streams/streams.go
rename to vendor/github.com/gocql/gocql/internal/streams/streams.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/marshal.go b/vendor/github.com/gocql/gocql/marshal.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/gocql/gocql/marshal.go
rename to vendor/github.com/gocql/gocql/marshal.go
index 254da307a2..70efaa1833 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/marshal.go
+++ b/vendor/github.com/gocql/gocql/marshal.go
@@ -401,6 +401,13 @@ func bytesToInt64(data []byte) (ret int64) {
return ret
}
+func bytesToUint64(data []byte) (ret uint64) {
+ for i := range data {
+ ret |= uint64(data[i]) << (8 * uint(len(data)-i-1))
+ }
+ return ret
+}
+
func unmarshalBigInt(info TypeInfo, data []byte, value interface{}) error {
return unmarshalIntlike(info, decBigInt(data), data, value)
}
@@ -410,9 +417,14 @@ func unmarshalInt(info TypeInfo, data []byte, value interface{}) error {
}
func unmarshalVarint(info TypeInfo, data []byte, value interface{}) error {
- switch value.(type) {
+ switch v := value.(type) {
case *big.Int:
return unmarshalIntlike(info, 0, data, value)
+ case *uint64:
+ if len(data) == 9 && data[0] == 0 {
+ *v = bytesToUint64(data[1:])
+ return nil
+ }
}
if len(data) > 8 {
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/metadata.go b/vendor/github.com/gocql/gocql/metadata.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/metadata.go
rename to vendor/github.com/gocql/gocql/metadata.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/policies.go b/vendor/github.com/gocql/gocql/policies.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/gocql/gocql/policies.go
rename to vendor/github.com/gocql/gocql/policies.go
index 3c387d6a5f..2d2ba26902 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/policies.go
+++ b/vendor/github.com/gocql/gocql/policies.go
@@ -370,7 +370,7 @@ func (t *tokenAwareHostPolicy) Pick(qry *Query) NextHost {
fallbackHost := fallbackIter()
// filter the token aware selected hosts from the fallback hosts
- if fallbackHost.Info() == host {
+ if fallbackHost != nil && fallbackHost.Info() == host {
fallbackHost = fallbackIter()
}
diff --git a/vendor/github.com/gocql/gocql/prepared_cache.go b/vendor/github.com/gocql/gocql/prepared_cache.go
new file mode 100644
index 0000000000..3c012a4bbc
--- /dev/null
+++ b/vendor/github.com/gocql/gocql/prepared_cache.go
@@ -0,0 +1,64 @@
+package gocql
+
+import (
+ "github.com/gocql/gocql/internal/lru"
+ "sync"
+)
+
+const defaultMaxPreparedStmts = 1000
+
+// preparedLRU is the prepared statement cache
+type preparedLRU struct {
+ mu sync.Mutex
+ lru *lru.Cache
+}
+
+// Max adjusts the maximum size of the cache and cleans up the oldest records if
+// the new max is lower than the previous value. Not concurrency safe.
+func (p *preparedLRU) max(max int) {
+ p.mu.Lock()
+ defer p.mu.Unlock()
+
+ for p.lru.Len() > max {
+ p.lru.RemoveOldest()
+ }
+ p.lru.MaxEntries = max
+}
+
+func (p *preparedLRU) clear() {
+ p.mu.Lock()
+ defer p.mu.Unlock()
+
+ for p.lru.Len() > 0 {
+ p.lru.RemoveOldest()
+ }
+}
+
+func (p *preparedLRU) add(key string, val *inflightPrepare) {
+ p.mu.Lock()
+ defer p.mu.Unlock()
+ p.lru.Add(key, val)
+}
+
+func (p *preparedLRU) remove(key string) bool {
+ p.mu.Lock()
+ defer p.mu.Unlock()
+ return p.lru.Remove(key)
+}
+
+func (p *preparedLRU) execIfMissing(key string, fn func(lru *lru.Cache) *inflightPrepare) (*inflightPrepare, bool) {
+ p.mu.Lock()
+ defer p.mu.Unlock()
+
+ val, ok := p.lru.Get(key)
+ if ok {
+ return val.(*inflightPrepare), true
+ }
+
+ return fn(p.lru), false
+}
+
+func (p *preparedLRU) keyFor(addr, keyspace, statement string) string {
+ // TODO: maybe use []byte for keys?
+ return addr + keyspace + statement
+}
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/ring.go b/vendor/github.com/gocql/gocql/ring.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/ring.go
rename to vendor/github.com/gocql/gocql/ring.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/session.go b/vendor/github.com/gocql/gocql/session.go
similarity index 91%
rename from Godeps/_workspace/src/github.com/gocql/gocql/session.go
rename to vendor/github.com/gocql/gocql/session.go
index fb3e0c32ec..57814c3eb7 100644
--- a/Godeps/_workspace/src/github.com/gocql/gocql/session.go
+++ b/vendor/github.com/gocql/gocql/session.go
@@ -14,6 +14,7 @@ import (
"strconv"
"strings"
"sync"
+ "sync/atomic"
"time"
"unicode"
@@ -122,7 +123,7 @@ func NewSession(cfg ClusterConfig) (*Session, error) {
s.control = createControlConn(s)
if err := s.control.connect(cfg.Hosts); err != nil {
s.Close()
- return nil, err
+ return nil, fmt.Errorf("gocql: unable to create session: %v", err)
}
// need to setup host source to check for broadcast_address in system.local
@@ -140,7 +141,7 @@ func NewSession(cfg ClusterConfig) (*Session, error) {
if err != nil {
s.Close()
- return nil, err
+ return nil, fmt.Errorf("gocql: unable to create session: %v", err)
}
} else {
// we dont get host info
@@ -148,8 +149,13 @@ func NewSession(cfg ClusterConfig) (*Session, error) {
}
for _, host := range hosts {
- s.ring.addHost(host)
- s.handleNodeUp(net.ParseIP(host.Peer()), host.Port(), false)
+ if s.cfg.HostFilter == nil || s.cfg.HostFilter.Accept(host) {
+ if existingHost, ok := s.ring.addHostIfMissing(host); ok {
+ existingHost.update(host)
+ }
+
+ s.handleNodeUp(net.ParseIP(host.Peer()), host.Port(), false)
+ }
}
// TODO(zariel): we probably dont need this any more as we verify that we
@@ -246,7 +252,9 @@ func (s *Session) Close() {
}
s.isClosed = true
- s.pool.Close()
+ if s.pool != nil {
+ s.pool.Close()
+ }
if s.hostSource != nil {
close(s.hostSource.closeChan)
@@ -259,6 +267,10 @@ func (s *Session) Close() {
if s.nodeEvents != nil {
s.nodeEvents.stop()
}
+
+ if s.schemaEvents != nil {
+ s.schemaEvents.stop()
+ }
}
func (s *Session) Closed() bool {
@@ -395,6 +407,22 @@ func (s *Session) routingKeyInfo(stmt string) (*routingKeyInfo, error) {
return nil, nil
}
+ if len(info.request.pkeyColumns) > 0 {
+ // proto v4 dont need to calculate primary key columns
+ types := make([]TypeInfo, len(info.request.pkeyColumns))
+ for i, col := range info.request.pkeyColumns {
+ types[i] = info.request.columns[col].TypeInfo
+ }
+
+ routingKeyInfo := &routingKeyInfo{
+ indexes: info.request.pkeyColumns,
+ types: types,
+ }
+
+ inflight.value = routingKeyInfo
+ return routingKeyInfo, nil
+ }
+
// get the table metadata
table := info.request.columns[0].Table
@@ -556,29 +584,29 @@ func (s *Session) MapExecuteBatchCAS(batch *Batch, dest map[string]interface{})
return applied, iter, iter.err
}
-func (s *Session) connect(addr string, errorHandler ConnErrorHandler) (*Conn, error) {
- return Connect(addr, s.connCfg, errorHandler, s)
+func (s *Session) connect(addr string, errorHandler ConnErrorHandler, host *HostInfo) (*Conn, error) {
+ return Connect(host, addr, s.connCfg, errorHandler, s)
}
// Query represents a CQL statement that can be executed.
type Query struct {
- stmt string
- values []interface{}
- cons Consistency
- pageSize int
- routingKey []byte
- routingKeyBuffer []byte
- pageState []byte
- prefetch float64
- trace Tracer
- session *Session
- rt RetryPolicy
- binding func(q *QueryInfo) ([]interface{}, error)
- attempts int
- totalLatency int64
- serialCons SerialConsistency
- defaultTimestamp bool
- isCAS bool
+ stmt string
+ values []interface{}
+ cons Consistency
+ pageSize int
+ routingKey []byte
+ routingKeyBuffer []byte
+ pageState []byte
+ prefetch float64
+ trace Tracer
+ session *Session
+ rt RetryPolicy
+ binding func(q *QueryInfo) ([]interface{}, error)
+ attempts int
+ totalLatency int64
+ serialCons SerialConsistency
+ defaultTimestamp bool
+ disableSkipMetadata bool
disableAutoPage bool
}
@@ -770,6 +798,19 @@ func (q *Query) PageState(state []byte) *Query {
return q
}
+// NoSkipMetadata will override the internal result metadata cache so that the driver does not
+// send skip_metadata for queries, this means that the result will always contain
+// the metadata to parse the rows and will not reuse the metadata from the prepared
+// staement. This should only be used to work around cassandra bugs, such as when using
+// CAS operations which do not end in Cas.
+//
+// See https://issues.apache.org/jira/browse/CASSANDRA-11099
+// https://github.com/gocql/gocql/issues/612
+func (q *Query) NoSkipMetadata() *Query {
+ q.disableSkipMetadata = true
+ return q
+}
+
// Exec executes the query without returning any rows.
func (q *Query) Exec() error {
iter := q.Iter()
@@ -822,7 +863,7 @@ func (q *Query) Scan(dest ...interface{}) error {
// the existing values did not match, the previous values will be stored
// in dest.
func (q *Query) ScanCAS(dest ...interface{}) (applied bool, err error) {
- q.isCAS = true
+ q.disableSkipMetadata = true
iter := q.Iter()
if err := iter.checkErrAndNotFound(); err != nil {
return false, err
@@ -845,7 +886,7 @@ func (q *Query) ScanCAS(dest ...interface{}) (applied bool, err error) {
// SELECT * FROM. So using ScanCAS with INSERT is inherently prone to
// column mismatching. MapScanCAS is added to capture them safely.
func (q *Query) MapScanCAS(dest map[string]interface{}) (applied bool, err error) {
- q.isCAS = true
+ q.disableSkipMetadata = true
iter := q.Iter()
if err := iter.checkErrAndNotFound(); err != nil {
return false, err
@@ -861,15 +902,15 @@ func (q *Query) MapScanCAS(dest map[string]interface{}) (applied bool, err error
// were returned by a query. The iterator might send additional queries to the
// database during the iteration if paging was enabled.
type Iter struct {
- err error
- pos int
- rows [][][]byte
- meta resultMetadata
- next *nextIter
- host *HostInfo
+ err error
+ pos int
+ meta resultMetadata
+ numRows int
+ next *nextIter
+ host *HostInfo
framer *framer
- once sync.Once
+ closed int32
}
// Host returns the host which the query was sent to.
@@ -882,6 +923,10 @@ func (iter *Iter) Columns() []ColumnInfo {
return iter.meta.columns
}
+func (iter *Iter) readColumn() ([]byte, error) {
+ return iter.framer.readBytesInternal()
+}
+
// Scan consumes the next row of the iterator and copies the columns of the
// current row into the values pointed at by dest. Use nil as a dest value
// to skip the corresponding column. Scan might send additional queries
@@ -894,13 +939,15 @@ func (iter *Iter) Scan(dest ...interface{}) bool {
if iter.err != nil {
return false
}
- if iter.pos >= len(iter.rows) {
+
+ if iter.pos >= iter.numRows {
if iter.next != nil {
*iter = *iter.next.fetch()
return iter.Scan(dest...)
}
return false
}
+
if iter.next != nil && iter.pos == iter.next.pos {
go iter.next.fetch()
}
@@ -915,7 +962,14 @@ func (iter *Iter) Scan(dest ...interface{}) bool {
// i is the current position in dest, could posible replace it and just use
// slices of dest
i := 0
- for c, col := range iter.meta.columns {
+ for c := range iter.meta.columns {
+ col := &iter.meta.columns[c]
+ colBytes, err := iter.readColumn()
+ if err != nil {
+ iter.err = err
+ return false
+ }
+
if dest[i] == nil {
i++
continue
@@ -929,10 +983,10 @@ func (iter *Iter) Scan(dest ...interface{}) bool {
count := len(tuple.Elems)
// here we pass in a slice of the struct which has the number number of
// values as elements in the tuple
- iter.err = Unmarshal(col.TypeInfo, iter.rows[iter.pos][c], dest[i:i+count])
+ iter.err = Unmarshal(col.TypeInfo, colBytes, dest[i:i+count])
i += count
default:
- iter.err = Unmarshal(col.TypeInfo, iter.rows[iter.pos][c], dest[i])
+ iter.err = Unmarshal(col.TypeInfo, colBytes, dest[i])
i++
}
@@ -948,12 +1002,12 @@ func (iter *Iter) Scan(dest ...interface{}) bool {
// Close closes the iterator and returns any errors that happened during
// the query or the iteration.
func (iter *Iter) Close() error {
- iter.once.Do(func() {
+ if atomic.CompareAndSwapInt32(&iter.closed, 0, 1) {
if iter.framer != nil {
framerPool.Put(iter.framer)
iter.framer = nil
}
- })
+ }
return iter.err
}
@@ -961,14 +1015,14 @@ func (iter *Iter) Close() error {
// WillSwitchPage detects if iterator reached end of current page
// and the next page is available.
func (iter *Iter) WillSwitchPage() bool {
- return iter.pos >= len(iter.rows) && iter.next != nil
+ return iter.pos >= iter.numRows && iter.next != nil
}
// checkErrAndNotFound handle error and NotFound in one method.
func (iter *Iter) checkErrAndNotFound() error {
if iter.err != nil {
return iter.err
- } else if len(iter.rows) == 0 {
+ } else if iter.numRows == 0 {
return ErrNotFound
}
return nil
@@ -1120,6 +1174,10 @@ type routingKeyInfo struct {
types []TypeInfo
}
+func (r *routingKeyInfo) String() string {
+ return fmt.Sprintf("routing key index=%v types=%v", r.indexes, r.types)
+}
+
func (r *routingKeyInfoLRU) Remove(key string) {
r.mu.Lock()
r.lru.Remove(key)
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/token.go b/vendor/github.com/gocql/gocql/token.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/token.go
rename to vendor/github.com/gocql/gocql/token.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/topology.go b/vendor/github.com/gocql/gocql/topology.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/topology.go
rename to vendor/github.com/gocql/gocql/topology.go
diff --git a/Godeps/_workspace/src/github.com/gocql/gocql/uuid.go b/vendor/github.com/gocql/gocql/uuid.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/gocql/gocql/uuid.go
rename to vendor/github.com/gocql/gocql/uuid.go
diff --git a/vendor/github.com/golang/snappy/.gitignore b/vendor/github.com/golang/snappy/.gitignore
new file mode 100644
index 0000000000..1b4ec9304a
--- /dev/null
+++ b/vendor/github.com/golang/snappy/.gitignore
@@ -0,0 +1,11 @@
+testdata/alice29.txt
+testdata/asyoulik.txt
+testdata/fireworks.jpeg
+testdata/geo.protodata
+testdata/html
+testdata/html_x_4
+testdata/kppkn.gtb
+testdata/lcet10.txt
+testdata/paper-100k.pdf
+testdata/plrabn12.txt
+testdata/urls.10K
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/AUTHORS b/vendor/github.com/golang/snappy/AUTHORS
similarity index 91%
rename from Godeps/_workspace/src/github.com/golang/snappy/AUTHORS
rename to vendor/github.com/golang/snappy/AUTHORS
index 824bf2e148..bcfa19520a 100644
--- a/Godeps/_workspace/src/github.com/golang/snappy/AUTHORS
+++ b/vendor/github.com/golang/snappy/AUTHORS
@@ -11,4 +11,5 @@
Damian Gryski
Google Inc.
Jan Mercl <0xjnml@gmail.com>
+Rodolfo Carvalho
Sebastien Binet
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/CONTRIBUTORS b/vendor/github.com/golang/snappy/CONTRIBUTORS
similarity index 97%
rename from Godeps/_workspace/src/github.com/golang/snappy/CONTRIBUTORS
rename to vendor/github.com/golang/snappy/CONTRIBUTORS
index 9f54f21ff7..931ae31606 100644
--- a/Godeps/_workspace/src/github.com/golang/snappy/CONTRIBUTORS
+++ b/vendor/github.com/golang/snappy/CONTRIBUTORS
@@ -32,5 +32,6 @@ Kai Backman
Marc-Antoine Ruel
Nigel Tao
Rob Pike
+Rodolfo Carvalho
Russ Cox
Sebastien Binet
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/LICENSE b/vendor/github.com/golang/snappy/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/golang/snappy/LICENSE
rename to vendor/github.com/golang/snappy/LICENSE
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/README b/vendor/github.com/golang/snappy/README
similarity index 100%
rename from Godeps/_workspace/src/github.com/golang/snappy/README
rename to vendor/github.com/golang/snappy/README
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/decode.go b/vendor/github.com/golang/snappy/decode.go
similarity index 88%
rename from Godeps/_workspace/src/github.com/golang/snappy/decode.go
rename to vendor/github.com/golang/snappy/decode.go
index e7f1259a34..6c5dd66bf0 100644
--- a/Godeps/_workspace/src/github.com/golang/snappy/decode.go
+++ b/vendor/github.com/golang/snappy/decode.go
@@ -17,6 +17,9 @@ var (
ErrTooLarge = errors.New("snappy: decoded block is too large")
// ErrUnsupported reports that the input isn't supported.
ErrUnsupported = errors.New("snappy: unsupported input")
+
+ errUnsupportedCopy4Tag = errors.New("snappy: unsupported COPY_4 tag")
+ errUnsupportedLiteralLength = errors.New("snappy: unsupported literal length")
)
// DecodedLen returns the length of the decoded block.
@@ -63,32 +66,32 @@ func Decode(dst, src []byte) ([]byte, error) {
s++
case x == 60:
s += 2
- if s > len(src) {
+ if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line.
return nil, ErrCorrupt
}
x = uint(src[s-1])
case x == 61:
s += 3
- if s > len(src) {
+ if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line.
return nil, ErrCorrupt
}
x = uint(src[s-2]) | uint(src[s-1])<<8
case x == 62:
s += 4
- if s > len(src) {
+ if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line.
return nil, ErrCorrupt
}
x = uint(src[s-3]) | uint(src[s-2])<<8 | uint(src[s-1])<<16
case x == 63:
s += 5
- if s > len(src) {
+ if uint(s) > uint(len(src)) { // The uint conversions catch overflow from the previous line.
return nil, ErrCorrupt
}
x = uint(src[s-4]) | uint(src[s-3])<<8 | uint(src[s-2])<<16 | uint(src[s-1])<<24
}
length = int(x + 1)
if length <= 0 {
- return nil, errors.New("snappy: unsupported literal length")
+ return nil, errUnsupportedLiteralLength
}
if length > len(dst)-d || length > len(src)-s {
return nil, ErrCorrupt
@@ -115,14 +118,13 @@ func Decode(dst, src []byte) ([]byte, error) {
offset = int(src[s-2]) | int(src[s-1])<<8
case tagCopy4:
- return nil, errors.New("snappy: unsupported COPY_4 tag")
+ return nil, errUnsupportedCopy4Tag
}
- end := d + length
- if offset > d || end > len(dst) {
+ if offset <= 0 || d < offset || length > len(dst)-d {
return nil, ErrCorrupt
}
- for ; d < end; d++ {
+ for end := d + length; d != end; d++ {
dst[d] = dst[d-offset]
}
}
@@ -139,11 +141,11 @@ func NewReader(r io.Reader) *Reader {
return &Reader{
r: r,
decoded: make([]byte, maxUncompressedChunkLen),
- buf: make([]byte, MaxEncodedLen(maxUncompressedChunkLen)+checksumSize),
+ buf: make([]byte, maxEncodedLenOfMaxUncompressedChunkLen+checksumSize),
}
}
-// Reader is an io.Reader than can read Snappy-compressed bytes.
+// Reader is an io.Reader that can read Snappy-compressed bytes.
type Reader struct {
r io.Reader
err error
diff --git a/vendor/github.com/golang/snappy/encode.go b/vendor/github.com/golang/snappy/encode.go
new file mode 100644
index 0000000000..89109b6f6e
--- /dev/null
+++ b/vendor/github.com/golang/snappy/encode.go
@@ -0,0 +1,410 @@
+// Copyright 2011 The Snappy-Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package snappy
+
+import (
+ "encoding/binary"
+ "errors"
+ "io"
+)
+
+// We limit how far copy back-references can go, the same as the C++ code.
+const maxOffset = 1 << 15
+
+// emitLiteral writes a literal chunk and returns the number of bytes written.
+func emitLiteral(dst, lit []byte) int {
+ i, n := 0, uint(len(lit)-1)
+ switch {
+ case n < 60:
+ dst[0] = uint8(n)<<2 | tagLiteral
+ i = 1
+ case n < 1<<8:
+ dst[0] = 60<<2 | tagLiteral
+ dst[1] = uint8(n)
+ i = 2
+ case n < 1<<16:
+ dst[0] = 61<<2 | tagLiteral
+ dst[1] = uint8(n)
+ dst[2] = uint8(n >> 8)
+ i = 3
+ case n < 1<<24:
+ dst[0] = 62<<2 | tagLiteral
+ dst[1] = uint8(n)
+ dst[2] = uint8(n >> 8)
+ dst[3] = uint8(n >> 16)
+ i = 4
+ case int64(n) < 1<<32:
+ dst[0] = 63<<2 | tagLiteral
+ dst[1] = uint8(n)
+ dst[2] = uint8(n >> 8)
+ dst[3] = uint8(n >> 16)
+ dst[4] = uint8(n >> 24)
+ i = 5
+ default:
+ panic("snappy: source buffer is too long")
+ }
+ if copy(dst[i:], lit) != len(lit) {
+ panic("snappy: destination buffer is too short")
+ }
+ return i + len(lit)
+}
+
+// emitCopy writes a copy chunk and returns the number of bytes written.
+func emitCopy(dst []byte, offset, length int32) int {
+ i := 0
+ for length > 0 {
+ x := length - 4
+ if 0 <= x && x < 1<<3 && offset < 1<<11 {
+ dst[i+0] = uint8(offset>>8)&0x07<<5 | uint8(x)<<2 | tagCopy1
+ dst[i+1] = uint8(offset)
+ i += 2
+ break
+ }
+
+ x = length
+ if x > 1<<6 {
+ x = 1 << 6
+ }
+ dst[i+0] = uint8(x-1)<<2 | tagCopy2
+ dst[i+1] = uint8(offset)
+ dst[i+2] = uint8(offset >> 8)
+ i += 3
+ length -= x
+ }
+ return i
+}
+
+// Encode returns the encoded form of src. The returned slice may be a sub-
+// slice of dst if dst was large enough to hold the entire encoded block.
+// Otherwise, a newly allocated slice will be returned.
+//
+// It is valid to pass a nil dst.
+func Encode(dst, src []byte) []byte {
+ if n := MaxEncodedLen(len(src)); n < 0 {
+ panic(ErrTooLarge)
+ } else if len(dst) < n {
+ dst = make([]byte, n)
+ }
+
+ // The block starts with the varint-encoded length of the decompressed bytes.
+ d := binary.PutUvarint(dst, uint64(len(src)))
+
+ for len(src) > 0 {
+ p := src
+ src = nil
+ if len(p) > maxInternalEncodeSrcLen {
+ p, src = p[:maxInternalEncodeSrcLen], p[maxInternalEncodeSrcLen:]
+ }
+ d += encode(dst[d:], p)
+ }
+ return dst[:d]
+}
+
+// maxInternalEncodeSrcLen must be less than math.MaxInt32, so that in the
+// (internal) encode function, it is safe to have the s variable (which indexes
+// the src slice), and therefore the hash table entries, to have type int32
+// instead of int.
+const maxInternalEncodeSrcLen = 0x40000000
+
+// encode encodes a non-empty src to a guaranteed-large-enough dst. It assumes
+// that the varint-encoded length of the decompressed bytes has already been
+// written.
+//
+// It also assumes that:
+// len(dst) >= MaxEncodedLen(len(src)) &&
+// 0 < len(src) &&
+// len(src) <= maxInternalEncodeSrcLen &&
+// maxInternalEncodeSrcLen < math.MaxInt32.
+func encode(dst, src []byte) (d int) {
+ // Return early if src is short.
+ if len(src) <= 4 {
+ return emitLiteral(dst, src)
+ }
+
+ // Initialize the hash table. Its size ranges from 1<<8 to 1<<14 inclusive.
+ const maxTableSize = 1 << 14
+ shift, tableSize := uint(32-8), 1<<8
+ for tableSize < maxTableSize && tableSize < len(src) {
+ shift--
+ tableSize *= 2
+ }
+ var table [maxTableSize]int32
+
+ // Iterate over the source bytes.
+ var (
+ s int32 // The iterator position.
+ t int32 // The last position with the same hash as s.
+ lit int32 // The start position of any pending literal bytes.
+
+ // Copied from the C++ snappy implementation:
+ //
+ // Heuristic match skipping: If 32 bytes are scanned with no matches
+ // found, start looking only at every other byte. If 32 more bytes are
+ // scanned, look at every third byte, etc.. When a match is found,
+ // immediately go back to looking at every byte. This is a small loss
+ // (~5% performance, ~0.1% density) for compressible data due to more
+ // bookkeeping, but for non-compressible data (such as JPEG) it's a
+ // huge win since the compressor quickly "realizes" the data is
+ // incompressible and doesn't bother looking for matches everywhere.
+ //
+ // The "skip" variable keeps track of how many bytes there are since
+ // the last match; dividing it by 32 (ie. right-shifting by five) gives
+ // the number of bytes to move ahead for each iteration.
+ skip uint32 = 32
+ )
+ for uint32(s+3) < uint32(len(src)) { // The uint32 conversions catch overflow from the +3.
+ // Update the hash table.
+ b0, b1, b2, b3 := src[s], src[s+1], src[s+2], src[s+3]
+ h := uint32(b0) | uint32(b1)<<8 | uint32(b2)<<16 | uint32(b3)<<24
+ p := &table[(h*0x1e35a7bd)>>shift]
+ // We need to to store values in [-1, inf) in table. To save
+ // some initialization time, (re)use the table's zero value
+ // and shift the values against this zero: add 1 on writes,
+ // subtract 1 on reads.
+ t, *p = *p-1, s+1
+ // If t is invalid or src[s:s+4] differs from src[t:t+4], accumulate a literal byte.
+ if t < 0 || s-t >= maxOffset || b0 != src[t] || b1 != src[t+1] || b2 != src[t+2] || b3 != src[t+3] {
+ s += int32(skip >> 5)
+ skip++
+ continue
+ }
+ skip = 32
+ // Otherwise, we have a match. First, emit any pending literal bytes.
+ if lit != s {
+ d += emitLiteral(dst[d:], src[lit:s])
+ }
+ // Extend the match to be as long as possible.
+ s0 := s
+ s, t = s+4, t+4
+ for int(s) < len(src) && src[s] == src[t] {
+ s++
+ t++
+ }
+ // Emit the copied bytes.
+ d += emitCopy(dst[d:], s-t, s-s0)
+ lit = s
+ }
+
+ // Emit any final pending literal bytes and return.
+ if int(lit) != len(src) {
+ d += emitLiteral(dst[d:], src[lit:])
+ }
+ return d
+}
+
+// MaxEncodedLen returns the maximum length of a snappy block, given its
+// uncompressed length.
+//
+// It will return a negative value if srcLen is too large to encode.
+func MaxEncodedLen(srcLen int) int {
+ n := uint64(srcLen)
+ if n > 0xffffffff {
+ return -1
+ }
+ // Compressed data can be defined as:
+ // compressed := item* literal*
+ // item := literal* copy
+ //
+ // The trailing literal sequence has a space blowup of at most 62/60
+ // since a literal of length 60 needs one tag byte + one extra byte
+ // for length information.
+ //
+ // Item blowup is trickier to measure. Suppose the "copy" op copies
+ // 4 bytes of data. Because of a special check in the encoding code,
+ // we produce a 4-byte copy only if the offset is < 65536. Therefore
+ // the copy op takes 3 bytes to encode, and this type of item leads
+ // to at most the 62/60 blowup for representing literals.
+ //
+ // Suppose the "copy" op copies 5 bytes of data. If the offset is big
+ // enough, it will take 5 bytes to encode the copy op. Therefore the
+ // worst case here is a one-byte literal followed by a five-byte copy.
+ // That is, 6 bytes of input turn into 7 bytes of "compressed" data.
+ //
+ // This last factor dominates the blowup, so the final estimate is:
+ n = 32 + n + n/6
+ if n > 0xffffffff {
+ return -1
+ }
+ return int(n)
+}
+
+var errClosed = errors.New("snappy: Writer is closed")
+
+// NewWriter returns a new Writer that compresses to w.
+//
+// The Writer returned does not buffer writes. There is no need to Flush or
+// Close such a Writer.
+//
+// Deprecated: the Writer returned is not suitable for many small writes, only
+// for few large writes. Use NewBufferedWriter instead, which is efficient
+// regardless of the frequency and shape of the writes, and remember to Close
+// that Writer when done.
+func NewWriter(w io.Writer) *Writer {
+ return &Writer{
+ w: w,
+ obuf: make([]byte, obufLen),
+ }
+}
+
+// NewBufferedWriter returns a new Writer that compresses to w, using the
+// framing format described at
+// https://github.com/google/snappy/blob/master/framing_format.txt
+//
+// The Writer returned buffers writes. Users must call Close to guarantee all
+// data has been forwarded to the underlying io.Writer. They may also call
+// Flush zero or more times before calling Close.
+func NewBufferedWriter(w io.Writer) *Writer {
+ return &Writer{
+ w: w,
+ ibuf: make([]byte, 0, maxUncompressedChunkLen),
+ obuf: make([]byte, obufLen),
+ }
+}
+
+// Writer is an io.Writer than can write Snappy-compressed bytes.
+type Writer struct {
+ w io.Writer
+ err error
+
+ // ibuf is a buffer for the incoming (uncompressed) bytes.
+ //
+ // Its use is optional. For backwards compatibility, Writers created by the
+ // NewWriter function have ibuf == nil, do not buffer incoming bytes, and
+ // therefore do not need to be Flush'ed or Close'd.
+ ibuf []byte
+
+ // obuf is a buffer for the outgoing (compressed) bytes.
+ obuf []byte
+
+ // wroteStreamHeader is whether we have written the stream header.
+ wroteStreamHeader bool
+}
+
+// Reset discards the writer's state and switches the Snappy writer to write to
+// w. This permits reusing a Writer rather than allocating a new one.
+func (w *Writer) Reset(writer io.Writer) {
+ w.w = writer
+ w.err = nil
+ if w.ibuf != nil {
+ w.ibuf = w.ibuf[:0]
+ }
+ w.wroteStreamHeader = false
+}
+
+// Write satisfies the io.Writer interface.
+func (w *Writer) Write(p []byte) (nRet int, errRet error) {
+ if w.ibuf == nil {
+ // Do not buffer incoming bytes. This does not perform or compress well
+ // if the caller of Writer.Write writes many small slices. This
+ // behavior is therefore deprecated, but still supported for backwards
+ // compatibility with code that doesn't explicitly Flush or Close.
+ return w.write(p)
+ }
+
+ // The remainder of this method is based on bufio.Writer.Write from the
+ // standard library.
+
+ for len(p) > (cap(w.ibuf)-len(w.ibuf)) && w.err == nil {
+ var n int
+ if len(w.ibuf) == 0 {
+ // Large write, empty buffer.
+ // Write directly from p to avoid copy.
+ n, _ = w.write(p)
+ } else {
+ n = copy(w.ibuf[len(w.ibuf):cap(w.ibuf)], p)
+ w.ibuf = w.ibuf[:len(w.ibuf)+n]
+ w.Flush()
+ }
+ nRet += n
+ p = p[n:]
+ }
+ if w.err != nil {
+ return nRet, w.err
+ }
+ n := copy(w.ibuf[len(w.ibuf):cap(w.ibuf)], p)
+ w.ibuf = w.ibuf[:len(w.ibuf)+n]
+ nRet += n
+ return nRet, nil
+}
+
+func (w *Writer) write(p []byte) (nRet int, errRet error) {
+ if w.err != nil {
+ return 0, w.err
+ }
+ for len(p) > 0 {
+ obufStart := len(magicChunk)
+ if !w.wroteStreamHeader {
+ w.wroteStreamHeader = true
+ copy(w.obuf, magicChunk)
+ obufStart = 0
+ }
+
+ var uncompressed []byte
+ if len(p) > maxUncompressedChunkLen {
+ uncompressed, p = p[:maxUncompressedChunkLen], p[maxUncompressedChunkLen:]
+ } else {
+ uncompressed, p = p, nil
+ }
+ checksum := crc(uncompressed)
+
+ // Compress the buffer, discarding the result if the improvement
+ // isn't at least 12.5%.
+ compressed := Encode(w.obuf[obufHeaderLen:], uncompressed)
+ chunkType := uint8(chunkTypeCompressedData)
+ chunkLen := 4 + len(compressed)
+ obufEnd := obufHeaderLen + len(compressed)
+ if len(compressed) >= len(uncompressed)-len(uncompressed)/8 {
+ chunkType = chunkTypeUncompressedData
+ chunkLen = 4 + len(uncompressed)
+ obufEnd = obufHeaderLen
+ }
+
+ // Fill in the per-chunk header that comes before the body.
+ w.obuf[len(magicChunk)+0] = chunkType
+ w.obuf[len(magicChunk)+1] = uint8(chunkLen >> 0)
+ w.obuf[len(magicChunk)+2] = uint8(chunkLen >> 8)
+ w.obuf[len(magicChunk)+3] = uint8(chunkLen >> 16)
+ w.obuf[len(magicChunk)+4] = uint8(checksum >> 0)
+ w.obuf[len(magicChunk)+5] = uint8(checksum >> 8)
+ w.obuf[len(magicChunk)+6] = uint8(checksum >> 16)
+ w.obuf[len(magicChunk)+7] = uint8(checksum >> 24)
+
+ if _, err := w.w.Write(w.obuf[obufStart:obufEnd]); err != nil {
+ w.err = err
+ return nRet, err
+ }
+ if chunkType == chunkTypeUncompressedData {
+ if _, err := w.w.Write(uncompressed); err != nil {
+ w.err = err
+ return nRet, err
+ }
+ }
+ nRet += len(uncompressed)
+ }
+ return nRet, nil
+}
+
+// Flush flushes the Writer to its underlying io.Writer.
+func (w *Writer) Flush() error {
+ if w.err != nil {
+ return w.err
+ }
+ if len(w.ibuf) == 0 {
+ return nil
+ }
+ w.write(w.ibuf)
+ w.ibuf = w.ibuf[:0]
+ return w.err
+}
+
+// Close calls Flush and then closes the Writer.
+func (w *Writer) Close() error {
+ w.Flush()
+ ret := w.err
+ if w.err == nil {
+ w.err = errClosed
+ }
+ return ret
+}
diff --git a/Godeps/_workspace/src/github.com/golang/snappy/snappy.go b/vendor/github.com/golang/snappy/snappy.go
similarity index 84%
rename from Godeps/_workspace/src/github.com/golang/snappy/snappy.go
rename to vendor/github.com/golang/snappy/snappy.go
index e98653acff..ef1e33e00b 100644
--- a/Godeps/_workspace/src/github.com/golang/snappy/snappy.go
+++ b/vendor/github.com/golang/snappy/snappy.go
@@ -49,6 +49,15 @@ const (
// https://github.com/google/snappy/blob/master/framing_format.txt says
// that "the uncompressed data in a chunk must be no longer than 65536 bytes".
maxUncompressedChunkLen = 65536
+
+ // maxEncodedLenOfMaxUncompressedChunkLen equals
+ // MaxEncodedLen(maxUncompressedChunkLen), but is hard coded to be a const
+ // instead of a variable, so that obufLen can also be a const. Their
+ // equivalence is confirmed by TestMaxEncodedLenOfMaxUncompressedChunkLen.
+ maxEncodedLenOfMaxUncompressedChunkLen = 76490
+
+ obufHeaderLen = len(magicChunk) + checksumSize + chunkHeaderSize
+ obufLen = obufHeaderLen + maxEncodedLenOfMaxUncompressedChunkLen
)
const (
diff --git a/Godeps/_workspace/src/github.com/google/go-github/LICENSE b/vendor/github.com/google/go-github/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/LICENSE
rename to vendor/github.com/google/go-github/LICENSE
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/activity.go b/vendor/github.com/google/go-github/github/activity.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/activity.go
rename to vendor/github.com/google/go-github/github/activity.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/activity_events.go b/vendor/github.com/google/go-github/github/activity_events.go
similarity index 74%
rename from Godeps/_workspace/src/github.com/google/go-github/github/activity_events.go
rename to vendor/github.com/google/go-github/github/activity_events.go
index 2a40d3e00b..0894f0fa25 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/activity_events.go
+++ b/vendor/github.com/google/go-github/github/activity_events.go
@@ -40,66 +40,6 @@ func (e *Event) Payload() (payload interface{}) {
return payload
}
-// PushEvent represents a git push to a GitHub repository.
-//
-// GitHub API docs: http://developer.github.com/v3/activity/events/types/#pushevent
-type PushEvent struct {
- PushID *int `json:"push_id,omitempty"`
- Head *string `json:"head,omitempty"`
- Ref *string `json:"ref,omitempty"`
- Size *int `json:"size,omitempty"`
- Commits []PushEventCommit `json:"commits,omitempty"`
- Repo *Repository `json:"repository,omitempty"`
-}
-
-func (p PushEvent) String() string {
- return Stringify(p)
-}
-
-// PushEventCommit represents a git commit in a GitHub PushEvent.
-type PushEventCommit struct {
- SHA *string `json:"sha,omitempty"`
- Message *string `json:"message,omitempty"`
- Author *CommitAuthor `json:"author,omitempty"`
- URL *string `json:"url,omitempty"`
- Distinct *bool `json:"distinct,omitempty"`
- Added []string `json:"added,omitempty"`
- Removed []string `json:"removed,omitempty"`
- Modified []string `json:"modified,omitempty"`
-}
-
-func (p PushEventCommit) String() string {
- return Stringify(p)
-}
-
-//PullRequestEvent represents the payload delivered by PullRequestEvent webhook
-type PullRequestEvent struct {
- Action *string `json:"action,omitempty"`
- Number *int `json:"number,omitempty"`
- PullRequest *PullRequest `json:"pull_request,omitempty"`
- Repo *Repository `json:"repository,omitempty"`
- Sender *User `json:"sender,omitempty"`
-}
-
-// IssueActivityEvent represents the payload delivered by Issue webhook
-type IssueActivityEvent struct {
- Action *string `json:"action,omitempty"`
- Issue *Issue `json:"issue,omitempty"`
- Repo *Repository `json:"repository,omitempty"`
- Sender *User `json:"sender,omitempty"`
-}
-
-// IssueCommentEvent represents the payload delivered by IssueComment webhook
-//
-// This webhook also gets fired for comments on pull requests
-type IssueCommentEvent struct {
- Action *string `json:"action,omitempty"`
- Issue *Issue `json:"issue,omitempty"`
- Comment *IssueComment `json:"comment,omitempty"`
- Repo *Repository `json:"repository,omitempty"`
- Sender *User `json:"sender,omitempty"`
-}
-
// ListEvents drinks from the firehose of all public events across GitHub.
//
// GitHub API docs: http://developer.github.com/v3/activity/events/#list-public-events
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/activity_notifications.go b/vendor/github.com/google/go-github/github/activity_notifications.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/activity_notifications.go
rename to vendor/github.com/google/go-github/github/activity_notifications.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/activity_star.go b/vendor/github.com/google/go-github/github/activity_star.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/activity_star.go
rename to vendor/github.com/google/go-github/github/activity_star.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/activity_watching.go b/vendor/github.com/google/go-github/github/activity_watching.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/activity_watching.go
rename to vendor/github.com/google/go-github/github/activity_watching.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/doc.go b/vendor/github.com/google/go-github/github/doc.go
similarity index 92%
rename from Godeps/_workspace/src/github.com/google/go-github/github/doc.go
rename to vendor/github.com/google/go-github/github/doc.go
index e2066f1f48..0d32d498f9 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/doc.go
+++ b/vendor/github.com/google/go-github/github/doc.go
@@ -59,12 +59,19 @@ limited to 60 requests per hour, while authenticated clients can make up to
that are not issued on behalf of a user, use the
UnauthenticatedRateLimitedTransport.
-The Rate field on a client tracks the rate limit information based on the most
+The Rate method on a client returns the rate limit information based on the most
recent API call. This is updated on every call, but may be out of date if it's
been some time since the last API call and other clients have made subsequent
-requests since then. You can always call RateLimit() directly to get the most
+requests since then. You can always call RateLimits() directly to get the most
up-to-date rate limit data for the client.
+To detect an API rate limit error, you can check if its type is *github.RateLimitError:
+
+ repos, _, err := client.Repositories.List("", nil)
+ if _, ok := err.(*github.RateLimitError); ok {
+ log.Println("hit rate limit")
+ }
+
Learn more about GitHub rate limiting at
http://developer.github.com/v3/#rate-limiting.
diff --git a/vendor/github.com/google/go-github/github/event_types.go b/vendor/github.com/google/go-github/github/event_types.go
new file mode 100644
index 0000000000..e2c37ca42c
--- /dev/null
+++ b/vendor/github.com/google/go-github/github/event_types.go
@@ -0,0 +1,439 @@
+// Copyright 2016 The go-github AUTHORS. All rights reserved.
+//
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// These event types are shared between the Events API and used as Webhook payloads.
+
+package github
+
+// CommitCommentEvent is triggered when a commit comment is created.
+// The Webhook event name is "commit_comment".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#commitcommentevent
+type CommitCommentEvent struct {
+ Comment *RepositoryComment `json:"comment,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Action *string `json:"action,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// CreateEvent represents a created repository, branch, or tag.
+// The Webhook event name is "create".
+//
+// Note: webhooks will not receive this event for created repositories.
+// Additionally, webhooks will not receive this event for tags if more
+// than three tags are pushed at once.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#createevent
+type CreateEvent struct {
+ Ref *string `json:"ref,omitempty"`
+ // RefType is the object that was created. Possible values are: "repository", "branch", "tag".
+ RefType *string `json:"ref_type,omitempty"`
+ MasterBranch *string `json:"master_branch,omitempty"`
+ Description *string `json:"description,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ PusherType *string `json:"pusher_type,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// DeleteEvent represents a deleted branch or tag.
+// The Webhook event name is "delete".
+//
+// Note: webhooks will not receive this event for tags if more than three tags
+// are deleted at once.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#deleteevent
+type DeleteEvent struct {
+ Ref *string `json:"ref,omitempty"`
+ // RefType is the object that was deleted. Possible values are: "branch", "tag".
+ RefType *string `json:"ref_type,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ PusherType *string `json:"pusher_type,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// DeploymentEvent represents a deployment.
+// The Webhook event name is "deployment".
+//
+// Events of this type are not visible in timelines, they are only used to trigger hooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#deploymentevent
+type DeploymentEvent struct {
+ Deployment *Deployment `json:"deployment,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Sender *User `json:"sender,omitempty"`
+}
+
+// DeploymentStatusEvent represents a deployment status.
+// The Webhook event name is "deployment_status".
+//
+// Events of this type are not visible in timelines, they are only used to trigger hooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#deploymentstatusevent
+type DeploymentStatusEvent struct {
+ Deployment *Deployment `json:"deployment,omitempty"`
+ DeploymentStatus *DeploymentStatus `json:"deployment_status,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Sender *User `json:"sender,omitempty"`
+}
+
+// ForkEvent is triggered when a user forks a repository.
+// The Webhook event name is "fork".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#forkevent
+type ForkEvent struct {
+ // Forkee is the created repository.
+ Forkee *Repository `json:"forkee,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// Page represents a single Wiki page.
+type Page struct {
+ PageName *string `json:"page_name,omitempty"`
+ Title *string `json:"title,omitempty"`
+ Summary *string `json:"summary,omitempty"`
+ Action *string `json:"action,omitempty"`
+ SHA *string `json:"sha,omitempty"`
+ HTMLURL *string `json:"html_url,omitempty"`
+}
+
+// GollumEvent is triggered when a Wiki page is created or updated.
+// The Webhook event name is "gollum".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#gollumevent
+type GollumEvent struct {
+ Pages []*Page `json:"pages,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// DEPRECATED: IssueActivityEvent represents the payload delivered by Issue webhook
+// Use IssuesEvent instead.
+type IssueActivityEvent struct {
+ Action *string `json:"action,omitempty"`
+ Issue *Issue `json:"issue,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// IssueCommentEvent is triggered when an issue comment is created on an issue
+// or pull request.
+// The Webhook event name is "issue_comment".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#issuecommentevent
+type IssueCommentEvent struct {
+ // Action is the action that was performed on the comment.
+ // Possible value is: "created".
+ Action *string `json:"action,omitempty"`
+ Issue *Issue `json:"issue,omitempty"`
+ Comment *IssueComment `json:"comment,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// IssuesEvent is triggered when an issue is assigned, unassigned, labeled,
+// unlabeled, opened, closed, or reopened.
+// The Webhook event name is "issues".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#issuesevent
+type IssuesEvent struct {
+ // Action is the action that was performed. Possible values are: "assigned",
+ // "unassigned", "labeled", "unlabeled", "opened", "closed", "reopened".
+ Action *string `json:"action,omitempty"`
+ Issue *Issue `json:"issue,omitempty"`
+ Assignee *User `json:"assignee,omitempty"`
+ Label *Label `json:"label,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// MemberEvent is triggered when a user is added as a collaborator to a repository.
+// The Webhook event name is "member".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#memberevent
+type MemberEvent struct {
+ // Action is the action that was performed. Possible value is: "added".
+ Action *string `json:"action,omitempty"`
+ Member *User `json:"member,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// MembershipEvent is triggered when a user is added or removed from a team.
+// The Webhook event name is "membership".
+//
+// Events of this type are not visible in timelines, they are only used to
+// trigger organization webhooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#membershipevent
+type MembershipEvent struct {
+ // Action is the action that was performed. Possible values are: "added", "removed".
+ Action *string `json:"action,omitempty"`
+ // Scope is the scope of the membership. Possible value is: "team".
+ Scope *string `json:"scope,omitempty"`
+ Member *User `json:"member,omitempty"`
+ Team *Team `json:"team,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Org *Organization `json:"organization,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// PageBuildEvent represents an attempted build of a GitHub Pages site, whether
+// successful or not.
+// The Webhook event name is "page_build".
+//
+// This event is triggered on push to a GitHub Pages enabled branch (gh-pages
+// for project pages, master for user and organization pages).
+//
+// Events of this type are not visible in timelines, they are only used to trigger hooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#pagebuildevent
+type PageBuildEvent struct {
+ Build *PagesBuild `json:"build,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ ID *string `json:"id,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// PublicEvent is triggered when a private repository is open sourced.
+// According to GitHub: "Without a doubt: the best GitHub event."
+// The Webhook event name is "public".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#publicevent
+type PublicEvent struct {
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// PullRequestEvent is triggered when a pull request is assigned, unassigned,
+// labeled, unlabeled, opened, closed, reopened, or synchronized.
+// The Webhook event name is "pull_request".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#pullrequestevent
+type PullRequestEvent struct {
+ // Action is the action that was performed. Possible values are: "assigned",
+ // "unassigned", "labeled", "unlabeled", "opened", "closed", or "reopened",
+ // "synchronize". If the action is "closed" and the merged key is false, the
+ // pull request was closed with unmerged commits. If the action is "closed" and
+ // the merged key is true, the pull request was merged.
+ Action *string `json:"action,omitempty"`
+ Number *int `json:"number,omitempty"`
+ PullRequest *PullRequest `json:"pull_request,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// PullRequestReviewCommentEvent is triggered when a comment is created on a
+// portion of the unified diff of a pull request.
+// The Webhook event name is "pull_request_review_comment".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#pullrequestreviewcommentevent
+type PullRequestReviewCommentEvent struct {
+ // Action is the action that was performed on the comment.
+ // Possible value is: "created".
+ Action *string `json:"action,omitempty"`
+ PullRequest *PullRequest `json:"pull_request,omitempty"`
+ Comment *PullRequestComment `json:"comment,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// PushEvent represents a git push to a GitHub repository.
+//
+// GitHub API docs: http://developer.github.com/v3/activity/events/types/#pushevent
+type PushEvent struct {
+ PushID *int `json:"push_id,omitempty"`
+ Head *string `json:"head,omitempty"`
+ Ref *string `json:"ref,omitempty"`
+ Size *int `json:"size,omitempty"`
+ Commits []PushEventCommit `json:"commits,omitempty"`
+ Repo *PushEventRepository `json:"repository,omitempty"`
+ Before *string `json:"before,omitempty"`
+ DistinctSize *int `json:"distinct_size,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ After *string `json:"after,omitempty"`
+ Created *bool `json:"created,omitempty"`
+ Deleted *bool `json:"deleted,omitempty"`
+ Forced *bool `json:"forced,omitempty"`
+ BaseRef *string `json:"base_ref,omitempty"`
+ Compare *string `json:"compare,omitempty"`
+ HeadCommit *PushEventCommit `json:"head_commit,omitempty"`
+ Pusher *User `json:"pusher,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+func (p PushEvent) String() string {
+ return Stringify(p)
+}
+
+// PushEventCommit represents a git commit in a GitHub PushEvent.
+type PushEventCommit struct {
+ SHA *string `json:"sha,omitempty"`
+ Message *string `json:"message,omitempty"`
+ Author *CommitAuthor `json:"author,omitempty"`
+ URL *string `json:"url,omitempty"`
+ Distinct *bool `json:"distinct,omitempty"`
+ Added []string `json:"added,omitempty"`
+ Removed []string `json:"removed,omitempty"`
+ Modified []string `json:"modified,omitempty"`
+}
+
+func (p PushEventCommit) String() string {
+ return Stringify(p)
+}
+
+// PushEventRepository represents the repo object in a PushEvent payload
+type PushEventRepository struct {
+ ID *int `json:"id,omitempty"`
+ Name *string `json:"name,omitempty"`
+ FullName *string `json:"full_name,omitempty"`
+ Owner *PushEventRepoOwner `json:"owner,omitempty"`
+ Private *bool `json:"private,omitempty"`
+ Description *string `json:"description,omitempty"`
+ Fork *bool `json:"fork,omitempty"`
+ CreatedAt *Timestamp `json:"created_at,omitempty"`
+ PushedAt *Timestamp `json:"pushed_at,omitempty"`
+ UpdatedAt *Timestamp `json:"updated_at,omitempty"`
+ Homepage *string `json:"homepage,omitempty"`
+ Size *int `json:"size,omitempty"`
+ StargazersCount *int `json:"stargazers_count,omitempty"`
+ WatchersCount *int `json:"watchers_count,omitempty"`
+ Language *string `json:"language,omitempty"`
+ HasIssues *bool `json:"has_issues,omitempty"`
+ HasDownloads *bool `json:"has_downloads,omitempty"`
+ HasWiki *bool `json:"has_wiki,omitempty"`
+ HasPages *bool `json:"has_pages,omitempty"`
+ ForksCount *int `json:"forks_count,omitempty"`
+ OpenIssuesCount *int `json:"open_issues_count,omitempty"`
+ DefaultBranch *string `json:"default_branch,omitempty"`
+ MasterBranch *string `json:"master_branch,omitempty"`
+ Organization *string `json:"organization,omitempty"`
+}
+
+// PushEventRepoOwner is a basic reporesntation of user/org in a PushEvent payload
+type PushEventRepoOwner struct {
+ Name *string `json:"name,omitempty"`
+ Email *string `json:"email,omitempty"`
+}
+
+// ReleaseEvent is triggered when a release is published.
+// The Webhook event name is "release".
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#releaseevent
+type ReleaseEvent struct {
+ // Action is the action that was performed. Possible value is: "published".
+ Action *string `json:"action,omitempty"`
+ Release *RepositoryRelease `json:"release,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// RepositoryEvent is triggered when a repository is created.
+// The Webhook event name is "repository".
+//
+// Events of this type are not visible in timelines, they are only used to
+// trigger organization webhooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#repositoryevent
+type RepositoryEvent struct {
+ // Action is the action that was performed. Possible value is: "created".
+ Action *string `json:"action,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Org *Organization `json:"organization,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// StatusEvent is triggered when the status of a Git commit changes.
+// The Webhook event name is "status".
+//
+// Events of this type are not visible in timelines, they are only used to
+// trigger hooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#statusevent
+type StatusEvent struct {
+ SHA *string `json:"sha,omitempty"`
+ // State is the new state. Possible values are: "pending", "success", "failure", "error".
+ State *string `json:"state,omitempty"`
+ Description *string `json:"description,omitempty"`
+ TargetURL *string `json:"target_url,omitempty"`
+ Branches []*Branch `json:"branches,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ ID *int `json:"id,omitempty"`
+ Name *string `json:"name,omitempty"`
+ Context *string `json:"context,omitempty"`
+ Commit *PushEventCommit `json:"commit,omitempty"`
+ CreatedAt *Timestamp `json:"created_at,omitempty"`
+ UpdatedAt *Timestamp `json:"updated_at,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// TeamAddEvent is triggered when a repository is added to a team.
+// The Webhook event name is "team_add".
+//
+// Events of this type are not visible in timelines. These events are only used
+// to trigger hooks.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#teamaddevent
+type TeamAddEvent struct {
+ Team *Team `json:"team,omitempty"`
+ Repo *Repository `json:"repository,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Org *Organization `json:"organization,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
+
+// WatchEvent is related to starring a repository, not watching. See this API
+// blog post for an explanation: https://developer.github.com/changes/2012-09-05-watcher-api/
+//
+// The event’s actor is the user who starred a repository, and the event’s
+// repository is the repository that was starred.
+//
+// GitHub docs: https://developer.github.com/v3/activity/events/types/#watchevent
+type WatchEvent struct {
+ // Action is the action that was performed. Possible value is: "started".
+ Action *string `json:"action,omitempty"`
+
+ // The following fields are only populated by Webhook events.
+ Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
+}
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/gists.go b/vendor/github.com/google/go-github/github/gists.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/gists.go
rename to vendor/github.com/google/go-github/github/gists.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/gists_comments.go b/vendor/github.com/google/go-github/github/gists_comments.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/gists_comments.go
rename to vendor/github.com/google/go-github/github/gists_comments.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/git.go b/vendor/github.com/google/go-github/github/git.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/git.go
rename to vendor/github.com/google/go-github/github/git.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/git_blobs.go b/vendor/github.com/google/go-github/github/git_blobs.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/git_blobs.go
rename to vendor/github.com/google/go-github/github/git_blobs.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/git_commits.go b/vendor/github.com/google/go-github/github/git_commits.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/git_commits.go
rename to vendor/github.com/google/go-github/github/git_commits.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/git_refs.go b/vendor/github.com/google/go-github/github/git_refs.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/git_refs.go
rename to vendor/github.com/google/go-github/github/git_refs.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/git_tags.go b/vendor/github.com/google/go-github/github/git_tags.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/git_tags.go
rename to vendor/github.com/google/go-github/github/git_tags.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/git_trees.go b/vendor/github.com/google/go-github/github/git_trees.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/git_trees.go
rename to vendor/github.com/google/go-github/github/git_trees.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/github.go b/vendor/github.com/google/go-github/github/github.go
similarity index 90%
rename from Godeps/_workspace/src/github.com/google/go-github/github/github.go
rename to vendor/github.com/google/go-github/github/github.go
index 344cbff1a3..640aec788b 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/github.go
+++ b/vendor/github.com/google/go-github/github/github.go
@@ -23,6 +23,11 @@ import (
"github.com/google/go-querystring/query"
)
+const (
+ // StatusUnprocessableEntity is the status code returned when sending a request with invalid fields.
+ StatusUnprocessableEntity = 422
+)
+
const (
libraryVersion = "0.1"
defaultBaseURL = "https://api.github.com/"
@@ -51,6 +56,9 @@ const (
// https://developer.github.com/changes/2015-11-11-protected-branches-api/
mediaTypeProtectedBranchesPreview = "application/vnd.github.loki-preview+json"
+
+ // https://developer.github.com/changes/2016-02-11-issue-locking-api/
+ mediaTypeIssueLockingPreview = "application/vnd.github.the-key-preview+json"
)
// A Client manages communication with the GitHub API.
@@ -70,7 +78,7 @@ type Client struct {
UserAgent string
rateMu sync.Mutex
- rate Rate
+ rate Rate // Rate limit for the client as determined by the most recent API call.
// Services used for talking to different parts of the GitHub API.
Activity *ActivityService
@@ -231,12 +239,12 @@ type Response struct {
func newResponse(r *http.Response) *Response {
response := &Response{Response: r}
response.populatePageValues()
- response.populateRate()
+ response.Rate = parseRate(r)
return response
}
// populatePageValues parses the HTTP Link response headers and populates the
-// various pagination link values in the Reponse.
+// various pagination link values in the Response.
func (r *Response) populatePageValues() {
if links, ok := r.Response.Header["Link"]; ok && len(links) > 0 {
for _, link := range strings.Split(links[0], ",") {
@@ -279,19 +287,21 @@ func (r *Response) populatePageValues() {
}
}
-// populateRate parses the rate related headers and populates the response Rate.
-func (r *Response) populateRate() {
+// parseRate parses the rate related headers.
+func parseRate(r *http.Response) Rate {
+ var rate Rate
if limit := r.Header.Get(headerRateLimit); limit != "" {
- r.Rate.Limit, _ = strconv.Atoi(limit)
+ rate.Limit, _ = strconv.Atoi(limit)
}
if remaining := r.Header.Get(headerRateRemaining); remaining != "" {
- r.Rate.Remaining, _ = strconv.Atoi(remaining)
+ rate.Remaining, _ = strconv.Atoi(remaining)
}
if reset := r.Header.Get(headerRateReset); reset != "" {
if v, _ := strconv.ParseInt(reset, 10, 64); v != 0 {
- r.Rate.Reset = Timestamp{time.Unix(v, 0)}
+ rate.Reset = Timestamp{time.Unix(v, 0)}
}
}
+ return rate
}
// Rate specifies the current rate limit for the client as determined by the
@@ -368,6 +378,20 @@ type TwoFactorAuthError ErrorResponse
func (r *TwoFactorAuthError) Error() string { return (*ErrorResponse)(r).Error() }
+// RateLimitError occurs when GitHub returns 403 Forbidden response with a rate limit
+// remaining value of 0, and error message starts with "API rate limit exceeded for ".
+type RateLimitError struct {
+ Rate Rate // Rate specifies last known rate limit for the client
+ Response *http.Response // HTTP response that caused this error
+ Message string `json:"message"` // error message
+}
+
+func (r *RateLimitError) Error() string {
+ return fmt.Sprintf("%v %v: %d %v; rate reset in %v",
+ r.Response.Request.Method, sanitizeURL(r.Response.Request.URL),
+ r.Response.StatusCode, r.Message, r.Rate.Reset.Time.Sub(time.Now()))
+}
+
// sanitizeURL redacts the client_secret parameter from the URL which may be
// exposed to the user, specifically in the ErrorResponse error message.
func sanitizeURL(uri *url.URL) *url.URL {
@@ -413,6 +437,9 @@ func (e *Error) Error() string {
// the 200 range. API error responses are expected to have either no response
// body, or a JSON response body that maps to ErrorResponse. Any other
// response body will be silently ignored.
+//
+// The error type will be *RateLimitError for rate limit exceeded errors,
+// and *TwoFactorAuthError for two-factor authentication errors.
func CheckResponse(r *http.Response) error {
if c := r.StatusCode; 200 <= c && c <= 299 {
return nil
@@ -422,10 +449,18 @@ func CheckResponse(r *http.Response) error {
if err == nil && data != nil {
json.Unmarshal(data, errorResponse)
}
- if r.StatusCode == http.StatusUnauthorized && strings.HasPrefix(r.Header.Get(headerOTP), "required") {
+ switch {
+ case r.StatusCode == http.StatusUnauthorized && strings.HasPrefix(r.Header.Get(headerOTP), "required"):
return (*TwoFactorAuthError)(errorResponse)
+ case r.StatusCode == http.StatusForbidden && r.Header.Get(headerRateRemaining) == "0" && strings.HasPrefix(errorResponse.Message, "API rate limit exceeded for "):
+ return &RateLimitError{
+ Rate: parseRate(r),
+ Response: errorResponse.Response,
+ Message: errorResponse.Message,
+ }
+ default:
+ return errorResponse
}
- return errorResponse
}
// parseBoolResponse determines the boolean result from a GitHub API response.
@@ -482,7 +517,7 @@ func (r RateLimits) String() string {
return Stringify(r)
}
-// RateLimit is deprecated. Use RateLimits instead.
+// Deprecated: RateLimit is deprecated, use RateLimits instead.
func (c *Client) RateLimit() (*Rate, *Response, error) {
limits, resp, err := c.RateLimits()
if limits == nil {
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/gitignore.go b/vendor/github.com/google/go-github/github/gitignore.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/gitignore.go
rename to vendor/github.com/google/go-github/github/gitignore.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/issues.go b/vendor/github.com/google/go-github/github/issues.go
similarity index 88%
rename from Godeps/_workspace/src/github.com/google/go-github/github/issues.go
rename to vendor/github.com/google/go-github/github/issues.go
index a60cede90d..58a3a69816 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/issues.go
+++ b/vendor/github.com/google/go-github/github/issues.go
@@ -35,6 +35,7 @@ type Issue struct {
HTMLURL *string `json:"html_url,omitempty"`
Milestone *Milestone `json:"milestone,omitempty"`
PullRequestLinks *PullRequestLinks `json:"pull_request,omitempty"`
+ Repository *Repository `json:"repository,omitempty"`
// TextMatches is only populated from search results that request text matches
// See: search.go and https://developer.github.com/v3/search/#text-match-metadata
@@ -259,3 +260,35 @@ func (s *IssuesService) Edit(owner string, repo string, number int, issue *Issue
return i, resp, err
}
+
+// Lock an issue's conversation.
+//
+// GitHub API docs: https://developer.github.com/v3/issues/#lock-an-issue
+func (s *IssuesService) Lock(owner string, repo string, number int) (*Response, error) {
+ u := fmt.Sprintf("repos/%v/%v/issues/%d/lock", owner, repo, number)
+ req, err := s.client.NewRequest("PUT", u, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ // TODO: remove custom Accept header when this API fully launches.
+ req.Header.Set("Accept", mediaTypeIssueLockingPreview)
+
+ return s.client.Do(req, nil)
+}
+
+// Unlock an issue's conversation.
+//
+// GitHub API docs: https://developer.github.com/v3/issues/#unlock-an-issue
+func (s *IssuesService) Unlock(owner string, repo string, number int) (*Response, error) {
+ u := fmt.Sprintf("repos/%v/%v/issues/%d/lock", owner, repo, number)
+ req, err := s.client.NewRequest("DELETE", u, nil)
+ if err != nil {
+ return nil, err
+ }
+
+ // TODO: remove custom Accept header when this API fully launches.
+ req.Header.Set("Accept", mediaTypeIssueLockingPreview)
+
+ return s.client.Do(req, nil)
+}
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/issues_assignees.go b/vendor/github.com/google/go-github/github/issues_assignees.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/issues_assignees.go
rename to vendor/github.com/google/go-github/github/issues_assignees.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/issues_comments.go b/vendor/github.com/google/go-github/github/issues_comments.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/issues_comments.go
rename to vendor/github.com/google/go-github/github/issues_comments.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/issues_events.go b/vendor/github.com/google/go-github/github/issues_events.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/issues_events.go
rename to vendor/github.com/google/go-github/github/issues_events.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/issues_labels.go b/vendor/github.com/google/go-github/github/issues_labels.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/issues_labels.go
rename to vendor/github.com/google/go-github/github/issues_labels.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/issues_milestones.go b/vendor/github.com/google/go-github/github/issues_milestones.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/issues_milestones.go
rename to vendor/github.com/google/go-github/github/issues_milestones.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/licenses.go b/vendor/github.com/google/go-github/github/licenses.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/licenses.go
rename to vendor/github.com/google/go-github/github/licenses.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/misc.go b/vendor/github.com/google/go-github/github/misc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/misc.go
rename to vendor/github.com/google/go-github/github/misc.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/orgs.go b/vendor/github.com/google/go-github/github/orgs.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/orgs.go
rename to vendor/github.com/google/go-github/github/orgs.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/orgs_hooks.go b/vendor/github.com/google/go-github/github/orgs_hooks.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/orgs_hooks.go
rename to vendor/github.com/google/go-github/github/orgs_hooks.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/orgs_members.go b/vendor/github.com/google/go-github/github/orgs_members.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/orgs_members.go
rename to vendor/github.com/google/go-github/github/orgs_members.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/orgs_teams.go b/vendor/github.com/google/go-github/github/orgs_teams.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/google/go-github/github/orgs_teams.go
rename to vendor/github.com/google/go-github/github/orgs_teams.go
index 858c545102..ddcaa24f46 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/orgs_teams.go
+++ b/vendor/github.com/google/go-github/github/orgs_teams.go
@@ -10,10 +10,11 @@ import "fmt"
// Team represents a team within a GitHub organization. Teams are used to
// manage access to an organization's repositories.
type Team struct {
- ID *int `json:"id,omitempty"`
- Name *string `json:"name,omitempty"`
- URL *string `json:"url,omitempty"`
- Slug *string `json:"slug,omitempty"`
+ ID *int `json:"id,omitempty"`
+ Name *string `json:"name,omitempty"`
+ Description *string `json:"description,omitempty"`
+ URL *string `json:"url,omitempty"`
+ Slug *string `json:"slug,omitempty"`
// Permission is deprecated when creating or editing a team in an org
// using the new GitHub permission model. It no longer identifies the
@@ -29,9 +30,11 @@ type Team struct {
// Default is "secret".
Privacy *string `json:"privacy,omitempty"`
- MembersCount *int `json:"members_count,omitempty"`
- ReposCount *int `json:"repos_count,omitempty"`
- Organization *Organization `json:"organization,omitempty"`
+ MembersCount *int `json:"members_count,omitempty"`
+ ReposCount *int `json:"repos_count,omitempty"`
+ Organization *Organization `json:"organization,omitempty"`
+ MembersURL *string `json:"members_url,omitempty"`
+ RepositoriesURL *string `json:"repositories_url,omitempty"`
}
func (t Team) String() string {
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/pulls.go b/vendor/github.com/google/go-github/github/pulls.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/pulls.go
rename to vendor/github.com/google/go-github/github/pulls.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/pulls_comments.go b/vendor/github.com/google/go-github/github/pulls_comments.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/google/go-github/github/pulls_comments.go
rename to vendor/github.com/google/go-github/github/pulls_comments.go
index f165d5fc64..10d2a64906 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/pulls_comments.go
+++ b/vendor/github.com/google/go-github/github/pulls_comments.go
@@ -23,6 +23,9 @@ type PullRequestComment struct {
User *User `json:"user,omitempty"`
CreatedAt *time.Time `json:"created_at,omitempty"`
UpdatedAt *time.Time `json:"updated_at,omitempty"`
+ URL *string `json:"url,omitempty"`
+ HTMLURL *string `json:"html_url,omitempty"`
+ PullRequestURL *string `json:"pull_request_url,omitempty"`
}
func (p PullRequestComment) String() string {
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos.go b/vendor/github.com/google/go-github/github/repos.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos.go
rename to vendor/github.com/google/go-github/github/repos.go
index 0f8353f615..cba160ce66 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos.go
+++ b/vendor/github.com/google/go-github/github/repos.go
@@ -466,9 +466,9 @@ type RequiredStatusChecks struct {
// off
// non_admins
// everyone
- EnforcementLevel *string `json:"enforcement_level,omitempty"`
+ EnforcementLevel *string `json:"enforcement_level,omitempty"`
// The list of status checks which are required
- Contexts *[]string `json:"contexts,omitempty"`
+ Contexts *[]string `json:"contexts,omitempty"`
}
// ListBranches lists branches for the specified repository.
@@ -486,6 +486,8 @@ func (s *RepositoriesService) ListBranches(owner string, repo string, opt *ListO
return nil, nil, err
}
+ req.Header.Set("Accept", mediaTypeProtectedBranchesPreview)
+
branches := new([]Branch)
resp, err := s.client.Do(req, branches)
if err != nil {
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_collaborators.go b/vendor/github.com/google/go-github/github/repos_collaborators.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_collaborators.go
rename to vendor/github.com/google/go-github/github/repos_collaborators.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_comments.go b/vendor/github.com/google/go-github/github/repos_comments.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_comments.go
rename to vendor/github.com/google/go-github/github/repos_comments.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_commits.go b/vendor/github.com/google/go-github/github/repos_commits.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_commits.go
rename to vendor/github.com/google/go-github/github/repos_commits.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_contents.go b/vendor/github.com/google/go-github/github/repos_contents.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_contents.go
rename to vendor/github.com/google/go-github/github/repos_contents.go
index 80776f2dac..6202f19cd0 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos_contents.go
+++ b/vendor/github.com/google/go-github/github/repos_contents.go
@@ -43,7 +43,7 @@ type RepositoryContentResponse struct {
// RepositoryContentFileOptions specifies optional parameters for CreateFile, UpdateFile, and DeleteFile.
type RepositoryContentFileOptions struct {
Message *string `json:"message,omitempty"`
- Content []byte `json:"content,omitempty"`
+ Content []byte `json:"content,omitempty"` // unencoded
SHA *string `json:"sha,omitempty"`
Branch *string `json:"branch,omitempty"`
Author *CommitAuthor `json:"author,omitempty"`
@@ -127,9 +127,11 @@ func (s *RepositoriesService) DownloadContents(owner, repo, filepath string, opt
// value and the other will be nil.
//
// GitHub API docs: http://developer.github.com/v3/repos/contents/#get-contents
-func (s *RepositoriesService) GetContents(owner, repo, path string, opt *RepositoryContentGetOptions) (fileContent *RepositoryContent,
- directoryContent []*RepositoryContent, resp *Response, err error) {
- u := fmt.Sprintf("repos/%s/%s/contents/%s", owner, repo, path)
+func (s *RepositoriesService) GetContents(owner, repo, path string, opt *RepositoryContentGetOptions) (fileContent *RepositoryContent, directoryContent []*RepositoryContent, resp *Response, err error) {
+ // escape characters not allowed in URL path. This actually escapes a
+ // lot more, but seems to be harmless.
+ escapedPath := url.QueryEscape(path)
+ u := fmt.Sprintf("repos/%s/%s/contents/%s", owner, repo, escapedPath)
u, err = addOptions(u, opt)
if err != nil {
return nil, nil, nil, err
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_deployments.go b/vendor/github.com/google/go-github/github/repos_deployments.go
similarity index 77%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_deployments.go
rename to vendor/github.com/google/go-github/github/repos_deployments.go
index 77c79491d8..fea43de9ea 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos_deployments.go
+++ b/vendor/github.com/google/go-github/github/repos_deployments.go
@@ -12,17 +12,19 @@ import (
// Deployment represents a deployment in a repo
type Deployment struct {
- URL *string `json:"url,omitempty"`
- ID *int `json:"id,omitempty"`
- SHA *string `json:"sha,omitempty"`
- Ref *string `json:"ref,omitempty"`
- Task *string `json:"task,omitempty"`
- Payload json.RawMessage `json:"payload,omitempty"`
- Environment *string `json:"environment,omitempty"`
- Description *string `json:"description,omitempty"`
- Creator *User `json:"creator,omitempty"`
- CreatedAt *Timestamp `json:"created_at,omitempty"`
- UpdatedAt *Timestamp `json:"pushed_at,omitempty"`
+ URL *string `json:"url,omitempty"`
+ ID *int `json:"id,omitempty"`
+ SHA *string `json:"sha,omitempty"`
+ Ref *string `json:"ref,omitempty"`
+ Task *string `json:"task,omitempty"`
+ Payload json.RawMessage `json:"payload,omitempty"`
+ Environment *string `json:"environment,omitempty"`
+ Description *string `json:"description,omitempty"`
+ Creator *User `json:"creator,omitempty"`
+ CreatedAt *Timestamp `json:"created_at,omitempty"`
+ UpdatedAt *Timestamp `json:"pushed_at,omitempty"`
+ StatusesURL *string `json:"statuses_url,omitempty"`
+ RepositoryURL *string `json:"repository_url,omitempty"`
}
// DeploymentRequest represents a deployment request
@@ -101,13 +103,15 @@ func (s *RepositoriesService) CreateDeployment(owner, repo string, request *Depl
// DeploymentStatus represents the status of a
// particular deployment.
type DeploymentStatus struct {
- ID *int `json:"id,omitempty"`
- State *string `json:"state,omitempty"`
- Creator *User `json:"creator,omitempty"`
- Description *string `json:"description,omitempty"`
- TargetURL *string `json:"target_url,omitempty"`
- CreatedAt *Timestamp `json:"created_at,omitempty"`
- UpdatedAt *Timestamp `json:"pushed_at,omitempty"`
+ ID *int `json:"id,omitempty"`
+ State *string `json:"state,omitempty"`
+ Creator *User `json:"creator,omitempty"`
+ Description *string `json:"description,omitempty"`
+ TargetURL *string `json:"target_url,omitempty"`
+ CreatedAt *Timestamp `json:"created_at,omitempty"`
+ UpdatedAt *Timestamp `json:"pushed_at,omitempty"`
+ DeploymentURL *string `json:"deployment_url,omitempty"`
+ RepositoryURL *string `json:"repository_url,omitempty"`
}
// DeploymentStatusRequest represents a deployment request
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_forks.go b/vendor/github.com/google/go-github/github/repos_forks.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_forks.go
rename to vendor/github.com/google/go-github/github/repos_forks.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_hooks.go b/vendor/github.com/google/go-github/github/repos_hooks.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_hooks.go
rename to vendor/github.com/google/go-github/github/repos_hooks.go
index 36734ffab8..4370c16069 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos_hooks.go
+++ b/vendor/github.com/google/go-github/github/repos_hooks.go
@@ -29,6 +29,7 @@ type WebHookPayload struct {
Pusher *User `json:"pusher,omitempty"`
Ref *string `json:"ref,omitempty"`
Repo *Repository `json:"repository,omitempty"`
+ Sender *User `json:"sender,omitempty"`
}
func (w WebHookPayload) String() string {
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_keys.go b/vendor/github.com/google/go-github/github/repos_keys.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_keys.go
rename to vendor/github.com/google/go-github/github/repos_keys.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_merging.go b/vendor/github.com/google/go-github/github/repos_merging.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_merging.go
rename to vendor/github.com/google/go-github/github/repos_merging.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_pages.go b/vendor/github.com/google/go-github/github/repos_pages.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_pages.go
rename to vendor/github.com/google/go-github/github/repos_pages.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_releases.go b/vendor/github.com/google/go-github/github/repos_releases.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_releases.go
rename to vendor/github.com/google/go-github/github/repos_releases.go
index 4e4e2abbfe..9f6133dcd1 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos_releases.go
+++ b/vendor/github.com/google/go-github/github/repos_releases.go
@@ -32,6 +32,7 @@ type RepositoryRelease struct {
UploadURL *string `json:"upload_url,omitempty"`
ZipballURL *string `json:"zipball_url,omitempty"`
TarballURL *string `json:"tarball_url,omitempty"`
+ Author *CommitAuthor `json:"author,omitempty"`
}
func (r RepositoryRelease) String() string {
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_stats.go b/vendor/github.com/google/go-github/github/repos_stats.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_stats.go
rename to vendor/github.com/google/go-github/github/repos_stats.go
index 7c1de09e89..3474b550da 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos_stats.go
+++ b/vendor/github.com/google/go-github/github/repos_stats.go
@@ -102,7 +102,7 @@ func (s *RepositoriesService) ListCommitActivity(owner, repo string) ([]WeeklyCo
// ListCodeFrequency returns a weekly aggregate of the number of additions and
// deletions pushed to a repository. Returned WeeklyStats will contain
-// additiona and deletions, but not total commits.
+// additions and deletions, but not total commits.
//
// GitHub API Docs: https://developer.github.com/v3/repos/statistics/#code-frequency
func (s *RepositoriesService) ListCodeFrequency(owner, repo string) ([]WeeklyStats, *Response, error) {
@@ -175,7 +175,7 @@ func (s *RepositoriesService) ListParticipation(owner, repo string) (*Repository
return participation, resp, err
}
-// PunchCard respresents the number of commits made during a given hour of a
+// PunchCard represents the number of commits made during a given hour of a
// day of thew eek.
type PunchCard struct {
Day *int // Day of the week (0-6: =Sunday - Saturday).
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/repos_statuses.go b/vendor/github.com/google/go-github/github/repos_statuses.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/google/go-github/github/repos_statuses.go
rename to vendor/github.com/google/go-github/github/repos_statuses.go
index 0379a2b47e..7a6ee7c630 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/repos_statuses.go
+++ b/vendor/github.com/google/go-github/github/repos_statuses.go
@@ -86,7 +86,7 @@ func (s *RepositoriesService) CreateStatus(owner, repo, ref string, status *Repo
// CombinedStatus represents the combined status of a repository at a particular reference.
type CombinedStatus struct {
// State is the combined state of the repository. Possible values are:
- // failture, pending, or success.
+ // failure, pending, or success.
State *string `json:"state,omitempty"`
Name *string `json:"name,omitempty"`
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/search.go b/vendor/github.com/google/go-github/github/search.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/search.go
rename to vendor/github.com/google/go-github/github/search.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/strings.go b/vendor/github.com/google/go-github/github/strings.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/strings.go
rename to vendor/github.com/google/go-github/github/strings.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/timestamp.go b/vendor/github.com/google/go-github/github/timestamp.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/timestamp.go
rename to vendor/github.com/google/go-github/github/timestamp.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/users.go b/vendor/github.com/google/go-github/github/users.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/google/go-github/github/users.go
rename to vendor/github.com/google/go-github/github/users.go
index a041bbf981..d8c74e2d61 100644
--- a/Godeps/_workspace/src/github.com/google/go-github/github/users.go
+++ b/vendor/github.com/google/go-github/github/users.go
@@ -35,6 +35,7 @@ type User struct {
Following *int `json:"following,omitempty"`
CreatedAt *Timestamp `json:"created_at,omitempty"`
UpdatedAt *Timestamp `json:"updated_at,omitempty"`
+ SuspendedAt *Timestamp `json:"suspended_at,omitempty"`
Type *string `json:"type,omitempty"`
SiteAdmin *bool `json:"site_admin,omitempty"`
TotalPrivateRepos *int `json:"total_private_repos,omitempty"`
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/users_administration.go b/vendor/github.com/google/go-github/github/users_administration.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/users_administration.go
rename to vendor/github.com/google/go-github/github/users_administration.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/users_emails.go b/vendor/github.com/google/go-github/github/users_emails.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/users_emails.go
rename to vendor/github.com/google/go-github/github/users_emails.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/users_followers.go b/vendor/github.com/google/go-github/github/users_followers.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/users_followers.go
rename to vendor/github.com/google/go-github/github/users_followers.go
diff --git a/Godeps/_workspace/src/github.com/google/go-github/github/users_keys.go b/vendor/github.com/google/go-github/github/users_keys.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-github/github/users_keys.go
rename to vendor/github.com/google/go-github/github/users_keys.go
diff --git a/Godeps/_workspace/src/github.com/google/go-querystring/LICENSE b/vendor/github.com/google/go-querystring/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/google/go-querystring/LICENSE
rename to vendor/github.com/google/go-querystring/LICENSE
diff --git a/Godeps/_workspace/src/github.com/google/go-querystring/query/encode.go b/vendor/github.com/google/go-querystring/query/encode.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/google/go-querystring/query/encode.go
rename to vendor/github.com/google/go-querystring/query/encode.go
index 90dcabb80f..3d4a01df37 100644
--- a/Godeps/_workspace/src/github.com/google/go-querystring/query/encode.go
+++ b/vendor/github.com/google/go-querystring/query/encode.go
@@ -138,7 +138,7 @@ func reflectValue(values url.Values, val reflect.Value, scope string) error {
typ := val.Type()
for i := 0; i < typ.NumField(); i++ {
sf := typ.Field(i)
- if sf.PkgPath != "" { // unexported
+ if sf.PkgPath != "" && !sf.Anonymous { // unexported
continue
}
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/.gitignore b/vendor/github.com/hailocab/go-hostpool/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/.gitignore
rename to vendor/github.com/hailocab/go-hostpool/.gitignore
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/.travis.yml b/vendor/github.com/hailocab/go-hostpool/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/.travis.yml
rename to vendor/github.com/hailocab/go-hostpool/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/LICENSE b/vendor/github.com/hailocab/go-hostpool/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/LICENSE
rename to vendor/github.com/hailocab/go-hostpool/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/README.md b/vendor/github.com/hailocab/go-hostpool/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/README.md
rename to vendor/github.com/hailocab/go-hostpool/README.md
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/epsilon_greedy.go b/vendor/github.com/hailocab/go-hostpool/epsilon_greedy.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/epsilon_greedy.go
rename to vendor/github.com/hailocab/go-hostpool/epsilon_greedy.go
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/epsilon_value_calculators.go b/vendor/github.com/hailocab/go-hostpool/epsilon_value_calculators.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/epsilon_value_calculators.go
rename to vendor/github.com/hailocab/go-hostpool/epsilon_value_calculators.go
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/host_entry.go b/vendor/github.com/hailocab/go-hostpool/host_entry.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/host_entry.go
rename to vendor/github.com/hailocab/go-hostpool/host_entry.go
diff --git a/Godeps/_workspace/src/github.com/hailocab/go-hostpool/hostpool.go b/vendor/github.com/hailocab/go-hostpool/hostpool.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hailocab/go-hostpool/hostpool.go
rename to vendor/github.com/hailocab/go-hostpool/hostpool.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/LICENSE b/vendor/github.com/hashicorp/consul/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/LICENSE
rename to vendor/github.com/hashicorp/consul/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/README.md b/vendor/github.com/hashicorp/consul/api/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/README.md
rename to vendor/github.com/hashicorp/consul/api/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/acl.go b/vendor/github.com/hashicorp/consul/api/acl.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/acl.go
rename to vendor/github.com/hashicorp/consul/api/acl.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/agent.go b/vendor/github.com/hashicorp/consul/api/agent.go
similarity index 94%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/agent.go
rename to vendor/github.com/hashicorp/consul/api/agent.go
index e4466a6511..183ae6efd3 100644
--- a/Godeps/_workspace/src/github.com/hashicorp/consul/api/agent.go
+++ b/vendor/github.com/hashicorp/consul/api/agent.go
@@ -18,11 +18,12 @@ type AgentCheck struct {
// AgentService represents a service known to the agent
type AgentService struct {
- ID string
- Service string
- Tags []string
- Port int
- Address string
+ ID string
+ Service string
+ Tags []string
+ Port int
+ Address string
+ EnableTagOverride bool
}
// AgentMember represents a cluster member known to the agent
@@ -42,13 +43,14 @@ type AgentMember struct {
// AgentServiceRegistration is used to register a new service
type AgentServiceRegistration struct {
- ID string `json:",omitempty"`
- Name string `json:",omitempty"`
- Tags []string `json:",omitempty"`
- Port int `json:",omitempty"`
- Address string `json:",omitempty"`
- Check *AgentServiceCheck
- Checks AgentServiceChecks
+ ID string `json:",omitempty"`
+ Name string `json:",omitempty"`
+ Tags []string `json:",omitempty"`
+ Port int `json:",omitempty"`
+ Address string `json:",omitempty"`
+ EnableTagOverride bool `json:",omitempty"`
+ Check *AgentServiceCheck
+ Checks AgentServiceChecks
}
// AgentCheckRegistration is used to register a new check
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/api.go b/vendor/github.com/hashicorp/consul/api/api.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/api.go
rename to vendor/github.com/hashicorp/consul/api/api.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/catalog.go b/vendor/github.com/hashicorp/consul/api/catalog.go
similarity index 93%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/catalog.go
rename to vendor/github.com/hashicorp/consul/api/catalog.go
index cf64bd9091..52a00b3043 100644
--- a/Godeps/_workspace/src/github.com/hashicorp/consul/api/catalog.go
+++ b/vendor/github.com/hashicorp/consul/api/catalog.go
@@ -6,13 +6,14 @@ type Node struct {
}
type CatalogService struct {
- Node string
- Address string
- ServiceID string
- ServiceName string
- ServiceAddress string
- ServiceTags []string
- ServicePort int
+ Node string
+ Address string
+ ServiceID string
+ ServiceName string
+ ServiceAddress string
+ ServiceTags []string
+ ServicePort int
+ ServiceEnableTagOverride bool
}
type CatalogNode struct {
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/coordinate.go b/vendor/github.com/hashicorp/consul/api/coordinate.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/coordinate.go
rename to vendor/github.com/hashicorp/consul/api/coordinate.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/event.go b/vendor/github.com/hashicorp/consul/api/event.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/event.go
rename to vendor/github.com/hashicorp/consul/api/event.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/health.go b/vendor/github.com/hashicorp/consul/api/health.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/health.go
rename to vendor/github.com/hashicorp/consul/api/health.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/kv.go b/vendor/github.com/hashicorp/consul/api/kv.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/kv.go
rename to vendor/github.com/hashicorp/consul/api/kv.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/lock.go b/vendor/github.com/hashicorp/consul/api/lock.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/lock.go
rename to vendor/github.com/hashicorp/consul/api/lock.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/prepared_query.go b/vendor/github.com/hashicorp/consul/api/prepared_query.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/prepared_query.go
rename to vendor/github.com/hashicorp/consul/api/prepared_query.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/raw.go b/vendor/github.com/hashicorp/consul/api/raw.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/raw.go
rename to vendor/github.com/hashicorp/consul/api/raw.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/semaphore.go b/vendor/github.com/hashicorp/consul/api/semaphore.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/semaphore.go
rename to vendor/github.com/hashicorp/consul/api/semaphore.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/session.go b/vendor/github.com/hashicorp/consul/api/session.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/session.go
rename to vendor/github.com/hashicorp/consul/api/session.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/api/status.go b/vendor/github.com/hashicorp/consul/api/status.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/api/status.go
rename to vendor/github.com/hashicorp/consul/api/status.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/consul/website/LICENSE.md b/vendor/github.com/hashicorp/consul/website/LICENSE.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/consul/website/LICENSE.md
rename to vendor/github.com/hashicorp/consul/website/LICENSE.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/errwrap/LICENSE b/vendor/github.com/hashicorp/errwrap/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/errwrap/LICENSE
rename to vendor/github.com/hashicorp/errwrap/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/errwrap/README.md b/vendor/github.com/hashicorp/errwrap/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/errwrap/README.md
rename to vendor/github.com/hashicorp/errwrap/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/errwrap/errwrap.go b/vendor/github.com/hashicorp/errwrap/errwrap.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/errwrap/errwrap.go
rename to vendor/github.com/hashicorp/errwrap/errwrap.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/LICENSE b/vendor/github.com/hashicorp/go-cleanhttp/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/LICENSE
rename to vendor/github.com/hashicorp/go-cleanhttp/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/README.md b/vendor/github.com/hashicorp/go-cleanhttp/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/README.md
rename to vendor/github.com/hashicorp/go-cleanhttp/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/cleanhttp.go b/vendor/github.com/hashicorp/go-cleanhttp/cleanhttp.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/cleanhttp.go
rename to vendor/github.com/hashicorp/go-cleanhttp/cleanhttp.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/doc.go b/vendor/github.com/hashicorp/go-cleanhttp/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-cleanhttp/doc.go
rename to vendor/github.com/hashicorp/go-cleanhttp/doc.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/LICENSE b/vendor/github.com/hashicorp/go-multierror/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/LICENSE
rename to vendor/github.com/hashicorp/go-multierror/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/README.md b/vendor/github.com/hashicorp/go-multierror/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/README.md
rename to vendor/github.com/hashicorp/go-multierror/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/append.go b/vendor/github.com/hashicorp/go-multierror/append.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/append.go
rename to vendor/github.com/hashicorp/go-multierror/append.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/flatten.go b/vendor/github.com/hashicorp/go-multierror/flatten.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/flatten.go
rename to vendor/github.com/hashicorp/go-multierror/flatten.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/format.go b/vendor/github.com/hashicorp/go-multierror/format.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/format.go
rename to vendor/github.com/hashicorp/go-multierror/format.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/multierror.go b/vendor/github.com/hashicorp/go-multierror/multierror.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/multierror.go
rename to vendor/github.com/hashicorp/go-multierror/multierror.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-multierror/prefix.go b/vendor/github.com/hashicorp/go-multierror/prefix.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-multierror/prefix.go
rename to vendor/github.com/hashicorp/go-multierror/prefix.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/.gitignore b/vendor/github.com/hashicorp/go-syslog/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/.gitignore
rename to vendor/github.com/hashicorp/go-syslog/.gitignore
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/LICENSE b/vendor/github.com/hashicorp/go-syslog/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/LICENSE
rename to vendor/github.com/hashicorp/go-syslog/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/README.md b/vendor/github.com/hashicorp/go-syslog/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/README.md
rename to vendor/github.com/hashicorp/go-syslog/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/builtin.go b/vendor/github.com/hashicorp/go-syslog/builtin.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/builtin.go
rename to vendor/github.com/hashicorp/go-syslog/builtin.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/syslog.go b/vendor/github.com/hashicorp/go-syslog/syslog.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/syslog.go
rename to vendor/github.com/hashicorp/go-syslog/syslog.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/unix.go b/vendor/github.com/hashicorp/go-syslog/unix.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/unix.go
rename to vendor/github.com/hashicorp/go-syslog/unix.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-syslog/unsupported.go b/vendor/github.com/hashicorp/go-syslog/unsupported.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-syslog/unsupported.go
rename to vendor/github.com/hashicorp/go-syslog/unsupported.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-uuid/LICENSE b/vendor/github.com/hashicorp/go-uuid/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-uuid/LICENSE
rename to vendor/github.com/hashicorp/go-uuid/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-uuid/README.md b/vendor/github.com/hashicorp/go-uuid/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-uuid/README.md
rename to vendor/github.com/hashicorp/go-uuid/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/go-uuid/uuid.go b/vendor/github.com/hashicorp/go-uuid/uuid.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/go-uuid/uuid.go
rename to vendor/github.com/hashicorp/go-uuid/uuid.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/.gitignore b/vendor/github.com/hashicorp/golang-lru/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/.gitignore
rename to vendor/github.com/hashicorp/golang-lru/.gitignore
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/2q.go b/vendor/github.com/hashicorp/golang-lru/2q.go
similarity index 98%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/2q.go
rename to vendor/github.com/hashicorp/golang-lru/2q.go
index 1529a0dc80..337d963296 100644
--- a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/2q.go
+++ b/vendor/github.com/hashicorp/golang-lru/2q.go
@@ -20,7 +20,7 @@ const (
// TwoQueueCache is a thread-safe fixed size 2Q cache.
// 2Q is an enhancement over the standard LRU cache
// in that it tracks both frequently and recently used
-// entries seperately. This avoids a burst in access to new
+// entries separately. This avoids a burst in access to new
// entries from evicting frequently used entries. It adds some
// additional tracking overhead to the standard LRU cache, and is
// computationally about 2x the cost, and adds some metadata over
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/LICENSE b/vendor/github.com/hashicorp/golang-lru/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/LICENSE
rename to vendor/github.com/hashicorp/golang-lru/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/README.md b/vendor/github.com/hashicorp/golang-lru/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/README.md
rename to vendor/github.com/hashicorp/golang-lru/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/arc.go b/vendor/github.com/hashicorp/golang-lru/arc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/arc.go
rename to vendor/github.com/hashicorp/golang-lru/arc.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/lru.go b/vendor/github.com/hashicorp/golang-lru/lru.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/lru.go
rename to vendor/github.com/hashicorp/golang-lru/lru.go
index 8964b37be5..a6285f989e 100644
--- a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/lru.go
+++ b/vendor/github.com/hashicorp/golang-lru/lru.go
@@ -40,7 +40,7 @@ func (c *Cache) Purge() {
c.lock.Unlock()
}
-// Add adds a value to the cache. Returns true if an eviction occured.
+// Add adds a value to the cache. Returns true if an eviction occurred.
func (c *Cache) Add(key, value interface{}) bool {
c.lock.Lock()
defer c.lock.Unlock()
diff --git a/Godeps/_workspace/src/github.com/hashicorp/golang-lru/simplelru/lru.go b/vendor/github.com/hashicorp/golang-lru/simplelru/lru.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/golang-lru/simplelru/lru.go
rename to vendor/github.com/hashicorp/golang-lru/simplelru/lru.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/.gitignore b/vendor/github.com/hashicorp/hcl/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/.gitignore
rename to vendor/github.com/hashicorp/hcl/.gitignore
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/LICENSE b/vendor/github.com/hashicorp/hcl/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/LICENSE
rename to vendor/github.com/hashicorp/hcl/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/Makefile b/vendor/github.com/hashicorp/hcl/Makefile
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/Makefile
rename to vendor/github.com/hashicorp/hcl/Makefile
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/README.md b/vendor/github.com/hashicorp/hcl/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/README.md
rename to vendor/github.com/hashicorp/hcl/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/decoder.go b/vendor/github.com/hashicorp/hcl/decoder.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/decoder.go
rename to vendor/github.com/hashicorp/hcl/decoder.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl.go b/vendor/github.com/hashicorp/hcl/hcl.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl.go
rename to vendor/github.com/hashicorp/hcl/hcl.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/lex.go b/vendor/github.com/hashicorp/hcl/hcl/lex.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/lex.go
rename to vendor/github.com/hashicorp/hcl/hcl/lex.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/object.go b/vendor/github.com/hashicorp/hcl/hcl/object.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/object.go
rename to vendor/github.com/hashicorp/hcl/hcl/object.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/parse.go b/vendor/github.com/hashicorp/hcl/hcl/parse.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/parse.go
rename to vendor/github.com/hashicorp/hcl/hcl/parse.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/parse.y b/vendor/github.com/hashicorp/hcl/hcl/parse.y
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/parse.y
rename to vendor/github.com/hashicorp/hcl/hcl/parse.y
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/valuetype_string.go b/vendor/github.com/hashicorp/hcl/hcl/valuetype_string.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/valuetype_string.go
rename to vendor/github.com/hashicorp/hcl/hcl/valuetype_string.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/y.go b/vendor/github.com/hashicorp/hcl/hcl/y.go
similarity index 96%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/y.go
rename to vendor/github.com/hashicorp/hcl/hcl/y.go
index f3ae8f29fc..4aa61700ff 100644
--- a/Godeps/_workspace/src/github.com/hashicorp/hcl/hcl/y.go
+++ b/vendor/github.com/hashicorp/hcl/hcl/y.go
@@ -62,7 +62,7 @@ var hclStatenames = [...]string{}
const hclEofCode = 1
const hclErrCode = 2
-const hclMaxDepth = 200
+const hclInitialStackSize = 16
//line parse.y:259
@@ -179,18 +179,17 @@ type hclParser interface {
}
type hclParserImpl struct {
- lookahead func() int
+ lval hclSymType
+ stack [hclInitialStackSize]hclSymType
+ char int
}
func (p *hclParserImpl) Lookahead() int {
- return p.lookahead()
+ return p.char
}
func hclNewParser() hclParser {
- p := &hclParserImpl{
- lookahead: func() int { return -1 },
- }
- return p
+ return &hclParserImpl{}
}
const hclFlag = -1000
@@ -318,22 +317,20 @@ func hclParse(hcllex hclLexer) int {
func (hclrcvr *hclParserImpl) Parse(hcllex hclLexer) int {
var hcln int
- var hcllval hclSymType
var hclVAL hclSymType
var hclDollar []hclSymType
_ = hclDollar // silence set and not used
- hclS := make([]hclSymType, hclMaxDepth)
+ hclS := hclrcvr.stack[:]
Nerrs := 0 /* number of errors */
Errflag := 0 /* error recovery flag */
hclstate := 0
- hclchar := -1
- hcltoken := -1 // hclchar translated into internal numbering
- hclrcvr.lookahead = func() int { return hclchar }
+ hclrcvr.char = -1
+ hcltoken := -1 // hclrcvr.char translated into internal numbering
defer func() {
// Make sure we report no lookahead when not parsing.
hclstate = -1
- hclchar = -1
+ hclrcvr.char = -1
hcltoken = -1
}()
hclp := -1
@@ -365,8 +362,8 @@ hclnewstate:
if hcln <= hclFlag {
goto hcldefault /* simple state */
}
- if hclchar < 0 {
- hclchar, hcltoken = hcllex1(hcllex, &hcllval)
+ if hclrcvr.char < 0 {
+ hclrcvr.char, hcltoken = hcllex1(hcllex, &hclrcvr.lval)
}
hcln += hcltoken
if hcln < 0 || hcln >= hclLast {
@@ -374,9 +371,9 @@ hclnewstate:
}
hcln = hclAct[hcln]
if hclChk[hcln] == hcltoken { /* valid shift */
- hclchar = -1
+ hclrcvr.char = -1
hcltoken = -1
- hclVAL = hcllval
+ hclVAL = hclrcvr.lval
hclstate = hcln
if Errflag > 0 {
Errflag--
@@ -388,8 +385,8 @@ hcldefault:
/* default state action */
hcln = hclDef[hclstate]
if hcln == -2 {
- if hclchar < 0 {
- hclchar, hcltoken = hcllex1(hcllex, &hcllval)
+ if hclrcvr.char < 0 {
+ hclrcvr.char, hcltoken = hcllex1(hcllex, &hclrcvr.lval)
}
/* look through exception table */
@@ -452,7 +449,7 @@ hcldefault:
if hcltoken == hclEofCode {
goto ret1
}
- hclchar = -1
+ hclrcvr.char = -1
hcltoken = -1
goto hclnewstate /* try again in the same state */
}
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/lex.go b/vendor/github.com/hashicorp/hcl/json/lex.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/lex.go
rename to vendor/github.com/hashicorp/hcl/json/lex.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/parse.go b/vendor/github.com/hashicorp/hcl/json/parse.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/parse.go
rename to vendor/github.com/hashicorp/hcl/json/parse.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/parse.y b/vendor/github.com/hashicorp/hcl/json/parse.y
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/parse.y
rename to vendor/github.com/hashicorp/hcl/json/parse.y
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/array.json b/vendor/github.com/hashicorp/hcl/json/test-fixtures/array.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/array.json
rename to vendor/github.com/hashicorp/hcl/json/test-fixtures/array.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/basic.json b/vendor/github.com/hashicorp/hcl/json/test-fixtures/basic.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/basic.json
rename to vendor/github.com/hashicorp/hcl/json/test-fixtures/basic.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/object.json b/vendor/github.com/hashicorp/hcl/json/test-fixtures/object.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/object.json
rename to vendor/github.com/hashicorp/hcl/json/test-fixtures/object.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/types.json b/vendor/github.com/hashicorp/hcl/json/test-fixtures/types.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/test-fixtures/types.json
rename to vendor/github.com/hashicorp/hcl/json/test-fixtures/types.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/y.go b/vendor/github.com/hashicorp/hcl/json/y.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/json/y.go
rename to vendor/github.com/hashicorp/hcl/json/y.go
index a57649e526..84aaf18303 100644
--- a/Godeps/_workspace/src/github.com/hashicorp/hcl/json/y.go
+++ b/vendor/github.com/hashicorp/hcl/json/y.go
@@ -69,7 +69,7 @@ var jsonStatenames = [...]string{}
const jsonEofCode = 1
const jsonErrCode = 2
-const jsonMaxDepth = 200
+const jsonInitialStackSize = 16
//line parse.y:210
@@ -175,18 +175,17 @@ type jsonParser interface {
}
type jsonParserImpl struct {
- lookahead func() int
+ lval jsonSymType
+ stack [jsonInitialStackSize]jsonSymType
+ char int
}
func (p *jsonParserImpl) Lookahead() int {
- return p.lookahead()
+ return p.char
}
func jsonNewParser() jsonParser {
- p := &jsonParserImpl{
- lookahead: func() int { return -1 },
- }
- return p
+ return &jsonParserImpl{}
}
const jsonFlag = -1000
@@ -314,22 +313,20 @@ func jsonParse(jsonlex jsonLexer) int {
func (jsonrcvr *jsonParserImpl) Parse(jsonlex jsonLexer) int {
var jsonn int
- var jsonlval jsonSymType
var jsonVAL jsonSymType
var jsonDollar []jsonSymType
_ = jsonDollar // silence set and not used
- jsonS := make([]jsonSymType, jsonMaxDepth)
+ jsonS := jsonrcvr.stack[:]
Nerrs := 0 /* number of errors */
Errflag := 0 /* error recovery flag */
jsonstate := 0
- jsonchar := -1
- jsontoken := -1 // jsonchar translated into internal numbering
- jsonrcvr.lookahead = func() int { return jsonchar }
+ jsonrcvr.char = -1
+ jsontoken := -1 // jsonrcvr.char translated into internal numbering
defer func() {
// Make sure we report no lookahead when not parsing.
jsonstate = -1
- jsonchar = -1
+ jsonrcvr.char = -1
jsontoken = -1
}()
jsonp := -1
@@ -361,8 +358,8 @@ jsonnewstate:
if jsonn <= jsonFlag {
goto jsondefault /* simple state */
}
- if jsonchar < 0 {
- jsonchar, jsontoken = jsonlex1(jsonlex, &jsonlval)
+ if jsonrcvr.char < 0 {
+ jsonrcvr.char, jsontoken = jsonlex1(jsonlex, &jsonrcvr.lval)
}
jsonn += jsontoken
if jsonn < 0 || jsonn >= jsonLast {
@@ -370,9 +367,9 @@ jsonnewstate:
}
jsonn = jsonAct[jsonn]
if jsonChk[jsonn] == jsontoken { /* valid shift */
- jsonchar = -1
+ jsonrcvr.char = -1
jsontoken = -1
- jsonVAL = jsonlval
+ jsonVAL = jsonrcvr.lval
jsonstate = jsonn
if Errflag > 0 {
Errflag--
@@ -384,8 +381,8 @@ jsondefault:
/* default state action */
jsonn = jsonDef[jsonstate]
if jsonn == -2 {
- if jsonchar < 0 {
- jsonchar, jsontoken = jsonlex1(jsonlex, &jsonlval)
+ if jsonrcvr.char < 0 {
+ jsonrcvr.char, jsontoken = jsonlex1(jsonlex, &jsonrcvr.lval)
}
/* look through exception table */
@@ -448,7 +445,7 @@ jsondefault:
if jsontoken == jsonEofCode {
goto ret1
}
- jsonchar = -1
+ jsonrcvr.char = -1
jsontoken = -1
goto jsonnewstate /* try again in the same state */
}
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/lex.go b/vendor/github.com/hashicorp/hcl/lex.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/lex.go
rename to vendor/github.com/hashicorp/hcl/lex.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/parse.go b/vendor/github.com/hashicorp/hcl/parse.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/parse.go
rename to vendor/github.com/hashicorp/hcl/parse.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/basic.json b/vendor/github.com/hashicorp/hcl/test-fixtures/basic.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/basic.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/basic.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/decode_policy.json b/vendor/github.com/hashicorp/hcl/test-fixtures/decode_policy.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/decode_policy.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/decode_policy.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/decode_tf_variable.json b/vendor/github.com/hashicorp/hcl/test-fixtures/decode_tf_variable.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/decode_tf_variable.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/decode_tf_variable.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/float.json b/vendor/github.com/hashicorp/hcl/test-fixtures/float.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/float.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/float.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/multiline.json b/vendor/github.com/hashicorp/hcl/test-fixtures/multiline.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/multiline.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/multiline.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/scientific.json b/vendor/github.com/hashicorp/hcl/test-fixtures/scientific.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/scientific.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/scientific.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure.json b/vendor/github.com/hashicorp/hcl/test-fixtures/structure.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/structure.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure2.json b/vendor/github.com/hashicorp/hcl/test-fixtures/structure2.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure2.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/structure2.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_flat.json b/vendor/github.com/hashicorp/hcl/test-fixtures/structure_flat.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_flat.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/structure_flat.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_list.json b/vendor/github.com/hashicorp/hcl/test-fixtures/structure_list.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_list.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/structure_list.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_list_deep.json b/vendor/github.com/hashicorp/hcl/test-fixtures/structure_list_deep.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_list_deep.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/structure_list_deep.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_multi.json b/vendor/github.com/hashicorp/hcl/test-fixtures/structure_multi.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/structure_multi.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/structure_multi.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/terraform_heroku.json b/vendor/github.com/hashicorp/hcl/test-fixtures/terraform_heroku.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/hcl/test-fixtures/terraform_heroku.json
rename to vendor/github.com/hashicorp/hcl/test-fixtures/terraform_heroku.json
diff --git a/Godeps/_workspace/src/github.com/hashicorp/logutils/.gitignore b/vendor/github.com/hashicorp/logutils/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/logutils/.gitignore
rename to vendor/github.com/hashicorp/logutils/.gitignore
diff --git a/Godeps/_workspace/src/github.com/hashicorp/logutils/LICENSE b/vendor/github.com/hashicorp/logutils/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/logutils/LICENSE
rename to vendor/github.com/hashicorp/logutils/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/logutils/README.md b/vendor/github.com/hashicorp/logutils/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/logutils/README.md
rename to vendor/github.com/hashicorp/logutils/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/logutils/level.go b/vendor/github.com/hashicorp/logutils/level.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/logutils/level.go
rename to vendor/github.com/hashicorp/logutils/level.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/LICENSE b/vendor/github.com/hashicorp/serf/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/LICENSE
rename to vendor/github.com/hashicorp/serf/LICENSE
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/README.md b/vendor/github.com/hashicorp/serf/coordinate/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/README.md
rename to vendor/github.com/hashicorp/serf/coordinate/README.md
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/client.go b/vendor/github.com/hashicorp/serf/coordinate/client.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/client.go
rename to vendor/github.com/hashicorp/serf/coordinate/client.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/config.go b/vendor/github.com/hashicorp/serf/coordinate/config.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/config.go
rename to vendor/github.com/hashicorp/serf/coordinate/config.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/coordinate.go b/vendor/github.com/hashicorp/serf/coordinate/coordinate.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/coordinate.go
rename to vendor/github.com/hashicorp/serf/coordinate/coordinate.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/phantom.go b/vendor/github.com/hashicorp/serf/coordinate/phantom.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/coordinate/phantom.go
rename to vendor/github.com/hashicorp/serf/coordinate/phantom.go
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/ops-misc/debian/copyright b/vendor/github.com/hashicorp/serf/ops-misc/debian/copyright
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/ops-misc/debian/copyright
rename to vendor/github.com/hashicorp/serf/ops-misc/debian/copyright
diff --git a/Godeps/_workspace/src/github.com/hashicorp/serf/website/LICENSE.md b/vendor/github.com/hashicorp/serf/website/source/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/hashicorp/serf/website/LICENSE.md
rename to vendor/github.com/hashicorp/serf/website/source/LICENSE
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/.gitignore b/vendor/github.com/jmespath/go-jmespath/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/.gitignore
rename to vendor/github.com/jmespath/go-jmespath/.gitignore
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/.travis.yml b/vendor/github.com/jmespath/go-jmespath/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/.travis.yml
rename to vendor/github.com/jmespath/go-jmespath/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/aws/aws-sdk-go/vendor/github.com/jmespath/go-jmespath/LICENSE b/vendor/github.com/jmespath/go-jmespath/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/aws/aws-sdk-go/vendor/github.com/jmespath/go-jmespath/LICENSE
rename to vendor/github.com/jmespath/go-jmespath/LICENSE
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/Makefile b/vendor/github.com/jmespath/go-jmespath/Makefile
similarity index 94%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/Makefile
rename to vendor/github.com/jmespath/go-jmespath/Makefile
index ad17bf0012..a828d2848f 100644
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/Makefile
+++ b/vendor/github.com/jmespath/go-jmespath/Makefile
@@ -35,7 +35,7 @@ buildfuzz:
go-fuzz-build github.com/jmespath/go-jmespath/fuzz
fuzz: buildfuzz
- go-fuzz -bin=./jmespath-fuzz.zip -workdir=fuzz/corpus
+ go-fuzz -bin=./jmespath-fuzz.zip -workdir=fuzz/testdata
bench:
go test -bench . -cpuprofile cpu.out
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/README.md b/vendor/github.com/jmespath/go-jmespath/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/README.md
rename to vendor/github.com/jmespath/go-jmespath/README.md
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/api.go b/vendor/github.com/jmespath/go-jmespath/api.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/api.go
rename to vendor/github.com/jmespath/go-jmespath/api.go
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/astnodetype_string.go b/vendor/github.com/jmespath/go-jmespath/astnodetype_string.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/astnodetype_string.go
rename to vendor/github.com/jmespath/go-jmespath/astnodetype_string.go
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/basic.json b/vendor/github.com/jmespath/go-jmespath/compliance/basic.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/basic.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/basic.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/boolean.json b/vendor/github.com/jmespath/go-jmespath/compliance/boolean.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/boolean.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/boolean.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/current.json b/vendor/github.com/jmespath/go-jmespath/compliance/current.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/current.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/current.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/escape.json b/vendor/github.com/jmespath/go-jmespath/compliance/escape.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/escape.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/escape.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/filters.json b/vendor/github.com/jmespath/go-jmespath/compliance/filters.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/filters.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/filters.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/functions.json b/vendor/github.com/jmespath/go-jmespath/compliance/functions.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/functions.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/functions.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/identifiers.json b/vendor/github.com/jmespath/go-jmespath/compliance/identifiers.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/identifiers.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/identifiers.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/indices.json b/vendor/github.com/jmespath/go-jmespath/compliance/indices.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/indices.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/indices.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/literal.json b/vendor/github.com/jmespath/go-jmespath/compliance/literal.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/literal.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/literal.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/multiselect.json b/vendor/github.com/jmespath/go-jmespath/compliance/multiselect.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/multiselect.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/multiselect.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/ormatch.json b/vendor/github.com/jmespath/go-jmespath/compliance/ormatch.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/ormatch.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/ormatch.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/pipe.json b/vendor/github.com/jmespath/go-jmespath/compliance/pipe.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/pipe.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/pipe.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/slice.json b/vendor/github.com/jmespath/go-jmespath/compliance/slice.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/slice.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/slice.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/syntax.json b/vendor/github.com/jmespath/go-jmespath/compliance/syntax.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/syntax.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/syntax.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/unicode.json b/vendor/github.com/jmespath/go-jmespath/compliance/unicode.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/unicode.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/unicode.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/wildcard.json b/vendor/github.com/jmespath/go-jmespath/compliance/wildcard.json
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/compliance/wildcard.json
rename to vendor/github.com/jmespath/go-jmespath/compliance/wildcard.json
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/functions.go b/vendor/github.com/jmespath/go-jmespath/functions.go
similarity index 87%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/functions.go
rename to vendor/github.com/jmespath/go-jmespath/functions.go
index 8a3f2ef0dc..9b7cd89b4b 100644
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/functions.go
+++ b/vendor/github.com/jmespath/go-jmespath/functions.go
@@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"math"
+ "reflect"
"sort"
"strconv"
"strings"
@@ -124,197 +125,197 @@ type functionCaller struct {
func newFunctionCaller() *functionCaller {
caller := &functionCaller{}
caller.functionTable = map[string]functionEntry{
- "length": functionEntry{
+ "length": {
name: "length",
arguments: []argSpec{
- argSpec{types: []jpType{jpString, jpArray, jpObject}},
+ {types: []jpType{jpString, jpArray, jpObject}},
},
handler: jpfLength,
},
- "starts_with": functionEntry{
+ "starts_with": {
name: "starts_with",
arguments: []argSpec{
- argSpec{types: []jpType{jpString}},
- argSpec{types: []jpType{jpString}},
+ {types: []jpType{jpString}},
+ {types: []jpType{jpString}},
},
handler: jpfStartsWith,
},
- "abs": functionEntry{
+ "abs": {
name: "abs",
arguments: []argSpec{
- argSpec{types: []jpType{jpNumber}},
+ {types: []jpType{jpNumber}},
},
handler: jpfAbs,
},
- "avg": functionEntry{
+ "avg": {
name: "avg",
arguments: []argSpec{
- argSpec{types: []jpType{jpArrayNumber}},
+ {types: []jpType{jpArrayNumber}},
},
handler: jpfAvg,
},
- "ceil": functionEntry{
+ "ceil": {
name: "ceil",
arguments: []argSpec{
- argSpec{types: []jpType{jpNumber}},
+ {types: []jpType{jpNumber}},
},
handler: jpfCeil,
},
- "contains": functionEntry{
+ "contains": {
name: "contains",
arguments: []argSpec{
- argSpec{types: []jpType{jpArray, jpString}},
- argSpec{types: []jpType{jpAny}},
+ {types: []jpType{jpArray, jpString}},
+ {types: []jpType{jpAny}},
},
handler: jpfContains,
},
- "ends_with": functionEntry{
+ "ends_with": {
name: "ends_with",
arguments: []argSpec{
- argSpec{types: []jpType{jpString}},
- argSpec{types: []jpType{jpString}},
+ {types: []jpType{jpString}},
+ {types: []jpType{jpString}},
},
handler: jpfEndsWith,
},
- "floor": functionEntry{
+ "floor": {
name: "floor",
arguments: []argSpec{
- argSpec{types: []jpType{jpNumber}},
+ {types: []jpType{jpNumber}},
},
handler: jpfFloor,
},
- "map": functionEntry{
+ "map": {
name: "amp",
arguments: []argSpec{
- argSpec{types: []jpType{jpExpref}},
- argSpec{types: []jpType{jpArray}},
+ {types: []jpType{jpExpref}},
+ {types: []jpType{jpArray}},
},
handler: jpfMap,
hasExpRef: true,
},
- "max": functionEntry{
+ "max": {
name: "max",
arguments: []argSpec{
- argSpec{types: []jpType{jpArrayNumber, jpArrayString}},
+ {types: []jpType{jpArrayNumber, jpArrayString}},
},
handler: jpfMax,
},
- "merge": functionEntry{
+ "merge": {
name: "merge",
arguments: []argSpec{
- argSpec{types: []jpType{jpObject}, variadic: true},
+ {types: []jpType{jpObject}, variadic: true},
},
handler: jpfMerge,
},
- "max_by": functionEntry{
+ "max_by": {
name: "max_by",
arguments: []argSpec{
- argSpec{types: []jpType{jpArray}},
- argSpec{types: []jpType{jpExpref}},
+ {types: []jpType{jpArray}},
+ {types: []jpType{jpExpref}},
},
handler: jpfMaxBy,
hasExpRef: true,
},
- "sum": functionEntry{
+ "sum": {
name: "sum",
arguments: []argSpec{
- argSpec{types: []jpType{jpArrayNumber}},
+ {types: []jpType{jpArrayNumber}},
},
handler: jpfSum,
},
- "min": functionEntry{
+ "min": {
name: "min",
arguments: []argSpec{
- argSpec{types: []jpType{jpArrayNumber, jpArrayString}},
+ {types: []jpType{jpArrayNumber, jpArrayString}},
},
handler: jpfMin,
},
- "min_by": functionEntry{
+ "min_by": {
name: "min_by",
arguments: []argSpec{
- argSpec{types: []jpType{jpArray}},
- argSpec{types: []jpType{jpExpref}},
+ {types: []jpType{jpArray}},
+ {types: []jpType{jpExpref}},
},
handler: jpfMinBy,
hasExpRef: true,
},
- "type": functionEntry{
+ "type": {
name: "type",
arguments: []argSpec{
- argSpec{types: []jpType{jpAny}},
+ {types: []jpType{jpAny}},
},
handler: jpfType,
},
- "keys": functionEntry{
+ "keys": {
name: "keys",
arguments: []argSpec{
- argSpec{types: []jpType{jpObject}},
+ {types: []jpType{jpObject}},
},
handler: jpfKeys,
},
- "values": functionEntry{
+ "values": {
name: "values",
arguments: []argSpec{
- argSpec{types: []jpType{jpObject}},
+ {types: []jpType{jpObject}},
},
handler: jpfValues,
},
- "sort": functionEntry{
+ "sort": {
name: "sort",
arguments: []argSpec{
- argSpec{types: []jpType{jpArrayString, jpArrayNumber}},
+ {types: []jpType{jpArrayString, jpArrayNumber}},
},
handler: jpfSort,
},
- "sort_by": functionEntry{
+ "sort_by": {
name: "sort_by",
arguments: []argSpec{
- argSpec{types: []jpType{jpArray}},
- argSpec{types: []jpType{jpExpref}},
+ {types: []jpType{jpArray}},
+ {types: []jpType{jpExpref}},
},
handler: jpfSortBy,
hasExpRef: true,
},
- "join": functionEntry{
+ "join": {
name: "join",
arguments: []argSpec{
- argSpec{types: []jpType{jpString}},
- argSpec{types: []jpType{jpArrayString}},
+ {types: []jpType{jpString}},
+ {types: []jpType{jpArrayString}},
},
handler: jpfJoin,
},
- "reverse": functionEntry{
+ "reverse": {
name: "reverse",
arguments: []argSpec{
- argSpec{types: []jpType{jpArray, jpString}},
+ {types: []jpType{jpArray, jpString}},
},
handler: jpfReverse,
},
- "to_array": functionEntry{
+ "to_array": {
name: "to_array",
arguments: []argSpec{
- argSpec{types: []jpType{jpAny}},
+ {types: []jpType{jpAny}},
},
handler: jpfToArray,
},
- "to_string": functionEntry{
+ "to_string": {
name: "to_string",
arguments: []argSpec{
- argSpec{types: []jpType{jpAny}},
+ {types: []jpType{jpAny}},
},
handler: jpfToString,
},
- "to_number": functionEntry{
+ "to_number": {
name: "to_number",
arguments: []argSpec{
- argSpec{types: []jpType{jpAny}},
+ {types: []jpType{jpAny}},
},
handler: jpfToNumber,
},
- "not_null": functionEntry{
+ "not_null": {
name: "not_null",
arguments: []argSpec{
- argSpec{types: []jpType{jpAny}, variadic: true},
+ {types: []jpType{jpAny}, variadic: true},
},
handler: jpfNotNull,
},
@@ -357,7 +358,7 @@ func (a *argSpec) typeCheck(arg interface{}) error {
return nil
}
case jpArray:
- if _, ok := arg.([]interface{}); ok {
+ if isSliceType(arg) {
return nil
}
case jpObject:
@@ -409,8 +410,9 @@ func jpfLength(arguments []interface{}) (interface{}, error) {
arg := arguments[0]
if c, ok := arg.(string); ok {
return float64(utf8.RuneCountInString(c)), nil
- } else if c, ok := arg.([]interface{}); ok {
- return float64(len(c)), nil
+ } else if isSliceType(arg) {
+ v := reflect.ValueOf(arg)
+ return float64(v.Len()), nil
} else if c, ok := arg.(map[string]interface{}); ok {
return float64(len(c)), nil
}
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/jmespath.go b/vendor/github.com/jmespath/go-jmespath/fuzz/jmespath.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/fuzz/jmespath.go
rename to vendor/github.com/jmespath/go-jmespath/fuzz/jmespath.go
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/interpreter.go b/vendor/github.com/jmespath/go-jmespath/interpreter.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/interpreter.go
rename to vendor/github.com/jmespath/go-jmespath/interpreter.go
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/lexer.go b/vendor/github.com/jmespath/go-jmespath/lexer.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/lexer.go
rename to vendor/github.com/jmespath/go-jmespath/lexer.go
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/parser.go b/vendor/github.com/jmespath/go-jmespath/parser.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/parser.go
rename to vendor/github.com/jmespath/go-jmespath/parser.go
index c8f4bcebd8..1240a17552 100644
--- a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/parser.go
+++ b/vendor/github.com/jmespath/go-jmespath/parser.go
@@ -353,7 +353,7 @@ func (p *Parser) nud(token token) (ASTNode, error) {
case tFlatten:
left := ASTNode{
nodeType: ASTFlatten,
- children: []ASTNode{ASTNode{nodeType: ASTIdentity}},
+ children: []ASTNode{{nodeType: ASTIdentity}},
}
right, err := p.parseProjectionRHS(bindingPowers[tFlatten])
if err != nil {
@@ -378,7 +378,7 @@ func (p *Parser) nud(token token) (ASTNode, error) {
}
return ASTNode{
nodeType: ASTProjection,
- children: []ASTNode{ASTNode{nodeType: ASTIdentity}, right},
+ children: []ASTNode{{nodeType: ASTIdentity}, right},
}, nil
} else {
return p.parseMultiSelectList()
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/toktype_string.go b/vendor/github.com/jmespath/go-jmespath/toktype_string.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/toktype_string.go
rename to vendor/github.com/jmespath/go-jmespath/toktype_string.go
diff --git a/Godeps/_workspace/src/github.com/jmespath/go-jmespath/util.go b/vendor/github.com/jmespath/go-jmespath/util.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/jmespath/go-jmespath/util.go
rename to vendor/github.com/jmespath/go-jmespath/util.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/.gitignore b/vendor/github.com/lib/pq/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/.gitignore
rename to vendor/github.com/lib/pq/.gitignore
diff --git a/Godeps/_workspace/src/github.com/lib/pq/.travis.yml b/vendor/github.com/lib/pq/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/.travis.yml
rename to vendor/github.com/lib/pq/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/lib/pq/CONTRIBUTING.md b/vendor/github.com/lib/pq/CONTRIBUTING.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/CONTRIBUTING.md
rename to vendor/github.com/lib/pq/CONTRIBUTING.md
diff --git a/Godeps/_workspace/src/github.com/lib/pq/LICENSE.md b/vendor/github.com/lib/pq/LICENSE.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/LICENSE.md
rename to vendor/github.com/lib/pq/LICENSE.md
diff --git a/Godeps/_workspace/src/github.com/lib/pq/README.md b/vendor/github.com/lib/pq/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/README.md
rename to vendor/github.com/lib/pq/README.md
diff --git a/Godeps/_workspace/src/github.com/lib/pq/buf.go b/vendor/github.com/lib/pq/buf.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/buf.go
rename to vendor/github.com/lib/pq/buf.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/certs/README b/vendor/github.com/lib/pq/certs/README
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/certs/README
rename to vendor/github.com/lib/pq/certs/README
diff --git a/Godeps/_workspace/src/github.com/lib/pq/certs/postgresql.crt b/vendor/github.com/lib/pq/certs/postgresql.crt
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/certs/postgresql.crt
rename to vendor/github.com/lib/pq/certs/postgresql.crt
diff --git a/Godeps/_workspace/src/github.com/lib/pq/certs/postgresql.key b/vendor/github.com/lib/pq/certs/postgresql.key
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/certs/postgresql.key
rename to vendor/github.com/lib/pq/certs/postgresql.key
diff --git a/Godeps/_workspace/src/github.com/lib/pq/certs/root.crt b/vendor/github.com/lib/pq/certs/root.crt
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/certs/root.crt
rename to vendor/github.com/lib/pq/certs/root.crt
diff --git a/Godeps/_workspace/src/github.com/lib/pq/certs/server.crt b/vendor/github.com/lib/pq/certs/server.crt
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/certs/server.crt
rename to vendor/github.com/lib/pq/certs/server.crt
diff --git a/Godeps/_workspace/src/github.com/lib/pq/certs/server.key b/vendor/github.com/lib/pq/certs/server.key
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/certs/server.key
rename to vendor/github.com/lib/pq/certs/server.key
diff --git a/Godeps/_workspace/src/github.com/lib/pq/conn.go b/vendor/github.com/lib/pq/conn.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/lib/pq/conn.go
rename to vendor/github.com/lib/pq/conn.go
index 394e659dfc..336c89449d 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/conn.go
+++ b/vendor/github.com/lib/pq/conn.go
@@ -164,7 +164,7 @@ func (c *conn) handlePgpass(o values) {
return
}
mode := fileinfo.Mode()
- if mode & (0x77) != 0 {
+ if mode&(0x77) != 0 {
// XXX should warn about incorrect .pgpass permissions as psql does
return
}
@@ -180,7 +180,7 @@ func (c *conn) handlePgpass(o values) {
db := o.Get("dbname")
username := o.Get("user")
// From: https://github.com/tg/pgpass/blob/master/reader.go
- getFields := func (s string) []string {
+ getFields := func(s string) []string {
fs := make([]string, 0, 5)
f := make([]rune, 0, len(s))
@@ -200,7 +200,7 @@ func (c *conn) handlePgpass(o values) {
}
}
return append(fs, string(f))
- }
+ }
for scanner.Scan() {
line := scanner.Text()
if len(line) == 0 || line[0] == '#' {
@@ -210,7 +210,7 @@ func (c *conn) handlePgpass(o values) {
if len(split) != 5 {
continue
}
- if (split[0] == "*" || split[0] == hostname || (split[0] == "localhost" && (hostname == "" || ntw == "unix"))) && (split[1] == "*" || split[1] == port) && (split[2] == "*" || split[2] == db) && (split[3] == "*" || split[3] == username) {
+ if (split[0] == "*" || split[0] == hostname || (split[0] == "localhost" && (hostname == "" || ntw == "unix"))) && (split[1] == "*" || split[1] == port) && (split[2] == "*" || split[2] == db) && (split[3] == "*" || split[3] == username) {
o["password"] = split[4]
return
}
@@ -362,7 +362,7 @@ func network(o values) (string, string) {
return "unix", sockPath
}
- return "tcp", host + ":" + o.Get("port")
+ return "tcp", net.JoinHostPort(host, o.Get("port"))
}
type values map[string]string
@@ -614,8 +614,6 @@ func (cn *conn) simpleExec(q string) (res driver.Result, commandTag string, err
func (cn *conn) simpleQuery(q string) (res *rows, err error) {
defer cn.errRecover(&err)
- st := &stmt{cn: cn, name: ""}
-
b := cn.writeBuf('Q')
b.string(q)
cn.send(b)
@@ -634,10 +632,7 @@ func (cn *conn) simpleQuery(q string) (res *rows, err error) {
}
if res == nil {
res = &rows{
- cn: cn,
- colNames: st.colNames,
- colTyps: st.colTyps,
- colFmts: st.colFmts,
+ cn: cn,
}
}
res.done = true
@@ -985,7 +980,7 @@ func (cn *conn) ssl(o values) {
case "disable":
return
default:
- errorf(`unsupported sslmode %q; only "require" (default), "verify-full", and "disable" supported`, mode)
+ errorf(`unsupported sslmode %q; only "require" (default), "verify-full", "verify-ca", and "disable" supported`, mode)
}
cn.setupSSLClientCertificates(&tlsConf, o)
diff --git a/Godeps/_workspace/src/github.com/lib/pq/copy.go b/vendor/github.com/lib/pq/copy.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/copy.go
rename to vendor/github.com/lib/pq/copy.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/doc.go b/vendor/github.com/lib/pq/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/doc.go
rename to vendor/github.com/lib/pq/doc.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/encode.go b/vendor/github.com/lib/pq/encode.go
similarity index 99%
rename from Godeps/_workspace/src/github.com/lib/pq/encode.go
rename to vendor/github.com/lib/pq/encode.go
index 88422eb3d6..9fa90f5c9a 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/encode.go
+++ b/vendor/github.com/lib/pq/encode.go
@@ -259,7 +259,7 @@ const (
* driver will decode Postgres' "-infinity" and "infinity" for "timestamp",
* "timestamp with time zone" and "date" types to the predefined minimum and
* maximum times, respectively. When encoding time.Time values, any time which
- * equals or preceeds the predefined minimum time will be encoded to
+ * equals or precedes the predefined minimum time will be encoded to
* "-infinity". Any values at or past the maximum time will similarly be
* encoded to "infinity".
*
diff --git a/Godeps/_workspace/src/github.com/lib/pq/error.go b/vendor/github.com/lib/pq/error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/error.go
rename to vendor/github.com/lib/pq/error.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/hstore/hstore.go b/vendor/github.com/lib/pq/hstore/hstore.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/hstore/hstore.go
rename to vendor/github.com/lib/pq/hstore/hstore.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/listen_example/doc.go b/vendor/github.com/lib/pq/listen_example/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/listen_example/doc.go
rename to vendor/github.com/lib/pq/listen_example/doc.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/notify.go b/vendor/github.com/lib/pq/notify.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/notify.go
rename to vendor/github.com/lib/pq/notify.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/oid/doc.go b/vendor/github.com/lib/pq/oid/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/oid/doc.go
rename to vendor/github.com/lib/pq/oid/doc.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/oid/gen.go b/vendor/github.com/lib/pq/oid/gen.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/oid/gen.go
rename to vendor/github.com/lib/pq/oid/gen.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/oid/types.go b/vendor/github.com/lib/pq/oid/types.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/oid/types.go
rename to vendor/github.com/lib/pq/oid/types.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/url.go b/vendor/github.com/lib/pq/url.go
similarity index 93%
rename from Godeps/_workspace/src/github.com/lib/pq/url.go
rename to vendor/github.com/lib/pq/url.go
index 9bac95c482..f4d8a7c206 100644
--- a/Godeps/_workspace/src/github.com/lib/pq/url.go
+++ b/vendor/github.com/lib/pq/url.go
@@ -2,6 +2,7 @@ package pq
import (
"fmt"
+ "net"
nurl "net/url"
"sort"
"strings"
@@ -54,12 +55,11 @@ func ParseURL(url string) (string, error) {
accrue("password", v)
}
- i := strings.Index(u.Host, ":")
- if i < 0 {
+ if host, port, err := net.SplitHostPort(u.Host); err != nil {
accrue("host", u.Host)
} else {
- accrue("host", u.Host[:i])
- accrue("port", u.Host[i+1:])
+ accrue("host", host)
+ accrue("port", port)
}
if u.Path != "" {
diff --git a/Godeps/_workspace/src/github.com/lib/pq/user_posix.go b/vendor/github.com/lib/pq/user_posix.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/user_posix.go
rename to vendor/github.com/lib/pq/user_posix.go
diff --git a/Godeps/_workspace/src/github.com/lib/pq/user_windows.go b/vendor/github.com/lib/pq/user_windows.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/lib/pq/user_windows.go
rename to vendor/github.com/lib/pq/user_windows.go
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/LICENSE b/vendor/github.com/mattn/go-isatty/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/LICENSE
rename to vendor/github.com/mattn/go-isatty/LICENSE
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/README.md b/vendor/github.com/mattn/go-isatty/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/README.md
rename to vendor/github.com/mattn/go-isatty/README.md
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/doc.go b/vendor/github.com/mattn/go-isatty/doc.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/doc.go
rename to vendor/github.com/mattn/go-isatty/doc.go
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_appengine.go b/vendor/github.com/mattn/go-isatty/isatty_appengine.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_appengine.go
rename to vendor/github.com/mattn/go-isatty/isatty_appengine.go
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_bsd.go b/vendor/github.com/mattn/go-isatty/isatty_bsd.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_bsd.go
rename to vendor/github.com/mattn/go-isatty/isatty_bsd.go
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_linux.go b/vendor/github.com/mattn/go-isatty/isatty_linux.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_linux.go
rename to vendor/github.com/mattn/go-isatty/isatty_linux.go
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_solaris.go b/vendor/github.com/mattn/go-isatty/isatty_solaris.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_solaris.go
rename to vendor/github.com/mattn/go-isatty/isatty_solaris.go
diff --git a/Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_windows.go b/vendor/github.com/mattn/go-isatty/isatty_windows.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mattn/go-isatty/isatty_windows.go
rename to vendor/github.com/mattn/go-isatty/isatty_windows.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/.travis.yml b/vendor/github.com/mitchellh/cli/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/.travis.yml
rename to vendor/github.com/mitchellh/cli/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/LICENSE b/vendor/github.com/mitchellh/cli/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/LICENSE
rename to vendor/github.com/mitchellh/cli/LICENSE
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/README.md b/vendor/github.com/mitchellh/cli/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/README.md
rename to vendor/github.com/mitchellh/cli/README.md
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/cli.go b/vendor/github.com/mitchellh/cli/cli.go
similarity index 81%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/cli.go
rename to vendor/github.com/mitchellh/cli/cli.go
index e871e6136f..81b14f1fcf 100644
--- a/Godeps/_workspace/src/github.com/mitchellh/cli/cli.go
+++ b/vendor/github.com/mitchellh/cli/cli.go
@@ -122,20 +122,11 @@ func (c *CLI) Run() (int, error) {
return 1, nil
}
- // If there is an invalid flag, then error
- if len(c.topFlags) > 0 {
- c.HelpWriter.Write([]byte(
- "Invalid flags before the subcommand. If these flags are for\n" +
- "the subcommand, please put them after the subcommand.\n\n"))
- c.HelpWriter.Write([]byte(c.HelpFunc(c.Commands) + "\n"))
- return 1, nil
- }
-
// Attempt to get the factory function for creating the command
// implementation. If the command is invalid or blank, it is an error.
raw, ok := c.commandTree.Get(c.Subcommand())
if !ok {
- c.HelpWriter.Write([]byte(c.HelpFunc(c.Commands) + "\n"))
+ c.HelpWriter.Write([]byte(c.HelpFunc(c.helpCommands(c.subcommandParent())) + "\n"))
return 1, nil
}
@@ -150,6 +141,15 @@ func (c *CLI) Run() (int, error) {
return 1, nil
}
+ // If there is an invalid flag, then error
+ if len(c.topFlags) > 0 {
+ c.HelpWriter.Write([]byte(
+ "Invalid flags before the subcommand. If these flags are for\n" +
+ "the subcommand, please put them after the subcommand.\n\n"))
+ c.commandHelp(command)
+ return 1, nil
+ }
+
code := command.Run(c.SubcommandArgs())
if code == RunResultHelp {
// Requesting help
@@ -175,6 +175,27 @@ func (c *CLI) SubcommandArgs() []string {
return c.subcommandArgs
}
+// subcommandParent returns the parent of this subcommand, if there is one.
+// If there isn't on, "" is returned.
+func (c *CLI) subcommandParent() string {
+ // Get the subcommand, if it is "" alread just return
+ sub := c.Subcommand()
+ if sub == "" {
+ return sub
+ }
+
+ // Clear any trailing spaces and find the last space
+ sub = strings.TrimRight(sub, " ")
+ idx := strings.LastIndex(sub, " ")
+
+ if idx == -1 {
+ // No space means our parent is root
+ return ""
+ }
+
+ return sub[:idx]
+}
+
func (c *CLI) init() {
if c.HelpFunc == nil {
c.HelpFunc = BasicHelpFunc("app")
@@ -268,15 +289,14 @@ func (c *CLI) commandHelp(command Command) {
}
// Build subcommand list if we have it
- var subcommands []map[string]interface{}
+ var subcommandsTpl []map[string]interface{}
if c.commandNested {
// Get the matching keys
- var keys []string
- prefix := c.Subcommand() + " "
- c.commandTree.WalkPrefix(prefix, func(k string, raw interface{}) bool {
+ subcommands := c.helpCommands(c.Subcommand())
+ keys := make([]string, 0, len(subcommands))
+ for k, _ := range subcommands {
keys = append(keys, k)
- return false
- })
+ }
// Sort the keys
sort.Strings(keys)
@@ -290,34 +310,30 @@ func (c *CLI) commandHelp(command Command) {
}
// Go through and create their structures
- subcommands = make([]map[string]interface{}, len(keys))
- for i, k := range keys {
- raw, ok := c.commandTree.Get(k)
- if !ok {
- // We just checked that it should be here above. If it is
- // isn't, there are serious problems.
- panic("value is missing")
- }
-
+ subcommandsTpl = make([]map[string]interface{}, 0, len(subcommands))
+ for k, raw := range subcommands {
// Get the command
- sub, err := raw.(CommandFactory)()
+ sub, err := raw()
if err != nil {
c.HelpWriter.Write([]byte(fmt.Sprintf(
"Error instantiating %q: %s", k, err)))
}
- // Determine some info
- name := strings.TrimPrefix(k, prefix)
+ // Find the last space and make sure we only include that last part
+ name := k
+ if idx := strings.LastIndex(k, " "); idx > -1 {
+ name = name[idx+1:]
+ }
- subcommands[i] = map[string]interface{}{
+ subcommandsTpl = append(subcommandsTpl, map[string]interface{}{
"Name": name,
"NameAligned": name + strings.Repeat(" ", longest-len(k)),
"Help": sub.Help(),
"Synopsis": sub.Synopsis(),
- }
+ })
}
}
- data["Subcommands"] = subcommands
+ data["Subcommands"] = subcommandsTpl
// Write
err = t.Execute(c.HelpWriter, data)
@@ -330,6 +346,40 @@ func (c *CLI) commandHelp(command Command) {
"Internal error rendering help: %s", err)))
}
+// helpCommands returns the subcommands for the HelpFunc argument.
+// This will only contain immediate subcommands.
+func (c *CLI) helpCommands(prefix string) map[string]CommandFactory {
+ // If our prefix isn't empty, make sure it ends in ' '
+ if prefix != "" && prefix[len(prefix)-1] != ' ' {
+ prefix += " "
+ }
+
+ // Get all the subkeys of this command
+ var keys []string
+ c.commandTree.WalkPrefix(prefix, func(k string, raw interface{}) bool {
+ // Ignore any sub-sub keys, i.e. "foo bar baz" when we want "foo bar"
+ if !strings.Contains(k[len(prefix):], " ") {
+ keys = append(keys, k)
+ }
+
+ return false
+ })
+
+ // For each of the keys return that in the map
+ result := make(map[string]CommandFactory, len(keys))
+ for _, k := range keys {
+ raw, ok := c.commandTree.Get(k)
+ if !ok {
+ // We just got it via WalkPrefix above, so we just panic
+ panic("not found: " + k)
+ }
+
+ result[k] = raw.(CommandFactory)
+ }
+
+ return result
+}
+
func (c *CLI) processArgs() {
for i, arg := range c.Args {
if c.subcommand == "" {
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/command.go b/vendor/github.com/mitchellh/cli/command.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/command.go
rename to vendor/github.com/mitchellh/cli/command.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/command_mock.go b/vendor/github.com/mitchellh/cli/command_mock.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/command_mock.go
rename to vendor/github.com/mitchellh/cli/command_mock.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/help.go b/vendor/github.com/mitchellh/cli/help.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/help.go
rename to vendor/github.com/mitchellh/cli/help.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/ui.go b/vendor/github.com/mitchellh/cli/ui.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/ui.go
rename to vendor/github.com/mitchellh/cli/ui.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/ui_colored.go b/vendor/github.com/mitchellh/cli/ui_colored.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/ui_colored.go
rename to vendor/github.com/mitchellh/cli/ui_colored.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/ui_concurrent.go b/vendor/github.com/mitchellh/cli/ui_concurrent.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/ui_concurrent.go
rename to vendor/github.com/mitchellh/cli/ui_concurrent.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/ui_mock.go b/vendor/github.com/mitchellh/cli/ui_mock.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/ui_mock.go
rename to vendor/github.com/mitchellh/cli/ui_mock.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/cli/ui_writer.go b/vendor/github.com/mitchellh/cli/ui_writer.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/cli/ui_writer.go
rename to vendor/github.com/mitchellh/cli/ui_writer.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/copystructure/LICENSE b/vendor/github.com/mitchellh/copystructure/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/copystructure/LICENSE
rename to vendor/github.com/mitchellh/copystructure/LICENSE
diff --git a/Godeps/_workspace/src/github.com/mitchellh/copystructure/README.md b/vendor/github.com/mitchellh/copystructure/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/copystructure/README.md
rename to vendor/github.com/mitchellh/copystructure/README.md
diff --git a/Godeps/_workspace/src/github.com/mitchellh/copystructure/copier_time.go b/vendor/github.com/mitchellh/copystructure/copier_time.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/copystructure/copier_time.go
rename to vendor/github.com/mitchellh/copystructure/copier_time.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/copystructure/copystructure.go b/vendor/github.com/mitchellh/copystructure/copystructure.go
similarity index 97%
rename from Godeps/_workspace/src/github.com/mitchellh/copystructure/copystructure.go
rename to vendor/github.com/mitchellh/copystructure/copystructure.go
index c248e4f6f2..7ef83d8aa3 100644
--- a/Godeps/_workspace/src/github.com/mitchellh/copystructure/copystructure.go
+++ b/vendor/github.com/mitchellh/copystructure/copystructure.go
@@ -155,8 +155,10 @@ func (w *walker) Primitive(v reflect.Value) error {
return nil
}
+ // IsValid verifies the v is non-zero and CanInterface verifies
+ // that we're allowed to read this value (unexported fields).
var newV reflect.Value
- if v.IsValid() {
+ if v.IsValid() && v.CanInterface() {
newV = reflect.New(v.Type())
reflect.Indirect(newV).Set(v)
}
diff --git a/Godeps/_workspace/src/github.com/mitchellh/go-homedir/LICENSE b/vendor/github.com/mitchellh/go-homedir/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/go-homedir/LICENSE
rename to vendor/github.com/mitchellh/go-homedir/LICENSE
diff --git a/Godeps/_workspace/src/github.com/mitchellh/go-homedir/README.md b/vendor/github.com/mitchellh/go-homedir/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/go-homedir/README.md
rename to vendor/github.com/mitchellh/go-homedir/README.md
diff --git a/Godeps/_workspace/src/github.com/mitchellh/go-homedir/homedir.go b/vendor/github.com/mitchellh/go-homedir/homedir.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/go-homedir/homedir.go
rename to vendor/github.com/mitchellh/go-homedir/homedir.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/.travis.yml b/vendor/github.com/mitchellh/mapstructure/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/mapstructure/.travis.yml
rename to vendor/github.com/mitchellh/mapstructure/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/LICENSE b/vendor/github.com/mitchellh/mapstructure/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/mapstructure/LICENSE
rename to vendor/github.com/mitchellh/mapstructure/LICENSE
diff --git a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/README.md b/vendor/github.com/mitchellh/mapstructure/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/mapstructure/README.md
rename to vendor/github.com/mitchellh/mapstructure/README.md
diff --git a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/decode_hooks.go b/vendor/github.com/mitchellh/mapstructure/decode_hooks.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/mapstructure/decode_hooks.go
rename to vendor/github.com/mitchellh/mapstructure/decode_hooks.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/error.go b/vendor/github.com/mitchellh/mapstructure/error.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/mapstructure/error.go
rename to vendor/github.com/mitchellh/mapstructure/error.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/mapstructure.go b/vendor/github.com/mitchellh/mapstructure/mapstructure.go
similarity index 95%
rename from Godeps/_workspace/src/github.com/mitchellh/mapstructure/mapstructure.go
rename to vendor/github.com/mitchellh/mapstructure/mapstructure.go
index 40be5116db..a367a95b68 100644
--- a/Godeps/_workspace/src/github.com/mitchellh/mapstructure/mapstructure.go
+++ b/vendor/github.com/mitchellh/mapstructure/mapstructure.go
@@ -67,6 +67,7 @@ type DecoderConfig struct {
// FALSE, false, False. Anything else is an error)
// - empty array = empty map and vice versa
// - negative numbers to overflowed uint values (base 10)
+ // - slice of maps to a merged map
//
WeaklyTypedInput bool
@@ -456,15 +457,30 @@ func (d *Decoder) decodeMap(name string, data interface{}, val reflect.Value) er
// Check input type
dataVal := reflect.Indirect(reflect.ValueOf(data))
if dataVal.Kind() != reflect.Map {
- // Accept empty array/slice instead of an empty map in weakly typed mode
- if d.config.WeaklyTypedInput &&
- (dataVal.Kind() == reflect.Slice || dataVal.Kind() == reflect.Array) &&
- dataVal.Len() == 0 {
- val.Set(valMap)
- return nil
- } else {
- return fmt.Errorf("'%s' expected a map, got '%s'", name, dataVal.Kind())
+ // In weak mode, we accept a slice of maps as an input...
+ if d.config.WeaklyTypedInput {
+ switch dataVal.Kind() {
+ case reflect.Array, reflect.Slice:
+ // Special case for BC reasons (covered by tests)
+ if dataVal.Len() == 0 {
+ val.Set(valMap)
+ return nil
+ }
+
+ for i := 0; i < dataVal.Len(); i++ {
+ err := d.decode(
+ fmt.Sprintf("%s[%d]", name, i),
+ dataVal.Index(i).Interface(), val)
+ if err != nil {
+ return err
+ }
+ }
+
+ return nil
+ }
}
+
+ return fmt.Errorf("'%s' expected a map, got '%s'", name, dataVal.Kind())
}
// Accumulate errors
@@ -607,11 +623,12 @@ func (d *Decoder) decodeStruct(name string, data interface{}, val reflect.Value)
structs = structs[1:]
structType := structVal.Type()
+
for i := 0; i < structType.NumField(); i++ {
fieldType := structType.Field(i)
+ fieldKind := fieldType.Type.Kind()
if fieldType.Anonymous {
- fieldKind := fieldType.Type.Kind()
if fieldKind != reflect.Struct {
errors = appendErrors(errors,
fmt.Errorf("%s: unsupported type: %s", fieldType.Name, fieldKind))
@@ -630,7 +647,12 @@ func (d *Decoder) decodeStruct(name string, data interface{}, val reflect.Value)
}
if squash {
- structs = append(structs, val.FieldByName(fieldType.Name))
+ if fieldKind != reflect.Struct {
+ errors = appendErrors(errors,
+ fmt.Errorf("%s: unsupported type for squash: %s", fieldType.Name, fieldKind))
+ } else {
+ structs = append(structs, val.FieldByName(fieldType.Name))
+ }
continue
}
diff --git a/Godeps/_workspace/src/github.com/mitchellh/reflectwalk/LICENSE b/vendor/github.com/mitchellh/reflectwalk/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/reflectwalk/LICENSE
rename to vendor/github.com/mitchellh/reflectwalk/LICENSE
diff --git a/Godeps/_workspace/src/github.com/mitchellh/reflectwalk/README.md b/vendor/github.com/mitchellh/reflectwalk/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/reflectwalk/README.md
rename to vendor/github.com/mitchellh/reflectwalk/README.md
diff --git a/Godeps/_workspace/src/github.com/mitchellh/reflectwalk/location.go b/vendor/github.com/mitchellh/reflectwalk/location.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/reflectwalk/location.go
rename to vendor/github.com/mitchellh/reflectwalk/location.go
diff --git a/Godeps/_workspace/src/github.com/mitchellh/reflectwalk/location_string.go b/vendor/github.com/mitchellh/reflectwalk/location_string.go
similarity index 90%
rename from Godeps/_workspace/src/github.com/mitchellh/reflectwalk/location_string.go
rename to vendor/github.com/mitchellh/reflectwalk/location_string.go
index d3cfe85459..ecdef2985f 100644
--- a/Godeps/_workspace/src/github.com/mitchellh/reflectwalk/location_string.go
+++ b/vendor/github.com/mitchellh/reflectwalk/location_string.go
@@ -9,7 +9,7 @@ const _Location_name = "NoneMapMapKeyMapValueSliceSliceElemStructStructFieldWalk
var _Location_index = [...]uint8{0, 4, 7, 13, 21, 26, 35, 41, 52, 59}
func (i Location) String() string {
- if i+1 >= Location(len(_Location_index)) {
+ if i >= Location(len(_Location_index)-1) {
return fmt.Sprintf("Location(%d)", i)
}
return _Location_name[_Location_index[i]:_Location_index[i+1]]
diff --git a/Godeps/_workspace/src/github.com/mitchellh/reflectwalk/reflectwalk.go b/vendor/github.com/mitchellh/reflectwalk/reflectwalk.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/mitchellh/reflectwalk/reflectwalk.go
rename to vendor/github.com/mitchellh/reflectwalk/reflectwalk.go
diff --git a/Godeps/_workspace/src/github.com/ryanuber/columnize/.travis.yml b/vendor/github.com/ryanuber/columnize/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/github.com/ryanuber/columnize/.travis.yml
rename to vendor/github.com/ryanuber/columnize/.travis.yml
diff --git a/Godeps/_workspace/src/github.com/ryanuber/columnize/COPYING b/vendor/github.com/ryanuber/columnize/COPYING
similarity index 100%
rename from Godeps/_workspace/src/github.com/ryanuber/columnize/COPYING
rename to vendor/github.com/ryanuber/columnize/COPYING
diff --git a/Godeps/_workspace/src/github.com/ryanuber/columnize/README.md b/vendor/github.com/ryanuber/columnize/README.md
similarity index 100%
rename from Godeps/_workspace/src/github.com/ryanuber/columnize/README.md
rename to vendor/github.com/ryanuber/columnize/README.md
diff --git a/Godeps/_workspace/src/github.com/ryanuber/columnize/columnize.go b/vendor/github.com/ryanuber/columnize/columnize.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/ryanuber/columnize/columnize.go
rename to vendor/github.com/ryanuber/columnize/columnize.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/LICENSE b/vendor/github.com/samuel/go-zookeeper/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/LICENSE
rename to vendor/github.com/samuel/go-zookeeper/LICENSE
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/conn.go b/vendor/github.com/samuel/go-zookeeper/zk/conn.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/conn.go
rename to vendor/github.com/samuel/go-zookeeper/zk/conn.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/constants.go b/vendor/github.com/samuel/go-zookeeper/zk/constants.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/constants.go
rename to vendor/github.com/samuel/go-zookeeper/zk/constants.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/dnshostprovider.go b/vendor/github.com/samuel/go-zookeeper/zk/dnshostprovider.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/dnshostprovider.go
rename to vendor/github.com/samuel/go-zookeeper/zk/dnshostprovider.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/flw.go b/vendor/github.com/samuel/go-zookeeper/zk/flw.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/flw.go
rename to vendor/github.com/samuel/go-zookeeper/zk/flw.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/lock.go b/vendor/github.com/samuel/go-zookeeper/zk/lock.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/lock.go
rename to vendor/github.com/samuel/go-zookeeper/zk/lock.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/server_help.go b/vendor/github.com/samuel/go-zookeeper/zk/server_help.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/server_help.go
rename to vendor/github.com/samuel/go-zookeeper/zk/server_help.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/server_java.go b/vendor/github.com/samuel/go-zookeeper/zk/server_java.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/server_java.go
rename to vendor/github.com/samuel/go-zookeeper/zk/server_java.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/structs.go b/vendor/github.com/samuel/go-zookeeper/zk/structs.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/structs.go
rename to vendor/github.com/samuel/go-zookeeper/zk/structs.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/tracer.go b/vendor/github.com/samuel/go-zookeeper/zk/tracer.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/tracer.go
rename to vendor/github.com/samuel/go-zookeeper/zk/tracer.go
diff --git a/Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/util.go b/vendor/github.com/samuel/go-zookeeper/zk/util.go
similarity index 100%
rename from Godeps/_workspace/src/github.com/samuel/go-zookeeper/zk/util.go
rename to vendor/github.com/samuel/go-zookeeper/zk/util.go
diff --git a/Godeps/_workspace/src/golang.org/x/net/LICENSE b/vendor/golang.org/x/crypto/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/net/LICENSE
rename to vendor/golang.org/x/crypto/LICENSE
diff --git a/Godeps/_workspace/src/golang.org/x/net/PATENTS b/vendor/golang.org/x/crypto/PATENTS
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/net/PATENTS
rename to vendor/golang.org/x/crypto/PATENTS
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/base64.go b/vendor/golang.org/x/crypto/bcrypt/base64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/bcrypt/base64.go
rename to vendor/golang.org/x/crypto/bcrypt/base64.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt.go b/vendor/golang.org/x/crypto/bcrypt/bcrypt.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/bcrypt/bcrypt.go
rename to vendor/golang.org/x/crypto/bcrypt/bcrypt.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/blowfish/block.go b/vendor/golang.org/x/crypto/blowfish/block.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/blowfish/block.go
rename to vendor/golang.org/x/crypto/blowfish/block.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/blowfish/cipher.go b/vendor/golang.org/x/crypto/blowfish/cipher.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/blowfish/cipher.go
rename to vendor/golang.org/x/crypto/blowfish/cipher.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/blowfish/const.go b/vendor/golang.org/x/crypto/blowfish/const.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/blowfish/const.go
rename to vendor/golang.org/x/crypto/blowfish/const.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/cast5/cast5.go b/vendor/golang.org/x/crypto/cast5/cast5.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/cast5/cast5.go
rename to vendor/golang.org/x/crypto/cast5/cast5.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/const_amd64.s b/vendor/golang.org/x/crypto/curve25519/const_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/const_amd64.s
rename to vendor/golang.org/x/crypto/curve25519/const_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/cswap_amd64.s b/vendor/golang.org/x/crypto/curve25519/cswap_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/cswap_amd64.s
rename to vendor/golang.org/x/crypto/curve25519/cswap_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/curve25519.go b/vendor/golang.org/x/crypto/curve25519/curve25519.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/curve25519.go
rename to vendor/golang.org/x/crypto/curve25519/curve25519.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/doc.go b/vendor/golang.org/x/crypto/curve25519/doc.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/doc.go
rename to vendor/golang.org/x/crypto/curve25519/doc.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/freeze_amd64.s b/vendor/golang.org/x/crypto/curve25519/freeze_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/freeze_amd64.s
rename to vendor/golang.org/x/crypto/curve25519/freeze_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/ladderstep_amd64.s b/vendor/golang.org/x/crypto/curve25519/ladderstep_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/ladderstep_amd64.s
rename to vendor/golang.org/x/crypto/curve25519/ladderstep_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/mont25519_amd64.go b/vendor/golang.org/x/crypto/curve25519/mont25519_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/mont25519_amd64.go
rename to vendor/golang.org/x/crypto/curve25519/mont25519_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/mul_amd64.s b/vendor/golang.org/x/crypto/curve25519/mul_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/mul_amd64.s
rename to vendor/golang.org/x/crypto/curve25519/mul_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/curve25519/square_amd64.s b/vendor/golang.org/x/crypto/curve25519/square_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/curve25519/square_amd64.s
rename to vendor/golang.org/x/crypto/curve25519/square_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/armor/armor.go b/vendor/golang.org/x/crypto/openpgp/armor/armor.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/armor/armor.go
rename to vendor/golang.org/x/crypto/openpgp/armor/armor.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/armor/encode.go b/vendor/golang.org/x/crypto/openpgp/armor/encode.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/armor/encode.go
rename to vendor/golang.org/x/crypto/openpgp/armor/encode.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/canonical_text.go b/vendor/golang.org/x/crypto/openpgp/canonical_text.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/canonical_text.go
rename to vendor/golang.org/x/crypto/openpgp/canonical_text.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/clearsign/clearsign.go b/vendor/golang.org/x/crypto/openpgp/clearsign/clearsign.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/clearsign/clearsign.go
rename to vendor/golang.org/x/crypto/openpgp/clearsign/clearsign.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/elgamal/elgamal.go b/vendor/golang.org/x/crypto/openpgp/elgamal/elgamal.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/elgamal/elgamal.go
rename to vendor/golang.org/x/crypto/openpgp/elgamal/elgamal.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/errors/errors.go b/vendor/golang.org/x/crypto/openpgp/errors/errors.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/errors/errors.go
rename to vendor/golang.org/x/crypto/openpgp/errors/errors.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/keys.go b/vendor/golang.org/x/crypto/openpgp/keys.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/keys.go
rename to vendor/golang.org/x/crypto/openpgp/keys.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/compressed.go b/vendor/golang.org/x/crypto/openpgp/packet/compressed.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/compressed.go
rename to vendor/golang.org/x/crypto/openpgp/packet/compressed.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/config.go b/vendor/golang.org/x/crypto/openpgp/packet/config.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/config.go
rename to vendor/golang.org/x/crypto/openpgp/packet/config.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/encrypted_key.go b/vendor/golang.org/x/crypto/openpgp/packet/encrypted_key.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/encrypted_key.go
rename to vendor/golang.org/x/crypto/openpgp/packet/encrypted_key.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/literal.go b/vendor/golang.org/x/crypto/openpgp/packet/literal.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/literal.go
rename to vendor/golang.org/x/crypto/openpgp/packet/literal.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/ocfb.go b/vendor/golang.org/x/crypto/openpgp/packet/ocfb.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/ocfb.go
rename to vendor/golang.org/x/crypto/openpgp/packet/ocfb.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/one_pass_signature.go b/vendor/golang.org/x/crypto/openpgp/packet/one_pass_signature.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/one_pass_signature.go
rename to vendor/golang.org/x/crypto/openpgp/packet/one_pass_signature.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/opaque.go b/vendor/golang.org/x/crypto/openpgp/packet/opaque.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/opaque.go
rename to vendor/golang.org/x/crypto/openpgp/packet/opaque.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/packet.go b/vendor/golang.org/x/crypto/openpgp/packet/packet.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/packet.go
rename to vendor/golang.org/x/crypto/openpgp/packet/packet.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/private_key.go b/vendor/golang.org/x/crypto/openpgp/packet/private_key.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/private_key.go
rename to vendor/golang.org/x/crypto/openpgp/packet/private_key.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/public_key.go b/vendor/golang.org/x/crypto/openpgp/packet/public_key.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/public_key.go
rename to vendor/golang.org/x/crypto/openpgp/packet/public_key.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/public_key_v3.go b/vendor/golang.org/x/crypto/openpgp/packet/public_key_v3.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/public_key_v3.go
rename to vendor/golang.org/x/crypto/openpgp/packet/public_key_v3.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/reader.go b/vendor/golang.org/x/crypto/openpgp/packet/reader.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/reader.go
rename to vendor/golang.org/x/crypto/openpgp/packet/reader.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/signature.go b/vendor/golang.org/x/crypto/openpgp/packet/signature.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/signature.go
rename to vendor/golang.org/x/crypto/openpgp/packet/signature.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/signature_v3.go b/vendor/golang.org/x/crypto/openpgp/packet/signature_v3.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/signature_v3.go
rename to vendor/golang.org/x/crypto/openpgp/packet/signature_v3.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/symmetric_key_encrypted.go b/vendor/golang.org/x/crypto/openpgp/packet/symmetric_key_encrypted.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/symmetric_key_encrypted.go
rename to vendor/golang.org/x/crypto/openpgp/packet/symmetric_key_encrypted.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/symmetrically_encrypted.go b/vendor/golang.org/x/crypto/openpgp/packet/symmetrically_encrypted.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/symmetrically_encrypted.go
rename to vendor/golang.org/x/crypto/openpgp/packet/symmetrically_encrypted.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/userattribute.go b/vendor/golang.org/x/crypto/openpgp/packet/userattribute.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/userattribute.go
rename to vendor/golang.org/x/crypto/openpgp/packet/userattribute.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/userid.go b/vendor/golang.org/x/crypto/openpgp/packet/userid.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/packet/userid.go
rename to vendor/golang.org/x/crypto/openpgp/packet/userid.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/read.go b/vendor/golang.org/x/crypto/openpgp/read.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/read.go
rename to vendor/golang.org/x/crypto/openpgp/read.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/s2k/s2k.go b/vendor/golang.org/x/crypto/openpgp/s2k/s2k.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/s2k/s2k.go
rename to vendor/golang.org/x/crypto/openpgp/s2k/s2k.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/openpgp/write.go b/vendor/golang.org/x/crypto/openpgp/write.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/openpgp/write.go
rename to vendor/golang.org/x/crypto/openpgp/write.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/client.go b/vendor/golang.org/x/crypto/ssh/agent/client.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/client.go
rename to vendor/golang.org/x/crypto/ssh/agent/client.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/forward.go b/vendor/golang.org/x/crypto/ssh/agent/forward.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/forward.go
rename to vendor/golang.org/x/crypto/ssh/agent/forward.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/keyring.go b/vendor/golang.org/x/crypto/ssh/agent/keyring.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/keyring.go
rename to vendor/golang.org/x/crypto/ssh/agent/keyring.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/server.go b/vendor/golang.org/x/crypto/ssh/agent/server.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/agent/server.go
rename to vendor/golang.org/x/crypto/ssh/agent/server.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/buffer.go b/vendor/golang.org/x/crypto/ssh/buffer.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/buffer.go
rename to vendor/golang.org/x/crypto/ssh/buffer.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/certs.go b/vendor/golang.org/x/crypto/ssh/certs.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/certs.go
rename to vendor/golang.org/x/crypto/ssh/certs.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/channel.go b/vendor/golang.org/x/crypto/ssh/channel.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/channel.go
rename to vendor/golang.org/x/crypto/ssh/channel.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/cipher.go b/vendor/golang.org/x/crypto/ssh/cipher.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/cipher.go
rename to vendor/golang.org/x/crypto/ssh/cipher.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/client.go b/vendor/golang.org/x/crypto/ssh/client.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/client.go
rename to vendor/golang.org/x/crypto/ssh/client.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/client_auth.go b/vendor/golang.org/x/crypto/ssh/client_auth.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/client_auth.go
rename to vendor/golang.org/x/crypto/ssh/client_auth.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/common.go b/vendor/golang.org/x/crypto/ssh/common.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/common.go
rename to vendor/golang.org/x/crypto/ssh/common.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/connection.go b/vendor/golang.org/x/crypto/ssh/connection.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/connection.go
rename to vendor/golang.org/x/crypto/ssh/connection.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/doc.go b/vendor/golang.org/x/crypto/ssh/doc.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/doc.go
rename to vendor/golang.org/x/crypto/ssh/doc.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/handshake.go b/vendor/golang.org/x/crypto/ssh/handshake.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/handshake.go
rename to vendor/golang.org/x/crypto/ssh/handshake.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/kex.go b/vendor/golang.org/x/crypto/ssh/kex.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/kex.go
rename to vendor/golang.org/x/crypto/ssh/kex.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/keys.go b/vendor/golang.org/x/crypto/ssh/keys.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/keys.go
rename to vendor/golang.org/x/crypto/ssh/keys.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/mac.go b/vendor/golang.org/x/crypto/ssh/mac.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/mac.go
rename to vendor/golang.org/x/crypto/ssh/mac.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/messages.go b/vendor/golang.org/x/crypto/ssh/messages.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/messages.go
rename to vendor/golang.org/x/crypto/ssh/messages.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/mux.go b/vendor/golang.org/x/crypto/ssh/mux.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/mux.go
rename to vendor/golang.org/x/crypto/ssh/mux.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/server.go b/vendor/golang.org/x/crypto/ssh/server.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/server.go
rename to vendor/golang.org/x/crypto/ssh/server.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/session.go b/vendor/golang.org/x/crypto/ssh/session.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/session.go
rename to vendor/golang.org/x/crypto/ssh/session.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/tcpip.go b/vendor/golang.org/x/crypto/ssh/tcpip.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/tcpip.go
rename to vendor/golang.org/x/crypto/ssh/tcpip.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/terminal.go b/vendor/golang.org/x/crypto/ssh/terminal/terminal.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/terminal.go
rename to vendor/golang.org/x/crypto/ssh/terminal/terminal.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util.go b/vendor/golang.org/x/crypto/ssh/terminal/util.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util.go
rename to vendor/golang.org/x/crypto/ssh/terminal/util.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util_bsd.go b/vendor/golang.org/x/crypto/ssh/terminal/util_bsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util_bsd.go
rename to vendor/golang.org/x/crypto/ssh/terminal/util_bsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util_linux.go b/vendor/golang.org/x/crypto/ssh/terminal/util_linux.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util_linux.go
rename to vendor/golang.org/x/crypto/ssh/terminal/util_linux.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util_windows.go b/vendor/golang.org/x/crypto/ssh/terminal/util_windows.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/terminal/util_windows.go
rename to vendor/golang.org/x/crypto/ssh/terminal/util_windows.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/test/doc.go b/vendor/golang.org/x/crypto/ssh/test/doc.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/test/doc.go
rename to vendor/golang.org/x/crypto/ssh/test/doc.go
diff --git a/Godeps/_workspace/src/golang.org/x/crypto/ssh/transport.go b/vendor/golang.org/x/crypto/ssh/transport.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/crypto/ssh/transport.go
rename to vendor/golang.org/x/crypto/ssh/transport.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/LICENSE b/vendor/golang.org/x/net/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/LICENSE
rename to vendor/golang.org/x/net/LICENSE
diff --git a/Godeps/_workspace/src/golang.org/x/sys/PATENTS b/vendor/golang.org/x/net/PATENTS
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/PATENTS
rename to vendor/golang.org/x/net/PATENTS
diff --git a/vendor/golang.org/x/net/context/context.go b/vendor/golang.org/x/net/context/context.go
new file mode 100644
index 0000000000..11bd8d34e6
--- /dev/null
+++ b/vendor/golang.org/x/net/context/context.go
@@ -0,0 +1,447 @@
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// Package context defines the Context type, which carries deadlines,
+// cancelation signals, and other request-scoped values across API boundaries
+// and between processes.
+//
+// Incoming requests to a server should create a Context, and outgoing calls to
+// servers should accept a Context. The chain of function calls between must
+// propagate the Context, optionally replacing it with a modified copy created
+// using WithDeadline, WithTimeout, WithCancel, or WithValue.
+//
+// Programs that use Contexts should follow these rules to keep interfaces
+// consistent across packages and enable static analysis tools to check context
+// propagation:
+//
+// Do not store Contexts inside a struct type; instead, pass a Context
+// explicitly to each function that needs it. The Context should be the first
+// parameter, typically named ctx:
+//
+// func DoSomething(ctx context.Context, arg Arg) error {
+// // ... use ctx ...
+// }
+//
+// Do not pass a nil Context, even if a function permits it. Pass context.TODO
+// if you are unsure about which Context to use.
+//
+// Use context Values only for request-scoped data that transits processes and
+// APIs, not for passing optional parameters to functions.
+//
+// The same Context may be passed to functions running in different goroutines;
+// Contexts are safe for simultaneous use by multiple goroutines.
+//
+// See http://blog.golang.org/context for example code for a server that uses
+// Contexts.
+package context
+
+import (
+ "errors"
+ "fmt"
+ "sync"
+ "time"
+)
+
+// A Context carries a deadline, a cancelation signal, and other values across
+// API boundaries.
+//
+// Context's methods may be called by multiple goroutines simultaneously.
+type Context interface {
+ // Deadline returns the time when work done on behalf of this context
+ // should be canceled. Deadline returns ok==false when no deadline is
+ // set. Successive calls to Deadline return the same results.
+ Deadline() (deadline time.Time, ok bool)
+
+ // Done returns a channel that's closed when work done on behalf of this
+ // context should be canceled. Done may return nil if this context can
+ // never be canceled. Successive calls to Done return the same value.
+ //
+ // WithCancel arranges for Done to be closed when cancel is called;
+ // WithDeadline arranges for Done to be closed when the deadline
+ // expires; WithTimeout arranges for Done to be closed when the timeout
+ // elapses.
+ //
+ // Done is provided for use in select statements:
+ //
+ // // Stream generates values with DoSomething and sends them to out
+ // // until DoSomething returns an error or ctx.Done is closed.
+ // func Stream(ctx context.Context, out <-chan Value) error {
+ // for {
+ // v, err := DoSomething(ctx)
+ // if err != nil {
+ // return err
+ // }
+ // select {
+ // case <-ctx.Done():
+ // return ctx.Err()
+ // case out <- v:
+ // }
+ // }
+ // }
+ //
+ // See http://blog.golang.org/pipelines for more examples of how to use
+ // a Done channel for cancelation.
+ Done() <-chan struct{}
+
+ // Err returns a non-nil error value after Done is closed. Err returns
+ // Canceled if the context was canceled or DeadlineExceeded if the
+ // context's deadline passed. No other values for Err are defined.
+ // After Done is closed, successive calls to Err return the same value.
+ Err() error
+
+ // Value returns the value associated with this context for key, or nil
+ // if no value is associated with key. Successive calls to Value with
+ // the same key returns the same result.
+ //
+ // Use context values only for request-scoped data that transits
+ // processes and API boundaries, not for passing optional parameters to
+ // functions.
+ //
+ // A key identifies a specific value in a Context. Functions that wish
+ // to store values in Context typically allocate a key in a global
+ // variable then use that key as the argument to context.WithValue and
+ // Context.Value. A key can be any type that supports equality;
+ // packages should define keys as an unexported type to avoid
+ // collisions.
+ //
+ // Packages that define a Context key should provide type-safe accessors
+ // for the values stores using that key:
+ //
+ // // Package user defines a User type that's stored in Contexts.
+ // package user
+ //
+ // import "golang.org/x/net/context"
+ //
+ // // User is the type of value stored in the Contexts.
+ // type User struct {...}
+ //
+ // // key is an unexported type for keys defined in this package.
+ // // This prevents collisions with keys defined in other packages.
+ // type key int
+ //
+ // // userKey is the key for user.User values in Contexts. It is
+ // // unexported; clients use user.NewContext and user.FromContext
+ // // instead of using this key directly.
+ // var userKey key = 0
+ //
+ // // NewContext returns a new Context that carries value u.
+ // func NewContext(ctx context.Context, u *User) context.Context {
+ // return context.WithValue(ctx, userKey, u)
+ // }
+ //
+ // // FromContext returns the User value stored in ctx, if any.
+ // func FromContext(ctx context.Context) (*User, bool) {
+ // u, ok := ctx.Value(userKey).(*User)
+ // return u, ok
+ // }
+ Value(key interface{}) interface{}
+}
+
+// Canceled is the error returned by Context.Err when the context is canceled.
+var Canceled = errors.New("context canceled")
+
+// DeadlineExceeded is the error returned by Context.Err when the context's
+// deadline passes.
+var DeadlineExceeded = errors.New("context deadline exceeded")
+
+// An emptyCtx is never canceled, has no values, and has no deadline. It is not
+// struct{}, since vars of this type must have distinct addresses.
+type emptyCtx int
+
+func (*emptyCtx) Deadline() (deadline time.Time, ok bool) {
+ return
+}
+
+func (*emptyCtx) Done() <-chan struct{} {
+ return nil
+}
+
+func (*emptyCtx) Err() error {
+ return nil
+}
+
+func (*emptyCtx) Value(key interface{}) interface{} {
+ return nil
+}
+
+func (e *emptyCtx) String() string {
+ switch e {
+ case background:
+ return "context.Background"
+ case todo:
+ return "context.TODO"
+ }
+ return "unknown empty Context"
+}
+
+var (
+ background = new(emptyCtx)
+ todo = new(emptyCtx)
+)
+
+// Background returns a non-nil, empty Context. It is never canceled, has no
+// values, and has no deadline. It is typically used by the main function,
+// initialization, and tests, and as the top-level Context for incoming
+// requests.
+func Background() Context {
+ return background
+}
+
+// TODO returns a non-nil, empty Context. Code should use context.TODO when
+// it's unclear which Context to use or it is not yet available (because the
+// surrounding function has not yet been extended to accept a Context
+// parameter). TODO is recognized by static analysis tools that determine
+// whether Contexts are propagated correctly in a program.
+func TODO() Context {
+ return todo
+}
+
+// A CancelFunc tells an operation to abandon its work.
+// A CancelFunc does not wait for the work to stop.
+// After the first call, subsequent calls to a CancelFunc do nothing.
+type CancelFunc func()
+
+// WithCancel returns a copy of parent with a new Done channel. The returned
+// context's Done channel is closed when the returned cancel function is called
+// or when the parent context's Done channel is closed, whichever happens first.
+//
+// Canceling this context releases resources associated with it, so code should
+// call cancel as soon as the operations running in this Context complete.
+func WithCancel(parent Context) (ctx Context, cancel CancelFunc) {
+ c := newCancelCtx(parent)
+ propagateCancel(parent, &c)
+ return &c, func() { c.cancel(true, Canceled) }
+}
+
+// newCancelCtx returns an initialized cancelCtx.
+func newCancelCtx(parent Context) cancelCtx {
+ return cancelCtx{
+ Context: parent,
+ done: make(chan struct{}),
+ }
+}
+
+// propagateCancel arranges for child to be canceled when parent is.
+func propagateCancel(parent Context, child canceler) {
+ if parent.Done() == nil {
+ return // parent is never canceled
+ }
+ if p, ok := parentCancelCtx(parent); ok {
+ p.mu.Lock()
+ if p.err != nil {
+ // parent has already been canceled
+ child.cancel(false, p.err)
+ } else {
+ if p.children == nil {
+ p.children = make(map[canceler]bool)
+ }
+ p.children[child] = true
+ }
+ p.mu.Unlock()
+ } else {
+ go func() {
+ select {
+ case <-parent.Done():
+ child.cancel(false, parent.Err())
+ case <-child.Done():
+ }
+ }()
+ }
+}
+
+// parentCancelCtx follows a chain of parent references until it finds a
+// *cancelCtx. This function understands how each of the concrete types in this
+// package represents its parent.
+func parentCancelCtx(parent Context) (*cancelCtx, bool) {
+ for {
+ switch c := parent.(type) {
+ case *cancelCtx:
+ return c, true
+ case *timerCtx:
+ return &c.cancelCtx, true
+ case *valueCtx:
+ parent = c.Context
+ default:
+ return nil, false
+ }
+ }
+}
+
+// removeChild removes a context from its parent.
+func removeChild(parent Context, child canceler) {
+ p, ok := parentCancelCtx(parent)
+ if !ok {
+ return
+ }
+ p.mu.Lock()
+ if p.children != nil {
+ delete(p.children, child)
+ }
+ p.mu.Unlock()
+}
+
+// A canceler is a context type that can be canceled directly. The
+// implementations are *cancelCtx and *timerCtx.
+type canceler interface {
+ cancel(removeFromParent bool, err error)
+ Done() <-chan struct{}
+}
+
+// A cancelCtx can be canceled. When canceled, it also cancels any children
+// that implement canceler.
+type cancelCtx struct {
+ Context
+
+ done chan struct{} // closed by the first cancel call.
+
+ mu sync.Mutex
+ children map[canceler]bool // set to nil by the first cancel call
+ err error // set to non-nil by the first cancel call
+}
+
+func (c *cancelCtx) Done() <-chan struct{} {
+ return c.done
+}
+
+func (c *cancelCtx) Err() error {
+ c.mu.Lock()
+ defer c.mu.Unlock()
+ return c.err
+}
+
+func (c *cancelCtx) String() string {
+ return fmt.Sprintf("%v.WithCancel", c.Context)
+}
+
+// cancel closes c.done, cancels each of c's children, and, if
+// removeFromParent is true, removes c from its parent's children.
+func (c *cancelCtx) cancel(removeFromParent bool, err error) {
+ if err == nil {
+ panic("context: internal error: missing cancel error")
+ }
+ c.mu.Lock()
+ if c.err != nil {
+ c.mu.Unlock()
+ return // already canceled
+ }
+ c.err = err
+ close(c.done)
+ for child := range c.children {
+ // NOTE: acquiring the child's lock while holding parent's lock.
+ child.cancel(false, err)
+ }
+ c.children = nil
+ c.mu.Unlock()
+
+ if removeFromParent {
+ removeChild(c.Context, c)
+ }
+}
+
+// WithDeadline returns a copy of the parent context with the deadline adjusted
+// to be no later than d. If the parent's deadline is already earlier than d,
+// WithDeadline(parent, d) is semantically equivalent to parent. The returned
+// context's Done channel is closed when the deadline expires, when the returned
+// cancel function is called, or when the parent context's Done channel is
+// closed, whichever happens first.
+//
+// Canceling this context releases resources associated with it, so code should
+// call cancel as soon as the operations running in this Context complete.
+func WithDeadline(parent Context, deadline time.Time) (Context, CancelFunc) {
+ if cur, ok := parent.Deadline(); ok && cur.Before(deadline) {
+ // The current deadline is already sooner than the new one.
+ return WithCancel(parent)
+ }
+ c := &timerCtx{
+ cancelCtx: newCancelCtx(parent),
+ deadline: deadline,
+ }
+ propagateCancel(parent, c)
+ d := deadline.Sub(time.Now())
+ if d <= 0 {
+ c.cancel(true, DeadlineExceeded) // deadline has already passed
+ return c, func() { c.cancel(true, Canceled) }
+ }
+ c.mu.Lock()
+ defer c.mu.Unlock()
+ if c.err == nil {
+ c.timer = time.AfterFunc(d, func() {
+ c.cancel(true, DeadlineExceeded)
+ })
+ }
+ return c, func() { c.cancel(true, Canceled) }
+}
+
+// A timerCtx carries a timer and a deadline. It embeds a cancelCtx to
+// implement Done and Err. It implements cancel by stopping its timer then
+// delegating to cancelCtx.cancel.
+type timerCtx struct {
+ cancelCtx
+ timer *time.Timer // Under cancelCtx.mu.
+
+ deadline time.Time
+}
+
+func (c *timerCtx) Deadline() (deadline time.Time, ok bool) {
+ return c.deadline, true
+}
+
+func (c *timerCtx) String() string {
+ return fmt.Sprintf("%v.WithDeadline(%s [%s])", c.cancelCtx.Context, c.deadline, c.deadline.Sub(time.Now()))
+}
+
+func (c *timerCtx) cancel(removeFromParent bool, err error) {
+ c.cancelCtx.cancel(false, err)
+ if removeFromParent {
+ // Remove this timerCtx from its parent cancelCtx's children.
+ removeChild(c.cancelCtx.Context, c)
+ }
+ c.mu.Lock()
+ if c.timer != nil {
+ c.timer.Stop()
+ c.timer = nil
+ }
+ c.mu.Unlock()
+}
+
+// WithTimeout returns WithDeadline(parent, time.Now().Add(timeout)).
+//
+// Canceling this context releases resources associated with it, so code should
+// call cancel as soon as the operations running in this Context complete:
+//
+// func slowOperationWithTimeout(ctx context.Context) (Result, error) {
+// ctx, cancel := context.WithTimeout(ctx, 100*time.Millisecond)
+// defer cancel() // releases resources if slowOperation completes before timeout elapses
+// return slowOperation(ctx)
+// }
+func WithTimeout(parent Context, timeout time.Duration) (Context, CancelFunc) {
+ return WithDeadline(parent, time.Now().Add(timeout))
+}
+
+// WithValue returns a copy of parent in which the value associated with key is
+// val.
+//
+// Use context Values only for request-scoped data that transits processes and
+// APIs, not for passing optional parameters to functions.
+func WithValue(parent Context, key interface{}, val interface{}) Context {
+ return &valueCtx{parent, key, val}
+}
+
+// A valueCtx carries a key-value pair. It implements Value for that key and
+// delegates all other calls to the embedded Context.
+type valueCtx struct {
+ Context
+ key, val interface{}
+}
+
+func (c *valueCtx) String() string {
+ return fmt.Sprintf("%v.WithValue(%#v, %#v)", c.Context, c.key, c.val)
+}
+
+func (c *valueCtx) Value(key interface{}) interface{} {
+ if c.key == key {
+ return c.val
+ }
+ return c.Context.Value(key)
+}
diff --git a/vendor/golang.org/x/net/context/ctxhttp/cancelreq.go b/vendor/golang.org/x/net/context/ctxhttp/cancelreq.go
new file mode 100644
index 0000000000..e3170e3333
--- /dev/null
+++ b/vendor/golang.org/x/net/context/ctxhttp/cancelreq.go
@@ -0,0 +1,19 @@
+// Copyright 2015 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build go1.5
+
+package ctxhttp
+
+import "net/http"
+
+func canceler(client *http.Client, req *http.Request) func() {
+ // TODO(djd): Respect any existing value of req.Cancel.
+ ch := make(chan struct{})
+ req.Cancel = ch
+
+ return func() {
+ close(ch)
+ }
+}
diff --git a/vendor/golang.org/x/net/context/ctxhttp/cancelreq_go14.go b/vendor/golang.org/x/net/context/ctxhttp/cancelreq_go14.go
new file mode 100644
index 0000000000..56bcbadb85
--- /dev/null
+++ b/vendor/golang.org/x/net/context/ctxhttp/cancelreq_go14.go
@@ -0,0 +1,23 @@
+// Copyright 2015 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build !go1.5
+
+package ctxhttp
+
+import "net/http"
+
+type requestCanceler interface {
+ CancelRequest(*http.Request)
+}
+
+func canceler(client *http.Client, req *http.Request) func() {
+ rc, ok := client.Transport.(requestCanceler)
+ if !ok {
+ return func() {}
+ }
+ return func() {
+ rc.CancelRequest(req)
+ }
+}
diff --git a/Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/ctxhttp.go b/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/net/context/ctxhttp/ctxhttp.go
rename to vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/.travis.yml b/vendor/golang.org/x/oauth2/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/.travis.yml
rename to vendor/golang.org/x/oauth2/.travis.yml
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/AUTHORS b/vendor/golang.org/x/oauth2/AUTHORS
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/AUTHORS
rename to vendor/golang.org/x/oauth2/AUTHORS
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/CONTRIBUTING.md b/vendor/golang.org/x/oauth2/CONTRIBUTING.md
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/CONTRIBUTING.md
rename to vendor/golang.org/x/oauth2/CONTRIBUTING.md
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/CONTRIBUTORS b/vendor/golang.org/x/oauth2/CONTRIBUTORS
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/CONTRIBUTORS
rename to vendor/golang.org/x/oauth2/CONTRIBUTORS
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/LICENSE b/vendor/golang.org/x/oauth2/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/LICENSE
rename to vendor/golang.org/x/oauth2/LICENSE
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/README.md b/vendor/golang.org/x/oauth2/README.md
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/README.md
rename to vendor/golang.org/x/oauth2/README.md
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/bitbucket/bitbucket.go b/vendor/golang.org/x/oauth2/bitbucket/bitbucket.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/bitbucket/bitbucket.go
rename to vendor/golang.org/x/oauth2/bitbucket/bitbucket.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/client_appengine.go b/vendor/golang.org/x/oauth2/client_appengine.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/client_appengine.go
rename to vendor/golang.org/x/oauth2/client_appengine.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/clientcredentials/clientcredentials.go b/vendor/golang.org/x/oauth2/clientcredentials/clientcredentials.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/clientcredentials/clientcredentials.go
rename to vendor/golang.org/x/oauth2/clientcredentials/clientcredentials.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/facebook/facebook.go b/vendor/golang.org/x/oauth2/facebook/facebook.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/facebook/facebook.go
rename to vendor/golang.org/x/oauth2/facebook/facebook.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/github/github.go b/vendor/golang.org/x/oauth2/github/github.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/github/github.go
rename to vendor/golang.org/x/oauth2/github/github.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/appengine.go b/vendor/golang.org/x/oauth2/google/appengine.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/appengine.go
rename to vendor/golang.org/x/oauth2/google/appengine.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/appengine_hook.go b/vendor/golang.org/x/oauth2/google/appengine_hook.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/appengine_hook.go
rename to vendor/golang.org/x/oauth2/google/appengine_hook.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/appenginevm_hook.go b/vendor/golang.org/x/oauth2/google/appenginevm_hook.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/appenginevm_hook.go
rename to vendor/golang.org/x/oauth2/google/appenginevm_hook.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/default.go b/vendor/golang.org/x/oauth2/google/default.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/default.go
rename to vendor/golang.org/x/oauth2/google/default.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/google.go b/vendor/golang.org/x/oauth2/google/google.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/google.go
rename to vendor/golang.org/x/oauth2/google/google.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/jwt.go b/vendor/golang.org/x/oauth2/google/jwt.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/jwt.go
rename to vendor/golang.org/x/oauth2/google/jwt.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/google/sdk.go b/vendor/golang.org/x/oauth2/google/sdk.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/google/sdk.go
rename to vendor/golang.org/x/oauth2/google/sdk.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/internal/oauth2.go b/vendor/golang.org/x/oauth2/internal/oauth2.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/internal/oauth2.go
rename to vendor/golang.org/x/oauth2/internal/oauth2.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/internal/token.go b/vendor/golang.org/x/oauth2/internal/token.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/internal/token.go
rename to vendor/golang.org/x/oauth2/internal/token.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/internal/transport.go b/vendor/golang.org/x/oauth2/internal/transport.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/internal/transport.go
rename to vendor/golang.org/x/oauth2/internal/transport.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/jws/jws.go b/vendor/golang.org/x/oauth2/jws/jws.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/jws/jws.go
rename to vendor/golang.org/x/oauth2/jws/jws.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/jwt/jwt.go b/vendor/golang.org/x/oauth2/jwt/jwt.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/jwt/jwt.go
rename to vendor/golang.org/x/oauth2/jwt/jwt.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/linkedin/linkedin.go b/vendor/golang.org/x/oauth2/linkedin/linkedin.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/linkedin/linkedin.go
rename to vendor/golang.org/x/oauth2/linkedin/linkedin.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/microsoft/microsoft.go b/vendor/golang.org/x/oauth2/microsoft/microsoft.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/microsoft/microsoft.go
rename to vendor/golang.org/x/oauth2/microsoft/microsoft.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/oauth2.go b/vendor/golang.org/x/oauth2/oauth2.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/oauth2.go
rename to vendor/golang.org/x/oauth2/oauth2.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/odnoklassniki/odnoklassniki.go b/vendor/golang.org/x/oauth2/odnoklassniki/odnoklassniki.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/odnoklassniki/odnoklassniki.go
rename to vendor/golang.org/x/oauth2/odnoklassniki/odnoklassniki.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/paypal/paypal.go b/vendor/golang.org/x/oauth2/paypal/paypal.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/paypal/paypal.go
rename to vendor/golang.org/x/oauth2/paypal/paypal.go
diff --git a/vendor/golang.org/x/oauth2/slack/slack.go b/vendor/golang.org/x/oauth2/slack/slack.go
new file mode 100644
index 0000000000..feb9174206
--- /dev/null
+++ b/vendor/golang.org/x/oauth2/slack/slack.go
@@ -0,0 +1,16 @@
+// Copyright 2016 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// Package slack provides constants for using OAuth2 to access Slack.
+package slack
+
+import (
+ "golang.org/x/oauth2"
+)
+
+// Endpoint is Slack's OAuth 2.0 endpoint.
+var Endpoint = oauth2.Endpoint{
+ AuthURL: "https://slack.com/oauth/authorize",
+ TokenURL: "https://slack.com/api/oauth.access",
+}
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/token.go b/vendor/golang.org/x/oauth2/token.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/token.go
rename to vendor/golang.org/x/oauth2/token.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/transport.go b/vendor/golang.org/x/oauth2/transport.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/transport.go
rename to vendor/golang.org/x/oauth2/transport.go
diff --git a/Godeps/_workspace/src/golang.org/x/oauth2/vk/vk.go b/vendor/golang.org/x/oauth2/vk/vk.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/oauth2/vk/vk.go
rename to vendor/golang.org/x/oauth2/vk/vk.go
diff --git a/vendor/golang.org/x/sys/LICENSE b/vendor/golang.org/x/sys/LICENSE
new file mode 100644
index 0000000000..6a66aea5ea
--- /dev/null
+++ b/vendor/golang.org/x/sys/LICENSE
@@ -0,0 +1,27 @@
+Copyright (c) 2009 The Go Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/vendor/golang.org/x/sys/PATENTS b/vendor/golang.org/x/sys/PATENTS
new file mode 100644
index 0000000000..733099041f
--- /dev/null
+++ b/vendor/golang.org/x/sys/PATENTS
@@ -0,0 +1,22 @@
+Additional IP Rights Grant (Patents)
+
+"This implementation" means the copyrightable works distributed by
+Google as part of the Go project.
+
+Google hereby grants to You a perpetual, worldwide, non-exclusive,
+no-charge, royalty-free, irrevocable (except as stated in this section)
+patent license to make, have made, use, offer to sell, sell, import,
+transfer and otherwise run, modify and propagate the contents of this
+implementation of Go, where such license applies only to those patent
+claims, both currently owned or controlled by Google and acquired in
+the future, licensable by Google that are necessarily infringed by this
+implementation of Go. This grant does not include claims that would be
+infringed only as a consequence of further modification of this
+implementation. If you or your agent or exclusive licensee institute or
+order or agree to the institution of patent litigation against any
+entity (including a cross-claim or counterclaim in a lawsuit) alleging
+that this implementation of Go or any code incorporated within this
+implementation of Go constitutes direct or contributory patent
+infringement, or inducement of patent infringement, then any patent
+rights granted to you under this License for this implementation of Go
+shall terminate as of the date such litigation is filed.
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/.gitignore b/vendor/golang.org/x/sys/unix/.gitignore
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/.gitignore
rename to vendor/golang.org/x/sys/unix/.gitignore
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm.s b/vendor/golang.org/x/sys/unix/asm.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm.s
rename to vendor/golang.org/x/sys/unix/asm.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_386.s b/vendor/golang.org/x/sys/unix/asm_darwin_386.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_386.s
rename to vendor/golang.org/x/sys/unix/asm_darwin_386.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_amd64.s b/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_darwin_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_arm.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_arm.s
rename to vendor/golang.org/x/sys/unix/asm_darwin_arm.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_arm64.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_darwin_arm64.s
rename to vendor/golang.org/x/sys/unix/asm_darwin_arm64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_dragonfly_386.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_386.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_dragonfly_386.s
rename to vendor/golang.org/x/sys/unix/asm_dragonfly_386.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_dragonfly_amd64.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_dragonfly_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_freebsd_386.s b/vendor/golang.org/x/sys/unix/asm_freebsd_386.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_freebsd_386.s
rename to vendor/golang.org/x/sys/unix/asm_freebsd_386.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_freebsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_freebsd_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_freebsd_arm.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_freebsd_arm.s
rename to vendor/golang.org/x/sys/unix/asm_freebsd_arm.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_386.s b/vendor/golang.org/x/sys/unix/asm_linux_386.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_386.s
rename to vendor/golang.org/x/sys/unix/asm_linux_386.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_amd64.s b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_linux_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_arm.s b/vendor/golang.org/x/sys/unix/asm_linux_arm.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_arm.s
rename to vendor/golang.org/x/sys/unix/asm_linux_arm.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_arm64.s b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_arm64.s
rename to vendor/golang.org/x/sys/unix/asm_linux_arm64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_ppc64x.s b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_linux_ppc64x.s
rename to vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_netbsd_386.s b/vendor/golang.org/x/sys/unix/asm_netbsd_386.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_netbsd_386.s
rename to vendor/golang.org/x/sys/unix/asm_netbsd_386.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_netbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_netbsd_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_netbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_netbsd_arm.s
rename to vendor/golang.org/x/sys/unix/asm_netbsd_arm.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_openbsd_386.s b/vendor/golang.org/x/sys/unix/asm_openbsd_386.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_openbsd_386.s
rename to vendor/golang.org/x/sys/unix/asm_openbsd_386.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_openbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_openbsd_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/asm_solaris_amd64.s b/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/asm_solaris_amd64.s
rename to vendor/golang.org/x/sys/unix/asm_solaris_amd64.s
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/constants.go b/vendor/golang.org/x/sys/unix/constants.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/constants.go
rename to vendor/golang.org/x/sys/unix/constants.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/env_unix.go b/vendor/golang.org/x/sys/unix/env_unix.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/env_unix.go
rename to vendor/golang.org/x/sys/unix/env_unix.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/env_unset.go b/vendor/golang.org/x/sys/unix/env_unset.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/env_unset.go
rename to vendor/golang.org/x/sys/unix/env_unset.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/flock.go b/vendor/golang.org/x/sys/unix/flock.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/flock.go
rename to vendor/golang.org/x/sys/unix/flock.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/flock_linux_32bit.go b/vendor/golang.org/x/sys/unix/flock_linux_32bit.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/flock_linux_32bit.go
rename to vendor/golang.org/x/sys/unix/flock_linux_32bit.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/gccgo.go b/vendor/golang.org/x/sys/unix/gccgo.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/gccgo.go
rename to vendor/golang.org/x/sys/unix/gccgo.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/gccgo_c.c b/vendor/golang.org/x/sys/unix/gccgo_c.c
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/gccgo_c.c
rename to vendor/golang.org/x/sys/unix/gccgo_c.c
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/gccgo_linux_amd64.go b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/gccgo_linux_amd64.go
rename to vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mkall.sh b/vendor/golang.org/x/sys/unix/mkall.sh
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mkall.sh
rename to vendor/golang.org/x/sys/unix/mkall.sh
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mkerrors.sh b/vendor/golang.org/x/sys/unix/mkerrors.sh
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mkerrors.sh
rename to vendor/golang.org/x/sys/unix/mkerrors.sh
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksyscall.pl b/vendor/golang.org/x/sys/unix/mksyscall.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksyscall.pl
rename to vendor/golang.org/x/sys/unix/mksyscall.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksyscall_solaris.pl b/vendor/golang.org/x/sys/unix/mksyscall_solaris.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksyscall_solaris.pl
rename to vendor/golang.org/x/sys/unix/mksyscall_solaris.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysctl_openbsd.pl b/vendor/golang.org/x/sys/unix/mksysctl_openbsd.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysctl_openbsd.pl
rename to vendor/golang.org/x/sys/unix/mksysctl_openbsd.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_darwin.pl b/vendor/golang.org/x/sys/unix/mksysnum_darwin.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_darwin.pl
rename to vendor/golang.org/x/sys/unix/mksysnum_darwin.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_dragonfly.pl b/vendor/golang.org/x/sys/unix/mksysnum_dragonfly.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_dragonfly.pl
rename to vendor/golang.org/x/sys/unix/mksysnum_dragonfly.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_freebsd.pl b/vendor/golang.org/x/sys/unix/mksysnum_freebsd.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_freebsd.pl
rename to vendor/golang.org/x/sys/unix/mksysnum_freebsd.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_linux.pl b/vendor/golang.org/x/sys/unix/mksysnum_linux.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_linux.pl
rename to vendor/golang.org/x/sys/unix/mksysnum_linux.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_netbsd.pl b/vendor/golang.org/x/sys/unix/mksysnum_netbsd.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_netbsd.pl
rename to vendor/golang.org/x/sys/unix/mksysnum_netbsd.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_openbsd.pl b/vendor/golang.org/x/sys/unix/mksysnum_openbsd.pl
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/mksysnum_openbsd.pl
rename to vendor/golang.org/x/sys/unix/mksysnum_openbsd.pl
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/race.go b/vendor/golang.org/x/sys/unix/race.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/race.go
rename to vendor/golang.org/x/sys/unix/race.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/race0.go b/vendor/golang.org/x/sys/unix/race0.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/race0.go
rename to vendor/golang.org/x/sys/unix/race0.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/sockcmsg_linux.go b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/sockcmsg_linux.go
rename to vendor/golang.org/x/sys/unix/sockcmsg_linux.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/sockcmsg_unix.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/sockcmsg_unix.go
rename to vendor/golang.org/x/sys/unix/sockcmsg_unix.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/str.go b/vendor/golang.org/x/sys/unix/str.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/str.go
rename to vendor/golang.org/x/sys/unix/str.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall.go b/vendor/golang.org/x/sys/unix/syscall.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall.go
rename to vendor/golang.org/x/sys/unix/syscall.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_bsd.go b/vendor/golang.org/x/sys/unix/syscall_bsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_bsd.go
rename to vendor/golang.org/x/sys/unix/syscall_bsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin.go b/vendor/golang.org/x/sys/unix/syscall_darwin.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin.go
rename to vendor/golang.org/x/sys/unix/syscall_darwin.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_386.go
rename to vendor/golang.org/x/sys/unix/syscall_darwin_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_arm.go
rename to vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_darwin_arm64.go
rename to vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_dragonfly.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_dragonfly.go
rename to vendor/golang.org/x/sys/unix/syscall_dragonfly.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_dragonfly_386.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_dragonfly_386.go
rename to vendor/golang.org/x/sys/unix/syscall_dragonfly_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd.go b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd.go
rename to vendor/golang.org/x/sys/unix/syscall_freebsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd_386.go
rename to vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_freebsd_arm.go
rename to vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go
similarity index 99%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux.go
rename to vendor/golang.org/x/sys/unix/syscall_linux.go
index d3ee5d2c2f..5048e563b6 100644
--- a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux.go
+++ b/vendor/golang.org/x/sys/unix/syscall_linux.go
@@ -86,8 +86,8 @@ func Unlink(path string) error {
//sys unlinkat(dirfd int, path string, flags int) (err error)
-func Unlinkat(dirfd int, path string) error {
- return unlinkat(dirfd, path, 0)
+func Unlinkat(dirfd int, path string, flags int) error {
+ return unlinkat(dirfd, path, flags)
}
//sys utimes(path string, times *[2]Timeval) (err error)
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_386.go
rename to vendor/golang.org/x/sys/unix/syscall_linux_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_arm.go
rename to vendor/golang.org/x/sys/unix/syscall_linux_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_arm64.go
rename to vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_ppc64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_linux_ppc64x.go
rename to vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd.go b/vendor/golang.org/x/sys/unix/syscall_netbsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd.go
rename to vendor/golang.org/x/sys/unix/syscall_netbsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd_386.go
rename to vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_netbsd_arm.go
rename to vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_no_getwd.go b/vendor/golang.org/x/sys/unix/syscall_no_getwd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_no_getwd.go
rename to vendor/golang.org/x/sys/unix/syscall_no_getwd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_openbsd.go b/vendor/golang.org/x/sys/unix/syscall_openbsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_openbsd.go
rename to vendor/golang.org/x/sys/unix/syscall_openbsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_openbsd_386.go
rename to vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_openbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_solaris.go b/vendor/golang.org/x/sys/unix/syscall_solaris.go
similarity index 99%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_solaris.go
rename to vendor/golang.org/x/sys/unix/syscall_solaris.go
index 0083732648..eb489b159f 100644
--- a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_solaris.go
+++ b/vendor/golang.org/x/sys/unix/syscall_solaris.go
@@ -649,7 +649,7 @@ func IoctlGetTermio(fd int, req int) (*Termio, error) {
//sysnb Uname(buf *Utsname) (err error)
//sys Unmount(target string, flags int) (err error) = libc.umount
//sys Unlink(path string) (err error)
-//sys Unlinkat(dirfd int, path string) (err error)
+//sys Unlinkat(dirfd int, path string, flags int) (err error)
//sys Ustat(dev int, ubuf *Ustat_t) (err error)
//sys Utime(path string, buf *Utimbuf) (err error)
//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) = libsocket.bind
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_solaris_amd64.go
rename to vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/syscall_unix.go b/vendor/golang.org/x/sys/unix/syscall_unix.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/syscall_unix.go
rename to vendor/golang.org/x/sys/unix/syscall_unix.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_darwin.go b/vendor/golang.org/x/sys/unix/types_darwin.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_darwin.go
rename to vendor/golang.org/x/sys/unix/types_darwin.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_dragonfly.go b/vendor/golang.org/x/sys/unix/types_dragonfly.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_dragonfly.go
rename to vendor/golang.org/x/sys/unix/types_dragonfly.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_freebsd.go b/vendor/golang.org/x/sys/unix/types_freebsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_freebsd.go
rename to vendor/golang.org/x/sys/unix/types_freebsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_linux.go b/vendor/golang.org/x/sys/unix/types_linux.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_linux.go
rename to vendor/golang.org/x/sys/unix/types_linux.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_netbsd.go b/vendor/golang.org/x/sys/unix/types_netbsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_netbsd.go
rename to vendor/golang.org/x/sys/unix/types_netbsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_openbsd.go b/vendor/golang.org/x/sys/unix/types_openbsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_openbsd.go
rename to vendor/golang.org/x/sys/unix/types_openbsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/types_solaris.go b/vendor/golang.org/x/sys/unix/types_solaris.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/types_solaris.go
rename to vendor/golang.org/x/sys/unix/types_solaris.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_386.go
rename to vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_arm.go
rename to vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_darwin_arm64.go
rename to vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_dragonfly_386.go b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_dragonfly_386.go
rename to vendor/golang.org/x/sys/unix/zerrors_dragonfly_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_freebsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_freebsd_386.go
rename to vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_freebsd_arm.go
rename to vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_386.go b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_386.go
rename to vendor/golang.org/x/sys/unix/zerrors_linux_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_arm.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_arm.go
rename to vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_arm64.go
rename to vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_ppc64.go
rename to vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
rename to vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_netbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_netbsd_386.go
rename to vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_netbsd_arm.go
rename to vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_openbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_openbsd_386.go
rename to vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zerrors_solaris_amd64.go
rename to vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_386.go
rename to vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_arm.go
rename to vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_dragonfly_386.go b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_dragonfly_386.go
rename to vendor/golang.org/x/sys/unix/zsyscall_dragonfly_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_freebsd_386.go
rename to vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
rename to vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_386.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_386.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_arm.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_arm64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
rename to vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_netbsd_386.go
rename to vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
rename to vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_openbsd_386.go
rename to vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
similarity index 99%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
rename to vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
index 8d2a8365b2..4326427817 100644
--- a/Godeps/_workspace/src/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
+++ b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
@@ -1401,13 +1401,13 @@ func Unlink(path string) (err error) {
return
}
-func Unlinkat(dirfd int, path string) (err error) {
+func Unlinkat(dirfd int, path string, flags int) (err error) {
var _p0 *byte
_p0, err = BytePtrFromString(path)
if err != nil {
return
}
- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procUnlinkat)), 2, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), 0, 0, 0, 0)
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procUnlinkat)), 3, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0, 0)
use(unsafe.Pointer(_p0))
if e1 != 0 {
err = e1
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysctl_openbsd.go
rename to vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_386.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_386.go
rename to vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_arm.go
rename to vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_dragonfly_386.go b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_dragonfly_386.go
rename to vendor/golang.org/x/sys/unix/zsysnum_dragonfly_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_freebsd_386.go
rename to vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
rename to vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_386.go
rename to vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_arm.go
rename to vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_arm64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
rename to vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_netbsd_386.go
rename to vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
rename to vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_openbsd_386.go
rename to vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
rename to vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_386.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_386.go
rename to vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_arm.go
rename to vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_darwin_arm64.go
rename to vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_dragonfly_386.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_dragonfly_386.go
rename to vendor/golang.org/x/sys/unix/ztypes_dragonfly_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_freebsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_freebsd_386.go
rename to vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_freebsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_freebsd_arm.go
rename to vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_386.go b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_386.go
rename to vendor/golang.org/x/sys/unix/ztypes_linux_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_arm.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_arm.go
rename to vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_arm64.go
rename to vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_ppc64.go
rename to vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
rename to vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_netbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_netbsd_386.go
rename to vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_netbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_netbsd_arm.go
rename to vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_openbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_openbsd_386.go
rename to vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
diff --git a/Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_solaris_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
similarity index 100%
rename from Godeps/_workspace/src/golang.org/x/sys/unix/ztypes_solaris_amd64.go
rename to vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/.travis.yml b/vendor/gopkg.in/asn1-ber.v1/.travis.yml
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/.travis.yml
rename to vendor/gopkg.in/asn1-ber.v1/.travis.yml
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/LICENSE b/vendor/gopkg.in/asn1-ber.v1/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/LICENSE
rename to vendor/gopkg.in/asn1-ber.v1/LICENSE
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/README.md b/vendor/gopkg.in/asn1-ber.v1/README.md
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/README.md
rename to vendor/gopkg.in/asn1-ber.v1/README.md
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/ber.go b/vendor/gopkg.in/asn1-ber.v1/ber.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/ber.go
rename to vendor/gopkg.in/asn1-ber.v1/ber.go
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/content_int.go b/vendor/gopkg.in/asn1-ber.v1/content_int.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/content_int.go
rename to vendor/gopkg.in/asn1-ber.v1/content_int.go
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/header.go b/vendor/gopkg.in/asn1-ber.v1/header.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/header.go
rename to vendor/gopkg.in/asn1-ber.v1/header.go
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/identifier.go b/vendor/gopkg.in/asn1-ber.v1/identifier.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/identifier.go
rename to vendor/gopkg.in/asn1-ber.v1/identifier.go
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/length.go b/vendor/gopkg.in/asn1-ber.v1/length.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/length.go
rename to vendor/gopkg.in/asn1-ber.v1/length.go
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc1.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc1.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc1.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc1.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc10.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc10.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc10.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc10.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc11.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc11.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc11.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc11.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc12.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc12.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc12.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc12.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc13.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc13.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc13.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc13.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc14.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc14.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc14.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc14.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc15.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc15.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc15.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc15.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc16.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc16.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc16.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc16.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc17.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc17.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc17.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc17.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc18.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc18.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc18.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc18.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc19.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc19.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc19.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc19.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc2.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc2.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc2.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc2.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc20.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc20.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc20.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc20.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc21.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc21.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc21.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc21.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc22.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc22.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc22.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc22.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc23.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc23.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc23.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc23.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc24.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc24.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc24.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc24.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc25.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc25.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc25.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc25.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc26.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc26.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc26.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc26.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc27.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc27.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc27.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc27.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc28.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc28.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc28.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc28.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc29.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc29.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc29.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc29.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc3.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc3.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc3.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc3.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc30.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc30.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc30.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc30.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc31.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc31.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc31.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc31.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc32.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc32.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc32.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc32.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc33.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc33.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc33.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc33.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc34.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc34.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc34.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc34.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc35.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc35.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc35.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc35.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc36.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc36.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc36.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc36.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc37.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc37.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc37.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc37.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc38.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc38.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc38.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc38.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc39.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc39.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc39.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc39.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc4.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc4.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc4.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc4.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc40.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc40.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc40.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc40.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc41.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc41.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc41.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc41.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc42.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc42.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc42.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc42.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc43.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc43.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc43.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc43.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc44.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc44.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc44.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc44.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc45.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc45.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc45.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc45.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc46.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc46.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc46.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc46.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc47.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc47.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc47.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc47.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc48.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc48.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc48.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc48.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc5.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc5.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc5.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc5.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc6.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc6.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc6.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc6.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc7.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc7.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc7.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc7.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc8.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc8.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc8.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc8.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc9.ber b/vendor/gopkg.in/asn1-ber.v1/tests/tc9.ber
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/tests/tc9.ber
rename to vendor/gopkg.in/asn1-ber.v1/tests/tc9.ber
diff --git a/Godeps/_workspace/src/gopkg.in/asn1-ber.v1/util.go b/vendor/gopkg.in/asn1-ber.v1/util.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/asn1-ber.v1/util.go
rename to vendor/gopkg.in/asn1-ber.v1/util.go
diff --git a/Godeps/_workspace/src/gopkg.in/inf.v0/LICENSE b/vendor/gopkg.in/inf.v0/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/inf.v0/LICENSE
rename to vendor/gopkg.in/inf.v0/LICENSE
diff --git a/Godeps/_workspace/src/gopkg.in/inf.v0/dec.go b/vendor/gopkg.in/inf.v0/dec.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/inf.v0/dec.go
rename to vendor/gopkg.in/inf.v0/dec.go
diff --git a/Godeps/_workspace/src/gopkg.in/inf.v0/rounder.go b/vendor/gopkg.in/inf.v0/rounder.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/inf.v0/rounder.go
rename to vendor/gopkg.in/inf.v0/rounder.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/LICENSE b/vendor/gopkg.in/yaml.v2/LICENSE
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/LICENSE
rename to vendor/gopkg.in/yaml.v2/LICENSE
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/LICENSE.libyaml b/vendor/gopkg.in/yaml.v2/LICENSE.libyaml
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/LICENSE.libyaml
rename to vendor/gopkg.in/yaml.v2/LICENSE.libyaml
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/README.md b/vendor/gopkg.in/yaml.v2/README.md
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/README.md
rename to vendor/gopkg.in/yaml.v2/README.md
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/apic.go b/vendor/gopkg.in/yaml.v2/apic.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/apic.go
rename to vendor/gopkg.in/yaml.v2/apic.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/decode.go b/vendor/gopkg.in/yaml.v2/decode.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/decode.go
rename to vendor/gopkg.in/yaml.v2/decode.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/emitterc.go b/vendor/gopkg.in/yaml.v2/emitterc.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/emitterc.go
rename to vendor/gopkg.in/yaml.v2/emitterc.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/encode.go b/vendor/gopkg.in/yaml.v2/encode.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/encode.go
rename to vendor/gopkg.in/yaml.v2/encode.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/parserc.go b/vendor/gopkg.in/yaml.v2/parserc.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/parserc.go
rename to vendor/gopkg.in/yaml.v2/parserc.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/readerc.go b/vendor/gopkg.in/yaml.v2/readerc.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/readerc.go
rename to vendor/gopkg.in/yaml.v2/readerc.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/resolve.go b/vendor/gopkg.in/yaml.v2/resolve.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/resolve.go
rename to vendor/gopkg.in/yaml.v2/resolve.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/scannerc.go b/vendor/gopkg.in/yaml.v2/scannerc.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/scannerc.go
rename to vendor/gopkg.in/yaml.v2/scannerc.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/sorter.go b/vendor/gopkg.in/yaml.v2/sorter.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/sorter.go
rename to vendor/gopkg.in/yaml.v2/sorter.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/writerc.go b/vendor/gopkg.in/yaml.v2/writerc.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/writerc.go
rename to vendor/gopkg.in/yaml.v2/writerc.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/yaml.go b/vendor/gopkg.in/yaml.v2/yaml.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/yaml.go
rename to vendor/gopkg.in/yaml.v2/yaml.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/yamlh.go b/vendor/gopkg.in/yaml.v2/yamlh.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/yamlh.go
rename to vendor/gopkg.in/yaml.v2/yamlh.go
diff --git a/Godeps/_workspace/src/gopkg.in/yaml.v2/yamlprivateh.go b/vendor/gopkg.in/yaml.v2/yamlprivateh.go
similarity index 100%
rename from Godeps/_workspace/src/gopkg.in/yaml.v2/yamlprivateh.go
rename to vendor/gopkg.in/yaml.v2/yamlprivateh.go