From 24ef629f3b7a4c7efff31d1aae2c533069e84aa1 Mon Sep 17 00:00:00 2001 From: Roshan Date: Wed, 20 Dec 2023 16:17:32 +0800 Subject: [PATCH 1/2] fix: remove `tags` field from existed msgs --- deployment/localup/localup_fullnode.sh | 2 +- proto/greenfield/storage/events.proto | 6 - proto/greenfield/storage/tx.proto | 9 - x/storage/client/cli/tx.go | 54 ++- x/storage/keeper/keeper.go | 6 - x/storage/keeper/msg_server.go | 4 +- x/storage/types/events.pb.go | 412 ++++++--------------- x/storage/types/message.go | 117 ------ x/storage/types/options.go | 3 - x/storage/types/tx.pb.go | 479 ++++++++----------------- 10 files changed, 309 insertions(+), 783 deletions(-) diff --git a/deployment/localup/localup_fullnode.sh b/deployment/localup/localup_fullnode.sh index a0975908a..f4512c12f 100644 --- a/deployment/localup/localup_fullnode.sh +++ b/deployment/localup/localup_fullnode.sh @@ -33,7 +33,7 @@ function init_fullnode() { cp ${workspace}/.local/validator0/config/config.toml ${workspace}/.local/dataseed${i}/config/config.toml # set state sync info - sed -i 'N;s/\# starting from the height of the snapshot\.\nenable = false/\# starting from the height of the snapshot\.\nenable = true/Mg'sed -i -e 'N;s/\# starting from the height of the snapshot\.\nenable = false/\# starting from the height of the snapshot\.\nenable = true/g' ${workspace}/.local/dataseed${i}/config/config.toml + sed -i -e 'N;s/\# starting from the height of the snapshot\.\nenable = false/\# starting from the height of the snapshot\.\nenable = true/g' ${workspace}/.local/dataseed${i}/config/config.toml sed -i -e "s/trust_height = 0/trust_height = ${trust_height}/g" ${workspace}/.local/dataseed${i}/config/config.toml sed -i -e "s/trust_hash = \"\"/trust_hash = \"${trust_hash}\"/g" ${workspace}/.local/dataseed${i}/config/config.toml sed -i -e "s/rpc_servers = \"\"/rpc_servers = \"${rpc_servers}\"/g" ${workspace}/.local/dataseed${i}/config/config.toml diff --git a/proto/greenfield/storage/events.proto b/proto/greenfield/storage/events.proto index 51f2269a7..0f9f9f1c0 100644 --- a/proto/greenfield/storage/events.proto +++ b/proto/greenfield/storage/events.proto @@ -38,8 +38,6 @@ message EventCreateBucket { uint32 global_virtual_group_family_id = 10; // status define the status of the bucket. BucketStatus status = 11; - // tags define the tag of the bucket - ResourceTags tags = 12; } // EventDeleteBucket is emitted on MsgDeleteBucket @@ -140,8 +138,6 @@ message EventCreateObject { repeated bytes checksums = 16; // local_virtual_group_id defines the unique id of lvg which the object stored uint32 local_virtual_group_id = 17; - // tags define the tag of the object - ResourceTags tags = 18; } // EventCancelCreateObject is emitted on MsgCancelCreateObject @@ -296,8 +292,6 @@ message EventCreateGroup { SourceType source_type = 4; // extra defines extra info for the group string extra = 5; - // tags define the tag of the group - ResourceTags tags = 6; } // EventDeleteGroup is emitted on MsgDeleteGroup diff --git a/proto/greenfield/storage/tx.proto b/proto/greenfield/storage/tx.proto index 9169abd1b..33762f592 100644 --- a/proto/greenfield/storage/tx.proto +++ b/proto/greenfield/storage/tx.proto @@ -89,9 +89,6 @@ message MsgCreateBucket { // The available read data for each user is the sum of the free read data provided by SP and // the ChargeReadQuota specified here. uint64 charged_read_quota = 7; - - // tags defines a list of tags which will be set to the bucket - ResourceTags tags = 8 [(gogoproto.nullable) = false]; } message MsgCreateBucketResponse { @@ -159,9 +156,6 @@ message MsgCreateObject { // redundancy_type can be ec or replica RedundancyType redundancy_type = 9; - - // tags defines a list of tags which will be set to the object - ResourceTags tags = 10 [(gogoproto.nullable) = false]; } message MsgCreateObjectResponse { @@ -287,9 +281,6 @@ message MsgCreateGroup { // extra defines extra info for the group string extra = 3; - - // tags defines a list of tags which will be set to the group - ResourceTags tags = 4 [(gogoproto.nullable) = false]; } message MsgCreateGroupResponse { diff --git a/x/storage/client/cli/tx.go b/x/storage/client/cli/tx.go index 1b5cf1174..ba97ee655 100644 --- a/x/storage/client/cli/tx.go +++ b/x/storage/client/cli/tx.go @@ -17,6 +17,7 @@ import ( "github.com/cosmos/cosmos-sdk/version" "github.com/spf13/cobra" + types2 "github.com/bnb-chain/greenfield/types" "github.com/bnb-chain/greenfield/types/common" gnfderrors "github.com/bnb-chain/greenfield/types/errors" "github.com/bnb-chain/greenfield/x/storage/types" @@ -124,7 +125,7 @@ func CmdCreateBucket() *cobra.Command { if err != nil { return err } - msg := types.NewMsgCreateBucket( + msgCreateBucket := types.NewMsgCreateBucket( clientCtx.GetFromAddress(), argBucketName, visibilityType, @@ -134,15 +135,20 @@ func CmdCreateBucket() *cobra.Command { approveSignatureBytes, chargedReadQuota, ) - if tags != nil { - msg.Tags = *tags + if err := msgCreateBucket.ValidateBasic(); err != nil { + return err } - if err := msg.ValidateBasic(); err != nil { - return err + if tags != nil { + grn := types2.NewBucketGRN(argBucketName) + msgSetTag := types.NewMsgSetTag(clientCtx.GetFromAddress(), grn.String(), tags) + if err := msgSetTag.ValidateBasic(); err != nil { + return err + } + return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msgCreateBucket, msgSetTag) } - return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg) + return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msgCreateBucket) }, } @@ -325,7 +331,7 @@ func CmdCreateObject() *cobra.Command { return types.ErrInvalidRedundancyType } - msg := types.NewMsgCreateObject( + msgCreateObject := types.NewMsgCreateObject( clientCtx.GetFromAddress(), argBucketName, argObjectName, @@ -337,14 +343,20 @@ func CmdCreateObject() *cobra.Command { approveTimeoutHeight, approveSignatureBytes, ) - if tags != nil { - msg.Tags = *tags + if err := msgCreateObject.ValidateBasic(); err != nil { + return err } - if err := msg.ValidateBasic(); err != nil { - return err + if tags != nil { + grn := types2.NewObjectGRN(argBucketName, argObjectName) + msgSetTag := types.NewMsgSetTag(clientCtx.GetFromAddress(), grn.String(), tags) + if err := msgSetTag.ValidateBasic(); err != nil { + return err + } + return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msgCreateObject, msgSetTag) } - return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg) + + return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msgCreateObject) }, } @@ -541,19 +553,25 @@ func CmdCreateGroup() *cobra.Command { tagsStr, _ := cmd.Flags().GetString(FlagTags) tags := GetTags(tagsStr) - msg := types.NewMsgCreateGroup( + msgCreateGroup := types.NewMsgCreateGroup( clientCtx.GetFromAddress(), argGroupName, extra, ) - if tags != nil { - msg.Tags = *tags + if err := msgCreateGroup.ValidateBasic(); err != nil { + return err } - if err := msg.ValidateBasic(); err != nil { - return err + if tags != nil { + grn := types2.NewGroupGRN(clientCtx.GetFromAddress(), argGroupName) + msgSetTag := types.NewMsgSetTag(clientCtx.GetFromAddress(), grn.String(), tags) + if err := msgSetTag.ValidateBasic(); err != nil { + return err + } + return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msgCreateGroup, msgSetTag) } - return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg) + + return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msgCreateGroup) }, } diff --git a/x/storage/keeper/keeper.go b/x/storage/keeper/keeper.go index 170bb2c98..ecb081f0c 100644 --- a/x/storage/keeper/keeper.go +++ b/x/storage/keeper/keeper.go @@ -139,7 +139,6 @@ func (k Keeper) CreateBucket( ChargedReadQuota: opts.ChargedReadQuota, PaymentAddress: paymentAcc.String(), GlobalVirtualGroupFamilyId: gvgFamily.Id, - Tags: opts.Tags, } internalBucketInfo := types.InternalBucketInfo{PriceTime: ctx.BlockTime().Unix()} @@ -174,7 +173,6 @@ func (k Keeper) CreateBucket( PaymentAddress: bucketInfo.PaymentAddress, PrimarySpId: sp.Id, GlobalVirtualGroupFamilyId: bucketInfo.GlobalVirtualGroupFamilyId, - Tags: bucketInfo.Tags, }); err != nil { return sdkmath.Uint{}, err } @@ -618,7 +616,6 @@ func (k Keeper) CreateObject( RedundancyType: opts.RedundancyType, SourceType: opts.SourceType, Checksums: opts.Checksums, - Tags: opts.Tags, } if objectInfo.PayloadSize == 0 { @@ -658,7 +655,6 @@ func (k Keeper) CreateObject( SourceType: objectInfo.SourceType, Checksums: objectInfo.Checksums, LocalVirtualGroupId: objectInfo.LocalVirtualGroupId, - Tags: opts.Tags, }); err != nil { return objectInfo.Id, err } @@ -1259,7 +1255,6 @@ func (k Keeper) CreateGroup( Id: k.GenNextGroupId(ctx), GroupName: groupName, Extra: opts.Extra, - Tags: opts.Tags, } // Can not create a group with the same name. @@ -1278,7 +1273,6 @@ func (k Keeper) CreateGroup( GroupId: groupInfo.Id, SourceType: groupInfo.SourceType, Extra: opts.Extra, - Tags: opts.Tags, }); err != nil { return sdkmath.ZeroUint(), err } diff --git a/x/storage/keeper/msg_server.go b/x/storage/keeper/msg_server.go index 9e144a5fe..407bd8113 100644 --- a/x/storage/keeper/msg_server.go +++ b/x/storage/keeper/msg_server.go @@ -45,7 +45,6 @@ func (k msgServer) CreateBucket(goCtx context.Context, msg *types.MsgCreateBucke SourceType: types.SOURCE_TYPE_ORIGIN, PrimarySpApproval: msg.PrimarySpApproval, ApprovalMsgBytes: msg.GetApprovalBytes(), - Tags: &msg.Tags, }) if err != nil { return nil, err @@ -122,7 +121,6 @@ func (k msgServer) CreateObject(goCtx context.Context, msg *types.MsgCreateObjec Checksums: msg.ExpectChecksums, PrimarySpApproval: msg.PrimarySpApproval, ApprovalMsgBytes: msg.GetApprovalBytes(), - Tags: &msg.Tags, }) if err != nil { return nil, err @@ -234,7 +232,7 @@ func (k msgServer) CreateGroup(goCtx context.Context, msg *types.MsgCreateGroup) ownerAcc := sdk.MustAccAddressFromHex(msg.Creator) - id, err := k.Keeper.CreateGroup(ctx, ownerAcc, msg.GroupName, storagetypes.CreateGroupOptions{Extra: msg.Extra, Tags: &msg.Tags}) + id, err := k.Keeper.CreateGroup(ctx, ownerAcc, msg.GroupName, storagetypes.CreateGroupOptions{Extra: msg.Extra}) if err != nil { return nil, err } diff --git a/x/storage/types/events.pb.go b/x/storage/types/events.pb.go index c946185ff..2ec9417c7 100644 --- a/x/storage/types/events.pb.go +++ b/x/storage/types/events.pb.go @@ -53,8 +53,6 @@ type EventCreateBucket struct { GlobalVirtualGroupFamilyId uint32 `protobuf:"varint,10,opt,name=global_virtual_group_family_id,json=globalVirtualGroupFamilyId,proto3" json:"global_virtual_group_family_id,omitempty"` // status define the status of the bucket. Status BucketStatus `protobuf:"varint,11,opt,name=status,proto3,enum=greenfield.storage.BucketStatus" json:"status,omitempty"` - // tags define the tag of the bucket - Tags *ResourceTags `protobuf:"bytes,12,opt,name=tags,proto3" json:"tags,omitempty"` } func (m *EventCreateBucket) Reset() { *m = EventCreateBucket{} } @@ -160,13 +158,6 @@ func (m *EventCreateBucket) GetStatus() BucketStatus { return BUCKET_STATUS_CREATED } -func (m *EventCreateBucket) GetTags() *ResourceTags { - if m != nil { - return m.Tags - } - return nil -} - // EventDeleteBucket is emitted on MsgDeleteBucket type EventDeleteBucket struct { // operator define the account address of operator who delete the bucket @@ -435,8 +426,6 @@ type EventCreateObject struct { Checksums [][]byte `protobuf:"bytes,16,rep,name=checksums,proto3" json:"checksums,omitempty"` // local_virtual_group_id defines the unique id of lvg which the object stored LocalVirtualGroupId uint32 `protobuf:"varint,17,opt,name=local_virtual_group_id,json=localVirtualGroupId,proto3" json:"local_virtual_group_id,omitempty"` - // tags define the tag of the object - Tags *ResourceTags `protobuf:"bytes,18,opt,name=tags,proto3" json:"tags,omitempty"` } func (m *EventCreateObject) Reset() { *m = EventCreateObject{} } @@ -570,13 +559,6 @@ func (m *EventCreateObject) GetLocalVirtualGroupId() uint32 { return 0 } -func (m *EventCreateObject) GetTags() *ResourceTags { - if m != nil { - return m.Tags - } - return nil -} - // EventCancelCreateObject is emitted on MsgCancelCreateObject type EventCancelCreateObject struct { // operator define the account address of operator who cancel create object @@ -1134,8 +1116,6 @@ type EventCreateGroup struct { SourceType SourceType `protobuf:"varint,4,opt,name=source_type,json=sourceType,proto3,enum=greenfield.storage.SourceType" json:"source_type,omitempty"` // extra defines extra info for the group Extra string `protobuf:"bytes,5,opt,name=extra,proto3" json:"extra,omitempty"` - // tags define the tag of the group - Tags *ResourceTags `protobuf:"bytes,6,opt,name=tags,proto3" json:"tags,omitempty"` } func (m *EventCreateGroup) Reset() { *m = EventCreateGroup{} } @@ -1199,13 +1179,6 @@ func (m *EventCreateGroup) GetExtra() string { return "" } -func (m *EventCreateGroup) GetTags() *ResourceTags { - if m != nil { - return m.Tags - } - return nil -} - // EventDeleteGroup is emitted on MsgDeleteGroup type EventDeleteGroup struct { // owner define the account address of group owner @@ -2437,115 +2410,114 @@ func init() { func init() { proto.RegisterFile("greenfield/storage/events.proto", fileDescriptor_946dcba4f763ddc4) } var fileDescriptor_946dcba4f763ddc4 = []byte{ - // 1727 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x5a, 0xcf, 0x8f, 0xdb, 0x4a, - 0x1d, 0x5f, 0xe7, 0xd7, 0x66, 0xc7, 0x9b, 0xa4, 0x6b, 0x96, 0x3e, 0xb3, 0xef, 0x91, 0xcd, 0xf3, - 0xe1, 0x91, 0x87, 0x68, 0x82, 0xf6, 0x3d, 0x50, 0x6f, 0xd5, 0xfe, 0x28, 0x28, 0x82, 0xfe, 0xc0, - 0xbb, 0xed, 0x81, 0x8b, 0x35, 0xb1, 0x67, 0xbd, 0xa6, 0xb6, 0xc7, 0x78, 0x26, 0xdb, 0xa6, 0xff, - 0x00, 0xe2, 0x80, 0xd4, 0x0b, 0x12, 0x5c, 0x7a, 0x44, 0x48, 0x08, 0x89, 0x43, 0xaf, 0xdc, 0xdb, - 0x5b, 0xe9, 0x89, 0x1f, 0x52, 0x41, 0xed, 0xa9, 0x48, 0x88, 0x3b, 0x27, 0xe4, 0x99, 0xb1, 0x63, - 0xc7, 0xd9, 0x66, 0x9d, 0xb2, 0xdd, 0x2d, 0xb7, 0x78, 0xf2, 0x99, 0xf1, 0xf7, 0xfb, 0x99, 0xcf, - 0xf7, 0xc7, 0x4c, 0x02, 0x36, 0xed, 0x10, 0x21, 0xff, 0xd0, 0x41, 0xae, 0xd5, 0x27, 0x14, 0x87, - 0xd0, 0x46, 0x7d, 0x74, 0x8c, 0x7c, 0x4a, 0x7a, 0x41, 0x88, 0x29, 0x56, 0x94, 0x09, 0xa0, 0x27, - 0x00, 0x1b, 0x5f, 0x33, 0x31, 0xf1, 0x30, 0x31, 0x18, 0xa2, 0xcf, 0x1f, 0x38, 0x7c, 0x63, 0xdd, - 0xc6, 0x36, 0xe6, 0xe3, 0xd1, 0x27, 0x31, 0xba, 0x69, 0x63, 0x6c, 0xbb, 0xa8, 0xcf, 0x9e, 0x86, - 0xa3, 0xc3, 0x3e, 0x75, 0x3c, 0x44, 0x28, 0xf4, 0x82, 0x04, 0x30, 0x31, 0x23, 0x44, 0x04, 0x8f, - 0x42, 0x13, 0xf5, 0xe9, 0x38, 0x40, 0x64, 0x06, 0x20, 0xb6, 0xd3, 0xc4, 0x9e, 0x87, 0x7d, 0x01, - 0x68, 0xcf, 0x00, 0xa4, 0x16, 0xd0, 0x7e, 0x5e, 0x05, 0x6b, 0xd7, 0x23, 0xc7, 0x76, 0x43, 0x04, - 0x29, 0xda, 0x19, 0x99, 0xf7, 0x10, 0x55, 0x7a, 0xa0, 0x8a, 0xef, 0xfb, 0x28, 0x54, 0xa5, 0x8e, - 0xd4, 0x5d, 0xd9, 0x51, 0x5f, 0x3c, 0xb9, 0xb2, 0x2e, 0xfc, 0xd9, 0xb6, 0xac, 0x10, 0x11, 0xb2, - 0x4f, 0x43, 0xc7, 0xb7, 0x75, 0x0e, 0x53, 0x36, 0x81, 0x3c, 0x64, 0x33, 0x0d, 0x1f, 0x7a, 0x48, - 0x2d, 0x45, 0xb3, 0x74, 0xc0, 0x87, 0x6e, 0x42, 0x0f, 0x29, 0x3b, 0x00, 0x1c, 0x3b, 0xc4, 0x19, - 0x3a, 0xae, 0x43, 0xc7, 0x6a, 0xb9, 0x23, 0x75, 0x9b, 0x5b, 0x5a, 0x2f, 0xcf, 0x61, 0xef, 0x6e, - 0x82, 0x3a, 0x18, 0x07, 0x48, 0x4f, 0xcd, 0x52, 0x3e, 0x06, 0x2b, 0x26, 0x33, 0xd2, 0x80, 0x54, - 0xad, 0x74, 0xa4, 0x6e, 0x59, 0xaf, 0xf3, 0x81, 0x6d, 0xaa, 0x5c, 0x05, 0x2b, 0xc2, 0x02, 0xc7, - 0x52, 0xab, 0xcc, 0xea, 0x8f, 0x9f, 0xbe, 0xdc, 0x5c, 0xfa, 0xeb, 0xcb, 0xcd, 0xca, 0x1d, 0xc7, - 0xa7, 0x2f, 0x9e, 0x5c, 0x91, 0x85, 0x07, 0xd1, 0xa3, 0x5e, 0xe7, 0xe8, 0x81, 0xa5, 0x5c, 0x03, - 0x32, 0x27, 0xd6, 0x88, 0x78, 0x51, 0x6b, 0xcc, 0xb6, 0xf6, 0x2c, 0xdb, 0xf6, 0x19, 0x8c, 0xdb, - 0x45, 0x92, 0xcf, 0xca, 0xb7, 0x80, 0x62, 0x1e, 0xc1, 0xd0, 0x46, 0x96, 0x11, 0x22, 0x68, 0x19, - 0x3f, 0x1d, 0x61, 0x0a, 0xd5, 0xe5, 0x8e, 0xd4, 0xad, 0xe8, 0x97, 0xc4, 0x37, 0x3a, 0x82, 0xd6, - 0x8f, 0xa2, 0x71, 0x65, 0x1b, 0xb4, 0x02, 0x38, 0xf6, 0x90, 0x4f, 0x0d, 0xc8, 0xa9, 0x54, 0xeb, - 0x73, 0x48, 0x6e, 0x8a, 0x09, 0x62, 0x54, 0xd1, 0x40, 0x23, 0x08, 0x1d, 0x0f, 0x86, 0x63, 0x83, - 0x04, 0x91, 0xbf, 0x2b, 0x1d, 0xa9, 0xdb, 0xd0, 0x65, 0x31, 0xb8, 0x1f, 0x0c, 0x2c, 0x65, 0x07, - 0xb4, 0x6d, 0x17, 0x0f, 0xa1, 0x6b, 0x1c, 0x3b, 0x21, 0x1d, 0x41, 0xd7, 0xb0, 0x43, 0x3c, 0x0a, - 0x8c, 0x43, 0xe8, 0x39, 0xee, 0x38, 0x9a, 0x04, 0xd8, 0xa4, 0x0d, 0x8e, 0xba, 0xcb, 0x41, 0xdf, - 0x8f, 0x30, 0xdf, 0x63, 0x90, 0x81, 0xa5, 0x5c, 0x05, 0x35, 0x42, 0x21, 0x1d, 0x11, 0x55, 0x66, - 0xa4, 0x74, 0x66, 0x91, 0xc2, 0x15, 0xb3, 0xcf, 0x70, 0xba, 0xc0, 0x2b, 0x5f, 0x82, 0x0a, 0x85, - 0x36, 0x51, 0x57, 0x3b, 0x52, 0x57, 0x9e, 0x3d, 0x4f, 0x17, 0x72, 0x3e, 0x80, 0x36, 0xd1, 0x19, - 0x5a, 0xfb, 0x55, 0x49, 0x68, 0x71, 0x0f, 0xb9, 0x28, 0xd1, 0xe2, 0x97, 0xa0, 0x8e, 0x03, 0x14, - 0x42, 0x8a, 0xe7, 0xcb, 0x31, 0x41, 0x4e, 0x14, 0x5c, 0x5a, 0x48, 0xc1, 0xe5, 0x9c, 0x82, 0x33, - 0x02, 0xab, 0x14, 0x11, 0xd8, 0xfc, 0xad, 0xa8, 0xce, 0xdb, 0x0a, 0xed, 0x67, 0x65, 0xf0, 0x55, - 0x46, 0xcd, 0x9d, 0xc0, 0x4a, 0xc2, 0x74, 0xe0, 0x1f, 0xe2, 0x05, 0xe9, 0x99, 0x1b, 0xb0, 0x19, - 0x77, 0xcb, 0x45, 0xdc, 0x9d, 0x1d, 0x0e, 0x95, 0x13, 0xc2, 0xe1, 0x1b, 0xf9, 0x70, 0x60, 0xd1, - 0x9b, 0x13, 0x7d, 0x36, 0x83, 0xd4, 0x16, 0xca, 0x20, 0xf3, 0x77, 0x62, 0x79, 0xee, 0x4e, 0xfc, - 0x56, 0x02, 0x97, 0xb9, 0x48, 0x1d, 0x62, 0x62, 0x9f, 0x3a, 0xfe, 0x28, 0x56, 0x6a, 0x86, 0x33, - 0xa9, 0x08, 0x67, 0x73, 0xb7, 0xe3, 0x32, 0xa8, 0x85, 0x08, 0x12, 0xec, 0x0b, 0x65, 0x8a, 0xa7, - 0x28, 0x27, 0x5a, 0x2c, 0x58, 0x52, 0x39, 0x91, 0x0f, 0x6c, 0x53, 0xed, 0x59, 0x2d, 0x93, 0xdb, - 0x6f, 0x0d, 0x7f, 0x82, 0x4c, 0xaa, 0x6c, 0x81, 0x65, 0x96, 0x35, 0x4f, 0xa1, 0x97, 0x18, 0xf8, - 0xbf, 0x8f, 0xa6, 0x4d, 0x20, 0x63, 0x66, 0x0e, 0x07, 0x54, 0x38, 0x80, 0x0f, 0xe5, 0xf5, 0x57, - 0x2b, 0xc2, 0xe5, 0x55, 0xb0, 0x22, 0x96, 0x16, 0xfb, 0x39, 0x6f, 0x26, 0x47, 0x0f, 0xac, 0x7c, - 0x5e, 0xad, 0xe7, 0xf3, 0xea, 0xa7, 0x60, 0x35, 0x80, 0x63, 0x17, 0x43, 0xcb, 0x20, 0xce, 0x43, - 0xc4, 0x52, 0x6f, 0x45, 0x97, 0xc5, 0xd8, 0xbe, 0xf3, 0x70, 0xba, 0xd6, 0x81, 0x85, 0x94, 0xfa, - 0x29, 0x58, 0x8d, 0xc4, 0x15, 0x85, 0x05, 0xab, 0x4a, 0x32, 0x23, 0x48, 0x16, 0x63, 0xac, 0xec, - 0x64, 0xca, 0xe1, 0x6a, 0xae, 0x1c, 0xc6, 0xa9, 0xbb, 0x71, 0x72, 0xea, 0xe6, 0x82, 0x98, 0x4a, - 0xdd, 0x3f, 0x00, 0xad, 0x10, 0x59, 0x23, 0xdf, 0x82, 0xbe, 0x39, 0xe6, 0x2f, 0x6f, 0x9e, 0xec, - 0x82, 0x9e, 0x40, 0x99, 0x0b, 0xcd, 0x30, 0xf3, 0x3c, 0x5d, 0x5b, 0x5b, 0x85, 0x6b, 0xeb, 0x27, - 0x60, 0xc5, 0x3c, 0x42, 0xe6, 0x3d, 0x32, 0xf2, 0x88, 0x7a, 0xa9, 0x53, 0xee, 0xae, 0xea, 0x93, - 0x01, 0xe5, 0x0b, 0x70, 0xd9, 0xc5, 0x66, 0x2e, 0x9c, 0x1d, 0x4b, 0x5d, 0x63, 0x3b, 0xf7, 0x15, - 0xf6, 0x6d, 0x3a, 0x8c, 0x07, 0x56, 0x52, 0x9b, 0x94, 0x42, 0xb5, 0xe9, 0xdf, 0x12, 0xf8, 0x88, - 0xc7, 0x12, 0xf4, 0x4d, 0xe4, 0x66, 0x22, 0xea, 0x8c, 0x52, 0xf0, 0x54, 0x8c, 0x94, 0x73, 0x31, - 0x92, 0xd3, 0x6b, 0x25, 0xaf, 0xd7, 0x4c, 0x34, 0xd4, 0x0a, 0x44, 0x83, 0xf6, 0xa6, 0x04, 0x5a, - 0xcc, 0xe3, 0x7d, 0x04, 0xdd, 0x73, 0xf6, 0x34, 0xe3, 0x45, 0xb5, 0x48, 0x4c, 0x4f, 0x02, 0xa1, - 0x56, 0x30, 0x10, 0xbe, 0x03, 0x3e, 0x9a, 0x59, 0x2c, 0x92, 0x2a, 0xb1, 0x9e, 0xaf, 0x12, 0x03, - 0xeb, 0x2d, 0x9a, 0xac, 0x9f, 0xa8, 0x49, 0xed, 0x71, 0x59, 0x70, 0xbd, 0x8b, 0x83, 0xf1, 0x3b, - 0x71, 0xfd, 0x19, 0x68, 0x91, 0xd0, 0x34, 0xf2, 0x7c, 0x37, 0x48, 0x68, 0xee, 0x4c, 0x28, 0x17, - 0xb8, 0x3c, 0xed, 0x11, 0xee, 0xd6, 0x84, 0xf9, 0xcf, 0x40, 0xcb, 0x22, 0x34, 0xb3, 0x1e, 0x4f, - 0xd6, 0x0d, 0x8b, 0xd0, 0xec, 0x7a, 0x11, 0x2e, 0xbd, 0x5e, 0x35, 0xc1, 0xa5, 0xd6, 0xbb, 0x06, - 0x1a, 0xa9, 0xf7, 0x9e, 0x4e, 0x93, 0x72, 0x62, 0x12, 0x6b, 0xd7, 0x1b, 0xa9, 0x17, 0x9d, 0x2e, - 0xc5, 0xcb, 0x89, 0x0d, 0x8b, 0x6e, 0xd0, 0x7f, 0xa4, 0x4c, 0x6b, 0x7a, 0x91, 0xc2, 0xa1, 0x52, - 0x24, 0x1c, 0x4e, 0x76, 0xbe, 0x7a, 0xb2, 0xf3, 0xcf, 0x24, 0xd1, 0x7c, 0xea, 0x88, 0xc5, 0xc9, - 0x05, 0xcb, 0x07, 0x45, 0x08, 0x98, 0xd9, 0xbe, 0x09, 0x67, 0xa6, 0xcc, 0x92, 0x66, 0xf5, 0xc4, - 0x93, 0xb7, 0x96, 0x8a, 0xd0, 0xbe, 0x50, 0xfb, 0xf6, 0x8b, 0x52, 0xa6, 0xe7, 0x17, 0x02, 0x3e, - 0xc3, 0x9e, 0xff, 0x0c, 0x75, 0x97, 0xed, 0x89, 0xaa, 0x8b, 0xf4, 0x44, 0xda, 0x6f, 0x4a, 0xe0, - 0x52, 0xaa, 0x9d, 0x65, 0xea, 0x2c, 0x7c, 0x53, 0xf1, 0x75, 0x00, 0xb8, 0xe4, 0x53, 0x1c, 0xac, - 0xb0, 0x11, 0xe6, 0xe1, 0x77, 0x41, 0x3d, 0x89, 0x88, 0x53, 0x9c, 0x7a, 0x96, 0x6d, 0x91, 0xf5, - 0xa7, 0x1a, 0x9d, 0x4a, 0xe1, 0x46, 0x67, 0x1d, 0x54, 0xd1, 0x03, 0x1a, 0x42, 0x91, 0x35, 0xf9, - 0x43, 0xd2, 0xab, 0xd4, 0x0a, 0xf5, 0x2a, 0xbf, 0x96, 0x04, 0x51, 0x3c, 0x59, 0x4d, 0x11, 0x55, - 0x5a, 0x84, 0xa8, 0xf2, 0xdb, 0x88, 0xaa, 0x9c, 0x9e, 0x28, 0xed, 0x2f, 0x92, 0xa8, 0x74, 0x3f, - 0x44, 0xf0, 0x58, 0x98, 0x76, 0x0d, 0x34, 0x3d, 0xe4, 0x0d, 0x51, 0x98, 0x1c, 0x01, 0xe7, 0x6d, - 0x66, 0x83, 0xe3, 0xe3, 0xb3, 0xe1, 0x05, 0xf1, 0xed, 0x5f, 0x25, 0x91, 0x5b, 0x78, 0xc0, 0x32, - 0xe7, 0x6e, 0x30, 0x43, 0xdf, 0xd3, 0x25, 0xc6, 0xd9, 0xf8, 0xa5, 0xdc, 0x8e, 0xf7, 0x87, 0x18, - 0x14, 0x47, 0x7b, 0xa4, 0x56, 0x3b, 0xe5, 0xae, 0xbc, 0xf5, 0xcd, 0x59, 0x7a, 0x64, 0x04, 0xa4, - 0x5c, 0xdf, 0x43, 0x14, 0x3a, 0xae, 0xbe, 0x2a, 0x56, 0x38, 0xc0, 0xdb, 0x96, 0xa5, 0xec, 0x81, - 0xb5, 0xd4, 0x8a, 0x3c, 0xe3, 0xa9, 0xb5, 0x4e, 0xf9, 0xad, 0x4e, 0xb6, 0x92, 0x25, 0xb8, 0xae, - 0xb5, 0xbf, 0x95, 0x92, 0xba, 0xe4, 0xa3, 0xfb, 0xff, 0x37, 0x74, 0x4f, 0xe5, 0x92, 0x6a, 0xe1, - 0x5c, 0xb2, 0x07, 0x96, 0x05, 0x55, 0x8c, 0xd3, 0x62, 0x1b, 0x15, 0x4f, 0xd5, 0x7e, 0x19, 0x57, - 0xca, 0x1c, 0x46, 0xf9, 0x36, 0xa8, 0x71, 0xd4, 0x5c, 0x72, 0x05, 0x4e, 0x19, 0x80, 0x16, 0x7a, - 0x10, 0x38, 0x21, 0xa4, 0x0e, 0xf6, 0x0d, 0xea, 0x88, 0xdc, 0x2b, 0x6f, 0x6d, 0xf4, 0xf8, 0x1d, - 0x78, 0x2f, 0xbe, 0x03, 0xef, 0x1d, 0xc4, 0x77, 0xe0, 0x3b, 0x95, 0x47, 0x7f, 0xdf, 0x94, 0xf4, - 0xe6, 0x64, 0x62, 0xf4, 0x95, 0xf6, 0x4f, 0x29, 0x53, 0x16, 0x99, 0x75, 0xd7, 0x45, 0xb6, 0xfc, - 0x80, 0x77, 0x7d, 0x66, 0x01, 0xd0, 0x9e, 0xc6, 0x7d, 0xe7, 0x0d, 0x27, 0x0c, 0x71, 0xf8, 0x4e, - 0x57, 0xa2, 0xc5, 0xee, 0xfc, 0x0a, 0x5d, 0x71, 0x6a, 0xa0, 0x61, 0x21, 0x42, 0x0d, 0xf3, 0x08, - 0x3a, 0xfe, 0xa4, 0x9b, 0x94, 0xa3, 0xc1, 0xdd, 0x68, 0x6c, 0x60, 0x69, 0x7f, 0x88, 0x4f, 0xd0, - 0x69, 0x57, 0x74, 0x44, 0x46, 0x2e, 0x8d, 0xfa, 0x23, 0x71, 0x4a, 0x93, 0xd8, 0xc4, 0xf8, 0x0c, - 0x76, 0xce, 0x26, 0xbf, 0xc9, 0xb2, 0xff, 0xc1, 0x76, 0xfd, 0xa7, 0xf1, 0xf5, 0x4f, 0xd9, 0xed, - 0xe1, 0xbe, 0xbe, 0xeb, 0xf6, 0x9c, 0xb3, 0x4f, 0x7f, 0x8c, 0x1b, 0x21, 0xee, 0xd3, 0x85, 0xea, - 0x18, 0x73, 0xf6, 0x57, 0xf2, 0xf6, 0xff, 0x2e, 0x4e, 0xc1, 0x29, 0xfb, 0xe7, 0x6c, 0xc9, 0x39, - 0x5a, 0x7b, 0x2c, 0x04, 0xb4, 0x4f, 0xa1, 0x8b, 0x6e, 0x63, 0xd7, 0x31, 0xc7, 0xbb, 0x2e, 0x82, - 0xfe, 0x28, 0x50, 0x36, 0x40, 0x7d, 0xe8, 0x62, 0xf3, 0xde, 0xcd, 0x91, 0xc7, 0xec, 0x2d, 0xeb, - 0xc9, 0x73, 0x54, 0xee, 0xc4, 0x19, 0xc8, 0xf1, 0x0f, 0xb1, 0x28, 0x0b, 0x33, 0xcb, 0x1d, 0x2f, - 0xfb, 0xd1, 0x09, 0x48, 0x07, 0x56, 0xf2, 0x59, 0x7b, 0x21, 0x81, 0x75, 0xc1, 0x92, 0xcd, 0xeb, - 0xc4, 0x7b, 0x4c, 0x93, 0x85, 0x7e, 0x1a, 0xf9, 0x1c, 0xac, 0x59, 0x84, 0x1a, 0xb3, 0x2e, 0xed, - 0x9a, 0x16, 0xa1, 0xb7, 0x27, 0xf7, 0x76, 0xda, 0xef, 0x25, 0xb0, 0x91, 0xba, 0x6f, 0xbc, 0xe8, - 0xae, 0x45, 0x52, 0x55, 0x53, 0x77, 0x04, 0xdc, 0x5e, 0x74, 0x51, 0xad, 0x7d, 0x5c, 0x02, 0x9f, - 0x88, 0xfb, 0x36, 0x2f, 0x88, 0x84, 0x74, 0xe1, 0xa5, 0x33, 0xff, 0xa7, 0xab, 0xca, 0xdc, 0xdf, - 0x73, 0x3f, 0x07, 0x6b, 0x24, 0x34, 0xa7, 0xe4, 0xc7, 0xd3, 0x66, 0x93, 0x84, 0x66, 0x5a, 0x7e, - 0x06, 0x90, 0xc5, 0xdd, 0x2f, 0x3d, 0x80, 0x76, 0x14, 0xbf, 0xf1, 0xdf, 0x0f, 0xc4, 0xbd, 0x48, - 0xf2, 0x9c, 0x9c, 0x51, 0x4b, 0x45, 0xce, 0xa8, 0x3b, 0x83, 0xa7, 0xaf, 0xda, 0xd2, 0xf3, 0x57, - 0x6d, 0xe9, 0x1f, 0xaf, 0xda, 0xd2, 0xa3, 0xd7, 0xed, 0xa5, 0xe7, 0xaf, 0xdb, 0x4b, 0x7f, 0x7e, - 0xdd, 0x5e, 0xfa, 0x71, 0xdf, 0x76, 0xe8, 0xd1, 0x68, 0xd8, 0x33, 0xb1, 0xd7, 0x1f, 0xfa, 0xc3, - 0x2b, 0x2c, 0xe5, 0xf4, 0x53, 0x7f, 0x63, 0x78, 0x90, 0xfd, 0x23, 0xc3, 0xb0, 0xc6, 0x5a, 0xc7, - 0x2f, 0xfe, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xf1, 0xd5, 0x62, 0x2f, 0xb4, 0x21, 0x00, 0x00, + // 1706 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x5a, 0xcd, 0x6f, 0xdb, 0xc8, + 0x15, 0x37, 0x25, 0x4a, 0x96, 0x47, 0x96, 0x14, 0xb3, 0x6e, 0xa2, 0x3a, 0xa9, 0xac, 0xf0, 0x90, + 0x3a, 0x45, 0x23, 0x15, 0x4e, 0x5a, 0xe4, 0x16, 0xf8, 0x23, 0x2d, 0x84, 0x36, 0x1f, 0xa5, 0x9d, + 0x1c, 0x7a, 0x21, 0x46, 0xe4, 0x98, 0x66, 0x43, 0x72, 0x58, 0xce, 0xc8, 0x89, 0xf2, 0x0f, 0xf4, + 0x54, 0x20, 0x40, 0x51, 0xa0, 0xbd, 0xe4, 0x5c, 0xa0, 0x28, 0xd0, 0x43, 0xae, 0xbd, 0xa7, 0xb7, + 0x34, 0xbd, 0xf4, 0x03, 0xc8, 0x2e, 0x92, 0x53, 0x16, 0x58, 0xec, 0x9e, 0xf7, 0xb4, 0xe0, 0xcc, + 0x90, 0x22, 0x45, 0x39, 0x32, 0x95, 0x75, 0xec, 0xec, 0x4d, 0x1c, 0xfd, 0x66, 0xf4, 0xde, 0x9b, + 0xdf, 0xfb, 0xbd, 0x37, 0x43, 0x81, 0x55, 0x2b, 0x40, 0xc8, 0xdb, 0xb3, 0x91, 0x63, 0x76, 0x09, + 0xc5, 0x01, 0xb4, 0x50, 0x17, 0x1d, 0x20, 0x8f, 0x92, 0x8e, 0x1f, 0x60, 0x8a, 0x15, 0x65, 0x04, + 0xe8, 0x08, 0xc0, 0xca, 0xf7, 0x0c, 0x4c, 0x5c, 0x4c, 0x74, 0x86, 0xe8, 0xf2, 0x07, 0x0e, 0x5f, + 0x59, 0xb6, 0xb0, 0x85, 0xf9, 0x78, 0xf8, 0x49, 0x8c, 0xae, 0x5a, 0x18, 0x5b, 0x0e, 0xea, 0xb2, + 0xa7, 0xfe, 0x60, 0xaf, 0x4b, 0x6d, 0x17, 0x11, 0x0a, 0x5d, 0x3f, 0x06, 0x8c, 0xcc, 0x08, 0x10, + 0xc1, 0x83, 0xc0, 0x40, 0x5d, 0x3a, 0xf4, 0x11, 0x99, 0x00, 0x88, 0xec, 0x34, 0xb0, 0xeb, 0x62, + 0x4f, 0x00, 0x5a, 0x13, 0x00, 0x89, 0x05, 0xd4, 0x7f, 0xcb, 0x60, 0xe9, 0x66, 0xe8, 0xd8, 0x56, + 0x80, 0x20, 0x45, 0x9b, 0x03, 0xe3, 0x01, 0xa2, 0x4a, 0x07, 0x94, 0xf0, 0x43, 0x0f, 0x05, 0x4d, + 0xa9, 0x2d, 0xad, 0x2d, 0x6c, 0x36, 0x5f, 0x3e, 0xbb, 0xb2, 0x2c, 0xfc, 0xd9, 0x30, 0xcd, 0x00, + 0x11, 0xb2, 0x43, 0x03, 0xdb, 0xb3, 0x34, 0x0e, 0x53, 0x56, 0x41, 0xb5, 0xcf, 0x66, 0xea, 0x1e, + 0x74, 0x51, 0xb3, 0x10, 0xce, 0xd2, 0x00, 0x1f, 0xba, 0x0d, 0x5d, 0xa4, 0x6c, 0x02, 0x70, 0x60, + 0x13, 0xbb, 0x6f, 0x3b, 0x36, 0x1d, 0x36, 0x8b, 0x6d, 0x69, 0xad, 0xbe, 0xae, 0x76, 0xb2, 0x31, + 0xec, 0xdc, 0x8f, 0x51, 0xbb, 0x43, 0x1f, 0x69, 0x89, 0x59, 0xca, 0x79, 0xb0, 0x60, 0x30, 0x23, + 0x75, 0x48, 0x9b, 0x72, 0x5b, 0x5a, 0x2b, 0x6a, 0x15, 0x3e, 0xb0, 0x41, 0x95, 0xeb, 0x60, 0x41, + 0x58, 0x60, 0x9b, 0xcd, 0x12, 0xb3, 0xfa, 0xfc, 0xf3, 0x57, 0xab, 0x73, 0xff, 0x7b, 0xb5, 0x2a, + 0xdf, 0xb3, 0x3d, 0xfa, 0xf2, 0xd9, 0x95, 0xaa, 0xf0, 0x20, 0x7c, 0xd4, 0x2a, 0x1c, 0xdd, 0x33, + 0x95, 0x1b, 0xa0, 0xca, 0x03, 0xab, 0x87, 0x71, 0x69, 0x96, 0x99, 0x6d, 0xad, 0x49, 0xb6, 0xed, + 0x30, 0x18, 0xb7, 0x8b, 0xc4, 0x9f, 0x95, 0x1f, 0x01, 0xc5, 0xd8, 0x87, 0x81, 0x85, 0x4c, 0x3d, + 0x40, 0xd0, 0xd4, 0x7f, 0x3b, 0xc0, 0x14, 0x36, 0xe7, 0xdb, 0xd2, 0x9a, 0xac, 0x9d, 0x11, 0xdf, + 0x68, 0x08, 0x9a, 0xbf, 0x0a, 0xc7, 0x95, 0x0d, 0xd0, 0xf0, 0xe1, 0xd0, 0x45, 0x1e, 0xd5, 0x21, + 0x0f, 0x65, 0xb3, 0x32, 0x25, 0xc8, 0x75, 0x31, 0x41, 0x8c, 0x2a, 0x2a, 0xa8, 0xf9, 0x81, 0xed, + 0xc2, 0x60, 0xa8, 0x13, 0x3f, 0xf4, 0x77, 0xa1, 0x2d, 0xad, 0xd5, 0xb4, 0xaa, 0x18, 0xdc, 0xf1, + 0x7b, 0xa6, 0xb2, 0x09, 0x5a, 0x96, 0x83, 0xfb, 0xd0, 0xd1, 0x0f, 0xec, 0x80, 0x0e, 0xa0, 0xa3, + 0x5b, 0x01, 0x1e, 0xf8, 0xfa, 0x1e, 0x74, 0x6d, 0x67, 0x18, 0x4e, 0x02, 0x6c, 0xd2, 0x0a, 0x47, + 0xdd, 0xe7, 0xa0, 0x9f, 0x87, 0x98, 0x9f, 0x31, 0x48, 0xcf, 0x54, 0xae, 0x83, 0x32, 0xa1, 0x90, + 0x0e, 0x48, 0xb3, 0xca, 0x82, 0xd2, 0x9e, 0x14, 0x14, 0xce, 0x98, 0x1d, 0x86, 0xd3, 0x04, 0x5e, + 0xfd, 0x53, 0x41, 0xb0, 0x6a, 0x1b, 0x39, 0x28, 0x66, 0xd5, 0x35, 0x50, 0xc1, 0x3e, 0x0a, 0x20, + 0xc5, 0xd3, 0x89, 0x15, 0x23, 0x47, 0x5c, 0x2c, 0xcc, 0xc4, 0xc5, 0x62, 0x86, 0x8b, 0x29, 0xaa, + 0xc8, 0x79, 0xa8, 0x32, 0x3d, 0xa8, 0xa5, 0x69, 0x41, 0x55, 0x7f, 0x57, 0x04, 0xdf, 0x65, 0xa1, + 0xb9, 0xe7, 0x9b, 0x71, 0xc2, 0xf5, 0xbc, 0x3d, 0x3c, 0x63, 0x78, 0xa6, 0xa6, 0x5e, 0xca, 0xdd, + 0x62, 0x1e, 0x77, 0x27, 0x13, 0x5b, 0x3e, 0x84, 0xd8, 0x3f, 0xc8, 0x12, 0x9b, 0xe5, 0x61, 0x86, + 0xbe, 0x69, 0x2d, 0x28, 0xcf, 0xa4, 0x05, 0xd3, 0x77, 0x62, 0x7e, 0xea, 0x4e, 0xfc, 0x45, 0x02, + 0x67, 0x39, 0x49, 0x6d, 0x62, 0x60, 0x8f, 0xda, 0xde, 0x20, 0x62, 0x6a, 0x2a, 0x66, 0x52, 0x9e, + 0x98, 0x4d, 0xdd, 0x8e, 0xb3, 0xa0, 0x1c, 0x20, 0x48, 0xb0, 0x27, 0x98, 0x29, 0x9e, 0x42, 0x75, + 0x33, 0x59, 0xb2, 0x24, 0xd4, 0x8d, 0x0f, 0x6c, 0x50, 0xf5, 0x0f, 0xe5, 0x94, 0x4a, 0xdf, 0xe9, + 0xff, 0x06, 0x19, 0x54, 0x59, 0x07, 0xf3, 0x4c, 0xff, 0x8e, 0xc0, 0x97, 0x08, 0xf8, 0xcd, 0x67, + 0xd3, 0x2a, 0xa8, 0x62, 0x66, 0x0e, 0x07, 0xc8, 0x1c, 0xc0, 0x87, 0xb2, 0xfc, 0x2b, 0xe7, 0x89, + 0xe5, 0x75, 0xb0, 0x20, 0x96, 0x16, 0xfb, 0x39, 0x6d, 0x26, 0x47, 0xf7, 0xcc, 0xac, 0x42, 0x56, + 0xb2, 0x0a, 0x79, 0x11, 0x2c, 0xfa, 0x70, 0xe8, 0x60, 0x68, 0xea, 0xc4, 0x7e, 0x8c, 0x98, 0x88, + 0xca, 0x5a, 0x55, 0x8c, 0xed, 0xd8, 0x8f, 0xc7, 0xab, 0x16, 0x98, 0x89, 0xa9, 0x17, 0xc1, 0x62, + 0x48, 0xae, 0x30, 0x2d, 0x58, 0x7d, 0xa9, 0xb2, 0x00, 0x55, 0xc5, 0x18, 0x2b, 0x20, 0xa9, 0xc2, + 0xb6, 0x98, 0x29, 0x6c, 0x91, 0x08, 0xd7, 0x0e, 0x17, 0x61, 0x4e, 0x88, 0xb4, 0x08, 0x2b, 0xbf, + 0x00, 0x8d, 0x00, 0x99, 0x03, 0xcf, 0x84, 0x9e, 0x31, 0xe4, 0x3f, 0x5e, 0x3f, 0xdc, 0x05, 0x2d, + 0x86, 0x32, 0x17, 0xea, 0x41, 0xea, 0x79, 0xbc, 0x4a, 0x36, 0x72, 0x57, 0xc9, 0x0b, 0x60, 0xc1, + 0xd8, 0x47, 0xc6, 0x03, 0x32, 0x70, 0x49, 0xf3, 0x4c, 0xbb, 0xb8, 0xb6, 0xa8, 0x8d, 0x06, 0x94, + 0xab, 0xe0, 0xac, 0x83, 0x8d, 0x4c, 0x3a, 0xdb, 0x66, 0x73, 0x89, 0xed, 0xdc, 0x77, 0xd8, 0xb7, + 0xc9, 0x34, 0xee, 0x99, 0xea, 0x17, 0x12, 0x38, 0xc7, 0xb3, 0x02, 0x7a, 0x06, 0x72, 0x52, 0xb9, + 0x71, 0x4c, 0x62, 0x3a, 0xc6, 0xf6, 0x62, 0x86, 0xed, 0x19, 0xe6, 0xc9, 0x59, 0xe6, 0xa5, 0x78, + 0x5d, 0xce, 0xc1, 0x6b, 0xf5, 0x6d, 0x01, 0x34, 0x98, 0xc7, 0x3b, 0x08, 0x3a, 0x27, 0xec, 0x69, + 0xca, 0x8b, 0x52, 0x9e, 0xec, 0x1c, 0x51, 0xba, 0x9c, 0x93, 0xd2, 0x3f, 0x01, 0xe7, 0x26, 0xca, + 0x7e, 0xac, 0xf7, 0xcb, 0x59, 0xbd, 0xef, 0x99, 0xef, 0x60, 0x57, 0xe5, 0x70, 0x76, 0x3d, 0x2d, + 0x8a, 0x58, 0x6f, 0x61, 0x7f, 0xf8, 0x5e, 0xb1, 0xbe, 0x04, 0x1a, 0x24, 0x30, 0xf4, 0x6c, 0xbc, + 0x6b, 0x24, 0x30, 0x36, 0x47, 0x21, 0x17, 0xb8, 0x6c, 0xd8, 0x43, 0xdc, 0x9d, 0x51, 0xe4, 0x2f, + 0x81, 0x86, 0x49, 0x68, 0x6a, 0x3d, 0x2e, 0xbb, 0x35, 0x93, 0xd0, 0xf4, 0x7a, 0x21, 0x2e, 0xb9, + 0x5e, 0x29, 0xc6, 0x25, 0xd6, 0xbb, 0x01, 0x6a, 0x89, 0xdf, 0x3d, 0x1a, 0x27, 0xab, 0xb1, 0x49, + 0xac, 0x85, 0xae, 0x25, 0x7e, 0xe8, 0x68, 0x62, 0x5d, 0x8d, 0x6d, 0x98, 0x75, 0x83, 0xbe, 0x92, + 0x52, 0x4d, 0xe6, 0x69, 0x4a, 0x07, 0x39, 0x4f, 0x3a, 0x1c, 0xee, 0x7c, 0xe9, 0x70, 0xe7, 0xff, + 0x29, 0x89, 0x36, 0x52, 0x43, 0x2c, 0x4f, 0x4e, 0x99, 0x1e, 0xe4, 0x09, 0xc0, 0xc4, 0x46, 0x4c, + 0x38, 0x33, 0x66, 0x96, 0x34, 0xa9, 0xbb, 0x1d, 0xfd, 0x6a, 0x21, 0x4f, 0xd8, 0x67, 0x6a, 0xc4, + 0x7e, 0x5f, 0x48, 0x75, 0xef, 0x82, 0xc0, 0xc7, 0xd8, 0xbd, 0x1f, 0x23, 0xef, 0xd2, 0xdd, 0x4d, + 0x69, 0x96, 0xee, 0x46, 0xfd, 0x52, 0x02, 0x67, 0x12, 0x8d, 0x29, 0x63, 0x67, 0xee, 0xdb, 0x83, + 0xef, 0x03, 0xc0, 0x29, 0x9f, 0x88, 0xc1, 0x02, 0x1b, 0x61, 0x1e, 0xfe, 0x14, 0x54, 0xe2, 0x8c, + 0x38, 0xc2, 0xf9, 0x65, 0xde, 0x12, 0xaa, 0x3f, 0xd6, 0xb2, 0xc8, 0xb9, 0x5b, 0x96, 0x65, 0x50, + 0x42, 0x8f, 0x68, 0x00, 0x85, 0x6a, 0xf2, 0x07, 0xf5, 0xcf, 0x91, 0xcb, 0x5c, 0x76, 0xc6, 0x5c, + 0x2e, 0xcc, 0xe2, 0x72, 0xf1, 0x5d, 0x2e, 0xcb, 0x47, 0x77, 0x59, 0xfd, 0xaf, 0x24, 0x6a, 0xd6, + 0x2f, 0x11, 0x3c, 0x10, 0xa6, 0xdd, 0x00, 0x75, 0x17, 0xb9, 0x7d, 0x14, 0xc4, 0xc7, 0xb2, 0x69, + 0xdb, 0x52, 0xe3, 0xf8, 0xe8, 0xbc, 0x76, 0x4a, 0x7c, 0xfb, 0xbc, 0x20, 0x54, 0x82, 0xa7, 0x1e, + 0x73, 0xee, 0x16, 0x33, 0xf4, 0x03, 0x5d, 0x2c, 0x1c, 0x8f, 0x5f, 0xca, 0xdd, 0x68, 0x7f, 0x88, + 0x4e, 0x71, 0xb8, 0x47, 0xcd, 0x52, 0xbb, 0xb8, 0x56, 0x5d, 0xff, 0xe1, 0x24, 0xa6, 0xb2, 0x00, + 0x24, 0x5c, 0xdf, 0x46, 0x14, 0xda, 0x8e, 0xb6, 0x28, 0x56, 0xd8, 0xc5, 0x1b, 0xa6, 0xa9, 0x6c, + 0x83, 0xa5, 0xc4, 0x8a, 0x5c, 0xbb, 0x9a, 0xe5, 0x76, 0xf1, 0x9d, 0x4e, 0x36, 0xe2, 0x25, 0x38, + 0xaf, 0xd5, 0xff, 0x17, 0xe2, 0x0a, 0xe3, 0xa1, 0x87, 0xdf, 0x9a, 0x70, 0x8f, 0xa9, 0x42, 0x29, + 0xb7, 0x2a, 0x6c, 0x83, 0x79, 0x11, 0x2a, 0x16, 0xd3, 0x7c, 0x1b, 0x15, 0x4d, 0x55, 0xff, 0x18, + 0xd5, 0xbc, 0x0c, 0x46, 0xf9, 0x31, 0x28, 0x73, 0xd4, 0xd4, 0xe0, 0x0a, 0x9c, 0xd2, 0x03, 0x0d, + 0xf4, 0xc8, 0xb7, 0x03, 0x48, 0x6d, 0xec, 0xe9, 0xd4, 0x16, 0x2a, 0x5a, 0x5d, 0x5f, 0xe9, 0xf0, + 0x1b, 0xe6, 0x4e, 0x74, 0xc3, 0xdc, 0xd9, 0x8d, 0x6e, 0x98, 0x37, 0xe5, 0x27, 0x9f, 0xac, 0x4a, + 0x5a, 0x7d, 0x34, 0x31, 0xfc, 0x4a, 0xfd, 0x4c, 0x4a, 0x15, 0x38, 0x66, 0xdd, 0xcd, 0x50, 0xf7, + 0x3e, 0xee, 0x5d, 0x9f, 0x2c, 0xe5, 0xcf, 0xa3, 0x0e, 0xf2, 0x96, 0x1d, 0x04, 0x38, 0x78, 0xaf, + 0x6b, 0xca, 0x7c, 0xf7, 0x70, 0xb9, 0xae, 0x1d, 0x55, 0x50, 0x33, 0x11, 0xa1, 0xba, 0xb1, 0x0f, + 0x6d, 0x6f, 0xd4, 0x17, 0x56, 0xc3, 0xc1, 0xad, 0x70, 0xac, 0x67, 0xaa, 0x7f, 0x8f, 0xce, 0xc2, + 0x49, 0x57, 0x34, 0x44, 0x06, 0x0e, 0x0d, 0x3b, 0x1d, 0x71, 0xde, 0x92, 0xd8, 0xc4, 0xe8, 0x34, + 0x75, 0xc2, 0x26, 0xbf, 0x4d, 0x47, 0xff, 0xa3, 0xed, 0xdf, 0x8f, 0xe2, 0xeb, 0xbf, 0xd2, 0xdb, + 0xc3, 0x7d, 0x7d, 0xdf, 0xed, 0x39, 0x61, 0x9f, 0xfe, 0x11, 0x35, 0x42, 0xdc, 0xa7, 0x53, 0xd5, + 0xfb, 0x65, 0xec, 0x97, 0xb3, 0xf6, 0xff, 0x35, 0x92, 0xe0, 0x84, 0xfd, 0x53, 0xb6, 0xe4, 0x04, + 0xad, 0x3d, 0x10, 0x04, 0xda, 0xa1, 0xd0, 0x41, 0x77, 0xb1, 0x63, 0x1b, 0xc3, 0x2d, 0x07, 0x41, + 0x6f, 0xe0, 0x2b, 0x2b, 0xa0, 0xd2, 0x77, 0xb0, 0xf1, 0xe0, 0xf6, 0xc0, 0x65, 0xf6, 0x16, 0xb5, + 0xf8, 0x39, 0x2c, 0x77, 0xe2, 0x34, 0x63, 0x7b, 0x7b, 0x58, 0x94, 0x85, 0x89, 0xe5, 0x8e, 0x97, + 0xfd, 0xf0, 0x2c, 0xa3, 0x01, 0x33, 0xfe, 0xac, 0xbe, 0x94, 0xc0, 0xb2, 0x88, 0x92, 0xc5, 0xeb, + 0xc4, 0x07, 0x94, 0xc9, 0x5c, 0xaf, 0x2b, 0x2e, 0x83, 0x25, 0x93, 0x50, 0x7d, 0xd2, 0xf5, 0x5b, + 0xdd, 0x24, 0xf4, 0xee, 0xe8, 0x06, 0x4e, 0xfd, 0x9b, 0x04, 0x56, 0x12, 0x37, 0x87, 0xa7, 0xdd, + 0xb5, 0x90, 0xaa, 0xcd, 0xc4, 0x69, 0x9f, 0xdb, 0x8b, 0x4e, 0xab, 0xb5, 0x4f, 0x0b, 0xe0, 0x82, + 0xb8, 0x39, 0x73, 0xfd, 0x90, 0x48, 0xa7, 0x9e, 0x3a, 0xd3, 0x5f, 0x27, 0xc9, 0x53, 0xdf, 0x96, + 0x5e, 0x06, 0x4b, 0x24, 0x30, 0xc6, 0xe8, 0xc7, 0x65, 0xb3, 0x4e, 0x02, 0x23, 0x49, 0x3f, 0x1d, + 0x54, 0xc5, 0x2d, 0x2e, 0xdd, 0x85, 0x56, 0x98, 0xbf, 0xd1, 0xcb, 0x7d, 0x71, 0xc3, 0x11, 0x3f, + 0x2b, 0xd7, 0x80, 0x4c, 0xa1, 0x45, 0x44, 0xe2, 0xb6, 0x27, 0xdf, 0xdc, 0x8b, 0xee, 0x14, 0x5a, + 0x44, 0x63, 0xe8, 0xcd, 0xde, 0xf3, 0xd7, 0x2d, 0xe9, 0xc5, 0xeb, 0x96, 0xf4, 0xe9, 0xeb, 0x96, + 0xf4, 0xe4, 0x4d, 0x6b, 0xee, 0xc5, 0x9b, 0xd6, 0xdc, 0x7f, 0xde, 0xb4, 0xe6, 0x7e, 0xdd, 0xb5, + 0x6c, 0xba, 0x3f, 0xe8, 0x77, 0x0c, 0xec, 0x76, 0xfb, 0x5e, 0xff, 0x0a, 0x93, 0x9c, 0x6e, 0xe2, + 0x4f, 0x02, 0x8f, 0xd2, 0x7f, 0x13, 0xe8, 0x97, 0x59, 0xeb, 0x78, 0xf5, 0xeb, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x57, 0xb7, 0x14, 0x16, 0x12, 0x21, 0x00, 0x00, } func (m *EventCreateBucket) Marshal() (dAtA []byte, err error) { @@ -2568,18 +2540,6 @@ func (m *EventCreateBucket) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.Tags != nil { - { - size, err := m.Tags.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintEvents(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x62 - } if m.Status != 0 { i = encodeVarintEvents(dAtA, i, uint64(m.Status)) i-- @@ -2849,20 +2809,6 @@ func (m *EventCreateObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.Tags != nil { - { - size, err := m.Tags.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintEvents(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x1 - i-- - dAtA[i] = 0x92 - } if m.LocalVirtualGroupId != 0 { i = encodeVarintEvents(dAtA, i, uint64(m.LocalVirtualGroupId)) i-- @@ -3429,18 +3375,6 @@ func (m *EventCreateGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.Tags != nil { - { - size, err := m.Tags.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintEvents(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - } if len(m.Extra) > 0 { i -= len(m.Extra) copy(dAtA[i:], m.Extra) @@ -3752,12 +3686,12 @@ func (m *EventGroupMemberDetail) MarshalToSizedBuffer(dAtA []byte) (int, error) var l int _ = l if m.ExpirationTime != nil { - n4, err4 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(*m.ExpirationTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(*m.ExpirationTime):]) - if err4 != nil { - return 0, err4 + n1, err1 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(*m.ExpirationTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(*m.ExpirationTime):]) + if err1 != nil { + return 0, err1 } - i -= n4 - i = encodeVarintEvents(dAtA, i, uint64(n4)) + i -= n1 + i = encodeVarintEvents(dAtA, i, uint64(n1)) i-- dAtA[i] = 0x12 } @@ -4489,10 +4423,6 @@ func (m *EventCreateBucket) Size() (n int) { if m.Status != 0 { n += 1 + sovEvents(uint64(m.Status)) } - if m.Tags != nil { - l = m.Tags.Size() - n += 1 + l + sovEvents(uint64(l)) - } return n } @@ -4636,10 +4566,6 @@ func (m *EventCreateObject) Size() (n int) { if m.LocalVirtualGroupId != 0 { n += 2 + sovEvents(uint64(m.LocalVirtualGroupId)) } - if m.Tags != nil { - l = m.Tags.Size() - n += 2 + l + sovEvents(uint64(l)) - } return n } @@ -4857,10 +4783,6 @@ func (m *EventCreateGroup) Size() (n int) { if l > 0 { n += 1 + l + sovEvents(uint64(l)) } - if m.Tags != nil { - l = m.Tags.Size() - n += 1 + l + sovEvents(uint64(l)) - } return n } @@ -5570,42 +5492,6 @@ func (m *EventCreateBucket) Unmarshal(dAtA []byte) error { break } } - case 12: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Tags == nil { - m.Tags = &ResourceTags{} - } - if err := m.Tags.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -6671,42 +6557,6 @@ func (m *EventCreateObject) Unmarshal(dAtA []byte) error { break } } - case 18: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Tags == nil { - m.Tags = &ResourceTags{} - } - if err := m.Tags.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -8384,42 +8234,6 @@ func (m *EventCreateGroup) Unmarshal(dAtA []byte) error { } m.Extra = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Tags == nil { - m.Tags = &ResourceTags{} - } - if err := m.Tags.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) diff --git a/x/storage/types/message.go b/x/storage/types/message.go index a0ee67da4..0821510b5 100644 --- a/x/storage/types/message.go +++ b/x/storage/types/message.go @@ -120,24 +120,6 @@ func NewMsgCreateBucket( } } -// NewMsgCreateBucketWithTags creates a new MsgCreateBucket instance with tags. -// Since: Manchurian upgrade -func NewMsgCreateBucketWithTags( - creator sdk.AccAddress, bucketName string, Visibility VisibilityType, primarySPAddress, paymentAddress sdk.AccAddress, - timeoutHeight uint64, sig []byte, chargedReadQuota uint64, tags ResourceTags, -) *MsgCreateBucket { - return &MsgCreateBucket{ - Creator: creator.String(), - BucketName: bucketName, - Visibility: Visibility, - PaymentAddress: paymentAddress.String(), - PrimarySpAddress: primarySPAddress.String(), - PrimarySpApproval: &common.Approval{ExpiredHeight: timeoutHeight, Sig: sig}, - ChargedReadQuota: chargedReadQuota, - Tags: tags, - } -} - // Route implements the sdk.Msg interface. func (msg *MsgCreateBucket) Route() string { return RouterKey @@ -205,29 +187,6 @@ func (msg *MsgCreateBucket) ValidateBasic() error { return nil } -func (msg *MsgCreateBucket) ValidateRuntime(ctx sdk.Context) error { - if ctx.IsUpgraded(upgradetypes.Manchurian) { - if len(msg.Tags.GetTags()) > MaxTagCount { - return gnfderrors.ErrInvalidParameter.Wrapf("Tags count limit exceeded") - } - if len(msg.Tags.GetTags()) > 0 { - for _, tag := range msg.Tags.GetTags() { - if len(tag.GetKey()) > MaxTagKeyLength { - return gnfderrors.ErrInvalidParameter.Wrapf("Tag key length exceeded") - } - if len(tag.GetValue()) > MaxTagValueLength { - return gnfderrors.ErrInvalidParameter.Wrapf("Tag value length exceeded") - } - } - } - } else { - if len(msg.Tags.GetTags()) > 0 { - return gnfderrors.ErrInvalidParameter.Wrapf("Tags are not supported") - } - } - return nil -} - // NewMsgDeleteBucket creates a new MsgDeleteBucket instance func NewMsgDeleteBucket(operator sdk.AccAddress, bucketName string) *MsgDeleteBucket { return &MsgDeleteBucket{ @@ -352,27 +311,6 @@ func NewMsgCreateObject( } } -// NewMsgCreateObjectWithTags creates a new MsgCreateObject instance with tags. -// Since: Manchurian upgrade -func NewMsgCreateObjectWithTags( - creator sdk.AccAddress, bucketName, objectName string, payloadSize uint64, Visibility VisibilityType, - expectChecksums [][]byte, contentType string, redundancyType RedundancyType, timeoutHeight uint64, sig []byte, - tags ResourceTags, -) *MsgCreateObject { - return &MsgCreateObject{ - Creator: creator.String(), - BucketName: bucketName, - ObjectName: objectName, - PayloadSize: payloadSize, - Visibility: Visibility, - ContentType: contentType, - PrimarySpApproval: &common.Approval{ExpiredHeight: timeoutHeight, Sig: sig}, - ExpectChecksums: expectChecksums, - RedundancyType: redundancyType, - Tags: tags, - } -} - // Route implements the sdk.Msg interface. func (msg *MsgCreateObject) Route() string { return RouterKey @@ -435,29 +373,6 @@ func (msg *MsgCreateObject) ValidateBasic() error { return nil } -func (msg *MsgCreateObject) ValidateRuntime(ctx sdk.Context) error { - if ctx.IsUpgraded(upgradetypes.Manchurian) { - if len(msg.Tags.GetTags()) > MaxTagCount { - return gnfderrors.ErrInvalidParameter.Wrapf("Tags count limit exceeded") - } - if len(msg.Tags.GetTags()) > 0 { - for _, tag := range msg.Tags.GetTags() { - if len(tag.GetKey()) > MaxTagKeyLength { - return gnfderrors.ErrInvalidParameter.Wrapf("Tag key length exceeded") - } - if len(tag.GetValue()) > MaxTagValueLength { - return gnfderrors.ErrInvalidParameter.Wrapf("Tag value length exceeded") - } - } - } - } else { - if len(msg.Tags.GetTags()) > 0 { - return gnfderrors.ErrInvalidParameter.Wrapf("Tags are not supported") - } - } - return nil -} - // GetApprovalBytes returns the message bytes of approval info. func (msg *MsgCreateObject) GetApprovalBytes() []byte { fakeMsg := proto.Clone(msg).(*MsgCreateObject) @@ -935,15 +850,6 @@ func NewMsgCreateGroup(creator sdk.AccAddress, groupName, extra string) *MsgCrea } } -func NewMsgCreateGroupWithTags(creator sdk.AccAddress, groupName, extra string, tags ResourceTags) *MsgCreateGroup { - return &MsgCreateGroup{ - Creator: creator.String(), - GroupName: groupName, - Extra: extra, - Tags: tags, - } -} - // Route implements the sdk.Msg interface. func (msg *MsgCreateGroup) Route() string { return RouterKey @@ -987,29 +893,6 @@ func (msg *MsgCreateGroup) ValidateBasic() error { return nil } -func (msg *MsgCreateGroup) ValidateRuntime(ctx sdk.Context) error { - if ctx.IsUpgraded(upgradetypes.Manchurian) { - if len(msg.Tags.GetTags()) > MaxTagCount { - return gnfderrors.ErrInvalidParameter.Wrapf("Tags count limit exceeded") - } - if len(msg.Tags.GetTags()) > 0 { - for _, tag := range msg.Tags.GetTags() { - if len(tag.GetKey()) > MaxTagKeyLength { - return gnfderrors.ErrInvalidParameter.Wrapf("Tag key length exceeded") - } - if len(tag.GetValue()) > MaxTagValueLength { - return gnfderrors.ErrInvalidParameter.Wrapf("Tag value length exceeded") - } - } - } - } else { - if len(msg.Tags.GetTags()) > 0 { - return gnfderrors.ErrInvalidParameter.Wrapf("Tags are not supported") - } - } - return nil -} - func NewMsgDeleteGroup(operator sdk.AccAddress, groupName string) *MsgDeleteGroup { return &MsgDeleteGroup{ Operator: operator.String(), diff --git a/x/storage/types/options.go b/x/storage/types/options.go index ff4dd68b0..465269db2 100644 --- a/x/storage/types/options.go +++ b/x/storage/types/options.go @@ -13,7 +13,6 @@ type CreateBucketOptions struct { PaymentAddress string PrimarySpApproval *common.Approval ApprovalMsgBytes []byte - Tags *ResourceTags } type DeleteBucketOptions struct { @@ -35,7 +34,6 @@ type CreateObjectOptions struct { Checksums [][]byte PrimarySpApproval *common.Approval ApprovalMsgBytes []byte - Tags *ResourceTags } type CancelCreateObjectOptions struct { @@ -56,7 +54,6 @@ type CopyObjectOptions struct { type CreateGroupOptions struct { SourceType SourceType Extra string - Tags *ResourceTags } type LeaveGroupOptions struct { diff --git a/x/storage/types/tx.pb.go b/x/storage/types/tx.pb.go index 8b9901832..a089de8cd 100644 --- a/x/storage/types/tx.pb.go +++ b/x/storage/types/tx.pb.go @@ -54,8 +54,6 @@ type MsgCreateBucket struct { // The available read data for each user is the sum of the free read data provided by SP and // the ChargeReadQuota specified here. ChargedReadQuota uint64 `protobuf:"varint,7,opt,name=charged_read_quota,json=chargedReadQuota,proto3" json:"charged_read_quota,omitempty"` - // tags defines a list of tags which will be set to the bucket - Tags ResourceTags `protobuf:"bytes,8,opt,name=tags,proto3" json:"tags"` } func (m *MsgCreateBucket) Reset() { *m = MsgCreateBucket{} } @@ -140,13 +138,6 @@ func (m *MsgCreateBucket) GetChargedReadQuota() uint64 { return 0 } -func (m *MsgCreateBucket) GetTags() ResourceTags { - if m != nil { - return m.Tags - } - return ResourceTags{} -} - type MsgCreateBucketResponse struct { BucketId Uint `protobuf:"bytes,1,opt,name=bucket_id,json=bucketId,proto3,customtype=Uint" json:"bucket_id"` } @@ -393,8 +384,6 @@ type MsgCreateObject struct { ExpectChecksums [][]byte `protobuf:"bytes,8,rep,name=expect_checksums,json=expectChecksums,proto3" json:"expect_checksums,omitempty"` // redundancy_type can be ec or replica RedundancyType RedundancyType `protobuf:"varint,9,opt,name=redundancy_type,json=redundancyType,proto3,enum=greenfield.storage.RedundancyType" json:"redundancy_type,omitempty"` - // tags defines a list of tags which will be set to the object - Tags ResourceTags `protobuf:"bytes,10,opt,name=tags,proto3" json:"tags"` } func (m *MsgCreateObject) Reset() { *m = MsgCreateObject{} } @@ -493,13 +482,6 @@ func (m *MsgCreateObject) GetRedundancyType() RedundancyType { return REDUNDANCY_EC_TYPE } -func (m *MsgCreateObject) GetTags() ResourceTags { - if m != nil { - return m.Tags - } - return ResourceTags{} -} - type MsgCreateObjectResponse struct { ObjectId Uint `protobuf:"bytes,1,opt,name=object_id,json=objectId,proto3,customtype=Uint" json:"object_id"` } @@ -1088,8 +1070,6 @@ type MsgCreateGroup struct { GroupName string `protobuf:"bytes,2,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"` // extra defines extra info for the group Extra string `protobuf:"bytes,3,opt,name=extra,proto3" json:"extra,omitempty"` - // tags defines a list of tags which will be set to the group - Tags ResourceTags `protobuf:"bytes,4,opt,name=tags,proto3" json:"tags"` } func (m *MsgCreateGroup) Reset() { *m = MsgCreateGroup{} } @@ -1146,13 +1126,6 @@ func (m *MsgCreateGroup) GetExtra() string { return "" } -func (m *MsgCreateGroup) GetTags() ResourceTags { - if m != nil { - return m.Tags - } - return ResourceTags{} -} - type MsgCreateGroupResponse struct { GroupId Uint `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3,customtype=Uint" json:"group_id"` } @@ -3281,155 +3254,154 @@ func init() { func init() { proto.RegisterFile("greenfield/storage/tx.proto", fileDescriptor_ddb71b028305a3cc) } var fileDescriptor_ddb71b028305a3cc = []byte{ - // 2363 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0xcb, 0x6f, 0x1b, 0xc7, - 0x19, 0x37, 0x45, 0xea, 0xc1, 0x21, 0xf5, 0x5a, 0x2b, 0x11, 0x43, 0xd5, 0x14, 0xcd, 0xb4, 0x89, - 0xfc, 0x12, 0x1d, 0xd5, 0x35, 0x52, 0xa1, 0x28, 0x2a, 0x29, 0x8d, 0x4b, 0x24, 0x8c, 0x95, 0x95, - 0xec, 0x02, 0x01, 0x0a, 0x66, 0xc8, 0x1d, 0xaf, 0xb6, 0x21, 0x77, 0xb7, 0x3b, 0x4b, 0xd9, 0x4c, - 0x81, 0x1e, 0x7a, 0xe9, 0xa9, 0x40, 0x80, 0xf4, 0xd0, 0x43, 0x51, 0x14, 0x3d, 0xf5, 0x50, 0x14, - 0x45, 0x91, 0x3f, 0xa0, 0x40, 0x11, 0xc0, 0xe8, 0xc9, 0xc8, 0xa9, 0xe8, 0xc1, 0x0d, 0xec, 0x43, - 0xd1, 0x6b, 0x2f, 0x05, 0x7a, 0x0a, 0xe6, 0xb1, 0xb3, 0xb3, 0x6f, 0x4a, 0x96, 0x6c, 0x9d, 0xa4, - 0x9d, 0xf9, 0xcd, 0x37, 0xdf, 0x7b, 0xbe, 0xf9, 0x86, 0x60, 0x45, 0x77, 0x10, 0x32, 0xef, 0x19, - 0xa8, 0xaf, 0x35, 0xb1, 0x6b, 0x39, 0x50, 0x47, 0x4d, 0xf7, 0xc1, 0xba, 0xed, 0x58, 0xae, 0xa5, - 0x28, 0xfe, 0xe4, 0x3a, 0x9f, 0xac, 0x2e, 0xf7, 0x2c, 0x3c, 0xb0, 0x70, 0x73, 0x80, 0xf5, 0xe6, - 0xe1, 0x1b, 0xe4, 0x0f, 0x03, 0x57, 0x5f, 0x61, 0x13, 0x1d, 0xfa, 0xd5, 0x64, 0x1f, 0x7c, 0x6a, - 0x49, 0xb7, 0x74, 0x8b, 0x8d, 0x93, 0xff, 0xf8, 0xe8, 0xaa, 0x6e, 0x59, 0x7a, 0x1f, 0x35, 0xe9, - 0x57, 0x77, 0x78, 0xaf, 0xe9, 0x1a, 0x03, 0x84, 0x5d, 0x38, 0xb0, 0x39, 0xa0, 0x2e, 0xf1, 0xd6, - 0xb3, 0x06, 0x03, 0xcb, 0x6c, 0x42, 0xdb, 0x76, 0xac, 0x43, 0xd8, 0x17, 0x24, 0x22, 0x88, 0xfb, - 0x0e, 0xb4, 0x6d, 0xe4, 0x70, 0x40, 0x43, 0x02, 0xd8, 0xc8, 0x19, 0x18, 0x18, 0x1b, 0x96, 0xc9, - 0xb1, 0x31, 0x44, 0x3c, 0x15, 0x64, 0x02, 0x6c, 0xe8, 0xc0, 0x81, 0x27, 0x5f, 0x2d, 0x4e, 0x89, - 0x23, 0x1b, 0xf1, 0xf9, 0xc6, 0xff, 0xf3, 0x60, 0xbe, 0x8d, 0xf5, 0x1d, 0x07, 0x41, 0x17, 0x6d, - 0x0f, 0x7b, 0x1f, 0x21, 0x57, 0xd9, 0x00, 0xd3, 0x3d, 0xf2, 0x6d, 0x39, 0x95, 0x5c, 0x3d, 0xb7, - 0x56, 0xdc, 0xae, 0x7c, 0xf1, 0xd9, 0xb5, 0x25, 0xae, 0xb6, 0x2d, 0x4d, 0x73, 0x10, 0xc6, 0x7b, - 0xae, 0x63, 0x98, 0xba, 0xea, 0x01, 0x95, 0x55, 0x50, 0xea, 0xd2, 0xd5, 0x1d, 0x13, 0x0e, 0x50, - 0x65, 0x82, 0xac, 0x53, 0x01, 0x1b, 0x7a, 0x0f, 0x0e, 0x90, 0xb2, 0x0d, 0xc0, 0xa1, 0x81, 0x8d, - 0xae, 0xd1, 0x37, 0xdc, 0x51, 0x25, 0x5f, 0xcf, 0xad, 0xcd, 0x6d, 0x34, 0xd6, 0xa3, 0x56, 0x5c, - 0xbf, 0x2b, 0x50, 0xfb, 0x23, 0x1b, 0xa9, 0xd2, 0x2a, 0x65, 0x0b, 0xcc, 0xdb, 0x70, 0x34, 0x40, - 0xa6, 0xdb, 0x81, 0x8c, 0x8d, 0x4a, 0x21, 0x83, 0xc1, 0x39, 0xbe, 0x80, 0x8f, 0x2a, 0x6f, 0x03, - 0xc5, 0x76, 0x8c, 0x01, 0x74, 0x46, 0x1d, 0x6c, 0x0b, 0x2a, 0x93, 0x19, 0x54, 0x16, 0xf8, 0x9a, - 0x3d, 0xdb, 0xa3, 0xf3, 0x0e, 0x38, 0x2f, 0xd3, 0xe1, 0xb6, 0xaf, 0x4c, 0xd5, 0x73, 0x6b, 0xa5, - 0x8d, 0x15, 0x59, 0x2e, 0x6e, 0xaf, 0x2d, 0x0e, 0x51, 0x17, 0x7d, 0x5a, 0x7c, 0x48, 0xb9, 0x0a, - 0x94, 0xde, 0x01, 0x74, 0x74, 0xa4, 0x75, 0x1c, 0x04, 0xb5, 0xce, 0x4f, 0x86, 0x96, 0x0b, 0x2b, - 0xd3, 0xf5, 0xdc, 0x5a, 0x41, 0x5d, 0xe0, 0x33, 0x2a, 0x82, 0xda, 0xfb, 0x64, 0x5c, 0xd9, 0x04, - 0x05, 0x17, 0xea, 0xb8, 0x32, 0x43, 0xf7, 0xaa, 0xc7, 0xe9, 0x50, 0x45, 0xd8, 0x1a, 0x3a, 0x3d, - 0xb4, 0x0f, 0x75, 0xbc, 0x5d, 0x78, 0xf8, 0x78, 0xf5, 0x9c, 0x4a, 0xd7, 0x6c, 0x96, 0x7f, 0xfe, - 0xef, 0x3f, 0x5f, 0xf6, 0x8c, 0xd6, 0xd8, 0x03, 0xcb, 0x21, 0xdb, 0xab, 0x08, 0xdb, 0x96, 0x89, - 0x91, 0xf2, 0x26, 0x28, 0x72, 0x7b, 0x1a, 0x1a, 0xf7, 0x82, 0x15, 0x42, 0xe7, 0x9f, 0x8f, 0x57, - 0x0b, 0x77, 0x0c, 0xd3, 0xfd, 0xe2, 0xb3, 0x6b, 0x25, 0xae, 0x2a, 0xf2, 0xa9, 0xce, 0x30, 0x74, - 0x4b, 0x6b, 0xdc, 0xa7, 0x0e, 0xf5, 0x16, 0xea, 0x23, 0xe1, 0x50, 0x37, 0xc0, 0x8c, 0x65, 0x23, - 0x67, 0x2c, 0x8f, 0x12, 0xc8, 0x4c, 0x97, 0xda, 0x9c, 0x25, 0xc2, 0x08, 0x7c, 0xe3, 0x15, 0x2a, - 0x8d, 0xbc, 0xb1, 0x27, 0x4d, 0xe3, 0x57, 0x39, 0xb0, 0x44, 0xe6, 0x0c, 0xdc, 0xb3, 0x4c, 0xd7, - 0x30, 0x87, 0xa7, 0xcb, 0x99, 0xf2, 0x32, 0x98, 0x72, 0x10, 0xc4, 0x96, 0x49, 0x1d, 0xbd, 0xa8, - 0xf2, 0xaf, 0x30, 0xc7, 0x35, 0xf0, 0xb5, 0x38, 0xae, 0x04, 0xdb, 0xbf, 0x2b, 0x48, 0xc1, 0x79, - 0xbb, 0xfb, 0x63, 0xd4, 0x3b, 0xa5, 0xe0, 0x5c, 0x05, 0x25, 0x8b, 0x92, 0x67, 0x00, 0xc6, 0x34, - 0x60, 0x43, 0x14, 0x70, 0x11, 0x94, 0x6d, 0x38, 0xea, 0x5b, 0x50, 0xeb, 0x60, 0xe3, 0x63, 0x44, - 0xc3, 0xae, 0xa0, 0x96, 0xf8, 0xd8, 0x9e, 0xf1, 0x71, 0x38, 0xc0, 0x27, 0x8f, 0x15, 0xe0, 0x17, - 0x41, 0x99, 0xa8, 0x82, 0x04, 0x38, 0x49, 0x52, 0x34, 0x9c, 0x8a, 0x6a, 0x89, 0x8f, 0x11, 0x78, - 0x52, 0xe0, 0x4d, 0x1f, 0x2b, 0xf0, 0x2e, 0x81, 0x05, 0xf4, 0xc0, 0x26, 0x72, 0xf7, 0x0e, 0x50, - 0xef, 0x23, 0x3c, 0x1c, 0x90, 0xb0, 0xca, 0xaf, 0x95, 0xd5, 0x79, 0x36, 0xbe, 0xe3, 0x0d, 0x2b, - 0xef, 0x80, 0x79, 0x07, 0x69, 0x43, 0x53, 0x83, 0x66, 0x6f, 0xc4, 0xb8, 0x2b, 0x26, 0xcb, 0xa8, - 0x0a, 0x28, 0x95, 0x71, 0xce, 0x09, 0x7c, 0x8b, 0x10, 0x06, 0x27, 0x1a, 0xc2, 0xcc, 0x43, 0xe4, - 0x10, 0xe6, 0x46, 0x1d, 0x33, 0x84, 0x19, 0xba, 0xa5, 0x35, 0x3e, 0x9d, 0x00, 0xb3, 0x6d, 0xac, - 0xef, 0x21, 0xd8, 0xe7, 0x5e, 0x77, 0x4a, 0x71, 0x92, 0xe9, 0x77, 0xdf, 0x02, 0xcb, 0x7a, 0xdf, - 0xea, 0xc2, 0x7e, 0xe7, 0xd0, 0x70, 0xdc, 0x21, 0xec, 0x77, 0x74, 0xc7, 0x1a, 0xda, 0x44, 0x22, - 0xe2, 0x82, 0xb3, 0xea, 0x12, 0x9b, 0xbe, 0xcb, 0x66, 0x6f, 0x91, 0xc9, 0x96, 0xa6, 0xbc, 0x05, - 0x56, 0x31, 0xea, 0x59, 0xa6, 0xc6, 0xdd, 0xa4, 0xdb, 0xc7, 0x1d, 0xa8, 0xeb, 0x1d, 0x6c, 0xe8, - 0x26, 0x74, 0x87, 0x0e, 0x62, 0x29, 0xbf, 0xac, 0xae, 0x08, 0xd8, 0x9e, 0xbd, 0xdd, 0xc7, 0x5b, - 0xba, 0xbe, 0x27, 0x20, 0xe1, 0x68, 0x5d, 0x06, 0x2f, 0x05, 0x94, 0x22, 0xc2, 0xf4, 0x37, 0x39, - 0x70, 0xbe, 0x8d, 0x75, 0x15, 0x91, 0xd1, 0x17, 0xaf, 0xb4, 0x30, 0xdf, 0x17, 0xc0, 0x4a, 0x0c, - 0x77, 0x82, 0xfb, 0x3f, 0x31, 0x63, 0xef, 0x58, 0xf6, 0x88, 0xf3, 0x5d, 0x0d, 0xf3, 0x2d, 0x71, - 0xf7, 0x1a, 0x98, 0xc7, 0x4e, 0xaf, 0x13, 0xe5, 0x70, 0x16, 0x3b, 0xbd, 0x6d, 0x9f, 0xc9, 0xd7, - 0xc0, 0xbc, 0x86, 0xdd, 0x00, 0x8e, 0x31, 0x3a, 0xab, 0x61, 0x37, 0x88, 0x23, 0xf4, 0x64, 0x81, - 0x0a, 0x82, 0xde, 0x6d, 0xdf, 0x11, 0x38, 0x3d, 0x19, 0x37, 0x29, 0xe8, 0x49, 0x38, 0x15, 0x2c, - 0x13, 0xdc, 0x31, 0xcf, 0xe6, 0x25, 0x0d, 0xbb, 0xbb, 0xe1, 0x2c, 0x11, 0xd6, 0xe7, 0xfb, 0xd4, - 0x0f, 0x7c, 0x7d, 0x9d, 0x40, 0xc0, 0xfd, 0x3a, 0x27, 0x1d, 0x9a, 0x67, 0xcb, 0x7b, 0xe4, 0x53, - 0x35, 0xe4, 0x39, 0x8f, 0x22, 0xa7, 0xea, 0xe9, 0xb2, 0xbe, 0x09, 0x80, 0xd0, 0x2f, 0xae, 0xe4, - 0xeb, 0xf9, 0x2c, 0x05, 0x17, 0x3d, 0x05, 0x63, 0xe9, 0x44, 0x2e, 0x1c, 0xe9, 0x44, 0x0e, 0x89, - 0xfc, 0xb7, 0x1c, 0x98, 0x13, 0xf9, 0x96, 0x66, 0x9b, 0x63, 0x1d, 0xc8, 0x17, 0x00, 0x60, 0x79, - 0x4c, 0x92, 0xb4, 0x48, 0x47, 0xa8, 0xa0, 0x4b, 0x60, 0x12, 0x3d, 0x70, 0x1d, 0xc8, 0xad, 0xc3, - 0x3e, 0xc4, 0xa1, 0x51, 0x78, 0xe6, 0x43, 0x63, 0x17, 0xbc, 0x1c, 0x14, 0x42, 0xb8, 0xf0, 0x4d, - 0x30, 0x23, 0x12, 0xec, 0x18, 0x1e, 0x3c, 0xad, 0xb3, 0x84, 0xdb, 0x70, 0xa9, 0x5a, 0x98, 0x97, - 0x30, 0xb5, 0x1c, 0xcf, 0x07, 0xd2, 0x15, 0x13, 0xb6, 0x56, 0x85, 0xca, 0x21, 0xed, 0x2a, 0xec, - 0xf4, 0xf9, 0x04, 0x75, 0xcd, 0x3b, 0xb6, 0xe6, 0x89, 0xd8, 0x46, 0x83, 0x2e, 0x72, 0x8e, 0xc9, - 0xd6, 0xb7, 0x41, 0x89, 0xb1, 0x65, 0xdd, 0x37, 0x91, 0xc3, 0xf8, 0x4a, 0x59, 0xc8, 0x64, 0xb8, - 0x4d, 0xb0, 0x21, 0x89, 0xf2, 0x61, 0x53, 0xff, 0x00, 0xcc, 0x0d, 0x28, 0x67, 0xb8, 0xe3, 0x5a, - 0xe4, 0x3e, 0x52, 0x29, 0xd4, 0xf3, 0x6b, 0xa5, 0xf8, 0xaa, 0xa2, 0x8d, 0x75, 0x49, 0x16, 0xb5, - 0xcc, 0x57, 0xee, 0x5b, 0x5b, 0x1a, 0x39, 0xf3, 0x16, 0x25, 0x4a, 0x1a, 0x55, 0x4a, 0x65, 0x92, - 0x06, 0x49, 0x32, 0xa7, 0xf3, 0x82, 0x04, 0xd3, 0x62, 0x7c, 0x3c, 0x44, 0xd4, 0x28, 0xf4, 0xfc, - 0x5f, 0xef, 0xe8, 0x33, 0xd1, 0xfd, 0xb3, 0xac, 0xe6, 0xef, 0x80, 0x69, 0x2e, 0xe9, 0x11, 0xf4, - 0xeb, 0x2d, 0x49, 0x3a, 0x50, 0x83, 0x32, 0x0b, 0x9d, 0xfc, 0x92, 0xe5, 0x08, 0x59, 0x1d, 0xd7, - 0xc1, 0x14, 0xa3, 0x95, 0xa9, 0x0c, 0x8e, 0x53, 0x5a, 0x80, 0x54, 0xa0, 0x86, 0x03, 0x5d, 0xc3, - 0x32, 0x3b, 0xae, 0xc1, 0xa3, 0xa1, 0xb4, 0x51, 0x5d, 0x67, 0xbd, 0x89, 0x75, 0xaf, 0x37, 0xb1, - 0xbe, 0xef, 0xf5, 0x26, 0xb6, 0x0b, 0x9f, 0xfc, 0x6b, 0x35, 0xa7, 0xce, 0xf9, 0x0b, 0xc9, 0x54, - 0xe3, 0xef, 0xcc, 0x46, 0x92, 0x11, 0xbf, 0x4f, 0xf3, 0xc9, 0x59, 0xb3, 0x91, 0xc8, 0x7a, 0x05, - 0x29, 0xeb, 0xc5, 0xeb, 0x3e, 0x2c, 0x8b, 0xd0, 0xfd, 0x1f, 0x72, 0xb4, 0x98, 0x79, 0x17, 0xc1, - 0x43, 0x9e, 0x87, 0x8e, 0xae, 0xfa, 0x53, 0x93, 0x70, 0xb3, 0x44, 0x64, 0xe1, 0xdb, 0xf0, 0x72, - 0xd2, 0xe7, 0xd4, 0x3f, 0x56, 0x27, 0x24, 0x7b, 0xb1, 0x52, 0xa9, 0x65, 0xde, 0xb3, 0x4e, 0xeb, - 0x54, 0x7d, 0x37, 0xb6, 0xf9, 0x90, 0xa7, 0xce, 0x56, 0x8b, 0x29, 0x96, 0xee, 0xb4, 0x4c, 0xf7, - 0xe6, 0x8d, 0xbb, 0xb0, 0x3f, 0x44, 0x31, 0xcd, 0x89, 0x13, 0x68, 0xd1, 0x9c, 0xc0, 0x45, 0x32, - 0xcd, 0x6b, 0x7c, 0x8d, 0x0a, 0x8d, 0xff, 0x36, 0xc7, 0x4a, 0x3a, 0x68, 0xf6, 0x50, 0x3f, 0x70, - 0xdb, 0x3e, 0x23, 0x45, 0xd8, 0x2a, 0xb8, 0x10, 0xcb, 0x9f, 0x90, 0xe0, 0xaf, 0x13, 0xa0, 0xdc, - 0xc6, 0xfa, 0xee, 0xd0, 0xdd, 0xb5, 0xfa, 0x46, 0x6f, 0x74, 0x4c, 0xc6, 0xbf, 0x0b, 0x8a, 0xb6, - 0x63, 0x98, 0x3d, 0xc3, 0x86, 0x7d, 0x9e, 0x6f, 0x02, 0x75, 0x86, 0xdf, 0xa7, 0x5c, 0xdf, 0xf5, - 0x70, 0xaa, 0xbf, 0x84, 0xdc, 0x1c, 0x1c, 0x5e, 0x82, 0x70, 0xa1, 0xc4, 0xb7, 0xf2, 0x3d, 0x00, - 0xb0, 0x0b, 0x5d, 0x44, 0x4c, 0xed, 0x65, 0xe1, 0x24, 0xe2, 0x7b, 0x1e, 0x50, 0x95, 0xd6, 0x28, - 0xed, 0x68, 0x4e, 0x9c, 0xce, 0xcc, 0x89, 0x33, 0x0f, 0x1f, 0xaf, 0xe6, 0xe2, 0xf2, 0x62, 0x58, - 0xc7, 0xbb, 0xb4, 0x62, 0x10, 0x1a, 0x94, 0xab, 0x7a, 0x9b, 0x8e, 0x78, 0x97, 0xce, 0xac, 0xaa, - 0x9e, 0xa1, 0x5b, 0x5a, 0xe3, 0x2f, 0x72, 0x55, 0x7f, 0x56, 0xed, 0x12, 0x56, 0xc3, 0x9e, 0x54, - 0xef, 0x9f, 0x98, 0x26, 0xfe, 0xc3, 0x34, 0xd1, 0x36, 0x1c, 0xc7, 0x72, 0x9e, 0x29, 0xb4, 0xae, - 0x80, 0x09, 0x43, 0xe3, 0x39, 0x39, 0x75, 0xf3, 0x09, 0x43, 0x0b, 0xc7, 0x61, 0x3e, 0x2b, 0x0e, - 0x0b, 0x91, 0xfe, 0x43, 0x03, 0xcc, 0x6a, 0x08, 0xbb, 0x9d, 0xde, 0x01, 0x34, 0x4c, 0x22, 0xf6, - 0x24, 0xed, 0x3a, 0x94, 0xc8, 0xe0, 0x0e, 0x19, 0x6b, 0x69, 0xf1, 0x17, 0x26, 0x59, 0x54, 0x11, - 0xa5, 0x0f, 0x65, 0x35, 0x3c, 0x53, 0x07, 0xf2, 0x64, 0xd5, 0x10, 0x91, 0xb2, 0x90, 0x29, 0xa5, - 0x9c, 0x51, 0x99, 0x94, 0x81, 0x8c, 0xfa, 0xa5, 0x5c, 0x73, 0xf8, 0xf3, 0x2f, 0xac, 0x8f, 0x14, - 0x3c, 0x53, 0x0a, 0x27, 0x71, 0xa6, 0xc8, 0x76, 0x0e, 0xf5, 0x6d, 0x3f, 0x67, 0x15, 0x20, 0x9b, - 0x7b, 0x96, 0xeb, 0xd0, 0x91, 0xcc, 0x9c, 0x51, 0x5e, 0x1d, 0xc3, 0xc8, 0xec, 0x7e, 0x25, 0x89, - 0x21, 0x24, 0xfc, 0x94, 0x79, 0x32, 0xb3, 0xef, 0x2e, 0x7d, 0x70, 0x52, 0x6e, 0x82, 0x22, 0x1c, - 0xba, 0x07, 0x96, 0x43, 0x54, 0x9c, 0x25, 0xa3, 0x0f, 0x55, 0xde, 0x04, 0x53, 0xec, 0xc9, 0xca, - 0xaf, 0x70, 0xa3, 0x76, 0x61, 0x7b, 0xf0, 0x3b, 0x2d, 0xc7, 0x6f, 0xce, 0x11, 0x76, 0x7d, 0x4a, - 0xdc, 0x24, 0x32, 0x53, 0x82, 0xe1, 0xff, 0xe5, 0xc0, 0x02, 0x95, 0x45, 0x77, 0xe0, 0x29, 0xbf, - 0x4b, 0x28, 0x97, 0xc0, 0x62, 0xa8, 0x07, 0x65, 0x68, 0xd4, 0x1e, 0xb3, 0xea, 0x9c, 0xdc, 0x60, - 0x6a, 0x69, 0x69, 0xed, 0xaa, 0xc2, 0x09, 0xb5, 0xab, 0xaa, 0xa0, 0x12, 0x16, 0x5c, 0x68, 0xe5, - 0x17, 0x13, 0x74, 0x72, 0xc7, 0x1a, 0xd8, 0x24, 0xdf, 0x3f, 0x17, 0xed, 0x6c, 0x83, 0x5a, 0x6c, - 0x4b, 0xf7, 0x1e, 0x1c, 0x18, 0xfd, 0x91, 0xaf, 0xaa, 0x6a, 0xb4, 0xb3, 0xfb, 0x36, 0x85, 0xb4, - 0x34, 0x65, 0x0b, 0x94, 0xf5, 0x43, 0xbd, 0x33, 0x80, 0xb6, 0x6d, 0x98, 0xba, 0x57, 0x4d, 0xd4, - 0xe2, 0x1c, 0xe7, 0xd6, 0xdd, 0x5b, 0x6d, 0x06, 0x53, 0x4b, 0xfa, 0xa1, 0xce, 0xff, 0x8f, 0xdc, - 0xe9, 0x1a, 0xa0, 0x9e, 0xa4, 0x08, 0xa1, 0xad, 0x9f, 0xb1, 0xb6, 0x09, 0xad, 0xc2, 0x9e, 0x87, - 0xaa, 0xc2, 0x3c, 0xd6, 0x41, 0x2d, 0x7e, 0xff, 0x10, 0x87, 0xac, 0xd5, 0xfb, 0xe2, 0x38, 0x8c, - 0xd9, 0x5f, 0x70, 0xf8, 0xfb, 0x1c, 0x28, 0xd2, 0x2e, 0xba, 0xbb, 0x0f, 0xf5, 0x63, 0x72, 0x25, - 0x57, 0x33, 0x13, 0xa1, 0x2a, 0xf3, 0x06, 0x6f, 0x92, 0xe5, 0xc7, 0x6b, 0x92, 0xf1, 0xf6, 0x58, - 0x48, 0x8c, 0xf3, 0x60, 0x51, 0xf0, 0xe8, 0x71, 0xbe, 0xf1, 0xc7, 0x65, 0x90, 0x6f, 0x63, 0x5d, - 0xf9, 0x10, 0x94, 0x03, 0xaf, 0xe5, 0xaf, 0x26, 0x74, 0x12, 0x64, 0x50, 0xf5, 0xca, 0x18, 0x20, - 0x51, 0x67, 0x7d, 0x08, 0xca, 0x81, 0xe7, 0xd3, 0xa4, 0x1d, 0x64, 0x50, 0xe2, 0x0e, 0x71, 0xef, - 0xa1, 0x4a, 0x1f, 0x2c, 0x44, 0xae, 0x97, 0xaf, 0x27, 0x10, 0x08, 0x03, 0xab, 0xcd, 0x31, 0x81, - 0xb2, 0x3c, 0x81, 0x92, 0x27, 0x49, 0x1e, 0x19, 0x94, 0x28, 0x4f, 0xdc, 0x81, 0xab, 0x58, 0x60, - 0x31, 0xfa, 0xb6, 0xbb, 0x96, 0xa4, 0x91, 0x30, 0xb2, 0x7a, 0x7d, 0x5c, 0xa4, 0x2c, 0x52, 0xe0, - 0x9e, 0x98, 0xee, 0x04, 0x0c, 0x94, 0xe1, 0x04, 0xa1, 0xc7, 0x84, 0x0f, 0x00, 0x90, 0x9e, 0x92, - 0x2e, 0x26, 0x2c, 0xf5, 0x21, 0xd5, 0x4b, 0x99, 0x10, 0xd9, 0xfc, 0x91, 0xc7, 0xaa, 0x24, 0xf3, - 0x87, 0x81, 0x89, 0xe6, 0x4f, 0x7a, 0x60, 0x22, 0x92, 0x48, 0x8f, 0x4b, 0x49, 0x92, 0xf8, 0x90, - 0x44, 0x49, 0x62, 0x9e, 0x5c, 0x44, 0xa8, 0x64, 0xd8, 0x41, 0x06, 0x65, 0x84, 0x4a, 0x68, 0x07, - 0x07, 0x28, 0x31, 0x7d, 0x81, 0x44, 0x16, 0x23, 0xd0, 0xea, 0x1b, 0x63, 0x43, 0xa3, 0x01, 0x93, - 0x21, 0x95, 0x0c, 0xca, 0x08, 0x98, 0xd0, 0x0e, 0xc1, 0x80, 0xe1, 0xdb, 0x8c, 0x11, 0x30, 0x7c, - 0xaf, 0xeb, 0xe3, 0x22, 0xa3, 0x19, 0x47, 0xba, 0x0c, 0xa4, 0x67, 0x1c, 0x1f, 0x98, 0x91, 0x71, - 0xa2, 0xd7, 0x0f, 0xe5, 0x47, 0xa0, 0x24, 0x3f, 0xd1, 0x34, 0x52, 0x03, 0x8f, 0x62, 0xaa, 0x97, - 0xb3, 0x31, 0x32, 0x79, 0xf9, 0xa9, 0xa3, 0x91, 0xea, 0x4f, 0xe9, 0xe4, 0x63, 0x1e, 0x2f, 0x88, - 0x71, 0xa2, 0x0f, 0x17, 0x6b, 0xa9, 0x3a, 0x90, 0x90, 0x89, 0xc6, 0x49, 0xec, 0xe2, 0xfb, 0xc6, - 0x91, 0xba, 0xc3, 0xaf, 0x67, 0x53, 0xa1, 0xc0, 0x0c, 0xe3, 0x44, 0x7b, 0xb4, 0x24, 0x1f, 0x48, - 0xfd, 0xd9, 0xa4, 0x7c, 0xe0, 0x43, 0x12, 0xf3, 0x41, 0xb4, 0x77, 0x4a, 0x2c, 0x23, 0xdf, 0xba, - 0x1a, 0xa9, 0x31, 0x91, 0x6e, 0x99, 0x98, 0x6b, 0x0f, 0x4b, 0x9c, 0xa1, 0xa7, 0x8e, 0xe4, 0xc4, - 0x19, 0x04, 0xa6, 0x24, 0xce, 0xf8, 0x87, 0x04, 0xe5, 0x87, 0xa0, 0xe8, 0x37, 0xf4, 0xea, 0x09, - 0xab, 0x05, 0xa2, 0xba, 0x96, 0x85, 0x88, 0x66, 0x4d, 0x4e, 0x3b, 0x3d, 0x6b, 0x72, 0xf2, 0x57, - 0xc6, 0x00, 0xc9, 0x3b, 0x04, 0xee, 0x86, 0xaf, 0xa6, 0x3a, 0x09, 0x03, 0x25, 0xee, 0x10, 0x77, - 0xa1, 0x53, 0x7a, 0x60, 0x36, 0x58, 0xe1, 0x7e, 0x3d, 0xd1, 0x8e, 0x12, 0xaa, 0x7a, 0x75, 0x1c, - 0x94, 0xd8, 0xe4, 0xa7, 0xe0, 0xa5, 0xf8, 0xbb, 0xd1, 0xd5, 0xc4, 0x23, 0x2a, 0x06, 0x5d, 0xbd, - 0x71, 0x14, 0xb4, 0xd8, 0x7c, 0x08, 0xce, 0xc7, 0xdd, 0x35, 0x2e, 0xa7, 0x9e, 0x27, 0xc1, 0x8d, - 0x37, 0xc6, 0xc7, 0xca, 0xdb, 0xc6, 0x5d, 0x20, 0x2e, 0xa7, 0x1e, 0xfb, 0xe3, 0x6d, 0x9b, 0x72, - 0x31, 0x50, 0xde, 0x03, 0x53, 0xfc, 0x52, 0x70, 0x21, 0xb1, 0x90, 0x21, 0xd3, 0xd5, 0x6f, 0xa4, - 0x4e, 0x7b, 0xf4, 0xb6, 0x5b, 0x0f, 0x9f, 0xd4, 0x72, 0x8f, 0x9e, 0xd4, 0x72, 0x5f, 0x3e, 0xa9, - 0xe5, 0x3e, 0x79, 0x5a, 0x3b, 0xf7, 0xe8, 0x69, 0xed, 0xdc, 0x3f, 0x9e, 0xd6, 0xce, 0x7d, 0xd0, - 0xd4, 0x0d, 0xf7, 0x60, 0xd8, 0x25, 0xb7, 0xe9, 0x66, 0xd7, 0xec, 0x5e, 0xa3, 0x0d, 0x91, 0xa6, - 0xf4, 0x3b, 0xd9, 0x07, 0xc1, 0x5f, 0xca, 0x76, 0xa7, 0x68, 0x5b, 0xf9, 0x9b, 0x5f, 0x05, 0x00, - 0x00, 0xff, 0xff, 0xf3, 0xf1, 0x88, 0x2c, 0x91, 0x2c, 0x00, 0x00, + // 2339 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5a, 0x4d, 0x6c, 0x1b, 0xc7, + 0x15, 0x36, 0x45, 0x4a, 0x32, 0x1f, 0x29, 0xc9, 0x5e, 0x2b, 0x11, 0x43, 0xd5, 0x14, 0xcd, 0xb4, + 0x89, 0xfc, 0x27, 0x3a, 0xaa, 0x6b, 0xa4, 0x42, 0x51, 0x54, 0x52, 0x1a, 0x97, 0x48, 0x18, 0x2b, + 0x2b, 0xd9, 0x05, 0x02, 0x14, 0xcc, 0x90, 0x3b, 0x5e, 0x6d, 0x43, 0xee, 0x6e, 0x77, 0x96, 0xb2, + 0x99, 0x02, 0x3d, 0xf4, 0xd2, 0x53, 0x81, 0x00, 0xe9, 0xa1, 0x87, 0xa2, 0x87, 0x9e, 0x7a, 0x28, + 0x8a, 0xa2, 0xc8, 0xb9, 0xe8, 0x25, 0x80, 0xd1, 0x93, 0x91, 0x53, 0xd1, 0x83, 0x1b, 0xd8, 0x05, + 0x8a, 0x5e, 0x7b, 0xe9, 0xb5, 0x98, 0x9d, 0xd9, 0xd9, 0xe1, 0xfe, 0x52, 0xb2, 0x14, 0xeb, 0x24, + 0xed, 0xcc, 0x37, 0x33, 0xef, 0x7f, 0xde, 0x7b, 0x43, 0x58, 0xd6, 0x1d, 0x8c, 0xcd, 0xfb, 0x06, + 0xee, 0x6b, 0x4d, 0xe2, 0x5a, 0x0e, 0xd2, 0x71, 0xd3, 0x7d, 0xb8, 0x66, 0x3b, 0x96, 0x6b, 0x29, + 0x4a, 0x30, 0xb9, 0xc6, 0x27, 0xab, 0x4b, 0x3d, 0x8b, 0x0c, 0x2c, 0xd2, 0x1c, 0x10, 0xbd, 0x79, + 0xf0, 0x06, 0xfd, 0xc3, 0xc0, 0xd5, 0x57, 0xd8, 0x44, 0xc7, 0xfb, 0x6a, 0xb2, 0x0f, 0x3e, 0xb5, + 0xa8, 0x5b, 0xba, 0xc5, 0xc6, 0xe9, 0x7f, 0x7c, 0x74, 0x45, 0xb7, 0x2c, 0xbd, 0x8f, 0x9b, 0xde, + 0x57, 0x77, 0x78, 0xbf, 0xe9, 0x1a, 0x03, 0x4c, 0x5c, 0x34, 0xb0, 0x39, 0xa0, 0x2e, 0xd1, 0xd6, + 0xb3, 0x06, 0x03, 0xcb, 0x6c, 0x22, 0xdb, 0x76, 0xac, 0x03, 0xd4, 0x17, 0x5b, 0x44, 0x10, 0x0f, + 0x1c, 0x64, 0xdb, 0xd8, 0xe1, 0x80, 0x86, 0x04, 0xb0, 0xb1, 0x33, 0x30, 0x08, 0x31, 0x2c, 0x93, + 0x63, 0x63, 0x36, 0xf1, 0x45, 0x90, 0x09, 0xb0, 0x91, 0x83, 0x06, 0x3e, 0x7f, 0xb5, 0x38, 0x21, + 0x8e, 0x6c, 0xcc, 0xe7, 0x1b, 0x7f, 0xc9, 0xc3, 0x42, 0x9b, 0xe8, 0xdb, 0x0e, 0x46, 0x2e, 0xde, + 0x1a, 0xf6, 0x3e, 0xc2, 0xae, 0xb2, 0x0e, 0xb3, 0x3d, 0xfa, 0x6d, 0x39, 0x95, 0x5c, 0x3d, 0xb7, + 0x5a, 0xdc, 0xaa, 0x7c, 0xf1, 0xd9, 0xf5, 0x45, 0x2e, 0xb6, 0x4d, 0x4d, 0x73, 0x30, 0x21, 0xbb, + 0xae, 0x63, 0x98, 0xba, 0xea, 0x03, 0x95, 0x15, 0x28, 0x75, 0xbd, 0xd5, 0x1d, 0x13, 0x0d, 0x70, + 0x65, 0x8a, 0xae, 0x53, 0x81, 0x0d, 0xbd, 0x87, 0x06, 0x58, 0xd9, 0x02, 0x38, 0x30, 0x88, 0xd1, + 0x35, 0xfa, 0x86, 0x3b, 0xaa, 0xe4, 0xeb, 0xb9, 0xd5, 0xf9, 0xf5, 0xc6, 0x5a, 0x54, 0x8b, 0x6b, + 0xf7, 0x04, 0x6a, 0x6f, 0x64, 0x63, 0x55, 0x5a, 0xa5, 0x6c, 0xc2, 0x82, 0x8d, 0x46, 0x03, 0x6c, + 0xba, 0x1d, 0xc4, 0xc8, 0xa8, 0x14, 0x32, 0x08, 0x9c, 0xe7, 0x0b, 0xf8, 0xa8, 0xf2, 0x36, 0x28, + 0xb6, 0x63, 0x0c, 0x90, 0x33, 0xea, 0x10, 0x5b, 0xec, 0x32, 0x9d, 0xb1, 0xcb, 0x39, 0xbe, 0x66, + 0xd7, 0xf6, 0xf7, 0x79, 0x07, 0x2e, 0xc8, 0xfb, 0x70, 0xdd, 0x57, 0x66, 0xea, 0xb9, 0xd5, 0xd2, + 0xfa, 0xb2, 0xcc, 0x17, 0xd7, 0xd7, 0x26, 0x87, 0xa8, 0xe7, 0x83, 0xbd, 0xf8, 0x90, 0x72, 0x0d, + 0x94, 0xde, 0x3e, 0x72, 0x74, 0xac, 0x75, 0x1c, 0x8c, 0xb4, 0xce, 0x4f, 0x86, 0x96, 0x8b, 0x2a, + 0xb3, 0xf5, 0xdc, 0x6a, 0x41, 0x3d, 0xc7, 0x67, 0x54, 0x8c, 0xb4, 0xf7, 0xe9, 0xf8, 0x46, 0xf9, + 0xe7, 0xff, 0xfe, 0xd3, 0x15, 0x5f, 0xf0, 0x8d, 0x5d, 0x58, 0x0a, 0xe9, 0x4f, 0xc5, 0xc4, 0xb6, + 0x4c, 0x82, 0x95, 0x37, 0xa1, 0xc8, 0x75, 0x62, 0x68, 0x5c, 0x93, 0xcb, 0x8f, 0x9e, 0xac, 0x9c, + 0xf9, 0xc7, 0x93, 0x95, 0xc2, 0x5d, 0xc3, 0x74, 0xbf, 0xf8, 0xec, 0x7a, 0x89, 0xb3, 0x4b, 0x3f, + 0xd5, 0xb3, 0x0c, 0xdd, 0xd2, 0x1a, 0x0f, 0x3c, 0xa3, 0x78, 0x0b, 0xf7, 0xb1, 0x30, 0x8a, 0x9b, + 0x70, 0xd6, 0xb2, 0xb1, 0x33, 0x91, 0x55, 0x08, 0x64, 0xa6, 0x59, 0x6c, 0xcc, 0x51, 0x66, 0x04, + 0xbe, 0xf1, 0x8a, 0xc7, 0x8d, 0x7c, 0xb0, 0xcf, 0x4d, 0xe3, 0x57, 0x39, 0x58, 0xa4, 0x73, 0x06, + 0xe9, 0x59, 0xa6, 0x6b, 0x98, 0xc3, 0x93, 0xa5, 0x4c, 0x79, 0x19, 0x66, 0x1c, 0x8c, 0x88, 0x65, + 0x7a, 0xc6, 0x5a, 0x54, 0xf9, 0x57, 0x98, 0xe2, 0x1a, 0x7c, 0x2d, 0x8e, 0x2a, 0x41, 0xf6, 0xbf, + 0x64, 0x07, 0xbb, 0xd3, 0xfd, 0x31, 0xee, 0x9d, 0x90, 0x83, 0xad, 0x40, 0xc9, 0xf2, 0xb6, 0x67, + 0x00, 0x46, 0x34, 0xb0, 0x21, 0x0f, 0x70, 0x09, 0xca, 0x36, 0x1a, 0xf5, 0x2d, 0xa4, 0x75, 0x88, + 0xf1, 0x31, 0xf6, 0x5c, 0xa7, 0xa0, 0x96, 0xf8, 0xd8, 0xae, 0xf1, 0x71, 0xd8, 0x49, 0xa7, 0x8f, + 0xe4, 0xa4, 0x97, 0xa0, 0x4c, 0x45, 0x41, 0x9d, 0x94, 0x06, 0x1a, 0xcf, 0x25, 0x8a, 0x6a, 0x89, + 0x8f, 0x51, 0x78, 0x92, 0xf3, 0xcc, 0x1e, 0xc9, 0x79, 0x2e, 0xc3, 0x39, 0xfc, 0xd0, 0xa6, 0x7c, + 0xf7, 0xf6, 0x71, 0xef, 0x23, 0x32, 0x1c, 0x90, 0xca, 0xd9, 0x7a, 0x7e, 0xb5, 0xac, 0x2e, 0xb0, + 0xf1, 0x6d, 0x7f, 0x58, 0x79, 0x07, 0x16, 0x1c, 0xac, 0x0d, 0x4d, 0x0d, 0x99, 0xbd, 0x11, 0xa3, + 0xae, 0x98, 0xcc, 0xa3, 0x2a, 0xa0, 0x1e, 0x8f, 0xf3, 0xce, 0xd8, 0x77, 0x8a, 0x1b, 0x32, 0x2d, + 0xcb, 0x6e, 0xc8, 0x15, 0x33, 0xa1, 0x1b, 0x32, 0x74, 0x4b, 0x6b, 0x7c, 0x3a, 0x05, 0x73, 0x6d, + 0xa2, 0xef, 0x62, 0xd4, 0xe7, 0x96, 0x73, 0x42, 0xb6, 0x9e, 0x69, 0x3b, 0xdf, 0x82, 0x25, 0xbd, + 0x6f, 0x75, 0x51, 0xbf, 0x73, 0x60, 0x38, 0xee, 0x10, 0xf5, 0x3b, 0xba, 0x63, 0x0d, 0x6d, 0xca, + 0x11, 0x35, 0xa3, 0x39, 0x75, 0x91, 0x4d, 0xdf, 0x63, 0xb3, 0xb7, 0xe9, 0x64, 0x4b, 0x53, 0xde, + 0x82, 0x15, 0x82, 0x7b, 0x96, 0xa9, 0x71, 0x55, 0x77, 0xfb, 0xa4, 0x83, 0x74, 0xbd, 0x43, 0x0c, + 0xdd, 0x44, 0xee, 0xd0, 0xc1, 0x2c, 0xf4, 0x96, 0xd5, 0x65, 0x01, 0xdb, 0xb5, 0xb7, 0xfa, 0x64, + 0x53, 0xd7, 0x77, 0x05, 0x24, 0xec, 0x71, 0x4b, 0xf0, 0xd2, 0x98, 0x50, 0x84, 0xab, 0xfd, 0x26, + 0x07, 0x17, 0xda, 0x44, 0x57, 0x31, 0x1d, 0x7d, 0xf1, 0x42, 0x0b, 0xd3, 0x7d, 0x11, 0x96, 0x63, + 0xa8, 0x13, 0xd4, 0xff, 0x91, 0x29, 0x7b, 0xdb, 0xb2, 0x47, 0x9c, 0xee, 0x6a, 0x98, 0x6e, 0x89, + 0xba, 0xd7, 0x60, 0x81, 0x38, 0xbd, 0x4e, 0x94, 0xc2, 0x39, 0xe2, 0xf4, 0xb6, 0x02, 0x22, 0x5f, + 0x83, 0x05, 0x8d, 0xb8, 0x63, 0x38, 0x46, 0xe8, 0x9c, 0x46, 0xdc, 0x71, 0x1c, 0xdd, 0x4f, 0x66, + 0xa8, 0x20, 0xf6, 0xbb, 0x13, 0x18, 0x02, 0xdf, 0x4f, 0xc6, 0x4d, 0x8b, 0xfd, 0x24, 0x9c, 0x0a, + 0x4b, 0x14, 0x77, 0xc4, 0x3b, 0x72, 0x51, 0x23, 0xee, 0x4e, 0xd8, 0xd3, 0xc3, 0xf2, 0x7c, 0xdf, + 0xb3, 0x83, 0x40, 0x5e, 0xc7, 0xe0, 0x70, 0xbf, 0xce, 0x49, 0x17, 0xdf, 0xe9, 0xb2, 0x1e, 0xf9, + 0x66, 0x0c, 0x59, 0xce, 0xe3, 0xc8, 0xcd, 0x78, 0xb2, 0xa4, 0x6f, 0x00, 0x08, 0xf9, 0x92, 0x4a, + 0xbe, 0x9e, 0xcf, 0x12, 0x70, 0xd1, 0x17, 0x30, 0x91, 0x6e, 0xd5, 0xc2, 0xa1, 0x6e, 0xd5, 0x10, + 0xcb, 0xbf, 0xc8, 0xc1, 0xbc, 0x88, 0xb7, 0x5e, 0xb4, 0x39, 0xd2, 0xa5, 0x7a, 0x11, 0x80, 0xc5, + 0x31, 0x89, 0xd3, 0xa2, 0x37, 0xe2, 0x31, 0xba, 0x08, 0xd3, 0xf8, 0xa1, 0xeb, 0x20, 0xae, 0x1d, + 0xf6, 0x11, 0x0a, 0xfc, 0x3b, 0xf0, 0xf2, 0x38, 0x21, 0xc2, 0x0c, 0x6f, 0xc1, 0x59, 0x11, 0x24, + 0x27, 0xb0, 0xc2, 0x59, 0x9d, 0x05, 0xcd, 0x86, 0xeb, 0xb1, 0xc6, 0x34, 0xcd, 0x58, 0x3b, 0x9a, + 0x1e, 0xd3, 0x99, 0x0b, 0x4b, 0xbc, 0xe2, 0xf1, 0x21, 0x9d, 0x2a, 0x64, 0xfd, 0xf9, 0x94, 0x67, + 0x5e, 0x77, 0x6d, 0xcd, 0x67, 0xb1, 0x8d, 0x07, 0x5d, 0xec, 0x1c, 0x91, 0xac, 0x6f, 0x43, 0x89, + 0x91, 0x65, 0x3d, 0x30, 0xb1, 0xc3, 0xe8, 0x4a, 0x59, 0xc8, 0x78, 0xb8, 0x43, 0xb1, 0x21, 0x8e, + 0xf2, 0x61, 0x75, 0xfd, 0x00, 0xe6, 0x07, 0x1e, 0x65, 0xa4, 0xe3, 0x5a, 0x34, 0xb7, 0xaf, 0x14, + 0xea, 0xf9, 0xd5, 0x52, 0xfc, 0xed, 0xde, 0x26, 0xba, 0xc4, 0x8b, 0x5a, 0xe6, 0x2b, 0xf7, 0xac, + 0x4d, 0x8d, 0xde, 0x5b, 0xe7, 0xa5, 0x9d, 0x34, 0x4f, 0x28, 0x95, 0x69, 0xcf, 0xd0, 0x93, 0x29, + 0x5d, 0x10, 0x5b, 0x30, 0x29, 0xc6, 0xdb, 0x74, 0x44, 0x8c, 0x42, 0xce, 0xff, 0xf5, 0xaf, 0x2f, + 0x13, 0x3f, 0x38, 0xcd, 0x62, 0xfe, 0x0e, 0xcc, 0x72, 0x4e, 0x0f, 0x21, 0x5f, 0x7f, 0x49, 0xd2, + 0xa5, 0x38, 0xce, 0xb3, 0x90, 0xc9, 0x2f, 0x99, 0x9f, 0xcb, 0xe2, 0xb8, 0x01, 0x33, 0x6c, 0xaf, + 0x4c, 0x61, 0x70, 0x9c, 0xd2, 0x02, 0x9a, 0x09, 0x1a, 0x0e, 0x72, 0x0d, 0xcb, 0xec, 0xd0, 0x52, + 0xde, 0x13, 0x47, 0x69, 0xbd, 0xba, 0xc6, 0xea, 0xfc, 0x35, 0xbf, 0xce, 0x5f, 0xdb, 0xf3, 0xeb, + 0xfc, 0xad, 0xc2, 0x27, 0xff, 0x5c, 0xc9, 0xa9, 0xf3, 0xc1, 0x42, 0x3a, 0xd5, 0xf8, 0x1b, 0xd3, + 0x91, 0xa4, 0xc4, 0xef, 0xd3, 0x98, 0x70, 0xea, 0x74, 0x24, 0x22, 0x57, 0x41, 0x8e, 0x5c, 0xb1, + 0xb2, 0x0f, 0xf3, 0x22, 0x64, 0xff, 0xfb, 0x9c, 0x97, 0x90, 0xbc, 0x8b, 0xd1, 0x01, 0x8f, 0x43, + 0x87, 0x17, 0xfd, 0x89, 0x71, 0xb8, 0x51, 0xa2, 0xbc, 0xf0, 0x63, 0x78, 0x4a, 0x18, 0x50, 0x1a, + 0x5c, 0x8d, 0x53, 0x92, 0xbe, 0x58, 0xba, 0xd3, 0x32, 0xef, 0x5b, 0x27, 0x75, 0x33, 0xbe, 0x1b, + 0x5b, 0xc8, 0xe7, 0x3d, 0x63, 0xab, 0xc5, 0x24, 0x3c, 0x77, 0x5b, 0xa6, 0x7b, 0xeb, 0xe6, 0x3d, + 0xd4, 0x1f, 0xe2, 0x68, 0xa1, 0x7f, 0x1c, 0xed, 0x8e, 0x63, 0x28, 0xe8, 0xd2, 0xac, 0x26, 0x90, + 0xa8, 0x90, 0xf8, 0x6f, 0x73, 0x2c, 0x2d, 0x43, 0x66, 0x0f, 0xf7, 0xc7, 0xaa, 0xde, 0x53, 0x92, + 0x48, 0xad, 0xc0, 0xc5, 0x58, 0xfa, 0x04, 0x07, 0x7f, 0x9d, 0x82, 0x72, 0x9b, 0xe8, 0x3b, 0x43, + 0x77, 0xc7, 0xea, 0x1b, 0xbd, 0xd1, 0x11, 0x09, 0xff, 0x2e, 0x14, 0x6d, 0xc7, 0x30, 0x7b, 0x86, + 0x8d, 0xfa, 0x3c, 0xde, 0xd4, 0x65, 0xc9, 0x07, 0x3d, 0xbf, 0xb5, 0x1d, 0x1f, 0xa7, 0x06, 0x4b, + 0x68, 0xf6, 0xef, 0x60, 0x62, 0x0d, 0x9d, 0x9e, 0xcf, 0x94, 0xf8, 0x56, 0xbe, 0x07, 0x40, 0x5c, + 0xe4, 0x62, 0xaa, 0x6a, 0x3f, 0x0a, 0x27, 0x6d, 0xbe, 0xeb, 0x03, 0x55, 0x69, 0x8d, 0xd2, 0x8e, + 0xc6, 0xc4, 0xd9, 0xcc, 0x98, 0x78, 0xf6, 0xd1, 0x93, 0x95, 0x5c, 0x5c, 0x5c, 0x0c, 0xcb, 0x78, + 0xc7, 0xcb, 0x18, 0x84, 0x04, 0xe5, 0xcc, 0xdc, 0xf6, 0x46, 0xfc, 0xc2, 0x31, 0x2b, 0x33, 0x67, + 0xe8, 0x96, 0xd6, 0xf8, 0xb3, 0x9c, 0x99, 0x9f, 0x56, 0xbd, 0x84, 0xc5, 0xb0, 0x2b, 0xe5, 0xec, + 0xc7, 0x26, 0x89, 0xff, 0x30, 0x49, 0xb4, 0x0d, 0xc7, 0xb1, 0x9c, 0xe7, 0x72, 0xad, 0xab, 0x30, + 0x65, 0x68, 0x3c, 0x26, 0xa7, 0x1e, 0x3e, 0x65, 0x68, 0x61, 0x3f, 0xcc, 0x67, 0xf9, 0x61, 0x21, + 0xd2, 0x43, 0x68, 0xc0, 0x9c, 0x86, 0x89, 0xdb, 0xe9, 0xed, 0x23, 0xc3, 0xa4, 0x6c, 0x4f, 0x7b, + 0x9d, 0x83, 0x12, 0x1d, 0xdc, 0xa6, 0x63, 0x2d, 0x2d, 0xbe, 0xe8, 0x91, 0x59, 0x15, 0x5e, 0xfa, + 0x48, 0x16, 0xc3, 0x73, 0x75, 0x02, 0x8f, 0x57, 0x0c, 0x11, 0x2e, 0x0b, 0x99, 0x5c, 0xca, 0x11, + 0x95, 0x71, 0x39, 0x16, 0x51, 0xbf, 0x94, 0x73, 0x8e, 0x60, 0xfe, 0x85, 0xf5, 0x82, 0xc6, 0xef, + 0x94, 0xc2, 0x71, 0xdc, 0x29, 0xb2, 0x9e, 0x43, 0xfd, 0xd3, 0xcf, 0x59, 0x06, 0xc8, 0xe6, 0x9e, + 0xa7, 0x1c, 0x3a, 0x94, 0x9a, 0x33, 0xd2, 0xab, 0x23, 0x28, 0x99, 0xd5, 0x57, 0x12, 0x1b, 0x82, + 0xc3, 0x4f, 0x99, 0x25, 0x33, 0xfd, 0xee, 0x78, 0x8f, 0x37, 0xca, 0x2d, 0x28, 0xa2, 0xa1, 0xbb, + 0x6f, 0x39, 0x54, 0xc4, 0x59, 0x3c, 0x06, 0x50, 0xe5, 0x4d, 0x98, 0x61, 0xcf, 0x3f, 0x41, 0x86, + 0x1b, 0xd5, 0x0b, 0x3b, 0x63, 0xab, 0x40, 0x85, 0xa0, 0x72, 0xfc, 0xc6, 0x3c, 0x25, 0x37, 0xd8, + 0x89, 0xab, 0x44, 0x26, 0x4a, 0x10, 0xfc, 0xbf, 0x1c, 0x9c, 0xf3, 0x78, 0xd1, 0x1d, 0x74, 0xc2, + 0xef, 0x03, 0xca, 0x65, 0x38, 0x1f, 0xea, 0x23, 0x19, 0x9a, 0xa7, 0x8f, 0x39, 0x75, 0x5e, 0x6e, + 0x12, 0xb5, 0xb4, 0xb4, 0x96, 0x53, 0xe1, 0x98, 0x5a, 0x4e, 0x55, 0xa8, 0x84, 0x19, 0x0f, 0x5a, + 0x12, 0x53, 0xde, 0xe4, 0xb6, 0x35, 0xb0, 0x69, 0xbc, 0xff, 0x4a, 0xa4, 0xb3, 0x05, 0xb5, 0xd8, + 0xb6, 0xec, 0x7d, 0x34, 0x30, 0xfa, 0xa3, 0x40, 0x54, 0xd5, 0x68, 0x77, 0xf6, 0x6d, 0x0f, 0xd2, + 0xd2, 0x94, 0x4d, 0x28, 0xeb, 0x07, 0x7a, 0x67, 0x80, 0x6c, 0xdb, 0x30, 0x75, 0x3f, 0x9b, 0xa8, + 0xc5, 0x19, 0xce, 0xed, 0x7b, 0xb7, 0xdb, 0x0c, 0xa6, 0x96, 0xf4, 0x03, 0x9d, 0xff, 0x1f, 0xa9, + 0xe9, 0x1a, 0x50, 0x4f, 0x12, 0x84, 0x90, 0xd6, 0xcf, 0x58, 0xdb, 0xc4, 0xcb, 0xc2, 0xbe, 0x0a, + 0x51, 0x85, 0x69, 0xac, 0x43, 0x2d, 0xfe, 0xfc, 0x10, 0x85, 0xac, 0x5d, 0xfb, 0xe2, 0x28, 0x8c, + 0x39, 0x5f, 0x50, 0xf8, 0xbb, 0x1c, 0x14, 0xbd, 0x4e, 0xb8, 0xbb, 0x87, 0xf4, 0x23, 0x52, 0x25, + 0x67, 0x33, 0x53, 0xa1, 0x2c, 0xf3, 0x26, 0x14, 0x5c, 0xa4, 0x13, 0x5e, 0xbf, 0xd4, 0xe3, 0xdf, + 0x48, 0x18, 0x76, 0x0f, 0xe9, 0x44, 0xf5, 0xd0, 0x61, 0x36, 0x2e, 0xc0, 0x79, 0x41, 0xa3, 0x4f, + 0xf9, 0xfa, 0x1f, 0x96, 0x20, 0xdf, 0x26, 0xba, 0xf2, 0x21, 0x94, 0xc7, 0x5e, 0x9e, 0x5f, 0x4d, + 0xe8, 0x24, 0xc8, 0xa0, 0xea, 0xd5, 0x09, 0x40, 0x22, 0xcf, 0xfa, 0x10, 0xca, 0x63, 0xcf, 0x98, + 0x49, 0x27, 0xc8, 0xa0, 0xc4, 0x13, 0xe2, 0xde, 0x25, 0x95, 0x3e, 0x9c, 0x8b, 0x94, 0x97, 0xaf, + 0x27, 0x6c, 0x10, 0x06, 0x56, 0x9b, 0x13, 0x02, 0x65, 0x7e, 0xc6, 0x52, 0x9e, 0x24, 0x7e, 0x64, + 0x50, 0x22, 0x3f, 0x71, 0x17, 0xae, 0x62, 0xc1, 0xf9, 0xe8, 0x1b, 0xeb, 0x6a, 0x92, 0x44, 0xc2, + 0xc8, 0xea, 0x8d, 0x49, 0x91, 0x32, 0x4b, 0x63, 0x75, 0x62, 0xba, 0x11, 0x30, 0x50, 0x86, 0x11, + 0x84, 0x1e, 0x04, 0x3e, 0x00, 0x90, 0x9e, 0x83, 0x2e, 0x25, 0x2c, 0x0d, 0x20, 0xd5, 0xcb, 0x99, + 0x10, 0x59, 0xfd, 0x91, 0x07, 0xa7, 0x24, 0xf5, 0x87, 0x81, 0x89, 0xea, 0x4f, 0x7a, 0x24, 0xa2, + 0x9c, 0x48, 0x0f, 0x44, 0x49, 0x9c, 0x04, 0x90, 0x44, 0x4e, 0x62, 0x9e, 0x4d, 0x84, 0xab, 0x64, + 0xe8, 0x41, 0x06, 0x65, 0xb8, 0x4a, 0xe8, 0x04, 0x07, 0x94, 0x98, 0xbe, 0x40, 0x22, 0x89, 0x11, + 0x68, 0xf5, 0x8d, 0x89, 0xa1, 0x51, 0x87, 0xc9, 0xe0, 0x4a, 0x06, 0x65, 0x38, 0x4c, 0xe8, 0x84, + 0x71, 0x87, 0xe1, 0xc7, 0x4c, 0xe0, 0x30, 0xfc, 0xac, 0x1b, 0x93, 0x22, 0xa3, 0x11, 0x47, 0x2a, + 0x06, 0xd2, 0x23, 0x4e, 0x00, 0xcc, 0x88, 0x38, 0xd1, 0xf2, 0x43, 0xf9, 0x11, 0x94, 0xe4, 0x67, + 0x96, 0x46, 0xaa, 0xe3, 0x79, 0x98, 0xea, 0x95, 0x6c, 0x8c, 0xbc, 0xbd, 0xfc, 0xd4, 0xd1, 0x48, + 0xb5, 0xa7, 0xf4, 0xed, 0x63, 0x1e, 0x2f, 0xa8, 0x72, 0xa2, 0x0f, 0x17, 0xab, 0xa9, 0x32, 0x90, + 0x90, 0x89, 0xca, 0x49, 0xec, 0xe2, 0x07, 0xca, 0x91, 0xba, 0xc3, 0xaf, 0x67, 0xef, 0xe2, 0x01, + 0x33, 0x94, 0x13, 0xed, 0xd1, 0xd2, 0x78, 0x20, 0xf5, 0x67, 0x93, 0xe2, 0x41, 0x00, 0x49, 0x8c, + 0x07, 0xd1, 0xde, 0x29, 0xd5, 0x8c, 0x5c, 0x75, 0x35, 0x52, 0x7d, 0x22, 0x5d, 0x33, 0x31, 0x65, + 0x0f, 0x0b, 0x9c, 0xa1, 0xa7, 0x8e, 0xe4, 0xc0, 0x39, 0x0e, 0x4c, 0x09, 0x9c, 0xf1, 0x0f, 0x09, + 0xca, 0x0f, 0xa1, 0x18, 0x34, 0xf4, 0xea, 0x09, 0xab, 0x05, 0xa2, 0xba, 0x9a, 0x85, 0x88, 0x46, + 0x4d, 0xbe, 0x77, 0x7a, 0xd4, 0xe4, 0xdb, 0x5f, 0x9d, 0x00, 0x24, 0x9f, 0x30, 0x56, 0x1b, 0xbe, + 0x9a, 0x6a, 0x24, 0x0c, 0x94, 0x78, 0x42, 0x5c, 0x41, 0xa7, 0xf4, 0x60, 0x6e, 0x3c, 0xc3, 0xfd, + 0x7a, 0xa2, 0x1e, 0x25, 0x54, 0xf5, 0xda, 0x24, 0x28, 0x71, 0xc8, 0x4f, 0xe1, 0xa5, 0xf8, 0xda, + 0xe8, 0x5a, 0xe2, 0x15, 0x15, 0x83, 0xae, 0xde, 0x3c, 0x0c, 0x5a, 0x1c, 0x3e, 0x84, 0x0b, 0x71, + 0xb5, 0xc6, 0x95, 0xd4, 0xfb, 0x64, 0xfc, 0xe0, 0xf5, 0xc9, 0xb1, 0xf2, 0xb1, 0x71, 0x05, 0xc4, + 0x95, 0xd4, 0x6b, 0x7f, 0xb2, 0x63, 0x53, 0x0a, 0x03, 0xe5, 0x3d, 0x98, 0xe1, 0x45, 0xc1, 0xc5, + 0xc4, 0x44, 0x86, 0x4e, 0x57, 0xbf, 0x91, 0x3a, 0xed, 0xef, 0xb7, 0xd5, 0x7a, 0xf4, 0xb4, 0x96, + 0x7b, 0xfc, 0xb4, 0x96, 0xfb, 0xf2, 0x69, 0x2d, 0xf7, 0xc9, 0xb3, 0xda, 0x99, 0xc7, 0xcf, 0x6a, + 0x67, 0xfe, 0xfe, 0xac, 0x76, 0xe6, 0x83, 0xa6, 0x6e, 0xb8, 0xfb, 0xc3, 0x2e, 0xad, 0xa6, 0x9b, + 0x5d, 0xb3, 0x7b, 0xdd, 0x6b, 0x88, 0x34, 0xa5, 0xdf, 0x9c, 0x3e, 0x1c, 0xff, 0xd5, 0x69, 0x77, + 0xc6, 0x6b, 0x2b, 0x7f, 0xf3, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x12, 0xe3, 0x8e, 0x56, 0xdd, + 0x2b, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -4552,16 +4524,6 @@ func (m *MsgCreateBucket) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - { - size, err := m.Tags.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x42 if m.ChargedReadQuota != 0 { i = encodeVarintTx(dAtA, i, uint64(m.ChargedReadQuota)) i-- @@ -4795,16 +4757,6 @@ func (m *MsgCreateObject) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - { - size, err := m.Tags.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x52 if m.RedundancyType != 0 { i = encodeVarintTx(dAtA, i, uint64(m.RedundancyType)) i-- @@ -5322,16 +5274,6 @@ func (m *MsgCreateGroup) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l - { - size, err := m.Tags.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x22 if len(m.Extra) > 0 { i -= len(m.Extra) copy(dAtA[i:], m.Extra) @@ -5641,12 +5583,12 @@ func (m *MsgGroupMember) MarshalToSizedBuffer(dAtA []byte) (int, error) { var l int _ = l if m.ExpirationTime != nil { - n7, err7 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(*m.ExpirationTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(*m.ExpirationTime):]) - if err7 != nil { - return 0, err7 + n4, err4 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(*m.ExpirationTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(*m.ExpirationTime):]) + if err4 != nil { + return 0, err4 } - i -= n7 - i = encodeVarintTx(dAtA, i, uint64(n7)) + i -= n4 + i = encodeVarintTx(dAtA, i, uint64(n4)) i-- dAtA[i] = 0x12 } @@ -5973,12 +5915,12 @@ func (m *MsgPutPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { var l int _ = l if m.ExpirationTime != nil { - n9, err9 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(*m.ExpirationTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(*m.ExpirationTime):]) - if err9 != nil { - return 0, err9 + n6, err6 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(*m.ExpirationTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(*m.ExpirationTime):]) + if err6 != nil { + return 0, err6 } - i -= n9 - i = encodeVarintTx(dAtA, i, uint64(n9)) + i -= n6 + i = encodeVarintTx(dAtA, i, uint64(n6)) i-- dAtA[i] = 0x3a } @@ -6898,8 +6840,6 @@ func (m *MsgCreateBucket) Size() (n int) { if m.ChargedReadQuota != 0 { n += 1 + sovTx(uint64(m.ChargedReadQuota)) } - l = m.Tags.Size() - n += 1 + l + sovTx(uint64(l)) return n } @@ -7011,8 +6951,6 @@ func (m *MsgCreateObject) Size() (n int) { if m.RedundancyType != 0 { n += 1 + sovTx(uint64(m.RedundancyType)) } - l = m.Tags.Size() - n += 1 + l + sovTx(uint64(l)) return n } @@ -7222,8 +7160,6 @@ func (m *MsgCreateGroup) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = m.Tags.Size() - n += 1 + l + sovTx(uint64(l)) return n } @@ -8105,39 +8041,6 @@ func (m *MsgCreateBucket) Unmarshal(dAtA []byte) error { break } } - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Tags.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -8885,39 +8788,6 @@ func (m *MsgCreateObject) Unmarshal(dAtA []byte) error { break } } - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Tags.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -10351,39 +10221,6 @@ func (m *MsgCreateGroup) Unmarshal(dAtA []byte) error { } m.Extra = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tags", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Tags.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) From 96f363654123b1d1d66927252314a0614d336ed5 Mon Sep 17 00:00:00 2001 From: Roshan Date: Wed, 20 Dec 2023 16:53:01 +0800 Subject: [PATCH 2/2] add e2e tests --- e2e/tests/storage_test.go | 236 +++++++++++++++++++++++++++++++++++++- 1 file changed, 231 insertions(+), 5 deletions(-) diff --git a/e2e/tests/storage_test.go b/e2e/tests/storage_test.go index f9d90d6ec..064323216 100644 --- a/e2e/tests/storage_test.go +++ b/e2e/tests/storage_test.go @@ -2075,7 +2075,7 @@ func (s *StorageTestSuite) TestMaintenanceSPCreateBucketAndObject() { // s.Require().Equal(queryHeadBucketResponse.BucketInfo.BucketStatus, storagetypes.BUCKET_STATUS_CREATED) //} -func (s *StorageTestSuite) TestSetTag() { +func (s *StorageTestSuite) TestCreateBucketAndSetTag() { var err error user := s.GenAndChargeAccounts(1, 1000000) @@ -2091,16 +2091,14 @@ func (s *StorageTestSuite) TestSetTag() { msgCreateBucket.PrimarySpApproval.GlobalVirtualGroupFamilyId = gvg.FamilyId msgCreateBucket.PrimarySpApproval.Sig, err = sp.ApprovalKey.Sign(msgCreateBucket.GetApprovalBytes()) s.Require().NoError(err) - s.SendTxBlock(user[0], msgCreateBucket) - // Set tag grn := types2.NewBucketGRN(bucketName) var tags storagetypes.ResourceTags tags.Tags = append(tags.Tags, storagetypes.ResourceTags_Tag{Key: "key1", Value: "value1"}) msgSetTag := storagetypes.NewMsgSetTag(user[0].GetAddr(), grn.String(), &tags) - s.SendTxBlock(user[0], msgSetTag) + s.SendTxBlock(user[0], msgCreateBucket, msgSetTag) - // Query + // HeadBucket req := storagetypes.QueryHeadBucketRequest{ BucketName: bucketName, } @@ -2108,3 +2106,231 @@ func (s *StorageTestSuite) TestSetTag() { s.Require().NoError(err) s.Require().Equal(tags, *resp.BucketInfo.Tags) } + +func (s *StorageTestSuite) TestCreateObjectAndSetTag() { + var err error + // CreateBucket + sp := s.BaseSuite.PickStorageProvider() + gvg, found := sp.GetFirstGlobalVirtualGroup() + s.Require().True(found) + user := s.GenAndChargeAccounts(1, 1000000)[0] + bucketName := storageutils.GenRandomBucketName() + msgCreateBucket := storagetypes.NewMsgCreateBucket( + user.GetAddr(), bucketName, storagetypes.VISIBILITY_TYPE_PRIVATE, sp.OperatorKey.GetAddr(), + nil, math.MaxUint, nil, 0) + msgCreateBucket.PrimarySpApproval.GlobalVirtualGroupFamilyId = gvg.FamilyId + msgCreateBucket.PrimarySpApproval.Sig, err = sp.ApprovalKey.Sign(msgCreateBucket.GetApprovalBytes()) + s.Require().NoError(err) + s.SendTxBlock(user, msgCreateBucket) + + // HeadBucket + ctx := context.Background() + queryHeadBucketRequest := storagetypes.QueryHeadBucketRequest{ + BucketName: bucketName, + } + queryHeadBucketResponse, err := s.Client.HeadBucket(ctx, &queryHeadBucketRequest) + s.Require().NoError(err) + s.Require().Equal(queryHeadBucketResponse.BucketInfo.BucketName, bucketName) + s.Require().Equal(queryHeadBucketResponse.BucketInfo.Owner, user.GetAddr().String()) + s.Require().Equal(queryHeadBucketResponse.BucketInfo.GlobalVirtualGroupFamilyId, gvg.FamilyId) + s.Require().Equal(queryHeadBucketResponse.BucketInfo.PaymentAddress, user.GetAddr().String()) + s.Require().Equal(queryHeadBucketResponse.BucketInfo.Visibility, storagetypes.VISIBILITY_TYPE_PRIVATE) + s.Require().Equal(queryHeadBucketResponse.BucketInfo.SourceType, storagetypes.SOURCE_TYPE_ORIGIN) + + // CreateObject + objectName := storageutils.GenRandomObjectName() + // create test buffer + var buffer bytes.Buffer + // Create 1MiB content where each line contains 1024 characters. + for i := 0; i < 1024; i++ { + buffer.WriteString(fmt.Sprintf("[%05d] %s\n", i, line)) + } + payloadSize := buffer.Len() + checksum := sdk.Keccak256(buffer.Bytes()) + expectChecksum := [][]byte{checksum, checksum, checksum, checksum, checksum, checksum, checksum} + contextType := "text/event-stream" + msgCreateObject := storagetypes.NewMsgCreateObject(user.GetAddr(), bucketName, objectName, uint64(payloadSize), storagetypes.VISIBILITY_TYPE_PRIVATE, expectChecksum, contextType, storagetypes.REDUNDANCY_EC_TYPE, math.MaxUint, nil) + msgCreateObject.PrimarySpApproval.Sig, err = sp.ApprovalKey.Sign(msgCreateObject.GetApprovalBytes()) + s.Require().NoError(err) + + grn := types2.NewObjectGRN(bucketName, objectName) + var tags storagetypes.ResourceTags + tags.Tags = append(tags.Tags, storagetypes.ResourceTags_Tag{Key: "key1", Value: "value1"}) + msgSetTag := storagetypes.NewMsgSetTag(user.GetAddr(), grn.String(), &tags) + s.SendTxBlock(user, msgCreateObject, msgSetTag) + + // HeadObject + queryHeadObjectRequest := storagetypes.QueryHeadObjectRequest{ + BucketName: bucketName, + ObjectName: objectName, + } + queryHeadObjectResponse, err := s.Client.HeadObject(ctx, &queryHeadObjectRequest) + s.Require().NoError(err) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.ObjectName, objectName) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.BucketName, bucketName) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.PayloadSize, uint64(payloadSize)) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.Visibility, storagetypes.VISIBILITY_TYPE_PRIVATE) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.ObjectStatus, storagetypes.OBJECT_STATUS_CREATED) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.Owner, user.GetAddr().String()) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.Checksums, expectChecksum) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.SourceType, storagetypes.SOURCE_TYPE_ORIGIN) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.RedundancyType, storagetypes.REDUNDANCY_EC_TYPE) + s.Require().Equal(queryHeadObjectResponse.ObjectInfo.ContentType, contextType) + s.Require().Equal(*queryHeadObjectResponse.ObjectInfo.Tags, tags) + + // SealObject + gvgId := gvg.Id + msgSealObject := storagetypes.NewMsgSealObject(sp.SealKey.GetAddr(), bucketName, objectName, gvg.Id, nil) + secondarySigs := make([][]byte, 0) + secondarySPBlsPubKeys := make([]bls.PublicKey, 0) + blsSignHash := storagetypes.NewSecondarySpSealObjectSignDoc(s.GetChainID(), gvgId, queryHeadObjectResponse.ObjectInfo.Id, storagetypes.GenerateHash(queryHeadObjectResponse.ObjectInfo.Checksums[:])).GetBlsSignHash() + // every secondary sp signs the checksums + for _, spID := range gvg.SecondarySpIds { + sig, err := core.BlsSignAndVerify(s.StorageProviders[spID], blsSignHash) + s.Require().NoError(err) + secondarySigs = append(secondarySigs, sig) + pk, err := bls.PublicKeyFromBytes(s.StorageProviders[spID].BlsKey.PubKey().Bytes()) + s.Require().NoError(err) + secondarySPBlsPubKeys = append(secondarySPBlsPubKeys, pk) + } + aggBlsSig, err := core.BlsAggregateAndVerify(secondarySPBlsPubKeys, blsSignHash, secondarySigs) + s.Require().NoError(err) + msgSealObject.SecondarySpBlsAggSignatures = aggBlsSig + s.T().Logf("msg %s", msgSealObject.String()) + s.SendTxBlock(sp.SealKey, msgSealObject) + + // ListBuckets + queryListBucketsRequest := storagetypes.QueryListBucketsRequest{} + queryListBucketResponse, err := s.Client.ListBuckets(ctx, &queryListBucketsRequest) + s.Require().NoError(err) + s.Require().Greater(len(queryListBucketResponse.BucketInfos), 0) + + // ListObject + queryListObjectsRequest := storagetypes.QueryListObjectsRequest{ + BucketName: bucketName, + } + queryListObjectsResponse, err := s.Client.ListObjects(ctx, &queryListObjectsRequest) + s.Require().NoError(err) + s.Require().Equal(len(queryListObjectsResponse.ObjectInfos), 1) + s.Require().Equal(queryListObjectsResponse.ObjectInfos[0].ObjectName, objectName) + + // verify ListObjectsByBucketId + queryListObjectsResponse, err = s.Client.ListObjectsByBucketId(ctx, &storagetypes.QueryListObjectsByBucketIdRequest{ + BucketId: queryHeadBucketResponse.BucketInfo.Id.String(), + }) + s.Require().NoError(err) + s.Require().Equal(len(queryListObjectsResponse.ObjectInfos), 1) + s.Require().Equal(queryListObjectsResponse.ObjectInfos[0].ObjectName, objectName) + + // verify HeadObjectNFT + headObjectNftResponse, err := s.Client.HeadObjectNFT(ctx, &storagetypes.QueryNFTRequest{ + TokenId: queryListObjectsResponse.ObjectInfos[0].Id.String(), + }) + s.Require().NoError(err) + s.Require().Equal(headObjectNftResponse.MetaData.ObjectName, objectName) + + // UpdateObjectInfo + updateObjectInfo := storagetypes.NewMsgUpdateObjectInfo( + user.GetAddr(), bucketName, objectName, storagetypes.VISIBILITY_TYPE_INHERIT) + s.Require().NoError(err) + s.SendTxBlock(user, updateObjectInfo) + s.Require().NoError(err) + + // verify modified objectinfo + // head object + queryHeadObjectAfterUpdateObjectResponse, err := s.Client.HeadObject(context.Background(), &queryHeadObjectRequest) + s.Require().NoError(err) + s.Require().Equal(queryHeadObjectAfterUpdateObjectResponse.ObjectInfo.Visibility, storagetypes.VISIBILITY_TYPE_INHERIT) + + // verify HeadObjectById + queryHeadObjectAfterUpdateObjectResponse, err = s.Client.HeadObjectById(context.Background(), &storagetypes.QueryHeadObjectByIdRequest{ObjectId: queryHeadObjectAfterUpdateObjectResponse.ObjectInfo.Id.String()}) + s.Require().NoError(err) + s.Require().Equal(queryHeadObjectAfterUpdateObjectResponse.ObjectInfo.Visibility, storagetypes.VISIBILITY_TYPE_INHERIT) + s.Require().Equal(queryHeadObjectAfterUpdateObjectResponse.ObjectInfo.ObjectName, objectName) + + // DeleteObject + msgDeleteObject := storagetypes.NewMsgDeleteObject(user.GetAddr(), bucketName, objectName) + s.SendTxBlock(user, msgDeleteObject) + + // DeleteBucket + msgDeleteBucket := storagetypes.NewMsgDeleteBucket(user.GetAddr(), bucketName) + s.SendTxBlock(user, msgDeleteBucket) +} + +func (s *StorageTestSuite) TestCreateGroupAndSetTag() { + ctx := context.Background() + + owner := s.GenAndChargeAccounts(1, 1000000)[0] + member := s.GenAndChargeAccounts(1, 1000000)[0] + groupName := storageutils.GenRandomGroupName() + + // 1. CreateGroup + msgCreateGroup := storagetypes.NewMsgCreateGroup(owner.GetAddr(), groupName, "") + grn := types2.NewGroupGRN(owner.GetAddr(), groupName) + var tags storagetypes.ResourceTags + tags.Tags = append(tags.Tags, storagetypes.ResourceTags_Tag{Key: "key1", Value: "value1"}) + msgSetTag := storagetypes.NewMsgSetTag(owner.GetAddr(), grn.String(), &tags) + s.SendTxBlock(owner, msgCreateGroup, msgSetTag) + s.T().Logf("CerateGroup success, owner: %s, group name: %s", owner.GetAddr().String(), groupName) + + // 2. HeadGroup + queryHeadGroupReq := storagetypes.QueryHeadGroupRequest{GroupOwner: owner.GetAddr().String(), GroupName: groupName} + queryHeadGroupResp, err := s.Client.HeadGroup(ctx, &queryHeadGroupReq) + s.Require().NoError(err) + s.Require().Equal(queryHeadGroupResp.GroupInfo.GroupName, groupName) + s.Require().Equal(queryHeadGroupResp.GroupInfo.Owner, owner.GetAddr().String()) + s.Require().Equal(*queryHeadGroupResp.GroupInfo.Tags, tags) + + // 2.1. HeadGroupNFT + headGroupNftResponse, err := s.Client.HeadGroupNFT(ctx, &storagetypes.QueryNFTRequest{ + TokenId: queryHeadGroupResp.GroupInfo.Id.String(), + }) + s.Require().NoError(err) + s.Require().Equal(headGroupNftResponse.MetaData.GroupName, groupName) + + // 3. ListGroup + queryListGroupReq := storagetypes.QueryListGroupsRequest{GroupOwner: owner.GetAddr().String()} + queryListGroupResp, err := s.Client.ListGroups(ctx, &queryListGroupReq) + s.Require().NoError(err) + s.Require().GreaterOrEqual(len(queryListGroupResp.GroupInfos), 1) + + // 4. UpdateGroupMember(add) + membersToAdd := []*storagetypes.MsgGroupMember{ + {Member: member.GetAddr().String()}, + } + membersToDelete := []sdk.AccAddress{} + msgUpdateGroupMember := storagetypes.NewMsgUpdateGroupMember(owner.GetAddr(), owner.GetAddr(), groupName, membersToAdd, membersToDelete) + s.SendTxBlock(owner, msgUpdateGroupMember) + + // 4-1. HeadGroupMember(add) + queryHeadGroupMemberReq := storagetypes.QueryHeadGroupMemberRequest{ + Member: member.GetAddr().String(), + GroupName: groupName, + GroupOwner: owner.GetAddr().String(), + } + queryHeadGroupMemberResp, err := s.Client.HeadGroupMember(ctx, &queryHeadGroupMemberReq) + s.Require().NoError(err) + s.Require().Equal(queryHeadGroupMemberResp.GroupMember.GroupId, queryHeadGroupResp.GroupInfo.Id) + + // 5. UpdateGroupMember(delete) + member2 := s.GenAndChargeAccounts(1, 1000000)[0] + membersToAdd = []*storagetypes.MsgGroupMember{ + {Member: member2.GetAddr().String()}, + } + membersToDelete = []sdk.AccAddress{member.GetAddr()} + msgUpdateGroupMember = storagetypes.NewMsgUpdateGroupMember(owner.GetAddr(), owner.GetAddr(), groupName, membersToAdd, membersToDelete) + s.SendTxBlock(owner, msgUpdateGroupMember) + + // 5-1. HeadGroupMember (delete) + queryHeadGroupMemberReqDelete := storagetypes.QueryHeadGroupMemberRequest{ + Member: member.GetAddr().String(), + GroupName: groupName, + GroupOwner: owner.GetAddr().String(), + } + _, err = s.Client.HeadGroupMember(ctx, &queryHeadGroupMemberReqDelete) + s.Require().True(strings.Contains(err.Error(), storagetypes.ErrNoSuchGroupMember.Error())) + + // 6. Create a group with the same name + msgCreateGroup = storagetypes.NewMsgCreateGroup(owner.GetAddr(), groupName, "") + s.SendTxBlockWithExpectErrorString(msgCreateGroup, owner, "exists") +}