diff --git a/api/structs/structs/keys.pulsar.go b/api/structs/structs/keys.pulsar.go index 8c677d1..ea94a18 100644 --- a/api/structs/structs/keys.pulsar.go +++ b/api/structs/structs/keys.pulsar.go @@ -449,11 +449,12 @@ func (Ambit) EnumDescriptor() ([]byte, []int) { type RaidStatus int32 const ( - RaidStatus_initiated RaidStatus = 0 - RaidStatus_ongoing RaidStatus = 2 - RaidStatus_attackerDefeated RaidStatus = 1 - RaidStatus_raidSuccessful RaidStatus = 3 - RaidStatus_demilitarized RaidStatus = 4 + RaidStatus_initiated RaidStatus = 0 + RaidStatus_ongoing RaidStatus = 2 + RaidStatus_attackerDefeated RaidStatus = 1 + RaidStatus_attackerRetreated RaidStatus = 5 + RaidStatus_raidSuccessful RaidStatus = 3 + RaidStatus_demilitarized RaidStatus = 4 ) // Enum value maps for RaidStatus. @@ -462,15 +463,17 @@ var ( 0: "initiated", 2: "ongoing", 1: "attackerDefeated", + 5: "attackerRetreated", 3: "raidSuccessful", 4: "demilitarized", } RaidStatus_value = map[string]int32{ - "initiated": 0, - "ongoing": 2, - "attackerDefeated": 1, - "raidSuccessful": 3, - "demilitarized": 4, + "initiated": 0, + "ongoing": 2, + "attackerDefeated": 1, + "attackerRetreated": 5, + "raidSuccessful": 3, + "demilitarized": 4, } ) @@ -1405,147 +1408,148 @@ var file_structs_structs_keys_proto_rawDesc = []byte{ 0x0a, 0x05, 0x77, 0x61, 0x74, 0x65, 0x72, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x6c, 0x61, 0x6e, 0x64, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x61, 0x69, 0x72, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x73, 0x70, 0x61, 0x63, 0x65, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, - 0x10, 0x05, 0x2a, 0x65, 0x0a, 0x0a, 0x72, 0x61, 0x69, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x10, 0x05, 0x2a, 0x7c, 0x0a, 0x0a, 0x72, 0x61, 0x69, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x6f, 0x6e, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x44, 0x65, 0x66, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x72, 0x61, 0x69, 0x64, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x66, 0x75, 0x6c, 0x10, 0x03, 0x12, 0x11, 0x0a, 0x0d, 0x64, 0x65, 0x6d, 0x69, 0x6c, 0x69, - 0x74, 0x61, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x10, 0x04, 0x2a, 0x28, 0x0a, 0x0c, 0x70, 0x6c, 0x61, - 0x6e, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0a, 0x0a, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x10, 0x01, 0x2a, 0x26, 0x0a, 0x0b, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0x00, 0x12, 0x08, 0x0a, 0x04, 0x61, 0x77, 0x61, 0x79, 0x10, 0x01, 0x2a, 0x9b, 0x01, 0x0a, 0x13, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x10, 0x00, 0x12, - 0x0a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x62, - 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x02, - 0x12, 0x15, 0x0a, 0x11, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x72, - 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x10, 0x04, - 0x12, 0x18, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x74, 0x79, - 0x70, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x06, 0x2a, 0xda, 0x03, 0x0a, 0x13, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x53, 0x68, - 0x69, 0x65, 0x6c, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x72, 0x65, 0x70, 0x61, 0x69, 0x72, + 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x52, 0x65, + 0x74, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x72, 0x61, 0x69, + 0x64, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x10, 0x03, 0x12, 0x11, 0x0a, + 0x0d, 0x64, 0x65, 0x6d, 0x69, 0x6c, 0x69, 0x74, 0x61, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x10, 0x04, + 0x2a, 0x28, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x0a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, + 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x10, 0x01, 0x2a, 0x26, 0x0a, 0x0b, 0x66, 0x6c, + 0x65, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0d, 0x0a, 0x09, 0x6f, 0x6e, 0x53, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x61, 0x77, 0x61, 0x79, + 0x10, 0x01, 0x2a, 0x9b, 0x01, 0x0a, 0x13, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x68, 0x65, + 0x61, 0x6c, 0x74, 0x68, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x42, 0x75, 0x69, 0x6c, 0x64, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x10, 0x03, 0x12, 0x17, + 0x0a, 0x13, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x72, 0x65, 0x52, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x10, 0x04, 0x12, 0x18, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x74, 0x65, + 0x63, 0x74, 0x65, 0x64, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x10, + 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x10, 0x06, + 0x2a, 0xda, 0x03, 0x0a, 0x13, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x13, 0x0a, 0x0f, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x74, 0x61, 0x72, 0x79, 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x10, 0x00, 0x12, 0x19, 0x0a, + 0x15, 0x72, 0x65, 0x70, 0x61, 0x69, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x51, 0x75, + 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x64, 0x65, 0x66, 0x65, + 0x6e, 0x73, 0x69, 0x76, 0x65, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, + 0x69, 0x74, 0x79, 0x10, 0x02, 0x12, 0x2a, 0x0a, 0x26, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, + 0x61, 0x74, 0x65, 0x64, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, - 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x43, 0x61, - 0x6e, 0x6e, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x02, 0x12, 0x2a, - 0x0a, 0x26, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x47, 0x6c, 0x6f, - 0x62, 0x61, 0x6c, 0x53, 0x68, 0x69, 0x65, 0x6c, 0x64, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x03, 0x12, 0x30, 0x0a, 0x2c, 0x6c, 0x6f, - 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, - 0x72, 0x6b, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x04, 0x12, 0x38, 0x0a, 0x34, - 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4c, 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, - 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, - 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x51, 0x75, 0x61, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x10, 0x05, 0x12, 0x3c, 0x0a, 0x38, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x62, - 0x69, 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x10, 0x06, 0x12, 0x3e, 0x0a, 0x3a, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, - 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, - 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x75, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, - 0x6f, 0x72, 0x10, 0x07, 0x12, 0x21, 0x0a, 0x1d, 0x6f, 0x72, 0x62, 0x69, 0x74, 0x61, 0x6c, 0x4a, - 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x08, 0x12, 0x29, 0x0a, 0x25, 0x61, 0x64, 0x76, 0x61, 0x6e, - 0x63, 0x65, 0x64, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x61, 0x6c, 0x4a, 0x61, 0x6d, 0x6d, 0x69, 0x6e, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x52, 0x61, 0x69, 0x64, 0x10, 0x0a, 0x2a, 0x3a, 0x0a, 0x10, 0x74, 0x65, 0x63, 0x68, 0x57, 0x65, - 0x61, 0x70, 0x6f, 0x6e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x11, 0x0a, 0x0d, 0x70, 0x72, - 0x69, 0x6d, 0x61, 0x72, 0x79, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x13, 0x0a, - 0x0f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, - 0x10, 0x01, 0x2a, 0x42, 0x0a, 0x11, 0x74, 0x65, 0x63, 0x68, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x13, 0x0a, 0x0f, 0x6e, 0x6f, 0x57, 0x65, 0x61, - 0x70, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, - 0x67, 0x75, 0x69, 0x64, 0x65, 0x64, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x75, 0x6e, 0x67, 0x75, - 0x69, 0x64, 0x65, 0x64, 0x10, 0x02, 0x2a, 0x75, 0x0a, 0x12, 0x74, 0x65, 0x63, 0x68, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x10, - 0x6e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, - 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x67, 0x75, 0x69, 0x64, 0x65, 0x64, 0x57, 0x65, 0x61, 0x70, - 0x6f, 0x6e, 0x72, 0x79, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x75, 0x6e, 0x67, 0x75, 0x69, 0x64, - 0x65, 0x64, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, - 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x75, 0x6e, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x73, - 0x65, 0x6c, 0x66, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x10, 0x04, 0x2a, 0x83, 0x01, - 0x0a, 0x13, 0x74, 0x65, 0x63, 0x68, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x57, 0x65, 0x61, - 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x12, 0x15, 0x0a, 0x11, 0x6e, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x69, - 0x76, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x10, 0x01, 0x12, - 0x17, 0x0a, 0x13, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, - 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x61, 0x64, 0x76, 0x61, - 0x6e, 0x63, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, - 0x6b, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x72, - 0x74, 0x10, 0x04, 0x2a, 0xb2, 0x01, 0x0a, 0x10, 0x74, 0x65, 0x63, 0x68, 0x55, 0x6e, 0x69, 0x74, - 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x6e, 0x6f, 0x55, 0x6e, - 0x69, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, - 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, - 0x72, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x4a, 0x61, 0x6d, - 0x6d, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x61, 0x72, 0x6d, 0x6f, 0x75, 0x72, - 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x43, 0x6f, - 0x6d, 0x62, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, - 0x73, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x10, 0x05, 0x12, 0x14, 0x0a, - 0x10, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x46, 0x65, 0x6e, 0x63, 0x69, 0x6e, - 0x67, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x72, 0x65, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, - 0x64, 0x57, 0x61, 0x6c, 0x6c, 0x73, 0x10, 0x07, 0x2a, 0xad, 0x01, 0x0a, 0x16, 0x74, 0x65, 0x63, - 0x68, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, - 0x73, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x14, 0x6e, 0x6f, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x10, 0x00, 0x12, 0x25, 0x0a, - 0x21, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x65, - 0x72, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, - 0x65, 0x72, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x72, 0x61, 0x70, 0x69, 0x64, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x10, 0x02, 0x12, 0x12, - 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x63, 0x61, 0x6e, 0x6e, 0x69, 0x6e, 0x67, - 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, - 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x6f, 0x72, 0x65, - 0x42, 0x75, 0x6e, 0x6b, 0x65, 0x72, 0x10, 0x05, 0x2a, 0x6d, 0x0a, 0x15, 0x74, 0x65, 0x63, 0x68, - 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, - 0x73, 0x12, 0x16, 0x0a, 0x12, 0x6e, 0x6f, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, - 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x64, 0x65, 0x66, - 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x43, 0x61, 0x6e, 0x6e, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x27, - 0x0a, 0x23, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, - 0x74, 0x69, 0x63, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x10, 0x02, 0x2a, 0x55, 0x0a, 0x15, 0x74, 0x65, 0x63, 0x68, 0x53, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x61, 0x63, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x6f, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x61, 0x63, - 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x6f, 0x63, - 0x6b, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x10, 0x02, 0x12, - 0x0d, 0x0a, 0x09, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x42, 0x61, 0x73, 0x65, 0x10, 0x03, 0x2a, 0x3e, - 0x0a, 0x13, 0x74, 0x65, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x4d, - 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x15, 0x0a, 0x11, 0x6e, 0x6f, 0x50, 0x6c, 0x61, 0x6e, 0x65, - 0x74, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, - 0x6f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x69, 0x67, 0x10, 0x01, 0x2a, 0x43, - 0x0a, 0x17, 0x74, 0x65, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, - 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x6f, 0x50, - 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, - 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, - 0x79, 0x10, 0x01, 0x2a, 0x69, 0x0a, 0x13, 0x74, 0x65, 0x63, 0x68, 0x50, 0x6f, 0x77, 0x65, 0x72, - 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x11, 0x6e, 0x6f, - 0x50, 0x6f, 0x77, 0x65, 0x72, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, - 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6c, 0x61, - 0x72, 0x67, 0x65, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x03, 0x2a, 0x49, - 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x0e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x6e, 0x4d, 0x61, - 0x72, 0x6b, 0x65, 0x74, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, - 0x61, 0x72, 0x6b, 0x65, 0x74, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x63, 0x6c, 0x6f, 0x73, 0x65, - 0x64, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x10, 0x02, 0x42, 0x9f, 0x01, 0x0a, 0x13, 0x63, 0x6f, - 0x6d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x42, 0x09, 0x4b, 0x65, 0x79, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x20, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, - 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0xa2, 0x02, 0x03, 0x53, 0x53, 0x58, 0xaa, 0x02, 0x0f, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xca, 0x02, 0x0f, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xe2, 0x02, 0x1b, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, 0x47, 0x50, 0x42, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x10, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x3a, 0x3a, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x03, 0x12, 0x30, 0x0a, 0x2c, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x42, 0x61, 0x6c, + 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, + 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x10, 0x04, 0x12, 0x38, 0x0a, 0x34, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4c, + 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, + 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x05, 0x12, 0x3c, 0x0a, + 0x38, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, + 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, + 0x4e, 0x75, 0x6d, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x06, 0x12, 0x3e, 0x0a, 0x3a, 0x6c, + 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, + 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x61, 0x74, 0x65, 0x44, 0x65, + 0x6e, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x07, 0x12, 0x21, 0x0a, 0x1d, 0x6f, + 0x72, 0x62, 0x69, 0x74, 0x61, 0x6c, 0x4a, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x08, 0x12, 0x29, + 0x0a, 0x25, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4f, 0x72, 0x62, 0x69, 0x74, 0x61, + 0x6c, 0x4a, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x51, + 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x61, 0x69, 0x64, 0x10, 0x0a, 0x2a, 0x3a, 0x0a, + 0x10, 0x74, 0x65, 0x63, 0x68, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x53, 0x79, 0x73, 0x74, 0x65, + 0x6d, 0x12, 0x11, 0x0a, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x57, 0x65, 0x61, 0x70, + 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, + 0x79, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x10, 0x01, 0x2a, 0x42, 0x0a, 0x11, 0x74, 0x65, 0x63, + 0x68, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x13, + 0x0a, 0x0f, 0x6e, 0x6f, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x67, 0x75, 0x69, 0x64, 0x65, 0x64, 0x10, 0x01, 0x12, + 0x0c, 0x0a, 0x08, 0x75, 0x6e, 0x67, 0x75, 0x69, 0x64, 0x65, 0x64, 0x10, 0x02, 0x2a, 0x75, 0x0a, + 0x12, 0x74, 0x65, 0x63, 0x68, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6f, + 0x6e, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x10, 0x6e, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x57, + 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x67, 0x75, 0x69, + 0x64, 0x65, 0x64, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x10, 0x01, 0x12, 0x14, 0x0a, + 0x10, 0x75, 0x6e, 0x67, 0x75, 0x69, 0x64, 0x65, 0x64, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, + 0x79, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x75, 0x6e, + 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x73, 0x65, 0x6c, 0x66, 0x44, 0x65, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x10, 0x04, 0x2a, 0x83, 0x01, 0x0a, 0x13, 0x74, 0x65, 0x63, 0x68, 0x50, 0x61, 0x73, + 0x73, 0x69, 0x76, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, 0x79, 0x12, 0x15, 0x0a, 0x11, + 0x6e, 0x6f, 0x50, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x72, + 0x79, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x41, 0x74, + 0x74, 0x61, 0x63, 0x6b, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x10, 0x02, 0x12, + 0x19, 0x0a, 0x15, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x65, 0x72, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x6c, 0x61, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x72, 0x74, 0x10, 0x04, 0x2a, 0xb2, 0x01, 0x0a, 0x10, 0x74, + 0x65, 0x63, 0x68, 0x55, 0x6e, 0x69, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x12, + 0x12, 0x0a, 0x0e, 0x6e, 0x6f, 0x55, 0x6e, 0x69, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, + 0x73, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, + 0x4d, 0x61, 0x6e, 0x65, 0x75, 0x76, 0x65, 0x72, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x73, 0x69, + 0x67, 0x6e, 0x61, 0x6c, 0x4a, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x0a, 0x0a, + 0x06, 0x61, 0x72, 0x6d, 0x6f, 0x75, 0x72, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x69, 0x6e, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x62, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, + 0x65, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x73, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x4d, 0x6f, + 0x64, 0x65, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, + 0x72, 0x46, 0x65, 0x6e, 0x63, 0x69, 0x6e, 0x67, 0x10, 0x06, 0x12, 0x13, 0x0a, 0x0f, 0x72, 0x65, + 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x57, 0x61, 0x6c, 0x6c, 0x73, 0x10, 0x07, 0x2a, + 0xad, 0x01, 0x0a, 0x16, 0x74, 0x65, 0x63, 0x68, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x14, 0x6e, 0x6f, + 0x4f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, + 0x65, 0x73, 0x10, 0x00, 0x12, 0x25, 0x0a, 0x21, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, + 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65, 0x72, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x72, + 0x61, 0x70, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x61, 0x63, 0x6b, + 0x61, 0x67, 0x65, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, + 0x63, 0x61, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0x03, 0x12, 0x15, 0x0a, 0x11, 0x6d, 0x6f, 0x6e, + 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x04, + 0x12, 0x0d, 0x0a, 0x09, 0x6f, 0x72, 0x65, 0x42, 0x75, 0x6e, 0x6b, 0x65, 0x72, 0x10, 0x05, 0x2a, + 0x6d, 0x0a, 0x15, 0x74, 0x65, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, + 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x6e, 0x6f, 0x50, 0x6c, + 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x10, 0x00, + 0x12, 0x13, 0x0a, 0x0f, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x43, 0x61, 0x6e, + 0x6e, 0x6f, 0x6e, 0x10, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x62, 0x69, + 0x74, 0x42, 0x61, 0x6c, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x63, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, + 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x10, 0x02, 0x2a, 0x55, + 0x0a, 0x15, 0x74, 0x65, 0x63, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x61, 0x63, + 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x6f, 0x53, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x46, 0x61, 0x63, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x10, 0x00, + 0x12, 0x08, 0x0a, 0x04, 0x64, 0x6f, 0x63, 0x6b, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x72, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x42, + 0x61, 0x73, 0x65, 0x10, 0x03, 0x2a, 0x3e, 0x0a, 0x13, 0x74, 0x65, 0x63, 0x68, 0x50, 0x6c, 0x61, + 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x15, 0x0a, 0x11, + 0x6e, 0x6f, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x6f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, + 0x52, 0x69, 0x67, 0x10, 0x01, 0x2a, 0x43, 0x0a, 0x17, 0x74, 0x65, 0x63, 0x68, 0x50, 0x6c, 0x61, + 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x12, 0x17, 0x0a, 0x13, 0x6e, 0x6f, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x72, 0x79, 0x52, + 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x6f, 0x72, 0x65, + 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x10, 0x01, 0x2a, 0x69, 0x0a, 0x13, 0x74, 0x65, + 0x63, 0x68, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x15, 0x0a, 0x11, 0x6e, 0x6f, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x73, 0x6d, 0x61, 0x6c, + 0x6c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, + 0x6d, 0x65, 0x64, 0x69, 0x75, 0x6d, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x10, + 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x10, 0x03, 0x2a, 0x49, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x0e, 0x0a, + 0x0a, 0x6f, 0x70, 0x65, 0x6e, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x10, 0x00, 0x12, 0x0f, 0x0a, + 0x0b, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x10, 0x01, 0x12, 0x10, + 0x0a, 0x0c, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x10, 0x02, + 0x42, 0x9f, 0x01, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x42, 0x09, 0x4b, 0x65, 0x79, 0x73, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, + 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xa2, 0x02, 0x03, 0x53, 0x53, 0x58, 0xaa, 0x02, 0x0f, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xca, + 0x02, 0x0f, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0xe2, 0x02, 0x1b, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, + 0x02, 0x10, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x3a, 0x3a, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/api/structs/structs/tx.pulsar.go b/api/structs/structs/tx.pulsar.go index ff29dfa..7b840f7 100644 --- a/api/structs/structs/tx.pulsar.go +++ b/api/structs/structs/tx.pulsar.go @@ -12,6 +12,7 @@ import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoiface "google.golang.org/protobuf/runtime/protoiface" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + timestamppb "google.golang.org/protobuf/types/known/timestamppb" io "io" reflect "reflect" sync "sync" @@ -29455,25 +29456,31 @@ func (x *fastReflection_MsgPlayerResumeResponse) ProtoMethods() *protoiface.Meth } var ( - md_MsgStructStatusResponse protoreflect.MessageDescriptor - fd_MsgStructStatusResponse_struct protoreflect.FieldDescriptor + md_MsgReactorInfuse protoreflect.MessageDescriptor + fd_MsgReactorInfuse_creator protoreflect.FieldDescriptor + fd_MsgReactorInfuse_delegator_address protoreflect.FieldDescriptor + fd_MsgReactorInfuse_validator_address protoreflect.FieldDescriptor + fd_MsgReactorInfuse_amount protoreflect.FieldDescriptor ) func init() { file_structs_structs_tx_proto_init() - md_MsgStructStatusResponse = File_structs_structs_tx_proto.Messages().ByName("MsgStructStatusResponse") - fd_MsgStructStatusResponse_struct = md_MsgStructStatusResponse.Fields().ByName("struct") + md_MsgReactorInfuse = File_structs_structs_tx_proto.Messages().ByName("MsgReactorInfuse") + fd_MsgReactorInfuse_creator = md_MsgReactorInfuse.Fields().ByName("creator") + fd_MsgReactorInfuse_delegator_address = md_MsgReactorInfuse.Fields().ByName("delegator_address") + fd_MsgReactorInfuse_validator_address = md_MsgReactorInfuse.Fields().ByName("validator_address") + fd_MsgReactorInfuse_amount = md_MsgReactorInfuse.Fields().ByName("amount") } -var _ protoreflect.Message = (*fastReflection_MsgStructStatusResponse)(nil) +var _ protoreflect.Message = (*fastReflection_MsgReactorInfuse)(nil) -type fastReflection_MsgStructStatusResponse MsgStructStatusResponse +type fastReflection_MsgReactorInfuse MsgReactorInfuse -func (x *MsgStructStatusResponse) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgStructStatusResponse)(x) +func (x *MsgReactorInfuse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorInfuse)(x) } -func (x *MsgStructStatusResponse) slowProtoReflect() protoreflect.Message { +func (x *MsgReactorInfuse) slowProtoReflect() protoreflect.Message { mi := &file_structs_structs_tx_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -29485,43 +29492,43 @@ func (x *MsgStructStatusResponse) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgStructStatusResponse_messageType fastReflection_MsgStructStatusResponse_messageType -var _ protoreflect.MessageType = fastReflection_MsgStructStatusResponse_messageType{} +var _fastReflection_MsgReactorInfuse_messageType fastReflection_MsgReactorInfuse_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorInfuse_messageType{} -type fastReflection_MsgStructStatusResponse_messageType struct{} +type fastReflection_MsgReactorInfuse_messageType struct{} -func (x fastReflection_MsgStructStatusResponse_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgStructStatusResponse)(nil) +func (x fastReflection_MsgReactorInfuse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorInfuse)(nil) } -func (x fastReflection_MsgStructStatusResponse_messageType) New() protoreflect.Message { - return new(fastReflection_MsgStructStatusResponse) +func (x fastReflection_MsgReactorInfuse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorInfuse) } -func (x fastReflection_MsgStructStatusResponse_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgStructStatusResponse +func (x fastReflection_MsgReactorInfuse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorInfuse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgStructStatusResponse) Descriptor() protoreflect.MessageDescriptor { - return md_MsgStructStatusResponse +func (x *fastReflection_MsgReactorInfuse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorInfuse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_MsgStructStatusResponse) Type() protoreflect.MessageType { - return _fastReflection_MsgStructStatusResponse_messageType +func (x *fastReflection_MsgReactorInfuse) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorInfuse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgStructStatusResponse) New() protoreflect.Message { - return new(fastReflection_MsgStructStatusResponse) +func (x *fastReflection_MsgReactorInfuse) New() protoreflect.Message { + return new(fastReflection_MsgReactorInfuse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgStructStatusResponse) Interface() protoreflect.ProtoMessage { - return (*MsgStructStatusResponse)(x) +func (x *fastReflection_MsgReactorInfuse) Interface() protoreflect.ProtoMessage { + return (*MsgReactorInfuse)(x) } // Range iterates over every populated field in an undefined order, @@ -29529,10 +29536,28 @@ func (x *fastReflection_MsgStructStatusResponse) Interface() protoreflect.ProtoM // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgStructStatusResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Struct != nil { - value := protoreflect.ValueOfMessage(x.Struct.ProtoReflect()) - if !f(fd_MsgStructStatusResponse_struct, value) { +func (x *fastReflection_MsgReactorInfuse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Creator != "" { + value := protoreflect.ValueOfString(x.Creator) + if !f(fd_MsgReactorInfuse_creator, value) { + return + } + } + if x.DelegatorAddress != "" { + value := protoreflect.ValueOfString(x.DelegatorAddress) + if !f(fd_MsgReactorInfuse_delegator_address, value) { + return + } + } + if x.ValidatorAddress != "" { + value := protoreflect.ValueOfString(x.ValidatorAddress) + if !f(fd_MsgReactorInfuse_validator_address, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgReactorInfuse_amount, value) { return } } @@ -29549,15 +29574,21 @@ func (x *fastReflection_MsgStructStatusResponse) Range(f func(protoreflect.Field // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_MsgStructStatusResponse) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgReactorInfuse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "structs.structs.MsgStructStatusResponse.struct": - return x.Struct != nil + case "structs.structs.MsgReactorInfuse.creator": + return x.Creator != "" + case "structs.structs.MsgReactorInfuse.delegator_address": + return x.DelegatorAddress != "" + case "structs.structs.MsgReactorInfuse.validator_address": + return x.ValidatorAddress != "" + case "structs.structs.MsgReactorInfuse.amount": + return x.Amount != nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuse")) } - panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuse does not contain field %s", fd.FullName())) } } @@ -29567,15 +29598,21 @@ func (x *fastReflection_MsgStructStatusResponse) Has(fd protoreflect.FieldDescri // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructStatusResponse) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgReactorInfuse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "structs.structs.MsgStructStatusResponse.struct": - x.Struct = nil + case "structs.structs.MsgReactorInfuse.creator": + x.Creator = "" + case "structs.structs.MsgReactorInfuse.delegator_address": + x.DelegatorAddress = "" + case "structs.structs.MsgReactorInfuse.validator_address": + x.ValidatorAddress = "" + case "structs.structs.MsgReactorInfuse.amount": + x.Amount = nil default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuse")) } - panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuse does not contain field %s", fd.FullName())) } } @@ -29585,16 +29622,25 @@ func (x *fastReflection_MsgStructStatusResponse) Clear(fd protoreflect.FieldDesc // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgStructStatusResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgReactorInfuse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "structs.structs.MsgStructStatusResponse.struct": - value := x.Struct + case "structs.structs.MsgReactorInfuse.creator": + value := x.Creator + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorInfuse.delegator_address": + value := x.DelegatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorInfuse.validator_address": + value := x.ValidatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorInfuse.amount": + value := x.Amount return protoreflect.ValueOfMessage(value.ProtoReflect()) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuse")) } - panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuse does not contain field %s", descriptor.FullName())) } } @@ -29608,15 +29654,21 @@ func (x *fastReflection_MsgStructStatusResponse) Get(descriptor protoreflect.Fie // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructStatusResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgReactorInfuse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "structs.structs.MsgStructStatusResponse.struct": - x.Struct = value.Message().Interface().(*Struct) + case "structs.structs.MsgReactorInfuse.creator": + x.Creator = value.Interface().(string) + case "structs.structs.MsgReactorInfuse.delegator_address": + x.DelegatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorInfuse.validator_address": + x.ValidatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorInfuse.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuse")) } - panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuse does not contain field %s", fd.FullName())) } } @@ -29630,44 +29682,56 @@ func (x *fastReflection_MsgStructStatusResponse) Set(fd protoreflect.FieldDescri // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructStatusResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgReactorInfuse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "structs.structs.MsgStructStatusResponse.struct": - if x.Struct == nil { - x.Struct = new(Struct) + case "structs.structs.MsgReactorInfuse.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) } - return protoreflect.ValueOfMessage(x.Struct.ProtoReflect()) + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + case "structs.structs.MsgReactorInfuse.creator": + panic(fmt.Errorf("field creator of message structs.structs.MsgReactorInfuse is not mutable")) + case "structs.structs.MsgReactorInfuse.delegator_address": + panic(fmt.Errorf("field delegator_address of message structs.structs.MsgReactorInfuse is not mutable")) + case "structs.structs.MsgReactorInfuse.validator_address": + panic(fmt.Errorf("field validator_address of message structs.structs.MsgReactorInfuse is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuse")) } - panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_MsgStructStatusResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgReactorInfuse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "structs.structs.MsgStructStatusResponse.struct": - m := new(Struct) + case "structs.structs.MsgReactorInfuse.creator": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorInfuse.delegator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorInfuse.validator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorInfuse.amount": + m := new(v1beta1.Coin) return protoreflect.ValueOfMessage(m.ProtoReflect()) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuse")) } - panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_MsgStructStatusResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgReactorInfuse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgStructStatusResponse", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorInfuse", d.FullName())) } panic("unreachable") } @@ -29675,7 +29739,7 @@ func (x *fastReflection_MsgStructStatusResponse) WhichOneof(d protoreflect.Oneof // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_MsgStructStatusResponse) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgReactorInfuse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -29686,7 +29750,7 @@ func (x *fastReflection_MsgStructStatusResponse) GetUnknown() protoreflect.RawFi // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructStatusResponse) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgReactorInfuse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -29698,7 +29762,7 @@ func (x *fastReflection_MsgStructStatusResponse) SetUnknown(fields protoreflect. // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_MsgStructStatusResponse) IsValid() bool { +func (x *fastReflection_MsgReactorInfuse) IsValid() bool { return x != nil } @@ -29708,9 +29772,9 @@ func (x *fastReflection_MsgStructStatusResponse) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgReactorInfuse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgStructStatusResponse) + x := input.Message.Interface().(*MsgReactorInfuse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -29722,8 +29786,20 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth var n int var l int _ = l - if x.Struct != nil { - l = options.Size(x.Struct) + l = len(x.Creator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.DelegatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ValidatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) n += 1 + l + runtime.Sov(uint64(l)) } if x.unknownFields != nil { @@ -29736,7 +29812,7 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgStructStatusResponse) + x := input.Message.Interface().(*MsgReactorInfuse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -29755,8 +29831,8 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if x.Struct != nil { - encoded, err := options.Marshal(x.Struct) + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) if err != nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -29767,6 +29843,27 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth copy(dAtA[i:], encoded) i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) i-- + dAtA[i] = 0x22 + } + if len(x.ValidatorAddress) > 0 { + i -= len(x.ValidatorAddress) + copy(dAtA[i:], x.ValidatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ValidatorAddress))) + i-- + dAtA[i] = 0x1a + } + if len(x.DelegatorAddress) > 0 { + i -= len(x.DelegatorAddress) + copy(dAtA[i:], x.DelegatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.DelegatorAddress))) + i-- + dAtA[i] = 0x12 + } + if len(x.Creator) > 0 { + i -= len(x.Creator) + copy(dAtA[i:], x.Creator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Creator))) + i-- dAtA[i] = 0xa } if input.Buf != nil { @@ -29780,7 +29877,7 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgStructStatusResponse) + x := input.Message.Interface().(*MsgReactorInfuse) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -29812,15 +29909,111 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgStructStatusResponse: wiretype end group for non-group") + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorInfuse: wiretype end group for non-group") } if fieldNum <= 0 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgStructStatusResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorInfuse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Struct", wireType) + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.DelegatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ValidatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.ValidatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -29847,10 +30040,10 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth if postIndex > l { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF } - if x.Struct == nil { - x.Struct = &Struct{} + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} } - if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Struct); err != nil { + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex @@ -29890,27 +30083,23 @@ func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Meth } var ( - md_MsgStructActivate protoreflect.MessageDescriptor - fd_MsgStructActivate_creator protoreflect.FieldDescriptor - fd_MsgStructActivate_structId protoreflect.FieldDescriptor + md_MsgReactorInfuseResponse protoreflect.MessageDescriptor ) func init() { file_structs_structs_tx_proto_init() - md_MsgStructActivate = File_structs_structs_tx_proto.Messages().ByName("MsgStructActivate") - fd_MsgStructActivate_creator = md_MsgStructActivate.Fields().ByName("creator") - fd_MsgStructActivate_structId = md_MsgStructActivate.Fields().ByName("structId") + md_MsgReactorInfuseResponse = File_structs_structs_tx_proto.Messages().ByName("MsgReactorInfuseResponse") } -var _ protoreflect.Message = (*fastReflection_MsgStructActivate)(nil) +var _ protoreflect.Message = (*fastReflection_MsgReactorInfuseResponse)(nil) -type fastReflection_MsgStructActivate MsgStructActivate +type fastReflection_MsgReactorInfuseResponse MsgReactorInfuseResponse -func (x *MsgStructActivate) ProtoReflect() protoreflect.Message { - return (*fastReflection_MsgStructActivate)(x) +func (x *MsgReactorInfuseResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorInfuseResponse)(x) } -func (x *MsgStructActivate) slowProtoReflect() protoreflect.Message { +func (x *MsgReactorInfuseResponse) slowProtoReflect() protoreflect.Message { mi := &file_structs_structs_tx_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -29922,43 +30111,43 @@ func (x *MsgStructActivate) slowProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -var _fastReflection_MsgStructActivate_messageType fastReflection_MsgStructActivate_messageType -var _ protoreflect.MessageType = fastReflection_MsgStructActivate_messageType{} +var _fastReflection_MsgReactorInfuseResponse_messageType fastReflection_MsgReactorInfuseResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorInfuseResponse_messageType{} -type fastReflection_MsgStructActivate_messageType struct{} +type fastReflection_MsgReactorInfuseResponse_messageType struct{} -func (x fastReflection_MsgStructActivate_messageType) Zero() protoreflect.Message { - return (*fastReflection_MsgStructActivate)(nil) +func (x fastReflection_MsgReactorInfuseResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorInfuseResponse)(nil) } -func (x fastReflection_MsgStructActivate_messageType) New() protoreflect.Message { - return new(fastReflection_MsgStructActivate) +func (x fastReflection_MsgReactorInfuseResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorInfuseResponse) } -func (x fastReflection_MsgStructActivate_messageType) Descriptor() protoreflect.MessageDescriptor { - return md_MsgStructActivate +func (x fastReflection_MsgReactorInfuseResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorInfuseResponse } // Descriptor returns message descriptor, which contains only the protobuf // type information for the message. -func (x *fastReflection_MsgStructActivate) Descriptor() protoreflect.MessageDescriptor { - return md_MsgStructActivate +func (x *fastReflection_MsgReactorInfuseResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorInfuseResponse } // Type returns the message type, which encapsulates both Go and protobuf // type information. If the Go type information is not needed, // it is recommended that the message descriptor be used instead. -func (x *fastReflection_MsgStructActivate) Type() protoreflect.MessageType { - return _fastReflection_MsgStructActivate_messageType +func (x *fastReflection_MsgReactorInfuseResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorInfuseResponse_messageType } // New returns a newly allocated and mutable empty message. -func (x *fastReflection_MsgStructActivate) New() protoreflect.Message { - return new(fastReflection_MsgStructActivate) +func (x *fastReflection_MsgReactorInfuseResponse) New() protoreflect.Message { + return new(fastReflection_MsgReactorInfuseResponse) } // Interface unwraps the message reflection interface and // returns the underlying ProtoMessage interface. -func (x *fastReflection_MsgStructActivate) Interface() protoreflect.ProtoMessage { - return (*MsgStructActivate)(x) +func (x *fastReflection_MsgReactorInfuseResponse) Interface() protoreflect.ProtoMessage { + return (*MsgReactorInfuseResponse)(x) } // Range iterates over every populated field in an undefined order, @@ -29966,19 +30155,7 @@ func (x *fastReflection_MsgStructActivate) Interface() protoreflect.ProtoMessage // Range returns immediately if f returns false. // While iterating, mutating operations may only be performed // on the current field descriptor. -func (x *fastReflection_MsgStructActivate) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { - if x.Creator != "" { - value := protoreflect.ValueOfString(x.Creator) - if !f(fd_MsgStructActivate_creator, value) { - return - } - } - if x.StructId != "" { - value := protoreflect.ValueOfString(x.StructId) - if !f(fd_MsgStructActivate_structId, value) { - return - } - } +func (x *fastReflection_MsgReactorInfuseResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { } // Has reports whether a field is populated. @@ -29992,17 +30169,13 @@ func (x *fastReflection_MsgStructActivate) Range(f func(protoreflect.FieldDescri // In other cases (aside from the nullable cases above), // a proto3 scalar field is populated if it contains a non-zero value, and // a repeated field is populated if it is non-empty. -func (x *fastReflection_MsgStructActivate) Has(fd protoreflect.FieldDescriptor) bool { +func (x *fastReflection_MsgReactorInfuseResponse) Has(fd protoreflect.FieldDescriptor) bool { switch fd.FullName() { - case "structs.structs.MsgStructActivate.creator": - return x.Creator != "" - case "structs.structs.MsgStructActivate.structId": - return x.StructId != "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuseResponse")) } - panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuseResponse does not contain field %s", fd.FullName())) } } @@ -30012,17 +30185,13 @@ func (x *fastReflection_MsgStructActivate) Has(fd protoreflect.FieldDescriptor) // associated with the given field number. // // Clear is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructActivate) Clear(fd protoreflect.FieldDescriptor) { +func (x *fastReflection_MsgReactorInfuseResponse) Clear(fd protoreflect.FieldDescriptor) { switch fd.FullName() { - case "structs.structs.MsgStructActivate.creator": - x.Creator = "" - case "structs.structs.MsgStructActivate.structId": - x.StructId = "" default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuseResponse")) } - panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuseResponse does not contain field %s", fd.FullName())) } } @@ -30032,19 +30201,13 @@ func (x *fastReflection_MsgStructActivate) Clear(fd protoreflect.FieldDescriptor // the default value of a bytes scalar is guaranteed to be a copy. // For unpopulated composite types, it returns an empty, read-only view // of the value; to obtain a mutable reference, use Mutable. -func (x *fastReflection_MsgStructActivate) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgReactorInfuseResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { switch descriptor.FullName() { - case "structs.structs.MsgStructActivate.creator": - value := x.Creator - return protoreflect.ValueOfString(value) - case "structs.structs.MsgStructActivate.structId": - value := x.StructId - return protoreflect.ValueOfString(value) default: if descriptor.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuseResponse")) } - panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", descriptor.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuseResponse does not contain field %s", descriptor.FullName())) } } @@ -30058,17 +30221,13 @@ func (x *fastReflection_MsgStructActivate) Get(descriptor protoreflect.FieldDesc // empty, read-only value, then it panics. // // Set is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructActivate) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { +func (x *fastReflection_MsgReactorInfuseResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { switch fd.FullName() { - case "structs.structs.MsgStructActivate.creator": - x.Creator = value.Interface().(string) - case "structs.structs.MsgStructActivate.structId": - x.StructId = value.Interface().(string) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuseResponse")) } - panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuseResponse does not contain field %s", fd.FullName())) } } @@ -30082,44 +30241,36 @@ func (x *fastReflection_MsgStructActivate) Set(fd protoreflect.FieldDescriptor, // It panics if the field does not contain a composite type. // // Mutable is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructActivate) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgReactorInfuseResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "structs.structs.MsgStructActivate.creator": - panic(fmt.Errorf("field creator of message structs.structs.MsgStructActivate is not mutable")) - case "structs.structs.MsgStructActivate.structId": - panic(fmt.Errorf("field structId of message structs.structs.MsgStructActivate is not mutable")) default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuseResponse")) } - panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuseResponse does not contain field %s", fd.FullName())) } } // NewField returns a new value that is assignable to the field // for the given descriptor. For scalars, this returns the default value. // For lists, maps, and messages, this returns a new, empty, mutable value. -func (x *fastReflection_MsgStructActivate) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { +func (x *fastReflection_MsgReactorInfuseResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { switch fd.FullName() { - case "structs.structs.MsgStructActivate.creator": - return protoreflect.ValueOfString("") - case "structs.structs.MsgStructActivate.structId": - return protoreflect.ValueOfString("") default: if fd.IsExtension() { - panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorInfuseResponse")) } - panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + panic(fmt.Errorf("message structs.structs.MsgReactorInfuseResponse does not contain field %s", fd.FullName())) } } // WhichOneof reports which field within the oneof is populated, // returning nil if none are populated. // It panics if the oneof descriptor does not belong to this message. -func (x *fastReflection_MsgStructActivate) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { +func (x *fastReflection_MsgReactorInfuseResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { switch d.FullName() { default: - panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgStructActivate", d.FullName())) + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorInfuseResponse", d.FullName())) } panic("unreachable") } @@ -30127,7 +30278,7 @@ func (x *fastReflection_MsgStructActivate) WhichOneof(d protoreflect.OneofDescri // GetUnknown retrieves the entire list of unknown fields. // The caller may only mutate the contents of the RawFields // if the mutated bytes are stored back into the message with SetUnknown. -func (x *fastReflection_MsgStructActivate) GetUnknown() protoreflect.RawFields { +func (x *fastReflection_MsgReactorInfuseResponse) GetUnknown() protoreflect.RawFields { return x.unknownFields } @@ -30138,7 +30289,7 @@ func (x *fastReflection_MsgStructActivate) GetUnknown() protoreflect.RawFields { // An empty RawFields may be passed to clear the fields. // // SetUnknown is a mutating operation and unsafe for concurrent use. -func (x *fastReflection_MsgStructActivate) SetUnknown(fields protoreflect.RawFields) { +func (x *fastReflection_MsgReactorInfuseResponse) SetUnknown(fields protoreflect.RawFields) { x.unknownFields = fields } @@ -30150,7 +30301,7 @@ func (x *fastReflection_MsgStructActivate) SetUnknown(fields protoreflect.RawFie // message type, but the details are implementation dependent. // Validity is not part of the protobuf data model, and may not // be preserved in marshaling or other operations. -func (x *fastReflection_MsgStructActivate) IsValid() bool { +func (x *fastReflection_MsgReactorInfuseResponse) IsValid() bool { return x != nil } @@ -30160,9 +30311,9 @@ func (x *fastReflection_MsgStructActivate) IsValid() bool { // The returned methods type is identical to // "google.golang.org/protobuf/runtime/protoiface".Methods. // Consult the protoiface package documentation for details. -func (x *fastReflection_MsgStructActivate) ProtoMethods() *protoiface.Methods { +func (x *fastReflection_MsgReactorInfuseResponse) ProtoMethods() *protoiface.Methods { size := func(input protoiface.SizeInput) protoiface.SizeOutput { - x := input.Message.Interface().(*MsgStructActivate) + x := input.Message.Interface().(*MsgReactorInfuseResponse) if x == nil { return protoiface.SizeOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -30174,14 +30325,6 @@ func (x *fastReflection_MsgStructActivate) ProtoMethods() *protoiface.Methods { var n int var l int _ = l - l = len(x.Creator) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } - l = len(x.StructId) - if l > 0 { - n += 1 + l + runtime.Sov(uint64(l)) - } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -30192,7 +30335,7 @@ func (x *fastReflection_MsgStructActivate) ProtoMethods() *protoiface.Methods { } marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { - x := input.Message.Interface().(*MsgStructActivate) + x := input.Message.Interface().(*MsgReactorInfuseResponse) if x == nil { return protoiface.MarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -30211,20 +30354,6 @@ func (x *fastReflection_MsgStructActivate) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } - if len(x.StructId) > 0 { - i -= len(x.StructId) - copy(dAtA[i:], x.StructId) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.StructId))) - i-- - dAtA[i] = 0x12 - } - if len(x.Creator) > 0 { - i -= len(x.Creator) - copy(dAtA[i:], x.Creator) - i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Creator))) - i-- - dAtA[i] = 0xa - } if input.Buf != nil { input.Buf = append(input.Buf, dAtA...) } else { @@ -30236,7 +30365,4160 @@ func (x *fastReflection_MsgStructActivate) ProtoMethods() *protoiface.Methods { }, nil } unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { - x := input.Message.Interface().(*MsgStructActivate) + x := input.Message.Interface().(*MsgReactorInfuseResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorInfuseResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorInfuseResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgReactorBeginMigration protoreflect.MessageDescriptor + fd_MsgReactorBeginMigration_creator protoreflect.FieldDescriptor + fd_MsgReactorBeginMigration_delegator_address protoreflect.FieldDescriptor + fd_MsgReactorBeginMigration_validator_src_address protoreflect.FieldDescriptor + fd_MsgReactorBeginMigration_validator_dst_address protoreflect.FieldDescriptor + fd_MsgReactorBeginMigration_amount protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgReactorBeginMigration = File_structs_structs_tx_proto.Messages().ByName("MsgReactorBeginMigration") + fd_MsgReactorBeginMigration_creator = md_MsgReactorBeginMigration.Fields().ByName("creator") + fd_MsgReactorBeginMigration_delegator_address = md_MsgReactorBeginMigration.Fields().ByName("delegator_address") + fd_MsgReactorBeginMigration_validator_src_address = md_MsgReactorBeginMigration.Fields().ByName("validator_src_address") + fd_MsgReactorBeginMigration_validator_dst_address = md_MsgReactorBeginMigration.Fields().ByName("validator_dst_address") + fd_MsgReactorBeginMigration_amount = md_MsgReactorBeginMigration.Fields().ByName("amount") +} + +var _ protoreflect.Message = (*fastReflection_MsgReactorBeginMigration)(nil) + +type fastReflection_MsgReactorBeginMigration MsgReactorBeginMigration + +func (x *MsgReactorBeginMigration) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorBeginMigration)(x) +} + +func (x *MsgReactorBeginMigration) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[60] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgReactorBeginMigration_messageType fastReflection_MsgReactorBeginMigration_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorBeginMigration_messageType{} + +type fastReflection_MsgReactorBeginMigration_messageType struct{} + +func (x fastReflection_MsgReactorBeginMigration_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorBeginMigration)(nil) +} +func (x fastReflection_MsgReactorBeginMigration_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorBeginMigration) +} +func (x fastReflection_MsgReactorBeginMigration_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorBeginMigration +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgReactorBeginMigration) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorBeginMigration +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgReactorBeginMigration) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorBeginMigration_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgReactorBeginMigration) New() protoreflect.Message { + return new(fastReflection_MsgReactorBeginMigration) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgReactorBeginMigration) Interface() protoreflect.ProtoMessage { + return (*MsgReactorBeginMigration)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgReactorBeginMigration) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Creator != "" { + value := protoreflect.ValueOfString(x.Creator) + if !f(fd_MsgReactorBeginMigration_creator, value) { + return + } + } + if x.DelegatorAddress != "" { + value := protoreflect.ValueOfString(x.DelegatorAddress) + if !f(fd_MsgReactorBeginMigration_delegator_address, value) { + return + } + } + if x.ValidatorSrcAddress != "" { + value := protoreflect.ValueOfString(x.ValidatorSrcAddress) + if !f(fd_MsgReactorBeginMigration_validator_src_address, value) { + return + } + } + if x.ValidatorDstAddress != "" { + value := protoreflect.ValueOfString(x.ValidatorDstAddress) + if !f(fd_MsgReactorBeginMigration_validator_dst_address, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgReactorBeginMigration_amount, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgReactorBeginMigration) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigration.creator": + return x.Creator != "" + case "structs.structs.MsgReactorBeginMigration.delegator_address": + return x.DelegatorAddress != "" + case "structs.structs.MsgReactorBeginMigration.validator_src_address": + return x.ValidatorSrcAddress != "" + case "structs.structs.MsgReactorBeginMigration.validator_dst_address": + return x.ValidatorDstAddress != "" + case "structs.structs.MsgReactorBeginMigration.amount": + return x.Amount != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigration")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigration does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigration) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigration.creator": + x.Creator = "" + case "structs.structs.MsgReactorBeginMigration.delegator_address": + x.DelegatorAddress = "" + case "structs.structs.MsgReactorBeginMigration.validator_src_address": + x.ValidatorSrcAddress = "" + case "structs.structs.MsgReactorBeginMigration.validator_dst_address": + x.ValidatorDstAddress = "" + case "structs.structs.MsgReactorBeginMigration.amount": + x.Amount = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigration")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigration does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgReactorBeginMigration) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgReactorBeginMigration.creator": + value := x.Creator + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorBeginMigration.delegator_address": + value := x.DelegatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorBeginMigration.validator_src_address": + value := x.ValidatorSrcAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorBeginMigration.validator_dst_address": + value := x.ValidatorDstAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorBeginMigration.amount": + value := x.Amount + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigration")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigration does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigration) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigration.creator": + x.Creator = value.Interface().(string) + case "structs.structs.MsgReactorBeginMigration.delegator_address": + x.DelegatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorBeginMigration.validator_src_address": + x.ValidatorSrcAddress = value.Interface().(string) + case "structs.structs.MsgReactorBeginMigration.validator_dst_address": + x.ValidatorDstAddress = value.Interface().(string) + case "structs.structs.MsgReactorBeginMigration.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigration")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigration does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigration) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigration.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + case "structs.structs.MsgReactorBeginMigration.creator": + panic(fmt.Errorf("field creator of message structs.structs.MsgReactorBeginMigration is not mutable")) + case "structs.structs.MsgReactorBeginMigration.delegator_address": + panic(fmt.Errorf("field delegator_address of message structs.structs.MsgReactorBeginMigration is not mutable")) + case "structs.structs.MsgReactorBeginMigration.validator_src_address": + panic(fmt.Errorf("field validator_src_address of message structs.structs.MsgReactorBeginMigration is not mutable")) + case "structs.structs.MsgReactorBeginMigration.validator_dst_address": + panic(fmt.Errorf("field validator_dst_address of message structs.structs.MsgReactorBeginMigration is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigration")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigration does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgReactorBeginMigration) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigration.creator": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorBeginMigration.delegator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorBeginMigration.validator_src_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorBeginMigration.validator_dst_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorBeginMigration.amount": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigration")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigration does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgReactorBeginMigration) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorBeginMigration", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgReactorBeginMigration) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigration) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgReactorBeginMigration) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgReactorBeginMigration) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgReactorBeginMigration) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.Creator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.DelegatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ValidatorSrcAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ValidatorDstAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorBeginMigration) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x2a + } + if len(x.ValidatorDstAddress) > 0 { + i -= len(x.ValidatorDstAddress) + copy(dAtA[i:], x.ValidatorDstAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ValidatorDstAddress))) + i-- + dAtA[i] = 0x22 + } + if len(x.ValidatorSrcAddress) > 0 { + i -= len(x.ValidatorSrcAddress) + copy(dAtA[i:], x.ValidatorSrcAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ValidatorSrcAddress))) + i-- + dAtA[i] = 0x1a + } + if len(x.DelegatorAddress) > 0 { + i -= len(x.DelegatorAddress) + copy(dAtA[i:], x.DelegatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.DelegatorAddress))) + i-- + dAtA[i] = 0x12 + } + if len(x.Creator) > 0 { + i -= len(x.Creator) + copy(dAtA[i:], x.Creator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Creator))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorBeginMigration) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorBeginMigration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorBeginMigration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.DelegatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ValidatorSrcAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.ValidatorSrcAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ValidatorDstAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.ValidatorDstAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgReactorBeginMigrationResponse protoreflect.MessageDescriptor + fd_MsgReactorBeginMigrationResponse_completion_time protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgReactorBeginMigrationResponse = File_structs_structs_tx_proto.Messages().ByName("MsgReactorBeginMigrationResponse") + fd_MsgReactorBeginMigrationResponse_completion_time = md_MsgReactorBeginMigrationResponse.Fields().ByName("completion_time") +} + +var _ protoreflect.Message = (*fastReflection_MsgReactorBeginMigrationResponse)(nil) + +type fastReflection_MsgReactorBeginMigrationResponse MsgReactorBeginMigrationResponse + +func (x *MsgReactorBeginMigrationResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorBeginMigrationResponse)(x) +} + +func (x *MsgReactorBeginMigrationResponse) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[61] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgReactorBeginMigrationResponse_messageType fastReflection_MsgReactorBeginMigrationResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorBeginMigrationResponse_messageType{} + +type fastReflection_MsgReactorBeginMigrationResponse_messageType struct{} + +func (x fastReflection_MsgReactorBeginMigrationResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorBeginMigrationResponse)(nil) +} +func (x fastReflection_MsgReactorBeginMigrationResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorBeginMigrationResponse) +} +func (x fastReflection_MsgReactorBeginMigrationResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorBeginMigrationResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorBeginMigrationResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorBeginMigrationResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgReactorBeginMigrationResponse) New() protoreflect.Message { + return new(fastReflection_MsgReactorBeginMigrationResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Interface() protoreflect.ProtoMessage { + return (*MsgReactorBeginMigrationResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.CompletionTime != nil { + value := protoreflect.ValueOfMessage(x.CompletionTime.ProtoReflect()) + if !f(fd_MsgReactorBeginMigrationResponse_completion_time, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigrationResponse.completion_time": + return x.CompletionTime != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigrationResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigrationResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigrationResponse.completion_time": + x.CompletionTime = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigrationResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigrationResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgReactorBeginMigrationResponse.completion_time": + value := x.CompletionTime + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigrationResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigrationResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigrationResponse.completion_time": + x.CompletionTime = value.Message().Interface().(*timestamppb.Timestamp) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigrationResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigrationResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigrationResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigrationResponse.completion_time": + if x.CompletionTime == nil { + x.CompletionTime = new(timestamppb.Timestamp) + } + return protoreflect.ValueOfMessage(x.CompletionTime.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigrationResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigrationResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgReactorBeginMigrationResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorBeginMigrationResponse.completion_time": + m := new(timestamppb.Timestamp) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorBeginMigrationResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorBeginMigrationResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgReactorBeginMigrationResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorBeginMigrationResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgReactorBeginMigrationResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorBeginMigrationResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgReactorBeginMigrationResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgReactorBeginMigrationResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgReactorBeginMigrationResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if x.CompletionTime != nil { + l = options.Size(x.CompletionTime) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorBeginMigrationResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.CompletionTime != nil { + encoded, err := options.Marshal(x.CompletionTime) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorBeginMigrationResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorBeginMigrationResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorBeginMigrationResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CompletionTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.CompletionTime == nil { + x.CompletionTime = ×tamppb.Timestamp{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.CompletionTime); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgReactorDefuse protoreflect.MessageDescriptor + fd_MsgReactorDefuse_creator protoreflect.FieldDescriptor + fd_MsgReactorDefuse_delegator_address protoreflect.FieldDescriptor + fd_MsgReactorDefuse_validator_address protoreflect.FieldDescriptor + fd_MsgReactorDefuse_amount protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgReactorDefuse = File_structs_structs_tx_proto.Messages().ByName("MsgReactorDefuse") + fd_MsgReactorDefuse_creator = md_MsgReactorDefuse.Fields().ByName("creator") + fd_MsgReactorDefuse_delegator_address = md_MsgReactorDefuse.Fields().ByName("delegator_address") + fd_MsgReactorDefuse_validator_address = md_MsgReactorDefuse.Fields().ByName("validator_address") + fd_MsgReactorDefuse_amount = md_MsgReactorDefuse.Fields().ByName("amount") +} + +var _ protoreflect.Message = (*fastReflection_MsgReactorDefuse)(nil) + +type fastReflection_MsgReactorDefuse MsgReactorDefuse + +func (x *MsgReactorDefuse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorDefuse)(x) +} + +func (x *MsgReactorDefuse) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[62] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgReactorDefuse_messageType fastReflection_MsgReactorDefuse_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorDefuse_messageType{} + +type fastReflection_MsgReactorDefuse_messageType struct{} + +func (x fastReflection_MsgReactorDefuse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorDefuse)(nil) +} +func (x fastReflection_MsgReactorDefuse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorDefuse) +} +func (x fastReflection_MsgReactorDefuse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorDefuse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgReactorDefuse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorDefuse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgReactorDefuse) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorDefuse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgReactorDefuse) New() protoreflect.Message { + return new(fastReflection_MsgReactorDefuse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgReactorDefuse) Interface() protoreflect.ProtoMessage { + return (*MsgReactorDefuse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgReactorDefuse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Creator != "" { + value := protoreflect.ValueOfString(x.Creator) + if !f(fd_MsgReactorDefuse_creator, value) { + return + } + } + if x.DelegatorAddress != "" { + value := protoreflect.ValueOfString(x.DelegatorAddress) + if !f(fd_MsgReactorDefuse_delegator_address, value) { + return + } + } + if x.ValidatorAddress != "" { + value := protoreflect.ValueOfString(x.ValidatorAddress) + if !f(fd_MsgReactorDefuse_validator_address, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgReactorDefuse_amount, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgReactorDefuse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuse.creator": + return x.Creator != "" + case "structs.structs.MsgReactorDefuse.delegator_address": + return x.DelegatorAddress != "" + case "structs.structs.MsgReactorDefuse.validator_address": + return x.ValidatorAddress != "" + case "structs.structs.MsgReactorDefuse.amount": + return x.Amount != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuse.creator": + x.Creator = "" + case "structs.structs.MsgReactorDefuse.delegator_address": + x.DelegatorAddress = "" + case "structs.structs.MsgReactorDefuse.validator_address": + x.ValidatorAddress = "" + case "structs.structs.MsgReactorDefuse.amount": + x.Amount = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgReactorDefuse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgReactorDefuse.creator": + value := x.Creator + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorDefuse.delegator_address": + value := x.DelegatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorDefuse.validator_address": + value := x.ValidatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorDefuse.amount": + value := x.Amount + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuse.creator": + x.Creator = value.Interface().(string) + case "structs.structs.MsgReactorDefuse.delegator_address": + x.DelegatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorDefuse.validator_address": + x.ValidatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorDefuse.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuse.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + case "structs.structs.MsgReactorDefuse.creator": + panic(fmt.Errorf("field creator of message structs.structs.MsgReactorDefuse is not mutable")) + case "structs.structs.MsgReactorDefuse.delegator_address": + panic(fmt.Errorf("field delegator_address of message structs.structs.MsgReactorDefuse is not mutable")) + case "structs.structs.MsgReactorDefuse.validator_address": + panic(fmt.Errorf("field validator_address of message structs.structs.MsgReactorDefuse is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgReactorDefuse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuse.creator": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorDefuse.delegator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorDefuse.validator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorDefuse.amount": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgReactorDefuse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorDefuse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgReactorDefuse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgReactorDefuse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgReactorDefuse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgReactorDefuse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.Creator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.DelegatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ValidatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorDefuse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + if len(x.ValidatorAddress) > 0 { + i -= len(x.ValidatorAddress) + copy(dAtA[i:], x.ValidatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ValidatorAddress))) + i-- + dAtA[i] = 0x1a + } + if len(x.DelegatorAddress) > 0 { + i -= len(x.DelegatorAddress) + copy(dAtA[i:], x.DelegatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.DelegatorAddress))) + i-- + dAtA[i] = 0x12 + } + if len(x.Creator) > 0 { + i -= len(x.Creator) + copy(dAtA[i:], x.Creator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Creator))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorDefuse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorDefuse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorDefuse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.DelegatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ValidatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.ValidatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgReactorDefuseResponse protoreflect.MessageDescriptor + fd_MsgReactorDefuseResponse_completion_time protoreflect.FieldDescriptor + fd_MsgReactorDefuseResponse_amount protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgReactorDefuseResponse = File_structs_structs_tx_proto.Messages().ByName("MsgReactorDefuseResponse") + fd_MsgReactorDefuseResponse_completion_time = md_MsgReactorDefuseResponse.Fields().ByName("completion_time") + fd_MsgReactorDefuseResponse_amount = md_MsgReactorDefuseResponse.Fields().ByName("amount") +} + +var _ protoreflect.Message = (*fastReflection_MsgReactorDefuseResponse)(nil) + +type fastReflection_MsgReactorDefuseResponse MsgReactorDefuseResponse + +func (x *MsgReactorDefuseResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorDefuseResponse)(x) +} + +func (x *MsgReactorDefuseResponse) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[63] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgReactorDefuseResponse_messageType fastReflection_MsgReactorDefuseResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorDefuseResponse_messageType{} + +type fastReflection_MsgReactorDefuseResponse_messageType struct{} + +func (x fastReflection_MsgReactorDefuseResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorDefuseResponse)(nil) +} +func (x fastReflection_MsgReactorDefuseResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorDefuseResponse) +} +func (x fastReflection_MsgReactorDefuseResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorDefuseResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgReactorDefuseResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorDefuseResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgReactorDefuseResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorDefuseResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgReactorDefuseResponse) New() protoreflect.Message { + return new(fastReflection_MsgReactorDefuseResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgReactorDefuseResponse) Interface() protoreflect.ProtoMessage { + return (*MsgReactorDefuseResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgReactorDefuseResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.CompletionTime != nil { + value := protoreflect.ValueOfMessage(x.CompletionTime.ProtoReflect()) + if !f(fd_MsgReactorDefuseResponse_completion_time, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgReactorDefuseResponse_amount, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgReactorDefuseResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuseResponse.completion_time": + return x.CompletionTime != nil + case "structs.structs.MsgReactorDefuseResponse.amount": + return x.Amount != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuseResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuseResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuseResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuseResponse.completion_time": + x.CompletionTime = nil + case "structs.structs.MsgReactorDefuseResponse.amount": + x.Amount = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuseResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuseResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgReactorDefuseResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgReactorDefuseResponse.completion_time": + value := x.CompletionTime + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "structs.structs.MsgReactorDefuseResponse.amount": + value := x.Amount + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuseResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuseResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuseResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuseResponse.completion_time": + x.CompletionTime = value.Message().Interface().(*timestamppb.Timestamp) + case "structs.structs.MsgReactorDefuseResponse.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuseResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuseResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuseResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuseResponse.completion_time": + if x.CompletionTime == nil { + x.CompletionTime = new(timestamppb.Timestamp) + } + return protoreflect.ValueOfMessage(x.CompletionTime.ProtoReflect()) + case "structs.structs.MsgReactorDefuseResponse.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuseResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuseResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgReactorDefuseResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorDefuseResponse.completion_time": + m := new(timestamppb.Timestamp) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "structs.structs.MsgReactorDefuseResponse.amount": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorDefuseResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorDefuseResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgReactorDefuseResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorDefuseResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgReactorDefuseResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorDefuseResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgReactorDefuseResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgReactorDefuseResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgReactorDefuseResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if x.CompletionTime != nil { + l = options.Size(x.CompletionTime) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorDefuseResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x12 + } + if x.CompletionTime != nil { + encoded, err := options.Marshal(x.CompletionTime) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorDefuseResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorDefuseResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorDefuseResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CompletionTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.CompletionTime == nil { + x.CompletionTime = ×tamppb.Timestamp{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.CompletionTime); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgReactorCancelDefusion protoreflect.MessageDescriptor + fd_MsgReactorCancelDefusion_creator protoreflect.FieldDescriptor + fd_MsgReactorCancelDefusion_delegator_address protoreflect.FieldDescriptor + fd_MsgReactorCancelDefusion_validator_address protoreflect.FieldDescriptor + fd_MsgReactorCancelDefusion_amount protoreflect.FieldDescriptor + fd_MsgReactorCancelDefusion_creation_height protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgReactorCancelDefusion = File_structs_structs_tx_proto.Messages().ByName("MsgReactorCancelDefusion") + fd_MsgReactorCancelDefusion_creator = md_MsgReactorCancelDefusion.Fields().ByName("creator") + fd_MsgReactorCancelDefusion_delegator_address = md_MsgReactorCancelDefusion.Fields().ByName("delegator_address") + fd_MsgReactorCancelDefusion_validator_address = md_MsgReactorCancelDefusion.Fields().ByName("validator_address") + fd_MsgReactorCancelDefusion_amount = md_MsgReactorCancelDefusion.Fields().ByName("amount") + fd_MsgReactorCancelDefusion_creation_height = md_MsgReactorCancelDefusion.Fields().ByName("creation_height") +} + +var _ protoreflect.Message = (*fastReflection_MsgReactorCancelDefusion)(nil) + +type fastReflection_MsgReactorCancelDefusion MsgReactorCancelDefusion + +func (x *MsgReactorCancelDefusion) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorCancelDefusion)(x) +} + +func (x *MsgReactorCancelDefusion) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[64] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgReactorCancelDefusion_messageType fastReflection_MsgReactorCancelDefusion_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorCancelDefusion_messageType{} + +type fastReflection_MsgReactorCancelDefusion_messageType struct{} + +func (x fastReflection_MsgReactorCancelDefusion_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorCancelDefusion)(nil) +} +func (x fastReflection_MsgReactorCancelDefusion_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorCancelDefusion) +} +func (x fastReflection_MsgReactorCancelDefusion_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorCancelDefusion +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgReactorCancelDefusion) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorCancelDefusion +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgReactorCancelDefusion) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorCancelDefusion_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgReactorCancelDefusion) New() protoreflect.Message { + return new(fastReflection_MsgReactorCancelDefusion) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgReactorCancelDefusion) Interface() protoreflect.ProtoMessage { + return (*MsgReactorCancelDefusion)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgReactorCancelDefusion) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Creator != "" { + value := protoreflect.ValueOfString(x.Creator) + if !f(fd_MsgReactorCancelDefusion_creator, value) { + return + } + } + if x.DelegatorAddress != "" { + value := protoreflect.ValueOfString(x.DelegatorAddress) + if !f(fd_MsgReactorCancelDefusion_delegator_address, value) { + return + } + } + if x.ValidatorAddress != "" { + value := protoreflect.ValueOfString(x.ValidatorAddress) + if !f(fd_MsgReactorCancelDefusion_validator_address, value) { + return + } + } + if x.Amount != nil { + value := protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + if !f(fd_MsgReactorCancelDefusion_amount, value) { + return + } + } + if x.CreationHeight != int64(0) { + value := protoreflect.ValueOfInt64(x.CreationHeight) + if !f(fd_MsgReactorCancelDefusion_creation_height, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgReactorCancelDefusion) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgReactorCancelDefusion.creator": + return x.Creator != "" + case "structs.structs.MsgReactorCancelDefusion.delegator_address": + return x.DelegatorAddress != "" + case "structs.structs.MsgReactorCancelDefusion.validator_address": + return x.ValidatorAddress != "" + case "structs.structs.MsgReactorCancelDefusion.amount": + return x.Amount != nil + case "structs.structs.MsgReactorCancelDefusion.creation_height": + return x.CreationHeight != int64(0) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusion")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusion does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusion) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgReactorCancelDefusion.creator": + x.Creator = "" + case "structs.structs.MsgReactorCancelDefusion.delegator_address": + x.DelegatorAddress = "" + case "structs.structs.MsgReactorCancelDefusion.validator_address": + x.ValidatorAddress = "" + case "structs.structs.MsgReactorCancelDefusion.amount": + x.Amount = nil + case "structs.structs.MsgReactorCancelDefusion.creation_height": + x.CreationHeight = int64(0) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusion")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusion does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgReactorCancelDefusion) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgReactorCancelDefusion.creator": + value := x.Creator + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorCancelDefusion.delegator_address": + value := x.DelegatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorCancelDefusion.validator_address": + value := x.ValidatorAddress + return protoreflect.ValueOfString(value) + case "structs.structs.MsgReactorCancelDefusion.amount": + value := x.Amount + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "structs.structs.MsgReactorCancelDefusion.creation_height": + value := x.CreationHeight + return protoreflect.ValueOfInt64(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusion")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusion does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusion) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgReactorCancelDefusion.creator": + x.Creator = value.Interface().(string) + case "structs.structs.MsgReactorCancelDefusion.delegator_address": + x.DelegatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorCancelDefusion.validator_address": + x.ValidatorAddress = value.Interface().(string) + case "structs.structs.MsgReactorCancelDefusion.amount": + x.Amount = value.Message().Interface().(*v1beta1.Coin) + case "structs.structs.MsgReactorCancelDefusion.creation_height": + x.CreationHeight = value.Int() + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusion")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusion does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusion) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorCancelDefusion.amount": + if x.Amount == nil { + x.Amount = new(v1beta1.Coin) + } + return protoreflect.ValueOfMessage(x.Amount.ProtoReflect()) + case "structs.structs.MsgReactorCancelDefusion.creator": + panic(fmt.Errorf("field creator of message structs.structs.MsgReactorCancelDefusion is not mutable")) + case "structs.structs.MsgReactorCancelDefusion.delegator_address": + panic(fmt.Errorf("field delegator_address of message structs.structs.MsgReactorCancelDefusion is not mutable")) + case "structs.structs.MsgReactorCancelDefusion.validator_address": + panic(fmt.Errorf("field validator_address of message structs.structs.MsgReactorCancelDefusion is not mutable")) + case "structs.structs.MsgReactorCancelDefusion.creation_height": + panic(fmt.Errorf("field creation_height of message structs.structs.MsgReactorCancelDefusion is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusion")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusion does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgReactorCancelDefusion) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgReactorCancelDefusion.creator": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorCancelDefusion.delegator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorCancelDefusion.validator_address": + return protoreflect.ValueOfString("") + case "structs.structs.MsgReactorCancelDefusion.amount": + m := new(v1beta1.Coin) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "structs.structs.MsgReactorCancelDefusion.creation_height": + return protoreflect.ValueOfInt64(int64(0)) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusion")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusion does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgReactorCancelDefusion) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorCancelDefusion", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgReactorCancelDefusion) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusion) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgReactorCancelDefusion) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgReactorCancelDefusion) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgReactorCancelDefusion) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.Creator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.DelegatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.ValidatorAddress) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Amount != nil { + l = options.Size(x.Amount) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.CreationHeight != 0 { + n += 1 + runtime.Sov(uint64(x.CreationHeight)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorCancelDefusion) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.CreationHeight != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.CreationHeight)) + i-- + dAtA[i] = 0x28 + } + if x.Amount != nil { + encoded, err := options.Marshal(x.Amount) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + if len(x.ValidatorAddress) > 0 { + i -= len(x.ValidatorAddress) + copy(dAtA[i:], x.ValidatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.ValidatorAddress))) + i-- + dAtA[i] = 0x1a + } + if len(x.DelegatorAddress) > 0 { + i -= len(x.DelegatorAddress) + copy(dAtA[i:], x.DelegatorAddress) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.DelegatorAddress))) + i-- + dAtA[i] = 0x12 + } + if len(x.Creator) > 0 { + i -= len(x.Creator) + copy(dAtA[i:], x.Creator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Creator))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorCancelDefusion) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorCancelDefusion: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorCancelDefusion: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.DelegatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ValidatorAddress", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.ValidatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Amount == nil { + x.Amount = &v1beta1.Coin{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Amount); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 5: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field CreationHeight", wireType) + } + x.CreationHeight = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + x.CreationHeight |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgReactorCancelDefusionResponse protoreflect.MessageDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgReactorCancelDefusionResponse = File_structs_structs_tx_proto.Messages().ByName("MsgReactorCancelDefusionResponse") +} + +var _ protoreflect.Message = (*fastReflection_MsgReactorCancelDefusionResponse)(nil) + +type fastReflection_MsgReactorCancelDefusionResponse MsgReactorCancelDefusionResponse + +func (x *MsgReactorCancelDefusionResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgReactorCancelDefusionResponse)(x) +} + +func (x *MsgReactorCancelDefusionResponse) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[65] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgReactorCancelDefusionResponse_messageType fastReflection_MsgReactorCancelDefusionResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgReactorCancelDefusionResponse_messageType{} + +type fastReflection_MsgReactorCancelDefusionResponse_messageType struct{} + +func (x fastReflection_MsgReactorCancelDefusionResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgReactorCancelDefusionResponse)(nil) +} +func (x fastReflection_MsgReactorCancelDefusionResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgReactorCancelDefusionResponse) +} +func (x fastReflection_MsgReactorCancelDefusionResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorCancelDefusionResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgReactorCancelDefusionResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgReactorCancelDefusionResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgReactorCancelDefusionResponse) New() protoreflect.Message { + return new(fastReflection_MsgReactorCancelDefusionResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Interface() protoreflect.ProtoMessage { + return (*MsgReactorCancelDefusionResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusionResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusionResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusionResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusionResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusionResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusionResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusionResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusionResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusionResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusionResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusionResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgReactorCancelDefusionResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgReactorCancelDefusionResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgReactorCancelDefusionResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgReactorCancelDefusionResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgReactorCancelDefusionResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgReactorCancelDefusionResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgReactorCancelDefusionResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgReactorCancelDefusionResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgReactorCancelDefusionResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgReactorCancelDefusionResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorCancelDefusionResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgReactorCancelDefusionResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorCancelDefusionResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgReactorCancelDefusionResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgStructStatusResponse protoreflect.MessageDescriptor + fd_MsgStructStatusResponse_struct protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgStructStatusResponse = File_structs_structs_tx_proto.Messages().ByName("MsgStructStatusResponse") + fd_MsgStructStatusResponse_struct = md_MsgStructStatusResponse.Fields().ByName("struct") +} + +var _ protoreflect.Message = (*fastReflection_MsgStructStatusResponse)(nil) + +type fastReflection_MsgStructStatusResponse MsgStructStatusResponse + +func (x *MsgStructStatusResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgStructStatusResponse)(x) +} + +func (x *MsgStructStatusResponse) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[66] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgStructStatusResponse_messageType fastReflection_MsgStructStatusResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgStructStatusResponse_messageType{} + +type fastReflection_MsgStructStatusResponse_messageType struct{} + +func (x fastReflection_MsgStructStatusResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgStructStatusResponse)(nil) +} +func (x fastReflection_MsgStructStatusResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgStructStatusResponse) +} +func (x fastReflection_MsgStructStatusResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgStructStatusResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgStructStatusResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgStructStatusResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgStructStatusResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgStructStatusResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgStructStatusResponse) New() protoreflect.Message { + return new(fastReflection_MsgStructStatusResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgStructStatusResponse) Interface() protoreflect.ProtoMessage { + return (*MsgStructStatusResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgStructStatusResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Struct != nil { + value := protoreflect.ValueOfMessage(x.Struct.ProtoReflect()) + if !f(fd_MsgStructStatusResponse_struct, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgStructStatusResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgStructStatusResponse.struct": + return x.Struct != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructStatusResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgStructStatusResponse.struct": + x.Struct = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgStructStatusResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgStructStatusResponse.struct": + value := x.Struct + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructStatusResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgStructStatusResponse.struct": + x.Struct = value.Message().Interface().(*Struct) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructStatusResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgStructStatusResponse.struct": + if x.Struct == nil { + x.Struct = new(Struct) + } + return protoreflect.ValueOfMessage(x.Struct.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgStructStatusResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgStructStatusResponse.struct": + m := new(Struct) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructStatusResponse")) + } + panic(fmt.Errorf("message structs.structs.MsgStructStatusResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgStructStatusResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgStructStatusResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgStructStatusResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructStatusResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgStructStatusResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgStructStatusResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgStructStatusResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if x.Struct != nil { + l = options.Size(x.Struct) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgStructStatusResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Struct != nil { + encoded, err := options.Marshal(x.Struct) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgStructStatusResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgStructStatusResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgStructStatusResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Struct", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Struct == nil { + x.Struct = &Struct{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Struct); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_MsgStructActivate protoreflect.MessageDescriptor + fd_MsgStructActivate_creator protoreflect.FieldDescriptor + fd_MsgStructActivate_structId protoreflect.FieldDescriptor +) + +func init() { + file_structs_structs_tx_proto_init() + md_MsgStructActivate = File_structs_structs_tx_proto.Messages().ByName("MsgStructActivate") + fd_MsgStructActivate_creator = md_MsgStructActivate.Fields().ByName("creator") + fd_MsgStructActivate_structId = md_MsgStructActivate.Fields().ByName("structId") +} + +var _ protoreflect.Message = (*fastReflection_MsgStructActivate)(nil) + +type fastReflection_MsgStructActivate MsgStructActivate + +func (x *MsgStructActivate) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgStructActivate)(x) +} + +func (x *MsgStructActivate) slowProtoReflect() protoreflect.Message { + mi := &file_structs_structs_tx_proto_msgTypes[67] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_MsgStructActivate_messageType fastReflection_MsgStructActivate_messageType +var _ protoreflect.MessageType = fastReflection_MsgStructActivate_messageType{} + +type fastReflection_MsgStructActivate_messageType struct{} + +func (x fastReflection_MsgStructActivate_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgStructActivate)(nil) +} +func (x fastReflection_MsgStructActivate_messageType) New() protoreflect.Message { + return new(fastReflection_MsgStructActivate) +} +func (x fastReflection_MsgStructActivate_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgStructActivate +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgStructActivate) Descriptor() protoreflect.MessageDescriptor { + return md_MsgStructActivate +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_MsgStructActivate) Type() protoreflect.MessageType { + return _fastReflection_MsgStructActivate_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgStructActivate) New() protoreflect.Message { + return new(fastReflection_MsgStructActivate) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgStructActivate) Interface() protoreflect.ProtoMessage { + return (*MsgStructActivate)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_MsgStructActivate) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Creator != "" { + value := protoreflect.ValueOfString(x.Creator) + if !f(fd_MsgStructActivate_creator, value) { + return + } + } + if x.StructId != "" { + value := protoreflect.ValueOfString(x.StructId) + if !f(fd_MsgStructActivate_structId, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_MsgStructActivate) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "structs.structs.MsgStructActivate.creator": + return x.Creator != "" + case "structs.structs.MsgStructActivate.structId": + return x.StructId != "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + } + panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructActivate) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "structs.structs.MsgStructActivate.creator": + x.Creator = "" + case "structs.structs.MsgStructActivate.structId": + x.StructId = "" + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + } + panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_MsgStructActivate) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "structs.structs.MsgStructActivate.creator": + value := x.Creator + return protoreflect.ValueOfString(value) + case "structs.structs.MsgStructActivate.structId": + value := x.StructId + return protoreflect.ValueOfString(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + } + panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructActivate) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "structs.structs.MsgStructActivate.creator": + x.Creator = value.Interface().(string) + case "structs.structs.MsgStructActivate.structId": + x.StructId = value.Interface().(string) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + } + panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructActivate) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgStructActivate.creator": + panic(fmt.Errorf("field creator of message structs.structs.MsgStructActivate is not mutable")) + case "structs.structs.MsgStructActivate.structId": + panic(fmt.Errorf("field structId of message structs.structs.MsgStructActivate is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + } + panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_MsgStructActivate) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "structs.structs.MsgStructActivate.creator": + return protoreflect.ValueOfString("") + case "structs.structs.MsgStructActivate.structId": + return protoreflect.ValueOfString("") + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: structs.structs.MsgStructActivate")) + } + panic(fmt.Errorf("message structs.structs.MsgStructActivate does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_MsgStructActivate) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in structs.structs.MsgStructActivate", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_MsgStructActivate) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_MsgStructActivate) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_MsgStructActivate) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_MsgStructActivate) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgStructActivate) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.Creator) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.StructId) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*MsgStructActivate) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.StructId) > 0 { + i -= len(x.StructId) + copy(dAtA[i:], x.StructId) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.StructId))) + i-- + dAtA[i] = 0x12 + } + if len(x.Creator) > 0 { + i -= len(x.Creator) + copy(dAtA[i:], x.Creator) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Creator))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*MsgStructActivate) if x == nil { return protoiface.UnmarshalOutput{ NoUnkeyedLiterals: input.NoUnkeyedLiterals, @@ -30395,7 +34677,7 @@ func (x *MsgStructDeactivate) ProtoReflect() protoreflect.Message { } func (x *MsgStructDeactivate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[60] + mi := &file_structs_structs_tx_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -30885,7 +35167,7 @@ func (x *MsgStructBuildInitiate) ProtoReflect() protoreflect.Message { } func (x *MsgStructBuildInitiate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[61] + mi := &file_structs_structs_tx_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -31511,7 +35793,7 @@ func (x *MsgStructBuildComplete) ProtoReflect() protoreflect.Message { } func (x *MsgStructBuildComplete) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[62] + mi := &file_structs_structs_tx_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -32119,7 +36401,7 @@ func (x *MsgStructBuildCancel) ProtoReflect() protoreflect.Message { } func (x *MsgStructBuildCancel) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[63] + mi := &file_structs_structs_tx_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -32613,7 +36895,7 @@ func (x *MsgStructBuildCompleteAndStash) ProtoReflect() protoreflect.Message { } func (x *MsgStructBuildCompleteAndStash) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[64] + mi := &file_structs_structs_tx_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -33377,7 +37659,7 @@ func (x *MsgStructDefenseSet) ProtoReflect() protoreflect.Message { } func (x *MsgStructDefenseSet) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[65] + mi := &file_structs_structs_tx_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -33923,7 +38205,7 @@ func (x *MsgStructDefenseClear) ProtoReflect() protoreflect.Message { } func (x *MsgStructDefenseClear) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[66] + mi := &file_structs_structs_tx_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -34413,7 +38695,7 @@ func (x *MsgStructMove) ProtoReflect() protoreflect.Message { } func (x *MsgStructMove) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[67] + mi := &file_structs_structs_tx_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -35085,7 +39367,7 @@ func (x *MsgStructAttack) ProtoReflect() protoreflect.Message { } func (x *MsgStructAttack) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[68] + mi := &file_structs_structs_tx_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -35703,7 +39985,7 @@ func (x *MsgStructAttackResponse) ProtoReflect() protoreflect.Message { } func (x *MsgStructAttackResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[69] + mi := &file_structs_structs_tx_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -36063,7 +40345,7 @@ func (x *MsgStructStealthActivate) ProtoReflect() protoreflect.Message { } func (x *MsgStructStealthActivate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[70] + mi := &file_structs_structs_tx_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -36547,7 +40829,7 @@ func (x *MsgStructStealthDeactivate) ProtoReflect() protoreflect.Message { } func (x *MsgStructStealthDeactivate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[71] + mi := &file_structs_structs_tx_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -37033,7 +41315,7 @@ func (x *MsgStructGeneratorInfuse) ProtoReflect() protoreflect.Message { } func (x *MsgStructGeneratorInfuse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[72] + mi := &file_structs_structs_tx_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -37575,7 +41857,7 @@ func (x *MsgStructGeneratorStatusResponse) ProtoReflect() protoreflect.Message { } func (x *MsgStructGeneratorStatusResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[73] + mi := &file_structs_structs_tx_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -37939,7 +42221,7 @@ func (x *MsgStructOreMinerComplete) ProtoReflect() protoreflect.Message { } func (x *MsgStructOreMinerComplete) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[74] + mi := &file_structs_structs_tx_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -38545,7 +42827,7 @@ func (x *MsgStructOreMinerStatusResponse) ProtoReflect() protoreflect.Message { } func (x *MsgStructOreMinerStatusResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[75] + mi := &file_structs_structs_tx_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -38986,7 +43268,7 @@ func (x *MsgStructOreRefineryComplete) ProtoReflect() protoreflect.Message { } func (x *MsgStructOreRefineryComplete) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[76] + mi := &file_structs_structs_tx_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -39592,7 +43874,7 @@ func (x *MsgStructOreRefineryStatusResponse) ProtoReflect() protoreflect.Message } func (x *MsgStructOreRefineryStatusResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[77] + mi := &file_structs_structs_tx_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -40035,7 +44317,7 @@ func (x *MsgStructStorageStash) ProtoReflect() protoreflect.Message { } func (x *MsgStructStorageStash) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[78] + mi := &file_structs_structs_tx_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -40681,7 +44963,7 @@ func (x *MsgStructStorageRecall) ProtoReflect() protoreflect.Message { } func (x *MsgStructStorageRecall) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[79] + mi := &file_structs_structs_tx_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -41373,7 +45655,7 @@ func (x *MsgSubstationCreate) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationCreate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[80] + mi := &file_structs_structs_tx_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -41917,7 +46199,7 @@ func (x *MsgSubstationCreateResponse) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationCreateResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[81] + mi := &file_structs_structs_tx_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -42341,7 +46623,7 @@ func (x *MsgSubstationDelete) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationDelete) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[82] + mi := &file_structs_structs_tx_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -42883,7 +47165,7 @@ func (x *MsgSubstationDeleteResponse) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationDeleteResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[83] + mi := &file_structs_structs_tx_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -43245,7 +47527,7 @@ func (x *MsgSubstationAllocationConnect) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationAllocationConnect) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[84] + mi := &file_structs_structs_tx_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -43787,7 +48069,7 @@ func (x *MsgSubstationAllocationConnectResponse) ProtoReflect() protoreflect.Mes } func (x *MsgSubstationAllocationConnectResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[85] + mi := &file_structs_structs_tx_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -44147,7 +48429,7 @@ func (x *MsgSubstationAllocationDisconnect) ProtoReflect() protoreflect.Message } func (x *MsgSubstationAllocationDisconnect) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[86] + mi := &file_structs_structs_tx_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -44627,7 +48909,7 @@ func (x *MsgSubstationAllocationDisconnectResponse) ProtoReflect() protoreflect. } func (x *MsgSubstationAllocationDisconnectResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[87] + mi := &file_structs_structs_tx_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -44989,7 +49271,7 @@ func (x *MsgSubstationPlayerConnect) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationPlayerConnect) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[88] + mi := &file_structs_structs_tx_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -45531,7 +49813,7 @@ func (x *MsgSubstationPlayerConnectResponse) ProtoReflect() protoreflect.Message } func (x *MsgSubstationPlayerConnectResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[89] + mi := &file_structs_structs_tx_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -45891,7 +50173,7 @@ func (x *MsgSubstationPlayerDisconnect) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationPlayerDisconnect) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[90] + mi := &file_structs_structs_tx_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -46371,7 +50653,7 @@ func (x *MsgSubstationPlayerDisconnectResponse) ProtoReflect() protoreflect.Mess } func (x *MsgSubstationPlayerDisconnectResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[91] + mi := &file_structs_structs_tx_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -46779,7 +51061,7 @@ func (x *MsgSubstationPlayerMigrate) ProtoReflect() protoreflect.Message { } func (x *MsgSubstationPlayerMigrate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[92] + mi := &file_structs_structs_tx_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -47335,7 +51617,7 @@ func (x *MsgSubstationPlayerMigrateResponse) ProtoReflect() protoreflect.Message } func (x *MsgSubstationPlayerMigrateResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[93] + mi := &file_structs_structs_tx_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -47699,7 +51981,7 @@ func (x *MsgAgreementOpen) ProtoReflect() protoreflect.Message { } func (x *MsgAgreementOpen) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[94] + mi := &file_structs_structs_tx_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -48275,7 +52557,7 @@ func (x *MsgAgreementClose) ProtoReflect() protoreflect.Message { } func (x *MsgAgreementClose) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[95] + mi := &file_structs_structs_tx_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -48761,7 +53043,7 @@ func (x *MsgAgreementCapacityIncrease) ProtoReflect() protoreflect.Message { } func (x *MsgAgreementCapacityIncrease) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[96] + mi := &file_structs_structs_tx_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -49293,7 +53575,7 @@ func (x *MsgAgreementCapacityDecrease) ProtoReflect() protoreflect.Message { } func (x *MsgAgreementCapacityDecrease) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[97] + mi := &file_structs_structs_tx_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -49825,7 +54107,7 @@ func (x *MsgAgreementDurationIncrease) ProtoReflect() protoreflect.Message { } func (x *MsgAgreementDurationIncrease) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[98] + mi := &file_structs_structs_tx_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -50351,7 +54633,7 @@ func (x *MsgAgreementResponse) ProtoReflect() protoreflect.Message { } func (x *MsgAgreementResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[99] + mi := &file_structs_structs_tx_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -50727,7 +55009,7 @@ func (x *MsgProviderCreate) ProtoReflect() protoreflect.Message { } func (x *MsgProviderCreate) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[100] + mi := &file_structs_structs_tx_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -51644,7 +55926,7 @@ func (x *MsgProviderWithdrawBalance) ProtoReflect() protoreflect.Message { } func (x *MsgProviderWithdrawBalance) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[101] + mi := &file_structs_structs_tx_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -52192,7 +56474,7 @@ func (x *MsgProviderUpdateCapacityMinimum) ProtoReflect() protoreflect.Message { } func (x *MsgProviderUpdateCapacityMinimum) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[102] + mi := &file_structs_structs_tx_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -52724,7 +57006,7 @@ func (x *MsgProviderUpdateCapacityMaximum) ProtoReflect() protoreflect.Message { } func (x *MsgProviderUpdateCapacityMaximum) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[103] + mi := &file_structs_structs_tx_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -53256,7 +57538,7 @@ func (x *MsgProviderUpdateDurationMinimum) ProtoReflect() protoreflect.Message { } func (x *MsgProviderUpdateDurationMinimum) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[104] + mi := &file_structs_structs_tx_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -53788,7 +58070,7 @@ func (x *MsgProviderUpdateDurationMaximum) ProtoReflect() protoreflect.Message { } func (x *MsgProviderUpdateDurationMaximum) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[105] + mi := &file_structs_structs_tx_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -54320,7 +58602,7 @@ func (x *MsgProviderUpdateAccessPolicy) ProtoReflect() protoreflect.Message { } func (x *MsgProviderUpdateAccessPolicy) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[106] + mi := &file_structs_structs_tx_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -54898,7 +59180,7 @@ func (x *MsgProviderGuildGrant) ProtoReflect() protoreflect.Message { } func (x *MsgProviderGuildGrant) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[107] + mi := &file_structs_structs_tx_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -55506,7 +59788,7 @@ func (x *MsgProviderGuildRevoke) ProtoReflect() protoreflect.Message { } func (x *MsgProviderGuildRevoke) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[108] + mi := &file_structs_structs_tx_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -56066,7 +60348,7 @@ func (x *MsgProviderDelete) ProtoReflect() protoreflect.Message { } func (x *MsgProviderDelete) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[109] + mi := &file_structs_structs_tx_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -56546,7 +60828,7 @@ func (x *MsgProviderResponse) ProtoReflect() protoreflect.Message { } func (x *MsgProviderResponse) slowProtoReflect() protoreflect.Message { - mi := &file_structs_structs_tx_proto_msgTypes[110] + mi := &file_structs_structs_tx_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -59572,6 +63854,408 @@ func (*MsgPlayerResumeResponse) Descriptor() ([]byte, []int) { return file_structs_structs_tx_proto_rawDescGZIP(), []int{57} } +// MsgReactorInfuse defines a SDK message for performing a delegation of coins +// from a delegator to a validator. +type MsgReactorInfuse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorAddress string `protobuf:"bytes,3,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` + Amount *v1beta1.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"` +} + +func (x *MsgReactorInfuse) Reset() { + *x = MsgReactorInfuse{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorInfuse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorInfuse) ProtoMessage() {} + +// Deprecated: Use MsgReactorInfuse.ProtoReflect.Descriptor instead. +func (*MsgReactorInfuse) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{58} +} + +func (x *MsgReactorInfuse) GetCreator() string { + if x != nil { + return x.Creator + } + return "" +} + +func (x *MsgReactorInfuse) GetDelegatorAddress() string { + if x != nil { + return x.DelegatorAddress + } + return "" +} + +func (x *MsgReactorInfuse) GetValidatorAddress() string { + if x != nil { + return x.ValidatorAddress + } + return "" +} + +func (x *MsgReactorInfuse) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +// MsgReactorInfuseResponse defines the Msg/Delegate response type. +type MsgReactorInfuseResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MsgReactorInfuseResponse) Reset() { + *x = MsgReactorInfuseResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorInfuseResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorInfuseResponse) ProtoMessage() {} + +// Deprecated: Use MsgReactorInfuseResponse.ProtoReflect.Descriptor instead. +func (*MsgReactorInfuseResponse) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{59} +} + +// MsgReactorBeginMigration defines a SDK message for performing a redelegation +// of coins from a delegator and source validator to a destination validator. +type MsgReactorBeginMigration struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorSrcAddress string `protobuf:"bytes,3,opt,name=validator_src_address,json=validatorSrcAddress,proto3" json:"validator_src_address,omitempty"` + ValidatorDstAddress string `protobuf:"bytes,4,opt,name=validator_dst_address,json=validatorDstAddress,proto3" json:"validator_dst_address,omitempty"` + Amount *v1beta1.Coin `protobuf:"bytes,5,opt,name=amount,proto3" json:"amount,omitempty"` +} + +func (x *MsgReactorBeginMigration) Reset() { + *x = MsgReactorBeginMigration{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[60] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorBeginMigration) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorBeginMigration) ProtoMessage() {} + +// Deprecated: Use MsgReactorBeginMigration.ProtoReflect.Descriptor instead. +func (*MsgReactorBeginMigration) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{60} +} + +func (x *MsgReactorBeginMigration) GetCreator() string { + if x != nil { + return x.Creator + } + return "" +} + +func (x *MsgReactorBeginMigration) GetDelegatorAddress() string { + if x != nil { + return x.DelegatorAddress + } + return "" +} + +func (x *MsgReactorBeginMigration) GetValidatorSrcAddress() string { + if x != nil { + return x.ValidatorSrcAddress + } + return "" +} + +func (x *MsgReactorBeginMigration) GetValidatorDstAddress() string { + if x != nil { + return x.ValidatorDstAddress + } + return "" +} + +func (x *MsgReactorBeginMigration) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +// MsgBeginMigrationResponse defines the Msg/BeginRedelegate response type. +type MsgReactorBeginMigrationResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CompletionTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=completion_time,json=completionTime,proto3" json:"completion_time,omitempty"` +} + +func (x *MsgReactorBeginMigrationResponse) Reset() { + *x = MsgReactorBeginMigrationResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[61] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorBeginMigrationResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorBeginMigrationResponse) ProtoMessage() {} + +// Deprecated: Use MsgReactorBeginMigrationResponse.ProtoReflect.Descriptor instead. +func (*MsgReactorBeginMigrationResponse) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{61} +} + +func (x *MsgReactorBeginMigrationResponse) GetCompletionTime() *timestamppb.Timestamp { + if x != nil { + return x.CompletionTime + } + return nil +} + +// MsgReactorDefuse defines a SDK message for performing an undelegation from a +// delegate and a validator. +type MsgReactorDefuse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorAddress string `protobuf:"bytes,3,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` + Amount *v1beta1.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"` +} + +func (x *MsgReactorDefuse) Reset() { + *x = MsgReactorDefuse{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[62] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorDefuse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorDefuse) ProtoMessage() {} + +// Deprecated: Use MsgReactorDefuse.ProtoReflect.Descriptor instead. +func (*MsgReactorDefuse) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{62} +} + +func (x *MsgReactorDefuse) GetCreator() string { + if x != nil { + return x.Creator + } + return "" +} + +func (x *MsgReactorDefuse) GetDelegatorAddress() string { + if x != nil { + return x.DelegatorAddress + } + return "" +} + +func (x *MsgReactorDefuse) GetValidatorAddress() string { + if x != nil { + return x.ValidatorAddress + } + return "" +} + +func (x *MsgReactorDefuse) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +// MsgReactorDefuseResponse defines the Msg/Undelegate response type. +type MsgReactorDefuseResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CompletionTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=completion_time,json=completionTime,proto3" json:"completion_time,omitempty"` + // amount returns the amount of undelegated coins + // + // Since: cosmos-sdk 0.50 + Amount *v1beta1.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"` +} + +func (x *MsgReactorDefuseResponse) Reset() { + *x = MsgReactorDefuseResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[63] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorDefuseResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorDefuseResponse) ProtoMessage() {} + +// Deprecated: Use MsgReactorDefuseResponse.ProtoReflect.Descriptor instead. +func (*MsgReactorDefuseResponse) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{63} +} + +func (x *MsgReactorDefuseResponse) GetCompletionTime() *timestamppb.Timestamp { + if x != nil { + return x.CompletionTime + } + return nil +} + +func (x *MsgReactorDefuseResponse) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +// MsgReactorCancelDefusion defines the SDK message for performing a cancel unbonding delegation for delegator +// +// Since: cosmos-sdk 0.46 +type MsgReactorCancelDefusion struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorAddress string `protobuf:"bytes,3,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` + // amount is always less than or equal to unbonding delegation entry balance + Amount *v1beta1.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"` + // creation_height is the height which the unbonding took place. + CreationHeight int64 `protobuf:"varint,5,opt,name=creation_height,json=creationHeight,proto3" json:"creation_height,omitempty"` +} + +func (x *MsgReactorCancelDefusion) Reset() { + *x = MsgReactorCancelDefusion{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[64] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorCancelDefusion) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorCancelDefusion) ProtoMessage() {} + +// Deprecated: Use MsgReactorCancelDefusion.ProtoReflect.Descriptor instead. +func (*MsgReactorCancelDefusion) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{64} +} + +func (x *MsgReactorCancelDefusion) GetCreator() string { + if x != nil { + return x.Creator + } + return "" +} + +func (x *MsgReactorCancelDefusion) GetDelegatorAddress() string { + if x != nil { + return x.DelegatorAddress + } + return "" +} + +func (x *MsgReactorCancelDefusion) GetValidatorAddress() string { + if x != nil { + return x.ValidatorAddress + } + return "" +} + +func (x *MsgReactorCancelDefusion) GetAmount() *v1beta1.Coin { + if x != nil { + return x.Amount + } + return nil +} + +func (x *MsgReactorCancelDefusion) GetCreationHeight() int64 { + if x != nil { + return x.CreationHeight + } + return 0 +} + +// MsgReactorCancelDefusionResponse +// +// Since: cosmos-sdk 0.46 +type MsgReactorCancelDefusionResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MsgReactorCancelDefusionResponse) Reset() { + *x = MsgReactorCancelDefusionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_structs_structs_tx_proto_msgTypes[65] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgReactorCancelDefusionResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgReactorCancelDefusionResponse) ProtoMessage() {} + +// Deprecated: Use MsgReactorCancelDefusionResponse.ProtoReflect.Descriptor instead. +func (*MsgReactorCancelDefusionResponse) Descriptor() ([]byte, []int) { + return file_structs_structs_tx_proto_rawDescGZIP(), []int{65} +} + type MsgStructStatusResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -59583,7 +64267,7 @@ type MsgStructStatusResponse struct { func (x *MsgStructStatusResponse) Reset() { *x = MsgStructStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[58] + mi := &file_structs_structs_tx_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59597,7 +64281,7 @@ func (*MsgStructStatusResponse) ProtoMessage() {} // Deprecated: Use MsgStructStatusResponse.ProtoReflect.Descriptor instead. func (*MsgStructStatusResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{58} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{66} } func (x *MsgStructStatusResponse) GetStruct() *Struct { @@ -59619,7 +64303,7 @@ type MsgStructActivate struct { func (x *MsgStructActivate) Reset() { *x = MsgStructActivate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[59] + mi := &file_structs_structs_tx_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59633,7 +64317,7 @@ func (*MsgStructActivate) ProtoMessage() {} // Deprecated: Use MsgStructActivate.ProtoReflect.Descriptor instead. func (*MsgStructActivate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{59} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{67} } func (x *MsgStructActivate) GetCreator() string { @@ -59662,7 +64346,7 @@ type MsgStructDeactivate struct { func (x *MsgStructDeactivate) Reset() { *x = MsgStructDeactivate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[60] + mi := &file_structs_structs_tx_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59676,7 +64360,7 @@ func (*MsgStructDeactivate) ProtoMessage() {} // Deprecated: Use MsgStructDeactivate.ProtoReflect.Descriptor instead. func (*MsgStructDeactivate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{60} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{68} } func (x *MsgStructDeactivate) GetCreator() string { @@ -59709,7 +64393,7 @@ type MsgStructBuildInitiate struct { func (x *MsgStructBuildInitiate) Reset() { *x = MsgStructBuildInitiate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[61] + mi := &file_structs_structs_tx_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59723,7 +64407,7 @@ func (*MsgStructBuildInitiate) ProtoMessage() {} // Deprecated: Use MsgStructBuildInitiate.ProtoReflect.Descriptor instead. func (*MsgStructBuildInitiate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{61} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{69} } func (x *MsgStructBuildInitiate) GetCreator() string { @@ -59775,7 +64459,7 @@ type MsgStructBuildComplete struct { func (x *MsgStructBuildComplete) Reset() { *x = MsgStructBuildComplete{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[62] + mi := &file_structs_structs_tx_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59789,7 +64473,7 @@ func (*MsgStructBuildComplete) ProtoMessage() {} // Deprecated: Use MsgStructBuildComplete.ProtoReflect.Descriptor instead. func (*MsgStructBuildComplete) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{62} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{70} } func (x *MsgStructBuildComplete) GetCreator() string { @@ -59832,7 +64516,7 @@ type MsgStructBuildCancel struct { func (x *MsgStructBuildCancel) Reset() { *x = MsgStructBuildCancel{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[63] + mi := &file_structs_structs_tx_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59846,7 +64530,7 @@ func (*MsgStructBuildCancel) ProtoMessage() {} // Deprecated: Use MsgStructBuildCancel.ProtoReflect.Descriptor instead. func (*MsgStructBuildCancel) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{63} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{71} } func (x *MsgStructBuildCancel) GetCreator() string { @@ -59880,7 +64564,7 @@ type MsgStructBuildCompleteAndStash struct { func (x *MsgStructBuildCompleteAndStash) Reset() { *x = MsgStructBuildCompleteAndStash{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[64] + mi := &file_structs_structs_tx_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59894,7 +64578,7 @@ func (*MsgStructBuildCompleteAndStash) ProtoMessage() {} // Deprecated: Use MsgStructBuildCompleteAndStash.ProtoReflect.Descriptor instead. func (*MsgStructBuildCompleteAndStash) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{64} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{72} } func (x *MsgStructBuildCompleteAndStash) GetCreator() string { @@ -59959,7 +64643,7 @@ type MsgStructDefenseSet struct { func (x *MsgStructDefenseSet) Reset() { *x = MsgStructDefenseSet{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[65] + mi := &file_structs_structs_tx_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -59973,7 +64657,7 @@ func (*MsgStructDefenseSet) ProtoMessage() {} // Deprecated: Use MsgStructDefenseSet.ProtoReflect.Descriptor instead. func (*MsgStructDefenseSet) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{65} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{73} } func (x *MsgStructDefenseSet) GetCreator() string { @@ -60009,7 +64693,7 @@ type MsgStructDefenseClear struct { func (x *MsgStructDefenseClear) Reset() { *x = MsgStructDefenseClear{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[66] + mi := &file_structs_structs_tx_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60023,7 +64707,7 @@ func (*MsgStructDefenseClear) ProtoMessage() {} // Deprecated: Use MsgStructDefenseClear.ProtoReflect.Descriptor instead. func (*MsgStructDefenseClear) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{66} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{74} } func (x *MsgStructDefenseClear) GetCreator() string { @@ -60055,7 +64739,7 @@ type MsgStructMove struct { func (x *MsgStructMove) Reset() { *x = MsgStructMove{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[67] + mi := &file_structs_structs_tx_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60069,7 +64753,7 @@ func (*MsgStructMove) ProtoMessage() {} // Deprecated: Use MsgStructMove.ProtoReflect.Descriptor instead. func (*MsgStructMove) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{67} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{75} } func (x *MsgStructMove) GetCreator() string { @@ -60121,7 +64805,7 @@ type MsgStructAttack struct { func (x *MsgStructAttack) Reset() { *x = MsgStructAttack{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[68] + mi := &file_structs_structs_tx_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60135,7 +64819,7 @@ func (*MsgStructAttack) ProtoMessage() {} // Deprecated: Use MsgStructAttack.ProtoReflect.Descriptor instead. func (*MsgStructAttack) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{68} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{76} } func (x *MsgStructAttack) GetCreator() string { @@ -60175,7 +64859,7 @@ type MsgStructAttackResponse struct { func (x *MsgStructAttackResponse) Reset() { *x = MsgStructAttackResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[69] + mi := &file_structs_structs_tx_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60189,7 +64873,7 @@ func (*MsgStructAttackResponse) ProtoMessage() {} // Deprecated: Use MsgStructAttackResponse.ProtoReflect.Descriptor instead. func (*MsgStructAttackResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{69} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{77} } type MsgStructStealthActivate struct { @@ -60204,7 +64888,7 @@ type MsgStructStealthActivate struct { func (x *MsgStructStealthActivate) Reset() { *x = MsgStructStealthActivate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[70] + mi := &file_structs_structs_tx_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60218,7 +64902,7 @@ func (*MsgStructStealthActivate) ProtoMessage() {} // Deprecated: Use MsgStructStealthActivate.ProtoReflect.Descriptor instead. func (*MsgStructStealthActivate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{70} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{78} } func (x *MsgStructStealthActivate) GetCreator() string { @@ -60247,7 +64931,7 @@ type MsgStructStealthDeactivate struct { func (x *MsgStructStealthDeactivate) Reset() { *x = MsgStructStealthDeactivate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[71] + mi := &file_structs_structs_tx_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60261,7 +64945,7 @@ func (*MsgStructStealthDeactivate) ProtoMessage() {} // Deprecated: Use MsgStructStealthDeactivate.ProtoReflect.Descriptor instead. func (*MsgStructStealthDeactivate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{71} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{79} } func (x *MsgStructStealthDeactivate) GetCreator() string { @@ -60291,7 +64975,7 @@ type MsgStructGeneratorInfuse struct { func (x *MsgStructGeneratorInfuse) Reset() { *x = MsgStructGeneratorInfuse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[72] + mi := &file_structs_structs_tx_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60305,7 +64989,7 @@ func (*MsgStructGeneratorInfuse) ProtoMessage() {} // Deprecated: Use MsgStructGeneratorInfuse.ProtoReflect.Descriptor instead. func (*MsgStructGeneratorInfuse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{72} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{80} } func (x *MsgStructGeneratorInfuse) GetCreator() string { @@ -60338,7 +65022,7 @@ type MsgStructGeneratorStatusResponse struct { func (x *MsgStructGeneratorStatusResponse) Reset() { *x = MsgStructGeneratorStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[73] + mi := &file_structs_structs_tx_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60352,7 +65036,7 @@ func (*MsgStructGeneratorStatusResponse) ProtoMessage() {} // Deprecated: Use MsgStructGeneratorStatusResponse.ProtoReflect.Descriptor instead. func (*MsgStructGeneratorStatusResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{73} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{81} } type MsgStructOreMinerComplete struct { @@ -60369,7 +65053,7 @@ type MsgStructOreMinerComplete struct { func (x *MsgStructOreMinerComplete) Reset() { *x = MsgStructOreMinerComplete{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[74] + mi := &file_structs_structs_tx_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60383,7 +65067,7 @@ func (*MsgStructOreMinerComplete) ProtoMessage() {} // Deprecated: Use MsgStructOreMinerComplete.ProtoReflect.Descriptor instead. func (*MsgStructOreMinerComplete) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{74} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{82} } func (x *MsgStructOreMinerComplete) GetCreator() string { @@ -60425,7 +65109,7 @@ type MsgStructOreMinerStatusResponse struct { func (x *MsgStructOreMinerStatusResponse) Reset() { *x = MsgStructOreMinerStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[75] + mi := &file_structs_structs_tx_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60439,7 +65123,7 @@ func (*MsgStructOreMinerStatusResponse) ProtoMessage() {} // Deprecated: Use MsgStructOreMinerStatusResponse.ProtoReflect.Descriptor instead. func (*MsgStructOreMinerStatusResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{75} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{83} } func (x *MsgStructOreMinerStatusResponse) GetStruct() *Struct { @@ -60463,7 +65147,7 @@ type MsgStructOreRefineryComplete struct { func (x *MsgStructOreRefineryComplete) Reset() { *x = MsgStructOreRefineryComplete{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[76] + mi := &file_structs_structs_tx_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60477,7 +65161,7 @@ func (*MsgStructOreRefineryComplete) ProtoMessage() {} // Deprecated: Use MsgStructOreRefineryComplete.ProtoReflect.Descriptor instead. func (*MsgStructOreRefineryComplete) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{76} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{84} } func (x *MsgStructOreRefineryComplete) GetCreator() string { @@ -60519,7 +65203,7 @@ type MsgStructOreRefineryStatusResponse struct { func (x *MsgStructOreRefineryStatusResponse) Reset() { *x = MsgStructOreRefineryStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[77] + mi := &file_structs_structs_tx_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60533,7 +65217,7 @@ func (*MsgStructOreRefineryStatusResponse) ProtoMessage() {} // Deprecated: Use MsgStructOreRefineryStatusResponse.ProtoReflect.Descriptor instead. func (*MsgStructOreRefineryStatusResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{77} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{85} } func (x *MsgStructOreRefineryStatusResponse) GetStruct() *Struct { @@ -60558,7 +65242,7 @@ type MsgStructStorageStash struct { func (x *MsgStructStorageStash) Reset() { *x = MsgStructStorageStash{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[78] + mi := &file_structs_structs_tx_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60572,7 +65256,7 @@ func (*MsgStructStorageStash) ProtoMessage() {} // Deprecated: Use MsgStructStorageStash.ProtoReflect.Descriptor instead. func (*MsgStructStorageStash) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{78} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{86} } func (x *MsgStructStorageStash) GetCreator() string { @@ -60626,7 +65310,7 @@ type MsgStructStorageRecall struct { func (x *MsgStructStorageRecall) Reset() { *x = MsgStructStorageRecall{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[79] + mi := &file_structs_structs_tx_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60640,7 +65324,7 @@ func (*MsgStructStorageRecall) ProtoMessage() {} // Deprecated: Use MsgStructStorageRecall.ProtoReflect.Descriptor instead. func (*MsgStructStorageRecall) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{79} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{87} } func (x *MsgStructStorageRecall) GetCreator() string { @@ -60698,7 +65382,7 @@ type MsgSubstationCreate struct { func (x *MsgSubstationCreate) Reset() { *x = MsgSubstationCreate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[80] + mi := &file_structs_structs_tx_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60712,7 +65396,7 @@ func (*MsgSubstationCreate) ProtoMessage() {} // Deprecated: Use MsgSubstationCreate.ProtoReflect.Descriptor instead. func (*MsgSubstationCreate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{80} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{88} } func (x *MsgSubstationCreate) GetCreator() string { @@ -60747,7 +65431,7 @@ type MsgSubstationCreateResponse struct { func (x *MsgSubstationCreateResponse) Reset() { *x = MsgSubstationCreateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[81] + mi := &file_structs_structs_tx_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60761,7 +65445,7 @@ func (*MsgSubstationCreateResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationCreateResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationCreateResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{81} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{89} } func (x *MsgSubstationCreateResponse) GetSubstationId() string { @@ -60784,7 +65468,7 @@ type MsgSubstationDelete struct { func (x *MsgSubstationDelete) Reset() { *x = MsgSubstationDelete{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[82] + mi := &file_structs_structs_tx_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60798,7 +65482,7 @@ func (*MsgSubstationDelete) ProtoMessage() {} // Deprecated: Use MsgSubstationDelete.ProtoReflect.Descriptor instead. func (*MsgSubstationDelete) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{82} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{90} } func (x *MsgSubstationDelete) GetCreator() string { @@ -60831,7 +65515,7 @@ type MsgSubstationDeleteResponse struct { func (x *MsgSubstationDeleteResponse) Reset() { *x = MsgSubstationDeleteResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[83] + mi := &file_structs_structs_tx_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60845,7 +65529,7 @@ func (*MsgSubstationDeleteResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationDeleteResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationDeleteResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{83} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{91} } type MsgSubstationAllocationConnect struct { @@ -60861,7 +65545,7 @@ type MsgSubstationAllocationConnect struct { func (x *MsgSubstationAllocationConnect) Reset() { *x = MsgSubstationAllocationConnect{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[84] + mi := &file_structs_structs_tx_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60875,7 +65559,7 @@ func (*MsgSubstationAllocationConnect) ProtoMessage() {} // Deprecated: Use MsgSubstationAllocationConnect.ProtoReflect.Descriptor instead. func (*MsgSubstationAllocationConnect) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{84} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{92} } func (x *MsgSubstationAllocationConnect) GetCreator() string { @@ -60908,7 +65592,7 @@ type MsgSubstationAllocationConnectResponse struct { func (x *MsgSubstationAllocationConnectResponse) Reset() { *x = MsgSubstationAllocationConnectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[85] + mi := &file_structs_structs_tx_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60922,7 +65606,7 @@ func (*MsgSubstationAllocationConnectResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationAllocationConnectResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationAllocationConnectResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{85} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{93} } type MsgSubstationAllocationDisconnect struct { @@ -60937,7 +65621,7 @@ type MsgSubstationAllocationDisconnect struct { func (x *MsgSubstationAllocationDisconnect) Reset() { *x = MsgSubstationAllocationDisconnect{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[86] + mi := &file_structs_structs_tx_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60951,7 +65635,7 @@ func (*MsgSubstationAllocationDisconnect) ProtoMessage() {} // Deprecated: Use MsgSubstationAllocationDisconnect.ProtoReflect.Descriptor instead. func (*MsgSubstationAllocationDisconnect) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{86} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{94} } func (x *MsgSubstationAllocationDisconnect) GetCreator() string { @@ -60977,7 +65661,7 @@ type MsgSubstationAllocationDisconnectResponse struct { func (x *MsgSubstationAllocationDisconnectResponse) Reset() { *x = MsgSubstationAllocationDisconnectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[87] + mi := &file_structs_structs_tx_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -60991,7 +65675,7 @@ func (*MsgSubstationAllocationDisconnectResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationAllocationDisconnectResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationAllocationDisconnectResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{87} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{95} } type MsgSubstationPlayerConnect struct { @@ -61007,7 +65691,7 @@ type MsgSubstationPlayerConnect struct { func (x *MsgSubstationPlayerConnect) Reset() { *x = MsgSubstationPlayerConnect{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[88] + mi := &file_structs_structs_tx_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61021,7 +65705,7 @@ func (*MsgSubstationPlayerConnect) ProtoMessage() {} // Deprecated: Use MsgSubstationPlayerConnect.ProtoReflect.Descriptor instead. func (*MsgSubstationPlayerConnect) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{88} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{96} } func (x *MsgSubstationPlayerConnect) GetCreator() string { @@ -61054,7 +65738,7 @@ type MsgSubstationPlayerConnectResponse struct { func (x *MsgSubstationPlayerConnectResponse) Reset() { *x = MsgSubstationPlayerConnectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[89] + mi := &file_structs_structs_tx_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61068,7 +65752,7 @@ func (*MsgSubstationPlayerConnectResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationPlayerConnectResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationPlayerConnectResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{89} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{97} } type MsgSubstationPlayerDisconnect struct { @@ -61083,7 +65767,7 @@ type MsgSubstationPlayerDisconnect struct { func (x *MsgSubstationPlayerDisconnect) Reset() { *x = MsgSubstationPlayerDisconnect{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[90] + mi := &file_structs_structs_tx_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61097,7 +65781,7 @@ func (*MsgSubstationPlayerDisconnect) ProtoMessage() {} // Deprecated: Use MsgSubstationPlayerDisconnect.ProtoReflect.Descriptor instead. func (*MsgSubstationPlayerDisconnect) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{90} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{98} } func (x *MsgSubstationPlayerDisconnect) GetCreator() string { @@ -61123,7 +65807,7 @@ type MsgSubstationPlayerDisconnectResponse struct { func (x *MsgSubstationPlayerDisconnectResponse) Reset() { *x = MsgSubstationPlayerDisconnectResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[91] + mi := &file_structs_structs_tx_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61137,7 +65821,7 @@ func (*MsgSubstationPlayerDisconnectResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationPlayerDisconnectResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationPlayerDisconnectResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{91} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{99} } type MsgSubstationPlayerMigrate struct { @@ -61153,7 +65837,7 @@ type MsgSubstationPlayerMigrate struct { func (x *MsgSubstationPlayerMigrate) Reset() { *x = MsgSubstationPlayerMigrate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[92] + mi := &file_structs_structs_tx_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61167,7 +65851,7 @@ func (*MsgSubstationPlayerMigrate) ProtoMessage() {} // Deprecated: Use MsgSubstationPlayerMigrate.ProtoReflect.Descriptor instead. func (*MsgSubstationPlayerMigrate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{92} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{100} } func (x *MsgSubstationPlayerMigrate) GetCreator() string { @@ -61200,7 +65884,7 @@ type MsgSubstationPlayerMigrateResponse struct { func (x *MsgSubstationPlayerMigrateResponse) Reset() { *x = MsgSubstationPlayerMigrateResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[93] + mi := &file_structs_structs_tx_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61214,7 +65898,7 @@ func (*MsgSubstationPlayerMigrateResponse) ProtoMessage() {} // Deprecated: Use MsgSubstationPlayerMigrateResponse.ProtoReflect.Descriptor instead. func (*MsgSubstationPlayerMigrateResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{93} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{101} } type MsgAgreementOpen struct { @@ -61231,7 +65915,7 @@ type MsgAgreementOpen struct { func (x *MsgAgreementOpen) Reset() { *x = MsgAgreementOpen{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[94] + mi := &file_structs_structs_tx_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61245,7 +65929,7 @@ func (*MsgAgreementOpen) ProtoMessage() {} // Deprecated: Use MsgAgreementOpen.ProtoReflect.Descriptor instead. func (*MsgAgreementOpen) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{94} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{102} } func (x *MsgAgreementOpen) GetCreator() string { @@ -61288,7 +65972,7 @@ type MsgAgreementClose struct { func (x *MsgAgreementClose) Reset() { *x = MsgAgreementClose{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[95] + mi := &file_structs_structs_tx_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61302,7 +65986,7 @@ func (*MsgAgreementClose) ProtoMessage() {} // Deprecated: Use MsgAgreementClose.ProtoReflect.Descriptor instead. func (*MsgAgreementClose) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{95} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{103} } func (x *MsgAgreementClose) GetCreator() string { @@ -61332,7 +66016,7 @@ type MsgAgreementCapacityIncrease struct { func (x *MsgAgreementCapacityIncrease) Reset() { *x = MsgAgreementCapacityIncrease{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[96] + mi := &file_structs_structs_tx_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61346,7 +66030,7 @@ func (*MsgAgreementCapacityIncrease) ProtoMessage() {} // Deprecated: Use MsgAgreementCapacityIncrease.ProtoReflect.Descriptor instead. func (*MsgAgreementCapacityIncrease) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{96} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{104} } func (x *MsgAgreementCapacityIncrease) GetCreator() string { @@ -61383,7 +66067,7 @@ type MsgAgreementCapacityDecrease struct { func (x *MsgAgreementCapacityDecrease) Reset() { *x = MsgAgreementCapacityDecrease{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[97] + mi := &file_structs_structs_tx_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61397,7 +66081,7 @@ func (*MsgAgreementCapacityDecrease) ProtoMessage() {} // Deprecated: Use MsgAgreementCapacityDecrease.ProtoReflect.Descriptor instead. func (*MsgAgreementCapacityDecrease) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{97} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{105} } func (x *MsgAgreementCapacityDecrease) GetCreator() string { @@ -61434,7 +66118,7 @@ type MsgAgreementDurationIncrease struct { func (x *MsgAgreementDurationIncrease) Reset() { *x = MsgAgreementDurationIncrease{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[98] + mi := &file_structs_structs_tx_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61448,7 +66132,7 @@ func (*MsgAgreementDurationIncrease) ProtoMessage() {} // Deprecated: Use MsgAgreementDurationIncrease.ProtoReflect.Descriptor instead. func (*MsgAgreementDurationIncrease) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{98} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{106} } func (x *MsgAgreementDurationIncrease) GetCreator() string { @@ -61481,7 +66165,7 @@ type MsgAgreementResponse struct { func (x *MsgAgreementResponse) Reset() { *x = MsgAgreementResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[99] + mi := &file_structs_structs_tx_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61495,7 +66179,7 @@ func (*MsgAgreementResponse) ProtoMessage() {} // Deprecated: Use MsgAgreementResponse.ProtoReflect.Descriptor instead. func (*MsgAgreementResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{99} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{107} } type MsgProviderCreate struct { @@ -61518,7 +66202,7 @@ type MsgProviderCreate struct { func (x *MsgProviderCreate) Reset() { *x = MsgProviderCreate{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[100] + mi := &file_structs_structs_tx_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61532,7 +66216,7 @@ func (*MsgProviderCreate) ProtoMessage() {} // Deprecated: Use MsgProviderCreate.ProtoReflect.Descriptor instead. func (*MsgProviderCreate) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{100} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{108} } func (x *MsgProviderCreate) GetCreator() string { @@ -61618,7 +66302,7 @@ type MsgProviderWithdrawBalance struct { func (x *MsgProviderWithdrawBalance) Reset() { *x = MsgProviderWithdrawBalance{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[101] + mi := &file_structs_structs_tx_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61632,7 +66316,7 @@ func (*MsgProviderWithdrawBalance) ProtoMessage() {} // Deprecated: Use MsgProviderWithdrawBalance.ProtoReflect.Descriptor instead. func (*MsgProviderWithdrawBalance) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{101} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{109} } func (x *MsgProviderWithdrawBalance) GetCreator() string { @@ -61669,7 +66353,7 @@ type MsgProviderUpdateCapacityMinimum struct { func (x *MsgProviderUpdateCapacityMinimum) Reset() { *x = MsgProviderUpdateCapacityMinimum{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[102] + mi := &file_structs_structs_tx_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61683,7 +66367,7 @@ func (*MsgProviderUpdateCapacityMinimum) ProtoMessage() {} // Deprecated: Use MsgProviderUpdateCapacityMinimum.ProtoReflect.Descriptor instead. func (*MsgProviderUpdateCapacityMinimum) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{102} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{110} } func (x *MsgProviderUpdateCapacityMinimum) GetCreator() string { @@ -61720,7 +66404,7 @@ type MsgProviderUpdateCapacityMaximum struct { func (x *MsgProviderUpdateCapacityMaximum) Reset() { *x = MsgProviderUpdateCapacityMaximum{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[103] + mi := &file_structs_structs_tx_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61734,7 +66418,7 @@ func (*MsgProviderUpdateCapacityMaximum) ProtoMessage() {} // Deprecated: Use MsgProviderUpdateCapacityMaximum.ProtoReflect.Descriptor instead. func (*MsgProviderUpdateCapacityMaximum) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{103} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{111} } func (x *MsgProviderUpdateCapacityMaximum) GetCreator() string { @@ -61771,7 +66455,7 @@ type MsgProviderUpdateDurationMinimum struct { func (x *MsgProviderUpdateDurationMinimum) Reset() { *x = MsgProviderUpdateDurationMinimum{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[104] + mi := &file_structs_structs_tx_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61785,7 +66469,7 @@ func (*MsgProviderUpdateDurationMinimum) ProtoMessage() {} // Deprecated: Use MsgProviderUpdateDurationMinimum.ProtoReflect.Descriptor instead. func (*MsgProviderUpdateDurationMinimum) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{104} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{112} } func (x *MsgProviderUpdateDurationMinimum) GetCreator() string { @@ -61822,7 +66506,7 @@ type MsgProviderUpdateDurationMaximum struct { func (x *MsgProviderUpdateDurationMaximum) Reset() { *x = MsgProviderUpdateDurationMaximum{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[105] + mi := &file_structs_structs_tx_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61836,7 +66520,7 @@ func (*MsgProviderUpdateDurationMaximum) ProtoMessage() {} // Deprecated: Use MsgProviderUpdateDurationMaximum.ProtoReflect.Descriptor instead. func (*MsgProviderUpdateDurationMaximum) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{105} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{113} } func (x *MsgProviderUpdateDurationMaximum) GetCreator() string { @@ -61873,7 +66557,7 @@ type MsgProviderUpdateAccessPolicy struct { func (x *MsgProviderUpdateAccessPolicy) Reset() { *x = MsgProviderUpdateAccessPolicy{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[106] + mi := &file_structs_structs_tx_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61887,7 +66571,7 @@ func (*MsgProviderUpdateAccessPolicy) ProtoMessage() {} // Deprecated: Use MsgProviderUpdateAccessPolicy.ProtoReflect.Descriptor instead. func (*MsgProviderUpdateAccessPolicy) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{106} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{114} } func (x *MsgProviderUpdateAccessPolicy) GetCreator() string { @@ -61924,7 +66608,7 @@ type MsgProviderGuildGrant struct { func (x *MsgProviderGuildGrant) Reset() { *x = MsgProviderGuildGrant{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[107] + mi := &file_structs_structs_tx_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61938,7 +66622,7 @@ func (*MsgProviderGuildGrant) ProtoMessage() {} // Deprecated: Use MsgProviderGuildGrant.ProtoReflect.Descriptor instead. func (*MsgProviderGuildGrant) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{107} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{115} } func (x *MsgProviderGuildGrant) GetCreator() string { @@ -61975,7 +66659,7 @@ type MsgProviderGuildRevoke struct { func (x *MsgProviderGuildRevoke) Reset() { *x = MsgProviderGuildRevoke{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[108] + mi := &file_structs_structs_tx_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -61989,7 +66673,7 @@ func (*MsgProviderGuildRevoke) ProtoMessage() {} // Deprecated: Use MsgProviderGuildRevoke.ProtoReflect.Descriptor instead. func (*MsgProviderGuildRevoke) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{108} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{116} } func (x *MsgProviderGuildRevoke) GetCreator() string { @@ -62025,7 +66709,7 @@ type MsgProviderDelete struct { func (x *MsgProviderDelete) Reset() { *x = MsgProviderDelete{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[109] + mi := &file_structs_structs_tx_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -62039,7 +66723,7 @@ func (*MsgProviderDelete) ProtoMessage() {} // Deprecated: Use MsgProviderDelete.ProtoReflect.Descriptor instead. func (*MsgProviderDelete) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{109} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{117} } func (x *MsgProviderDelete) GetCreator() string { @@ -62065,7 +66749,7 @@ type MsgProviderResponse struct { func (x *MsgProviderResponse) Reset() { *x = MsgProviderResponse{} if protoimpl.UnsafeEnabled { - mi := &file_structs_structs_tx_proto_msgTypes[110] + mi := &file_structs_structs_tx_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -62079,7 +66763,7 @@ func (*MsgProviderResponse) ProtoMessage() {} // Deprecated: Use MsgProviderResponse.ProtoReflect.Descriptor instead. func (*MsgProviderResponse) Descriptor() ([]byte, []int) { - return file_structs_structs_tx_proto_rawDescGZIP(), []int{110} + return file_structs_structs_tx_proto_rawDescGZIP(), []int{118} } var File_structs_structs_tx_proto protoreflect.FileDescriptor @@ -62097,214 +66781,203 @@ var file_structs_structs_tx_proto_rawDesc = []byte{ 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x69, 0x6e, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x1a, 0x1b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, - 0x1b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbb, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, - 0x72, 0x69, 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, 0xc8, - 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x3a, 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x8a, 0xe7, 0xb0, 0x2a, 0x21, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x78, 0x2f, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0xde, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6f, - 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, - 0x72, 0x6f, 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x72, - 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x22, 0x1c, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, - 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x54, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, - 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1a, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x47, 0x0a, 0x0e, - 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x1b, 0x4d, 0x73, 0x67, - 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x61, 0x0a, 0x13, - 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, - 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, - 0x41, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, - 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x1b, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbb, 0x01, 0x0a, 0x0f, 0x4d, 0x73, + 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a, + 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x09, + 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x3a, 0x34, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, + 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x21, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x78, 0x2f, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xde, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, + 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x70, + 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x22, 0x1c, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x54, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, + 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1a, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x47, 0x0a, + 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x1b, 0x4d, 0x73, + 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x61, 0x0a, + 0x13, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, + 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x22, 0x77, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, + 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x41, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x22, 0x77, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, + 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x0c, + 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x1b, + 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, + 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, + 0x83, 0x01, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x3a, 0x0c, 0x82, - 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x1b, 0x4d, - 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x83, - 0x01, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x43, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x4d, 0x73, - 0x67, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x12, 0x34, - 0x0a, 0x15, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, - 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x22, 0x44, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, 0x6f, - 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x66, 0x6c, - 0x65, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x46, 0x6c, 0x65, 0x65, - 0x74, 0x52, 0x05, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x22, 0x7e, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x43, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x4d, + 0x73, 0x67, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x12, + 0x34, 0x0a, 0x15, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, + 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x22, 0x44, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, + 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x66, + 0x6c, 0x65, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x46, 0x6c, 0x65, + 0x65, 0x74, 0x52, 0x05, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x22, 0x7e, 0x0a, 0x10, 0x4d, 0x73, 0x67, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, + 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1a, 0x0a, 0x18, 0x4d, 0x73, 0x67, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x41, 0x6c, 0x70, 0x68, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x61, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, - 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x61, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x72, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x35, 0xc8, 0xde, 0x1f, 0x00, 0xaa, 0xdf, 0x1f, 0x28, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1a, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x12, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x72, 0x0a, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, - 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x35, 0xc8, 0xde, 0x1f, 0x00, 0xaa, 0xdf, 0x1f, 0x28, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0b, 0x61, 0x6d, - 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1c, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x83, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, 0x74, 0x65, - 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x61, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x0c, 0x82, - 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x27, 0x0a, 0x25, 0x4d, - 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x73, 0x63, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x0e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1c, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x83, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, 0x74, + 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, + 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0b, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x0c, + 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x27, 0x0a, 0x25, + 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x73, 0x63, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x0e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, + 0x0a, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, + 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x32, 0x0a, 0x16, 0x4d, 0x73, + 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x6f, + 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2c, 0x0a, - 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x53, - 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x32, 0x0a, 0x16, 0x4d, 0x73, 0x67, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x6f, 0x0a, - 0x15, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, - 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x91, - 0x01, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, - 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x53, - 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x22, 0x76, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, - 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3a, 0x0c, 0x82, 0xe7, - 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x97, 0x01, 0x0a, 0x21, 0x4d, - 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, - 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, - 0x6c, 0x64, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x13, 0x6a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, - 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x13, 0x6a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, - 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0xcf, 0x01, 0x0a, 0x30, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, - 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, - 0x42, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x59, 0x0a, - 0x14, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, - 0x65, 0x6c, 0x52, 0x14, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, - 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xce, 0x01, 0x0a, 0x2f, 0x4d, 0x73, 0x67, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, - 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, - 0x73, 0x73, 0x42, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, + 0x72, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, + 0x91, 0x01, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, + 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, + 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x11, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x22, 0x76, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x3a, 0x0c, 0x82, + 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x97, 0x01, 0x0a, 0x21, + 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, + 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, + 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, + 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x13, 0x6a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, + 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x13, 0x6a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, + 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xcf, 0x01, 0x0a, 0x30, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, + 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, + 0x73, 0x42, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x59, @@ -62314,46 +66987,102 @@ var file_structs_structs_tx_proto_rawDesc = []byte{ 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x14, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x18, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x9c, 0x01, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, - 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0xa3, 0x01, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x70, 0x70, - 0x72, 0x6f, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, - 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7c, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, - 0x74, 0x65, 0x44, 0x65, 0x6e, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7e, 0x0a, 0x1e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0xba, 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x12, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xce, 0x01, 0x0a, 0x2f, 0x4d, 0x73, 0x67, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, + 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, + 0x61, 0x73, 0x73, 0x42, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, + 0x59, 0x0a, 0x14, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, 0x61, + 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x52, 0x14, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4a, 0x6f, 0x69, 0x6e, 0x42, + 0x79, 0x70, 0x61, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x18, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x9c, 0x01, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, + 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x22, 0xa3, 0x01, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7c, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7e, 0x0a, 0x1e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, + 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xba, 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x66, 0x75, 0x73, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0xcd, 0x01, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, + 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, + 0x6f, 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, + 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0x76, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4b, 0x69, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9d, 0x01, 0x0a, 0x19, 0x4d, + 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, + 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xa4, 0x01, 0x0a, 0x20, 0x4d, + 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, + 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, @@ -62361,1146 +67090,1241 @@ var file_structs_structs_tx_proto_rawDesc = []byte{ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0xcd, 0x01, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x78, - 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, - 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, - 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x0e, 0x70, - 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0x76, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4b, 0x69, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9d, 0x01, 0x0a, 0x19, 0x4d, 0x73, - 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, - 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xa4, 0x01, 0x0a, 0x20, 0x4d, 0x73, - 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, - 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, - 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x7d, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x65, 0x6e, - 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, - 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, - 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, - 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, - 0x7f, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, + 0x72, 0x22, 0x7d, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, + 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x65, + 0x6e, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x6b, 0x0a, 0x1a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x68, 0x69, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x1a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, - 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x01, 0x0a, - 0x1a, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, - 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, - 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, - 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x81, 0x01, - 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, - 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0x9f, 0x01, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, + 0x22, 0x7f, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x76, + 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, + 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9c, 0x01, 0x0a, 0x18, 0x4d, 0x73, 0x67, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x6b, 0x0a, 0x1a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x68, 0x69, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x1a, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x01, + 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, + 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x81, + 0x01, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0x9f, 0x01, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x6f, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, - 0x1a, 0x0a, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7f, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, + 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, + 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, + 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9c, 0x01, 0x0a, 0x18, 0x4d, 0x73, + 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, + 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x17, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x56, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, - 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7f, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x50, + 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x51, 0x0a, 0x18, 0x4d, 0x73, 0x67, - 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x42, 0x04, - 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x22, 0x85, 0x01, 0x0a, - 0x15, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, + 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, + 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x17, 0x0a, 0x15, 0x4d, 0x73, 0x67, + 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x56, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, + 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x12, 0x18, 0x0a, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, - 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, - 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0xa8, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, - 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x42, 0x04, 0xc8, - 0xde, 0x1f, 0x00, 0x52, 0x05, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x70, 0x6c, - 0x61, 0x6e, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, - 0x6e, 0x65, 0x74, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x6e, 0x65, - 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x6f, 0x6c, 0x65, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x6f, 0x6c, 0x65, 0x6e, 0x22, - 0x8b, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, - 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, - 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, - 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x27, 0x0a, - 0x25, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, - 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x19, 0x0a, - 0x17, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x50, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x53, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x04, 0xc8, 0xde, - 0x1f, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x22, 0x57, 0x0a, 0x11, 0x4d, 0x73, - 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x22, 0x59, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, - 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xd4, - 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, - 0x64, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x49, 0x64, 0x12, 0x3e, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, - 0x41, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, - 0x62, 0x69, 0x74, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x41, 0x6d, - 0x62, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x88, 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x14, 0x0a, 0x05, - 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, - 0x63, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x5a, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, - 0x6c, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, - 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xa2, 0x02, 0x0a, - 0x1e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x73, 0x68, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x14, 0x0a, 0x05, 0x6e, - 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, - 0x65, 0x12, 0x32, 0x0a, 0x14, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x44, 0x65, 0x73, 0x74, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x14, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x41, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, - 0x62, 0x69, 0x74, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x62, 0x69, - 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x6c, 0x6f, 0x74, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, - 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0x97, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, - 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x64, - 0x65, 0x66, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, - 0x2c, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x72, 0x6f, 0x74, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, - 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x6b, 0x0a, 0x15, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x43, - 0x6c, 0x65, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2a, - 0x0a, 0x10, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xd6, 0x01, 0x0a, 0x0d, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x51, 0x0a, 0x18, 0x4d, 0x73, + 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x42, + 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x22, 0x85, 0x01, + 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, + 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, + 0x66, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xa8, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, + 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x66, 0x6c, 0x65, 0x65, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x42, 0x04, + 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x05, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x12, 0x35, 0x0a, 0x06, 0x70, + 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x50, 0x6c, + 0x61, 0x6e, 0x65, 0x74, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x70, 0x6c, 0x61, 0x6e, + 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x6f, 0x6c, 0x65, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x6f, 0x6c, 0x65, 0x6e, + 0x22, 0x8b, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x72, 0x69, 0x6d, + 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x27, + 0x0a, 0x25, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x50, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, - 0x12, 0x3f, 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x52, 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, - 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0xb3, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, - 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, - 0x2c, 0x0a, 0x11, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, - 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x53, - 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x77, 0x65, 0x61, - 0x70, 0x6f, 0x6e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x5e, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, - 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x18, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, + 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x19, + 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb7, 0x02, 0x0a, 0x10, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x22, 0x60, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, - 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x45, 0x0a, 0x11, 0x64, 0x65, 0x6c, 0x65, + 0x67, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x64, + 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x4e, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x21, 0xd2, 0xb4, 0x2d, 0x1d, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x76, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x3c, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, + 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, + 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x34, 0x88, + 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, + 0x64, 0x6b, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, + 0x75, 0x73, 0x65, 0x22, 0x1a, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, + 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0xa5, 0x03, 0x0a, 0x18, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x65, + 0x67, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x45, 0x0a, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, + 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x64, 0x65, 0x6c, + 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x55, 0x0a, + 0x15, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x73, 0x72, 0x63, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x21, 0xd2, 0xb4, + 0x2d, 0x1d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, + 0x13, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x72, 0x63, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x55, 0x0a, 0x15, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x64, 0x73, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x21, 0xd2, 0xb4, 0x2d, 0x1d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x13, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, + 0x72, 0x44, 0x73, 0x74, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x61, + 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, + 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, + 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x3c, 0x88, 0xa0, 0x1f, 0x00, 0xe8, + 0xa0, 0x1f, 0x00, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x8a, + 0xe7, 0xb0, 0x2a, 0x23, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x4d, 0x69, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x76, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x52, 0x65, + 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x42, 0x0d, 0xc8, 0xde, 0x1f, 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, + 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, + 0xb7, 0x02, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x65, + 0x66, 0x75, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x45, + 0x0a, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, + 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x52, 0x10, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4e, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, + 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x21, 0xd2, 0xb4, 0x2d, 0x1d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x56, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, + 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, + 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x3a, 0x34, 0x88, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x82, 0xe7, 0xb0, + 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x1b, 0x63, 0x6f, + 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, + 0x74, 0x6f, 0x72, 0x44, 0x65, 0x66, 0x75, 0x73, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x18, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x0d, 0xc8, 0xde, 0x1f, + 0x00, 0x90, 0xdf, 0x1f, 0x01, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3c, 0x0a, 0x06, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, + 0x52, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xf0, 0x02, 0x0a, 0x18, 0x4d, 0x73, 0x67, + 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x44, 0x65, 0x66, + 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x45, 0x0a, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4e, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, + 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x21, 0xd2, 0xb4, 0x2d, 0x1d, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x56, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x52, 0x10, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3c, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, + 0x6e, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x61, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x3c, 0x88, + 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x00, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x8a, 0xe7, 0xb0, 0x2a, 0x23, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, + 0x64, 0x6b, 0x2f, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x61, 0x6e, + 0x63, 0x65, 0x6c, 0x44, 0x65, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x22, 0x0a, 0x20, 0x4d, + 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x44, + 0x65, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x50, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x22, 0x57, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x59, 0x0a, 0x13, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x69, 0x6e, 0x66, 0x75, 0x73, - 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, - 0x6e, 0x66, 0x75, 0x73, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x22, 0x0a, 0x20, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8b, 0x01, - 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, - 0x6e, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, - 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x3a, 0x0c, 0x82, - 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x58, 0x0a, 0x1f, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, - 0x0a, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x22, 0x8e, 0x01, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xd4, 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, + 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x49, 0x64, 0x12, 0x3e, 0x0a, 0x0e, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x52, 0x0e, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6e, 0x67, 0x41, 0x6d, 0x62, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, + 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x3a, 0x0c, + 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x88, 0x01, 0x0a, + 0x16, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, + 0x6f, 0x6f, 0x66, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x5a, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x22, 0xa2, 0x02, 0x0a, 0x1e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6e, + 0x64, 0x53, 0x74, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x5b, 0x0a, 0x22, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x53, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x04, 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x22, 0xbd, 0x01, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, + 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x44, + 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0c, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x41, 0x6d, 0x62, 0x69, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x53, 0x6c, 0x6f, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x73, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x97, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x65, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x64, 0x65, + 0x66, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, + 0x74, 0x65, 0x64, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x11, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0x6b, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, + 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2a, 0x0a, 0x10, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, + 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, + 0xd6, 0x01, 0x0a, 0x0d, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4d, 0x6f, 0x76, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x05, 0x61, 0x6d, 0x62, 0x69, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x52, + 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xb3, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2c, 0x0a, 0x11, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x11, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, + 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, + 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x19, + 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5e, 0x0a, 0x18, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, + 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x60, 0x0a, 0x1a, 0x4d, 0x73, 0x67, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x44, 0x65, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, + 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x82, 0x01, 0x0a, 0x18, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x22, + 0x0a, 0x0c, 0x69, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x41, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x22, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8b, 0x01, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, + 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x14, + 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, + 0x6f, 0x6e, 0x63, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0x58, 0x0a, 0x1f, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, + 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x04, + 0xc8, 0xde, 0x1f, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x22, 0x8e, 0x01, 0x0a, + 0x1c, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x52, 0x05, 0x61, 0x6d, 0x62, 0x69, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x22, 0xda, 0x01, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x18, + 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x70, 0x72, 0x6f, 0x6f, 0x66, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, + 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x3a, + 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x5b, 0x0a, + 0x22, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, + 0x69, 0x6e, 0x65, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x04, 0xc8, 0xde, + 0x1f, 0x00, 0x52, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x22, 0xbd, 0x01, 0x0a, 0x15, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, + 0x74, 0x61, 0x73, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, + 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x05, 0x61, 0x6d, + 0x62, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, + 0x74, 0x52, 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xda, 0x01, 0x0a, 0x16, 0x4d, + 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x63, 0x61, 0x6c, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x05, 0x61, + 0x6d, 0x62, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, + 0x69, 0x74, 0x52, 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x77, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x53, 0x75, + 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x05, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x61, 0x6d, 0x62, 0x69, 0x74, 0x52, 0x05, 0x61, 0x6d, 0x62, - 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, - 0x52, 0x04, 0x73, 0x6c, 0x6f, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x77, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, - 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x41, 0x0a, 0x1b, 0x4d, 0x73, 0x67, - 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x97, 0x01, 0x0a, - 0x13, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, - 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x12, 0x34, 0x0a, 0x15, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, - 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x15, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x62, 0x73, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1d, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, - 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92, 0x01, 0x0a, 0x1e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, - 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, - 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, - 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x28, 0x0a, 0x26, 0x4d, 0x73, - 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6f, 0x0a, 0x21, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x2b, 0x0a, 0x29, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x73, - 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, - 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x24, 0x0a, 0x22, 0x4d, 0x73, 0x67, - 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x63, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x27, 0x0a, 0x25, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x01, - 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, - 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x24, 0x0a, 0x22, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92, 0x01, 0x0a, 0x10, 0x4d, - 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, - 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, - 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, - 0x5d, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, - 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, - 0x0a, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x94, - 0x01, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, - 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x22, + 0x0a, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x41, 0x0a, 0x1b, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x22, 0x97, 0x01, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, + 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x15, 0x6d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x6d, 0x69, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, + 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x1d, 0x0a, + 0x1b, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92, 0x01, 0x0a, + 0x1e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x72, - 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x63, - 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, - 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, + 0x0d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x22, 0x28, 0x0a, 0x26, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6f, 0x0a, 0x21, 0x4d, + 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6c, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x3a, 0x0c, + 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x2b, 0x0a, 0x29, + 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x1a, 0x4d, 0x73, + 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, + 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x24, 0x0a, 0x22, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x63, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, + 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, + 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, + 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x27, 0x0a, 0x25, 0x4d, + 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, + 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, + 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, + 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x24, 0x0a, 0x22, 0x4d, + 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, + 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x92, 0x01, 0x0a, 0x10, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, + 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, + 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x5d, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, + 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67, 0x72, 0x65, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x94, 0x01, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, - 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, + 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, + 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x61, - 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x3a, 0x0c, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x94, 0x01, 0x0a, - 0x1c, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x18, 0x0a, + 0x1c, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67, - 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x64, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x10, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, + 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x61, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x22, 0x16, 0x0a, 0x14, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa2, 0x05, 0x0a, 0x11, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x73, - 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, - 0x64, 0x0a, 0x04, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, - 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, 0x35, 0xc8, 0xde, 0x1f, 0x00, 0xaa, 0xdf, - 0x1f, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, - 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, - 0x04, 0x72, 0x61, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x70, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x12, 0x73, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x63, - 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x31, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x1b, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, - 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x65, 0x63, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x1b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, - 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x73, 0x0a, 0x1b, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, - 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, - 0x61, 0x6c, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x31, 0xc8, 0xde, 0x1f, 0x00, - 0xda, 0xde, 0x1f, 0x1b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, - 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x65, 0x63, 0xd2, - 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, 0x1b, 0x63, - 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x61, - 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, - 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, - 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x63, - 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x28, - 0x0a, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, - 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, - 0x75, 0x6d, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x94, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x65, 0x73, - 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, - 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, 0x6e, - 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, - 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, - 0x74, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, - 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, - 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, - 0x69, 0x74, 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x74, 0x6f, 0x72, 0x22, 0x94, 0x01, 0x0a, 0x1c, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, + 0x65, 0x61, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x2a, 0x0a, 0x10, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, + 0x65, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x64, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x3a, 0x0c, 0x82, 0xe7, + 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x16, 0x0a, 0x14, 0x4d, 0x73, + 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xa2, 0x05, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x64, 0x0a, 0x04, 0x72, 0x61, 0x74, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x42, + 0x35, 0xc8, 0xde, 0x1f, 0x00, 0xaa, 0xdf, 0x1f, 0x28, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, + 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x04, 0x72, 0x61, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x0c, + 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x73, 0x0a, 0x1b, 0x70, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x31, 0xc8, 0xde, + 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x1b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, + 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x4c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x44, 0x65, + 0x63, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x44, 0x65, 0x63, 0x52, + 0x1b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x12, 0x73, 0x0a, 0x1b, + 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x31, 0xc8, 0xde, 0x1f, 0x00, 0xda, 0xde, 0x1f, 0x1b, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x2e, 0x4c, 0x65, 0x67, + 0x61, 0x63, 0x79, 0x44, 0x65, 0x63, 0xd2, 0xb4, 0x2d, 0x0a, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x44, 0x65, 0x63, 0x52, 0x1b, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x43, 0x61, + 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x6e, 0x61, 0x6c, 0x74, + 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, + 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x63, 0x61, 0x70, 0x61, + 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x63, + 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, + 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, + 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, + 0x28, 0x0a, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, + 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x94, 0x01, 0x0a, 0x1a, 0x4d, 0x73, 0x67, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x42, + 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, - 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x44, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x6e, 0x65, - 0x77, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x64, 0x65, + 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, + 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, - 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x44, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, - 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0c, 0x82, - 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xb2, 0x01, 0x0a, 0x1d, + 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, + 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, + 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x3a, 0x0c, 0x82, + 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x18, 0x0a, + 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, + 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, + 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, + 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x79, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x3a, 0x0c, 0x82, - 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x7a, 0x0a, 0x16, 0x4d, - 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x5b, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, + 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x44, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x9a, 0x01, 0x0a, 0x20, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, + 0x75, 0x6d, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x12, 0x6e, 0x65, 0x77, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x44, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0xb2, 0x01, 0x0a, 0x1d, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, + 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, + 0x6c, 0x69, 0x63, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x49, + 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0c, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x79, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x50, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, + 0x69, 0x6c, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, + 0x6c, 0x64, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x6f, 0x72, 0x22, 0x7a, 0x0a, 0x16, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x15, 0x0a, 0x13, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xdd, 0x41, 0x0a, 0x03, - 0x4d, 0x73, 0x67, 0x12, 0x5a, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x12, 0x20, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x63, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, - 0x65, 0x72, 0x12, 0x23, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, - 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x0d, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, - 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x21, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x0d, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x4f, 0x70, 0x65, 0x6e, 0x12, 0x21, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, - 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, - 0x0a, 0x0e, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, - 0x12, 0x22, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, - 0x6c, 0x6f, 0x73, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x19, 0x41, - 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, - 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, - 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, - 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, - 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, - 0x0a, 0x19, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, - 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x2d, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, - 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, - 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, + 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, + 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, + 0x3a, 0x0c, 0x82, 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x5b, + 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x49, 0x64, 0x3a, 0x0c, 0x82, + 0xe7, 0xb0, 0x2a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x15, 0x0a, 0x13, 0x4d, + 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x32, 0x89, 0x45, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x5a, 0x0a, 0x0c, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x20, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x71, 0x0a, 0x19, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x2d, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x28, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x12, 0x23, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x1a, 0x25, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x2c, + 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x0d, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x21, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, + 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, + 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x76, 0x6f, + 0x6b, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x0d, 0x41, 0x67, + 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x12, 0x21, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x6e, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, - 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, - 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x2c, + 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x0e, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, + 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x71, 0x0a, 0x19, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, + 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, + 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, + 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x12, - 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x09, 0x46, 0x6c, - 0x65, 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x12, 0x1d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x65, - 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x65, 0x65, - 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, - 0x0b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x27, 0x2e, + 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x19, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, + 0x73, 0x65, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x44, 0x65, 0x63, 0x72, 0x65, 0x61, 0x73, + 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x19, 0x41, 0x67, 0x72, 0x65, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, + 0x72, 0x65, 0x61, 0x73, 0x65, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x63, 0x72, + 0x65, 0x61, 0x73, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x67, 0x72, 0x65, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x41, + 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, + 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, + 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x0d, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, - 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x12, 0x21, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, - 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x12, 0x23, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x1a, 0x2b, 0x2e, + 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x41, + 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, + 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x12, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, + 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, + 0x72, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x51, 0x0a, 0x09, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x12, 0x1d, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, - 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x1a, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, - 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, - 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x1a, 0x36, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, - 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x65, 0x0a, 0x12, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, - 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x1a, - 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x4d, 0x73, 0x67, 0x46, 0x6c, 0x65, 0x65, 0x74, 0x4d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x0b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x12, 0x1f, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, + 0x0d, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, 0x74, 0x12, 0x21, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x4d, 0x69, 0x6e, + 0x74, 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, + 0x4d, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0f, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x12, + 0x23, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, + 0x64, 0x65, 0x65, 0x6d, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, + 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x64, 0x65, 0x65, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x84, 0x01, 0x0a, 0x1a, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, + 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, + 0x1a, 0x36, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x42, 0x61, 0x6e, 0x6b, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x73, 0x63, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x64, 0x42, 0x75, 0x72, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x12, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x26, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, + 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, + 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x79, 0x0a, 0x1c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x30, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x1c, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, - 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x13, 0x47, 0x75, + 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, + 0x74, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x13, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, - 0x69, 0x6e, 0x74, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x1e, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, - 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x32, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, - 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, - 0x75, 0x6d, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x99, 0x01, 0x0a, 0x2c, - 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, - 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, - 0x70, 0x61, 0x73, 0x73, 0x42, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x40, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, - 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, - 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x42, 0x79, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x1a, 0x27, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9b, 0x01, 0x0a, 0x2d, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, - 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, - 0x42, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x1e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, + 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x32, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, + 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, - 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, - 0x61, 0x73, 0x73, 0x42, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x15, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x29, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x99, 0x01, 0x0a, 0x2c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, + 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x42, 0x79, 0x49, 0x6e, 0x76, + 0x69, 0x74, 0x65, 0x12, 0x40, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, + 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x42, 0x79, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x9b, + 0x01, 0x0a, 0x2d, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4a, 0x6f, + 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, + 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x42, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x41, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4a, 0x6f, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, + 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x79, 0x70, 0x61, 0x73, 0x73, 0x42, 0x79, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6f, 0x0a, 0x15, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, + 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, + 0x1c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, + 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x30, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x1a, + 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x19, + 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, + 0x6e, 0x76, 0x69, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x79, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x1c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, - 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x30, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, - 0x65, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, + 0x76, 0x69, 0x74, 0x65, 0x44, 0x65, 0x6e, 0x79, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x19, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x44, 0x65, - 0x6e, 0x79, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x44, 0x65, 0x6e, - 0x79, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, - 0x0a, 0x1b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, - 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x2f, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x2b, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x13, 0x47, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x1b, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, + 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x2f, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, + 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x13, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, - 0x69, 0x6e, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x1a, 0x2b, 0x2e, 0x73, 0x74, + 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x75, 0x0a, 0x18, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x12, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x18, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x50, - 0x72, 0x6f, 0x78, 0x79, 0x12, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, - 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, - 0x78, 0x79, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x6b, 0x0a, 0x13, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x4b, 0x69, 0x63, 0x6b, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x4a, 0x6f, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x13, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4b, 0x69, 0x63, 0x6b, 0x12, 0x27, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x4b, 0x69, 0x63, 0x6b, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x4b, 0x69, 0x63, 0x6b, 0x1a, - 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, - 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x16, + 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x71, 0x0a, 0x16, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, + 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, + 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x1d, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, - 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x79, 0x0a, 0x1a, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x44, 0x65, 0x6e, 0x79, 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x44, 0x65, 0x6e, 0x79, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, + 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x1c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x76, 0x6f, + 0x6b, 0x65, 0x12, 0x30, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x7f, 0x0a, 0x1d, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, - 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x41, 0x70, 0x70, 0x72, - 0x6f, 0x76, 0x65, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x79, 0x0a, 0x1a, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x65, 0x6e, 0x79, 0x12, 0x2e, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x44, 0x65, 0x6e, 0x79, 0x1a, 0x2b, + 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, + 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, + 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x70, 0x0a, 0x18, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, + 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2c, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, + 0x6e, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x26, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x6e, 0x0a, 0x17, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x1c, 0x47, - 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x30, 0x2e, 0x73, 0x74, + 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, + 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, - 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x2b, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, - 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x18, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x41, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6e, 0x0a, 0x17, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, - 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x6e, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x19, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, - 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, - 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x70, 0x0a, 0x18, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2c, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x16, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2a, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, - 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, - 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x6a, 0x0a, 0x15, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, - 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x19, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, + 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x18, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, + 0x65, 0x63, 0x74, 0x12, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x16, 0x50, 0x65, 0x72, + 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, + 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x15, 0x50, 0x65, 0x72, 0x6d, 0x69, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, + 0x6c, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, + 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, + 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x12, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, + 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, + 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, + 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x84, 0x01, 0x0a, 0x1a, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, + 0x36, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x12, 0x20, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, + 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x74, 0x4f, 0x6e, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x0d, - 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x2e, - 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, - 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x45, 0x78, 0x70, 0x6c, - 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x12, 0x50, - 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, - 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, - 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x52, 0x61, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x1a, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, - 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, - 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x1a, 0x36, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, - 0x79, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x5a, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, - 0x12, 0x20, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x75, - 0x6d, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x75, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0e, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x22, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x6c, 0x0a, 0x17, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, 0x64, + 0x72, 0x61, 0x77, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, + 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, + 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, + 0x1d, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, + 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, + 0x6d, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, + 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, + 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, + 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x24, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x78, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, + 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x17, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x42, 0x61, 0x6c, 0x61, - 0x6e, 0x63, 0x65, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, + 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, + 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1d, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, + 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x1a, + 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, 0x0a, 0x1a, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, + 0x69, 0x63, 0x79, 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, + 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, + 0x69, 0x63, 0x79, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, - 0x72, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x42, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, - 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, - 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x12, 0x50, 0x72, 0x6f, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, + 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, + 0x6c, 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, - 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, - 0x69, 0x74, 0x79, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x78, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, - 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x78, - 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, + 0x13, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, + 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1d, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, - 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x24, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x78, 0x0a, 0x1d, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, - 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x24, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, - 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x72, - 0x0a, 0x1a, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x2e, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x1a, 0x24, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x62, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, - 0x69, 0x6c, 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, - 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x47, 0x72, 0x61, 0x6e, 0x74, - 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x13, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, - 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x12, 0x27, 0x2e, + 0x64, 0x65, 0x72, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x5d, 0x0a, 0x0d, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, + 0x12, 0x21, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, + 0x75, 0x73, 0x65, 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, + 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, + 0x0a, 0x0d, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x65, 0x66, 0x75, 0x73, 0x65, 0x12, + 0x21, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x44, 0x65, 0x66, 0x75, + 0x73, 0x65, 0x1a, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x44, + 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, + 0x15, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x4d, 0x69, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, + 0x74, 0x6f, 0x72, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x1a, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x42, 0x65, + 0x67, 0x69, 0x6e, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x15, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, + 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x44, 0x65, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x47, 0x75, 0x69, 0x6c, 0x64, - 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, - 0x69, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0e, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x22, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x1a, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0e, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x28, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, - 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x13, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x69, 0x74, 0x69, - 0x61, 0x74, 0x65, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, - 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x27, 0x2e, + 0x4d, 0x73, 0x67, 0x52, 0x65, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, + 0x44, 0x65, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x31, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, + 0x61, 0x63, 0x74, 0x6f, 0x72, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x44, 0x65, 0x66, 0x75, 0x73, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0e, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x22, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, - 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x64, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, + 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x10, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, + 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x1a, 0x28, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x10, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x65, 0x74, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x65, 0x74, - 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x12, 0x53, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, - 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x68, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x1a, + 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x68, 0x0a, 0x13, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x12, 0x27, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, + 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x11, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, + 0x6c, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x12, 0x25, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4d, 0x6f, 0x76, 0x65, - 0x12, 0x1e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4d, 0x6f, 0x76, 0x65, - 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0c, 0x53, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x20, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x1a, 0x28, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x53, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, - 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x17, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, - 0x65, 0x61, 0x6c, 0x74, 0x68, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, - 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6c, - 0x74, 0x68, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x28, 0x2e, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, - 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x12, - 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x1a, 0x31, 0x2e, 0x73, 0x74, 0x72, + 0x72, 0x75, 0x63, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x1a, + 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x10, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x53, 0x65, 0x74, 0x12, 0x24, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, + 0x53, 0x65, 0x74, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, + 0x12, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x6c, + 0x65, 0x61, 0x72, 0x12, 0x26, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x44, + 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x1a, 0x28, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4d, + 0x6f, 0x76, 0x65, 0x12, 0x1e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4d, + 0x6f, 0x76, 0x65, 0x1a, 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, + 0x0c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x12, 0x20, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x1a, + 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x41, 0x74, 0x74, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x15, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x53, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, + 0x65, 0x61, 0x6c, 0x74, 0x68, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, 0x28, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x17, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x53, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, + 0x74, 0x65, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, + 0x65, 0x61, 0x6c, 0x74, 0x68, 0x44, 0x65, 0x61, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x1a, + 0x28, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x75, 0x0a, 0x15, 0x53, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, + 0x73, 0x65, 0x12, 0x29, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x1a, 0x31, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x76, 0x0a, 0x16, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, + 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x76, 0x0a, - 0x16, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x2a, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x65, 0x1a, 0x30, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, - 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x19, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, - 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x65, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, - 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x65, 0x1a, 0x33, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, - 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x30, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x4f, 0x72, 0x65, 0x4d, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7f, 0x0a, 0x19, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6d, + 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x2d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x33, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, + 0x4f, 0x72, 0x65, 0x52, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x53, 0x75, 0x62, + 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x24, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x66, 0x0a, 0x10, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, + 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x87, 0x01, 0x0a, 0x1b, 0x53, 0x75, + 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x2f, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, + 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x37, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, - 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, - 0x0a, 0x10, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x1a, 0x2c, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, - 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x87, 0x01, 0x0a, 0x1b, 0x53, 0x75, 0x62, 0x73, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x2f, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, + 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x90, 0x01, 0x0a, 0x1e, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x32, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x37, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, - 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x90, 0x01, 0x0a, 0x1e, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, - 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x12, 0x32, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, - 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x3a, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, - 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x17, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, 0x2b, + 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x3a, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, + 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x17, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x33, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, - 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, 0x33, 0x2e, 0x73, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, - 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x84, 0x01, 0x0a, 0x1a, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x12, - 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x1a, - 0x36, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x17, 0x53, 0x75, 0x62, 0x73, 0x74, + 0x61, 0x79, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x84, 0x01, 0x0a, 0x1a, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x12, 0x2e, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x1a, 0x36, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7b, 0x0a, 0x17, 0x53, 0x75, + 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, + 0x67, 0x72, 0x61, 0x74, 0x65, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, + 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, - 0x74, 0x65, 0x12, 0x2b, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, + 0x74, 0x65, 0x1a, 0x33, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x1a, - 0x33, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x73, 0x2e, 0x4d, 0x73, 0x67, 0x53, 0x75, 0x62, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0x9d, 0x01, 0x0a, 0x13, - 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, 0x74, 0x72, 0x75, - 0x63, 0x74, 0x73, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x20, - 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, - 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0xa2, 0x02, 0x03, 0x53, 0x53, 0x58, 0xaa, 0x02, 0x0f, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, - 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xca, 0x02, 0x0f, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xe2, 0x02, 0x1b, 0x53, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, 0x47, 0x50, 0x42, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x10, 0x53, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x73, 0x3a, 0x3a, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x6f, 0x6e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4d, 0x69, 0x67, 0x72, 0x61, 0x74, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0x9d, + 0x01, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2e, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, + 0x01, 0x5a, 0x20, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x2f, 0x73, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0xa2, 0x02, 0x03, 0x53, 0x53, 0x58, 0xaa, 0x02, 0x0f, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x73, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xca, 0x02, 0x0f, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0xe2, 0x02, 0x1b, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x5c, + 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x10, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x73, 0x3a, 0x3a, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x73, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -63515,7 +68339,7 @@ func file_structs_structs_tx_proto_rawDescGZIP() []byte { return file_structs_structs_tx_proto_rawDescData } -var file_structs_structs_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 111) +var file_structs_structs_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 119) var file_structs_structs_tx_proto_goTypes = []interface{}{ (*MsgUpdateParams)(nil), // 0: structs.structs.MsgUpdateParams (*MsgUpdateParamsResponse)(nil), // 1: structs.structs.MsgUpdateParamsResponse @@ -63575,249 +68399,273 @@ var file_structs_structs_tx_proto_goTypes = []interface{}{ (*MsgPlayerUpdatePrimaryAddressResponse)(nil), // 55: structs.structs.MsgPlayerUpdatePrimaryAddressResponse (*MsgPlayerResume)(nil), // 56: structs.structs.MsgPlayerResume (*MsgPlayerResumeResponse)(nil), // 57: structs.structs.MsgPlayerResumeResponse - (*MsgStructStatusResponse)(nil), // 58: structs.structs.MsgStructStatusResponse - (*MsgStructActivate)(nil), // 59: structs.structs.MsgStructActivate - (*MsgStructDeactivate)(nil), // 60: structs.structs.MsgStructDeactivate - (*MsgStructBuildInitiate)(nil), // 61: structs.structs.MsgStructBuildInitiate - (*MsgStructBuildComplete)(nil), // 62: structs.structs.MsgStructBuildComplete - (*MsgStructBuildCancel)(nil), // 63: structs.structs.MsgStructBuildCancel - (*MsgStructBuildCompleteAndStash)(nil), // 64: structs.structs.MsgStructBuildCompleteAndStash - (*MsgStructDefenseSet)(nil), // 65: structs.structs.MsgStructDefenseSet - (*MsgStructDefenseClear)(nil), // 66: structs.structs.MsgStructDefenseClear - (*MsgStructMove)(nil), // 67: structs.structs.MsgStructMove - (*MsgStructAttack)(nil), // 68: structs.structs.MsgStructAttack - (*MsgStructAttackResponse)(nil), // 69: structs.structs.MsgStructAttackResponse - (*MsgStructStealthActivate)(nil), // 70: structs.structs.MsgStructStealthActivate - (*MsgStructStealthDeactivate)(nil), // 71: structs.structs.MsgStructStealthDeactivate - (*MsgStructGeneratorInfuse)(nil), // 72: structs.structs.MsgStructGeneratorInfuse - (*MsgStructGeneratorStatusResponse)(nil), // 73: structs.structs.MsgStructGeneratorStatusResponse - (*MsgStructOreMinerComplete)(nil), // 74: structs.structs.MsgStructOreMinerComplete - (*MsgStructOreMinerStatusResponse)(nil), // 75: structs.structs.MsgStructOreMinerStatusResponse - (*MsgStructOreRefineryComplete)(nil), // 76: structs.structs.MsgStructOreRefineryComplete - (*MsgStructOreRefineryStatusResponse)(nil), // 77: structs.structs.MsgStructOreRefineryStatusResponse - (*MsgStructStorageStash)(nil), // 78: structs.structs.MsgStructStorageStash - (*MsgStructStorageRecall)(nil), // 79: structs.structs.MsgStructStorageRecall - (*MsgSubstationCreate)(nil), // 80: structs.structs.MsgSubstationCreate - (*MsgSubstationCreateResponse)(nil), // 81: structs.structs.MsgSubstationCreateResponse - (*MsgSubstationDelete)(nil), // 82: structs.structs.MsgSubstationDelete - (*MsgSubstationDeleteResponse)(nil), // 83: structs.structs.MsgSubstationDeleteResponse - (*MsgSubstationAllocationConnect)(nil), // 84: structs.structs.MsgSubstationAllocationConnect - (*MsgSubstationAllocationConnectResponse)(nil), // 85: structs.structs.MsgSubstationAllocationConnectResponse - (*MsgSubstationAllocationDisconnect)(nil), // 86: structs.structs.MsgSubstationAllocationDisconnect - (*MsgSubstationAllocationDisconnectResponse)(nil), // 87: structs.structs.MsgSubstationAllocationDisconnectResponse - (*MsgSubstationPlayerConnect)(nil), // 88: structs.structs.MsgSubstationPlayerConnect - (*MsgSubstationPlayerConnectResponse)(nil), // 89: structs.structs.MsgSubstationPlayerConnectResponse - (*MsgSubstationPlayerDisconnect)(nil), // 90: structs.structs.MsgSubstationPlayerDisconnect - (*MsgSubstationPlayerDisconnectResponse)(nil), // 91: structs.structs.MsgSubstationPlayerDisconnectResponse - (*MsgSubstationPlayerMigrate)(nil), // 92: structs.structs.MsgSubstationPlayerMigrate - (*MsgSubstationPlayerMigrateResponse)(nil), // 93: structs.structs.MsgSubstationPlayerMigrateResponse - (*MsgAgreementOpen)(nil), // 94: structs.structs.MsgAgreementOpen - (*MsgAgreementClose)(nil), // 95: structs.structs.MsgAgreementClose - (*MsgAgreementCapacityIncrease)(nil), // 96: structs.structs.MsgAgreementCapacityIncrease - (*MsgAgreementCapacityDecrease)(nil), // 97: structs.structs.MsgAgreementCapacityDecrease - (*MsgAgreementDurationIncrease)(nil), // 98: structs.structs.MsgAgreementDurationIncrease - (*MsgAgreementResponse)(nil), // 99: structs.structs.MsgAgreementResponse - (*MsgProviderCreate)(nil), // 100: structs.structs.MsgProviderCreate - (*MsgProviderWithdrawBalance)(nil), // 101: structs.structs.MsgProviderWithdrawBalance - (*MsgProviderUpdateCapacityMinimum)(nil), // 102: structs.structs.MsgProviderUpdateCapacityMinimum - (*MsgProviderUpdateCapacityMaximum)(nil), // 103: structs.structs.MsgProviderUpdateCapacityMaximum - (*MsgProviderUpdateDurationMinimum)(nil), // 104: structs.structs.MsgProviderUpdateDurationMinimum - (*MsgProviderUpdateDurationMaximum)(nil), // 105: structs.structs.MsgProviderUpdateDurationMaximum - (*MsgProviderUpdateAccessPolicy)(nil), // 106: structs.structs.MsgProviderUpdateAccessPolicy - (*MsgProviderGuildGrant)(nil), // 107: structs.structs.MsgProviderGuildGrant - (*MsgProviderGuildRevoke)(nil), // 108: structs.structs.MsgProviderGuildRevoke - (*MsgProviderDelete)(nil), // 109: structs.structs.MsgProviderDelete - (*MsgProviderResponse)(nil), // 110: structs.structs.MsgProviderResponse - (*Params)(nil), // 111: structs.structs.Params - (AllocationType)(0), // 112: structs.structs.allocationType - (*Fleet)(nil), // 113: structs.structs.Fleet - (*v1beta1.Coin)(nil), // 114: cosmos.base.v1beta1.Coin - (GuildJoinBypassLevel)(0), // 115: structs.structs.guildJoinBypassLevel - (*GuildMembershipApplication)(nil), // 116: structs.structs.GuildMembershipApplication - (*Planet)(nil), // 117: structs.structs.Planet - (*Struct)(nil), // 118: structs.structs.Struct - (Ambit)(0), // 119: structs.structs.ambit - (ObjectType)(0), // 120: structs.structs.objectType - (ProviderAccessPolicy)(0), // 121: structs.structs.providerAccessPolicy + (*MsgReactorInfuse)(nil), // 58: structs.structs.MsgReactorInfuse + (*MsgReactorInfuseResponse)(nil), // 59: structs.structs.MsgReactorInfuseResponse + (*MsgReactorBeginMigration)(nil), // 60: structs.structs.MsgReactorBeginMigration + (*MsgReactorBeginMigrationResponse)(nil), // 61: structs.structs.MsgReactorBeginMigrationResponse + (*MsgReactorDefuse)(nil), // 62: structs.structs.MsgReactorDefuse + (*MsgReactorDefuseResponse)(nil), // 63: structs.structs.MsgReactorDefuseResponse + (*MsgReactorCancelDefusion)(nil), // 64: structs.structs.MsgReactorCancelDefusion + (*MsgReactorCancelDefusionResponse)(nil), // 65: structs.structs.MsgReactorCancelDefusionResponse + (*MsgStructStatusResponse)(nil), // 66: structs.structs.MsgStructStatusResponse + (*MsgStructActivate)(nil), // 67: structs.structs.MsgStructActivate + (*MsgStructDeactivate)(nil), // 68: structs.structs.MsgStructDeactivate + (*MsgStructBuildInitiate)(nil), // 69: structs.structs.MsgStructBuildInitiate + (*MsgStructBuildComplete)(nil), // 70: structs.structs.MsgStructBuildComplete + (*MsgStructBuildCancel)(nil), // 71: structs.structs.MsgStructBuildCancel + (*MsgStructBuildCompleteAndStash)(nil), // 72: structs.structs.MsgStructBuildCompleteAndStash + (*MsgStructDefenseSet)(nil), // 73: structs.structs.MsgStructDefenseSet + (*MsgStructDefenseClear)(nil), // 74: structs.structs.MsgStructDefenseClear + (*MsgStructMove)(nil), // 75: structs.structs.MsgStructMove + (*MsgStructAttack)(nil), // 76: structs.structs.MsgStructAttack + (*MsgStructAttackResponse)(nil), // 77: structs.structs.MsgStructAttackResponse + (*MsgStructStealthActivate)(nil), // 78: structs.structs.MsgStructStealthActivate + (*MsgStructStealthDeactivate)(nil), // 79: structs.structs.MsgStructStealthDeactivate + (*MsgStructGeneratorInfuse)(nil), // 80: structs.structs.MsgStructGeneratorInfuse + (*MsgStructGeneratorStatusResponse)(nil), // 81: structs.structs.MsgStructGeneratorStatusResponse + (*MsgStructOreMinerComplete)(nil), // 82: structs.structs.MsgStructOreMinerComplete + (*MsgStructOreMinerStatusResponse)(nil), // 83: structs.structs.MsgStructOreMinerStatusResponse + (*MsgStructOreRefineryComplete)(nil), // 84: structs.structs.MsgStructOreRefineryComplete + (*MsgStructOreRefineryStatusResponse)(nil), // 85: structs.structs.MsgStructOreRefineryStatusResponse + (*MsgStructStorageStash)(nil), // 86: structs.structs.MsgStructStorageStash + (*MsgStructStorageRecall)(nil), // 87: structs.structs.MsgStructStorageRecall + (*MsgSubstationCreate)(nil), // 88: structs.structs.MsgSubstationCreate + (*MsgSubstationCreateResponse)(nil), // 89: structs.structs.MsgSubstationCreateResponse + (*MsgSubstationDelete)(nil), // 90: structs.structs.MsgSubstationDelete + (*MsgSubstationDeleteResponse)(nil), // 91: structs.structs.MsgSubstationDeleteResponse + (*MsgSubstationAllocationConnect)(nil), // 92: structs.structs.MsgSubstationAllocationConnect + (*MsgSubstationAllocationConnectResponse)(nil), // 93: structs.structs.MsgSubstationAllocationConnectResponse + (*MsgSubstationAllocationDisconnect)(nil), // 94: structs.structs.MsgSubstationAllocationDisconnect + (*MsgSubstationAllocationDisconnectResponse)(nil), // 95: structs.structs.MsgSubstationAllocationDisconnectResponse + (*MsgSubstationPlayerConnect)(nil), // 96: structs.structs.MsgSubstationPlayerConnect + (*MsgSubstationPlayerConnectResponse)(nil), // 97: structs.structs.MsgSubstationPlayerConnectResponse + (*MsgSubstationPlayerDisconnect)(nil), // 98: structs.structs.MsgSubstationPlayerDisconnect + (*MsgSubstationPlayerDisconnectResponse)(nil), // 99: structs.structs.MsgSubstationPlayerDisconnectResponse + (*MsgSubstationPlayerMigrate)(nil), // 100: structs.structs.MsgSubstationPlayerMigrate + (*MsgSubstationPlayerMigrateResponse)(nil), // 101: structs.structs.MsgSubstationPlayerMigrateResponse + (*MsgAgreementOpen)(nil), // 102: structs.structs.MsgAgreementOpen + (*MsgAgreementClose)(nil), // 103: structs.structs.MsgAgreementClose + (*MsgAgreementCapacityIncrease)(nil), // 104: structs.structs.MsgAgreementCapacityIncrease + (*MsgAgreementCapacityDecrease)(nil), // 105: structs.structs.MsgAgreementCapacityDecrease + (*MsgAgreementDurationIncrease)(nil), // 106: structs.structs.MsgAgreementDurationIncrease + (*MsgAgreementResponse)(nil), // 107: structs.structs.MsgAgreementResponse + (*MsgProviderCreate)(nil), // 108: structs.structs.MsgProviderCreate + (*MsgProviderWithdrawBalance)(nil), // 109: structs.structs.MsgProviderWithdrawBalance + (*MsgProviderUpdateCapacityMinimum)(nil), // 110: structs.structs.MsgProviderUpdateCapacityMinimum + (*MsgProviderUpdateCapacityMaximum)(nil), // 111: structs.structs.MsgProviderUpdateCapacityMaximum + (*MsgProviderUpdateDurationMinimum)(nil), // 112: structs.structs.MsgProviderUpdateDurationMinimum + (*MsgProviderUpdateDurationMaximum)(nil), // 113: structs.structs.MsgProviderUpdateDurationMaximum + (*MsgProviderUpdateAccessPolicy)(nil), // 114: structs.structs.MsgProviderUpdateAccessPolicy + (*MsgProviderGuildGrant)(nil), // 115: structs.structs.MsgProviderGuildGrant + (*MsgProviderGuildRevoke)(nil), // 116: structs.structs.MsgProviderGuildRevoke + (*MsgProviderDelete)(nil), // 117: structs.structs.MsgProviderDelete + (*MsgProviderResponse)(nil), // 118: structs.structs.MsgProviderResponse + (*Params)(nil), // 119: structs.structs.Params + (AllocationType)(0), // 120: structs.structs.allocationType + (*Fleet)(nil), // 121: structs.structs.Fleet + (*v1beta1.Coin)(nil), // 122: cosmos.base.v1beta1.Coin + (GuildJoinBypassLevel)(0), // 123: structs.structs.guildJoinBypassLevel + (*GuildMembershipApplication)(nil), // 124: structs.structs.GuildMembershipApplication + (*Planet)(nil), // 125: structs.structs.Planet + (*timestamppb.Timestamp)(nil), // 126: google.protobuf.Timestamp + (*Struct)(nil), // 127: structs.structs.Struct + (Ambit)(0), // 128: structs.structs.ambit + (ObjectType)(0), // 129: structs.structs.objectType + (ProviderAccessPolicy)(0), // 130: structs.structs.providerAccessPolicy } var file_structs_structs_tx_proto_depIdxs = []int32{ - 111, // 0: structs.structs.MsgUpdateParams.params:type_name -> structs.structs.Params - 112, // 1: structs.structs.MsgAllocationCreate.allocationType:type_name -> structs.structs.allocationType - 113, // 2: structs.structs.MsgFleetMoveResponse.fleet:type_name -> structs.structs.Fleet - 114, // 3: structs.structs.MsgGuildBankRedeem.amountToken:type_name -> cosmos.base.v1beta1.Coin - 115, // 4: structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest.guildJoinBypassLevel:type_name -> structs.structs.guildJoinBypassLevel - 115, // 5: structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite.guildJoinBypassLevel:type_name -> structs.structs.guildJoinBypassLevel - 116, // 6: structs.structs.MsgGuildMembershipResponse.guildMembershipApplication:type_name -> structs.structs.GuildMembershipApplication - 117, // 7: structs.structs.MsgPlanetExploreResponse.planet:type_name -> structs.structs.Planet - 113, // 8: structs.structs.MsgPlanetRaidCompleteResponse.fleet:type_name -> structs.structs.Fleet - 117, // 9: structs.structs.MsgPlanetRaidCompleteResponse.planet:type_name -> structs.structs.Planet - 118, // 10: structs.structs.MsgStructStatusResponse.struct:type_name -> structs.structs.Struct - 119, // 11: structs.structs.MsgStructBuildInitiate.operatingAmbit:type_name -> structs.structs.ambit - 119, // 12: structs.structs.MsgStructBuildCompleteAndStash.storageAmbit:type_name -> structs.structs.ambit - 120, // 13: structs.structs.MsgStructMove.locationType:type_name -> structs.structs.objectType - 119, // 14: structs.structs.MsgStructMove.ambit:type_name -> structs.structs.ambit - 118, // 15: structs.structs.MsgStructOreMinerStatusResponse.struct:type_name -> structs.structs.Struct - 118, // 16: structs.structs.MsgStructOreRefineryStatusResponse.struct:type_name -> structs.structs.Struct - 119, // 17: structs.structs.MsgStructStorageStash.ambit:type_name -> structs.structs.ambit - 119, // 18: structs.structs.MsgStructStorageRecall.ambit:type_name -> structs.structs.ambit - 114, // 19: structs.structs.MsgProviderCreate.rate:type_name -> cosmos.base.v1beta1.Coin - 121, // 20: structs.structs.MsgProviderCreate.accessPolicy:type_name -> structs.structs.providerAccessPolicy - 121, // 21: structs.structs.MsgProviderUpdateAccessPolicy.accessPolicy:type_name -> structs.structs.providerAccessPolicy - 0, // 22: structs.structs.Msg.UpdateParams:input_type -> structs.structs.MsgUpdateParams - 2, // 23: structs.structs.Msg.AddressRegister:input_type -> structs.structs.MsgAddressRegister - 4, // 24: structs.structs.Msg.AddressRevoke:input_type -> structs.structs.MsgAddressRevoke - 94, // 25: structs.structs.Msg.AgreementOpen:input_type -> structs.structs.MsgAgreementOpen - 95, // 26: structs.structs.Msg.AgreementClose:input_type -> structs.structs.MsgAgreementClose - 96, // 27: structs.structs.Msg.AgreementCapacityIncrease:input_type -> structs.structs.MsgAgreementCapacityIncrease - 97, // 28: structs.structs.Msg.AgreementCapacityDecrease:input_type -> structs.structs.MsgAgreementCapacityDecrease - 98, // 29: structs.structs.Msg.AgreementDurationIncrease:input_type -> structs.structs.MsgAgreementDurationIncrease - 6, // 30: structs.structs.Msg.AllocationCreate:input_type -> structs.structs.MsgAllocationCreate - 8, // 31: structs.structs.Msg.AllocationDelete:input_type -> structs.structs.MsgAllocationDelete - 10, // 32: structs.structs.Msg.AllocationUpdate:input_type -> structs.structs.MsgAllocationUpdate - 12, // 33: structs.structs.Msg.AllocationTransfer:input_type -> structs.structs.MsgAllocationTransfer - 14, // 34: structs.structs.Msg.FleetMove:input_type -> structs.structs.MsgFleetMove - 22, // 35: structs.structs.Msg.GuildCreate:input_type -> structs.structs.MsgGuildCreate - 16, // 36: structs.structs.Msg.GuildBankMint:input_type -> structs.structs.MsgGuildBankMint - 18, // 37: structs.structs.Msg.GuildBankRedeem:input_type -> structs.structs.MsgGuildBankRedeem - 20, // 38: structs.structs.Msg.GuildBankConfiscateAndBurn:input_type -> structs.structs.MsgGuildBankConfiscateAndBurn - 24, // 39: structs.structs.Msg.GuildUpdateOwnerId:input_type -> structs.structs.MsgGuildUpdateOwnerId - 25, // 40: structs.structs.Msg.GuildUpdateEntrySubstationId:input_type -> structs.structs.MsgGuildUpdateEntrySubstationId - 26, // 41: structs.structs.Msg.GuildUpdateEndpoint:input_type -> structs.structs.MsgGuildUpdateEndpoint - 27, // 42: structs.structs.Msg.GuildUpdateJoinInfusionMinimum:input_type -> structs.structs.MsgGuildUpdateJoinInfusionMinimum - 29, // 43: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByInvite:input_type -> structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite - 28, // 44: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByRequest:input_type -> structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest - 31, // 45: structs.structs.Msg.GuildMembershipInvite:input_type -> structs.structs.MsgGuildMembershipInvite - 32, // 46: structs.structs.Msg.GuildMembershipInviteApprove:input_type -> structs.structs.MsgGuildMembershipInviteApprove - 33, // 47: structs.structs.Msg.GuildMembershipInviteDeny:input_type -> structs.structs.MsgGuildMembershipInviteDeny - 34, // 48: structs.structs.Msg.GuildMembershipInviteRevoke:input_type -> structs.structs.MsgGuildMembershipInviteRevoke - 35, // 49: structs.structs.Msg.GuildMembershipJoin:input_type -> structs.structs.MsgGuildMembershipJoin - 36, // 50: structs.structs.Msg.GuildMembershipJoinProxy:input_type -> structs.structs.MsgGuildMembershipJoinProxy - 37, // 51: structs.structs.Msg.GuildMembershipKick:input_type -> structs.structs.MsgGuildMembershipKick - 38, // 52: structs.structs.Msg.GuildMembershipRequest:input_type -> structs.structs.MsgGuildMembershipRequest - 39, // 53: structs.structs.Msg.GuildMembershipRequestApprove:input_type -> structs.structs.MsgGuildMembershipRequestApprove - 40, // 54: structs.structs.Msg.GuildMembershipRequestDeny:input_type -> structs.structs.MsgGuildMembershipRequestDeny - 41, // 55: structs.structs.Msg.GuildMembershipRequestRevoke:input_type -> structs.structs.MsgGuildMembershipRequestRevoke - 44, // 56: structs.structs.Msg.PermissionGrantOnAddress:input_type -> structs.structs.MsgPermissionGrantOnAddress - 43, // 57: structs.structs.Msg.PermissionGrantOnObject:input_type -> structs.structs.MsgPermissionGrantOnObject - 46, // 58: structs.structs.Msg.PermissionRevokeOnAddress:input_type -> structs.structs.MsgPermissionRevokeOnAddress - 45, // 59: structs.structs.Msg.PermissionRevokeOnObject:input_type -> structs.structs.MsgPermissionRevokeOnObject - 48, // 60: structs.structs.Msg.PermissionSetOnAddress:input_type -> structs.structs.MsgPermissionSetOnAddress - 47, // 61: structs.structs.Msg.PermissionSetOnObject:input_type -> structs.structs.MsgPermissionSetOnObject - 50, // 62: structs.structs.Msg.PlanetExplore:input_type -> structs.structs.MsgPlanetExplore - 52, // 63: structs.structs.Msg.PlanetRaidComplete:input_type -> structs.structs.MsgPlanetRaidComplete - 54, // 64: structs.structs.Msg.PlayerUpdatePrimaryAddress:input_type -> structs.structs.MsgPlayerUpdatePrimaryAddress - 56, // 65: structs.structs.Msg.PlayerResume:input_type -> structs.structs.MsgPlayerResume - 100, // 66: structs.structs.Msg.ProviderCreate:input_type -> structs.structs.MsgProviderCreate - 101, // 67: structs.structs.Msg.ProviderWithdrawBalance:input_type -> structs.structs.MsgProviderWithdrawBalance - 102, // 68: structs.structs.Msg.ProviderUpdateCapacityMinimum:input_type -> structs.structs.MsgProviderUpdateCapacityMinimum - 103, // 69: structs.structs.Msg.ProviderUpdateCapacityMaximum:input_type -> structs.structs.MsgProviderUpdateCapacityMaximum - 104, // 70: structs.structs.Msg.ProviderUpdateDurationMinimum:input_type -> structs.structs.MsgProviderUpdateDurationMinimum - 105, // 71: structs.structs.Msg.ProviderUpdateDurationMaximum:input_type -> structs.structs.MsgProviderUpdateDurationMaximum - 106, // 72: structs.structs.Msg.ProviderUpdateAccessPolicy:input_type -> structs.structs.MsgProviderUpdateAccessPolicy - 107, // 73: structs.structs.Msg.ProviderGuildGrant:input_type -> structs.structs.MsgProviderGuildGrant - 108, // 74: structs.structs.Msg.ProviderGuildRevoke:input_type -> structs.structs.MsgProviderGuildRevoke - 109, // 75: structs.structs.Msg.ProviderDelete:input_type -> structs.structs.MsgProviderDelete - 59, // 76: structs.structs.Msg.StructActivate:input_type -> structs.structs.MsgStructActivate - 60, // 77: structs.structs.Msg.StructDeactivate:input_type -> structs.structs.MsgStructDeactivate - 61, // 78: structs.structs.Msg.StructBuildInitiate:input_type -> structs.structs.MsgStructBuildInitiate - 62, // 79: structs.structs.Msg.StructBuildComplete:input_type -> structs.structs.MsgStructBuildComplete - 63, // 80: structs.structs.Msg.StructBuildCancel:input_type -> structs.structs.MsgStructBuildCancel - 65, // 81: structs.structs.Msg.StructDefenseSet:input_type -> structs.structs.MsgStructDefenseSet - 66, // 82: structs.structs.Msg.StructDefenseClear:input_type -> structs.structs.MsgStructDefenseClear - 67, // 83: structs.structs.Msg.StructMove:input_type -> structs.structs.MsgStructMove - 68, // 84: structs.structs.Msg.StructAttack:input_type -> structs.structs.MsgStructAttack - 70, // 85: structs.structs.Msg.StructStealthActivate:input_type -> structs.structs.MsgStructStealthActivate - 71, // 86: structs.structs.Msg.StructStealthDeactivate:input_type -> structs.structs.MsgStructStealthDeactivate - 72, // 87: structs.structs.Msg.StructGeneratorInfuse:input_type -> structs.structs.MsgStructGeneratorInfuse - 74, // 88: structs.structs.Msg.StructOreMinerComplete:input_type -> structs.structs.MsgStructOreMinerComplete - 76, // 89: structs.structs.Msg.StructOreRefineryComplete:input_type -> structs.structs.MsgStructOreRefineryComplete - 80, // 90: structs.structs.Msg.SubstationCreate:input_type -> structs.structs.MsgSubstationCreate - 82, // 91: structs.structs.Msg.SubstationDelete:input_type -> structs.structs.MsgSubstationDelete - 84, // 92: structs.structs.Msg.SubstationAllocationConnect:input_type -> structs.structs.MsgSubstationAllocationConnect - 86, // 93: structs.structs.Msg.SubstationAllocationDisconnect:input_type -> structs.structs.MsgSubstationAllocationDisconnect - 88, // 94: structs.structs.Msg.SubstationPlayerConnect:input_type -> structs.structs.MsgSubstationPlayerConnect - 90, // 95: structs.structs.Msg.SubstationPlayerDisconnect:input_type -> structs.structs.MsgSubstationPlayerDisconnect - 92, // 96: structs.structs.Msg.SubstationPlayerMigrate:input_type -> structs.structs.MsgSubstationPlayerMigrate - 1, // 97: structs.structs.Msg.UpdateParams:output_type -> structs.structs.MsgUpdateParamsResponse - 3, // 98: structs.structs.Msg.AddressRegister:output_type -> structs.structs.MsgAddressRegisterResponse - 5, // 99: structs.structs.Msg.AddressRevoke:output_type -> structs.structs.MsgAddressRevokeResponse - 99, // 100: structs.structs.Msg.AgreementOpen:output_type -> structs.structs.MsgAgreementResponse - 99, // 101: structs.structs.Msg.AgreementClose:output_type -> structs.structs.MsgAgreementResponse - 99, // 102: structs.structs.Msg.AgreementCapacityIncrease:output_type -> structs.structs.MsgAgreementResponse - 99, // 103: structs.structs.Msg.AgreementCapacityDecrease:output_type -> structs.structs.MsgAgreementResponse - 99, // 104: structs.structs.Msg.AgreementDurationIncrease:output_type -> structs.structs.MsgAgreementResponse - 7, // 105: structs.structs.Msg.AllocationCreate:output_type -> structs.structs.MsgAllocationCreateResponse - 9, // 106: structs.structs.Msg.AllocationDelete:output_type -> structs.structs.MsgAllocationDeleteResponse - 11, // 107: structs.structs.Msg.AllocationUpdate:output_type -> structs.structs.MsgAllocationUpdateResponse - 13, // 108: structs.structs.Msg.AllocationTransfer:output_type -> structs.structs.MsgAllocationTransferResponse - 15, // 109: structs.structs.Msg.FleetMove:output_type -> structs.structs.MsgFleetMoveResponse - 23, // 110: structs.structs.Msg.GuildCreate:output_type -> structs.structs.MsgGuildCreateResponse - 17, // 111: structs.structs.Msg.GuildBankMint:output_type -> structs.structs.MsgGuildBankMintResponse - 19, // 112: structs.structs.Msg.GuildBankRedeem:output_type -> structs.structs.MsgGuildBankRedeemResponse - 21, // 113: structs.structs.Msg.GuildBankConfiscateAndBurn:output_type -> structs.structs.MsgGuildBankConfiscateAndBurnResponse - 30, // 114: structs.structs.Msg.GuildUpdateOwnerId:output_type -> structs.structs.MsgGuildUpdateResponse - 30, // 115: structs.structs.Msg.GuildUpdateEntrySubstationId:output_type -> structs.structs.MsgGuildUpdateResponse - 30, // 116: structs.structs.Msg.GuildUpdateEndpoint:output_type -> structs.structs.MsgGuildUpdateResponse - 30, // 117: structs.structs.Msg.GuildUpdateJoinInfusionMinimum:output_type -> structs.structs.MsgGuildUpdateResponse - 30, // 118: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByInvite:output_type -> structs.structs.MsgGuildUpdateResponse - 30, // 119: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByRequest:output_type -> structs.structs.MsgGuildUpdateResponse - 42, // 120: structs.structs.Msg.GuildMembershipInvite:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 121: structs.structs.Msg.GuildMembershipInviteApprove:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 122: structs.structs.Msg.GuildMembershipInviteDeny:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 123: structs.structs.Msg.GuildMembershipInviteRevoke:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 124: structs.structs.Msg.GuildMembershipJoin:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 125: structs.structs.Msg.GuildMembershipJoinProxy:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 126: structs.structs.Msg.GuildMembershipKick:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 127: structs.structs.Msg.GuildMembershipRequest:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 128: structs.structs.Msg.GuildMembershipRequestApprove:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 129: structs.structs.Msg.GuildMembershipRequestDeny:output_type -> structs.structs.MsgGuildMembershipResponse - 42, // 130: structs.structs.Msg.GuildMembershipRequestRevoke:output_type -> structs.structs.MsgGuildMembershipResponse - 49, // 131: structs.structs.Msg.PermissionGrantOnAddress:output_type -> structs.structs.MsgPermissionResponse - 49, // 132: structs.structs.Msg.PermissionGrantOnObject:output_type -> structs.structs.MsgPermissionResponse - 49, // 133: structs.structs.Msg.PermissionRevokeOnAddress:output_type -> structs.structs.MsgPermissionResponse - 49, // 134: structs.structs.Msg.PermissionRevokeOnObject:output_type -> structs.structs.MsgPermissionResponse - 49, // 135: structs.structs.Msg.PermissionSetOnAddress:output_type -> structs.structs.MsgPermissionResponse - 49, // 136: structs.structs.Msg.PermissionSetOnObject:output_type -> structs.structs.MsgPermissionResponse - 51, // 137: structs.structs.Msg.PlanetExplore:output_type -> structs.structs.MsgPlanetExploreResponse - 53, // 138: structs.structs.Msg.PlanetRaidComplete:output_type -> structs.structs.MsgPlanetRaidCompleteResponse - 55, // 139: structs.structs.Msg.PlayerUpdatePrimaryAddress:output_type -> structs.structs.MsgPlayerUpdatePrimaryAddressResponse - 57, // 140: structs.structs.Msg.PlayerResume:output_type -> structs.structs.MsgPlayerResumeResponse - 110, // 141: structs.structs.Msg.ProviderCreate:output_type -> structs.structs.MsgProviderResponse - 110, // 142: structs.structs.Msg.ProviderWithdrawBalance:output_type -> structs.structs.MsgProviderResponse - 110, // 143: structs.structs.Msg.ProviderUpdateCapacityMinimum:output_type -> structs.structs.MsgProviderResponse - 110, // 144: structs.structs.Msg.ProviderUpdateCapacityMaximum:output_type -> structs.structs.MsgProviderResponse - 110, // 145: structs.structs.Msg.ProviderUpdateDurationMinimum:output_type -> structs.structs.MsgProviderResponse - 110, // 146: structs.structs.Msg.ProviderUpdateDurationMaximum:output_type -> structs.structs.MsgProviderResponse - 110, // 147: structs.structs.Msg.ProviderUpdateAccessPolicy:output_type -> structs.structs.MsgProviderResponse - 110, // 148: structs.structs.Msg.ProviderGuildGrant:output_type -> structs.structs.MsgProviderResponse - 110, // 149: structs.structs.Msg.ProviderGuildRevoke:output_type -> structs.structs.MsgProviderResponse - 110, // 150: structs.structs.Msg.ProviderDelete:output_type -> structs.structs.MsgProviderResponse - 58, // 151: structs.structs.Msg.StructActivate:output_type -> structs.structs.MsgStructStatusResponse - 58, // 152: structs.structs.Msg.StructDeactivate:output_type -> structs.structs.MsgStructStatusResponse - 58, // 153: structs.structs.Msg.StructBuildInitiate:output_type -> structs.structs.MsgStructStatusResponse - 58, // 154: structs.structs.Msg.StructBuildComplete:output_type -> structs.structs.MsgStructStatusResponse - 58, // 155: structs.structs.Msg.StructBuildCancel:output_type -> structs.structs.MsgStructStatusResponse - 58, // 156: structs.structs.Msg.StructDefenseSet:output_type -> structs.structs.MsgStructStatusResponse - 58, // 157: structs.structs.Msg.StructDefenseClear:output_type -> structs.structs.MsgStructStatusResponse - 58, // 158: structs.structs.Msg.StructMove:output_type -> structs.structs.MsgStructStatusResponse - 69, // 159: structs.structs.Msg.StructAttack:output_type -> structs.structs.MsgStructAttackResponse - 58, // 160: structs.structs.Msg.StructStealthActivate:output_type -> structs.structs.MsgStructStatusResponse - 58, // 161: structs.structs.Msg.StructStealthDeactivate:output_type -> structs.structs.MsgStructStatusResponse - 73, // 162: structs.structs.Msg.StructGeneratorInfuse:output_type -> structs.structs.MsgStructGeneratorStatusResponse - 75, // 163: structs.structs.Msg.StructOreMinerComplete:output_type -> structs.structs.MsgStructOreMinerStatusResponse - 77, // 164: structs.structs.Msg.StructOreRefineryComplete:output_type -> structs.structs.MsgStructOreRefineryStatusResponse - 81, // 165: structs.structs.Msg.SubstationCreate:output_type -> structs.structs.MsgSubstationCreateResponse - 83, // 166: structs.structs.Msg.SubstationDelete:output_type -> structs.structs.MsgSubstationDeleteResponse - 85, // 167: structs.structs.Msg.SubstationAllocationConnect:output_type -> structs.structs.MsgSubstationAllocationConnectResponse - 87, // 168: structs.structs.Msg.SubstationAllocationDisconnect:output_type -> structs.structs.MsgSubstationAllocationDisconnectResponse - 89, // 169: structs.structs.Msg.SubstationPlayerConnect:output_type -> structs.structs.MsgSubstationPlayerConnectResponse - 91, // 170: structs.structs.Msg.SubstationPlayerDisconnect:output_type -> structs.structs.MsgSubstationPlayerDisconnectResponse - 93, // 171: structs.structs.Msg.SubstationPlayerMigrate:output_type -> structs.structs.MsgSubstationPlayerMigrateResponse - 97, // [97:172] is the sub-list for method output_type - 22, // [22:97] is the sub-list for method input_type - 22, // [22:22] is the sub-list for extension type_name - 22, // [22:22] is the sub-list for extension extendee - 0, // [0:22] is the sub-list for field type_name + 119, // 0: structs.structs.MsgUpdateParams.params:type_name -> structs.structs.Params + 120, // 1: structs.structs.MsgAllocationCreate.allocationType:type_name -> structs.structs.allocationType + 121, // 2: structs.structs.MsgFleetMoveResponse.fleet:type_name -> structs.structs.Fleet + 122, // 3: structs.structs.MsgGuildBankRedeem.amountToken:type_name -> cosmos.base.v1beta1.Coin + 123, // 4: structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest.guildJoinBypassLevel:type_name -> structs.structs.guildJoinBypassLevel + 123, // 5: structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite.guildJoinBypassLevel:type_name -> structs.structs.guildJoinBypassLevel + 124, // 6: structs.structs.MsgGuildMembershipResponse.guildMembershipApplication:type_name -> structs.structs.GuildMembershipApplication + 125, // 7: structs.structs.MsgPlanetExploreResponse.planet:type_name -> structs.structs.Planet + 121, // 8: structs.structs.MsgPlanetRaidCompleteResponse.fleet:type_name -> structs.structs.Fleet + 125, // 9: structs.structs.MsgPlanetRaidCompleteResponse.planet:type_name -> structs.structs.Planet + 122, // 10: structs.structs.MsgReactorInfuse.amount:type_name -> cosmos.base.v1beta1.Coin + 122, // 11: structs.structs.MsgReactorBeginMigration.amount:type_name -> cosmos.base.v1beta1.Coin + 126, // 12: structs.structs.MsgReactorBeginMigrationResponse.completion_time:type_name -> google.protobuf.Timestamp + 122, // 13: structs.structs.MsgReactorDefuse.amount:type_name -> cosmos.base.v1beta1.Coin + 126, // 14: structs.structs.MsgReactorDefuseResponse.completion_time:type_name -> google.protobuf.Timestamp + 122, // 15: structs.structs.MsgReactorDefuseResponse.amount:type_name -> cosmos.base.v1beta1.Coin + 122, // 16: structs.structs.MsgReactorCancelDefusion.amount:type_name -> cosmos.base.v1beta1.Coin + 127, // 17: structs.structs.MsgStructStatusResponse.struct:type_name -> structs.structs.Struct + 128, // 18: structs.structs.MsgStructBuildInitiate.operatingAmbit:type_name -> structs.structs.ambit + 128, // 19: structs.structs.MsgStructBuildCompleteAndStash.storageAmbit:type_name -> structs.structs.ambit + 129, // 20: structs.structs.MsgStructMove.locationType:type_name -> structs.structs.objectType + 128, // 21: structs.structs.MsgStructMove.ambit:type_name -> structs.structs.ambit + 127, // 22: structs.structs.MsgStructOreMinerStatusResponse.struct:type_name -> structs.structs.Struct + 127, // 23: structs.structs.MsgStructOreRefineryStatusResponse.struct:type_name -> structs.structs.Struct + 128, // 24: structs.structs.MsgStructStorageStash.ambit:type_name -> structs.structs.ambit + 128, // 25: structs.structs.MsgStructStorageRecall.ambit:type_name -> structs.structs.ambit + 122, // 26: structs.structs.MsgProviderCreate.rate:type_name -> cosmos.base.v1beta1.Coin + 130, // 27: structs.structs.MsgProviderCreate.accessPolicy:type_name -> structs.structs.providerAccessPolicy + 130, // 28: structs.structs.MsgProviderUpdateAccessPolicy.accessPolicy:type_name -> structs.structs.providerAccessPolicy + 0, // 29: structs.structs.Msg.UpdateParams:input_type -> structs.structs.MsgUpdateParams + 2, // 30: structs.structs.Msg.AddressRegister:input_type -> structs.structs.MsgAddressRegister + 4, // 31: structs.structs.Msg.AddressRevoke:input_type -> structs.structs.MsgAddressRevoke + 102, // 32: structs.structs.Msg.AgreementOpen:input_type -> structs.structs.MsgAgreementOpen + 103, // 33: structs.structs.Msg.AgreementClose:input_type -> structs.structs.MsgAgreementClose + 104, // 34: structs.structs.Msg.AgreementCapacityIncrease:input_type -> structs.structs.MsgAgreementCapacityIncrease + 105, // 35: structs.structs.Msg.AgreementCapacityDecrease:input_type -> structs.structs.MsgAgreementCapacityDecrease + 106, // 36: structs.structs.Msg.AgreementDurationIncrease:input_type -> structs.structs.MsgAgreementDurationIncrease + 6, // 37: structs.structs.Msg.AllocationCreate:input_type -> structs.structs.MsgAllocationCreate + 8, // 38: structs.structs.Msg.AllocationDelete:input_type -> structs.structs.MsgAllocationDelete + 10, // 39: structs.structs.Msg.AllocationUpdate:input_type -> structs.structs.MsgAllocationUpdate + 12, // 40: structs.structs.Msg.AllocationTransfer:input_type -> structs.structs.MsgAllocationTransfer + 14, // 41: structs.structs.Msg.FleetMove:input_type -> structs.structs.MsgFleetMove + 22, // 42: structs.structs.Msg.GuildCreate:input_type -> structs.structs.MsgGuildCreate + 16, // 43: structs.structs.Msg.GuildBankMint:input_type -> structs.structs.MsgGuildBankMint + 18, // 44: structs.structs.Msg.GuildBankRedeem:input_type -> structs.structs.MsgGuildBankRedeem + 20, // 45: structs.structs.Msg.GuildBankConfiscateAndBurn:input_type -> structs.structs.MsgGuildBankConfiscateAndBurn + 24, // 46: structs.structs.Msg.GuildUpdateOwnerId:input_type -> structs.structs.MsgGuildUpdateOwnerId + 25, // 47: structs.structs.Msg.GuildUpdateEntrySubstationId:input_type -> structs.structs.MsgGuildUpdateEntrySubstationId + 26, // 48: structs.structs.Msg.GuildUpdateEndpoint:input_type -> structs.structs.MsgGuildUpdateEndpoint + 27, // 49: structs.structs.Msg.GuildUpdateJoinInfusionMinimum:input_type -> structs.structs.MsgGuildUpdateJoinInfusionMinimum + 29, // 50: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByInvite:input_type -> structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite + 28, // 51: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByRequest:input_type -> structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest + 31, // 52: structs.structs.Msg.GuildMembershipInvite:input_type -> structs.structs.MsgGuildMembershipInvite + 32, // 53: structs.structs.Msg.GuildMembershipInviteApprove:input_type -> structs.structs.MsgGuildMembershipInviteApprove + 33, // 54: structs.structs.Msg.GuildMembershipInviteDeny:input_type -> structs.structs.MsgGuildMembershipInviteDeny + 34, // 55: structs.structs.Msg.GuildMembershipInviteRevoke:input_type -> structs.structs.MsgGuildMembershipInviteRevoke + 35, // 56: structs.structs.Msg.GuildMembershipJoin:input_type -> structs.structs.MsgGuildMembershipJoin + 36, // 57: structs.structs.Msg.GuildMembershipJoinProxy:input_type -> structs.structs.MsgGuildMembershipJoinProxy + 37, // 58: structs.structs.Msg.GuildMembershipKick:input_type -> structs.structs.MsgGuildMembershipKick + 38, // 59: structs.structs.Msg.GuildMembershipRequest:input_type -> structs.structs.MsgGuildMembershipRequest + 39, // 60: structs.structs.Msg.GuildMembershipRequestApprove:input_type -> structs.structs.MsgGuildMembershipRequestApprove + 40, // 61: structs.structs.Msg.GuildMembershipRequestDeny:input_type -> structs.structs.MsgGuildMembershipRequestDeny + 41, // 62: structs.structs.Msg.GuildMembershipRequestRevoke:input_type -> structs.structs.MsgGuildMembershipRequestRevoke + 44, // 63: structs.structs.Msg.PermissionGrantOnAddress:input_type -> structs.structs.MsgPermissionGrantOnAddress + 43, // 64: structs.structs.Msg.PermissionGrantOnObject:input_type -> structs.structs.MsgPermissionGrantOnObject + 46, // 65: structs.structs.Msg.PermissionRevokeOnAddress:input_type -> structs.structs.MsgPermissionRevokeOnAddress + 45, // 66: structs.structs.Msg.PermissionRevokeOnObject:input_type -> structs.structs.MsgPermissionRevokeOnObject + 48, // 67: structs.structs.Msg.PermissionSetOnAddress:input_type -> structs.structs.MsgPermissionSetOnAddress + 47, // 68: structs.structs.Msg.PermissionSetOnObject:input_type -> structs.structs.MsgPermissionSetOnObject + 50, // 69: structs.structs.Msg.PlanetExplore:input_type -> structs.structs.MsgPlanetExplore + 52, // 70: structs.structs.Msg.PlanetRaidComplete:input_type -> structs.structs.MsgPlanetRaidComplete + 54, // 71: structs.structs.Msg.PlayerUpdatePrimaryAddress:input_type -> structs.structs.MsgPlayerUpdatePrimaryAddress + 56, // 72: structs.structs.Msg.PlayerResume:input_type -> structs.structs.MsgPlayerResume + 108, // 73: structs.structs.Msg.ProviderCreate:input_type -> structs.structs.MsgProviderCreate + 109, // 74: structs.structs.Msg.ProviderWithdrawBalance:input_type -> structs.structs.MsgProviderWithdrawBalance + 110, // 75: structs.structs.Msg.ProviderUpdateCapacityMinimum:input_type -> structs.structs.MsgProviderUpdateCapacityMinimum + 111, // 76: structs.structs.Msg.ProviderUpdateCapacityMaximum:input_type -> structs.structs.MsgProviderUpdateCapacityMaximum + 112, // 77: structs.structs.Msg.ProviderUpdateDurationMinimum:input_type -> structs.structs.MsgProviderUpdateDurationMinimum + 113, // 78: structs.structs.Msg.ProviderUpdateDurationMaximum:input_type -> structs.structs.MsgProviderUpdateDurationMaximum + 114, // 79: structs.structs.Msg.ProviderUpdateAccessPolicy:input_type -> structs.structs.MsgProviderUpdateAccessPolicy + 115, // 80: structs.structs.Msg.ProviderGuildGrant:input_type -> structs.structs.MsgProviderGuildGrant + 116, // 81: structs.structs.Msg.ProviderGuildRevoke:input_type -> structs.structs.MsgProviderGuildRevoke + 117, // 82: structs.structs.Msg.ProviderDelete:input_type -> structs.structs.MsgProviderDelete + 58, // 83: structs.structs.Msg.ReactorInfuse:input_type -> structs.structs.MsgReactorInfuse + 62, // 84: structs.structs.Msg.ReactorDefuse:input_type -> structs.structs.MsgReactorDefuse + 60, // 85: structs.structs.Msg.ReactorBeginMigration:input_type -> structs.structs.MsgReactorBeginMigration + 64, // 86: structs.structs.Msg.ReactorCancelDefusion:input_type -> structs.structs.MsgReactorCancelDefusion + 67, // 87: structs.structs.Msg.StructActivate:input_type -> structs.structs.MsgStructActivate + 68, // 88: structs.structs.Msg.StructDeactivate:input_type -> structs.structs.MsgStructDeactivate + 69, // 89: structs.structs.Msg.StructBuildInitiate:input_type -> structs.structs.MsgStructBuildInitiate + 70, // 90: structs.structs.Msg.StructBuildComplete:input_type -> structs.structs.MsgStructBuildComplete + 71, // 91: structs.structs.Msg.StructBuildCancel:input_type -> structs.structs.MsgStructBuildCancel + 73, // 92: structs.structs.Msg.StructDefenseSet:input_type -> structs.structs.MsgStructDefenseSet + 74, // 93: structs.structs.Msg.StructDefenseClear:input_type -> structs.structs.MsgStructDefenseClear + 75, // 94: structs.structs.Msg.StructMove:input_type -> structs.structs.MsgStructMove + 76, // 95: structs.structs.Msg.StructAttack:input_type -> structs.structs.MsgStructAttack + 78, // 96: structs.structs.Msg.StructStealthActivate:input_type -> structs.structs.MsgStructStealthActivate + 79, // 97: structs.structs.Msg.StructStealthDeactivate:input_type -> structs.structs.MsgStructStealthDeactivate + 80, // 98: structs.structs.Msg.StructGeneratorInfuse:input_type -> structs.structs.MsgStructGeneratorInfuse + 82, // 99: structs.structs.Msg.StructOreMinerComplete:input_type -> structs.structs.MsgStructOreMinerComplete + 84, // 100: structs.structs.Msg.StructOreRefineryComplete:input_type -> structs.structs.MsgStructOreRefineryComplete + 88, // 101: structs.structs.Msg.SubstationCreate:input_type -> structs.structs.MsgSubstationCreate + 90, // 102: structs.structs.Msg.SubstationDelete:input_type -> structs.structs.MsgSubstationDelete + 92, // 103: structs.structs.Msg.SubstationAllocationConnect:input_type -> structs.structs.MsgSubstationAllocationConnect + 94, // 104: structs.structs.Msg.SubstationAllocationDisconnect:input_type -> structs.structs.MsgSubstationAllocationDisconnect + 96, // 105: structs.structs.Msg.SubstationPlayerConnect:input_type -> structs.structs.MsgSubstationPlayerConnect + 98, // 106: structs.structs.Msg.SubstationPlayerDisconnect:input_type -> structs.structs.MsgSubstationPlayerDisconnect + 100, // 107: structs.structs.Msg.SubstationPlayerMigrate:input_type -> structs.structs.MsgSubstationPlayerMigrate + 1, // 108: structs.structs.Msg.UpdateParams:output_type -> structs.structs.MsgUpdateParamsResponse + 3, // 109: structs.structs.Msg.AddressRegister:output_type -> structs.structs.MsgAddressRegisterResponse + 5, // 110: structs.structs.Msg.AddressRevoke:output_type -> structs.structs.MsgAddressRevokeResponse + 107, // 111: structs.structs.Msg.AgreementOpen:output_type -> structs.structs.MsgAgreementResponse + 107, // 112: structs.structs.Msg.AgreementClose:output_type -> structs.structs.MsgAgreementResponse + 107, // 113: structs.structs.Msg.AgreementCapacityIncrease:output_type -> structs.structs.MsgAgreementResponse + 107, // 114: structs.structs.Msg.AgreementCapacityDecrease:output_type -> structs.structs.MsgAgreementResponse + 107, // 115: structs.structs.Msg.AgreementDurationIncrease:output_type -> structs.structs.MsgAgreementResponse + 7, // 116: structs.structs.Msg.AllocationCreate:output_type -> structs.structs.MsgAllocationCreateResponse + 9, // 117: structs.structs.Msg.AllocationDelete:output_type -> structs.structs.MsgAllocationDeleteResponse + 11, // 118: structs.structs.Msg.AllocationUpdate:output_type -> structs.structs.MsgAllocationUpdateResponse + 13, // 119: structs.structs.Msg.AllocationTransfer:output_type -> structs.structs.MsgAllocationTransferResponse + 15, // 120: structs.structs.Msg.FleetMove:output_type -> structs.structs.MsgFleetMoveResponse + 23, // 121: structs.structs.Msg.GuildCreate:output_type -> structs.structs.MsgGuildCreateResponse + 17, // 122: structs.structs.Msg.GuildBankMint:output_type -> structs.structs.MsgGuildBankMintResponse + 19, // 123: structs.structs.Msg.GuildBankRedeem:output_type -> structs.structs.MsgGuildBankRedeemResponse + 21, // 124: structs.structs.Msg.GuildBankConfiscateAndBurn:output_type -> structs.structs.MsgGuildBankConfiscateAndBurnResponse + 30, // 125: structs.structs.Msg.GuildUpdateOwnerId:output_type -> structs.structs.MsgGuildUpdateResponse + 30, // 126: structs.structs.Msg.GuildUpdateEntrySubstationId:output_type -> structs.structs.MsgGuildUpdateResponse + 30, // 127: structs.structs.Msg.GuildUpdateEndpoint:output_type -> structs.structs.MsgGuildUpdateResponse + 30, // 128: structs.structs.Msg.GuildUpdateJoinInfusionMinimum:output_type -> structs.structs.MsgGuildUpdateResponse + 30, // 129: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByInvite:output_type -> structs.structs.MsgGuildUpdateResponse + 30, // 130: structs.structs.Msg.GuildUpdateJoinInfusionMinimumBypassByRequest:output_type -> structs.structs.MsgGuildUpdateResponse + 42, // 131: structs.structs.Msg.GuildMembershipInvite:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 132: structs.structs.Msg.GuildMembershipInviteApprove:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 133: structs.structs.Msg.GuildMembershipInviteDeny:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 134: structs.structs.Msg.GuildMembershipInviteRevoke:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 135: structs.structs.Msg.GuildMembershipJoin:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 136: structs.structs.Msg.GuildMembershipJoinProxy:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 137: structs.structs.Msg.GuildMembershipKick:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 138: structs.structs.Msg.GuildMembershipRequest:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 139: structs.structs.Msg.GuildMembershipRequestApprove:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 140: structs.structs.Msg.GuildMembershipRequestDeny:output_type -> structs.structs.MsgGuildMembershipResponse + 42, // 141: structs.structs.Msg.GuildMembershipRequestRevoke:output_type -> structs.structs.MsgGuildMembershipResponse + 49, // 142: structs.structs.Msg.PermissionGrantOnAddress:output_type -> structs.structs.MsgPermissionResponse + 49, // 143: structs.structs.Msg.PermissionGrantOnObject:output_type -> structs.structs.MsgPermissionResponse + 49, // 144: structs.structs.Msg.PermissionRevokeOnAddress:output_type -> structs.structs.MsgPermissionResponse + 49, // 145: structs.structs.Msg.PermissionRevokeOnObject:output_type -> structs.structs.MsgPermissionResponse + 49, // 146: structs.structs.Msg.PermissionSetOnAddress:output_type -> structs.structs.MsgPermissionResponse + 49, // 147: structs.structs.Msg.PermissionSetOnObject:output_type -> structs.structs.MsgPermissionResponse + 51, // 148: structs.structs.Msg.PlanetExplore:output_type -> structs.structs.MsgPlanetExploreResponse + 53, // 149: structs.structs.Msg.PlanetRaidComplete:output_type -> structs.structs.MsgPlanetRaidCompleteResponse + 55, // 150: structs.structs.Msg.PlayerUpdatePrimaryAddress:output_type -> structs.structs.MsgPlayerUpdatePrimaryAddressResponse + 57, // 151: structs.structs.Msg.PlayerResume:output_type -> structs.structs.MsgPlayerResumeResponse + 118, // 152: structs.structs.Msg.ProviderCreate:output_type -> structs.structs.MsgProviderResponse + 118, // 153: structs.structs.Msg.ProviderWithdrawBalance:output_type -> structs.structs.MsgProviderResponse + 118, // 154: structs.structs.Msg.ProviderUpdateCapacityMinimum:output_type -> structs.structs.MsgProviderResponse + 118, // 155: structs.structs.Msg.ProviderUpdateCapacityMaximum:output_type -> structs.structs.MsgProviderResponse + 118, // 156: structs.structs.Msg.ProviderUpdateDurationMinimum:output_type -> structs.structs.MsgProviderResponse + 118, // 157: structs.structs.Msg.ProviderUpdateDurationMaximum:output_type -> structs.structs.MsgProviderResponse + 118, // 158: structs.structs.Msg.ProviderUpdateAccessPolicy:output_type -> structs.structs.MsgProviderResponse + 118, // 159: structs.structs.Msg.ProviderGuildGrant:output_type -> structs.structs.MsgProviderResponse + 118, // 160: structs.structs.Msg.ProviderGuildRevoke:output_type -> structs.structs.MsgProviderResponse + 118, // 161: structs.structs.Msg.ProviderDelete:output_type -> structs.structs.MsgProviderResponse + 59, // 162: structs.structs.Msg.ReactorInfuse:output_type -> structs.structs.MsgReactorInfuseResponse + 63, // 163: structs.structs.Msg.ReactorDefuse:output_type -> structs.structs.MsgReactorDefuseResponse + 61, // 164: structs.structs.Msg.ReactorBeginMigration:output_type -> structs.structs.MsgReactorBeginMigrationResponse + 65, // 165: structs.structs.Msg.ReactorCancelDefusion:output_type -> structs.structs.MsgReactorCancelDefusionResponse + 66, // 166: structs.structs.Msg.StructActivate:output_type -> structs.structs.MsgStructStatusResponse + 66, // 167: structs.structs.Msg.StructDeactivate:output_type -> structs.structs.MsgStructStatusResponse + 66, // 168: structs.structs.Msg.StructBuildInitiate:output_type -> structs.structs.MsgStructStatusResponse + 66, // 169: structs.structs.Msg.StructBuildComplete:output_type -> structs.structs.MsgStructStatusResponse + 66, // 170: structs.structs.Msg.StructBuildCancel:output_type -> structs.structs.MsgStructStatusResponse + 66, // 171: structs.structs.Msg.StructDefenseSet:output_type -> structs.structs.MsgStructStatusResponse + 66, // 172: structs.structs.Msg.StructDefenseClear:output_type -> structs.structs.MsgStructStatusResponse + 66, // 173: structs.structs.Msg.StructMove:output_type -> structs.structs.MsgStructStatusResponse + 77, // 174: structs.structs.Msg.StructAttack:output_type -> structs.structs.MsgStructAttackResponse + 66, // 175: structs.structs.Msg.StructStealthActivate:output_type -> structs.structs.MsgStructStatusResponse + 66, // 176: structs.structs.Msg.StructStealthDeactivate:output_type -> structs.structs.MsgStructStatusResponse + 81, // 177: structs.structs.Msg.StructGeneratorInfuse:output_type -> structs.structs.MsgStructGeneratorStatusResponse + 83, // 178: structs.structs.Msg.StructOreMinerComplete:output_type -> structs.structs.MsgStructOreMinerStatusResponse + 85, // 179: structs.structs.Msg.StructOreRefineryComplete:output_type -> structs.structs.MsgStructOreRefineryStatusResponse + 89, // 180: structs.structs.Msg.SubstationCreate:output_type -> structs.structs.MsgSubstationCreateResponse + 91, // 181: structs.structs.Msg.SubstationDelete:output_type -> structs.structs.MsgSubstationDeleteResponse + 93, // 182: structs.structs.Msg.SubstationAllocationConnect:output_type -> structs.structs.MsgSubstationAllocationConnectResponse + 95, // 183: structs.structs.Msg.SubstationAllocationDisconnect:output_type -> structs.structs.MsgSubstationAllocationDisconnectResponse + 97, // 184: structs.structs.Msg.SubstationPlayerConnect:output_type -> structs.structs.MsgSubstationPlayerConnectResponse + 99, // 185: structs.structs.Msg.SubstationPlayerDisconnect:output_type -> structs.structs.MsgSubstationPlayerDisconnectResponse + 101, // 186: structs.structs.Msg.SubstationPlayerMigrate:output_type -> structs.structs.MsgSubstationPlayerMigrateResponse + 108, // [108:187] is the sub-list for method output_type + 29, // [29:108] is the sub-list for method input_type + 29, // [29:29] is the sub-list for extension type_name + 29, // [29:29] is the sub-list for extension extendee + 0, // [0:29] is the sub-list for field type_name } func init() { file_structs_structs_tx_proto_init() } @@ -64529,7 +69377,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructStatusResponse); i { + switch v := v.(*MsgReactorInfuse); i { case 0: return &v.state case 1: @@ -64541,7 +69389,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructActivate); i { + switch v := v.(*MsgReactorInfuseResponse); i { case 0: return &v.state case 1: @@ -64553,7 +69401,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructDeactivate); i { + switch v := v.(*MsgReactorBeginMigration); i { case 0: return &v.state case 1: @@ -64565,7 +69413,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructBuildInitiate); i { + switch v := v.(*MsgReactorBeginMigrationResponse); i { case 0: return &v.state case 1: @@ -64577,7 +69425,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructBuildComplete); i { + switch v := v.(*MsgReactorDefuse); i { case 0: return &v.state case 1: @@ -64589,7 +69437,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructBuildCancel); i { + switch v := v.(*MsgReactorDefuseResponse); i { case 0: return &v.state case 1: @@ -64601,7 +69449,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructBuildCompleteAndStash); i { + switch v := v.(*MsgReactorCancelDefusion); i { case 0: return &v.state case 1: @@ -64613,7 +69461,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructDefenseSet); i { + switch v := v.(*MsgReactorCancelDefusionResponse); i { case 0: return &v.state case 1: @@ -64625,7 +69473,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructDefenseClear); i { + switch v := v.(*MsgStructStatusResponse); i { case 0: return &v.state case 1: @@ -64637,7 +69485,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructMove); i { + switch v := v.(*MsgStructActivate); i { case 0: return &v.state case 1: @@ -64649,7 +69497,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructAttack); i { + switch v := v.(*MsgStructDeactivate); i { case 0: return &v.state case 1: @@ -64661,7 +69509,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructAttackResponse); i { + switch v := v.(*MsgStructBuildInitiate); i { case 0: return &v.state case 1: @@ -64673,7 +69521,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructStealthActivate); i { + switch v := v.(*MsgStructBuildComplete); i { case 0: return &v.state case 1: @@ -64685,7 +69533,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructStealthDeactivate); i { + switch v := v.(*MsgStructBuildCancel); i { case 0: return &v.state case 1: @@ -64697,7 +69545,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructGeneratorInfuse); i { + switch v := v.(*MsgStructBuildCompleteAndStash); i { case 0: return &v.state case 1: @@ -64709,7 +69557,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructGeneratorStatusResponse); i { + switch v := v.(*MsgStructDefenseSet); i { case 0: return &v.state case 1: @@ -64721,7 +69569,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructOreMinerComplete); i { + switch v := v.(*MsgStructDefenseClear); i { case 0: return &v.state case 1: @@ -64733,7 +69581,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructOreMinerStatusResponse); i { + switch v := v.(*MsgStructMove); i { case 0: return &v.state case 1: @@ -64745,7 +69593,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructOreRefineryComplete); i { + switch v := v.(*MsgStructAttack); i { case 0: return &v.state case 1: @@ -64757,7 +69605,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructOreRefineryStatusResponse); i { + switch v := v.(*MsgStructAttackResponse); i { case 0: return &v.state case 1: @@ -64769,7 +69617,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructStorageStash); i { + switch v := v.(*MsgStructStealthActivate); i { case 0: return &v.state case 1: @@ -64781,7 +69629,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgStructStorageRecall); i { + switch v := v.(*MsgStructStealthDeactivate); i { case 0: return &v.state case 1: @@ -64793,7 +69641,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationCreate); i { + switch v := v.(*MsgStructGeneratorInfuse); i { case 0: return &v.state case 1: @@ -64805,7 +69653,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationCreateResponse); i { + switch v := v.(*MsgStructGeneratorStatusResponse); i { case 0: return &v.state case 1: @@ -64817,7 +69665,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationDelete); i { + switch v := v.(*MsgStructOreMinerComplete); i { case 0: return &v.state case 1: @@ -64829,7 +69677,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationDeleteResponse); i { + switch v := v.(*MsgStructOreMinerStatusResponse); i { case 0: return &v.state case 1: @@ -64841,7 +69689,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationAllocationConnect); i { + switch v := v.(*MsgStructOreRefineryComplete); i { case 0: return &v.state case 1: @@ -64853,7 +69701,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationAllocationConnectResponse); i { + switch v := v.(*MsgStructOreRefineryStatusResponse); i { case 0: return &v.state case 1: @@ -64865,7 +69713,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationAllocationDisconnect); i { + switch v := v.(*MsgStructStorageStash); i { case 0: return &v.state case 1: @@ -64877,7 +69725,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationAllocationDisconnectResponse); i { + switch v := v.(*MsgStructStorageRecall); i { case 0: return &v.state case 1: @@ -64889,7 +69737,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationPlayerConnect); i { + switch v := v.(*MsgSubstationCreate); i { case 0: return &v.state case 1: @@ -64901,7 +69749,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationPlayerConnectResponse); i { + switch v := v.(*MsgSubstationCreateResponse); i { case 0: return &v.state case 1: @@ -64913,7 +69761,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationPlayerDisconnect); i { + switch v := v.(*MsgSubstationDelete); i { case 0: return &v.state case 1: @@ -64925,7 +69773,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationPlayerDisconnectResponse); i { + switch v := v.(*MsgSubstationDeleteResponse); i { case 0: return &v.state case 1: @@ -64937,7 +69785,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationPlayerMigrate); i { + switch v := v.(*MsgSubstationAllocationConnect); i { case 0: return &v.state case 1: @@ -64949,7 +69797,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgSubstationPlayerMigrateResponse); i { + switch v := v.(*MsgSubstationAllocationConnectResponse); i { case 0: return &v.state case 1: @@ -64961,7 +69809,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAgreementOpen); i { + switch v := v.(*MsgSubstationAllocationDisconnect); i { case 0: return &v.state case 1: @@ -64973,7 +69821,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAgreementClose); i { + switch v := v.(*MsgSubstationAllocationDisconnectResponse); i { case 0: return &v.state case 1: @@ -64985,7 +69833,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAgreementCapacityIncrease); i { + switch v := v.(*MsgSubstationPlayerConnect); i { case 0: return &v.state case 1: @@ -64997,7 +69845,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAgreementCapacityDecrease); i { + switch v := v.(*MsgSubstationPlayerConnectResponse); i { case 0: return &v.state case 1: @@ -65009,7 +69857,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAgreementDurationIncrease); i { + switch v := v.(*MsgSubstationPlayerDisconnect); i { case 0: return &v.state case 1: @@ -65021,7 +69869,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgAgreementResponse); i { + switch v := v.(*MsgSubstationPlayerDisconnectResponse); i { case 0: return &v.state case 1: @@ -65033,7 +69881,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderCreate); i { + switch v := v.(*MsgSubstationPlayerMigrate); i { case 0: return &v.state case 1: @@ -65045,7 +69893,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderWithdrawBalance); i { + switch v := v.(*MsgSubstationPlayerMigrateResponse); i { case 0: return &v.state case 1: @@ -65057,7 +69905,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderUpdateCapacityMinimum); i { + switch v := v.(*MsgAgreementOpen); i { case 0: return &v.state case 1: @@ -65069,7 +69917,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderUpdateCapacityMaximum); i { + switch v := v.(*MsgAgreementClose); i { case 0: return &v.state case 1: @@ -65081,7 +69929,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderUpdateDurationMinimum); i { + switch v := v.(*MsgAgreementCapacityIncrease); i { case 0: return &v.state case 1: @@ -65093,7 +69941,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderUpdateDurationMaximum); i { + switch v := v.(*MsgAgreementCapacityDecrease); i { case 0: return &v.state case 1: @@ -65105,7 +69953,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderUpdateAccessPolicy); i { + switch v := v.(*MsgAgreementDurationIncrease); i { case 0: return &v.state case 1: @@ -65117,7 +69965,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderGuildGrant); i { + switch v := v.(*MsgAgreementResponse); i { case 0: return &v.state case 1: @@ -65129,7 +69977,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderGuildRevoke); i { + switch v := v.(*MsgProviderCreate); i { case 0: return &v.state case 1: @@ -65141,7 +69989,7 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgProviderDelete); i { + switch v := v.(*MsgProviderWithdrawBalance); i { case 0: return &v.state case 1: @@ -65153,6 +70001,102 @@ func file_structs_structs_tx_proto_init() { } } file_structs_structs_tx_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderUpdateCapacityMinimum); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderUpdateCapacityMaximum); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderUpdateDurationMinimum); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderUpdateDurationMaximum); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderUpdateAccessPolicy); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderGuildGrant); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderGuildRevoke); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgProviderDelete); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_structs_structs_tx_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgProviderResponse); i { case 0: return &v.state @@ -65171,7 +70115,7 @@ func file_structs_structs_tx_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_structs_structs_tx_proto_rawDesc, NumEnums: 0, - NumMessages: 111, + NumMessages: 119, NumExtensions: 0, NumServices: 1, }, diff --git a/api/structs/structs/tx_grpc.pb.go b/api/structs/structs/tx_grpc.pb.go index c91c5fb..330b5a6 100644 --- a/api/structs/structs/tx_grpc.pb.go +++ b/api/structs/structs/tx_grpc.pb.go @@ -73,6 +73,10 @@ const ( Msg_ProviderGuildGrant_FullMethodName = "/structs.structs.Msg/ProviderGuildGrant" Msg_ProviderGuildRevoke_FullMethodName = "/structs.structs.Msg/ProviderGuildRevoke" Msg_ProviderDelete_FullMethodName = "/structs.structs.Msg/ProviderDelete" + Msg_ReactorInfuse_FullMethodName = "/structs.structs.Msg/ReactorInfuse" + Msg_ReactorDefuse_FullMethodName = "/structs.structs.Msg/ReactorDefuse" + Msg_ReactorBeginMigration_FullMethodName = "/structs.structs.Msg/ReactorBeginMigration" + Msg_ReactorCancelDefusion_FullMethodName = "/structs.structs.Msg/ReactorCancelDefusion" Msg_StructActivate_FullMethodName = "/structs.structs.Msg/StructActivate" Msg_StructDeactivate_FullMethodName = "/structs.structs.Msg/StructDeactivate" Msg_StructBuildInitiate_FullMethodName = "/structs.structs.Msg/StructBuildInitiate" @@ -156,6 +160,10 @@ type MsgClient interface { ProviderGuildGrant(ctx context.Context, in *MsgProviderGuildGrant, opts ...grpc.CallOption) (*MsgProviderResponse, error) ProviderGuildRevoke(ctx context.Context, in *MsgProviderGuildRevoke, opts ...grpc.CallOption) (*MsgProviderResponse, error) ProviderDelete(ctx context.Context, in *MsgProviderDelete, opts ...grpc.CallOption) (*MsgProviderResponse, error) + ReactorInfuse(ctx context.Context, in *MsgReactorInfuse, opts ...grpc.CallOption) (*MsgReactorInfuseResponse, error) + ReactorDefuse(ctx context.Context, in *MsgReactorDefuse, opts ...grpc.CallOption) (*MsgReactorDefuseResponse, error) + ReactorBeginMigration(ctx context.Context, in *MsgReactorBeginMigration, opts ...grpc.CallOption) (*MsgReactorBeginMigrationResponse, error) + ReactorCancelDefusion(ctx context.Context, in *MsgReactorCancelDefusion, opts ...grpc.CallOption) (*MsgReactorCancelDefusionResponse, error) StructActivate(ctx context.Context, in *MsgStructActivate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) StructDeactivate(ctx context.Context, in *MsgStructDeactivate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) StructBuildInitiate(ctx context.Context, in *MsgStructBuildInitiate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) @@ -673,6 +681,42 @@ func (c *msgClient) ProviderDelete(ctx context.Context, in *MsgProviderDelete, o return out, nil } +func (c *msgClient) ReactorInfuse(ctx context.Context, in *MsgReactorInfuse, opts ...grpc.CallOption) (*MsgReactorInfuseResponse, error) { + out := new(MsgReactorInfuseResponse) + err := c.cc.Invoke(ctx, Msg_ReactorInfuse_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *msgClient) ReactorDefuse(ctx context.Context, in *MsgReactorDefuse, opts ...grpc.CallOption) (*MsgReactorDefuseResponse, error) { + out := new(MsgReactorDefuseResponse) + err := c.cc.Invoke(ctx, Msg_ReactorDefuse_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *msgClient) ReactorBeginMigration(ctx context.Context, in *MsgReactorBeginMigration, opts ...grpc.CallOption) (*MsgReactorBeginMigrationResponse, error) { + out := new(MsgReactorBeginMigrationResponse) + err := c.cc.Invoke(ctx, Msg_ReactorBeginMigration_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *msgClient) ReactorCancelDefusion(ctx context.Context, in *MsgReactorCancelDefusion, opts ...grpc.CallOption) (*MsgReactorCancelDefusionResponse, error) { + out := new(MsgReactorCancelDefusionResponse) + err := c.cc.Invoke(ctx, Msg_ReactorCancelDefusion_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *msgClient) StructActivate(ctx context.Context, in *MsgStructActivate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) { out := new(MsgStructStatusResponse) err := c.cc.Invoke(ctx, Msg_StructActivate_FullMethodName, in, out, opts...) @@ -922,6 +966,10 @@ type MsgServer interface { ProviderGuildGrant(context.Context, *MsgProviderGuildGrant) (*MsgProviderResponse, error) ProviderGuildRevoke(context.Context, *MsgProviderGuildRevoke) (*MsgProviderResponse, error) ProviderDelete(context.Context, *MsgProviderDelete) (*MsgProviderResponse, error) + ReactorInfuse(context.Context, *MsgReactorInfuse) (*MsgReactorInfuseResponse, error) + ReactorDefuse(context.Context, *MsgReactorDefuse) (*MsgReactorDefuseResponse, error) + ReactorBeginMigration(context.Context, *MsgReactorBeginMigration) (*MsgReactorBeginMigrationResponse, error) + ReactorCancelDefusion(context.Context, *MsgReactorCancelDefusion) (*MsgReactorCancelDefusionResponse, error) StructActivate(context.Context, *MsgStructActivate) (*MsgStructStatusResponse, error) StructDeactivate(context.Context, *MsgStructDeactivate) (*MsgStructStatusResponse, error) StructBuildInitiate(context.Context, *MsgStructBuildInitiate) (*MsgStructStatusResponse, error) @@ -1112,6 +1160,18 @@ func (UnimplementedMsgServer) ProviderGuildRevoke(context.Context, *MsgProviderG func (UnimplementedMsgServer) ProviderDelete(context.Context, *MsgProviderDelete) (*MsgProviderResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProviderDelete not implemented") } +func (UnimplementedMsgServer) ReactorInfuse(context.Context, *MsgReactorInfuse) (*MsgReactorInfuseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorInfuse not implemented") +} +func (UnimplementedMsgServer) ReactorDefuse(context.Context, *MsgReactorDefuse) (*MsgReactorDefuseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorDefuse not implemented") +} +func (UnimplementedMsgServer) ReactorBeginMigration(context.Context, *MsgReactorBeginMigration) (*MsgReactorBeginMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorBeginMigration not implemented") +} +func (UnimplementedMsgServer) ReactorCancelDefusion(context.Context, *MsgReactorCancelDefusion) (*MsgReactorCancelDefusionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorCancelDefusion not implemented") +} func (UnimplementedMsgServer) StructActivate(context.Context, *MsgStructActivate) (*MsgStructStatusResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method StructActivate not implemented") } @@ -2160,6 +2220,78 @@ func _Msg_ProviderDelete_Handler(srv interface{}, ctx context.Context, dec func( return interceptor(ctx, in, info, handler) } +func _Msg_ReactorInfuse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorInfuse) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorInfuse(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Msg_ReactorInfuse_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorInfuse(ctx, req.(*MsgReactorInfuse)) + } + return interceptor(ctx, in, info, handler) +} + +func _Msg_ReactorDefuse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorDefuse) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorDefuse(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Msg_ReactorDefuse_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorDefuse(ctx, req.(*MsgReactorDefuse)) + } + return interceptor(ctx, in, info, handler) +} + +func _Msg_ReactorBeginMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorBeginMigration) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorBeginMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Msg_ReactorBeginMigration_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorBeginMigration(ctx, req.(*MsgReactorBeginMigration)) + } + return interceptor(ctx, in, info, handler) +} + +func _Msg_ReactorCancelDefusion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorCancelDefusion) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorCancelDefusion(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Msg_ReactorCancelDefusion_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorCancelDefusion(ctx, req.(*MsgReactorCancelDefusion)) + } + return interceptor(ctx, in, info, handler) +} + func _Msg_StructActivate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgStructActivate) if err := dec(in); err != nil { @@ -2761,6 +2893,22 @@ var Msg_ServiceDesc = grpc.ServiceDesc{ MethodName: "ProviderDelete", Handler: _Msg_ProviderDelete_Handler, }, + { + MethodName: "ReactorInfuse", + Handler: _Msg_ReactorInfuse_Handler, + }, + { + MethodName: "ReactorDefuse", + Handler: _Msg_ReactorDefuse_Handler, + }, + { + MethodName: "ReactorBeginMigration", + Handler: _Msg_ReactorBeginMigration_Handler, + }, + { + MethodName: "ReactorCancelDefusion", + Handler: _Msg_ReactorCancelDefusion_Handler, + }, { MethodName: "StructActivate", Handler: _Msg_StructActivate_Handler, diff --git a/docs/static/openapi.yml b/docs/static/openapi.yml index 616b4b0..376cceb 100644 --- a/docs/static/openapi.yml +++ b/docs/static/openapi.yml @@ -1,43428 +1 @@ -swagger: '2.0' -info: - title: HTTP API Console - name: '' - description: '' -paths: - /cosmos.auth.v1beta1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a (governance) operation for updating the x/auth - module - - parameters. The authority defaults to the x/gov module account. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosAuthV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/auth parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - max_memo_characters: - type: string - format: uint64 - tx_sig_limit: - type: string - format: uint64 - tx_size_cost_per_byte: - type: string - format: uint64 - sig_verify_cost_ed25519: - type: string - format: uint64 - sig_verify_cost_secp256k1: - type: string - format: uint64 - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.authz.v1beta1.Msg/Exec: - post: - summary: |- - Exec attempts to execute the provided messages using - authorizations granted to the grantee. Each message should have only - one signer corresponding to the granter of the authorization. - operationId: CosmosAuthzV1Beta1Msg_Exec - responses: - '200': - description: A successful response. - schema: - type: object - properties: - results: - type: array - items: - type: string - format: byte - description: MsgExecResponse defines the Msg/MsgExecResponse response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgExec attempts to execute the provided messages using - authorizations granted to the grantee. Each message should have only - one signer corresponding to the granter of the authorization. - in: body - required: true - schema: - type: object - properties: - grantee: - type: string - msgs: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - description: >- - Execute Msg. - - The x/authz will try to find a grant matching (msg.signers[0], - grantee, MsgTypeURL(msg)) - - triple and validate it. - description: >- - MsgExec attempts to execute the provided messages using - - authorizations granted to the grantee. Each message should have - only - - one signer corresponding to the granter of the authorization. - tags: - - Msg - /cosmos.authz.v1beta1.Msg/Grant: - post: - summary: |- - Grant grants the provided authorization to the grantee on the granter's - account with the provided expiration time. If there is already a grant - for the given (granter, grantee, Authorization) triple, then the grant - will be overwritten. - operationId: CosmosAuthzV1Beta1Msg_Grant - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgGrantResponse defines the Msg/MsgGrant response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgGrant is a request type for Grant method. It declares - authorization to the grantee - - on behalf of the granter with the provided expiration time. - in: body - required: true - schema: - type: object - properties: - granter: - type: string - grantee: - type: string - grant: - type: object - properties: - authorization: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type - of the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be - in a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can - optionally set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results - based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no - widely used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty - scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any - values in the form - - of utility functions or additional generated methods of - the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and - the unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will - yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a - custom JSON - - representation, that representation will be embedded - adding a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - expiration: - type: string - format: date-time - title: >- - time when the grant will expire and will be pruned. If - null, then the grant - - doesn't have a time expiration (other conditions in - `authorization` - - may apply to invalidate the grant) - description: |- - Grant gives permissions to execute - the provide method with expiration time. - description: >- - MsgGrant is a request type for Grant method. It declares - authorization to the grantee - - on behalf of the granter with the provided expiration time. - tags: - - Msg - /cosmos.authz.v1beta1.Msg/Revoke: - post: - summary: >- - Revoke revokes any authorization corresponding to the provided method - name on the - - granter's account that has been granted to the grantee. - operationId: CosmosAuthzV1Beta1Msg_Revoke - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgRevokeResponse defines the Msg/MsgRevokeResponse response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgRevoke revokes any authorization with the provided sdk.Msg type - on the - - granter's account with that has been granted to the grantee. - in: body - required: true - schema: - type: object - properties: - granter: - type: string - grantee: - type: string - msg_type_url: - type: string - description: >- - MsgRevoke revokes any authorization with the provided sdk.Msg type - on the - - granter's account with that has been granted to the grantee. - tags: - - Msg - /cosmos.bank.v1beta1.Msg/MultiSend: - post: - summary: >- - MultiSend defines a method for sending coins from some accounts to other - accounts. - operationId: CosmosBankV1Beta1Msg_MultiSend - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgMultiSendResponse defines the Msg/MultiSend response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgMultiSend represents an arbitrary multi-in, multi-out send - message. - in: body - required: true - schema: - type: object - properties: - inputs: - type: array - items: - type: object - properties: - address: - type: string - coins: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an - amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - description: Input models transaction input. - description: >- - Inputs, despite being `repeated`, only allows one sender - input. This is - - checked in MsgMultiSend's ValidateBasic. - outputs: - type: array - items: - type: object - properties: - address: - type: string - coins: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an - amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - description: Output models transaction outputs. - description: >- - MsgMultiSend represents an arbitrary multi-in, multi-out send - message. - tags: - - Msg - /cosmos.bank.v1beta1.Msg/Send: - post: - summary: >- - Send defines a method for sending coins from one account to another - account. - operationId: CosmosBankV1Beta1Msg_Send - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgSendResponse defines the Msg/Send response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgSend represents a message to send coins from one account to - another. - in: body - required: true - schema: - type: object - properties: - from_address: - type: string - to_address: - type: string - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - MsgSend represents a message to send coins from one account to - another. - tags: - - Msg - /cosmos.bank.v1beta1.Msg/SetSendEnabled: - post: - summary: >- - SetSendEnabled is a governance operation for setting the SendEnabled - flag - - on any number of Denoms. Only the entries to add or update should be - - included. Entries that already exist in the store, but that aren't - - included in this message, will be left unchanged. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosBankV1Beta1Msg_SetSendEnabled - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgSetSendEnabledResponse defines the Msg/SetSendEnabled response - type. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgSetSendEnabled is the Msg/SetSendEnabled request type. - - Only entries to add/update/delete need to be included. - Existing SendEnabled entries that are not included in this - message are left unchanged. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: authority is the address that controls the module. - send_enabled: - type: array - items: - type: object - properties: - denom: - type: string - enabled: - type: boolean - description: >- - SendEnabled maps coin denom to a send_enabled status - (whether a denom is - - sendable). - description: send_enabled is the list of entries to add or update. - use_default_for: - type: array - items: - type: string - description: >- - use_default_for is a list of denoms that should use the - params.default_send_enabled value. - - Denoms listed here will have their SendEnabled entries - deleted. - - If a denom is included that doesn't have a SendEnabled entry, - - it will be ignored. - description: |- - MsgSetSendEnabled is the Msg/SetSendEnabled request type. - - Only entries to add/update/delete need to be included. - Existing SendEnabled entries that are not included in this - message are left unchanged. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.bank.v1beta1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the x/bank - module parameters. - - The authority is defined in the keeper. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosBankV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/bank parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - send_enabled: - type: array - items: - type: object - properties: - denom: - type: string - enabled: - type: boolean - description: >- - SendEnabled maps coin denom to a send_enabled status - (whether a denom is - - sendable). - description: >- - Deprecated: Use of SendEnabled in params is deprecated. - - For genesis, use the newly added send_enabled field in the - genesis object. - - Storage, lookup, and manipulation of this information is - now in the keeper. - - - As of cosmos-sdk 0.47, this only exists for backwards - compatibility of genesis files. - default_send_enabled: - type: boolean - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos/base/node/v1beta1/config: - get: - summary: Config queries for the operator configuration. - operationId: CosmosBaseNodeV1Beta1Service_Config - responses: - '200': - description: A successful response. - schema: - type: object - properties: - minimum_gas_price: - type: string - pruning_keep_recent: - type: string - pruning_interval: - type: string - halt_height: - type: string - format: uint64 - description: >- - ConfigResponse defines the response structure for the Config gRPC - query. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - tags: - - Service - /cosmos/base/node/v1beta1/status: - get: - summary: Status queries for the node status. - operationId: CosmosBaseNodeV1Beta1Service_Status - responses: - '200': - description: A successful response. - schema: - type: object - properties: - earliest_store_height: - type: string - format: uint64 - title: earliest block height available in the store - height: - type: string - format: uint64 - title: current block height - timestamp: - type: string - format: date-time - title: block height timestamp - app_hash: - type: string - format: byte - title: app hash of the current block - validator_hash: - type: string - format: byte - title: validator hash provided by the consensus header - description: >- - StateResponse defines the response structure for the status of a - node. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - tags: - - Service - /cosmos.consensus.v1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the x/consensus - module parameters. - - The authority is defined in the keeper. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosConsensusV1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: MsgUpdateParams is the Msg/UpdateParams request type. - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - block: - description: >- - params defines the x/consensus parameters to update. - - VersionsParams is not included in this Msg because it is - tracked - - separarately in x/upgrade. - - - NOTE: All parameters must be supplied. - type: object - properties: - max_bytes: - type: string - format: int64 - title: |- - Max block size, in bytes. - Note: must be greater than 0 - max_gas: - type: string - format: int64 - title: |- - Max gas per block. - Note: must be greater or equal to -1 - evidence: - type: object - properties: - max_age_num_blocks: - type: string - format: int64 - description: >- - Max age of evidence, in blocks. - - - The basic formula for calculating this is: MaxAgeDuration - / {average block - - time}. - max_age_duration: - type: string - description: >- - Max age of evidence, in time. - - - It should correspond with an app's "unbonding period" or - other similar - - mechanism for handling [Nothing-At-Stake - - attacks](https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ#what-is-the-nothing-at-stake-problem-and-how-can-it-be-fixed). - max_bytes: - type: string - format: int64 - title: >- - This sets the maximum size of total evidence in bytes that - can be committed in a single block. - - and should fall comfortably under the max block bytes. - - Default is 1048576 or 1MB - description: >- - EvidenceParams determine how we handle evidence of - malfeasance. - validator: - type: object - properties: - pub_key_types: - type: array - items: - type: string - description: >- - ValidatorParams restrict the public key types validators can - use. - - NOTE: uses ABCI pubkey naming, not Amino names. - abci: - title: 'Since: cosmos-sdk 0.50' - type: object - properties: - vote_extensions_enable_height: - type: string - format: int64 - description: >- - vote_extensions_enable_height configures the first height - during which - - vote extensions will be enabled. During this specified - height, and for all - - subsequent heights, precommit messages that do not contain - valid extension data - - will be considered invalid. Prior to this height, vote - extensions will not - - be used or accepted by validators on the network. - - - Once enabled, vote extensions will be created by the - application in ExtendVote, - - passed to the application for validation in - VerifyVoteExtension and given - - to the application to use when proposing a block during - PrepareProposal. - description: >- - ABCIParams configure functionality specific to the Application - Blockchain Interface. - description: MsgUpdateParams is the Msg/UpdateParams request type. - tags: - - Msg - /cosmos.crisis.v1beta1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the x/crisis - module - - parameters. The authority is defined in the keeper. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosCrisisV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - constant_fee: - description: constant_fee defines the x/crisis parameter. - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.crisis.v1beta1.Msg/VerifyInvariant: - post: - summary: VerifyInvariant defines a method to verify a particular invariant. - operationId: CosmosCrisisV1Beta1Msg_VerifyInvariant - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgVerifyInvariantResponse defines the Msg/VerifyInvariant - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgVerifyInvariant represents a message to verify a particular - invariance. - in: body - required: true - schema: - type: object - properties: - sender: - type: string - description: >- - sender is the account address of private key to send coins to - fee collector account. - invariant_module_name: - type: string - description: name of the invariant module. - invariant_route: - type: string - description: invariant_route is the msg's invariant route. - description: >- - MsgVerifyInvariant represents a message to verify a particular - invariance. - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/CommunityPoolSpend: - post: - summary: >- - CommunityPoolSpend defines a governance operation for sending tokens - from - - the community pool in the x/distribution module to another account, - which - - could be the governance module itself. The authority is defined in the - - keeper. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosDistributionV1Beta1Msg_CommunityPoolSpend - responses: - '200': - description: A successful response. - schema: - type: object - description: |- - MsgCommunityPoolSpendResponse defines the response to executing a - MsgCommunityPoolSpend message. - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgCommunityPoolSpend defines a message for sending tokens from the - community - - pool to another account. This message is typically executed via a - governance - - proposal with the governance module being the executing authority. - - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - recipient: - type: string - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - MsgCommunityPoolSpend defines a message for sending tokens from - the community - - pool to another account. This message is typically executed via a - governance - - proposal with the governance module being the executing authority. - - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/DepositValidatorRewardsPool: - post: - summary: >- - DepositValidatorRewardsPool defines a method to provide additional - rewards - - to delegators to a specific validator. - description: 'Since: cosmos-sdk 0.50' - operationId: CosmosDistributionV1Beta1Msg_DepositValidatorRewardsPool - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgDepositValidatorRewardsPoolResponse defines the response to - executing a - - MsgDepositValidatorRewardsPool message. - - - Since: cosmos-sdk 0.50 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - DepositValidatorRewardsPool defines the request structure to provide - additional rewards to delegators from a specific validator. - - Since: cosmos-sdk 0.50 - in: body - required: true - schema: - type: object - properties: - depositor: - type: string - validator_address: - type: string - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - DepositValidatorRewardsPool defines the request structure to - provide - - additional rewards to delegators from a specific validator. - - - Since: cosmos-sdk 0.50 - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/FundCommunityPool: - post: - summary: |- - FundCommunityPool defines a method to allow an account to directly - fund the community pool. - operationId: CosmosDistributionV1Beta1Msg_FundCommunityPool - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgFundCommunityPoolResponse defines the Msg/FundCommunityPool - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgFundCommunityPool allows an account to directly - fund the community pool. - in: body - required: true - schema: - type: object - properties: - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - depositor: - type: string - description: |- - MsgFundCommunityPool allows an account to directly - fund the community pool. - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/SetWithdrawAddress: - post: - summary: |- - SetWithdrawAddress defines a method to change the withdraw address - for a delegator (or validator self-delegation). - operationId: CosmosDistributionV1Beta1Msg_SetWithdrawAddress - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgSetWithdrawAddressResponse defines the Msg/SetWithdrawAddress - response - - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgSetWithdrawAddress sets the withdraw address for - a delegator (or validator self-delegation). - in: body - required: true - schema: - type: object - properties: - delegator_address: - type: string - withdraw_address: - type: string - description: |- - MsgSetWithdrawAddress sets the withdraw address for - a delegator (or validator self-delegation). - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the - x/distribution - - module parameters. The authority is defined in the keeper. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosDistributionV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/distribution parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - community_tax: - type: string - base_proposer_reward: - type: string - description: >- - Deprecated: The base_proposer_reward field is deprecated - and is no longer used - - in the x/distribution module's reward mechanism. - bonus_proposer_reward: - type: string - description: >- - Deprecated: The bonus_proposer_reward field is deprecated - and is no longer used - - in the x/distribution module's reward mechanism. - withdraw_addr_enabled: - type: boolean - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/WithdrawDelegatorReward: - post: - summary: >- - WithdrawDelegatorReward defines a method to withdraw rewards of - delegator - - from a single validator. - operationId: CosmosDistributionV1Beta1Msg_WithdrawDelegatorReward - responses: - '200': - description: A successful response. - schema: - type: object - properties: - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: 'Since: cosmos-sdk 0.46' - description: >- - MsgWithdrawDelegatorRewardResponse defines the - Msg/WithdrawDelegatorReward - - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgWithdrawDelegatorReward represents delegation withdrawal to a - delegator - - from a single validator. - in: body - required: true - schema: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - description: >- - MsgWithdrawDelegatorReward represents delegation withdrawal to a - delegator - - from a single validator. - tags: - - Msg - /cosmos.distribution.v1beta1.Msg/WithdrawValidatorCommission: - post: - summary: |- - WithdrawValidatorCommission defines a method to withdraw the - full commission to the validator address. - operationId: CosmosDistributionV1Beta1Msg_WithdrawValidatorCommission - responses: - '200': - description: A successful response. - schema: - type: object - properties: - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: 'Since: cosmos-sdk 0.46' - description: |- - MsgWithdrawValidatorCommissionResponse defines the - Msg/WithdrawValidatorCommission response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgWithdrawValidatorCommission withdraws the full commission to the - validator - - address. - in: body - required: true - schema: - type: object - properties: - validator_address: - type: string - description: >- - MsgWithdrawValidatorCommission withdraws the full commission to - the validator - - address. - tags: - - Msg - /cosmos.evidence.v1beta1.Msg/SubmitEvidence: - post: - summary: >- - SubmitEvidence submits an arbitrary Evidence of misbehavior such as - equivocation or - - counterfactual signing. - operationId: CosmosEvidenceV1Beta1Msg_SubmitEvidence - responses: - '200': - description: A successful response. - schema: - type: object - properties: - hash: - type: string - format: byte - description: hash defines the hash of the evidence. - description: >- - MsgSubmitEvidenceResponse defines the Msg/SubmitEvidence response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgSubmitEvidence represents a message that supports submitting - arbitrary - - Evidence of misbehavior such as equivocation or counterfactual - signing. - in: body - required: true - schema: - type: object - properties: - submitter: - type: string - description: submitter is the signer account address of evidence. - evidence: - description: evidence defines the evidence of misbehavior. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - MsgSubmitEvidence represents a message that supports submitting - arbitrary - - Evidence of misbehavior such as equivocation or counterfactual - signing. - tags: - - Msg - /cosmos.feegrant.v1beta1.Msg/GrantAllowance: - post: - summary: |- - GrantAllowance grants fee allowance to the grantee on the granter's - account with the provided expiration time. - operationId: CosmosFeegrantV1Beta1Msg_GrantAllowance - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgGrantAllowanceResponse defines the Msg/GrantAllowanceResponse - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgGrantAllowance adds permission for Grantee to spend up to - Allowance - - of fees from the account of Granter. - in: body - required: true - schema: - type: object - properties: - granter: - type: string - description: >- - granter is the address of the user granting an allowance of - their funds. - grantee: - type: string - description: >- - grantee is the address of the user being granted an allowance - of another user's funds. - allowance: - description: >- - allowance can be any of basic, periodic, allowed fee - allowance. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - MsgGrantAllowance adds permission for Grantee to spend up to - Allowance - - of fees from the account of Granter. - tags: - - Msg - /cosmos.feegrant.v1beta1.Msg/PruneAllowances: - post: - summary: >- - PruneAllowances prunes expired fee allowances, currently up to 75 at a - time. - description: Since cosmos-sdk 0.50 - operationId: CosmosFeegrantV1Beta1Msg_PruneAllowances - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgPruneAllowancesResponse defines the Msg/PruneAllowancesResponse - response type. - - - Since cosmos-sdk 0.50 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgPruneAllowances prunes expired fee allowances. - - Since cosmos-sdk 0.50 - in: body - required: true - schema: - type: object - properties: - pruner: - type: string - description: pruner is the address of the user pruning expired allowances. - description: |- - MsgPruneAllowances prunes expired fee allowances. - - Since cosmos-sdk 0.50 - tags: - - Msg - /cosmos.feegrant.v1beta1.Msg/RevokeAllowance: - post: - summary: |- - RevokeAllowance revokes any fee allowance of granter's account that - has been granted to the grantee. - operationId: CosmosFeegrantV1Beta1Msg_RevokeAllowance - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgRevokeAllowanceResponse defines the Msg/RevokeAllowanceResponse - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgRevokeAllowance removes any existing Allowance from Granter to - Grantee. - in: body - required: true - schema: - type: object - properties: - granter: - type: string - description: >- - granter is the address of the user granting an allowance of - their funds. - grantee: - type: string - description: >- - grantee is the address of the user being granted an allowance - of another user's funds. - description: >- - MsgRevokeAllowance removes any existing Allowance from Granter to - Grantee. - tags: - - Msg - /cosmos.gov.v1.Msg/CancelProposal: - post: - summary: CancelProposal defines a method to cancel governance proposal - description: 'Since: cosmos-sdk 0.50' - operationId: CosmosGovV1Msg_CancelProposal - responses: - '200': - description: A successful response. - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - canceled_time: - type: string - format: date-time - description: canceled_time is the time when proposal is canceled. - canceled_height: - type: string - format: uint64 - description: >- - canceled_height defines the block height at which the proposal - is canceled. - description: >- - MsgCancelProposalResponse defines the response structure for - executing a - - MsgCancelProposal message. - - - Since: cosmos-sdk 0.50 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgCancelProposal is the Msg/CancelProposal request type. - - Since: cosmos-sdk 0.50 - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - proposer: - type: string - description: proposer is the account address of the proposer. - description: |- - MsgCancelProposal is the Msg/CancelProposal request type. - - Since: cosmos-sdk 0.50 - tags: - - Msg - /cosmos.gov.v1.Msg/Deposit: - post: - summary: Deposit defines a method to add deposit on a specific proposal. - operationId: CosmosGovV1Msg_Deposit - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgDepositResponse defines the Msg/Deposit response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgDeposit defines a message to submit a deposit to an existing - proposal. - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - depositor: - type: string - description: depositor defines the deposit addresses from the proposals. - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: amount to be deposited by depositor. - description: >- - MsgDeposit defines a message to submit a deposit to an existing - proposal. - tags: - - Msg - /cosmos.gov.v1.Msg/ExecLegacyContent: - post: - summary: |- - ExecLegacyContent defines a Msg to be in included in a MsgSubmitProposal - to execute a legacy content-based proposal. - operationId: CosmosGovV1Msg_ExecLegacyContent - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgExecLegacyContentResponse defines the Msg/ExecLegacyContent - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgExecLegacyContent is used to wrap the legacy content field into a - message. - - This ensures backwards compatibility with v1beta1.MsgSubmitProposal. - in: body - required: true - schema: - type: object - properties: - content: - description: content is the proposal's content. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - authority: - type: string - description: authority must be the gov module address. - description: >- - MsgExecLegacyContent is used to wrap the legacy content field into - a message. - - This ensures backwards compatibility with - v1beta1.MsgSubmitProposal. - tags: - - Msg - /cosmos.gov.v1.Msg/SubmitProposal: - post: - summary: >- - SubmitProposal defines a method to create new proposal given the - messages. - operationId: CosmosGovV1Msg_SubmitProposal - responses: - '200': - description: A successful response. - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - description: >- - MsgSubmitProposalResponse defines the Msg/SubmitProposal response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgSubmitProposal defines an sdk.Msg type that supports submitting - arbitrary - - proposal Content. - in: body - required: true - schema: - type: object - properties: - messages: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - description: >- - messages are the arbitrary messages to be executed if proposal - passes. - initial_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - initial_deposit is the deposit value that must be paid at - proposal submission. - proposer: - type: string - description: proposer is the account address of the proposer. - metadata: - type: string - description: metadata is any arbitrary metadata attached to the proposal. - title: - type: string - description: |- - title is the title of the proposal. - - Since: cosmos-sdk 0.47 - summary: - type: string - description: 'Since: cosmos-sdk 0.47' - title: summary is the summary of the proposal - expedited: - type: boolean - description: 'Since: cosmos-sdk 0.50' - title: expedited defines if the proposal is expedited or not - description: >- - MsgSubmitProposal defines an sdk.Msg type that supports submitting - arbitrary - - proposal Content. - tags: - - Msg - /cosmos.gov.v1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the x/gov - module - - parameters. The authority is defined in the keeper. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosGovV1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/gov parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - min_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - description: Minimum deposit for a proposal to enter voting period. - max_deposit_period: - type: string - description: >- - Maximum period for Atom holders to deposit on a proposal. - Initial value: 2 - - months. - voting_period: - type: string - description: Duration of the voting period. - quorum: - type: string - description: >- - Minimum percentage of total stake needed to vote for a - result to be - considered valid. - threshold: - type: string - description: >- - Minimum proportion of Yes votes for proposal to pass. - Default value: 0.5. - veto_threshold: - type: string - description: >- - Minimum value of Veto votes to Total votes ratio for - proposal to be - vetoed. Default value: 1/3. - min_initial_deposit_ratio: - type: string - description: >- - The ratio representing the proportion of the deposit value - that must be paid at proposal submission. - proposal_cancel_ratio: - type: string - description: >- - The cancel ratio which will not be returned back to the - depositors when a proposal is cancelled. - - - Since: cosmos-sdk 0.50 - proposal_cancel_dest: - type: string - description: >- - The address which will receive (proposal_cancel_ratio * - deposit) proposal deposits. - - If empty, the (proposal_cancel_ratio * deposit) proposal - deposits will be burned. - - - Since: cosmos-sdk 0.50 - expedited_voting_period: - type: string - description: |- - Duration of the voting period of an expedited proposal. - - Since: cosmos-sdk 0.50 - expedited_threshold: - type: string - description: >- - Minimum proportion of Yes votes for proposal to pass. - Default value: 0.67. - - - Since: cosmos-sdk 0.50 - expedited_min_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - description: >- - Minimum expedited deposit for a proposal to enter voting - period. - burn_vote_quorum: - type: boolean - title: burn deposits if a proposal does not meet quorum - burn_proposal_deposit_prevote: - type: boolean - title: burn deposits if the proposal does not enter voting period - burn_vote_veto: - type: boolean - title: burn deposits if quorum with vote type no_veto is met - min_deposit_ratio: - type: string - description: >- - The ratio representing the proportion of the deposit value - minimum that must be met when making a deposit. - - Default value: 0.01. Meaning that for a chain with a - min_deposit of 100stake, a deposit of 1stake would be - - required. - - - Since: cosmos-sdk 0.50 - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.gov.v1.Msg/Vote: - post: - summary: Vote defines a method to add a vote on a specific proposal. - operationId: CosmosGovV1Msg_Vote - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgVoteResponse defines the Msg/Vote response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: MsgVote defines a message to cast a vote. - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - option: - description: option defines the vote option. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - metadata: - type: string - description: metadata is any arbitrary metadata attached to the Vote. - description: MsgVote defines a message to cast a vote. - tags: - - Msg - /cosmos.gov.v1.Msg/VoteWeighted: - post: - summary: >- - VoteWeighted defines a method to add a weighted vote on a specific - proposal. - operationId: CosmosGovV1Msg_VoteWeighted - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgVoteWeightedResponse defines the Msg/VoteWeighted response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: MsgVoteWeighted defines a message to cast a vote. - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - options: - type: array - items: - type: object - properties: - option: - description: >- - option defines the valid vote options, it must not - contain duplicate vote options. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - weight: - type: string - description: >- - weight is the vote weight associated with the vote - option. - description: WeightedVoteOption defines a unit of vote for vote split. - description: options defines the weighted vote options. - metadata: - type: string - description: >- - metadata is any arbitrary metadata attached to the - VoteWeighted. - description: MsgVoteWeighted defines a message to cast a vote. - tags: - - Msg - /cosmos.gov.v1beta1.Msg/Deposit: - post: - summary: Deposit defines a method to add deposit on a specific proposal. - operationId: CosmosGovV1Beta1Msg_Deposit - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgDepositResponse defines the Msg/Deposit response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgDeposit defines a message to submit a deposit to an existing - proposal. - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - depositor: - type: string - description: depositor defines the deposit addresses from the proposals. - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: amount to be deposited by depositor. - description: >- - MsgDeposit defines a message to submit a deposit to an existing - proposal. - tags: - - Msg - /cosmos.gov.v1beta1.Msg/SubmitProposal: - post: - summary: SubmitProposal defines a method to create new proposal given a content. - operationId: CosmosGovV1Beta1Msg_SubmitProposal - responses: - '200': - description: A successful response. - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - description: >- - MsgSubmitProposalResponse defines the Msg/SubmitProposal response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgSubmitProposal defines an sdk.Msg type that supports submitting - arbitrary - - proposal Content. - in: body - required: true - schema: - type: object - properties: - content: - description: content is the proposal's content. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - initial_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - initial_deposit is the deposit value that must be paid at - proposal submission. - proposer: - type: string - description: proposer is the account address of the proposer. - description: >- - MsgSubmitProposal defines an sdk.Msg type that supports submitting - arbitrary - - proposal Content. - tags: - - Msg - /cosmos.gov.v1beta1.Msg/Vote: - post: - summary: Vote defines a method to add a vote on a specific proposal. - operationId: CosmosGovV1Beta1Msg_Vote - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgVoteResponse defines the Msg/Vote response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: MsgVote defines a message to cast a vote. - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - option: - description: option defines the vote option. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - description: MsgVote defines a message to cast a vote. - tags: - - Msg - /cosmos.gov.v1beta1.Msg/VoteWeighted: - post: - summary: >- - VoteWeighted defines a method to add a weighted vote on a specific - proposal. - description: 'Since: cosmos-sdk 0.43' - operationId: CosmosGovV1Beta1Msg_VoteWeighted - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgVoteWeightedResponse defines the Msg/VoteWeighted response - type. - - - Since: cosmos-sdk 0.43 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgVoteWeighted defines a message to cast a vote. - - Since: cosmos-sdk 0.43 - in: body - required: true - schema: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - options: - type: array - items: - type: object - properties: - option: - description: >- - option defines the valid vote options, it must not - contain duplicate vote options. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - weight: - type: string - description: >- - weight is the vote weight associated with the vote - option. - description: |- - WeightedVoteOption defines a unit of vote for vote split. - - Since: cosmos-sdk 0.43 - description: options defines the weighted vote options. - description: |- - MsgVoteWeighted defines a message to cast a vote. - - Since: cosmos-sdk 0.43 - tags: - - Msg - /cosmos.mint.v1beta1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the x/mint - module - - parameters. The authority is defaults to the x/gov module account. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosMintV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/mint parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - mint_denom: - type: string - title: type of coin to mint - inflation_rate_change: - type: string - title: maximum annual change in inflation rate - inflation_max: - type: string - title: maximum inflation rate - inflation_min: - type: string - title: minimum inflation rate - goal_bonded: - type: string - title: goal of percent bonded atoms - blocks_per_year: - type: string - format: uint64 - title: expected blocks per year - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.nft.v1beta1.Msg/Send: - post: - summary: Send defines a method to send a nft from one account to another account. - operationId: CosmosNftV1Beta1Msg_Send - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgSendResponse defines the Msg/Send response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: >- - MsgSend represents a message to send a nft from one account to - another account. - in: body - required: true - schema: - type: object - properties: - class_id: - type: string - title: >- - class_id defines the unique identifier of the nft - classification, similar to the contract address of ERC721 - id: - type: string - title: id defines the unique identification of nft - sender: - type: string - title: sender is the address of the owner of nft - receiver: - type: string - title: receiver is the receiver address of nft - description: >- - MsgSend represents a message to send a nft from one account to - another account. - tags: - - Msg - /cosmos/params/v1beta1/params: - get: - summary: |- - Params queries a specific parameter of a module, given its subspace and - key. - operationId: CosmosParamsV1Beta1Query_Params - responses: - '200': - description: A successful response. - schema: - type: object - properties: - param: - description: param defines the queried parameter. - type: object - properties: - subspace: - type: string - key: - type: string - value: - type: string - description: >- - QueryParamsResponse is response type for the Query/Params RPC - method. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: subspace - description: subspace defines the module to query the parameter for. - in: query - required: false - type: string - - name: key - description: key defines the key of the parameter in the subspace. - in: query - required: false - type: string - tags: - - Query - /cosmos/params/v1beta1/subspaces: - get: - summary: >- - Subspaces queries for all registered subspaces and all keys for a - subspace. - description: 'Since: cosmos-sdk 0.46' - operationId: CosmosParamsV1Beta1Query_Subspaces - responses: - '200': - description: A successful response. - schema: - type: object - properties: - subspaces: - type: array - items: - type: object - properties: - subspace: - type: string - keys: - type: array - items: - type: string - description: >- - Subspace defines a parameter subspace name and all the keys - that exist for - - the subspace. - - - Since: cosmos-sdk 0.46 - description: >- - QuerySubspacesResponse defines the response types for querying for - all - - registered subspaces and all keys for a subspace. - - - Since: cosmos-sdk 0.46 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - tags: - - Query - /cosmos.slashing.v1beta1.Msg/Unjail: - post: - summary: >- - Unjail defines a method for unjailing a jailed validator, thus returning - - them into the bonded validator set, so they can begin receiving - provisions - - and rewards again. - operationId: CosmosSlashingV1Beta1Msg_Unjail - responses: - '200': - description: A successful response. - schema: - type: object - title: MsgUnjailResponse defines the Msg/Unjail response type - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - validator_addr: - type: string - title: MsgUnjail defines the Msg/Unjail request type - tags: - - Msg - /cosmos.slashing.v1beta1.Msg/UpdateParams: - post: - summary: >- - UpdateParams defines a governance operation for updating the x/slashing - module - - parameters. The authority defaults to the x/gov module account. - description: 'Since: cosmos-sdk 0.47' - operationId: CosmosSlashingV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/slashing parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - signed_blocks_window: - type: string - format: int64 - min_signed_per_window: - type: string - format: byte - downtime_jail_duration: - type: string - slash_fraction_double_sign: - type: string - format: byte - slash_fraction_downtime: - type: string - format: byte - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /cosmos.staking.v1beta1.Msg/BeginRedelegate: - post: - summary: >- - BeginRedelegate defines a method for performing a redelegation - - of coins from a delegator and source validator to a destination - validator. - operationId: CosmosStakingV1Beta1Msg_BeginRedelegate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - completion_time: - type: string - format: date-time - description: >- - MsgBeginRedelegateResponse defines the Msg/BeginRedelegate - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgBeginRedelegate defines a SDK message for performing a - redelegation - - of coins from a delegator and source validator to a destination - validator. - in: body - required: true - schema: - type: object - properties: - delegator_address: - type: string - validator_src_address: - type: string - validator_dst_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - MsgBeginRedelegate defines a SDK message for performing a - redelegation - - of coins from a delegator and source validator to a destination - validator. - tags: - - Msg - /cosmos.staking.v1beta1.Msg/CancelUnbondingDelegation: - post: - summary: >- - CancelUnbondingDelegation defines a method for performing canceling the - unbonding delegation - - and delegate back to previous validator. - description: 'Since: cosmos-sdk 0.46' - operationId: CosmosStakingV1Beta1Msg_CancelUnbondingDelegation - responses: - '200': - description: A successful response. - schema: - type: object - description: 'Since: cosmos-sdk 0.46' - title: MsgCancelUnbondingDelegationResponse - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: 'Since: cosmos-sdk 0.46' - in: body - required: true - schema: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: >- - amount is always less than or equal to unbonding delegation - entry balance - creation_height: - type: string - format: int64 - description: creation_height is the height which the unbonding took place. - description: 'Since: cosmos-sdk 0.46' - title: >- - MsgCancelUnbondingDelegation defines the SDK message for - performing a cancel unbonding delegation for delegator - tags: - - Msg - /cosmos.staking.v1beta1.Msg/CreateValidator: - post: - summary: CreateValidator defines a method for creating a new validator. - operationId: CosmosStakingV1Beta1Msg_CreateValidator - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgCreateValidatorResponse defines the Msg/CreateValidator - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgCreateValidator defines a SDK message for creating a new - validator. - in: body - required: true - schema: - type: object - properties: - description: - type: object - properties: - moniker: - type: string - description: moniker defines a human-readable name for the validator. - identity: - type: string - description: >- - identity defines an optional identity signature (ex. UPort - or Keybase). - website: - type: string - description: website defines an optional website link. - security_contact: - type: string - description: >- - security_contact defines an optional email for security - contact. - details: - type: string - description: details define other optional details. - description: Description defines a validator description. - commission: - type: object - properties: - rate: - type: string - description: >- - rate is the commission rate charged to delegators, as a - fraction. - max_rate: - type: string - description: >- - max_rate defines the maximum commission rate which - validator can ever charge, as a fraction. - max_change_rate: - type: string - description: >- - max_change_rate defines the maximum daily increase of the - validator commission, as a fraction. - description: >- - CommissionRates defines the initial commission rates to be - used for creating - - a validator. - min_self_delegation: - type: string - delegator_address: - type: string - description: >- - Deprecated: Use of Delegator Address in MsgCreateValidator is - deprecated. - - The validator address bytes and delegator address bytes refer - to the same account while creating validator (defer - - only in bech32 notation). - validator_address: - type: string - pubkey: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - value: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - MsgCreateValidator defines a SDK message for creating a new - validator. - tags: - - Msg - /cosmos.staking.v1beta1.Msg/Delegate: - post: - summary: |- - Delegate defines a method for performing a delegation of coins - from a delegator to a validator. - operationId: CosmosStakingV1Beta1Msg_Delegate - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgDelegateResponse defines the Msg/Delegate response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgDelegate defines a SDK message for performing a delegation of - coins - - from a delegator to a validator. - in: body - required: true - schema: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - MsgDelegate defines a SDK message for performing a delegation of - coins - - from a delegator to a validator. - tags: - - Msg - /cosmos.staking.v1beta1.Msg/EditValidator: - post: - summary: EditValidator defines a method for editing an existing validator. - operationId: CosmosStakingV1Beta1Msg_EditValidator - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgEditValidatorResponse defines the Msg/EditValidator response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgEditValidator defines a SDK message for editing an existing - validator. - in: body - required: true - schema: - type: object - properties: - description: - type: object - properties: - moniker: - type: string - description: moniker defines a human-readable name for the validator. - identity: - type: string - description: >- - identity defines an optional identity signature (ex. UPort - or Keybase). - website: - type: string - description: website defines an optional website link. - security_contact: - type: string - description: >- - security_contact defines an optional email for security - contact. - details: - type: string - description: details define other optional details. - description: Description defines a validator description. - validator_address: - type: string - commission_rate: - type: string - title: >- - We pass a reference to the new commission rate and min self - delegation as - - it's not mandatory to update. If not updated, the deserialized - rate will be - - zero with no way to distinguish if an update was intended. - - REF: #2373 - min_self_delegation: - type: string - description: >- - MsgEditValidator defines a SDK message for editing an existing - validator. - tags: - - Msg - /cosmos.staking.v1beta1.Msg/Undelegate: - post: - summary: |- - Undelegate defines a method for performing an undelegation from a - delegate and a validator. - operationId: CosmosStakingV1Beta1Msg_Undelegate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - completion_time: - type: string - format: date-time - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: amount returns the amount of undelegated coins - description: MsgUndelegateResponse defines the Msg/Undelegate response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgUndelegate defines a SDK message for performing an undelegation - from a - - delegate and a validator. - in: body - required: true - schema: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: >- - MsgUndelegate defines a SDK message for performing an undelegation - from a - - delegate and a validator. - tags: - - Msg - /cosmos.staking.v1beta1.Msg/UpdateParams: - post: - summary: |- - UpdateParams defines an operation for updating the x/staking module - parameters. - Since: cosmos-sdk 0.47 - operationId: CosmosStakingV1Beta1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - - - Since: cosmos-sdk 0.47 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the x/staking parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - unbonding_time: - type: string - description: unbonding_time is the time duration of unbonding. - max_validators: - type: integer - format: int64 - description: max_validators is the maximum number of validators. - max_entries: - type: integer - format: int64 - description: >- - max_entries is the max entries for either unbonding - delegation or redelegation (per pair/trio). - historical_entries: - type: integer - format: int64 - description: >- - historical_entries is the number of historical entries to - persist. - bond_denom: - type: string - description: bond_denom defines the bondable coin denomination. - min_commission_rate: - type: string - title: >- - min_commission_rate is the chain-wide minimum commission - rate that a validator can charge their delegators - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - tags: - - Msg - /ibc.applications.fee.v1.Msg/PayPacketFee: - post: - summary: >- - PayPacketFee defines a rpc handler method for MsgPayPacketFee - - PayPacketFee is an open callback that may be called by any module/user - that wishes to escrow funds in order to - - incentivize the relaying of the packet at the next sequence - - NOTE: This method is intended to be used within a multi msg transaction, - where the subsequent msg that follows - - initiates the lifecycle of the incentivized packet - operationId: IbcApplicationsFeeV1Msg_PayPacketFee - responses: - '200': - description: A successful response. - schema: - type: object - title: >- - MsgPayPacketFeeResponse defines the response type for the - PayPacketFee rpc - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - fee: - title: >- - fee encapsulates the recv, ack and timeout fees associated - with an IBC packet - type: object - properties: - recv_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - title: the packet receive fee - ack_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - title: the packet acknowledgement fee - timeout_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - title: the packet timeout fee - source_port_id: - type: string - title: the source port unique identifier - source_channel_id: - type: string - title: the source channel unique identifer - signer: - type: string - title: account address to refund fee if necessary - relayers: - type: array - items: - type: string - title: optional list of relayers permitted to the receive packet fees - title: >- - MsgPayPacketFee defines the request type for the PayPacketFee rpc - - This Msg can be used to pay for a packet at the next sequence send - & should be combined with the Msg that will be - - paid for - tags: - - Msg - /ibc.applications.fee.v1.Msg/PayPacketFeeAsync: - post: - summary: >- - PayPacketFeeAsync defines a rpc handler method for MsgPayPacketFeeAsync - - PayPacketFeeAsync is an open callback that may be called by any - module/user that wishes to escrow funds in order to - - incentivize the relaying of a known packet (i.e. at a particular - sequence) - operationId: IbcApplicationsFeeV1Msg_PayPacketFeeAsync - responses: - '200': - description: A successful response. - schema: - type: object - title: >- - MsgPayPacketFeeAsyncResponse defines the response type for the - PayPacketFeeAsync rpc - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - packet_id: - title: >- - unique packet identifier comprised of the channel ID, port ID - and sequence - type: object - properties: - port_id: - type: string - title: channel port identifier - channel_id: - type: string - title: channel unique identifier - sequence: - type: string - format: uint64 - title: packet sequence - packet_fee: - title: the packet fee associated with a particular IBC packet - type: object - properties: - fee: - title: >- - fee encapsulates the recv, ack and timeout fees associated - with an IBC packet - type: object - properties: - recv_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an - amount. - - - NOTE: The amount field is an Int which implements - the custom method - - signatures required by gogoproto. - title: the packet receive fee - ack_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an - amount. - - - NOTE: The amount field is an Int which implements - the custom method - - signatures required by gogoproto. - title: the packet acknowledgement fee - timeout_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an - amount. - - - NOTE: The amount field is an Int which implements - the custom method - - signatures required by gogoproto. - title: the packet timeout fee - refund_address: - type: string - title: the refund address for unspent fees - relayers: - type: array - items: - type: string - title: optional list of relayers permitted to receive fees - title: >- - MsgPayPacketFeeAsync defines the request type for the - PayPacketFeeAsync rpc - - This Msg can be used to pay for a packet at a specified sequence - (instead of the next sequence send) - tags: - - Msg - /ibc.applications.fee.v1.Msg/RegisterCounterpartyPayee: - post: - summary: >- - RegisterCounterpartyPayee defines a rpc handler method for - MsgRegisterCounterpartyPayee - - RegisterCounterpartyPayee is called by the relayer on each channelEnd - and allows them to specify the counterparty - - payee address before relaying. This ensures they will be properly - compensated for forward relaying since - - the destination chain must include the registered counterparty payee - address in the acknowledgement. This function - - may be called more than once by a relayer, in which case, the latest - counterparty payee address is always used. - operationId: IbcApplicationsFeeV1Msg_RegisterCounterpartyPayee - responses: - '200': - description: A successful response. - schema: - type: object - title: >- - MsgRegisterCounterpartyPayeeResponse defines the response type for - the RegisterCounterpartyPayee rpc - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - title: unique port identifier - channel_id: - type: string - title: unique channel identifier - relayer: - type: string - title: the relayer address - counterparty_payee: - type: string - title: the counterparty payee address - title: >- - MsgRegisterCounterpartyPayee defines the request type for the - RegisterCounterpartyPayee rpc - tags: - - Msg - /ibc.applications.fee.v1.Msg/RegisterPayee: - post: - summary: >- - RegisterPayee defines a rpc handler method for MsgRegisterPayee - - RegisterPayee is called by the relayer on each channelEnd and allows - them to set an optional - - payee to which reverse and timeout relayer packet fees will be paid out. - The payee should be registered on - - the source chain from which packets originate as this is where fee - distribution takes place. This function may be - - called more than once by a relayer, in which case, the latest payee is - always used. - operationId: IbcApplicationsFeeV1Msg_RegisterPayee - responses: - '200': - description: A successful response. - schema: - type: object - title: >- - MsgRegisterPayeeResponse defines the response type for the - RegisterPayee rpc - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - title: unique port identifier - channel_id: - type: string - title: unique channel identifier - relayer: - type: string - title: the relayer address - payee: - type: string - title: the payee address - title: >- - MsgRegisterPayee defines the request type for the RegisterPayee - rpc - tags: - - Msg - /ibc.applications.interchain_accounts.controller.v1.Msg/RegisterInterchainAccount: - post: - summary: >- - RegisterInterchainAccount defines a rpc handler for - MsgRegisterInterchainAccount. - operationId: >- - IbcApplicationsInterchainAccountsControllerV1Msg_RegisterInterchainAccount - responses: - '200': - description: A successful response. - schema: - type: object - properties: - channel_id: - type: string - port_id: - type: string - title: >- - MsgRegisterInterchainAccountResponse defines the response for - Msg/RegisterAccount - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - owner: - type: string - connection_id: - type: string - version: - type: string - title: >- - MsgRegisterInterchainAccount defines the payload for - Msg/RegisterAccount - tags: - - Msg - /ibc.applications.interchain_accounts.controller.v1.Msg/SendTx: - post: - summary: SendTx defines a rpc handler for MsgSendTx. - operationId: IbcApplicationsInterchainAccountsControllerV1Msg_SendTx - responses: - '200': - description: A successful response. - schema: - type: object - properties: - sequence: - type: string - format: uint64 - title: MsgSendTxResponse defines the response for MsgSendTx - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - owner: - type: string - connection_id: - type: string - packet_data: - type: object - properties: - type: - type: string - enum: - - TYPE_UNSPECIFIED - - TYPE_EXECUTE_TX - default: TYPE_UNSPECIFIED - description: |- - - TYPE_UNSPECIFIED: Default zero value enumeration - - TYPE_EXECUTE_TX: Execute a transaction on an interchain accounts host chain - title: >- - Type defines a classification of message issued from a - controller chain to its associated interchain accounts - - host - data: - type: string - format: byte - memo: - type: string - description: >- - InterchainAccountPacketData is comprised of a raw transaction, - type of transaction and optional memo field. - relative_timeout: - type: string - format: uint64 - description: >- - Relative timeout timestamp provided will be added to the - current block time during transaction execution. - - The timeout timestamp must be non-zero. - title: MsgSendTx defines the payload for Msg/SendTx - tags: - - Msg - /ibc.applications.interchain_accounts.controller.v1.Msg/UpdateParams: - post: - summary: UpdateParams defines a rpc handler for MsgUpdateParams. - operationId: IbcApplicationsInterchainAccountsControllerV1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - title: MsgUpdateParamsResponse defines the response for Msg/UpdateParams - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - signer: - type: string - title: signer address - params: - description: >- - params defines the 27-interchain-accounts/controller - parameters to update. - - - NOTE: All parameters must be supplied. - type: object - properties: - controller_enabled: - type: boolean - description: >- - controller_enabled enables or disables the controller - submodule. - title: MsgUpdateParams defines the payload for Msg/UpdateParams - tags: - - Msg - /ibc.applications.interchain_accounts.host.v1.Msg/UpdateParams: - post: - summary: UpdateParams defines a rpc handler for MsgUpdateParams. - operationId: IbcApplicationsInterchainAccountsHostV1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - title: MsgUpdateParamsResponse defines the response for Msg/UpdateParams - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - signer: - type: string - title: signer address - params: - description: >- - params defines the 27-interchain-accounts/host parameters to - update. - - - NOTE: All parameters must be supplied. - type: object - properties: - host_enabled: - type: boolean - description: host_enabled enables or disables the host submodule. - allow_messages: - type: array - items: - type: string - description: >- - allow_messages defines a list of sdk message typeURLs - allowed to be executed on a host chain. - title: MsgUpdateParams defines the payload for Msg/UpdateParams - tags: - - Msg - /ibc.applications.transfer.v1.Msg/Transfer: - post: - summary: Transfer defines a rpc handler method for MsgTransfer. - operationId: IbcApplicationsTransferV1Msg_Transfer - responses: - '200': - description: A successful response. - schema: - type: object - properties: - sequence: - type: string - format: uint64 - title: sequence number of the transfer packet sent - description: MsgTransferResponse defines the Msg/Transfer response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - source_port: - type: string - title: the port on which the packet will be sent - source_channel: - type: string - title: the channel by which the packet will be sent - token: - title: the tokens to be transferred - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - sender: - type: string - title: the sender address - receiver: - type: string - title: the recipient address on the destination chain - timeout_height: - description: |- - Timeout height relative to the current block height. - The timeout is disabled when set to 0. - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - timeout_timestamp: - type: string - format: uint64 - description: |- - Timeout timestamp in absolute nanoseconds since unix epoch. - The timeout is disabled when set to 0. - memo: - type: string - title: optional memo - title: >- - MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) - between - - ICS20 enabled chains. See ICS Spec here: - - https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures - tags: - - Msg - /ibc.applications.transfer.v1.Msg/UpdateParams: - post: - summary: UpdateParams defines a rpc handler for MsgUpdateParams. - operationId: IbcApplicationsTransferV1Msg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: MsgUpdateParams is the Msg/UpdateParams request type. - in: body - required: true - schema: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the transfer parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - send_enabled: - type: boolean - description: >- - send_enabled enables or disables all cross-chain token - transfers from this - - chain. - receive_enabled: - type: boolean - description: >- - receive_enabled enables or disables all cross-chain token - transfers to this - - chain. - description: MsgUpdateParams is the Msg/UpdateParams request type. - tags: - - Msg - /ibc.core.channel.v1.Msg/Acknowledgement: - post: - summary: Acknowledgement defines a rpc handler method for MsgAcknowledgement. - operationId: IbcCoreChannelV1Msg_Acknowledgement - responses: - '200': - description: A successful response. - schema: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: >- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value - enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the - execution of a message - description: >- - MsgAcknowledgementResponse defines the Msg/Acknowledgement - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, - where a Packet - - with an earlier sequence number must be sent and received - before a Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: >- - actual opaque bytes transferred directly to the - application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms - may choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as - the RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: >- - block timestamp (in nanoseconds) after which the packet - times out - title: >- - Packet defines a type that carries data across different - chains through IBC - acknowledgement: - type: string - format: byte - proof_acked: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - title: MsgAcknowledgement receives incoming IBC acknowledgement - tags: - - Msg - /ibc.core.channel.v1.Msg/ChannelCloseConfirm: - post: - summary: |- - ChannelCloseConfirm defines a rpc handler method for - MsgChannelCloseConfirm. - operationId: IbcCoreChannelV1Msg_ChannelCloseConfirm - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgChannelCloseConfirmResponse defines the Msg/ChannelCloseConfirm - response - - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgChannelCloseConfirm defines a msg sent by a Relayer to Chain B - to acknowledge the change of channel state to CLOSED on Chain A. - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - channel_id: - type: string - proof_init: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - description: |- - MsgChannelCloseConfirm defines a msg sent by a Relayer to Chain B - to acknowledge the change of channel state to CLOSED on Chain A. - tags: - - Msg - /ibc.core.channel.v1.Msg/ChannelCloseInit: - post: - summary: ChannelCloseInit defines a rpc handler method for MsgChannelCloseInit. - operationId: IbcCoreChannelV1Msg_ChannelCloseInit - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgChannelCloseInitResponse defines the Msg/ChannelCloseInit - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgChannelCloseInit defines a msg sent by a Relayer to Chain A - to close a channel with Chain B. - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - channel_id: - type: string - signer: - type: string - description: |- - MsgChannelCloseInit defines a msg sent by a Relayer to Chain A - to close a channel with Chain B. - tags: - - Msg - /ibc.core.channel.v1.Msg/ChannelOpenAck: - post: - summary: ChannelOpenAck defines a rpc handler method for MsgChannelOpenAck. - operationId: IbcCoreChannelV1Msg_ChannelOpenAck - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgChannelOpenAckResponse defines the Msg/ChannelOpenAck response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgChannelOpenAck defines a msg sent by a Relayer to Chain A to - acknowledge - - the change of channel state to TRYOPEN on Chain B. - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - channel_id: - type: string - counterparty_channel_id: - type: string - counterparty_version: - type: string - proof_try: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - description: >- - MsgChannelOpenAck defines a msg sent by a Relayer to Chain A to - acknowledge - - the change of channel state to TRYOPEN on Chain B. - tags: - - Msg - /ibc.core.channel.v1.Msg/ChannelOpenConfirm: - post: - summary: >- - ChannelOpenConfirm defines a rpc handler method for - MsgChannelOpenConfirm. - operationId: IbcCoreChannelV1Msg_ChannelOpenConfirm - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgChannelOpenConfirmResponse defines the Msg/ChannelOpenConfirm - response - - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgChannelOpenConfirm defines a msg sent by a Relayer to Chain B to - acknowledge the change of channel state to OPEN on Chain A. - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - channel_id: - type: string - proof_ack: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - description: >- - MsgChannelOpenConfirm defines a msg sent by a Relayer to Chain B - to - - acknowledge the change of channel state to OPEN on Chain A. - tags: - - Msg - /ibc.core.channel.v1.Msg/ChannelOpenInit: - post: - summary: ChannelOpenInit defines a rpc handler method for MsgChannelOpenInit. - operationId: IbcCoreChannelV1Msg_ChannelOpenInit - responses: - '200': - description: A successful response. - schema: - type: object - properties: - channel_id: - type: string - version: - type: string - description: >- - MsgChannelOpenInitResponse defines the Msg/ChannelOpenInit - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgChannelOpenInit defines an sdk.Msg to initialize a channel - handshake. It - - is called by a relayer on Chain A. - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - channel: - type: object - properties: - state: - title: current state of the channel end - type: string - enum: - - STATE_UNINITIALIZED_UNSPECIFIED - - STATE_INIT - - STATE_TRYOPEN - - STATE_OPEN - - STATE_CLOSED - default: STATE_UNINITIALIZED_UNSPECIFIED - description: >- - State defines if a channel is in one of the following - states: - - CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED. - - - STATE_UNINITIALIZED_UNSPECIFIED: Default State - - STATE_INIT: A channel has just started the opening handshake. - - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - - STATE_OPEN: A channel has completed the handshake. Open channels are - ready to send and receive packets. - - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive - packets. - ordering: - title: whether the channel is ordered or unordered - type: string - enum: - - ORDER_NONE_UNSPECIFIED - - ORDER_UNORDERED - - ORDER_ORDERED - default: ORDER_NONE_UNSPECIFIED - description: |- - - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in - which they were sent. - - ORDER_ORDERED: packets are delivered exactly in the order which they were sent - counterparty: - title: counterparty channel end - type: object - properties: - port_id: - type: string - description: >- - port on the counterparty chain which owns the other - end of the channel. - channel_id: - type: string - title: channel end on the counterparty chain - connection_hops: - type: array - items: - type: string - title: >- - list of connection identifiers, in order, along which - packets sent on - - this channel will travel - version: - type: string - title: >- - opaque channel version, which is agreed upon during the - handshake - description: >- - Channel defines pipeline for exactly-once packet delivery - between specific - - modules on separate blockchains, which has at least one end - capable of - - sending packets and one end capable of receiving packets. - signer: - type: string - description: >- - MsgChannelOpenInit defines an sdk.Msg to initialize a channel - handshake. It - - is called by a relayer on Chain A. - tags: - - Msg - /ibc.core.channel.v1.Msg/ChannelOpenTry: - post: - summary: ChannelOpenTry defines a rpc handler method for MsgChannelOpenTry. - operationId: IbcCoreChannelV1Msg_ChannelOpenTry - responses: - '200': - description: A successful response. - schema: - type: object - properties: - version: - type: string - channel_id: - type: string - description: >- - MsgChannelOpenTryResponse defines the Msg/ChannelOpenTry response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgChannelOpenInit defines a msg sent by a Relayer to try to open a - channel - - on Chain B. The version field within the Channel field has been - deprecated. Its - - value will be ignored by core IBC. - in: body - required: true - schema: - type: object - properties: - port_id: - type: string - previous_channel_id: - type: string - description: >- - Deprecated: this field is unused. Crossing hello's are no - longer supported in core IBC. - channel: - type: object - properties: - state: - title: current state of the channel end - type: string - enum: - - STATE_UNINITIALIZED_UNSPECIFIED - - STATE_INIT - - STATE_TRYOPEN - - STATE_OPEN - - STATE_CLOSED - default: STATE_UNINITIALIZED_UNSPECIFIED - description: >- - State defines if a channel is in one of the following - states: - - CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED. - - - STATE_UNINITIALIZED_UNSPECIFIED: Default State - - STATE_INIT: A channel has just started the opening handshake. - - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - - STATE_OPEN: A channel has completed the handshake. Open channels are - ready to send and receive packets. - - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive - packets. - ordering: - title: whether the channel is ordered or unordered - type: string - enum: - - ORDER_NONE_UNSPECIFIED - - ORDER_UNORDERED - - ORDER_ORDERED - default: ORDER_NONE_UNSPECIFIED - description: |- - - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in - which they were sent. - - ORDER_ORDERED: packets are delivered exactly in the order which they were sent - counterparty: - title: counterparty channel end - type: object - properties: - port_id: - type: string - description: >- - port on the counterparty chain which owns the other - end of the channel. - channel_id: - type: string - title: channel end on the counterparty chain - connection_hops: - type: array - items: - type: string - title: >- - list of connection identifiers, in order, along which - packets sent on - - this channel will travel - version: - type: string - title: >- - opaque channel version, which is agreed upon during the - handshake - description: >- - Channel defines pipeline for exactly-once packet delivery - between specific - - modules on separate blockchains, which has at least one end - capable of - - sending packets and one end capable of receiving packets. - counterparty_version: - type: string - proof_init: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - description: >- - MsgChannelOpenInit defines a msg sent by a Relayer to try to open - a channel - - on Chain B. The version field within the Channel field has been - deprecated. Its - - value will be ignored by core IBC. - tags: - - Msg - /ibc.core.channel.v1.Msg/RecvPacket: - post: - summary: RecvPacket defines a rpc handler method for MsgRecvPacket. - operationId: IbcCoreChannelV1Msg_RecvPacket - responses: - '200': - description: A successful response. - schema: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: >- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value - enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the - execution of a message - description: MsgRecvPacketResponse defines the Msg/RecvPacket response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, - where a Packet - - with an earlier sequence number must be sent and received - before a Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: >- - actual opaque bytes transferred directly to the - application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms - may choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as - the RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: >- - block timestamp (in nanoseconds) after which the packet - times out - title: >- - Packet defines a type that carries data across different - chains through IBC - proof_commitment: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - title: MsgRecvPacket receives incoming IBC packet - tags: - - Msg - /ibc.core.channel.v1.Msg/Timeout: - post: - summary: Timeout defines a rpc handler method for MsgTimeout. - operationId: IbcCoreChannelV1Msg_Timeout - responses: - '200': - description: A successful response. - schema: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: >- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value - enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the - execution of a message - description: MsgTimeoutResponse defines the Msg/Timeout response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, - where a Packet - - with an earlier sequence number must be sent and received - before a Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: >- - actual opaque bytes transferred directly to the - application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms - may choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as - the RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: >- - block timestamp (in nanoseconds) after which the packet - times out - title: >- - Packet defines a type that carries data across different - chains through IBC - proof_unreceived: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - next_sequence_recv: - type: string - format: uint64 - signer: - type: string - title: MsgTimeout receives timed-out packet - tags: - - Msg - /ibc.core.channel.v1.Msg/TimeoutOnClose: - post: - summary: TimeoutOnClose defines a rpc handler method for MsgTimeoutOnClose. - operationId: IbcCoreChannelV1Msg_TimeoutOnClose - responses: - '200': - description: A successful response. - schema: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: >- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value - enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the - execution of a message - description: >- - MsgTimeoutOnCloseResponse defines the Msg/TimeoutOnClose response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgTimeoutOnClose timed-out packet upon counterparty channel - closure. - in: body - required: true - schema: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, - where a Packet - - with an earlier sequence number must be sent and received - before a Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: >- - actual opaque bytes transferred directly to the - application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms - may choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as - the RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: >- - block timestamp (in nanoseconds) after which the packet - times out - title: >- - Packet defines a type that carries data across different - chains through IBC - proof_unreceived: - type: string - format: byte - proof_close: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - next_sequence_recv: - type: string - format: uint64 - signer: - type: string - description: >- - MsgTimeoutOnClose timed-out packet upon counterparty channel - closure. - tags: - - Msg - /ibc.core.client.v1.Msg/CreateClient: - post: - summary: CreateClient defines a rpc handler method for MsgCreateClient. - operationId: IbcCoreClientV1Msg_CreateClient - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgCreateClientResponse defines the Msg/CreateClient response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - client_state: - title: light client state - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - consensus_state: - description: >- - consensus state associated with the client that corresponds to - a given - - height. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - signer: - type: string - title: signer address - title: MsgCreateClient defines a message to create an IBC client - tags: - - Msg - /ibc.core.client.v1.Msg/IBCSoftwareUpgrade: - post: - summary: >- - IBCSoftwareUpgrade defines a rpc handler method for - MsgIBCSoftwareUpgrade. - operationId: IbcCoreClientV1Msg_IBCSoftwareUpgrade - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgIBCSoftwareUpgradeResponse defines the Msg/IBCSoftwareUpgrade - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - plan: - type: object - properties: - name: - type: string - description: >- - Sets the name for the upgrade. This name will be used by - the upgraded - - version of the software to apply any special "on-upgrade" - commands during - - the first BeginBlock method after the upgrade is applied. - It is also used - - to detect whether a software version can handle a given - upgrade. If no - - upgrade handler with this name has been set in the - software, it will be - - assumed that the software is out-of-date when the upgrade - Time or Height is - - reached and the software will exit. - time: - type: string - format: date-time - description: >- - Deprecated: Time based upgrades have been deprecated. Time - based upgrade logic - - has been removed from the SDK. - - If this field is not empty, an error will be thrown. - height: - type: string - format: int64 - description: The height at which the upgrade must be performed. - info: - type: string - title: >- - Any application specific upgrade info to be included - on-chain - - such as a git commit that validators could automatically - upgrade to - upgraded_client_state: - description: >- - Deprecated: UpgradedClientState field has been deprecated. - IBC upgrade logic has been - - moved to the IBC module in the sub module 02-client. - - If this field is not empty, an error will be thrown. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type - of the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be - in a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can - optionally set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results - based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no - widely used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty - scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - Plan specifies information about a planned upgrade and when it - should occur. - upgraded_client_state: - description: >- - An UpgradedClientState must be provided to perform an IBC - breaking upgrade. - - This will make the chain commit to the correct upgraded (self) - client state - - before the upgrade occurs, so that connecting chains can - verify that the - - new upgraded client is valid by verifying a proof on the - previous version - - of the chain. This will allow IBC connections to persist - smoothly across - - planned chain upgrades. Correspondingly, the - UpgradedClientState field has been - - deprecated in the Cosmos SDK to allow for this logic to exist - solely in - - the 02-client module. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - signer: - type: string - title: signer address - title: >- - MsgIBCSoftwareUpgrade defines the message used to schedule an - upgrade of an IBC client using a v1 governance proposal - tags: - - Msg - /ibc.core.client.v1.Msg/RecoverClient: - post: - summary: RecoverClient defines a rpc handler method for MsgRecoverClient. - operationId: IbcCoreClientV1Msg_RecoverClient - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgRecoverClientResponse defines the Msg/RecoverClient response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgRecoverClient defines the message used to recover a frozen or - expired client. - in: body - required: true - schema: - type: object - properties: - subject_client_id: - type: string - title: >- - the client identifier for the client to be updated if the - proposal passes - substitute_client_id: - type: string - title: >- - the substitute client identifier for the client which will - replace the subject - - client - signer: - type: string - title: signer address - description: >- - MsgRecoverClient defines the message used to recover a frozen or - expired client. - tags: - - Msg - /ibc.core.client.v1.Msg/SubmitMisbehaviour: - post: - summary: >- - SubmitMisbehaviour defines a rpc handler method for - MsgSubmitMisbehaviour. - operationId: IbcCoreClientV1Msg_SubmitMisbehaviour - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgSubmitMisbehaviourResponse defines the Msg/SubmitMisbehaviour - response - - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgSubmitMisbehaviour defines an sdk.Msg type that submits Evidence - for - - light client misbehaviour. - - This message has been deprecated. Use MsgUpdateClient instead. - in: body - required: true - schema: - type: object - properties: - client_id: - type: string - title: client unique identifier - misbehaviour: - title: misbehaviour used for freezing the light client - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - signer: - type: string - title: signer address - description: >- - MsgSubmitMisbehaviour defines an sdk.Msg type that submits - Evidence for - - light client misbehaviour. - - This message has been deprecated. Use MsgUpdateClient instead. - tags: - - Msg - /ibc.core.client.v1.Msg/UpdateClient: - post: - summary: UpdateClient defines a rpc handler method for MsgUpdateClient. - operationId: IbcCoreClientV1Msg_UpdateClient - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateClientResponse defines the Msg/UpdateClient response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgUpdateClient defines an sdk.Msg to update a IBC client state - using - - the given client message. - in: body - required: true - schema: - type: object - properties: - client_id: - type: string - title: client unique identifier - client_message: - title: client message to update the light client - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - signer: - type: string - title: signer address - description: >- - MsgUpdateClient defines an sdk.Msg to update a IBC client state - using - - the given client message. - tags: - - Msg - /ibc.core.client.v1.Msg/UpdateClientParams: - post: - summary: UpdateClientParams defines a rpc handler method for MsgUpdateParams. - operationId: IbcCoreClientV1Msg_UpdateClientParams - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgUpdateParamsResponse defines the MsgUpdateParams response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgUpdateParams defines the sdk.Msg type to update the client - parameters. - in: body - required: true - schema: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the client parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - allowed_clients: - type: array - items: - type: string - description: >- - allowed_clients defines the list of allowed client state - types which can be created - - and interacted with. If a client type is removed from the - allowed clients list, usage - - of this client will be disabled until it is added again to - the list. - description: >- - MsgUpdateParams defines the sdk.Msg type to update the client - parameters. - tags: - - Msg - /ibc.core.client.v1.Msg/UpgradeClient: - post: - summary: UpgradeClient defines a rpc handler method for MsgUpgradeClient. - operationId: IbcCoreClientV1Msg_UpgradeClient - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpgradeClientResponse defines the Msg/UpgradeClient response - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - client_id: - type: string - title: client unique identifier - client_state: - title: upgraded client state - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - consensus_state: - title: >- - upgraded consensus state, only contains enough information to - serve as a - - basis of trust in update logic - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - proof_upgrade_client: - type: string - format: byte - title: proof that old chain committed to new client - proof_upgrade_consensus_state: - type: string - format: byte - title: proof that old chain committed to new consensus state - signer: - type: string - title: signer address - title: >- - MsgUpgradeClient defines an sdk.Msg to upgrade an IBC client to a - new client - - state - tags: - - Msg - /ibc.core.connection.v1.Msg/ConnectionOpenAck: - post: - summary: ConnectionOpenAck defines a rpc handler method for MsgConnectionOpenAck. - operationId: IbcCoreConnectionV1Msg_ConnectionOpenAck - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgConnectionOpenAckResponse defines the Msg/ConnectionOpenAck - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: |- - MsgConnectionOpenAck defines a msg sent by a Relayer to Chain A to - acknowledge the change of connection state to TRYOPEN on Chain B. - in: body - required: true - schema: - type: object - properties: - connection_id: - type: string - counterparty_connection_id: - type: string - version: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: list of features compatible with the specified identifier - description: >- - Version defines the versioning scheme used to negotiate the - IBC verison in - - the connection handshake. - client_state: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - proof_try: - type: string - format: byte - title: >- - proof of the initialization the connection on Chain B: - `UNITIALIZED -> - - TRYOPEN` - proof_client: - type: string - format: byte - title: proof of client state included in message - proof_consensus: - type: string - format: byte - title: proof of client consensus state - consensus_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - host_consensus_state_proof: - type: string - format: byte - title: >- - optional proof data for host state machines that are unable to - introspect their own consensus state - description: |- - MsgConnectionOpenAck defines a msg sent by a Relayer to Chain A to - acknowledge the change of connection state to TRYOPEN on Chain B. - tags: - - Msg - /ibc.core.connection.v1.Msg/ConnectionOpenConfirm: - post: - summary: |- - ConnectionOpenConfirm defines a rpc handler method for - MsgConnectionOpenConfirm. - operationId: IbcCoreConnectionV1Msg_ConnectionOpenConfirm - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgConnectionOpenConfirmResponse defines the - Msg/ConnectionOpenConfirm - - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgConnectionOpenConfirm defines a msg sent by a Relayer to Chain B - to - - acknowledge the change of connection state to OPEN on Chain A. - in: body - required: true - schema: - type: object - properties: - connection_id: - type: string - proof_ack: - type: string - format: byte - title: >- - proof for the change of the connection state on Chain A: `INIT - -> OPEN` - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - description: >- - MsgConnectionOpenConfirm defines a msg sent by a Relayer to Chain - B to - - acknowledge the change of connection state to OPEN on Chain A. - tags: - - Msg - /ibc.core.connection.v1.Msg/ConnectionOpenInit: - post: - summary: >- - ConnectionOpenInit defines a rpc handler method for - MsgConnectionOpenInit. - operationId: IbcCoreConnectionV1Msg_ConnectionOpenInit - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgConnectionOpenInitResponse defines the Msg/ConnectionOpenInit - response - - type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgConnectionOpenInit defines the msg sent by an account on Chain A - to - - initialize a connection with Chain B. - in: body - required: true - schema: - type: object - properties: - client_id: - type: string - counterparty: - type: object - properties: - client_id: - type: string - description: >- - identifies the client on the counterparty chain associated - with a given - - connection. - connection_id: - type: string - description: >- - identifies the connection end on the counterparty chain - associated with a - - given connection. - prefix: - description: commitment merkle prefix of the counterparty chain. - type: object - properties: - key_prefix: - type: string - format: byte - title: >- - MerklePrefix is merkle path prefixed to the key. - - The constructed key from the Path and the key will be - append(Path.KeyPath, - - append(Path.KeyPrefix, key...)) - description: >- - Counterparty defines the counterparty chain associated with a - connection end. - version: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: list of features compatible with the specified identifier - description: >- - Version defines the versioning scheme used to negotiate the - IBC verison in - - the connection handshake. - delay_period: - type: string - format: uint64 - signer: - type: string - description: >- - MsgConnectionOpenInit defines the msg sent by an account on Chain - A to - - initialize a connection with Chain B. - tags: - - Msg - /ibc.core.connection.v1.Msg/ConnectionOpenTry: - post: - summary: ConnectionOpenTry defines a rpc handler method for MsgConnectionOpenTry. - operationId: IbcCoreConnectionV1Msg_ConnectionOpenTry - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgConnectionOpenTryResponse defines the Msg/ConnectionOpenTry - response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgConnectionOpenTry defines a msg sent by a Relayer to try to open - a - - connection on Chain B. - in: body - required: true - schema: - type: object - properties: - client_id: - type: string - previous_connection_id: - type: string - description: >- - Deprecated: this field is unused. Crossing hellos are no - longer supported in core IBC. - client_state: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in - the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default - use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last - '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - counterparty: - type: object - properties: - client_id: - type: string - description: >- - identifies the client on the counterparty chain associated - with a given - - connection. - connection_id: - type: string - description: >- - identifies the connection end on the counterparty chain - associated with a - - given connection. - prefix: - description: commitment merkle prefix of the counterparty chain. - type: object - properties: - key_prefix: - type: string - format: byte - title: >- - MerklePrefix is merkle path prefixed to the key. - - The constructed key from the Path and the key will be - append(Path.KeyPath, - - append(Path.KeyPrefix, key...)) - description: >- - Counterparty defines the counterparty chain associated with a - connection end. - delay_period: - type: string - format: uint64 - counterparty_versions: - type: array - items: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: >- - list of features compatible with the specified - identifier - description: >- - Version defines the versioning scheme used to negotiate the - IBC verison in - - the connection handshake. - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - proof_init: - type: string - format: byte - title: >- - proof of the initialization the connection on Chain A: - `UNITIALIZED -> - - INIT` - proof_client: - type: string - format: byte - title: proof of client state included in message - proof_consensus: - type: string - format: byte - title: proof of client consensus state - consensus_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height - while keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is - incremented so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes - of updating and - - freezing clients - signer: - type: string - host_consensus_state_proof: - type: string - format: byte - title: >- - optional proof data for host state machines that are unable to - introspect their own consensus state - description: >- - MsgConnectionOpenTry defines a msg sent by a Relayer to try to - open a - - connection on Chain B. - tags: - - Msg - /ibc.core.connection.v1.Msg/UpdateConnectionParams: - post: - summary: |- - UpdateConnectionParams defines a rpc handler method for - MsgUpdateParams. - operationId: IbcCoreConnectionV1Msg_UpdateConnectionParams - responses: - '200': - description: A successful response. - schema: - type: object - description: MsgUpdateParamsResponse defines the MsgUpdateParams response type. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of - the serialized - - protocol buffer message. This string must contain at - least - - one "/" character. The last segment of the URL's path - must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in - a canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary - all types that they - - expect it to use in the context of Any. However, for - URLs which use the - - scheme `http`, `https`, or no scheme, one can optionally - set up a type - - server that maps type URLs to message definitions as - follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a - [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based - on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in - the official - - protobuf release, and it is not used for type URLs - beginning with - - type.googleapis.com. As of May 2023, there are no widely - used type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) - might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer - message along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values - in the form - - of utility functions or additional generated methods of the - Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by - default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the - last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield - type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with - an - - additional field `@type` which contains the type URL. - Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom - JSON - - representation, that representation will be embedded adding - a field - - `value` which holds the custom JSON in addition to the - `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - parameters: - - name: body - description: >- - MsgUpdateParams defines the sdk.Msg type to update the connection - parameters. - in: body - required: true - schema: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the connection parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - max_expected_time_per_block: - type: string - format: uint64 - description: >- - maximum expected time per block (in nanoseconds), used to - enforce block delay. This parameter should reflect the - - largest amount of time that the chain might reasonably - take to produce the next block under normal operating - - conditions. A safe choice is 3-5x the expected time per - block. - description: >- - MsgUpdateParams defines the sdk.Msg type to update the connection - parameters. - tags: - - Msg - /blockheight: - get: - operationId: StructsStructsQuery_GetBlockHeight - responses: - '200': - description: A successful response. - schema: - type: object - properties: - blockHeight: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - tags: - - Query - /structs/address: - get: - operationId: StructsStructsQuery_AddressAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - address: - type: array - items: - type: object - properties: - address: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/address/{address}: - get: - summary: Queries for Addresses. - operationId: StructsStructsQuery_Address - responses: - '200': - description: A successful response. - schema: - type: object - properties: - address: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: address - in: path - required: true - type: string - tags: - - Query - /structs/address_by_player/{playerId}: - get: - operationId: StructsStructsQuery_AddressAllByPlayer - responses: - '200': - description: A successful response. - schema: - type: object - properties: - address: - type: array - items: - type: object - properties: - address: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: playerId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/agreement: - get: - operationId: StructsStructsQuery_AgreementAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Agreement: - type: array - items: - type: object - properties: - id: - type: string - providerId: - type: string - allocationId: - type: string - capacity: - type: string - format: uint64 - startBlock: - type: string - format: uint64 - endBlock: - type: string - format: uint64 - creator: - type: string - owner: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/agreement/{id}: - get: - summary: Queries a list of Agreement items. - operationId: StructsStructsQuery_Agreement - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Agreement: - type: object - properties: - id: - type: string - providerId: - type: string - allocationId: - type: string - capacity: - type: string - format: uint64 - startBlock: - type: string - format: uint64 - endBlock: - type: string - format: uint64 - creator: - type: string - owner: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/agreement_by_provider/{providerId}: - get: - operationId: StructsStructsQuery_AgreementAllByProvider - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Agreement: - type: array - items: - type: object - properties: - id: - type: string - providerId: - type: string - allocationId: - type: string - capacity: - type: string - format: uint64 - startBlock: - type: string - format: uint64 - endBlock: - type: string - format: uint64 - creator: - type: string - owner: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: providerId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/allocation: - get: - operationId: StructsStructsQuery_AllocationAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Allocation: - type: array - items: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/allocation/{id}: - get: - summary: Queries a list of Allocation items. - operationId: StructsStructsQuery_Allocation - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Allocation: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/allocation_by_destination/{destinationId}: - get: - operationId: StructsStructsQuery_AllocationAllByDestination - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Allocation: - type: array - items: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: destinationId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/allocation_by_source/{sourceId}: - get: - operationId: StructsStructsQuery_AllocationAllBySource - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Allocation: - type: array - items: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: sourceId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/fleet: - get: - operationId: StructsStructsQuery_FleetAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Fleet: - type: array - items: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/fleet/{id}: - get: - summary: Queries a list of Fleet items. - operationId: StructsStructsQuery_Fleet - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/fleet_by_index/{index}: - get: - operationId: StructsStructsQuery_FleetByIndex - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: index - in: path - required: true - type: string - format: uint64 - tags: - - Query - /structs/grid: - get: - summary: Queries a list of all Grid details - operationId: StructsStructsQuery_GridAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - gridRecords: - type: array - items: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/grid/{attributeId}: - get: - summary: Queries a specific Grid details - operationId: StructsStructsQuery_Grid - responses: - '200': - description: A successful response. - schema: - type: object - properties: - gridRecord: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - title: Generic Responses for Permissions - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: attributeId - in: path - required: true - type: string - tags: - - Query - /structs/guild: - get: - operationId: StructsStructsQuery_GuildAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Guild: - type: array - items: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - endpoint: - type: string - creator: - type: string - owner: - type: string - joinInfusionMinimum: - type: string - format: uint64 - joinInfusionMinimumBypassByRequest: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - joinInfusionMinimumBypassByInvite: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - primaryReactorId: - type: string - entrySubstationId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/guild/{id}: - get: - summary: Queries a list of Guild items. - operationId: StructsStructsQuery_Guild - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Guild: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - endpoint: - type: string - creator: - type: string - owner: - type: string - joinInfusionMinimum: - type: string - format: uint64 - joinInfusionMinimumBypassByRequest: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - joinInfusionMinimumBypassByInvite: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - primaryReactorId: - type: string - entrySubstationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/guild_bank_collateral_address: - get: - operationId: StructsStructsQuery_GuildBankCollateralAddressAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/guild_bank_collateral_address/{guildId}: - get: - operationId: StructsStructsQuery_GuildBankCollateralAddress - responses: - '200': - description: A successful response. - schema: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: guildId - in: path - required: true - type: string - tags: - - Query - /structs/guild_membership_application: - get: - operationId: StructsStructsQuery_GuildMembershipApplicationAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - GuildMembershipApplication: - type: array - items: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/guild_membership_application/{guildId}/{playerId}: - get: - operationId: StructsStructsQuery_GuildMembershipApplication - responses: - '200': - description: A successful response. - schema: - type: object - properties: - GuildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: guildId - in: path - required: true - type: string - - name: playerId - in: path - required: true - type: string - tags: - - Query - /structs/infusion: - get: - operationId: StructsStructsQuery_InfusionAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Infusion: - type: array - items: - type: object - properties: - destinationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - destinationId: - type: string - fuel: - type: string - format: uint64 - power: - type: string - format: uint64 - commission: - type: string - playerId: - type: string - address: - type: string - ratio: - type: string - format: uint64 - defusing: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/infusion/{destinationId}/{address}: - get: - summary: Queries a list of Infusions. - operationId: StructsStructsQuery_Infusion - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Infusion: - type: object - properties: - destinationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - destinationId: - type: string - fuel: - type: string - format: uint64 - power: - type: string - format: uint64 - commission: - type: string - playerId: - type: string - address: - type: string - ratio: - type: string - format: uint64 - defusing: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: destinationId - in: path - required: true - type: string - - name: address - in: path - required: true - type: string - tags: - - Query - /structs/infusion_by_destination/{destinationId}: - get: - operationId: StructsStructsQuery_InfusionAllByDestination - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Infusion: - type: array - items: - type: object - properties: - destinationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - destinationId: - type: string - fuel: - type: string - format: uint64 - power: - type: string - format: uint64 - commission: - type: string - playerId: - type: string - address: - type: string - ratio: - type: string - format: uint64 - defusing: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: destinationId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/permission: - get: - summary: Queries a list of all Permissions - operationId: StructsStructsQuery_PermissionAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - permissionRecords: - type: array - items: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/permission/object/{objectId}: - get: - summary: Queries a list of Permissions based on Object - operationId: StructsStructsQuery_PermissionByObject - responses: - '200': - description: A successful response. - schema: - type: object - properties: - permissionRecords: - type: array - items: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: objectId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/permission/player/{playerId}: - get: - summary: Queries a list of Permissions based on the Player with the permissions - operationId: StructsStructsQuery_PermissionByPlayer - responses: - '200': - description: A successful response. - schema: - type: object - properties: - permissionRecords: - type: array - items: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: playerId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/permission/{permissionId}: - get: - summary: Queries a specific Permission - operationId: StructsStructsQuery_Permission - responses: - '200': - description: A successful response. - schema: - type: object - properties: - permissionRecord: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - title: Generic Responses for Permissions - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: permissionId - in: path - required: true - type: string - tags: - - Query - /structs/planet: - get: - operationId: StructsStructsQuery_PlanetAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Planet: - type: array - items: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/planet/{id}: - get: - summary: Queries a list of Planet items. - operationId: StructsStructsQuery_Planet - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - planetAttributes: - type: object - properties: - planetaryShield: - type: string - format: uint64 - repairNetworkQuantity: - type: string - format: uint64 - defensiveCannonQuantity: - type: string - format: uint64 - coordinatedGlobalShieldNetworkQuantity: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkQuantity: - type: string - format: uint64 - advancedLowOrbitBallisticsInterceptorNetworkQuantity: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkSuccessRateNumerator: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkSuccessRateDenominator: - type: string - format: uint64 - orbitalJammingStationQuantity: - type: string - format: uint64 - advancedOrbitalJammingStationQuantity: - type: string - format: uint64 - blockStartRaid: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/planet_attribute: - get: - summary: Queries a list of all Planet Attributes - operationId: StructsStructsQuery_PlanetAttributeAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - planetAttributeRecords: - type: array - items: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/planet_attribute/{planetId}/{attributeType}: - get: - operationId: StructsStructsQuery_PlanetAttribute - responses: - '200': - description: A successful response. - schema: - type: object - properties: - attribute: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: planetId - in: path - required: true - type: string - - name: attributeType - in: path - required: true - type: string - tags: - - Query - /structs/planet_by_player/{playerId}: - get: - operationId: StructsStructsQuery_PlanetAllByPlayer - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Planet: - type: array - items: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: playerId - in: path - required: true - type: string - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/player: - get: - operationId: StructsStructsQuery_PlayerAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Player: - type: array - items: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - guildId: - type: string - substationId: - type: string - creator: - type: string - primaryAddress: - type: string - planetId: - type: string - fleetId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/player/{id}: - get: - summary: Queries a list of Player items. - operationId: StructsStructsQuery_Player - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Player: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - guildId: - type: string - substationId: - type: string - creator: - type: string - primaryAddress: - type: string - planetId: - type: string - fleetId: - type: string - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - playerInventory: - type: object - properties: - rocks: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - halted: - type: boolean - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/player_halted: - get: - operationId: StructsStructsQuery_PlayerHaltedAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - PlayerId: - type: array - items: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - tags: - - Query - /structs/provider: - get: - operationId: StructsStructsQuery_ProviderAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Provider: - type: array - items: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - creator: - type: string - owner: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/provider/{id}: - get: - summary: Queries a list of Allocation items. - operationId: StructsStructsQuery_Provider - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Provider: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the - custom method - - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - creator: - type: string - owner: - type: string - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/provider_collateral_address: - get: - operationId: StructsStructsQuery_ProviderCollateralAddressAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/provider_collateral_address/{providerId}: - get: - operationId: StructsStructsQuery_ProviderCollateralAddress - responses: - '200': - description: A successful response. - schema: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: providerId - in: path - required: true - type: string - tags: - - Query - /structs/provider_earnings_address: - get: - operationId: StructsStructsQuery_ProviderEarningsAddressAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/provider_earnings_address/{providerId}: - get: - summary: >- - TODO Requires a lookup table that I don't know if we care about - - rpc ProviderByCollateralAddress - (QueryGetProviderByCollateralAddressRequest) returns - (QueryGetProviderResponse) { - - option (google.api.http).get = - "/structs/provider_by_collateral_address/{address}"; - - } - operationId: StructsStructsQuery_ProviderEarningsAddress - responses: - '200': - description: A successful response. - schema: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: providerId - in: path - required: true - type: string - tags: - - Query - /structs/reactor: - get: - operationId: StructsStructsQuery_ReactorAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Reactor: - type: array - items: - type: object - properties: - id: - type: string - validator: - type: string - guildId: - type: string - defaultCommission: - type: string - rawAddress: - type: string - format: byte - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/reactor/{id}: - get: - summary: Queries a list of Reactor items. - operationId: StructsStructsQuery_Reactor - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Reactor: - type: object - properties: - id: - type: string - validator: - type: string - guildId: - type: string - defaultCommission: - type: string - rawAddress: - type: string - format: byte - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/struct: - get: - operationId: StructsStructsQuery_StructAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Struct: - type: array - items: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/struct/{id}: - get: - summary: Queries a list of Structs items. - operationId: StructsStructsQuery_Struct - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structAttributes: - type: object - properties: - health: - type: string - format: uint64 - status: - type: string - format: uint64 - blockStartBuild: - type: string - format: uint64 - blockStartOreMine: - type: string - format: uint64 - blockStartOreRefine: - type: string - format: uint64 - protectedStructIndex: - type: string - format: uint64 - typeCount: - type: string - format: uint64 - isMaterialized: - type: boolean - isBuilt: - type: boolean - isOnline: - type: boolean - isHidden: - type: boolean - isDestroyed: - type: boolean - isLocked: - type: boolean - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structDefenders: - type: array - items: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/struct_attribute: - get: - summary: Queries a list of all Struct Attributes - operationId: StructsStructsQuery_StructAttributeAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - structAttributeRecords: - type: array - items: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/struct_attribute/{structId}/{attributeType}: - get: - operationId: StructsStructsQuery_StructAttribute - responses: - '200': - description: A successful response. - schema: - type: object - properties: - attribute: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: structId - in: path - required: true - type: string - - name: attributeType - in: path - required: true - type: string - tags: - - Query - /structs/struct_type: - get: - operationId: StructsStructsQuery_StructTypeAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - StructType: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - type: - type: string - description: TODO Deprecating... Will match with Class for now. - class: - type: string - title: New Struct Type Identity Details - classAbbreviation: - type: string - defaultCosmeticModelNumber: - type: string - defaultCosmeticName: - type: string - category: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - description: Planet or Fleet - title: Fundamental attributes - buildLimit: - type: string - format: uint64 - title: How many of this Struct Type a player can have - buildDifficulty: - type: string - format: uint64 - title: How much compute is needed to build - buildDraw: - type: string - format: uint64 - title: How much energy the Struct consumes during building - maxHealth: - type: string - format: uint64 - title: How much damage can it take - passiveDraw: - type: string - format: uint64 - title: How much energy the Struct consumes when active - possibleAmbit: - type: string - format: uint64 - description: >- - Where can it be built and moved to. Usually only a - single ambit but some Structs have multiple possible - (i.e. Command Ship) - title: |- - Details about location and movement - TODO move category to here and make it flag based too - Replicate what was done for ambits flags - movable: - type: boolean - title: Can the Struct change ambit? - slotBound: - type: boolean - title: >- - Does the Struct occupy a slot. Trying to find something - to help set Command Ships apart - primaryWeapon: - title: Primary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - primaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - primaryWeaponCharge: - type: string - format: uint64 - primaryWeaponAmbits: - type: string - format: uint64 - primaryWeaponTargets: - type: string - format: uint64 - primaryWeaponShots: - type: string - format: uint64 - primaryWeaponDamage: - type: string - format: uint64 - primaryWeaponBlockable: - type: boolean - primaryWeaponCounterable: - type: boolean - primaryWeaponRecoilDamage: - type: string - format: uint64 - primaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - primaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - secondaryWeapon: - title: Secondary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - secondaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - secondaryWeaponCharge: - type: string - format: uint64 - secondaryWeaponAmbits: - type: string - format: uint64 - secondaryWeaponTargets: - type: string - format: uint64 - secondaryWeaponShots: - type: string - format: uint64 - secondaryWeaponDamage: - type: string - format: uint64 - secondaryWeaponBlockable: - type: boolean - secondaryWeaponCounterable: - type: boolean - secondaryWeaponRecoilDamage: - type: string - format: uint64 - secondaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - secondaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - passiveWeaponry: - title: Tech Tree Features - type: string - enum: - - noPassiveWeaponry - - counterAttack - - strongCounterAttack - - advancedCounterAttack - - lastResort - default: noPassiveWeaponry - unitDefenses: - type: string - enum: - - noUnitDefenses - - defensiveManeuver - - signalJamming - - armour - - indirectCombatModule - - stealthMode - - perimeterFencing - - reinforcedWalls - default: noUnitDefenses - oreReserveDefenses: - type: string - enum: - - noOreReserveDefenses - - coordinatedReserveResponseTracker - - rapidResponsePackage - - activeScanning - - monitoringStation - - oreBunker - default: noOreReserveDefenses - planetaryDefenses: - type: string - enum: - - noPlanetaryDefense - - defensiveCannon - - lowOrbitBallisticInterceptorNetwork - default: noPlanetaryDefense - title: >- - - lowOrbitBallisticInterceptorNetwork: - advancedLowOrbitBallisticInterceptorNetwork = 3; - - repairNetwork = 4; - - coordinatedGlobalShieldNetwork = 5; - - orbitalJammingStation = 6; - - advancedOrbitalJammingStation = 7; - planetaryMining: - type: string - enum: - - noPlanetaryMining - - oreMiningRig - default: noPlanetaryMining - planetaryRefinery: - type: string - enum: - - noPlanetaryRefinery - - oreRefinery - default: noPlanetaryRefinery - powerGeneration: - type: string - enum: - - noPowerGeneration - - smallGenerator - - mediumGenerator - - largeGenerator - default: noPowerGeneration - activateCharge: - type: string - format: uint64 - title: Charge uses - buildCharge: - type: string - format: uint64 - defendChangeCharge: - type: string - format: uint64 - moveCharge: - type: string - format: uint64 - oreMiningCharge: - type: string - format: uint64 - oreRefiningCharge: - type: string - format: uint64 - stealthActivateCharge: - type: string - format: uint64 - attackReduction: - type: string - format: uint64 - description: For Defensive Cannon - title: Tech Tree Attributes - attackCounterable: - type: boolean - title: For Indirect Combat Module - stealthSystems: - type: boolean - title: For Stealth Mode - counterAttack: - type: string - format: uint64 - title: Counter - counterAttackSameAmbit: - type: string - format: uint64 - title: Advanced Counter - postDestructionDamage: - type: string - format: uint64 - generatingRate: - type: string - format: uint64 - title: Power Generation - planetaryShieldContribution: - type: string - format: uint64 - title: The shield that is added to the Planet - oreMiningDifficulty: - type: string - format: uint64 - oreRefiningDifficulty: - type: string - format: uint64 - unguidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - unguidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - guidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - guidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - triggerRaidDefeatByDestruction: - type: boolean - description: >- - I wish this was higher up in a different area of the - definition - - but I really don't feel like renumbering this entire - thing again. - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/struct_type/{id}: - get: - summary: Queries a list of Struct Types items. - operationId: StructsStructsQuery_StructType - responses: - '200': - description: A successful response. - schema: - type: object - properties: - StructType: - type: object - properties: - id: - type: string - format: uint64 - type: - type: string - description: TODO Deprecating... Will match with Class for now. - class: - type: string - title: New Struct Type Identity Details - classAbbreviation: - type: string - defaultCosmeticModelNumber: - type: string - defaultCosmeticName: - type: string - category: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - description: Planet or Fleet - title: Fundamental attributes - buildLimit: - type: string - format: uint64 - title: How many of this Struct Type a player can have - buildDifficulty: - type: string - format: uint64 - title: How much compute is needed to build - buildDraw: - type: string - format: uint64 - title: How much energy the Struct consumes during building - maxHealth: - type: string - format: uint64 - title: How much damage can it take - passiveDraw: - type: string - format: uint64 - title: How much energy the Struct consumes when active - possibleAmbit: - type: string - format: uint64 - description: >- - Where can it be built and moved to. Usually only a single - ambit but some Structs have multiple possible (i.e. - Command Ship) - title: |- - Details about location and movement - TODO move category to here and make it flag based too - Replicate what was done for ambits flags - movable: - type: boolean - title: Can the Struct change ambit? - slotBound: - type: boolean - title: >- - Does the Struct occupy a slot. Trying to find something to - help set Command Ships apart - primaryWeapon: - title: Primary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - primaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - primaryWeaponCharge: - type: string - format: uint64 - primaryWeaponAmbits: - type: string - format: uint64 - primaryWeaponTargets: - type: string - format: uint64 - primaryWeaponShots: - type: string - format: uint64 - primaryWeaponDamage: - type: string - format: uint64 - primaryWeaponBlockable: - type: boolean - primaryWeaponCounterable: - type: boolean - primaryWeaponRecoilDamage: - type: string - format: uint64 - primaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - primaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - secondaryWeapon: - title: Secondary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - secondaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - secondaryWeaponCharge: - type: string - format: uint64 - secondaryWeaponAmbits: - type: string - format: uint64 - secondaryWeaponTargets: - type: string - format: uint64 - secondaryWeaponShots: - type: string - format: uint64 - secondaryWeaponDamage: - type: string - format: uint64 - secondaryWeaponBlockable: - type: boolean - secondaryWeaponCounterable: - type: boolean - secondaryWeaponRecoilDamage: - type: string - format: uint64 - secondaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - secondaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - passiveWeaponry: - title: Tech Tree Features - type: string - enum: - - noPassiveWeaponry - - counterAttack - - strongCounterAttack - - advancedCounterAttack - - lastResort - default: noPassiveWeaponry - unitDefenses: - type: string - enum: - - noUnitDefenses - - defensiveManeuver - - signalJamming - - armour - - indirectCombatModule - - stealthMode - - perimeterFencing - - reinforcedWalls - default: noUnitDefenses - oreReserveDefenses: - type: string - enum: - - noOreReserveDefenses - - coordinatedReserveResponseTracker - - rapidResponsePackage - - activeScanning - - monitoringStation - - oreBunker - default: noOreReserveDefenses - planetaryDefenses: - type: string - enum: - - noPlanetaryDefense - - defensiveCannon - - lowOrbitBallisticInterceptorNetwork - default: noPlanetaryDefense - title: >- - - lowOrbitBallisticInterceptorNetwork: - advancedLowOrbitBallisticInterceptorNetwork = 3; - - repairNetwork = 4; - - coordinatedGlobalShieldNetwork = 5; - - orbitalJammingStation = 6; - - advancedOrbitalJammingStation = 7; - planetaryMining: - type: string - enum: - - noPlanetaryMining - - oreMiningRig - default: noPlanetaryMining - planetaryRefinery: - type: string - enum: - - noPlanetaryRefinery - - oreRefinery - default: noPlanetaryRefinery - powerGeneration: - type: string - enum: - - noPowerGeneration - - smallGenerator - - mediumGenerator - - largeGenerator - default: noPowerGeneration - activateCharge: - type: string - format: uint64 - title: Charge uses - buildCharge: - type: string - format: uint64 - defendChangeCharge: - type: string - format: uint64 - moveCharge: - type: string - format: uint64 - oreMiningCharge: - type: string - format: uint64 - oreRefiningCharge: - type: string - format: uint64 - stealthActivateCharge: - type: string - format: uint64 - attackReduction: - type: string - format: uint64 - description: For Defensive Cannon - title: Tech Tree Attributes - attackCounterable: - type: boolean - title: For Indirect Combat Module - stealthSystems: - type: boolean - title: For Stealth Mode - counterAttack: - type: string - format: uint64 - title: Counter - counterAttackSameAmbit: - type: string - format: uint64 - title: Advanced Counter - postDestructionDamage: - type: string - format: uint64 - generatingRate: - type: string - format: uint64 - title: Power Generation - planetaryShieldContribution: - type: string - format: uint64 - title: The shield that is added to the Planet - oreMiningDifficulty: - type: string - format: uint64 - oreRefiningDifficulty: - type: string - format: uint64 - unguidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - unguidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - guidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - guidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - triggerRaidDefeatByDestruction: - type: boolean - description: >- - I wish this was higher up in a different area of the - definition - - but I really don't feel like renumbering this entire thing - again. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - format: uint64 - tags: - - Query - /structs/structs/params: - get: - summary: Parameters queries the parameters of the module. - operationId: StructsStructsQuery_Params - responses: - '200': - description: A successful response. - schema: - type: object - properties: - params: - description: params holds all the parameters of this module. - type: object - description: >- - QueryParamsResponse is response type for the Query/Params RPC - method. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - tags: - - Query - /structs/substation: - get: - operationId: StructsStructsQuery_SubstationAll - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Substation: - type: array - items: - type: object - properties: - id: - type: string - owner: - type: string - creator: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: >- - PageResponse is to be embedded in gRPC response messages where - the - - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: pagination.key - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - in: query - required: false - type: string - format: byte - - name: pagination.offset - description: >- - offset is a numeric offset that can be used when key is unavailable. - - It is less efficient than using key. Only one of offset or key - should - - be set. - in: query - required: false - type: string - format: uint64 - - name: pagination.limit - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - in: query - required: false - type: string - format: uint64 - - name: pagination.count_total - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in - UIs. - - count_total is only respected when offset is used. It is ignored - when key - - is set. - in: query - required: false - type: boolean - - name: pagination.reverse - description: >- - reverse is set to true if results are to be returned in the - descending order. - - - Since: cosmos-sdk 0.43 - in: query - required: false - type: boolean - tags: - - Query - /structs/substation/{id}: - get: - summary: Queries a list of Substation items. - operationId: StructsStructsQuery_Substation - responses: - '200': - description: A successful response. - schema: - type: object - properties: - Substation: - type: object - properties: - id: - type: string - owner: - type: string - creator: - type: string - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: id - in: path - required: true - type: string - tags: - - Query - /structs/validate_signature/{address}/{proofPubKey}/{proofSignature}/{message}: - get: - operationId: StructsStructsQuery_ValidateSignature - responses: - '200': - description: A successful response. - schema: - type: object - properties: - pubkeyFormatError: - type: boolean - signatureFormatError: - type: boolean - addressPubkeyMismatch: - type: boolean - signatureInvalid: - type: boolean - valid: - type: boolean - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: address - in: path - required: true - type: string - - name: proofPubKey - in: path - required: true - type: string - - name: proofSignature - in: path - required: true - type: string - - name: message - in: path - required: true - type: string - tags: - - Query - /structs.structs.Msg/AddressRegister: - post: - operationId: StructsStructsMsg_AddressRegister - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - playerId: - type: string - address: - type: string - proofPubKey: - type: string - proofSignature: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/AddressRevoke: - post: - operationId: StructsStructsMsg_AddressRevoke - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - address: - type: string - tags: - - Msg - /structs.structs.Msg/AgreementCapacityDecrease: - post: - operationId: StructsStructsMsg_AgreementCapacityDecrease - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - agreementId: - type: string - capacityDecrease: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/AgreementCapacityIncrease: - post: - operationId: StructsStructsMsg_AgreementCapacityIncrease - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - agreementId: - type: string - capacityIncrease: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/AgreementClose: - post: - operationId: StructsStructsMsg_AgreementClose - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - agreementId: - type: string - tags: - - Msg - /structs.structs.Msg/AgreementDurationIncrease: - post: - operationId: StructsStructsMsg_AgreementDurationIncrease - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - agreementId: - type: string - durationIncrease: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/AgreementOpen: - post: - operationId: StructsStructsMsg_AgreementOpen - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - duration: - type: string - format: uint64 - capacity: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/AllocationCreate: - post: - operationId: StructsStructsMsg_AllocationCreate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - allocationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - controller: - type: string - sourceObjectId: - type: string - allocationType: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - power: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/AllocationDelete: - post: - operationId: StructsStructsMsg_AllocationDelete - responses: - '200': - description: A successful response. - schema: - type: object - properties: - allocationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - allocationId: - type: string - tags: - - Msg - /structs.structs.Msg/AllocationTransfer: - post: - operationId: StructsStructsMsg_AllocationTransfer - responses: - '200': - description: A successful response. - schema: - type: object - properties: - allocationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - allocationId: - type: string - controller: - type: string - tags: - - Msg - /structs.structs.Msg/AllocationUpdate: - post: - operationId: StructsStructsMsg_AllocationUpdate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - allocationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - allocationId: - type: string - power: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/FleetMove: - post: - operationId: StructsStructsMsg_FleetMove - responses: - '200': - description: A successful response. - schema: - type: object - properties: - fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - fleetId: - type: string - destinationLocationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildBankConfiscateAndBurn: - post: - operationId: StructsStructsMsg_GuildBankConfiscateAndBurn - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - address: - type: string - amountToken: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/GuildBankMint: - post: - operationId: StructsStructsMsg_GuildBankMint - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - amountAlpha: - type: string - format: uint64 - amountToken: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/GuildBankRedeem: - post: - operationId: StructsStructsMsg_GuildBankRedeem - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - amountToken: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - tags: - - Msg - /structs.structs.Msg/GuildCreate: - post: - operationId: StructsStructsMsg_GuildCreate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - endpoint: - type: string - entrySubstationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipInvite: - post: - operationId: StructsStructsMsg_GuildMembershipInvite - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipInviteApprove: - post: - operationId: StructsStructsMsg_GuildMembershipInviteApprove - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipInviteDeny: - post: - operationId: StructsStructsMsg_GuildMembershipInviteDeny - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipInviteRevoke: - post: - operationId: StructsStructsMsg_GuildMembershipInviteRevoke - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipJoin: - post: - operationId: StructsStructsMsg_GuildMembershipJoin - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - infusionId: - type: array - items: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipJoinProxy: - post: - operationId: StructsStructsMsg_GuildMembershipJoinProxy - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - address: - type: string - substationId: - type: string - proofPubKey: - type: string - proofSignature: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipKick: - post: - operationId: StructsStructsMsg_GuildMembershipKick - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipRequest: - post: - operationId: StructsStructsMsg_GuildMembershipRequest - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipRequestApprove: - post: - operationId: StructsStructsMsg_GuildMembershipRequestApprove - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipRequestDeny: - post: - operationId: StructsStructsMsg_GuildMembershipRequestDeny - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildMembershipRequestRevoke: - post: - operationId: StructsStructsMsg_GuildMembershipRequestRevoke - responses: - '200': - description: A successful response. - schema: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildUpdateEndpoint: - post: - operationId: StructsStructsMsg_GuildUpdateEndpoint - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - endpoint: - type: string - tags: - - Msg - /structs.structs.Msg/GuildUpdateEntrySubstationId: - post: - operationId: StructsStructsMsg_GuildUpdateEntrySubstationId - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - entrySubstationId: - type: string - tags: - - Msg - /structs.structs.Msg/GuildUpdateJoinInfusionMinimum: - post: - operationId: StructsStructsMsg_GuildUpdateJoinInfusionMinimum - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - joinInfusionMinimum: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/GuildUpdateJoinInfusionMinimumBypassByInvite: - post: - operationId: StructsStructsMsg_GuildUpdateJoinInfusionMinimumBypassByInvite - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - guildJoinBypassLevel: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - tags: - - Msg - /structs.structs.Msg/GuildUpdateJoinInfusionMinimumBypassByRequest: - post: - operationId: StructsStructsMsg_GuildUpdateJoinInfusionMinimumBypassByRequest - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - guildJoinBypassLevel: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - tags: - - Msg - /structs.structs.Msg/GuildUpdateOwnerId: - post: - operationId: StructsStructsMsg_GuildUpdateOwnerId - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - guildId: - type: string - owner: - type: string - tags: - - Msg - /structs.structs.Msg/PermissionGrantOnAddress: - post: - operationId: StructsStructsMsg_PermissionGrantOnAddress - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - address: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/PermissionGrantOnObject: - post: - operationId: StructsStructsMsg_PermissionGrantOnObject - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - objectId: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/PermissionRevokeOnAddress: - post: - operationId: StructsStructsMsg_PermissionRevokeOnAddress - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - address: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/PermissionRevokeOnObject: - post: - operationId: StructsStructsMsg_PermissionRevokeOnObject - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - objectId: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/PermissionSetOnAddress: - post: - operationId: StructsStructsMsg_PermissionSetOnAddress - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - address: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/PermissionSetOnObject: - post: - operationId: StructsStructsMsg_PermissionSetOnObject - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - objectId: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/PlanetExplore: - post: - operationId: StructsStructsMsg_PlanetExplore - responses: - '200': - description: A successful response. - schema: - type: object - properties: - planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/PlanetRaidComplete: - post: - operationId: StructsStructsMsg_PlanetRaidComplete - responses: - '200': - description: A successful response. - schema: - type: object - properties: - fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - oreStolen: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - fleetId: - type: string - proof: - type: string - nonce: - type: string - tags: - - Msg - /structs.structs.Msg/PlayerResume: - post: - operationId: StructsStructsMsg_PlayerResume - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/PlayerUpdatePrimaryAddress: - post: - operationId: StructsStructsMsg_PlayerUpdatePrimaryAddress - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - playerId: - type: string - primaryAddress: - type: string - tags: - - Msg - /structs.structs.Msg/ProviderCreate: - post: - operationId: StructsStructsMsg_ProviderCreate - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/ProviderDelete: - post: - operationId: StructsStructsMsg_ProviderDelete - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - tags: - - Msg - /structs.structs.Msg/ProviderGuildGrant: - post: - operationId: StructsStructsMsg_ProviderGuildGrant - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - guildId: - type: array - items: - type: string - tags: - - Msg - /structs.structs.Msg/ProviderGuildRevoke: - post: - operationId: StructsStructsMsg_ProviderGuildRevoke - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - guildId: - type: array - items: - type: string - tags: - - Msg - /structs.structs.Msg/ProviderUpdateAccessPolicy: - post: - operationId: StructsStructsMsg_ProviderUpdateAccessPolicy - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - tags: - - Msg - /structs.structs.Msg/ProviderUpdateCapacityMaximum: - post: - operationId: StructsStructsMsg_ProviderUpdateCapacityMaximum - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - newMaximumCapacity: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/ProviderUpdateCapacityMinimum: - post: - operationId: StructsStructsMsg_ProviderUpdateCapacityMinimum - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - newMinimumCapacity: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/ProviderUpdateDurationMaximum: - post: - operationId: StructsStructsMsg_ProviderUpdateDurationMaximum - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - newMaximumDuration: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/ProviderUpdateDurationMinimum: - post: - operationId: StructsStructsMsg_ProviderUpdateDurationMinimum - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - newMinimumDuration: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/ProviderWithdrawBalance: - post: - operationId: StructsStructsMsg_ProviderWithdrawBalance - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - providerId: - type: string - destinationAddress: - type: string - tags: - - Msg - /structs.structs.Msg/StructActivate: - post: - operationId: StructsStructsMsg_StructActivate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - tags: - - Msg - /structs.structs.Msg/StructAttack: - post: - operationId: StructsStructsMsg_StructAttack - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - operatingStructId: - type: string - targetStructId: - type: array - items: - type: string - weaponSystem: - type: string - tags: - - Msg - /structs.structs.Msg/StructBuildCancel: - post: - operationId: StructsStructsMsg_StructBuildCancel - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - tags: - - Msg - /structs.structs.Msg/StructBuildComplete: - post: - operationId: StructsStructsMsg_StructBuildComplete - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - proof: - type: string - nonce: - type: string - tags: - - Msg - /structs.structs.Msg/StructBuildInitiate: - post: - operationId: StructsStructsMsg_StructBuildInitiate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - playerId: - type: string - structTypeId: - type: string - format: uint64 - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - title: objectType locationType = 4; - slot: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/StructDeactivate: - post: - operationId: StructsStructsMsg_StructDeactivate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - tags: - - Msg - /structs.structs.Msg/StructDefenseClear: - post: - operationId: StructsStructsMsg_StructDefenseClear - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - defenderStructId: - type: string - tags: - - Msg - /structs.structs.Msg/StructDefenseSet: - post: - operationId: StructsStructsMsg_StructDefenseSet - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - defenderStructId: - type: string - protectedStructId: - type: string - tags: - - Msg - /structs.structs.Msg/StructGeneratorInfuse: - post: - operationId: StructsStructsMsg_StructGeneratorInfuse - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - infuseAmount: - type: string - tags: - - Msg - /structs.structs.Msg/StructMove: - post: - operationId: StructsStructsMsg_StructMove - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - ambit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - tags: - - Msg - /structs.structs.Msg/StructOreMinerComplete: - post: - operationId: StructsStructsMsg_StructOreMinerComplete - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - proof: - type: string - nonce: - type: string - tags: - - Msg - /structs.structs.Msg/StructOreRefineryComplete: - post: - operationId: StructsStructsMsg_StructOreRefineryComplete - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - proof: - type: string - nonce: - type: string - tags: - - Msg - /structs.structs.Msg/StructStealthActivate: - post: - operationId: StructsStructsMsg_StructStealthActivate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - tags: - - Msg - /structs.structs.Msg/StructStealthDeactivate: - post: - operationId: StructsStructsMsg_StructStealthDeactivate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - structId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationAllocationConnect: - post: - operationId: StructsStructsMsg_SubstationAllocationConnect - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - allocationId: - type: string - destinationId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationAllocationDisconnect: - post: - operationId: StructsStructsMsg_SubstationAllocationDisconnect - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - allocationId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationCreate: - post: - operationId: StructsStructsMsg_SubstationCreate - responses: - '200': - description: A successful response. - schema: - type: object - properties: - substationId: - type: string - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - owner: - type: string - allocationId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationDelete: - post: - operationId: StructsStructsMsg_SubstationDelete - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - substationId: - type: string - migrationSubstationId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationPlayerConnect: - post: - operationId: StructsStructsMsg_SubstationPlayerConnect - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - substationId: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationPlayerDisconnect: - post: - operationId: StructsStructsMsg_SubstationPlayerDisconnect - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - playerId: - type: string - tags: - - Msg - /structs.structs.Msg/SubstationPlayerMigrate: - post: - operationId: StructsStructsMsg_SubstationPlayerMigrate - responses: - '200': - description: A successful response. - schema: - type: object - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - in: body - required: true - schema: - type: object - properties: - creator: - type: string - substationId: - type: string - playerId: - type: array - items: - type: string - tags: - - Msg - /structs.structs.Msg/UpdateParams: - post: - summary: |- - UpdateParams defines a (governance) operation for updating the module - parameters. The authority defaults to the x/gov module account. - operationId: StructsStructsMsg_UpdateParams - responses: - '200': - description: A successful response. - schema: - type: object - description: >- - MsgUpdateParamsResponse defines the response structure for - executing a - - MsgUpdateParams message. - default: - description: An unexpected error response. - schema: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - additionalProperties: {} - parameters: - - name: body - description: MsgUpdateParams is the Msg/UpdateParams request type. - in: body - required: true - schema: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to - x/gov unless overwritten). - params: - description: |- - params defines the module parameters to update. - - NOTE: All parameters must be supplied. - type: object - description: MsgUpdateParams is the Msg/UpdateParams request type. - tags: - - Msg -definitions: - cosmos.auth.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/auth parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - max_memo_characters: - type: string - format: uint64 - tx_sig_limit: - type: string - format: uint64 - tx_size_cost_per_byte: - type: string - format: uint64 - sig_verify_cost_ed25519: - type: string - format: uint64 - sig_verify_cost_secp256k1: - type: string - format: uint64 - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.auth.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.auth.v1beta1.Params: - type: object - properties: - max_memo_characters: - type: string - format: uint64 - tx_sig_limit: - type: string - format: uint64 - tx_size_cost_per_byte: - type: string - format: uint64 - sig_verify_cost_ed25519: - type: string - format: uint64 - sig_verify_cost_secp256k1: - type: string - format: uint64 - description: Params defines the parameters for the auth module. - google.protobuf.Any: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a canonical - form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types that - they - - expect it to use in the context of Any. However, for URLs which use - the - - scheme `http`, `https`, or no scheme, one can optionally set up a type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along with - a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - google.rpc.Status: - type: object - properties: - code: - type: integer - format: int32 - message: - type: string - details: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up - a type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning - with - - type.googleapis.com. As of May 2023, there are no widely used - type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might - be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any - type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - cosmos.authz.v1beta1.Grant: - type: object - properties: - authorization: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - expiration: - type: string - format: date-time - title: >- - time when the grant will expire and will be pruned. If null, then the - grant - - doesn't have a time expiration (other conditions in `authorization` - - may apply to invalidate the grant) - description: |- - Grant gives permissions to execute - the provide method with expiration time. - cosmos.authz.v1beta1.MsgExec: - type: object - properties: - grantee: - type: string - msgs: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up - a type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning - with - - type.googleapis.com. As of May 2023, there are no widely used - type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might - be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any - type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - description: >- - Execute Msg. - - The x/authz will try to find a grant matching (msg.signers[0], - grantee, MsgTypeURL(msg)) - - triple and validate it. - description: |- - MsgExec attempts to execute the provided messages using - authorizations granted to the grantee. Each message should have only - one signer corresponding to the granter of the authorization. - cosmos.authz.v1beta1.MsgExecResponse: - type: object - properties: - results: - type: array - items: - type: string - format: byte - description: MsgExecResponse defines the Msg/MsgExecResponse response type. - cosmos.authz.v1beta1.MsgGrant: - type: object - properties: - granter: - type: string - grantee: - type: string - grant: - type: object - properties: - authorization: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally set - up a type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on - the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning - with - - type.googleapis.com. As of May 2023, there are no widely used - type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might - be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message - along with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any - type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the - unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a - field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - expiration: - type: string - format: date-time - title: >- - time when the grant will expire and will be pruned. If null, then - the grant - - doesn't have a time expiration (other conditions in - `authorization` - - may apply to invalidate the grant) - description: |- - Grant gives permissions to execute - the provide method with expiration time. - description: >- - MsgGrant is a request type for Grant method. It declares authorization to - the grantee - - on behalf of the granter with the provided expiration time. - cosmos.authz.v1beta1.MsgGrantResponse: - type: object - description: MsgGrantResponse defines the Msg/MsgGrant response type. - cosmos.authz.v1beta1.MsgRevoke: - type: object - properties: - granter: - type: string - grantee: - type: string - msg_type_url: - type: string - description: |- - MsgRevoke revokes any authorization with the provided sdk.Msg type on the - granter's account with that has been granted to the grantee. - cosmos.authz.v1beta1.MsgRevokeResponse: - type: object - description: MsgRevokeResponse defines the Msg/MsgRevokeResponse response type. - cosmos.bank.v1beta1.Input: - type: object - properties: - address: - type: string - coins: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: Input models transaction input. - cosmos.bank.v1beta1.MsgMultiSend: - type: object - properties: - inputs: - type: array - items: - type: object - properties: - address: - type: string - coins: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: Input models transaction input. - description: >- - Inputs, despite being `repeated`, only allows one sender input. This - is - - checked in MsgMultiSend's ValidateBasic. - outputs: - type: array - items: - type: object - properties: - address: - type: string - coins: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: Output models transaction outputs. - description: MsgMultiSend represents an arbitrary multi-in, multi-out send message. - cosmos.bank.v1beta1.MsgMultiSendResponse: - type: object - description: MsgMultiSendResponse defines the Msg/MultiSend response type. - cosmos.bank.v1beta1.MsgSend: - type: object - properties: - from_address: - type: string - to_address: - type: string - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: MsgSend represents a message to send coins from one account to another. - cosmos.bank.v1beta1.MsgSendResponse: - type: object - description: MsgSendResponse defines the Msg/Send response type. - cosmos.bank.v1beta1.MsgSetSendEnabled: - type: object - properties: - authority: - type: string - description: authority is the address that controls the module. - send_enabled: - type: array - items: - type: object - properties: - denom: - type: string - enabled: - type: boolean - description: >- - SendEnabled maps coin denom to a send_enabled status (whether a - denom is - - sendable). - description: send_enabled is the list of entries to add or update. - use_default_for: - type: array - items: - type: string - description: >- - use_default_for is a list of denoms that should use the - params.default_send_enabled value. - - Denoms listed here will have their SendEnabled entries deleted. - - If a denom is included that doesn't have a SendEnabled entry, - - it will be ignored. - description: |- - MsgSetSendEnabled is the Msg/SetSendEnabled request type. - - Only entries to add/update/delete need to be included. - Existing SendEnabled entries that are not included in this - message are left unchanged. - - Since: cosmos-sdk 0.47 - cosmos.bank.v1beta1.MsgSetSendEnabledResponse: - type: object - description: |- - MsgSetSendEnabledResponse defines the Msg/SetSendEnabled response type. - - Since: cosmos-sdk 0.47 - cosmos.bank.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/bank parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - send_enabled: - type: array - items: - type: object - properties: - denom: - type: string - enabled: - type: boolean - description: >- - SendEnabled maps coin denom to a send_enabled status (whether a - denom is - - sendable). - description: >- - Deprecated: Use of SendEnabled in params is deprecated. - - For genesis, use the newly added send_enabled field in the genesis - object. - - Storage, lookup, and manipulation of this information is now in - the keeper. - - - As of cosmos-sdk 0.47, this only exists for backwards - compatibility of genesis files. - default_send_enabled: - type: boolean - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.bank.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.bank.v1beta1.Output: - type: object - properties: - address: - type: string - coins: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: Output models transaction outputs. - cosmos.bank.v1beta1.Params: - type: object - properties: - send_enabled: - type: array - items: - type: object - properties: - denom: - type: string - enabled: - type: boolean - description: >- - SendEnabled maps coin denom to a send_enabled status (whether a - denom is - - sendable). - description: >- - Deprecated: Use of SendEnabled in params is deprecated. - - For genesis, use the newly added send_enabled field in the genesis - object. - - Storage, lookup, and manipulation of this information is now in the - keeper. - - - As of cosmos-sdk 0.47, this only exists for backwards compatibility of - genesis files. - default_send_enabled: - type: boolean - description: Params defines the parameters for the bank module. - cosmos.bank.v1beta1.SendEnabled: - type: object - properties: - denom: - type: string - enabled: - type: boolean - description: |- - SendEnabled maps coin denom to a send_enabled status (whether a denom is - sendable). - cosmos.base.v1beta1.Coin: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - cosmos.base.node.v1beta1.ConfigResponse: - type: object - properties: - minimum_gas_price: - type: string - pruning_keep_recent: - type: string - pruning_interval: - type: string - halt_height: - type: string - format: uint64 - description: ConfigResponse defines the response structure for the Config gRPC query. - cosmos.base.node.v1beta1.StatusResponse: - type: object - properties: - earliest_store_height: - type: string - format: uint64 - title: earliest block height available in the store - height: - type: string - format: uint64 - title: current block height - timestamp: - type: string - format: date-time - title: block height timestamp - app_hash: - type: string - format: byte - title: app hash of the current block - validator_hash: - type: string - format: byte - title: validator hash provided by the consensus header - description: StateResponse defines the response structure for the status of a node. - cosmos.consensus.v1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - block: - description: |- - params defines the x/consensus parameters to update. - VersionsParams is not included in this Msg because it is tracked - separarately in x/upgrade. - - NOTE: All parameters must be supplied. - type: object - properties: - max_bytes: - type: string - format: int64 - title: |- - Max block size, in bytes. - Note: must be greater than 0 - max_gas: - type: string - format: int64 - title: |- - Max gas per block. - Note: must be greater or equal to -1 - evidence: - type: object - properties: - max_age_num_blocks: - type: string - format: int64 - description: >- - Max age of evidence, in blocks. - - - The basic formula for calculating this is: MaxAgeDuration / - {average block - - time}. - max_age_duration: - type: string - description: >- - Max age of evidence, in time. - - - It should correspond with an app's "unbonding period" or other - similar - - mechanism for handling [Nothing-At-Stake - - attacks](https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ#what-is-the-nothing-at-stake-problem-and-how-can-it-be-fixed). - max_bytes: - type: string - format: int64 - title: >- - This sets the maximum size of total evidence in bytes that can be - committed in a single block. - - and should fall comfortably under the max block bytes. - - Default is 1048576 or 1MB - description: EvidenceParams determine how we handle evidence of malfeasance. - validator: - type: object - properties: - pub_key_types: - type: array - items: - type: string - description: |- - ValidatorParams restrict the public key types validators can use. - NOTE: uses ABCI pubkey naming, not Amino names. - abci: - title: 'Since: cosmos-sdk 0.50' - type: object - properties: - vote_extensions_enable_height: - type: string - format: int64 - description: >- - vote_extensions_enable_height configures the first height during - which - - vote extensions will be enabled. During this specified height, and - for all - - subsequent heights, precommit messages that do not contain valid - extension data - - will be considered invalid. Prior to this height, vote extensions - will not - - be used or accepted by validators on the network. - - - Once enabled, vote extensions will be created by the application - in ExtendVote, - - passed to the application for validation in VerifyVoteExtension - and given - - to the application to use when proposing a block during - PrepareProposal. - description: >- - ABCIParams configure functionality specific to the Application - Blockchain Interface. - description: MsgUpdateParams is the Msg/UpdateParams request type. - cosmos.consensus.v1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - tendermint.types.ABCIParams: - type: object - properties: - vote_extensions_enable_height: - type: string - format: int64 - description: >- - vote_extensions_enable_height configures the first height during which - - vote extensions will be enabled. During this specified height, and for - all - - subsequent heights, precommit messages that do not contain valid - extension data - - will be considered invalid. Prior to this height, vote extensions will - not - - be used or accepted by validators on the network. - - - Once enabled, vote extensions will be created by the application in - ExtendVote, - - passed to the application for validation in VerifyVoteExtension and - given - - to the application to use when proposing a block during - PrepareProposal. - description: >- - ABCIParams configure functionality specific to the Application Blockchain - Interface. - tendermint.types.BlockParams: - type: object - properties: - max_bytes: - type: string - format: int64 - title: |- - Max block size, in bytes. - Note: must be greater than 0 - max_gas: - type: string - format: int64 - title: |- - Max gas per block. - Note: must be greater or equal to -1 - description: BlockParams contains limits on the block size. - tendermint.types.EvidenceParams: - type: object - properties: - max_age_num_blocks: - type: string - format: int64 - description: >- - Max age of evidence, in blocks. - - - The basic formula for calculating this is: MaxAgeDuration / {average - block - - time}. - max_age_duration: - type: string - description: >- - Max age of evidence, in time. - - - It should correspond with an app's "unbonding period" or other similar - - mechanism for handling [Nothing-At-Stake - - attacks](https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQ#what-is-the-nothing-at-stake-problem-and-how-can-it-be-fixed). - max_bytes: - type: string - format: int64 - title: >- - This sets the maximum size of total evidence in bytes that can be - committed in a single block. - - and should fall comfortably under the max block bytes. - - Default is 1048576 or 1MB - description: EvidenceParams determine how we handle evidence of malfeasance. - tendermint.types.ValidatorParams: - type: object - properties: - pub_key_types: - type: array - items: - type: string - description: |- - ValidatorParams restrict the public key types validators can use. - NOTE: uses ABCI pubkey naming, not Amino names. - cosmos.crisis.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - constant_fee: - description: constant_fee defines the x/crisis parameter. - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.crisis.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.crisis.v1beta1.MsgVerifyInvariant: - type: object - properties: - sender: - type: string - description: >- - sender is the account address of private key to send coins to fee - collector account. - invariant_module_name: - type: string - description: name of the invariant module. - invariant_route: - type: string - description: invariant_route is the msg's invariant route. - description: MsgVerifyInvariant represents a message to verify a particular invariance. - cosmos.crisis.v1beta1.MsgVerifyInvariantResponse: - type: object - description: MsgVerifyInvariantResponse defines the Msg/VerifyInvariant response type. - cosmos.distribution.v1beta1.MsgCommunityPoolSpend: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - recipient: - type: string - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: >- - MsgCommunityPoolSpend defines a message for sending tokens from the - community - - pool to another account. This message is typically executed via a - governance - - proposal with the governance module being the executing authority. - - - Since: cosmos-sdk 0.47 - cosmos.distribution.v1beta1.MsgCommunityPoolSpendResponse: - type: object - description: |- - MsgCommunityPoolSpendResponse defines the response to executing a - MsgCommunityPoolSpend message. - - Since: cosmos-sdk 0.47 - cosmos.distribution.v1beta1.MsgDepositValidatorRewardsPool: - type: object - properties: - depositor: - type: string - validator_address: - type: string - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: |- - DepositValidatorRewardsPool defines the request structure to provide - additional rewards to delegators from a specific validator. - - Since: cosmos-sdk 0.50 - cosmos.distribution.v1beta1.MsgDepositValidatorRewardsPoolResponse: - type: object - description: |- - MsgDepositValidatorRewardsPoolResponse defines the response to executing a - MsgDepositValidatorRewardsPool message. - - Since: cosmos-sdk 0.50 - cosmos.distribution.v1beta1.MsgFundCommunityPool: - type: object - properties: - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - depositor: - type: string - description: |- - MsgFundCommunityPool allows an account to directly - fund the community pool. - cosmos.distribution.v1beta1.MsgFundCommunityPoolResponse: - type: object - description: >- - MsgFundCommunityPoolResponse defines the Msg/FundCommunityPool response - type. - cosmos.distribution.v1beta1.MsgSetWithdrawAddress: - type: object - properties: - delegator_address: - type: string - withdraw_address: - type: string - description: |- - MsgSetWithdrawAddress sets the withdraw address for - a delegator (or validator self-delegation). - cosmos.distribution.v1beta1.MsgSetWithdrawAddressResponse: - type: object - description: |- - MsgSetWithdrawAddressResponse defines the Msg/SetWithdrawAddress response - type. - cosmos.distribution.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/distribution parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - community_tax: - type: string - base_proposer_reward: - type: string - description: >- - Deprecated: The base_proposer_reward field is deprecated and is no - longer used - - in the x/distribution module's reward mechanism. - bonus_proposer_reward: - type: string - description: >- - Deprecated: The bonus_proposer_reward field is deprecated and is - no longer used - - in the x/distribution module's reward mechanism. - withdraw_addr_enabled: - type: boolean - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.distribution.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - description: |- - MsgWithdrawDelegatorReward represents delegation withdrawal to a delegator - from a single validator. - cosmos.distribution.v1beta1.MsgWithdrawDelegatorRewardResponse: - type: object - properties: - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: 'Since: cosmos-sdk 0.46' - description: |- - MsgWithdrawDelegatorRewardResponse defines the Msg/WithdrawDelegatorReward - response type. - cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission: - type: object - properties: - validator_address: - type: string - description: >- - MsgWithdrawValidatorCommission withdraws the full commission to the - validator - - address. - cosmos.distribution.v1beta1.MsgWithdrawValidatorCommissionResponse: - type: object - properties: - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: 'Since: cosmos-sdk 0.46' - description: |- - MsgWithdrawValidatorCommissionResponse defines the - Msg/WithdrawValidatorCommission response type. - cosmos.distribution.v1beta1.Params: - type: object - properties: - community_tax: - type: string - base_proposer_reward: - type: string - description: >- - Deprecated: The base_proposer_reward field is deprecated and is no - longer used - - in the x/distribution module's reward mechanism. - bonus_proposer_reward: - type: string - description: >- - Deprecated: The bonus_proposer_reward field is deprecated and is no - longer used - - in the x/distribution module's reward mechanism. - withdraw_addr_enabled: - type: boolean - description: Params defines the set of params for the distribution module. - cosmos.evidence.v1beta1.MsgSubmitEvidence: - type: object - properties: - submitter: - type: string - description: submitter is the signer account address of evidence. - evidence: - description: evidence defines the evidence of misbehavior. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: |- - MsgSubmitEvidence represents a message that supports submitting arbitrary - Evidence of misbehavior such as equivocation or counterfactual signing. - cosmos.evidence.v1beta1.MsgSubmitEvidenceResponse: - type: object - properties: - hash: - type: string - format: byte - description: hash defines the hash of the evidence. - description: MsgSubmitEvidenceResponse defines the Msg/SubmitEvidence response type. - cosmos.feegrant.v1beta1.MsgGrantAllowance: - type: object - properties: - granter: - type: string - description: >- - granter is the address of the user granting an allowance of their - funds. - grantee: - type: string - description: >- - grantee is the address of the user being granted an allowance of - another user's funds. - allowance: - description: allowance can be any of basic, periodic, allowed fee allowance. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: |- - MsgGrantAllowance adds permission for Grantee to spend up to Allowance - of fees from the account of Granter. - cosmos.feegrant.v1beta1.MsgGrantAllowanceResponse: - type: object - description: >- - MsgGrantAllowanceResponse defines the Msg/GrantAllowanceResponse response - type. - cosmos.feegrant.v1beta1.MsgPruneAllowances: - type: object - properties: - pruner: - type: string - description: pruner is the address of the user pruning expired allowances. - description: |- - MsgPruneAllowances prunes expired fee allowances. - - Since cosmos-sdk 0.50 - cosmos.feegrant.v1beta1.MsgPruneAllowancesResponse: - type: object - description: >- - MsgPruneAllowancesResponse defines the Msg/PruneAllowancesResponse - response type. - - - Since cosmos-sdk 0.50 - cosmos.feegrant.v1beta1.MsgRevokeAllowance: - type: object - properties: - granter: - type: string - description: >- - granter is the address of the user granting an allowance of their - funds. - grantee: - type: string - description: >- - grantee is the address of the user being granted an allowance of - another user's funds. - description: MsgRevokeAllowance removes any existing Allowance from Granter to Grantee. - cosmos.feegrant.v1beta1.MsgRevokeAllowanceResponse: - type: object - description: >- - MsgRevokeAllowanceResponse defines the Msg/RevokeAllowanceResponse - response type. - cosmos.gov.v1.MsgCancelProposal: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - proposer: - type: string - description: proposer is the account address of the proposer. - description: |- - MsgCancelProposal is the Msg/CancelProposal request type. - - Since: cosmos-sdk 0.50 - cosmos.gov.v1.MsgCancelProposalResponse: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - canceled_time: - type: string - format: date-time - description: canceled_time is the time when proposal is canceled. - canceled_height: - type: string - format: uint64 - description: >- - canceled_height defines the block height at which the proposal is - canceled. - description: |- - MsgCancelProposalResponse defines the response structure for executing a - MsgCancelProposal message. - - Since: cosmos-sdk 0.50 - cosmos.gov.v1.MsgDeposit: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - depositor: - type: string - description: depositor defines the deposit addresses from the proposals. - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: amount to be deposited by depositor. - description: MsgDeposit defines a message to submit a deposit to an existing proposal. - cosmos.gov.v1.MsgDepositResponse: - type: object - description: MsgDepositResponse defines the Msg/Deposit response type. - cosmos.gov.v1.MsgExecLegacyContent: - type: object - properties: - content: - description: content is the proposal's content. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - authority: - type: string - description: authority must be the gov module address. - description: >- - MsgExecLegacyContent is used to wrap the legacy content field into a - message. - - This ensures backwards compatibility with v1beta1.MsgSubmitProposal. - cosmos.gov.v1.MsgExecLegacyContentResponse: - type: object - description: >- - MsgExecLegacyContentResponse defines the Msg/ExecLegacyContent response - type. - cosmos.gov.v1.MsgSubmitProposal: - type: object - properties: - messages: - type: array - items: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up - a type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning - with - - type.googleapis.com. As of May 2023, there are no widely used - type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might - be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any - type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - description: messages are the arbitrary messages to be executed if proposal passes. - initial_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: >- - initial_deposit is the deposit value that must be paid at proposal - submission. - proposer: - type: string - description: proposer is the account address of the proposer. - metadata: - type: string - description: metadata is any arbitrary metadata attached to the proposal. - title: - type: string - description: |- - title is the title of the proposal. - - Since: cosmos-sdk 0.47 - summary: - type: string - description: 'Since: cosmos-sdk 0.47' - title: summary is the summary of the proposal - expedited: - type: boolean - description: 'Since: cosmos-sdk 0.50' - title: expedited defines if the proposal is expedited or not - description: >- - MsgSubmitProposal defines an sdk.Msg type that supports submitting - arbitrary - - proposal Content. - cosmos.gov.v1.MsgSubmitProposalResponse: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - description: MsgSubmitProposalResponse defines the Msg/SubmitProposal response type. - cosmos.gov.v1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/gov parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - min_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: Minimum deposit for a proposal to enter voting period. - max_deposit_period: - type: string - description: >- - Maximum period for Atom holders to deposit on a proposal. Initial - value: 2 - - months. - voting_period: - type: string - description: Duration of the voting period. - quorum: - type: string - description: >- - Minimum percentage of total stake needed to vote for a result to - be - considered valid. - threshold: - type: string - description: >- - Minimum proportion of Yes votes for proposal to pass. Default - value: 0.5. - veto_threshold: - type: string - description: >- - Minimum value of Veto votes to Total votes ratio for proposal to - be - vetoed. Default value: 1/3. - min_initial_deposit_ratio: - type: string - description: >- - The ratio representing the proportion of the deposit value that - must be paid at proposal submission. - proposal_cancel_ratio: - type: string - description: >- - The cancel ratio which will not be returned back to the depositors - when a proposal is cancelled. - - - Since: cosmos-sdk 0.50 - proposal_cancel_dest: - type: string - description: >- - The address which will receive (proposal_cancel_ratio * deposit) - proposal deposits. - - If empty, the (proposal_cancel_ratio * deposit) proposal deposits - will be burned. - - - Since: cosmos-sdk 0.50 - expedited_voting_period: - type: string - description: |- - Duration of the voting period of an expedited proposal. - - Since: cosmos-sdk 0.50 - expedited_threshold: - type: string - description: >- - Minimum proportion of Yes votes for proposal to pass. Default - value: 0.67. - - - Since: cosmos-sdk 0.50 - expedited_min_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - description: Minimum expedited deposit for a proposal to enter voting period. - burn_vote_quorum: - type: boolean - title: burn deposits if a proposal does not meet quorum - burn_proposal_deposit_prevote: - type: boolean - title: burn deposits if the proposal does not enter voting period - burn_vote_veto: - type: boolean - title: burn deposits if quorum with vote type no_veto is met - min_deposit_ratio: - type: string - description: >- - The ratio representing the proportion of the deposit value minimum - that must be met when making a deposit. - - Default value: 0.01. Meaning that for a chain with a min_deposit - of 100stake, a deposit of 1stake would be - - required. - - - Since: cosmos-sdk 0.50 - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.gov.v1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.gov.v1.MsgVote: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - option: - description: option defines the vote option. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - metadata: - type: string - description: metadata is any arbitrary metadata attached to the Vote. - description: MsgVote defines a message to cast a vote. - cosmos.gov.v1.MsgVoteResponse: - type: object - description: MsgVoteResponse defines the Msg/Vote response type. - cosmos.gov.v1.MsgVoteWeighted: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - options: - type: array - items: - type: object - properties: - option: - description: >- - option defines the valid vote options, it must not contain - duplicate vote options. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - weight: - type: string - description: weight is the vote weight associated with the vote option. - description: WeightedVoteOption defines a unit of vote for vote split. - description: options defines the weighted vote options. - metadata: - type: string - description: metadata is any arbitrary metadata attached to the VoteWeighted. - description: MsgVoteWeighted defines a message to cast a vote. - cosmos.gov.v1.MsgVoteWeightedResponse: - type: object - description: MsgVoteWeightedResponse defines the Msg/VoteWeighted response type. - cosmos.gov.v1.Params: - type: object - properties: - min_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: Minimum deposit for a proposal to enter voting period. - max_deposit_period: - type: string - description: >- - Maximum period for Atom holders to deposit on a proposal. Initial - value: 2 - - months. - voting_period: - type: string - description: Duration of the voting period. - quorum: - type: string - description: |- - Minimum percentage of total stake needed to vote for a result to be - considered valid. - threshold: - type: string - description: >- - Minimum proportion of Yes votes for proposal to pass. Default value: - 0.5. - veto_threshold: - type: string - description: |- - Minimum value of Veto votes to Total votes ratio for proposal to be - vetoed. Default value: 1/3. - min_initial_deposit_ratio: - type: string - description: >- - The ratio representing the proportion of the deposit value that must - be paid at proposal submission. - proposal_cancel_ratio: - type: string - description: >- - The cancel ratio which will not be returned back to the depositors - when a proposal is cancelled. - - - Since: cosmos-sdk 0.50 - proposal_cancel_dest: - type: string - description: >- - The address which will receive (proposal_cancel_ratio * deposit) - proposal deposits. - - If empty, the (proposal_cancel_ratio * deposit) proposal deposits will - be burned. - - - Since: cosmos-sdk 0.50 - expedited_voting_period: - type: string - description: |- - Duration of the voting period of an expedited proposal. - - Since: cosmos-sdk 0.50 - expedited_threshold: - type: string - description: >- - Minimum proportion of Yes votes for proposal to pass. Default value: - 0.67. - - - Since: cosmos-sdk 0.50 - expedited_min_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: Minimum expedited deposit for a proposal to enter voting period. - burn_vote_quorum: - type: boolean - title: burn deposits if a proposal does not meet quorum - burn_proposal_deposit_prevote: - type: boolean - title: burn deposits if the proposal does not enter voting period - burn_vote_veto: - type: boolean - title: burn deposits if quorum with vote type no_veto is met - min_deposit_ratio: - type: string - description: >- - The ratio representing the proportion of the deposit value minimum - that must be met when making a deposit. - - Default value: 0.01. Meaning that for a chain with a min_deposit of - 100stake, a deposit of 1stake would be - - required. - - - Since: cosmos-sdk 0.50 - description: |- - Params defines the parameters for the x/gov module. - - Since: cosmos-sdk 0.47 - cosmos.gov.v1.VoteOption: - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - description: >- - VoteOption enumerates the valid vote options for a given governance - proposal. - - - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option. - - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option. - - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option. - - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option. - - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option. - cosmos.gov.v1.WeightedVoteOption: - type: object - properties: - option: - description: >- - option defines the valid vote options, it must not contain duplicate - vote options. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - weight: - type: string - description: weight is the vote weight associated with the vote option. - description: WeightedVoteOption defines a unit of vote for vote split. - cosmos.gov.v1beta1.MsgDeposit: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - depositor: - type: string - description: depositor defines the deposit addresses from the proposals. - amount: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: amount to be deposited by depositor. - description: MsgDeposit defines a message to submit a deposit to an existing proposal. - cosmos.gov.v1beta1.MsgDepositResponse: - type: object - description: MsgDepositResponse defines the Msg/Deposit response type. - cosmos.gov.v1beta1.MsgSubmitProposal: - type: object - properties: - content: - description: content is the proposal's content. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - initial_deposit: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: >- - initial_deposit is the deposit value that must be paid at proposal - submission. - proposer: - type: string - description: proposer is the account address of the proposer. - description: >- - MsgSubmitProposal defines an sdk.Msg type that supports submitting - arbitrary - - proposal Content. - cosmos.gov.v1beta1.MsgSubmitProposalResponse: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - description: MsgSubmitProposalResponse defines the Msg/SubmitProposal response type. - cosmos.gov.v1beta1.MsgVote: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - option: - description: option defines the vote option. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - description: MsgVote defines a message to cast a vote. - cosmos.gov.v1beta1.MsgVoteResponse: - type: object - description: MsgVoteResponse defines the Msg/Vote response type. - cosmos.gov.v1beta1.MsgVoteWeighted: - type: object - properties: - proposal_id: - type: string - format: uint64 - description: proposal_id defines the unique id of the proposal. - voter: - type: string - description: voter is the voter address for the proposal. - options: - type: array - items: - type: object - properties: - option: - description: >- - option defines the valid vote options, it must not contain - duplicate vote options. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - weight: - type: string - description: weight is the vote weight associated with the vote option. - description: |- - WeightedVoteOption defines a unit of vote for vote split. - - Since: cosmos-sdk 0.43 - description: options defines the weighted vote options. - description: |- - MsgVoteWeighted defines a message to cast a vote. - - Since: cosmos-sdk 0.43 - cosmos.gov.v1beta1.MsgVoteWeightedResponse: - type: object - description: |- - MsgVoteWeightedResponse defines the Msg/VoteWeighted response type. - - Since: cosmos-sdk 0.43 - cosmos.gov.v1beta1.VoteOption: - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - description: >- - VoteOption enumerates the valid vote options for a given governance - proposal. - - - VOTE_OPTION_UNSPECIFIED: VOTE_OPTION_UNSPECIFIED defines a no-op vote option. - - VOTE_OPTION_YES: VOTE_OPTION_YES defines a yes vote option. - - VOTE_OPTION_ABSTAIN: VOTE_OPTION_ABSTAIN defines an abstain vote option. - - VOTE_OPTION_NO: VOTE_OPTION_NO defines a no vote option. - - VOTE_OPTION_NO_WITH_VETO: VOTE_OPTION_NO_WITH_VETO defines a no with veto vote option. - cosmos.gov.v1beta1.WeightedVoteOption: - type: object - properties: - option: - description: >- - option defines the valid vote options, it must not contain duplicate - vote options. - type: string - enum: - - VOTE_OPTION_UNSPECIFIED - - VOTE_OPTION_YES - - VOTE_OPTION_ABSTAIN - - VOTE_OPTION_NO - - VOTE_OPTION_NO_WITH_VETO - default: VOTE_OPTION_UNSPECIFIED - weight: - type: string - description: weight is the vote weight associated with the vote option. - description: |- - WeightedVoteOption defines a unit of vote for vote split. - - Since: cosmos-sdk 0.43 - cosmos.mint.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/mint parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - mint_denom: - type: string - title: type of coin to mint - inflation_rate_change: - type: string - title: maximum annual change in inflation rate - inflation_max: - type: string - title: maximum inflation rate - inflation_min: - type: string - title: minimum inflation rate - goal_bonded: - type: string - title: goal of percent bonded atoms - blocks_per_year: - type: string - format: uint64 - title: expected blocks per year - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.mint.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.mint.v1beta1.Params: - type: object - properties: - mint_denom: - type: string - title: type of coin to mint - inflation_rate_change: - type: string - title: maximum annual change in inflation rate - inflation_max: - type: string - title: maximum inflation rate - inflation_min: - type: string - title: minimum inflation rate - goal_bonded: - type: string - title: goal of percent bonded atoms - blocks_per_year: - type: string - format: uint64 - title: expected blocks per year - description: Params defines the parameters for the x/mint module. - cosmos.nft.v1beta1.MsgSend: - type: object - properties: - class_id: - type: string - title: >- - class_id defines the unique identifier of the nft classification, - similar to the contract address of ERC721 - id: - type: string - title: id defines the unique identification of nft - sender: - type: string - title: sender is the address of the owner of nft - receiver: - type: string - title: receiver is the receiver address of nft - description: >- - MsgSend represents a message to send a nft from one account to another - account. - cosmos.nft.v1beta1.MsgSendResponse: - type: object - description: MsgSendResponse defines the Msg/Send response type. - cosmos.params.v1beta1.ParamChange: - type: object - properties: - subspace: - type: string - key: - type: string - value: - type: string - description: |- - ParamChange defines an individual parameter change, for use in - ParameterChangeProposal. - cosmos.params.v1beta1.QueryParamsResponse: - type: object - properties: - param: - description: param defines the queried parameter. - type: object - properties: - subspace: - type: string - key: - type: string - value: - type: string - description: QueryParamsResponse is response type for the Query/Params RPC method. - cosmos.params.v1beta1.QuerySubspacesResponse: - type: object - properties: - subspaces: - type: array - items: - type: object - properties: - subspace: - type: string - keys: - type: array - items: - type: string - description: >- - Subspace defines a parameter subspace name and all the keys that - exist for - - the subspace. - - - Since: cosmos-sdk 0.46 - description: |- - QuerySubspacesResponse defines the response types for querying for all - registered subspaces and all keys for a subspace. - - Since: cosmos-sdk 0.46 - cosmos.params.v1beta1.Subspace: - type: object - properties: - subspace: - type: string - keys: - type: array - items: - type: string - description: |- - Subspace defines a parameter subspace name and all the keys that exist for - the subspace. - - Since: cosmos-sdk 0.46 - cosmos.slashing.v1beta1.MsgUnjail: - type: object - properties: - validator_addr: - type: string - title: MsgUnjail defines the Msg/Unjail request type - cosmos.slashing.v1beta1.MsgUnjailResponse: - type: object - title: MsgUnjailResponse defines the Msg/Unjail response type - cosmos.slashing.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/slashing parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - signed_blocks_window: - type: string - format: int64 - min_signed_per_window: - type: string - format: byte - downtime_jail_duration: - type: string - slash_fraction_double_sign: - type: string - format: byte - slash_fraction_downtime: - type: string - format: byte - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.slashing.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.slashing.v1beta1.Params: - type: object - properties: - signed_blocks_window: - type: string - format: int64 - min_signed_per_window: - type: string - format: byte - downtime_jail_duration: - type: string - slash_fraction_double_sign: - type: string - format: byte - slash_fraction_downtime: - type: string - format: byte - description: Params represents the parameters used for by the slashing module. - cosmos.staking.v1beta1.CommissionRates: - type: object - properties: - rate: - type: string - description: rate is the commission rate charged to delegators, as a fraction. - max_rate: - type: string - description: >- - max_rate defines the maximum commission rate which validator can ever - charge, as a fraction. - max_change_rate: - type: string - description: >- - max_change_rate defines the maximum daily increase of the validator - commission, as a fraction. - description: >- - CommissionRates defines the initial commission rates to be used for - creating - - a validator. - cosmos.staking.v1beta1.Description: - type: object - properties: - moniker: - type: string - description: moniker defines a human-readable name for the validator. - identity: - type: string - description: >- - identity defines an optional identity signature (ex. UPort or - Keybase). - website: - type: string - description: website defines an optional website link. - security_contact: - type: string - description: security_contact defines an optional email for security contact. - details: - type: string - description: details define other optional details. - description: Description defines a validator description. - cosmos.staking.v1beta1.MsgBeginRedelegate: - type: object - properties: - delegator_address: - type: string - validator_src_address: - type: string - validator_dst_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: |- - MsgBeginRedelegate defines a SDK message for performing a redelegation - of coins from a delegator and source validator to a destination validator. - cosmos.staking.v1beta1.MsgBeginRedelegateResponse: - type: object - properties: - completion_time: - type: string - format: date-time - description: MsgBeginRedelegateResponse defines the Msg/BeginRedelegate response type. - cosmos.staking.v1beta1.MsgCancelUnbondingDelegation: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: >- - amount is always less than or equal to unbonding delegation entry - balance - creation_height: - type: string - format: int64 - description: creation_height is the height which the unbonding took place. - description: 'Since: cosmos-sdk 0.46' - title: >- - MsgCancelUnbondingDelegation defines the SDK message for performing a - cancel unbonding delegation for delegator - cosmos.staking.v1beta1.MsgCancelUnbondingDelegationResponse: - type: object - description: 'Since: cosmos-sdk 0.46' - title: MsgCancelUnbondingDelegationResponse - cosmos.staking.v1beta1.MsgCreateValidator: - type: object - properties: - description: - type: object - properties: - moniker: - type: string - description: moniker defines a human-readable name for the validator. - identity: - type: string - description: >- - identity defines an optional identity signature (ex. UPort or - Keybase). - website: - type: string - description: website defines an optional website link. - security_contact: - type: string - description: security_contact defines an optional email for security contact. - details: - type: string - description: details define other optional details. - description: Description defines a validator description. - commission: - type: object - properties: - rate: - type: string - description: rate is the commission rate charged to delegators, as a fraction. - max_rate: - type: string - description: >- - max_rate defines the maximum commission rate which validator can - ever charge, as a fraction. - max_change_rate: - type: string - description: >- - max_change_rate defines the maximum daily increase of the - validator commission, as a fraction. - description: >- - CommissionRates defines the initial commission rates to be used for - creating - - a validator. - min_self_delegation: - type: string - delegator_address: - type: string - description: >- - Deprecated: Use of Delegator Address in MsgCreateValidator is - deprecated. - - The validator address bytes and delegator address bytes refer to the - same account while creating validator (defer - - only in bech32 notation). - validator_address: - type: string - pubkey: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - value: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: MsgCreateValidator defines a SDK message for creating a new validator. - cosmos.staking.v1beta1.MsgCreateValidatorResponse: - type: object - description: MsgCreateValidatorResponse defines the Msg/CreateValidator response type. - cosmos.staking.v1beta1.MsgDelegate: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: |- - MsgDelegate defines a SDK message for performing a delegation of coins - from a delegator to a validator. - cosmos.staking.v1beta1.MsgDelegateResponse: - type: object - description: MsgDelegateResponse defines the Msg/Delegate response type. - cosmos.staking.v1beta1.MsgEditValidator: - type: object - properties: - description: - type: object - properties: - moniker: - type: string - description: moniker defines a human-readable name for the validator. - identity: - type: string - description: >- - identity defines an optional identity signature (ex. UPort or - Keybase). - website: - type: string - description: website defines an optional website link. - security_contact: - type: string - description: security_contact defines an optional email for security contact. - details: - type: string - description: details define other optional details. - description: Description defines a validator description. - validator_address: - type: string - commission_rate: - type: string - title: >- - We pass a reference to the new commission rate and min self delegation - as - - it's not mandatory to update. If not updated, the deserialized rate - will be - - zero with no way to distinguish if an update was intended. - - REF: #2373 - min_self_delegation: - type: string - description: MsgEditValidator defines a SDK message for editing an existing validator. - cosmos.staking.v1beta1.MsgEditValidatorResponse: - type: object - description: MsgEditValidatorResponse defines the Msg/EditValidator response type. - cosmos.staking.v1beta1.MsgUndelegate: - type: object - properties: - delegator_address: - type: string - validator_address: - type: string - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - description: |- - MsgUndelegate defines a SDK message for performing an undelegation from a - delegate and a validator. - cosmos.staking.v1beta1.MsgUndelegateResponse: - type: object - properties: - completion_time: - type: string - format: date-time - amount: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: amount returns the amount of undelegated coins - description: MsgUndelegateResponse defines the Msg/Undelegate response type. - cosmos.staking.v1beta1.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the x/staking parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - unbonding_time: - type: string - description: unbonding_time is the time duration of unbonding. - max_validators: - type: integer - format: int64 - description: max_validators is the maximum number of validators. - max_entries: - type: integer - format: int64 - description: >- - max_entries is the max entries for either unbonding delegation or - redelegation (per pair/trio). - historical_entries: - type: integer - format: int64 - description: historical_entries is the number of historical entries to persist. - bond_denom: - type: string - description: bond_denom defines the bondable coin denomination. - min_commission_rate: - type: string - title: >- - min_commission_rate is the chain-wide minimum commission rate that - a validator can charge their delegators - description: |- - MsgUpdateParams is the Msg/UpdateParams request type. - - Since: cosmos-sdk 0.47 - cosmos.staking.v1beta1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - - Since: cosmos-sdk 0.47 - cosmos.staking.v1beta1.Params: - type: object - properties: - unbonding_time: - type: string - description: unbonding_time is the time duration of unbonding. - max_validators: - type: integer - format: int64 - description: max_validators is the maximum number of validators. - max_entries: - type: integer - format: int64 - description: >- - max_entries is the max entries for either unbonding delegation or - redelegation (per pair/trio). - historical_entries: - type: integer - format: int64 - description: historical_entries is the number of historical entries to persist. - bond_denom: - type: string - description: bond_denom defines the bondable coin denomination. - min_commission_rate: - type: string - title: >- - min_commission_rate is the chain-wide minimum commission rate that a - validator can charge their delegators - description: Params defines the parameters for the x/staking module. - ibc.applications.fee.v1.Fee: - type: object - properties: - recv_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: the packet receive fee - ack_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: the packet acknowledgement fee - timeout_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - title: the packet timeout fee - title: Fee defines the ICS29 receive, acknowledgement and timeout fees - ibc.applications.fee.v1.MsgPayPacketFee: - type: object - properties: - fee: - title: >- - fee encapsulates the recv, ack and timeout fees associated with an IBC - packet - type: object - properties: - recv_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet receive fee - ack_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet acknowledgement fee - timeout_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet timeout fee - source_port_id: - type: string - title: the source port unique identifier - source_channel_id: - type: string - title: the source channel unique identifer - signer: - type: string - title: account address to refund fee if necessary - relayers: - type: array - items: - type: string - title: optional list of relayers permitted to the receive packet fees - title: >- - MsgPayPacketFee defines the request type for the PayPacketFee rpc - - This Msg can be used to pay for a packet at the next sequence send & - should be combined with the Msg that will be - - paid for - ibc.applications.fee.v1.MsgPayPacketFeeAsync: - type: object - properties: - packet_id: - title: >- - unique packet identifier comprised of the channel ID, port ID and - sequence - type: object - properties: - port_id: - type: string - title: channel port identifier - channel_id: - type: string - title: channel unique identifier - sequence: - type: string - format: uint64 - title: packet sequence - packet_fee: - title: the packet fee associated with a particular IBC packet - type: object - properties: - fee: - title: >- - fee encapsulates the recv, ack and timeout fees associated with an - IBC packet - type: object - properties: - recv_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet receive fee - ack_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet acknowledgement fee - timeout_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet timeout fee - refund_address: - type: string - title: the refund address for unspent fees - relayers: - type: array - items: - type: string - title: optional list of relayers permitted to receive fees - title: >- - MsgPayPacketFeeAsync defines the request type for the PayPacketFeeAsync - rpc - - This Msg can be used to pay for a packet at a specified sequence (instead - of the next sequence send) - ibc.applications.fee.v1.MsgPayPacketFeeAsyncResponse: - type: object - title: >- - MsgPayPacketFeeAsyncResponse defines the response type for the - PayPacketFeeAsync rpc - ibc.applications.fee.v1.MsgPayPacketFeeResponse: - type: object - title: MsgPayPacketFeeResponse defines the response type for the PayPacketFee rpc - ibc.applications.fee.v1.MsgRegisterCounterpartyPayee: - type: object - properties: - port_id: - type: string - title: unique port identifier - channel_id: - type: string - title: unique channel identifier - relayer: - type: string - title: the relayer address - counterparty_payee: - type: string - title: the counterparty payee address - title: >- - MsgRegisterCounterpartyPayee defines the request type for the - RegisterCounterpartyPayee rpc - ibc.applications.fee.v1.MsgRegisterCounterpartyPayeeResponse: - type: object - title: >- - MsgRegisterCounterpartyPayeeResponse defines the response type for the - RegisterCounterpartyPayee rpc - ibc.applications.fee.v1.MsgRegisterPayee: - type: object - properties: - port_id: - type: string - title: unique port identifier - channel_id: - type: string - title: unique channel identifier - relayer: - type: string - title: the relayer address - payee: - type: string - title: the payee address - title: MsgRegisterPayee defines the request type for the RegisterPayee rpc - ibc.applications.fee.v1.MsgRegisterPayeeResponse: - type: object - title: >- - MsgRegisterPayeeResponse defines the response type for the RegisterPayee - rpc - ibc.applications.fee.v1.PacketFee: - type: object - properties: - fee: - title: >- - fee encapsulates the recv, ack and timeout fees associated with an IBC - packet - type: object - properties: - recv_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet receive fee - ack_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet acknowledgement fee - timeout_fee: - type: array - items: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - title: the packet timeout fee - refund_address: - type: string - title: the refund address for unspent fees - relayers: - type: array - items: - type: string - title: optional list of relayers permitted to receive fees - title: >- - PacketFee contains ICS29 relayer fees, refund address and optional list of - permitted relayers - ibc.core.channel.v1.PacketId: - type: object - properties: - port_id: - type: string - title: channel port identifier - channel_id: - type: string - title: channel unique identifier - sequence: - type: string - format: uint64 - title: packet sequence - title: |- - PacketId is an identifer for a unique Packet - Source chains refer to packets by source port/channel - Destination chains refer to packets by destination port/channel - ibc.applications.interchain_accounts.controller.v1.MsgRegisterInterchainAccount: - type: object - properties: - owner: - type: string - connection_id: - type: string - version: - type: string - title: MsgRegisterInterchainAccount defines the payload for Msg/RegisterAccount - ibc.applications.interchain_accounts.controller.v1.MsgRegisterInterchainAccountResponse: - type: object - properties: - channel_id: - type: string - port_id: - type: string - title: >- - MsgRegisterInterchainAccountResponse defines the response for - Msg/RegisterAccount - ibc.applications.interchain_accounts.controller.v1.MsgSendTx: - type: object - properties: - owner: - type: string - connection_id: - type: string - packet_data: - type: object - properties: - type: - type: string - enum: - - TYPE_UNSPECIFIED - - TYPE_EXECUTE_TX - default: TYPE_UNSPECIFIED - description: |- - - TYPE_UNSPECIFIED: Default zero value enumeration - - TYPE_EXECUTE_TX: Execute a transaction on an interchain accounts host chain - title: >- - Type defines a classification of message issued from a controller - chain to its associated interchain accounts - - host - data: - type: string - format: byte - memo: - type: string - description: >- - InterchainAccountPacketData is comprised of a raw transaction, type of - transaction and optional memo field. - relative_timeout: - type: string - format: uint64 - description: >- - Relative timeout timestamp provided will be added to the current block - time during transaction execution. - - The timeout timestamp must be non-zero. - title: MsgSendTx defines the payload for Msg/SendTx - ibc.applications.interchain_accounts.controller.v1.MsgSendTxResponse: - type: object - properties: - sequence: - type: string - format: uint64 - title: MsgSendTxResponse defines the response for MsgSendTx - ibc.applications.interchain_accounts.controller.v1.MsgUpdateParams: - type: object - properties: - signer: - type: string - title: signer address - params: - description: >- - params defines the 27-interchain-accounts/controller parameters to - update. - - - NOTE: All parameters must be supplied. - type: object - properties: - controller_enabled: - type: boolean - description: controller_enabled enables or disables the controller submodule. - title: MsgUpdateParams defines the payload for Msg/UpdateParams - ibc.applications.interchain_accounts.controller.v1.MsgUpdateParamsResponse: - type: object - title: MsgUpdateParamsResponse defines the response for Msg/UpdateParams - ibc.applications.interchain_accounts.controller.v1.Params: - type: object - properties: - controller_enabled: - type: boolean - description: controller_enabled enables or disables the controller submodule. - description: |- - Params defines the set of on-chain interchain accounts parameters. - The following parameters may be used to disable the controller submodule. - ibc.applications.interchain_accounts.v1.InterchainAccountPacketData: - type: object - properties: - type: - type: string - enum: - - TYPE_UNSPECIFIED - - TYPE_EXECUTE_TX - default: TYPE_UNSPECIFIED - description: |- - - TYPE_UNSPECIFIED: Default zero value enumeration - - TYPE_EXECUTE_TX: Execute a transaction on an interchain accounts host chain - title: >- - Type defines a classification of message issued from a controller - chain to its associated interchain accounts - - host - data: - type: string - format: byte - memo: - type: string - description: >- - InterchainAccountPacketData is comprised of a raw transaction, type of - transaction and optional memo field. - ibc.applications.interchain_accounts.v1.Type: - type: string - enum: - - TYPE_UNSPECIFIED - - TYPE_EXECUTE_TX - default: TYPE_UNSPECIFIED - description: |- - - TYPE_UNSPECIFIED: Default zero value enumeration - - TYPE_EXECUTE_TX: Execute a transaction on an interchain accounts host chain - title: >- - Type defines a classification of message issued from a controller chain to - its associated interchain accounts - - host - ibc.applications.interchain_accounts.host.v1.MsgUpdateParams: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the 27-interchain-accounts/host parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - host_enabled: - type: boolean - description: host_enabled enables or disables the host submodule. - allow_messages: - type: array - items: - type: string - description: >- - allow_messages defines a list of sdk message typeURLs allowed to - be executed on a host chain. - title: MsgUpdateParams defines the payload for Msg/UpdateParams - ibc.applications.interchain_accounts.host.v1.MsgUpdateParamsResponse: - type: object - title: MsgUpdateParamsResponse defines the response for Msg/UpdateParams - ibc.applications.interchain_accounts.host.v1.Params: - type: object - properties: - host_enabled: - type: boolean - description: host_enabled enables or disables the host submodule. - allow_messages: - type: array - items: - type: string - description: >- - allow_messages defines a list of sdk message typeURLs allowed to be - executed on a host chain. - description: |- - Params defines the set of on-chain interchain accounts parameters. - The following parameters may be used to disable the host submodule. - ibc.applications.transfer.v1.MsgTransfer: - type: object - properties: - source_port: - type: string - title: the port on which the packet will be sent - source_channel: - type: string - title: the channel by which the packet will be sent - token: - title: the tokens to be transferred - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - sender: - type: string - title: the sender address - receiver: - type: string - title: the recipient address on the destination chain - timeout_height: - description: |- - Timeout height relative to the current block height. - The timeout is disabled when set to 0. - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - timeout_timestamp: - type: string - format: uint64 - description: |- - Timeout timestamp in absolute nanoseconds since unix epoch. - The timeout is disabled when set to 0. - memo: - type: string - title: optional memo - title: >- - MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between - - ICS20 enabled chains. See ICS Spec here: - - https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures - ibc.applications.transfer.v1.MsgTransferResponse: - type: object - properties: - sequence: - type: string - format: uint64 - title: sequence number of the transfer packet sent - description: MsgTransferResponse defines the Msg/Transfer response type. - ibc.applications.transfer.v1.MsgUpdateParams: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the transfer parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - send_enabled: - type: boolean - description: >- - send_enabled enables or disables all cross-chain token transfers - from this - - chain. - receive_enabled: - type: boolean - description: >- - receive_enabled enables or disables all cross-chain token - transfers to this - - chain. - description: MsgUpdateParams is the Msg/UpdateParams request type. - ibc.applications.transfer.v1.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. - ibc.applications.transfer.v1.Params: - type: object - properties: - send_enabled: - type: boolean - description: >- - send_enabled enables or disables all cross-chain token transfers from - this - - chain. - receive_enabled: - type: boolean - description: >- - receive_enabled enables or disables all cross-chain token transfers to - this - - chain. - description: >- - Params defines the set of IBC transfer parameters. - - NOTE: To prevent a single token from being transferred, set the - - TransfersEnabled parameter to true and then set the bank module's - SendEnabled - - parameter for the denomination to false. - ibc.core.client.v1.Height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: |- - Normally the RevisionHeight is incremented at each height while keeping - RevisionNumber the same. However some consensus algorithms may choose to - reset the height in certain conditions e.g. hard forks, state-machine - breaking changes In these cases, the RevisionNumber is incremented so that - height continues to be monitonically increasing even as the RevisionHeight - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of updating - and - - freezing clients - ibc.core.channel.v1.Channel: - type: object - properties: - state: - title: current state of the channel end - type: string - enum: - - STATE_UNINITIALIZED_UNSPECIFIED - - STATE_INIT - - STATE_TRYOPEN - - STATE_OPEN - - STATE_CLOSED - default: STATE_UNINITIALIZED_UNSPECIFIED - description: |- - State defines if a channel is in one of the following states: - CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED. - - - STATE_UNINITIALIZED_UNSPECIFIED: Default State - - STATE_INIT: A channel has just started the opening handshake. - - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - - STATE_OPEN: A channel has completed the handshake. Open channels are - ready to send and receive packets. - - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive - packets. - ordering: - title: whether the channel is ordered or unordered - type: string - enum: - - ORDER_NONE_UNSPECIFIED - - ORDER_UNORDERED - - ORDER_ORDERED - default: ORDER_NONE_UNSPECIFIED - description: |- - - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in - which they were sent. - - ORDER_ORDERED: packets are delivered exactly in the order which they were sent - counterparty: - title: counterparty channel end - type: object - properties: - port_id: - type: string - description: >- - port on the counterparty chain which owns the other end of the - channel. - channel_id: - type: string - title: channel end on the counterparty chain - connection_hops: - type: array - items: - type: string - title: |- - list of connection identifiers, in order, along which packets sent on - this channel will travel - version: - type: string - title: opaque channel version, which is agreed upon during the handshake - description: |- - Channel defines pipeline for exactly-once packet delivery between specific - modules on separate blockchains, which has at least one end capable of - sending packets and one end capable of receiving packets. - ibc.core.channel.v1.Counterparty: - type: object - properties: - port_id: - type: string - description: >- - port on the counterparty chain which owns the other end of the - channel. - channel_id: - type: string - title: channel end on the counterparty chain - title: Counterparty defines a channel end counterparty - ibc.core.channel.v1.MsgAcknowledgement: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, where a - Packet - - with an earlier sequence number must be sent and received before a - Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: actual opaque bytes transferred directly to the application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is incremented - so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: block timestamp (in nanoseconds) after which the packet times out - title: >- - Packet defines a type that carries data across different chains - through IBC - acknowledgement: - type: string - format: byte - proof_acked: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - title: MsgAcknowledgement receives incoming IBC acknowledgement - ibc.core.channel.v1.MsgAcknowledgementResponse: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: |- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the execution of a - message - description: MsgAcknowledgementResponse defines the Msg/Acknowledgement response type. - ibc.core.channel.v1.MsgChannelCloseConfirm: - type: object - properties: - port_id: - type: string - channel_id: - type: string - proof_init: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - description: |- - MsgChannelCloseConfirm defines a msg sent by a Relayer to Chain B - to acknowledge the change of channel state to CLOSED on Chain A. - ibc.core.channel.v1.MsgChannelCloseConfirmResponse: - type: object - description: >- - MsgChannelCloseConfirmResponse defines the Msg/ChannelCloseConfirm - response - - type. - ibc.core.channel.v1.MsgChannelCloseInit: - type: object - properties: - port_id: - type: string - channel_id: - type: string - signer: - type: string - description: |- - MsgChannelCloseInit defines a msg sent by a Relayer to Chain A - to close a channel with Chain B. - ibc.core.channel.v1.MsgChannelCloseInitResponse: - type: object - description: >- - MsgChannelCloseInitResponse defines the Msg/ChannelCloseInit response - type. - ibc.core.channel.v1.MsgChannelOpenAck: - type: object - properties: - port_id: - type: string - channel_id: - type: string - counterparty_channel_id: - type: string - counterparty_version: - type: string - proof_try: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - description: >- - MsgChannelOpenAck defines a msg sent by a Relayer to Chain A to - acknowledge - - the change of channel state to TRYOPEN on Chain B. - ibc.core.channel.v1.MsgChannelOpenAckResponse: - type: object - description: MsgChannelOpenAckResponse defines the Msg/ChannelOpenAck response type. - ibc.core.channel.v1.MsgChannelOpenConfirm: - type: object - properties: - port_id: - type: string - channel_id: - type: string - proof_ack: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - description: |- - MsgChannelOpenConfirm defines a msg sent by a Relayer to Chain B to - acknowledge the change of channel state to OPEN on Chain A. - ibc.core.channel.v1.MsgChannelOpenConfirmResponse: - type: object - description: |- - MsgChannelOpenConfirmResponse defines the Msg/ChannelOpenConfirm response - type. - ibc.core.channel.v1.MsgChannelOpenInit: - type: object - properties: - port_id: - type: string - channel: - type: object - properties: - state: - title: current state of the channel end - type: string - enum: - - STATE_UNINITIALIZED_UNSPECIFIED - - STATE_INIT - - STATE_TRYOPEN - - STATE_OPEN - - STATE_CLOSED - default: STATE_UNINITIALIZED_UNSPECIFIED - description: |- - State defines if a channel is in one of the following states: - CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED. - - - STATE_UNINITIALIZED_UNSPECIFIED: Default State - - STATE_INIT: A channel has just started the opening handshake. - - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - - STATE_OPEN: A channel has completed the handshake. Open channels are - ready to send and receive packets. - - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive - packets. - ordering: - title: whether the channel is ordered or unordered - type: string - enum: - - ORDER_NONE_UNSPECIFIED - - ORDER_UNORDERED - - ORDER_ORDERED - default: ORDER_NONE_UNSPECIFIED - description: |- - - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in - which they were sent. - - ORDER_ORDERED: packets are delivered exactly in the order which they were sent - counterparty: - title: counterparty channel end - type: object - properties: - port_id: - type: string - description: >- - port on the counterparty chain which owns the other end of the - channel. - channel_id: - type: string - title: channel end on the counterparty chain - connection_hops: - type: array - items: - type: string - title: >- - list of connection identifiers, in order, along which packets sent - on - - this channel will travel - version: - type: string - title: opaque channel version, which is agreed upon during the handshake - description: >- - Channel defines pipeline for exactly-once packet delivery between - specific - - modules on separate blockchains, which has at least one end capable of - - sending packets and one end capable of receiving packets. - signer: - type: string - description: >- - MsgChannelOpenInit defines an sdk.Msg to initialize a channel handshake. - It - - is called by a relayer on Chain A. - ibc.core.channel.v1.MsgChannelOpenInitResponse: - type: object - properties: - channel_id: - type: string - version: - type: string - description: MsgChannelOpenInitResponse defines the Msg/ChannelOpenInit response type. - ibc.core.channel.v1.MsgChannelOpenTry: - type: object - properties: - port_id: - type: string - previous_channel_id: - type: string - description: >- - Deprecated: this field is unused. Crossing hello's are no longer - supported in core IBC. - channel: - type: object - properties: - state: - title: current state of the channel end - type: string - enum: - - STATE_UNINITIALIZED_UNSPECIFIED - - STATE_INIT - - STATE_TRYOPEN - - STATE_OPEN - - STATE_CLOSED - default: STATE_UNINITIALIZED_UNSPECIFIED - description: |- - State defines if a channel is in one of the following states: - CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED. - - - STATE_UNINITIALIZED_UNSPECIFIED: Default State - - STATE_INIT: A channel has just started the opening handshake. - - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - - STATE_OPEN: A channel has completed the handshake. Open channels are - ready to send and receive packets. - - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive - packets. - ordering: - title: whether the channel is ordered or unordered - type: string - enum: - - ORDER_NONE_UNSPECIFIED - - ORDER_UNORDERED - - ORDER_ORDERED - default: ORDER_NONE_UNSPECIFIED - description: |- - - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in - which they were sent. - - ORDER_ORDERED: packets are delivered exactly in the order which they were sent - counterparty: - title: counterparty channel end - type: object - properties: - port_id: - type: string - description: >- - port on the counterparty chain which owns the other end of the - channel. - channel_id: - type: string - title: channel end on the counterparty chain - connection_hops: - type: array - items: - type: string - title: >- - list of connection identifiers, in order, along which packets sent - on - - this channel will travel - version: - type: string - title: opaque channel version, which is agreed upon during the handshake - description: >- - Channel defines pipeline for exactly-once packet delivery between - specific - - modules on separate blockchains, which has at least one end capable of - - sending packets and one end capable of receiving packets. - counterparty_version: - type: string - proof_init: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - description: >- - MsgChannelOpenInit defines a msg sent by a Relayer to try to open a - channel - - on Chain B. The version field within the Channel field has been - deprecated. Its - - value will be ignored by core IBC. - ibc.core.channel.v1.MsgChannelOpenTryResponse: - type: object - properties: - version: - type: string - channel_id: - type: string - description: MsgChannelOpenTryResponse defines the Msg/ChannelOpenTry response type. - ibc.core.channel.v1.MsgRecvPacket: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, where a - Packet - - with an earlier sequence number must be sent and received before a - Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: actual opaque bytes transferred directly to the application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is incremented - so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: block timestamp (in nanoseconds) after which the packet times out - title: >- - Packet defines a type that carries data across different chains - through IBC - proof_commitment: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - title: MsgRecvPacket receives incoming IBC packet - ibc.core.channel.v1.MsgRecvPacketResponse: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: |- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the execution of a - message - description: MsgRecvPacketResponse defines the Msg/RecvPacket response type. - ibc.core.channel.v1.MsgTimeout: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, where a - Packet - - with an earlier sequence number must be sent and received before a - Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: actual opaque bytes transferred directly to the application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is incremented - so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: block timestamp (in nanoseconds) after which the packet times out - title: >- - Packet defines a type that carries data across different chains - through IBC - proof_unreceived: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - next_sequence_recv: - type: string - format: uint64 - signer: - type: string - title: MsgTimeout receives timed-out packet - ibc.core.channel.v1.MsgTimeoutOnClose: - type: object - properties: - packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, where a - Packet - - with an earlier sequence number must be sent and received before a - Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: actual opaque bytes transferred directly to the application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may - choose to - - reset the height in certain conditions e.g. hard forks, - state-machine - - breaking changes In these cases, the RevisionNumber is incremented - so that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: block timestamp (in nanoseconds) after which the packet times out - title: >- - Packet defines a type that carries data across different chains - through IBC - proof_unreceived: - type: string - format: byte - proof_close: - type: string - format: byte - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - next_sequence_recv: - type: string - format: uint64 - signer: - type: string - description: MsgTimeoutOnClose timed-out packet upon counterparty channel closure. - ibc.core.channel.v1.MsgTimeoutOnCloseResponse: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: |- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the execution of a - message - description: MsgTimeoutOnCloseResponse defines the Msg/TimeoutOnClose response type. - ibc.core.channel.v1.MsgTimeoutResponse: - type: object - properties: - result: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: |- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the execution of a - message - description: MsgTimeoutResponse defines the Msg/Timeout response type. - ibc.core.channel.v1.Order: - type: string - enum: - - ORDER_NONE_UNSPECIFIED - - ORDER_UNORDERED - - ORDER_ORDERED - default: ORDER_NONE_UNSPECIFIED - description: |- - - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in - which they were sent. - - ORDER_ORDERED: packets are delivered exactly in the order which they were sent - title: Order defines if a channel is ORDERED or UNORDERED - ibc.core.channel.v1.Packet: - type: object - properties: - sequence: - type: string - format: uint64 - description: >- - number corresponds to the order of sends and receives, where a Packet - - with an earlier sequence number must be sent and received before a - Packet - - with a later sequence number. - source_port: - type: string - description: identifies the port on the sending chain. - source_channel: - type: string - description: identifies the channel end on the sending chain. - destination_port: - type: string - description: identifies the port on the receiving chain. - destination_channel: - type: string - description: identifies the channel end on the receiving chain. - data: - type: string - format: byte - title: actual opaque bytes transferred directly to the application module - timeout_height: - title: block height after which the packet times out - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - timeout_timestamp: - type: string - format: uint64 - title: block timestamp (in nanoseconds) after which the packet times out - title: >- - Packet defines a type that carries data across different chains through - IBC - ibc.core.channel.v1.ResponseResultType: - type: string - enum: - - RESPONSE_RESULT_TYPE_UNSPECIFIED - - RESPONSE_RESULT_TYPE_NOOP - - RESPONSE_RESULT_TYPE_SUCCESS - default: RESPONSE_RESULT_TYPE_UNSPECIFIED - description: |- - - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value enumeration - - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - title: >- - ResponseResultType defines the possible outcomes of the execution of a - message - ibc.core.channel.v1.State: - type: string - enum: - - STATE_UNINITIALIZED_UNSPECIFIED - - STATE_INIT - - STATE_TRYOPEN - - STATE_OPEN - - STATE_CLOSED - default: STATE_UNINITIALIZED_UNSPECIFIED - description: |- - State defines if a channel is in one of the following states: - CLOSED, INIT, TRYOPEN, OPEN or UNINITIALIZED. - - - STATE_UNINITIALIZED_UNSPECIFIED: Default State - - STATE_INIT: A channel has just started the opening handshake. - - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - - STATE_OPEN: A channel has completed the handshake. Open channels are - ready to send and receive packets. - - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive - packets. - cosmos.upgrade.v1beta1.Plan: - type: object - properties: - name: - type: string - description: >- - Sets the name for the upgrade. This name will be used by the upgraded - - version of the software to apply any special "on-upgrade" commands - during - - the first BeginBlock method after the upgrade is applied. It is also - used - - to detect whether a software version can handle a given upgrade. If no - - upgrade handler with this name has been set in the software, it will - be - - assumed that the software is out-of-date when the upgrade Time or - Height is - - reached and the software will exit. - time: - type: string - format: date-time - description: >- - Deprecated: Time based upgrades have been deprecated. Time based - upgrade logic - - has been removed from the SDK. - - If this field is not empty, an error will be thrown. - height: - type: string - format: int64 - description: The height at which the upgrade must be performed. - info: - type: string - title: |- - Any application specific upgrade info to be included on-chain - such as a git commit that validators could automatically upgrade to - upgraded_client_state: - description: >- - Deprecated: UpgradedClientState field has been deprecated. IBC upgrade - logic has been - - moved to the IBC module in the sub module 02-client. - - If this field is not empty, an error will be thrown. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - Plan specifies information about a planned upgrade and when it should - occur. - ibc.core.client.v1.MsgCreateClient: - type: object - properties: - client_state: - title: light client state - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - consensus_state: - description: |- - consensus state associated with the client that corresponds to a given - height. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - signer: - type: string - title: signer address - title: MsgCreateClient defines a message to create an IBC client - ibc.core.client.v1.MsgCreateClientResponse: - type: object - description: MsgCreateClientResponse defines the Msg/CreateClient response type. - ibc.core.client.v1.MsgIBCSoftwareUpgrade: - type: object - properties: - plan: - type: object - properties: - name: - type: string - description: >- - Sets the name for the upgrade. This name will be used by the - upgraded - - version of the software to apply any special "on-upgrade" commands - during - - the first BeginBlock method after the upgrade is applied. It is - also used - - to detect whether a software version can handle a given upgrade. - If no - - upgrade handler with this name has been set in the software, it - will be - - assumed that the software is out-of-date when the upgrade Time or - Height is - - reached and the software will exit. - time: - type: string - format: date-time - description: >- - Deprecated: Time based upgrades have been deprecated. Time based - upgrade logic - - has been removed from the SDK. - - If this field is not empty, an error will be thrown. - height: - type: string - format: int64 - description: The height at which the upgrade must be performed. - info: - type: string - title: >- - Any application specific upgrade info to be included on-chain - - such as a git commit that validators could automatically upgrade - to - upgraded_client_state: - description: >- - Deprecated: UpgradedClientState field has been deprecated. IBC - upgrade logic has been - - moved to the IBC module in the sub module 02-client. - - If this field is not empty, an error will be thrown. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all - types that they - - expect it to use in the context of Any. However, for URLs - which use the - - scheme `http`, `https`, or no scheme, one can optionally set - up a type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on - the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning - with - - type.googleapis.com. As of May 2023, there are no widely used - type server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might - be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - Plan specifies information about a planned upgrade and when it should - occur. - upgraded_client_state: - description: >- - An UpgradedClientState must be provided to perform an IBC breaking - upgrade. - - This will make the chain commit to the correct upgraded (self) client - state - - before the upgrade occurs, so that connecting chains can verify that - the - - new upgraded client is valid by verifying a proof on the previous - version - - of the chain. This will allow IBC connections to persist smoothly - across - - planned chain upgrades. Correspondingly, the UpgradedClientState field - has been - - deprecated in the Cosmos SDK to allow for this logic to exist solely - in - - the 02-client module. - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - signer: - type: string - title: signer address - title: >- - MsgIBCSoftwareUpgrade defines the message used to schedule an upgrade of - an IBC client using a v1 governance proposal - ibc.core.client.v1.MsgIBCSoftwareUpgradeResponse: - type: object - description: >- - MsgIBCSoftwareUpgradeResponse defines the Msg/IBCSoftwareUpgrade response - type. - ibc.core.client.v1.MsgRecoverClient: - type: object - properties: - subject_client_id: - type: string - title: >- - the client identifier for the client to be updated if the proposal - passes - substitute_client_id: - type: string - title: >- - the substitute client identifier for the client which will replace the - subject - - client - signer: - type: string - title: signer address - description: >- - MsgRecoverClient defines the message used to recover a frozen or expired - client. - ibc.core.client.v1.MsgRecoverClientResponse: - type: object - description: MsgRecoverClientResponse defines the Msg/RecoverClient response type. - ibc.core.client.v1.MsgSubmitMisbehaviour: - type: object - properties: - client_id: - type: string - title: client unique identifier - misbehaviour: - title: misbehaviour used for freezing the light client - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - signer: - type: string - title: signer address - description: |- - MsgSubmitMisbehaviour defines an sdk.Msg type that submits Evidence for - light client misbehaviour. - This message has been deprecated. Use MsgUpdateClient instead. - ibc.core.client.v1.MsgSubmitMisbehaviourResponse: - type: object - description: |- - MsgSubmitMisbehaviourResponse defines the Msg/SubmitMisbehaviour response - type. - ibc.core.client.v1.MsgUpdateClient: - type: object - properties: - client_id: - type: string - title: client unique identifier - client_message: - title: client message to update the light client - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - signer: - type: string - title: signer address - description: |- - MsgUpdateClient defines an sdk.Msg to update a IBC client state using - the given client message. - ibc.core.client.v1.MsgUpdateClientResponse: - type: object - description: MsgUpdateClientResponse defines the Msg/UpdateClient response type. - ibc.core.client.v1.MsgUpdateParams: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the client parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - allowed_clients: - type: array - items: - type: string - description: >- - allowed_clients defines the list of allowed client state types - which can be created - - and interacted with. If a client type is removed from the allowed - clients list, usage - - of this client will be disabled until it is added again to the - list. - description: MsgUpdateParams defines the sdk.Msg type to update the client parameters. - ibc.core.client.v1.MsgUpdateParamsResponse: - type: object - description: MsgUpdateParamsResponse defines the MsgUpdateParams response type. - ibc.core.client.v1.MsgUpgradeClient: - type: object - properties: - client_id: - type: string - title: client unique identifier - client_state: - title: upgraded client state - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - consensus_state: - title: >- - upgraded consensus state, only contains enough information to serve as - a - - basis of trust in update logic - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - proof_upgrade_client: - type: string - format: byte - title: proof that old chain committed to new client - proof_upgrade_consensus_state: - type: string - format: byte - title: proof that old chain committed to new consensus state - signer: - type: string - title: signer address - title: >- - MsgUpgradeClient defines an sdk.Msg to upgrade an IBC client to a new - client - - state - ibc.core.client.v1.MsgUpgradeClientResponse: - type: object - description: MsgUpgradeClientResponse defines the Msg/UpgradeClient response type. - ibc.core.client.v1.Params: - type: object - properties: - allowed_clients: - type: array - items: - type: string - description: >- - allowed_clients defines the list of allowed client state types which - can be created - - and interacted with. If a client type is removed from the allowed - clients list, usage - - of this client will be disabled until it is added again to the list. - description: Params defines the set of IBC light client parameters. - ibc.core.commitment.v1.MerklePrefix: - type: object - properties: - key_prefix: - type: string - format: byte - title: |- - MerklePrefix is merkle path prefixed to the key. - The constructed key from the Path and the key will be append(Path.KeyPath, - append(Path.KeyPrefix, key...)) - ibc.core.connection.v1.Counterparty: - type: object - properties: - client_id: - type: string - description: >- - identifies the client on the counterparty chain associated with a - given - - connection. - connection_id: - type: string - description: >- - identifies the connection end on the counterparty chain associated - with a - - given connection. - prefix: - description: commitment merkle prefix of the counterparty chain. - type: object - properties: - key_prefix: - type: string - format: byte - title: >- - MerklePrefix is merkle path prefixed to the key. - - The constructed key from the Path and the key will be - append(Path.KeyPath, - - append(Path.KeyPrefix, key...)) - description: >- - Counterparty defines the counterparty chain associated with a connection - end. - ibc.core.connection.v1.MsgConnectionOpenAck: - type: object - properties: - connection_id: - type: string - counterparty_connection_id: - type: string - version: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: list of features compatible with the specified identifier - description: >- - Version defines the versioning scheme used to negotiate the IBC - verison in - - the connection handshake. - client_state: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - proof_try: - type: string - format: byte - title: |- - proof of the initialization the connection on Chain B: `UNITIALIZED -> - TRYOPEN` - proof_client: - type: string - format: byte - title: proof of client state included in message - proof_consensus: - type: string - format: byte - title: proof of client consensus state - consensus_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - host_consensus_state_proof: - type: string - format: byte - title: >- - optional proof data for host state machines that are unable to - introspect their own consensus state - description: |- - MsgConnectionOpenAck defines a msg sent by a Relayer to Chain A to - acknowledge the change of connection state to TRYOPEN on Chain B. - ibc.core.connection.v1.MsgConnectionOpenAckResponse: - type: object - description: >- - MsgConnectionOpenAckResponse defines the Msg/ConnectionOpenAck response - type. - ibc.core.connection.v1.MsgConnectionOpenConfirm: - type: object - properties: - connection_id: - type: string - proof_ack: - type: string - format: byte - title: >- - proof for the change of the connection state on Chain A: `INIT -> - OPEN` - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - description: |- - MsgConnectionOpenConfirm defines a msg sent by a Relayer to Chain B to - acknowledge the change of connection state to OPEN on Chain A. - ibc.core.connection.v1.MsgConnectionOpenConfirmResponse: - type: object - description: |- - MsgConnectionOpenConfirmResponse defines the Msg/ConnectionOpenConfirm - response type. - ibc.core.connection.v1.MsgConnectionOpenInit: - type: object - properties: - client_id: - type: string - counterparty: - type: object - properties: - client_id: - type: string - description: >- - identifies the client on the counterparty chain associated with a - given - - connection. - connection_id: - type: string - description: >- - identifies the connection end on the counterparty chain associated - with a - - given connection. - prefix: - description: commitment merkle prefix of the counterparty chain. - type: object - properties: - key_prefix: - type: string - format: byte - title: >- - MerklePrefix is merkle path prefixed to the key. - - The constructed key from the Path and the key will be - append(Path.KeyPath, - - append(Path.KeyPrefix, key...)) - description: >- - Counterparty defines the counterparty chain associated with a - connection end. - version: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: list of features compatible with the specified identifier - description: >- - Version defines the versioning scheme used to negotiate the IBC - verison in - - the connection handshake. - delay_period: - type: string - format: uint64 - signer: - type: string - description: |- - MsgConnectionOpenInit defines the msg sent by an account on Chain A to - initialize a connection with Chain B. - ibc.core.connection.v1.MsgConnectionOpenInitResponse: - type: object - description: |- - MsgConnectionOpenInitResponse defines the Msg/ConnectionOpenInit response - type. - ibc.core.connection.v1.MsgConnectionOpenTry: - type: object - properties: - client_id: - type: string - previous_connection_id: - type: string - description: >- - Deprecated: this field is unused. Crossing hellos are no longer - supported in core IBC. - client_state: - type: object - properties: - '@type': - type: string - description: >- - A URL/resource name that uniquely identifies the type of the - serialized - - protocol buffer message. This string must contain at least - - one "/" character. The last segment of the URL's path must - represent - - the fully qualified name of the type (as in - - `path/google.protobuf.Duration`). The name should be in a - canonical form - - (e.g., leading "." is not accepted). - - - In practice, teams usually precompile into the binary all types - that they - - expect it to use in the context of Any. However, for URLs which - use the - - scheme `http`, `https`, or no scheme, one can optionally set up a - type - - server that maps type URLs to message definitions as follows: - - - * If no scheme is provided, `https` is assumed. - - * An HTTP GET on the URL must yield a [google.protobuf.Type][] - value in binary format, or produce an error. - * Applications are allowed to cache lookup results based on the - URL, or have them precompiled into a binary to avoid any - lookup. Therefore, binary compatibility needs to be preserved - on changes to types. (Use versioned type names to manage - breaking changes.) - - Note: this functionality is not currently available in the - official - - protobuf release, and it is not used for type URLs beginning with - - type.googleapis.com. As of May 2023, there are no widely used type - server - - implementations and no plans to implement one. - - - Schemes other than `http`, `https` (or the empty scheme) might be - - used with implementation specific semantics. - additionalProperties: {} - description: >- - `Any` contains an arbitrary serialized protocol buffer message along - with a - - URL that describes the type of the serialized message. - - - Protobuf library provides support to pack/unpack Any values in the - form - - of utility functions or additional generated methods of the Any type. - - - Example 1: Pack and unpack a message in C++. - - Foo foo = ...; - Any any; - any.PackFrom(foo); - ... - if (any.UnpackTo(&foo)) { - ... - } - - Example 2: Pack and unpack a message in Java. - - Foo foo = ...; - Any any = Any.pack(foo); - ... - if (any.is(Foo.class)) { - foo = any.unpack(Foo.class); - } - // or ... - if (any.isSameTypeAs(Foo.getDefaultInstance())) { - foo = any.unpack(Foo.getDefaultInstance()); - } - - Example 3: Pack and unpack a message in Python. - - foo = Foo(...) - any = Any() - any.Pack(foo) - ... - if any.Is(Foo.DESCRIPTOR): - any.Unpack(foo) - ... - - Example 4: Pack and unpack a message in Go - - foo := &pb.Foo{...} - any, err := anypb.New(foo) - if err != nil { - ... - } - ... - foo := &pb.Foo{} - if err := any.UnmarshalTo(foo); err != nil { - ... - } - - The pack methods provided by protobuf library will by default use - - 'type.googleapis.com/full.type.name' as the type URL and the unpack - - methods only use the fully qualified type name after the last '/' - - in the type URL, for example "foo.bar.com/x/y.z" will yield type - - name "y.z". - - - JSON - - ==== - - The JSON representation of an `Any` value uses the regular - - representation of the deserialized, embedded message, with an - - additional field `@type` which contains the type URL. Example: - - package google.profile; - message Person { - string first_name = 1; - string last_name = 2; - } - - { - "@type": "type.googleapis.com/google.profile.Person", - "firstName": , - "lastName": - } - - If the embedded message type is well-known and has a custom JSON - - representation, that representation will be embedded adding a field - - `value` which holds the custom JSON in addition to the `@type` - - field. Example (for message [google.protobuf.Duration][]): - - { - "@type": "type.googleapis.com/google.protobuf.Duration", - "value": "1.212s" - } - counterparty: - type: object - properties: - client_id: - type: string - description: >- - identifies the client on the counterparty chain associated with a - given - - connection. - connection_id: - type: string - description: >- - identifies the connection end on the counterparty chain associated - with a - - given connection. - prefix: - description: commitment merkle prefix of the counterparty chain. - type: object - properties: - key_prefix: - type: string - format: byte - title: >- - MerklePrefix is merkle path prefixed to the key. - - The constructed key from the Path and the key will be - append(Path.KeyPath, - - append(Path.KeyPrefix, key...)) - description: >- - Counterparty defines the counterparty chain associated with a - connection end. - delay_period: - type: string - format: uint64 - counterparty_versions: - type: array - items: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: list of features compatible with the specified identifier - description: >- - Version defines the versioning scheme used to negotiate the IBC - verison in - - the connection handshake. - proof_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - proof_init: - type: string - format: byte - title: |- - proof of the initialization the connection on Chain A: `UNITIALIZED -> - INIT` - proof_client: - type: string - format: byte - title: proof of client state included in message - proof_consensus: - type: string - format: byte - title: proof of client consensus state - consensus_height: - type: object - properties: - revision_number: - type: string - format: uint64 - title: the revision that the client is currently on - revision_height: - type: string - format: uint64 - title: the height within the given revision - description: >- - Normally the RevisionHeight is incremented at each height while - keeping - - RevisionNumber the same. However some consensus algorithms may choose - to - - reset the height in certain conditions e.g. hard forks, state-machine - - breaking changes In these cases, the RevisionNumber is incremented so - that - - height continues to be monitonically increasing even as the - RevisionHeight - - gets reset - title: >- - Height is a monotonically increasing data type - - that can be compared against another Height for the purposes of - updating and - - freezing clients - signer: - type: string - host_consensus_state_proof: - type: string - format: byte - title: >- - optional proof data for host state machines that are unable to - introspect their own consensus state - description: |- - MsgConnectionOpenTry defines a msg sent by a Relayer to try to open a - connection on Chain B. - ibc.core.connection.v1.MsgConnectionOpenTryResponse: - type: object - description: >- - MsgConnectionOpenTryResponse defines the Msg/ConnectionOpenTry response - type. - ibc.core.connection.v1.MsgUpdateParams: - type: object - properties: - signer: - type: string - title: signer address - params: - description: |- - params defines the connection parameters to update. - - NOTE: All parameters must be supplied. - type: object - properties: - max_expected_time_per_block: - type: string - format: uint64 - description: >- - maximum expected time per block (in nanoseconds), used to enforce - block delay. This parameter should reflect the - - largest amount of time that the chain might reasonably take to - produce the next block under normal operating - - conditions. A safe choice is 3-5x the expected time per block. - description: >- - MsgUpdateParams defines the sdk.Msg type to update the connection - parameters. - ibc.core.connection.v1.MsgUpdateParamsResponse: - type: object - description: MsgUpdateParamsResponse defines the MsgUpdateParams response type. - ibc.core.connection.v1.Params: - type: object - properties: - max_expected_time_per_block: - type: string - format: uint64 - description: >- - maximum expected time per block (in nanoseconds), used to enforce - block delay. This parameter should reflect the - - largest amount of time that the chain might reasonably take to produce - the next block under normal operating - - conditions. A safe choice is 3-5x the expected time per block. - description: Params defines the set of Connection parameters. - ibc.core.connection.v1.Version: - type: object - properties: - identifier: - type: string - title: unique version identifier - features: - type: array - items: - type: string - title: list of features compatible with the specified identifier - description: |- - Version defines the versioning scheme used to negotiate the IBC verison in - the connection handshake. - cosmos.base.query.v1beta1.PageRequest: - type: object - properties: - key: - type: string - format: byte - description: |- - key is a value returned in PageResponse.next_key to begin - querying the next page most efficiently. Only one of offset or key - should be set. - offset: - type: string - format: uint64 - description: |- - offset is a numeric offset that can be used when key is unavailable. - It is less efficient than using key. Only one of offset or key should - be set. - limit: - type: string - format: uint64 - description: >- - limit is the total number of results to be returned in the result - page. - - If left empty it will default to a value to be set by each app. - count_total: - type: boolean - description: >- - count_total is set to true to indicate that the result set should - include - - a count of the total number of items available for pagination in UIs. - - count_total is only respected when offset is used. It is ignored when - key - - is set. - reverse: - type: boolean - description: >- - reverse is set to true if results are to be returned in the descending - order. - - - Since: cosmos-sdk 0.43 - description: |- - message SomeRequest { - Foo some_parameter = 1; - PageRequest pagination = 2; - } - title: |- - PageRequest is to be embedded in gRPC request messages for efficient - pagination. Ex: - cosmos.base.query.v1beta1.PageResponse: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: |- - total is total number of results available if PageRequest.count_total - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.Agreement: - type: object - properties: - id: - type: string - providerId: - type: string - allocationId: - type: string - capacity: - type: string - format: uint64 - startBlock: - type: string - format: uint64 - endBlock: - type: string - format: uint64 - creator: - type: string - owner: - type: string - structs.structs.Allocation: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - structs.structs.Fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - structs.structs.GridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structs.structs.GridRecord: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - structs.structs.Guild: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - endpoint: - type: string - creator: - type: string - owner: - type: string - joinInfusionMinimum: - type: string - format: uint64 - joinInfusionMinimumBypassByRequest: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - joinInfusionMinimumBypassByInvite: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - primaryReactorId: - type: string - entrySubstationId: - type: string - structs.structs.GuildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - structs.structs.Infusion: - type: object - properties: - destinationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - destinationId: - type: string - fuel: - type: string - format: uint64 - power: - type: string - format: uint64 - commission: - type: string - playerId: - type: string - address: - type: string - ratio: - type: string - format: uint64 - defusing: - type: string - structs.structs.InternalAddressAssociation: - type: object - properties: - address: - type: string - objectId: - type: string - structs.structs.Params: - type: object - description: Params defines the parameters for the module. - structs.structs.PermissionRecord: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - structs.structs.Planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - structs.structs.PlanetAttributeRecord: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - structs.structs.PlanetAttributes: - type: object - properties: - planetaryShield: - type: string - format: uint64 - repairNetworkQuantity: - type: string - format: uint64 - defensiveCannonQuantity: - type: string - format: uint64 - coordinatedGlobalShieldNetworkQuantity: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkQuantity: - type: string - format: uint64 - advancedLowOrbitBallisticsInterceptorNetworkQuantity: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkSuccessRateNumerator: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkSuccessRateDenominator: - type: string - format: uint64 - orbitalJammingStationQuantity: - type: string - format: uint64 - advancedOrbitalJammingStationQuantity: - type: string - format: uint64 - blockStartRaid: - type: string - format: uint64 - structs.structs.Player: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - guildId: - type: string - substationId: - type: string - creator: - type: string - primaryAddress: - type: string - planetId: - type: string - fleetId: - type: string - structs.structs.PlayerInventory: - type: object - properties: - rocks: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - structs.structs.Provider: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - creator: - type: string - owner: - type: string - structs.structs.QueryAddressResponse: - type: object - properties: - address: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - structs.structs.QueryAllAddressResponse: - type: object - properties: - address: - type: array - items: - type: object - properties: - address: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllAgreementResponse: - type: object - properties: - Agreement: - type: array - items: - type: object - properties: - id: - type: string - providerId: - type: string - allocationId: - type: string - capacity: - type: string - format: uint64 - startBlock: - type: string - format: uint64 - endBlock: - type: string - format: uint64 - creator: - type: string - owner: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllAllocationResponse: - type: object - properties: - Allocation: - type: array - items: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - structs.structs.QueryAllFleetResponse: - type: object - properties: - Fleet: - type: array - items: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllGridResponse: - type: object - properties: - gridRecords: - type: array - items: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllGuildBankCollateralAddressResponse: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllGuildMembershipApplicationResponse: - type: object - properties: - GuildMembershipApplication: - type: array - items: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllGuildResponse: - type: object - properties: - Guild: - type: array - items: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - endpoint: - type: string - creator: - type: string - owner: - type: string - joinInfusionMinimum: - type: string - format: uint64 - joinInfusionMinimumBypassByRequest: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - joinInfusionMinimumBypassByInvite: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - primaryReactorId: - type: string - entrySubstationId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllInfusionResponse: - type: object - properties: - Infusion: - type: array - items: - type: object - properties: - destinationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - destinationId: - type: string - fuel: - type: string - format: uint64 - power: - type: string - format: uint64 - commission: - type: string - playerId: - type: string - address: - type: string - ratio: - type: string - format: uint64 - defusing: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - status: - type: array - items: - type: string - format: uint64 - structs.structs.QueryAllPermissionResponse: - type: object - properties: - permissionRecords: - type: array - items: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllPlanetAttributeResponse: - type: object - properties: - planetAttributeRecords: - type: array - items: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllPlanetResponse: - type: object - properties: - Planet: - type: array - items: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllPlayerHaltedResponse: - type: object - properties: - PlayerId: - type: array - items: - type: string - structs.structs.QueryAllPlayerResponse: - type: object - properties: - Player: - type: array - items: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - guildId: - type: string - substationId: - type: string - creator: - type: string - primaryAddress: - type: string - planetId: - type: string - fleetId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllProviderCollateralAddressResponse: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllProviderEarningsAddressResponse: - type: object - properties: - internalAddressAssociation: - type: array - items: - type: object - properties: - address: - type: string - objectId: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllProviderResponse: - type: object - properties: - Provider: - type: array - items: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - creator: - type: string - owner: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllReactorResponse: - type: object - properties: - Reactor: - type: array - items: - type: object - properties: - id: - type: string - validator: - type: string - guildId: - type: string - defaultCommission: - type: string - rawAddress: - type: string - format: byte - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllStructAttributeResponse: - type: object - properties: - structAttributeRecords: - type: array - items: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllStructResponse: - type: object - properties: - Struct: - type: array - items: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllStructTypeResponse: - type: object - properties: - StructType: - type: array - items: - type: object - properties: - id: - type: string - format: uint64 - type: - type: string - description: TODO Deprecating... Will match with Class for now. - class: - type: string - title: New Struct Type Identity Details - classAbbreviation: - type: string - defaultCosmeticModelNumber: - type: string - defaultCosmeticName: - type: string - category: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - description: Planet or Fleet - title: Fundamental attributes - buildLimit: - type: string - format: uint64 - title: How many of this Struct Type a player can have - buildDifficulty: - type: string - format: uint64 - title: How much compute is needed to build - buildDraw: - type: string - format: uint64 - title: How much energy the Struct consumes during building - maxHealth: - type: string - format: uint64 - title: How much damage can it take - passiveDraw: - type: string - format: uint64 - title: How much energy the Struct consumes when active - possibleAmbit: - type: string - format: uint64 - description: >- - Where can it be built and moved to. Usually only a single ambit - but some Structs have multiple possible (i.e. Command Ship) - title: |- - Details about location and movement - TODO move category to here and make it flag based too - Replicate what was done for ambits flags - movable: - type: boolean - title: Can the Struct change ambit? - slotBound: - type: boolean - title: >- - Does the Struct occupy a slot. Trying to find something to help - set Command Ships apart - primaryWeapon: - title: Primary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - primaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - primaryWeaponCharge: - type: string - format: uint64 - primaryWeaponAmbits: - type: string - format: uint64 - primaryWeaponTargets: - type: string - format: uint64 - primaryWeaponShots: - type: string - format: uint64 - primaryWeaponDamage: - type: string - format: uint64 - primaryWeaponBlockable: - type: boolean - primaryWeaponCounterable: - type: boolean - primaryWeaponRecoilDamage: - type: string - format: uint64 - primaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - primaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - secondaryWeapon: - title: Secondary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - secondaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - secondaryWeaponCharge: - type: string - format: uint64 - secondaryWeaponAmbits: - type: string - format: uint64 - secondaryWeaponTargets: - type: string - format: uint64 - secondaryWeaponShots: - type: string - format: uint64 - secondaryWeaponDamage: - type: string - format: uint64 - secondaryWeaponBlockable: - type: boolean - secondaryWeaponCounterable: - type: boolean - secondaryWeaponRecoilDamage: - type: string - format: uint64 - secondaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - secondaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - passiveWeaponry: - title: Tech Tree Features - type: string - enum: - - noPassiveWeaponry - - counterAttack - - strongCounterAttack - - advancedCounterAttack - - lastResort - default: noPassiveWeaponry - unitDefenses: - type: string - enum: - - noUnitDefenses - - defensiveManeuver - - signalJamming - - armour - - indirectCombatModule - - stealthMode - - perimeterFencing - - reinforcedWalls - default: noUnitDefenses - oreReserveDefenses: - type: string - enum: - - noOreReserveDefenses - - coordinatedReserveResponseTracker - - rapidResponsePackage - - activeScanning - - monitoringStation - - oreBunker - default: noOreReserveDefenses - planetaryDefenses: - type: string - enum: - - noPlanetaryDefense - - defensiveCannon - - lowOrbitBallisticInterceptorNetwork - default: noPlanetaryDefense - title: >- - - lowOrbitBallisticInterceptorNetwork: - advancedLowOrbitBallisticInterceptorNetwork = 3; - - repairNetwork = 4; - - coordinatedGlobalShieldNetwork = 5; - - orbitalJammingStation = 6; - - advancedOrbitalJammingStation = 7; - planetaryMining: - type: string - enum: - - noPlanetaryMining - - oreMiningRig - default: noPlanetaryMining - planetaryRefinery: - type: string - enum: - - noPlanetaryRefinery - - oreRefinery - default: noPlanetaryRefinery - powerGeneration: - type: string - enum: - - noPowerGeneration - - smallGenerator - - mediumGenerator - - largeGenerator - default: noPowerGeneration - activateCharge: - type: string - format: uint64 - title: Charge uses - buildCharge: - type: string - format: uint64 - defendChangeCharge: - type: string - format: uint64 - moveCharge: - type: string - format: uint64 - oreMiningCharge: - type: string - format: uint64 - oreRefiningCharge: - type: string - format: uint64 - stealthActivateCharge: - type: string - format: uint64 - attackReduction: - type: string - format: uint64 - description: For Defensive Cannon - title: Tech Tree Attributes - attackCounterable: - type: boolean - title: For Indirect Combat Module - stealthSystems: - type: boolean - title: For Stealth Mode - counterAttack: - type: string - format: uint64 - title: Counter - counterAttackSameAmbit: - type: string - format: uint64 - title: Advanced Counter - postDestructionDamage: - type: string - format: uint64 - generatingRate: - type: string - format: uint64 - title: Power Generation - planetaryShieldContribution: - type: string - format: uint64 - title: The shield that is added to the Planet - oreMiningDifficulty: - type: string - format: uint64 - oreRefiningDifficulty: - type: string - format: uint64 - unguidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - unguidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - guidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - guidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - triggerRaidDefeatByDestruction: - type: boolean - description: >- - I wish this was higher up in a different area of the definition - - but I really don't feel like renumbering this entire thing - again. - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryAllSubstationResponse: - type: object - properties: - Substation: - type: array - items: - type: object - properties: - id: - type: string - owner: - type: string - creator: - type: string - pagination: - type: object - properties: - next_key: - type: string - format: byte - description: |- - next_key is the key to be passed to PageRequest.key to - query the next page most efficiently. It will be empty if - there are no more results. - total: - type: string - format: uint64 - title: >- - total is total number of results available if - PageRequest.count_total - - was set, its value is undefined otherwise - description: |- - PageResponse is to be embedded in gRPC response messages where the - corresponding request message has used PageRequest. - - message SomeResponse { - repeated Bar results = 1; - PageResponse page = 2; - } - structs.structs.QueryBlockHeightResponse: - type: object - properties: - blockHeight: - type: string - format: uint64 - structs.structs.QueryGetAgreementResponse: - type: object - properties: - Agreement: - type: object - properties: - id: - type: string - providerId: - type: string - allocationId: - type: string - capacity: - type: string - format: uint64 - startBlock: - type: string - format: uint64 - endBlock: - type: string - format: uint64 - creator: - type: string - owner: - type: string - structs.structs.QueryGetAllocationResponse: - type: object - properties: - Allocation: - type: object - properties: - id: - type: string - type: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - sourceObjectId: - type: string - title: Core allocation details - index: - type: string - format: uint64 - destinationId: - type: string - creator: - type: string - title: Who does this currently belong to - controller: - type: string - locked: - type: boolean - title: Locking will be needed for IBC - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structs.structs.QueryGetFleetResponse: - type: object - properties: - Fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - structs.structs.QueryGetGridResponse: - type: object - properties: - gridRecord: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - title: Generic Responses for Permissions - structs.structs.QueryGetGuildMembershipApplicationResponse: - type: object - properties: - GuildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - structs.structs.QueryGetGuildResponse: - type: object - properties: - Guild: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - endpoint: - type: string - creator: - type: string - owner: - type: string - joinInfusionMinimum: - type: string - format: uint64 - joinInfusionMinimumBypassByRequest: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - joinInfusionMinimumBypassByInvite: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - primaryReactorId: - type: string - entrySubstationId: - type: string - structs.structs.QueryGetInfusionResponse: - type: object - properties: - Infusion: - type: object - properties: - destinationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - destinationId: - type: string - fuel: - type: string - format: uint64 - power: - type: string - format: uint64 - commission: - type: string - playerId: - type: string - address: - type: string - ratio: - type: string - format: uint64 - defusing: - type: string - structs.structs.QueryGetPermissionResponse: - type: object - properties: - permissionRecord: - type: object - properties: - permissionId: - type: string - value: - type: string - format: uint64 - title: Generic Responses for Permissions - structs.structs.QueryGetPlanetAttributeResponse: - type: object - properties: - attribute: - type: string - format: uint64 - structs.structs.QueryGetPlanetResponse: - type: object - properties: - Planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - planetAttributes: - type: object - properties: - planetaryShield: - type: string - format: uint64 - repairNetworkQuantity: - type: string - format: uint64 - defensiveCannonQuantity: - type: string - format: uint64 - coordinatedGlobalShieldNetworkQuantity: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkQuantity: - type: string - format: uint64 - advancedLowOrbitBallisticsInterceptorNetworkQuantity: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkSuccessRateNumerator: - type: string - format: uint64 - lowOrbitBallisticsInterceptorNetworkSuccessRateDenominator: - type: string - format: uint64 - orbitalJammingStationQuantity: - type: string - format: uint64 - advancedOrbitalJammingStationQuantity: - type: string - format: uint64 - blockStartRaid: - type: string - format: uint64 - structs.structs.QueryGetPlayerResponse: - type: object - properties: - Player: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - guildId: - type: string - substationId: - type: string - creator: - type: string - primaryAddress: - type: string - planetId: - type: string - fleetId: - type: string - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - playerInventory: - type: object - properties: - rocks: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - halted: - type: boolean - structs.structs.QueryGetProviderResponse: - type: object - properties: - Provider: - type: object - properties: - id: - type: string - index: - type: string - format: uint64 - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: >- - Coin defines a token with a denomination and an amount. - - - NOTE: The amount field is an Int which implements the custom - method - - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - creator: - type: string - owner: - type: string - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structs.structs.QueryGetReactorResponse: - type: object - properties: - Reactor: - type: object - properties: - id: - type: string - validator: - type: string - guildId: - type: string - defaultCommission: - type: string - rawAddress: - type: string - format: byte - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structs.structs.QueryGetStructAttributeResponse: - type: object - properties: - attribute: - type: string - format: uint64 - structs.structs.QueryGetStructResponse: - type: object - properties: - Struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structAttributes: - type: object - properties: - health: - type: string - format: uint64 - status: - type: string - format: uint64 - blockStartBuild: - type: string - format: uint64 - blockStartOreMine: - type: string - format: uint64 - blockStartOreRefine: - type: string - format: uint64 - protectedStructIndex: - type: string - format: uint64 - typeCount: - type: string - format: uint64 - isMaterialized: - type: boolean - isBuilt: - type: boolean - isOnline: - type: boolean - isHidden: - type: boolean - isDestroyed: - type: boolean - isLocked: - type: boolean - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structDefenders: - type: array - items: - type: string - structs.structs.QueryGetStructTypeResponse: - type: object - properties: - StructType: - type: object - properties: - id: - type: string - format: uint64 - type: - type: string - description: TODO Deprecating... Will match with Class for now. - class: - type: string - title: New Struct Type Identity Details - classAbbreviation: - type: string - defaultCosmeticModelNumber: - type: string - defaultCosmeticName: - type: string - category: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - description: Planet or Fleet - title: Fundamental attributes - buildLimit: - type: string - format: uint64 - title: How many of this Struct Type a player can have - buildDifficulty: - type: string - format: uint64 - title: How much compute is needed to build - buildDraw: - type: string - format: uint64 - title: How much energy the Struct consumes during building - maxHealth: - type: string - format: uint64 - title: How much damage can it take - passiveDraw: - type: string - format: uint64 - title: How much energy the Struct consumes when active - possibleAmbit: - type: string - format: uint64 - description: >- - Where can it be built and moved to. Usually only a single ambit - but some Structs have multiple possible (i.e. Command Ship) - title: |- - Details about location and movement - TODO move category to here and make it flag based too - Replicate what was done for ambits flags - movable: - type: boolean - title: Can the Struct change ambit? - slotBound: - type: boolean - title: >- - Does the Struct occupy a slot. Trying to find something to help - set Command Ships apart - primaryWeapon: - title: Primary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - primaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - primaryWeaponCharge: - type: string - format: uint64 - primaryWeaponAmbits: - type: string - format: uint64 - primaryWeaponTargets: - type: string - format: uint64 - primaryWeaponShots: - type: string - format: uint64 - primaryWeaponDamage: - type: string - format: uint64 - primaryWeaponBlockable: - type: boolean - primaryWeaponCounterable: - type: boolean - primaryWeaponRecoilDamage: - type: string - format: uint64 - primaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - primaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - secondaryWeapon: - title: Secondary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - secondaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - secondaryWeaponCharge: - type: string - format: uint64 - secondaryWeaponAmbits: - type: string - format: uint64 - secondaryWeaponTargets: - type: string - format: uint64 - secondaryWeaponShots: - type: string - format: uint64 - secondaryWeaponDamage: - type: string - format: uint64 - secondaryWeaponBlockable: - type: boolean - secondaryWeaponCounterable: - type: boolean - secondaryWeaponRecoilDamage: - type: string - format: uint64 - secondaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - secondaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - passiveWeaponry: - title: Tech Tree Features - type: string - enum: - - noPassiveWeaponry - - counterAttack - - strongCounterAttack - - advancedCounterAttack - - lastResort - default: noPassiveWeaponry - unitDefenses: - type: string - enum: - - noUnitDefenses - - defensiveManeuver - - signalJamming - - armour - - indirectCombatModule - - stealthMode - - perimeterFencing - - reinforcedWalls - default: noUnitDefenses - oreReserveDefenses: - type: string - enum: - - noOreReserveDefenses - - coordinatedReserveResponseTracker - - rapidResponsePackage - - activeScanning - - monitoringStation - - oreBunker - default: noOreReserveDefenses - planetaryDefenses: - type: string - enum: - - noPlanetaryDefense - - defensiveCannon - - lowOrbitBallisticInterceptorNetwork - default: noPlanetaryDefense - title: >- - - lowOrbitBallisticInterceptorNetwork: - advancedLowOrbitBallisticInterceptorNetwork = 3; - - repairNetwork = 4; - - coordinatedGlobalShieldNetwork = 5; - - orbitalJammingStation = 6; - - advancedOrbitalJammingStation = 7; - planetaryMining: - type: string - enum: - - noPlanetaryMining - - oreMiningRig - default: noPlanetaryMining - planetaryRefinery: - type: string - enum: - - noPlanetaryRefinery - - oreRefinery - default: noPlanetaryRefinery - powerGeneration: - type: string - enum: - - noPowerGeneration - - smallGenerator - - mediumGenerator - - largeGenerator - default: noPowerGeneration - activateCharge: - type: string - format: uint64 - title: Charge uses - buildCharge: - type: string - format: uint64 - defendChangeCharge: - type: string - format: uint64 - moveCharge: - type: string - format: uint64 - oreMiningCharge: - type: string - format: uint64 - oreRefiningCharge: - type: string - format: uint64 - stealthActivateCharge: - type: string - format: uint64 - attackReduction: - type: string - format: uint64 - description: For Defensive Cannon - title: Tech Tree Attributes - attackCounterable: - type: boolean - title: For Indirect Combat Module - stealthSystems: - type: boolean - title: For Stealth Mode - counterAttack: - type: string - format: uint64 - title: Counter - counterAttackSameAmbit: - type: string - format: uint64 - title: Advanced Counter - postDestructionDamage: - type: string - format: uint64 - generatingRate: - type: string - format: uint64 - title: Power Generation - planetaryShieldContribution: - type: string - format: uint64 - title: The shield that is added to the Planet - oreMiningDifficulty: - type: string - format: uint64 - oreRefiningDifficulty: - type: string - format: uint64 - unguidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - unguidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - guidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - guidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - triggerRaidDefeatByDestruction: - type: boolean - description: |- - I wish this was higher up in a different area of the definition - but I really don't feel like renumbering this entire thing again. - structs.structs.QueryGetSubstationResponse: - type: object - properties: - Substation: - type: object - properties: - id: - type: string - owner: - type: string - creator: - type: string - gridAttributes: - type: object - properties: - ore: - type: string - format: uint64 - fuel: - type: string - format: uint64 - capacity: - type: string - format: uint64 - load: - type: string - format: uint64 - structsLoad: - type: string - format: uint64 - power: - type: string - format: uint64 - connectionCapacity: - type: string - format: uint64 - connectionCount: - type: string - format: uint64 - allocationPointerStart: - type: string - format: uint64 - allocationPointerEnd: - type: string - format: uint64 - proxyNonce: - type: string - format: uint64 - lastAction: - type: string - format: uint64 - nonce: - type: string - format: uint64 - ready: - type: string - format: uint64 - checkpointBlock: - type: string - format: uint64 - structs.structs.QueryParamsResponse: - type: object - properties: - params: - description: params holds all the parameters of this module. - type: object - description: QueryParamsResponse is response type for the Query/Params RPC method. - structs.structs.QueryValidateSignatureResponse: - type: object - properties: - pubkeyFormatError: - type: boolean - signatureFormatError: - type: boolean - addressPubkeyMismatch: - type: boolean - signatureInvalid: - type: boolean - valid: - type: boolean - structs.structs.Reactor: - type: object - properties: - id: - type: string - validator: - type: string - guildId: - type: string - defaultCommission: - type: string - rawAddress: - type: string - format: byte - structs.structs.Struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structs.structs.StructAttributeRecord: - type: object - properties: - attributeId: - type: string - value: - type: string - format: uint64 - structs.structs.StructAttributes: - type: object - properties: - health: - type: string - format: uint64 - status: - type: string - format: uint64 - blockStartBuild: - type: string - format: uint64 - blockStartOreMine: - type: string - format: uint64 - blockStartOreRefine: - type: string - format: uint64 - protectedStructIndex: - type: string - format: uint64 - typeCount: - type: string - format: uint64 - isMaterialized: - type: boolean - isBuilt: - type: boolean - isOnline: - type: boolean - isHidden: - type: boolean - isDestroyed: - type: boolean - isLocked: - type: boolean - structs.structs.StructType: - type: object - properties: - id: - type: string - format: uint64 - type: - type: string - description: TODO Deprecating... Will match with Class for now. - class: - type: string - title: New Struct Type Identity Details - classAbbreviation: - type: string - defaultCosmeticModelNumber: - type: string - defaultCosmeticName: - type: string - category: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - description: Planet or Fleet - title: Fundamental attributes - buildLimit: - type: string - format: uint64 - title: How many of this Struct Type a player can have - buildDifficulty: - type: string - format: uint64 - title: How much compute is needed to build - buildDraw: - type: string - format: uint64 - title: How much energy the Struct consumes during building - maxHealth: - type: string - format: uint64 - title: How much damage can it take - passiveDraw: - type: string - format: uint64 - title: How much energy the Struct consumes when active - possibleAmbit: - type: string - format: uint64 - description: >- - Where can it be built and moved to. Usually only a single ambit but - some Structs have multiple possible (i.e. Command Ship) - title: |- - Details about location and movement - TODO move category to here and make it flag based too - Replicate what was done for ambits flags - movable: - type: boolean - title: Can the Struct change ambit? - slotBound: - type: boolean - title: >- - Does the Struct occupy a slot. Trying to find something to help set - Command Ships apart - primaryWeapon: - title: Primary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - primaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - primaryWeaponCharge: - type: string - format: uint64 - primaryWeaponAmbits: - type: string - format: uint64 - primaryWeaponTargets: - type: string - format: uint64 - primaryWeaponShots: - type: string - format: uint64 - primaryWeaponDamage: - type: string - format: uint64 - primaryWeaponBlockable: - type: boolean - primaryWeaponCounterable: - type: boolean - primaryWeaponRecoilDamage: - type: string - format: uint64 - primaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - primaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - secondaryWeapon: - title: Secondary Weapon Configuration - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - secondaryWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - secondaryWeaponCharge: - type: string - format: uint64 - secondaryWeaponAmbits: - type: string - format: uint64 - secondaryWeaponTargets: - type: string - format: uint64 - secondaryWeaponShots: - type: string - format: uint64 - secondaryWeaponDamage: - type: string - format: uint64 - secondaryWeaponBlockable: - type: boolean - secondaryWeaponCounterable: - type: boolean - secondaryWeaponRecoilDamage: - type: string - format: uint64 - secondaryWeaponShotSuccessRateNumerator: - type: string - format: uint64 - secondaryWeaponShotSuccessRateDenominator: - type: string - format: uint64 - passiveWeaponry: - title: Tech Tree Features - type: string - enum: - - noPassiveWeaponry - - counterAttack - - strongCounterAttack - - advancedCounterAttack - - lastResort - default: noPassiveWeaponry - unitDefenses: - type: string - enum: - - noUnitDefenses - - defensiveManeuver - - signalJamming - - armour - - indirectCombatModule - - stealthMode - - perimeterFencing - - reinforcedWalls - default: noUnitDefenses - oreReserveDefenses: - type: string - enum: - - noOreReserveDefenses - - coordinatedReserveResponseTracker - - rapidResponsePackage - - activeScanning - - monitoringStation - - oreBunker - default: noOreReserveDefenses - planetaryDefenses: - type: string - enum: - - noPlanetaryDefense - - defensiveCannon - - lowOrbitBallisticInterceptorNetwork - default: noPlanetaryDefense - title: >- - - lowOrbitBallisticInterceptorNetwork: - advancedLowOrbitBallisticInterceptorNetwork = 3; - - repairNetwork = 4; - - coordinatedGlobalShieldNetwork = 5; - - orbitalJammingStation = 6; - - advancedOrbitalJammingStation = 7; - planetaryMining: - type: string - enum: - - noPlanetaryMining - - oreMiningRig - default: noPlanetaryMining - planetaryRefinery: - type: string - enum: - - noPlanetaryRefinery - - oreRefinery - default: noPlanetaryRefinery - powerGeneration: - type: string - enum: - - noPowerGeneration - - smallGenerator - - mediumGenerator - - largeGenerator - default: noPowerGeneration - activateCharge: - type: string - format: uint64 - title: Charge uses - buildCharge: - type: string - format: uint64 - defendChangeCharge: - type: string - format: uint64 - moveCharge: - type: string - format: uint64 - oreMiningCharge: - type: string - format: uint64 - oreRefiningCharge: - type: string - format: uint64 - stealthActivateCharge: - type: string - format: uint64 - attackReduction: - type: string - format: uint64 - description: For Defensive Cannon - title: Tech Tree Attributes - attackCounterable: - type: boolean - title: For Indirect Combat Module - stealthSystems: - type: boolean - title: For Stealth Mode - counterAttack: - type: string - format: uint64 - title: Counter - counterAttackSameAmbit: - type: string - format: uint64 - title: Advanced Counter - postDestructionDamage: - type: string - format: uint64 - generatingRate: - type: string - format: uint64 - title: Power Generation - planetaryShieldContribution: - type: string - format: uint64 - title: The shield that is added to the Planet - oreMiningDifficulty: - type: string - format: uint64 - oreRefiningDifficulty: - type: string - format: uint64 - unguidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - unguidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - guidedDefensiveSuccessRateNumerator: - type: string - format: uint64 - guidedDefensiveSuccessRateDenominator: - type: string - format: uint64 - triggerRaidDefeatByDestruction: - type: boolean - description: |- - I wish this was higher up in a different area of the definition - but I really don't feel like renumbering this entire thing again. - structs.structs.Substation: - type: object - properties: - id: - type: string - owner: - type: string - creator: - type: string - structs.structs.allocationType: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - structs.structs.ambit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - structs.structs.fleetStatus: - type: string - enum: - - onStation - - away - default: onStation - structs.structs.guildJoinBypassLevel: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - structs.structs.guildJoinType: - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - structs.structs.objectType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - structs.structs.planetStatus: - type: string - enum: - - active - - complete - default: active - structs.structs.providerAccessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - structs.structs.registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - structs.structs.techActiveWeaponry: - type: string - enum: - - noActiveWeaponry - - guidedWeaponry - - unguidedWeaponry - - attackRun - - selfDestruct - default: noActiveWeaponry - structs.structs.techOreReserveDefenses: - type: string - enum: - - noOreReserveDefenses - - coordinatedReserveResponseTracker - - rapidResponsePackage - - activeScanning - - monitoringStation - - oreBunker - default: noOreReserveDefenses - structs.structs.techPassiveWeaponry: - type: string - enum: - - noPassiveWeaponry - - counterAttack - - strongCounterAttack - - advancedCounterAttack - - lastResort - default: noPassiveWeaponry - structs.structs.techPlanetaryDefenses: - type: string - enum: - - noPlanetaryDefense - - defensiveCannon - - lowOrbitBallisticInterceptorNetwork - default: noPlanetaryDefense - title: >- - - lowOrbitBallisticInterceptorNetwork: - advancedLowOrbitBallisticInterceptorNetwork = 3; - - repairNetwork = 4; - - coordinatedGlobalShieldNetwork = 5; - - orbitalJammingStation = 6; - - advancedOrbitalJammingStation = 7; - structs.structs.techPlanetaryMining: - type: string - enum: - - noPlanetaryMining - - oreMiningRig - default: noPlanetaryMining - structs.structs.techPlanetaryRefineries: - type: string - enum: - - noPlanetaryRefinery - - oreRefinery - default: noPlanetaryRefinery - structs.structs.techPowerGeneration: - type: string - enum: - - noPowerGeneration - - smallGenerator - - mediumGenerator - - largeGenerator - default: noPowerGeneration - structs.structs.techUnitDefenses: - type: string - enum: - - noUnitDefenses - - defensiveManeuver - - signalJamming - - armour - - indirectCombatModule - - stealthMode - - perimeterFencing - - reinforcedWalls - default: noUnitDefenses - structs.structs.techWeaponControl: - type: string - enum: - - noWeaponControl - - guided - - unguided - default: noWeaponControl - structs.structs.MsgAddressRegister: - type: object - properties: - creator: - type: string - playerId: - type: string - address: - type: string - proofPubKey: - type: string - proofSignature: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgAddressRegisterResponse: - type: object - structs.structs.MsgAddressRevoke: - type: object - properties: - creator: - type: string - address: - type: string - structs.structs.MsgAddressRevokeResponse: - type: object - structs.structs.MsgAgreementCapacityDecrease: - type: object - properties: - creator: - type: string - agreementId: - type: string - capacityDecrease: - type: string - format: uint64 - structs.structs.MsgAgreementCapacityIncrease: - type: object - properties: - creator: - type: string - agreementId: - type: string - capacityIncrease: - type: string - format: uint64 - structs.structs.MsgAgreementClose: - type: object - properties: - creator: - type: string - agreementId: - type: string - structs.structs.MsgAgreementDurationIncrease: - type: object - properties: - creator: - type: string - agreementId: - type: string - durationIncrease: - type: string - format: uint64 - structs.structs.MsgAgreementOpen: - type: object - properties: - creator: - type: string - providerId: - type: string - duration: - type: string - format: uint64 - capacity: - type: string - format: uint64 - structs.structs.MsgAgreementResponse: - type: object - structs.structs.MsgAllocationCreate: - type: object - properties: - creator: - type: string - controller: - type: string - sourceObjectId: - type: string - allocationType: - type: string - enum: - - static - - dynamic - - automated - - providerAgreement - default: static - power: - type: string - format: uint64 - structs.structs.MsgAllocationCreateResponse: - type: object - properties: - allocationId: - type: string - structs.structs.MsgAllocationDelete: - type: object - properties: - creator: - type: string - allocationId: - type: string - structs.structs.MsgAllocationDeleteResponse: - type: object - properties: - allocationId: - type: string - structs.structs.MsgAllocationTransfer: - type: object - properties: - creator: - type: string - allocationId: - type: string - controller: - type: string - structs.structs.MsgAllocationTransferResponse: - type: object - properties: - allocationId: - type: string - structs.structs.MsgAllocationUpdate: - type: object - properties: - creator: - type: string - allocationId: - type: string - power: - type: string - format: uint64 - structs.structs.MsgAllocationUpdateResponse: - type: object - properties: - allocationId: - type: string - structs.structs.MsgFleetMove: - type: object - properties: - creator: - type: string - fleetId: - type: string - destinationLocationId: - type: string - structs.structs.MsgFleetMoveResponse: - type: object - properties: - fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - structs.structs.MsgGuildBankConfiscateAndBurn: - type: object - properties: - creator: - type: string - address: - type: string - amountToken: - type: string - format: uint64 - structs.structs.MsgGuildBankConfiscateAndBurnResponse: - type: object - structs.structs.MsgGuildBankMint: - type: object - properties: - creator: - type: string - amountAlpha: - type: string - format: uint64 - amountToken: - type: string - format: uint64 - structs.structs.MsgGuildBankMintResponse: - type: object - structs.structs.MsgGuildBankRedeem: - type: object - properties: - creator: - type: string - amountToken: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - structs.structs.MsgGuildBankRedeemResponse: - type: object - structs.structs.MsgGuildCreate: - type: object - properties: - creator: - type: string - endpoint: - type: string - entrySubstationId: - type: string - structs.structs.MsgGuildCreateResponse: - type: object - properties: - guildId: - type: string - structs.structs.MsgGuildMembershipInvite: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - structs.structs.MsgGuildMembershipInviteApprove: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - structs.structs.MsgGuildMembershipInviteDeny: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - structs.structs.MsgGuildMembershipInviteRevoke: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - structs.structs.MsgGuildMembershipJoin: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - infusionId: - type: array - items: - type: string - structs.structs.MsgGuildMembershipJoinProxy: - type: object - properties: - creator: - type: string - address: - type: string - substationId: - type: string - proofPubKey: - type: string - proofSignature: - type: string - structs.structs.MsgGuildMembershipKick: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - structs.structs.MsgGuildMembershipRequest: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - structs.structs.MsgGuildMembershipRequestApprove: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - substationId: - type: string - structs.structs.MsgGuildMembershipRequestDeny: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - structs.structs.MsgGuildMembershipRequestRevoke: - type: object - properties: - creator: - type: string - guildId: - type: string - playerId: - type: string - structs.structs.MsgGuildMembershipResponse: - type: object - properties: - guildMembershipApplication: - type: object - properties: - guildId: - type: string - playerId: - type: string - joinType: - title: Invite | Request - type: string - enum: - - invite - - request - - direct - - proxy - default: invite - registrationStatus: - type: string - enum: - - proposed - - approved - - denied - - revoked - default: proposed - proposer: - type: string - substationId: - type: string - structs.structs.MsgGuildUpdateEndpoint: - type: object - properties: - creator: - type: string - guildId: - type: string - endpoint: - type: string - structs.structs.MsgGuildUpdateEntrySubstationId: - type: object - properties: - creator: - type: string - guildId: - type: string - entrySubstationId: - type: string - structs.structs.MsgGuildUpdateJoinInfusionMinimum: - type: object - properties: - creator: - type: string - guildId: - type: string - joinInfusionMinimum: - type: string - format: uint64 - structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite: - type: object - properties: - creator: - type: string - guildId: - type: string - guildJoinBypassLevel: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest: - type: object - properties: - creator: - type: string - guildId: - type: string - guildJoinBypassLevel: - type: string - enum: - - closed - - permissioned - - member - default: closed - title: |- - - closed: Feature off - - permissioned: Only those with permissions can do it - - member: All members of the guild can contribute - structs.structs.MsgGuildUpdateOwnerId: - type: object - properties: - creator: - type: string - guildId: - type: string - owner: - type: string - structs.structs.MsgGuildUpdateResponse: - type: object - structs.structs.MsgPermissionGrantOnAddress: - type: object - properties: - creator: - type: string - address: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgPermissionGrantOnObject: - type: object - properties: - creator: - type: string - objectId: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgPermissionResponse: - type: object - structs.structs.MsgPermissionRevokeOnAddress: - type: object - properties: - creator: - type: string - address: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgPermissionRevokeOnObject: - type: object - properties: - creator: - type: string - objectId: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgPermissionSetOnAddress: - type: object - properties: - creator: - type: string - address: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgPermissionSetOnObject: - type: object - properties: - creator: - type: string - objectId: - type: string - playerId: - type: string - permissions: - type: string - format: uint64 - structs.structs.MsgPlanetExplore: - type: object - properties: - creator: - type: string - playerId: - type: string - structs.structs.MsgPlanetExploreResponse: - type: object - properties: - planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - structs.structs.MsgPlanetRaidComplete: - type: object - properties: - creator: - type: string - fleetId: - type: string - proof: - type: string - nonce: - type: string - structs.structs.MsgPlanetRaidCompleteResponse: - type: object - properties: - fleet: - type: object - properties: - id: - type: string - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - locationId: - type: string - status: - type: string - enum: - - onStation - - away - default: onStation - locationListForward: - type: string - title: Towards Planet - locationListBackward: - type: string - title: Towards End of List - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - commandStruct: - type: string - planet: - type: object - properties: - id: - type: string - maxOre: - type: string - format: uint64 - creator: - type: string - owner: - type: string - space: - type: array - items: - type: string - air: - type: array - items: - type: string - land: - type: array - items: - type: string - water: - type: array - items: - type: string - spaceSlots: - type: string - format: uint64 - airSlots: - type: string - format: uint64 - landSlots: - type: string - format: uint64 - waterSlots: - type: string - format: uint64 - status: - type: string - enum: - - active - - complete - default: active - locationListStart: - type: string - title: First in line to battle planet - locationListLast: - type: string - title: End of the line - oreStolen: - type: string - format: uint64 - structs.structs.MsgPlayerResume: - type: object - properties: - creator: - type: string - playerId: - type: string - structs.structs.MsgPlayerResumeResponse: - type: object - structs.structs.MsgPlayerUpdatePrimaryAddress: - type: object - properties: - creator: - type: string - playerId: - type: string - primaryAddress: - type: string - structs.structs.MsgPlayerUpdatePrimaryAddressResponse: - type: object - structs.structs.MsgProviderCreate: - type: object - properties: - creator: - type: string - substationId: - type: string - rate: - type: object - properties: - denom: - type: string - amount: - type: string - description: |- - Coin defines a token with a denomination and an amount. - - NOTE: The amount field is an Int which implements the custom method - signatures required by gogoproto. - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - providerCancellationPenalty: - type: string - consumerCancellationPenalty: - type: string - capacityMinimum: - type: string - format: uint64 - capacityMaximum: - type: string - format: uint64 - durationMinimum: - type: string - format: uint64 - durationMaximum: - type: string - format: uint64 - structs.structs.MsgProviderDelete: - type: object - properties: - creator: - type: string - providerId: - type: string - structs.structs.MsgProviderGuildGrant: - type: object - properties: - creator: - type: string - providerId: - type: string - guildId: - type: array - items: - type: string - structs.structs.MsgProviderGuildRevoke: - type: object - properties: - creator: - type: string - providerId: - type: string - guildId: - type: array - items: - type: string - structs.structs.MsgProviderResponse: - type: object - structs.structs.MsgProviderUpdateAccessPolicy: - type: object - properties: - creator: - type: string - providerId: - type: string - accessPolicy: - type: string - enum: - - openMarket - - guildMarket - - closedMarket - default: openMarket - structs.structs.MsgProviderUpdateCapacityMaximum: - type: object - properties: - creator: - type: string - providerId: - type: string - newMaximumCapacity: - type: string - format: uint64 - structs.structs.MsgProviderUpdateCapacityMinimum: - type: object - properties: - creator: - type: string - providerId: - type: string - newMinimumCapacity: - type: string - format: uint64 - structs.structs.MsgProviderUpdateDurationMaximum: - type: object - properties: - creator: - type: string - providerId: - type: string - newMaximumDuration: - type: string - format: uint64 - structs.structs.MsgProviderUpdateDurationMinimum: - type: object - properties: - creator: - type: string - providerId: - type: string - newMinimumDuration: - type: string - format: uint64 - structs.structs.MsgProviderWithdrawBalance: - type: object - properties: - creator: - type: string - providerId: - type: string - destinationAddress: - type: string - structs.structs.MsgStructActivate: - type: object - properties: - creator: - type: string - structId: - type: string - structs.structs.MsgStructAttack: - type: object - properties: - creator: - type: string - operatingStructId: - type: string - targetStructId: - type: array - items: - type: string - weaponSystem: - type: string - structs.structs.MsgStructAttackResponse: - type: object - structs.structs.MsgStructBuildCancel: - type: object - properties: - creator: - type: string - structId: - type: string - structs.structs.MsgStructBuildComplete: - type: object - properties: - creator: - type: string - structId: - type: string - proof: - type: string - nonce: - type: string - structs.structs.MsgStructBuildInitiate: - type: object - properties: - creator: - type: string - playerId: - type: string - structTypeId: - type: string - format: uint64 - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - title: objectType locationType = 4; - slot: - type: string - format: uint64 - structs.structs.MsgStructDeactivate: - type: object - properties: - creator: - type: string - structId: - type: string - structs.structs.MsgStructDefenseClear: - type: object - properties: - creator: - type: string - defenderStructId: - type: string - structs.structs.MsgStructDefenseSet: - type: object - properties: - creator: - type: string - defenderStructId: - type: string - protectedStructId: - type: string - structs.structs.MsgStructGeneratorInfuse: - type: object - properties: - creator: - type: string - structId: - type: string - infuseAmount: - type: string - structs.structs.MsgStructGeneratorStatusResponse: - type: object - structs.structs.MsgStructMove: - type: object - properties: - creator: - type: string - structId: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - ambit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structs.structs.MsgStructOreMinerComplete: - type: object - properties: - creator: - type: string - structId: - type: string - proof: - type: string - nonce: - type: string - structs.structs.MsgStructOreMinerStatusResponse: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structs.structs.MsgStructOreRefineryComplete: - type: object - properties: - creator: - type: string - structId: - type: string - proof: - type: string - nonce: - type: string - structs.structs.MsgStructOreRefineryStatusResponse: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structs.structs.MsgStructStatusResponse: - type: object - properties: - struct: - type: object - properties: - id: - type: string - title: What it is - index: - type: string - format: uint64 - type: - type: string - format: uint64 - creator: - type: string - title: Who is it - owner: - type: string - locationType: - type: string - enum: - - guild - - player - - planet - - reactor - - substation - - struct - - allocation - - infusion - - address - - fleet - - provider - - agreement - default: guild - title: Where it is - locationId: - type: string - operatingAmbit: - type: string - enum: - - none - - water - - land - - air - - space - - local - default: none - slot: - type: string - format: uint64 - structs.structs.MsgStructStealthActivate: - type: object - properties: - creator: - type: string - structId: - type: string - structs.structs.MsgStructStealthDeactivate: - type: object - properties: - creator: - type: string - structId: - type: string - structs.structs.MsgSubstationAllocationConnect: - type: object - properties: - creator: - type: string - allocationId: - type: string - destinationId: - type: string - structs.structs.MsgSubstationAllocationConnectResponse: - type: object - structs.structs.MsgSubstationAllocationDisconnect: - type: object - properties: - creator: - type: string - allocationId: - type: string - structs.structs.MsgSubstationAllocationDisconnectResponse: - type: object - structs.structs.MsgSubstationCreate: - type: object - properties: - creator: - type: string - owner: - type: string - allocationId: - type: string - structs.structs.MsgSubstationCreateResponse: - type: object - properties: - substationId: - type: string - structs.structs.MsgSubstationDelete: - type: object - properties: - creator: - type: string - substationId: - type: string - migrationSubstationId: - type: string - structs.structs.MsgSubstationDeleteResponse: - type: object - structs.structs.MsgSubstationPlayerConnect: - type: object - properties: - creator: - type: string - substationId: - type: string - playerId: - type: string - structs.structs.MsgSubstationPlayerConnectResponse: - type: object - structs.structs.MsgSubstationPlayerDisconnect: - type: object - properties: - creator: - type: string - playerId: - type: string - structs.structs.MsgSubstationPlayerDisconnectResponse: - type: object - structs.structs.MsgSubstationPlayerMigrate: - type: object - properties: - creator: - type: string - substationId: - type: string - playerId: - type: array - items: - type: string - structs.structs.MsgSubstationPlayerMigrateResponse: - type: object - structs.structs.MsgUpdateParams: - type: object - properties: - authority: - type: string - description: >- - authority is the address that controls the module (defaults to x/gov - unless overwritten). - params: - description: |- - params defines the module parameters to update. - - NOTE: All parameters must be supplied. - type: object - description: MsgUpdateParams is the Msg/UpdateParams request type. - structs.structs.MsgUpdateParamsResponse: - type: object - description: |- - MsgUpdateParamsResponse defines the response structure for executing a - MsgUpdateParams message. +{"id":"structs","consumes":["application/json"],"produces":["application/json"],"swagger":"2.0","info":{"description":"Chain structs REST API","title":"HTTP API Console","contact":{"name":"structs"},"version":"version not set"},"paths":{"/blockheight":{"get":{"tags":["Query"],"operationId":"StructsQuery_GetBlockHeight","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryBlockHeightResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AddressRegister":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AddressRegister","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAddressRegister"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAddressRegisterResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AddressRevoke":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AddressRevoke","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAddressRevoke"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAddressRevokeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AgreementCapacityDecrease":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AgreementCapacityDecrease","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAgreementCapacityDecrease"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AgreementCapacityIncrease":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AgreementCapacityIncrease","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAgreementCapacityIncrease"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AgreementClose":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AgreementClose","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAgreementClose"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AgreementDurationIncrease":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AgreementDurationIncrease","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAgreementDurationIncrease"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AgreementOpen":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AgreementOpen","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAgreementOpen"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AllocationCreate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AllocationCreate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAllocationCreate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAllocationCreateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AllocationDelete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AllocationDelete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAllocationDelete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAllocationDeleteResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AllocationTransfer":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AllocationTransfer","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAllocationTransfer"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAllocationTransferResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/AllocationUpdate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_AllocationUpdate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgAllocationUpdate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgAllocationUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/FleetMove":{"post":{"tags":["Msg"],"operationId":"StructsMsg_FleetMove","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgFleetMove"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgFleetMoveResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildBankConfiscateAndBurn":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildBankConfiscateAndBurn","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildBankConfiscateAndBurn"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildBankConfiscateAndBurnResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildBankMint":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildBankMint","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildBankMint"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildBankMintResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildBankRedeem":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildBankRedeem","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildBankRedeem"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildBankRedeemResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildCreate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildCreate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildCreate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildCreateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipInvite":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipInvite","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipInvite"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipInviteApprove":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipInviteApprove","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipInviteApprove"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipInviteDeny":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipInviteDeny","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipInviteDeny"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipInviteRevoke":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipInviteRevoke","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipInviteRevoke"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipJoin":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipJoin","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipJoin"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipJoinProxy":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipJoinProxy","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipJoinProxy"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipKick":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipKick","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipKick"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipRequest":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipRequest","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipRequestApprove":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipRequestApprove","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipRequestApprove"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipRequestDeny":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipRequestDeny","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipRequestDeny"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildMembershipRequestRevoke":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildMembershipRequestRevoke","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipRequestRevoke"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildMembershipResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildUpdateEndpoint":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildUpdateEndpoint","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateEndpoint"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildUpdateEntrySubstationId":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildUpdateEntrySubstationId","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateEntrySubstationId"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildUpdateJoinInfusionMinimum":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildUpdateJoinInfusionMinimum","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateJoinInfusionMinimum"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildUpdateJoinInfusionMinimumBypassByInvite":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildUpdateJoinInfusionMinimumBypassByInvite","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildUpdateJoinInfusionMinimumBypassByRequest":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildUpdateJoinInfusionMinimumBypassByRequest","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/GuildUpdateOwnerId":{"post":{"tags":["Msg"],"operationId":"StructsMsg_GuildUpdateOwnerId","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateOwnerId"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgGuildUpdateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PermissionGrantOnAddress":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PermissionGrantOnAddress","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPermissionGrantOnAddress"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PermissionGrantOnObject":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PermissionGrantOnObject","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPermissionGrantOnObject"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PermissionRevokeOnAddress":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PermissionRevokeOnAddress","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPermissionRevokeOnAddress"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PermissionRevokeOnObject":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PermissionRevokeOnObject","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPermissionRevokeOnObject"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PermissionSetOnAddress":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PermissionSetOnAddress","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPermissionSetOnAddress"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PermissionSetOnObject":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PermissionSetOnObject","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPermissionSetOnObject"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PlanetExplore":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PlanetExplore","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPlanetExplore"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPlanetExploreResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PlanetRaidComplete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PlanetRaidComplete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPlanetRaidComplete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPlanetRaidCompleteResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PlayerResume":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PlayerResume","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPlayerResume"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPlayerResumeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/PlayerUpdatePrimaryAddress":{"post":{"tags":["Msg"],"operationId":"StructsMsg_PlayerUpdatePrimaryAddress","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgPlayerUpdatePrimaryAddress"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgPlayerUpdatePrimaryAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderCreate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderCreate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderCreate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderDelete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderDelete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderDelete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderGuildGrant":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderGuildGrant","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderGuildGrant"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderGuildRevoke":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderGuildRevoke","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderGuildRevoke"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderUpdateAccessPolicy":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderUpdateAccessPolicy","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderUpdateAccessPolicy"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderUpdateCapacityMaximum":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderUpdateCapacityMaximum","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderUpdateCapacityMaximum"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderUpdateCapacityMinimum":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderUpdateCapacityMinimum","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderUpdateCapacityMinimum"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderUpdateDurationMaximum":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderUpdateDurationMaximum","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderUpdateDurationMaximum"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderUpdateDurationMinimum":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderUpdateDurationMinimum","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderUpdateDurationMinimum"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ProviderWithdrawBalance":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ProviderWithdrawBalance","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgProviderWithdrawBalance"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ReactorBeginMigration":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ReactorBeginMigration","parameters":[{"description":"MsgReactorBeginMigration defines a SDK message for performing a redelegation\nof coins from a delegator and source validator to a destination validator.","name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgReactorBeginMigration"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgReactorBeginMigrationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ReactorCancelDefusion":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ReactorCancelDefusion","parameters":[{"description":"Since: cosmos-sdk 0.46","name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgReactorCancelDefusion"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgReactorCancelDefusionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ReactorDefuse":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ReactorDefuse","parameters":[{"description":"MsgReactorDefuse defines a SDK message for performing an undelegation from a\ndelegate and a validator.","name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgReactorDefuse"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgReactorDefuseResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/ReactorInfuse":{"post":{"tags":["Msg"],"operationId":"StructsMsg_ReactorInfuse","parameters":[{"description":"MsgReactorInfuse defines a SDK message for performing a delegation of coins\nfrom a delegator to a validator.","name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgReactorInfuse"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgReactorInfuseResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructActivate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructActivate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructActivate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructAttack":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructAttack","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructAttack"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructAttackResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructBuildCancel":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructBuildCancel","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructBuildCancel"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructBuildComplete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructBuildComplete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructBuildComplete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructBuildInitiate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructBuildInitiate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructBuildInitiate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructDeactivate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructDeactivate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructDeactivate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructDefenseClear":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructDefenseClear","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructDefenseClear"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructDefenseSet":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructDefenseSet","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructDefenseSet"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructGeneratorInfuse":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructGeneratorInfuse","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructGeneratorInfuse"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructGeneratorStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructMove":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructMove","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructMove"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructOreMinerComplete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructOreMinerComplete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructOreMinerComplete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructOreMinerStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructOreRefineryComplete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructOreRefineryComplete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructOreRefineryComplete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructOreRefineryStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructStealthActivate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructStealthActivate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructStealthActivate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/StructStealthDeactivate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_StructStealthDeactivate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgStructStealthDeactivate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgStructStatusResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationAllocationConnect":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationAllocationConnect","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationAllocationConnect"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationAllocationConnectResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationAllocationDisconnect":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationAllocationDisconnect","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationAllocationDisconnect"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationAllocationDisconnectResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationCreate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationCreate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationCreate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationCreateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationDelete":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationDelete","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationDelete"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationDeleteResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationPlayerConnect":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationPlayerConnect","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationPlayerConnect"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationPlayerConnectResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationPlayerDisconnect":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationPlayerDisconnect","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationPlayerDisconnect"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationPlayerDisconnectResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/SubstationPlayerMigrate":{"post":{"tags":["Msg"],"operationId":"StructsMsg_SubstationPlayerMigrate","parameters":[{"name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgSubstationPlayerMigrate"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgSubstationPlayerMigrateResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs.structs.Msg/UpdateParams":{"post":{"tags":["Msg"],"summary":"UpdateParams defines a (governance) operation for updating the module\nparameters. The authority defaults to the x/gov module account.","operationId":"StructsMsg_UpdateParams","parameters":[{"description":"MsgUpdateParams is the Msg/UpdateParams request type.","name":"body","in":"body","required":true,"schema":{"$ref":"#/definitions/structs.structs.MsgUpdateParams"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.MsgUpdateParamsResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/address":{"get":{"tags":["Query"],"operationId":"StructsQuery_AddressAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/address/{address}":{"get":{"tags":["Query"],"summary":"Queries for Addresses.","operationId":"StructsQuery_Address","parameters":[{"type":"string","name":"address","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/address_by_player/{playerId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_AddressAllByPlayer","parameters":[{"type":"string","name":"playerId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/agreement":{"get":{"tags":["Query"],"operationId":"StructsQuery_AgreementAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/agreement/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Agreement items.","operationId":"StructsQuery_Agreement","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/agreement_by_provider/{providerId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_AgreementAllByProvider","parameters":[{"type":"string","name":"providerId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAgreementResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/allocation":{"get":{"tags":["Query"],"operationId":"StructsQuery_AllocationAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAllocationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/allocation/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Allocation items.","operationId":"StructsQuery_Allocation","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetAllocationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/allocation_by_destination/{destinationId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_AllocationAllByDestination","parameters":[{"type":"string","name":"destinationId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAllocationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/allocation_by_source/{sourceId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_AllocationAllBySource","parameters":[{"type":"string","name":"sourceId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllAllocationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/fleet":{"get":{"tags":["Query"],"operationId":"StructsQuery_FleetAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllFleetResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/fleet/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Fleet items.","operationId":"StructsQuery_Fleet","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetFleetResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/fleet_by_index/{index}":{"get":{"tags":["Query"],"operationId":"StructsQuery_FleetByIndex","parameters":[{"type":"string","format":"uint64","name":"index","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetFleetResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/grid":{"get":{"tags":["Query"],"summary":"Queries a list of all Grid details","operationId":"StructsQuery_GridAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllGridResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/grid/{attributeId}":{"get":{"tags":["Query"],"summary":"Queries a specific Grid details","operationId":"StructsQuery_Grid","parameters":[{"type":"string","name":"attributeId","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetGridResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/guild":{"get":{"tags":["Query"],"operationId":"StructsQuery_GuildAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllGuildResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/guild/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Guild items.","operationId":"StructsQuery_Guild","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetGuildResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/guild_bank_collateral_address":{"get":{"tags":["Query"],"operationId":"StructsQuery_GuildBankCollateralAddressAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllGuildBankCollateralAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/guild_bank_collateral_address/{guildId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_GuildBankCollateralAddress","parameters":[{"type":"string","name":"guildId","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllGuildBankCollateralAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/guild_membership_application":{"get":{"tags":["Query"],"operationId":"StructsQuery_GuildMembershipApplicationAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllGuildMembershipApplicationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/guild_membership_application/{guildId}/{playerId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_GuildMembershipApplication","parameters":[{"type":"string","name":"guildId","in":"path","required":true},{"type":"string","name":"playerId","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetGuildMembershipApplicationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/infusion":{"get":{"tags":["Query"],"operationId":"StructsQuery_InfusionAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllInfusionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/infusion/{destinationId}/{address}":{"get":{"tags":["Query"],"summary":"Queries a list of Infusions.","operationId":"StructsQuery_Infusion","parameters":[{"type":"string","name":"destinationId","in":"path","required":true},{"type":"string","name":"address","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetInfusionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/infusion_by_destination/{destinationId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_InfusionAllByDestination","parameters":[{"type":"string","name":"destinationId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllInfusionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/permission":{"get":{"tags":["Query"],"summary":"Queries a list of all Permissions","operationId":"StructsQuery_PermissionAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/permission/object/{objectId}":{"get":{"tags":["Query"],"summary":"Queries a list of Permissions based on Object","operationId":"StructsQuery_PermissionByObject","parameters":[{"type":"string","name":"objectId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/permission/player/{playerId}":{"get":{"tags":["Query"],"summary":"Queries a list of Permissions based on the Player with the permissions","operationId":"StructsQuery_PermissionByPlayer","parameters":[{"type":"string","name":"playerId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/permission/{permissionId}":{"get":{"tags":["Query"],"summary":"Queries a specific Permission","operationId":"StructsQuery_Permission","parameters":[{"type":"string","name":"permissionId","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetPermissionResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/planet":{"get":{"tags":["Query"],"operationId":"StructsQuery_PlanetAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPlanetResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/planet/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Planet items.","operationId":"StructsQuery_Planet","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetPlanetResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/planet_attribute":{"get":{"tags":["Query"],"summary":"Queries a list of all Planet Attributes","operationId":"StructsQuery_PlanetAttributeAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPlanetAttributeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/planet_attribute/{planetId}/{attributeType}":{"get":{"tags":["Query"],"operationId":"StructsQuery_PlanetAttribute","parameters":[{"type":"string","name":"planetId","in":"path","required":true},{"type":"string","name":"attributeType","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetPlanetAttributeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/planet_by_player/{playerId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_PlanetAllByPlayer","parameters":[{"type":"string","name":"playerId","in":"path","required":true},{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPlanetResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/player":{"get":{"tags":["Query"],"operationId":"StructsQuery_PlayerAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPlayerResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/player/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Player items.","operationId":"StructsQuery_Player","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetPlayerResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/player_halted":{"get":{"tags":["Query"],"operationId":"StructsQuery_PlayerHaltedAll","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllPlayerHaltedResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/provider":{"get":{"tags":["Query"],"operationId":"StructsQuery_ProviderAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/provider/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Allocation items.","operationId":"StructsQuery_Provider","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetProviderResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/provider_collateral_address":{"get":{"tags":["Query"],"operationId":"StructsQuery_ProviderCollateralAddressAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllProviderCollateralAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/provider_collateral_address/{providerId}":{"get":{"tags":["Query"],"operationId":"StructsQuery_ProviderCollateralAddress","parameters":[{"type":"string","name":"providerId","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllProviderCollateralAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/provider_earnings_address":{"get":{"tags":["Query"],"operationId":"StructsQuery_ProviderEarningsAddressAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllProviderEarningsAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/provider_earnings_address/{providerId}":{"get":{"tags":["Query"],"summary":"TODO Requires a lookup table that I don't know if we care about\nrpc ProviderByCollateralAddress (QueryGetProviderByCollateralAddressRequest) returns (QueryGetProviderResponse) {\noption (google.api.http).get = \"/structs/provider_by_collateral_address/{address}\";\n}","operationId":"StructsQuery_ProviderEarningsAddress","parameters":[{"type":"string","name":"providerId","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllProviderEarningsAddressResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/reactor":{"get":{"tags":["Query"],"operationId":"StructsQuery_ReactorAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllReactorResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/reactor/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Reactor items.","operationId":"StructsQuery_Reactor","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetReactorResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/struct":{"get":{"tags":["Query"],"operationId":"StructsQuery_StructAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllStructResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/struct/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Structs items.","operationId":"StructsQuery_Struct","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetStructResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/struct_attribute":{"get":{"tags":["Query"],"summary":"Queries a list of all Struct Attributes","operationId":"StructsQuery_StructAttributeAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllStructAttributeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/struct_attribute/{structId}/{attributeType}":{"get":{"tags":["Query"],"operationId":"StructsQuery_StructAttribute","parameters":[{"type":"string","name":"structId","in":"path","required":true},{"type":"string","name":"attributeType","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetStructAttributeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/struct_type":{"get":{"tags":["Query"],"operationId":"StructsQuery_StructTypeAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllStructTypeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/struct_type/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Struct Types items.","operationId":"StructsQuery_StructType","parameters":[{"type":"string","format":"uint64","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetStructTypeResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/structs/params":{"get":{"tags":["Query"],"summary":"Parameters queries the parameters of the module.","operationId":"StructsQuery_Params","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryParamsResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/substation":{"get":{"tags":["Query"],"operationId":"StructsQuery_SubstationAll","parameters":[{"type":"string","format":"byte","description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","name":"pagination.key","in":"query"},{"type":"string","format":"uint64","description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","name":"pagination.offset","in":"query"},{"type":"string","format":"uint64","description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","name":"pagination.limit","in":"query"},{"type":"boolean","description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","name":"pagination.count_total","in":"query"},{"type":"boolean","description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","name":"pagination.reverse","in":"query"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryAllSubstationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/substation/{id}":{"get":{"tags":["Query"],"summary":"Queries a list of Substation items.","operationId":"StructsQuery_Substation","parameters":[{"type":"string","name":"id","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryGetSubstationResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}},"/structs/validate_signature/{address}/{proofPubKey}/{proofSignature}/{message}":{"get":{"tags":["Query"],"operationId":"StructsQuery_ValidateSignature","parameters":[{"type":"string","name":"address","in":"path","required":true},{"type":"string","name":"proofPubKey","in":"path","required":true},{"type":"string","name":"proofSignature","in":"path","required":true},{"type":"string","name":"message","in":"path","required":true}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/structs.structs.QueryValidateSignatureResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/google.rpc.Status"}}}}}},"definitions":{"cosmos.base.query.v1beta1.PageRequest":{"description":"message SomeRequest {\n Foo some_parameter = 1;\n PageRequest pagination = 2;\n }","type":"object","title":"PageRequest is to be embedded in gRPC request messages for efficient\npagination. Ex:","properties":{"count_total":{"description":"count_total is set to true to indicate that the result set should include\na count of the total number of items available for pagination in UIs.\ncount_total is only respected when offset is used. It is ignored when key\nis set.","type":"boolean"},"key":{"description":"key is a value returned in PageResponse.next_key to begin\nquerying the next page most efficiently. Only one of offset or key\nshould be set.","type":"string","format":"byte"},"limit":{"description":"limit is the total number of results to be returned in the result page.\nIf left empty it will default to a value to be set by each app.","type":"string","format":"uint64"},"offset":{"description":"offset is a numeric offset that can be used when key is unavailable.\nIt is less efficient than using key. Only one of offset or key should\nbe set.","type":"string","format":"uint64"},"reverse":{"description":"reverse is set to true if results are to be returned in the descending order.\n\nSince: cosmos-sdk 0.43","type":"boolean"}}},"cosmos.base.query.v1beta1.PageResponse":{"description":"PageResponse is to be embedded in gRPC response messages where the\ncorresponding request message has used PageRequest.\n\n message SomeResponse {\n repeated Bar results = 1;\n PageResponse page = 2;\n }","type":"object","properties":{"next_key":{"description":"next_key is the key to be passed to PageRequest.key to\nquery the next page most efficiently. It will be empty if\nthere are no more results.","type":"string","format":"byte"},"total":{"type":"string","format":"uint64","title":"total is total number of results available if PageRequest.count_total\nwas set, its value is undefined otherwise"}}},"cosmos.base.v1beta1.Coin":{"description":"Coin defines a token with a denomination and an amount.\n\nNOTE: The amount field is an Int which implements the custom method\nsignatures required by gogoproto.","type":"object","properties":{"amount":{"type":"string"},"denom":{"type":"string"}}},"google.protobuf.Any":{"type":"object","properties":{"@type":{"type":"string"}},"additionalProperties":{}},"google.rpc.Status":{"type":"object","properties":{"code":{"type":"integer","format":"int32"},"details":{"type":"array","items":{"type":"object","$ref":"#/definitions/google.protobuf.Any"}},"message":{"type":"string"}}},"structs.structs.Agreement":{"type":"object","properties":{"allocationId":{"type":"string"},"capacity":{"type":"string","format":"uint64"},"creator":{"type":"string"},"endBlock":{"type":"string","format":"uint64"},"id":{"type":"string"},"owner":{"type":"string"},"providerId":{"type":"string"},"startBlock":{"type":"string","format":"uint64"}}},"structs.structs.Allocation":{"type":"object","properties":{"controller":{"type":"string"},"creator":{"type":"string","title":"Who does this currently belong to"},"destinationId":{"type":"string"},"id":{"type":"string"},"index":{"type":"string","format":"uint64"},"locked":{"type":"boolean","title":"Locking will be needed for IBC"},"sourceObjectId":{"type":"string","title":"Core allocation details"},"type":{"$ref":"#/definitions/structs.structs.allocationType"}}},"structs.structs.Fleet":{"type":"object","properties":{"air":{"type":"array","items":{"type":"string"}},"airSlots":{"type":"string","format":"uint64"},"commandStruct":{"type":"string"},"id":{"type":"string"},"land":{"type":"array","items":{"type":"string"}},"landSlots":{"type":"string","format":"uint64"},"locationId":{"type":"string"},"locationListBackward":{"type":"string","title":"Towards End of List"},"locationListForward":{"type":"string","title":"Towards Planet"},"locationType":{"$ref":"#/definitions/structs.structs.objectType"},"owner":{"type":"string"},"space":{"type":"array","items":{"type":"string"}},"spaceSlots":{"type":"string","format":"uint64"},"status":{"$ref":"#/definitions/structs.structs.fleetStatus"},"water":{"type":"array","items":{"type":"string"}},"waterSlots":{"type":"string","format":"uint64"}}},"structs.structs.GridAttributes":{"type":"object","properties":{"allocationPointerEnd":{"type":"string","format":"uint64"},"allocationPointerStart":{"type":"string","format":"uint64"},"capacity":{"type":"string","format":"uint64"},"checkpointBlock":{"type":"string","format":"uint64"},"connectionCapacity":{"type":"string","format":"uint64"},"connectionCount":{"type":"string","format":"uint64"},"fuel":{"type":"string","format":"uint64"},"lastAction":{"type":"string","format":"uint64"},"load":{"type":"string","format":"uint64"},"nonce":{"type":"string","format":"uint64"},"ore":{"type":"string","format":"uint64"},"power":{"type":"string","format":"uint64"},"proxyNonce":{"type":"string","format":"uint64"},"ready":{"type":"string","format":"uint64"},"structsLoad":{"type":"string","format":"uint64"}}},"structs.structs.GridRecord":{"type":"object","properties":{"attributeId":{"type":"string"},"value":{"type":"string","format":"uint64"}}},"structs.structs.Guild":{"type":"object","properties":{"creator":{"type":"string"},"endpoint":{"type":"string"},"entrySubstationId":{"type":"string"},"id":{"type":"string"},"index":{"type":"string","format":"uint64"},"joinInfusionMinimum":{"type":"string","format":"uint64"},"joinInfusionMinimumBypassByInvite":{"$ref":"#/definitions/structs.structs.guildJoinBypassLevel"},"joinInfusionMinimumBypassByRequest":{"$ref":"#/definitions/structs.structs.guildJoinBypassLevel"},"owner":{"type":"string"},"primaryReactorId":{"type":"string"}}},"structs.structs.GuildMembershipApplication":{"type":"object","properties":{"guildId":{"type":"string"},"joinType":{"title":"Invite | Request","$ref":"#/definitions/structs.structs.guildJoinType"},"playerId":{"type":"string"},"proposer":{"type":"string"},"registrationStatus":{"$ref":"#/definitions/structs.structs.registrationStatus"},"substationId":{"type":"string"}}},"structs.structs.Infusion":{"type":"object","properties":{"address":{"type":"string"},"commission":{"type":"string"},"defusing":{"type":"string"},"destinationId":{"type":"string"},"destinationType":{"$ref":"#/definitions/structs.structs.objectType"},"fuel":{"type":"string","format":"uint64"},"playerId":{"type":"string"},"power":{"type":"string","format":"uint64"},"ratio":{"type":"string","format":"uint64"}}},"structs.structs.InternalAddressAssociation":{"type":"object","properties":{"address":{"type":"string"},"objectId":{"type":"string"}}},"structs.structs.MsgAddressRegister":{"type":"object","properties":{"address":{"type":"string"},"creator":{"type":"string"},"permissions":{"type":"string","format":"uint64"},"playerId":{"type":"string"},"proofPubKey":{"type":"string"},"proofSignature":{"type":"string"}}},"structs.structs.MsgAddressRegisterResponse":{"type":"object"},"structs.structs.MsgAddressRevoke":{"type":"object","properties":{"address":{"type":"string"},"creator":{"type":"string"}}},"structs.structs.MsgAddressRevokeResponse":{"type":"object"},"structs.structs.MsgAgreementCapacityDecrease":{"type":"object","properties":{"agreementId":{"type":"string"},"capacityDecrease":{"type":"string","format":"uint64"},"creator":{"type":"string"}}},"structs.structs.MsgAgreementCapacityIncrease":{"type":"object","properties":{"agreementId":{"type":"string"},"capacityIncrease":{"type":"string","format":"uint64"},"creator":{"type":"string"}}},"structs.structs.MsgAgreementClose":{"type":"object","properties":{"agreementId":{"type":"string"},"creator":{"type":"string"}}},"structs.structs.MsgAgreementDurationIncrease":{"type":"object","properties":{"agreementId":{"type":"string"},"creator":{"type":"string"},"durationIncrease":{"type":"string","format":"uint64"}}},"structs.structs.MsgAgreementOpen":{"type":"object","properties":{"capacity":{"type":"string","format":"uint64"},"creator":{"type":"string"},"duration":{"type":"string","format":"uint64"},"providerId":{"type":"string"}}},"structs.structs.MsgAgreementResponse":{"type":"object"},"structs.structs.MsgAllocationCreate":{"type":"object","properties":{"allocationType":{"$ref":"#/definitions/structs.structs.allocationType"},"controller":{"type":"string"},"creator":{"type":"string"},"power":{"type":"string","format":"uint64"},"sourceObjectId":{"type":"string"}}},"structs.structs.MsgAllocationCreateResponse":{"type":"object","properties":{"allocationId":{"type":"string"}}},"structs.structs.MsgAllocationDelete":{"type":"object","properties":{"allocationId":{"type":"string"},"creator":{"type":"string"}}},"structs.structs.MsgAllocationDeleteResponse":{"type":"object","properties":{"allocationId":{"type":"string"}}},"structs.structs.MsgAllocationTransfer":{"type":"object","properties":{"allocationId":{"type":"string"},"controller":{"type":"string"},"creator":{"type":"string"}}},"structs.structs.MsgAllocationTransferResponse":{"type":"object","properties":{"allocationId":{"type":"string"}}},"structs.structs.MsgAllocationUpdate":{"type":"object","properties":{"allocationId":{"type":"string"},"creator":{"type":"string"},"power":{"type":"string","format":"uint64"}}},"structs.structs.MsgAllocationUpdateResponse":{"type":"object","properties":{"allocationId":{"type":"string"}}},"structs.structs.MsgFleetMove":{"type":"object","properties":{"creator":{"type":"string"},"destinationLocationId":{"type":"string"},"fleetId":{"type":"string"}}},"structs.structs.MsgFleetMoveResponse":{"type":"object","properties":{"fleet":{"$ref":"#/definitions/structs.structs.Fleet"}}},"structs.structs.MsgGuildBankConfiscateAndBurn":{"type":"object","properties":{"address":{"type":"string"},"amountToken":{"type":"string","format":"uint64"},"creator":{"type":"string"}}},"structs.structs.MsgGuildBankConfiscateAndBurnResponse":{"type":"object"},"structs.structs.MsgGuildBankMint":{"type":"object","properties":{"amountAlpha":{"type":"string","format":"uint64"},"amountToken":{"type":"string","format":"uint64"},"creator":{"type":"string"}}},"structs.structs.MsgGuildBankMintResponse":{"type":"object"},"structs.structs.MsgGuildBankRedeem":{"type":"object","properties":{"amountToken":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"creator":{"type":"string"}}},"structs.structs.MsgGuildBankRedeemResponse":{"type":"object"},"structs.structs.MsgGuildCreate":{"type":"object","properties":{"creator":{"type":"string"},"endpoint":{"type":"string"},"entrySubstationId":{"type":"string"}}},"structs.structs.MsgGuildCreateResponse":{"type":"object","properties":{"guildId":{"type":"string"}}},"structs.structs.MsgGuildMembershipInvite":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgGuildMembershipInviteApprove":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgGuildMembershipInviteDeny":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgGuildMembershipInviteRevoke":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgGuildMembershipJoin":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"infusionId":{"type":"array","items":{"type":"string"}},"playerId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgGuildMembershipJoinProxy":{"type":"object","properties":{"address":{"type":"string"},"creator":{"type":"string"},"proofPubKey":{"type":"string"},"proofSignature":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgGuildMembershipKick":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgGuildMembershipRequest":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgGuildMembershipRequestApprove":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgGuildMembershipRequestDeny":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgGuildMembershipRequestRevoke":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgGuildMembershipResponse":{"type":"object","properties":{"guildMembershipApplication":{"$ref":"#/definitions/structs.structs.GuildMembershipApplication"}}},"structs.structs.MsgGuildUpdateEndpoint":{"type":"object","properties":{"creator":{"type":"string"},"endpoint":{"type":"string"},"guildId":{"type":"string"}}},"structs.structs.MsgGuildUpdateEntrySubstationId":{"type":"object","properties":{"creator":{"type":"string"},"entrySubstationId":{"type":"string"},"guildId":{"type":"string"}}},"structs.structs.MsgGuildUpdateJoinInfusionMinimum":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"joinInfusionMinimum":{"type":"string","format":"uint64"}}},"structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByInvite":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"guildJoinBypassLevel":{"$ref":"#/definitions/structs.structs.guildJoinBypassLevel"}}},"structs.structs.MsgGuildUpdateJoinInfusionMinimumBypassByRequest":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"guildJoinBypassLevel":{"$ref":"#/definitions/structs.structs.guildJoinBypassLevel"}}},"structs.structs.MsgGuildUpdateOwnerId":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"string"},"owner":{"type":"string"}}},"structs.structs.MsgGuildUpdateResponse":{"type":"object"},"structs.structs.MsgPermissionGrantOnAddress":{"type":"object","properties":{"address":{"type":"string"},"creator":{"type":"string"},"permissions":{"type":"string","format":"uint64"}}},"structs.structs.MsgPermissionGrantOnObject":{"type":"object","properties":{"creator":{"type":"string"},"objectId":{"type":"string"},"permissions":{"type":"string","format":"uint64"},"playerId":{"type":"string"}}},"structs.structs.MsgPermissionResponse":{"type":"object"},"structs.structs.MsgPermissionRevokeOnAddress":{"type":"object","properties":{"address":{"type":"string"},"creator":{"type":"string"},"permissions":{"type":"string","format":"uint64"}}},"structs.structs.MsgPermissionRevokeOnObject":{"type":"object","properties":{"creator":{"type":"string"},"objectId":{"type":"string"},"permissions":{"type":"string","format":"uint64"},"playerId":{"type":"string"}}},"structs.structs.MsgPermissionSetOnAddress":{"type":"object","properties":{"address":{"type":"string"},"creator":{"type":"string"},"permissions":{"type":"string","format":"uint64"}}},"structs.structs.MsgPermissionSetOnObject":{"type":"object","properties":{"creator":{"type":"string"},"objectId":{"type":"string"},"permissions":{"type":"string","format":"uint64"},"playerId":{"type":"string"}}},"structs.structs.MsgPlanetExplore":{"type":"object","properties":{"creator":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgPlanetExploreResponse":{"type":"object","properties":{"planet":{"$ref":"#/definitions/structs.structs.Planet"}}},"structs.structs.MsgPlanetRaidComplete":{"type":"object","properties":{"creator":{"type":"string"},"fleetId":{"type":"string"},"nonce":{"type":"string"},"proof":{"type":"string"}}},"structs.structs.MsgPlanetRaidCompleteResponse":{"type":"object","properties":{"fleet":{"$ref":"#/definitions/structs.structs.Fleet"},"oreStolen":{"type":"string","format":"uint64"},"planet":{"$ref":"#/definitions/structs.structs.Planet"}}},"structs.structs.MsgPlayerResume":{"type":"object","properties":{"creator":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgPlayerResumeResponse":{"type":"object"},"structs.structs.MsgPlayerUpdatePrimaryAddress":{"type":"object","properties":{"creator":{"type":"string"},"playerId":{"type":"string"},"primaryAddress":{"type":"string"}}},"structs.structs.MsgPlayerUpdatePrimaryAddressResponse":{"type":"object"},"structs.structs.MsgProviderCreate":{"type":"object","properties":{"accessPolicy":{"$ref":"#/definitions/structs.structs.providerAccessPolicy"},"capacityMaximum":{"type":"string","format":"uint64"},"capacityMinimum":{"type":"string","format":"uint64"},"consumerCancellationPenalty":{"type":"string"},"creator":{"type":"string"},"durationMaximum":{"type":"string","format":"uint64"},"durationMinimum":{"type":"string","format":"uint64"},"providerCancellationPenalty":{"type":"string"},"rate":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"substationId":{"type":"string"}}},"structs.structs.MsgProviderDelete":{"type":"object","properties":{"creator":{"type":"string"},"providerId":{"type":"string"}}},"structs.structs.MsgProviderGuildGrant":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"array","items":{"type":"string"}},"providerId":{"type":"string"}}},"structs.structs.MsgProviderGuildRevoke":{"type":"object","properties":{"creator":{"type":"string"},"guildId":{"type":"array","items":{"type":"string"}},"providerId":{"type":"string"}}},"structs.structs.MsgProviderResponse":{"type":"object"},"structs.structs.MsgProviderUpdateAccessPolicy":{"type":"object","properties":{"accessPolicy":{"$ref":"#/definitions/structs.structs.providerAccessPolicy"},"creator":{"type":"string"},"providerId":{"type":"string"}}},"structs.structs.MsgProviderUpdateCapacityMaximum":{"type":"object","properties":{"creator":{"type":"string"},"newMaximumCapacity":{"type":"string","format":"uint64"},"providerId":{"type":"string"}}},"structs.structs.MsgProviderUpdateCapacityMinimum":{"type":"object","properties":{"creator":{"type":"string"},"newMinimumCapacity":{"type":"string","format":"uint64"},"providerId":{"type":"string"}}},"structs.structs.MsgProviderUpdateDurationMaximum":{"type":"object","properties":{"creator":{"type":"string"},"newMaximumDuration":{"type":"string","format":"uint64"},"providerId":{"type":"string"}}},"structs.structs.MsgProviderUpdateDurationMinimum":{"type":"object","properties":{"creator":{"type":"string"},"newMinimumDuration":{"type":"string","format":"uint64"},"providerId":{"type":"string"}}},"structs.structs.MsgProviderWithdrawBalance":{"type":"object","properties":{"creator":{"type":"string"},"destinationAddress":{"type":"string"},"providerId":{"type":"string"}}},"structs.structs.MsgReactorBeginMigration":{"description":"MsgReactorBeginMigration defines a SDK message for performing a redelegation\nof coins from a delegator and source validator to a destination validator.","type":"object","properties":{"amount":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"creator":{"type":"string"},"delegator_address":{"type":"string"},"validator_dst_address":{"type":"string"},"validator_src_address":{"type":"string"}}},"structs.structs.MsgReactorBeginMigrationResponse":{"description":"MsgBeginMigrationResponse defines the Msg/BeginRedelegate response type.","type":"object","properties":{"completion_time":{"type":"string","format":"date-time"}}},"structs.structs.MsgReactorCancelDefusion":{"description":"Since: cosmos-sdk 0.46","type":"object","title":"MsgReactorCancelDefusion defines the SDK message for performing a cancel unbonding delegation for delegator","properties":{"amount":{"title":"amount is always less than or equal to unbonding delegation entry balance","$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"creation_height":{"description":"creation_height is the height which the unbonding took place.","type":"string","format":"int64"},"creator":{"type":"string"},"delegator_address":{"type":"string"},"validator_address":{"type":"string"}}},"structs.structs.MsgReactorCancelDefusionResponse":{"description":"Since: cosmos-sdk 0.46","type":"object","title":"MsgReactorCancelDefusionResponse"},"structs.structs.MsgReactorDefuse":{"description":"MsgReactorDefuse defines a SDK message for performing an undelegation from a\ndelegate and a validator.","type":"object","properties":{"amount":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"creator":{"type":"string"},"delegator_address":{"type":"string"},"validator_address":{"type":"string"}}},"structs.structs.MsgReactorDefuseResponse":{"description":"MsgReactorDefuseResponse defines the Msg/Undelegate response type.","type":"object","properties":{"amount":{"description":"Since: cosmos-sdk 0.50","title":"amount returns the amount of undelegated coins","$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"completion_time":{"type":"string","format":"date-time"}}},"structs.structs.MsgReactorInfuse":{"description":"MsgReactorInfuse defines a SDK message for performing a delegation of coins\nfrom a delegator to a validator.","type":"object","properties":{"amount":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"creator":{"type":"string"},"delegator_address":{"type":"string"},"validator_address":{"type":"string"}}},"structs.structs.MsgReactorInfuseResponse":{"description":"MsgReactorInfuseResponse defines the Msg/Delegate response type.","type":"object"},"structs.structs.MsgStructActivate":{"type":"object","properties":{"creator":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructAttack":{"type":"object","properties":{"creator":{"type":"string"},"operatingStructId":{"type":"string"},"targetStructId":{"type":"array","items":{"type":"string"}},"weaponSystem":{"type":"string"}}},"structs.structs.MsgStructAttackResponse":{"type":"object"},"structs.structs.MsgStructBuildCancel":{"type":"object","properties":{"creator":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructBuildComplete":{"type":"object","properties":{"creator":{"type":"string"},"nonce":{"type":"string"},"proof":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructBuildInitiate":{"type":"object","properties":{"creator":{"type":"string"},"operatingAmbit":{"title":"objectType locationType = 4;","$ref":"#/definitions/structs.structs.ambit"},"playerId":{"type":"string"},"slot":{"type":"string","format":"uint64"},"structTypeId":{"type":"string","format":"uint64"}}},"structs.structs.MsgStructDeactivate":{"type":"object","properties":{"creator":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructDefenseClear":{"type":"object","properties":{"creator":{"type":"string"},"defenderStructId":{"type":"string"}}},"structs.structs.MsgStructDefenseSet":{"type":"object","properties":{"creator":{"type":"string"},"defenderStructId":{"type":"string"},"protectedStructId":{"type":"string"}}},"structs.structs.MsgStructGeneratorInfuse":{"type":"object","properties":{"creator":{"type":"string"},"infuseAmount":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructGeneratorStatusResponse":{"type":"object"},"structs.structs.MsgStructMove":{"type":"object","properties":{"ambit":{"$ref":"#/definitions/structs.structs.ambit"},"creator":{"type":"string"},"locationType":{"$ref":"#/definitions/structs.structs.objectType"},"slot":{"type":"string","format":"uint64"},"structId":{"type":"string"}}},"structs.structs.MsgStructOreMinerComplete":{"type":"object","properties":{"creator":{"type":"string"},"nonce":{"type":"string"},"proof":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructOreMinerStatusResponse":{"type":"object","properties":{"struct":{"$ref":"#/definitions/structs.structs.Struct"}}},"structs.structs.MsgStructOreRefineryComplete":{"type":"object","properties":{"creator":{"type":"string"},"nonce":{"type":"string"},"proof":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructOreRefineryStatusResponse":{"type":"object","properties":{"struct":{"$ref":"#/definitions/structs.structs.Struct"}}},"structs.structs.MsgStructStatusResponse":{"type":"object","properties":{"struct":{"$ref":"#/definitions/structs.structs.Struct"}}},"structs.structs.MsgStructStealthActivate":{"type":"object","properties":{"creator":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgStructStealthDeactivate":{"type":"object","properties":{"creator":{"type":"string"},"structId":{"type":"string"}}},"structs.structs.MsgSubstationAllocationConnect":{"type":"object","properties":{"allocationId":{"type":"string"},"creator":{"type":"string"},"destinationId":{"type":"string"}}},"structs.structs.MsgSubstationAllocationConnectResponse":{"type":"object"},"structs.structs.MsgSubstationAllocationDisconnect":{"type":"object","properties":{"allocationId":{"type":"string"},"creator":{"type":"string"}}},"structs.structs.MsgSubstationAllocationDisconnectResponse":{"type":"object"},"structs.structs.MsgSubstationCreate":{"type":"object","properties":{"allocationId":{"type":"string"},"creator":{"type":"string"},"owner":{"type":"string"}}},"structs.structs.MsgSubstationCreateResponse":{"type":"object","properties":{"substationId":{"type":"string"}}},"structs.structs.MsgSubstationDelete":{"type":"object","properties":{"creator":{"type":"string"},"migrationSubstationId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgSubstationDeleteResponse":{"type":"object"},"structs.structs.MsgSubstationPlayerConnect":{"type":"object","properties":{"creator":{"type":"string"},"playerId":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.MsgSubstationPlayerConnectResponse":{"type":"object"},"structs.structs.MsgSubstationPlayerDisconnect":{"type":"object","properties":{"creator":{"type":"string"},"playerId":{"type":"string"}}},"structs.structs.MsgSubstationPlayerDisconnectResponse":{"type":"object"},"structs.structs.MsgSubstationPlayerMigrate":{"type":"object","properties":{"creator":{"type":"string"},"playerId":{"type":"array","items":{"type":"string"}},"substationId":{"type":"string"}}},"structs.structs.MsgSubstationPlayerMigrateResponse":{"type":"object"},"structs.structs.MsgUpdateParams":{"description":"MsgUpdateParams is the Msg/UpdateParams request type.","type":"object","properties":{"authority":{"description":"authority is the address that controls the module (defaults to x/gov unless overwritten).","type":"string"},"params":{"description":"params defines the module parameters to update.\n\nNOTE: All parameters must be supplied.","$ref":"#/definitions/structs.structs.Params"}}},"structs.structs.MsgUpdateParamsResponse":{"description":"MsgUpdateParamsResponse defines the response structure for executing a\nMsgUpdateParams message.","type":"object"},"structs.structs.Params":{"description":"Params defines the parameters for the module.","type":"object"},"structs.structs.PermissionRecord":{"type":"object","properties":{"permissionId":{"type":"string"},"value":{"type":"string","format":"uint64"}}},"structs.structs.Planet":{"type":"object","properties":{"air":{"type":"array","items":{"type":"string"}},"airSlots":{"type":"string","format":"uint64"},"creator":{"type":"string"},"id":{"type":"string"},"land":{"type":"array","items":{"type":"string"}},"landSlots":{"type":"string","format":"uint64"},"locationListLast":{"type":"string","title":"End of the line"},"locationListStart":{"type":"string","title":"First in line to battle planet"},"maxOre":{"type":"string","format":"uint64"},"owner":{"type":"string"},"space":{"type":"array","items":{"type":"string"}},"spaceSlots":{"type":"string","format":"uint64"},"status":{"$ref":"#/definitions/structs.structs.planetStatus"},"water":{"type":"array","items":{"type":"string"}},"waterSlots":{"type":"string","format":"uint64"}}},"structs.structs.PlanetAttributeRecord":{"type":"object","properties":{"attributeId":{"type":"string"},"value":{"type":"string","format":"uint64"}}},"structs.structs.PlanetAttributes":{"type":"object","properties":{"advancedLowOrbitBallisticsInterceptorNetworkQuantity":{"type":"string","format":"uint64"},"advancedOrbitalJammingStationQuantity":{"type":"string","format":"uint64"},"blockStartRaid":{"type":"string","format":"uint64"},"coordinatedGlobalShieldNetworkQuantity":{"type":"string","format":"uint64"},"defensiveCannonQuantity":{"type":"string","format":"uint64"},"lowOrbitBallisticsInterceptorNetworkQuantity":{"type":"string","format":"uint64"},"lowOrbitBallisticsInterceptorNetworkSuccessRateDenominator":{"type":"string","format":"uint64"},"lowOrbitBallisticsInterceptorNetworkSuccessRateNumerator":{"type":"string","format":"uint64"},"orbitalJammingStationQuantity":{"type":"string","format":"uint64"},"planetaryShield":{"type":"string","format":"uint64"},"repairNetworkQuantity":{"type":"string","format":"uint64"}}},"structs.structs.Player":{"type":"object","properties":{"creator":{"type":"string"},"fleetId":{"type":"string"},"guildId":{"type":"string"},"id":{"type":"string"},"index":{"type":"string","format":"uint64"},"planetId":{"type":"string"},"primaryAddress":{"type":"string"},"substationId":{"type":"string"}}},"structs.structs.PlayerInventory":{"type":"object","properties":{"rocks":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"}}},"structs.structs.Provider":{"type":"object","properties":{"accessPolicy":{"$ref":"#/definitions/structs.structs.providerAccessPolicy"},"capacityMaximum":{"type":"string","format":"uint64"},"capacityMinimum":{"type":"string","format":"uint64"},"consumerCancellationPenalty":{"type":"string"},"creator":{"type":"string"},"durationMaximum":{"type":"string","format":"uint64"},"durationMinimum":{"type":"string","format":"uint64"},"id":{"type":"string"},"index":{"type":"string","format":"uint64"},"owner":{"type":"string"},"providerCancellationPenalty":{"type":"string"},"rate":{"$ref":"#/definitions/cosmos.base.v1beta1.Coin"},"substationId":{"type":"string"}}},"structs.structs.QueryAddressResponse":{"type":"object","properties":{"address":{"type":"string"},"permissions":{"type":"string","format":"uint64"},"playerId":{"type":"string"}}},"structs.structs.QueryAllAddressResponse":{"type":"object","properties":{"address":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.QueryAddressResponse"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllAgreementResponse":{"type":"object","properties":{"Agreement":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Agreement"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllAllocationResponse":{"type":"object","properties":{"Allocation":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Allocation"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"},"status":{"type":"array","items":{"type":"string","format":"uint64"}}}},"structs.structs.QueryAllFleetResponse":{"type":"object","properties":{"Fleet":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Fleet"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllGridResponse":{"type":"object","properties":{"gridRecords":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.GridRecord"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllGuildBankCollateralAddressResponse":{"type":"object","properties":{"internalAddressAssociation":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.InternalAddressAssociation"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllGuildMembershipApplicationResponse":{"type":"object","properties":{"GuildMembershipApplication":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.GuildMembershipApplication"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllGuildResponse":{"type":"object","properties":{"Guild":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Guild"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllInfusionResponse":{"type":"object","properties":{"Infusion":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Infusion"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"},"status":{"type":"array","items":{"type":"string","format":"uint64"}}}},"structs.structs.QueryAllPermissionResponse":{"type":"object","properties":{"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"},"permissionRecords":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.PermissionRecord"}}}},"structs.structs.QueryAllPlanetAttributeResponse":{"type":"object","properties":{"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"},"planetAttributeRecords":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.PlanetAttributeRecord"}}}},"structs.structs.QueryAllPlanetResponse":{"type":"object","properties":{"Planet":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Planet"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllPlayerHaltedResponse":{"type":"object","properties":{"PlayerId":{"type":"array","items":{"type":"string"}}}},"structs.structs.QueryAllPlayerResponse":{"type":"object","properties":{"Player":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Player"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllProviderCollateralAddressResponse":{"type":"object","properties":{"internalAddressAssociation":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.InternalAddressAssociation"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllProviderEarningsAddressResponse":{"type":"object","properties":{"internalAddressAssociation":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.InternalAddressAssociation"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllProviderResponse":{"type":"object","properties":{"Provider":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Provider"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllReactorResponse":{"type":"object","properties":{"Reactor":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Reactor"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllStructAttributeResponse":{"type":"object","properties":{"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"},"structAttributeRecords":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.StructAttributeRecord"}}}},"structs.structs.QueryAllStructResponse":{"type":"object","properties":{"Struct":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Struct"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllStructTypeResponse":{"type":"object","properties":{"StructType":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.StructType"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryAllSubstationResponse":{"type":"object","properties":{"Substation":{"type":"array","items":{"type":"object","$ref":"#/definitions/structs.structs.Substation"}},"pagination":{"$ref":"#/definitions/cosmos.base.query.v1beta1.PageResponse"}}},"structs.structs.QueryBlockHeightResponse":{"type":"object","properties":{"blockHeight":{"type":"string","format":"uint64"}}},"structs.structs.QueryGetAgreementResponse":{"type":"object","properties":{"Agreement":{"$ref":"#/definitions/structs.structs.Agreement"}}},"structs.structs.QueryGetAllocationResponse":{"type":"object","properties":{"Allocation":{"$ref":"#/definitions/structs.structs.Allocation"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"}}},"structs.structs.QueryGetFleetResponse":{"type":"object","properties":{"Fleet":{"$ref":"#/definitions/structs.structs.Fleet"}}},"structs.structs.QueryGetGridResponse":{"type":"object","title":"Generic Responses for Permissions","properties":{"gridRecord":{"$ref":"#/definitions/structs.structs.GridRecord"}}},"structs.structs.QueryGetGuildMembershipApplicationResponse":{"type":"object","properties":{"GuildMembershipApplication":{"$ref":"#/definitions/structs.structs.GuildMembershipApplication"}}},"structs.structs.QueryGetGuildResponse":{"type":"object","properties":{"Guild":{"$ref":"#/definitions/structs.structs.Guild"}}},"structs.structs.QueryGetInfusionResponse":{"type":"object","properties":{"Infusion":{"$ref":"#/definitions/structs.structs.Infusion"}}},"structs.structs.QueryGetPermissionResponse":{"type":"object","title":"Generic Responses for Permissions","properties":{"permissionRecord":{"$ref":"#/definitions/structs.structs.PermissionRecord"}}},"structs.structs.QueryGetPlanetAttributeResponse":{"type":"object","properties":{"attribute":{"type":"string","format":"uint64"}}},"structs.structs.QueryGetPlanetResponse":{"type":"object","properties":{"Planet":{"$ref":"#/definitions/structs.structs.Planet"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"},"planetAttributes":{"$ref":"#/definitions/structs.structs.PlanetAttributes"}}},"structs.structs.QueryGetPlayerResponse":{"type":"object","properties":{"Player":{"$ref":"#/definitions/structs.structs.Player"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"},"halted":{"type":"boolean"},"playerInventory":{"$ref":"#/definitions/structs.structs.PlayerInventory"}}},"structs.structs.QueryGetProviderResponse":{"type":"object","properties":{"Provider":{"$ref":"#/definitions/structs.structs.Provider"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"}}},"structs.structs.QueryGetReactorResponse":{"type":"object","properties":{"Reactor":{"$ref":"#/definitions/structs.structs.Reactor"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"}}},"structs.structs.QueryGetStructAttributeResponse":{"type":"object","properties":{"attribute":{"type":"string","format":"uint64"}}},"structs.structs.QueryGetStructResponse":{"type":"object","properties":{"Struct":{"$ref":"#/definitions/structs.structs.Struct"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"},"structAttributes":{"$ref":"#/definitions/structs.structs.StructAttributes"},"structDefenders":{"type":"array","items":{"type":"string"}}}},"structs.structs.QueryGetStructTypeResponse":{"type":"object","properties":{"StructType":{"$ref":"#/definitions/structs.structs.StructType"}}},"structs.structs.QueryGetSubstationResponse":{"type":"object","properties":{"Substation":{"$ref":"#/definitions/structs.structs.Substation"},"gridAttributes":{"$ref":"#/definitions/structs.structs.GridAttributes"}}},"structs.structs.QueryParamsResponse":{"description":"QueryParamsResponse is response type for the Query/Params RPC method.","type":"object","properties":{"params":{"description":"params holds all the parameters of this module.","$ref":"#/definitions/structs.structs.Params"}}},"structs.structs.QueryValidateSignatureResponse":{"type":"object","properties":{"addressPubkeyMismatch":{"type":"boolean"},"pubkeyFormatError":{"type":"boolean"},"signatureFormatError":{"type":"boolean"},"signatureInvalid":{"type":"boolean"},"valid":{"type":"boolean"}}},"structs.structs.Reactor":{"type":"object","properties":{"defaultCommission":{"type":"string"},"guildId":{"type":"string"},"id":{"type":"string"},"rawAddress":{"type":"string","format":"byte"},"validator":{"type":"string"}}},"structs.structs.Struct":{"type":"object","properties":{"creator":{"type":"string","title":"Who is it"},"id":{"type":"string","title":"What it is"},"index":{"type":"string","format":"uint64"},"locationId":{"type":"string"},"locationType":{"title":"Where it is","$ref":"#/definitions/structs.structs.objectType"},"operatingAmbit":{"$ref":"#/definitions/structs.structs.ambit"},"owner":{"type":"string"},"slot":{"type":"string","format":"uint64"},"type":{"type":"string","format":"uint64"}}},"structs.structs.StructAttributeRecord":{"type":"object","properties":{"attributeId":{"type":"string"},"value":{"type":"string","format":"uint64"}}},"structs.structs.StructAttributes":{"type":"object","properties":{"blockStartBuild":{"type":"string","format":"uint64"},"blockStartOreMine":{"type":"string","format":"uint64"},"blockStartOreRefine":{"type":"string","format":"uint64"},"health":{"type":"string","format":"uint64"},"isBuilt":{"type":"boolean"},"isDestroyed":{"type":"boolean"},"isHidden":{"type":"boolean"},"isLocked":{"type":"boolean"},"isMaterialized":{"type":"boolean"},"isOnline":{"type":"boolean"},"protectedStructIndex":{"type":"string","format":"uint64"},"status":{"type":"string","format":"uint64"},"typeCount":{"type":"string","format":"uint64"}}},"structs.structs.StructType":{"type":"object","properties":{"activateCharge":{"type":"string","format":"uint64","title":"Charge uses"},"attackCounterable":{"type":"boolean","title":"For Indirect Combat Module"},"attackReduction":{"description":"For Defensive Cannon","type":"string","format":"uint64","title":"Tech Tree Attributes"},"buildCharge":{"type":"string","format":"uint64"},"buildDifficulty":{"type":"string","format":"uint64","title":"How much compute is needed to build"},"buildDraw":{"type":"string","format":"uint64","title":"How much energy the Struct consumes during building"},"buildLimit":{"type":"string","format":"uint64","title":"How many of this Struct Type a player can have"},"category":{"description":"Planet or Fleet","title":"Fundamental attributes","$ref":"#/definitions/structs.structs.objectType"},"class":{"type":"string","title":"New Struct Type Identity Details"},"classAbbreviation":{"type":"string"},"counterAttack":{"type":"string","format":"uint64","title":"Counter"},"counterAttackSameAmbit":{"type":"string","format":"uint64","title":"Advanced Counter"},"defaultCosmeticModelNumber":{"type":"string"},"defaultCosmeticName":{"type":"string"},"defendChangeCharge":{"type":"string","format":"uint64"},"generatingRate":{"type":"string","format":"uint64","title":"Power Generation"},"guidedDefensiveSuccessRateDenominator":{"type":"string","format":"uint64"},"guidedDefensiveSuccessRateNumerator":{"type":"string","format":"uint64"},"id":{"type":"string","format":"uint64"},"maxHealth":{"type":"string","format":"uint64","title":"How much damage can it take"},"movable":{"type":"boolean","title":"Can the Struct change ambit?"},"moveCharge":{"type":"string","format":"uint64"},"oreMiningCharge":{"type":"string","format":"uint64"},"oreMiningDifficulty":{"type":"string","format":"uint64"},"oreRefiningCharge":{"type":"string","format":"uint64"},"oreRefiningDifficulty":{"type":"string","format":"uint64"},"oreReserveDefenses":{"$ref":"#/definitions/structs.structs.techOreReserveDefenses"},"passiveDraw":{"type":"string","format":"uint64","title":"How much energy the Struct consumes when active"},"passiveWeaponry":{"title":"Tech Tree Features","$ref":"#/definitions/structs.structs.techPassiveWeaponry"},"planetaryDefenses":{"$ref":"#/definitions/structs.structs.techPlanetaryDefenses"},"planetaryMining":{"$ref":"#/definitions/structs.structs.techPlanetaryMining"},"planetaryRefinery":{"$ref":"#/definitions/structs.structs.techPlanetaryRefineries"},"planetaryShieldContribution":{"type":"string","format":"uint64","title":"The shield that is added to the Planet"},"possibleAmbit":{"description":"Where can it be built and moved to. Usually only a single ambit but some Structs have multiple possible (i.e. Command Ship)","type":"string","format":"uint64","title":"Details about location and movement\nTODO move category to here and make it flag based too\nReplicate what was done for ambits flags"},"postDestructionDamage":{"type":"string","format":"uint64"},"powerGeneration":{"$ref":"#/definitions/structs.structs.techPowerGeneration"},"primaryWeapon":{"title":"Primary Weapon Configuration","$ref":"#/definitions/structs.structs.techActiveWeaponry"},"primaryWeaponAmbits":{"type":"string","format":"uint64"},"primaryWeaponBlockable":{"type":"boolean"},"primaryWeaponCharge":{"type":"string","format":"uint64"},"primaryWeaponControl":{"$ref":"#/definitions/structs.structs.techWeaponControl"},"primaryWeaponCounterable":{"type":"boolean"},"primaryWeaponDamage":{"type":"string","format":"uint64"},"primaryWeaponRecoilDamage":{"type":"string","format":"uint64"},"primaryWeaponShotSuccessRateDenominator":{"type":"string","format":"uint64"},"primaryWeaponShotSuccessRateNumerator":{"type":"string","format":"uint64"},"primaryWeaponShots":{"type":"string","format":"uint64"},"primaryWeaponTargets":{"type":"string","format":"uint64"},"secondaryWeapon":{"title":"Secondary Weapon Configuration","$ref":"#/definitions/structs.structs.techActiveWeaponry"},"secondaryWeaponAmbits":{"type":"string","format":"uint64"},"secondaryWeaponBlockable":{"type":"boolean"},"secondaryWeaponCharge":{"type":"string","format":"uint64"},"secondaryWeaponControl":{"$ref":"#/definitions/structs.structs.techWeaponControl"},"secondaryWeaponCounterable":{"type":"boolean"},"secondaryWeaponDamage":{"type":"string","format":"uint64"},"secondaryWeaponRecoilDamage":{"type":"string","format":"uint64"},"secondaryWeaponShotSuccessRateDenominator":{"type":"string","format":"uint64"},"secondaryWeaponShotSuccessRateNumerator":{"type":"string","format":"uint64"},"secondaryWeaponShots":{"type":"string","format":"uint64"},"secondaryWeaponTargets":{"type":"string","format":"uint64"},"slotBound":{"type":"boolean","title":"Does the Struct occupy a slot. Trying to find something to help set Command Ships apart"},"stealthActivateCharge":{"type":"string","format":"uint64"},"stealthSystems":{"type":"boolean","title":"For Stealth Mode"},"triggerRaidDefeatByDestruction":{"description":"I wish this was higher up in a different area of the definition\nbut I really don't feel like renumbering this entire thing again.","type":"boolean"},"type":{"description":"TODO Deprecating... Will match with Class for now.","type":"string"},"unguidedDefensiveSuccessRateDenominator":{"type":"string","format":"uint64"},"unguidedDefensiveSuccessRateNumerator":{"type":"string","format":"uint64"},"unitDefenses":{"$ref":"#/definitions/structs.structs.techUnitDefenses"}}},"structs.structs.Substation":{"type":"object","properties":{"creator":{"type":"string"},"id":{"type":"string"},"owner":{"type":"string"}}},"structs.structs.allocationType":{"type":"string","default":"static","enum":["static","dynamic","automated","providerAgreement"]},"structs.structs.ambit":{"type":"string","default":"none","enum":["none","water","land","air","space","local"]},"structs.structs.fleetStatus":{"type":"string","default":"onStation","enum":["onStation","away"]},"structs.structs.guildJoinBypassLevel":{"type":"string","title":"- closed: Feature off\n - permissioned: Only those with permissions can do it\n - member: All members of the guild can contribute","default":"closed","enum":["closed","permissioned","member"]},"structs.structs.guildJoinType":{"type":"string","default":"invite","enum":["invite","request","direct","proxy"]},"structs.structs.objectType":{"type":"string","default":"guild","enum":["guild","player","planet","reactor","substation","struct","allocation","infusion","address","fleet","provider","agreement"]},"structs.structs.planetStatus":{"type":"string","default":"active","enum":["active","complete"]},"structs.structs.providerAccessPolicy":{"type":"string","default":"openMarket","enum":["openMarket","guildMarket","closedMarket"]},"structs.structs.registrationStatus":{"type":"string","default":"proposed","enum":["proposed","approved","denied","revoked"]},"structs.structs.techActiveWeaponry":{"type":"string","default":"noActiveWeaponry","enum":["noActiveWeaponry","guidedWeaponry","unguidedWeaponry","attackRun","selfDestruct"]},"structs.structs.techOreReserveDefenses":{"type":"string","default":"noOreReserveDefenses","enum":["noOreReserveDefenses","coordinatedReserveResponseTracker","rapidResponsePackage","activeScanning","monitoringStation","oreBunker"]},"structs.structs.techPassiveWeaponry":{"type":"string","default":"noPassiveWeaponry","enum":["noPassiveWeaponry","counterAttack","strongCounterAttack","advancedCounterAttack","lastResort"]},"structs.structs.techPlanetaryDefenses":{"type":"string","title":"- lowOrbitBallisticInterceptorNetwork: advancedLowOrbitBallisticInterceptorNetwork = 3;\nrepairNetwork = 4;\ncoordinatedGlobalShieldNetwork = 5;\norbitalJammingStation = 6;\nadvancedOrbitalJammingStation = 7;","default":"noPlanetaryDefense","enum":["noPlanetaryDefense","defensiveCannon","lowOrbitBallisticInterceptorNetwork"]},"structs.structs.techPlanetaryMining":{"type":"string","default":"noPlanetaryMining","enum":["noPlanetaryMining","oreMiningRig"]},"structs.structs.techPlanetaryRefineries":{"type":"string","default":"noPlanetaryRefinery","enum":["noPlanetaryRefinery","oreRefinery"]},"structs.structs.techPowerGeneration":{"type":"string","default":"noPowerGeneration","enum":["noPowerGeneration","smallGenerator","mediumGenerator","largeGenerator"]},"structs.structs.techUnitDefenses":{"type":"string","default":"noUnitDefenses","enum":["noUnitDefenses","defensiveManeuver","signalJamming","armour","indirectCombatModule","stealthMode","perimeterFencing","reinforcedWalls"]},"structs.structs.techWeaponControl":{"type":"string","default":"noWeaponControl","enum":["noWeaponControl","guided","unguided"]}},"tags":[{"name":"Query"},{"name":"Msg"}]} \ No newline at end of file diff --git a/proto/structs/structs/keys.proto b/proto/structs/structs/keys.proto index 195b178..5d8eb29 100644 --- a/proto/structs/structs/keys.proto +++ b/proto/structs/structs/keys.proto @@ -85,6 +85,7 @@ enum raidStatus { initiated = 0; ongoing = 2; attackerDefeated = 1; + attackerRetreated = 5; raidSuccessful = 3; demilitarized = 4; } diff --git a/proto/structs/structs/struct.proto b/proto/structs/structs/struct.proto index ca7d685..9d00e58 100644 --- a/proto/structs/structs/struct.proto +++ b/proto/structs/structs/struct.proto @@ -174,42 +174,3 @@ message StructAttributes { } - -/* - -Defined Directly in Go instead of as a proto. -Never written to or recalled from a keeper, so this shouldn't be an issue. - -message StructCache { - string structId = 1; - - bool structureLoaded = 2; - Struct structure = 3; - - bool structTypeLoaded = 4; - StructType structType = 5; - - bool healthLoaded = 6; - uint64 health = 7; - - string statusAttributeId = 8; - bool statusLoaded = 9; - uint64 status = 10; - - bool blockStartBuildLoaded = 11; - uint64 blockStartBuild = 12; - - bool blockStartOreMineLoaded = 13; - uint64 blockStarOreMine = 14; - - bool blockStartOreRefineLoaded = 15; - uint64 blockStartOreRefine = 16; - - bool protectedStructIndexLoaded = 17; - uint64 protectedStructIndex = 18; - -} - -*/ - - diff --git a/proto/structs/structs/tx.proto b/proto/structs/structs/tx.proto index 5edfefc..820d0e2 100644 --- a/proto/structs/structs/tx.proto +++ b/proto/structs/structs/tx.proto @@ -8,6 +8,7 @@ import "cosmos_proto/cosmos.proto"; import "gogoproto/gogo.proto"; import "structs/structs/params.proto"; import "cosmos/base/v1beta1/coin.proto"; +import "google/protobuf/timestamp.proto"; import "structs/structs/keys.proto"; import "structs/structs/fleet.proto"; @@ -91,6 +92,11 @@ service Msg { rpc ProviderDelete (MsgProviderDelete ) returns (MsgProviderResponse); + rpc ReactorInfuse (MsgReactorInfuse ) returns (MsgReactorInfuseResponse); + rpc ReactorDefuse (MsgReactorDefuse ) returns (MsgReactorDefuseResponse); + rpc ReactorBeginMigration (MsgReactorBeginMigration ) returns (MsgReactorBeginMigrationResponse); + rpc ReactorCancelDefusion (MsgReactorCancelDefusion ) returns (MsgReactorCancelDefusionResponse); + rpc StructActivate (MsgStructActivate ) returns (MsgStructStatusResponse ); rpc StructDeactivate (MsgStructDeactivate ) returns (MsgStructStatusResponse ); @@ -540,6 +546,97 @@ message MsgPlayerResume { message MsgPlayerResumeResponse {} + +// MsgReactorInfuse defines a SDK message for performing a delegation of coins +// from a delegator to a validator. +message MsgReactorInfuse { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "cosmos-sdk/MsgReactorInfuse"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string creator = 1; + string delegator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string validator_address = 3 [(cosmos_proto.scalar) = "cosmos.ValidatorAddressString"]; + cosmos.base.v1beta1.Coin amount = 4 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; +} + +// MsgReactorInfuseResponse defines the Msg/Delegate response type. +message MsgReactorInfuseResponse {} + +// MsgReactorBeginMigration defines a SDK message for performing a redelegation +// of coins from a delegator and source validator to a destination validator. +message MsgReactorBeginMigration { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "cosmos-sdk/MsgReactorBeginMigration"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string creator = 1; + string delegator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string validator_src_address = 3 [(cosmos_proto.scalar) = "cosmos.ValidatorAddressString"]; + string validator_dst_address = 4 [(cosmos_proto.scalar) = "cosmos.ValidatorAddressString"]; + cosmos.base.v1beta1.Coin amount = 5 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; +} + +// MsgBeginMigrationResponse defines the Msg/BeginRedelegate response type. +message MsgReactorBeginMigrationResponse { + google.protobuf.Timestamp completion_time = 1 + [(gogoproto.nullable) = false, (amino.dont_omitempty) = true, (gogoproto.stdtime) = true]; +} + +// MsgReactorDefuse defines a SDK message for performing an undelegation from a +// delegate and a validator. +message MsgReactorDefuse { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "cosmos-sdk/MsgReactorDefuse"; + + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string creator = 1; + string delegator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string validator_address = 3 [(cosmos_proto.scalar) = "cosmos.ValidatorAddressString"]; + cosmos.base.v1beta1.Coin amount = 4 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; +} + +// MsgReactorDefuseResponse defines the Msg/Undelegate response type. +message MsgReactorDefuseResponse { + google.protobuf.Timestamp completion_time = 1 + [(gogoproto.nullable) = false, (amino.dont_omitempty) = true, (gogoproto.stdtime) = true]; + + // amount returns the amount of undelegated coins + // + // Since: cosmos-sdk 0.50 + cosmos.base.v1beta1.Coin amount = 2 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; +} + +// MsgReactorCancelDefusion defines the SDK message for performing a cancel unbonding delegation for delegator +// +// Since: cosmos-sdk 0.46 +message MsgReactorCancelDefusion { + option (cosmos.msg.v1.signer) = "creator"; + option (amino.name) = "cosmos-sdk/MsgReactorCancelDefusion"; + option (gogoproto.equal) = false; + option (gogoproto.goproto_getters) = false; + + string creator = 1; + string delegator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"]; + string validator_address = 3 [(cosmos_proto.scalar) = "cosmos.ValidatorAddressString"]; + // amount is always less than or equal to unbonding delegation entry balance + cosmos.base.v1beta1.Coin amount = 4 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; + // creation_height is the height which the unbonding took place. + int64 creation_height = 5; +} + +// MsgReactorCancelDefusionResponse +// +// Since: cosmos-sdk 0.46 +message MsgReactorCancelDefusionResponse {} + + message MsgStructStatusResponse { Struct struct = 1 [(gogoproto.nullable) = false]; } diff --git a/x/structs/keeper/abci.go b/x/structs/keeper/abci.go index f3fee8a..2ad71fa 100644 --- a/x/structs/keeper/abci.go +++ b/x/structs/keeper/abci.go @@ -12,9 +12,7 @@ import ( // and prune the oldest entry based on the HistoricalEntries parameter func (k *Keeper) BeginBlocker(ctx context.Context) { - ctxSDK := sdk.UnwrapSDKContext(ctx) - - ctxSDK.Logger().Debug("Begin Block Processes") + k.logger.Debug("Begin Block Processes") k.EmitEventTime(ctx) @@ -22,15 +20,12 @@ func (k *Keeper) BeginBlocker(ctx context.Context) { k.StructSweepDestroyed(ctx) - ctxSDK.Logger().Debug("Begin Block Complete") + k.logger.Debug("Begin Block Complete") } // Called every block, update validator set func (k *Keeper) EndBlocker(ctx context.Context) ([]abci.ValidatorUpdate, error) { - - ctxSDK := sdk.UnwrapSDKContext(ctx) - - ctxSDK.Logger().Debug("End Block Processes") + k.logger.Debug("End Block Processes") k.AgreementExpirations(ctx) @@ -42,14 +37,13 @@ func (k *Keeper) EndBlocker(ctx context.Context) ([]abci.ValidatorUpdate, error) */ k.GridCascade(ctx) - ctxSDK.Logger().Debug("End Block Complete") + k.logger.Debug("End Block Complete") return []abci.ValidatorUpdate{}, nil } func (k Keeper) EmitEventTime(ctx context.Context) { ctxSDK := sdk.UnwrapSDKContext(ctx) - ctxSDK.Logger().Debug("Emit Event Time") _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventTime{&types.EventTimeDetail{BlockHeight: ctxSDK.BlockHeight(), BlockTime: ctxSDK.HeaderInfo().Time.UTC() }}) } @@ -58,7 +52,7 @@ func (k *Keeper) EventAllGenesis(ctx context.Context) { if ctxSDK.BlockHeight() > 1 { return } - ctxSDK.Logger().Info("Spewing Genesis Events") + k.logger.Info("Spewing Genesis Events into the Indexer") // Player players := k.GetAllPlayer(ctx) diff --git a/x/structs/keeper/agreement.go b/x/structs/keeper/agreement.go index c9c4a60..8805536 100644 --- a/x/structs/keeper/agreement.go +++ b/x/structs/keeper/agreement.go @@ -12,7 +12,7 @@ import ( "structs/x/structs/types" //sdkerrors "cosmossdk.io/errors" - "fmt" + ) @@ -75,7 +75,7 @@ func (k Keeper) RemoveAgreement(ctx context.Context, agreement types.Agreement) } func (k Keeper) AgreementExpirations(ctx context.Context) { - fmt.Printf("Checking for Expired Agreements \n") + k.logger.Debug("Checking for Expired Agreements") uctx := sdk.UnwrapSDKContext(ctx) currentBlock := uint64(uctx.BlockHeight()) @@ -83,7 +83,7 @@ func (k Keeper) AgreementExpirations(ctx context.Context) { // Get List of Agreements agreements := k.GetAllAgreementIdByExpirationIndex(ctx, currentBlock) for _, agreementId := range agreements { - fmt.Printf("Expired Agreement %s \n", agreementId) + k.logger.Info("Expired Agreement","agreementId",agreementId) agreement := k.GetAgreementCacheFromId(ctx, agreementId) agreement.GetProvider().Checkpoint() agreement.Expire() diff --git a/x/structs/keeper/agreement_cache.go b/x/structs/keeper/agreement_cache.go index 2ab3d10..f3522c7 100644 --- a/x/structs/keeper/agreement_cache.go +++ b/x/structs/keeper/agreement_cache.go @@ -7,7 +7,6 @@ import ( sdkerrors "cosmossdk.io/errors" "structs/x/structs/types" "cosmossdk.io/math" - "fmt" ) type AgreementCache struct { @@ -76,7 +75,7 @@ func (k *Keeper) GetAgreementCacheFromId(ctx context.Context, agreementId string func (cache *AgreementCache) Commit() { cache.AnyChange = false - fmt.Printf("\n Updating Agreement From Cache (%s) \n", cache.AgreementId) + cache.K.logger.Info("Updating Agreement From Cache","agreementId",cache.AgreementId) if cache.AgreementChanged { cache.K.SetAgreement(cache.Ctx, cache.Agreement) diff --git a/x/structs/keeper/agreement_index.go b/x/structs/keeper/agreement_index.go index d857940..5f07a5b 100644 --- a/x/structs/keeper/agreement_index.go +++ b/x/structs/keeper/agreement_index.go @@ -10,7 +10,7 @@ import ( "structs/x/structs/types" "strconv" - "fmt" + ) @@ -70,11 +70,10 @@ func (k Keeper) GetAllAgreementByProviderIndex(ctx context.Context, providerId s } - func (k Keeper) SetAgreementExpirationIndex(ctx context.Context, block uint64, agreementId string) (err error) { providerIndexStore := prefix.NewStore(runtime.KVStoreAdapter(k.storeService.OpenKVStore(ctx)), AgreementExpirationKeyPrefix(block)) - fmt.Printf("New Agreement %s will expire on %d \n", agreementId, block) + k.logger.Info("New Agreement ", "agreementId", agreementId, "expirationHeight", block) bz := make([]byte, 8) binary.BigEndian.PutUint64(bz, 1) diff --git a/x/structs/keeper/fleet_cache.go b/x/structs/keeper/fleet_cache.go index 9b61c85..940f99f 100644 --- a/x/structs/keeper/fleet_cache.go +++ b/x/structs/keeper/fleet_cache.go @@ -4,7 +4,6 @@ import ( "context" //"math" - "fmt" sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" @@ -72,7 +71,7 @@ func (k *Keeper) GetFleetCacheFromId(ctx context.Context, fleetId string) (Fleet func (cache *FleetCache) Commit() () { cache.AnyChange = false - fmt.Printf("\n Updating Fleet From Cache (%s) \n", cache.FleetId) + cache.K.logger.Info("Updating Fleet From Cache","fleetId",cache.FleetId) if (cache.FleetChanged) { cache.K.SetFleet(cache.Ctx, cache.Fleet) } diff --git a/x/structs/keeper/grid.go b/x/structs/keeper/grid.go index 530fba7..df77a97 100644 --- a/x/structs/keeper/grid.go +++ b/x/structs/keeper/grid.go @@ -10,7 +10,6 @@ import ( "structs/x/structs/types" //sdkerrors "cosmossdk.io/errors" - "fmt" ) @@ -68,7 +67,7 @@ func (k Keeper) SetGridAttribute(ctx context.Context, gridAttributeId string, am ctxSDK := sdk.UnwrapSDKContext(ctx) _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventGrid{&types.GridRecord{AttributeId: gridAttributeId, Value: amount}}) - fmt.Printf("Grid Change (Set): (%s) %d \n", gridAttributeId, amount) + k.logger.Info("Grid Change (Set)", "gridAttributeId", gridAttributeId, "amount", amount) } func (k Keeper) SetGridAttributeDelta(ctx context.Context, gridAttributeId string, oldAmount uint64, newAmount uint64) (amount uint64, err error) { @@ -81,7 +80,7 @@ func (k Keeper) SetGridAttributeDelta(ctx context.Context, gridAttributeId strin amount = resetAmount + newAmount - fmt.Printf("Grid Change (Delta): (%s) %d to %d \n", gridAttributeId, oldAmount, newAmount) + k.logger.Info("Grid Change (Delta)", "gridAttributeId", gridAttributeId, "oldAmount", oldAmount, "newAmount", newAmount) k.SetGridAttribute(ctx, gridAttributeId, amount) return @@ -94,8 +93,7 @@ func (k Keeper) SetGridAttributeDecrement(ctx context.Context, gridAttributeId s amount = currentAmount - decrementAmount } - - fmt.Printf("Grid Change (Decrement): (%s) %d \n", gridAttributeId, decrementAmount) + k.logger.Info("Grid Change (Decrement)","gridAttributeId", gridAttributeId, "decrementAmount", decrementAmount) k.SetGridAttribute(ctx, gridAttributeId, amount) return @@ -106,7 +104,7 @@ func (k Keeper) SetGridAttributeIncrement(ctx context.Context, gridAttributeId s amount = currentAmount + incrementAmount - fmt.Printf("Grid Change (Increment): (%s) %d \n", gridAttributeId, incrementAmount) + k.logger.Info("Grid Change (Increment)", "gridAttributeId", gridAttributeId, "incrementAmount", incrementAmount) k.SetGridAttribute(ctx, gridAttributeId, amount) return @@ -137,7 +135,7 @@ func (k Keeper) AppendGridCascadeQueue(ctx context.Context, queueId string) (err gridCascadeQueueStore.Set([]byte(queueId), bz) - fmt.Printf("Grid Queue (Add): (%s) \n", queueId) + k.logger.Info("Grid Queue (Add)", "queueId", queueId) return err } @@ -163,10 +161,10 @@ func (k Keeper) GridCascade(ctx context.Context) { allocationPointer := 0 for (k.GetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_load, objectId)) > k.GetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_capacity, objectId))) { - fmt.Printf("Grid Queue (Brownout): (%s) Load: %d Capacity: %d \n", objectId, k.GetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_load, objectId)), k.GetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_capacity, objectId))) + k.logger.Info("Grid Queue (Brownout)", "objectId", objectId, "load", k.GetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_load, objectId)), "capacity", k.GetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_capacity, objectId))) k.DestroyAllocation(ctx, allocationList[allocationPointer]) - fmt.Printf("Grid Queue (Allocation Destroyed): (%s) \n", allocationList[allocationPointer]) + k.logger.Info("Grid Queue (Allocation Destroyed)","allocationId", allocationList[allocationPointer]) allocationPointer++ } diff --git a/x/structs/keeper/grid_cache.go b/x/structs/keeper/grid_cache.go index cc0294c..aab83b6 100644 --- a/x/structs/keeper/grid_cache.go +++ b/x/structs/keeper/grid_cache.go @@ -7,8 +7,6 @@ import ( //sdkerrors "cosmossdk.io/errors" "structs/x/structs/types" - "fmt" - ) @@ -120,7 +118,7 @@ func (k *Keeper) GetGridCacheFromId(ctx context.Context, objectId string) (GridC func (cache *GridCache) Commit() () { cache.AnyChange = false - fmt.Printf("\n Updating Grid From Cache (%s) \n", cache.ObjectId) + cache.K.logger.Info("Updating Grid From Cache","objectId",cache.ObjectId) if (cache.OreChanged) { cache.K.SetGridAttribute(cache.Ctx, cache.OreAttributeId, cache.Ore) diff --git a/x/structs/keeper/guild.go b/x/structs/keeper/guild.go index a48bf9c..558939c 100644 --- a/x/structs/keeper/guild.go +++ b/x/structs/keeper/guild.go @@ -15,7 +15,7 @@ import ( authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" //"strconv" //"strings" - "fmt" + //"fmt" ) // GetGuildCount get the total number of guild @@ -90,8 +90,7 @@ func (k Keeper) AppendGuild( k.bankKeeper.SetDenomMetaData(ctx, guildDenomMetadata) - fmt.Printf("Guild Collateral Pool: %s", types.GuildBankCollateralPool + guild.Id) - fmt.Printf("Guild Collateral Pool: %s", authtypes.NewModuleAddress(types.GuildBankCollateralPool + guild.Id)) + k.logger.Info("Guild Collateral Pool Address","raw", types.GuildBankCollateralPool + guild.Id,"address",authtypes.NewModuleAddress(types.GuildBankCollateralPool + guild.Id).String()) // types.ModuleName Guild Bank Mint guildCollateralAddress := authtypes.NewModuleAddress(types.GuildBankCollateralPool + guild.Id) @@ -100,7 +99,7 @@ func (k Keeper) AppendGuild( ctxSDK := sdk.UnwrapSDKContext(ctx) _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventGuild{Guild: &guild}) - _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventGuildBankAddress{&types.EventGuildBankAddressDetail{GuildId: guild.Id, BankCollateralPool: string(guildCollateralAddress),BankTokenPool: types.ModuleName}}) + _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventGuildBankAddress{&types.EventGuildBankAddressDetail{GuildId: guild.Id, BankCollateralPool: guildCollateralAddress.String(), BankTokenPool: types.ModuleName}}) return guild } diff --git a/x/structs/keeper/guild_cache.go b/x/structs/keeper/guild_cache.go index c5c2abb..a3d65b1 100644 --- a/x/structs/keeper/guild_cache.go +++ b/x/structs/keeper/guild_cache.go @@ -9,7 +9,6 @@ import ( // Used in Randomness Orb - "fmt" "cosmossdk.io/math" authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" ) @@ -72,7 +71,7 @@ func (k *Keeper) GetGuildCacheFromId(ctx context.Context, guildId string) GuildC func (cache *GuildCache) Commit() { cache.AnyChange = false - fmt.Printf("\n Updating Guild From Cache (%s) \n", cache.GuildId) + cache.K.logger.Info("Updating Guild From Cache", "guildId", cache.GuildId) if cache.GuildChanged { cache.K.SetGuild(cache.Ctx, cache.Guild) diff --git a/x/structs/keeper/infusion.go b/x/structs/keeper/infusion.go index bd15e06..dc8b8a8 100644 --- a/x/structs/keeper/infusion.go +++ b/x/structs/keeper/infusion.go @@ -67,6 +67,9 @@ func (k Keeper) GetInfusion(ctx context.Context, destinationId string, address s // GetInfusion returns a infusion from its id (destinationId-address) func (k Keeper) GetInfusionByID(ctx context.Context, infusionId string) (val types.Infusion, found bool) { infusionIdSplit := strings.Split(infusionId, "-") + if len(infusionIdSplit) != 2 { + return types.Infusion{}, false + } return k.GetInfusion(ctx, infusionIdSplit[0], infusionIdSplit[1]) } @@ -142,6 +145,7 @@ func (k Keeper) RemoveInfusion(ctx context.Context, destinationId string, addres _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventDelete{ ObjectId: infusionId}) } + // GetAllInfusion returns all infusion func (k Keeper) GetAllInfusion(ctx context.Context) (list []types.Infusion) { store := prefix.NewStore(runtime.KVStoreAdapter(k.storeService.OpenKVStore(ctx)), types.KeyPrefix(types.InfusionKey)) diff --git a/x/structs/keeper/keeper.go b/x/structs/keeper/keeper.go index 9e6f587..78aba2f 100644 --- a/x/structs/keeper/keeper.go +++ b/x/structs/keeper/keeper.go @@ -60,7 +60,7 @@ func NewKeeper( cdc: cdc, storeService: storeService, authority: authority, - logger: logger, + logger: logger.With("module", "structs"), ibcKeeperFn: ibcKeeperFn, capabilityScopedFn: capabilityScopedFn, diff --git a/x/structs/keeper/msg_server_address_register.go b/x/structs/keeper/msg_server_address_register.go index c215ce5..249e19a 100644 --- a/x/structs/keeper/msg_server_address_register.go +++ b/x/structs/keeper/msg_server_address_register.go @@ -50,14 +50,13 @@ func (k msgServer) AddressRegister(goCtx context.Context, msg *types.MsgAddressR return &types.MsgAddressRegisterResponse{}, sdkerrors.Wrapf(types.ErrPermissionAssociation, "Calling address (%s) does not have permissions needed to allow address association of higher functionality ", msg.Creator) } - // Does the signature verify in the proof // Decode the PubKey from hex Encoding - fmt.Println("Encoding string:", msg.ProofPubKey) + k.logger.Info("Address Register", "encodingString", msg.ProofPubKey) decodedProofPubKey, decodeErr := hex.DecodeString(msg.ProofPubKey) if decodeErr != nil { - fmt.Println("Error decoding string:", decodeErr) + k.logger.Error("Address Register Public Key", "decodingError", decodeErr) } // Convert provided pub key into a bech32 string (i.e., an address) address := types.PubKeyToBech32(decodedProofPubKey) @@ -70,12 +69,12 @@ func (k msgServer) AddressRegister(goCtx context.Context, msg *types.MsgAddressR // We rebuild the message manually here rather than trust the client to provide it hashInput := fmt.Sprintf("PLAYER%sADDRESS%s", msg.PlayerId, msg.Address) - fmt.Println(hashInput) + k.logger.Info("Address Register", "hashInput", hashInput) // Decode the Signature from Hex Encoding decodedProofSignature, decodeErr := hex.DecodeString(msg.ProofSignature) if decodeErr != nil { - fmt.Println("Error decoding string:", decodeErr) + k.logger.Error("Address Register Signature", "decodingError", decodeErr) } // Proof needs to only be 64 characters. Some systems provide a checksum bit on the end that ruins it all diff --git a/x/structs/keeper/msg_server_fleet_move.go b/x/structs/keeper/msg_server_fleet_move.go index cad33c0..6d6797a 100644 --- a/x/structs/keeper/msg_server_fleet_move.go +++ b/x/structs/keeper/msg_server_fleet_move.go @@ -43,6 +43,12 @@ func (k msgServer) FleetMove(goCtx context.Context, msg *types.MsgFleetMove) (*t return &types.MsgFleetMoveResponse{}, readinessError } + if fleet.GetLocationId() != msg.DestinationLocationId { + if fleet.GetPlanet().GetLocationListStart() == msg.FleetId { + _ = ctx.EventManager().EmitTypedEvent(&types.EventRaid{&types.EventRaidDetail{FleetId: msg.FleetId, PlanetId: fleet.GetLocationId(), Status: types.RaidStatus_attackerRetreated}}) + } + } + fleet.SetLocationToPlanet(&destination) fleet.Commit() diff --git a/x/structs/keeper/msg_server_guild_membership_join.go b/x/structs/keeper/msg_server_guild_membership_join.go index 6642405..a58cd8c 100644 --- a/x/structs/keeper/msg_server_guild_membership_join.go +++ b/x/structs/keeper/msg_server_guild_membership_join.go @@ -2,15 +2,16 @@ package keeper import ( "context" - + "time" + "cosmossdk.io/math" sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" "structs/x/structs/types" + staking "github.com/cosmos/cosmos-sdk/x/staking/types" ) func (k msgServer) GuildMembershipJoin(goCtx context.Context, msg *types.MsgGuildMembershipJoin) (*types.MsgGuildMembershipResponse, error) { ctx := sdk.UnwrapSDKContext(goCtx) - // Add an Active Address record to the // indexer for UI requirements k.AddressEmitActivity(ctx, msg.Creator) @@ -46,6 +47,17 @@ func (k msgServer) GuildMembershipJoin(goCtx context.Context, msg *types.MsgGuil return &types.MsgGuildMembershipResponse{}, sdkerrors.Wrapf(types.ErrGuildMembershipApplication, "Membership Application already pending. Deny request or invitation first") } + var infusionMigrationList []types.Infusion + var infusionMigrationShares []math.LegacyDec + var infusionMigrationReactor []sdk.ValAddress + var infusionMigrationAmount []math.Int + + destinationReactor, destinationReactorFound := k.GetReactor(ctx, guild.PrimaryReactorId) + if (!destinationReactorFound) { + return &types.MsgGuildMembershipResponse{}, sdkerrors.Wrapf(types.ErrGuildMembershipApplication, "Somehow this reactor (%s) doesn't exist, you should tell an adult",guild.PrimaryReactorId) + } + destinationValidatorAccount, _ := sdk.ValAddressFromBech32(destinationReactor.Validator) + if (guild.JoinInfusionMinimum != 0) { var currentFuel uint64 @@ -59,6 +71,7 @@ func (k msgServer) GuildMembershipJoin(goCtx context.Context, msg *types.MsgGuil * - Owned by the player * - Points to a Reactor * - The Destination Reactor is part of the Guild + * - If the destination reactor is not part of the guild, we need to migrate the assets over. */ for _, infusionId := range msg.InfusionId { @@ -75,24 +88,52 @@ func (k msgServer) GuildMembershipJoin(goCtx context.Context, msg *types.MsgGuil return &types.MsgGuildMembershipResponse{}, sdkerrors.Wrapf(types.ErrGuildMembershipApplication, "Only Reactor infusions allowed, Infusion (%s) unacceptable", infusionId) } - reactor, reactorFound := k.GetReactor(ctx, infusion.DestinationId) - if (!reactorFound) { + sourceReactor, sourceReactorFound := k.GetReactor(ctx, infusion.DestinationId) + if (!sourceReactorFound) { return &types.MsgGuildMembershipResponse{}, sdkerrors.Wrapf(types.ErrGuildMembershipApplication, "Somehow this reactor (%s) doesn't exist, you should tell an adult",infusion.DestinationId) } - if (reactor.GuildId != msg.GuildId) { - return &types.MsgGuildMembershipResponse{}, sdkerrors.Wrapf(types.ErrGuildMembershipApplication, "Infusion (%s) is for a Reactor (%s) of a different Guild (%s)", infusionId, reactor.Id, reactor.GuildId) + if (sourceReactor.GuildId != msg.GuildId) { + /* + Previously, this would fail at this point but now we'll be migrating the infusion + over to the new guilds reactor. + + Before migrating the infusions, we need to... + [] confirm they can be migrated (and are not stuck in a redelegation) + [] confirm the total amount of infusions migrating will meet the minimum + + */ + + // The amount available to move over is the amount of Fuel minus the Defusing quantity (as it's already moving) + redelegateAmountFuel := math.NewIntFromUint64(infusion.Fuel) + if redelegateAmountFuel.LT(infusion.Defusing) { + return &types.MsgGuildMembershipResponse{}, sdkerrors.Wrapf(types.ErrGuildMembershipApplication, "Infusion (%s) unacceptable because Fuel less the defusing", infusionId) + } + redelegateAmount := redelegateAmountFuel.Sub(infusion.Defusing) + infusionMigrationAmount = append(infusionMigrationAmount, redelegateAmount) + + // The validation should never fail assuming there isn't a bug in the Infusion system + // but we can use this function to reliably calculate the shares + infusionAccount, _ := sdk.AccAddressFromBech32(infusion.Address) + sourceValidatorAccount, _ := sdk.ValAddressFromBech32(sourceReactor.Validator) + shares, validationErr := k.stakingKeeper.ValidateUnbondAmount( + ctx, infusionAccount, sourceValidatorAccount, redelegateAmount, + ) + if validationErr != nil { + return &types.MsgGuildMembershipResponse{}, validationErr + } + + // The actual redelegation process will only start after all values are checked + // Save the validation results for later in the function + infusionMigrationReactor = append(infusionMigrationReactor, sourceValidatorAccount) + infusionMigrationShares = append(infusionMigrationShares, shares) + infusionMigrationList = append(infusionMigrationList, infusion) + + currentFuel = currentFuel + redelegateAmount.Uint64() + } else { + currentFuel = currentFuel + infusion.Fuel } - currentFuel = currentFuel + infusion.Fuel - - /* This is an expensive process, so fail fast. - * - * This could mean an infusion is provided in the message that doesn't - * meet these requirements but at this point, we've met the infusion - * minimum of the guild so that doesn't actually matter. - */ - if (currentFuel > guild.JoinInfusionMinimum) { break } } if (currentFuel < guild.JoinInfusionMinimum) { @@ -137,6 +178,40 @@ func (k msgServer) GuildMembershipJoin(goCtx context.Context, msg *types.MsgGuil guildMembershipApplication.JoinType = types.GuildJoinType_direct guildMembershipApplication.RegistrationStatus = types.RegistrationStatus_approved + // This seems like a safe place for this. + // We either need to do this basically last, or undo any changes if errors occur. + for migrationInfusionIndex, migrationInfusion := range infusionMigrationList { + // Handle the migration of Infusions from previous reactor to new + + infusionAccount, _ := sdk.AccAddressFromBech32(migrationInfusion.Address) + completionTime, redelegationErr := k.stakingKeeper.BeginRedelegation( + ctx, + infusionAccount, + infusionMigrationReactor[migrationInfusionIndex], + destinationValidatorAccount, + infusionMigrationShares[migrationInfusionIndex], + ) + + // This is kinda a problem by now tbh + // Maybe tell an adult if this happens + if redelegationErr != nil { + return &types.MsgGuildMembershipResponse{}, redelegationErr + } + + ctx.EventManager().EmitEvents(sdk.Events{ + sdk.NewEvent( + staking.EventTypeRedelegate, + sdk.NewAttribute(staking.AttributeKeySrcValidator, infusionMigrationReactor[migrationInfusionIndex].String()), + sdk.NewAttribute(staking.AttributeKeyDstValidator, destinationReactor.Validator), + sdk.NewAttribute(staking.AttributeKeyDelegator, migrationInfusion.Address), + sdk.NewAttribute(sdk.AttributeKeyAmount, infusionMigrationAmount[migrationInfusionIndex].String()), + sdk.NewAttribute(staking.AttributeKeyCompletionTime, completionTime.Format(time.RFC3339)), + ), + }) + + } + + // Look up joining account targetPlayer := k.UpsertPlayer(ctx, msg.Creator) targetPlayer.GuildId = msg.GuildId diff --git a/x/structs/keeper/msg_server_guild_membership_join_proxy.go b/x/structs/keeper/msg_server_guild_membership_join_proxy.go index a000365..49fe948 100644 --- a/x/structs/keeper/msg_server_guild_membership_join_proxy.go +++ b/x/structs/keeper/msg_server_guild_membership_join_proxy.go @@ -31,11 +31,11 @@ func (k msgServer) GuildMembershipJoinProxy(goCtx context.Context, msg *types.Ms } // Decode the PubKey from hex Encoding - fmt.Println("Encoding string:", msg.ProofPubKey) + k.logger.Info("Guild Join Proxy", "encodingString", msg.ProofPubKey) decodedProofPubKey, decodeErr := hex.DecodeString(msg.ProofPubKey) if decodeErr != nil { - fmt.Println("Error decoding string:", decodeErr) + k.logger.Error("Guild Join Proxy Public Key", "decodingError", decodeErr) } // Convert provided pub key into a bech32 string (i.e., an address) @@ -73,7 +73,7 @@ func (k msgServer) GuildMembershipJoinProxy(goCtx context.Context, msg *types.Ms // Decode the Signature from Hex Encoding decodedProofSignature, decodeErr := hex.DecodeString(msg.ProofSignature) if decodeErr != nil { - fmt.Println("Error decoding string:", decodeErr) + k.logger.Error("Guild Join Proxy Signature", "decodingError", decodeErr) } // Proof needs to only be 64 characters. Some systems provide a checksum bit on the end that ruins it all diff --git a/x/structs/keeper/msg_server_reactor_begin_migration.go b/x/structs/keeper/msg_server_reactor_begin_migration.go new file mode 100644 index 0000000..8457137 --- /dev/null +++ b/x/structs/keeper/msg_server_reactor_begin_migration.go @@ -0,0 +1,88 @@ +package keeper + +import ( + "context" + "time" + //"cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" + sdkerrors "cosmossdk.io/errors" + "structs/x/structs/types" + staking "github.com/cosmos/cosmos-sdk/x/staking/types" +) + +func (k msgServer) ReactorBeginMigration(goCtx context.Context, msg *types.MsgReactorBeginMigration) (*types.MsgReactorBeginMigrationResponse, error) { + ctx := sdk.UnwrapSDKContext(goCtx) + // Add an Active Address record to the + // indexer for UI requirements + k.AddressEmitActivity(ctx, msg.Creator) + + // Load the player related to the specified address + // Normally the address specified should be the PrimaryAddress + player, err := k.GetPlayerCacheFromAddress(ctx, msg.DelegatorAddress) + if err != nil { + return &types.MsgReactorBeginMigrationResponse{}, err + } + + // Check if msg.Creator has PermissionAssets on the Address and Account + err = player.CanBeAdministratedBy(msg.Creator, types.PermissionAssets) + if err != nil { + return &types.MsgReactorBeginMigrationResponse{}, err + } + + valSrcAddr, valSrcErr := sdk.ValAddressFromBech32(msg.ValidatorSrcAddress) + if valSrcErr != nil { + return &types.MsgReactorBeginMigrationResponse{}, sdkerrors.Wrapf(types.ErrReactorBeginMigration, "invalid validator address: %s", valSrcErr) + } + + valDstAddr, valDstErr := sdk.ValAddressFromBech32(msg.ValidatorDstAddress) + if valDstErr != nil { + return &types.MsgReactorBeginMigrationResponse{}, sdkerrors.Wrapf(types.ErrReactorBeginMigration, "invalid validator address: %s", valDstErr) + } + + delegatorAddress, delegatorAddressErr := sdk.AccAddressFromBech32(msg.DelegatorAddress) + if delegatorAddressErr != nil { + return &types.MsgReactorBeginMigrationResponse{}, sdkerrors.Wrapf(types.ErrReactorBeginMigration, "invalid delegator address: %s", delegatorAddressErr) + } + + if !msg.Amount.IsValid() || !msg.Amount.Amount.IsPositive() { + return &types.MsgReactorBeginMigrationResponse{}, sdkerrors.Wrapf(types.ErrReactorBeginMigration, "invalid delegation amount") + } + + shares, err := k.stakingKeeper.ValidateUnbondAmount( + ctx, delegatorAddress, valSrcAddr, msg.Amount.Amount, + ) + if err != nil { + return &types.MsgReactorBeginMigrationResponse{}, err + } + + bondDenom, err := k.stakingKeeper.BondDenom(ctx) + if err != nil { + return &types.MsgReactorBeginMigrationResponse{}, err + } + + if msg.Amount.Denom != bondDenom { + return &types.MsgReactorBeginMigrationResponse{}, sdkerrors.Wrapf(types.ErrReactorBeginMigration, "invalid coin denomination: got %s, expected %s", msg.Amount.Denom, bondDenom) + } + + completionTime, err := k.stakingKeeper.BeginRedelegation( + ctx, delegatorAddress, valSrcAddr, valDstAddr, shares, + ) + if err != nil { + return &types.MsgReactorBeginMigrationResponse{}, err + } + + + + ctx.EventManager().EmitEvents(sdk.Events{ + sdk.NewEvent( + staking.EventTypeRedelegate, + sdk.NewAttribute(staking.AttributeKeySrcValidator, msg.ValidatorSrcAddress), + sdk.NewAttribute(staking.AttributeKeyDstValidator, msg.ValidatorDstAddress), + sdk.NewAttribute(staking.AttributeKeyDelegator, msg.DelegatorAddress), + sdk.NewAttribute(sdk.AttributeKeyAmount, msg.Amount.String()), + sdk.NewAttribute(staking.AttributeKeyCompletionTime, completionTime.Format(time.RFC3339)), + ), + }) + + return &types.MsgReactorBeginMigrationResponse{CompletionTime: completionTime,}, nil +} diff --git a/x/structs/keeper/msg_server_reactor_cancel_defusion.go b/x/structs/keeper/msg_server_reactor_cancel_defusion.go new file mode 100644 index 0000000..7b17ed5 --- /dev/null +++ b/x/structs/keeper/msg_server_reactor_cancel_defusion.go @@ -0,0 +1,151 @@ +package keeper + +import ( + "context" + //"time" + "strconv" + //"cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" + sdkerrors "cosmossdk.io/errors" + "structs/x/structs/types" + staking "github.com/cosmos/cosmos-sdk/x/staking/types" +) + +func (k msgServer) ReactorCancelDefusion(goCtx context.Context, msg *types.MsgReactorCancelDefusion) (*types.MsgReactorCancelDefusionResponse, error) { + ctx := sdk.UnwrapSDKContext(goCtx) + // Add an Active Address record to the + // indexer for UI requirements + k.AddressEmitActivity(ctx, msg.Creator) + + // Load the player related to the specified address + // Normally the address specified should be the PrimaryAddress + player, err := k.GetPlayerCacheFromAddress(ctx, msg.DelegatorAddress) + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, err + } + + // Check if msg.Creator has PermissionAssets on the Address and Account + err = player.CanBeAdministratedBy(msg.Creator, types.PermissionAssets) + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, err + } + + + delegatorAddress, delegatorAddressErr := sdk.AccAddressFromBech32(msg.DelegatorAddress) + if delegatorAddressErr != nil { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "invalid delegator address: %s", delegatorAddressErr) + } + + valAddr, valErr := sdk.ValAddressFromBech32(msg.ValidatorAddress) + if valErr != nil { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "invalid validator address: %s", valErr) + } + + if !msg.Amount.IsValid() || !msg.Amount.Amount.IsPositive() { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "invalid delegation amount") + } + + bondDenom, err := k.stakingKeeper.BondDenom(ctx) + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, err + } + + if msg.Amount.Denom != bondDenom { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "invalid coin denomination: got %s, expected %s", msg.Amount.Denom, bondDenom) + } + + if msg.CreationHeight <= 0 { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "invalid height" ) + } + + validator, err := k.stakingKeeper.GetValidator(ctx, valAddr) + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, err + } + + // In some situations, the exchange rate becomes invalid, e.g. if + // Validator loses all tokens due to slashing. In this case, + // make all future delegations invalid. + if validator.InvalidExRate() { + return &types.MsgReactorCancelDefusionResponse{}, staking.ErrDelegatorShareExRateInvalid + } + + if validator.IsJailed() { + return &types.MsgReactorCancelDefusionResponse{}, staking.ErrValidatorJailed + } + + ubd, err := k.stakingKeeper.GetUnbondingDelegation(ctx, delegatorAddress, valAddr) + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, + "unbonding delegation with delegator %s not found for validator %s", + msg.DelegatorAddress, msg.ValidatorAddress, + ) + } + + var ( + unbondEntry staking.UnbondingDelegationEntry + unbondEntryIndex int64 = -1 + ) + + for i, entry := range ubd.Entries { + if entry.CreationHeight == msg.CreationHeight { + unbondEntry = entry + unbondEntryIndex = int64(i) + break + } + } + if unbondEntryIndex == -1 { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "unbonding delegation entry is not found at block height %d", msg.CreationHeight) + } + + if unbondEntry.Balance.LT(msg.Amount.Amount) { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "amount is greater than the unbonding delegation entry balance") + } + + if unbondEntry.CompletionTime.Before(ctx.BlockTime()) { + return &types.MsgReactorCancelDefusionResponse{}, sdkerrors.Wrapf(types.ErrReactorCancelDefusion, "unbonding delegation is already processed") + } + + // delegate back the unbonding delegation amount to the validator + _, err = k.stakingKeeper.Delegate(ctx, delegatorAddress, msg.Amount.Amount, staking.Unbonding, validator, false) + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, err + } + + amount := unbondEntry.Balance.Sub(msg.Amount.Amount) + if amount.IsZero() { + ubd.RemoveEntry(unbondEntryIndex) + } else { + // update the unbondingDelegationEntryBalance and InitialBalance for ubd entry + unbondEntry.Balance = amount + unbondEntry.InitialBalance = unbondEntry.InitialBalance.Sub(msg.Amount.Amount) + ubd.Entries[unbondEntryIndex] = unbondEntry + } + + // set the unbonding delegation or remove it if there are no more entries + if len(ubd.Entries) == 0 { + err = k.stakingKeeper.RemoveUnbondingDelegation(ctx, ubd) + } else { + err = k.stakingKeeper.SetUnbondingDelegation(ctx, ubd) + } + + if err != nil { + return &types.MsgReactorCancelDefusionResponse{}, err + } + + ctx.EventManager().EmitEvent( + sdk.NewEvent( + staking.EventTypeCancelUnbondingDelegation, + sdk.NewAttribute(sdk.AttributeKeyAmount, msg.Amount.String()), + sdk.NewAttribute(staking.AttributeKeyValidator, msg.ValidatorAddress), + sdk.NewAttribute(staking.AttributeKeyDelegator, msg.DelegatorAddress), + sdk.NewAttribute(staking.AttributeKeyCreationHeight, strconv.FormatInt(msg.CreationHeight, 10)), + ), + ) + + +// + + + return &types.MsgReactorCancelDefusionResponse{}, nil +} diff --git a/x/structs/keeper/msg_server_reactor_defuse.go b/x/structs/keeper/msg_server_reactor_defuse.go new file mode 100644 index 0000000..de55f8d --- /dev/null +++ b/x/structs/keeper/msg_server_reactor_defuse.go @@ -0,0 +1,83 @@ +package keeper + +import ( + "context" + "time" + //"cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" + sdkerrors "cosmossdk.io/errors" + "structs/x/structs/types" + staking "github.com/cosmos/cosmos-sdk/x/staking/types" +) + +func (k msgServer) ReactorDefuse(goCtx context.Context, msg *types.MsgReactorDefuse) (*types.MsgReactorDefuseResponse, error) { + ctx := sdk.UnwrapSDKContext(goCtx) + // Add an Active Address record to the + // indexer for UI requirements + k.AddressEmitActivity(ctx, msg.Creator) + + // Load the player related to the specified address + // Normally the address specified should be the PrimaryAddress + player, err := k.GetPlayerCacheFromAddress(ctx, msg.DelegatorAddress) + if err != nil { + return &types.MsgReactorDefuseResponse{}, err + } + + // Check if msg.Creator has PermissionAssets on the Address and Account + err = player.CanBeAdministratedBy(msg.Creator, types.PermissionAssets) + if err != nil { + return &types.MsgReactorDefuseResponse{}, err + } + + delegatorAddress, delegatorAddressErr := sdk.AccAddressFromBech32(msg.DelegatorAddress) + if delegatorAddressErr != nil { + return &types.MsgReactorDefuseResponse{}, sdkerrors.Wrapf(types.ErrReactorDefusion, "invalid delegator address: %s", delegatorAddressErr) + } + + valAddr, valErr := sdk.ValAddressFromBech32(msg.ValidatorAddress) + if valErr != nil { + return &types.MsgReactorDefuseResponse{}, sdkerrors.Wrapf(types.ErrReactorDefusion, "invalid validator address: %s", valErr) + } + + if !msg.Amount.IsValid() || !msg.Amount.Amount.IsPositive() { + return &types.MsgReactorDefuseResponse{}, sdkerrors.Wrapf(types.ErrReactorDefusion, "invalid delegation amount") + } + + bondDenom, err := k.stakingKeeper.BondDenom(ctx) + if err != nil { + return &types.MsgReactorDefuseResponse{}, err + } + + if msg.Amount.Denom != bondDenom { + return &types.MsgReactorDefuseResponse{}, sdkerrors.Wrapf(types.ErrReactorDefusion, "invalid coin denomination: got %s, expected %s", msg.Amount.Denom, bondDenom) + } + + shares, err := k.stakingKeeper.ValidateUnbondAmount( + ctx, delegatorAddress, valAddr, msg.Amount.Amount, + ) + if err != nil { + return &types.MsgReactorDefuseResponse{}, err + } + + completionTime, undelegatedAmt, err := k.stakingKeeper.Undelegate(ctx, delegatorAddress, valAddr, shares) + if err != nil { + return &types.MsgReactorDefuseResponse{}, err + } + + undelegatedCoin := sdk.NewCoin(msg.Amount.Denom, undelegatedAmt) + + ctx.EventManager().EmitEvents(sdk.Events{ + sdk.NewEvent( + staking.EventTypeUnbond, + sdk.NewAttribute(staking.AttributeKeyValidator, msg.ValidatorAddress), + sdk.NewAttribute(staking.AttributeKeyDelegator, msg.DelegatorAddress), + sdk.NewAttribute(sdk.AttributeKeyAmount, undelegatedCoin.String()), + sdk.NewAttribute(staking.AttributeKeyCompletionTime, completionTime.Format(time.RFC3339)), + ), + }) + + return &types.MsgReactorDefuseResponse{ + CompletionTime: completionTime, + Amount: undelegatedCoin, + }, nil +} diff --git a/x/structs/keeper/msg_server_reactor_infuse.go b/x/structs/keeper/msg_server_reactor_infuse.go new file mode 100644 index 0000000..6961e6b --- /dev/null +++ b/x/structs/keeper/msg_server_reactor_infuse.go @@ -0,0 +1,80 @@ +package keeper + +import ( + "context" + //"time" + //"cosmossdk.io/math" + sdk "github.com/cosmos/cosmos-sdk/types" + sdkerrors "cosmossdk.io/errors" + "structs/x/structs/types" + staking "github.com/cosmos/cosmos-sdk/x/staking/types" +) + +func (k msgServer) ReactorInfuse(goCtx context.Context, msg *types.MsgReactorInfuse) (*types.MsgReactorInfuseResponse, error) { + ctx := sdk.UnwrapSDKContext(goCtx) + // Add an Active Address record to the + // indexer for UI requirements + k.AddressEmitActivity(ctx, msg.Creator) + + // Load the player related to the specified address + // Normally the address specified should be the PrimaryAddress + player, err := k.GetPlayerCacheFromAddress(ctx, msg.DelegatorAddress) + if err != nil { + return &types.MsgReactorInfuseResponse{}, err + } + + // Check if msg.Creator has PermissionAssets on the Address and Account + err = player.CanBeAdministratedBy(msg.Creator, types.PermissionAssets) + if err != nil { + return &types.MsgReactorInfuseResponse{}, err + } + + delegatorAddress, delegatorAddressErr := sdk.AccAddressFromBech32(msg.DelegatorAddress) + if delegatorAddressErr != nil { + return &types.MsgReactorInfuseResponse{}, sdkerrors.Wrapf(types.ErrReactorInfusion, "invalid delegator address: %s", delegatorAddressErr) + } + + valAddr, valErr := sdk.ValAddressFromBech32(msg.ValidatorAddress) + if valErr != nil { + return &types.MsgReactorInfuseResponse{}, sdkerrors.Wrapf(types.ErrReactorInfusion, "invalid validator address: %s", valErr) + } + + + if !msg.Amount.IsValid() || !msg.Amount.Amount.IsPositive() { + return &types.MsgReactorInfuseResponse{}, sdkerrors.Wrapf(types.ErrReactorInfusion, "invalid delegation amount") + } + + validator, err := k.stakingKeeper.GetValidator(ctx, valAddr) + if err != nil { + return &types.MsgReactorInfuseResponse{}, err + } + + bondDenom, err := k.stakingKeeper.BondDenom(ctx) + if err != nil { + return &types.MsgReactorInfuseResponse{}, err + } + + if msg.Amount.Denom != bondDenom { + return &types.MsgReactorInfuseResponse{}, sdkerrors.Wrapf(types.ErrReactorInfusion, "invalid coin denomination: got %s, expected %s", msg.Amount.Denom, bondDenom) + } + + // NOTE: source funds are always unbonded + newShares, err := k.stakingKeeper.Delegate(ctx, delegatorAddress, msg.Amount.Amount, staking.Unbonded, validator, true) + if err != nil { + return &types.MsgReactorInfuseResponse{}, err + } + + ctx.EventManager().EmitEvents(sdk.Events{ + sdk.NewEvent( + staking.EventTypeDelegate, + sdk.NewAttribute(staking.AttributeKeyValidator, msg.ValidatorAddress), + sdk.NewAttribute(staking.AttributeKeyDelegator, msg.DelegatorAddress), + sdk.NewAttribute(sdk.AttributeKeyAmount, msg.Amount.String()), + sdk.NewAttribute(staking.AttributeKeyNewShares, newShares.String()), + ), + }) + + + + return &types.MsgReactorInfuseResponse{}, nil +} diff --git a/x/structs/keeper/msg_server_struct_attack.go b/x/structs/keeper/msg_server_struct_attack.go index 71c48be..6b46366 100644 --- a/x/structs/keeper/msg_server_struct_attack.go +++ b/x/structs/keeper/msg_server_struct_attack.go @@ -3,8 +3,6 @@ package keeper import ( "context" - "fmt" - sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" @@ -20,7 +18,8 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac k.AddressEmitActivity(ctx, msg.Creator) structure := k.GetStructCacheFromId(ctx, msg.OperatingStructId) - fmt.Printf("\n Starting attack from %s \n", msg.OperatingStructId) + + k.logger.Info("Attack Action", "structId", msg.OperatingStructId) // Check to see if the caller has permissions to proceed permissionError := structure.CanBePlayedBy(msg.Creator) if (permissionError != nil) { @@ -61,10 +60,9 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac var targetWasPlanetary bool var targetWasOnPlanet *PlanetCache - fmt.Printf("Attack will include %d shots \n", structure.GetStructType().GetWeaponTargets(types.TechWeaponSystem_enum[msg.WeaponSystem])) // Begin taking shots. Most weapons only use a single shot but some perform multiple. for shot := uint64(0); shot < (structure.GetStructType().GetWeaponTargets(types.TechWeaponSystem_enum[msg.WeaponSystem])); shot++ { - fmt.Printf("Attack shot %d of %d against %s \n", shot, structure.GetStructType().GetWeaponTargets(types.TechWeaponSystem_enum[msg.WeaponSystem]), msg.TargetStructId[shot]) + k.logger.Info("Attack Action", "structId", msg.OperatingStructId, "shot", shot, "shots", structure.GetStructType().GetWeaponTargets(types.TechWeaponSystem_enum[msg.WeaponSystem]), "target", msg.TargetStructId[shot] ) // Load the Target Struct cache object targetStructure := k.GetStructCacheFromId(ctx, msg.TargetStructId[shot]) @@ -84,10 +82,10 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac return &types.MsgStructAttackResponse{}, targetingError } - fmt.Printf("Struct %s was targetable \n", msg.TargetStructId[shot]) + k.logger.Info("Struct Targetable", "target", msg.TargetStructId[shot]) if (targetStructure.CanEvade(&structure, types.TechWeaponSystem_enum[msg.WeaponSystem])) { - fmt.Printf("Struct %s evaded \n", msg.TargetStructId[shot]) + k.logger.Info("Struct Evaded", "target", msg.TargetStructId[shot]) structure.GetEventAttackDetail().AppendShot(targetStructure.FlushEventAttackShotDetail()) continue } @@ -95,15 +93,14 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac attackBlocked := false // Check to make sure the attack is either counterable, blockable, or both. Otherwise skip this section - fmt.Printf("Struct Blockable? %t \n", (structure.GetStructType().GetWeaponBlockable(types.TechWeaponSystem_enum[msg.WeaponSystem]))) - fmt.Printf("Struct Counterable? %t \n", (structure.GetStructType().GetWeaponCounterable(types.TechWeaponSystem_enum[msg.WeaponSystem]))) + k.logger.Info("Struct Attacker Status", "structId", structure.GetStructId(), "blockable", (structure.GetStructType().GetWeaponBlockable(types.TechWeaponSystem_enum[msg.WeaponSystem])), "counterable",(structure.GetStructType().GetWeaponCounterable(types.TechWeaponSystem_enum[msg.WeaponSystem]))) if ((structure.GetStructType().GetWeaponBlockable(types.TechWeaponSystem_enum[msg.WeaponSystem])) || (structure.GetStructType().GetWeaponCounterable(types.TechWeaponSystem_enum[msg.WeaponSystem]))) { // Check the Defenders defenderPlayer := targetStructure.GetOwner() defenders := targetStructure.GetDefenders() for _, defender := range defenders { - fmt.Printf("Defender (%s) at Location (%s) \n", defender.GetStructId(), defender.GetLocationId()) + k.logger.Info("Defender at Location", "defender", defender.GetStructId(), "locationId", defender.GetLocationId()) defender.Defender = true defender.ManualLoadOwner(defenderPlayer) @@ -112,19 +109,19 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac defenderReadinessError := defender.ReadinessCheck() if (defenderReadinessError == nil) { - fmt.Printf("Defender seems ready to defend.. \n") + k.logger.Info("Defender seems ready to defend") if (!attackBlocked && (structure.GetStructType().GetWeaponBlockable(types.TechWeaponSystem_enum[msg.WeaponSystem]))) { - fmt.Printf("Defender to attempt a block!.. \n") + k.logger.Info("Defender to attempt a block!") attackBlocked = defender.AttemptBlock(&structure, types.TechWeaponSystem_enum[msg.WeaponSystem], &targetStructure) } } if (structure.GetStructType().GetWeaponCounterable(types.TechWeaponSystem_enum[msg.WeaponSystem])) { - fmt.Printf("Defender trying to counter!.. \n") + k.logger.Info("Defender trying to counter!.. ") counterErrors := defender.CanCounterAttack(&structure) if (counterErrors == nil) { - fmt.Printf("Defender counter-attacking!.. \n") + k.logger.Info("Defender counter-attacking!") structure.TakeCounterAttackDamage(defender) } } @@ -136,18 +133,18 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac // Fun story, I'd actually forgotten this code block after writing all the other function // Turns out, my Struct wasn't attacking because I forgot the part of Attack that attacks. if (!attackBlocked && structure.IsOnline()) { - fmt.Printf("Moving forward with the attack on %s \n", msg.TargetStructId[shot]) + k.logger.Info("Moving forward with the attack", "target", msg.TargetStructId[shot]) targetStructure.TakeAttackDamage(&structure, types.TechWeaponSystem_enum[msg.WeaponSystem]) } else { - fmt.Printf("Attack against %s was blocked \n", msg.TargetStructId[shot]) + k.logger.Info("Attack against target was blocked", "target", msg.TargetStructId[shot]) } if (structure.GetStructType().GetWeaponCounterable(types.TechWeaponSystem_enum[msg.WeaponSystem])) { - fmt.Printf("Target trying to Counter now!.. \n") + k.logger.Info("Target trying to Counter now!") counterErrors := targetStructure.CanCounterAttack(&structure) if (counterErrors == nil) { - fmt.Printf("Target Countering!.. \n") + k.logger.Info("Target Countering!") structure.TakeCounterAttackDamage(&targetStructure) } } @@ -177,12 +174,11 @@ func (k msgServer) StructAttack(goCtx context.Context, msg *types.MsgStructAttac k.DischargePlayer(ctx, structure.GetOwnerId()) - fmt.Println(ctx.ExecMode()) - if (ctx.ExecMode()== sdk.ExecModeCheck) { + if (ctx.ExecMode() == sdk.ExecModeCheck) { //ctx.GasMeter().RefundGas(ctx.GasMeter().GasConsumed(), "Walkin it back") ctx.GasMeter().ConsumeGas(uint64(200000), "Messin' with the estimator") } - fmt.Println(ctx.GasMeter().String()) + k.logger.Info("Attack Transaction Gas", "gasMeter", ctx.GasMeter().String(), "execMode", ctx.ExecMode()) return &types.MsgStructAttackResponse{}, nil } diff --git a/x/structs/keeper/msg_server_struct_build_initiate.go b/x/structs/keeper/msg_server_struct_build_initiate.go index 22a1e39..66a9af1 100644 --- a/x/structs/keeper/msg_server_struct_build_initiate.go +++ b/x/structs/keeper/msg_server_struct_build_initiate.go @@ -5,7 +5,6 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" "structs/x/structs/types" - "fmt" ) /* MsgStructBuildInitiate @@ -75,10 +74,7 @@ func (k msgServer) StructBuildInitiate(goCtx context.Context, msg *types.MsgStru } - - fmt.Printf("Trying to materialized a Struct \n") - fmt.Printf("Struct Type: %s ", structType.Type) - fmt.Printf("Destination: %d", msg.Slot) + k.logger.Info("Struct Materializing", "structType", structType.Type, "ambit", msg.OperatingAmbit, "slot", msg.Slot) structure, err := k.InitiateStruct(ctx, msg.Creator, &owner, &structType, msg.OperatingAmbit, msg.Slot) if (err != nil) { return &types.MsgStructStatusResponse{}, err diff --git a/x/structs/keeper/planet.go b/x/structs/keeper/planet.go index 576db01..5f4052d 100644 --- a/x/structs/keeper/planet.go +++ b/x/structs/keeper/planet.go @@ -119,4 +119,3 @@ func (k Keeper) GetAllPlanet(ctx context.Context) (list []types.Planet) { return } - diff --git a/x/structs/keeper/planet_attribute.go b/x/structs/keeper/planet_attribute.go index 17238fb..3cc1e25 100644 --- a/x/structs/keeper/planet_attribute.go +++ b/x/structs/keeper/planet_attribute.go @@ -61,7 +61,7 @@ func (k Keeper) SetPlanetAttribute(ctx context.Context, planetAttributeId string ctxSDK := sdk.UnwrapSDKContext(ctx) _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventPlanetAttribute{&types.PlanetAttributeRecord{AttributeId: planetAttributeId, Value: amount}}) - fmt.Printf("Planet Change (Set): (%s) %d \n", planetAttributeId, amount) + k.logger.Info("Planet Change (Set)", "planetAttributeId", planetAttributeId, "amount", amount) } func (k Keeper) SetPlanetAttributeDelta(ctx context.Context, planetAttributeId string, oldAmount uint64, newAmount uint64) (amount uint64, err error) { @@ -74,7 +74,7 @@ func (k Keeper) SetPlanetAttributeDelta(ctx context.Context, planetAttributeId s amount = resetAmount + newAmount - fmt.Printf("Planet Change (Delta): (%s) %d to %d \n", planetAttributeId, oldAmount, newAmount) + k.logger.Info("Planet Change (Delta)", "planetAttributeId", planetAttributeId, "oldAmount", oldAmount, "newAmount", newAmount) k.SetPlanetAttribute(ctx, planetAttributeId, amount) return @@ -87,7 +87,7 @@ func (k Keeper) SetPlanetAttributeDecrement(ctx context.Context, planetAttribute amount = currentAmount - decrementAmount } - fmt.Printf("Planet Change (Decrement): (%s) %d \n", planetAttributeId, decrementAmount) + k.logger.Info("Planet Change (Decrement)", "planetAttributeId", planetAttributeId, "decrementAmount", decrementAmount) k.SetPlanetAttribute(ctx, planetAttributeId, amount) return @@ -98,7 +98,7 @@ func (k Keeper) SetPlanetAttributeIncrement(ctx context.Context, planetAttribute amount = currentAmount + incrementAmount - fmt.Printf("Planet Change (Increment): (%s) %d \n", planetAttributeId, incrementAmount) + k.logger.Info("Planet Change (Increment)", "planetAttributeId", planetAttributeId, "incrementAmount", incrementAmount) k.SetPlanetAttribute(ctx, planetAttributeId, amount) return diff --git a/x/structs/keeper/planet_cache.go b/x/structs/keeper/planet_cache.go index f392c89..55d96ab 100644 --- a/x/structs/keeper/planet_cache.go +++ b/x/structs/keeper/planet_cache.go @@ -8,12 +8,11 @@ import ( "structs/x/structs/types" "github.com/nethruster/go-fraction" - // Used in Randomness Orb "math/rand" "bytes" "encoding/binary" - "fmt" + ) @@ -165,7 +164,7 @@ func (k *Keeper) GetPlanetCacheFromId(ctx context.Context, planetId string) (Pla func (cache *PlanetCache) Commit() () { cache.AnyChange = false - fmt.Printf("\n Updating Planet From Cache (%s) \n", cache.PlanetId) + cache.K.logger.Info("Updating Planet From Cache","planetId",cache.PlanetId) if (cache.PlanetChanged) { cache.K.SetPlanet(cache.Ctx, cache.Planet) @@ -610,17 +609,16 @@ func (cache *PlanetCache) IsSuccessful(successRate fraction.Fraction) bool { buf := bytes.NewBuffer(uctx.BlockHeader().AppHash) binary.Read(buf, binary.BigEndian, &seed) - fmt.Printf("Checking randomness using seed %d \n", seed) - seed = seed + cache.GetOwner().GetNextNonce() - fmt.Printf("Offsetting seed with nonce to %d \n", seed) - fmt.Printf("Odds of %d in %d \n", successRate.Numerator(), successRate.Denominator()) - randomnessOrb := rand.New(rand.NewSource(seed)) + seedOffset := seed + cache.GetOwner().GetNextNonce() + randomnessOrb := rand.New(rand.NewSource(seedOffset)) min := 1 max := int(successRate.Denominator()) - fmt.Printf("Result: %t \n", (int(successRate.Numerator()) <= (randomnessOrb.Intn(max-min+1) + min))) - return (int(successRate.Numerator()) <= (randomnessOrb.Intn(max-min+1) + min)) + randomnessCheck := (int(successRate.Numerator()) <= (randomnessOrb.Intn(max-min+1) + min)) + + cache.K.logger.Info("Planetary Success-Check Randomness", "planetId", cache.GetPlanetId(), "seed", seed, "offset", cache.GetOwner().GetNextNonce(), "seedOffset", seedOffset, "numerator", successRate.Numerator(), "denominator", successRate.Denominator(), "success", randomnessCheck) + return randomnessCheck } func (cache *PlanetCache) BuildInitiateReadiness(structure *types.Struct, structType *types.StructType, ambit types.Ambit, ambitSlot uint64) (error) { @@ -736,8 +734,7 @@ func (cache *PlanetCache) MoveReadiness(structure *StructCache, ambit types.Ambi func (cache *PlanetCache) SetSlot(structure types.Struct) (err error) { - fmt.Printf(" Planet %s", cache.GetPlanetId()) - fmt.Printf(" Setting Slot: %d", structure.Slot) + cache.K.logger.Info("Planet Slot Update","planetId", cache.GetPlanetId(), "slot", structure.Slot, "ambit", structure.OperatingAmbit) if (!cache.PlanetLoaded) { cache.LoadPlanet() } diff --git a/x/structs/keeper/player_cache.go b/x/structs/keeper/player_cache.go index e6da496..74ae1ea 100644 --- a/x/structs/keeper/player_cache.go +++ b/x/structs/keeper/player_cache.go @@ -4,7 +4,6 @@ import ( "context" //"math" - "fmt" sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" @@ -119,7 +118,7 @@ func (k *Keeper) GetPlayerCacheFromAddress(ctx context.Context, address string) func (cache *PlayerCache) Commit() () { cache.AnyChange = false - fmt.Printf("\n Updating Player From Cache (%s) \n", cache.PlayerId) + cache.K.logger.Info("Updating Player From Cache","playerId",cache.PlayerId) if (cache.PlayerChanged) { cache.K.SetPlayer(cache.Ctx, cache.Player) } diff --git a/x/structs/keeper/provider.go b/x/structs/keeper/provider.go index dd2bba2..5cfb7c5 100644 --- a/x/structs/keeper/provider.go +++ b/x/structs/keeper/provider.go @@ -13,7 +13,7 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" //sdkerrors "cosmossdk.io/errors" - "fmt" + ) // GetProviderCount get the total number of provider @@ -61,24 +61,28 @@ func (k Keeper) AppendProvider(ctx context.Context, provider types.Provider) (ty // Set the Checkpoint to current block k.SetGridAttribute(ctx, GetGridAttributeIDByObjectId(types.GridAttributeType_checkpointBlock, provider.Id), uint64(ctxSDK.BlockHeight())) - // Create the Collateral Pool - fmt.Printf("Provider Collateral Pool: %s", types.ProviderCollateralPool+provider.Id) - fmt.Printf("Provider Collateral Pool: %s", authtypes.NewModuleAddress(types.ProviderCollateralPool+provider.Id)) - providerCollateralAddress := authtypes.NewModuleAddress(types.ProviderCollateralPool + provider.Id) + // Create the Collateral Pool + providerCollateralDetails := types.ProviderCollateralPool+provider.Id + providerCollateralAddress := authtypes.NewModuleAddress(providerCollateralDetails) providerCollateralAccount := k.accountKeeper.NewAccountWithAddress(ctx, providerCollateralAddress) k.accountKeeper.SetAccount(ctx, providerCollateralAccount) // Create the Earnings Pool - fmt.Printf("Provider Earnings Pool: %s", types.ProviderEarningsPool+provider.Id) - fmt.Printf("Provider Earnings Pool: %s", authtypes.NewModuleAddress(types.ProviderEarningsPool+provider.Id)) - - providerEarningsAddress := authtypes.NewModuleAddress(types.ProviderEarningsPool + provider.Id) + providerEarningsDetails := types.ProviderEarningsPool+provider.Id + providerEarningsAddress := authtypes.NewModuleAddress(providerEarningsDetails) providerEarningsAccount := k.accountKeeper.NewAccountWithAddress(ctx, providerEarningsAddress) k.accountKeeper.SetAccount(ctx, providerEarningsAccount) + k.logger.Info("Provider Created", + "providerId", provider.Id, + "collateralPoolDetails", providerCollateralDetails, + "collateralPoolAddress", providerCollateralAddress.String(), + "earningsPoolDetails", providerEarningsDetails, + "earningsPoolAddress", providerEarningsAddress.String()) + _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventProvider{Provider: &provider}) - _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventProviderAddress{&types.EventProviderAddressDetail{ProviderId: provider.Id, CollateralPool: string(providerCollateralAddress), EarningPool: string(providerEarningsAddress)}}) + _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventProviderAddress{&types.EventProviderAddressDetail{ProviderId: provider.Id, CollateralPool: providerCollateralAddress.String(), EarningPool: providerEarningsAddress.String()}}) return provider, nil } diff --git a/x/structs/keeper/provider_cache.go b/x/structs/keeper/provider_cache.go index a7031d0..a9d5e7f 100644 --- a/x/structs/keeper/provider_cache.go +++ b/x/structs/keeper/provider_cache.go @@ -6,10 +6,6 @@ import ( "structs/x/structs/types" sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" - - // Used in Randomness Orb - - "fmt" "cosmossdk.io/math" authtypes "github.com/cosmos/cosmos-sdk/x/auth/types" ) @@ -70,7 +66,7 @@ func (k *Keeper) GetProviderCacheFromId(ctx context.Context, providerId string) func (cache *ProviderCache) Commit() { cache.AnyChange = false - fmt.Printf("\n Updating Provider From Cache (%s) \n", cache.ProviderId) + cache.K.logger.Info("Updating Provider From Cache", "providerId", cache.ProviderId) if cache.ProviderChanged { cache.K.SetProvider(cache.Ctx, cache.Provider) diff --git a/x/structs/keeper/reactor_hooks.go b/x/structs/keeper/reactor_hooks.go index c917dea..521d86d 100644 --- a/x/structs/keeper/reactor_hooks.go +++ b/x/structs/keeper/reactor_hooks.go @@ -9,7 +9,6 @@ import ( "cosmossdk.io/math" - "fmt" ) /* Setup Reactor (when a validator is created) @@ -141,11 +140,10 @@ func (k Keeper) ReactorUpdateFromValidator(ctx context.Context, validatorAddress } func (k Keeper) ReactorInfusionUnbonding(ctx context.Context, unbondingId uint64) { - fmt.Printf("New Unbonding Request %d \n", unbondingId) + unbondingDelegation, err := k.stakingKeeper.GetUnbondingDelegationByUnbondingID(ctx, unbondingId) - fmt.Printf("Delegator Address: %s \n", unbondingDelegation.DelegatorAddress) - fmt.Printf("Validator Address: %s \n", unbondingDelegation.ValidatorAddress) + k.logger.Info("Unbonding Request", "unbondingId", unbondingId, "delegator", unbondingDelegation.DelegatorAddress, "validator", unbondingDelegation.ValidatorAddress) if err == nil { var playerAddress sdk.AccAddress diff --git a/x/structs/keeper/struct.go b/x/structs/keeper/struct.go index cdfed57..7bc7e16 100644 --- a/x/structs/keeper/struct.go +++ b/x/structs/keeper/struct.go @@ -12,8 +12,8 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" //sdkerrors "cosmossdk.io/errors" "structs/x/structs/types" + "strconv" - "fmt" ) @@ -139,29 +139,83 @@ func (k Keeper) GetAllStruct(ctx context.Context) (list []types.Struct) { return } +func StructDestructionQueueReadKeyPrefix(blockHeight int64) []byte { + return []byte(types.StructDestroyedQueueKey + strconv.FormatInt(blockHeight, 10) + "/") +} + +func StructDestructionQueueAddKeyPrefix(blockHeight int64) []byte { + sweepHeight := blockHeight + types.StructSweepDelay + return []byte(types.StructDestroyedQueueKey + strconv.FormatInt(sweepHeight, 10) + "/") +} func (k Keeper) AppendStructDestructionQueue(ctx context.Context, structId string) { - fmt.Printf("\n Sweep %s later", structId) - store := prefix.NewStore(runtime.KVStoreAdapter(k.storeService.OpenKVStore(ctx)), types.KeyPrefix(types.StructDestroyedQueueKey)) + k.logger.Info("Struct Sweep Queue Add", "structId", structId) + + unwrapCtx := sdk.UnwrapSDKContext(ctx) + store := prefix.NewStore(runtime.KVStoreAdapter(k.storeService.OpenKVStore(ctx)), StructDestructionQueueAddKeyPrefix(unwrapCtx.BlockHeight())) + store.Set([]byte(structId), []byte{}) } func (k Keeper) StructSweepDestroyed(ctx context.Context) { - store := prefix.NewStore(runtime.KVStoreAdapter(k.storeService.OpenKVStore(ctx)), types.KeyPrefix(types.StructDestroyedQueueKey)) + unwrapCtx := sdk.UnwrapSDKContext(ctx) + store := prefix.NewStore(runtime.KVStoreAdapter(k.storeService.OpenKVStore(ctx)), StructDestructionQueueReadKeyPrefix(unwrapCtx.BlockHeight())) iterator := storetypes.KVStorePrefixIterator(store, []byte{}) defer iterator.Close() for ; iterator.Valid(); iterator.Next() { - fmt.Printf("\n Sweeping... %s \n", string(iterator.Key())) + k.logger.Info("Struct Sweep", "structId", iterator.Key()) + // Attributes // "health": StructAttributeType_health, k.ClearStructAttribute(ctx, GetStructAttributeIDByObjectId(types.StructAttributeType_health, string(iterator.Key()) )) // "status": StructAttributeType_status, k.ClearStructAttribute(ctx, GetStructAttributeIDByObjectId(types.StructAttributeType_status, string(iterator.Key()) )) + structure, structFound := k.GetStruct(ctx, string(iterator.Key())) + if structFound { + // Location Back-Reference + switch structure.LocationType { + case types.ObjectType_planet: + planet, planetFound := k.GetPlanet(ctx, structure.LocationId) + if planetFound { + switch structure.OperatingAmbit { + case types.Ambit_water: + planet.Water[structure.Slot] = "" + case types.Ambit_land: + planet.Land[structure.Slot] = "" + case types.Ambit_air: + planet.Air[structure.Slot] = "" + case types.Ambit_space: + planet.Space[structure.Slot] = "" + } + k.SetPlanet(ctx, planet) + } + case types.ObjectType_fleet: + fleet, fleetFound := k.GetFleet(ctx, structure.LocationId) + if fleetFound { + if structure.Type == types.CommandStructTypeId { + fleet.CommandStruct = "" + } else { + switch structure.OperatingAmbit { + case types.Ambit_water: + fleet.Water[structure.Slot] = "" + case types.Ambit_land: + fleet.Land[structure.Slot] = "" + case types.Ambit_air: + fleet.Air[structure.Slot] = "" + case types.Ambit_space: + fleet.Space[structure.Slot] = "" + } + } + k.SetFleet(ctx, fleet) + } + } + } + // Object k.RemoveStruct(ctx, string(iterator.Key())) diff --git a/x/structs/keeper/struct_attribute.go b/x/structs/keeper/struct_attribute.go index 79f8be2..7e5e84b 100644 --- a/x/structs/keeper/struct_attribute.go +++ b/x/structs/keeper/struct_attribute.go @@ -67,7 +67,7 @@ func (k Keeper) SetStructAttribute(ctx context.Context, structAttributeId string ctxSDK := sdk.UnwrapSDKContext(ctx) _ = ctxSDK.EventManager().EmitTypedEvent(&types.EventStructAttribute{&types.StructAttributeRecord{AttributeId: structAttributeId, Value: amount}}) - fmt.Printf("Struct Change (Set): (%s) %d \n", structAttributeId, amount) + k.logger.Info("Struct Change (Set)", "structAttributeId", structAttributeId, "amonunt", amount) } func (k Keeper) SetStructAttributeDelta(ctx context.Context, structAttributeId string, oldAmount uint64, newAmount uint64) (amount uint64, err error) { @@ -80,7 +80,7 @@ func (k Keeper) SetStructAttributeDelta(ctx context.Context, structAttributeId s amount = resetAmount + newAmount - fmt.Printf("Struct Change (Delta): (%s) %d to %d \n", structAttributeId, oldAmount, newAmount) + k.logger.Info("Struct Change (Delta)", "structAttributeId", structAttributeId, "oldAmount", oldAmount, "newAmount", newAmount) k.SetStructAttribute(ctx, structAttributeId, amount) return @@ -93,7 +93,7 @@ func (k Keeper) SetStructAttributeDecrement(ctx context.Context, structAttribute amount = currentAmount - decrementAmount } - fmt.Printf("Struct Change (Decrement): (%s) %d \n", structAttributeId, decrementAmount) + k.logger.Info("Struct Change (Decrement)", "structAttributeId", structAttributeId, "decrementAmount", decrementAmount) k.SetStructAttribute(ctx, structAttributeId, amount) return @@ -104,7 +104,7 @@ func (k Keeper) SetStructAttributeIncrement(ctx context.Context, structAttribute amount = currentAmount + incrementAmount - fmt.Printf("Struct Change (Increment): (%s) %d \n", structAttributeId, incrementAmount) + k.logger.Info("Struct Change (Increment)", "structAttributeId", structAttributeId, "incrementAmount", incrementAmount) k.SetStructAttribute(ctx, structAttributeId, amount) return @@ -136,8 +136,6 @@ func (k Keeper) StructAttributeFlagHasOneOf(ctx context.Context, structAttribute return currentFlags&flag != 0 } - - func (k Keeper) GetStructAttributesByObject(ctx context.Context, objectId string) (types.StructAttributes) { status := k.GetStructAttribute(ctx, GetStructAttributeIDByObjectId(types.StructAttributeType_status, objectId)) return types.StructAttributes{ diff --git a/x/structs/keeper/struct_cache.go b/x/structs/keeper/struct_cache.go index 8bb0c1f..80abb9f 100644 --- a/x/structs/keeper/struct_cache.go +++ b/x/structs/keeper/struct_cache.go @@ -13,9 +13,6 @@ import ( "math/rand" "bytes" "encoding/binary" - - "fmt" - ) @@ -121,7 +118,6 @@ func (k *Keeper) InitiateStruct(ctx context.Context, creatorAddress string, owne switch structType.Category { case types.ObjectType_planet: - err := owner.GetPlanet().BuildInitiateReadiness(&structure, structType, ambit, slot) if (err != nil) { return StructCache{}, err @@ -129,19 +125,17 @@ func (k *Keeper) InitiateStruct(ctx context.Context, creatorAddress string, owne structure.LocationId = owner.GetPlanetId() structure.Slot = slot - fmt.Printf("\n Setting Location Slot for Planet: %d \n", structure.Slot) case types.ObjectType_fleet: + err := owner.GetFleet().BuildInitiateReadiness(&structure, structType, ambit, slot) + if (err != nil) { + return StructCache{}, err + } - err := owner.GetFleet().BuildInitiateReadiness(&structure, structType, ambit, slot) - if (err != nil) { - return StructCache{}, err - } - - if (structType.Type != types.CommandStruct) { - structure.Slot = slot - } + if (structType.Type != types.CommandStruct) { + structure.Slot = slot + } - structure.LocationId = owner.GetFleetId() + structure.LocationId = owner.GetFleetId() default: return StructCache{}, sdkerrors.Wrapf(types.ErrObjectNotFound, "We're not building these yet") } @@ -157,9 +151,8 @@ func (k *Keeper) InitiateStruct(ctx context.Context, creatorAddress string, owne switch structType.Category { case types.ObjectType_planet: - // Update the cross reference on the planet - fmt.Printf("\n About to Set Slot %d on %s \n", structure.Slot, owner.GetPlanet().GetPlanetId()) + k.logger.Info("Struct Set Slot", "slot", structure.Slot, "planetId", owner.GetPlanet().GetPlanetId()) err := owner.GetPlanet().SetSlot(structure) if (err != nil) { return StructCache{}, err @@ -227,7 +220,7 @@ func (k *Keeper) InitiateStruct(ctx context.Context, creatorAddress string, owne func (cache *StructCache) Commit() () { cache.AnyChange = false - fmt.Printf("\n Updating Struct From Cache (%s) \n", cache.StructId) + cache.K.logger.Info("Updating Struct From Cache","structId",cache.StructId) if (cache.StructureChanged) { cache.K.SetStruct(cache.Ctx, cache.Structure) @@ -710,17 +703,16 @@ func (cache *StructCache) IsSuccessful(successRate fraction.Fraction) bool { buf := bytes.NewBuffer(uctx.BlockHeader().AppHash) binary.Read(buf, binary.BigEndian, &seed) - fmt.Printf("Checking randomness using seed %d \n", seed) - seed = seed + cache.GetOwner().GetNextNonce() - fmt.Printf("Offsetting seed with nonce to %d \n", seed) - fmt.Printf("Odds of %d in %d \n", successRate.Numerator(), successRate.Denominator()) - randomnessOrb := rand.New(rand.NewSource(seed)) + seedOffset := seed + cache.GetOwner().GetNextNonce() + + randomnessOrb := rand.New(rand.NewSource(seedOffset)) min := 1 max := int(successRate.Denominator()) - fmt.Printf("Result: %t \n", (int(successRate.Numerator()) <= (randomnessOrb.Intn(max-min+1) + min))) + randomnessCheck := (int(successRate.Numerator()) <= (randomnessOrb.Intn(max-min+1) + min)) + cache.K.logger.Info("Struct Success-Check Randomness", "structId", cache.GetStructId(), "seed", seed, "offset", cache.GetOwner().GetNextNonce(), "seedOffset", seedOffset, "numerator", successRate.Numerator(), "denominator", successRate.Denominator(), "success", randomnessCheck) - return (int(successRate.Numerator()) <= (randomnessOrb.Intn(max-min+1) + min)) + return randomnessCheck } /* Permissions */ @@ -729,7 +721,6 @@ func (cache *StructCache) CanBePlayedBy(address string) (err error) { // Make sure the address calling this has Play permissions if (!cache.K.PermissionHasOneOf(cache.Ctx, GetAddressPermissionIDBytes(address), types.PermissionPlay)) { err = sdkerrors.Wrapf(types.ErrPermissionPlay, "Calling address (%s) has no play permissions ", address) - } callingPlayer, err := cache.K.GetPlayerCacheFromAddress(cache.Ctx, address) @@ -866,11 +857,11 @@ func (cache *StructCache) CanAttack(targetStruct *StructCache, weaponSystem type func (cache *StructCache) CanCounterAttack(attackerStruct *StructCache) (err error) { if (attackerStruct.IsDestroyed() || cache.IsDestroyed()) { - fmt.Printf("Counter Struct (%s) or Attacker Struct (%s) is already destroyed", cache.StructId, attackerStruct.StructId) + cache.K.logger.Info("Counter Struct or Attacker Struct is already destroyed", "counterStruct", cache.StructId, "target", attackerStruct.StructId) err = sdkerrors.Wrapf(types.ErrStructAction, "Counter Struct (%s) or Attacker Struct (%s) is already destroyed", cache.StructId, attackerStruct.StructId) } else { if (!cache.GetStructType().CanCounterTargetAmbit(cache.GetOperatingAmbit(), attackerStruct.GetOperatingAmbit())) { - fmt.Printf("Attacker Struct (%s) cannot be hit from Counter Struct (%s) using this weapon system", attackerStruct.StructId, cache.StructId) + cache.K.logger.Info("Attacker Struct cannot be hit from Counter Struct using this weapon system", "target", attackerStruct.StructId, "counterStruct", cache.StructId) err = sdkerrors.Wrapf(types.ErrStructAction, "Attacker Struct (%s) cannot be hit from Counter Struct (%s) using this weapon system", attackerStruct.StructId, cache.StructId) } } @@ -1087,7 +1078,8 @@ func (cache *StructCache) TakeCounterAttackDamage(counterStruct *StructCache) (d if (cache.IsDestroyed()) { return 0 } damage = counterStruct.GetStructType().GetCounterAttackDamage(cache.GetOperatingAmbit() == counterStruct.GetOperatingAmbit()) - fmt.Printf("Performing %d of counter-attack damage by %s on %s \n", damage, counterStruct.GetStructId(), cache.GetStructId()) + cache.K.logger.Info("Struct Counter-Attack","damage", damage, "counterAttacker", counterStruct.GetStructId(), "target", cache.GetStructId()) + if (damage != 0) { if (damage > cache.GetHealth()) { @@ -1103,7 +1095,7 @@ func (cache *StructCache) TakeCounterAttackDamage(counterStruct *StructCache) (d if (cache.Health == 0) { // destruction damage from the grave - fmt.Printf("Struct %s died during counter-attack", cache.GetStructId()) + cache.K.logger.Info("Struct Destroyed During Counter-Attack", "counterAttacker", counterStruct.GetStructId(), "target", cache.GetStructId()) if (cache.GetStructType().GetPostDestructionDamage() > 0) { counterStruct.TakePostDestructionDamage(cache) } @@ -1113,10 +1105,10 @@ func (cache *StructCache) TakeCounterAttackDamage(counterStruct *StructCache) (d } if (counterStruct.Defender) { - fmt.Printf("Generating a defender counter-attack record for the event \n") + cache.K.logger.Info("Generating a Defender Counter-Attack Record for the event") cache.GetEventAttackShotDetail().AppendDefenderCounter(counterStruct.StructId, damage, cache.IsDestroyed(), counterStruct.GetTypeId(), counterStruct.GetLocationType(), counterStruct.GetLocationId(), counterStruct.GetOperatingAmbit(), counterStruct.GetSlot()) } else { - fmt.Printf("Generating a target counter-attack record for the event \n") + cache.K.logger.Info("Generating a Target Counter-Attack Record for the event") cache.GetEventAttackShotDetail().AppendTargetCounter(damage, cache.IsDestroyed(), counterStruct.GetStructType().GetPassiveWeaponry()) } @@ -1257,19 +1249,6 @@ func (cache *StructCache) DestroyAndCommit() { cache.FleetChanged = true } - switch cache.GetLocationType() { - case types.ObjectType_planet: - cache.GetPlanet().ClearSlot(cache.GetOperatingAmbit(), cache.GetSlot()) - cache.PlanetChanged = true - case types.ObjectType_fleet: - if (cache.GetStructType().Type == types.CommandStruct) { - cache.GetFleet().ClearCommandStruct() - } else { - cache.GetFleet().ClearSlot(cache.GetOperatingAmbit(), cache.GetSlot()) - } - cache.FleetChanged = true - } - cache.K.AppendStructDestructionQueue(cache.Ctx, cache.StructId) cache.Commit() diff --git a/x/structs/keeper/substation_cache.go b/x/structs/keeper/substation_cache.go index a7ec9a4..94d785d 100644 --- a/x/structs/keeper/substation_cache.go +++ b/x/structs/keeper/substation_cache.go @@ -6,9 +6,6 @@ import ( //sdk "github.com/cosmos/cosmos-sdk/types" sdkerrors "cosmossdk.io/errors" "structs/x/structs/types" - - "fmt" - ) @@ -79,7 +76,7 @@ func (k *Keeper) InitiateSubstation(ctx context.Context, creatorAddress string, func (cache *SubstationCache) Commit() () { cache.AnyChange = false - fmt.Printf("\n Updating Substation From Cache (%s) \n", cache.SubstationId) + cache.K.logger.Info("Updating Substation From Cache","substationId", cache.SubstationId) if (cache.SubstationChanged) { cache.K.SetSubstation(cache.Ctx, cache.Substation) diff --git a/x/structs/types/codec.go b/x/structs/types/codec.go index ec30851..dcd8b42 100644 --- a/x/structs/types/codec.go +++ b/x/structs/types/codec.go @@ -76,6 +76,11 @@ func RegisterInterfaces(registry cdctypes.InterfaceRegistry) { registry.RegisterImplementations((*sdk.Msg)(nil), &MsgProviderGuildRevoke{},) registry.RegisterImplementations((*sdk.Msg)(nil), &MsgProviderDelete{},) + registry.RegisterImplementations((*sdk.Msg)(nil), &MsgReactorInfuse{},) + registry.RegisterImplementations((*sdk.Msg)(nil), &MsgReactorDefuse{},) + registry.RegisterImplementations((*sdk.Msg)(nil), &MsgReactorBeginMigration{},) + registry.RegisterImplementations((*sdk.Msg)(nil), &MsgReactorCancelDefusion{},) + registry.RegisterImplementations((*sdk.Msg)(nil), &MsgStructActivate{},) registry.RegisterImplementations((*sdk.Msg)(nil), &MsgStructDeactivate{},) diff --git a/x/structs/types/errors.go b/x/structs/types/errors.go index c50e313..fa5cd2d 100644 --- a/x/structs/types/errors.go +++ b/x/structs/types/errors.go @@ -68,6 +68,10 @@ var ( ErrPlanetExploration = sdkerrors.Register(ModuleName, 1711, "planet exploration failed") + ErrReactorInfusion = sdkerrors.Register(ModuleName, 2001, "Reactor Infusion Failed") + ErrReactorDefusion = sdkerrors.Register(ModuleName, 2002, "Reactor Defusion Failed") + ErrReactorBeginMigration = sdkerrors.Register(ModuleName, 2003, "Reactor Beginning Migration Failed") + ErrReactorCancelDefusion = sdkerrors.Register(ModuleName, 2004, "Reactor Canceling Defusion Failed") ErrStructBuildInitiate = sdkerrors.Register(ModuleName, 1721, "Struct build initialization failed") ErrStructBuildComplete = sdkerrors.Register(ModuleName, 1722, "Struct build completion failed") diff --git a/x/structs/types/expected_keepers.go b/x/structs/types/expected_keepers.go index 9f002d4..0239e10 100644 --- a/x/structs/types/expected_keepers.go +++ b/x/structs/types/expected_keepers.go @@ -2,7 +2,7 @@ package types import ( "context" - + "time" "cosmossdk.io/math" "cosmossdk.io/core/address" sdk "github.com/cosmos/cosmos-sdk/types" @@ -32,6 +32,15 @@ type StakingKeeper interface { SetDelegation(ctx context.Context, delegation staking.Delegation) error RemoveDelegation(ctx context.Context, delegation staking.Delegation) error + // Needed for the Join Migration + ValidateUnbondAmount(ctx context.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress, amt math.Int) (shares math.LegacyDec, err error) + BeginRedelegation(ctx context.Context, delAddr sdk.AccAddress, valSrcAddr, valDstAddr sdk.ValAddress, sharesAmount math.LegacyDec) (completionTime time.Time, err error) + + BondDenom(ctx context.Context) (string, error) + Delegate(ctx context.Context, delAddr sdk.AccAddress, bondAmt math.Int, tokenSrc staking.BondStatus, validator staking.Validator, subtractAccount bool) (newShares math.LegacyDec, err error) + Undelegate(ctx context.Context, delAddr sdk.AccAddress, valAddr sdk.ValAddress, sharesAmount math.LegacyDec) (time.Time, math.Int, error) + RemoveUnbondingDelegation(ctx context.Context, ubd staking.UnbondingDelegation) error + SetUnbondingDelegation(ctx context.Context, ubd staking.UnbondingDelegation) error } diff --git a/x/structs/types/keys.go b/x/structs/types/keys.go index 977cccc..1573790 100644 --- a/x/structs/types/keys.go +++ b/x/structs/types/keys.go @@ -45,11 +45,15 @@ const ( //Charge_Capacitance = 10.0 // This annoys me but whatever + CommandStructTypeId = 1 CommandStruct = "Command Ship" // Punishment Charge PlayerResumeCharge = 666 + // Rubble Length (blocks) + StructSweepDelay = 5 + ) var ( @@ -265,6 +269,7 @@ var Ambit_flag = map[Ambit]uint64 { var RaidStatus_enum = map[string]RaidStatus { "initiated": RaidStatus_initiated, "ongoing": RaidStatus_ongoing, + "attackerRetreated": RaidStatus_attackerRetreated, "attackerDefeated": RaidStatus_attackerDefeated, "raidSuccessful": RaidStatus_raidSuccessful, } diff --git a/x/structs/types/keys.pb.go b/x/structs/types/keys.pb.go index 3b9d3a4..b3086a4 100644 --- a/x/structs/types/keys.pb.go +++ b/x/structs/types/keys.pb.go @@ -301,27 +301,30 @@ func (Ambit) EnumDescriptor() ([]byte, []int) { type RaidStatus int32 const ( - RaidStatus_initiated RaidStatus = 0 - RaidStatus_ongoing RaidStatus = 2 - RaidStatus_attackerDefeated RaidStatus = 1 - RaidStatus_raidSuccessful RaidStatus = 3 - RaidStatus_demilitarized RaidStatus = 4 + RaidStatus_initiated RaidStatus = 0 + RaidStatus_ongoing RaidStatus = 2 + RaidStatus_attackerDefeated RaidStatus = 1 + RaidStatus_attackerRetreated RaidStatus = 5 + RaidStatus_raidSuccessful RaidStatus = 3 + RaidStatus_demilitarized RaidStatus = 4 ) var RaidStatus_name = map[int32]string{ 0: "initiated", 2: "ongoing", 1: "attackerDefeated", + 5: "attackerRetreated", 3: "raidSuccessful", 4: "demilitarized", } var RaidStatus_value = map[string]int32{ - "initiated": 0, - "ongoing": 2, - "attackerDefeated": 1, - "raidSuccessful": 3, - "demilitarized": 4, + "initiated": 0, + "ongoing": 2, + "attackerDefeated": 1, + "attackerRetreated": 5, + "raidSuccessful": 3, + "demilitarized": 4, } func (x RaidStatus) String() string { @@ -873,100 +876,101 @@ func init() { func init() { proto.RegisterFile("structs/structs/keys.proto", fileDescriptor_d2b5c851dc116405) } var fileDescriptor_d2b5c851dc116405 = []byte{ - // 1519 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x4f, 0x6f, 0x64, 0x47, - 0x11, 0x9f, 0x37, 0xe3, 0xb1, 0x3d, 0x65, 0x7b, 0xdd, 0x6e, 0x7b, 0xff, 0xb0, 0x08, 0x4b, 0x11, - 0x4a, 0x80, 0x27, 0x94, 0x80, 0xe0, 0x10, 0x45, 0x28, 0xe0, 0xf1, 0x26, 0xd1, 0x46, 0xeb, 0xdd, - 0xc5, 0x4e, 0x14, 0x89, 0x5b, 0x4f, 0xbf, 0x9a, 0xe7, 0x66, 0xde, 0xeb, 0x7a, 0x74, 0xf7, 0x1b, - 0xef, 0x70, 0xe5, 0xc2, 0x91, 0x3b, 0x1f, 0x01, 0x71, 0xe1, 0x53, 0x70, 0xcc, 0x11, 0x71, 0x42, - 0xbb, 0x5f, 0x04, 0x55, 0xf7, 0x9b, 0x19, 0x8f, 0x2d, 0x21, 0x72, 0x9a, 0x79, 0xbf, 0xea, 0xae, - 0xfa, 0x75, 0xf5, 0xaf, 0xaa, 0x1a, 0x9e, 0xfa, 0xe0, 0x5a, 0x1d, 0xfc, 0x47, 0xcb, 0xdf, 0x19, - 0x2e, 0xfc, 0x87, 0x8d, 0xa3, 0x40, 0xf2, 0xb0, 0xc3, 0x3e, 0xec, 0x7e, 0x9f, 0x9e, 0x94, 0x54, - 0x52, 0xb4, 0x7d, 0xc4, 0xff, 0xd2, 0xb2, 0xfc, 0x6f, 0x19, 0x00, 0x4d, 0x7e, 0x8f, 0x3a, 0x7c, - 0xb5, 0x68, 0x50, 0x8e, 0x60, 0x58, 0xb6, 0xa6, 0x2a, 0x44, 0x4f, 0x02, 0x6c, 0x37, 0x95, 0x5a, - 0xa0, 0x13, 0x59, 0xf7, 0xdf, 0x62, 0x10, 0x7d, 0xb9, 0x07, 0x3b, 0x0e, 0x95, 0x0e, 0xe4, 0xc4, - 0x40, 0x3e, 0x00, 0xf0, 0xed, 0xc4, 0x07, 0x15, 0x0c, 0x59, 0xb1, 0xc5, 0x0b, 0x53, 0x3c, 0x31, - 0x64, 0x9b, 0xaa, 0x2a, 0xd2, 0xc9, 0xb6, 0x2d, 0xf7, 0x61, 0xd7, 0xd8, 0x69, 0xeb, 0xf9, 0x6b, - 0x87, 0xdd, 0xa8, 0xa2, 0x70, 0xe8, 0xbd, 0xd8, 0xe5, 0xb0, 0xd3, 0x0a, 0x31, 0x88, 0x11, 0xaf, - 0x6a, 0x1c, 0xcd, 0x4d, 0x81, 0x4e, 0x80, 0x3c, 0x80, 0x91, 0x2a, 0x1d, 0x62, 0x8d, 0x36, 0x88, - 0xbd, 0xfc, 0xcf, 0x7d, 0x38, 0x2a, 0x9d, 0x29, 0xce, 0x42, 0x70, 0x66, 0xd2, 0x06, 0x8c, 0xa4, - 0x77, 0x60, 0x40, 0x0e, 0x45, 0x4f, 0xee, 0xc2, 0xd6, 0xb4, 0xc5, 0x4a, 0x64, 0xec, 0x45, 0xab, - 0x46, 0x69, 0x13, 0x16, 0xa2, 0xcf, 0x78, 0x45, 0xaa, 0x10, 0x03, 0x79, 0x08, 0x7b, 0x5d, 0x3e, - 0x5e, 0x30, 0xb0, 0xc5, 0x91, 0x1b, 0xba, 0x41, 0x27, 0x86, 0xf2, 0x11, 0x48, 0x4d, 0xd6, 0xa2, - 0x66, 0xbe, 0xe7, 0xcb, 0xdd, 0xdb, 0xf2, 0x18, 0x0e, 0x6f, 0xe1, 0xd4, 0xda, 0x20, 0x76, 0xe4, - 0x53, 0x78, 0xb4, 0x3e, 0xdc, 0x6b, 0x32, 0x36, 0xa0, 0xbb, 0x0a, 0xca, 0x05, 0xb1, 0x2b, 0x9f, - 0xc0, 0xc9, 0x3d, 0xdb, 0x67, 0xb6, 0x10, 0x23, 0x4e, 0x49, 0xe3, 0xe8, 0xcd, 0xe2, 0x25, 0x59, - 0x8d, 0x02, 0xf8, 0xbb, 0x52, 0x3e, 0x9c, 0x45, 0xd7, 0x62, 0x8f, 0xd9, 0xd8, 0x68, 0xda, 0xe7, - 0xbf, 0x0e, 0x55, 0xb1, 0x10, 0x07, 0x91, 0xc0, 0x35, 0xea, 0x59, 0xc3, 0xae, 0xc6, 0x15, 0xe9, - 0x99, 0x78, 0x90, 0xbf, 0x82, 0x07, 0xeb, 0x20, 0x31, 0x0d, 0x31, 0xf7, 0x2a, 0x18, 0x2d, 0x7a, - 0x9c, 0xdd, 0x62, 0x61, 0x55, 0x6d, 0xb4, 0xc8, 0x62, 0x12, 0xdb, 0x40, 0xb5, 0x0a, 0x58, 0x88, - 0xbe, 0x7c, 0x08, 0x47, 0xcb, 0x0c, 0x9f, 0xad, 0x72, 0x3b, 0xc8, 0x7f, 0x03, 0x27, 0xf1, 0xea, - 0xbf, 0x24, 0x63, 0xc7, 0x8b, 0x46, 0x79, 0xff, 0x02, 0xe7, 0x58, 0xb1, 0x5b, 0x5d, 0x91, 0x47, - 0xd6, 0x84, 0x80, 0xfd, 0x06, 0x5d, 0x6d, 0x3c, 0x5f, 0x22, 0x16, 0x49, 0x19, 0x35, 0xd6, 0x13, - 0x74, 0xa2, 0x9f, 0xff, 0x1a, 0x0e, 0x56, 0x1e, 0x96, 0x8c, 0x8c, 0x9d, 0x9b, 0x80, 0x89, 0x91, - 0xc3, 0x3f, 0xb4, 0xe8, 0x43, 0xda, 0x55, 0x18, 0x87, 0x9a, 0xf5, 0xc4, 0x37, 0xc0, 0x39, 0x11, - 0x83, 0xfc, 0x39, 0x48, 0x87, 0xa5, 0xf1, 0xc1, 0xc5, 0x53, 0x5d, 0x05, 0x15, 0x5a, 0xdf, 0x29, - 0xa2, 0xe9, 0x28, 0xec, 0xc3, 0xae, 0x6a, 0x98, 0xff, 0x32, 0x7c, 0x81, 0xd6, 0xc4, 0x73, 0xc5, - 0x08, 0x73, 0x9a, 0x61, 0x21, 0x06, 0xf9, 0x67, 0x30, 0x54, 0xf5, 0xc4, 0x04, 0xbe, 0x7b, 0x4b, - 0x96, 0x19, 0x8c, 0x60, 0x78, 0xa3, 0x42, 0xd4, 0x33, 0x0b, 0x42, 0x59, 0xde, 0xb4, 0x03, 0x03, - 0x65, 0x58, 0xc9, 0x23, 0x18, 0xfa, 0x46, 0x69, 0x4c, 0x9a, 0xe0, 0xc4, 0x56, 0x62, 0x98, 0x23, - 0x80, 0x53, 0xa6, 0xe8, 0x98, 0x1c, 0xc0, 0xc8, 0x58, 0x13, 0x4c, 0x4c, 0x64, 0x3c, 0x12, 0xd9, - 0x92, 0x8c, 0x2d, 0x45, 0x5f, 0x9e, 0x80, 0x50, 0x21, 0x28, 0x3d, 0x43, 0xf7, 0x0c, 0xa7, 0x18, - 0x97, 0x64, 0x52, 0xc2, 0x83, 0xb8, 0xbf, 0xd5, 0x1a, 0xbd, 0x9f, 0xb6, 0x95, 0x18, 0xc8, 0x23, - 0x38, 0x28, 0xb0, 0x36, 0x95, 0x09, 0xca, 0x99, 0x3f, 0x62, 0x21, 0xb6, 0xf2, 0x1f, 0xc3, 0x7e, - 0xaa, 0xaf, 0x2e, 0x10, 0xc0, 0xb6, 0xd2, 0xc1, 0xcc, 0x31, 0x1d, 0x58, 0x53, 0xdd, 0x54, 0x18, - 0x50, 0x64, 0xf9, 0x07, 0xb0, 0x17, 0x2b, 0x65, 0xcd, 0x28, 0xe5, 0x89, 0xf5, 0x13, 0x0b, 0x40, - 0xdd, 0xa8, 0x85, 0xc8, 0xf2, 0xbf, 0x66, 0x70, 0x9c, 0x94, 0xbe, 0x59, 0x2b, 0x00, 0xdb, 0xd7, - 0xa8, 0xaa, 0x70, 0x9d, 0x2a, 0xdc, 0x47, 0x37, 0x22, 0x63, 0x8d, 0x4d, 0x58, 0x59, 0x51, 0xc3, - 0xe3, 0xd8, 0x02, 0xa2, 0x52, 0xd6, 0xe0, 0x2b, 0x87, 0x17, 0xc6, 0xa2, 0x18, 0xc8, 0xc7, 0x70, - 0xbc, 0x01, 0x5f, 0xe2, 0x94, 0x0d, 0x5b, 0x2c, 0x7c, 0xee, 0x2a, 0xa8, 0x03, 0x16, 0x57, 0x31, - 0xf8, 0x73, 0x5b, 0xe0, 0x1b, 0x31, 0x64, 0x9e, 0x61, 0xd1, 0x60, 0xaa, 0x9e, 0xed, 0xfc, 0xdf, - 0x03, 0x38, 0x4e, 0x07, 0xde, 0x64, 0x77, 0x0c, 0x87, 0x09, 0x56, 0x6e, 0x71, 0x75, 0x6d, 0x30, - 0x36, 0xa2, 0xef, 0xc1, 0x43, 0x87, 0x8d, 0x32, 0xee, 0x25, 0x86, 0x1b, 0x72, 0xb3, 0xdf, 0xb6, - 0xca, 0x06, 0x2e, 0xcd, 0x4c, 0x7e, 0x1f, 0x1e, 0x17, 0x38, 0x45, 0xeb, 0xcd, 0x1c, 0xcf, 0x95, - 0xb5, 0x64, 0x57, 0xc6, 0xbe, 0xcc, 0xe1, 0x03, 0x4d, 0xe4, 0x0a, 0x63, 0xf9, 0x32, 0xbe, 0xa8, - 0x68, 0xa2, 0xaa, 0xe4, 0xf4, 0xae, 0xa3, 0x81, 0xfc, 0x19, 0xfc, 0xb4, 0xa2, 0x9b, 0x57, 0x6e, - 0x62, 0xc2, 0x58, 0x55, 0x95, 0xf1, 0xc1, 0x68, 0xff, 0x9c, 0x0b, 0x57, 0x63, 0x13, 0xe8, 0x5e, - 0xe8, 0x2d, 0xf9, 0x31, 0xfc, 0x52, 0x15, 0x73, 0x65, 0x35, 0x16, 0x2f, 0xbe, 0xcb, 0xce, 0xa1, - 0xfc, 0x15, 0x7c, 0xfc, 0xff, 0xc4, 0xea, 0x34, 0x73, 0xa9, 0x02, 0xbe, 0x6c, 0x6b, 0x74, 0x8a, - 0x3b, 0xee, 0xb6, 0xfc, 0x14, 0x3e, 0xf9, 0x8e, 0xbb, 0x9f, 0xa1, 0xa5, 0x9a, 0x93, 0x40, 0x4e, - 0xec, 0xc8, 0xf7, 0xe0, 0x07, 0xc4, 0x9b, 0x55, 0xf5, 0xa5, 0xaa, 0x6b, 0x63, 0xcb, 0x4e, 0x3d, - 0x2b, 0x82, 0xbb, 0xf2, 0x27, 0xf0, 0xfe, 0xf2, 0x68, 0xaf, 0xfe, 0xe7, 0xd2, 0x11, 0xeb, 0x7b, - 0x2d, 0x85, 0x4b, 0x65, 0x0a, 0x01, 0xf9, 0x27, 0x20, 0x02, 0xea, 0xeb, 0x6f, 0x50, 0x35, 0x64, - 0xaf, 0x16, 0x3e, 0x60, 0xcd, 0x9a, 0x6f, 0x9c, 0xa9, 0x95, 0x5b, 0x24, 0x58, 0xf4, 0xf8, 0xae, - 0x3d, 0x6a, 0xb2, 0xc5, 0x1a, 0xcc, 0xf2, 0x31, 0x1c, 0xad, 0xf7, 0x9e, 0x93, 0x0d, 0x8e, 0x2a, - 0x5e, 0x69, 0x69, 0x03, 0x4a, 0xe2, 0x2d, 0x5b, 0x53, 0xc4, 0x2a, 0xdb, 0x87, 0xdd, 0xd6, 0x76, - 0x5f, 0xfd, 0xbc, 0x05, 0xc9, 0x3e, 0xce, 0x62, 0x01, 0xa5, 0x6d, 0x6e, 0xc1, 0xf5, 0x69, 0x69, - 0x13, 0x13, 0x3d, 0xe6, 0x9f, 0xf6, 0xad, 0xb0, 0x8c, 0x57, 0x2e, 0xbd, 0xad, 0xd0, 0x7e, 0x6c, - 0xa2, 0xb1, 0xbe, 0x2f, 0x5b, 0x2b, 0x06, 0xdc, 0x09, 0x3d, 0x56, 0xd3, 0x67, 0xd8, 0x8d, 0xbb, - 0xad, 0xfc, 0x4f, 0x19, 0x1c, 0x73, 0xdc, 0xd7, 0xca, 0xfb, 0xdb, 0x81, 0x1f, 0xc2, 0x91, 0xa5, - 0x3b, 0xa0, 0xe8, 0x71, 0x46, 0x34, 0x57, 0x03, 0xba, 0xb3, 0xe8, 0x56, 0x64, 0x5c, 0x57, 0x3e, - 0x38, 0xb2, 0xe5, 0xf9, 0x86, 0xa1, 0xcf, 0x15, 0xb0, 0xbc, 0x90, 0x4d, 0xd3, 0x60, 0x39, 0x41, - 0x2e, 0xd1, 0x93, 0x63, 0x16, 0xff, 0xc8, 0x52, 0xf6, 0xbf, 0xb6, 0x26, 0x3c, 0x8b, 0xa5, 0x81, - 0x9e, 0x4f, 0x69, 0xe9, 0x36, 0x22, 0x7a, 0x4c, 0x6b, 0x55, 0x3a, 0x17, 0xca, 0x62, 0x3b, 0x8f, - 0x9d, 0xf1, 0x08, 0x0e, 0xbc, 0x29, 0xed, 0xea, 0xca, 0x45, 0x3f, 0x36, 0x23, 0x57, 0x53, 0xcb, - 0x5d, 0xf2, 0x09, 0x9c, 0x18, 0x9b, 0x5a, 0xf7, 0x39, 0xd5, 0x13, 0x15, 0x2e, 0xa8, 0x68, 0x2b, - 0xae, 0xfd, 0x38, 0x59, 0x63, 0x67, 0xb9, 0xa0, 0x02, 0xc5, 0x90, 0xd3, 0xd8, 0xa0, 0x33, 0x35, - 0x06, 0x74, 0x9f, 0xa3, 0xd5, 0xec, 0x2c, 0x0e, 0x53, 0x87, 0xc6, 0x4e, 0xc9, 0x69, 0x2c, 0xbe, - 0x51, 0x55, 0xe5, 0xc5, 0x4e, 0xfe, 0xf7, 0x0c, 0x1e, 0x31, 0xe9, 0xd8, 0x4b, 0x3c, 0xba, 0x39, - 0xae, 0xa8, 0x3f, 0x81, 0x13, 0x4b, 0xf7, 0x71, 0xd1, 0x93, 0xef, 0xc3, 0x7b, 0xb7, 0xca, 0xbb, - 0xb3, 0x5f, 0xa2, 0x6f, 0xc8, 0x7a, 0xfc, 0xca, 0xc5, 0x4e, 0x2c, 0x32, 0x76, 0xe0, 0x54, 0x63, - 0x8a, 0xa5, 0xe5, 0xb5, 0xd2, 0x33, 0x55, 0xa2, 0xe8, 0x73, 0x56, 0x52, 0x93, 0xbd, 0xd2, 0xca, - 0x5a, 0xa6, 0x37, 0xe0, 0xac, 0xd4, 0x64, 0x4d, 0x20, 0xb7, 0x96, 0xbb, 0xd8, 0x8a, 0x6d, 0xd6, - 0xe1, 0xb8, 0xb5, 0xec, 0x73, 0x98, 0xd7, 0xf0, 0x30, 0xde, 0xf4, 0xb2, 0x55, 0xad, 0xd8, 0x3e, - 0x02, 0x69, 0xe9, 0x2e, 0x9c, 0xb4, 0x7e, 0xa7, 0x4f, 0x89, 0x4c, 0xfe, 0x08, 0x7e, 0x78, 0xaf, - 0x92, 0xef, 0x17, 0xb2, 0xe8, 0xe7, 0x5f, 0xa7, 0x70, 0x57, 0x81, 0x9c, 0x2a, 0xf1, 0x73, 0xa5, - 0x79, 0x76, 0x18, 0xf4, 0x2c, 0x18, 0x4b, 0xf7, 0xe0, 0x34, 0x07, 0x0a, 0x8a, 0x9a, 0xe2, 0x7e, - 0xaf, 0x6c, 0xc9, 0xf3, 0x99, 0x4f, 0x11, 0x67, 0xc7, 0x58, 0x79, 0x14, 0x83, 0xfc, 0xd3, 0x4e, - 0xaf, 0x4b, 0xba, 0x17, 0x86, 0x93, 0xd0, 0xe9, 0x75, 0x13, 0x4c, 0xa3, 0x9f, 0xe2, 0x04, 0x30, - 0xb6, 0xbc, 0x34, 0xa5, 0xc8, 0xf2, 0x73, 0x78, 0xbc, 0xb1, 0x3f, 0x8d, 0x01, 0xb7, 0x22, 0x76, - 0xd7, 0xc0, 0xaa, 0x3f, 0x84, 0x3d, 0x5a, 0x0e, 0x0c, 0x2e, 0xb6, 0xdc, 0x74, 0x24, 0xf8, 0x0d, - 0xf6, 0x05, 0x5a, 0x4c, 0x93, 0xbf, 0x23, 0xb1, 0x09, 0xa6, 0x72, 0xf5, 0xb5, 0xaa, 0xaa, 0x0e, - 0x24, 0x97, 0x26, 0x57, 0x8d, 0x85, 0x69, 0xeb, 0x35, 0x18, 0xef, 0xb6, 0x52, 0xae, 0xc4, 0x35, - 0xc6, 0xaf, 0x8b, 0x93, 0xd5, 0xbb, 0x27, 0x36, 0xc7, 0xd7, 0x54, 0x19, 0xbd, 0xe0, 0x12, 0xa2, - 0x06, 0xed, 0x85, 0x72, 0x33, 0x0c, 0x89, 0x63, 0x7c, 0xc6, 0x74, 0x40, 0xc6, 0x47, 0x4f, 0x2f, - 0xa0, 0x0e, 0xe9, 0x8f, 0x7f, 0xfe, 0xcf, 0xb7, 0xa7, 0xd9, 0xb7, 0x6f, 0x4f, 0xb3, 0xff, 0xbc, - 0x3d, 0xcd, 0xfe, 0xf2, 0xee, 0xb4, 0xf7, 0xed, 0xbb, 0xd3, 0xde, 0xbf, 0xde, 0x9d, 0xf6, 0x7e, - 0xf7, 0x78, 0xf9, 0x14, 0x7f, 0xb3, 0x7a, 0x94, 0xf3, 0xe0, 0xf3, 0x93, 0xed, 0xf8, 0xde, 0xfe, - 0xc5, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x51, 0x1e, 0x7e, 0xdf, 0xb4, 0x0b, 0x00, 0x00, + // 1530 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0xcf, 0x6f, 0x24, 0x39, + 0x15, 0xee, 0xea, 0x4e, 0xe7, 0xc7, 0x4b, 0x32, 0x71, 0x9c, 0xcc, 0x0f, 0x06, 0x11, 0x69, 0x85, + 0x76, 0x81, 0x12, 0xda, 0x05, 0xc1, 0x61, 0xb5, 0x42, 0x0b, 0xe9, 0xcc, 0xee, 0x6a, 0x56, 0x93, + 0x99, 0xa1, 0xb3, 0xab, 0x95, 0xb8, 0xb9, 0x5d, 0xaf, 0x2b, 0xa6, 0xab, 0xfc, 0x0a, 0xdb, 0xd5, + 0x99, 0x46, 0xdc, 0xb8, 0x70, 0xe4, 0xce, 0x9f, 0x80, 0xb8, 0xf0, 0x57, 0x70, 0xdc, 0x23, 0xe2, + 0x84, 0x66, 0xfe, 0x11, 0xf4, 0xec, 0xea, 0xee, 0xe9, 0x44, 0x42, 0x3b, 0xa7, 0xee, 0xfa, 0x6c, + 0x3f, 0x7f, 0x7e, 0xfe, 0xbe, 0xf7, 0x0c, 0x8f, 0x7d, 0x70, 0xad, 0x0e, 0xfe, 0xa3, 0xe5, 0xef, + 0x0c, 0x17, 0xfe, 0xc3, 0xc6, 0x51, 0x20, 0x79, 0xd4, 0x61, 0x1f, 0x76, 0xbf, 0x8f, 0x4f, 0x4b, + 0x2a, 0x29, 0x8e, 0x7d, 0xc4, 0xff, 0xd2, 0xb4, 0xfc, 0xef, 0x19, 0x00, 0x4d, 0x7e, 0x8f, 0x3a, + 0x7c, 0xb5, 0x68, 0x50, 0xee, 0xc1, 0xb0, 0x6c, 0x4d, 0x55, 0x88, 0x9e, 0x04, 0xd8, 0x6e, 0x2a, + 0xb5, 0x40, 0x27, 0xb2, 0xee, 0xbf, 0xc5, 0x20, 0xfa, 0x72, 0x1f, 0x76, 0x1c, 0x2a, 0x1d, 0xc8, + 0x89, 0x81, 0xbc, 0x07, 0xe0, 0xdb, 0x89, 0x0f, 0x2a, 0x18, 0xb2, 0x62, 0x8b, 0x27, 0xa6, 0xfd, + 0xc4, 0x90, 0xc7, 0x54, 0x55, 0x91, 0x4e, 0x63, 0xdb, 0xf2, 0x00, 0x76, 0x8d, 0x9d, 0xb6, 0x9e, + 0xbf, 0x76, 0x38, 0x8c, 0x2a, 0x0a, 0x87, 0xde, 0x8b, 0x5d, 0xde, 0x76, 0x5a, 0x21, 0x06, 0xb1, + 0xc7, 0xb3, 0x1a, 0x47, 0x73, 0x53, 0xa0, 0x13, 0x20, 0x0f, 0x61, 0x4f, 0x95, 0x0e, 0xb1, 0x46, + 0x1b, 0xc4, 0x7e, 0xfe, 0x97, 0x3e, 0x1c, 0x97, 0xce, 0x14, 0xe7, 0x21, 0x38, 0x33, 0x69, 0x03, + 0x46, 0xd2, 0x3b, 0x30, 0x20, 0x87, 0xa2, 0x27, 0x77, 0x61, 0x6b, 0xda, 0x62, 0x25, 0x32, 0x8e, + 0xa2, 0x55, 0xa3, 0xb4, 0x09, 0x0b, 0xd1, 0x67, 0xbc, 0x22, 0x55, 0x88, 0x81, 0x3c, 0x82, 0xfd, + 0x2e, 0x1f, 0xcf, 0x18, 0xd8, 0xe2, 0x9d, 0x1b, 0xba, 0x41, 0x27, 0x86, 0xf2, 0x01, 0x48, 0x4d, + 0xd6, 0xa2, 0x66, 0xbe, 0x17, 0xcb, 0xd5, 0xdb, 0xf2, 0x04, 0x8e, 0xde, 0xc2, 0xa9, 0xb5, 0x41, + 0xec, 0xc8, 0xc7, 0xf0, 0x60, 0x7d, 0xb8, 0x97, 0x64, 0x6c, 0x40, 0x77, 0x15, 0x94, 0x0b, 0x62, + 0x57, 0x3e, 0x82, 0xd3, 0x3b, 0x63, 0x9f, 0xd9, 0x42, 0xec, 0x71, 0x4a, 0x1a, 0x47, 0xaf, 0x16, + 0xcf, 0xc9, 0x6a, 0x14, 0xc0, 0xdf, 0x95, 0xf2, 0xe1, 0x3c, 0x86, 0x16, 0xfb, 0xcc, 0xc6, 0xc6, + 0xa1, 0x03, 0xfe, 0xeb, 0x50, 0x15, 0x0b, 0x71, 0x18, 0x09, 0x5c, 0xa3, 0x9e, 0x35, 0x1c, 0x6a, + 0x54, 0x91, 0x9e, 0x89, 0x7b, 0xf9, 0x0b, 0xb8, 0xb7, 0xde, 0x24, 0xa6, 0x21, 0xe6, 0x5e, 0x05, + 0xa3, 0x45, 0x8f, 0xb3, 0x5b, 0x2c, 0xac, 0xaa, 0x8d, 0x16, 0x59, 0x4c, 0x62, 0x1b, 0xa8, 0x56, + 0x01, 0x0b, 0xd1, 0x97, 0xf7, 0xe1, 0x78, 0x99, 0xe1, 0xf3, 0x55, 0x6e, 0x07, 0xf9, 0x6f, 0xe0, + 0x34, 0x5e, 0xfd, 0x97, 0x64, 0xec, 0x68, 0xd1, 0x28, 0xef, 0x9f, 0xe1, 0x1c, 0x2b, 0x0e, 0xab, + 0x2b, 0xf2, 0xc8, 0x9a, 0x10, 0x70, 0xd0, 0xa0, 0xab, 0x8d, 0xe7, 0x4b, 0xc4, 0x22, 0x29, 0xa3, + 0xc6, 0x7a, 0x82, 0x4e, 0xf4, 0xf3, 0x5f, 0xc3, 0xe1, 0x2a, 0xc2, 0x92, 0x91, 0xb1, 0x73, 0x13, + 0x30, 0x31, 0x72, 0xf8, 0x87, 0x16, 0x7d, 0x48, 0xab, 0x0a, 0xe3, 0x50, 0xb3, 0x9e, 0xf8, 0x06, + 0x38, 0x27, 0x62, 0x90, 0x3f, 0x05, 0xe9, 0xb0, 0x34, 0x3e, 0xb8, 0x78, 0xaa, 0xab, 0xa0, 0x42, + 0xeb, 0x3b, 0x45, 0x34, 0x1d, 0x85, 0x03, 0xd8, 0x55, 0x0d, 0xf3, 0x5f, 0x6e, 0x5f, 0xa0, 0x35, + 0xf1, 0x5c, 0x71, 0x87, 0x39, 0xcd, 0xb0, 0x10, 0x83, 0xfc, 0x33, 0x18, 0xaa, 0x7a, 0x62, 0x02, + 0xdf, 0xbd, 0x25, 0xcb, 0x0c, 0xf6, 0x60, 0x78, 0xa3, 0x42, 0xd4, 0x33, 0x0b, 0x42, 0x59, 0x5e, + 0xb4, 0x03, 0x03, 0x65, 0x58, 0xc9, 0x7b, 0x30, 0xf4, 0x8d, 0xd2, 0x98, 0x34, 0xc1, 0x89, 0xad, + 0xc4, 0x30, 0xff, 0x13, 0x80, 0x53, 0xa6, 0xe8, 0x98, 0x1c, 0xc2, 0x9e, 0xb1, 0x26, 0x98, 0x98, + 0xc8, 0x78, 0x24, 0xb2, 0x25, 0x19, 0x5b, 0x8a, 0xbe, 0x3c, 0x05, 0xa1, 0x42, 0x50, 0x7a, 0x86, + 0xee, 0x09, 0x4e, 0x31, 0x4e, 0xc9, 0x38, 0xd7, 0x4b, 0x74, 0x8c, 0xc1, 0x25, 0x78, 0x28, 0x25, + 0xdc, 0x8b, 0x61, 0x5b, 0xad, 0xd1, 0xfb, 0x69, 0x5b, 0x89, 0x81, 0x3c, 0x86, 0xc3, 0x02, 0x6b, + 0x53, 0x99, 0xa0, 0x9c, 0xf9, 0x23, 0x16, 0x62, 0x2b, 0xff, 0x31, 0x1c, 0x24, 0xdb, 0x75, 0xfb, + 0x03, 0x6c, 0x2b, 0x1d, 0xcc, 0x1c, 0x53, 0x1e, 0x34, 0xd5, 0x4d, 0x85, 0x01, 0x45, 0x96, 0x7f, + 0x00, 0xfb, 0xd1, 0x40, 0x6b, 0xa2, 0x29, 0x7d, 0x2c, 0xab, 0xe8, 0x0b, 0x75, 0xa3, 0x16, 0x22, + 0xcb, 0xff, 0x96, 0xc1, 0x49, 0x32, 0xc0, 0xa6, 0x85, 0x00, 0xb6, 0xaf, 0x51, 0x55, 0xe1, 0x3a, + 0x19, 0xdf, 0xc7, 0x30, 0x22, 0x63, 0xe9, 0x4d, 0x58, 0x70, 0x51, 0xda, 0xa3, 0x58, 0x19, 0xa2, + 0x80, 0xd6, 0xe0, 0x0b, 0x87, 0x97, 0xc6, 0xa2, 0x18, 0xc8, 0x87, 0x70, 0xb2, 0x01, 0x8f, 0x71, + 0xca, 0x03, 0x5b, 0xec, 0x07, 0x2e, 0x36, 0xa8, 0x03, 0x16, 0x57, 0x71, 0xf3, 0xa7, 0xb6, 0xc0, + 0x57, 0x62, 0xc8, 0x3c, 0xc3, 0xa2, 0xc1, 0x64, 0xaa, 0xed, 0xfc, 0x3f, 0x03, 0x38, 0x49, 0x07, + 0xde, 0x64, 0x77, 0x02, 0x47, 0x09, 0x56, 0x6e, 0x71, 0x75, 0x6d, 0x30, 0xd6, 0xa7, 0xef, 0xc1, + 0x7d, 0x87, 0x8d, 0x32, 0xee, 0x39, 0x86, 0x1b, 0x72, 0xb3, 0xdf, 0xb6, 0xca, 0x06, 0x76, 0x6c, + 0x26, 0xbf, 0x0f, 0x0f, 0x0b, 0x9c, 0xa2, 0xf5, 0x66, 0x8e, 0x17, 0xca, 0x5a, 0xb2, 0xab, 0xc1, + 0xbe, 0xcc, 0xe1, 0x03, 0x4d, 0xe4, 0x0a, 0x63, 0xf9, 0x32, 0xbe, 0xa8, 0x68, 0xa2, 0xaa, 0x14, + 0xf4, 0x76, 0xa0, 0x81, 0xfc, 0x19, 0xfc, 0xb4, 0xa2, 0x9b, 0x17, 0x6e, 0x62, 0xc2, 0x48, 0x55, + 0x95, 0xf1, 0xc1, 0x68, 0xff, 0x94, 0xfd, 0xac, 0xb1, 0x09, 0x74, 0x67, 0xeb, 0x2d, 0xf9, 0x31, + 0xfc, 0x52, 0x15, 0x73, 0x65, 0x35, 0x16, 0xcf, 0xde, 0x65, 0xe5, 0x50, 0xfe, 0x0a, 0x3e, 0xfe, + 0x2e, 0x7b, 0x75, 0x9a, 0x19, 0xab, 0x80, 0xcf, 0xdb, 0x1a, 0x9d, 0xe2, 0x42, 0xbc, 0x2d, 0x3f, + 0x85, 0x4f, 0xde, 0x71, 0xf5, 0x13, 0xb4, 0x54, 0x73, 0x12, 0xc8, 0x89, 0x1d, 0xf9, 0x1e, 0xfc, + 0x80, 0x78, 0xb1, 0xaa, 0xbe, 0x54, 0x75, 0x6d, 0x6c, 0xd9, 0xa9, 0x67, 0x45, 0x70, 0x57, 0xfe, + 0x04, 0xde, 0x5f, 0x1e, 0xed, 0xc5, 0xff, 0x9d, 0xba, 0xc7, 0xfa, 0x5e, 0x4b, 0x61, 0xac, 0x4c, + 0x21, 0x20, 0xff, 0x04, 0x44, 0x40, 0x7d, 0xfd, 0x0d, 0xaa, 0x86, 0xec, 0xd5, 0xc2, 0x07, 0xac, + 0x59, 0xf3, 0x8d, 0x33, 0xb5, 0x72, 0x8b, 0x04, 0x8b, 0x1e, 0xdf, 0xb5, 0x47, 0x4d, 0xb6, 0x58, + 0x83, 0x59, 0x3e, 0x82, 0xe3, 0xf5, 0xda, 0x0b, 0xb2, 0xc1, 0x51, 0xc5, 0x33, 0x2d, 0x6d, 0x40, + 0x49, 0xbc, 0x65, 0x6b, 0x8a, 0x68, 0xbe, 0x03, 0xd8, 0x6d, 0x6d, 0xf7, 0xd5, 0xcf, 0x5b, 0x90, + 0x1c, 0xe3, 0x3c, 0x1a, 0x28, 0x2d, 0x73, 0x0b, 0xb6, 0xad, 0xa5, 0x4d, 0x4c, 0xf4, 0x98, 0x7f, + 0x5a, 0xb7, 0xc2, 0x32, 0x9e, 0xb9, 0x8c, 0xb6, 0x42, 0xfb, 0xb1, 0xb6, 0x46, 0x83, 0x8f, 0x5b, + 0x2b, 0x06, 0x5c, 0x20, 0x3d, 0x56, 0xd3, 0x27, 0xd8, 0x75, 0xc1, 0xad, 0xfc, 0xcf, 0x19, 0x9c, + 0xf0, 0xbe, 0x2f, 0x95, 0xf7, 0x6f, 0x6f, 0x7c, 0x1f, 0x8e, 0x2d, 0xdd, 0x02, 0x45, 0x8f, 0x33, + 0xa2, 0xd9, 0x0d, 0xe8, 0xce, 0x63, 0x58, 0x91, 0xb1, 0xaf, 0x7c, 0x70, 0x64, 0xcb, 0x8b, 0x8d, + 0x81, 0x3e, 0x3b, 0x60, 0x79, 0x21, 0x9b, 0x43, 0x83, 0x65, 0x63, 0x19, 0xa3, 0x27, 0xc7, 0x2c, + 0xfe, 0x99, 0xa5, 0xec, 0x7f, 0x6d, 0x4d, 0x78, 0x12, 0xad, 0x81, 0x9e, 0x4f, 0x69, 0xe9, 0x6d, + 0x44, 0xf4, 0x98, 0xd6, 0xca, 0x3a, 0x97, 0xca, 0x62, 0x3b, 0x8f, 0x05, 0xf3, 0x18, 0x0e, 0xbd, + 0x29, 0xed, 0xea, 0xca, 0x45, 0x3f, 0x16, 0x23, 0x57, 0x53, 0xcb, 0xc5, 0xf3, 0x11, 0x9c, 0x1a, + 0x9b, 0x2a, 0xfa, 0x05, 0xd5, 0x13, 0x15, 0x2e, 0xa9, 0x68, 0x2b, 0xf6, 0x7e, 0x6c, 0xb8, 0xb1, + 0xb2, 0x5c, 0x52, 0x81, 0x62, 0xc8, 0x69, 0x6c, 0xd0, 0x99, 0x1a, 0x03, 0xba, 0xcf, 0xd1, 0x6a, + 0x0e, 0x16, 0x7b, 0xac, 0x43, 0x63, 0xa7, 0xe4, 0x34, 0x16, 0xdf, 0xa8, 0xaa, 0xf2, 0x62, 0x27, + 0xff, 0x47, 0x06, 0x0f, 0x98, 0x74, 0xac, 0x25, 0x1e, 0xdd, 0x1c, 0x57, 0xd4, 0x1f, 0xc1, 0xa9, + 0xa5, 0xbb, 0xb8, 0xe8, 0xc9, 0xf7, 0xe1, 0xbd, 0xb7, 0xec, 0xdd, 0x8d, 0x8f, 0xd1, 0x37, 0x64, + 0x3d, 0x7e, 0xe5, 0x62, 0x29, 0x16, 0x19, 0x07, 0x70, 0xaa, 0x31, 0xc5, 0x72, 0xe4, 0xa5, 0xd2, + 0x33, 0x55, 0xa2, 0xe8, 0x73, 0x56, 0x52, 0x91, 0xbd, 0xd2, 0xca, 0x5a, 0xa6, 0x37, 0xe0, 0xac, + 0xd4, 0x64, 0x4d, 0x20, 0xb7, 0x96, 0xbb, 0xd8, 0x8a, 0x65, 0xd6, 0xe1, 0xa8, 0xb5, 0x1c, 0x73, + 0x98, 0xd7, 0x70, 0x3f, 0xde, 0xf4, 0xb2, 0x54, 0xad, 0xd8, 0x3e, 0x00, 0x69, 0xe9, 0x36, 0x9c, + 0xb4, 0x7e, 0xab, 0x4e, 0x89, 0x4c, 0xfe, 0x08, 0x7e, 0x78, 0xc7, 0xc9, 0x77, 0x8d, 0x2c, 0xfa, + 0xf9, 0xd7, 0x69, 0xbb, 0xab, 0x40, 0x4e, 0x95, 0xf8, 0xb9, 0xd2, 0xdc, 0x3b, 0x0c, 0x7a, 0x16, + 0x8c, 0xa5, 0x3b, 0x70, 0xea, 0x03, 0x05, 0x45, 0x4d, 0x71, 0xbd, 0x57, 0xb6, 0xe4, 0xb6, 0xcd, + 0xa7, 0x88, 0xbd, 0x63, 0xa4, 0x3c, 0x8a, 0x41, 0xfe, 0x69, 0xa7, 0xd7, 0x25, 0xdd, 0x4b, 0xc3, + 0x49, 0xe8, 0xf4, 0xba, 0x09, 0xa6, 0x17, 0x01, 0xc5, 0x0e, 0x60, 0x6c, 0x39, 0x36, 0xa5, 0xc8, + 0xf2, 0x0b, 0x78, 0xb8, 0xb1, 0x3e, 0xb5, 0x01, 0xb7, 0x22, 0x76, 0x7b, 0x80, 0x55, 0x7f, 0x04, + 0xfb, 0xb4, 0x6c, 0x18, 0x6c, 0xb6, 0xdc, 0x74, 0x24, 0xf8, 0x69, 0xf6, 0x05, 0x5a, 0x4c, 0x0f, + 0x82, 0x8e, 0xc4, 0x26, 0x98, 0xec, 0xea, 0x6b, 0x55, 0x55, 0x1d, 0x48, 0x2e, 0x75, 0xae, 0x1a, + 0x0b, 0xd3, 0xd6, 0x6b, 0x30, 0xde, 0x6d, 0xa5, 0x5c, 0x89, 0x6b, 0x8c, 0x1f, 0x1d, 0xa7, 0xab, + 0xe7, 0x50, 0x2c, 0x8e, 0x2f, 0xa9, 0x32, 0x7a, 0xc1, 0x16, 0xa2, 0x06, 0xed, 0xa5, 0x72, 0x33, + 0x0c, 0x89, 0x63, 0x7c, 0xdd, 0x74, 0x40, 0xc6, 0x47, 0x4f, 0x0f, 0xa3, 0x0e, 0xe9, 0x8f, 0x7e, + 0xfe, 0xaf, 0xd7, 0x67, 0xd9, 0xb7, 0xaf, 0xcf, 0xb2, 0xff, 0xbe, 0x3e, 0xcb, 0xfe, 0xfa, 0xe6, + 0xac, 0xf7, 0xed, 0x9b, 0xb3, 0xde, 0xbf, 0xdf, 0x9c, 0xf5, 0x7e, 0xf7, 0x70, 0xf9, 0x42, 0x7f, + 0xb5, 0x7a, 0xab, 0x73, 0xe3, 0xf3, 0x93, 0xed, 0xf8, 0x0c, 0xff, 0xc5, 0xff, 0x02, 0x00, 0x00, + 0xff, 0xff, 0xb2, 0x11, 0xe4, 0xdf, 0xcb, 0x0b, 0x00, 0x00, } diff --git a/x/structs/types/packet.pb.go b/x/structs/types/packet.pb.go index 472a89f..279928d 100644 --- a/x/structs/types/packet.pb.go +++ b/x/structs/types/packet.pb.go @@ -24,7 +24,6 @@ const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package type StructsPacketData struct { // Types that are valid to be assigned to Packet: - // // *StructsPacketData_NoData Packet isStructsPacketData_Packet `protobuf_oneof:"packet"` } diff --git a/x/structs/types/tx.pb.go b/x/structs/types/tx.pb.go index 6c4131d..7b05553 100644 --- a/x/structs/types/tx.pb.go +++ b/x/structs/types/tx.pb.go @@ -14,18 +14,22 @@ import ( _ "github.com/cosmos/gogoproto/gogoproto" grpc1 "github.com/cosmos/gogoproto/grpc" proto "github.com/cosmos/gogoproto/proto" + github_com_cosmos_gogoproto_types "github.com/cosmos/gogoproto/types" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" + _ "google.golang.org/protobuf/types/known/timestamppb" io "io" math "math" math_bits "math/bits" + time "time" ) // Reference imports to suppress errors if they are not otherwise used. var _ = proto.Marshal var _ = fmt.Errorf var _ = math.Inf +var _ = time.Kitchen // This is a compile-time assertion to ensure that this generated file // is compatible with the proto package it is being compiled against. @@ -3248,6 +3252,356 @@ func (m *MsgPlayerResumeResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgPlayerResumeResponse proto.InternalMessageInfo +// MsgReactorInfuse defines a SDK message for performing a delegation of coins +// from a delegator to a validator. +type MsgReactorInfuse struct { + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorAddress string `protobuf:"bytes,3,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` + Amount types.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount"` +} + +func (m *MsgReactorInfuse) Reset() { *m = MsgReactorInfuse{} } +func (m *MsgReactorInfuse) String() string { return proto.CompactTextString(m) } +func (*MsgReactorInfuse) ProtoMessage() {} +func (*MsgReactorInfuse) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{58} +} +func (m *MsgReactorInfuse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorInfuse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorInfuse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorInfuse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorInfuse.Merge(m, src) +} +func (m *MsgReactorInfuse) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorInfuse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorInfuse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorInfuse proto.InternalMessageInfo + +// MsgReactorInfuseResponse defines the Msg/Delegate response type. +type MsgReactorInfuseResponse struct { +} + +func (m *MsgReactorInfuseResponse) Reset() { *m = MsgReactorInfuseResponse{} } +func (m *MsgReactorInfuseResponse) String() string { return proto.CompactTextString(m) } +func (*MsgReactorInfuseResponse) ProtoMessage() {} +func (*MsgReactorInfuseResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{59} +} +func (m *MsgReactorInfuseResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorInfuseResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorInfuseResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorInfuseResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorInfuseResponse.Merge(m, src) +} +func (m *MsgReactorInfuseResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorInfuseResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorInfuseResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorInfuseResponse proto.InternalMessageInfo + +// MsgReactorBeginMigration defines a SDK message for performing a redelegation +// of coins from a delegator and source validator to a destination validator. +type MsgReactorBeginMigration struct { + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorSrcAddress string `protobuf:"bytes,3,opt,name=validator_src_address,json=validatorSrcAddress,proto3" json:"validator_src_address,omitempty"` + ValidatorDstAddress string `protobuf:"bytes,4,opt,name=validator_dst_address,json=validatorDstAddress,proto3" json:"validator_dst_address,omitempty"` + Amount types.Coin `protobuf:"bytes,5,opt,name=amount,proto3" json:"amount"` +} + +func (m *MsgReactorBeginMigration) Reset() { *m = MsgReactorBeginMigration{} } +func (m *MsgReactorBeginMigration) String() string { return proto.CompactTextString(m) } +func (*MsgReactorBeginMigration) ProtoMessage() {} +func (*MsgReactorBeginMigration) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{60} +} +func (m *MsgReactorBeginMigration) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorBeginMigration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorBeginMigration.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorBeginMigration) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorBeginMigration.Merge(m, src) +} +func (m *MsgReactorBeginMigration) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorBeginMigration) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorBeginMigration.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorBeginMigration proto.InternalMessageInfo + +// MsgBeginMigrationResponse defines the Msg/BeginRedelegate response type. +type MsgReactorBeginMigrationResponse struct { + CompletionTime time.Time `protobuf:"bytes,1,opt,name=completion_time,json=completionTime,proto3,stdtime" json:"completion_time"` +} + +func (m *MsgReactorBeginMigrationResponse) Reset() { *m = MsgReactorBeginMigrationResponse{} } +func (m *MsgReactorBeginMigrationResponse) String() string { return proto.CompactTextString(m) } +func (*MsgReactorBeginMigrationResponse) ProtoMessage() {} +func (*MsgReactorBeginMigrationResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{61} +} +func (m *MsgReactorBeginMigrationResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorBeginMigrationResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorBeginMigrationResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorBeginMigrationResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorBeginMigrationResponse.Merge(m, src) +} +func (m *MsgReactorBeginMigrationResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorBeginMigrationResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorBeginMigrationResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorBeginMigrationResponse proto.InternalMessageInfo + +func (m *MsgReactorBeginMigrationResponse) GetCompletionTime() time.Time { + if m != nil { + return m.CompletionTime + } + return time.Time{} +} + +// MsgReactorDefuse defines a SDK message for performing an undelegation from a +// delegate and a validator. +type MsgReactorDefuse struct { + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorAddress string `protobuf:"bytes,3,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` + Amount types.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount"` +} + +func (m *MsgReactorDefuse) Reset() { *m = MsgReactorDefuse{} } +func (m *MsgReactorDefuse) String() string { return proto.CompactTextString(m) } +func (*MsgReactorDefuse) ProtoMessage() {} +func (*MsgReactorDefuse) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{62} +} +func (m *MsgReactorDefuse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorDefuse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorDefuse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorDefuse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorDefuse.Merge(m, src) +} +func (m *MsgReactorDefuse) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorDefuse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorDefuse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorDefuse proto.InternalMessageInfo + +// MsgReactorDefuseResponse defines the Msg/Undelegate response type. +type MsgReactorDefuseResponse struct { + CompletionTime time.Time `protobuf:"bytes,1,opt,name=completion_time,json=completionTime,proto3,stdtime" json:"completion_time"` + // amount returns the amount of undelegated coins + // + // Since: cosmos-sdk 0.50 + Amount types.Coin `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount"` +} + +func (m *MsgReactorDefuseResponse) Reset() { *m = MsgReactorDefuseResponse{} } +func (m *MsgReactorDefuseResponse) String() string { return proto.CompactTextString(m) } +func (*MsgReactorDefuseResponse) ProtoMessage() {} +func (*MsgReactorDefuseResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{63} +} +func (m *MsgReactorDefuseResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorDefuseResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorDefuseResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorDefuseResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorDefuseResponse.Merge(m, src) +} +func (m *MsgReactorDefuseResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorDefuseResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorDefuseResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorDefuseResponse proto.InternalMessageInfo + +func (m *MsgReactorDefuseResponse) GetCompletionTime() time.Time { + if m != nil { + return m.CompletionTime + } + return time.Time{} +} + +func (m *MsgReactorDefuseResponse) GetAmount() types.Coin { + if m != nil { + return m.Amount + } + return types.Coin{} +} + +// MsgReactorCancelDefusion defines the SDK message for performing a cancel unbonding delegation for delegator +// +// Since: cosmos-sdk 0.46 +type MsgReactorCancelDefusion struct { + Creator string `protobuf:"bytes,1,opt,name=creator,proto3" json:"creator,omitempty"` + DelegatorAddress string `protobuf:"bytes,2,opt,name=delegator_address,json=delegatorAddress,proto3" json:"delegator_address,omitempty"` + ValidatorAddress string `protobuf:"bytes,3,opt,name=validator_address,json=validatorAddress,proto3" json:"validator_address,omitempty"` + // amount is always less than or equal to unbonding delegation entry balance + Amount types.Coin `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount"` + // creation_height is the height which the unbonding took place. + CreationHeight int64 `protobuf:"varint,5,opt,name=creation_height,json=creationHeight,proto3" json:"creation_height,omitempty"` +} + +func (m *MsgReactorCancelDefusion) Reset() { *m = MsgReactorCancelDefusion{} } +func (m *MsgReactorCancelDefusion) String() string { return proto.CompactTextString(m) } +func (*MsgReactorCancelDefusion) ProtoMessage() {} +func (*MsgReactorCancelDefusion) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{64} +} +func (m *MsgReactorCancelDefusion) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorCancelDefusion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorCancelDefusion.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorCancelDefusion) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorCancelDefusion.Merge(m, src) +} +func (m *MsgReactorCancelDefusion) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorCancelDefusion) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorCancelDefusion.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorCancelDefusion proto.InternalMessageInfo + +// MsgReactorCancelDefusionResponse +// +// Since: cosmos-sdk 0.46 +type MsgReactorCancelDefusionResponse struct { +} + +func (m *MsgReactorCancelDefusionResponse) Reset() { *m = MsgReactorCancelDefusionResponse{} } +func (m *MsgReactorCancelDefusionResponse) String() string { return proto.CompactTextString(m) } +func (*MsgReactorCancelDefusionResponse) ProtoMessage() {} +func (*MsgReactorCancelDefusionResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_38fd6c203bede659, []int{65} +} +func (m *MsgReactorCancelDefusionResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgReactorCancelDefusionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgReactorCancelDefusionResponse.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *MsgReactorCancelDefusionResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgReactorCancelDefusionResponse.Merge(m, src) +} +func (m *MsgReactorCancelDefusionResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgReactorCancelDefusionResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgReactorCancelDefusionResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgReactorCancelDefusionResponse proto.InternalMessageInfo + type MsgStructStatusResponse struct { Struct Struct `protobuf:"bytes,1,opt,name=struct,proto3" json:"struct"` } @@ -3256,7 +3610,7 @@ func (m *MsgStructStatusResponse) Reset() { *m = MsgStructStatusResponse func (m *MsgStructStatusResponse) String() string { return proto.CompactTextString(m) } func (*MsgStructStatusResponse) ProtoMessage() {} func (*MsgStructStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{58} + return fileDescriptor_38fd6c203bede659, []int{66} } func (m *MsgStructStatusResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3301,7 +3655,7 @@ func (m *MsgStructActivate) Reset() { *m = MsgStructActivate{} } func (m *MsgStructActivate) String() string { return proto.CompactTextString(m) } func (*MsgStructActivate) ProtoMessage() {} func (*MsgStructActivate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{59} + return fileDescriptor_38fd6c203bede659, []int{67} } func (m *MsgStructActivate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3353,7 +3707,7 @@ func (m *MsgStructDeactivate) Reset() { *m = MsgStructDeactivate{} } func (m *MsgStructDeactivate) String() string { return proto.CompactTextString(m) } func (*MsgStructDeactivate) ProtoMessage() {} func (*MsgStructDeactivate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{60} + return fileDescriptor_38fd6c203bede659, []int{68} } func (m *MsgStructDeactivate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3409,7 +3763,7 @@ func (m *MsgStructBuildInitiate) Reset() { *m = MsgStructBuildInitiate{} func (m *MsgStructBuildInitiate) String() string { return proto.CompactTextString(m) } func (*MsgStructBuildInitiate) ProtoMessage() {} func (*MsgStructBuildInitiate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{61} + return fileDescriptor_38fd6c203bede659, []int{69} } func (m *MsgStructBuildInitiate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3484,7 +3838,7 @@ func (m *MsgStructBuildComplete) Reset() { *m = MsgStructBuildComplete{} func (m *MsgStructBuildComplete) String() string { return proto.CompactTextString(m) } func (*MsgStructBuildComplete) ProtoMessage() {} func (*MsgStructBuildComplete) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{62} + return fileDescriptor_38fd6c203bede659, []int{70} } func (m *MsgStructBuildComplete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3550,7 +3904,7 @@ func (m *MsgStructBuildCancel) Reset() { *m = MsgStructBuildCancel{} } func (m *MsgStructBuildCancel) String() string { return proto.CompactTextString(m) } func (*MsgStructBuildCancel) ProtoMessage() {} func (*MsgStructBuildCancel) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{63} + return fileDescriptor_38fd6c203bede659, []int{71} } func (m *MsgStructBuildCancel) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3607,7 +3961,7 @@ func (m *MsgStructBuildCompleteAndStash) Reset() { *m = MsgStructBuildCo func (m *MsgStructBuildCompleteAndStash) String() string { return proto.CompactTextString(m) } func (*MsgStructBuildCompleteAndStash) ProtoMessage() {} func (*MsgStructBuildCompleteAndStash) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{64} + return fileDescriptor_38fd6c203bede659, []int{72} } func (m *MsgStructBuildCompleteAndStash) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3695,7 +4049,7 @@ func (m *MsgStructDefenseSet) Reset() { *m = MsgStructDefenseSet{} } func (m *MsgStructDefenseSet) String() string { return proto.CompactTextString(m) } func (*MsgStructDefenseSet) ProtoMessage() {} func (*MsgStructDefenseSet) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{65} + return fileDescriptor_38fd6c203bede659, []int{73} } func (m *MsgStructDefenseSet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3754,7 +4108,7 @@ func (m *MsgStructDefenseClear) Reset() { *m = MsgStructDefenseClear{} } func (m *MsgStructDefenseClear) String() string { return proto.CompactTextString(m) } func (*MsgStructDefenseClear) ProtoMessage() {} func (*MsgStructDefenseClear) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{66} + return fileDescriptor_38fd6c203bede659, []int{74} } func (m *MsgStructDefenseClear) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3809,7 +4163,7 @@ func (m *MsgStructMove) Reset() { *m = MsgStructMove{} } func (m *MsgStructMove) String() string { return proto.CompactTextString(m) } func (*MsgStructMove) ProtoMessage() {} func (*MsgStructMove) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{67} + return fileDescriptor_38fd6c203bede659, []int{75} } func (m *MsgStructMove) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3884,7 +4238,7 @@ func (m *MsgStructAttack) Reset() { *m = MsgStructAttack{} } func (m *MsgStructAttack) String() string { return proto.CompactTextString(m) } func (*MsgStructAttack) ProtoMessage() {} func (*MsgStructAttack) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{68} + return fileDescriptor_38fd6c203bede659, []int{76} } func (m *MsgStructAttack) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3948,7 +4302,7 @@ func (m *MsgStructAttackResponse) Reset() { *m = MsgStructAttackResponse func (m *MsgStructAttackResponse) String() string { return proto.CompactTextString(m) } func (*MsgStructAttackResponse) ProtoMessage() {} func (*MsgStructAttackResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{69} + return fileDescriptor_38fd6c203bede659, []int{77} } func (m *MsgStructAttackResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3986,7 +4340,7 @@ func (m *MsgStructStealthActivate) Reset() { *m = MsgStructStealthActiva func (m *MsgStructStealthActivate) String() string { return proto.CompactTextString(m) } func (*MsgStructStealthActivate) ProtoMessage() {} func (*MsgStructStealthActivate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{70} + return fileDescriptor_38fd6c203bede659, []int{78} } func (m *MsgStructStealthActivate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4038,7 +4392,7 @@ func (m *MsgStructStealthDeactivate) Reset() { *m = MsgStructStealthDeac func (m *MsgStructStealthDeactivate) String() string { return proto.CompactTextString(m) } func (*MsgStructStealthDeactivate) ProtoMessage() {} func (*MsgStructStealthDeactivate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{71} + return fileDescriptor_38fd6c203bede659, []int{79} } func (m *MsgStructStealthDeactivate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4091,7 +4445,7 @@ func (m *MsgStructGeneratorInfuse) Reset() { *m = MsgStructGeneratorInfu func (m *MsgStructGeneratorInfuse) String() string { return proto.CompactTextString(m) } func (*MsgStructGeneratorInfuse) ProtoMessage() {} func (*MsgStructGeneratorInfuse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{72} + return fileDescriptor_38fd6c203bede659, []int{80} } func (m *MsgStructGeneratorInfuse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4148,7 +4502,7 @@ func (m *MsgStructGeneratorStatusResponse) Reset() { *m = MsgStructGener func (m *MsgStructGeneratorStatusResponse) String() string { return proto.CompactTextString(m) } func (*MsgStructGeneratorStatusResponse) ProtoMessage() {} func (*MsgStructGeneratorStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{73} + return fileDescriptor_38fd6c203bede659, []int{81} } func (m *MsgStructGeneratorStatusResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4188,7 +4542,7 @@ func (m *MsgStructOreMinerComplete) Reset() { *m = MsgStructOreMinerComp func (m *MsgStructOreMinerComplete) String() string { return proto.CompactTextString(m) } func (*MsgStructOreMinerComplete) ProtoMessage() {} func (*MsgStructOreMinerComplete) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{74} + return fileDescriptor_38fd6c203bede659, []int{82} } func (m *MsgStructOreMinerComplete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4253,7 +4607,7 @@ func (m *MsgStructOreMinerStatusResponse) Reset() { *m = MsgStructOreMin func (m *MsgStructOreMinerStatusResponse) String() string { return proto.CompactTextString(m) } func (*MsgStructOreMinerStatusResponse) ProtoMessage() {} func (*MsgStructOreMinerStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{75} + return fileDescriptor_38fd6c203bede659, []int{83} } func (m *MsgStructOreMinerStatusResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4300,7 +4654,7 @@ func (m *MsgStructOreRefineryComplete) Reset() { *m = MsgStructOreRefine func (m *MsgStructOreRefineryComplete) String() string { return proto.CompactTextString(m) } func (*MsgStructOreRefineryComplete) ProtoMessage() {} func (*MsgStructOreRefineryComplete) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{76} + return fileDescriptor_38fd6c203bede659, []int{84} } func (m *MsgStructOreRefineryComplete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4365,7 +4719,7 @@ func (m *MsgStructOreRefineryStatusResponse) Reset() { *m = MsgStructOre func (m *MsgStructOreRefineryStatusResponse) String() string { return proto.CompactTextString(m) } func (*MsgStructOreRefineryStatusResponse) ProtoMessage() {} func (*MsgStructOreRefineryStatusResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{77} + return fileDescriptor_38fd6c203bede659, []int{85} } func (m *MsgStructOreRefineryStatusResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4413,7 +4767,7 @@ func (m *MsgStructStorageStash) Reset() { *m = MsgStructStorageStash{} } func (m *MsgStructStorageStash) String() string { return proto.CompactTextString(m) } func (*MsgStructStorageStash) ProtoMessage() {} func (*MsgStructStorageStash) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{78} + return fileDescriptor_38fd6c203bede659, []int{86} } func (m *MsgStructStorageStash) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4490,7 +4844,7 @@ func (m *MsgStructStorageRecall) Reset() { *m = MsgStructStorageRecall{} func (m *MsgStructStorageRecall) String() string { return proto.CompactTextString(m) } func (*MsgStructStorageRecall) ProtoMessage() {} func (*MsgStructStorageRecall) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{79} + return fileDescriptor_38fd6c203bede659, []int{87} } func (m *MsgStructStorageRecall) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4571,7 +4925,7 @@ func (m *MsgSubstationCreate) Reset() { *m = MsgSubstationCreate{} } func (m *MsgSubstationCreate) String() string { return proto.CompactTextString(m) } func (*MsgSubstationCreate) ProtoMessage() {} func (*MsgSubstationCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{80} + return fileDescriptor_38fd6c203bede659, []int{88} } func (m *MsgSubstationCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4629,7 +4983,7 @@ func (m *MsgSubstationCreateResponse) Reset() { *m = MsgSubstationCreate func (m *MsgSubstationCreateResponse) String() string { return proto.CompactTextString(m) } func (*MsgSubstationCreateResponse) ProtoMessage() {} func (*MsgSubstationCreateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{81} + return fileDescriptor_38fd6c203bede659, []int{89} } func (m *MsgSubstationCreateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4675,7 +5029,7 @@ func (m *MsgSubstationDelete) Reset() { *m = MsgSubstationDelete{} } func (m *MsgSubstationDelete) String() string { return proto.CompactTextString(m) } func (*MsgSubstationDelete) ProtoMessage() {} func (*MsgSubstationDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{82} + return fileDescriptor_38fd6c203bede659, []int{90} } func (m *MsgSubstationDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4732,7 +5086,7 @@ func (m *MsgSubstationDeleteResponse) Reset() { *m = MsgSubstationDelete func (m *MsgSubstationDeleteResponse) String() string { return proto.CompactTextString(m) } func (*MsgSubstationDeleteResponse) ProtoMessage() {} func (*MsgSubstationDeleteResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{83} + return fileDescriptor_38fd6c203bede659, []int{91} } func (m *MsgSubstationDeleteResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4771,7 +5125,7 @@ func (m *MsgSubstationAllocationConnect) Reset() { *m = MsgSubstationAll func (m *MsgSubstationAllocationConnect) String() string { return proto.CompactTextString(m) } func (*MsgSubstationAllocationConnect) ProtoMessage() {} func (*MsgSubstationAllocationConnect) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{84} + return fileDescriptor_38fd6c203bede659, []int{92} } func (m *MsgSubstationAllocationConnect) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4830,7 +5184,7 @@ func (m *MsgSubstationAllocationConnectResponse) Reset() { func (m *MsgSubstationAllocationConnectResponse) String() string { return proto.CompactTextString(m) } func (*MsgSubstationAllocationConnectResponse) ProtoMessage() {} func (*MsgSubstationAllocationConnectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{85} + return fileDescriptor_38fd6c203bede659, []int{93} } func (m *MsgSubstationAllocationConnectResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4868,7 +5222,7 @@ func (m *MsgSubstationAllocationDisconnect) Reset() { *m = MsgSubstation func (m *MsgSubstationAllocationDisconnect) String() string { return proto.CompactTextString(m) } func (*MsgSubstationAllocationDisconnect) ProtoMessage() {} func (*MsgSubstationAllocationDisconnect) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{86} + return fileDescriptor_38fd6c203bede659, []int{94} } func (m *MsgSubstationAllocationDisconnect) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4922,7 +5276,7 @@ func (m *MsgSubstationAllocationDisconnectResponse) String() string { } func (*MsgSubstationAllocationDisconnectResponse) ProtoMessage() {} func (*MsgSubstationAllocationDisconnectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{87} + return fileDescriptor_38fd6c203bede659, []int{95} } func (m *MsgSubstationAllocationDisconnectResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4961,7 +5315,7 @@ func (m *MsgSubstationPlayerConnect) Reset() { *m = MsgSubstationPlayerC func (m *MsgSubstationPlayerConnect) String() string { return proto.CompactTextString(m) } func (*MsgSubstationPlayerConnect) ProtoMessage() {} func (*MsgSubstationPlayerConnect) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{88} + return fileDescriptor_38fd6c203bede659, []int{96} } func (m *MsgSubstationPlayerConnect) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5018,7 +5372,7 @@ func (m *MsgSubstationPlayerConnectResponse) Reset() { *m = MsgSubstatio func (m *MsgSubstationPlayerConnectResponse) String() string { return proto.CompactTextString(m) } func (*MsgSubstationPlayerConnectResponse) ProtoMessage() {} func (*MsgSubstationPlayerConnectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{89} + return fileDescriptor_38fd6c203bede659, []int{97} } func (m *MsgSubstationPlayerConnectResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5056,7 +5410,7 @@ func (m *MsgSubstationPlayerDisconnect) Reset() { *m = MsgSubstationPlay func (m *MsgSubstationPlayerDisconnect) String() string { return proto.CompactTextString(m) } func (*MsgSubstationPlayerDisconnect) ProtoMessage() {} func (*MsgSubstationPlayerDisconnect) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{90} + return fileDescriptor_38fd6c203bede659, []int{98} } func (m *MsgSubstationPlayerDisconnect) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5106,7 +5460,7 @@ func (m *MsgSubstationPlayerDisconnectResponse) Reset() { *m = MsgSubsta func (m *MsgSubstationPlayerDisconnectResponse) String() string { return proto.CompactTextString(m) } func (*MsgSubstationPlayerDisconnectResponse) ProtoMessage() {} func (*MsgSubstationPlayerDisconnectResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{91} + return fileDescriptor_38fd6c203bede659, []int{99} } func (m *MsgSubstationPlayerDisconnectResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5145,7 +5499,7 @@ func (m *MsgSubstationPlayerMigrate) Reset() { *m = MsgSubstationPlayerM func (m *MsgSubstationPlayerMigrate) String() string { return proto.CompactTextString(m) } func (*MsgSubstationPlayerMigrate) ProtoMessage() {} func (*MsgSubstationPlayerMigrate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{92} + return fileDescriptor_38fd6c203bede659, []int{100} } func (m *MsgSubstationPlayerMigrate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5202,7 +5556,7 @@ func (m *MsgSubstationPlayerMigrateResponse) Reset() { *m = MsgSubstatio func (m *MsgSubstationPlayerMigrateResponse) String() string { return proto.CompactTextString(m) } func (*MsgSubstationPlayerMigrateResponse) ProtoMessage() {} func (*MsgSubstationPlayerMigrateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{93} + return fileDescriptor_38fd6c203bede659, []int{101} } func (m *MsgSubstationPlayerMigrateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5242,7 +5596,7 @@ func (m *MsgAgreementOpen) Reset() { *m = MsgAgreementOpen{} } func (m *MsgAgreementOpen) String() string { return proto.CompactTextString(m) } func (*MsgAgreementOpen) ProtoMessage() {} func (*MsgAgreementOpen) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{94} + return fileDescriptor_38fd6c203bede659, []int{102} } func (m *MsgAgreementOpen) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5308,7 +5662,7 @@ func (m *MsgAgreementClose) Reset() { *m = MsgAgreementClose{} } func (m *MsgAgreementClose) String() string { return proto.CompactTextString(m) } func (*MsgAgreementClose) ProtoMessage() {} func (*MsgAgreementClose) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{95} + return fileDescriptor_38fd6c203bede659, []int{103} } func (m *MsgAgreementClose) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5361,7 +5715,7 @@ func (m *MsgAgreementCapacityIncrease) Reset() { *m = MsgAgreementCapaci func (m *MsgAgreementCapacityIncrease) String() string { return proto.CompactTextString(m) } func (*MsgAgreementCapacityIncrease) ProtoMessage() {} func (*MsgAgreementCapacityIncrease) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{96} + return fileDescriptor_38fd6c203bede659, []int{104} } func (m *MsgAgreementCapacityIncrease) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5421,7 +5775,7 @@ func (m *MsgAgreementCapacityDecrease) Reset() { *m = MsgAgreementCapaci func (m *MsgAgreementCapacityDecrease) String() string { return proto.CompactTextString(m) } func (*MsgAgreementCapacityDecrease) ProtoMessage() {} func (*MsgAgreementCapacityDecrease) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{97} + return fileDescriptor_38fd6c203bede659, []int{105} } func (m *MsgAgreementCapacityDecrease) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5481,7 +5835,7 @@ func (m *MsgAgreementDurationIncrease) Reset() { *m = MsgAgreementDurati func (m *MsgAgreementDurationIncrease) String() string { return proto.CompactTextString(m) } func (*MsgAgreementDurationIncrease) ProtoMessage() {} func (*MsgAgreementDurationIncrease) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{98} + return fileDescriptor_38fd6c203bede659, []int{106} } func (m *MsgAgreementDurationIncrease) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5538,7 +5892,7 @@ func (m *MsgAgreementResponse) Reset() { *m = MsgAgreementResponse{} } func (m *MsgAgreementResponse) String() string { return proto.CompactTextString(m) } func (*MsgAgreementResponse) ProtoMessage() {} func (*MsgAgreementResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{99} + return fileDescriptor_38fd6c203bede659, []int{107} } func (m *MsgAgreementResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5584,7 +5938,7 @@ func (m *MsgProviderCreate) Reset() { *m = MsgProviderCreate{} } func (m *MsgProviderCreate) String() string { return proto.CompactTextString(m) } func (*MsgProviderCreate) ProtoMessage() {} func (*MsgProviderCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{100} + return fileDescriptor_38fd6c203bede659, []int{108} } func (m *MsgProviderCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5679,7 +6033,7 @@ func (m *MsgProviderWithdrawBalance) Reset() { *m = MsgProviderWithdrawB func (m *MsgProviderWithdrawBalance) String() string { return proto.CompactTextString(m) } func (*MsgProviderWithdrawBalance) ProtoMessage() {} func (*MsgProviderWithdrawBalance) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{101} + return fileDescriptor_38fd6c203bede659, []int{109} } func (m *MsgProviderWithdrawBalance) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5739,7 +6093,7 @@ func (m *MsgProviderUpdateCapacityMinimum) Reset() { *m = MsgProviderUpd func (m *MsgProviderUpdateCapacityMinimum) String() string { return proto.CompactTextString(m) } func (*MsgProviderUpdateCapacityMinimum) ProtoMessage() {} func (*MsgProviderUpdateCapacityMinimum) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{102} + return fileDescriptor_38fd6c203bede659, []int{110} } func (m *MsgProviderUpdateCapacityMinimum) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5799,7 +6153,7 @@ func (m *MsgProviderUpdateCapacityMaximum) Reset() { *m = MsgProviderUpd func (m *MsgProviderUpdateCapacityMaximum) String() string { return proto.CompactTextString(m) } func (*MsgProviderUpdateCapacityMaximum) ProtoMessage() {} func (*MsgProviderUpdateCapacityMaximum) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{103} + return fileDescriptor_38fd6c203bede659, []int{111} } func (m *MsgProviderUpdateCapacityMaximum) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5859,7 +6213,7 @@ func (m *MsgProviderUpdateDurationMinimum) Reset() { *m = MsgProviderUpd func (m *MsgProviderUpdateDurationMinimum) String() string { return proto.CompactTextString(m) } func (*MsgProviderUpdateDurationMinimum) ProtoMessage() {} func (*MsgProviderUpdateDurationMinimum) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{104} + return fileDescriptor_38fd6c203bede659, []int{112} } func (m *MsgProviderUpdateDurationMinimum) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5919,7 +6273,7 @@ func (m *MsgProviderUpdateDurationMaximum) Reset() { *m = MsgProviderUpd func (m *MsgProviderUpdateDurationMaximum) String() string { return proto.CompactTextString(m) } func (*MsgProviderUpdateDurationMaximum) ProtoMessage() {} func (*MsgProviderUpdateDurationMaximum) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{105} + return fileDescriptor_38fd6c203bede659, []int{113} } func (m *MsgProviderUpdateDurationMaximum) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5979,7 +6333,7 @@ func (m *MsgProviderUpdateAccessPolicy) Reset() { *m = MsgProviderUpdate func (m *MsgProviderUpdateAccessPolicy) String() string { return proto.CompactTextString(m) } func (*MsgProviderUpdateAccessPolicy) ProtoMessage() {} func (*MsgProviderUpdateAccessPolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{106} + return fileDescriptor_38fd6c203bede659, []int{114} } func (m *MsgProviderUpdateAccessPolicy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6039,7 +6393,7 @@ func (m *MsgProviderGuildGrant) Reset() { *m = MsgProviderGuildGrant{} } func (m *MsgProviderGuildGrant) String() string { return proto.CompactTextString(m) } func (*MsgProviderGuildGrant) ProtoMessage() {} func (*MsgProviderGuildGrant) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{107} + return fileDescriptor_38fd6c203bede659, []int{115} } func (m *MsgProviderGuildGrant) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6099,7 +6453,7 @@ func (m *MsgProviderGuildRevoke) Reset() { *m = MsgProviderGuildRevoke{} func (m *MsgProviderGuildRevoke) String() string { return proto.CompactTextString(m) } func (*MsgProviderGuildRevoke) ProtoMessage() {} func (*MsgProviderGuildRevoke) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{108} + return fileDescriptor_38fd6c203bede659, []int{116} } func (m *MsgProviderGuildRevoke) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6158,7 +6512,7 @@ func (m *MsgProviderDelete) Reset() { *m = MsgProviderDelete{} } func (m *MsgProviderDelete) String() string { return proto.CompactTextString(m) } func (*MsgProviderDelete) ProtoMessage() {} func (*MsgProviderDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{109} + return fileDescriptor_38fd6c203bede659, []int{117} } func (m *MsgProviderDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6208,7 +6562,7 @@ func (m *MsgProviderResponse) Reset() { *m = MsgProviderResponse{} } func (m *MsgProviderResponse) String() string { return proto.CompactTextString(m) } func (*MsgProviderResponse) ProtoMessage() {} func (*MsgProviderResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_38fd6c203bede659, []int{110} + return fileDescriptor_38fd6c203bede659, []int{118} } func (m *MsgProviderResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6296,6 +6650,14 @@ func init() { proto.RegisterType((*MsgPlayerUpdatePrimaryAddressResponse)(nil), "structs.structs.MsgPlayerUpdatePrimaryAddressResponse") proto.RegisterType((*MsgPlayerResume)(nil), "structs.structs.MsgPlayerResume") proto.RegisterType((*MsgPlayerResumeResponse)(nil), "structs.structs.MsgPlayerResumeResponse") + proto.RegisterType((*MsgReactorInfuse)(nil), "structs.structs.MsgReactorInfuse") + proto.RegisterType((*MsgReactorInfuseResponse)(nil), "structs.structs.MsgReactorInfuseResponse") + proto.RegisterType((*MsgReactorBeginMigration)(nil), "structs.structs.MsgReactorBeginMigration") + proto.RegisterType((*MsgReactorBeginMigrationResponse)(nil), "structs.structs.MsgReactorBeginMigrationResponse") + proto.RegisterType((*MsgReactorDefuse)(nil), "structs.structs.MsgReactorDefuse") + proto.RegisterType((*MsgReactorDefuseResponse)(nil), "structs.structs.MsgReactorDefuseResponse") + proto.RegisterType((*MsgReactorCancelDefusion)(nil), "structs.structs.MsgReactorCancelDefusion") + proto.RegisterType((*MsgReactorCancelDefusionResponse)(nil), "structs.structs.MsgReactorCancelDefusionResponse") proto.RegisterType((*MsgStructStatusResponse)(nil), "structs.structs.MsgStructStatusResponse") proto.RegisterType((*MsgStructActivate)(nil), "structs.structs.MsgStructActivate") proto.RegisterType((*MsgStructDeactivate)(nil), "structs.structs.MsgStructDeactivate") @@ -6354,248 +6716,272 @@ func init() { func init() { proto.RegisterFile("structs/structs/tx.proto", fileDescriptor_38fd6c203bede659) } var fileDescriptor_38fd6c203bede659 = []byte{ - // 3847 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x5c, 0x5b, 0x6f, 0x1c, 0xc7, - 0x95, 0x56, 0xf3, 0x22, 0x4b, 0x47, 0x14, 0x25, 0xb5, 0x2e, 0x1c, 0x8e, 0x24, 0x8a, 0x1a, 0x4b, - 0x94, 0x44, 0x91, 0x43, 0x91, 0xbe, 0x2c, 0xa0, 0x87, 0xdd, 0xe5, 0xc5, 0x2b, 0x70, 0x6d, 0x42, - 0xf4, 0x50, 0xb6, 0xd7, 0x32, 0xec, 0xdd, 0xe6, 0x4c, 0x71, 0xd8, 0x66, 0x4f, 0xf7, 0xb8, 0xbb, - 0x87, 0xd2, 0xec, 0xae, 0xad, 0x44, 0x76, 0xee, 0x40, 0xe0, 0x04, 0x01, 0x82, 0xdc, 0x01, 0x27, - 0x0f, 0x46, 0x9e, 0x84, 0xc4, 0x4f, 0x09, 0xf2, 0xee, 0x97, 0x24, 0x86, 0x11, 0x04, 0x81, 0x81, - 0x28, 0x81, 0x1d, 0x40, 0x7f, 0x23, 0xe8, 0xaa, 0xea, 0x9e, 0xae, 0xea, 0xea, 0xea, 0xea, 0x99, - 0xb1, 0xac, 0x17, 0x0d, 0xbb, 0xea, 0xd4, 0xf9, 0xbe, 0x53, 0xf7, 0x3a, 0x75, 0x4a, 0x50, 0xf0, - 0x7c, 0xb7, 0x55, 0xf5, 0xbd, 0xb9, 0xf0, 0xd7, 0xbf, 0x5d, 0x6e, 0xba, 0x8e, 0xef, 0xe8, 0x87, - 0x68, 0x4a, 0x99, 0xfe, 0x16, 0x8f, 0x18, 0x0d, 0xd3, 0x76, 0xe6, 0xf0, 0xbf, 0x44, 0xa6, 0x38, - 0x56, 0x75, 0xbc, 0x86, 0xe3, 0xcd, 0x35, 0xbc, 0xfa, 0xdc, 0xee, 0x7c, 0xf0, 0x43, 0x33, 0xc6, - 0x49, 0xc6, 0x7f, 0xe3, 0xaf, 0x39, 0xf2, 0x41, 0xb3, 0x8e, 0xd5, 0x9d, 0xba, 0x43, 0xd2, 0x83, - 0xbf, 0x68, 0xea, 0x29, 0x9e, 0x47, 0xd3, 0x70, 0x8d, 0x46, 0x58, 0x66, 0x82, 0xe2, 0x6c, 0x1a, - 0x1e, 0x9a, 0xdb, 0x9d, 0xdf, 0x44, 0xbe, 0x31, 0x3f, 0x57, 0x75, 0x4c, 0x9b, 0xe6, 0x17, 0xf9, - 0xd2, 0x3b, 0xa8, 0x1d, 0x96, 0x3d, 0xc9, 0xe7, 0x6d, 0x59, 0x08, 0xf9, 0x69, 0x99, 0xf5, 0x96, - 0x69, 0xd5, 0x52, 0x39, 0x59, 0x86, 0x1d, 0x15, 0x4d, 0xe4, 0x92, 0x5f, 0x92, 0x5b, 0xfa, 0xad, - 0x06, 0x87, 0xd6, 0xbc, 0xfa, 0x0b, 0xcd, 0x9a, 0xe1, 0xa3, 0x75, 0x6c, 0x8b, 0xfe, 0x34, 0xec, - 0x37, 0x5a, 0xfe, 0xb6, 0xe3, 0x9a, 0x7e, 0xbb, 0xa0, 0x4d, 0x6a, 0x17, 0xf7, 0x2f, 0x15, 0x3e, - 0xfe, 0x60, 0xf6, 0x18, 0xad, 0x9e, 0xc5, 0x5a, 0xcd, 0x45, 0x9e, 0xb7, 0xe1, 0xbb, 0xa6, 0x5d, - 0xaf, 0x74, 0x44, 0xf5, 0xab, 0xb0, 0x97, 0xd4, 0x46, 0x61, 0x60, 0x52, 0xbb, 0x78, 0x60, 0x61, - 0xac, 0xcc, 0x35, 0x4d, 0x99, 0x00, 0x2c, 0xed, 0xff, 0xf0, 0xfe, 0x99, 0x3d, 0xef, 0x3f, 0xb8, - 0x37, 0xad, 0x55, 0x68, 0x89, 0xab, 0x4f, 0xde, 0x7d, 0x70, 0x6f, 0xba, 0xa3, 0xeb, 0x9b, 0x0f, - 0xee, 0x4d, 0x9f, 0x0d, 0x09, 0xdf, 0x8e, 0xa8, 0x73, 0x4c, 0x4b, 0xe3, 0x30, 0xc6, 0x25, 0x55, - 0x90, 0xd7, 0x74, 0x6c, 0x0f, 0x95, 0xee, 0x6b, 0xa0, 0xaf, 0x79, 0x75, 0x4a, 0xb6, 0x82, 0xea, - 0xa6, 0xe7, 0x23, 0x57, 0x2f, 0xc0, 0x63, 0x55, 0x17, 0x19, 0xbe, 0xe3, 0x12, 0xcb, 0x2a, 0xe1, - 0xa7, 0x5e, 0x84, 0x7d, 0x4d, 0xcb, 0x68, 0x23, 0x77, 0xb5, 0x86, 0xf9, 0xef, 0xaf, 0x44, 0xdf, - 0x41, 0x29, 0x83, 0x28, 0x2a, 0x0c, 0x92, 0x52, 0xf4, 0x53, 0x9f, 0x84, 0x03, 0x4d, 0xd7, 0x71, - 0xb6, 0xd6, 0x5b, 0x9b, 0xcf, 0xa2, 0x76, 0x61, 0x08, 0xe7, 0xc6, 0x93, 0xf4, 0x29, 0x18, 0xc5, - 0x9f, 0x1b, 0x66, 0xdd, 0x36, 0xfc, 0x96, 0x8b, 0x0a, 0xc3, 0x58, 0x88, 0x4b, 0xc5, 0x9a, 0x90, - 0xdb, 0x30, 0x3d, 0xcf, 0x74, 0x6c, 0xaf, 0xb0, 0x77, 0x52, 0xbb, 0x38, 0x54, 0x89, 0x27, 0x5d, - 0x1d, 0x09, 0xea, 0x28, 0xe4, 0x5b, 0x3a, 0x05, 0xc5, 0xa4, 0x7d, 0x91, 0xf9, 0x37, 0xe0, 0x70, - 0x3c, 0x77, 0xd7, 0xd9, 0x41, 0x12, 0xdb, 0x63, 0xf6, 0x0d, 0x30, 0xf6, 0x71, 0x98, 0x45, 0x28, - 0xf0, 0x5a, 0x23, 0xc4, 0x7f, 0x68, 0x70, 0x34, 0xc8, 0xb4, 0x2c, 0xa7, 0x6a, 0xf8, 0xa6, 0x63, - 0x2f, 0x07, 0x85, 0x64, 0xa8, 0x13, 0x00, 0x55, 0xc7, 0xf6, 0x5d, 0xc7, 0xb2, 0x90, 0x4b, 0x81, - 0x63, 0x29, 0x41, 0xcd, 0x79, 0x4e, 0xcb, 0xad, 0xa2, 0xeb, 0x9b, 0xaf, 0xa3, 0xaa, 0xbf, 0x5a, - 0xa3, 0x95, 0xcf, 0xa5, 0xea, 0xd7, 0x60, 0xd4, 0x88, 0x50, 0x6f, 0xb4, 0x9b, 0x08, 0x37, 0xc3, - 0xe8, 0xc2, 0x99, 0x44, 0xff, 0x63, 0xc5, 0x2a, 0x5c, 0x31, 0xfd, 0x18, 0x0c, 0x37, 0x9d, 0x5b, - 0xc8, 0xc5, 0x2d, 0x34, 0x54, 0x21, 0x1f, 0x5c, 0x15, 0x2c, 0xc2, 0x49, 0x81, 0x95, 0x61, 0x2d, - 0xe8, 0x25, 0x18, 0xe9, 0x28, 0x5d, 0xad, 0x51, 0x93, 0x99, 0xb4, 0x92, 0xc1, 0x55, 0xd4, 0x0a, - 0xb2, 0x90, 0xb4, 0xa2, 0x78, 0xa5, 0x03, 0x49, 0xa5, 0x19, 0x2c, 0x09, 0x44, 0x2e, 0x96, 0xb7, - 0x38, 0x96, 0x64, 0x94, 0xf5, 0xc6, 0xb2, 0x53, 0xc3, 0x83, 0xea, 0x35, 0x4c, 0x80, 0x73, 0x71, - 0x7f, 0x5b, 0x83, 0xe3, 0x8c, 0x8e, 0x1b, 0xae, 0x61, 0x7b, 0x5b, 0xd2, 0xf1, 0xaf, 0x42, 0x9f, - 0xed, 0xb1, 0x83, 0x7c, 0x8f, 0xe5, 0x0c, 0x59, 0x86, 0xd3, 0x42, 0x12, 0xb9, 0x4c, 0xf9, 0xaa, - 0x06, 0x23, 0x6b, 0x5e, 0xfd, 0x3f, 0x82, 0xc5, 0x60, 0xcd, 0xd9, 0xcd, 0x18, 0xc5, 0x78, 0xcd, - 0x88, 0xc8, 0x87, 0x9f, 0xfa, 0x93, 0x70, 0xbc, 0x86, 0x3c, 0xdf, 0xb4, 0xb1, 0xd6, 0xe7, 0x3a, - 0x88, 0xc4, 0x04, 0x71, 0x26, 0x67, 0xcd, 0x0a, 0x1c, 0x8b, 0xf3, 0x88, 0x8c, 0x98, 0x81, 0x61, - 0x0c, 0x83, 0xd9, 0x1c, 0x58, 0x38, 0x91, 0x18, 0x74, 0xb8, 0x48, 0x85, 0x08, 0x95, 0xde, 0xc2, - 0xf3, 0xd2, 0xb5, 0x60, 0xf5, 0x5a, 0x32, 0xec, 0x9d, 0x35, 0xd3, 0xf6, 0x25, 0x16, 0x4d, 0xc2, - 0x01, 0xa3, 0xe1, 0xb4, 0x6c, 0x7f, 0xd1, 0x6a, 0x6e, 0x1b, 0xd8, 0xaa, 0xa1, 0x4a, 0x3c, 0xa9, - 0x23, 0x71, 0xc3, 0xd9, 0x41, 0x36, 0xed, 0x56, 0xf1, 0x24, 0xe1, 0x0c, 0xc6, 0xe0, 0x47, 0x33, - 0xd8, 0x3d, 0xb2, 0x64, 0x44, 0x99, 0x15, 0x54, 0x43, 0xa8, 0x21, 0xa1, 0xe7, 0xb2, 0xe0, 0x64, - 0xd5, 0x1b, 0x2f, 0xd3, 0x75, 0x32, 0xd8, 0x04, 0x94, 0xe9, 0x26, 0xa0, 0xbc, 0xec, 0x98, 0xf6, - 0xd2, 0x53, 0xc1, 0xba, 0xf7, 0xcb, 0xbf, 0x9d, 0xb9, 0x58, 0x37, 0xfd, 0xed, 0xd6, 0x66, 0xb9, - 0xea, 0x34, 0xe8, 0x9e, 0x83, 0xfe, 0xcc, 0x7a, 0xb5, 0x9d, 0x39, 0xbf, 0xdd, 0x44, 0x1e, 0x2e, - 0xe0, 0x91, 0x35, 0x52, 0x62, 0x0e, 0x59, 0x04, 0x38, 0xc6, 0x91, 0x41, 0x6f, 0x6b, 0xb8, 0x07, - 0x46, 0xd9, 0xcb, 0x8e, 0xbd, 0x65, 0x7a, 0x55, 0xc3, 0x47, 0x8b, 0x76, 0x6d, 0xa9, 0xe5, 0xda, - 0xdd, 0x2c, 0x09, 0xb9, 0xab, 0xfc, 0x02, 0x9c, 0x97, 0x92, 0x88, 0xe8, 0xde, 0xd5, 0x60, 0x34, - 0x94, 0xcc, 0x5c, 0x3c, 0x8a, 0xb0, 0x0f, 0xd9, 0xb5, 0xa6, 0x63, 0xda, 0x7e, 0xb8, 0x5c, 0x87, - 0xdf, 0xfa, 0x0c, 0x1c, 0x41, 0xb6, 0xef, 0xb6, 0x37, 0x5a, 0x9b, 0x9e, 0xcf, 0x76, 0xf5, 0x64, - 0x06, 0xc7, 0x76, 0x01, 0x4e, 0xb0, 0x1c, 0xa2, 0x8e, 0x5e, 0x80, 0xc7, 0xf0, 0xae, 0x2b, 0x1a, - 0xa8, 0xe1, 0x67, 0xc9, 0xc1, 0xb3, 0x0d, 0x2e, 0x43, 0x26, 0xab, 0xeb, 0xb7, 0xec, 0x70, 0xdf, - 0x90, 0x5e, 0xbd, 0xa1, 0xb2, 0x01, 0x46, 0x59, 0x30, 0x45, 0x3a, 0x41, 0x71, 0x4a, 0x98, 0x7c, - 0x70, 0x24, 0xbf, 0xa3, 0xc1, 0x19, 0x16, 0xf1, 0x19, 0xde, 0xac, 0xae, 0xb0, 0x7b, 0xa9, 0xb8, - 0xdd, 0x4e, 0xc5, 0x85, 0x94, 0x68, 0x73, 0x74, 0xc3, 0x24, 0xde, 0xbc, 0x83, 0x6c, 0xf3, 0x72, - 0xb8, 0xdf, 0xd7, 0xe0, 0x2c, 0x0b, 0xfc, 0x9f, 0x8e, 0x69, 0xaf, 0xda, 0x5b, 0xad, 0x60, 0xd7, - 0xb4, 0x66, 0xda, 0x66, 0xa3, 0xd5, 0xe8, 0x8a, 0xc3, 0x15, 0x38, 0xfa, 0x7a, 0x52, 0x15, 0xed, - 0xf0, 0xa2, 0x2c, 0x8e, 0xd9, 0x1f, 0x35, 0xb8, 0x92, 0xc9, 0x6c, 0xa9, 0xdd, 0x34, 0x3c, 0x6f, - 0xa9, 0x5d, 0x41, 0x6f, 0xb4, 0x90, 0xd7, 0x5d, 0x65, 0xbd, 0x0c, 0xc7, 0xf0, 0x9f, 0x81, 0x7a, - 0xa2, 0xef, 0x39, 0xb4, 0x8b, 0x2c, 0xcc, 0x74, 0x74, 0xe1, 0x7c, 0x62, 0x46, 0x16, 0x09, 0x57, - 0x84, 0x2a, 0x38, 0x8b, 0xfe, 0xa0, 0xc1, 0x9c, 0xb2, 0x45, 0xab, 0xf6, 0xae, 0xe9, 0xa3, 0x47, - 0xdb, 0xa0, 0x02, 0xdf, 0x69, 0xa3, 0xc9, 0xe8, 0xc7, 0x5a, 0x67, 0xa5, 0x58, 0x43, 0x8d, 0x4d, - 0xe4, 0x7a, 0xdb, 0x66, 0xb3, 0x07, 0x9b, 0xe2, 0xe7, 0x8b, 0x41, 0xee, 0x7c, 0x51, 0x82, 0x11, - 0x2f, 0x3e, 0xe4, 0xc8, 0x31, 0x82, 0x49, 0xe3, 0x88, 0xff, 0x3c, 0x36, 0x03, 0xf0, 0xf4, 0x16, - 0x9b, 0x4d, 0x37, 0x73, 0xa7, 0xf0, 0x50, 0x58, 0xfe, 0x3f, 0x9c, 0x4a, 0x23, 0xb9, 0x82, 0xec, - 0x76, 0xbf, 0x19, 0x72, 0xe8, 0x6f, 0xc1, 0x44, 0x1a, 0xba, 0xca, 0x89, 0xa8, 0x67, 0xfc, 0xdf, - 0x68, 0x9d, 0xde, 0xd5, 0x21, 0x10, 0x74, 0xc8, 0x2f, 0xa2, 0x69, 0x82, 0xcd, 0xab, 0x49, 0x47, - 0xea, 0x6a, 0xad, 0x30, 0x3c, 0x39, 0x18, 0x6c, 0x5e, 0x3b, 0x29, 0x1c, 0xf9, 0xdf, 0x6b, 0x78, - 0x1b, 0x2e, 0x20, 0xbf, 0xee, 0x3a, 0xb7, 0xdb, 0x5d, 0xed, 0x1c, 0x78, 0x96, 0x83, 0x02, 0x96, - 0x7d, 0x3b, 0x50, 0xa7, 0x2f, 0x4f, 0x1d, 0x73, 0x9e, 0x35, 0xab, 0x3b, 0x9f, 0x73, 0x27, 0xf8, - 0x89, 0x06, 0xe3, 0x49, 0xe0, 0x5e, 0x66, 0xfb, 0xfe, 0x0e, 0xd1, 0x5f, 0x68, 0x30, 0x99, 0xca, - 0xef, 0xd1, 0x99, 0x49, 0xde, 0xec, 0xec, 0x64, 0x13, 0x2c, 0x1f, 0xc2, 0x54, 0x72, 0x47, 0x34, - 0xdb, 0x52, 0xf8, 0x87, 0x32, 0x97, 0x7c, 0x43, 0xeb, 0xec, 0xf4, 0xe3, 0x0c, 0xe8, 0xde, 0x74, - 0x07, 0x8a, 0x75, 0x36, 0x6b, 0xb1, 0xd9, 0xb4, 0x4c, 0x72, 0x94, 0xa3, 0x27, 0xb3, 0xcb, 0x89, - 0x65, 0xf3, 0x5a, 0x6a, 0x91, 0x8a, 0x44, 0x5d, 0xe9, 0xa7, 0x84, 0xcb, 0x7a, 0xe4, 0x9a, 0xba, - 0xe6, 0x1a, 0xb6, 0x7f, 0xdd, 0x26, 0x0e, 0x19, 0xf9, 0x9e, 0xdd, 0x09, 0x5d, 0x39, 0x74, 0xcf, - 0x1e, 0x7e, 0x4b, 0xbb, 0x0b, 0xe7, 0x1a, 0x1b, 0xca, 0x72, 0x8d, 0x7d, 0x99, 0xcc, 0x5d, 0x09, - 0x82, 0xd4, 0x71, 0xd5, 0xed, 0xa9, 0x27, 0xce, 0x61, 0x30, 0x8b, 0xc3, 0xcf, 0x78, 0x0e, 0xa4, - 0x9b, 0x3c, 0x42, 0xb5, 0x74, 0x57, 0xc3, 0xab, 0x73, 0x92, 0xe1, 0xc3, 0xac, 0x26, 0xba, 0xcd, - 0xea, 0x90, 0xd8, 0x40, 0x8f, 0x52, 0x4f, 0xba, 0x83, 0x27, 0x6f, 0x8e, 0xdd, 0xc3, 0xac, 0x9f, - 0x31, 0x7c, 0xb4, 0x8c, 0xb7, 0x11, 0xdd, 0x9f, 0xbe, 0x88, 0x1d, 0x29, 0xeb, 0xd8, 0xd3, 0xff, - 0xcc, 0xed, 0xa6, 0xe5, 0xb8, 0xa8, 0x3b, 0xe7, 0x36, 0x07, 0xf8, 0x3c, 0x69, 0x8f, 0xb8, 0xde, - 0x68, 0x96, 0x79, 0x0a, 0xf6, 0x92, 0xab, 0x05, 0x3a, 0xa3, 0x08, 0x1c, 0xfc, 0x38, 0x7b, 0x69, - 0xe8, 0xc3, 0xfb, 0x67, 0xf6, 0x54, 0xa8, 0x70, 0xe9, 0x2b, 0xc4, 0x1b, 0x47, 0xf2, 0x2a, 0x86, - 0x59, 0x5b, 0x76, 0x1a, 0xcd, 0x0c, 0x97, 0x67, 0xba, 0x2f, 0xeb, 0x18, 0x0c, 0xe3, 0x85, 0x3e, - 0x3c, 0x1f, 0xe3, 0x8f, 0x20, 0xd5, 0x76, 0xec, 0x2a, 0xa2, 0x4b, 0x09, 0xf9, 0xe0, 0x4c, 0x7b, - 0x9f, 0xb8, 0x43, 0x92, 0x3c, 0x22, 0x03, 0x17, 0x94, 0x7c, 0x59, 0xd4, 0x3c, 0x22, 0x1a, 0xab, - 0x94, 0x81, 0x1c, 0x95, 0xa2, 0x9f, 0x82, 0xfd, 0x8e, 0x8b, 0x36, 0x7c, 0xc7, 0x8a, 0x7c, 0x28, - 0x9d, 0x84, 0xd2, 0xb7, 0x22, 0xaa, 0x6d, 0xe4, 0xd2, 0xfb, 0x0d, 0xd7, 0x6c, 0x18, 0x6e, 0x3b, - 0xbb, 0xf3, 0xc9, 0x2e, 0x32, 0xf0, 0xde, 0x29, 0xae, 0x27, 0x74, 0xa9, 0xb3, 0xa9, 0x42, 0x0f, - 0x4e, 0x3a, 0x99, 0xa8, 0x53, 0xbe, 0x80, 0x2f, 0x93, 0x88, 0x60, 0x05, 0x79, 0xad, 0x46, 0x7f, - 0xfa, 0x24, 0xb9, 0xe6, 0x89, 0xab, 0x8d, 0x10, 0xd7, 0x71, 0xd6, 0x06, 0xae, 0xe9, 0x0d, 0xdf, - 0xf0, 0x5b, 0x5e, 0xbc, 0xb7, 0x92, 0x16, 0x48, 0xed, 0xad, 0xa4, 0x58, 0xd8, 0x30, 0x24, 0xb5, - 0xf4, 0x12, 0x1c, 0x89, 0x34, 0x2e, 0x56, 0x7d, 0x73, 0x37, 0xd3, 0x0f, 0x45, 0x0a, 0x76, 0xac, - 0x08, 0xbf, 0x39, 0x2b, 0x5e, 0xc6, 0x0e, 0x75, 0xa2, 0x78, 0x05, 0x19, 0xfd, 0x54, 0xfd, 0x27, - 0x72, 0xd2, 0xa0, 0xf6, 0xe0, 0xcd, 0x85, 0x6d, 0xfa, 0x66, 0xa6, 0xfa, 0xd4, 0x7e, 0x12, 0x6c, - 0xd0, 0xb0, 0xb2, 0x1b, 0xed, 0x26, 0xa2, 0xf3, 0xe8, 0x50, 0x85, 0x49, 0xd3, 0xff, 0x15, 0x46, - 0x9d, 0x26, 0x72, 0x0d, 0xdf, 0xb4, 0xeb, 0x8b, 0x8d, 0x4d, 0xd3, 0xa7, 0xd7, 0x2e, 0xc9, 0x51, - 0x63, 0x04, 0xb9, 0x15, 0x4e, 0x5a, 0xd7, 0x61, 0xc8, 0xb3, 0x1c, 0x9f, 0x5e, 0xb6, 0xe0, 0xbf, - 0x39, 0xb3, 0xbe, 0x9e, 0x30, 0x4b, 0x61, 0xe6, 0x90, 0xd4, 0x5a, 0x0f, 0x73, 0xc7, 0x4d, 0xec, - 0xfd, 0x8e, 0x33, 0x31, 0xec, 0x2a, 0xb2, 0xfa, 0xd2, 0x7a, 0xef, 0x0d, 0xe0, 0x83, 0xaa, 0xc0, - 0xcc, 0x45, 0xbb, 0xb6, 0xe1, 0x1b, 0xde, 0xf6, 0xe7, 0x6f, 0xae, 0xbe, 0x00, 0xc7, 0x3c, 0xdf, - 0x71, 0x8d, 0x3a, 0x5a, 0xe9, 0x5c, 0x06, 0xe0, 0x73, 0x62, 0x20, 0x24, 0xcc, 0xd3, 0xaf, 0x06, - 0xbd, 0x04, 0xa7, 0x93, 0xf6, 0xdf, 0x2b, 0x6d, 0x7f, 0x46, 0x36, 0x58, 0x08, 0xe9, 0xf7, 0x46, - 0xd0, 0x09, 0x1e, 0x23, 0x0b, 0x61, 0x2c, 0x29, 0xe9, 0xe6, 0x8b, 0x0f, 0x9f, 0x2d, 0x64, 0x7b, - 0x68, 0x03, 0xc9, 0xf6, 0x08, 0xd3, 0x70, 0xb8, 0x16, 0xc8, 0xd5, 0x90, 0xbb, 0xc1, 0xd6, 0x50, - 0x22, 0x5d, 0x9f, 0x81, 0x23, 0x4d, 0xd7, 0xf1, 0x51, 0xd5, 0x47, 0xb5, 0x48, 0x98, 0x3a, 0x3e, - 0x13, 0x19, 0x1c, 0xb3, 0x1d, 0xbc, 0xba, 0x31, 0xc4, 0x96, 0x2d, 0x64, 0xb8, 0xfd, 0xa1, 0xc6, - 0x81, 0xfd, 0x59, 0x83, 0x83, 0x11, 0x5a, 0xc6, 0x7d, 0x90, 0xac, 0x6b, 0xfc, 0x1b, 0x8c, 0x08, - 0x6e, 0x4c, 0x4f, 0x26, 0x9a, 0x8e, 0xec, 0xaa, 0xf0, 0x6d, 0x29, 0x53, 0x40, 0x9f, 0x81, 0x61, - 0xdc, 0xac, 0xb8, 0x83, 0xa4, 0x37, 0x3a, 0x11, 0x8a, 0xc6, 0xfa, 0xde, 0xd4, 0xb1, 0xfe, 0x6b, - 0x12, 0x88, 0x40, 0xe7, 0x5d, 0xdf, 0x37, 0xa4, 0x27, 0xf3, 0x19, 0x38, 0x12, 0xcd, 0x26, 0x5c, - 0x0d, 0x26, 0x33, 0x82, 0x55, 0xcf, 0x37, 0xdc, 0x3a, 0xf2, 0x63, 0x4d, 0x3b, 0x18, 0xac, 0x7a, - 0x6c, 0x6a, 0x30, 0xeb, 0xdd, 0x42, 0x46, 0xd3, 0xb1, 0x37, 0xda, 0x9e, 0x8f, 0x1a, 0xe1, 0xb1, - 0x34, 0x9e, 0x26, 0x5c, 0x99, 0xe2, 0xa4, 0xa3, 0x95, 0xe9, 0x35, 0xbc, 0x91, 0x0a, 0x57, 0x26, - 0x64, 0x58, 0xfe, 0x76, 0x5f, 0x97, 0x93, 0xff, 0xc1, 0x87, 0x30, 0x46, 0x7f, 0x9f, 0x57, 0x95, - 0xbb, 0x5a, 0xcc, 0x84, 0x6b, 0xc8, 0x0e, 0xaa, 0xd5, 0x71, 0xb1, 0xb7, 0xb7, 0xdb, 0x6e, 0x57, - 0x82, 0x11, 0xec, 0x71, 0x42, 0x8b, 0xf8, 0xba, 0x28, 0xf4, 0x00, 0xc5, 0xd3, 0x38, 0x12, 0x25, - 0xec, 0x9e, 0xe0, 0x38, 0xb0, 0x2b, 0x7d, 0xb0, 0x5b, 0x1a, 0x8f, 0x84, 0xae, 0xbb, 0x68, 0xcd, - 0xb4, 0x91, 0xfb, 0x85, 0x2d, 0x15, 0xff, 0x85, 0x7d, 0x05, 0x2c, 0x99, 0xfe, 0x6c, 0x4d, 0xbe, - 0x4d, 0x4e, 0x6c, 0x91, 0xea, 0x0a, 0xda, 0x0a, 0x94, 0xb7, 0xbf, 0x30, 0x53, 0x5f, 0x81, 0x92, - 0x88, 0x4f, 0x7f, 0xac, 0xfd, 0x9d, 0x16, 0x9b, 0x58, 0x37, 0xe8, 0xc2, 0xd0, 0xc3, 0x6a, 0x38, - 0x01, 0x60, 0xf1, 0x37, 0xdf, 0xb1, 0x94, 0xce, 0x8c, 0x36, 0x94, 0x67, 0x46, 0x4b, 0xdf, 0xbd, - 0x7c, 0x12, 0xdf, 0xbd, 0x50, 0xfe, 0x15, 0x54, 0x35, 0x2c, 0xeb, 0x51, 0x35, 0x20, 0x40, 0x0f, - 0x67, 0x10, 0x3c, 0x55, 0xef, 0xab, 0x44, 0xdf, 0x9c, 0x71, 0x24, 0x3a, 0xa4, 0x73, 0x1d, 0x98, - 0x79, 0x5f, 0x1b, 0x5d, 0x6b, 0x0e, 0xc4, 0xae, 0x35, 0x13, 0x11, 0x10, 0x83, 0x8a, 0x91, 0x2d, - 0x3c, 0x70, 0x3c, 0xa4, 0x82, 0xf1, 0x2c, 0x6a, 0x49, 0xcf, 0x62, 0xb4, 0x95, 0x88, 0xd2, 0x54, - 0x02, 0x70, 0x18, 0xad, 0x03, 0x02, 0xc7, 0xf5, 0x93, 0x70, 0xbc, 0x61, 0xd6, 0x5d, 0xfc, 0x29, - 0xb8, 0x3f, 0x15, 0x67, 0x72, 0xc6, 0x9d, 0xe6, 0x8c, 0x63, 0xc3, 0x76, 0x4a, 0xdf, 0xd5, 0xc8, - 0x46, 0x31, 0xca, 0x8f, 0x85, 0x21, 0x39, 0xb6, 0x2d, 0x77, 0x99, 0xa8, 0xc4, 0xb7, 0x9c, 0x83, - 0x83, 0x35, 0x66, 0xf7, 0x47, 0xb8, 0xb3, 0x89, 0x1c, 0xe7, 0x8b, 0x30, 0x25, 0xe7, 0x14, 0xd1, - 0x77, 0xf0, 0x45, 0xad, 0x48, 0x72, 0xc5, 0xf4, 0xaa, 0xfd, 0x30, 0x80, 0xa3, 0x76, 0x19, 0x2e, - 0x65, 0x02, 0x46, 0xec, 0xde, 0x21, 0x5e, 0xcd, 0x8e, 0x34, 0x39, 0x6f, 0x2a, 0x55, 0x6c, 0x66, - 0xe7, 0x50, 0x77, 0xf4, 0x9e, 0x23, 0x53, 0xaa, 0x98, 0x45, 0x44, 0xb6, 0x8a, 0xdd, 0x03, 0xbc, - 0x94, 0x52, 0x35, 0xaa, 0x1f, 0xbb, 0xc9, 0xb1, 0x3f, 0x1d, 0x24, 0xab, 0xea, 0xd6, 0x70, 0x8f, - 0x47, 0x7d, 0xad, 0xba, 0xc1, 0xdc, 0x55, 0x47, 0x59, 0xc4, 0x07, 0x11, 0x0e, 0x8d, 0xac, 0xbb, - 0x08, 0x35, 0x90, 0xed, 0x5f, 0x6f, 0x22, 0x5b, 0x1e, 0xa4, 0xd8, 0x74, 0x9d, 0x5d, 0xb3, 0x16, - 0xab, 0xb0, 0x58, 0x4a, 0x40, 0xaf, 0xd6, 0x22, 0x03, 0x9b, 0x9e, 0x92, 0xa3, 0xef, 0x20, 0xaf, - 0x6a, 0x34, 0x8d, 0xaa, 0xe9, 0xb7, 0xa9, 0xab, 0x31, 0xfa, 0xe6, 0xa8, 0xbf, 0x8a, 0x9d, 0x0e, - 0x11, 0xa7, 0x65, 0xcb, 0x91, 0x6e, 0xb1, 0x26, 0xe1, 0x80, 0x11, 0xca, 0x46, 0xac, 0xe2, 0x49, - 0x9c, 0xfa, 0xef, 0x91, 0x8d, 0x43, 0x47, 0x3f, 0x65, 0xb1, 0x6a, 0x07, 0x12, 0xbd, 0x41, 0x05, - 0x87, 0x99, 0x2a, 0xa7, 0x8f, 0xd6, 0x44, 0x22, 0x5d, 0x91, 0xd6, 0x0a, 0xea, 0x2f, 0xad, 0x50, - 0x1f, 0x4f, 0x2b, 0x4c, 0xcf, 0xa0, 0xb5, 0x42, 0xdb, 0xb3, 0x5f, 0xb5, 0x55, 0xe3, 0xf4, 0x85, - 0xb4, 0xf8, 0x74, 0x8e, 0xd6, 0x09, 0xec, 0x82, 0x88, 0x58, 0x45, 0x1d, 0xfa, 0xbd, 0x61, 0xdc, - 0x79, 0xd6, 0x69, 0x9f, 0xcc, 0x5c, 0x89, 0x55, 0x06, 0x5d, 0x0d, 0x86, 0x82, 0x41, 0x83, 0x99, - 0x7d, 0x1e, 0x21, 0x6d, 0x58, 0xbb, 0xbe, 0x0a, 0x23, 0x46, 0xb5, 0x8a, 0x3c, 0x6f, 0xdd, 0xb1, - 0xcc, 0x6a, 0x9b, 0xee, 0x5b, 0x92, 0xe1, 0x1d, 0xe1, 0x70, 0x5b, 0x8c, 0x09, 0x57, 0x98, 0xa2, - 0xba, 0x07, 0x27, 0x43, 0x29, 0xe2, 0x99, 0xb1, 0xc8, 0x14, 0x80, 0x6c, 0xc3, 0xf2, 0xdb, 0xc4, - 0x8b, 0xb1, 0x34, 0x1f, 0x90, 0xfd, 0xe4, 0xfe, 0x99, 0x93, 0x84, 0x9a, 0x57, 0xdb, 0x29, 0x9b, - 0xce, 0x5c, 0xc3, 0xf0, 0xb7, 0xcb, 0xcf, 0xa1, 0xba, 0x51, 0x0d, 0x3a, 0xc4, 0xc7, 0x1f, 0xcc, - 0x02, 0xb5, 0x76, 0x05, 0x55, 0x2b, 0x32, 0xad, 0x01, 0x68, 0xd5, 0xb1, 0xbd, 0x56, 0x43, 0x0c, - 0xba, 0xb7, 0x6b, 0x50, 0x89, 0x56, 0xfd, 0x22, 0x1c, 0x0a, 0xfb, 0x6f, 0x18, 0x91, 0x44, 0x9c, - 0x27, 0x7c, 0x32, 0x23, 0x69, 0xdc, 0xc6, 0x92, 0xfb, 0x38, 0x49, 0x92, 0x1c, 0x48, 0x86, 0x9d, - 0x2f, 0xd4, 0xb9, 0x9f, 0x48, 0x72, 0xc9, 0x8c, 0x24, 0xd5, 0x09, 0x9c, 0x24, 0x49, 0x4e, 0x8e, - 0xa9, 0x62, 0xac, 0x93, 0xbe, 0x64, 0xfa, 0xdb, 0x35, 0xd7, 0xb8, 0xb5, 0x64, 0x58, 0x81, 0x89, - 0x3d, 0xcc, 0xbf, 0x65, 0xd0, 0x63, 0xbb, 0x13, 0xd6, 0xab, 0x2d, 0xc8, 0xe1, 0x68, 0xfd, 0x90, - 0xdc, 0x7e, 0x87, 0xb4, 0x88, 0x73, 0x7b, 0x99, 0xab, 0xc7, 0x9e, 0xc8, 0xd9, 0xe8, 0x16, 0xd5, - 0x13, 0xaa, 0xa5, 0xc3, 0x5d, 0x90, 0x93, 0x8b, 0x1c, 0x6d, 0xba, 0x9e, 0xc9, 0x11, 0x3d, 0x22, - 0x72, 0x6c, 0x8e, 0x0a, 0xb9, 0x15, 0xae, 0xb7, 0xf4, 0xa9, 0xe6, 0x56, 0xd8, 0x05, 0x56, 0x90, - 0x93, 0x8b, 0x5c, 0x7f, 0x6b, 0x4e, 0x44, 0x8e, 0xcd, 0xe1, 0xc8, 0xfd, 0x8a, 0xde, 0xed, 0x30, - 0xe4, 0xe2, 0x53, 0x5b, 0x0f, 0xcc, 0xf8, 0x19, 0x75, 0xb0, 0xeb, 0x19, 0x95, 0x23, 0xdd, 0x26, - 0x57, 0x78, 0xb4, 0x18, 0x0e, 0x1c, 0xc0, 0x97, 0xea, 0x3d, 0x70, 0x8d, 0x85, 0x45, 0x90, 0x7d, - 0x5d, 0xf8, 0xc9, 0x41, 0xff, 0x2f, 0x3e, 0x46, 0x33, 0xd0, 0x99, 0x21, 0x17, 0xfd, 0xc2, 0x7e, - 0x85, 0x59, 0x5a, 0x33, 0xcf, 0x89, 0x19, 0xb0, 0x9c, 0xf2, 0xe3, 0xf8, 0x18, 0x1a, 0x2a, 0x0f, - 0xd7, 0xf3, 0x85, 0xbf, 0x2e, 0xc2, 0xe0, 0x9a, 0x57, 0xd7, 0x6f, 0xc2, 0x08, 0xf3, 0x2c, 0x6b, - 0x32, 0xd1, 0x8a, 0xdc, 0xdb, 0xa7, 0xe2, 0xc5, 0x2c, 0x89, 0xe8, 0x98, 0x5c, 0x85, 0x43, 0xfc, - 0xcb, 0xa8, 0xc7, 0x45, 0x85, 0x39, 0xa1, 0xe2, 0x65, 0x05, 0xa1, 0x08, 0xe4, 0x55, 0x38, 0xc8, - 0x3e, 0x40, 0x3a, 0x2b, 0x2d, 0x1d, 0x88, 0x14, 0x2f, 0x65, 0x8a, 0x44, 0xea, 0x5f, 0x86, 0x83, - 0xec, 0x26, 0x5e, 0xac, 0x3e, 0x2e, 0x52, 0x3c, 0x2f, 0x15, 0x89, 0x54, 0xbf, 0x02, 0xa3, 0xdc, - 0x5e, 0xbc, 0x24, 0x2d, 0x88, 0x65, 0x54, 0x95, 0xbf, 0x01, 0xe3, 0xe9, 0x1b, 0xf1, 0x59, 0x39, - 0x0e, 0x27, 0xde, 0x0b, 0x64, 0xb4, 0xc9, 0x56, 0x83, 0x0c, 0xc5, 0xbb, 0x81, 0x4c, 0x6c, 0xa0, - 0xe5, 0x90, 0xbc, 0xb8, 0x2a, 0xe4, 0x16, 0x1c, 0x4e, 0xbc, 0x3e, 0x3b, 0x27, 0x2c, 0xca, 0x49, - 0x15, 0x67, 0x54, 0xa4, 0xc4, 0x38, 0x74, 0x4e, 0xc8, 0xc0, 0x21, 0x52, 0x59, 0x38, 0xdc, 0x2b, - 0x2d, 0x06, 0x87, 0x3e, 0xbf, 0xca, 0xc0, 0x21, 0x52, 0x59, 0x38, 0xdc, 0x8b, 0x2a, 0x0b, 0x74, - 0xc1, 0x4b, 0xa9, 0x29, 0xb9, 0x8e, 0x50, 0xae, 0x58, 0x56, 0x93, 0x8b, 0xd0, 0x9e, 0x87, 0xfd, - 0x9d, 0xc7, 0x4c, 0xa7, 0x45, 0x85, 0xa3, 0x6c, 0x71, 0xc3, 0x27, 0x9f, 0x20, 0xbd, 0x04, 0x07, - 0xe2, 0x8f, 0x46, 0xce, 0x88, 0x4a, 0xc5, 0x04, 0x8a, 0x17, 0x32, 0x04, 0xe2, 0x33, 0x18, 0xfb, - 0x54, 0xe9, 0x6c, 0x6a, 0xc9, 0x50, 0x44, 0x3c, 0x83, 0x09, 0x1f, 0x1c, 0x05, 0xb3, 0x30, 0xff, - 0xd8, 0xe8, 0x71, 0x69, 0x69, 0x22, 0x24, 0x9e, 0x85, 0x53, 0x1e, 0x01, 0xe9, 0xef, 0x68, 0x50, - 0x94, 0xbc, 0x00, 0x2a, 0x4b, 0x75, 0x25, 0xe4, 0x8b, 0x4f, 0xe7, 0x93, 0x8f, 0x68, 0x20, 0xd0, - 0x05, 0x0f, 0x64, 0xa6, 0x52, 0xb5, 0x31, 0x72, 0x92, 0x16, 0xe3, 0xfa, 0x72, 0x1b, 0x4e, 0x49, - 0x5f, 0xc5, 0x5c, 0xc9, 0x50, 0x94, 0x28, 0xa1, 0x0e, 0x5d, 0x87, 0xa3, 0xa2, 0xd7, 0x2f, 0x17, - 0x32, 0x11, 0x89, 0xa0, 0x3a, 0xd0, 0x9b, 0x30, 0x91, 0xf1, 0xda, 0x65, 0x21, 0x43, 0x95, 0xa0, - 0x8c, 0x3a, 0xfc, 0x0f, 0x34, 0x98, 0xc9, 0xf5, 0x02, 0xe4, 0xdf, 0xf3, 0xb3, 0x61, 0x35, 0xa8, - 0x73, 0xfb, 0x91, 0x06, 0xb3, 0xf9, 0xde, 0xdb, 0x2c, 0x76, 0x4f, 0x8e, 0xaa, 0x50, 0x67, 0xe7, - 0xc0, 0x71, 0xf1, 0x7b, 0x92, 0xf4, 0x39, 0x83, 0x17, 0x95, 0x8c, 0x7d, 0x41, 0x58, 0xf0, 0x9b, - 0x74, 0x34, 0xa4, 0xbd, 0x10, 0xb9, 0xa2, 0x8c, 0x4b, 0x4b, 0xe4, 0x83, 0xbf, 0x05, 0xe3, 0xe9, - 0x6f, 0x3f, 0x66, 0x95, 0xb1, 0x03, 0xf1, 0x7c, 0xc0, 0xff, 0x07, 0x27, 0x65, 0xcf, 0x3e, 0xe6, - 0x94, 0xa1, 0xe9, 0xae, 0x34, 0x17, 0xf8, 0x0e, 0x9d, 0x07, 0xb8, 0x27, 0x1f, 0x17, 0x14, 0x74, - 0x04, 0x82, 0xf9, 0xc0, 0x5a, 0x50, 0x48, 0x7d, 0xa2, 0x31, 0xa3, 0x88, 0x88, 0xa5, 0x7b, 0xb5, - 0x11, 0x3f, 0xa5, 0x50, 0xb1, 0x31, 0x10, 0xcc, 0x07, 0xf6, 0x06, 0x9c, 0x48, 0x79, 0x3e, 0x31, - 0xad, 0xa4, 0x86, 0x8c, 0xd2, 0x5c, 0x90, 0x77, 0xe0, 0xb4, 0xfc, 0x45, 0xc4, 0xbc, 0x3a, 0x72, - 0x57, 0x43, 0xa7, 0x4d, 0x17, 0x6d, 0xf1, 0x63, 0x87, 0xb2, 0x3a, 0x7a, 0xfe, 0xc1, 0x93, 0x9c, - 0x34, 0xd8, 0x87, 0x0e, 0x57, 0xd4, 0xc1, 0xbb, 0x19, 0x3e, 0x4d, 0x28, 0xa4, 0x06, 0xee, 0x0b, - 0x7b, 0x74, 0x9a, 0x74, 0x71, 0x4a, 0x2e, 0x1d, 0x21, 0xda, 0x30, 0x96, 0xf6, 0x96, 0xe1, 0xb2, - 0x12, 0x20, 0x11, 0x56, 0xc6, 0x73, 0x61, 0x3c, 0x3d, 0xe8, 0x7e, 0x36, 0x4b, 0x09, 0x23, 0xae, - 0x8c, 0xc9, 0xd4, 0x2a, 0xf7, 0x14, 0x61, 0x46, 0x0d, 0x32, 0xa7, 0x95, 0x16, 0x9c, 0x48, 0x89, - 0x9b, 0x9f, 0x96, 0x6b, 0x88, 0xcb, 0x2a, 0xa3, 0xbd, 0x0e, 0xc7, 0xc5, 0x6f, 0x08, 0x2e, 0x29, - 0x80, 0xe5, 0xb4, 0xec, 0x55, 0x38, 0xc8, 0xc6, 0xdd, 0x0b, 0x4f, 0x05, 0x8c, 0x88, 0xf8, 0x54, - 0x20, 0x8e, 0xb2, 0xb7, 0x40, 0x17, 0x84, 0xca, 0x4f, 0xa5, 0x2b, 0x88, 0xcb, 0x89, 0x8f, 0x63, - 0x92, 0x90, 0xf7, 0xe0, 0x78, 0x20, 0x09, 0x33, 0x4f, 0x53, 0x97, 0x22, 0x2f, 0x3e, 0x1e, 0x64, - 0x47, 0x8e, 0xeb, 0x37, 0x61, 0x84, 0x09, 0x1b, 0x9f, 0x4c, 0xd7, 0x43, 0x24, 0xc4, 0xce, 0x2e, - 0x51, 0x8c, 0xb8, 0x7e, 0x13, 0x46, 0xb9, 0xcb, 0x31, 0xa1, 0x37, 0x87, 0x95, 0x29, 0x9e, 0x93, - 0xc9, 0xc4, 0x1a, 0x6b, 0x2c, 0xed, 0x4e, 0xe3, 0xb2, 0x4c, 0x01, 0x27, 0xac, 0x88, 0x76, 0x1b, - 0x4e, 0xcb, 0xaf, 0x2a, 0xe6, 0x65, 0x6a, 0x84, 0x45, 0x7a, 0x46, 0xa6, 0xde, 0xf4, 0x3c, 0xc8, - 0xa4, 0x48, 0xb7, 0xc8, 0xfc, 0x25, 0x83, 0x02, 0x32, 0x57, 0xa4, 0x67, 0x64, 0x75, 0x9b, 0xb9, - 0x22, 0x8a, 0xc8, 0x2e, 0x14, 0x25, 0xd7, 0x03, 0xe5, 0x6c, 0xd8, 0xb8, 0xbc, 0x22, 0xe6, 0x26, - 0xe8, 0x02, 0xf7, 0xfe, 0x94, 0xac, 0x6c, 0x47, 0x4e, 0x11, 0xa3, 0x06, 0x47, 0x45, 0x7e, 0xfc, - 0x0b, 0x99, 0x20, 0x74, 0x23, 0xa1, 0x86, 0x12, 0x1b, 0xef, 0xd4, 0x3b, 0x27, 0x1d, 0xef, 0xd4, - 0x37, 0xa7, 0xa6, 0xfb, 0x35, 0x18, 0xe5, 0x9e, 0x86, 0x08, 0x75, 0xb3, 0x32, 0xe2, 0xb9, 0x4a, - 0xf8, 0x68, 0x65, 0x13, 0x0e, 0x27, 0x5e, 0x88, 0x9c, 0x4b, 0x2f, 0xdd, 0x91, 0xca, 0x81, 0xb1, - 0x0d, 0x47, 0x45, 0x2f, 0x45, 0x2e, 0xa4, 0x2b, 0x60, 0x04, 0xbb, 0x46, 0x8a, 0xd6, 0xb2, 0x2c, - 0xa4, 0x68, 0x31, 0x53, 0x47, 0xaa, 0xc1, 0x91, 0xe4, 0xe3, 0x8c, 0xf3, 0x59, 0x38, 0x58, 0xac, - 0xbb, 0xd6, 0x89, 0x1e, 0x20, 0x48, 0x5b, 0x27, 0x94, 0xca, 0x81, 0xb1, 0x05, 0xba, 0xe0, 0x2d, - 0xc1, 0x54, 0x26, 0x0a, 0x96, 0xcb, 0x81, 0xf3, 0x22, 0x40, 0xec, 0x15, 0xc1, 0x44, 0x7a, 0x39, - 0xec, 0x89, 0x55, 0xd7, 0x7b, 0x13, 0x46, 0x98, 0x20, 0xfe, 0x49, 0xc9, 0xf8, 0xc0, 0x12, 0x32, - 0xdd, 0x6c, 0x4c, 0xbd, 0x6e, 0xc1, 0x71, 0x71, 0x40, 0xfd, 0x25, 0x19, 0x3d, 0x46, 0x34, 0x87, - 0x25, 0x4d, 0x18, 0x4b, 0x0b, 0xaf, 0xbf, 0x9c, 0x89, 0xd7, 0xd5, 0xc8, 0x6c, 0x85, 0xf6, 0xf1, - 0xd1, 0xf6, 0x12, 0xfb, 0x38, 0xd1, 0xe2, 0xbc, 0x82, 0x28, 0x07, 0xbb, 0x0b, 0x27, 0x52, 0x62, - 0xe7, 0xa7, 0xd3, 0x95, 0xf1, 0xb2, 0xc5, 0x2b, 0xd9, 0xb2, 0x1c, 0xee, 0x1d, 0x18, 0x4f, 0x8f, - 0x65, 0x9f, 0x95, 0xaa, 0xe3, 0xc5, 0x8b, 0x4f, 0x28, 0x89, 0x27, 0xc6, 0xda, 0xe1, 0x44, 0x08, - 0xb3, 0x78, 0x3c, 0x73, 0x52, 0xe2, 0x1b, 0x96, 0xd4, 0xa8, 0x64, 0x06, 0x47, 0x76, 0x63, 0xc4, - 0x4b, 0x65, 0xe1, 0x70, 0x37, 0x46, 0x5f, 0xd3, 0xe0, 0xa4, 0x2c, 0x3a, 0x78, 0x4e, 0xae, 0x2d, - 0x51, 0xa0, 0xf8, 0x2f, 0x39, 0x0b, 0x44, 0x4c, 0xde, 0xd5, 0x60, 0x22, 0x23, 0xd2, 0x77, 0x41, - 0x55, 0x77, 0xa7, 0x4c, 0xf1, 0x6a, 0xfe, 0x32, 0x31, 0xa7, 0xe0, 0x58, 0x5a, 0x70, 0xef, 0x65, - 0xb9, 0x5a, 0x46, 0x38, 0xa5, 0xa7, 0xc9, 0x03, 0x76, 0xf1, 0x31, 0x4b, 0x12, 0xae, 0x5b, 0x56, - 0xd1, 0x19, 0xab, 0x87, 0xa7, 0xf3, 0xc9, 0xcb, 0xea, 0x20, 0x8c, 0xd2, 0x55, 0xaa, 0x03, 0x2a, - 0xac, 0x56, 0x07, 0x5c, 0xe4, 0x6d, 0x71, 0xf8, 0x4b, 0x0f, 0xee, 0x4d, 0x6b, 0x4b, 0xf3, 0x1f, - 0x7e, 0x3a, 0xa1, 0x7d, 0xf4, 0xe9, 0x84, 0xf6, 0xf7, 0x4f, 0x27, 0xb4, 0x77, 0x3f, 0x9b, 0xd8, - 0xf3, 0xd1, 0x67, 0x13, 0x7b, 0xfe, 0xf2, 0xd9, 0xc4, 0x9e, 0x9b, 0x63, 0xc9, 0xff, 0xf1, 0x15, - 0x47, 0x0e, 0x6e, 0xee, 0xc5, 0xff, 0x59, 0xed, 0x13, 0xff, 0x0c, 0x00, 0x00, 0xff, 0xff, 0xce, - 0x90, 0x3b, 0x39, 0x06, 0x58, 0x00, 0x00, + // 4235 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5c, 0xed, 0x6f, 0x1c, 0x49, + 0x5a, 0x4f, 0xfb, 0x6d, 0x37, 0x4f, 0x1c, 0x27, 0xee, 0xc4, 0xb1, 0x3d, 0x49, 0x6c, 0x67, 0x36, + 0xeb, 0x64, 0x1d, 0x7b, 0x1c, 0xfb, 0xf6, 0x16, 0x29, 0x3a, 0x01, 0x7e, 0x59, 0x82, 0xb9, 0x35, + 0xf1, 0x8d, 0xb3, 0xbb, 0x6c, 0x56, 0xb9, 0xa5, 0xdd, 0x53, 0x1e, 0xf7, 0xba, 0xa7, 0x7b, 0xb6, + 0xbb, 0xc7, 0xc9, 0x00, 0x7b, 0x81, 0xdc, 0x01, 0xf7, 0x22, 0xa1, 0x05, 0x21, 0x21, 0xde, 0x4f, + 0x07, 0x48, 0x27, 0xc4, 0x87, 0x08, 0x56, 0x42, 0x02, 0xf1, 0x7d, 0xbf, 0x00, 0xa7, 0x15, 0x42, + 0xe8, 0x3e, 0xe4, 0xd0, 0x2e, 0x52, 0xf8, 0xc8, 0x9f, 0x80, 0xba, 0xaa, 0xba, 0xa7, 0xaa, 0xba, + 0xba, 0xba, 0x7b, 0x66, 0x92, 0xcd, 0x87, 0xfb, 0x92, 0x71, 0x57, 0x3d, 0xf5, 0xfc, 0x7e, 0x4f, + 0xbd, 0xd7, 0x53, 0xf5, 0x04, 0xa6, 0xfc, 0xc0, 0x6b, 0x99, 0x81, 0xbf, 0x1c, 0xfd, 0x06, 0xf7, + 0x2b, 0x4d, 0xcf, 0x0d, 0x5c, 0xfd, 0x14, 0x4d, 0xa9, 0xd0, 0xdf, 0xd2, 0xb8, 0xd1, 0xb0, 0x1c, + 0x77, 0x19, 0xff, 0x4b, 0x64, 0x4a, 0x93, 0xa6, 0xeb, 0x37, 0x5c, 0x7f, 0xb9, 0xe1, 0xd7, 0x97, + 0x8f, 0x56, 0xc2, 0x1f, 0x9a, 0x31, 0x4d, 0x32, 0xde, 0xc3, 0x5f, 0xcb, 0xe4, 0x83, 0x66, 0x9d, + 0xad, 0xbb, 0x75, 0x97, 0xa4, 0x87, 0x7f, 0xd1, 0xd4, 0x0b, 0x22, 0x8f, 0xa6, 0xe1, 0x19, 0x8d, + 0xa8, 0xcc, 0x0c, 0xc5, 0xd9, 0x33, 0x7c, 0xb4, 0x7c, 0xb4, 0xb2, 0x87, 0x02, 0x63, 0x65, 0xd9, + 0x74, 0x2d, 0x87, 0xe6, 0xcf, 0xd6, 0x5d, 0xb7, 0x6e, 0xa3, 0x65, 0xfc, 0xb5, 0xd7, 0xda, 0x5f, + 0x0e, 0xac, 0x06, 0xf2, 0x03, 0xa3, 0xd1, 0xa4, 0x02, 0x25, 0x51, 0xfd, 0x21, 0x6a, 0x47, 0xca, + 0xcf, 0x8b, 0x79, 0xfb, 0x36, 0x42, 0x41, 0x5a, 0x66, 0xbd, 0x65, 0xd9, 0xb5, 0x54, 0xd2, 0xb6, + 0xe1, 0xc4, 0x45, 0x13, 0xb9, 0xe4, 0x97, 0xe4, 0x96, 0xff, 0x59, 0x83, 0x53, 0xdb, 0x7e, 0xfd, + 0xcd, 0x66, 0xcd, 0x08, 0xd0, 0x0e, 0x36, 0x56, 0x7f, 0x0d, 0x8e, 0x1b, 0xad, 0xe0, 0xc0, 0xf5, + 0xac, 0xa0, 0x3d, 0xa5, 0xcd, 0x69, 0x57, 0x8f, 0xaf, 0x4f, 0x7d, 0xfa, 0xf1, 0xd2, 0x59, 0x5a, + 0x7f, 0x6b, 0xb5, 0x9a, 0x87, 0x7c, 0x7f, 0x37, 0xf0, 0x2c, 0xa7, 0x5e, 0xed, 0x88, 0xea, 0x37, + 0x60, 0x84, 0x54, 0xd7, 0xd4, 0xc0, 0x9c, 0x76, 0xf5, 0xc4, 0xea, 0x64, 0x45, 0x68, 0xbb, 0x0a, + 0x01, 0x58, 0x3f, 0xfe, 0xc9, 0xe3, 0xd9, 0x63, 0x3f, 0x7c, 0xf2, 0x68, 0x41, 0xab, 0xd2, 0x12, + 0x37, 0x5e, 0x7d, 0xf8, 0xe4, 0xd1, 0x42, 0x47, 0xd7, 0x77, 0x9f, 0x3c, 0x5a, 0xb8, 0x14, 0x11, + 0xbe, 0x1f, 0x53, 0x17, 0x98, 0x96, 0xa7, 0x61, 0x52, 0x48, 0xaa, 0x22, 0xbf, 0xe9, 0x3a, 0x3e, + 0x2a, 0x3f, 0xd6, 0x40, 0xdf, 0xf6, 0xeb, 0x94, 0x6c, 0x15, 0xd5, 0x2d, 0x3f, 0x40, 0x9e, 0x3e, + 0x05, 0x2f, 0x98, 0x1e, 0x32, 0x02, 0xd7, 0x23, 0x96, 0x55, 0xa3, 0x4f, 0xbd, 0x04, 0x2f, 0x36, + 0x6d, 0xa3, 0x8d, 0xbc, 0xad, 0x1a, 0xe6, 0x7f, 0xbc, 0x1a, 0x7f, 0x87, 0xa5, 0x0c, 0xa2, 0x68, + 0x6a, 0x90, 0x94, 0xa2, 0x9f, 0xfa, 0x1c, 0x9c, 0x68, 0x7a, 0xae, 0xbb, 0xbf, 0xd3, 0xda, 0xfb, + 0x2a, 0x6a, 0x4f, 0x0d, 0xe1, 0x5c, 0x36, 0x49, 0x9f, 0x87, 0x31, 0xfc, 0xb9, 0x6b, 0xd5, 0x1d, + 0x23, 0x68, 0x79, 0x68, 0x6a, 0x18, 0x0b, 0x09, 0xa9, 0x58, 0x13, 0xf2, 0x1a, 0x96, 0xef, 0x5b, + 0xae, 0xe3, 0x4f, 0x8d, 0xcc, 0x69, 0x57, 0x87, 0xaa, 0x6c, 0xd2, 0x8d, 0xd1, 0xb0, 0x8e, 0x22, + 0xbe, 0xe5, 0x0b, 0x50, 0x4a, 0xda, 0x17, 0x9b, 0x7f, 0x1b, 0x4e, 0xb3, 0xb9, 0x47, 0xee, 0x21, + 0x52, 0xd8, 0xce, 0xd8, 0x37, 0xc0, 0xd9, 0x27, 0x60, 0x96, 0x60, 0x4a, 0xd4, 0x1a, 0x23, 0xfe, + 0x8f, 0x06, 0x67, 0xc2, 0x4c, 0xdb, 0x76, 0x4d, 0x23, 0xb0, 0x5c, 0x67, 0x23, 0x2c, 0xa4, 0x42, + 0x9d, 0x01, 0x30, 0x5d, 0x27, 0xf0, 0x5c, 0xdb, 0x46, 0x1e, 0x05, 0x66, 0x52, 0xc2, 0x9a, 0xf3, + 0xdd, 0x96, 0x67, 0xa2, 0x5b, 0x7b, 0xef, 0x23, 0x33, 0xd8, 0xaa, 0xd1, 0xca, 0x17, 0x52, 0xf5, + 0x9b, 0x30, 0x66, 0xc4, 0xa8, 0xb7, 0xdb, 0x4d, 0x84, 0x9b, 0x61, 0x6c, 0x75, 0x36, 0xd1, 0xff, + 0x78, 0xb1, 0xaa, 0x50, 0x4c, 0x3f, 0x0b, 0xc3, 0x4d, 0xf7, 0x1e, 0xf2, 0x70, 0x0b, 0x0d, 0x55, + 0xc9, 0x87, 0x50, 0x05, 0x6b, 0x70, 0x5e, 0x62, 0x65, 0x54, 0x0b, 0x7a, 0x19, 0x46, 0x3b, 0x4a, + 0xb7, 0x6a, 0xd4, 0x64, 0x2e, 0xad, 0x6c, 0x08, 0x15, 0xb5, 0x89, 0x6c, 0xa4, 0xac, 0x28, 0x51, + 0xe9, 0x40, 0x52, 0x69, 0x06, 0x4b, 0x02, 0x51, 0x88, 0xe5, 0x3d, 0x81, 0x25, 0x19, 0x65, 0xbd, + 0xb1, 0xec, 0xd4, 0xf0, 0x60, 0xfe, 0x1a, 0x26, 0xc0, 0x85, 0xb8, 0x7f, 0x53, 0x83, 0x09, 0x4e, + 0xc7, 0x6d, 0xcf, 0x70, 0xfc, 0x7d, 0xe5, 0xf8, 0xcf, 0x43, 0x9f, 0xef, 0xb1, 0x83, 0x62, 0x8f, + 0x15, 0x0c, 0xd9, 0x80, 0x8b, 0x52, 0x12, 0x85, 0x4c, 0xf9, 0x1d, 0x0d, 0x46, 0xb7, 0xfd, 0xfa, + 0x2f, 0x84, 0x8b, 0xc1, 0xb6, 0x7b, 0x94, 0x31, 0x8a, 0xf1, 0x9a, 0x11, 0x93, 0x8f, 0x3e, 0xf5, + 0x57, 0x61, 0xa2, 0x86, 0xfc, 0xc0, 0x72, 0xb0, 0xd6, 0x37, 0x3a, 0x88, 0xc4, 0x04, 0x79, 0xa6, + 0x60, 0xcd, 0x26, 0x9c, 0x65, 0x79, 0xc4, 0x46, 0x2c, 0xc2, 0x30, 0x86, 0xc1, 0x6c, 0x4e, 0xac, + 0x9e, 0x4b, 0x0c, 0x3a, 0x5c, 0xa4, 0x4a, 0x84, 0xca, 0xdf, 0xc0, 0xf3, 0xd2, 0xcd, 0x70, 0xf5, + 0x5a, 0x37, 0x9c, 0xc3, 0x6d, 0xcb, 0x09, 0x14, 0x16, 0xcd, 0xc1, 0x09, 0xa3, 0xe1, 0xb6, 0x9c, + 0x60, 0xcd, 0x6e, 0x1e, 0x18, 0xd8, 0xaa, 0xa1, 0x2a, 0x9b, 0xd4, 0x91, 0xb8, 0xed, 0x1e, 0x22, + 0x87, 0x76, 0x2b, 0x36, 0x49, 0x3a, 0x83, 0x71, 0xf8, 0xf1, 0x0c, 0xf6, 0x88, 0x2c, 0x19, 0x71, + 0x66, 0x15, 0xd5, 0x10, 0x6a, 0x28, 0xe8, 0x79, 0x3c, 0x38, 0x59, 0xf5, 0xa6, 0x2b, 0x74, 0x9d, + 0x0c, 0x77, 0x09, 0x15, 0xba, 0x4b, 0xa8, 0x6c, 0xb8, 0x96, 0xb3, 0xfe, 0xe5, 0x70, 0xdd, 0xfb, + 0xdb, 0x9f, 0xcc, 0x5e, 0xad, 0x5b, 0xc1, 0x41, 0x6b, 0xaf, 0x62, 0xba, 0x0d, 0xba, 0x29, 0xa1, + 0x3f, 0x4b, 0x7e, 0xed, 0x70, 0x39, 0x68, 0x37, 0x91, 0x8f, 0x0b, 0xf8, 0x64, 0x8d, 0x54, 0x98, + 0x43, 0x16, 0x01, 0x81, 0x71, 0x6c, 0xd0, 0x37, 0x35, 0xdc, 0x03, 0xe3, 0xec, 0x0d, 0xd7, 0xd9, + 0xb7, 0x7c, 0xd3, 0x08, 0xd0, 0x9a, 0x53, 0x5b, 0x6f, 0x79, 0x4e, 0x37, 0x4b, 0x42, 0xe1, 0x2a, + 0xbf, 0x02, 0x2f, 0x2b, 0x49, 0xc4, 0x74, 0x1f, 0x6a, 0x30, 0x16, 0x49, 0x66, 0x2e, 0x1e, 0x25, + 0x78, 0x11, 0x39, 0xb5, 0xa6, 0x6b, 0x39, 0x41, 0xb4, 0x5c, 0x47, 0xdf, 0xfa, 0x22, 0x8c, 0x23, + 0x27, 0xf0, 0xda, 0xbb, 0xad, 0x3d, 0x3f, 0xe0, 0xbb, 0x7a, 0x32, 0x43, 0x60, 0xbb, 0x0a, 0xe7, + 0x78, 0x0e, 0x71, 0x47, 0x9f, 0x82, 0x17, 0xf0, 0xae, 0x2b, 0x1e, 0xa8, 0xd1, 0x67, 0xd9, 0xc5, + 0xb3, 0x0d, 0x2e, 0x43, 0x26, 0xab, 0x5b, 0xf7, 0x9c, 0x68, 0xdf, 0x90, 0x5e, 0xbd, 0x91, 0xb2, + 0x01, 0x4e, 0x59, 0x38, 0x45, 0xba, 0x61, 0x71, 0x4a, 0x98, 0x7c, 0x08, 0x24, 0x7f, 0x5f, 0x83, + 0x59, 0x1e, 0xf1, 0x75, 0xd1, 0xac, 0xae, 0xb0, 0x7b, 0xa9, 0xb8, 0xa3, 0x4e, 0xc5, 0x45, 0x94, + 0x68, 0x73, 0x74, 0xc3, 0x84, 0x6d, 0xde, 0x41, 0xbe, 0x79, 0x05, 0xdc, 0x3f, 0xd2, 0xe0, 0x12, + 0x0f, 0xfc, 0x4b, 0xae, 0xe5, 0x6c, 0x39, 0xfb, 0xad, 0x70, 0xd7, 0xb4, 0x6d, 0x39, 0x56, 0xa3, + 0xd5, 0xe8, 0x8a, 0xc3, 0x75, 0x38, 0xf3, 0x7e, 0x52, 0x15, 0xed, 0xf0, 0xb2, 0x2c, 0x81, 0xd9, + 0xbf, 0x6b, 0x70, 0x3d, 0x93, 0xd9, 0x7a, 0xbb, 0x69, 0xf8, 0xfe, 0x7a, 0xbb, 0x8a, 0x3e, 0x68, + 0x21, 0xbf, 0xbb, 0xca, 0x7a, 0x07, 0xce, 0xe2, 0x3f, 0x43, 0xf5, 0x44, 0xdf, 0x1b, 0xe8, 0x08, + 0xd9, 0x98, 0xe9, 0xd8, 0xea, 0xcb, 0x89, 0x19, 0x59, 0x26, 0x5c, 0x95, 0xaa, 0x10, 0x2c, 0xfa, + 0x37, 0x0d, 0x96, 0x73, 0x5b, 0xb4, 0xe5, 0x1c, 0x59, 0x01, 0x7a, 0xbe, 0x0d, 0x9a, 0x12, 0x3b, + 0x6d, 0x3c, 0x19, 0xfd, 0x99, 0xd6, 0x59, 0x29, 0xb6, 0x51, 0x63, 0x0f, 0x79, 0xfe, 0x81, 0xd5, + 0xec, 0xc1, 0x26, 0xf6, 0x7c, 0x31, 0x28, 0x9c, 0x2f, 0xca, 0x30, 0xea, 0xb3, 0x43, 0x8e, 0x1c, + 0x23, 0xb8, 0x34, 0x81, 0xf8, 0x5f, 0x31, 0x33, 0x80, 0x48, 0x6f, 0xad, 0xd9, 0xf4, 0x32, 0x77, + 0x0a, 0xcf, 0x84, 0xe5, 0x6f, 0xc0, 0x85, 0x34, 0x92, 0x9b, 0xc8, 0x69, 0xf7, 0x9b, 0xa1, 0x80, + 0xfe, 0x0d, 0x98, 0x49, 0x43, 0xcf, 0x73, 0x22, 0xea, 0x19, 0xff, 0x9f, 0xb4, 0x4e, 0xef, 0xea, + 0x10, 0x08, 0x3b, 0xe4, 0x17, 0xd1, 0x34, 0xe1, 0xe6, 0xd5, 0xa2, 0x23, 0x75, 0xab, 0x36, 0x35, + 0x3c, 0x37, 0x18, 0x6e, 0x5e, 0x3b, 0x29, 0x02, 0xf9, 0x7f, 0xd5, 0xf0, 0x36, 0x5c, 0x42, 0x7e, + 0xc7, 0x73, 0xef, 0xb7, 0xbb, 0xda, 0x39, 0x88, 0x2c, 0x07, 0x25, 0x2c, 0xfb, 0x76, 0xa0, 0x4e, + 0x5f, 0x9e, 0x3a, 0xe6, 0x7c, 0xd5, 0x32, 0x0f, 0x9f, 0x72, 0x27, 0xf8, 0x73, 0x0d, 0xa6, 0x93, + 0xc0, 0xbd, 0xcc, 0xf6, 0xfd, 0x1d, 0xa2, 0x7f, 0xad, 0xc1, 0x5c, 0x2a, 0xbf, 0xe7, 0x67, 0x26, + 0xf9, 0xb0, 0xb3, 0x93, 0x4d, 0xb0, 0x7c, 0x06, 0x53, 0xc9, 0x03, 0xd9, 0x6c, 0x4b, 0xe1, 0x9f, + 0xc9, 0x5c, 0xf2, 0x1d, 0xad, 0xb3, 0xd3, 0x67, 0x19, 0xd0, 0xbd, 0xe9, 0x21, 0x94, 0xea, 0x7c, + 0xd6, 0x5a, 0xb3, 0x69, 0x5b, 0xe4, 0x28, 0x47, 0x4f, 0x66, 0xd7, 0x12, 0xcb, 0xe6, 0xcd, 0xd4, + 0x22, 0x55, 0x85, 0xba, 0xf2, 0x5f, 0x10, 0x2e, 0x3b, 0xb1, 0x6b, 0xea, 0xa6, 0x67, 0x38, 0xc1, + 0x2d, 0x87, 0x38, 0x64, 0xd4, 0x7b, 0x76, 0x37, 0x72, 0xe5, 0xd0, 0x3d, 0x7b, 0xf4, 0xad, 0xec, + 0x2e, 0x82, 0x6b, 0x6c, 0x28, 0xcb, 0x35, 0xf6, 0x5b, 0x64, 0xee, 0x4a, 0x10, 0xa4, 0x8e, 0xab, + 0x6e, 0x4f, 0x3d, 0x2c, 0x87, 0xc1, 0x2c, 0x0e, 0x7f, 0x29, 0x72, 0x20, 0xdd, 0xe4, 0x39, 0xaa, + 0xa5, 0x87, 0x1a, 0x5e, 0x9d, 0x93, 0x0c, 0x9f, 0x65, 0x35, 0xd1, 0x6d, 0x56, 0x87, 0xc4, 0x2e, + 0x7a, 0x9e, 0x7a, 0xd2, 0x03, 0x3c, 0x79, 0x0b, 0xec, 0x9e, 0x65, 0xfd, 0x4c, 0xe2, 0xa3, 0x25, + 0xdb, 0x46, 0x74, 0x7f, 0xfa, 0x16, 0x76, 0xa4, 0xec, 0x60, 0x4f, 0xff, 0xeb, 0xf7, 0x9b, 0xb6, + 0xeb, 0xa1, 0xee, 0x9c, 0xdb, 0x02, 0xe0, 0xd7, 0x48, 0x7b, 0xb0, 0x7a, 0xe3, 0x59, 0xe6, 0xcb, + 0x30, 0x42, 0xae, 0x16, 0xe8, 0x8c, 0x22, 0x71, 0xf0, 0xe3, 0xec, 0xf5, 0xa1, 0x4f, 0x1e, 0xcf, + 0x1e, 0xab, 0x52, 0xe1, 0xf2, 0x6f, 0x13, 0x6f, 0x1c, 0xc9, 0xab, 0x1a, 0x56, 0x6d, 0xc3, 0x6d, + 0x34, 0x33, 0x5c, 0x9e, 0xe9, 0xbe, 0xac, 0xb3, 0x30, 0x8c, 0x17, 0xfa, 0xe8, 0x7c, 0x8c, 0x3f, + 0xc2, 0x54, 0xc7, 0x75, 0x4c, 0x44, 0x97, 0x12, 0xf2, 0x21, 0x98, 0xf6, 0x43, 0xe2, 0x0e, 0x49, + 0xf2, 0x88, 0x0d, 0x5c, 0xcd, 0xe5, 0xcb, 0xa2, 0xe6, 0x11, 0x51, 0xa6, 0x52, 0x06, 0x0a, 0x54, + 0x8a, 0x7e, 0x01, 0x8e, 0xbb, 0x1e, 0xda, 0x0d, 0x5c, 0x3b, 0xf6, 0xa1, 0x74, 0x12, 0xca, 0xdf, + 0x8b, 0xa9, 0xb6, 0x91, 0x47, 0xef, 0x37, 0x3c, 0xab, 0x61, 0x78, 0xed, 0xec, 0xce, 0xa7, 0xba, + 0xc8, 0xc0, 0x7b, 0x27, 0x56, 0x4f, 0xe4, 0x52, 0xe7, 0x53, 0xa5, 0x1e, 0x9c, 0x74, 0x32, 0x71, + 0xa7, 0x7c, 0x13, 0x5f, 0x26, 0x11, 0xc1, 0x2a, 0xf2, 0x5b, 0x8d, 0xfe, 0xf4, 0x49, 0x72, 0xcd, + 0xc3, 0xaa, 0x8d, 0x11, 0xff, 0x71, 0x00, 0x8f, 0x83, 0x2a, 0x32, 0xcc, 0xc0, 0xf5, 0xf0, 0x49, + 0x54, 0x85, 0xf9, 0x3a, 0x8c, 0xd7, 0x90, 0x8d, 0xea, 0xe1, 0xc7, 0x7b, 0xdc, 0x10, 0x55, 0x5c, + 0x71, 0x9d, 0x8e, 0x8b, 0x44, 0x95, 0xff, 0xcb, 0x30, 0x7e, 0x64, 0xd8, 0x56, 0x8d, 0x53, 0x83, + 0x6b, 0x72, 0xfd, 0xd2, 0xa7, 0x1f, 0x2f, 0x5d, 0xa4, 0x6a, 0xde, 0x8a, 0x64, 0x04, 0x7d, 0x47, + 0x42, 0xba, 0xfe, 0x15, 0x18, 0x21, 0xfe, 0x33, 0xdc, 0x7d, 0x95, 0x3e, 0x44, 0xf6, 0xee, 0x8c, + 0x94, 0xb9, 0xf1, 0xea, 0xb7, 0xbf, 0x3f, 0x7b, 0xec, 0x7f, 0xbf, 0x3f, 0x7b, 0x8c, 0xad, 0xb4, + 0xef, 0x3e, 0x79, 0xb4, 0x70, 0x9e, 0xf1, 0x2a, 0x8a, 0x95, 0x44, 0x3d, 0xa1, 0x5c, 0x5a, 0x5c, + 0xab, 0x7f, 0x33, 0xc8, 0x66, 0xae, 0xa3, 0xba, 0xe5, 0x6c, 0x5b, 0x75, 0x0f, 0x2f, 0xff, 0x4f, + 0xbf, 0x76, 0xdf, 0x84, 0x89, 0x4e, 0xed, 0xfa, 0x9e, 0x59, 0xbc, 0x86, 0xcf, 0xc4, 0xe5, 0x77, + 0x3d, 0x53, 0xaa, 0xb6, 0xe6, 0x07, 0xb1, 0xda, 0xa1, 0xe2, 0x6a, 0x37, 0xfd, 0x20, 0xd9, 0x76, + 0xc3, 0x5d, 0xb4, 0xdd, 0x57, 0xd2, 0xda, 0xee, 0x25, 0x69, 0xdb, 0xf1, 0x4d, 0x51, 0x3e, 0xc2, + 0x7b, 0x77, 0x69, 0x5e, 0x3c, 0xa7, 0x55, 0xe1, 0x94, 0x49, 0xe6, 0x39, 0xcb, 0x75, 0xde, 0x0b, + 0xac, 0x06, 0xa2, 0xb3, 0x5b, 0xa9, 0x42, 0xae, 0xab, 0x2b, 0xd1, 0x75, 0x75, 0xe5, 0x76, 0x74, + 0x5d, 0xbd, 0x7e, 0x32, 0x64, 0xfa, 0xd1, 0x4f, 0x66, 0x35, 0xc2, 0x76, 0xac, 0xa3, 0x21, 0x94, + 0x11, 0x46, 0xdd, 0x26, 0xfa, 0xe9, 0xa8, 0xcb, 0x1c, 0x75, 0xa4, 0x92, 0xca, 0x7f, 0xa7, 0xb1, + 0x23, 0x8b, 0x24, 0x3e, 0xcd, 0xa6, 0x62, 0x8c, 0x1c, 0x28, 0x6e, 0x64, 0xf9, 0xff, 0x06, 0x58, + 0xba, 0x1b, 0x86, 0x63, 0x22, 0x1b, 0x93, 0x7e, 0x26, 0x13, 0xc1, 0x73, 0xd5, 0xe0, 0xfa, 0x15, + 0x38, 0x85, 0xed, 0x0b, 0xdb, 0xe6, 0x00, 0x59, 0xf5, 0x03, 0x32, 0xe2, 0x07, 0xab, 0x63, 0x51, + 0xf2, 0x2f, 0xe2, 0xd4, 0xa2, 0x63, 0x9a, 0xaf, 0xd5, 0x72, 0x99, 0x1d, 0xd3, 0x7c, 0x5e, 0x3c, + 0x3f, 0xef, 0xe0, 0x05, 0x71, 0x17, 0xef, 0x2f, 0x76, 0x03, 0x23, 0x68, 0xf9, 0xec, 0x1e, 0x8d, + 0xec, 0x3b, 0x52, 0xf7, 0x68, 0xa4, 0x58, 0xb4, 0x1d, 0x21, 0xa9, 0xe5, 0xb7, 0x61, 0x3c, 0xd6, + 0xb8, 0x66, 0x06, 0xd6, 0x51, 0xe6, 0xed, 0x0b, 0x29, 0xd8, 0x59, 0xbb, 0xa3, 0x6f, 0x61, 0xed, + 0x7e, 0x07, 0x5f, 0x23, 0x13, 0xc5, 0x9b, 0xa1, 0x51, 0xfd, 0x53, 0xfd, 0x1f, 0xc4, 0xbf, 0x46, + 0xed, 0xc1, 0x47, 0x6a, 0xc7, 0x0a, 0xac, 0x4c, 0xf5, 0xa9, 0xbb, 0xa3, 0x32, 0x8c, 0x12, 0xa8, + 0xdb, 0xed, 0x26, 0xa2, 0xa7, 0x87, 0xa1, 0x2a, 0x97, 0xa6, 0xff, 0x2c, 0x8c, 0xb9, 0x4d, 0x14, + 0xce, 0xb1, 0x4e, 0x7d, 0xad, 0xb1, 0x67, 0x05, 0xf4, 0xb1, 0x41, 0x72, 0xaf, 0x68, 0x84, 0xb9, + 0x55, 0x41, 0x5a, 0xd7, 0x61, 0xc8, 0xb7, 0xdd, 0x80, 0x3e, 0x31, 0xc0, 0x7f, 0x0b, 0x66, 0x7d, + 0x3b, 0x61, 0x56, 0x8e, 0xfd, 0xb2, 0xa2, 0xd6, 0x7a, 0xd8, 0x31, 0xdf, 0xc1, 0x77, 0xbe, 0x2c, + 0x13, 0xdc, 0x1f, 0xfb, 0xd2, 0x7a, 0x3f, 0x18, 0xc0, 0xee, 0x59, 0x89, 0x99, 0x6b, 0x4e, 0x6d, + 0x37, 0x30, 0xfc, 0x83, 0xa7, 0x6f, 0xae, 0xbe, 0x0a, 0x67, 0xfd, 0xc0, 0xf5, 0x8c, 0x3a, 0xda, + 0xec, 0x5c, 0x81, 0x63, 0xef, 0x68, 0x28, 0x24, 0xcd, 0xd3, 0x6f, 0x84, 0xbd, 0x04, 0xa7, 0x93, + 0xf6, 0x1f, 0x51, 0xb6, 0x3f, 0x27, 0x1b, 0x1e, 0xff, 0xe8, 0xf7, 0x6e, 0xd8, 0x09, 0x5e, 0x20, + 0xc7, 0x3f, 0x26, 0x29, 0x79, 0xb9, 0xc5, 0x0e, 0x9f, 0x7d, 0xe4, 0xf8, 0x68, 0x17, 0xa9, 0x4e, + 0xc6, 0x0b, 0x70, 0xba, 0x16, 0xca, 0xd5, 0x90, 0xb7, 0xcb, 0xd7, 0x50, 0x22, 0x5d, 0x5f, 0x84, + 0xf1, 0x70, 0x41, 0x41, 0x66, 0x80, 0x6a, 0xb1, 0x30, 0xbd, 0xee, 0x4b, 0x64, 0x08, 0xcc, 0x0e, + 0xf1, 0x99, 0x8e, 0x23, 0xb6, 0x61, 0x23, 0xc3, 0xeb, 0x0f, 0x35, 0x01, 0xec, 0x3f, 0x35, 0x38, + 0x19, 0xa3, 0x65, 0xbc, 0x82, 0x50, 0x75, 0x8d, 0x9f, 0x83, 0x51, 0xc9, 0x3b, 0xa1, 0xf3, 0x89, + 0xa6, 0x23, 0xbe, 0x04, 0xfc, 0x46, 0x88, 0x2b, 0xa0, 0x2f, 0xc2, 0x30, 0x6e, 0x56, 0xdc, 0x41, + 0xd2, 0x1b, 0x9d, 0x08, 0xc5, 0x63, 0x7d, 0x24, 0x75, 0xac, 0xff, 0x03, 0x79, 0x7e, 0x47, 0xe7, + 0xdd, 0x20, 0x30, 0x94, 0xfe, 0xe8, 0x45, 0x18, 0x8f, 0x67, 0x13, 0xa1, 0x06, 0x93, 0x19, 0xe1, + 0x59, 0x2f, 0x30, 0xbc, 0x3a, 0x0a, 0x98, 0xa6, 0x1d, 0x0c, 0xcf, 0x7a, 0x7c, 0x6a, 0x38, 0xeb, + 0xdd, 0x43, 0x46, 0xd3, 0x75, 0x76, 0xdb, 0x7e, 0x80, 0x1a, 0x91, 0x33, 0x96, 0x4d, 0x93, 0x9e, + 0xc7, 0x58, 0xd2, 0xf1, 0xca, 0xf4, 0x75, 0xbc, 0x5f, 0x88, 0x56, 0x26, 0x64, 0xd8, 0xc1, 0x41, + 0x5f, 0x97, 0x93, 0x5f, 0xc5, 0xae, 0x47, 0x4e, 0x7f, 0x9f, 0x57, 0x95, 0x87, 0x1a, 0x63, 0xc2, + 0x4d, 0xe4, 0x84, 0xd5, 0x9a, 0xe3, 0x64, 0xa9, 0xea, 0x76, 0x65, 0x18, 0xc5, 0xf7, 0x2c, 0x68, + 0x8d, 0xec, 0x3e, 0xe8, 0xbd, 0x07, 0x9b, 0x26, 0x90, 0x20, 0x9b, 0x00, 0x81, 0x03, 0xbf, 0xd2, + 0x97, 0xbf, 0x47, 0x6e, 0x16, 0x88, 0xd0, 0x2d, 0x0f, 0x6d, 0x5b, 0x0e, 0xf2, 0xbe, 0xb0, 0xa5, + 0xe2, 0x57, 0xb0, 0x87, 0x9c, 0x27, 0xd3, 0x9f, 0xad, 0xc9, 0xef, 0x11, 0x3f, 0x65, 0xac, 0xba, + 0x8a, 0xf6, 0x43, 0xe5, 0xed, 0x2f, 0xcc, 0xd4, 0x77, 0xa1, 0x2c, 0xe3, 0xd3, 0x1f, 0x6b, 0xff, + 0x45, 0x63, 0x26, 0xd6, 0x5d, 0xba, 0x30, 0xf4, 0xb0, 0x1a, 0xce, 0x00, 0xd8, 0xe2, 0x7b, 0x2f, + 0x26, 0xa5, 0x33, 0xa3, 0x0d, 0x15, 0x99, 0xd1, 0xd2, 0x77, 0x2f, 0x3f, 0x66, 0x77, 0x2f, 0x94, + 0x7f, 0x15, 0x99, 0x86, 0x6d, 0x3f, 0xaf, 0x06, 0x84, 0xe8, 0xd1, 0x0c, 0x82, 0xa7, 0xea, 0x17, + 0xab, 0xf1, 0xb7, 0x60, 0x1c, 0x79, 0x13, 0xd9, 0x79, 0x04, 0x93, 0xf9, 0x4a, 0x29, 0x7e, 0xcc, + 0x33, 0xc0, 0x3c, 0xe6, 0x49, 0xbc, 0xfb, 0x1b, 0xcc, 0xf9, 0x9e, 0x53, 0x04, 0x66, 0x1f, 0x12, + 0x72, 0xf7, 0x69, 0x5a, 0xf2, 0x3e, 0x2d, 0xde, 0x4a, 0xc4, 0x69, 0x79, 0x9e, 0x9d, 0x72, 0x5a, + 0x07, 0x24, 0xd7, 0xb5, 0xaf, 0xc2, 0x44, 0x23, 0x72, 0x39, 0x48, 0x5e, 0x0d, 0xc9, 0x33, 0x05, + 0xe3, 0x2e, 0x0a, 0xc6, 0xf1, 0x8f, 0x55, 0xcb, 0x7f, 0xa0, 0x91, 0x8d, 0x62, 0x9c, 0xcf, 0x3c, + 0xbe, 0x75, 0x1d, 0x47, 0x7d, 0x51, 0x90, 0xe7, 0x55, 0xe7, 0x65, 0x38, 0x59, 0xe3, 0x76, 0x7f, + 0x84, 0x3b, 0x9f, 0x28, 0x70, 0xbe, 0x0a, 0xf3, 0x6a, 0x4e, 0x31, 0x7d, 0x17, 0x3f, 0x4f, 0x92, + 0x49, 0x6e, 0x5a, 0xbe, 0xd9, 0x0f, 0x03, 0x04, 0x6a, 0xd7, 0xe0, 0x95, 0x4c, 0xc0, 0x98, 0xdd, + 0xb7, 0xc8, 0x5d, 0x5e, 0x47, 0x9a, 0x78, 0x59, 0x73, 0x55, 0x6c, 0x66, 0xe7, 0xc8, 0x7f, 0xbd, + 0x79, 0x99, 0x4c, 0xa9, 0x72, 0x16, 0x31, 0x59, 0x13, 0x3b, 0xc5, 0x45, 0xa9, 0x5c, 0xd5, 0x98, + 0xdf, 0xd9, 0x4c, 0x9c, 0xdd, 0xe9, 0x20, 0x59, 0x55, 0x47, 0x3c, 0x70, 0xa8, 0xaf, 0x55, 0x37, + 0x58, 0xb8, 0xea, 0x28, 0x0b, 0x76, 0x10, 0xe1, 0x80, 0x80, 0xba, 0x87, 0x50, 0x03, 0x39, 0xc1, + 0xad, 0x26, 0x72, 0xd4, 0x4f, 0xf3, 0x9b, 0x9e, 0x7b, 0x64, 0xd5, 0x98, 0x0a, 0x63, 0x52, 0x42, + 0x7a, 0xb5, 0x16, 0x19, 0xd8, 0xf4, 0x94, 0x1c, 0x7f, 0x87, 0x79, 0xa6, 0xd1, 0x34, 0x4c, 0x2b, + 0x68, 0xd3, 0x0b, 0xb6, 0xf8, 0x5b, 0xa0, 0x7e, 0x17, 0x3b, 0x1d, 0x62, 0x4e, 0x1b, 0xb6, 0xab, + 0xdc, 0x62, 0xcd, 0xc1, 0x09, 0x23, 0x92, 0x8d, 0x59, 0xb1, 0x49, 0x82, 0xfa, 0x3f, 0x24, 0x1b, + 0x87, 0x8e, 0x7e, 0xca, 0x62, 0xcb, 0x09, 0x25, 0x7a, 0x83, 0x0a, 0x0f, 0x33, 0xa6, 0xa0, 0x8f, + 0xd6, 0x44, 0x22, 0x3d, 0x27, 0xad, 0x4d, 0xd4, 0x5f, 0x5a, 0x91, 0x3e, 0x91, 0x56, 0x94, 0x9e, + 0x41, 0x6b, 0x93, 0xb6, 0x67, 0xbf, 0x6a, 0xab, 0x26, 0xe8, 0x8b, 0x68, 0x89, 0xe9, 0x02, 0xad, + 0x73, 0xd8, 0x05, 0x11, 0xb3, 0x8a, 0x3b, 0xf4, 0x0f, 0x86, 0x71, 0xe7, 0xd9, 0xa1, 0x7d, 0x32, + 0x73, 0x25, 0xce, 0x33, 0xe8, 0x6a, 0x30, 0x14, 0x0e, 0x1a, 0xcc, 0xec, 0x69, 0x3c, 0xe4, 0xc6, + 0xda, 0xf5, 0x2d, 0x18, 0x35, 0x4c, 0x13, 0xf9, 0xfe, 0x8e, 0x6b, 0x5b, 0x66, 0x9b, 0xee, 0x5b, + 0x92, 0x8f, 0x1a, 0xa3, 0xe1, 0xb6, 0xc6, 0x08, 0x57, 0xb9, 0xa2, 0xba, 0x0f, 0xe7, 0x23, 0x29, + 0xe2, 0x99, 0xb1, 0xc9, 0x14, 0x80, 0x1c, 0xc3, 0x0e, 0xda, 0xc4, 0x8b, 0xb1, 0xbe, 0x12, 0x92, + 0xfd, 0xf1, 0xe3, 0x59, 0xea, 0x97, 0xf6, 0x6b, 0x87, 0x15, 0xcb, 0x5d, 0x6e, 0x18, 0xc1, 0x41, + 0xe5, 0x0d, 0x54, 0x37, 0xcc, 0xb0, 0x43, 0x7c, 0xfa, 0xf1, 0x12, 0x50, 0x6b, 0x37, 0x91, 0x59, + 0x55, 0x69, 0x0d, 0x41, 0x4d, 0xd7, 0xf1, 0x5b, 0x0d, 0x39, 0xe8, 0x48, 0xd7, 0xa0, 0x0a, 0xad, + 0xfa, 0x55, 0x38, 0x15, 0xf5, 0xdf, 0xe8, 0x1d, 0x2e, 0x71, 0x9e, 0x88, 0xc9, 0x9c, 0xa4, 0x71, + 0x1f, 0x4b, 0xbe, 0x28, 0x48, 0x92, 0xe4, 0x50, 0x32, 0xea, 0x7c, 0x91, 0xce, 0xe3, 0x44, 0x52, + 0x48, 0xe6, 0x24, 0xa9, 0x4e, 0x10, 0x24, 0x49, 0x72, 0x72, 0x4c, 0x95, 0x98, 0x4e, 0xfa, 0xb6, + 0x15, 0x1c, 0xd4, 0x3c, 0xe3, 0xde, 0xba, 0x61, 0x87, 0x26, 0xf6, 0x30, 0xff, 0x56, 0x40, 0x67, + 0x76, 0x27, 0xfc, 0x5d, 0xae, 0x24, 0x47, 0xa0, 0xf5, 0x27, 0xe4, 0xcd, 0x57, 0x44, 0x8b, 0x5c, + 0xe9, 0x6e, 0x08, 0xf5, 0xd8, 0x13, 0x39, 0x07, 0xdd, 0xa3, 0x7a, 0x22, 0xb5, 0x74, 0xb8, 0x4b, + 0x72, 0x0a, 0x91, 0xa3, 0x4d, 0xd7, 0x33, 0x39, 0xa2, 0x47, 0x46, 0x8e, 0xcf, 0xc9, 0x43, 0x6e, + 0x53, 0xe8, 0x2d, 0x7d, 0xaa, 0xb9, 0x4d, 0x7e, 0x81, 0x95, 0xe4, 0x14, 0x22, 0xd7, 0xdf, 0x9a, + 0x93, 0x91, 0xe3, 0x73, 0x04, 0x72, 0x7f, 0x4f, 0x5f, 0x34, 0x70, 0xe4, 0xd8, 0xa9, 0xad, 0x07, + 0x66, 0xe2, 0x8c, 0x3a, 0xd8, 0xf5, 0x8c, 0x2a, 0x90, 0x6e, 0x93, 0x87, 0x2b, 0xb4, 0x18, 0x7e, + 0x2e, 0x87, 0x9f, 0x92, 0xf5, 0xc0, 0x95, 0x79, 0x0c, 0x48, 0xf6, 0x75, 0xd1, 0xa7, 0x00, 0xfd, + 0x6b, 0xf8, 0x18, 0xcd, 0x41, 0x67, 0x3e, 0x34, 0xec, 0x17, 0xf6, 0xbb, 0xdc, 0xd2, 0x9a, 0x79, + 0x4e, 0xcc, 0x80, 0x15, 0x94, 0x4f, 0xe0, 0x63, 0x68, 0xa4, 0x3c, 0x5a, 0xcf, 0x57, 0xbf, 0xf3, + 0x3a, 0x0c, 0x6e, 0xfb, 0x75, 0xfd, 0x0e, 0x8c, 0x72, 0xc1, 0xc8, 0x73, 0x89, 0x56, 0x14, 0x22, + 0x7e, 0x4b, 0x57, 0xb3, 0x24, 0xe2, 0x63, 0xb2, 0x09, 0xa7, 0xc4, 0x78, 0xe0, 0x97, 0x64, 0x85, + 0x05, 0xa1, 0xd2, 0xb5, 0x1c, 0x42, 0x31, 0xc8, 0x5d, 0x38, 0xc9, 0x87, 0xdd, 0x5e, 0x52, 0x96, + 0x0e, 0x45, 0x4a, 0xaf, 0x64, 0x8a, 0xc4, 0xea, 0xdf, 0x81, 0x93, 0xfc, 0x26, 0x5e, 0xae, 0x9e, + 0x15, 0x29, 0xbd, 0xac, 0x14, 0x89, 0x55, 0xbf, 0x0b, 0x63, 0xc2, 0x5e, 0xbc, 0xac, 0x2c, 0x88, + 0x65, 0xf2, 0x2a, 0xff, 0x00, 0xa6, 0xd3, 0x37, 0xe2, 0x4b, 0x6a, 0x1c, 0x41, 0xbc, 0x17, 0xc8, + 0x78, 0x93, 0x9d, 0x0f, 0x32, 0x12, 0xef, 0x06, 0x32, 0xb1, 0x81, 0x56, 0x43, 0x8a, 0xe2, 0x79, + 0x21, 0xf7, 0xe1, 0x74, 0x22, 0xe6, 0xfa, 0xb2, 0xb4, 0xa8, 0x20, 0x55, 0x5a, 0xcc, 0x23, 0x25, + 0xc7, 0xa1, 0x73, 0x42, 0x06, 0x0e, 0x91, 0xca, 0xc2, 0x11, 0x62, 0x93, 0x39, 0x1c, 0x1a, 0x74, + 0x9c, 0x81, 0x43, 0xa4, 0xb2, 0x70, 0x84, 0x38, 0x62, 0x1b, 0x74, 0x49, 0x7c, 0xf0, 0xbc, 0x5a, + 0x47, 0x24, 0x57, 0xaa, 0xe4, 0x93, 0x8b, 0xd1, 0xbe, 0x06, 0xc7, 0x3b, 0x21, 0xbc, 0x17, 0x65, + 0x85, 0xe3, 0x6c, 0x79, 0xc3, 0x27, 0x03, 0x6f, 0xdf, 0x86, 0x13, 0x6c, 0xa8, 0xe4, 0xac, 0xac, + 0x14, 0x23, 0x50, 0xba, 0x92, 0x21, 0xc0, 0xce, 0x60, 0x7c, 0x80, 0xee, 0xa5, 0xd4, 0x92, 0x91, + 0x88, 0x7c, 0x06, 0x93, 0x86, 0xd9, 0x86, 0xb3, 0xb0, 0x18, 0x62, 0xfb, 0x92, 0xb2, 0x34, 0x11, + 0x92, 0xcf, 0xc2, 0x29, 0xa1, 0xaf, 0xfa, 0xb7, 0x34, 0x28, 0x29, 0xe2, 0x5e, 0x2b, 0x4a, 0x5d, + 0x09, 0xf9, 0xd2, 0x6b, 0xc5, 0xe4, 0x63, 0x1a, 0x08, 0x74, 0x49, 0x58, 0xe8, 0x7c, 0xaa, 0x36, + 0x4e, 0x4e, 0xd1, 0x62, 0x42, 0x5f, 0x6e, 0xc3, 0x05, 0x65, 0x2c, 0xe8, 0xf5, 0x0c, 0x45, 0x89, + 0x12, 0xf9, 0xa1, 0xeb, 0x70, 0x46, 0x16, 0xf3, 0x79, 0x25, 0x13, 0x91, 0x08, 0xe6, 0x07, 0xfa, + 0x10, 0x66, 0x32, 0x62, 0x3c, 0x57, 0x33, 0x54, 0x49, 0xca, 0xe4, 0x87, 0xff, 0x63, 0x0d, 0x16, + 0x0b, 0xc5, 0x3d, 0xfe, 0x7c, 0x71, 0x36, 0xbc, 0x86, 0xfc, 0xdc, 0xfe, 0x54, 0x83, 0xa5, 0x62, + 0x51, 0xa6, 0x6b, 0xdd, 0x93, 0xa3, 0x2a, 0xf2, 0xb3, 0x73, 0x61, 0x42, 0x1e, 0x45, 0x99, 0x3e, + 0x67, 0x88, 0xa2, 0x8a, 0xb1, 0x2f, 0x09, 0x86, 0xf9, 0x90, 0x8e, 0x86, 0xb4, 0xb8, 0xc8, 0xeb, + 0xb9, 0x71, 0x69, 0x89, 0x62, 0xf0, 0xf7, 0x60, 0x3a, 0x3d, 0xe2, 0x71, 0x29, 0x37, 0x76, 0x28, + 0x5e, 0x0c, 0xf8, 0xd7, 0xe1, 0xbc, 0x2a, 0xd8, 0x71, 0x39, 0x37, 0x34, 0xdd, 0x95, 0x16, 0x02, + 0x3f, 0xa4, 0xf3, 0x80, 0x10, 0xe8, 0x78, 0x25, 0x87, 0x8e, 0x50, 0xb0, 0x18, 0x58, 0x0b, 0xa6, + 0x52, 0x03, 0x13, 0x17, 0x73, 0x22, 0x62, 0xe9, 0x5e, 0x6d, 0xc4, 0x01, 0x84, 0x79, 0x6c, 0x0c, + 0x05, 0x8b, 0x81, 0x7d, 0x00, 0xe7, 0x52, 0x82, 0x06, 0x17, 0x72, 0xa9, 0x21, 0xa3, 0xb4, 0x10, + 0xe4, 0x03, 0xb8, 0xa8, 0x8e, 0x03, 0x5c, 0xc9, 0x8f, 0xdc, 0xd5, 0xd0, 0x69, 0xd3, 0x45, 0x5b, + 0x1e, 0xe2, 0x57, 0xc9, 0x8f, 0x5e, 0x7c, 0xf0, 0x24, 0x27, 0x0d, 0x3e, 0xbc, 0xef, 0x7a, 0x7e, + 0xf0, 0x6e, 0x86, 0x4f, 0x13, 0xa6, 0x52, 0xc3, 0xd5, 0xa4, 0x3d, 0x3a, 0x4d, 0xba, 0x34, 0xaf, + 0x96, 0x8e, 0x11, 0x1d, 0x98, 0x4c, 0x8b, 0xe0, 0xbb, 0x96, 0x0b, 0x90, 0x08, 0xe7, 0xc6, 0xf3, + 0x60, 0x3a, 0x3d, 0xd4, 0x6c, 0x29, 0x4b, 0x09, 0x27, 0x9e, 0x1b, 0x93, 0xab, 0x55, 0x21, 0x00, + 0x6f, 0x31, 0x1f, 0x64, 0x41, 0x2b, 0x6d, 0x38, 0x97, 0x12, 0x2d, 0xb6, 0xa0, 0xd6, 0xc0, 0xca, + 0xe6, 0x46, 0x7b, 0x1f, 0x26, 0xe4, 0x91, 0x73, 0xaf, 0xe4, 0x00, 0x2b, 0x68, 0xd9, 0x5d, 0x38, + 0xc9, 0x47, 0x9b, 0x49, 0x4f, 0x05, 0x9c, 0x88, 0xfc, 0x54, 0x20, 0x8f, 0x2d, 0xb3, 0x41, 0x97, + 0x04, 0x88, 0xcd, 0xa7, 0x2b, 0x60, 0xe5, 0xe4, 0xc7, 0x31, 0x45, 0xa0, 0x57, 0x78, 0x3c, 0x50, + 0x04, 0x57, 0xa5, 0xa9, 0x4b, 0x91, 0x97, 0x1f, 0x0f, 0xb2, 0xe3, 0xa5, 0xf4, 0x3b, 0x30, 0xca, + 0x05, 0x4b, 0xcd, 0xa5, 0xeb, 0x21, 0x12, 0x72, 0x67, 0x97, 0x2c, 0x32, 0x4a, 0xbf, 0x03, 0x63, + 0xc2, 0xe5, 0x98, 0xd4, 0x9b, 0xc3, 0xcb, 0x94, 0x2e, 0xab, 0x64, 0x98, 0xc6, 0x9a, 0x4c, 0xbb, + 0xd3, 0xb8, 0xa6, 0x52, 0x20, 0x08, 0xe7, 0x44, 0xbb, 0x0f, 0x17, 0xd5, 0x57, 0x15, 0x2b, 0x2a, + 0x35, 0xd2, 0x22, 0x3d, 0x23, 0x53, 0x6f, 0x7a, 0x11, 0x64, 0x52, 0xa4, 0x5b, 0x64, 0xf1, 0x92, + 0x21, 0x07, 0xb2, 0x50, 0xa4, 0x67, 0xe4, 0xfc, 0x36, 0x0b, 0x45, 0x72, 0x22, 0x7b, 0x50, 0x52, + 0x5c, 0x0f, 0x54, 0xb2, 0x61, 0x59, 0xf9, 0x9c, 0x98, 0x7b, 0xa0, 0x4b, 0xdc, 0xfb, 0xf3, 0xaa, + 0xb2, 0x1d, 0xb9, 0x9c, 0x18, 0x35, 0x38, 0x23, 0xf3, 0xe3, 0x5f, 0xc9, 0x04, 0xa1, 0x1b, 0x89, + 0x7c, 0x28, 0xcc, 0x78, 0xa7, 0xde, 0x39, 0xe5, 0x78, 0xa7, 0xbe, 0xb9, 0x7c, 0xba, 0xef, 0xc2, + 0x49, 0x3e, 0xc2, 0x52, 0x3a, 0xf7, 0x73, 0x22, 0xf2, 0xb9, 0x5f, 0x1a, 0x6e, 0xc8, 0xa8, 0xa7, + 0xa1, 0x64, 0x2a, 0xf5, 0x44, 0x44, 0xa9, 0x5e, 0x08, 0xab, 0x6a, 0xc1, 0x84, 0x3c, 0x92, 0x51, + 0xa5, 0x83, 0x17, 0x2d, 0xad, 0xe4, 0x16, 0x95, 0xc0, 0x0a, 0x71, 0x53, 0x2a, 0x58, 0x5e, 0x54, + 0x09, 0x2b, 0x8f, 0x0d, 0xd2, 0xbf, 0x0e, 0x63, 0x42, 0x18, 0x8f, 0xb4, 0x1f, 0xf0, 0x32, 0xf2, + 0x75, 0x45, 0x1a, 0x60, 0xb4, 0x07, 0xa7, 0x13, 0xd1, 0x3c, 0x97, 0xd3, 0x4b, 0x77, 0xa4, 0x0a, + 0x60, 0x1c, 0xc0, 0x19, 0x59, 0x54, 0xcf, 0x95, 0x74, 0x05, 0x9c, 0x60, 0xd7, 0x48, 0xf1, 0xbe, + 0x23, 0x0b, 0x29, 0xde, 0x78, 0xe4, 0x47, 0xaa, 0xc1, 0x78, 0x32, 0x90, 0xe6, 0xe5, 0x2c, 0x1c, + 0x2c, 0xd6, 0x5d, 0xeb, 0xc4, 0xc1, 0x22, 0xca, 0xd6, 0x89, 0xa4, 0x0a, 0x60, 0xec, 0x83, 0x2e, + 0x89, 0xfb, 0x98, 0xcf, 0x44, 0xc1, 0x72, 0x05, 0x70, 0xde, 0x02, 0x60, 0x22, 0x3e, 0x66, 0xd2, + 0xcb, 0x61, 0xaf, 0x79, 0x7e, 0xbd, 0x77, 0x60, 0x94, 0x0b, 0xb8, 0x98, 0x53, 0x8c, 0x0f, 0x2c, + 0xa1, 0xd2, 0xcd, 0xc7, 0x3f, 0xe8, 0x36, 0x4c, 0xc8, 0x83, 0x1f, 0x5e, 0x51, 0xd1, 0xe3, 0x44, + 0x0b, 0x58, 0xd2, 0x84, 0xc9, 0xb4, 0x50, 0x88, 0x6b, 0x99, 0x78, 0x5d, 0x8d, 0xcc, 0x56, 0x64, + 0x9f, 0x18, 0x19, 0xa1, 0xb0, 0x4f, 0x10, 0x95, 0x4f, 0x6a, 0xca, 0x58, 0x07, 0xfd, 0x08, 0xce, + 0xa5, 0xc4, 0x39, 0x2c, 0xa4, 0x2b, 0x13, 0x65, 0x4b, 0xd7, 0xb3, 0x65, 0x05, 0xdc, 0x07, 0x30, + 0x9d, 0x1e, 0x77, 0xb0, 0xa4, 0x54, 0x27, 0x8a, 0x97, 0xbe, 0x94, 0x4b, 0x3c, 0x31, 0xd6, 0x4e, + 0x27, 0x9e, 0x9b, 0xcb, 0xc7, 0xb3, 0x20, 0x25, 0xbf, 0x0d, 0x4b, 0x7d, 0x41, 0xce, 0xe1, 0xa8, + 0x6e, 0xf7, 0x44, 0xa9, 0x2c, 0x1c, 0xe1, 0x76, 0xef, 0x77, 0x35, 0x38, 0xaf, 0x7a, 0xc9, 0xbd, + 0xac, 0xd6, 0x96, 0x28, 0x50, 0xfa, 0x99, 0x82, 0x05, 0x62, 0x26, 0x1f, 0x69, 0x30, 0x93, 0xf1, + 0x2a, 0x7b, 0x35, 0xaf, 0xee, 0x4e, 0x99, 0xd2, 0x8d, 0xe2, 0x65, 0x18, 0x07, 0xee, 0x64, 0xda, + 0x43, 0xec, 0x6b, 0x6a, 0xb5, 0x9c, 0x70, 0x4a, 0x4f, 0x53, 0x3f, 0xae, 0xc6, 0x47, 0x62, 0xc5, + 0xd3, 0xea, 0x4a, 0x1e, 0x9d, 0x4c, 0x3d, 0xbc, 0x56, 0x4c, 0x5e, 0x55, 0x07, 0xd1, 0x8b, 0xea, + 0x5c, 0x75, 0x40, 0x85, 0xf3, 0xd5, 0x81, 0xf0, 0x4a, 0xba, 0x34, 0xfc, 0x9b, 0x4f, 0x1e, 0x2d, + 0x68, 0xeb, 0x2b, 0x9f, 0x7c, 0x36, 0xa3, 0xfd, 0xe8, 0xb3, 0x19, 0xed, 0xbf, 0x3f, 0x9b, 0xd1, + 0x3e, 0xfa, 0x7c, 0xe6, 0xd8, 0x8f, 0x3e, 0x9f, 0x39, 0xf6, 0x5f, 0x9f, 0xcf, 0x1c, 0xbb, 0x33, + 0x99, 0xfc, 0x3f, 0xe9, 0xf1, 0x2b, 0xcf, 0xbd, 0x11, 0x1c, 0x99, 0xff, 0xa5, 0xff, 0x0f, 0x00, + 0x00, 0xff, 0xff, 0xc5, 0xc6, 0x04, 0xaa, 0xc9, 0x60, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -6666,6 +7052,10 @@ type MsgClient interface { ProviderGuildGrant(ctx context.Context, in *MsgProviderGuildGrant, opts ...grpc.CallOption) (*MsgProviderResponse, error) ProviderGuildRevoke(ctx context.Context, in *MsgProviderGuildRevoke, opts ...grpc.CallOption) (*MsgProviderResponse, error) ProviderDelete(ctx context.Context, in *MsgProviderDelete, opts ...grpc.CallOption) (*MsgProviderResponse, error) + ReactorInfuse(ctx context.Context, in *MsgReactorInfuse, opts ...grpc.CallOption) (*MsgReactorInfuseResponse, error) + ReactorDefuse(ctx context.Context, in *MsgReactorDefuse, opts ...grpc.CallOption) (*MsgReactorDefuseResponse, error) + ReactorBeginMigration(ctx context.Context, in *MsgReactorBeginMigration, opts ...grpc.CallOption) (*MsgReactorBeginMigrationResponse, error) + ReactorCancelDefusion(ctx context.Context, in *MsgReactorCancelDefusion, opts ...grpc.CallOption) (*MsgReactorCancelDefusionResponse, error) StructActivate(ctx context.Context, in *MsgStructActivate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) StructDeactivate(ctx context.Context, in *MsgStructDeactivate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) StructBuildInitiate(ctx context.Context, in *MsgStructBuildInitiate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) @@ -7183,6 +7573,42 @@ func (c *msgClient) ProviderDelete(ctx context.Context, in *MsgProviderDelete, o return out, nil } +func (c *msgClient) ReactorInfuse(ctx context.Context, in *MsgReactorInfuse, opts ...grpc.CallOption) (*MsgReactorInfuseResponse, error) { + out := new(MsgReactorInfuseResponse) + err := c.cc.Invoke(ctx, "/structs.structs.Msg/ReactorInfuse", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *msgClient) ReactorDefuse(ctx context.Context, in *MsgReactorDefuse, opts ...grpc.CallOption) (*MsgReactorDefuseResponse, error) { + out := new(MsgReactorDefuseResponse) + err := c.cc.Invoke(ctx, "/structs.structs.Msg/ReactorDefuse", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *msgClient) ReactorBeginMigration(ctx context.Context, in *MsgReactorBeginMigration, opts ...grpc.CallOption) (*MsgReactorBeginMigrationResponse, error) { + out := new(MsgReactorBeginMigrationResponse) + err := c.cc.Invoke(ctx, "/structs.structs.Msg/ReactorBeginMigration", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *msgClient) ReactorCancelDefusion(ctx context.Context, in *MsgReactorCancelDefusion, opts ...grpc.CallOption) (*MsgReactorCancelDefusionResponse, error) { + out := new(MsgReactorCancelDefusionResponse) + err := c.cc.Invoke(ctx, "/structs.structs.Msg/ReactorCancelDefusion", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *msgClient) StructActivate(ctx context.Context, in *MsgStructActivate, opts ...grpc.CallOption) (*MsgStructStatusResponse, error) { out := new(MsgStructStatusResponse) err := c.cc.Invoke(ctx, "/structs.structs.Msg/StructActivate", in, out, opts...) @@ -7430,6 +7856,10 @@ type MsgServer interface { ProviderGuildGrant(context.Context, *MsgProviderGuildGrant) (*MsgProviderResponse, error) ProviderGuildRevoke(context.Context, *MsgProviderGuildRevoke) (*MsgProviderResponse, error) ProviderDelete(context.Context, *MsgProviderDelete) (*MsgProviderResponse, error) + ReactorInfuse(context.Context, *MsgReactorInfuse) (*MsgReactorInfuseResponse, error) + ReactorDefuse(context.Context, *MsgReactorDefuse) (*MsgReactorDefuseResponse, error) + ReactorBeginMigration(context.Context, *MsgReactorBeginMigration) (*MsgReactorBeginMigrationResponse, error) + ReactorCancelDefusion(context.Context, *MsgReactorCancelDefusion) (*MsgReactorCancelDefusionResponse, error) StructActivate(context.Context, *MsgStructActivate) (*MsgStructStatusResponse, error) StructDeactivate(context.Context, *MsgStructDeactivate) (*MsgStructStatusResponse, error) StructBuildInitiate(context.Context, *MsgStructBuildInitiate) (*MsgStructStatusResponse, error) @@ -7619,6 +8049,18 @@ func (*UnimplementedMsgServer) ProviderGuildRevoke(ctx context.Context, req *Msg func (*UnimplementedMsgServer) ProviderDelete(ctx context.Context, req *MsgProviderDelete) (*MsgProviderResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProviderDelete not implemented") } +func (*UnimplementedMsgServer) ReactorInfuse(ctx context.Context, req *MsgReactorInfuse) (*MsgReactorInfuseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorInfuse not implemented") +} +func (*UnimplementedMsgServer) ReactorDefuse(ctx context.Context, req *MsgReactorDefuse) (*MsgReactorDefuseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorDefuse not implemented") +} +func (*UnimplementedMsgServer) ReactorBeginMigration(ctx context.Context, req *MsgReactorBeginMigration) (*MsgReactorBeginMigrationResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorBeginMigration not implemented") +} +func (*UnimplementedMsgServer) ReactorCancelDefusion(ctx context.Context, req *MsgReactorCancelDefusion) (*MsgReactorCancelDefusionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReactorCancelDefusion not implemented") +} func (*UnimplementedMsgServer) StructActivate(ctx context.Context, req *MsgStructActivate) (*MsgStructStatusResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method StructActivate not implemented") } @@ -8659,6 +9101,78 @@ func _Msg_ProviderDelete_Handler(srv interface{}, ctx context.Context, dec func( return interceptor(ctx, in, info, handler) } +func _Msg_ReactorInfuse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorInfuse) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorInfuse(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/structs.structs.Msg/ReactorInfuse", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorInfuse(ctx, req.(*MsgReactorInfuse)) + } + return interceptor(ctx, in, info, handler) +} + +func _Msg_ReactorDefuse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorDefuse) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorDefuse(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/structs.structs.Msg/ReactorDefuse", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorDefuse(ctx, req.(*MsgReactorDefuse)) + } + return interceptor(ctx, in, info, handler) +} + +func _Msg_ReactorBeginMigration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorBeginMigration) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorBeginMigration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/structs.structs.Msg/ReactorBeginMigration", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorBeginMigration(ctx, req.(*MsgReactorBeginMigration)) + } + return interceptor(ctx, in, info, handler) +} + +func _Msg_ReactorCancelDefusion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(MsgReactorCancelDefusion) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MsgServer).ReactorCancelDefusion(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/structs.structs.Msg/ReactorCancelDefusion", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MsgServer).ReactorCancelDefusion(ctx, req.(*MsgReactorCancelDefusion)) + } + return interceptor(ctx, in, info, handler) +} + func _Msg_StructActivate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(MsgStructActivate) if err := dec(in); err != nil { @@ -9257,6 +9771,22 @@ var _Msg_serviceDesc = grpc.ServiceDesc{ MethodName: "ProviderDelete", Handler: _Msg_ProviderDelete_Handler, }, + { + MethodName: "ReactorInfuse", + Handler: _Msg_ReactorInfuse_Handler, + }, + { + MethodName: "ReactorDefuse", + Handler: _Msg_ReactorDefuse_Handler, + }, + { + MethodName: "ReactorBeginMigration", + Handler: _Msg_ReactorBeginMigration_Handler, + }, + { + MethodName: "ReactorCancelDefusion", + Handler: _Msg_ReactorCancelDefusion_Handler, + }, { MethodName: "StructActivate", Handler: _Msg_StructActivate_Handler, @@ -11646,7 +12176,7 @@ func (m *MsgPlayerResumeResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *MsgStructStatusResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorInfuse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11656,18 +12186,18 @@ func (m *MsgStructStatusResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructStatusResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorInfuse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorInfuse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l { - size, err := m.Struct.MarshalToSizedBuffer(dAtA[:i]) + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -11675,34 +12205,18 @@ func (m *MsgStructStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) i = encodeVarintTx(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *MsgStructActivate) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + dAtA[i] = 0x22 + if len(m.ValidatorAddress) > 0 { + i -= len(m.ValidatorAddress) + copy(dAtA[i:], m.ValidatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.ValidatorAddress))) + i-- + dAtA[i] = 0x1a } - return dAtA[:n], nil -} - -func (m *MsgStructActivate) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgStructActivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + if len(m.DelegatorAddress) > 0 { + i -= len(m.DelegatorAddress) + copy(dAtA[i:], m.DelegatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.DelegatorAddress))) i-- dAtA[i] = 0x12 } @@ -11716,7 +12230,7 @@ func (m *MsgStructActivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgStructDeactivate) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorInfuseResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11726,34 +12240,20 @@ func (m *MsgStructDeactivate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructDeactivate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorInfuseResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructDeactivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorInfuseResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgStructBuildInitiate) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorBeginMigration) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11763,35 +12263,44 @@ func (m *MsgStructBuildInitiate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructBuildInitiate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorBeginMigration) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructBuildInitiate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorBeginMigration) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Slot != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Slot)) - i-- - dAtA[i] = 0x28 + { + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } - if m.OperatingAmbit != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.OperatingAmbit)) + i-- + dAtA[i] = 0x2a + if len(m.ValidatorDstAddress) > 0 { + i -= len(m.ValidatorDstAddress) + copy(dAtA[i:], m.ValidatorDstAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.ValidatorDstAddress))) i-- - dAtA[i] = 0x20 + dAtA[i] = 0x22 } - if m.StructTypeId != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.StructTypeId)) + if len(m.ValidatorSrcAddress) > 0 { + i -= len(m.ValidatorSrcAddress) + copy(dAtA[i:], m.ValidatorSrcAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.ValidatorSrcAddress))) i-- - dAtA[i] = 0x18 + dAtA[i] = 0x1a } - if len(m.PlayerId) > 0 { - i -= len(m.PlayerId) - copy(dAtA[i:], m.PlayerId) - i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId))) + if len(m.DelegatorAddress) > 0 { + i -= len(m.DelegatorAddress) + copy(dAtA[i:], m.DelegatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.DelegatorAddress))) i-- dAtA[i] = 0x12 } @@ -11805,7 +12314,7 @@ func (m *MsgStructBuildInitiate) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *MsgStructBuildComplete) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorBeginMigrationResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11815,48 +12324,28 @@ func (m *MsgStructBuildComplete) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructBuildComplete) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorBeginMigrationResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructBuildComplete) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorBeginMigrationResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Nonce) > 0 { - i -= len(m.Nonce) - copy(dAtA[i:], m.Nonce) - i = encodeVarintTx(dAtA, i, uint64(len(m.Nonce))) - i-- - dAtA[i] = 0x22 - } - if len(m.Proof) > 0 { - i -= len(m.Proof) - copy(dAtA[i:], m.Proof) - i = encodeVarintTx(dAtA, i, uint64(len(m.Proof))) - i-- - dAtA[i] = 0x1a - } - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa + n10, err10 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(m.CompletionTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(m.CompletionTime):]) + if err10 != nil { + return 0, err10 } + i -= n10 + i = encodeVarintTx(dAtA, i, uint64(n10)) + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *MsgStructBuildCancel) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorDefuse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11866,20 +12355,37 @@ func (m *MsgStructBuildCancel) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructBuildCancel) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorDefuse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructBuildCancel) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorDefuse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + { + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + if len(m.ValidatorAddress) > 0 { + i -= len(m.ValidatorAddress) + copy(dAtA[i:], m.ValidatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.ValidatorAddress))) + i-- + dAtA[i] = 0x1a + } + if len(m.DelegatorAddress) > 0 { + i -= len(m.DelegatorAddress) + copy(dAtA[i:], m.DelegatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.DelegatorAddress))) i-- dAtA[i] = 0x12 } @@ -11893,7 +12399,7 @@ func (m *MsgStructBuildCancel) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgStructBuildCompleteAndStash) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorDefuseResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11903,65 +12409,38 @@ func (m *MsgStructBuildCompleteAndStash) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructBuildCompleteAndStash) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorDefuseResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructBuildCompleteAndStash) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorDefuseResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.StorageSlot != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.StorageSlot)) - i-- - dAtA[i] = 0x38 - } - if m.StorageAmbit != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.StorageAmbit)) - i-- - dAtA[i] = 0x30 - } - if len(m.StorageDestinationId) > 0 { - i -= len(m.StorageDestinationId) - copy(dAtA[i:], m.StorageDestinationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StorageDestinationId))) - i-- - dAtA[i] = 0x2a - } - if len(m.Nonce) > 0 { - i -= len(m.Nonce) - copy(dAtA[i:], m.Nonce) - i = encodeVarintTx(dAtA, i, uint64(len(m.Nonce))) - i-- - dAtA[i] = 0x22 - } - if len(m.Proof) > 0 { - i -= len(m.Proof) - copy(dAtA[i:], m.Proof) - i = encodeVarintTx(dAtA, i, uint64(len(m.Proof))) - i-- - dAtA[i] = 0x1a - } - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) - i-- - dAtA[i] = 0x12 + { + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa + i-- + dAtA[i] = 0x12 + n13, err13 := github_com_cosmos_gogoproto_types.StdTimeMarshalTo(m.CompletionTime, dAtA[i-github_com_cosmos_gogoproto_types.SizeOfStdTime(m.CompletionTime):]) + if err13 != nil { + return 0, err13 } + i -= n13 + i = encodeVarintTx(dAtA, i, uint64(n13)) + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *MsgStructDefenseSet) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorCancelDefusion) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -11971,27 +12450,42 @@ func (m *MsgStructDefenseSet) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructDefenseSet) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorCancelDefusion) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructDefenseSet) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorCancelDefusion) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.ProtectedStructId) > 0 { - i -= len(m.ProtectedStructId) - copy(dAtA[i:], m.ProtectedStructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProtectedStructId))) + if m.CreationHeight != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.CreationHeight)) + i-- + dAtA[i] = 0x28 + } + { + size, err := m.Amount.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + if len(m.ValidatorAddress) > 0 { + i -= len(m.ValidatorAddress) + copy(dAtA[i:], m.ValidatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.ValidatorAddress))) i-- dAtA[i] = 0x1a } - if len(m.DefenderStructId) > 0 { - i -= len(m.DefenderStructId) - copy(dAtA[i:], m.DefenderStructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.DefenderStructId))) + if len(m.DelegatorAddress) > 0 { + i -= len(m.DelegatorAddress) + copy(dAtA[i:], m.DelegatorAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.DelegatorAddress))) i-- dAtA[i] = 0x12 } @@ -12005,7 +12499,7 @@ func (m *MsgStructDefenseSet) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgStructDefenseClear) Marshal() (dAtA []byte, err error) { +func (m *MsgReactorCancelDefusionResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12015,34 +12509,20 @@ func (m *MsgStructDefenseClear) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructDefenseClear) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgReactorCancelDefusionResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructDefenseClear) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgReactorCancelDefusionResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.DefenderStructId) > 0 { - i -= len(m.DefenderStructId) - copy(dAtA[i:], m.DefenderStructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.DefenderStructId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgStructMove) Marshal() (dAtA []byte, err error) { +func (m *MsgStructStatusResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12052,49 +12532,30 @@ func (m *MsgStructMove) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructMove) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructStatusResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructMove) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Slot != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Slot)) - i-- - dAtA[i] = 0x30 - } - if m.Ambit != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Ambit)) - i-- - dAtA[i] = 0x28 - } - if m.LocationType != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.LocationType)) - i-- - dAtA[i] = 0x20 - } - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa + { + size, err := m.Struct.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *MsgStructAttack) Marshal() (dAtA []byte, err error) { +func (m *MsgStructActivate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12104,36 +12565,20 @@ func (m *MsgStructAttack) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructAttack) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructActivate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructAttack) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructActivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.WeaponSystem) > 0 { - i -= len(m.WeaponSystem) - copy(dAtA[i:], m.WeaponSystem) - i = encodeVarintTx(dAtA, i, uint64(len(m.WeaponSystem))) - i-- - dAtA[i] = 0x22 - } - if len(m.TargetStructId) > 0 { - for iNdEx := len(m.TargetStructId) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.TargetStructId[iNdEx]) - copy(dAtA[i:], m.TargetStructId[iNdEx]) - i = encodeVarintTx(dAtA, i, uint64(len(m.TargetStructId[iNdEx]))) - i-- - dAtA[i] = 0x1a - } - } - if len(m.OperatingStructId) > 0 { - i -= len(m.OperatingStructId) - copy(dAtA[i:], m.OperatingStructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.OperatingStructId))) + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) i-- dAtA[i] = 0x12 } @@ -12147,7 +12592,7 @@ func (m *MsgStructAttack) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgStructAttackResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructDeactivate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12157,20 +12602,34 @@ func (m *MsgStructAttackResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructAttackResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructDeactivate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructAttackResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructDeactivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + i-- + dAtA[i] = 0x12 + } + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } -func (m *MsgStructStealthActivate) Marshal() (dAtA []byte, err error) { +func (m *MsgStructBuildInitiate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12180,20 +12639,35 @@ func (m *MsgStructStealthActivate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructStealthActivate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructBuildInitiate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructStealthActivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructBuildInitiate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + if m.Slot != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Slot)) + i-- + dAtA[i] = 0x28 + } + if m.OperatingAmbit != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.OperatingAmbit)) + i-- + dAtA[i] = 0x20 + } + if m.StructTypeId != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.StructTypeId)) + i-- + dAtA[i] = 0x18 + } + if len(m.PlayerId) > 0 { + i -= len(m.PlayerId) + copy(dAtA[i:], m.PlayerId) + i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId))) i-- dAtA[i] = 0x12 } @@ -12207,7 +12681,7 @@ func (m *MsgStructStealthActivate) MarshalToSizedBuffer(dAtA []byte) (int, error return len(dAtA) - i, nil } -func (m *MsgStructStealthDeactivate) Marshal() (dAtA []byte, err error) { +func (m *MsgStructBuildComplete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12217,16 +12691,30 @@ func (m *MsgStructStealthDeactivate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructStealthDeactivate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructBuildComplete) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructStealthDeactivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructBuildComplete) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.Nonce) > 0 { + i -= len(m.Nonce) + copy(dAtA[i:], m.Nonce) + i = encodeVarintTx(dAtA, i, uint64(len(m.Nonce))) + i-- + dAtA[i] = 0x22 + } + if len(m.Proof) > 0 { + i -= len(m.Proof) + copy(dAtA[i:], m.Proof) + i = encodeVarintTx(dAtA, i, uint64(len(m.Proof))) + i-- + dAtA[i] = 0x1a + } if len(m.StructId) > 0 { i -= len(m.StructId) copy(dAtA[i:], m.StructId) @@ -12244,7 +12732,7 @@ func (m *MsgStructStealthDeactivate) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *MsgStructGeneratorInfuse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructBuildCancel) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12254,23 +12742,16 @@ func (m *MsgStructGeneratorInfuse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructGeneratorInfuse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructBuildCancel) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructGeneratorInfuse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructBuildCancel) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.InfuseAmount) > 0 { - i -= len(m.InfuseAmount) - copy(dAtA[i:], m.InfuseAmount) - i = encodeVarintTx(dAtA, i, uint64(len(m.InfuseAmount))) - i-- - dAtA[i] = 0x1a - } if len(m.StructId) > 0 { i -= len(m.StructId) copy(dAtA[i:], m.StructId) @@ -12288,7 +12769,7 @@ func (m *MsgStructGeneratorInfuse) MarshalToSizedBuffer(dAtA []byte) (int, error return len(dAtA) - i, nil } -func (m *MsgStructGeneratorStatusResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructBuildCompleteAndStash) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12298,39 +12779,33 @@ func (m *MsgStructGeneratorStatusResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructGeneratorStatusResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructBuildCompleteAndStash) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructGeneratorStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructBuildCompleteAndStash) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - return len(dAtA) - i, nil -} - -func (m *MsgStructOreMinerComplete) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + if m.StorageSlot != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.StorageSlot)) + i-- + dAtA[i] = 0x38 + } + if m.StorageAmbit != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.StorageAmbit)) + i-- + dAtA[i] = 0x30 + } + if len(m.StorageDestinationId) > 0 { + i -= len(m.StorageDestinationId) + copy(dAtA[i:], m.StorageDestinationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StorageDestinationId))) + i-- + dAtA[i] = 0x2a } - return dAtA[:n], nil -} - -func (m *MsgStructOreMinerComplete) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgStructOreMinerComplete) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l if len(m.Nonce) > 0 { i -= len(m.Nonce) copy(dAtA[i:], m.Nonce) @@ -12362,40 +12837,7 @@ func (m *MsgStructOreMinerComplete) MarshalToSizedBuffer(dAtA []byte) (int, erro return len(dAtA) - i, nil } -func (m *MsgStructOreMinerStatusResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgStructOreMinerStatusResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgStructOreMinerStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Struct.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *MsgStructOreRefineryComplete) Marshal() (dAtA []byte, err error) { +func (m *MsgStructDefenseSet) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12405,34 +12847,27 @@ func (m *MsgStructOreRefineryComplete) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructOreRefineryComplete) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructDefenseSet) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructOreRefineryComplete) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructDefenseSet) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.Nonce) > 0 { - i -= len(m.Nonce) - copy(dAtA[i:], m.Nonce) - i = encodeVarintTx(dAtA, i, uint64(len(m.Nonce))) - i-- - dAtA[i] = 0x22 - } - if len(m.Proof) > 0 { - i -= len(m.Proof) - copy(dAtA[i:], m.Proof) - i = encodeVarintTx(dAtA, i, uint64(len(m.Proof))) + if len(m.ProtectedStructId) > 0 { + i -= len(m.ProtectedStructId) + copy(dAtA[i:], m.ProtectedStructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProtectedStructId))) i-- dAtA[i] = 0x1a } - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + if len(m.DefenderStructId) > 0 { + i -= len(m.DefenderStructId) + copy(dAtA[i:], m.DefenderStructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.DefenderStructId))) i-- dAtA[i] = 0x12 } @@ -12446,40 +12881,7 @@ func (m *MsgStructOreRefineryComplete) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } -func (m *MsgStructOreRefineryStatusResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *MsgStructOreRefineryStatusResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *MsgStructOreRefineryStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - { - size, err := m.Struct.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *MsgStructStorageStash) Marshal() (dAtA []byte, err error) { +func (m *MsgStructDefenseClear) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12489,37 +12891,20 @@ func (m *MsgStructStorageStash) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructStorageStash) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructDefenseClear) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructStorageStash) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructDefenseClear) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Slot != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Slot)) - i-- - dAtA[i] = 0x28 - } - if m.Ambit != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Ambit)) - i-- - dAtA[i] = 0x20 - } - if len(m.LocationId) > 0 { - i -= len(m.LocationId) - copy(dAtA[i:], m.LocationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.LocationId))) - i-- - dAtA[i] = 0x1a - } - if len(m.StructId) > 0 { - i -= len(m.StructId) - copy(dAtA[i:], m.StructId) - i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + if len(m.DefenderStructId) > 0 { + i -= len(m.DefenderStructId) + copy(dAtA[i:], m.DefenderStructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.DefenderStructId))) i-- dAtA[i] = 0x12 } @@ -12533,7 +12918,7 @@ func (m *MsgStructStorageStash) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgStructStorageRecall) Marshal() (dAtA []byte, err error) { +func (m *MsgStructMove) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12543,42 +12928,30 @@ func (m *MsgStructStorageRecall) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgStructStorageRecall) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructMove) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgStructStorageRecall) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructMove) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Activate { - i-- - if m.Activate { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i-- - dAtA[i] = 0x30 - } if m.Slot != 0 { i = encodeVarintTx(dAtA, i, uint64(m.Slot)) i-- - dAtA[i] = 0x28 + dAtA[i] = 0x30 } if m.Ambit != 0 { i = encodeVarintTx(dAtA, i, uint64(m.Ambit)) i-- - dAtA[i] = 0x20 + dAtA[i] = 0x28 } - if len(m.LocationId) > 0 { - i -= len(m.LocationId) - copy(dAtA[i:], m.LocationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.LocationId))) + if m.LocationType != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.LocationType)) i-- - dAtA[i] = 0x1a + dAtA[i] = 0x20 } if len(m.StructId) > 0 { i -= len(m.StructId) @@ -12597,7 +12970,7 @@ func (m *MsgStructStorageRecall) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *MsgSubstationCreate) Marshal() (dAtA []byte, err error) { +func (m *MsgStructAttack) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12607,27 +12980,36 @@ func (m *MsgSubstationCreate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationCreate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructAttack) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructAttack) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.AllocationId) > 0 { - i -= len(m.AllocationId) - copy(dAtA[i:], m.AllocationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AllocationId))) + if len(m.WeaponSystem) > 0 { + i -= len(m.WeaponSystem) + copy(dAtA[i:], m.WeaponSystem) + i = encodeVarintTx(dAtA, i, uint64(len(m.WeaponSystem))) i-- - dAtA[i] = 0x1a + dAtA[i] = 0x22 } - if len(m.Owner) > 0 { - i -= len(m.Owner) - copy(dAtA[i:], m.Owner) - i = encodeVarintTx(dAtA, i, uint64(len(m.Owner))) + if len(m.TargetStructId) > 0 { + for iNdEx := len(m.TargetStructId) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.TargetStructId[iNdEx]) + copy(dAtA[i:], m.TargetStructId[iNdEx]) + i = encodeVarintTx(dAtA, i, uint64(len(m.TargetStructId[iNdEx]))) + i-- + dAtA[i] = 0x1a + } + } + if len(m.OperatingStructId) > 0 { + i -= len(m.OperatingStructId) + copy(dAtA[i:], m.OperatingStructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.OperatingStructId))) i-- dAtA[i] = 0x12 } @@ -12641,7 +13023,7 @@ func (m *MsgSubstationCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgSubstationCreateResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructAttackResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12651,27 +13033,20 @@ func (m *MsgSubstationCreateResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationCreateResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructAttackResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationCreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructAttackResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.SubstationId) > 0 { - i -= len(m.SubstationId) - copy(dAtA[i:], m.SubstationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgSubstationDelete) Marshal() (dAtA []byte, err error) { +func (m *MsgStructStealthActivate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12681,27 +13056,20 @@ func (m *MsgSubstationDelete) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationDelete) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructStealthActivate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructStealthActivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.MigrationSubstationId) > 0 { - i -= len(m.MigrationSubstationId) - copy(dAtA[i:], m.MigrationSubstationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.MigrationSubstationId))) - i-- - dAtA[i] = 0x1a - } - if len(m.SubstationId) > 0 { - i -= len(m.SubstationId) - copy(dAtA[i:], m.SubstationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) i-- dAtA[i] = 0x12 } @@ -12715,7 +13083,7 @@ func (m *MsgSubstationDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgSubstationDeleteResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructStealthDeactivate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12725,20 +13093,34 @@ func (m *MsgSubstationDeleteResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationDeleteResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructStealthDeactivate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationDeleteResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructStealthDeactivate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + i-- + dAtA[i] = 0x12 + } + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } -func (m *MsgSubstationAllocationConnect) Marshal() (dAtA []byte, err error) { +func (m *MsgStructGeneratorInfuse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12748,27 +13130,27 @@ func (m *MsgSubstationAllocationConnect) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationAllocationConnect) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructGeneratorInfuse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationAllocationConnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructGeneratorInfuse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.DestinationId) > 0 { - i -= len(m.DestinationId) - copy(dAtA[i:], m.DestinationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.DestinationId))) + if len(m.InfuseAmount) > 0 { + i -= len(m.InfuseAmount) + copy(dAtA[i:], m.InfuseAmount) + i = encodeVarintTx(dAtA, i, uint64(len(m.InfuseAmount))) i-- dAtA[i] = 0x1a } - if len(m.AllocationId) > 0 { - i -= len(m.AllocationId) - copy(dAtA[i:], m.AllocationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AllocationId))) + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) i-- dAtA[i] = 0x12 } @@ -12782,7 +13164,7 @@ func (m *MsgSubstationAllocationConnect) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *MsgSubstationAllocationConnectResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructGeneratorStatusResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12792,12 +13174,12 @@ func (m *MsgSubstationAllocationConnectResponse) Marshal() (dAtA []byte, err err return dAtA[:n], nil } -func (m *MsgSubstationAllocationConnectResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructGeneratorStatusResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationAllocationConnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructGeneratorStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -12805,7 +13187,7 @@ func (m *MsgSubstationAllocationConnectResponse) MarshalToSizedBuffer(dAtA []byt return len(dAtA) - i, nil } -func (m *MsgSubstationAllocationDisconnect) Marshal() (dAtA []byte, err error) { +func (m *MsgStructOreMinerComplete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12815,20 +13197,34 @@ func (m *MsgSubstationAllocationDisconnect) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationAllocationDisconnect) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructOreMinerComplete) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationAllocationDisconnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructOreMinerComplete) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.AllocationId) > 0 { - i -= len(m.AllocationId) - copy(dAtA[i:], m.AllocationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AllocationId))) + if len(m.Nonce) > 0 { + i -= len(m.Nonce) + copy(dAtA[i:], m.Nonce) + i = encodeVarintTx(dAtA, i, uint64(len(m.Nonce))) + i-- + dAtA[i] = 0x22 + } + if len(m.Proof) > 0 { + i -= len(m.Proof) + copy(dAtA[i:], m.Proof) + i = encodeVarintTx(dAtA, i, uint64(len(m.Proof))) + i-- + dAtA[i] = 0x1a + } + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) i-- dAtA[i] = 0x12 } @@ -12842,7 +13238,7 @@ func (m *MsgSubstationAllocationDisconnect) MarshalToSizedBuffer(dAtA []byte) (i return len(dAtA) - i, nil } -func (m *MsgSubstationAllocationDisconnectResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructOreMinerStatusResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12852,20 +13248,30 @@ func (m *MsgSubstationAllocationDisconnectResponse) Marshal() (dAtA []byte, err return dAtA[:n], nil } -func (m *MsgSubstationAllocationDisconnectResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructOreMinerStatusResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationAllocationDisconnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructOreMinerStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + { + size, err := m.Struct.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *MsgSubstationPlayerConnect) Marshal() (dAtA []byte, err error) { +func (m *MsgStructOreRefineryComplete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12875,27 +13281,34 @@ func (m *MsgSubstationPlayerConnect) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationPlayerConnect) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructOreRefineryComplete) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationPlayerConnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructOreRefineryComplete) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.PlayerId) > 0 { - i -= len(m.PlayerId) - copy(dAtA[i:], m.PlayerId) - i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId))) + if len(m.Nonce) > 0 { + i -= len(m.Nonce) + copy(dAtA[i:], m.Nonce) + i = encodeVarintTx(dAtA, i, uint64(len(m.Nonce))) + i-- + dAtA[i] = 0x22 + } + if len(m.Proof) > 0 { + i -= len(m.Proof) + copy(dAtA[i:], m.Proof) + i = encodeVarintTx(dAtA, i, uint64(len(m.Proof))) i-- dAtA[i] = 0x1a } - if len(m.SubstationId) > 0 { - i -= len(m.SubstationId) - copy(dAtA[i:], m.SubstationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) i-- dAtA[i] = 0x12 } @@ -12909,7 +13322,7 @@ func (m *MsgSubstationPlayerConnect) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *MsgSubstationPlayerConnectResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructOreRefineryStatusResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12919,20 +13332,30 @@ func (m *MsgSubstationPlayerConnectResponse) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *MsgSubstationPlayerConnectResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructOreRefineryStatusResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationPlayerConnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructOreRefineryStatusResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + { + size, err := m.Struct.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa return len(dAtA) - i, nil } -func (m *MsgSubstationPlayerDisconnect) Marshal() (dAtA []byte, err error) { +func (m *MsgStructStorageStash) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12942,20 +13365,37 @@ func (m *MsgSubstationPlayerDisconnect) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationPlayerDisconnect) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructStorageStash) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationPlayerDisconnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructStorageStash) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.PlayerId) > 0 { - i -= len(m.PlayerId) - copy(dAtA[i:], m.PlayerId) - i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId))) + if m.Slot != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Slot)) + i-- + dAtA[i] = 0x28 + } + if m.Ambit != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Ambit)) + i-- + dAtA[i] = 0x20 + } + if len(m.LocationId) > 0 { + i -= len(m.LocationId) + copy(dAtA[i:], m.LocationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.LocationId))) + i-- + dAtA[i] = 0x1a + } + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) i-- dAtA[i] = 0x12 } @@ -12969,7 +13409,7 @@ func (m *MsgSubstationPlayerDisconnect) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *MsgSubstationPlayerDisconnectResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgStructStorageRecall) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -12979,20 +13419,61 @@ func (m *MsgSubstationPlayerDisconnectResponse) Marshal() (dAtA []byte, err erro return dAtA[:n], nil } -func (m *MsgSubstationPlayerDisconnectResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgStructStorageRecall) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationPlayerDisconnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgStructStorageRecall) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if m.Activate { + i-- + if m.Activate { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 + } + if m.Slot != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Slot)) + i-- + dAtA[i] = 0x28 + } + if m.Ambit != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Ambit)) + i-- + dAtA[i] = 0x20 + } + if len(m.LocationId) > 0 { + i -= len(m.LocationId) + copy(dAtA[i:], m.LocationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.LocationId))) + i-- + dAtA[i] = 0x1a + } + if len(m.StructId) > 0 { + i -= len(m.StructId) + copy(dAtA[i:], m.StructId) + i = encodeVarintTx(dAtA, i, uint64(len(m.StructId))) + i-- + dAtA[i] = 0x12 + } + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } -func (m *MsgSubstationPlayerMigrate) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationCreate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13002,29 +13483,27 @@ func (m *MsgSubstationPlayerMigrate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgSubstationPlayerMigrate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationCreate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationPlayerMigrate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.PlayerId) > 0 { - for iNdEx := len(m.PlayerId) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.PlayerId[iNdEx]) - copy(dAtA[i:], m.PlayerId[iNdEx]) - i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId[iNdEx]))) - i-- - dAtA[i] = 0x1a - } + if len(m.AllocationId) > 0 { + i -= len(m.AllocationId) + copy(dAtA[i:], m.AllocationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AllocationId))) + i-- + dAtA[i] = 0x1a } - if len(m.SubstationId) > 0 { - i -= len(m.SubstationId) - copy(dAtA[i:], m.SubstationId) - i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) + if len(m.Owner) > 0 { + i -= len(m.Owner) + copy(dAtA[i:], m.Owner) + i = encodeVarintTx(dAtA, i, uint64(len(m.Owner))) i-- dAtA[i] = 0x12 } @@ -13038,7 +13517,7 @@ func (m *MsgSubstationPlayerMigrate) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } -func (m *MsgSubstationPlayerMigrateResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationCreateResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13048,20 +13527,27 @@ func (m *MsgSubstationPlayerMigrateResponse) Marshal() (dAtA []byte, err error) return dAtA[:n], nil } -func (m *MsgSubstationPlayerMigrateResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationCreateResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgSubstationPlayerMigrateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationCreateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l + if len(m.SubstationId) > 0 { + i -= len(m.SubstationId) + copy(dAtA[i:], m.SubstationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) + i-- + dAtA[i] = 0xa + } return len(dAtA) - i, nil } -func (m *MsgAgreementOpen) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationDelete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13071,30 +13557,27 @@ func (m *MsgAgreementOpen) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgAgreementOpen) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationDelete) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAgreementOpen) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.Capacity != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Capacity)) - i-- - dAtA[i] = 0x20 - } - if m.Duration != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.Duration)) + if len(m.MigrationSubstationId) > 0 { + i -= len(m.MigrationSubstationId) + copy(dAtA[i:], m.MigrationSubstationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.MigrationSubstationId))) i-- - dAtA[i] = 0x18 + dAtA[i] = 0x1a } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if len(m.SubstationId) > 0 { + i -= len(m.SubstationId) + copy(dAtA[i:], m.SubstationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) i-- dAtA[i] = 0x12 } @@ -13108,7 +13591,7 @@ func (m *MsgAgreementOpen) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgAgreementClose) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationDeleteResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13118,34 +13601,20 @@ func (m *MsgAgreementClose) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgAgreementClose) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationDeleteResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAgreementClose) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationDeleteResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.AgreementId) > 0 { - i -= len(m.AgreementId) - copy(dAtA[i:], m.AgreementId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgAgreementCapacityIncrease) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationAllocationConnect) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13155,25 +13624,27 @@ func (m *MsgAgreementCapacityIncrease) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgAgreementCapacityIncrease) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationConnect) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAgreementCapacityIncrease) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationConnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.CapacityIncrease != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.CapacityIncrease)) + if len(m.DestinationId) > 0 { + i -= len(m.DestinationId) + copy(dAtA[i:], m.DestinationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.DestinationId))) i-- - dAtA[i] = 0x18 + dAtA[i] = 0x1a } - if len(m.AgreementId) > 0 { - i -= len(m.AgreementId) - copy(dAtA[i:], m.AgreementId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) + if len(m.AllocationId) > 0 { + i -= len(m.AllocationId) + copy(dAtA[i:], m.AllocationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AllocationId))) i-- dAtA[i] = 0x12 } @@ -13187,7 +13658,7 @@ func (m *MsgAgreementCapacityIncrease) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } -func (m *MsgAgreementCapacityDecrease) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationAllocationConnectResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13197,39 +13668,20 @@ func (m *MsgAgreementCapacityDecrease) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgAgreementCapacityDecrease) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationConnectResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAgreementCapacityDecrease) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationConnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.CapacityDecrease != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.CapacityDecrease)) - i-- - dAtA[i] = 0x18 - } - if len(m.AgreementId) > 0 { - i -= len(m.AgreementId) - copy(dAtA[i:], m.AgreementId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgAgreementDurationIncrease) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationAllocationDisconnect) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13239,25 +13691,20 @@ func (m *MsgAgreementDurationIncrease) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgAgreementDurationIncrease) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationDisconnect) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAgreementDurationIncrease) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationDisconnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.DurationIncrease != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.DurationIncrease)) - i-- - dAtA[i] = 0x18 - } - if len(m.AgreementId) > 0 { - i -= len(m.AgreementId) - copy(dAtA[i:], m.AgreementId) - i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) + if len(m.AllocationId) > 0 { + i -= len(m.AllocationId) + copy(dAtA[i:], m.AllocationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AllocationId))) i-- dAtA[i] = 0x12 } @@ -13271,7 +13718,7 @@ func (m *MsgAgreementDurationIncrease) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } -func (m *MsgAgreementResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationAllocationDisconnectResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13281,12 +13728,12 @@ func (m *MsgAgreementResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgAgreementResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationDisconnectResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAgreementResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationAllocationDisconnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -13294,7 +13741,7 @@ func (m *MsgAgreementResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgProviderCreate) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationPlayerConnect) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13304,71 +13751,23 @@ func (m *MsgProviderCreate) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderCreate) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerConnect) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerConnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.DurationMaximum != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.DurationMaximum)) - i-- - dAtA[i] = 0x50 - } - if m.DurationMinimum != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.DurationMinimum)) - i-- - dAtA[i] = 0x48 - } - if m.CapacityMaximum != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.CapacityMaximum)) - i-- - dAtA[i] = 0x40 - } - if m.CapacityMinimum != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.CapacityMinimum)) - i-- - dAtA[i] = 0x38 - } - { - size := m.ConsumerCancellationPenalty.Size() - i -= size - if _, err := m.ConsumerCancellationPenalty.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x32 - { - size := m.ProviderCancellationPenalty.Size() - i -= size - if _, err := m.ProviderCancellationPenalty.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - i = encodeVarintTx(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0x2a - if m.AccessPolicy != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.AccessPolicy)) + if len(m.PlayerId) > 0 { + i -= len(m.PlayerId) + copy(dAtA[i:], m.PlayerId) + i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId))) i-- - dAtA[i] = 0x20 - } - { - size, err := m.Rate.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintTx(dAtA, i, uint64(size)) + dAtA[i] = 0x1a } - i-- - dAtA[i] = 0x1a if len(m.SubstationId) > 0 { i -= len(m.SubstationId) copy(dAtA[i:], m.SubstationId) @@ -13386,7 +13785,7 @@ func (m *MsgProviderCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgProviderWithdrawBalance) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationPlayerConnectResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13396,41 +13795,20 @@ func (m *MsgProviderWithdrawBalance) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderWithdrawBalance) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerConnectResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderWithdrawBalance) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerConnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.DestinationAddress) > 0 { - i -= len(m.DestinationAddress) - copy(dAtA[i:], m.DestinationAddress) - i = encodeVarintTx(dAtA, i, uint64(len(m.DestinationAddress))) - i-- - dAtA[i] = 0x1a - } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgProviderUpdateCapacityMinimum) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationPlayerDisconnect) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13440,25 +13818,20 @@ func (m *MsgProviderUpdateCapacityMinimum) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderUpdateCapacityMinimum) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerDisconnect) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderUpdateCapacityMinimum) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerDisconnect) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.NewMinimumCapacity != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.NewMinimumCapacity)) - i-- - dAtA[i] = 0x18 - } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if len(m.PlayerId) > 0 { + i -= len(m.PlayerId) + copy(dAtA[i:], m.PlayerId) + i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId))) i-- dAtA[i] = 0x12 } @@ -13472,7 +13845,7 @@ func (m *MsgProviderUpdateCapacityMinimum) MarshalToSizedBuffer(dAtA []byte) (in return len(dAtA) - i, nil } -func (m *MsgProviderUpdateCapacityMaximum) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationPlayerDisconnectResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13482,39 +13855,20 @@ func (m *MsgProviderUpdateCapacityMaximum) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderUpdateCapacityMaximum) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerDisconnectResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderUpdateCapacityMaximum) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerDisconnectResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.NewMaximumCapacity != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.NewMaximumCapacity)) - i-- - dAtA[i] = 0x18 - } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) - i-- - dAtA[i] = 0x12 - } - if len(m.Creator) > 0 { - i -= len(m.Creator) - copy(dAtA[i:], m.Creator) - i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) - i-- - dAtA[i] = 0xa - } return len(dAtA) - i, nil } -func (m *MsgProviderUpdateDurationMinimum) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationPlayerMigrate) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13524,25 +13878,29 @@ func (m *MsgProviderUpdateDurationMinimum) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderUpdateDurationMinimum) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerMigrate) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderUpdateDurationMinimum) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerMigrate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.NewMinimumDuration != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.NewMinimumDuration)) - i-- - dAtA[i] = 0x18 + if len(m.PlayerId) > 0 { + for iNdEx := len(m.PlayerId) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.PlayerId[iNdEx]) + copy(dAtA[i:], m.PlayerId[iNdEx]) + i = encodeVarintTx(dAtA, i, uint64(len(m.PlayerId[iNdEx]))) + i-- + dAtA[i] = 0x1a + } } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if len(m.SubstationId) > 0 { + i -= len(m.SubstationId) + copy(dAtA[i:], m.SubstationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) i-- dAtA[i] = 0x12 } @@ -13556,7 +13914,7 @@ func (m *MsgProviderUpdateDurationMinimum) MarshalToSizedBuffer(dAtA []byte) (in return len(dAtA) - i, nil } -func (m *MsgProviderUpdateDurationMaximum) Marshal() (dAtA []byte, err error) { +func (m *MsgSubstationPlayerMigrateResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13566,18 +13924,46 @@ func (m *MsgProviderUpdateDurationMaximum) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderUpdateDurationMaximum) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerMigrateResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderUpdateDurationMaximum) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgSubstationPlayerMigrateResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.NewMaximumDuration != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.NewMaximumDuration)) + return len(dAtA) - i, nil +} + +func (m *MsgAgreementOpen) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MsgAgreementOpen) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgAgreementOpen) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.Capacity != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Capacity)) + i-- + dAtA[i] = 0x20 + } + if m.Duration != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.Duration)) i-- dAtA[i] = 0x18 } @@ -13598,7 +13984,7 @@ func (m *MsgProviderUpdateDurationMaximum) MarshalToSizedBuffer(dAtA []byte) (in return len(dAtA) - i, nil } -func (m *MsgProviderUpdateAccessPolicy) Marshal() (dAtA []byte, err error) { +func (m *MsgAgreementClose) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13608,25 +13994,20 @@ func (m *MsgProviderUpdateAccessPolicy) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderUpdateAccessPolicy) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgAgreementClose) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderUpdateAccessPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgAgreementClose) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if m.AccessPolicy != 0 { - i = encodeVarintTx(dAtA, i, uint64(m.AccessPolicy)) - i-- - dAtA[i] = 0x18 - } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if len(m.AgreementId) > 0 { + i -= len(m.AgreementId) + copy(dAtA[i:], m.AgreementId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) i-- dAtA[i] = 0x12 } @@ -13640,7 +14021,7 @@ func (m *MsgProviderUpdateAccessPolicy) MarshalToSizedBuffer(dAtA []byte) (int, return len(dAtA) - i, nil } -func (m *MsgProviderGuildGrant) Marshal() (dAtA []byte, err error) { +func (m *MsgAgreementCapacityIncrease) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13650,29 +14031,25 @@ func (m *MsgProviderGuildGrant) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderGuildGrant) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgAgreementCapacityIncrease) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderGuildGrant) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgAgreementCapacityIncrease) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.GuildId) > 0 { - for iNdEx := len(m.GuildId) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.GuildId[iNdEx]) - copy(dAtA[i:], m.GuildId[iNdEx]) - i = encodeVarintTx(dAtA, i, uint64(len(m.GuildId[iNdEx]))) - i-- - dAtA[i] = 0x1a - } + if m.CapacityIncrease != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.CapacityIncrease)) + i-- + dAtA[i] = 0x18 } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if len(m.AgreementId) > 0 { + i -= len(m.AgreementId) + copy(dAtA[i:], m.AgreementId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) i-- dAtA[i] = 0x12 } @@ -13686,7 +14063,7 @@ func (m *MsgProviderGuildGrant) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgProviderGuildRevoke) Marshal() (dAtA []byte, err error) { +func (m *MsgAgreementCapacityDecrease) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13696,29 +14073,25 @@ func (m *MsgProviderGuildRevoke) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderGuildRevoke) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgAgreementCapacityDecrease) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderGuildRevoke) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgAgreementCapacityDecrease) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.GuildId) > 0 { - for iNdEx := len(m.GuildId) - 1; iNdEx >= 0; iNdEx-- { - i -= len(m.GuildId[iNdEx]) - copy(dAtA[i:], m.GuildId[iNdEx]) - i = encodeVarintTx(dAtA, i, uint64(len(m.GuildId[iNdEx]))) - i-- - dAtA[i] = 0x1a - } + if m.CapacityDecrease != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.CapacityDecrease)) + i-- + dAtA[i] = 0x18 } - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if len(m.AgreementId) > 0 { + i -= len(m.AgreementId) + copy(dAtA[i:], m.AgreementId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) i-- dAtA[i] = 0x12 } @@ -13732,7 +14105,7 @@ func (m *MsgProviderGuildRevoke) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } -func (m *MsgProviderDelete) Marshal() (dAtA []byte, err error) { +func (m *MsgAgreementDurationIncrease) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13742,20 +14115,25 @@ func (m *MsgProviderDelete) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderDelete) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgAgreementDurationIncrease) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgAgreementDurationIncrease) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - if len(m.ProviderId) > 0 { - i -= len(m.ProviderId) - copy(dAtA[i:], m.ProviderId) - i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + if m.DurationIncrease != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.DurationIncrease)) + i-- + dAtA[i] = 0x18 + } + if len(m.AgreementId) > 0 { + i -= len(m.AgreementId) + copy(dAtA[i:], m.AgreementId) + i = encodeVarintTx(dAtA, i, uint64(len(m.AgreementId))) i-- dAtA[i] = 0x12 } @@ -13769,7 +14147,7 @@ func (m *MsgProviderDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *MsgProviderResponse) Marshal() (dAtA []byte, err error) { +func (m *MsgAgreementResponse) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -13779,12 +14157,12 @@ func (m *MsgProviderResponse) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *MsgProviderResponse) MarshalTo(dAtA []byte) (int, error) { +func (m *MsgAgreementResponse) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgProviderResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *MsgAgreementResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int @@ -13792,437 +14170,540 @@ func (m *MsgProviderResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func encodeVarintTx(dAtA []byte, offset int, v uint64) int { - offset -= sovTx(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *MsgUpdateParams) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Authority) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderCreate) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - l = m.Params.Size() - n += 1 + l + sovTx(uint64(l)) - return n + return dAtA[:n], nil } -func (m *MsgUpdateParamsResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n +func (m *MsgProviderCreate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *MsgAddressRegister) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.DurationMaximum != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.DurationMaximum)) + i-- + dAtA[i] = 0x50 } - l = len(m.Address) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.DurationMinimum != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.DurationMinimum)) + i-- + dAtA[i] = 0x48 } - l = len(m.ProofPubKey) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.CapacityMaximum != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.CapacityMaximum)) + i-- + dAtA[i] = 0x40 } - l = len(m.ProofSignature) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.CapacityMinimum != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.CapacityMinimum)) + i-- + dAtA[i] = 0x38 } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) + { + size := m.ConsumerCancellationPenalty.Size() + i -= size + if _, err := m.ConsumerCancellationPenalty.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintTx(dAtA, i, uint64(size)) } - return n -} - -func (m *MsgAddressRegisterResponse) Size() (n int) { - if m == nil { - return 0 + i-- + dAtA[i] = 0x32 + { + size := m.ProviderCancellationPenalty.Size() + i -= size + if _, err := m.ProviderCancellationPenalty.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + i = encodeVarintTx(dAtA, i, uint64(size)) } - var l int - _ = l - return n -} - -func (m *MsgAddressRevoke) Size() (n int) { - if m == nil { - return 0 + i-- + dAtA[i] = 0x2a + if m.AccessPolicy != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.AccessPolicy)) + i-- + dAtA[i] = 0x20 } - var l int - _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + { + size, err := m.Rate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) } - l = len(m.Address) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + i-- + dAtA[i] = 0x1a + if len(m.SubstationId) > 0 { + i -= len(m.SubstationId) + copy(dAtA[i:], m.SubstationId) + i = encodeVarintTx(dAtA, i, uint64(len(m.SubstationId))) + i-- + dAtA[i] = 0x12 } - return n + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *MsgAddressRevokeResponse) Size() (n int) { - if m == nil { - return 0 +func (m *MsgProviderWithdrawBalance) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - return n + return dAtA[:n], nil } -func (m *MsgAllocationCreate) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderWithdrawBalance) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderWithdrawBalance) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Controller) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.SourceObjectId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.DestinationAddress) > 0 { + i -= len(m.DestinationAddress) + copy(dAtA[i:], m.DestinationAddress) + i = encodeVarintTx(dAtA, i, uint64(len(m.DestinationAddress))) + i-- + dAtA[i] = 0x1a } - if m.AllocationType != 0 { - n += 1 + sovTx(uint64(m.AllocationType)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - if m.Power != 0 { - n += 1 + sovTx(uint64(m.Power)) + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *MsgAllocationCreateResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderUpdateCapacityMinimum) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *MsgAllocationDelete) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderUpdateCapacityMinimum) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderUpdateCapacityMinimum) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.NewMinimumCapacity != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.NewMinimumCapacity)) + i-- + dAtA[i] = 0x18 } - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - return n + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *MsgAllocationDeleteResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderUpdateCapacityMaximum) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *MsgAllocationUpdate) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderUpdateCapacityMaximum) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderUpdateCapacityMaximum) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.NewMaximumCapacity != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.NewMaximumCapacity)) + i-- + dAtA[i] = 0x18 } - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - if m.Power != 0 { - n += 1 + sovTx(uint64(m.Power)) + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *MsgAllocationUpdateResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderUpdateDurationMinimum) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *MsgAllocationTransfer) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderUpdateDurationMinimum) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderUpdateDurationMinimum) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.NewMinimumDuration != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.NewMinimumDuration)) + i-- + dAtA[i] = 0x18 } - l = len(m.Controller) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - return n + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *MsgAllocationTransferResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.AllocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderUpdateDurationMaximum) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *MsgFleetMove) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderUpdateDurationMaximum) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderUpdateDurationMaximum) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.NewMaximumDuration != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.NewMaximumDuration)) + i-- + dAtA[i] = 0x18 } - l = len(m.FleetId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - l = len(m.DestinationLocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *MsgFleetMoveResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Fleet != nil { - l = m.Fleet.Size() - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderUpdateAccessPolicy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - return n + return dAtA[:n], nil } -func (m *MsgGuildBankMint) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderUpdateAccessPolicy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderUpdateAccessPolicy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.AccessPolicy != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.AccessPolicy)) + i-- + dAtA[i] = 0x18 } - if m.AmountAlpha != 0 { - n += 1 + sovTx(uint64(m.AmountAlpha)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - if m.AmountToken != 0 { - n += 1 + sovTx(uint64(m.AmountToken)) + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *MsgGuildBankMintResponse) Size() (n int) { - if m == nil { - return 0 +func (m *MsgProviderGuildGrant) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - return n + return dAtA[:n], nil } -func (m *MsgGuildBankRedeem) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderGuildGrant) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderGuildGrant) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.GuildId) > 0 { + for iNdEx := len(m.GuildId) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.GuildId[iNdEx]) + copy(dAtA[i:], m.GuildId[iNdEx]) + i = encodeVarintTx(dAtA, i, uint64(len(m.GuildId[iNdEx]))) + i-- + dAtA[i] = 0x1a + } } - l = m.AmountToken.Size() - n += 1 + l + sovTx(uint64(l)) - return n + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 + } + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil } -func (m *MsgGuildBankRedeemResponse) Size() (n int) { - if m == nil { - return 0 +func (m *MsgProviderGuildRevoke) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - return n + return dAtA[:n], nil } -func (m *MsgGuildBankConfiscateAndBurn) Size() (n int) { - if m == nil { - return 0 - } +func (m *MsgProviderGuildRevoke) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderGuildRevoke) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.GuildId) > 0 { + for iNdEx := len(m.GuildId) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.GuildId[iNdEx]) + copy(dAtA[i:], m.GuildId[iNdEx]) + i = encodeVarintTx(dAtA, i, uint64(len(m.GuildId[iNdEx]))) + i-- + dAtA[i] = 0x1a + } } - l = len(m.Address) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - if m.AmountToken != 0 { - n += 1 + sovTx(uint64(m.AmountToken)) + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *MsgGuildBankConfiscateAndBurnResponse) Size() (n int) { - if m == nil { - return 0 +func (m *MsgProviderDelete) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } - var l int - _ = l - return n + return dAtA[:n], nil } -func (m *MsgGuildCreate) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Endpoint) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) +func (m *MsgProviderDelete) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if len(m.ProviderId) > 0 { + i -= len(m.ProviderId) + copy(dAtA[i:], m.ProviderId) + i = encodeVarintTx(dAtA, i, uint64(len(m.ProviderId))) + i-- + dAtA[i] = 0x12 } - l = len(m.EntrySubstationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if len(m.Creator) > 0 { + i -= len(m.Creator) + copy(dAtA[i:], m.Creator) + i = encodeVarintTx(dAtA, i, uint64(len(m.Creator))) + i-- + dAtA[i] = 0xa } - return n + return len(dAtA) - i, nil } -func (m *MsgGuildCreateResponse) Size() (n int) { - if m == nil { - return 0 +func (m *MsgProviderResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err } + return dAtA[:n], nil +} + +func (m *MsgProviderResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgProviderResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i var l int _ = l - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - return n + return len(dAtA) - i, nil } -func (m *MsgGuildUpdateOwnerId) Size() (n int) { +func encodeVarintTx(dAtA []byte, offset int, v uint64) int { + offset -= sovTx(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *MsgUpdateParams) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Owner) + l = len(m.Authority) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = m.Params.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgGuildUpdateEntrySubstationId) Size() (n int) { +func (m *MsgUpdateParamsResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.EntrySubstationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } return n } -func (m *MsgGuildUpdateEndpoint) Size() (n int) { +func (m *MsgAddressRegister) Size() (n int) { if m == nil { return 0 } @@ -14232,58 +14713,38 @@ func (m *MsgGuildUpdateEndpoint) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Endpoint) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - return n -} - -func (m *MsgGuildUpdateJoinInfusionMinimum) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Creator) + l = len(m.ProofPubKey) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) + l = len(m.ProofSignature) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.JoinInfusionMinimum != 0 { - n += 1 + sovTx(uint64(m.JoinInfusionMinimum)) + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) } return n } -func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Size() (n int) { +func (m *MsgAddressRegisterResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if m.GuildJoinBypassLevel != 0 { - n += 1 + sovTx(uint64(m.GuildJoinBypassLevel)) - } return n } -func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Size() (n int) { +func (m *MsgAddressRevoke) Size() (n int) { if m == nil { return 0 } @@ -14293,17 +14754,14 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.GuildJoinBypassLevel != 0 { - n += 1 + sovTx(uint64(m.GuildJoinBypassLevel)) - } return n } -func (m *MsgGuildUpdateResponse) Size() (n int) { +func (m *MsgAddressRevokeResponse) Size() (n int) { if m == nil { return 0 } @@ -14312,7 +14770,7 @@ func (m *MsgGuildUpdateResponse) Size() (n int) { return n } -func (m *MsgGuildMembershipInvite) Size() (n int) { +func (m *MsgAllocationCreate) Size() (n int) { if m == nil { return 0 } @@ -14322,47 +14780,37 @@ func (m *MsgGuildMembershipInvite) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) + l = len(m.Controller) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.SourceObjectId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.AllocationType != 0 { + n += 1 + sovTx(uint64(m.AllocationType)) + } + if m.Power != 0 { + n += 1 + sovTx(uint64(m.Power)) } return n } -func (m *MsgGuildMembershipInviteApprove) Size() (n int) { +func (m *MsgAllocationCreateResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.SubstationId) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgGuildMembershipInviteDeny) Size() (n int) { +func (m *MsgAllocationDelete) Size() (n int) { if m == nil { return 0 } @@ -14372,39 +14820,27 @@ func (m *MsgGuildMembershipInviteDeny) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgGuildMembershipInviteRevoke) Size() (n int) { +func (m *MsgAllocationDeleteResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgGuildMembershipJoin) Size() (n int) { +func (m *MsgAllocationUpdate) Size() (n int) { if m == nil { return 0 } @@ -14414,78 +14850,64 @@ func (m *MsgGuildMembershipJoin) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.SubstationId) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if len(m.InfusionId) > 0 { - for _, s := range m.InfusionId { - l = len(s) - n += 1 + l + sovTx(uint64(l)) - } + if m.Power != 0 { + n += 1 + sovTx(uint64(m.Power)) } return n } -func (m *MsgGuildMembershipJoinProxy) Size() (n int) { +func (m *MsgAllocationUpdateResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Address) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + return n +} + +func (m *MsgAllocationTransfer) Size() (n int) { + if m == nil { + return 0 } - l = len(m.SubstationId) + var l int + _ = l + l = len(m.Creator) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProofPubKey) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProofSignature) + l = len(m.Controller) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgGuildMembershipKick) Size() (n int) { +func (m *MsgAllocationTransferResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) + l = len(m.AllocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgGuildMembershipRequest) Size() (n int) { +func (m *MsgFleetMove) Size() (n int) { if m == nil { return 0 } @@ -14495,68 +14917,83 @@ func (m *MsgGuildMembershipRequest) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) + l = len(m.FleetId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) + l = len(m.DestinationLocationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgGuildMembershipRequestApprove) Size() (n int) { +func (m *MsgFleetMoveResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { + if m.Fleet != nil { + l = m.Fleet.Size() n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + return n +} + +func (m *MsgGuildBankMint) Size() (n int) { + if m == nil { + return 0 } - l = len(m.PlayerId) + var l int + _ = l + l = len(m.Creator) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.AmountAlpha != 0 { + n += 1 + sovTx(uint64(m.AmountAlpha)) + } + if m.AmountToken != 0 { + n += 1 + sovTx(uint64(m.AmountToken)) } return n } -func (m *MsgGuildMembershipRequestDeny) Size() (n int) { +func (m *MsgGuildBankMintResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + return n +} + +func (m *MsgGuildBankRedeem) Size() (n int) { + if m == nil { + return 0 } - l = len(m.GuildId) + var l int + _ = l + l = len(m.Creator) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + l = m.AmountToken.Size() + n += 1 + l + sovTx(uint64(l)) + return n +} + +func (m *MsgGuildBankRedeemResponse) Size() (n int) { + if m == nil { + return 0 } + var l int + _ = l return n } -func (m *MsgGuildMembershipRequestRevoke) Size() (n int) { +func (m *MsgGuildBankConfiscateAndBurn) Size() (n int) { if m == nil { return 0 } @@ -14566,31 +15003,26 @@ func (m *MsgGuildMembershipRequestRevoke) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.GuildId) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.AmountToken != 0 { + n += 1 + sovTx(uint64(m.AmountToken)) } return n } -func (m *MsgGuildMembershipResponse) Size() (n int) { +func (m *MsgGuildBankConfiscateAndBurnResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - if m.GuildMembershipApplication != nil { - l = m.GuildMembershipApplication.Size() - n += 1 + l + sovTx(uint64(l)) - } return n } -func (m *MsgPermissionGrantOnObject) Size() (n int) { +func (m *MsgGuildCreate) Size() (n int) { if m == nil { return 0 } @@ -14600,41 +15032,31 @@ func (m *MsgPermissionGrantOnObject) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ObjectId) + l = len(m.Endpoint) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.EntrySubstationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) - } return n } -func (m *MsgPermissionGrantOnAddress) Size() (n int) { +func (m *MsgGuildCreateResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Address) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) - } return n } -func (m *MsgPermissionRevokeOnObject) Size() (n int) { +func (m *MsgGuildUpdateOwnerId) Size() (n int) { if m == nil { return 0 } @@ -14644,21 +15066,18 @@ func (m *MsgPermissionRevokeOnObject) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ObjectId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.Owner) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) - } return n } -func (m *MsgPermissionRevokeOnAddress) Size() (n int) { +func (m *MsgGuildUpdateEntrySubstationId) Size() (n int) { if m == nil { return 0 } @@ -14668,17 +15087,18 @@ func (m *MsgPermissionRevokeOnAddress) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Address) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) + l = len(m.EntrySubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgPermissionSetOnObject) Size() (n int) { +func (m *MsgGuildUpdateEndpoint) Size() (n int) { if m == nil { return 0 } @@ -14688,21 +15108,18 @@ func (m *MsgPermissionSetOnObject) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ObjectId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.Endpoint) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) - } return n } -func (m *MsgPermissionSetOnAddress) Size() (n int) { +func (m *MsgGuildUpdateJoinInfusionMinimum) Size() (n int) { if m == nil { return 0 } @@ -14712,26 +15129,37 @@ func (m *MsgPermissionSetOnAddress) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Address) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Permissions != 0 { - n += 1 + sovTx(uint64(m.Permissions)) + if m.JoinInfusionMinimum != 0 { + n += 1 + sovTx(uint64(m.JoinInfusionMinimum)) } return n } -func (m *MsgPermissionResponse) Size() (n int) { +func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.GuildId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.GuildJoinBypassLevel != 0 { + n += 1 + sovTx(uint64(m.GuildJoinBypassLevel)) + } return n } -func (m *MsgPlanetExplore) Size() (n int) { +func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Size() (n int) { if m == nil { return 0 } @@ -14741,25 +15169,26 @@ func (m *MsgPlanetExplore) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + if m.GuildJoinBypassLevel != 0 { + n += 1 + sovTx(uint64(m.GuildJoinBypassLevel)) + } return n } -func (m *MsgPlanetExploreResponse) Size() (n int) { +func (m *MsgGuildUpdateResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Planet.Size() - n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgPlanetRaidComplete) Size() (n int) { +func (m *MsgGuildMembershipInvite) Size() (n int) { if m == nil { return 0 } @@ -14769,38 +15198,47 @@ func (m *MsgPlanetRaidComplete) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.FleetId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Proof) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Nonce) + l = len(m.SubstationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgPlanetRaidCompleteResponse) Size() (n int) { +func (m *MsgGuildMembershipInviteApprove) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Fleet.Size() - n += 1 + l + sovTx(uint64(l)) - l = m.Planet.Size() - n += 1 + l + sovTx(uint64(l)) - if m.OreStolen != 0 { - n += 1 + sovTx(uint64(m.OreStolen)) + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.GuildId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgPlayerUpdatePrimaryAddress) Size() (n int) { +func (m *MsgGuildMembershipInviteDeny) Size() (n int) { if m == nil { return 0 } @@ -14810,27 +15248,39 @@ func (m *MsgPlayerUpdatePrimaryAddress) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PrimaryAddress) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgPlayerUpdatePrimaryAddressResponse) Size() (n int) { +func (m *MsgGuildMembershipInviteRevoke) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.GuildId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } return n } -func (m *MsgPlayerResume) Size() (n int) { +func (m *MsgGuildMembershipJoin) Size() (n int) { if m == nil { return 0 } @@ -14840,34 +15290,28 @@ func (m *MsgPlayerResume) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = len(m.GuildId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - return n -} - -func (m *MsgPlayerResumeResponse) Size() (n int) { - if m == nil { - return 0 + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } - var l int - _ = l - return n -} - -func (m *MsgStructStatusResponse) Size() (n int) { - if m == nil { - return 0 + if len(m.InfusionId) > 0 { + for _, s := range m.InfusionId { + l = len(s) + n += 1 + l + sovTx(uint64(l)) + } } - var l int - _ = l - l = m.Struct.Size() - n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgStructActivate) Size() (n int) { +func (m *MsgGuildMembershipJoinProxy) Size() (n int) { if m == nil { return 0 } @@ -14877,31 +15321,26 @@ func (m *MsgStructActivate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - return n -} - -func (m *MsgStructDeactivate) Size() (n int) { - if m == nil { - return 0 + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } - var l int - _ = l - l = len(m.Creator) + l = len(m.ProofPubKey) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.ProofSignature) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgStructBuildInitiate) Size() (n int) { +func (m *MsgGuildMembershipKick) Size() (n int) { if m == nil { return 0 } @@ -14911,23 +15350,18 @@ func (m *MsgStructBuildInitiate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = len(m.GuildId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.StructTypeId != 0 { - n += 1 + sovTx(uint64(m.StructTypeId)) - } - if m.OperatingAmbit != 0 { - n += 1 + sovTx(uint64(m.OperatingAmbit)) - } - if m.Slot != 0 { - n += 1 + sovTx(uint64(m.Slot)) - } return n } -func (m *MsgStructBuildComplete) Size() (n int) { +func (m *MsgGuildMembershipRequest) Size() (n int) { if m == nil { return 0 } @@ -14937,22 +15371,22 @@ func (m *MsgStructBuildComplete) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Proof) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Nonce) + l = len(m.SubstationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgStructBuildCancel) Size() (n int) { +func (m *MsgGuildMembershipRequestApprove) Size() (n int) { if m == nil { return 0 } @@ -14962,14 +15396,22 @@ func (m *MsgStructBuildCancel) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.GuildId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.SubstationId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgStructBuildCompleteAndStash) Size() (n int) { +func (m *MsgGuildMembershipRequestDeny) Size() (n int) { if m == nil { return 0 } @@ -14979,32 +15421,18 @@ func (m *MsgStructBuildCompleteAndStash) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Proof) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Nonce) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StorageDestinationId) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.StorageAmbit != 0 { - n += 1 + sovTx(uint64(m.StorageAmbit)) - } - if m.StorageSlot != 0 { - n += 1 + sovTx(uint64(m.StorageSlot)) - } return n } -func (m *MsgStructDefenseSet) Size() (n int) { +func (m *MsgGuildMembershipRequestRevoke) Size() (n int) { if m == nil { return 0 } @@ -15014,35 +15442,31 @@ func (m *MsgStructDefenseSet) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.DefenderStructId) + l = len(m.GuildId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProtectedStructId) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgStructDefenseClear) Size() (n int) { +func (m *MsgGuildMembershipResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.DefenderStructId) - if l > 0 { + if m.GuildMembershipApplication != nil { + l = m.GuildMembershipApplication.Size() n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgStructMove) Size() (n int) { +func (m *MsgPermissionGrantOnObject) Size() (n int) { if m == nil { return 0 } @@ -15052,23 +15476,21 @@ func (m *MsgStructMove) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.ObjectId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.LocationType != 0 { - n += 1 + sovTx(uint64(m.LocationType)) - } - if m.Ambit != 0 { - n += 1 + sovTx(uint64(m.Ambit)) + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } - if m.Slot != 0 { - n += 1 + sovTx(uint64(m.Slot)) + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) } return n } -func (m *MsgStructAttack) Size() (n int) { +func (m *MsgPermissionGrantOnAddress) Size() (n int) { if m == nil { return 0 } @@ -15078,33 +15500,41 @@ func (m *MsgStructAttack) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.OperatingStructId) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if len(m.TargetStructId) > 0 { - for _, s := range m.TargetStructId { - l = len(s) - n += 1 + l + sovTx(uint64(l)) - } - } - l = len(m.WeaponSystem) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) } return n } -func (m *MsgStructAttackResponse) Size() (n int) { +func (m *MsgPermissionRevokeOnObject) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ObjectId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) + } return n } -func (m *MsgStructStealthActivate) Size() (n int) { +func (m *MsgPermissionRevokeOnAddress) Size() (n int) { if m == nil { return 0 } @@ -15114,14 +15544,17 @@ func (m *MsgStructStealthActivate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) + } return n } -func (m *MsgStructStealthDeactivate) Size() (n int) { +func (m *MsgPermissionSetOnObject) Size() (n int) { if m == nil { return 0 } @@ -15131,14 +15564,21 @@ func (m *MsgStructStealthDeactivate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.ObjectId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) + } return n } -func (m *MsgStructGeneratorInfuse) Size() (n int) { +func (m *MsgPermissionSetOnAddress) Size() (n int) { if m == nil { return 0 } @@ -15148,18 +15588,17 @@ func (m *MsgStructGeneratorInfuse) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.Address) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.InfuseAmount) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) + if m.Permissions != 0 { + n += 1 + sovTx(uint64(m.Permissions)) } return n } -func (m *MsgStructGeneratorStatusResponse) Size() (n int) { +func (m *MsgPermissionResponse) Size() (n int) { if m == nil { return 0 } @@ -15168,7 +15607,7 @@ func (m *MsgStructGeneratorStatusResponse) Size() (n int) { return n } -func (m *MsgStructOreMinerComplete) Size() (n int) { +func (m *MsgPlanetExplore) Size() (n int) { if m == nil { return 0 } @@ -15178,33 +15617,25 @@ func (m *MsgStructOreMinerComplete) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Proof) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.Nonce) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgStructOreMinerStatusResponse) Size() (n int) { +func (m *MsgPlanetExploreResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Struct.Size() + l = m.Planet.Size() n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgStructOreRefineryComplete) Size() (n int) { +func (m *MsgPlanetRaidComplete) Size() (n int) { if m == nil { return 0 } @@ -15214,7 +15645,7 @@ func (m *MsgStructOreRefineryComplete) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.FleetId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } @@ -15229,18 +15660,23 @@ func (m *MsgStructOreRefineryComplete) Size() (n int) { return n } -func (m *MsgStructOreRefineryStatusResponse) Size() (n int) { +func (m *MsgPlanetRaidCompleteResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = m.Struct.Size() + l = m.Fleet.Size() + n += 1 + l + sovTx(uint64(l)) + l = m.Planet.Size() n += 1 + l + sovTx(uint64(l)) + if m.OreStolen != 0 { + n += 1 + sovTx(uint64(m.OreStolen)) + } return n } -func (m *MsgStructStorageStash) Size() (n int) { +func (m *MsgPlayerUpdatePrimaryAddress) Size() (n int) { if m == nil { return 0 } @@ -15250,54 +15686,27 @@ func (m *MsgStructStorageStash) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.StructId) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.LocationId) + l = len(m.PrimaryAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Ambit != 0 { - n += 1 + sovTx(uint64(m.Ambit)) - } - if m.Slot != 0 { - n += 1 + sovTx(uint64(m.Slot)) - } return n } -func (m *MsgStructStorageRecall) Size() (n int) { +func (m *MsgPlayerUpdatePrimaryAddressResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.StructId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.LocationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if m.Ambit != 0 { - n += 1 + sovTx(uint64(m.Ambit)) - } - if m.Slot != 0 { - n += 1 + sovTx(uint64(m.Slot)) - } - if m.Activate { - n += 2 - } return n } -func (m *MsgSubstationCreate) Size() (n int) { +func (m *MsgPlayerResume) Size() (n int) { if m == nil { return 0 } @@ -15307,31 +15716,23 @@ func (m *MsgSubstationCreate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.Owner) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.AllocationId) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgSubstationCreateResponse) Size() (n int) { +func (m *MsgPlayerResumeResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.SubstationId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } return n } -func (m *MsgSubstationDelete) Size() (n int) { +func (m *MsgReactorInfuse) Size() (n int) { if m == nil { return 0 } @@ -15341,18 +15742,20 @@ func (m *MsgSubstationDelete) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) + l = len(m.DelegatorAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.MigrationSubstationId) + l = len(m.ValidatorAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgSubstationDeleteResponse) Size() (n int) { +func (m *MsgReactorInfuseResponse) Size() (n int) { if m == nil { return 0 } @@ -15361,7 +15764,7 @@ func (m *MsgSubstationDeleteResponse) Size() (n int) { return n } -func (m *MsgSubstationAllocationConnect) Size() (n int) { +func (m *MsgReactorBeginMigration) Size() (n int) { if m == nil { return 0 } @@ -15371,27 +15774,35 @@ func (m *MsgSubstationAllocationConnect) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.AllocationId) + l = len(m.DelegatorAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.DestinationId) + l = len(m.ValidatorSrcAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = len(m.ValidatorDstAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgSubstationAllocationConnectResponse) Size() (n int) { +func (m *MsgReactorBeginMigrationResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = github_com_cosmos_gogoproto_types.SizeOfStdTime(m.CompletionTime) + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgSubstationAllocationDisconnect) Size() (n int) { +func (m *MsgReactorDefuse) Size() (n int) { if m == nil { return 0 } @@ -15401,23 +15812,33 @@ func (m *MsgSubstationAllocationDisconnect) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.AllocationId) + l = len(m.DelegatorAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = len(m.ValidatorAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgSubstationAllocationDisconnectResponse) Size() (n int) { +func (m *MsgReactorDefuseResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = github_com_cosmos_gogoproto_types.SizeOfStdTime(m.CompletionTime) + n += 1 + l + sovTx(uint64(l)) + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgSubstationPlayerConnect) Size() (n int) { +func (m *MsgReactorCancelDefusion) Size() (n int) { if m == nil { return 0 } @@ -15427,18 +15848,23 @@ func (m *MsgSubstationPlayerConnect) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) + l = len(m.DelegatorAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.PlayerId) + l = len(m.ValidatorAddress) if l > 0 { n += 1 + l + sovTx(uint64(l)) } + l = m.Amount.Size() + n += 1 + l + sovTx(uint64(l)) + if m.CreationHeight != 0 { + n += 1 + sovTx(uint64(m.CreationHeight)) + } return n } -func (m *MsgSubstationPlayerConnectResponse) Size() (n int) { +func (m *MsgReactorCancelDefusionResponse) Size() (n int) { if m == nil { return 0 } @@ -15447,33 +15873,18 @@ func (m *MsgSubstationPlayerConnectResponse) Size() (n int) { return n } -func (m *MsgSubstationPlayerDisconnect) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.PlayerId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - return n -} - -func (m *MsgSubstationPlayerDisconnectResponse) Size() (n int) { +func (m *MsgStructStatusResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = m.Struct.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgSubstationPlayerMigrate) Size() (n int) { +func (m *MsgStructActivate) Size() (n int) { if m == nil { return 0 } @@ -15483,29 +15894,31 @@ func (m *MsgSubstationPlayerMigrate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if len(m.PlayerId) > 0 { - for _, s := range m.PlayerId { - l = len(s) - n += 1 + l + sovTx(uint64(l)) - } - } return n } -func (m *MsgSubstationPlayerMigrateResponse) Size() (n int) { +func (m *MsgStructDeactivate) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.StructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } return n } -func (m *MsgAgreementOpen) Size() (n int) { +func (m *MsgStructBuildInitiate) Size() (n int) { if m == nil { return 0 } @@ -15515,20 +15928,23 @@ func (m *MsgAgreementOpen) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.PlayerId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.Duration != 0 { - n += 1 + sovTx(uint64(m.Duration)) + if m.StructTypeId != 0 { + n += 1 + sovTx(uint64(m.StructTypeId)) } - if m.Capacity != 0 { - n += 1 + sovTx(uint64(m.Capacity)) + if m.OperatingAmbit != 0 { + n += 1 + sovTx(uint64(m.OperatingAmbit)) + } + if m.Slot != 0 { + n += 1 + sovTx(uint64(m.Slot)) } return n } -func (m *MsgAgreementClose) Size() (n int) { +func (m *MsgStructBuildComplete) Size() (n int) { if m == nil { return 0 } @@ -15538,14 +15954,22 @@ func (m *MsgAgreementClose) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.AgreementId) + l = len(m.StructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Proof) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Nonce) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgAgreementCapacityIncrease) Size() (n int) { +func (m *MsgStructBuildCancel) Size() (n int) { if m == nil { return 0 } @@ -15555,17 +15979,14 @@ func (m *MsgAgreementCapacityIncrease) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.AgreementId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.CapacityIncrease != 0 { - n += 1 + sovTx(uint64(m.CapacityIncrease)) - } return n } -func (m *MsgAgreementCapacityDecrease) Size() (n int) { +func (m *MsgStructBuildCompleteAndStash) Size() (n int) { if m == nil { return 0 } @@ -15575,17 +15996,32 @@ func (m *MsgAgreementCapacityDecrease) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.AgreementId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.CapacityDecrease != 0 { - n += 1 + sovTx(uint64(m.CapacityDecrease)) + l = len(m.Proof) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Nonce) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.StorageDestinationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.StorageAmbit != 0 { + n += 1 + sovTx(uint64(m.StorageAmbit)) + } + if m.StorageSlot != 0 { + n += 1 + sovTx(uint64(m.StorageSlot)) } return n } -func (m *MsgAgreementDurationIncrease) Size() (n int) { +func (m *MsgStructDefenseSet) Size() (n int) { if m == nil { return 0 } @@ -15595,26 +16031,35 @@ func (m *MsgAgreementDurationIncrease) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.AgreementId) + l = len(m.DefenderStructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.DurationIncrease != 0 { - n += 1 + sovTx(uint64(m.DurationIncrease)) + l = len(m.ProtectedStructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgAgreementResponse) Size() (n int) { +func (m *MsgStructDefenseClear) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.DefenderStructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } return n } -func (m *MsgProviderCreate) Size() (n int) { +func (m *MsgStructMove) Size() (n int) { if m == nil { return 0 } @@ -15624,35 +16069,23 @@ func (m *MsgProviderCreate) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.SubstationId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = m.Rate.Size() - n += 1 + l + sovTx(uint64(l)) - if m.AccessPolicy != 0 { - n += 1 + sovTx(uint64(m.AccessPolicy)) - } - l = m.ProviderCancellationPenalty.Size() - n += 1 + l + sovTx(uint64(l)) - l = m.ConsumerCancellationPenalty.Size() - n += 1 + l + sovTx(uint64(l)) - if m.CapacityMinimum != 0 { - n += 1 + sovTx(uint64(m.CapacityMinimum)) - } - if m.CapacityMaximum != 0 { - n += 1 + sovTx(uint64(m.CapacityMaximum)) + if m.LocationType != 0 { + n += 1 + sovTx(uint64(m.LocationType)) } - if m.DurationMinimum != 0 { - n += 1 + sovTx(uint64(m.DurationMinimum)) + if m.Ambit != 0 { + n += 1 + sovTx(uint64(m.Ambit)) } - if m.DurationMaximum != 0 { - n += 1 + sovTx(uint64(m.DurationMaximum)) + if m.Slot != 0 { + n += 1 + sovTx(uint64(m.Slot)) } return n } -func (m *MsgProviderWithdrawBalance) Size() (n int) { +func (m *MsgStructAttack) Size() (n int) { if m == nil { return 0 } @@ -15662,38 +16095,33 @@ func (m *MsgProviderWithdrawBalance) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.OperatingStructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.DestinationAddress) + if len(m.TargetStructId) > 0 { + for _, s := range m.TargetStructId { + l = len(s) + n += 1 + l + sovTx(uint64(l)) + } + } + l = len(m.WeaponSystem) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgProviderUpdateCapacityMinimum) Size() (n int) { +func (m *MsgStructAttackResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.ProviderId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if m.NewMinimumCapacity != 0 { - n += 1 + sovTx(uint64(m.NewMinimumCapacity)) - } return n } -func (m *MsgProviderUpdateCapacityMaximum) Size() (n int) { +func (m *MsgStructStealthActivate) Size() (n int) { if m == nil { return 0 } @@ -15703,17 +16131,14 @@ func (m *MsgProviderUpdateCapacityMaximum) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.NewMaximumCapacity != 0 { - n += 1 + sovTx(uint64(m.NewMaximumCapacity)) - } return n } -func (m *MsgProviderUpdateDurationMinimum) Size() (n int) { +func (m *MsgStructStealthDeactivate) Size() (n int) { if m == nil { return 0 } @@ -15723,17 +16148,14 @@ func (m *MsgProviderUpdateDurationMinimum) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.NewMinimumDuration != 0 { - n += 1 + sovTx(uint64(m.NewMinimumDuration)) - } return n } -func (m *MsgProviderUpdateDurationMaximum) Size() (n int) { +func (m *MsgStructGeneratorInfuse) Size() (n int) { if m == nil { return 0 } @@ -15743,37 +16165,27 @@ func (m *MsgProviderUpdateDurationMaximum) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if m.NewMaximumDuration != 0 { - n += 1 + sovTx(uint64(m.NewMaximumDuration)) + l = len(m.InfuseAmount) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgProviderUpdateAccessPolicy) Size() (n int) { +func (m *MsgStructGeneratorStatusResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.ProviderId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if m.AccessPolicy != 0 { - n += 1 + sovTx(uint64(m.AccessPolicy)) - } return n } -func (m *MsgProviderGuildGrant) Size() (n int) { +func (m *MsgStructOreMinerComplete) Size() (n int) { if m == nil { return 0 } @@ -15783,43 +16195,33 @@ func (m *MsgProviderGuildGrant) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.StructId) if l > 0 { n += 1 + l + sovTx(uint64(l)) } - if len(m.GuildId) > 0 { - for _, s := range m.GuildId { - l = len(s) - n += 1 + l + sovTx(uint64(l)) - } + l = len(m.Proof) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Nonce) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgProviderGuildRevoke) Size() (n int) { +func (m *MsgStructOreMinerStatusResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l - l = len(m.Creator) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - l = len(m.ProviderId) - if l > 0 { - n += 1 + l + sovTx(uint64(l)) - } - if len(m.GuildId) > 0 { - for _, s := range m.GuildId { - l = len(s) - n += 1 + l + sovTx(uint64(l)) - } - } + l = m.Struct.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func (m *MsgProviderDelete) Size() (n int) { +func (m *MsgStructOreRefineryComplete) Size() (n int) { if m == nil { return 0 } @@ -15829,29 +16231,1714 @@ func (m *MsgProviderDelete) Size() (n int) { if l > 0 { n += 1 + l + sovTx(uint64(l)) } - l = len(m.ProviderId) + l = len(m.StructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Proof) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Nonce) if l > 0 { n += 1 + l + sovTx(uint64(l)) } return n } -func (m *MsgProviderResponse) Size() (n int) { +func (m *MsgStructOreRefineryStatusResponse) Size() (n int) { if m == nil { return 0 } var l int _ = l + l = m.Struct.Size() + n += 1 + l + sovTx(uint64(l)) return n } -func sovTx(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozTx(x uint64) (n int) { - return sovTx(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { +func (m *MsgStructStorageStash) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.StructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.LocationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.Ambit != 0 { + n += 1 + sovTx(uint64(m.Ambit)) + } + if m.Slot != 0 { + n += 1 + sovTx(uint64(m.Slot)) + } + return n +} + +func (m *MsgStructStorageRecall) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.StructId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.LocationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.Ambit != 0 { + n += 1 + sovTx(uint64(m.Ambit)) + } + if m.Slot != 0 { + n += 1 + sovTx(uint64(m.Slot)) + } + if m.Activate { + n += 2 + } + return n +} + +func (m *MsgSubstationCreate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.Owner) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AllocationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationCreateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationDelete) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.MigrationSubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationDeleteResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgSubstationAllocationConnect) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AllocationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.DestinationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationAllocationConnectResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgSubstationAllocationDisconnect) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AllocationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationAllocationDisconnectResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgSubstationPlayerConnect) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationPlayerConnectResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgSubstationPlayerDisconnect) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.PlayerId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgSubstationPlayerDisconnectResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgSubstationPlayerMigrate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if len(m.PlayerId) > 0 { + for _, s := range m.PlayerId { + l = len(s) + n += 1 + l + sovTx(uint64(l)) + } + } + return n +} + +func (m *MsgSubstationPlayerMigrateResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgAgreementOpen) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.Duration != 0 { + n += 1 + sovTx(uint64(m.Duration)) + } + if m.Capacity != 0 { + n += 1 + sovTx(uint64(m.Capacity)) + } + return n +} + +func (m *MsgAgreementClose) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AgreementId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgAgreementCapacityIncrease) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AgreementId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.CapacityIncrease != 0 { + n += 1 + sovTx(uint64(m.CapacityIncrease)) + } + return n +} + +func (m *MsgAgreementCapacityDecrease) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AgreementId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.CapacityDecrease != 0 { + n += 1 + sovTx(uint64(m.CapacityDecrease)) + } + return n +} + +func (m *MsgAgreementDurationIncrease) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.AgreementId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.DurationIncrease != 0 { + n += 1 + sovTx(uint64(m.DurationIncrease)) + } + return n +} + +func (m *MsgAgreementResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func (m *MsgProviderCreate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.SubstationId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = m.Rate.Size() + n += 1 + l + sovTx(uint64(l)) + if m.AccessPolicy != 0 { + n += 1 + sovTx(uint64(m.AccessPolicy)) + } + l = m.ProviderCancellationPenalty.Size() + n += 1 + l + sovTx(uint64(l)) + l = m.ConsumerCancellationPenalty.Size() + n += 1 + l + sovTx(uint64(l)) + if m.CapacityMinimum != 0 { + n += 1 + sovTx(uint64(m.CapacityMinimum)) + } + if m.CapacityMaximum != 0 { + n += 1 + sovTx(uint64(m.CapacityMaximum)) + } + if m.DurationMinimum != 0 { + n += 1 + sovTx(uint64(m.DurationMinimum)) + } + if m.DurationMaximum != 0 { + n += 1 + sovTx(uint64(m.DurationMaximum)) + } + return n +} + +func (m *MsgProviderWithdrawBalance) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.DestinationAddress) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgProviderUpdateCapacityMinimum) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.NewMinimumCapacity != 0 { + n += 1 + sovTx(uint64(m.NewMinimumCapacity)) + } + return n +} + +func (m *MsgProviderUpdateCapacityMaximum) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.NewMaximumCapacity != 0 { + n += 1 + sovTx(uint64(m.NewMaximumCapacity)) + } + return n +} + +func (m *MsgProviderUpdateDurationMinimum) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.NewMinimumDuration != 0 { + n += 1 + sovTx(uint64(m.NewMinimumDuration)) + } + return n +} + +func (m *MsgProviderUpdateDurationMaximum) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.NewMaximumDuration != 0 { + n += 1 + sovTx(uint64(m.NewMaximumDuration)) + } + return n +} + +func (m *MsgProviderUpdateAccessPolicy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if m.AccessPolicy != 0 { + n += 1 + sovTx(uint64(m.AccessPolicy)) + } + return n +} + +func (m *MsgProviderGuildGrant) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if len(m.GuildId) > 0 { + for _, s := range m.GuildId { + l = len(s) + n += 1 + l + sovTx(uint64(l)) + } + } + return n +} + +func (m *MsgProviderGuildRevoke) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + if len(m.GuildId) > 0 { + for _, s := range m.GuildId { + l = len(s) + n += 1 + l + sovTx(uint64(l)) + } + } + return n +} + +func (m *MsgProviderDelete) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Creator) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + l = len(m.ProviderId) + if l > 0 { + n += 1 + l + sovTx(uint64(l)) + } + return n +} + +func (m *MsgProviderResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + +func sovTx(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozTx(x uint64) (n int) { + return sovTx(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Authority = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Params", 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.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAddressRegister: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAddressRegister: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PlayerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Address = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProofPubKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProofPubKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProofSignature", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProofSignature = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + } + m.Permissions = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Permissions |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAddressRegisterResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAddressRegisterResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAddressRegisterResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAddressRevoke) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAddressRevoke: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAddressRevoke: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Address = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAddressRevokeResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAddressRevokeResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAddressRevokeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAllocationCreate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAllocationCreate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAllocationCreate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Controller", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Controller = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SourceObjectId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SourceObjectId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AllocationType", wireType) + } + m.AllocationType = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AllocationType |= AllocationType(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType) + } + m.Power = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Power |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAllocationCreateResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAllocationCreateResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAllocationCreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AllocationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAllocationDelete) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAllocationDelete: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAllocationDelete: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AllocationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAllocationDeleteResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAllocationDeleteResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAllocationDeleteResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AllocationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15874,15 +17961,15 @@ func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgUpdateParams: wiretype end group for non-group") + return fmt.Errorf("proto: MsgAllocationUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgUpdateParams: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgAllocationUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Authority", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -15910,13 +17997,13 @@ func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Authority = string(dAtA[iNdEx:postIndex]) + m.Creator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Params", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -15926,25 +18013,43 @@ func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Params.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.AllocationId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType) + } + m.Power = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Power |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -15966,7 +18071,7 @@ func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error { +func (m *MsgAllocationUpdateResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -15989,12 +18094,44 @@ func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgUpdateParamsResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgAllocationUpdateResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgUpdateParamsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgAllocationUpdateResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AllocationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16016,7 +18153,7 @@ func (m *MsgUpdateParamsResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { +func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16039,10 +18176,10 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAddressRegister: wiretype end group for non-group") + return fmt.Errorf("proto: MsgAllocationTransfer: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAddressRegister: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgAllocationTransfer: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -16079,7 +18216,7 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -16107,11 +18244,11 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) + m.AllocationId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Controller", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -16139,11 +18276,61 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + m.Controller = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgAllocationTransferResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgAllocationTransferResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgAllocationTransferResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProofPubKey", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -16171,11 +18358,61 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProofPubKey = string(dAtA[iNdEx:postIndex]) + m.AllocationId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgFleetMove) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgFleetMove: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgFleetMove: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProofSignature", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -16203,13 +18440,13 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProofSignature = string(dAtA[iNdEx:postIndex]) + m.Creator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FleetId", wireType) } - m.Permissions = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -16219,11 +18456,56 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.FleetId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DestinationLocationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DestinationLocationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16245,7 +18527,7 @@ func (m *MsgAddressRegister) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAddressRegisterResponse) Unmarshal(dAtA []byte) error { +func (m *MsgFleetMoveResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16268,12 +18550,48 @@ func (m *MsgAddressRegisterResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAddressRegisterResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgFleetMoveResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAddressRegisterResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgFleetMoveResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Fleet", 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 m.Fleet == nil { + m.Fleet = &Fleet{} + } + if err := m.Fleet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16295,7 +18613,7 @@ func (m *MsgAddressRegisterResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAddressRevoke) Unmarshal(dAtA []byte) error { +func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16318,10 +18636,10 @@ func (m *MsgAddressRevoke) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAddressRevoke: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildBankMint: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAddressRevoke: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildBankMint: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -16357,10 +18675,10 @@ func (m *MsgAddressRevoke) Unmarshal(dAtA []byte) error { m.Creator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AmountAlpha", wireType) } - var stringLen uint64 + m.AmountAlpha = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -16370,24 +18688,30 @@ func (m *MsgAddressRevoke) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.AmountAlpha |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AmountToken", wireType) } - if postIndex > l { - return io.ErrUnexpectedEOF + m.AmountToken = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AmountToken |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } } - m.Address = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16409,7 +18733,7 @@ func (m *MsgAddressRevoke) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAddressRevokeResponse) Unmarshal(dAtA []byte) error { +func (m *MsgGuildBankMintResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16432,10 +18756,10 @@ func (m *MsgAddressRevokeResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAddressRevokeResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildBankMintResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAddressRevokeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildBankMintResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -16459,7 +18783,7 @@ func (m *MsgAddressRevokeResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationCreate) Unmarshal(dAtA []byte) error { +func (m *MsgGuildBankRedeem) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16482,10 +18806,10 @@ func (m *MsgAllocationCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationCreate: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildBankRedeem: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildBankRedeem: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -16522,9 +18846,9 @@ func (m *MsgAllocationCreate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Controller", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AmountToken", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -16534,94 +18858,25 @@ func (m *MsgAllocationCreate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - m.Controller = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SourceObjectId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.AmountToken.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.SourceObjectId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationType", wireType) - } - m.AllocationType = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.AllocationType |= AllocationType(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType) - } - m.Power = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Power |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16643,7 +18898,7 @@ func (m *MsgAllocationCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationCreateResponse) Unmarshal(dAtA []byte) error { +func (m *MsgGuildBankRedeemResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16666,44 +18921,12 @@ func (m *MsgAllocationCreateResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationCreateResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildBankRedeemResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationCreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildBankRedeemResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AllocationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16725,7 +18948,7 @@ func (m *MsgAllocationCreateResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationDelete) Unmarshal(dAtA []byte) error { +func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16748,10 +18971,10 @@ func (m *MsgAllocationDelete) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationDelete: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurn: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationDelete: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurn: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -16788,7 +19011,7 @@ func (m *MsgAllocationDelete) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -16816,8 +19039,27 @@ func (m *MsgAllocationDelete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AllocationId = string(dAtA[iNdEx:postIndex]) + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AmountToken", wireType) + } + m.AmountToken = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.AmountToken |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16839,7 +19081,7 @@ func (m *MsgAllocationDelete) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationDeleteResponse) Unmarshal(dAtA []byte) error { +func (m *MsgGuildBankConfiscateAndBurnResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16862,44 +19104,12 @@ func (m *MsgAllocationDeleteResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationDeleteResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurnResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationDeleteResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurnResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AllocationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -16921,7 +19131,7 @@ func (m *MsgAllocationDeleteResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { +func (m *MsgGuildCreate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -16944,10 +19154,10 @@ func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildCreate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildCreate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -16984,7 +19194,7 @@ func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17012,13 +19222,13 @@ func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AllocationId = string(dAtA[iNdEx:postIndex]) + m.Endpoint = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Power", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntrySubstationId", wireType) } - m.Power = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -17028,11 +19238,24 @@ func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Power |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntrySubstationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -17054,7 +19277,7 @@ func (m *MsgAllocationUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationUpdateResponse) Unmarshal(dAtA []byte) error { +func (m *MsgGuildCreateResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17077,15 +19300,15 @@ func (m *MsgAllocationUpdateResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationUpdateResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildCreateResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationUpdateResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildCreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17113,7 +19336,7 @@ func (m *MsgAllocationUpdateResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AllocationId = string(dAtA[iNdEx:postIndex]) + m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -17136,7 +19359,7 @@ func (m *MsgAllocationUpdateResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateOwnerId) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17159,10 +19382,10 @@ func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationTransfer: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateOwnerId: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationTransfer: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateOwnerId: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -17199,7 +19422,7 @@ func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17227,11 +19450,11 @@ func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AllocationId = string(dAtA[iNdEx:postIndex]) + m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Controller", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17259,7 +19482,7 @@ func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Controller = string(dAtA[iNdEx:postIndex]) + m.Owner = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -17282,7 +19505,7 @@ func (m *MsgAllocationTransfer) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgAllocationTransferResponse) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateEntrySubstationId) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17305,15 +19528,15 @@ func (m *MsgAllocationTransferResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgAllocationTransferResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateEntrySubstationId: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgAllocationTransferResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateEntrySubstationId: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllocationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17341,7 +19564,71 @@ func (m *MsgAllocationTransferResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AllocationId = string(dAtA[iNdEx:postIndex]) + m.Creator = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GuildId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field EntrySubstationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.EntrySubstationId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -17364,7 +19651,7 @@ func (m *MsgAllocationTransferResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgFleetMove) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateEndpoint) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17387,10 +19674,10 @@ func (m *MsgFleetMove) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgFleetMove: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateEndpoint: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgFleetMove: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateEndpoint: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -17427,7 +19714,7 @@ func (m *MsgFleetMove) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FleetId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17455,11 +19742,11 @@ func (m *MsgFleetMove) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.FleetId = string(dAtA[iNdEx:postIndex]) + m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DestinationLocationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -17480,100 +19767,14 @@ func (m *MsgFleetMove) Unmarshal(dAtA []byte) error { if intStringLen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DestinationLocationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgFleetMoveResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgFleetMoveResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgFleetMoveResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Fleet", 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 + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Fleet == nil { - m.Fleet = &Fleet{} - } - if err := m.Fleet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Endpoint = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -17596,7 +19797,7 @@ func (m *MsgFleetMoveResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateJoinInfusionMinimum) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17619,10 +19820,10 @@ func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildBankMint: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimum: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildBankMint: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimum: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -17658,10 +19859,10 @@ func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { m.Creator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AmountAlpha", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } - m.AmountAlpha = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -17671,16 +19872,29 @@ func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.AmountAlpha |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GuildId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 3: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AmountToken", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field JoinInfusionMinimum", wireType) } - m.AmountToken = 0 + m.JoinInfusionMinimum = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -17690,7 +19904,7 @@ func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.AmountToken |= uint64(b&0x7F) << shift + m.JoinInfusionMinimum |= uint64(b&0x7F) << shift if b < 0x80 { break } @@ -17716,57 +19930,7 @@ func (m *MsgGuildBankMint) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildBankMintResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgGuildBankMintResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildBankMintResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgGuildBankRedeem) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17789,10 +19953,10 @@ func (m *MsgGuildBankRedeem) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildBankRedeem: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildBankRedeem: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -17829,9 +19993,9 @@ func (m *MsgGuildBankRedeem) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AmountToken", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -17841,75 +20005,43 @@ func (m *MsgGuildBankRedeem) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.AmountToken.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgGuildBankRedeemResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field GuildJoinBypassLevel", wireType) } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + m.GuildJoinBypassLevel = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.GuildJoinBypassLevel |= GuildJoinBypassLevel(b&0x7F) << shift + if b < 0x80 { + break + } } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgGuildBankRedeemResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildBankRedeemResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -17931,7 +20063,7 @@ func (m *MsgGuildBankRedeemResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -17954,10 +20086,10 @@ func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurn: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByInvite: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurn: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByInvite: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -17994,7 +20126,7 @@ func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18022,13 +20154,13 @@ func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AmountToken", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildJoinBypassLevel", wireType) } - m.AmountToken = 0 + m.GuildJoinBypassLevel = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -18038,7 +20170,7 @@ func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.AmountToken |= uint64(b&0x7F) << shift + m.GuildJoinBypassLevel |= GuildJoinBypassLevel(b&0x7F) << shift if b < 0x80 { break } @@ -18064,7 +20196,7 @@ func (m *MsgGuildBankConfiscateAndBurn) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildBankConfiscateAndBurnResponse) Unmarshal(dAtA []byte) error { +func (m *MsgGuildUpdateResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18087,10 +20219,10 @@ func (m *MsgGuildBankConfiscateAndBurnResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurnResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildUpdateResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildBankConfiscateAndBurnResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildUpdateResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: @@ -18114,7 +20246,7 @@ func (m *MsgGuildBankConfiscateAndBurnResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildCreate) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipInvite) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18137,10 +20269,10 @@ func (m *MsgGuildCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildCreate: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipInvite: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipInvite: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -18177,7 +20309,7 @@ func (m *MsgGuildCreate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18205,11 +20337,11 @@ func (m *MsgGuildCreate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Endpoint = string(dAtA[iNdEx:postIndex]) + m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntrySubstationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18234,64 +20366,14 @@ func (m *MsgGuildCreate) Unmarshal(dAtA []byte) error { if postIndex < 0 { return ErrInvalidLengthTx } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EntrySubstationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgGuildCreateResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if postIndex > l { + return io.ErrUnexpectedEOF } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgGuildCreateResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildCreateResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.PlayerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18319,7 +20401,7 @@ func (m *MsgGuildCreateResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GuildId = string(dAtA[iNdEx:postIndex]) + m.SubstationId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -18342,7 +20424,7 @@ func (m *MsgGuildCreateResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildUpdateOwnerId) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipInviteApprove) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18365,10 +20447,10 @@ func (m *MsgGuildUpdateOwnerId) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateOwnerId: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipInviteApprove: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateOwnerId: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipInviteApprove: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -18437,7 +20519,7 @@ func (m *MsgGuildUpdateOwnerId) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18465,7 +20547,39 @@ func (m *MsgGuildUpdateOwnerId) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Owner = string(dAtA[iNdEx:postIndex]) + m.PlayerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubstationId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -18488,7 +20602,7 @@ func (m *MsgGuildUpdateOwnerId) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildUpdateEntrySubstationId) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipInviteDeny) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18511,10 +20625,10 @@ func (m *MsgGuildUpdateEntrySubstationId) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateEntrySubstationId: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipInviteDeny: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateEntrySubstationId: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipInviteDeny: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -18583,7 +20697,7 @@ func (m *MsgGuildUpdateEntrySubstationId) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EntrySubstationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18611,7 +20725,7 @@ func (m *MsgGuildUpdateEntrySubstationId) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.EntrySubstationId = string(dAtA[iNdEx:postIndex]) + m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -18634,7 +20748,7 @@ func (m *MsgGuildUpdateEntrySubstationId) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildUpdateEndpoint) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipInviteRevoke) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18657,10 +20771,10 @@ func (m *MsgGuildUpdateEndpoint) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateEndpoint: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipInviteRevoke: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateEndpoint: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipInviteRevoke: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -18729,7 +20843,7 @@ func (m *MsgGuildUpdateEndpoint) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Endpoint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -18757,7 +20871,7 @@ func (m *MsgGuildUpdateEndpoint) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Endpoint = string(dAtA[iNdEx:postIndex]) + m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -18780,7 +20894,7 @@ func (m *MsgGuildUpdateEndpoint) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildUpdateJoinInfusionMinimum) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipJoin) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18803,10 +20917,10 @@ func (m *MsgGuildUpdateJoinInfusionMinimum) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimum: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipJoin: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimum: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipJoin: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -18874,10 +20988,10 @@ func (m *MsgGuildUpdateJoinInfusionMinimum) Unmarshal(dAtA []byte) error { m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field JoinInfusionMinimum", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } - m.JoinInfusionMinimum = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -18887,11 +21001,88 @@ func (m *MsgGuildUpdateJoinInfusionMinimum) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.JoinInfusionMinimum |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PlayerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubstationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field InfusionId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.InfusionId = append(m.InfusionId, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -18913,7 +21104,7 @@ func (m *MsgGuildUpdateJoinInfusionMinimum) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -18936,10 +21127,10 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByRequest: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipJoinProxy: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipJoinProxy: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -18976,7 +21167,7 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -19004,13 +21195,13 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte if postIndex > l { return io.ErrUnexpectedEOF } - m.GuildId = string(dAtA[iNdEx:postIndex]) + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildJoinBypassLevel", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) } - m.GuildJoinBypassLevel = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -19020,11 +21211,88 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte } b := dAtA[iNdEx] iNdEx++ - m.GuildJoinBypassLevel |= GuildJoinBypassLevel(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SubstationId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProofPubKey", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProofPubKey = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ProofSignature", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ProofSignature = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -19046,7 +21314,7 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByRequest) Unmarshal(dAtA []byte } return nil } -func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19069,10 +21337,10 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Unmarshal(dAtA []byte) fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByInvite: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipKick: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateJoinInfusionMinimumBypassByInvite: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipKick: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19140,10 +21408,10 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Unmarshal(dAtA []byte) m.GuildId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildJoinBypassLevel", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } - m.GuildJoinBypassLevel = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -19153,61 +21421,24 @@ func (m *MsgGuildUpdateJoinInfusionMinimumBypassByInvite) Unmarshal(dAtA []byte) } b := dAtA[iNdEx] iNdEx++ - m.GuildJoinBypassLevel |= GuildJoinBypassLevel(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthTx } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgGuildUpdateResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgGuildUpdateResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildUpdateResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { + m.PlayerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -19229,7 +21460,7 @@ func (m *MsgGuildUpdateResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipInvite) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19252,10 +21483,10 @@ func (m *MsgGuildMembershipInvite) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipInvite: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipInvite: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19407,7 +21638,7 @@ func (m *MsgGuildMembershipInvite) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipInviteApprove) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19430,10 +21661,10 @@ func (m *MsgGuildMembershipInviteApprove) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipInviteApprove: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipRequestApprove: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipInviteApprove: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipRequestApprove: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19585,7 +21816,7 @@ func (m *MsgGuildMembershipInviteApprove) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipInviteDeny) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19608,10 +21839,10 @@ func (m *MsgGuildMembershipInviteDeny) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipInviteDeny: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipRequestDeny: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipInviteDeny: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipRequestDeny: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19731,7 +21962,7 @@ func (m *MsgGuildMembershipInviteDeny) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipInviteRevoke) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipRequestRevoke) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19754,10 +21985,10 @@ func (m *MsgGuildMembershipInviteRevoke) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipInviteRevoke: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipRequestRevoke: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipInviteRevoke: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipRequestRevoke: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -19877,7 +22108,7 @@ func (m *MsgGuildMembershipInviteRevoke) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipJoin) Unmarshal(dAtA []byte) error { +func (m *MsgGuildMembershipResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -19900,113 +22131,17 @@ func (m *MsgGuildMembershipJoin) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipJoin: wiretype end group for non-group") + return fmt.Errorf("proto: MsgGuildMembershipResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipJoin: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgGuildMembershipResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Creator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.GuildId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PlayerId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GuildMembershipApplication", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -20016,55 +22151,27 @@ func (m *MsgGuildMembershipJoin) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - m.SubstationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InfusionId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx + if m.GuildMembershipApplication == nil { + m.GuildMembershipApplication = &GuildMembershipApplication{} } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.GuildMembershipApplication.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.InfusionId = append(m.InfusionId, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -20087,7 +22194,7 @@ func (m *MsgGuildMembershipJoin) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { +func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20110,10 +22217,10 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipJoinProxy: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPermissionGrantOnObject: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipJoinProxy: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPermissionGrantOnObject: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -20150,7 +22257,7 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ObjectId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20178,11 +22285,11 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + m.ObjectId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20210,11 +22317,80 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SubstationId = string(dAtA[iNdEx:postIndex]) + m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + } + m.Permissions = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Permissions |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgPermissionGrantOnAddress: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgPermissionGrantOnAddress: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProofPubKey", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20242,11 +22418,11 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProofPubKey = string(dAtA[iNdEx:postIndex]) + m.Creator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 5: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ProofSignature", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20274,8 +22450,27 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ProofSignature = string(dAtA[iNdEx:postIndex]) + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + } + m.Permissions = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Permissions |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -20297,7 +22492,7 @@ func (m *MsgGuildMembershipJoinProxy) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { +func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20320,10 +22515,10 @@ func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipKick: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPermissionRevokeOnObject: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipKick: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPermissionRevokeOnObject: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -20360,7 +22555,7 @@ func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ObjectId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20388,7 +22583,7 @@ func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GuildId = string(dAtA[iNdEx:postIndex]) + m.ObjectId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { @@ -20422,6 +22617,25 @@ func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { } m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + } + m.Permissions = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Permissions |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -20443,7 +22657,7 @@ func (m *MsgGuildMembershipKick) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { +func (m *MsgPermissionRevokeOnAddress) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20466,10 +22680,10 @@ func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipRequest: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPermissionRevokeOnAddress: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPermissionRevokeOnAddress: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -20506,7 +22720,7 @@ func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20534,45 +22748,13 @@ func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GuildId = string(dAtA[iNdEx:postIndex]) + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PlayerId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) } - var stringLen uint64 + m.Permissions = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -20582,24 +22764,11 @@ func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.Permissions |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SubstationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -20621,7 +22790,7 @@ func (m *MsgGuildMembershipRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { +func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20644,10 +22813,10 @@ func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipRequestApprove: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPermissionSetOnObject: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipRequestApprove: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPermissionSetOnObject: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -20684,7 +22853,7 @@ func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ObjectId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20712,7 +22881,7 @@ func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GuildId = string(dAtA[iNdEx:postIndex]) + m.ObjectId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { @@ -20747,10 +22916,10 @@ func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SubstationId", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) } - var stringLen uint64 + m.Permissions = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -20760,24 +22929,11 @@ func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.Permissions |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SubstationId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -20799,7 +22955,7 @@ func (m *MsgGuildMembershipRequestApprove) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { +func (m *MsgPermissionSetOnAddress) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20822,10 +22978,10 @@ func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipRequestDeny: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPermissionSetOnAddress: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipRequestDeny: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPermissionSetOnAddress: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -20862,7 +23018,7 @@ func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -20890,13 +23046,13 @@ func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GuildId = string(dAtA[iNdEx:postIndex]) + m.Address = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) } - var stringLen uint64 + m.Permissions = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -20906,24 +23062,61 @@ func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.Permissions |= uint64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthTx } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgPermissionResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgPermissionResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgPermissionResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -20945,7 +23138,7 @@ func (m *MsgGuildMembershipRequestDeny) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipRequestRevoke) Unmarshal(dAtA []byte) error { +func (m *MsgPlanetExplore) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -20968,10 +23161,10 @@ func (m *MsgGuildMembershipRequestRevoke) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipRequestRevoke: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPlanetExplore: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipRequestRevoke: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPlanetExplore: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -21007,38 +23200,6 @@ func (m *MsgGuildMembershipRequestRevoke) Unmarshal(dAtA []byte) error { m.Creator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildId", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.GuildId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } @@ -21091,7 +23252,7 @@ func (m *MsgGuildMembershipRequestRevoke) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgGuildMembershipResponse) Unmarshal(dAtA []byte) error { +func (m *MsgPlanetExploreResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21114,15 +23275,15 @@ func (m *MsgGuildMembershipResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgGuildMembershipResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPlanetExploreResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgGuildMembershipResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPlanetExploreResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GuildMembershipApplication", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Planet", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -21149,10 +23310,7 @@ func (m *MsgGuildMembershipResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.GuildMembershipApplication == nil { - m.GuildMembershipApplication = &GuildMembershipApplication{} - } - if err := m.GuildMembershipApplication.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Planet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -21177,7 +23335,7 @@ func (m *MsgGuildMembershipResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { +func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21200,10 +23358,10 @@ func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionGrantOnObject: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPlanetRaidComplete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionGrantOnObject: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPlanetRaidComplete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -21240,7 +23398,7 @@ func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ObjectId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field FleetId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21268,11 +23426,11 @@ func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ObjectId = string(dAtA[iNdEx:postIndex]) + m.FleetId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Proof", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21300,13 +23458,13 @@ func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) + m.Proof = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) } - m.Permissions = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -21316,11 +23474,24 @@ func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Nonce = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -21342,7 +23513,7 @@ func (m *MsgPermissionGrantOnObject) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { +func (m *MsgPlanetRaidCompleteResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21365,17 +23536,17 @@ func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionGrantOnAddress: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPlanetRaidCompleteResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionGrantOnAddress: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPlanetRaidCompleteResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Fleet", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -21385,29 +23556,30 @@ func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - m.Creator = string(dAtA[iNdEx:postIndex]) + if err := m.Fleet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Planet", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -21417,29 +23589,30 @@ func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + if err := m.Planet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OreStolen", wireType) } - m.Permissions = 0 + m.OreStolen = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -21449,7 +23622,7 @@ func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift + m.OreStolen |= uint64(b&0x7F) << shift if b < 0x80 { break } @@ -21475,7 +23648,7 @@ func (m *MsgPermissionGrantOnAddress) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { +func (m *MsgPlayerUpdatePrimaryAddress) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21498,10 +23671,10 @@ func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionRevokeOnObject: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddress: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionRevokeOnObject: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddress: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -21538,7 +23711,7 @@ func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ObjectId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21566,11 +23739,11 @@ func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ObjectId = string(dAtA[iNdEx:postIndex]) + m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PrimaryAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21598,27 +23771,58 @@ func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) + m.PrimaryAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err } - m.Permissions = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgPlayerUpdatePrimaryAddressResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddressResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddressResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -21640,7 +23844,7 @@ func (m *MsgPermissionRevokeOnObject) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPermissionRevokeOnAddress) Unmarshal(dAtA []byte) error { +func (m *MsgPlayerResume) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21663,10 +23867,10 @@ func (m *MsgPermissionRevokeOnAddress) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionRevokeOnAddress: wiretype end group for non-group") + return fmt.Errorf("proto: MsgPlayerResume: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionRevokeOnAddress: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgPlayerResume: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -21703,7 +23907,7 @@ func (m *MsgPermissionRevokeOnAddress) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21731,27 +23935,58 @@ func (m *MsgPermissionRevokeOnAddress) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Address = string(dAtA[iNdEx:postIndex]) + m.PlayerId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err } - m.Permissions = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgPlayerResumeResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgPlayerResumeResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgPlayerResumeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -21773,7 +24008,7 @@ func (m *MsgPermissionRevokeOnAddress) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { +func (m *MsgReactorInfuse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21796,10 +24031,10 @@ func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionSetOnObject: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorInfuse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionSetOnObject: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorInfuse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -21836,7 +24071,7 @@ func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ObjectId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21864,11 +24099,11 @@ func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ObjectId = string(dAtA[iNdEx:postIndex]) + m.DelegatorAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ValidatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21896,13 +24131,13 @@ func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) + m.ValidatorAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - m.Permissions = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -21912,11 +24147,25 @@ func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift + 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.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -21938,7 +24187,7 @@ func (m *MsgPermissionSetOnObject) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPermissionSetOnAddress) Unmarshal(dAtA []byte) error { +func (m *MsgReactorInfuseResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21961,10 +24210,60 @@ func (m *MsgPermissionSetOnAddress) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionSetOnAddress: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorInfuseResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionSetOnAddress: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorInfuseResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + default: + iNdEx = preIndex + skippy, err := skipTx(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTx + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MsgReactorBeginMigration) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MsgReactorBeginMigration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgReactorBeginMigration: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -22001,7 +24300,7 @@ func (m *MsgPermissionSetOnAddress) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Address", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22023,136 +24322,17 @@ func (m *MsgPermissionSetOnAddress) Unmarshal(dAtA []byte) error { return ErrInvalidLengthTx } postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Address = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Permissions", wireType) - } - m.Permissions = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Permissions |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgPermissionResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgPermissionResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPermissionResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgPlanetExplore) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx + if postIndex < 0 { + return ErrInvalidLengthTx } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgPlanetExplore: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlanetExplore: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.DelegatorAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ValidatorSrcAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22180,11 +24360,11 @@ func (m *MsgPlanetExplore) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Creator = string(dAtA[iNdEx:postIndex]) + m.ValidatorSrcAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 2: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ValidatorDstAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22212,7 +24392,40 @@ func (m *MsgPlanetExplore) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) + m.ValidatorDstAddress = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Amount", 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.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -22235,7 +24448,7 @@ func (m *MsgPlanetExplore) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPlanetExploreResponse) Unmarshal(dAtA []byte) error { +func (m *MsgReactorBeginMigrationResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22258,15 +24471,15 @@ func (m *MsgPlanetExploreResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPlanetExploreResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorBeginMigrationResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlanetExploreResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorBeginMigrationResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Planet", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CompletionTime", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -22293,7 +24506,7 @@ func (m *MsgPlanetExploreResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Planet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := github_com_cosmos_gogoproto_types.StdTimeUnmarshal(&m.CompletionTime, dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -22318,7 +24531,7 @@ func (m *MsgPlanetExploreResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { +func (m *MsgReactorDefuse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22341,10 +24554,10 @@ func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPlanetRaidComplete: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorDefuse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlanetRaidComplete: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorDefuse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -22381,7 +24594,7 @@ func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FleetId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22409,11 +24622,11 @@ func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.FleetId = string(dAtA[iNdEx:postIndex]) + m.DelegatorAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Proof", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ValidatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22441,13 +24654,13 @@ func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Proof = string(dAtA[iNdEx:postIndex]) + m.ValidatorAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -22457,23 +24670,24 @@ func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - m.Nonce = string(dAtA[iNdEx:postIndex]) + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -22496,7 +24710,7 @@ func (m *MsgPlanetRaidComplete) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPlanetRaidCompleteResponse) Unmarshal(dAtA []byte) error { +func (m *MsgReactorDefuseResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22519,15 +24733,15 @@ func (m *MsgPlanetRaidCompleteResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPlanetRaidCompleteResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorDefuseResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlanetRaidCompleteResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorDefuseResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Fleet", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CompletionTime", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -22554,13 +24768,13 @@ func (m *MsgPlanetRaidCompleteResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Fleet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := github_com_cosmos_gogoproto_types.StdTimeUnmarshal(&m.CompletionTime, dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Planet", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -22587,29 +24801,10 @@ func (m *MsgPlanetRaidCompleteResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Planet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field OreStolen", wireType) - } - m.OreStolen = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.OreStolen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -22631,7 +24826,7 @@ func (m *MsgPlanetRaidCompleteResponse) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPlayerUpdatePrimaryAddress) Unmarshal(dAtA []byte) error { +func (m *MsgReactorCancelDefusion) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22654,10 +24849,10 @@ func (m *MsgPlayerUpdatePrimaryAddress) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddress: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorCancelDefusion: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddress: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorCancelDefusion: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -22694,7 +24889,7 @@ func (m *MsgPlayerUpdatePrimaryAddress) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DelegatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22722,11 +24917,11 @@ func (m *MsgPlayerUpdatePrimaryAddress) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PlayerId = string(dAtA[iNdEx:postIndex]) + m.DelegatorAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PrimaryAddress", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ValidatorAddress", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -22754,113 +24949,13 @@ func (m *MsgPlayerUpdatePrimaryAddress) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PrimaryAddress = string(dAtA[iNdEx:postIndex]) + m.ValidatorAddress = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgPlayerUpdatePrimaryAddressResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddressResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlayerUpdatePrimaryAddressResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipTx(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthTx - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MsgPlayerResume) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowTx - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MsgPlayerResume: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlayerResume: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Creator", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Amount", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -22870,29 +24965,30 @@ func (m *MsgPlayerResume) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthTx } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthTx } if postIndex > l { return io.ErrUnexpectedEOF } - m.Creator = string(dAtA[iNdEx:postIndex]) + if err := m.Amount.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PlayerId", wireType) + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CreationHeight", wireType) } - var stringLen uint64 + m.CreationHeight = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTx @@ -22902,24 +24998,11 @@ func (m *MsgPlayerResume) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.CreationHeight |= int64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthTx - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthTx - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PlayerId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) @@ -22941,7 +25024,7 @@ func (m *MsgPlayerResume) Unmarshal(dAtA []byte) error { } return nil } -func (m *MsgPlayerResumeResponse) Unmarshal(dAtA []byte) error { +func (m *MsgReactorCancelDefusionResponse) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -22964,10 +25047,10 @@ func (m *MsgPlayerResumeResponse) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MsgPlayerResumeResponse: wiretype end group for non-group") + return fmt.Errorf("proto: MsgReactorCancelDefusionResponse: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MsgPlayerResumeResponse: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MsgReactorCancelDefusionResponse: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { default: