chore: deprecate github.com/hexfusion/schwag

The schwag was introduced to generate swagger with authorization support
[1][1] in 2017. And in 2018, the grpc-gateway supports to render
security fields by protoc-gen-swagger [2][2]. After several years, I
think it's good to use upstream protoc supports.

NOTE:

The json's key in `rpc.swagger.json` has been reordered so that it seems
that there's a lot of changes. How to verify it:

```bash
$ # use jq -S to sort the key
$ latest_commit="https://raw.githubusercontent.com/etcd-io/etcd/228f493c7697ce3e9d3a1d831bcffad175846c75/Documentation/dev-guide/apispec/swagger/rpc.swagger.json"
$ curl -s "${latest_commit}"  | jq -S . > /tmp/old.json
$ cat Documentation/dev-guide/apispec/swagger/rpc.swagger.json | jq -S . > /tmp/new.json
$ diff --color -u /tmp/old.json /tmp/new.json
```

```diff
--- /tmp/old.json       2023-04-26 10:58:07.142311861 +0800
+++ /tmp/new.json       2023-04-26 10:58:12.170299194 +0800
@@ -1523,11 +1523,14 @@
       "type": "object"
     },
     "protobufAny": {
+      "description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n    Foo foo = ...;\n    Any any;\n    any.PackFrom(foo);\n    ...\n    if (any.UnpackTo(&foo)) {\n      ...\n    }\n\nExample 2: Pack and unpack a message in Java.\n\n    Foo foo = ...;\n    Any any = Any.pack(foo);\n    ...\n    if (any.is(Foo.class)) {\n      foo = any.unpack(Foo.class);\n    }\n\n Example 3: Pack and unpack a message in Python.\n\n    foo = Foo(...)\n    any = Any()\n    any.Pack(foo)\n    ...\n    if any.Is(Foo.DESCRIPTOR):\n      any.Unpack(foo)\n      ...\n\n Example 4: Pack and unpack a message in Go\n\n     foo := &pb.Foo{...}\n     any, err := ptypes.MarshalAny(foo)\n     ...\n     foo := &pb.Foo{}\n     if err := ptypes.UnmarshalAny(any, foo); err != nil {\n       ...\n     }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n    package google.profile;\n    message Person {\n      string first_name = 1;\n      string last_name = 2;\n    }\n\n    {\n      \"@type\": \"type.googleapis.com/google.profile.Person\",\n      \"firstName\": <string>,\n      \"lastName\": <string>\n    }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n    {\n      \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n      \"value\": \"1.212s\"\n    }",
       "properties": {
         "type_url": {
+          "description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n  value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n  URL, or have them precompiled into a binary to avoid any\n  lookup. Therefore, binary compatibility needs to be preserved\n  on changes to types. (Use versioned type names to manage\n  breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics.",
           "type": "string"
         },
         "value": {
+          "description": "Must be a valid serialized protocol buffer of the above specified type.",
           "format": "byte",
           "type": "string"
         }
```

REF:

1: <https://github.com/etcd-io/etcd/pull/7999#issuecomment-307512043>
2: <https://github.com/grpc-ecosystem/grpc-gateway/pull/547>

Signed-off-by: Wei Fu <fuweid89@gmail.com>
This commit is contained in:
Wei Fu 2023-04-25 18:53:18 +08:00
parent 4485db379e
commit b4f49a55a5
16 changed files with 1365 additions and 1465 deletions

File diff suppressed because it is too large Load Diff

View File

