From 3742cc1cf4a4b06f1d76fd321d42e0d65e904af3 Mon Sep 17 00:00:00 2001 From: Dan Lynch Date: Thu, 28 Jul 2022 18:52:02 +0900 Subject: [PATCH 1/2] fix: add cosmos_proto.implements_interface (#1740) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: add cosmos_proto.implements_interface * changelog * Update CHANGELOG.md Co-authored-by: Carlos Rodriguez * run `make proto-all` * run `go mod tidy` Co-authored-by: Carlos Rodriguez Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com> (cherry picked from commit 40d0ff7a2447b65f9401bb22547b2d397ce4d71e) # Conflicts: # CHANGELOG.md # modules/core/02-client/types/client.pb.go --- CHANGELOG.md | 17 ++++++++ modules/core/02-client/types/client.pb.go | 51 +++++++++++++++++++++++ proto/ibc/core/client/v1/client.proto | 11 +++-- 3 files changed, 75 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f92c45eac63..b1f988ca360 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,7 +44,24 @@ Ref: https://keepachangelog.com/en/1.0.0/ ### Improvements +<<<<<<< HEAD * (core/02-client) [\#1570](https://github.com/cosmos/ibc-go/pull/1570) Emitting an event when handling an upgrade client proposal. +======= +* (linting) [\#1418](https://github.com/cosmos/ibc-go/pull/1418) Fix linting errors, resulting compatiblity with go1.18 linting style, golangci-lint 1.46.2 and the revivie linter. This caused breaking changes in core/04-channel, core/ante, and the testing library. +* (app/20-transfer) [\#1680](https://github.com/cosmos/ibc-go/pull/1680) Adds migration to correct any malformed trace path information of tokens with denoms that contains slashes. The transfer module consensus version has been bumped to 2. +* (app/20-transfer) [\#1730](https://github.com/cosmos/ibc-go/pull/1730) parse the ics20 denomination provided via a packet using the channel identifier format specified by ibc-go. +* (cleanup) [\#1335](https://github.com/cosmos/ibc-go/pull/1335/) `gofumpt -w -l .` to standardize the code layout more strictly than `go fmt ./...` +* (middleware) [\#1022](https://github.com/cosmos/ibc-go/pull/1022) Add `GetAppVersion` to the ICS4Wrapper interface. This function should be used by IBC applications to obtain their own version since the version set in the channel structure may be wrapped many times by middleware. +* (modules/core/04-channel) [\#1232](https://github.com/cosmos/ibc-go/pull/1232) Updating params on `NewPacketID` and moving to bottom of file. +* (modules/core/04-channel) [\#1232](https://github.com/cosmos/ibc-go/pull/1232) Updating params on `NewPacketId` and moving to bottom of file. +* (app/29-fee) [\#1305](https://github.com/cosmos/ibc-go/pull/1305) Change version string for fee module to `ics29-1` +* (app/29-fee) [\#1341](https://github.com/cosmos/ibc-go/pull/1341) Check if the fee module is locked and if the fee module is enabled before refunding all fees +* (transfer) [\#1414](https://github.com/cosmos/ibc-go/pull/1414) Emitting Sender address from `fungible_token_packet` events in `OnRecvPacket` and `OnAcknowledgementPacket`. +* (testing/simapp) [\#1397](https://github.com/cosmos/ibc-go/pull/1397) Adding mock module to maccperms and adding check to ensure mock module is not a blocked account address. +* (core/02-client) [\#1570](https://github.com/cosmos/ibc-go/pull/1570) Emitting an event when handling an upgrade client proposal. +* (modules/light-clients/07-tendermint) [\#1713](https://github.com/cosmos/ibc-go/pull/1713) Allow client upgrade proposals to update `TrustingPeriod`. See ADR-026 for context. +* (core/client) [\#1740](https://github.com/cosmos/ibc-go/pull/1740) Add `cosmos_proto.implements_interface` to adhere to guidelines in [Cosmos SDK ADR 019](https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-019-protobuf-state-encoding.md#safe-usage-of-any) for annotating `google.protobuf.Any` types +>>>>>>> 40d0ff7 (fix: add cosmos_proto.implements_interface (#1740)) ### Features diff --git a/modules/core/02-client/types/client.pb.go b/modules/core/02-client/types/client.pb.go index 34eb54cc90f..369b1296efb 100644 --- a/modules/core/02-client/types/client.pb.go +++ b/modules/core/02-client/types/client.pb.go @@ -9,6 +9,7 @@ import ( types1 "github.com/cosmos/cosmos-sdk/x/upgrade/types" _ "github.com/gogo/protobuf/gogoproto" proto "github.com/gogo/protobuf/proto" + _ "github.com/regen-network/cosmos-proto" io "io" math "math" math_bits "math/bits" @@ -397,6 +398,7 @@ func init() { func init() { proto.RegisterFile("ibc/core/client/v1/client.proto", fileDescriptor_b6bc4c8185546947) } var fileDescriptor_b6bc4c8185546947 = []byte{ +<<<<<<< HEAD // 705 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x54, 0x3f, 0x6f, 0xd3, 0x4e, 0x18, 0x8e, 0xdb, 0xfc, 0xa2, 0xe6, 0x52, 0x35, 0xfd, 0xb9, 0x29, 0x0d, 0xa1, 0xca, 0x45, 0x27, @@ -443,6 +445,55 @@ var fileDescriptor_b6bc4c8185546947 = []byte{ 0x71, 0x80, 0x99, 0x9c, 0xde, 0x8f, 0xdb, 0x3b, 0x6a, 0x80, 0xf3, 0xe9, 0x18, 0x33, 0xa7, 0x20, 0x3e, 0xca, 0xee, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb6, 0x6f, 0x16, 0x77, 0xe0, 0x05, 0x00, 0x00, +======= + // 734 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x55, 0xbd, 0x6e, 0x13, 0x4b, + 0x18, 0xf5, 0x3a, 0xbe, 0x56, 0x3c, 0xbe, 0x8a, 0x73, 0x37, 0xce, 0x8d, 0xaf, 0x6f, 0xe4, 0xb1, + 0x46, 0x14, 0x16, 0x22, 0xbb, 0xd8, 0x08, 0x14, 0xb9, 0xc3, 0x6e, 0x92, 0x02, 0x64, 0x16, 0x45, + 0x08, 0x1a, 0x6b, 0x7f, 0x26, 0xeb, 0x89, 0xd6, 0x3b, 0xd6, 0xce, 0xac, 0xc1, 0x6f, 0x40, 0x07, + 0x25, 0x48, 0x29, 0xf2, 0x06, 0x34, 0x3c, 0x02, 0x45, 0xca, 0x88, 0x8a, 0x6a, 0x85, 0x92, 0x86, + 0xda, 0x4f, 0x80, 0x3c, 0x33, 0x9b, 0xd8, 0xf9, 0x01, 0x04, 0xdd, 0xcc, 0x99, 0xb3, 0x67, 0xce, + 0x77, 0xbc, 0xc7, 0x0b, 0x20, 0x71, 0x5c, 0xd3, 0xa5, 0x11, 0x36, 0xdd, 0x80, 0xe0, 0x90, 0x9b, + 0xe3, 0xa6, 0x5a, 0x19, 0xa3, 0x88, 0x72, 0xaa, 0xeb, 0xc4, 0x71, 0x8d, 0x19, 0xc1, 0x50, 0xf0, + 0xb8, 0x59, 0x2d, 0xfb, 0xd4, 0xa7, 0xe2, 0xd8, 0x9c, 0xad, 0x24, 0xb3, 0xfa, 0x9f, 0x4f, 0xa9, + 0x1f, 0x60, 0x53, 0xec, 0x9c, 0x78, 0xdf, 0xb4, 0xc3, 0x89, 0x3a, 0xba, 0xe5, 0x52, 0x36, 0xa4, + 0xcc, 0x8c, 0x47, 0x7e, 0x64, 0x7b, 0xd8, 0x1c, 0x37, 0x1d, 0xcc, 0xed, 0x66, 0xba, 0x4f, 0x05, + 0x24, 0xab, 0x2f, 0x95, 0xe5, 0x46, 0x1e, 0xa1, 0x43, 0x0d, 0xac, 0xef, 0x7a, 0x38, 0xe4, 0x64, + 0x9f, 0x60, 0xaf, 0x2b, 0x9c, 0x3c, 0xe5, 0x36, 0xc7, 0x7a, 0x13, 0x14, 0xa4, 0xb1, 0x3e, 0xf1, + 0x2a, 0x5a, 0x5d, 0x6b, 0x14, 0x3a, 0xe5, 0x69, 0x02, 0x57, 0x27, 0xf6, 0x30, 0x68, 0xa3, 0xf3, + 0x23, 0x64, 0x2d, 0xcb, 0xf5, 0xae, 0xa7, 0xf7, 0xc0, 0xdf, 0x0a, 0x67, 0x33, 0x89, 0x4a, 0xb6, + 0xae, 0x35, 0x8a, 0xad, 0xb2, 0x21, 0xfd, 0x1b, 0xa9, 0x7f, 0xe3, 0x61, 0x38, 0xe9, 0x6c, 0x4c, + 0x13, 0xb8, 0xb6, 0xa0, 0x25, 0x9e, 0x41, 0x56, 0xd1, 0xbd, 0x30, 0x81, 0x3e, 0x68, 0xa0, 0xd2, + 0xa5, 0x21, 0xc3, 0x21, 0x8b, 0x99, 0x80, 0x9e, 0x11, 0x3e, 0xd8, 0xc1, 0xc4, 0x1f, 0x70, 0x7d, + 0x1b, 0xe4, 0x07, 0x62, 0x25, 0xec, 0x15, 0x5b, 0x55, 0xe3, 0x6a, 0xa4, 0x86, 0xe4, 0x76, 0x72, + 0xc7, 0x09, 0xcc, 0x58, 0x8a, 0xaf, 0x3f, 0x07, 0x25, 0x37, 0x55, 0xfd, 0x05, 0xaf, 0xd5, 0x69, + 0x02, 0xff, 0x55, 0x5e, 0x17, 0x1f, 0x43, 0xd6, 0x8a, 0xbb, 0x60, 0x0f, 0x7d, 0xd2, 0xc0, 0xba, + 0x8c, 0x71, 0xd1, 0x37, 0xfb, 0x9d, 0x40, 0x5f, 0x81, 0xd5, 0x4b, 0x17, 0xb2, 0x4a, 0xb6, 0xbe, + 0xd4, 0x28, 0xb6, 0xee, 0x5c, 0x37, 0xeb, 0x4d, 0x49, 0x75, 0xe0, 0x6c, 0xfa, 0x69, 0x02, 0x37, + 0xae, 0x1d, 0x82, 0x21, 0xab, 0xb4, 0x38, 0x05, 0x43, 0x6f, 0xb2, 0xa0, 0x2c, 0xc7, 0xd8, 0x1b, + 0x79, 0x36, 0xc7, 0xbd, 0x88, 0x8e, 0x28, 0xb3, 0x03, 0xbd, 0x0c, 0xfe, 0xe2, 0x84, 0x07, 0x58, + 0x4e, 0x60, 0xc9, 0x8d, 0x5e, 0x07, 0x45, 0x0f, 0x33, 0x37, 0x22, 0x23, 0x4e, 0x68, 0x28, 0xc2, + 0x2c, 0x58, 0xf3, 0x90, 0xbe, 0x03, 0xfe, 0x61, 0xb1, 0x73, 0x80, 0x5d, 0xde, 0xbf, 0x48, 0x61, + 0x49, 0xa4, 0xb0, 0x39, 0x4d, 0x60, 0x45, 0x3a, 0xbb, 0x42, 0x41, 0x56, 0x49, 0x61, 0xdd, 0x34, + 0x94, 0x27, 0xa0, 0xcc, 0x62, 0x87, 0x71, 0xc2, 0x63, 0x8e, 0xe7, 0xc4, 0x72, 0x42, 0x0c, 0x4e, + 0x13, 0xf8, 0xff, 0xb9, 0xd8, 0x15, 0x16, 0xb2, 0xf4, 0x0b, 0x38, 0x95, 0x6c, 0xa3, 0xd7, 0x47, + 0x30, 0xf3, 0xf9, 0xe3, 0x56, 0x55, 0x75, 0xc3, 0xa7, 0x63, 0x43, 0x55, 0x69, 0x16, 0x2a, 0xc7, + 0x21, 0x47, 0xef, 0xb3, 0xa0, 0xb4, 0x27, 0x6b, 0xf5, 0xc7, 0x61, 0x3c, 0x00, 0xb9, 0x51, 0x60, + 0x87, 0x62, 0xfe, 0x62, 0x6b, 0xd3, 0x50, 0xd7, 0xa6, 0xad, 0x4d, 0xaf, 0xee, 0x05, 0x76, 0xa8, + 0xde, 0x5c, 0xc1, 0xd7, 0x0f, 0xc0, 0xba, 0xe2, 0x78, 0xfd, 0x85, 0xa6, 0xe5, 0x7e, 0xf0, 0xf6, + 0xd6, 0xa7, 0x09, 0xdc, 0x94, 0x89, 0x5c, 0xfb, 0x30, 0xb2, 0xd6, 0x52, 0x7c, 0xae, 0xff, 0xed, + 0xdb, 0xb3, 0x4c, 0xde, 0x1d, 0xc1, 0xcc, 0xb7, 0x23, 0xa8, 0xfd, 0x24, 0x9b, 0x43, 0x0d, 0xe4, + 0x55, 0x29, 0xbb, 0xa0, 0x14, 0xe1, 0x31, 0x61, 0x84, 0x86, 0xfd, 0x30, 0x1e, 0x3a, 0x38, 0x12, + 0xe1, 0xe4, 0xe6, 0x4b, 0x74, 0x89, 0x80, 0xac, 0x95, 0x14, 0x79, 0x2c, 0x80, 0x05, 0x11, 0x55, + 0xf1, 0xec, 0x8d, 0x22, 0x92, 0x30, 0x27, 0x22, 0x9d, 0xb4, 0x97, 0xd3, 0x01, 0xd0, 0x23, 0x90, + 0xef, 0xd9, 0x91, 0x3d, 0x64, 0x33, 0x61, 0x3b, 0x08, 0xe8, 0xcb, 0xf3, 0x08, 0x58, 0x45, 0xab, + 0x2f, 0x35, 0x0a, 0xf3, 0xc2, 0x97, 0x08, 0xc8, 0x5a, 0x51, 0x88, 0x4c, 0x87, 0x75, 0xac, 0xe3, + 0xd3, 0x9a, 0x76, 0x72, 0x5a, 0xd3, 0xbe, 0x9e, 0xd6, 0xb4, 0xb7, 0x67, 0xb5, 0xcc, 0xc9, 0x59, + 0x2d, 0xf3, 0xe5, 0xac, 0x96, 0x79, 0xb1, 0xed, 0x13, 0x3e, 0x88, 0x1d, 0xc3, 0xa5, 0x43, 0xf5, + 0x37, 0x6b, 0x12, 0xc7, 0xdd, 0xf2, 0xa9, 0x39, 0xbe, 0x6f, 0x0e, 0xa9, 0x17, 0x07, 0x98, 0xc9, + 0x8f, 0xc2, 0xdd, 0xd6, 0x96, 0xfa, 0x2e, 0xf0, 0xc9, 0x08, 0x33, 0x27, 0x2f, 0x7e, 0xb2, 0x7b, + 0xdf, 0x03, 0x00, 0x00, 0xff, 0xff, 0xc6, 0xd1, 0x94, 0xf6, 0x37, 0x06, 0x00, 0x00, +>>>>>>> 40d0ff7 (fix: add cosmos_proto.implements_interface (#1740)) } func (this *UpgradeProposal) Equal(that interface{}) bool { diff --git a/proto/ibc/core/client/v1/client.proto b/proto/ibc/core/client/v1/client.proto index 657d99ed204..f97263c4fcf 100644 --- a/proto/ibc/core/client/v1/client.proto +++ b/proto/ibc/core/client/v1/client.proto @@ -7,6 +7,7 @@ option go_package = "github.com/cosmos/ibc-go/v3/modules/core/02-client/types"; import "gogoproto/gogo.proto"; import "google/protobuf/any.proto"; import "cosmos/upgrade/v1beta1/upgrade.proto"; +import "cosmos_proto/cosmos.proto"; // IdentifiedClientState defines a client state with an additional client // identifier field. @@ -41,7 +42,8 @@ message ClientConsensusStates { // handler may fail if the subject and the substitute do not match in client and // chain parameters (with exception to latest height, frozen height, and chain-id). message ClientUpdateProposal { - option (gogoproto.goproto_getters) = false; + option (gogoproto.goproto_getters) = false; + option (cosmos_proto.implements_interface) = "cosmos.gov.v1beta1.Content"; // the title of the update proposal string title = 1; // the description of the proposal @@ -56,9 +58,10 @@ message ClientUpdateProposal { // UpgradeProposal is a gov Content type for initiating an IBC breaking // upgrade. message UpgradeProposal { - option (gogoproto.goproto_getters) = false; - option (gogoproto.goproto_stringer) = false; - option (gogoproto.equal) = true; + option (gogoproto.goproto_getters) = false; + option (gogoproto.goproto_stringer) = false; + option (gogoproto.equal) = true; + option (cosmos_proto.implements_interface) = "cosmos.gov.v1beta1.Content"; string title = 1; string description = 2; From 963f792dd0dc848c0d89d053abb1c3b260f93953 Mon Sep 17 00:00:00 2001 From: crodriguezvega Date: Thu, 28 Jul 2022 22:29:39 +0200 Subject: [PATCH 2/2] fix conflicts --- CHANGELOG.md | 16 --- modules/core/02-client/types/client.pb.go | 137 +++++++--------------- 2 files changed, 44 insertions(+), 109 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b1f988ca360..41418c70a07 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,24 +44,8 @@ Ref: https://keepachangelog.com/en/1.0.0/ ### Improvements -<<<<<<< HEAD * (core/02-client) [\#1570](https://github.com/cosmos/ibc-go/pull/1570) Emitting an event when handling an upgrade client proposal. -======= -* (linting) [\#1418](https://github.com/cosmos/ibc-go/pull/1418) Fix linting errors, resulting compatiblity with go1.18 linting style, golangci-lint 1.46.2 and the revivie linter. This caused breaking changes in core/04-channel, core/ante, and the testing library. -* (app/20-transfer) [\#1680](https://github.com/cosmos/ibc-go/pull/1680) Adds migration to correct any malformed trace path information of tokens with denoms that contains slashes. The transfer module consensus version has been bumped to 2. -* (app/20-transfer) [\#1730](https://github.com/cosmos/ibc-go/pull/1730) parse the ics20 denomination provided via a packet using the channel identifier format specified by ibc-go. -* (cleanup) [\#1335](https://github.com/cosmos/ibc-go/pull/1335/) `gofumpt -w -l .` to standardize the code layout more strictly than `go fmt ./...` -* (middleware) [\#1022](https://github.com/cosmos/ibc-go/pull/1022) Add `GetAppVersion` to the ICS4Wrapper interface. This function should be used by IBC applications to obtain their own version since the version set in the channel structure may be wrapped many times by middleware. -* (modules/core/04-channel) [\#1232](https://github.com/cosmos/ibc-go/pull/1232) Updating params on `NewPacketID` and moving to bottom of file. -* (modules/core/04-channel) [\#1232](https://github.com/cosmos/ibc-go/pull/1232) Updating params on `NewPacketId` and moving to bottom of file. -* (app/29-fee) [\#1305](https://github.com/cosmos/ibc-go/pull/1305) Change version string for fee module to `ics29-1` -* (app/29-fee) [\#1341](https://github.com/cosmos/ibc-go/pull/1341) Check if the fee module is locked and if the fee module is enabled before refunding all fees -* (transfer) [\#1414](https://github.com/cosmos/ibc-go/pull/1414) Emitting Sender address from `fungible_token_packet` events in `OnRecvPacket` and `OnAcknowledgementPacket`. -* (testing/simapp) [\#1397](https://github.com/cosmos/ibc-go/pull/1397) Adding mock module to maccperms and adding check to ensure mock module is not a blocked account address. -* (core/02-client) [\#1570](https://github.com/cosmos/ibc-go/pull/1570) Emitting an event when handling an upgrade client proposal. -* (modules/light-clients/07-tendermint) [\#1713](https://github.com/cosmos/ibc-go/pull/1713) Allow client upgrade proposals to update `TrustingPeriod`. See ADR-026 for context. * (core/client) [\#1740](https://github.com/cosmos/ibc-go/pull/1740) Add `cosmos_proto.implements_interface` to adhere to guidelines in [Cosmos SDK ADR 019](https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-019-protobuf-state-encoding.md#safe-usage-of-any) for annotating `google.protobuf.Any` types ->>>>>>> 40d0ff7 (fix: add cosmos_proto.implements_interface (#1740)) ### Features diff --git a/modules/core/02-client/types/client.pb.go b/modules/core/02-client/types/client.pb.go index 369b1296efb..86bba961602 100644 --- a/modules/core/02-client/types/client.pb.go +++ b/modules/core/02-client/types/client.pb.go @@ -398,102 +398,53 @@ func init() { func init() { proto.RegisterFile("ibc/core/client/v1/client.proto", fileDescriptor_b6bc4c8185546947) } var fileDescriptor_b6bc4c8185546947 = []byte{ -<<<<<<< HEAD - // 705 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x54, 0x3f, 0x6f, 0xd3, 0x4e, - 0x18, 0x8e, 0xdb, 0xfc, 0xa2, 0xe6, 0x52, 0x35, 0xfd, 0xb9, 0x29, 0x0d, 0xa1, 0xca, 0x45, 0x27, - 0x86, 0x0c, 0xd4, 0x26, 0xa9, 0x84, 0xaa, 0x6c, 0x24, 0x4b, 0x3b, 0x80, 0x82, 0x51, 0x85, 0x60, - 0x89, 0xfc, 0xe7, 0xea, 0x5c, 0xe5, 0xf8, 0x22, 0xdf, 0x39, 0x90, 0x6f, 0xc0, 0xc8, 0xc8, 0xc0, - 0xd0, 0x6f, 0xc0, 0x97, 0x60, 0xe8, 0xd8, 0x91, 0xc9, 0x42, 0xed, 0xc2, 0x4a, 0x56, 0x16, 0x94, - 0xbb, 0x73, 0x1b, 0xf7, 0x0f, 0x42, 0xb0, 0xdd, 0x3d, 0xf7, 0xdc, 0x73, 0xcf, 0xf3, 0xda, 0xef, - 0x0b, 0x20, 0x71, 0x5c, 0xd3, 0xa5, 0x11, 0x36, 0xdd, 0x80, 0xe0, 0x90, 0x9b, 0x93, 0x96, 0x5a, - 0x19, 0xe3, 0x88, 0x72, 0xaa, 0xeb, 0xc4, 0x71, 0x8d, 0x39, 0xc1, 0x50, 0xf0, 0xa4, 0x55, 0xab, - 0xf8, 0xd4, 0xa7, 0xe2, 0xd8, 0x9c, 0xaf, 0x24, 0xb3, 0x76, 0xdf, 0xa7, 0xd4, 0x0f, 0xb0, 0x29, - 0x76, 0x4e, 0x7c, 0x64, 0xda, 0xe1, 0x54, 0x1d, 0x3d, 0x74, 0x29, 0x1b, 0x51, 0x66, 0xc6, 0x63, - 0x3f, 0xb2, 0x3d, 0x6c, 0x4e, 0x5a, 0x0e, 0xe6, 0x76, 0x2b, 0xdd, 0x4b, 0x16, 0xfa, 0xa4, 0x81, - 0xcd, 0x03, 0x0f, 0x87, 0x9c, 0x1c, 0x11, 0xec, 0xf5, 0xc4, 0x73, 0x2f, 0xb9, 0xcd, 0xb1, 0xde, - 0x02, 0x45, 0xf9, 0xfa, 0x80, 0x78, 0x55, 0xad, 0xa1, 0x35, 0x8b, 0xdd, 0xca, 0x2c, 0x81, 0xeb, - 0x53, 0x7b, 0x14, 0x74, 0xd0, 0xe5, 0x11, 0xb2, 0x56, 0xe4, 0xfa, 0xc0, 0xd3, 0xfb, 0x60, 0x55, - 0xe1, 0x6c, 0x2e, 0x51, 0x5d, 0x6a, 0x68, 0xcd, 0x52, 0xbb, 0x62, 0x48, 0x93, 0x46, 0x6a, 0xd2, - 0x78, 0x1a, 0x4e, 0xbb, 0x5b, 0xb3, 0x04, 0x6e, 0x64, 0xb4, 0xc4, 0x1d, 0x64, 0x95, 0xdc, 0x2b, - 0x13, 0xe8, 0xb3, 0x06, 0xaa, 0x3d, 0x1a, 0x32, 0x1c, 0xb2, 0x98, 0x09, 0xe8, 0x15, 0xe1, 0xc3, - 0x7d, 0x4c, 0xfc, 0x21, 0xd7, 0xf7, 0x40, 0x61, 0x28, 0x56, 0xc2, 0x5e, 0xa9, 0x5d, 0x33, 0x6e, - 0xd6, 0xcd, 0x90, 0xdc, 0x6e, 0xfe, 0x34, 0x81, 0x39, 0x4b, 0xf1, 0xf5, 0xd7, 0xa0, 0xec, 0xa6, - 0xaa, 0x7f, 0xe0, 0xb5, 0x36, 0x4b, 0xe0, 0x3d, 0xe5, 0x35, 0x7b, 0x0d, 0x59, 0x6b, 0x6e, 0xc6, - 0x1e, 0xfa, 0xa2, 0x81, 0x4d, 0x59, 0xc6, 0xac, 0x6f, 0xf6, 0x37, 0x05, 0x7d, 0x07, 0xd6, 0xaf, - 0x3d, 0xc8, 0xaa, 0x4b, 0x8d, 0xe5, 0x66, 0xa9, 0xfd, 0xe8, 0xb6, 0xac, 0x77, 0x55, 0xaa, 0x0b, - 0xe7, 0xe9, 0x67, 0x09, 0xdc, 0xba, 0x35, 0x04, 0x43, 0x56, 0x39, 0x9b, 0x82, 0xa1, 0x1f, 0x1a, - 0xa8, 0xc8, 0x18, 0x87, 0x63, 0xcf, 0xe6, 0xb8, 0x1f, 0xd1, 0x31, 0x65, 0x76, 0xa0, 0x57, 0xc0, - 0x7f, 0x9c, 0xf0, 0x00, 0xcb, 0x04, 0x96, 0xdc, 0xe8, 0x0d, 0x50, 0xf2, 0x30, 0x73, 0x23, 0x32, - 0xe6, 0x84, 0x86, 0xa2, 0x98, 0x45, 0x6b, 0x11, 0xd2, 0xf7, 0xc1, 0xff, 0x2c, 0x76, 0x8e, 0xb1, - 0xcb, 0x07, 0x57, 0x55, 0x58, 0x16, 0x55, 0xd8, 0x9e, 0x25, 0xb0, 0x2a, 0x9d, 0xdd, 0xa0, 0x20, - 0xab, 0xac, 0xb0, 0x5e, 0x5a, 0x94, 0x17, 0xa0, 0xc2, 0x62, 0x87, 0x71, 0xc2, 0x63, 0x8e, 0x17, - 0xc4, 0xf2, 0x42, 0x0c, 0xce, 0x12, 0xf8, 0xe0, 0x52, 0xec, 0x06, 0x0b, 0x59, 0xfa, 0x15, 0x9c, - 0x4a, 0x76, 0xf2, 0xef, 0x4f, 0x60, 0x0e, 0xfd, 0xd4, 0x40, 0xf9, 0x50, 0x76, 0xc7, 0x3f, 0xc7, - 0x7d, 0x02, 0xf2, 0xe3, 0xc0, 0x0e, 0x45, 0xc2, 0x52, 0x7b, 0xdb, 0x90, 0xcd, 0x68, 0xa4, 0xcd, - 0xa7, 0x9a, 0xd1, 0xe8, 0x07, 0x76, 0xa8, 0xfe, 0x4d, 0xc1, 0xd7, 0x8f, 0xc1, 0xa6, 0xe2, 0x78, - 0x83, 0x4c, 0x2f, 0xe5, 0x7f, 0xf3, 0x7f, 0x36, 0x66, 0x09, 0xdc, 0x96, 0x99, 0x6f, 0xbd, 0x8c, - 0xac, 0x8d, 0x14, 0x5f, 0xe8, 0xf0, 0xce, 0xea, 0x3c, 0xf5, 0xc7, 0x13, 0x98, 0xfb, 0x7e, 0x02, - 0xb5, 0xf9, 0x24, 0x28, 0xa8, 0xc6, 0xea, 0x81, 0x72, 0x84, 0x27, 0x84, 0x11, 0x1a, 0x0e, 0xc2, - 0x78, 0xe4, 0xe0, 0x48, 0xc4, 0xcf, 0x2f, 0x36, 0xc2, 0x35, 0x02, 0xb2, 0xd6, 0x52, 0xe4, 0xb9, - 0x00, 0x32, 0x22, 0xaa, 0x4d, 0x97, 0xee, 0x14, 0x91, 0x84, 0x05, 0x11, 0xe9, 0xa4, 0xb3, 0x92, - 0x5a, 0x44, 0xcf, 0x40, 0xa1, 0x6f, 0x47, 0xf6, 0x88, 0xcd, 0x85, 0xed, 0x20, 0xa0, 0x6f, 0x2f, - 0x43, 0xb2, 0xaa, 0xd6, 0x58, 0x6e, 0x16, 0x17, 0x85, 0xaf, 0x11, 0x90, 0xb5, 0xa6, 0x10, 0x99, - 0x9f, 0x75, 0xad, 0xd3, 0xf3, 0xba, 0x76, 0x76, 0x5e, 0xd7, 0xbe, 0x9d, 0xd7, 0xb5, 0x0f, 0x17, - 0xf5, 0xdc, 0xd9, 0x45, 0x3d, 0xf7, 0xf5, 0xa2, 0x9e, 0x7b, 0xb3, 0xe7, 0x13, 0x3e, 0x8c, 0x1d, - 0xc3, 0xa5, 0x23, 0x53, 0x8d, 0x50, 0xe2, 0xb8, 0x3b, 0x3e, 0x35, 0x27, 0xbb, 0xe6, 0x88, 0x7a, - 0x71, 0x80, 0x99, 0x9c, 0xde, 0x8f, 0xdb, 0x3b, 0x6a, 0x80, 0xf3, 0xe9, 0x18, 0x33, 0xa7, 0x20, - 0x3e, 0xca, 0xee, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xb6, 0x6f, 0x16, 0x77, 0xe0, 0x05, 0x00, - 0x00, -======= // 734 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x55, 0xbd, 0x6e, 0x13, 0x4b, 0x18, 0xf5, 0x3a, 0xbe, 0x56, 0x3c, 0xbe, 0x8a, 0x73, 0x37, 0xce, 0x8d, 0xaf, 0x6f, 0xe4, 0xb1, - 0x46, 0x14, 0x16, 0x22, 0xbb, 0xd8, 0x08, 0x14, 0xb9, 0xc3, 0x6e, 0x92, 0x02, 0x64, 0x16, 0x45, - 0x08, 0x1a, 0x6b, 0x7f, 0x26, 0xeb, 0x89, 0xd6, 0x3b, 0xd6, 0xce, 0xac, 0xc1, 0x6f, 0x40, 0x07, - 0x25, 0x48, 0x29, 0xf2, 0x06, 0x34, 0x3c, 0x02, 0x45, 0xca, 0x88, 0x8a, 0x6a, 0x85, 0x92, 0x86, - 0xda, 0x4f, 0x80, 0x3c, 0x33, 0x9b, 0xd8, 0xf9, 0x01, 0x04, 0xdd, 0xcc, 0x99, 0xb3, 0x67, 0xce, - 0x77, 0xbc, 0xc7, 0x0b, 0x20, 0x71, 0x5c, 0xd3, 0xa5, 0x11, 0x36, 0xdd, 0x80, 0xe0, 0x90, 0x9b, - 0xe3, 0xa6, 0x5a, 0x19, 0xa3, 0x88, 0x72, 0xaa, 0xeb, 0xc4, 0x71, 0x8d, 0x19, 0xc1, 0x50, 0xf0, - 0xb8, 0x59, 0x2d, 0xfb, 0xd4, 0xa7, 0xe2, 0xd8, 0x9c, 0xad, 0x24, 0xb3, 0xfa, 0x9f, 0x4f, 0xa9, - 0x1f, 0x60, 0x53, 0xec, 0x9c, 0x78, 0xdf, 0xb4, 0xc3, 0x89, 0x3a, 0xba, 0xe5, 0x52, 0x36, 0xa4, - 0xcc, 0x8c, 0x47, 0x7e, 0x64, 0x7b, 0xd8, 0x1c, 0x37, 0x1d, 0xcc, 0xed, 0x66, 0xba, 0x4f, 0x05, - 0x24, 0xab, 0x2f, 0x95, 0xe5, 0x46, 0x1e, 0xa1, 0x43, 0x0d, 0xac, 0xef, 0x7a, 0x38, 0xe4, 0x64, - 0x9f, 0x60, 0xaf, 0x2b, 0x9c, 0x3c, 0xe5, 0x36, 0xc7, 0x7a, 0x13, 0x14, 0xa4, 0xb1, 0x3e, 0xf1, - 0x2a, 0x5a, 0x5d, 0x6b, 0x14, 0x3a, 0xe5, 0x69, 0x02, 0x57, 0x27, 0xf6, 0x30, 0x68, 0xa3, 0xf3, - 0x23, 0x64, 0x2d, 0xcb, 0xf5, 0xae, 0xa7, 0xf7, 0xc0, 0xdf, 0x0a, 0x67, 0x33, 0x89, 0x4a, 0xb6, - 0xae, 0x35, 0x8a, 0xad, 0xb2, 0x21, 0xfd, 0x1b, 0xa9, 0x7f, 0xe3, 0x61, 0x38, 0xe9, 0x6c, 0x4c, - 0x13, 0xb8, 0xb6, 0xa0, 0x25, 0x9e, 0x41, 0x56, 0xd1, 0xbd, 0x30, 0x81, 0x3e, 0x68, 0xa0, 0xd2, - 0xa5, 0x21, 0xc3, 0x21, 0x8b, 0x99, 0x80, 0x9e, 0x11, 0x3e, 0xd8, 0xc1, 0xc4, 0x1f, 0x70, 0x7d, - 0x1b, 0xe4, 0x07, 0x62, 0x25, 0xec, 0x15, 0x5b, 0x55, 0xe3, 0x6a, 0xa4, 0x86, 0xe4, 0x76, 0x72, - 0xc7, 0x09, 0xcc, 0x58, 0x8a, 0xaf, 0x3f, 0x07, 0x25, 0x37, 0x55, 0xfd, 0x05, 0xaf, 0xd5, 0x69, - 0x02, 0xff, 0x55, 0x5e, 0x17, 0x1f, 0x43, 0xd6, 0x8a, 0xbb, 0x60, 0x0f, 0x7d, 0xd2, 0xc0, 0xba, - 0x8c, 0x71, 0xd1, 0x37, 0xfb, 0x9d, 0x40, 0x5f, 0x81, 0xd5, 0x4b, 0x17, 0xb2, 0x4a, 0xb6, 0xbe, - 0xd4, 0x28, 0xb6, 0xee, 0x5c, 0x37, 0xeb, 0x4d, 0x49, 0x75, 0xe0, 0x6c, 0xfa, 0x69, 0x02, 0x37, - 0xae, 0x1d, 0x82, 0x21, 0xab, 0xb4, 0x38, 0x05, 0x43, 0x6f, 0xb2, 0xa0, 0x2c, 0xc7, 0xd8, 0x1b, - 0x79, 0x36, 0xc7, 0xbd, 0x88, 0x8e, 0x28, 0xb3, 0x03, 0xbd, 0x0c, 0xfe, 0xe2, 0x84, 0x07, 0x58, - 0x4e, 0x60, 0xc9, 0x8d, 0x5e, 0x07, 0x45, 0x0f, 0x33, 0x37, 0x22, 0x23, 0x4e, 0x68, 0x28, 0xc2, - 0x2c, 0x58, 0xf3, 0x90, 0xbe, 0x03, 0xfe, 0x61, 0xb1, 0x73, 0x80, 0x5d, 0xde, 0xbf, 0x48, 0x61, - 0x49, 0xa4, 0xb0, 0x39, 0x4d, 0x60, 0x45, 0x3a, 0xbb, 0x42, 0x41, 0x56, 0x49, 0x61, 0xdd, 0x34, - 0x94, 0x27, 0xa0, 0xcc, 0x62, 0x87, 0x71, 0xc2, 0x63, 0x8e, 0xe7, 0xc4, 0x72, 0x42, 0x0c, 0x4e, - 0x13, 0xf8, 0xff, 0xb9, 0xd8, 0x15, 0x16, 0xb2, 0xf4, 0x0b, 0x38, 0x95, 0x6c, 0xa3, 0xd7, 0x47, - 0x30, 0xf3, 0xf9, 0xe3, 0x56, 0x55, 0x75, 0xc3, 0xa7, 0x63, 0x43, 0x55, 0x69, 0x16, 0x2a, 0xc7, - 0x21, 0x47, 0xef, 0xb3, 0xa0, 0xb4, 0x27, 0x6b, 0xf5, 0xc7, 0x61, 0x3c, 0x00, 0xb9, 0x51, 0x60, - 0x87, 0x62, 0xfe, 0x62, 0x6b, 0xd3, 0x50, 0xd7, 0xa6, 0xad, 0x4d, 0xaf, 0xee, 0x05, 0x76, 0xa8, - 0xde, 0x5c, 0xc1, 0xd7, 0x0f, 0xc0, 0xba, 0xe2, 0x78, 0xfd, 0x85, 0xa6, 0xe5, 0x7e, 0xf0, 0xf6, - 0xd6, 0xa7, 0x09, 0xdc, 0x94, 0x89, 0x5c, 0xfb, 0x30, 0xb2, 0xd6, 0x52, 0x7c, 0xae, 0xff, 0xed, - 0xdb, 0xb3, 0x4c, 0xde, 0x1d, 0xc1, 0xcc, 0xb7, 0x23, 0xa8, 0xfd, 0x24, 0x9b, 0x43, 0x0d, 0xe4, - 0x55, 0x29, 0xbb, 0xa0, 0x14, 0xe1, 0x31, 0x61, 0x84, 0x86, 0xfd, 0x30, 0x1e, 0x3a, 0x38, 0x12, - 0xe1, 0xe4, 0xe6, 0x4b, 0x74, 0x89, 0x80, 0xac, 0x95, 0x14, 0x79, 0x2c, 0x80, 0x05, 0x11, 0x55, - 0xf1, 0xec, 0x8d, 0x22, 0x92, 0x30, 0x27, 0x22, 0x9d, 0xb4, 0x97, 0xd3, 0x01, 0xd0, 0x23, 0x90, - 0xef, 0xd9, 0x91, 0x3d, 0x64, 0x33, 0x61, 0x3b, 0x08, 0xe8, 0xcb, 0xf3, 0x08, 0x58, 0x45, 0xab, - 0x2f, 0x35, 0x0a, 0xf3, 0xc2, 0x97, 0x08, 0xc8, 0x5a, 0x51, 0x88, 0x4c, 0x87, 0x75, 0xac, 0xe3, - 0xd3, 0x9a, 0x76, 0x72, 0x5a, 0xd3, 0xbe, 0x9e, 0xd6, 0xb4, 0xb7, 0x67, 0xb5, 0xcc, 0xc9, 0x59, - 0x2d, 0xf3, 0xe5, 0xac, 0x96, 0x79, 0xb1, 0xed, 0x13, 0x3e, 0x88, 0x1d, 0xc3, 0xa5, 0x43, 0xf5, - 0x37, 0x6b, 0x12, 0xc7, 0xdd, 0xf2, 0xa9, 0x39, 0xbe, 0x6f, 0x0e, 0xa9, 0x17, 0x07, 0x98, 0xc9, - 0x8f, 0xc2, 0xdd, 0xd6, 0x96, 0xfa, 0x2e, 0xf0, 0xc9, 0x08, 0x33, 0x27, 0x2f, 0x7e, 0xb2, 0x7b, - 0xdf, 0x03, 0x00, 0x00, 0xff, 0xff, 0xc6, 0xd1, 0x94, 0xf6, 0x37, 0x06, 0x00, 0x00, ->>>>>>> 40d0ff7 (fix: add cosmos_proto.implements_interface (#1740)) + 0x46, 0x14, 0x16, 0x22, 0xbb, 0xd8, 0x91, 0x50, 0xe4, 0x0e, 0xbb, 0x49, 0x0a, 0x90, 0x59, 0x14, + 0x21, 0x68, 0xac, 0xfd, 0x99, 0xac, 0x27, 0x5a, 0xef, 0x58, 0x3b, 0xb3, 0x06, 0xbf, 0x01, 0x1d, + 0x94, 0x20, 0xa5, 0xc8, 0x1b, 0xd0, 0xf0, 0x08, 0x14, 0x29, 0x23, 0x2a, 0xaa, 0x15, 0x4a, 0x1a, + 0x6a, 0x3f, 0x01, 0xf2, 0xcc, 0x6c, 0x62, 0xe7, 0x07, 0x10, 0x74, 0x33, 0x67, 0xce, 0x9e, 0x39, + 0xdf, 0xf1, 0x1e, 0x2f, 0x80, 0xc4, 0x71, 0x4d, 0x97, 0x46, 0xd8, 0x74, 0x03, 0x82, 0x43, 0x6e, + 0x8e, 0x9b, 0x6a, 0x65, 0x8c, 0x22, 0xca, 0xa9, 0xae, 0x13, 0xc7, 0x35, 0x66, 0x04, 0x43, 0xc1, + 0xe3, 0x66, 0xb5, 0xec, 0x53, 0x9f, 0x8a, 0x63, 0x73, 0xb6, 0x92, 0xcc, 0xea, 0x7f, 0x3e, 0xa5, + 0x7e, 0x80, 0x4d, 0xb1, 0x73, 0xe2, 0x03, 0xd3, 0x0e, 0x27, 0xea, 0xe8, 0x8e, 0x4b, 0xd9, 0x90, + 0x32, 0x33, 0x1e, 0xf9, 0x91, 0xed, 0x61, 0x73, 0xdc, 0x74, 0x30, 0xb7, 0x9b, 0xe9, 0x3e, 0x15, + 0x90, 0xac, 0xbe, 0x54, 0x96, 0x1b, 0x79, 0x84, 0x8e, 0x34, 0xb0, 0xbe, 0xe7, 0xe1, 0x90, 0x93, + 0x03, 0x82, 0xbd, 0xae, 0x70, 0xf2, 0x94, 0xdb, 0x1c, 0xeb, 0x4d, 0x50, 0x90, 0xc6, 0xfa, 0xc4, + 0xab, 0x68, 0x75, 0xad, 0x51, 0xe8, 0x94, 0xa7, 0x09, 0x5c, 0x9d, 0xd8, 0xc3, 0xa0, 0x8d, 0x2e, + 0x8e, 0x90, 0xb5, 0x2c, 0xd7, 0x7b, 0x9e, 0xde, 0x03, 0x7f, 0x2b, 0x9c, 0xcd, 0x24, 0x2a, 0xd9, + 0xba, 0xd6, 0x28, 0xb6, 0xca, 0x86, 0xf4, 0x6f, 0xa4, 0xfe, 0x8d, 0x87, 0xe1, 0xa4, 0xb3, 0x31, + 0x4d, 0xe0, 0xda, 0x82, 0x96, 0x78, 0x06, 0x59, 0x45, 0xf7, 0xd2, 0x04, 0xfa, 0xa0, 0x81, 0x4a, + 0x97, 0x86, 0x0c, 0x87, 0x2c, 0x66, 0x02, 0x7a, 0x46, 0xf8, 0x60, 0x17, 0x13, 0x7f, 0xc0, 0xf5, + 0x1d, 0x90, 0x1f, 0x88, 0x95, 0xb0, 0x57, 0x6c, 0x55, 0x8d, 0xeb, 0x91, 0x1a, 0x92, 0xdb, 0xc9, + 0x9d, 0x24, 0x30, 0x63, 0x29, 0xbe, 0xfe, 0x1c, 0x94, 0xdc, 0x54, 0xf5, 0x17, 0xbc, 0x56, 0xa7, + 0x09, 0xfc, 0x57, 0x79, 0x5d, 0x7c, 0x0c, 0x59, 0x2b, 0xee, 0x82, 0x3d, 0xf4, 0x49, 0x03, 0xeb, + 0x32, 0xc6, 0x45, 0xdf, 0xec, 0x77, 0x02, 0x7d, 0x05, 0x56, 0xaf, 0x5c, 0xc8, 0x2a, 0xd9, 0xfa, + 0x52, 0xa3, 0xd8, 0xba, 0x77, 0xd3, 0xac, 0xb7, 0x25, 0xd5, 0x81, 0xb3, 0xe9, 0xa7, 0x09, 0xdc, + 0xb8, 0x71, 0x08, 0x86, 0xac, 0xd2, 0xe2, 0x14, 0x0c, 0xbd, 0xc9, 0x82, 0xb2, 0x1c, 0x63, 0x7f, + 0xe4, 0xd9, 0x1c, 0xf7, 0x22, 0x3a, 0xa2, 0xcc, 0x0e, 0xf4, 0x32, 0xf8, 0x8b, 0x13, 0x1e, 0x60, + 0x39, 0x81, 0x25, 0x37, 0x7a, 0x1d, 0x14, 0x3d, 0xcc, 0xdc, 0x88, 0x8c, 0x38, 0xa1, 0xa1, 0x08, + 0xb3, 0x60, 0xcd, 0x43, 0xfa, 0x2e, 0xf8, 0x87, 0xc5, 0xce, 0x21, 0x76, 0x79, 0xff, 0x32, 0x85, + 0x25, 0x91, 0xc2, 0xe6, 0x34, 0x81, 0x15, 0xe9, 0xec, 0x1a, 0x05, 0x59, 0x25, 0x85, 0x75, 0xd3, + 0x50, 0x9e, 0x80, 0x32, 0x8b, 0x1d, 0xc6, 0x09, 0x8f, 0x39, 0x9e, 0x13, 0xcb, 0x09, 0x31, 0x38, + 0x4d, 0xe0, 0xff, 0x17, 0x62, 0xd7, 0x58, 0xc8, 0xd2, 0x2f, 0xe1, 0x54, 0xb2, 0x8d, 0x5e, 0x1f, + 0xc3, 0xcc, 0xe7, 0x8f, 0x5b, 0x55, 0xd5, 0x0d, 0x9f, 0x8e, 0x0d, 0x55, 0xa5, 0x59, 0xa8, 0x1c, + 0x87, 0x1c, 0xbd, 0xcf, 0x82, 0xd2, 0xbe, 0xac, 0xd5, 0x1f, 0x87, 0xf1, 0x00, 0xe4, 0x46, 0x81, + 0x1d, 0x8a, 0xf9, 0x8b, 0xad, 0x4d, 0x43, 0x5d, 0x9b, 0xb6, 0x36, 0xbd, 0xba, 0x17, 0xd8, 0xa1, + 0x7a, 0x73, 0x05, 0x5f, 0x3f, 0x04, 0xeb, 0x8a, 0xe3, 0xf5, 0x17, 0x9a, 0x96, 0xfb, 0xc1, 0xdb, + 0x5b, 0x9f, 0x26, 0x70, 0x53, 0x26, 0x72, 0xe3, 0xc3, 0xc8, 0x5a, 0x4b, 0xf1, 0xb9, 0xfe, 0xb7, + 0xef, 0xce, 0x32, 0x79, 0x77, 0x0c, 0x33, 0xdf, 0x8e, 0xa1, 0xf6, 0x93, 0x6c, 0x8e, 0x34, 0x90, + 0x57, 0xa5, 0xec, 0x82, 0x52, 0x84, 0xc7, 0x84, 0x11, 0x1a, 0xf6, 0xc3, 0x78, 0xe8, 0xe0, 0x48, + 0x84, 0x93, 0x9b, 0x2f, 0xd1, 0x15, 0x02, 0xb2, 0x56, 0x52, 0xe4, 0xb1, 0x00, 0x16, 0x44, 0x54, + 0xc5, 0xb3, 0xb7, 0x8a, 0x48, 0xc2, 0x9c, 0x88, 0x74, 0xd2, 0x5e, 0x4e, 0x07, 0x40, 0x8f, 0x40, + 0xbe, 0x67, 0x47, 0xf6, 0x90, 0xcd, 0x84, 0xed, 0x20, 0xa0, 0x2f, 0x2f, 0x22, 0x60, 0x15, 0xad, + 0xbe, 0xd4, 0x28, 0xcc, 0x0b, 0x5f, 0x21, 0x20, 0x6b, 0x45, 0x21, 0x32, 0x1d, 0xd6, 0xb1, 0x4e, + 0xce, 0x6a, 0xda, 0xe9, 0x59, 0x4d, 0xfb, 0x7a, 0x56, 0xd3, 0xde, 0x9e, 0xd7, 0x32, 0xa7, 0xe7, + 0xb5, 0xcc, 0x97, 0xf3, 0x5a, 0xe6, 0xc5, 0x8e, 0x4f, 0xf8, 0x20, 0x76, 0x0c, 0x97, 0x0e, 0xd5, + 0xdf, 0xac, 0x49, 0x1c, 0x77, 0xcb, 0xa7, 0xe6, 0x78, 0xdb, 0x1c, 0x52, 0x2f, 0x0e, 0x30, 0x93, + 0x1f, 0x85, 0xfb, 0xad, 0x2d, 0xf5, 0x5d, 0xe0, 0x93, 0x11, 0x66, 0x4e, 0x5e, 0xfc, 0x64, 0xdb, + 0xdf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x08, 0xd1, 0x44, 0x6d, 0x37, 0x06, 0x00, 0x00, } func (this *UpgradeProposal) Equal(that interface{}) bool {