Use Docker to generate swagger files (#9064)

* use docker for proto-swagger-gen

fixes #7933

* fix deprecated commands and flags

see https://docs.buf.build/faq/ for detail

* run proto-gen and proto-swagger-gen

* add changelog entry
This commit is contained in:
Hanjun Kim 2021-04-07 19:31:39 +09:00 committed by GitHub
parent 29ff333007
commit 9b41ba7fb5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 184 additions and 79 deletions

View File

@ -100,6 +100,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
* (types) [\#8962](https://github.com/cosmos/cosmos-sdk/issues/8962) Add `Abs()` method to `sdk.Int`.
* (x/bank) [\#8950](https://github.com/cosmos/cosmos-sdk/pull/8950) Improve efficiency on supply updates.
* (store) [\#8012](https://github.com/cosmos/cosmos-sdk/pull/8012) Implementation of ADR-038 WriteListener and listen.KVStore
* (makefile) [\#7933](https://github.com/cosmos/cosmos-sdk/issues/7933) Use Docker to generate swagger files.
### Bug Fixes

View File

@ -386,13 +386,13 @@ proto-gen-any:
$(DOCKER) run --rm -v $(CURDIR):/workspace --workdir /workspace tendermintdev/sdk-proto-gen sh ./scripts/protocgen-any.sh
proto-swagger-gen:
@./scripts/protoc-swagger-gen.sh
$(DOCKER) run --rm -v $(CURDIR):/workspace --workdir /workspace tendermintdev/sdk-proto-gen sh ./scripts/protoc-swagger-gen.sh
proto-lint:
@$(DOCKER_BUF) check lint --error-format=json
@$(DOCKER_BUF) lint --error-format=json
proto-check-breaking:
@$(DOCKER_BUF) check breaking --against-input $(HTTPS_GIT)#branch=master
@$(DOCKER_BUF) breaking --against $(HTTPS_GIT)#branch=master
TM_URL = https://raw.githubusercontent.com/tendermint/tendermint/v0.34.0-rc6/proto/tendermint
GOGO_PROTO_URL = https://raw.githubusercontent.com/regen-network/protobuf/cosmos

View File

@ -6265,6 +6265,24 @@ paths:
signatures required by gogoproto.
title: supply is the supply of the coins
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: >-
QueryTotalSupplyResponse is the response type for the
Query/TotalSupply RPC
@ -6292,6 +6310,62 @@ paths:
value:
type: string
format: byte
parameters:
- name: pagination.key
description: |-
key is a value returned in PageResponse.next_key to begin
querying the next page most efficiently. Only one of offset or key
should be set.
in: query
required: false
type: string
format: byte
- name: pagination.offset
description: >-
offset is a numeric offset that can be used when key is unavailable.
It is less efficient than using key. Only one of offset or key
should
be set.
in: query
required: false
type: string
format: uint64
- name: pagination.limit
description: >-
limit is the total number of results to be returned in the result
page.
If left empty it will default to a value to be set by each app.
in: query
required: false
type: string
format: uint64
- name: pagination.count_total
description: >-
count_total is set to true to indicate that the result set should
include
a count of the total number of items available for pagination in
UIs.
count_total is only respected when offset is used. It is ignored
when key
is set.
in: query
required: false
type: boolean
format: boolean
- name: pagination.reverse
description: >-
reverse is set to true indicates that, results to be returned in the
descending order.
in: query
required: false
type: boolean
format: boolean
tags:
- Query
'/cosmos/bank/v1beta1/supply/{denom}':
@ -24029,6 +24103,24 @@ definitions:
NOTE: The amount field is an Int which implements the custom method
signatures required by gogoproto.
title: supply is the supply of the coins
pagination:
description: pagination defines the pagination in the response.
type: object
properties:
next_key:
type: string
format: byte
title: |-
next_key is the key to be passed to PageRequest.key to
query the next page most efficiently
total:
type: string
format: uint64
title: >-
total is total number of results available if
PageRequest.count_total
was set, its value is undefined otherwise
title: >-
QueryTotalSupplyResponse is the response type for the Query/TotalSupply
RPC

View File

@ -18,4 +18,10 @@ RUN GO111MODULE=on go get \
RUN GO111MODULE=on go get -u github.com/pseudomuto/protoc-gen-doc/cmd/protoc-gen-doc
RUN apk add --no-cache \
nodejs \
npm
RUN npm install -g swagger-combine
COPY --from=BUILDER /usr/local/bin /usr/local/bin

View File

@ -1871,6 +1871,11 @@ QueryTotalSupplyRequest is the request type for the Query/TotalSupply RPC
method.
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `pagination` | [cosmos.base.query.v1beta1.PageRequest](#cosmos.base.query.v1beta1.PageRequest) | | pagination defines an optional pagination for the request. |
@ -1885,6 +1890,7 @@ method
| Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- |
| `supply` | [cosmos.base.v1beta1.Coin](#cosmos.base.v1beta1.Coin) | repeated | supply is the supply of the coins |
| `pagination` | [cosmos.base.query.v1beta1.PageResponse](#cosmos.base.query.v1beta1.PageResponse) | | pagination defines the pagination in the response. |

View File

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