@ -251,13 +251,16 @@
"type": "object",
"properties": {
"type_url": {
"type": "string"
"type": "string",
"description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."
},
"value": {
"type": "string",
"format": "byte"
"format": "byte",
"description": "Must be a valid serialized protocol buffer of the above specified type."
}
}
},
"description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }"
},
"runtimeError": {
"type": "object",

View File

@ -108,13 +108,16 @@
"type": "object",
"properties": {
"type_url": {
"type": "string"
"type": "string",
"description": "A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."
},
"value": {
"type": "string",
"format": "byte"
"format": "byte",
"description": "Must be a valid serialized protocol buffer of the above specified type."
}
}
},
"description": "`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(\u0026foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := \u0026pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := \u0026pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }"
},
"runtimeError": {
"type": "object",

View File

@ -12,6 +12,7 @@ import (
_ "github.com/gogo/protobuf/gogoproto"
proto "github.com/golang/protobuf/proto"
_ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger/options"
authpb "go.etcd.io/etcd/api/v3/authpb"
mvccpb "go.etcd.io/etcd/api/v3/mvccpb"
_ "go.etcd.io/etcd/api/v3/versionpb"
@ -6185,284 +6186,287 @@ func init() {
func init() { proto.RegisterFile("rpc.proto", fileDescriptor_77a6da22d6a3feb1) }
var fileDescriptor_77a6da22d6a3feb1 = []byte{
// 4424 bytes of a gzipped FileDescriptorProto
// 4478 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x3c, 0xdf, 0x6f, 0x1c, 0x49,
0x5a, 0xee, 0x19, 0xcf, 0x8c, 0xe7, 0x9b, 0xf1, 0x78, 0x5c, 0x71, 0xb2, 0x93, 0xd9, 0xc4, 0xf1,
0x76, 0x36, 0xbb, 0xd9, 0xec, 0xae, 0x9d, 0xd8, 0xc9, 0x2d, 0x04, 0xed, 0x72, 0x13, 0x7b, 0x36,
0x31, 0x71, 0x6c, 0x5f, 0x7b, 0x92, 0xbd, 0x5d, 0xa4, 0x1b, 0xda, 0x33, 0x15, 0xbb, 0xcf, 0x33,
0xdd, 0x73, 0xdd, 0x3d, 0x8e, 0x7d, 0x3c, 0xdc, 0x71, 0x70, 0x9c, 0x0e, 0xa4, 0x93, 0x38, 0x24,
0x74, 0x42, 0xf0, 0x82, 0x90, 0xe0, 0xe1, 0x40, 0xf0, 0xc0, 0x03, 0x02, 0x89, 0x07, 0x78, 0x80,
0x07, 0x24, 0x24, 0xfe, 0x01, 0x58, 0xee, 0x89, 0x3f, 0x02, 0xa1, 0xfa, 0xd5, 0x55, 0xdd, 0x5d,
0x6d, 0x7b, 0xcf, 0x5e, 0xdd, 0xcb, 0x66, 0xba, 0xea, 0xfb, 0x55, 0xdf, 0x57, 0xdf, 0xf7, 0x55,
0x7d, 0x5f, 0x79, 0xa1, 0xec, 0x8f, 0x7a, 0x8b, 0x23, 0xdf, 0x0b, 0x3d, 0x54, 0xc5, 0x61, 0xaf,
0x1f, 0x60, 0xff, 0x10, 0xfb, 0xa3, 0xdd, 0xe6, 0xdc, 0x9e, 0xb7, 0xe7, 0xd1, 0x89, 0x25, 0xf2,
0x8b, 0xc1, 0x34, 0x1b, 0x04, 0x66, 0xc9, 0x1e, 0x39, 0x4b, 0xc3, 0xc3, 0x5e, 0x6f, 0xb4, 0xbb,
0x74, 0x70, 0xc8, 0x67, 0x9a, 0xd1, 0x8c, 0x3d, 0x0e, 0xf7, 0x47, 0xbb, 0xf4, 0x1f, 0x3e, 0xb7,
0x10, 0xcd, 0x1d, 0x62, 0x3f, 0x70, 0x3c, 0x77, 0xb4, 0x2b, 0x7e, 0x71, 0x88, 0x6b, 0x7b, 0x9e,
0xb7, 0x37, 0xc0, 0x0c, 0xdf, 0x75, 0xbd, 0xd0, 0x0e, 0x1d, 0xcf, 0x0d, 0xd8, 0xac, 0xf9, 0x23,
0x03, 0x6a, 0x16, 0x0e, 0x46, 0x9e, 0x1b, 0xe0, 0x27, 0xd8, 0xee, 0x63, 0x1f, 0x5d, 0x07, 0xe8,
0x0d, 0xc6, 0x41, 0x88, 0xfd, 0xae, 0xd3, 0x6f, 0x18, 0x0b, 0xc6, 0xed, 0x49, 0xab, 0xcc, 0x47,
0xd6, 0xfb, 0xe8, 0x75, 0x28, 0x0f, 0xf1, 0x70, 0x97, 0xcd, 0xe6, 0xe8, 0xec, 0x14, 0x1b, 0x58,
0xef, 0xa3, 0x26, 0x4c, 0xf9, 0xf8, 0xd0, 0x21, 0xec, 0x1b, 0xf9, 0x05, 0xe3, 0x76, 0xde, 0x8a,
0xbe, 0x09, 0xa2, 0x6f, 0xbf, 0x0c, 0xbb, 0x21, 0xf6, 0x87, 0x8d, 0x49, 0x86, 0x48, 0x06, 0x3a,
0xd8, 0x1f, 0x3e, 0x2c, 0x7d, 0xef, 0xef, 0x1a, 0xf9, 0x95, 0xc5, 0xbb, 0xe6, 0x3f, 0x17, 0xa0,
0x6a, 0xd9, 0xee, 0x1e, 0xb6, 0xf0, 0xb7, 0xc6, 0x38, 0x08, 0x51, 0x1d, 0xf2, 0x07, 0xf8, 0x98,
0xca, 0x51, 0xb5, 0xc8, 0x4f, 0x46, 0xc8, 0xdd, 0xc3, 0x5d, 0xec, 0x32, 0x09, 0xaa, 0x84, 0x90,
0xbb, 0x87, 0xdb, 0x6e, 0x1f, 0xcd, 0x41, 0x61, 0xe0, 0x0c, 0x9d, 0x90, 0xb3, 0x67, 0x1f, 0x31,
0xb9, 0x26, 0x13, 0x72, 0xad, 0x02, 0x04, 0x9e, 0x1f, 0x76, 0x3d, 0xbf, 0x8f, 0xfd, 0x46, 0x61,
0xc1, 0xb8, 0x5d, 0x5b, 0x7e, 0x73, 0x51, 0xb5, 0xd8, 0xa2, 0x2a, 0xd0, 0xe2, 0x8e, 0xe7, 0x87,
0x5b, 0x04, 0xd6, 0x2a, 0x07, 0xe2, 0x27, 0xfa, 0x18, 0x2a, 0x94, 0x48, 0x68, 0xfb, 0x7b, 0x38,
0x6c, 0x14, 0x29, 0x95, 0x5b, 0xa7, 0x50, 0xe9, 0x50, 0x60, 0x8b, 0xb2, 0x67, 0xbf, 0x91, 0x09,
0xd5, 0x00, 0xfb, 0x8e, 0x3d, 0x70, 0xbe, 0x6d, 0xef, 0x0e, 0x70, 0xa3, 0xb4, 0x60, 0xdc, 0x9e,
0xb2, 0x62, 0x63, 0x64, 0xfd, 0x07, 0xf8, 0x38, 0xe8, 0x7a, 0xee, 0xe0, 0xb8, 0x31, 0x45, 0x01,
0xa6, 0xc8, 0xc0, 0x96, 0x3b, 0x38, 0xa6, 0xd6, 0xf3, 0xc6, 0x6e, 0xc8, 0x66, 0xcb, 0x74, 0xb6,
0x4c, 0x47, 0xe8, 0xf4, 0x3d, 0xa8, 0x0f, 0x1d, 0xb7, 0x3b, 0xf4, 0xfa, 0xdd, 0x48, 0x21, 0x40,
0x14, 0xf2, 0xa8, 0xf4, 0x7b, 0xd4, 0x02, 0xf7, 0xac, 0xda, 0xd0, 0x71, 0x9f, 0x79, 0x7d, 0x4b,
0xe8, 0x87, 0xa0, 0xd8, 0x47, 0x71, 0x94, 0x4a, 0x12, 0xc5, 0x3e, 0x52, 0x51, 0x3e, 0x80, 0x4b,
0x84, 0x4b, 0xcf, 0xc7, 0x76, 0x88, 0x25, 0x56, 0x35, 0x8e, 0x35, 0x3b, 0x74, 0xdc, 0x55, 0x0a,
0x12, 0x43, 0xb4, 0x8f, 0x52, 0x88, 0xd3, 0x49, 0x44, 0xfb, 0x28, 0x8e, 0x68, 0x7e, 0x00, 0xe5,
0xc8, 0x2e, 0x68, 0x0a, 0x26, 0x37, 0xb7, 0x36, 0xdb, 0xf5, 0x09, 0x04, 0x50, 0x6c, 0xed, 0xac,
0xb6, 0x37, 0xd7, 0xea, 0x06, 0xaa, 0x40, 0x69, 0xad, 0xcd, 0x3e, 0x72, 0xcd, 0xd2, 0x8f, 0xf9,
0x7e, 0x7b, 0x0a, 0x20, 0x4d, 0x81, 0x4a, 0x90, 0x7f, 0xda, 0xfe, 0xb4, 0x3e, 0x41, 0x80, 0x5f,
0xb4, 0xad, 0x9d, 0xf5, 0xad, 0xcd, 0xba, 0x41, 0xa8, 0xac, 0x5a, 0xed, 0x56, 0xa7, 0x5d, 0xcf,
0x11, 0x88, 0x67, 0x5b, 0x6b, 0xf5, 0x3c, 0x2a, 0x43, 0xe1, 0x45, 0x6b, 0xe3, 0x79, 0xbb, 0x3e,
0x19, 0x11, 0x93, 0xbb, 0xf8, 0x4f, 0x0c, 0x98, 0xe6, 0xe6, 0x66, 0xbe, 0x85, 0xee, 0x43, 0x71,
0x9f, 0xfa, 0x17, 0xdd, 0xc9, 0x95, 0xe5, 0x6b, 0x89, 0xbd, 0x11, 0xf3, 0x41, 0x8b, 0xc3, 0x22,
0x13, 0xf2, 0x07, 0x87, 0x41, 0x23, 0xb7, 0x90, 0xbf, 0x5d, 0x59, 0xae, 0x2f, 0xb2, 0xc8, 0xb0,
0xf8, 0x14, 0x1f, 0xbf, 0xb0, 0x07, 0x63, 0x6c, 0x91, 0x49, 0x84, 0x60, 0x72, 0xe8, 0xf9, 0x98,
0x6e, 0xf8, 0x29, 0x8b, 0xfe, 0x26, 0x5e, 0x40, 0x6d, 0xce, 0x37, 0x3b, 0xfb, 0x90, 0xe2, 0xfd,
0xbb, 0x01, 0xb0, 0x3d, 0x0e, 0xb3, 0x5d, 0x6c, 0x0e, 0x0a, 0x87, 0x84, 0x03, 0x77, 0x2f, 0xf6,
0x41, 0x7d, 0x0b, 0xdb, 0x01, 0x8e, 0x7c, 0x8b, 0x7c, 0xa0, 0x05, 0x28, 0x8d, 0x7c, 0x7c, 0xd8,
0x3d, 0x38, 0xa4, 0xdc, 0xa6, 0xa4, 0x9d, 0x8a, 0x64, 0xfc, 0xe9, 0x21, 0xba, 0x03, 0x55, 0x67,
0xcf, 0xf5, 0x7c, 0xdc, 0x65, 0x44, 0x0b, 0x2a, 0xd8, 0xb2, 0x55, 0x61, 0x93, 0x74, 0x49, 0x0a,
0x2c, 0x63, 0x55, 0xd4, 0xc2, 0x6e, 0x90, 0x39, 0xb9, 0x9e, 0xef, 0x1a, 0x50, 0xa1, 0xeb, 0x39,
0x97, 0xb2, 0x97, 0xe5, 0x42, 0x72, 0x14, 0x2d, 0xa5, 0xf0, 0xd4, 0xd2, 0xa4, 0x08, 0x2e, 0xa0,
0x35, 0x3c, 0xc0, 0x21, 0x3e, 0x4f, 0xf0, 0x52, 0x54, 0x99, 0xd7, 0xaa, 0x52, 0xf2, 0xfb, 0x73,
0x03, 0x2e, 0xc5, 0x18, 0x9e, 0x6b, 0xe9, 0x0d, 0x28, 0xf5, 0x29, 0x31, 0x26, 0x53, 0xde, 0x12,
0x9f, 0xe8, 0x3e, 0x4c, 0x71, 0x91, 0x82, 0x46, 0x5e, 0xbf, 0x0d, 0xa5, 0x94, 0x25, 0x26, 0x65,
0x20, 0xc5, 0xfc, 0x87, 0x1c, 0x94, 0xb9, 0x32, 0xb6, 0x46, 0xa8, 0x05, 0xd3, 0x3e, 0xfb, 0xe8,
0xd2, 0x35, 0x73, 0x19, 0x9b, 0xd9, 0x71, 0xf2, 0xc9, 0x84, 0x55, 0xe5, 0x28, 0x74, 0x18, 0xfd,
0x0a, 0x54, 0x04, 0x89, 0xd1, 0x38, 0xe4, 0x86, 0x6a, 0xc4, 0x09, 0xc8, 0xad, 0xfd, 0x64, 0xc2,
0x02, 0x0e, 0xbe, 0x3d, 0x0e, 0x51, 0x07, 0xe6, 0x04, 0x32, 0x5b, 0x1f, 0x17, 0x23, 0x4f, 0xa9,
0x2c, 0xc4, 0xa9, 0xa4, 0xcd, 0xf9, 0x64, 0xc2, 0x42, 0x1c, 0x5f, 0x99, 0x44, 0x6b, 0x52, 0xa4,
0xf0, 0x88, 0xe5, 0x97, 0x94, 0x48, 0x9d, 0x23, 0x97, 0x13, 0x11, 0xda, 0x5a, 0x51, 0x64, 0xeb,
0x1c, 0xb9, 0x91, 0xca, 0x1e, 0x95, 0xa1, 0xc4, 0x87, 0xcd, 0x7f, 0xcb, 0x01, 0x08, 0x8b, 0x6d,
0x8d, 0xd0, 0x1a, 0xd4, 0x7c, 0xfe, 0x15, 0xd3, 0xdf, 0xeb, 0x5a, 0xfd, 0x71, 0x43, 0x4f, 0x58,
0xd3, 0x02, 0x89, 0x89, 0xfb, 0x11, 0x54, 0x23, 0x2a, 0x52, 0x85, 0x57, 0x35, 0x2a, 0x8c, 0x28,
0x54, 0x04, 0x02, 0x51, 0xe2, 0x27, 0x70, 0x39, 0xc2, 0xd7, 0x68, 0xf1, 0x8d, 0x13, 0xb4, 0x18,
0x11, 0xbc, 0x24, 0x28, 0xa8, 0x7a, 0x7c, 0xac, 0x08, 0x26, 0x15, 0x79, 0x55, 0xa3, 0x48, 0x06,
0xa4, 0x6a, 0x32, 0x92, 0x30, 0xa6, 0x4a, 0x20, 0x69, 0x9f, 0x8d, 0x9b, 0x7f, 0x39, 0x09, 0xa5,
0x55, 0x6f, 0x38, 0xb2, 0x7d, 0xb2, 0x89, 0x8a, 0x3e, 0x0e, 0xc6, 0x83, 0x90, 0x2a, 0xb0, 0xb6,
0x7c, 0x33, 0xce, 0x83, 0x83, 0x89, 0x7f, 0x2d, 0x0a, 0x6a, 0x71, 0x14, 0x82, 0xcc, 0xb3, 0x7c,
0xee, 0x0c, 0xc8, 0x3c, 0xc7, 0x73, 0x14, 0x11, 0x10, 0xf2, 0x32, 0x20, 0x34, 0xa1, 0xc4, 0x0f,
0x6c, 0x2c, 0x58, 0x3f, 0x99, 0xb0, 0xc4, 0x00, 0x7a, 0x07, 0x66, 0x92, 0xa9, 0xb0, 0xc0, 0x61,
0x6a, 0xbd, 0x78, 0xe6, 0xbc, 0x09, 0xd5, 0x58, 0x86, 0x2e, 0x72, 0xb8, 0xca, 0x50, 0xc9, 0xcb,
0x57, 0x44, 0x58, 0x27, 0xc7, 0x8a, 0xea, 0x93, 0x09, 0x11, 0xd8, 0x6f, 0x88, 0xc0, 0x3e, 0xa5,
0x26, 0x5a, 0xa2, 0x57, 0x1e, 0xe3, 0xdf, 0x54, 0xa3, 0xd6, 0x57, 0x09, 0x72, 0x04, 0x24, 0xc3,
0x97, 0x69, 0xc1, 0x74, 0x4c, 0x65, 0x24, 0x47, 0xb6, 0xbf, 0xf6, 0xbc, 0xb5, 0xc1, 0x12, 0xea,
0x63, 0x9a, 0x43, 0xad, 0xba, 0x41, 0x12, 0xf4, 0x46, 0x7b, 0x67, 0xa7, 0x9e, 0x43, 0x57, 0xa0,
0xbc, 0xb9, 0xd5, 0xe9, 0x32, 0xa8, 0x7c, 0xb3, 0xf4, 0xc7, 0x2c, 0x92, 0xc8, 0xfc, 0xfc, 0x69,
0x44, 0x93, 0xa7, 0x68, 0x25, 0x33, 0x4f, 0x28, 0x99, 0xd9, 0x10, 0x99, 0x39, 0x27, 0x33, 0x73,
0x1e, 0x21, 0x28, 0x6c, 0xb4, 0x5b, 0x3b, 0x34, 0x49, 0x33, 0xd2, 0x2b, 0xe9, 0x6c, 0xfd, 0xa8,
0x06, 0x55, 0x66, 0x9e, 0xee, 0xd8, 0x25, 0x87, 0x89, 0x9f, 0x1a, 0x00, 0xd2, 0x61, 0xd1, 0x12,
0x94, 0x7a, 0x4c, 0x84, 0x86, 0x41, 0x23, 0xe0, 0x65, 0xad, 0xc5, 0x2d, 0x01, 0x85, 0xee, 0x41,
0x29, 0x18, 0xf7, 0x7a, 0x38, 0x10, 0x99, 0xfb, 0xb5, 0x64, 0x10, 0xe6, 0x01, 0xd1, 0x12, 0x70,
0x04, 0xe5, 0xa5, 0xed, 0x0c, 0xc6, 0x34, 0x8f, 0x9f, 0x8c, 0xc2, 0xe1, 0x64, 0x8c, 0xfd, 0x33,
0x03, 0x2a, 0x8a, 0x5b, 0xfc, 0x9c, 0x29, 0xe0, 0x1a, 0x94, 0xa9, 0x30, 0xb8, 0xcf, 0x93, 0xc0,
0x94, 0x25, 0x07, 0xd0, 0x57, 0xa0, 0x2c, 0x3c, 0x49, 0xe4, 0x81, 0x86, 0x9e, 0xec, 0xd6, 0xc8,
0x92, 0xa0, 0x52, 0xc8, 0x0e, 0xcc, 0x52, 0x3d, 0xf5, 0xc8, 0xed, 0x43, 0x68, 0x56, 0x3d, 0x96,
0x1b, 0x89, 0x63, 0x79, 0x13, 0xa6, 0x46, 0xfb, 0xc7, 0x81, 0xd3, 0xb3, 0x07, 0x5c, 0x9c, 0xe8,
0x5b, 0x52, 0xdd, 0x01, 0xa4, 0x52, 0x3d, 0x8f, 0x02, 0x24, 0xd1, 0x2b, 0x50, 0x79, 0x62, 0x07,
0xfb, 0x5c, 0x48, 0x39, 0x7e, 0x1f, 0xa6, 0xc9, 0xf8, 0xd3, 0x17, 0x67, 0x10, 0x5f, 0x60, 0xad,
0x98, 0xff, 0x68, 0x40, 0x4d, 0xa0, 0x9d, 0xcb, 0x40, 0x08, 0x26, 0xf7, 0xed, 0x60, 0x9f, 0x2a,
0x63, 0xda, 0xa2, 0xbf, 0xd1, 0x3b, 0x50, 0xef, 0xb1, 0xf5, 0x77, 0x13, 0xf7, 0xae, 0x19, 0x3e,
0x1e, 0xf9, 0xfe, 0x7b, 0x30, 0x4d, 0x50, 0xba, 0xf1, 0x7b, 0x90, 0x70, 0xe3, 0xaf, 0x58, 0xd5,
0x7d, 0xba, 0xe6, 0xa4, 0xf8, 0x36, 0x54, 0x99, 0x32, 0x2e, 0x5a, 0x76, 0xa9, 0xd7, 0x26, 0xcc,
0xec, 0xb8, 0xf6, 0x28, 0xd8, 0xf7, 0xc2, 0x84, 0xce, 0x57, 0xcc, 0xbf, 0x35, 0xa0, 0x2e, 0x27,
0xcf, 0x25, 0xc3, 0xdb, 0x30, 0xe3, 0xe3, 0xa1, 0xed, 0xb8, 0x8e, 0xbb, 0xd7, 0xdd, 0x3d, 0x0e,
0x71, 0xc0, 0xaf, 0xaf, 0xb5, 0x68, 0xf8, 0x11, 0x19, 0x25, 0xc2, 0xee, 0x0e, 0xbc, 0x5d, 0x1e,
0xa4, 0xe9, 0x6f, 0xf4, 0x46, 0x3c, 0x4a, 0x97, 0xa5, 0xde, 0xc4, 0xb8, 0x94, 0xf9, 0x27, 0x39,
0xa8, 0x7e, 0x62, 0x87, 0x3d, 0xb1, 0x83, 0xd0, 0x3a, 0xd4, 0xa2, 0x30, 0x4e, 0x47, 0xb8, 0xdc,
0x89, 0x03, 0x07, 0xc5, 0x11, 0xf7, 0x1a, 0x71, 0xe0, 0x98, 0xee, 0xa9, 0x03, 0x94, 0x94, 0xed,
0xf6, 0xf0, 0x20, 0x22, 0x95, 0xcb, 0x26, 0x45, 0x01, 0x55, 0x52, 0xea, 0x00, 0xfa, 0x3a, 0xd4,
0x47, 0xbe, 0xb7, 0xe7, 0xe3, 0x20, 0x88, 0x88, 0xb1, 0x14, 0x6e, 0x6a, 0x88, 0x6d, 0x73, 0xd0,
0xc4, 0x29, 0xe6, 0xfe, 0x93, 0x09, 0x6b, 0x66, 0x14, 0x9f, 0x93, 0x81, 0x75, 0x46, 0x9e, 0xf7,
0x58, 0x64, 0xfd, 0x41, 0x1e, 0x50, 0x7a, 0x99, 0x5f, 0xf4, 0x98, 0x7c, 0x0b, 0x6a, 0x41, 0x68,
0xfb, 0xa9, 0x3d, 0x3f, 0x4d, 0x47, 0xa3, 0x1d, 0xff, 0x36, 0x44, 0x92, 0x75, 0x5d, 0x2f, 0x74,
0x5e, 0x1e, 0xb3, 0x0b, 0x8a, 0x55, 0x13, 0xc3, 0x9b, 0x74, 0x14, 0x6d, 0x42, 0xe9, 0xa5, 0x33,
0x08, 0xb1, 0x1f, 0x34, 0x0a, 0x0b, 0xf9, 0xdb, 0xb5, 0xe5, 0x77, 0x4f, 0x33, 0xcc, 0xe2, 0xc7,
0x14, 0xbe, 0x73, 0x3c, 0x52, 0x4f, 0xbf, 0x9c, 0x88, 0x7a, 0x8c, 0x2f, 0xea, 0x6f, 0x44, 0x26,
0x4c, 0xbd, 0x22, 0x44, 0xbb, 0x4e, 0x9f, 0xe6, 0xe2, 0xc8, 0x0f, 0xef, 0x5b, 0x25, 0x3a, 0xb1,
0xde, 0x47, 0x37, 0x61, 0xea, 0xa5, 0x6f, 0xef, 0x0d, 0xb1, 0x1b, 0xb2, 0x5b, 0xbe, 0x84, 0x89,
0x26, 0xcc, 0x45, 0x00, 0x29, 0x0a, 0xc9, 0x7c, 0x9b, 0x5b, 0xdb, 0xcf, 0x3b, 0xf5, 0x09, 0x54,
0x85, 0xa9, 0xcd, 0xad, 0xb5, 0xf6, 0x46, 0x9b, 0xe4, 0x46, 0x91, 0xf3, 0xee, 0x49, 0xa7, 0x6b,
0x09, 0x43, 0xc4, 0xf6, 0x84, 0x2a, 0x97, 0x11, 0xbf, 0x74, 0x0b, 0xb9, 0x04, 0x89, 0x7b, 0xe6,
0x0d, 0x98, 0xd3, 0x6d, 0x0d, 0x01, 0x70, 0xdf, 0xfc, 0x97, 0x1c, 0x4c, 0x73, 0x47, 0x38, 0x97,
0xe7, 0x5e, 0x55, 0xa4, 0xe2, 0xd7, 0x13, 0xa1, 0xa4, 0x06, 0x94, 0x98, 0x83, 0xf4, 0xf9, 0xfd,
0x57, 0x7c, 0x92, 0xe0, 0xcc, 0xf6, 0x3b, 0xee, 0x73, 0xb3, 0x47, 0xdf, 0xda, 0xb0, 0x59, 0xc8,
0x0c, 0x9b, 0x91, 0xc3, 0xd9, 0x01, 0x3f, 0x58, 0x95, 0xa5, 0x29, 0xaa, 0xc2, 0xa9, 0xc8, 0x64,
0xcc, 0x66, 0xa5, 0x0c, 0x9b, 0xa1, 0x5b, 0x50, 0xc4, 0x87, 0xd8, 0x0d, 0x83, 0x46, 0x85, 0x26,
0xd2, 0x69, 0x71, 0xa1, 0x6a, 0x93, 0x51, 0x8b, 0x4f, 0x4a, 0x53, 0x7d, 0x04, 0xb3, 0xf4, 0xbe,
0xfb, 0xd8, 0xb7, 0x5d, 0xf5, 0xce, 0xde, 0xe9, 0x6c, 0xf0, 0xb4, 0x43, 0x7e, 0xa2, 0x1a, 0xe4,
0xd6, 0xd7, 0xb8, 0x7e, 0x72, 0xeb, 0x6b, 0x12, 0xff, 0xf7, 0x0d, 0x40, 0x2a, 0x81, 0x73, 0xd9,
0x22, 0xc1, 0x45, 0xc8, 0x91, 0x97, 0x72, 0xcc, 0x41, 0x01, 0xfb, 0xbe, 0xe7, 0xb3, 0x40, 0x69,
0xb1, 0x0f, 0x29, 0xcd, 0xfb, 0x5c, 0x18, 0x0b, 0x1f, 0x7a, 0x07, 0x51, 0x04, 0x60, 0x64, 0x8d,
0xb4, 0xf0, 0x1d, 0xb8, 0x14, 0x03, 0xbf, 0x98, 0x14, 0xbf, 0x05, 0x33, 0x94, 0xea, 0xea, 0x3e,
0xee, 0x1d, 0x8c, 0x3c, 0xc7, 0x4d, 0x49, 0x80, 0x6e, 0x92, 0xd8, 0x25, 0xd2, 0x05, 0x59, 0x22,
0x5b, 0x73, 0x35, 0x1a, 0xec, 0x74, 0x36, 0xe4, 0x56, 0xdf, 0x85, 0x2b, 0x09, 0x82, 0x62, 0x65,
0xbf, 0x0a, 0x95, 0x5e, 0x34, 0x18, 0xf0, 0x13, 0xe4, 0xf5, 0xb8, 0xb8, 0x49, 0x54, 0x15, 0x43,
0xf2, 0xf8, 0x3a, 0xbc, 0x96, 0xe2, 0x71, 0x11, 0xea, 0xb8, 0x6f, 0xde, 0x85, 0xcb, 0x94, 0xf2,
0x53, 0x8c, 0x47, 0xad, 0x81, 0x73, 0x78, 0xba, 0x59, 0x8e, 0xf9, 0x7a, 0x15, 0x8c, 0x2f, 0x77,
0x5b, 0x49, 0xd6, 0x6d, 0xce, 0xba, 0xe3, 0x0c, 0x71, 0xc7, 0xdb, 0xc8, 0x96, 0x96, 0x24, 0xf2,
0x03, 0x7c, 0x1c, 0xf0, 0xe3, 0x23, 0xfd, 0x2d, 0xa3, 0xd7, 0x5f, 0x1b, 0x5c, 0x9d, 0x2a, 0x9d,
0x2f, 0xd9, 0x35, 0xe6, 0x01, 0xf6, 0x88, 0x0f, 0xe2, 0x3e, 0x99, 0x60, 0xb5, 0x39, 0x65, 0x24,
0x12, 0x98, 0x64, 0xa1, 0x6a, 0x52, 0xe0, 0xeb, 0xdc, 0x71, 0xe8, 0x7f, 0x82, 0xd4, 0x49, 0xe9,
0x2d, 0xa8, 0xd0, 0x99, 0x9d, 0xd0, 0x0e, 0xc7, 0x41, 0x96, 0xe5, 0x56, 0xcc, 0x1f, 0x18, 0xdc,
0xa3, 0x04, 0x9d, 0x73, 0xad, 0xf9, 0x1e, 0x14, 0xe9, 0x0d, 0x51, 0xdc, 0x74, 0xae, 0x6a, 0x36,
0x36, 0x93, 0xc8, 0xe2, 0x80, 0xca, 0x39, 0xc9, 0x80, 0xe2, 0x33, 0xda, 0x39, 0x50, 0xa4, 0x9d,
0x14, 0x96, 0x73, 0xed, 0x21, 0x2b, 0x3f, 0x96, 0x2d, 0xfa, 0x9b, 0x5e, 0x08, 0x30, 0xf6, 0x9f,
0x5b, 0x1b, 0xec, 0x06, 0x52, 0xb6, 0xa2, 0x6f, 0xa2, 0xd8, 0xde, 0xc0, 0xc1, 0x6e, 0x48, 0x67,
0x27, 0xe9, 0xac, 0x32, 0x82, 0x6e, 0x41, 0xd9, 0x09, 0x36, 0xb0, 0xed, 0xbb, 0xbc, 0xc4, 0xaf,
0x04, 0x66, 0x39, 0x23, 0xf7, 0xd8, 0x37, 0xa0, 0xce, 0x24, 0x6b, 0xf5, 0xfb, 0xca, 0x69, 0x3f,
0xe2, 0x6f, 0x24, 0xf8, 0xc7, 0xe8, 0xe7, 0x4e, 0xa7, 0xff, 0x37, 0x06, 0xcc, 0x2a, 0x0c, 0xce,
0x65, 0x82, 0xf7, 0xa0, 0xc8, 0xfa, 0x2f, 0xfc, 0x28, 0x38, 0x17, 0xc7, 0x62, 0x6c, 0x2c, 0x0e,
0x83, 0x16, 0xa1, 0xc4, 0x7e, 0x89, 0x6b, 0x9c, 0x1e, 0x5c, 0x00, 0x49, 0x91, 0x17, 0xe1, 0x12,
0x9f, 0xc3, 0x43, 0x4f, 0xe7, 0x73, 0x93, 0xf1, 0x08, 0xf1, 0x7d, 0x03, 0xe6, 0xe2, 0x08, 0xe7,
0x5a, 0xa5, 0x22, 0x77, 0xee, 0x0b, 0xc9, 0xfd, 0x6b, 0x42, 0xee, 0xe7, 0xa3, 0xbe, 0x72, 0xe4,
0x4c, 0xee, 0x38, 0xd5, 0xba, 0xb9, 0xb8, 0x75, 0x25, 0xad, 0x1f, 0x45, 0x6b, 0x12, 0xc4, 0xce,
0xb5, 0xa6, 0x0f, 0xce, 0xb4, 0x26, 0xe5, 0x08, 0x96, 0x5a, 0xdc, 0xba, 0xd8, 0x46, 0x1b, 0x4e,
0x10, 0x65, 0x9c, 0x77, 0xa1, 0x3a, 0x70, 0x5c, 0x6c, 0xfb, 0xbc, 0x87, 0x64, 0xa8, 0xfb, 0xf1,
0x81, 0x15, 0x9b, 0x94, 0xa4, 0x7e, 0xdb, 0x00, 0xa4, 0xd2, 0xfa, 0xc5, 0x58, 0x6b, 0x49, 0x28,
0x78, 0xdb, 0xf7, 0x86, 0x5e, 0x78, 0xda, 0x36, 0xbb, 0x6f, 0xfe, 0xae, 0x01, 0x97, 0x13, 0x18,
0xbf, 0x08, 0xc9, 0xef, 0x9b, 0xd7, 0x60, 0x76, 0x0d, 0x8b, 0x33, 0x5e, 0xaa, 0x76, 0xb0, 0x03,
0x48, 0x9d, 0xbd, 0x98, 0x53, 0xcc, 0x2f, 0xc1, 0xec, 0x33, 0xef, 0x90, 0x04, 0x72, 0x32, 0x2d,
0xc3, 0x14, 0x2b, 0x66, 0x45, 0xfa, 0x8a, 0xbe, 0x65, 0xe8, 0xdd, 0x01, 0xa4, 0x62, 0x5e, 0x84,
0x38, 0x2b, 0xe6, 0x7f, 0x1b, 0x50, 0x6d, 0x0d, 0x6c, 0x7f, 0x28, 0x44, 0xf9, 0x08, 0x8a, 0xac,
0x32, 0xc3, 0xcb, 0xac, 0x6f, 0xc5, 0xe9, 0xa9, 0xb0, 0xec, 0xa3, 0xc5, 0xea, 0x38, 0x1c, 0x8b,
0x2c, 0x85, 0x77, 0x96, 0xd7, 0x12, 0x9d, 0xe6, 0x35, 0xf4, 0x3e, 0x14, 0x6c, 0x82, 0x42, 0xd3,
0x6b, 0x2d, 0x59, 0x2e, 0xa3, 0xd4, 0xc8, 0x95, 0xc8, 0x62, 0x50, 0xe6, 0x87, 0x50, 0x51, 0x38,
0xa0, 0x12, 0xe4, 0x1f, 0xb7, 0xf9, 0x35, 0xa9, 0xb5, 0xda, 0x59, 0x7f, 0xc1, 0x4a, 0x88, 0x35,
0x80, 0xb5, 0x76, 0xf4, 0x9d, 0xd3, 0x34, 0xf6, 0x6c, 0x4e, 0x87, 0xe7, 0x2d, 0x55, 0x42, 0x23,
0x4b, 0xc2, 0xdc, 0x59, 0x24, 0x94, 0x2c, 0x7e, 0xcb, 0x80, 0x69, 0xae, 0x9a, 0xf3, 0xa6, 0x66,
0x4a, 0x39, 0x23, 0x35, 0x2b, 0xcb, 0xb0, 0x38, 0xa0, 0x94, 0xe1, 0x9f, 0x0c, 0xa8, 0xaf, 0x79,
0xaf, 0xdc, 0x3d, 0xdf, 0xee, 0x47, 0x3e, 0xf8, 0x71, 0xc2, 0x9c, 0x8b, 0x89, 0x4a, 0x7f, 0x02,
0x5e, 0x0e, 0x24, 0xcc, 0xda, 0x90, 0xb5, 0x14, 0x96, 0xdf, 0xc5, 0xa7, 0xf9, 0x55, 0x98, 0x49,
0x20, 0x11, 0x03, 0xbd, 0x68, 0x6d, 0xac, 0xaf, 0x11, 0x83, 0xd0, 0x7a, 0x6f, 0x7b, 0xb3, 0xf5,
0x68, 0xa3, 0xcd, 0xbb, 0xb2, 0xad, 0xcd, 0xd5, 0xf6, 0x86, 0x34, 0xd4, 0x03, 0xb1, 0x82, 0x07,
0xe6, 0x00, 0x66, 0x15, 0x81, 0xce, 0xdb, 0x1c, 0xd3, 0xcb, 0x2b, 0xb9, 0x35, 0x60, 0x9a, 0x9f,
0x72, 0x92, 0x8e, 0xff, 0xd3, 0x3c, 0xd4, 0xc4, 0xd4, 0x97, 0x23, 0x05, 0xba, 0x02, 0xc5, 0xfe,
0xee, 0x8e, 0xf3, 0x6d, 0xd1, 0x97, 0xe5, 0x5f, 0x64, 0x7c, 0xc0, 0xf8, 0xb0, 0xd7, 0x16, 0xfc,
0x0b, 0x5d, 0x63, 0x0f, 0x31, 0xd6, 0xdd, 0x3e, 0x3e, 0xa2, 0x87, 0xa1, 0x49, 0x4b, 0x0e, 0xd0,
0xa2, 0x26, 0x7f, 0x95, 0x41, 0xef, 0xba, 0xca, 0x2b, 0x0d, 0xb4, 0x02, 0x75, 0xf2, 0xbb, 0x35,
0x1a, 0x0d, 0x1c, 0xdc, 0x67, 0x04, 0xc8, 0x35, 0x77, 0x52, 0x9e, 0x76, 0x52, 0x00, 0xe8, 0x06,
0x14, 0xe9, 0x15, 0x30, 0x68, 0x4c, 0x91, 0xbc, 0x2a, 0x41, 0xf9, 0x30, 0x7a, 0x07, 0x2a, 0x4c,
0xe2, 0x75, 0xf7, 0x79, 0x80, 0xe9, 0x9b, 0x05, 0xa5, 0x1e, 0xa2, 0xce, 0xc5, 0xcf, 0x59, 0x90,
0x75, 0xce, 0x42, 0x4b, 0x50, 0x0b, 0x42, 0xcf, 0xb7, 0xf7, 0xf0, 0x0b, 0xae, 0xb2, 0x4a, 0xbc,
0x68, 0x97, 0x98, 0x96, 0xe6, 0xba, 0x06, 0xb3, 0xad, 0x71, 0xb8, 0xdf, 0x76, 0x49, 0x72, 0x4c,
0x19, 0xf3, 0x3a, 0x20, 0x32, 0xbb, 0xe6, 0x04, 0xda, 0x69, 0x8e, 0xac, 0xdd, 0x09, 0x0f, 0xcc,
0x4d, 0xb8, 0x44, 0x66, 0xb1, 0x1b, 0x3a, 0x3d, 0xe5, 0x20, 0x22, 0x8e, 0xba, 0x46, 0xe2, 0xa8,
0x6b, 0x07, 0xc1, 0x2b, 0xcf, 0xef, 0x73, 0x63, 0x47, 0xdf, 0x92, 0xdb, 0xdf, 0x1b, 0x4c, 0x9a,
0xe7, 0x41, 0xec, 0x98, 0xfa, 0x05, 0xe9, 0xa1, 0x5f, 0x86, 0x92, 0x37, 0xa2, 0x4f, 0x82, 0x78,
0xf5, 0xef, 0xca, 0x22, 0x7b, 0x66, 0xb4, 0xc8, 0x09, 0x6f, 0xb1, 0x59, 0xa5, 0x42, 0xc5, 0xe1,
0x89, 0x9a, 0xf7, 0xed, 0x60, 0x1f, 0xf7, 0xb7, 0x05, 0xf1, 0x58, 0x6d, 0xf4, 0x81, 0x95, 0x98,
0x96, 0xb2, 0xdf, 0x93, 0xa2, 0x3f, 0xc6, 0xe1, 0x09, 0xa2, 0xab, 0xd5, 0xf7, 0xcb, 0x02, 0x85,
0x37, 0x0d, 0xcf, 0x82, 0xf5, 0x43, 0x03, 0xae, 0x0b, 0xb4, 0xd5, 0x7d, 0xdb, 0xdd, 0xc3, 0x42,
0x98, 0x9f, 0x57, 0x5f, 0xe9, 0x45, 0xe7, 0xcf, 0xb8, 0xe8, 0xa7, 0xd0, 0x88, 0x16, 0x4d, 0x2b,
0x31, 0xde, 0x40, 0x5d, 0xc4, 0x38, 0xe0, 0x11, 0xa1, 0x6c, 0xd1, 0xdf, 0x64, 0xcc, 0xf7, 0x06,
0xd1, 0x25, 0x88, 0xfc, 0x96, 0xc4, 0x36, 0xe0, 0xaa, 0x20, 0xc6, 0x4b, 0x23, 0x71, 0x6a, 0xa9,
0x35, 0x9d, 0x48, 0x8d, 0xdb, 0x83, 0xd0, 0x38, 0x79, 0x2b, 0x69, 0x51, 0xe2, 0x26, 0xa4, 0x5c,
0x0c, 0x1d, 0x97, 0x79, 0xe6, 0x01, 0x44, 0x66, 0xe5, 0xbc, 0x9a, 0x9a, 0x27, 0x24, 0xb5, 0xf3,
0x7c, 0x0b, 0x90, 0xf9, 0xd4, 0x16, 0xc8, 0xe6, 0x8a, 0x61, 0x3e, 0x12, 0x94, 0xa8, 0x7d, 0x1b,
0xfb, 0x43, 0x27, 0x08, 0x94, 0x36, 0x94, 0x4e, 0x5d, 0x6f, 0xc1, 0xe4, 0x08, 0xf3, 0xe4, 0x5d,
0x59, 0x46, 0xc2, 0x27, 0x14, 0x64, 0x3a, 0x2f, 0xd9, 0x0c, 0xe1, 0x86, 0x60, 0xc3, 0x0c, 0xa2,
0xe5, 0x93, 0x14, 0x53, 0x94, 0xbe, 0x73, 0x19, 0xa5, 0xef, 0x7c, 0xbc, 0xf4, 0x1d, 0x3b, 0x50,
0xaa, 0x81, 0xea, 0x62, 0x0e, 0x94, 0x1d, 0x66, 0x80, 0x28, 0xbe, 0x5d, 0x0c, 0xd5, 0x3f, 0xe0,
0x81, 0xea, 0xa2, 0xd2, 0x20, 0xa6, 0x6b, 0x16, 0x4d, 0x4a, 0xf1, 0x89, 0x4c, 0xa8, 0x12, 0x23,
0x59, 0x6a, 0x4f, 0x60, 0xd2, 0x8a, 0x8d, 0xc9, 0x60, 0x7c, 0x00, 0x73, 0xf1, 0x60, 0x7c, 0x2e,
0xa1, 0xe6, 0xa0, 0x10, 0x7a, 0x07, 0x58, 0x64, 0x66, 0xf6, 0x91, 0x52, 0x6b, 0x14, 0xa8, 0x2f,
0x46, 0xad, 0xdf, 0x94, 0x54, 0xa9, 0x03, 0x9e, 0x77, 0x05, 0x64, 0x3b, 0x8a, 0xbb, 0x2f, 0xfb,
0x90, 0xbc, 0x3e, 0x81, 0x2b, 0xc9, 0xe0, 0x7b, 0x31, 0x8b, 0xe8, 0x32, 0xe7, 0xd4, 0x85, 0xe7,
0x8b, 0x61, 0xf0, 0x99, 0x8c, 0x93, 0x4a, 0xd0, 0xbd, 0x18, 0xda, 0xbf, 0x0e, 0x4d, 0x5d, 0x0c,
0xbe, 0x50, 0x5f, 0x8c, 0x42, 0xf2, 0xc5, 0x50, 0xfd, 0xbe, 0x21, 0xc9, 0xaa, 0xbb, 0xe6, 0xc3,
0x2f, 0x42, 0x56, 0xe4, 0xba, 0xbb, 0xd1, 0xf6, 0x59, 0x8a, 0xa2, 0x65, 0x5e, 0x1f, 0x2d, 0x25,
0x0a, 0x05, 0x14, 0xfe, 0x27, 0x43, 0xfd, 0x97, 0xb9, 0x7b, 0x39, 0x33, 0x99, 0x77, 0xce, 0xcb,
0x8c, 0xa4, 0xe7, 0x88, 0x19, 0xfd, 0x48, 0xb9, 0x8a, 0x9a, 0xa4, 0x2e, 0xc6, 0x74, 0xbf, 0x21,
0x13, 0x4c, 0x2a, 0x8f, 0x5d, 0x0c, 0x07, 0x1b, 0x16, 0xb2, 0x53, 0xd8, 0x85, 0xb0, 0xb8, 0xd3,
0x82, 0x72, 0x74, 0xf3, 0x55, 0xde, 0xe9, 0x56, 0xa0, 0xb4, 0xb9, 0xb5, 0xb3, 0xdd, 0x5a, 0x25,
0x17, 0xbb, 0x39, 0x28, 0xad, 0x6e, 0x59, 0xd6, 0xf3, 0xed, 0x0e, 0xb9, 0xd9, 0x25, 0x9f, 0xed,
0x2c, 0xff, 0x2c, 0x0f, 0xb9, 0xa7, 0x2f, 0xd0, 0xa7, 0x50, 0x60, 0xcf, 0xc6, 0x4e, 0x78, 0x3d,
0xd8, 0x3c, 0xe9, 0x65, 0x9c, 0xf9, 0xda, 0xf7, 0xfe, 0xf3, 0x67, 0x7f, 0x98, 0x9b, 0x35, 0xab,
0x4b, 0x87, 0x2b, 0x4b, 0x07, 0x87, 0x4b, 0x34, 0xc9, 0x3e, 0x34, 0xee, 0xa0, 0xaf, 0x41, 0x7e,
0x7b, 0x1c, 0xa2, 0xcc, 0x57, 0x85, 0xcd, 0xec, 0xc7, 0x72, 0xe6, 0x65, 0x4a, 0x74, 0xc6, 0x04,
0x4e, 0x74, 0x34, 0x0e, 0x09, 0xc9, 0x6f, 0x41, 0x45, 0x7d, 0xea, 0x76, 0xea, 0x53, 0xc3, 0xe6,
0xe9, 0xcf, 0xe8, 0xcc, 0xeb, 0x94, 0xd5, 0x6b, 0x26, 0xe2, 0xac, 0xd8, 0x63, 0x3c, 0x75, 0x15,
0x9d, 0x23, 0x17, 0x65, 0x3e, 0x44, 0x6c, 0x66, 0xbf, 0xac, 0x4b, 0xad, 0x22, 0x3c, 0x72, 0x09,
0xc9, 0x6f, 0xf2, 0x27, 0x74, 0xbd, 0x10, 0xdd, 0xd0, 0xbc, 0x81, 0x52, 0xdf, 0xf6, 0x34, 0x17,
0xb2, 0x01, 0x38, 0x93, 0x6b, 0x94, 0xc9, 0x15, 0x73, 0x96, 0x33, 0xe9, 0x45, 0x20, 0x0f, 0x8d,
0x3b, 0xcb, 0x3d, 0x28, 0xd0, 0xde, 0x31, 0xfa, 0x4c, 0xfc, 0x68, 0x6a, 0xba, 0xf2, 0x19, 0x86,
0x8e, 0x75, 0x9d, 0xcd, 0x39, 0xca, 0xa8, 0x66, 0x96, 0x09, 0x23, 0xda, 0x39, 0x7e, 0x68, 0xdc,
0xb9, 0x6d, 0xdc, 0x35, 0x96, 0xff, 0xaa, 0x00, 0x05, 0xda, 0xa3, 0x40, 0x07, 0x00, 0xb2, 0x47,
0x9a, 0x5c, 0x5d, 0xaa, 0xfd, 0x9a, 0x5c, 0x5d, 0xba, 0xbd, 0x6a, 0x36, 0x29, 0xd3, 0x39, 0x73,
0x86, 0x30, 0xa5, 0xad, 0x8f, 0x25, 0xda, 0xe9, 0x21, 0x7a, 0xfc, 0xa1, 0xc1, 0x9b, 0x35, 0xcc,
0xcd, 0x90, 0x8e, 0x5a, 0xac, 0x3f, 0x9a, 0xdc, 0x0e, 0x9a, 0x96, 0xa8, 0xf9, 0x80, 0x32, 0x5c,
0x32, 0xeb, 0x92, 0xa1, 0x4f, 0x21, 0x1e, 0x1a, 0x77, 0x3e, 0x6b, 0x98, 0x97, 0xb8, 0x96, 0x13,
0x33, 0xe8, 0x3b, 0x50, 0x8b, 0x77, 0xf2, 0xd0, 0x4d, 0x0d, 0xaf, 0x64, 0x67, 0xb0, 0xf9, 0xe6,
0xc9, 0x40, 0x5c, 0xa6, 0x79, 0x2a, 0x13, 0x67, 0xce, 0x38, 0x1f, 0x60, 0x3c, 0xb2, 0x09, 0x10,
0xb7, 0x01, 0xfa, 0x53, 0x83, 0x37, 0x63, 0x65, 0x23, 0x0e, 0xe9, 0xa8, 0xa7, 0xfa, 0x7d, 0xcd,
0x5b, 0xa7, 0x40, 0x71, 0x21, 0x3e, 0xa4, 0x42, 0x7c, 0x60, 0xce, 0x49, 0x21, 0x42, 0x67, 0x88,
0x43, 0x8f, 0x4b, 0xf1, 0xd9, 0x35, 0xf3, 0xb5, 0x98, 0x72, 0x62, 0xb3, 0xd2, 0x58, 0xac, 0x61,
0xa6, 0x35, 0x56, 0xac, 0x27, 0xa7, 0x35, 0x56, 0xbc, 0xdb, 0xa6, 0x33, 0x16, 0x6f, 0x8f, 0x69,
0x8c, 0x15, 0xcd, 0x2c, 0xff, 0xef, 0x24, 0x94, 0x56, 0xd9, 0x9f, 0xe2, 0x20, 0x0f, 0xca, 0x51,
0x0b, 0x09, 0xcd, 0xeb, 0xaa, 0xd4, 0xf2, 0x2a, 0xd7, 0xbc, 0x91, 0x39, 0xcf, 0x05, 0x7a, 0x83,
0x0a, 0xf4, 0xba, 0x79, 0x85, 0x70, 0xe6, 0x7f, 0xed, 0xb3, 0xc4, 0x6a, 0x99, 0x4b, 0x76, 0xbf,
0x4f, 0x14, 0xf1, 0x9b, 0x50, 0x55, 0x1b, 0x3a, 0xe8, 0x0d, 0x6d, 0x65, 0x5c, 0xed, 0x0e, 0x35,
0xcd, 0x93, 0x40, 0x38, 0xe7, 0x37, 0x29, 0xe7, 0x79, 0xf3, 0xaa, 0x86, 0xb3, 0x4f, 0x41, 0x63,
0xcc, 0x59, 0xe7, 0x45, 0xcf, 0x3c, 0xd6, 0xe2, 0xd1, 0x33, 0x8f, 0x37, 0x6e, 0x4e, 0x64, 0x3e,
0xa6, 0xa0, 0x84, 0x79, 0x00, 0x20, 0x5b, 0x23, 0x48, 0xab, 0x4b, 0xe5, 0xc2, 0x9a, 0x0c, 0x0e,
0xe9, 0xae, 0x8a, 0x69, 0x52, 0xb6, 0x7c, 0xdf, 0x25, 0xd8, 0x0e, 0x9c, 0x20, 0x64, 0x8e, 0x39,
0x1d, 0x6b, 0x6c, 0x20, 0xed, 0x7a, 0xe2, 0x7d, 0x92, 0xe6, 0xcd, 0x13, 0x61, 0x38, 0xf7, 0x5b,
0x94, 0xfb, 0x0d, 0xb3, 0xa9, 0xe1, 0x3e, 0x62, 0xb0, 0x64, 0xb3, 0xfd, 0x5f, 0x11, 0x2a, 0xcf,
0x6c, 0xc7, 0x0d, 0xb1, 0x6b, 0xbb, 0x3d, 0x8c, 0x76, 0xa1, 0x40, 0x73, 0x77, 0x32, 0x10, 0xab,
0x75, 0xfc, 0x64, 0x20, 0x8e, 0x15, 0xb2, 0xcd, 0x05, 0xca, 0xb8, 0x69, 0x5e, 0x26, 0x8c, 0x87,
0x92, 0xf4, 0x12, 0x2b, 0x81, 0x1b, 0x77, 0xd0, 0x4b, 0x28, 0xf2, 0x06, 0x76, 0x82, 0x50, 0xac,
0xa8, 0xd6, 0xbc, 0xa6, 0x9f, 0xd4, 0xed, 0x65, 0x95, 0x4d, 0x40, 0xe1, 0x08, 0x9f, 0x43, 0x00,
0xd9, 0x8f, 0x49, 0x5a, 0x34, 0xd5, 0xc7, 0x69, 0x2e, 0x64, 0x03, 0xe8, 0x74, 0xaa, 0xf2, 0xec,
0x47, 0xb0, 0x84, 0xef, 0x37, 0x60, 0xf2, 0x89, 0x1d, 0xec, 0xa3, 0x44, 0xee, 0x55, 0xde, 0x9b,
0x36, 0x9b, 0xba, 0x29, 0xce, 0xe5, 0x06, 0xe5, 0x72, 0x95, 0x85, 0x32, 0x95, 0x0b, 0x7d, 0x51,
0x69, 0xdc, 0x41, 0x7d, 0x28, 0xb2, 0xc7, 0xa6, 0x49, 0xfd, 0xc5, 0x5e, 0xae, 0x26, 0xf5, 0x17,
0x7f, 0x9f, 0x7a, 0x3a, 0x97, 0x11, 0x4c, 0x89, 0x47, 0x99, 0x28, 0xf1, 0x94, 0x25, 0xf1, 0x92,
0xb3, 0x39, 0x9f, 0x35, 0xcd, 0x79, 0xdd, 0xa4, 0xbc, 0xae, 0x9b, 0x8d, 0x94, 0xad, 0x38, 0xe4,
0x43, 0xe3, 0xce, 0x5d, 0x03, 0x7d, 0x07, 0x40, 0x36, 0xac, 0x52, 0x1e, 0x98, 0x6c, 0x82, 0xa5,
0x3c, 0x30, 0xd5, 0xeb, 0x32, 0x17, 0x29, 0xdf, 0xdb, 0xe6, 0xcd, 0x24, 0xdf, 0xd0, 0xb7, 0xdd,
0xe0, 0x25, 0xf6, 0xdf, 0x67, 0xd5, 0xf2, 0x60, 0xdf, 0x19, 0x91, 0x25, 0xfb, 0x50, 0x8e, 0xfa,
0x09, 0xc9, 0x68, 0x9b, 0xec, 0x7c, 0x24, 0xa3, 0x6d, 0xaa, 0x11, 0x11, 0x0f, 0x3b, 0xb1, 0xdd,
0x22, 0x40, 0x89, 0x03, 0xfe, 0x45, 0x1d, 0x26, 0xc9, 0x81, 0x9c, 0x1c, 0x4e, 0x64, 0xb1, 0x27,
0xb9, 0xfa, 0x54, 0xbd, 0x3a, 0xb9, 0xfa, 0x74, 0x9d, 0x28, 0x7e, 0x38, 0x21, 0x97, 0xb5, 0x25,
0x56, 0x45, 0x21, 0x2b, 0xf5, 0xa0, 0xa2, 0x14, 0x81, 0x90, 0x86, 0x58, 0xbc, 0xfe, 0x9d, 0x4c,
0x77, 0x9a, 0x0a, 0x92, 0xf9, 0x3a, 0xe5, 0x77, 0x99, 0xa5, 0x3b, 0xca, 0xaf, 0xcf, 0x20, 0x08,
0x43, 0xbe, 0x3a, 0xee, 0xf7, 0x9a, 0xd5, 0xc5, 0x7d, 0x7f, 0x21, 0x1b, 0x20, 0x73, 0x75, 0xd2,
0xf1, 0x5f, 0x41, 0x55, 0x2d, 0xfc, 0x20, 0x8d, 0xf0, 0x89, 0x0a, 0x7d, 0x32, 0x8f, 0xe8, 0xea,
0x46, 0xf1, 0xc8, 0x46, 0x59, 0xda, 0x0a, 0x18, 0x61, 0x3c, 0x80, 0x12, 0x2f, 0x00, 0xe9, 0x54,
0x1a, 0x2f, 0xe2, 0xeb, 0x54, 0x9a, 0xa8, 0x1e, 0xc5, 0x4f, 0xcf, 0x94, 0x23, 0xb9, 0x88, 0x8a,
0x5c, 0xcd, 0xb9, 0x3d, 0xc6, 0x61, 0x16, 0x37, 0x59, 0xb4, 0xcd, 0xe2, 0xa6, 0xd4, 0x07, 0xb2,
0xb8, 0xed, 0xe1, 0x90, 0xc7, 0x03, 0x71, 0xb9, 0x46, 0x19, 0xc4, 0xd4, 0xfc, 0x68, 0x9e, 0x04,
0xa2, 0xbb, 0xdc, 0x48, 0x86, 0x22, 0x39, 0x1e, 0x01, 0xc8, 0x62, 0x54, 0xf2, 0xc4, 0xaa, 0xed,
0x13, 0x24, 0x4f, 0xac, 0xfa, 0x7a, 0x56, 0x3c, 0xf6, 0x49, 0xbe, 0xec, 0x6e, 0x45, 0x38, 0xff,
0xd8, 0x00, 0x94, 0x2e, 0x57, 0xa1, 0x77, 0xf5, 0xd4, 0xb5, 0x3d, 0x87, 0xe6, 0x7b, 0x67, 0x03,
0xd6, 0xa5, 0x33, 0x29, 0x52, 0x8f, 0x42, 0x8f, 0x5e, 0x11, 0xa1, 0xbe, 0x6b, 0xc0, 0x74, 0xac,
0xc4, 0x85, 0xde, 0xca, 0xb0, 0x69, 0xa2, 0xf1, 0xd0, 0x7c, 0xfb, 0x54, 0x38, 0xdd, 0x51, 0x5e,
0xd9, 0x01, 0xe2, 0x4e, 0xf3, 0x3b, 0x06, 0xd4, 0xe2, 0x95, 0x30, 0x94, 0x41, 0x3b, 0xd5, 0xaf,
0x68, 0xde, 0x3e, 0x1d, 0xf0, 0x64, 0xf3, 0xc8, 0xeb, 0xcc, 0x00, 0x4a, 0xbc, 0x64, 0xa6, 0xdb,
0xf8, 0xf1, 0x06, 0x87, 0x6e, 0xe3, 0x27, 0xea, 0x6d, 0x9a, 0x8d, 0xef, 0x7b, 0x03, 0xac, 0xb8,
0x19, 0xaf, 0xa4, 0x65, 0x71, 0x3b, 0xd9, 0xcd, 0x12, 0x65, 0xb8, 0x2c, 0x6e, 0xd2, 0xcd, 0x44,
0xc1, 0x0c, 0x65, 0x10, 0x3b, 0xc5, 0xcd, 0x92, 0xf5, 0x36, 0x8d, 0x9b, 0x51, 0x86, 0x8a, 0x9b,
0xc9, 0x42, 0x96, 0xce, 0xcd, 0x52, 0xbd, 0x18, 0x9d, 0x9b, 0xa5, 0x6b, 0x61, 0x1a, 0x3b, 0x52,
0xbe, 0x31, 0x37, 0xbb, 0xa4, 0x29, 0x75, 0xa1, 0xf7, 0x32, 0x94, 0xa8, 0xed, 0xec, 0x34, 0xdf,
0x3f, 0x23, 0x74, 0xe6, 0x1e, 0x67, 0xea, 0x17, 0x7b, 0xfc, 0x8f, 0x0c, 0x98, 0xd3, 0x55, 0xc7,
0x50, 0x06, 0x9f, 0x8c, 0x46, 0x50, 0x73, 0xf1, 0xac, 0xe0, 0x27, 0x6b, 0x2b, 0xda, 0xf5, 0x8f,
0xea, 0xff, 0xfa, 0xf9, 0xbc, 0xf1, 0x1f, 0x9f, 0xcf, 0x1b, 0xff, 0xf5, 0xf9, 0xbc, 0xf1, 0x93,
0xff, 0x99, 0x9f, 0xd8, 0x2d, 0xd2, 0xff, 0xbf, 0xc3, 0xca, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff,
0x48, 0x49, 0x02, 0x7c, 0x86, 0x42, 0x00, 0x00,
0x5a, 0xee, 0x19, 0x7b, 0xc6, 0xf3, 0xcd, 0x78, 0x3c, 0xae, 0x38, 0xd9, 0xc9, 0x6c, 0xe2, 0x78,
0x3b, 0x9b, 0xdd, 0x6c, 0x36, 0xf1, 0x24, 0x76, 0x72, 0x0b, 0x41, 0xbb, 0xdc, 0xc4, 0x9e, 0x4d,
0x4c, 0x1c, 0xdb, 0xd7, 0x9e, 0x64, 0x6f, 0x83, 0x74, 0xa6, 0x3d, 0x53, 0x19, 0xf7, 0x79, 0xa6,
0x7b, 0xae, 0xbb, 0xed, 0xd8, 0xcb, 0xc3, 0x1d, 0x07, 0xc7, 0xe9, 0x40, 0x3a, 0x89, 0x45, 0x42,
0x27, 0x04, 0x2f, 0x08, 0x09, 0x1e, 0x0e, 0x04, 0x0f, 0x3c, 0x20, 0x90, 0x78, 0x80, 0x07, 0x78,
0x40, 0x42, 0xe2, 0x1f, 0x80, 0xe5, 0x9e, 0xf8, 0x23, 0x10, 0xaa, 0x5f, 0x5d, 0xd5, 0xdd, 0xd5,
0xb6, 0xf7, 0xec, 0xd5, 0xbd, 0xac, 0xa7, 0xab, 0xbe, 0x5f, 0xf5, 0x7d, 0xf5, 0x7d, 0x5f, 0xd5,
0xf7, 0xd5, 0x06, 0x4a, 0xfe, 0xa8, 0xbb, 0x30, 0xf2, 0xbd, 0xd0, 0x43, 0x15, 0x1c, 0x76, 0x7b,
0x01, 0xf6, 0x0f, 0xb0, 0x3f, 0xda, 0x69, 0xcc, 0xf6, 0xbd, 0xbe, 0x47, 0x27, 0x9a, 0xe4, 0x17,
0x83, 0x69, 0xd4, 0x09, 0x4c, 0xd3, 0x1e, 0x39, 0xcd, 0xe1, 0x41, 0xb7, 0x3b, 0xda, 0x69, 0xee,
0x1d, 0xf0, 0x99, 0x46, 0x34, 0x63, 0xef, 0x87, 0xbb, 0xa3, 0x1d, 0xfa, 0x87, 0xcf, 0xcd, 0x47,
0x73, 0x07, 0xd8, 0x0f, 0x1c, 0xcf, 0x1d, 0xed, 0x88, 0x5f, 0x1c, 0xe2, 0x4a, 0xdf, 0xf3, 0xfa,
0x03, 0xcc, 0xf0, 0x5d, 0xd7, 0x0b, 0xed, 0xd0, 0xf1, 0xdc, 0x80, 0xcf, 0xde, 0xa6, 0x7f, 0xba,
0x77, 0xfa, 0xd8, 0xbd, 0x13, 0xbc, 0xb6, 0xfb, 0x7d, 0xec, 0x37, 0xbd, 0x11, 0x85, 0x48, 0x43,
0x9b, 0x3f, 0x36, 0xa0, 0x6a, 0xe1, 0x60, 0xe4, 0xb9, 0x01, 0x7e, 0x82, 0xed, 0x1e, 0xf6, 0xd1,
0x55, 0x80, 0xee, 0x60, 0x3f, 0x08, 0xb1, 0xbf, 0xed, 0xf4, 0xea, 0xc6, 0xbc, 0x71, 0x73, 0xdc,
0x2a, 0xf1, 0x91, 0xd5, 0x1e, 0x7a, 0x13, 0x4a, 0x43, 0x3c, 0xdc, 0x61, 0xb3, 0x39, 0x3a, 0x3b,
0xc9, 0x06, 0x56, 0x7b, 0xa8, 0x01, 0x93, 0x3e, 0x3e, 0x70, 0x88, 0xb0, 0xf5, 0xfc, 0xbc, 0x71,
0x33, 0x6f, 0x45, 0xdf, 0x04, 0xd1, 0xb7, 0x5f, 0x85, 0xdb, 0x21, 0xf6, 0x87, 0xf5, 0x71, 0x86,
0x48, 0x06, 0x3a, 0xd8, 0x1f, 0x3e, 0x2c, 0x7e, 0xff, 0xef, 0xea, 0xf9, 0xa5, 0x85, 0xbb, 0xe6,
0x3f, 0x4f, 0x40, 0xc5, 0xb2, 0xdd, 0x3e, 0xb6, 0xf0, 0x77, 0xf6, 0x71, 0x10, 0xa2, 0x1a, 0xe4,
0xf7, 0xf0, 0x11, 0x95, 0xa3, 0x62, 0x91, 0x9f, 0x8c, 0x90, 0xdb, 0xc7, 0xdb, 0xd8, 0x65, 0x12,
0x54, 0x08, 0x21, 0xb7, 0x8f, 0xdb, 0x6e, 0x0f, 0xcd, 0xc2, 0xc4, 0xc0, 0x19, 0x3a, 0x21, 0x67,
0xcf, 0x3e, 0x62, 0x72, 0x8d, 0x27, 0xe4, 0x5a, 0x06, 0x08, 0x3c, 0x3f, 0xdc, 0xf6, 0xfc, 0x1e,
0xf6, 0xeb, 0x13, 0xf3, 0xc6, 0xcd, 0xea, 0xe2, 0xdb, 0x0b, 0xaa, 0x7d, 0x17, 0x54, 0x81, 0x16,
0xb6, 0x3c, 0x3f, 0xdc, 0x20, 0xb0, 0x56, 0x29, 0x10, 0x3f, 0xd1, 0xc7, 0x50, 0xa6, 0x44, 0x42,
0xdb, 0xef, 0xe3, 0xb0, 0x5e, 0xa0, 0x54, 0x6e, 0x9c, 0x40, 0xa5, 0x43, 0x81, 0x2d, 0xca, 0x9e,
0xfd, 0x46, 0x26, 0x54, 0x02, 0xec, 0x3b, 0xf6, 0xc0, 0xf9, 0xcc, 0xde, 0x19, 0xe0, 0x7a, 0x71,
0xde, 0xb8, 0x39, 0x69, 0xc5, 0xc6, 0xc8, 0xfa, 0xf7, 0xf0, 0x51, 0xb0, 0xed, 0xb9, 0x83, 0xa3,
0xfa, 0x24, 0x05, 0x98, 0x24, 0x03, 0x1b, 0xee, 0xe0, 0x88, 0x5a, 0xcf, 0xdb, 0x77, 0x43, 0x36,
0x5b, 0xa2, 0xb3, 0x25, 0x3a, 0x42, 0xa7, 0xef, 0x41, 0x6d, 0xe8, 0xb8, 0xdb, 0x43, 0xaf, 0xb7,
0x1d, 0x29, 0x04, 0x88, 0x42, 0x1e, 0x15, 0x7f, 0x8f, 0x5a, 0xe0, 0x9e, 0x55, 0x1d, 0x3a, 0xee,
0x33, 0xaf, 0x67, 0x09, 0xfd, 0x10, 0x14, 0xfb, 0x30, 0x8e, 0x52, 0x4e, 0xa2, 0xd8, 0x87, 0x2a,
0xca, 0x07, 0x70, 0x81, 0x70, 0xe9, 0xfa, 0xd8, 0x0e, 0xb1, 0xc4, 0xaa, 0xc4, 0xb1, 0x66, 0x86,
0x8e, 0xbb, 0x4c, 0x41, 0x62, 0x88, 0xf6, 0x61, 0x0a, 0x71, 0x2a, 0x89, 0x68, 0x1f, 0xc6, 0x11,
0xcd, 0x0f, 0xa0, 0x14, 0xd9, 0x05, 0x4d, 0xc2, 0xf8, 0xfa, 0xc6, 0x7a, 0xbb, 0x36, 0x86, 0x00,
0x0a, 0xad, 0xad, 0xe5, 0xf6, 0xfa, 0x4a, 0xcd, 0x40, 0x65, 0x28, 0xae, 0xb4, 0xd9, 0x47, 0xae,
0x51, 0xfc, 0x9c, 0xef, 0xb7, 0xa7, 0x00, 0xd2, 0x14, 0xa8, 0x08, 0xf9, 0xa7, 0xed, 0x4f, 0x6b,
0x63, 0x04, 0xf8, 0x45, 0xdb, 0xda, 0x5a, 0xdd, 0x58, 0xaf, 0x19, 0x84, 0xca, 0xb2, 0xd5, 0x6e,
0x75, 0xda, 0xb5, 0x1c, 0x81, 0x78, 0xb6, 0xb1, 0x52, 0xcb, 0xa3, 0x12, 0x4c, 0xbc, 0x68, 0xad,
0x3d, 0x6f, 0xd7, 0xc6, 0x23, 0x62, 0x72, 0x17, 0xff, 0x89, 0x01, 0x53, 0xdc, 0xdc, 0xcc, 0xb7,
0xd0, 0x7d, 0x28, 0xec, 0x52, 0xff, 0xa2, 0x3b, 0xb9, 0xbc, 0x78, 0x25, 0xb1, 0x37, 0x62, 0x3e,
0x68, 0x71, 0x58, 0x64, 0x42, 0x7e, 0xef, 0x20, 0xa8, 0xe7, 0xe6, 0xf3, 0x37, 0xcb, 0x8b, 0xb5,
0x05, 0x16, 0x47, 0x16, 0x9e, 0xe2, 0xa3, 0x17, 0xf6, 0x60, 0x1f, 0x5b, 0x64, 0x12, 0x21, 0x18,
0x1f, 0x7a, 0x3e, 0xa6, 0x1b, 0x7e, 0xd2, 0xa2, 0xbf, 0x89, 0x17, 0x50, 0x9b, 0xf3, 0xcd, 0xce,
0x3e, 0xa4, 0x78, 0xff, 0x6e, 0x00, 0x6c, 0xee, 0x87, 0xd9, 0x2e, 0x36, 0x0b, 0x13, 0x07, 0x84,
0x03, 0x77, 0x2f, 0xf6, 0x41, 0x7d, 0x0b, 0xdb, 0x01, 0x8e, 0x7c, 0x8b, 0x7c, 0xa0, 0x79, 0x28,
0x8e, 0x7c, 0x7c, 0xb0, 0xbd, 0x77, 0x40, 0xb9, 0x4d, 0x4a, 0x3b, 0x15, 0xc8, 0xf8, 0xd3, 0x03,
0x74, 0x0b, 0x2a, 0x4e, 0xdf, 0xf5, 0x7c, 0xbc, 0xcd, 0x88, 0x4e, 0xa8, 0x60, 0x8b, 0x56, 0x99,
0x4d, 0xd2, 0x25, 0x29, 0xb0, 0x8c, 0x55, 0x41, 0x0b, 0xbb, 0x46, 0xe6, 0xe4, 0x7a, 0xbe, 0x67,
0x40, 0x99, 0xae, 0xe7, 0x4c, 0xca, 0x5e, 0x94, 0x0b, 0xc9, 0x51, 0xb4, 0x94, 0xc2, 0x53, 0x4b,
0x93, 0x22, 0xb8, 0x80, 0x56, 0xf0, 0x00, 0x87, 0xf8, 0x2c, 0xc1, 0x4b, 0x51, 0x65, 0x5e, 0xab,
0x4a, 0xc9, 0xef, 0xcf, 0x0d, 0xb8, 0x10, 0x63, 0x78, 0xa6, 0xa5, 0xd7, 0xa1, 0xd8, 0xa3, 0xc4,
0x98, 0x4c, 0x79, 0x4b, 0x7c, 0xa2, 0xfb, 0x30, 0xc9, 0x45, 0x0a, 0xea, 0x79, 0xfd, 0x36, 0x94,
0x52, 0x16, 0x99, 0x94, 0x81, 0x14, 0xf3, 0x1f, 0x72, 0x50, 0xe2, 0xca, 0xd8, 0x18, 0xa1, 0x16,
0x4c, 0xf9, 0xec, 0x63, 0x9b, 0xae, 0x99, 0xcb, 0xd8, 0xc8, 0x8e, 0x93, 0x4f, 0xc6, 0xac, 0x0a,
0x47, 0xa1, 0xc3, 0xe8, 0x57, 0xa0, 0x2c, 0x48, 0x8c, 0xf6, 0x43, 0x6e, 0xa8, 0x7a, 0x9c, 0x80,
0xdc, 0xda, 0x4f, 0xc6, 0x2c, 0xe0, 0xe0, 0x9b, 0xfb, 0x21, 0xea, 0xc0, 0xac, 0x40, 0x66, 0xeb,
0xe3, 0x62, 0xe4, 0x29, 0x95, 0xf9, 0x38, 0x95, 0xb4, 0x39, 0x9f, 0x8c, 0x59, 0x88, 0xe3, 0x2b,
0x93, 0x68, 0x45, 0x8a, 0x14, 0x1e, 0xb2, 0xfc, 0x92, 0x12, 0xa9, 0x73, 0xe8, 0x72, 0x22, 0x42,
0x5b, 0x4b, 0x8a, 0x6c, 0x9d, 0x43, 0x37, 0x52, 0xd9, 0xa3, 0x12, 0x14, 0xf9, 0xb0, 0xf9, 0x6f,
0x39, 0x00, 0x61, 0xb1, 0x8d, 0x11, 0x5a, 0x81, 0xaa, 0xcf, 0xbf, 0x62, 0xfa, 0x7b, 0x53, 0xab,
0x3f, 0x6e, 0xe8, 0x31, 0x6b, 0x4a, 0x20, 0x31, 0x71, 0x3f, 0x82, 0x4a, 0x44, 0x45, 0xaa, 0xf0,
0xb2, 0x46, 0x85, 0x11, 0x85, 0xb2, 0x40, 0x20, 0x4a, 0xfc, 0x04, 0x2e, 0x46, 0xf8, 0x1a, 0x2d,
0xbe, 0x75, 0x8c, 0x16, 0x23, 0x82, 0x17, 0x04, 0x05, 0x55, 0x8f, 0x8f, 0x15, 0xc1, 0xa4, 0x22,
0x2f, 0x6b, 0x14, 0xc9, 0x80, 0x54, 0x4d, 0x46, 0x12, 0xc6, 0x54, 0x09, 0x24, 0xed, 0xb3, 0x71,
0xf3, 0x2f, 0xc7, 0xa1, 0xb8, 0xec, 0x0d, 0x47, 0xb6, 0x4f, 0x36, 0x51, 0xc1, 0xc7, 0xc1, 0xfe,
0x20, 0xa4, 0x0a, 0xac, 0x2e, 0x5e, 0x8f, 0xf3, 0xe0, 0x60, 0xe2, 0xaf, 0x45, 0x41, 0x2d, 0x8e,
0x42, 0x90, 0x79, 0x96, 0xcf, 0x9d, 0x02, 0x99, 0xe7, 0x78, 0x8e, 0x22, 0x02, 0x42, 0x5e, 0x06,
0x84, 0x06, 0x14, 0xf9, 0xf1, 0x8e, 0x05, 0xeb, 0x27, 0x63, 0x96, 0x18, 0x40, 0xef, 0xc1, 0x74,
0x32, 0x15, 0x4e, 0x70, 0x98, 0x6a, 0x37, 0x9e, 0x39, 0xaf, 0x43, 0x25, 0x96, 0xa1, 0x0b, 0x1c,
0xae, 0x3c, 0x54, 0xf2, 0xf2, 0x25, 0x11, 0xd6, 0xc9, 0xb1, 0xa2, 0xf2, 0x64, 0x4c, 0x04, 0xf6,
0x6b, 0x22, 0xb0, 0x4f, 0xaa, 0x89, 0x96, 0xe8, 0x95, 0xc7, 0xf8, 0xb7, 0xd5, 0xa8, 0xf5, 0x75,
0x82, 0x1c, 0x01, 0xc9, 0xf0, 0x65, 0x5a, 0x30, 0x15, 0x53, 0x19, 0xc9, 0x91, 0xed, 0x6f, 0x3c,
0x6f, 0xad, 0xb1, 0x84, 0xfa, 0x98, 0xe6, 0x50, 0xab, 0x66, 0x90, 0x04, 0xbd, 0xd6, 0xde, 0xda,
0xaa, 0xe5, 0xd0, 0x25, 0x28, 0xad, 0x6f, 0x74, 0xb6, 0x19, 0x54, 0xbe, 0x51, 0xfc, 0x63, 0x16,
0x49, 0x64, 0x7e, 0xfe, 0x34, 0xa2, 0xc9, 0x53, 0xb4, 0x92, 0x99, 0xc7, 0x94, 0xcc, 0x6c, 0x88,
0xcc, 0x9c, 0x93, 0x99, 0x39, 0x8f, 0x10, 0x4c, 0xac, 0xb5, 0x5b, 0x5b, 0x34, 0x49, 0x33, 0xd2,
0x4b, 0xe9, 0x6c, 0xfd, 0xa8, 0x0a, 0x15, 0x66, 0x9e, 0xed, 0x7d, 0x97, 0x1c, 0x26, 0x7e, 0x6a,
0x00, 0x48, 0x87, 0x45, 0x4d, 0x28, 0x76, 0x99, 0x08, 0x75, 0x83, 0x46, 0xc0, 0x8b, 0x5a, 0x8b,
0x5b, 0x02, 0x0a, 0xdd, 0x83, 0x62, 0xb0, 0xdf, 0xed, 0xe2, 0x40, 0x64, 0xee, 0x37, 0x92, 0x41,
0x98, 0x07, 0x44, 0x4b, 0xc0, 0x11, 0x94, 0x57, 0xb6, 0x33, 0xd8, 0xa7, 0x79, 0xfc, 0x78, 0x14,
0x0e, 0x27, 0x63, 0xec, 0x9f, 0x19, 0x50, 0x56, 0xdc, 0xe2, 0xe7, 0x4c, 0x01, 0x57, 0xa0, 0x44,
0x85, 0xc1, 0x3d, 0x9e, 0x04, 0x26, 0x2d, 0x39, 0x80, 0xbe, 0x06, 0x25, 0xe1, 0x49, 0x22, 0x0f,
0xd4, 0xf5, 0x64, 0x37, 0x46, 0x96, 0x04, 0x95, 0x42, 0x76, 0x60, 0x86, 0xea, 0xa9, 0x4b, 0x6e,
0x1f, 0x42, 0xb3, 0xea, 0xb1, 0xdc, 0x48, 0x1c, 0xcb, 0x1b, 0x30, 0x39, 0xda, 0x3d, 0x0a, 0x9c,
0xae, 0x3d, 0xe0, 0xe2, 0x44, 0xdf, 0x92, 0xea, 0x16, 0x20, 0x95, 0xea, 0x59, 0x14, 0x20, 0x89,
0x5e, 0x82, 0xf2, 0x13, 0x3b, 0xd8, 0xe5, 0x42, 0xca, 0xf1, 0xfb, 0x30, 0x45, 0xc6, 0x9f, 0xbe,
0x38, 0x85, 0xf8, 0x02, 0x6b, 0xc9, 0xfc, 0x47, 0x03, 0xaa, 0x02, 0xed, 0x4c, 0x06, 0x42, 0x30,
0xbe, 0x6b, 0x07, 0xbb, 0x54, 0x19, 0x53, 0x16, 0xfd, 0x8d, 0xde, 0x83, 0x5a, 0x97, 0xad, 0x7f,
0x3b, 0x71, 0xef, 0x9a, 0xe6, 0xe3, 0x91, 0xef, 0xdf, 0x86, 0x29, 0x82, 0xb2, 0x1d, 0xbf, 0x07,
0x09, 0x37, 0xfe, 0x9a, 0x55, 0xd9, 0xa5, 0x6b, 0x4e, 0x8a, 0x6f, 0x43, 0x85, 0x29, 0xe3, 0xbc,
0x65, 0x97, 0x7a, 0x6d, 0xc0, 0xf4, 0x96, 0x6b, 0x8f, 0x82, 0x5d, 0x2f, 0x4c, 0xe8, 0x7c, 0xc9,
0xfc, 0x5b, 0x03, 0x6a, 0x72, 0xf2, 0x4c, 0x32, 0xbc, 0x0b, 0xd3, 0x3e, 0x1e, 0xda, 0x8e, 0xeb,
0xb8, 0xfd, 0xed, 0x9d, 0xa3, 0x10, 0x07, 0xfc, 0xfa, 0x5a, 0x8d, 0x86, 0x1f, 0x91, 0x51, 0x22,
0xec, 0xce, 0xc0, 0xdb, 0xe1, 0x41, 0x9a, 0xfe, 0x46, 0x6f, 0xc5, 0xa3, 0x74, 0x49, 0xea, 0x4d,
0x8c, 0x4b, 0x99, 0x7f, 0x92, 0x83, 0xca, 0x27, 0x76, 0xd8, 0x15, 0x3b, 0x08, 0xad, 0x42, 0x35,
0x0a, 0xe3, 0x74, 0x84, 0xcb, 0x9d, 0x38, 0x70, 0x50, 0x1c, 0x71, 0xaf, 0x11, 0x07, 0x8e, 0xa9,
0xae, 0x3a, 0x40, 0x49, 0xd9, 0x6e, 0x17, 0x0f, 0x22, 0x52, 0xb9, 0x6c, 0x52, 0x14, 0x50, 0x25,
0xa5, 0x0e, 0xa0, 0x6f, 0x42, 0x6d, 0xe4, 0x7b, 0x7d, 0x1f, 0x07, 0x41, 0x44, 0x8c, 0xa5, 0x70,
0x53, 0x43, 0x6c, 0x93, 0x83, 0x26, 0x4e, 0x31, 0xf7, 0x9f, 0x8c, 0x59, 0xd3, 0xa3, 0xf8, 0x9c,
0x0c, 0xac, 0xd3, 0xf2, 0xbc, 0xc7, 0x22, 0xeb, 0x0f, 0xf3, 0x80, 0xd2, 0xcb, 0xfc, 0xb2, 0xc7,
0xe4, 0x1b, 0x50, 0x0d, 0x42, 0xdb, 0x4f, 0xed, 0xf9, 0x29, 0x3a, 0x1a, 0xed, 0xf8, 0x77, 0x21,
0x92, 0x6c, 0xdb, 0xf5, 0x42, 0xe7, 0xd5, 0x11, 0xbb, 0xa0, 0x58, 0x55, 0x31, 0xbc, 0x4e, 0x47,
0xd1, 0x3a, 0x14, 0x5f, 0x39, 0x83, 0x10, 0xfb, 0x41, 0x7d, 0x62, 0x3e, 0x7f, 0xb3, 0xba, 0xf8,
0xfe, 0x49, 0x86, 0x59, 0xf8, 0x98, 0xc2, 0x77, 0x8e, 0x46, 0xea, 0xe9, 0x97, 0x13, 0x51, 0x8f,
0xf1, 0x05, 0xfd, 0x8d, 0xc8, 0x84, 0xc9, 0xd7, 0x84, 0xe8, 0xb6, 0xd3, 0xa3, 0xb9, 0x38, 0xf2,
0xc3, 0xfb, 0x56, 0x91, 0x4e, 0xac, 0xf6, 0xd0, 0x75, 0x98, 0x7c, 0xe5, 0xdb, 0xfd, 0x21, 0x76,
0x43, 0x76, 0xcb, 0x97, 0x30, 0xd1, 0x84, 0xb9, 0x00, 0x20, 0x45, 0x21, 0x99, 0x6f, 0x7d, 0x63,
0xf3, 0x79, 0xa7, 0x36, 0x86, 0x2a, 0x30, 0xb9, 0xbe, 0xb1, 0xd2, 0x5e, 0x6b, 0x93, 0xdc, 0x28,
0x72, 0xde, 0x3d, 0xe9, 0x74, 0x2d, 0x61, 0x88, 0xd8, 0x9e, 0x50, 0xe5, 0x32, 0xe2, 0x97, 0x6e,
0x21, 0x97, 0x20, 0x71, 0xcf, 0xbc, 0x06, 0xb3, 0xba, 0xad, 0x21, 0x00, 0xee, 0x9b, 0xff, 0x92,
0x83, 0x29, 0xee, 0x08, 0x67, 0xf2, 0xdc, 0xcb, 0x8a, 0x54, 0xfc, 0x7a, 0x22, 0x94, 0x54, 0x87,
0x22, 0x73, 0x90, 0x1e, 0xbf, 0xff, 0x8a, 0x4f, 0x12, 0x9c, 0xd9, 0x7e, 0xc7, 0x3d, 0x6e, 0xf6,
0xe8, 0x5b, 0x1b, 0x36, 0x27, 0x32, 0xc3, 0x66, 0xe4, 0x70, 0x76, 0xc0, 0x0f, 0x56, 0x25, 0x69,
0x8a, 0x8a, 0x70, 0x2a, 0x32, 0x19, 0xb3, 0x59, 0x31, 0xc3, 0x66, 0xe8, 0x06, 0x14, 0xf0, 0x01,
0x76, 0xc3, 0xa0, 0x5e, 0xa6, 0x89, 0x74, 0x4a, 0x5c, 0xa8, 0xda, 0x64, 0xd4, 0xe2, 0x93, 0xd2,
0x54, 0x1f, 0xc1, 0x0c, 0xbd, 0xef, 0x3e, 0xf6, 0x6d, 0x57, 0xbd, 0xb3, 0x77, 0x3a, 0x6b, 0x3c,
0xed, 0x90, 0x9f, 0xa8, 0x0a, 0xb9, 0xd5, 0x15, 0xae, 0x9f, 0xdc, 0xea, 0x8a, 0xc4, 0xff, 0x7d,
0x03, 0x90, 0x4a, 0xe0, 0x4c, 0xb6, 0x48, 0x70, 0x11, 0x72, 0xe4, 0xa5, 0x1c, 0xb3, 0x30, 0x81,
0x7d, 0xdf, 0xf3, 0x59, 0xa0, 0xb4, 0xd8, 0x87, 0x94, 0xe6, 0x0e, 0x17, 0xc6, 0xc2, 0x07, 0xde,
0x5e, 0x14, 0x01, 0x18, 0x59, 0x23, 0x2d, 0x7c, 0x07, 0x2e, 0xc4, 0xc0, 0xcf, 0x27, 0xc5, 0x6f,
0xc0, 0x34, 0xa5, 0xba, 0xbc, 0x8b, 0xbb, 0x7b, 0x23, 0xcf, 0x71, 0x53, 0x12, 0xa0, 0xeb, 0x24,
0x76, 0x89, 0x74, 0x41, 0x96, 0xc8, 0xd6, 0x5c, 0x89, 0x06, 0x3b, 0x9d, 0x35, 0xb9, 0xd5, 0x77,
0xe0, 0x52, 0x82, 0xa0, 0x58, 0xd9, 0xaf, 0x42, 0xb9, 0x1b, 0x0d, 0x06, 0xfc, 0x04, 0x79, 0x35,
0x2e, 0x6e, 0x12, 0x55, 0xc5, 0x90, 0x3c, 0xbe, 0x09, 0x6f, 0xa4, 0x78, 0x9c, 0x87, 0x3a, 0xee,
0x9b, 0x77, 0xe1, 0x22, 0xa5, 0xfc, 0x14, 0xe3, 0x51, 0x6b, 0xe0, 0x1c, 0x9c, 0x6c, 0x96, 0x23,
0xbe, 0x5e, 0x05, 0xe3, 0xab, 0xdd, 0x56, 0x92, 0x75, 0x9b, 0xb3, 0xee, 0x38, 0x43, 0xdc, 0xf1,
0xd6, 0xb2, 0xa5, 0x25, 0x89, 0x7c, 0x0f, 0x1f, 0x05, 0xfc, 0xf8, 0x48, 0x7f, 0xcb, 0xe8, 0xf5,
0xd7, 0x06, 0x57, 0xa7, 0x4a, 0xe7, 0x2b, 0x76, 0x8d, 0x39, 0x80, 0x3e, 0xf1, 0x41, 0xdc, 0x23,
0x13, 0xac, 0x36, 0xa7, 0x8c, 0x44, 0x02, 0x93, 0x2c, 0x54, 0x49, 0x0a, 0x7c, 0x95, 0x3b, 0x0e,
0xfd, 0x4f, 0x90, 0x3a, 0x29, 0xbd, 0x03, 0x65, 0x3a, 0xb3, 0x15, 0xda, 0xe1, 0x7e, 0x90, 0x65,
0xb9, 0x25, 0xf3, 0x87, 0x06, 0xf7, 0x28, 0x41, 0xe7, 0x4c, 0x6b, 0xbe, 0x07, 0x05, 0x7a, 0x43,
0x14, 0x37, 0x9d, 0xcb, 0x9a, 0x8d, 0xcd, 0x24, 0xb2, 0x38, 0xa0, 0x72, 0x4e, 0x32, 0xa0, 0xf0,
0x8c, 0x76, 0x0e, 0x14, 0x69, 0xc7, 0x85, 0xe5, 0x5c, 0x7b, 0xc8, 0xca, 0x8f, 0x25, 0x8b, 0xfe,
0xa6, 0x17, 0x02, 0x8c, 0xfd, 0xe7, 0xd6, 0x1a, 0xbb, 0x81, 0x94, 0xac, 0xe8, 0x9b, 0x28, 0xb6,
0x3b, 0x70, 0xb0, 0x1b, 0xd2, 0xd9, 0x71, 0x3a, 0xab, 0x8c, 0xa0, 0x1b, 0x50, 0x72, 0x82, 0x35,
0x6c, 0xfb, 0x2e, 0x2f, 0xf1, 0x2b, 0x81, 0x59, 0xce, 0xc8, 0x3d, 0xf6, 0x2d, 0xa8, 0x31, 0xc9,
0x5a, 0xbd, 0x9e, 0x72, 0xda, 0x8f, 0xf8, 0x1b, 0x09, 0xfe, 0x31, 0xfa, 0xb9, 0x93, 0xe9, 0xff,
0x8d, 0x01, 0x33, 0x0a, 0x83, 0x33, 0x99, 0xe0, 0x36, 0x14, 0x58, 0xff, 0x85, 0x1f, 0x05, 0x67,
0xe3, 0x58, 0x8c, 0x8d, 0xc5, 0x61, 0xd0, 0x02, 0x14, 0xd9, 0x2f, 0x71, 0x8d, 0xd3, 0x83, 0x0b,
0x20, 0x29, 0xf2, 0x02, 0x5c, 0xe0, 0x73, 0x78, 0xe8, 0xe9, 0x7c, 0x6e, 0x3c, 0x1e, 0x21, 0x7e,
0x60, 0xc0, 0x6c, 0x1c, 0xe1, 0x4c, 0xab, 0x54, 0xe4, 0xce, 0x7d, 0x29, 0xb9, 0x7f, 0x4d, 0xc8,
0xfd, 0x7c, 0xd4, 0x53, 0x8e, 0x9c, 0xc9, 0x1d, 0xa7, 0x5a, 0x37, 0x17, 0xb7, 0xae, 0xa4, 0xf5,
0xe3, 0x68, 0x4d, 0x82, 0xd8, 0x99, 0xd6, 0xf4, 0xc1, 0xa9, 0xd6, 0xa4, 0x1c, 0xc1, 0x52, 0x8b,
0x5b, 0x15, 0xdb, 0x68, 0xcd, 0x09, 0xa2, 0x8c, 0xf3, 0x3e, 0x54, 0x06, 0x8e, 0x8b, 0x6d, 0x9f,
0xf7, 0x90, 0x0c, 0x75, 0x3f, 0x3e, 0xb0, 0x62, 0x93, 0x92, 0xd4, 0x6f, 0x1b, 0x80, 0x54, 0x5a,
0xbf, 0x18, 0x6b, 0x35, 0x85, 0x82, 0x37, 0x7d, 0x6f, 0xe8, 0x85, 0x27, 0x6d, 0xb3, 0xfb, 0xe6,
0xef, 0x1a, 0x70, 0x31, 0x81, 0xf1, 0x8b, 0x90, 0xfc, 0xbe, 0x79, 0x05, 0x66, 0x56, 0xb0, 0x38,
0xe3, 0xa5, 0x6a, 0x07, 0x5b, 0x80, 0xd4, 0xd9, 0xf3, 0x39, 0xc5, 0xfc, 0x12, 0xcc, 0x3c, 0xf3,
0x0e, 0x48, 0x20, 0x27, 0xd3, 0x32, 0x4c, 0xb1, 0x62, 0x56, 0xa4, 0xaf, 0xe8, 0x5b, 0x86, 0xde,
0x2d, 0x40, 0x2a, 0xe6, 0x79, 0x88, 0xb3, 0x64, 0xfe, 0xb7, 0x01, 0x95, 0xd6, 0xc0, 0xf6, 0x87,
0x42, 0x94, 0x8f, 0xa0, 0xc0, 0x2a, 0x33, 0xbc, 0xcc, 0xfa, 0x4e, 0x9c, 0x9e, 0x0a, 0xcb, 0x3e,
0x5a, 0xac, 0x8e, 0xc3, 0xb1, 0xc8, 0x52, 0x78, 0x67, 0x79, 0x25, 0xd1, 0x69, 0x5e, 0x41, 0x77,
0x60, 0xc2, 0x26, 0x28, 0x34, 0xbd, 0x56, 0x93, 0xe5, 0x32, 0x4a, 0x8d, 0x5c, 0x89, 0x2c, 0x06,
0x65, 0x7e, 0x08, 0x65, 0x85, 0x03, 0x2a, 0x42, 0xfe, 0x71, 0x9b, 0x5f, 0x93, 0x5a, 0xcb, 0x9d,
0xd5, 0x17, 0xac, 0x84, 0x58, 0x05, 0x58, 0x69, 0x47, 0xdf, 0x39, 0x4d, 0x63, 0xcf, 0xe6, 0x74,
0x78, 0xde, 0x52, 0x25, 0x34, 0xb2, 0x24, 0xcc, 0x9d, 0x46, 0x42, 0xc9, 0xe2, 0xb7, 0x0c, 0x98,
0xe2, 0xaa, 0x39, 0x6b, 0x6a, 0xa6, 0x94, 0x33, 0x52, 0xb3, 0xb2, 0x0c, 0x8b, 0x03, 0x4a, 0x19,
0xfe, 0xc9, 0x80, 0xda, 0x8a, 0xf7, 0xda, 0xed, 0xfb, 0x76, 0x2f, 0xf2, 0xc1, 0x8f, 0x13, 0xe6,
0x5c, 0x48, 0x54, 0xfa, 0x13, 0xf0, 0x72, 0x20, 0x61, 0xd6, 0xba, 0xac, 0xa5, 0xb0, 0xfc, 0x2e,
0x3e, 0xcd, 0xaf, 0xc3, 0x74, 0x02, 0x89, 0x18, 0xe8, 0x45, 0x6b, 0x6d, 0x75, 0x85, 0x18, 0x84,
0xd6, 0x7b, 0xdb, 0xeb, 0xad, 0x47, 0x6b, 0x6d, 0xde, 0x95, 0x6d, 0xad, 0x2f, 0xb7, 0xd7, 0xa4,
0xa1, 0x1e, 0x88, 0x15, 0x3c, 0x30, 0x07, 0x30, 0xa3, 0x08, 0x74, 0xd6, 0xe6, 0x98, 0x5e, 0x5e,
0xc9, 0xad, 0x0e, 0x53, 0xfc, 0x94, 0x93, 0x74, 0xfc, 0x9f, 0xe6, 0xa1, 0x2a, 0xa6, 0xbe, 0x1a,
0x29, 0xd0, 0x25, 0x28, 0xf4, 0x76, 0xb6, 0x9c, 0xcf, 0x44, 0x5f, 0x96, 0x7f, 0x91, 0xf1, 0x01,
0xe3, 0xc3, 0x5e, 0x5b, 0xf0, 0x2f, 0x74, 0x85, 0x3d, 0xc4, 0x58, 0x75, 0x7b, 0xf8, 0x90, 0x1e,
0x86, 0xc6, 0x2d, 0x39, 0x40, 0x8b, 0x9a, 0xfc, 0x55, 0x06, 0xbd, 0xeb, 0x2a, 0xaf, 0x34, 0xd0,
0x12, 0xd4, 0xc8, 0xef, 0xd6, 0x68, 0x34, 0x70, 0x70, 0x8f, 0x11, 0x20, 0xd7, 0xdc, 0x71, 0x79,
0xda, 0x49, 0x01, 0xa0, 0x6b, 0x50, 0xa0, 0x57, 0xc0, 0xa0, 0x3e, 0x49, 0xf2, 0xaa, 0x04, 0xe5,
0xc3, 0xe8, 0x3d, 0x28, 0x33, 0x89, 0x57, 0xdd, 0xe7, 0x01, 0xa6, 0x6f, 0x16, 0x94, 0x7a, 0x88,
0x3a, 0x17, 0x3f, 0x67, 0x41, 0xd6, 0x39, 0x0b, 0x35, 0xa1, 0x1a, 0x84, 0x9e, 0x6f, 0xf7, 0xf1,
0x0b, 0xae, 0xb2, 0x72, 0xbc, 0x68, 0x97, 0x98, 0x96, 0xe6, 0xba, 0x02, 0x33, 0xad, 0xfd, 0x70,
0xb7, 0xed, 0x92, 0xe4, 0x98, 0x32, 0xe6, 0x55, 0x40, 0x64, 0x76, 0xc5, 0x09, 0xb4, 0xd3, 0x1c,
0x59, 0xbb, 0x13, 0x1e, 0x98, 0xeb, 0x70, 0x81, 0xcc, 0x62, 0x37, 0x74, 0xba, 0xca, 0x41, 0x44,
0x1c, 0x75, 0x8d, 0xc4, 0x51, 0xd7, 0x0e, 0x82, 0xd7, 0x9e, 0xdf, 0xe3, 0xc6, 0x8e, 0xbe, 0x25,
0xb7, 0xbf, 0x37, 0x98, 0x34, 0xcf, 0x83, 0xd8, 0x31, 0xf5, 0x4b, 0xd2, 0x43, 0xbf, 0x0c, 0x45,
0xfe, 0x3c, 0x88, 0x57, 0xff, 0x2e, 0x2d, 0xb0, 0x47, 0x49, 0x0b, 0x9c, 0xf0, 0x06, 0x9b, 0x55,
0x2a, 0x54, 0x1c, 0x9e, 0xa8, 0x79, 0xd7, 0x0e, 0x76, 0x71, 0x6f, 0x53, 0x10, 0x8f, 0xd5, 0x46,
0x1f, 0x58, 0x89, 0x69, 0x29, 0xfb, 0x3d, 0x29, 0xfa, 0x63, 0x1c, 0x1e, 0x23, 0xba, 0x5a, 0x7d,
0xbf, 0x28, 0x50, 0x78, 0xd3, 0xf0, 0x34, 0x58, 0x3f, 0x32, 0xe0, 0xaa, 0x40, 0x5b, 0xde, 0xb5,
0xdd, 0x3e, 0x16, 0xc2, 0xfc, 0xbc, 0xfa, 0x4a, 0x2f, 0x3a, 0x7f, 0xca, 0x45, 0x3f, 0x85, 0x7a,
0xb4, 0x68, 0x5a, 0x89, 0xf1, 0x06, 0xea, 0x22, 0xf6, 0x03, 0x1e, 0x11, 0x4a, 0x16, 0xfd, 0x4d,
0xc6, 0x7c, 0x6f, 0x10, 0x5d, 0x82, 0xc8, 0x6f, 0x49, 0x6c, 0x0d, 0x2e, 0x0b, 0x62, 0xbc, 0x34,
0x12, 0xa7, 0x96, 0x5a, 0xd3, 0xb1, 0xd4, 0xb8, 0x3d, 0x08, 0x8d, 0xe3, 0xb7, 0x92, 0x16, 0x25,
0x6e, 0x42, 0xca, 0xc5, 0xd0, 0x71, 0x99, 0x63, 0x1e, 0x40, 0x64, 0x56, 0xce, 0xab, 0xa9, 0x79,
0x42, 0x52, 0x3b, 0xcf, 0xb7, 0x00, 0x99, 0x4f, 0x6d, 0x81, 0x6c, 0xae, 0x18, 0xe6, 0x22, 0x41,
0x89, 0xda, 0x37, 0xb1, 0x3f, 0x74, 0x82, 0x40, 0x69, 0x43, 0xe9, 0xd4, 0xf5, 0x0e, 0x8c, 0x8f,
0x30, 0x4f, 0xde, 0xe5, 0x45, 0x24, 0x7c, 0x42, 0x41, 0xa6, 0xf3, 0x92, 0xcd, 0x10, 0xae, 0x09,
0x36, 0xcc, 0x20, 0x5a, 0x3e, 0x49, 0x31, 0x45, 0xe9, 0x3b, 0x97, 0x51, 0xfa, 0xce, 0xc7, 0x4b,
0xdf, 0xb1, 0x03, 0xa5, 0x1a, 0xa8, 0xce, 0xe7, 0x40, 0xd9, 0x61, 0x06, 0x88, 0xe2, 0xdb, 0xf9,
0x50, 0xfd, 0x03, 0x1e, 0xa8, 0xce, 0x2b, 0x0d, 0x62, 0xba, 0x66, 0xd1, 0xa4, 0x14, 0x9f, 0xc8,
0x84, 0x0a, 0x31, 0x92, 0xa5, 0xf6, 0x04, 0xc6, 0xad, 0xd8, 0x98, 0x0c, 0xc6, 0x7b, 0x30, 0x1b,
0x0f, 0xc6, 0x67, 0x12, 0x6a, 0x16, 0x26, 0x42, 0x6f, 0x0f, 0x8b, 0xcc, 0xcc, 0x3e, 0x52, 0x6a,
0x8d, 0x02, 0xf5, 0xf9, 0xa8, 0xf5, 0xdb, 0x92, 0x2a, 0x75, 0xc0, 0xb3, 0xae, 0x80, 0x6c, 0x47,
0x71, 0xf7, 0x65, 0x1f, 0x92, 0xd7, 0x27, 0x70, 0x29, 0x19, 0x7c, 0xcf, 0x67, 0x11, 0xdb, 0xcc,
0x39, 0x75, 0xe1, 0xf9, 0x7c, 0x18, 0xbc, 0x94, 0x71, 0x52, 0x09, 0xba, 0xe7, 0x43, 0xfb, 0xd7,
0xa1, 0xa1, 0x8b, 0xc1, 0xe7, 0xea, 0x8b, 0x51, 0x48, 0x3e, 0x1f, 0xaa, 0x3f, 0x30, 0x24, 0x59,
0x75, 0xd7, 0x7c, 0xf8, 0x65, 0xc8, 0x8a, 0x5c, 0x77, 0x37, 0xda, 0x3e, 0xcd, 0x28, 0x5a, 0xe6,
0xf5, 0xd1, 0x52, 0xa2, 0x50, 0x40, 0xe1, 0x7f, 0x32, 0xd4, 0x7f, 0x95, 0xbb, 0x97, 0x33, 0x93,
0x79, 0xe7, 0xac, 0xcc, 0x48, 0x7a, 0x8e, 0x98, 0xd1, 0x8f, 0x94, 0xab, 0xa8, 0x49, 0xea, 0x7c,
0x4c, 0xf7, 0x1b, 0x32, 0xc1, 0xa4, 0xf2, 0xd8, 0xf9, 0x70, 0xb0, 0x61, 0x3e, 0x3b, 0x85, 0x9d,
0x0b, 0x8b, 0x5b, 0x2d, 0x28, 0x45, 0x37, 0x5f, 0xe5, 0x9d, 0x6e, 0x19, 0x8a, 0xeb, 0x1b, 0x5b,
0x9b, 0xad, 0x65, 0x72, 0xb1, 0x9b, 0x85, 0xe2, 0xf2, 0x86, 0x65, 0x3d, 0xdf, 0xec, 0x90, 0x9b,
0x5d, 0xf2, 0xd9, 0xce, 0xe2, 0xcf, 0xf2, 0x90, 0x7b, 0xfa, 0x02, 0x7d, 0x0a, 0x13, 0xec, 0xd9,
0xd8, 0x31, 0xaf, 0x07, 0x1b, 0xc7, 0xbd, 0x8c, 0x33, 0xdf, 0xf8, 0xfe, 0x7f, 0xfe, 0xec, 0x0f,
0x73, 0x33, 0x66, 0xa5, 0x79, 0xb0, 0xd4, 0xdc, 0x3b, 0x68, 0xd2, 0x24, 0xfb, 0xd0, 0xb8, 0x85,
0xbe, 0x01, 0xf9, 0xcd, 0xfd, 0x10, 0x65, 0xbe, 0x2a, 0x6c, 0x64, 0x3f, 0x96, 0x33, 0x2f, 0x52,
0xa2, 0xd3, 0x26, 0x70, 0xa2, 0xa3, 0xfd, 0x90, 0x90, 0xfc, 0x0e, 0x94, 0xd5, 0xa7, 0x6e, 0x27,
0x3e, 0x35, 0x6c, 0x9c, 0xfc, 0x8c, 0xce, 0xbc, 0x4a, 0x59, 0xbd, 0x61, 0x22, 0xce, 0x8a, 0x3d,
0xc6, 0x53, 0x57, 0xd1, 0x39, 0x74, 0x51, 0xe6, 0x43, 0xc4, 0x46, 0xf6, 0xcb, 0xba, 0xd4, 0x2a,
0xc2, 0x43, 0x97, 0x90, 0xfc, 0x36, 0x7f, 0x42, 0xd7, 0x0d, 0xd1, 0x35, 0xcd, 0x1b, 0x28, 0xf5,
0x6d, 0x4f, 0x63, 0x3e, 0x1b, 0x80, 0x33, 0xb9, 0x42, 0x99, 0x5c, 0x32, 0x67, 0x38, 0x93, 0x6e,
0x04, 0xf2, 0xd0, 0xb8, 0xb5, 0xd8, 0x85, 0x09, 0xda, 0x3b, 0x46, 0x2f, 0xc5, 0x8f, 0x86, 0xa6,
0x2b, 0x9f, 0x61, 0xe8, 0x58, 0xd7, 0xd9, 0x9c, 0xa5, 0x8c, 0xaa, 0x66, 0x89, 0x30, 0xa2, 0x9d,
0xe3, 0x87, 0xc6, 0xad, 0x9b, 0xc6, 0x5d, 0x63, 0xf1, 0xaf, 0x26, 0x60, 0x82, 0xf6, 0x28, 0xd0,
0x1e, 0x80, 0xec, 0x91, 0x26, 0x57, 0x97, 0x6a, 0xbf, 0x26, 0x57, 0x97, 0x6e, 0xaf, 0x9a, 0x0d,
0xca, 0x74, 0xd6, 0x9c, 0x26, 0x4c, 0x69, 0xeb, 0xa3, 0x49, 0x3b, 0x3d, 0x44, 0x8f, 0x3f, 0x32,
0x78, 0xb3, 0x86, 0xb9, 0x19, 0xd2, 0x51, 0x8b, 0xf5, 0x47, 0x93, 0xdb, 0x41, 0xd3, 0x12, 0x35,
0x1f, 0x50, 0x86, 0x4d, 0xb3, 0x26, 0x19, 0xfa, 0x14, 0xe2, 0xa1, 0x71, 0xeb, 0x65, 0xdd, 0xbc,
0xc0, 0xb5, 0x9c, 0x98, 0x41, 0xdf, 0x85, 0x6a, 0xbc, 0x93, 0x87, 0xae, 0x6b, 0x78, 0x25, 0x3b,
0x83, 0x8d, 0xb7, 0x8f, 0x07, 0xe2, 0x32, 0xcd, 0x51, 0x99, 0x38, 0x73, 0xc6, 0x79, 0x0f, 0xe3,
0x91, 0x4d, 0x80, 0xb8, 0x0d, 0xd0, 0x9f, 0x1a, 0xbc, 0x19, 0x2b, 0x1b, 0x71, 0x48, 0x47, 0x3d,
0xd5, 0xef, 0x6b, 0xdc, 0x38, 0x01, 0x8a, 0x0b, 0xf1, 0x21, 0x15, 0xe2, 0x03, 0x73, 0x56, 0x0a,
0x11, 0x3a, 0x43, 0x1c, 0x7a, 0x5c, 0x8a, 0x97, 0x57, 0xcc, 0x37, 0x62, 0xca, 0x89, 0xcd, 0x4a,
0x63, 0xb1, 0x86, 0x99, 0xd6, 0x58, 0xb1, 0x9e, 0x9c, 0xd6, 0x58, 0xf1, 0x6e, 0x9b, 0xce, 0x58,
0xbc, 0x3d, 0xa6, 0x31, 0x56, 0x34, 0xb3, 0xf8, 0xbf, 0xe3, 0x50, 0x5c, 0x66, 0xff, 0x2b, 0x0e,
0xf2, 0xa0, 0x14, 0xb5, 0x90, 0xd0, 0x9c, 0xae, 0x4a, 0x2d, 0xaf, 0x72, 0x8d, 0x6b, 0x99, 0xf3,
0x5c, 0xa0, 0xb7, 0xa8, 0x40, 0x6f, 0x9a, 0x97, 0x08, 0x67, 0xfe, 0x7f, 0xfb, 0x34, 0x59, 0x2d,
0xb3, 0x69, 0xf7, 0x7a, 0x44, 0x11, 0xbf, 0x09, 0x15, 0xb5, 0xa1, 0x83, 0xde, 0xd2, 0x56, 0xc6,
0xd5, 0xee, 0x50, 0xc3, 0x3c, 0x0e, 0x84, 0x73, 0x7e, 0x9b, 0x72, 0x9e, 0x33, 0x2f, 0x6b, 0x38,
0xfb, 0x14, 0x34, 0xc6, 0x9c, 0x75, 0x5e, 0xf4, 0xcc, 0x63, 0x2d, 0x1e, 0x3d, 0xf3, 0x78, 0xe3,
0xe6, 0x58, 0xe6, 0xfb, 0x14, 0x94, 0x30, 0x0f, 0x00, 0x64, 0x6b, 0x04, 0x69, 0x75, 0xa9, 0x5c,
0x58, 0x93, 0xc1, 0x21, 0xdd, 0x55, 0x31, 0x4d, 0xca, 0x96, 0xef, 0xbb, 0x04, 0xdb, 0x81, 0x13,
0x84, 0xcc, 0x31, 0xa7, 0x62, 0x8d, 0x0d, 0xa4, 0x5d, 0x4f, 0xbc, 0x4f, 0xd2, 0xb8, 0x7e, 0x2c,
0x0c, 0xe7, 0x7e, 0x83, 0x72, 0xbf, 0x66, 0x36, 0x34, 0xdc, 0x47, 0x0c, 0x96, 0x6c, 0xb6, 0xff,
0x2b, 0x40, 0xf9, 0x99, 0xed, 0xb8, 0x21, 0x76, 0x6d, 0xb7, 0x8b, 0xd1, 0x0e, 0x4c, 0xd0, 0xdc,
0x9d, 0x0c, 0xc4, 0x6a, 0x1d, 0x3f, 0x19, 0x88, 0x63, 0x85, 0x6c, 0x73, 0x9e, 0x32, 0x6e, 0x98,
0x17, 0x09, 0xe3, 0xa1, 0x24, 0xdd, 0x64, 0x25, 0x70, 0xe3, 0x16, 0x7a, 0x05, 0x05, 0xde, 0xc0,
0x4e, 0x10, 0x8a, 0x15, 0xd5, 0x1a, 0x57, 0xf4, 0x93, 0xba, 0xbd, 0xac, 0xb2, 0x09, 0x28, 0x1c,
0xe1, 0x73, 0x00, 0x20, 0xfb, 0x31, 0x49, 0x8b, 0xa6, 0xfa, 0x38, 0x8d, 0xf9, 0x6c, 0x00, 0x9d,
0x4e, 0x55, 0x9e, 0xbd, 0x08, 0x96, 0xf0, 0xfd, 0x16, 0x8c, 0x3f, 0xb1, 0x83, 0x5d, 0x94, 0xc8,
0xbd, 0xca, 0x7b, 0xd3, 0x46, 0x43, 0x37, 0xc5, 0xb9, 0x5c, 0xa3, 0x5c, 0x2e, 0xb3, 0x50, 0xa6,
0x72, 0xa1, 0x2f, 0x2a, 0x8d, 0x5b, 0xa8, 0x07, 0x05, 0xf6, 0xd8, 0x34, 0xa9, 0xbf, 0xd8, 0xcb,
0xd5, 0xa4, 0xfe, 0xe2, 0xef, 0x53, 0x4f, 0xe6, 0x32, 0x82, 0x49, 0xf1, 0x28, 0x13, 0x25, 0x9e,
0xb2, 0x24, 0x5e, 0x72, 0x36, 0xe6, 0xb2, 0xa6, 0x39, 0xaf, 0xeb, 0x94, 0xd7, 0x55, 0xb3, 0x9e,
0xb2, 0x15, 0x87, 0x7c, 0x68, 0xdc, 0xba, 0x6b, 0xa0, 0xef, 0x02, 0xc8, 0x86, 0x55, 0xca, 0x03,
0x93, 0x4d, 0xb0, 0x94, 0x07, 0xa6, 0x7a, 0x5d, 0xe6, 0x02, 0xe5, 0x7b, 0xd3, 0xbc, 0x9e, 0xe4,
0x1b, 0xfa, 0xb6, 0x1b, 0xbc, 0xc2, 0xfe, 0x1d, 0x56, 0x2d, 0x0f, 0x76, 0x9d, 0x11, 0x59, 0xb2,
0x0f, 0xa5, 0xa8, 0x9f, 0x90, 0x8c, 0xb6, 0xc9, 0xce, 0x47, 0x32, 0xda, 0xa6, 0x1a, 0x11, 0xf1,
0xb0, 0x13, 0xdb, 0x2d, 0x02, 0x94, 0x38, 0xe0, 0x5f, 0xd4, 0x60, 0x9c, 0x1c, 0xc8, 0xc9, 0xe1,
0x44, 0x16, 0x7b, 0x92, 0xab, 0x4f, 0xd5, 0xab, 0x93, 0xab, 0x4f, 0xd7, 0x89, 0xe2, 0x87, 0x13,
0x72, 0x59, 0x6b, 0xb2, 0x2a, 0x0a, 0x59, 0xa9, 0x07, 0x65, 0xa5, 0x08, 0x84, 0x34, 0xc4, 0xe2,
0xf5, 0xef, 0x64, 0xba, 0xd3, 0x54, 0x90, 0xcc, 0x37, 0x29, 0xbf, 0x8b, 0x2c, 0xdd, 0x51, 0x7e,
0x3d, 0x06, 0x41, 0x18, 0xf2, 0xd5, 0x71, 0xbf, 0xd7, 0xac, 0x2e, 0xee, 0xfb, 0xf3, 0xd9, 0x00,
0x99, 0xab, 0x93, 0x8e, 0xff, 0x1a, 0x2a, 0x6a, 0xe1, 0x07, 0x69, 0x84, 0x4f, 0x54, 0xe8, 0x93,
0x79, 0x44, 0x57, 0x37, 0x8a, 0x47, 0x36, 0xca, 0xd2, 0x56, 0xc0, 0x08, 0xe3, 0x01, 0x14, 0x79,
0x01, 0x48, 0xa7, 0xd2, 0x78, 0x11, 0x5f, 0xa7, 0xd2, 0x44, 0xf5, 0x28, 0x7e, 0x7a, 0xa6, 0x1c,
0xc9, 0x45, 0x54, 0xe4, 0x6a, 0xce, 0xed, 0x31, 0x0e, 0xb3, 0xb8, 0xc9, 0xa2, 0x6d, 0x16, 0x37,
0xa5, 0x3e, 0x90, 0xc5, 0xad, 0x8f, 0x43, 0x1e, 0x0f, 0xc4, 0xe5, 0x1a, 0x65, 0x10, 0x53, 0xf3,
0xa3, 0x79, 0x1c, 0x88, 0xee, 0x72, 0x23, 0x19, 0x8a, 0xe4, 0x78, 0x08, 0x20, 0x8b, 0x51, 0xc9,
0x13, 0xab, 0xb6, 0x4f, 0x90, 0x3c, 0xb1, 0xea, 0xeb, 0x59, 0xf1, 0xd8, 0x27, 0xf9, 0xb2, 0xbb,
0x15, 0xe1, 0xfc, 0xb9, 0x01, 0x28, 0x5d, 0xae, 0x42, 0xef, 0xeb, 0xa9, 0x6b, 0x7b, 0x0e, 0x8d,
0xdb, 0xa7, 0x03, 0xd6, 0xa5, 0x33, 0x29, 0x52, 0x97, 0x42, 0x8f, 0x5e, 0x13, 0xa1, 0xbe, 0x67,
0xc0, 0x54, 0xac, 0xc4, 0x85, 0xde, 0xc9, 0xb0, 0x69, 0xa2, 0xf1, 0xd0, 0x78, 0xf7, 0x44, 0x38,
0xdd, 0x51, 0x5e, 0xd9, 0x01, 0xe2, 0x4e, 0xf3, 0x3b, 0x06, 0x54, 0xe3, 0x95, 0x30, 0x94, 0x41,
0x3b, 0xd5, 0xaf, 0x68, 0xdc, 0x3c, 0x19, 0xf0, 0x78, 0xf3, 0xc8, 0xeb, 0xcc, 0x00, 0x8a, 0xbc,
0x64, 0xa6, 0xdb, 0xf8, 0xf1, 0x06, 0x87, 0x6e, 0xe3, 0x27, 0xea, 0x6d, 0x9a, 0x8d, 0xef, 0x7b,
0x03, 0xac, 0xb8, 0x19, 0xaf, 0xa4, 0x65, 0x71, 0x3b, 0xde, 0xcd, 0x12, 0x65, 0xb8, 0x2c, 0x6e,
0xd2, 0xcd, 0x44, 0xc1, 0x0c, 0x65, 0x10, 0x3b, 0xc1, 0xcd, 0x92, 0xf5, 0x36, 0x8d, 0x9b, 0x51,
0x86, 0x8a, 0x9b, 0xc9, 0x42, 0x96, 0xce, 0xcd, 0x52, 0xbd, 0x18, 0x9d, 0x9b, 0xa5, 0x6b, 0x61,
0x1a, 0x3b, 0x52, 0xbe, 0x31, 0x37, 0xbb, 0xa0, 0x29, 0x75, 0xa1, 0xdb, 0x19, 0x4a, 0xd4, 0x76,
0x76, 0x1a, 0x77, 0x4e, 0x09, 0x9d, 0xb9, 0xc7, 0x99, 0xfa, 0xc5, 0x1e, 0xff, 0x23, 0x03, 0x66,
0x75, 0xd5, 0x31, 0x94, 0xc1, 0x27, 0xa3, 0x11, 0xd4, 0x58, 0x38, 0x2d, 0xf8, 0xf1, 0xda, 0x8a,
0x76, 0xfd, 0xa3, 0x47, 0x9f, 0xb7, 0x9a, 0x2f, 0xaf, 0xc1, 0x55, 0x28, 0xb4, 0x46, 0xce, 0x53,
0x7c, 0x84, 0x2e, 0x4c, 0xe6, 0x1a, 0x53, 0x84, 0xae, 0xe7, 0x3b, 0x9f, 0xd1, 0x7f, 0xf1, 0x61,
0x3e, 0xb7, 0x53, 0x01, 0x88, 0x00, 0xc6, 0xfe, 0xf5, 0x8b, 0x39, 0xe3, 0x3f, 0xbe, 0x98, 0x33,
0xfe, 0xeb, 0x8b, 0x39, 0xe3, 0x27, 0xff, 0x33, 0x37, 0xb6, 0x53, 0xa0, 0xff, 0x22, 0xc4, 0xd2,
0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0xd8, 0x98, 0x43, 0xdf, 0xe6, 0x42, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.

View File

@ -8,10 +8,30 @@ import "etcd/api/versionpb/version.proto";
// for grpc-gateway
import "google/api/annotations.proto";
import "protoc-gen-swagger/options/annotations.proto";
option (gogoproto.marshaler_all) = true;
option (gogoproto.unmarshaler_all) = true;
option (grpc.gateway.protoc_gen_swagger.options.openapiv2_swagger) = {
security_definitions: {
security: {
key: "ApiKey";
value: {
type: TYPE_API_KEY;
in: IN_HEADER;
name: "Authorization";
}
}
}
security: {
security_requirement: {
key: "ApiKey";
value: {};
}
}
};
service KV {
// Range gets the keys in the range from the key-value store.
rpc Range(RangeRequest) returns (RangeResponse) {

View File

@ -23,6 +23,7 @@ require (
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect
github.com/kr/text v0.2.0 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect

View File

@ -63,6 +63,7 @@ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo=
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=

View File

@ -25,6 +25,7 @@ require (
github.com/fatih/color v1.14.1 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.17 // indirect

View File

@ -67,6 +67,7 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.6 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho=
github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo=
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=

View File

@ -44,6 +44,7 @@ require (
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/google/btree v1.1.2 // indirect
github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/jonboulle/clockwork v0.4.0 // indirect
github.com/mattn/go-runewidth v0.0.9 // indirect

View File

@ -76,6 +76,7 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho=
github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo=
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=

View File

@ -44,6 +44,7 @@ log_callout -e "\\nRunning gofast (gogo) proto generation..."
for dir in ${DIRS}; do
run pushd "${dir}"
run protoc --gofast_out=plugins=grpc:. -I=".:${GOGOPROTO_PATH}:${ETCD_ROOT_DIR}/..:${RAFT_ROOT}:${ETCD_ROOT_DIR}:${GRPC_GATEWAY_ROOT}/third_party/googleapis" \
-I"${GRPC_GATEWAY_ROOT}" \
--plugin="${GOFAST_BIN}" ./**/*.proto
run sed -i.bak -E 's|"etcd/api/|"go.etcd.io/etcd/api/v3/|g' ./**/*.pb.go
@ -64,6 +65,7 @@ for pb in api/etcdserverpb/rpc server/etcdserver/api/v3lock/v3lockpb/v3lock serv
log_callout "grpc & swagger for: ${pb}.proto"
run protoc -I. \
-I"${GRPC_GATEWAY_ROOT}"/third_party/googleapis \
-I"${GRPC_GATEWAY_ROOT}" \
-I"${GOGOPROTO_PATH}" \
-I"${ETCD_ROOT_DIR}/.." \
-I"${RAFT_ROOT}" \
@ -95,10 +97,6 @@ for pb in api/etcdserverpb/rpc server/etcdserver/api/v3lock/v3lockpb/v3lock serv
Documentation/dev-guide/apispec/swagger/"${swaggerName}".swagger.json
done
log_callout -e "\\nRunning swagger ..."
run_go_tool github.com/hexfusion/schwag -input=Documentation/dev-guide/apispec/swagger/rpc.swagger.json
if [ "${1:-}" != "--skip-protodoc" ]; then
log_callout "protodoc is auto-generating grpc API reference documentation..."

View File

@ -12,7 +12,6 @@ require (
github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8
github.com/grpc-ecosystem/grpc-gateway v1.16.0
github.com/gyuho/gocovmerge v0.0.0-20171205171859-50c7e6afd535
github.com/hexfusion/schwag v0.0.0-20211117114134-3ceb0191ccbf
github.com/mdempsky/unconvert v0.0.0-20200228143138-95ecdbfc0b5f
github.com/mgechev/revive v1.3.1
github.com/mikefarah/yq/v4 v4.33.3
@ -27,12 +26,9 @@ require (
require (
github.com/BurntSushi/toml v1.2.1 // indirect
github.com/PuerkitoBio/purell v1.1.1 // indirect
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect
github.com/a8m/envsubst v1.4.2 // indirect
github.com/akhenakh/hunspellgo v0.0.0-20160221122622-9db38fa26e19 // indirect
github.com/alecthomas/participle/v2 v2.0.0 // indirect
github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef // indirect
github.com/bmatcuk/doublestar/v4 v4.0.2 // indirect
github.com/chavacava/garif v0.0.0-20230227094218-b8c73b2037b8 // indirect
github.com/dimchansky/utfbom v1.1.1 // indirect
@ -43,16 +39,7 @@ require (
github.com/fsnotify/fsnotify v1.5.4 // indirect
github.com/ghodss/yaml v1.0.0 // indirect
github.com/go-logr/logr v1.2.0 // indirect
github.com/go-openapi/analysis v0.21.2 // indirect
github.com/go-openapi/errors v0.19.9 // indirect
github.com/go-openapi/jsonpointer v0.19.5 // indirect
github.com/go-openapi/jsonreference v0.19.6 // indirect
github.com/go-openapi/loads v0.21.1 // indirect
github.com/go-openapi/spec v0.20.4 // indirect
github.com/go-openapi/strfmt v0.21.0 // indirect
github.com/go-openapi/swag v0.19.15 // indirect
github.com/go-sql-driver/mysql v1.6.0 // indirect
github.com/go-stack/stack v1.8.0 // indirect
github.com/goccy/go-json v0.10.2 // indirect
github.com/goccy/go-yaml v1.11.0 // indirect
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b // indirect
@ -63,19 +50,15 @@ require (
github.com/jinzhu/copier v0.3.5 // indirect
github.com/jmhodges/clock v1.2.0 // indirect
github.com/jmoiron/sqlx v1.3.3 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/kisielk/sqlstruct v0.0.0-20201105191214-5f3e10d3ab46 // indirect
github.com/lib/pq v1.10.1 // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/mailru/easyjson v0.7.6 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.17 // indirect
github.com/mattn/go-runewidth v0.0.13 // indirect
github.com/mattn/go-sqlite3 v1.14.15 // indirect
github.com/mgechev/dots v0.0.0-20210922191527-e955255bf517 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
github.com/mitchellh/mapstructure v1.4.1 // indirect
github.com/oklog/ulid v1.3.1 // indirect
github.com/olekukonko/tablewriter v0.0.5 // indirect
github.com/pelletier/go-toml/v2 v2.0.7 // indirect
github.com/pkg/errors v0.9.1 // indirect
@ -86,7 +69,6 @@ require (
github.com/weppos/publicsuffix-go v0.15.1-0.20210511084619-b1f36a2d6c0b // indirect
github.com/zmap/zcrypto v0.0.0-20210511125630-18f1e0152cfc // indirect
github.com/zmap/zlint/v3 v3.1.0 // indirect
go.mongodb.org/mongo-driver v1.7.3 // indirect
golang.org/x/crypto v0.8.0 // indirect
golang.org/x/exp/typeparams v0.0.0-20221208152030-732eee02a75a // indirect
golang.org/x/mod v0.10.0 // indirect

View File

@ -3,10 +3,6 @@ cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak=
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
github.com/PuerkitoBio/purell v1.1.1 h1:WEQqlqaGbrPkxLJWfBwQmfEAE1Z7ONdDLqrN38tNFfI=
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 h1:d+Bc7a5rLufV/sSk/8dngufqelfh6jnri85riMAaF/M=
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
github.com/a8m/envsubst v1.4.2 h1:4yWIHXOLEJHQEFd4UjrWDrYeYlV7ncFWJOCBRLOZHQg=
github.com/a8m/envsubst v1.4.2/go.mod h1:MVUTQNGQ3tsjOOtKCNd+fl8RzhsXcDvvAEzkhGtlsbY=
github.com/akhenakh/hunspellgo v0.0.0-20160221122622-9db38fa26e19 h1:bYOD6QJnBJY79MJQR1i9cyQePG5oNDZXDKL2bhN/uvE=
@ -18,8 +14,6 @@ github.com/alecthomas/repr v0.2.0 h1:HAzS41CIzNW5syS8Mf9UwXhNH1J9aix/BvDRf1Ml2Yk
github.com/alexkohler/nakedret v1.0.2 h1:Svug5bxPnxbjw1jYlbHlnYAEORehXzsotyMUn2NQO2E=
github.com/alexkohler/nakedret v1.0.2/go.mod h1:pRpUzThUf0nEk2mzur20zmf+6AVzw+3pDWQA0ehUZhI=
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef h1:46PFijGLmAjMPwCCCo7Jf0W6f9slllCkkv7vyc1yOSg=
github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw=
github.com/bmatcuk/doublestar/v4 v4.0.2 h1:X0krlUVAVmtr2cRoTqR8aDMrDqnB36ht8wpWTiQ3jsA=
github.com/bmatcuk/doublestar/v4 v4.0.2/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
@ -44,7 +38,6 @@ github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f h1:o/kfcElHqOi
github.com/coreos/license-bill-of-materials v0.0.0-20190913234955-13baff47494e h1:vHRufSa2k8tfkcDdia1vJFa+oiBvvPxW94mg76PPAoA=
github.com/coreos/license-bill-of-materials v0.0.0-20190913234955-13baff47494e/go.mod h1:4xMOusJ7xxc84WclVxKT8+lNfGYDwojOUC2OQNCwcj4=
github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@ -72,54 +65,9 @@ github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/go-logr/logr v1.2.0 h1:QK40JKJyMdUDz+h+xvCsru/bJhvG0UxvePV0ufL/AcE=
github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-openapi/analysis v0.21.2 h1:hXFrOYFHUAMQdu6zwAiKKJHJQ8kqZs1ux/ru1P1wLJU=
github.com/go-openapi/analysis v0.21.2/go.mod h1:HZwRk4RRisyG8vx2Oe6aqeSQcoxRp47Xkp3+K6q+LdY=
github.com/go-openapi/errors v0.19.8/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M=
github.com/go-openapi/errors v0.19.9 h1:9SnKdGhiPZHF3ttwFMiCBEb8jQ4IDdrK+5+a0oTygA4=
github.com/go-openapi/errors v0.19.9/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M=
github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY=
github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
github.com/go-openapi/jsonreference v0.19.6 h1:UBIxjkht+AWIgYzCDSv2GN+E/togfwXUJFRTWhl2Jjs=
github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns=
github.com/go-openapi/loads v0.21.1 h1:Wb3nVZpdEzDTcly8S4HMkey6fjARRzb7iEaySimlDW0=
github.com/go-openapi/loads v0.21.1/go.mod h1:/DtAMXXneXFjbQMGEtbamCZb+4x7eGwkvZCvBmwUG+g=
github.com/go-openapi/spec v0.20.4 h1:O8hJrt0UMnhHcluhIdUgCLRWyM2x7QkBXRvOs7m+O1M=
github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I=
github.com/go-openapi/strfmt v0.21.0 h1:hX2qEZKmYks+t0hKeb4VTJpUm2UYsdL3+DCid5swxIs=
github.com/go-openapi/strfmt v0.21.0/go.mod h1:ZRQ409bWMj+SOgXofQAGTIo2Ebu72Gs+WaRADcS5iNg=
github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
github.com/go-openapi/swag v0.19.15 h1:D2NRCBzS9/pEY3gP9Nl8aDqGUcPFrwG2p+CNFrLyrCM=
github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE=
github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-stack/stack v1.8.0 h1:5SgMzNM5HxrEjV0ww2lTmX6E2Izsfxas4+YHWRs3Lsk=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0=
github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY=
github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg=
github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI=
github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI=
github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs=
github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI=
github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI=
github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk=
github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28=
github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo=
github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk=
github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw=
github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360=
github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg=
github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE=
github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8=
github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4=
github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4=
github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ=
github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0=
github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw=
github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU=
github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
github.com/goccy/go-yaml v1.11.0 h1:n7Z+zx8S9f9KgzG6KtQKf+kwqXZlLNR2F6018Dgau54=
@ -144,7 +92,6 @@ github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaS
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/google/addlicense v1.1.1 h1:jpVf9qPbU8rz5MxKo7d+RMcNHkqxi4YJi/laauX4aAE=
github.com/google/addlicense v1.1.1/go.mod h1:Sm/DHu7Jk+T5miFHHehdIjbi4M5+dJDRS3Cq0rncIxA=
github.com/google/certificate-transparency-go v1.1.4 h1:hCyXHDbtqlr/lMXU0D4WgbalXL0Zk4dSWWMbPV8VrqY=
@ -154,15 +101,12 @@ github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4=
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ=
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y=
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8 h1:PVRE9d4AQKmbelZ7emNig1+NT27DUmKZn5qXxfio54U=
github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0=
@ -170,10 +114,7 @@ github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4
github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw=
github.com/gyuho/gocovmerge v0.0.0-20171205171859-50c7e6afd535 h1:BGeD3v3lyKZy+ocGtprXiDXjIiXvZDfuyII7Lym7GbQ=
github.com/gyuho/gocovmerge v0.0.0-20171205171859-50c7e6afd535/go.mod h1:xV7b0Cn2irnP1jU+mMYvqPAPuFPNjtgB+rvKu/dLIz4=
github.com/hexfusion/schwag v0.0.0-20211117114134-3ceb0191ccbf h1:beD8tmKm5FqWVtm3eV4ty16y1Vu044zh8Juw7swlpr8=
github.com/hexfusion/schwag v0.0.0-20211117114134-3ceb0191ccbf/go.mod h1:wSgrm+n3LvHOVxUJo2ha5ffLqRmt6+oGoD6J/suB66c=
github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM=
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
github.com/jinzhu/copier v0.3.5 h1:GlvfUwHk62RokgqVNvYsku0TATCF7bAHVwEXoBh3iJg=
@ -182,34 +123,20 @@ github.com/jmhodges/clock v1.2.0 h1:eq4kys+NI0PLngzaHEe7AmPT90XMGIEySD1JfV1PDIs=
github.com/jmhodges/clock v1.2.0/go.mod h1:qKjhA7x7u/lQpPB1XAqX1b1lCI/w3/fNuYpI/ZjLynI=
github.com/jmoiron/sqlx v1.3.3 h1:j82X0bf7oQ27XeqxicSZsTU5suPwKElg3oyxNn43iTk=
github.com/jmoiron/sqlx v1.3.3/go.mod h1:2BljVx/86SuTyjE+aPYlHCTNvZrnJXghYGpNiXLBMCQ=
github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg=
github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY=
github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y=
github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4=
github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA=
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/kisielk/sqlstruct v0.0.0-20201105191214-5f3e10d3ab46 h1:veS9QfglfvqAw2e+eeNT/SbGySq8ajECXJ9e4fPoLhY=
github.com/kisielk/sqlstruct v0.0.0-20201105191214-5f3e10d3ab46/go.mod h1:yyMNCyc/Ib3bDTKd379tNMpB/7/H5TjM2Y9QJ5THLbE=
github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/lib/pq v1.10.1 h1:6VXZrLU0jHBYyAqrSPa+MgPfnSvTPuMgK+k0o5kVFWo=
github.com/lib/pq v1.10.1/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=
github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
github.com/mailru/easyjson v0.7.6 h1:8yTIVnZgCoiM1TgqoeTl+LfU5Jg6/xL3QhGQnimLYnA=
github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE=
github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0=
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
@ -235,24 +162,14 @@ github.com/mikefarah/yq/v4 v4.33.3 h1:cu6JxWAL82bpLCJTLYP3ILZ/3gXF1YfvYBCMRdnY/x
github.com/mikefarah/yq/v4 v4.33.3/go.mod h1:ajAKq75gdANZHzkWu5shY2QZHpg8HOHVSyscC1+OAIs=
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/mitchellh/mapstructure v1.4.1 h1:CpVNEelQCZBooIPDn+AR3NpivK/TIKU8bDxdASFVQag=
github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
github.com/mreiferson/go-httpclient v0.0.0-20160630210159-31f0106b4474/go.mod h1:OQA4XLvDbMgS8P0CevmM4m9Q3Jq4phKUzcocxuGJ5m8=
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs=
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno=
github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4=
github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=
github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=
github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE=
github.com/pelletier/go-toml/v2 v2.0.7 h1:muncTPStnKRos5dpVKULv2FVd4bMOhNePj9CjgDb8Us=
github.com/pelletier/go-toml/v2 v2.0.7/go.mod h1:eumQOmlWiOPt5WriQQqoM5y18pDHwha2N+QD+EUNTek=
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e h1:aoZm08cpOy4WuID//EZDgcC4zIxODThtZNPirFr42+A=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
@ -261,17 +178,10 @@ github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:
github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/sirupsen/logrus v1.3.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I=
github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0=
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
@ -282,27 +192,19 @@ github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8=
github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4=
github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
github.com/trustmaster/go-aspell v0.0.0-20200701131845-c2b1f55bec8f h1:92ZQJRegaqnKjz9HY9an696Sw5EmAqRv0eie/U2IE6k=
github.com/trustmaster/go-aspell v0.0.0-20200701131845-c2b1f55bec8f/go.mod h1:wxUiQ1klFJmwnM41kQI7IT2g8jjOKbtuL54LdjkxAI0=
github.com/weppos/publicsuffix-go v0.13.1-0.20210123135404-5fd73613514e/go.mod h1:HYux0V0Zi04bHNwOHy4cXJVz/TQjYonnF6aoYhj+3QE=
github.com/weppos/publicsuffix-go v0.15.1-0.20210511084619-b1f36a2d6c0b h1:FsyNrX12e5BkplJq7wKOLk0+C6LZ+KGXvuEcKUYm5ss=
github.com/weppos/publicsuffix-go v0.15.1-0.20210511084619-b1f36a2d6c0b/go.mod h1:HYux0V0Zi04bHNwOHy4cXJVz/TQjYonnF6aoYhj+3QE=
github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs=
github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM=
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
@ -320,14 +222,10 @@ go.etcd.io/protodoc v0.0.0-20180829002748-484ab544e116 h1:QQiUXlqz+d96jyNG71NE+I
go.etcd.io/protodoc v0.0.0-20180829002748-484ab544e116/go.mod h1:F9kog+iVAuvPJucb1dkYcDcbV0g4uyGEHllTP5NrXiw=
go.etcd.io/raft/v3 v3.0.0-20221201111702-eaa6808e1f7a h1:Znv2XJyAf/fsJsFNt9toO8uyXwwHQ44wxqsvdSxipj4=
go.etcd.io/raft/v3 v3.0.0-20221201111702-eaa6808e1f7a/go.mod h1:eMshmuwXLWZrjHXN8ZgYrOMQRSbHqi5M84DEZWhG+o4=
go.mongodb.org/mongo-driver v1.7.3 h1:G4l/eYY9VrQAK/AUgkV0koQKzQnyddnWxrd/Etf0jIs=
go.mongodb.org/mongo-driver v1.7.3/go.mod h1:NqaYOwnXWr5Pm7AOpO5QFxKJ503nbMse/R79oO62zWg=
go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20201124201722-c8d3bf9c5392/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
@ -360,7 +258,6 @@ golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwY
golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM=
golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.9.0 h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM=
golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns=
@ -369,8 +266,6 @@ golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4Iltr
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@ -381,11 +276,7 @@ golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@ -395,7 +286,6 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
@ -425,11 +315,7 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200225230052-807dcd883420/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
@ -478,21 +364,15 @@ google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU=
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/errgo.v2 v2.1.0 h1:0vLT13EuvQ0hNvakwLuFZ/jYrLp5F3kcWHXdRggjCE8=
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473 h1:6D+BvnJ/j6e222UW8s2qTSe3wGBtvo0MbVQG/c5k8RE=
gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473/go.mod h1:N1eN2tsCx0Ydtgjl4cqmbRCsY4/+z4cYDeqwZTk6zog=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gotest.tools/gotestsum v1.10.0 h1:lVO4uQJoxdsJb7jgmr1fg8QW7zGQ/tuqvsq5fHKyoHQ=

View File

@ -31,7 +31,6 @@ import (
_ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway"
_ "github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger"
_ "github.com/gyuho/gocovmerge"
_ "github.com/hexfusion/schwag"
_ "github.com/mdempsky/unconvert"
_ "github.com/mgechev/revive"
_ "github.com/mikefarah/yq/v4"

View File

@ -29,7 +29,9 @@ import (
var (
// externalPackages that are not expected to have etcd version annotation.
externalPackages = []string{"io.prometheus.client", "grpc.binarylog.v1", "google.protobuf", "google.rpc", "google.api", "raftpb"}
externalPackages = []string{"io.prometheus.client", "grpc.binarylog.v1", "google.protobuf", "google.rpc", "google.api", "raftpb",
"grpc.gateway.protoc_gen_swagger.options",
}
)
// printEtcdVersion writes etcd_version proto annotation to stdout and returns any errors encountered when reading annotation.