diff --git a/api/opinit/ophost/v1/tx.pulsar.go b/api/opinit/ophost/v1/tx.pulsar.go index d7fe1a36..fdba084c 100644 --- a/api/opinit/ophost/v1/tx.pulsar.go +++ b/api/opinit/ophost/v1/tx.pulsar.go @@ -9161,6 +9161,884 @@ func (x *fastReflection_MsgUpdateBatchInfoResponse) ProtoMethods() *protoiface.M } } +var ( + md_MsgUpdateOracleConfig protoreflect.MessageDescriptor + fd_MsgUpdateOracleConfig_authority protoreflect.FieldDescriptor + fd_MsgUpdateOracleConfig_bridge_id protoreflect.FieldDescriptor + fd_MsgUpdateOracleConfig_oracle_enabled protoreflect.FieldDescriptor +) + +func init() { + file_opinit_ophost_v1_tx_proto_init() + md_MsgUpdateOracleConfig = File_opinit_ophost_v1_tx_proto.Messages().ByName("MsgUpdateOracleConfig") + fd_MsgUpdateOracleConfig_authority = md_MsgUpdateOracleConfig.Fields().ByName("authority") + fd_MsgUpdateOracleConfig_bridge_id = md_MsgUpdateOracleConfig.Fields().ByName("bridge_id") + fd_MsgUpdateOracleConfig_oracle_enabled = md_MsgUpdateOracleConfig.Fields().ByName("oracle_enabled") +} + +var _ protoreflect.Message = (*fastReflection_MsgUpdateOracleConfig)(nil) + +type fastReflection_MsgUpdateOracleConfig MsgUpdateOracleConfig + +func (x *MsgUpdateOracleConfig) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgUpdateOracleConfig)(x) +} + +func (x *MsgUpdateOracleConfig) slowProtoReflect() protoreflect.Message { + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] + 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_MsgUpdateOracleConfig_messageType fastReflection_MsgUpdateOracleConfig_messageType +var _ protoreflect.MessageType = fastReflection_MsgUpdateOracleConfig_messageType{} + +type fastReflection_MsgUpdateOracleConfig_messageType struct{} + +func (x fastReflection_MsgUpdateOracleConfig_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgUpdateOracleConfig)(nil) +} +func (x fastReflection_MsgUpdateOracleConfig_messageType) New() protoreflect.Message { + return new(fastReflection_MsgUpdateOracleConfig) +} +func (x fastReflection_MsgUpdateOracleConfig_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgUpdateOracleConfig +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgUpdateOracleConfig) Descriptor() protoreflect.MessageDescriptor { + return md_MsgUpdateOracleConfig +} + +// 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_MsgUpdateOracleConfig) Type() protoreflect.MessageType { + return _fastReflection_MsgUpdateOracleConfig_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgUpdateOracleConfig) New() protoreflect.Message { + return new(fastReflection_MsgUpdateOracleConfig) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgUpdateOracleConfig) Interface() protoreflect.ProtoMessage { + return (*MsgUpdateOracleConfig)(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_MsgUpdateOracleConfig) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Authority != "" { + value := protoreflect.ValueOfString(x.Authority) + if !f(fd_MsgUpdateOracleConfig_authority, value) { + return + } + } + if x.BridgeId != uint64(0) { + value := protoreflect.ValueOfUint64(x.BridgeId) + if !f(fd_MsgUpdateOracleConfig_bridge_id, value) { + return + } + } + if x.OracleEnabled != false { + value := protoreflect.ValueOfBool(x.OracleEnabled) + if !f(fd_MsgUpdateOracleConfig_oracle_enabled, 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_MsgUpdateOracleConfig) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "opinit.ophost.v1.MsgUpdateOracleConfig.authority": + return x.Authority != "" + case "opinit.ophost.v1.MsgUpdateOracleConfig.bridge_id": + return x.BridgeId != uint64(0) + case "opinit.ophost.v1.MsgUpdateOracleConfig.oracle_enabled": + return x.OracleEnabled != false + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfig")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfig 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_MsgUpdateOracleConfig) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "opinit.ophost.v1.MsgUpdateOracleConfig.authority": + x.Authority = "" + case "opinit.ophost.v1.MsgUpdateOracleConfig.bridge_id": + x.BridgeId = uint64(0) + case "opinit.ophost.v1.MsgUpdateOracleConfig.oracle_enabled": + x.OracleEnabled = false + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfig")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfig 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_MsgUpdateOracleConfig) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "opinit.ophost.v1.MsgUpdateOracleConfig.authority": + value := x.Authority + return protoreflect.ValueOfString(value) + case "opinit.ophost.v1.MsgUpdateOracleConfig.bridge_id": + value := x.BridgeId + return protoreflect.ValueOfUint64(value) + case "opinit.ophost.v1.MsgUpdateOracleConfig.oracle_enabled": + value := x.OracleEnabled + return protoreflect.ValueOfBool(value) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfig")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfig 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_MsgUpdateOracleConfig) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "opinit.ophost.v1.MsgUpdateOracleConfig.authority": + x.Authority = value.Interface().(string) + case "opinit.ophost.v1.MsgUpdateOracleConfig.bridge_id": + x.BridgeId = value.Uint() + case "opinit.ophost.v1.MsgUpdateOracleConfig.oracle_enabled": + x.OracleEnabled = value.Bool() + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfig")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfig 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_MsgUpdateOracleConfig) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "opinit.ophost.v1.MsgUpdateOracleConfig.authority": + panic(fmt.Errorf("field authority of message opinit.ophost.v1.MsgUpdateOracleConfig is not mutable")) + case "opinit.ophost.v1.MsgUpdateOracleConfig.bridge_id": + panic(fmt.Errorf("field bridge_id of message opinit.ophost.v1.MsgUpdateOracleConfig is not mutable")) + case "opinit.ophost.v1.MsgUpdateOracleConfig.oracle_enabled": + panic(fmt.Errorf("field oracle_enabled of message opinit.ophost.v1.MsgUpdateOracleConfig is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfig")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfig 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_MsgUpdateOracleConfig) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "opinit.ophost.v1.MsgUpdateOracleConfig.authority": + return protoreflect.ValueOfString("") + case "opinit.ophost.v1.MsgUpdateOracleConfig.bridge_id": + return protoreflect.ValueOfUint64(uint64(0)) + case "opinit.ophost.v1.MsgUpdateOracleConfig.oracle_enabled": + return protoreflect.ValueOfBool(false) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfig")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfig 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_MsgUpdateOracleConfig) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in opinit.ophost.v1.MsgUpdateOracleConfig", 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_MsgUpdateOracleConfig) 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_MsgUpdateOracleConfig) 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_MsgUpdateOracleConfig) 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_MsgUpdateOracleConfig) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgUpdateOracleConfig) + 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.Authority) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.BridgeId != 0 { + n += 1 + runtime.Sov(uint64(x.BridgeId)) + } + if x.OracleEnabled { + n += 2 + } + 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().(*MsgUpdateOracleConfig) + 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.OracleEnabled { + i-- + if x.OracleEnabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if x.BridgeId != 0 { + i = runtime.EncodeVarint(dAtA, i, uint64(x.BridgeId)) + i-- + dAtA[i] = 0x10 + } + if len(x.Authority) > 0 { + i -= len(x.Authority) + copy(dAtA[i:], x.Authority) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Authority))) + 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().(*MsgUpdateOracleConfig) + 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: MsgUpdateOracleConfig: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateOracleConfig: 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 Authority", 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.Authority = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field BridgeId", wireType) + } + x.BridgeId = 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.BridgeId |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field OracleEnabled", wireType) + } + var v 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++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.OracleEnabled = bool(v != 0) + 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_MsgUpdateOracleConfigResponse protoreflect.MessageDescriptor +) + +func init() { + file_opinit_ophost_v1_tx_proto_init() + md_MsgUpdateOracleConfigResponse = File_opinit_ophost_v1_tx_proto.Messages().ByName("MsgUpdateOracleConfigResponse") +} + +var _ protoreflect.Message = (*fastReflection_MsgUpdateOracleConfigResponse)(nil) + +type fastReflection_MsgUpdateOracleConfigResponse MsgUpdateOracleConfigResponse + +func (x *MsgUpdateOracleConfigResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_MsgUpdateOracleConfigResponse)(x) +} + +func (x *MsgUpdateOracleConfigResponse) slowProtoReflect() protoreflect.Message { + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] + 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_MsgUpdateOracleConfigResponse_messageType fastReflection_MsgUpdateOracleConfigResponse_messageType +var _ protoreflect.MessageType = fastReflection_MsgUpdateOracleConfigResponse_messageType{} + +type fastReflection_MsgUpdateOracleConfigResponse_messageType struct{} + +func (x fastReflection_MsgUpdateOracleConfigResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_MsgUpdateOracleConfigResponse)(nil) +} +func (x fastReflection_MsgUpdateOracleConfigResponse_messageType) New() protoreflect.Message { + return new(fastReflection_MsgUpdateOracleConfigResponse) +} +func (x fastReflection_MsgUpdateOracleConfigResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_MsgUpdateOracleConfigResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_MsgUpdateOracleConfigResponse) Descriptor() protoreflect.MessageDescriptor { + return md_MsgUpdateOracleConfigResponse +} + +// 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_MsgUpdateOracleConfigResponse) Type() protoreflect.MessageType { + return _fastReflection_MsgUpdateOracleConfigResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_MsgUpdateOracleConfigResponse) New() protoreflect.Message { + return new(fastReflection_MsgUpdateOracleConfigResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_MsgUpdateOracleConfigResponse) Interface() protoreflect.ProtoMessage { + return (*MsgUpdateOracleConfigResponse)(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_MsgUpdateOracleConfigResponse) 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_MsgUpdateOracleConfigResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfigResponse")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfigResponse 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_MsgUpdateOracleConfigResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfigResponse")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfigResponse 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_MsgUpdateOracleConfigResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfigResponse")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfigResponse 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_MsgUpdateOracleConfigResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfigResponse")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfigResponse 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_MsgUpdateOracleConfigResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfigResponse")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfigResponse 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_MsgUpdateOracleConfigResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: opinit.ophost.v1.MsgUpdateOracleConfigResponse")) + } + panic(fmt.Errorf("message opinit.ophost.v1.MsgUpdateOracleConfigResponse 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_MsgUpdateOracleConfigResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in opinit.ophost.v1.MsgUpdateOracleConfigResponse", 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_MsgUpdateOracleConfigResponse) 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_MsgUpdateOracleConfigResponse) 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_MsgUpdateOracleConfigResponse) 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_MsgUpdateOracleConfigResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*MsgUpdateOracleConfigResponse) + 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().(*MsgUpdateOracleConfigResponse) + 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().(*MsgUpdateOracleConfigResponse) + 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: MsgUpdateOracleConfigResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: MsgUpdateOracleConfigResponse: 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_MsgUpdateMetadata protoreflect.MessageDescriptor fd_MsgUpdateMetadata_authority protoreflect.FieldDescriptor @@ -9185,7 +10063,7 @@ func (x *MsgUpdateMetadata) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateMetadata) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9717,7 +10595,7 @@ func (x *MsgUpdateMetadataResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateMetadataResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10169,7 +11047,7 @@ func (x *MsgUpdateParams) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateParams) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10664,7 +11542,7 @@ func (x *MsgUpdateParamsResponse) ProtoReflect() protoreflect.Message { } func (x *MsgUpdateParamsResponse) slowProtoReflect() protoreflect.Message { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11800,7 +12678,7 @@ type MsgUpdateBatchInfo struct { unknownFields protoimpl.UnknownFields // authority is the address that controls the module (defaults to x/gov unless overwritten) - // or the current challenger address. + // or the current proposer address. Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` BridgeId uint64 `protobuf:"varint,2,opt,name=bridge_id,json=bridgeId,proto3" json:"bridge_id,omitempty"` NewBatchInfo *BatchInfo `protobuf:"bytes,3,opt,name=new_batch_info,json=newBatchInfo,proto3" json:"new_batch_info,omitempty"` @@ -11893,6 +12771,87 @@ func (x *MsgUpdateBatchInfoResponse) GetL2BlockNumber() uint64 { return 0 } +// MsgUpdateOracleFlag is a message to change oracle config +type MsgUpdateOracleConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // authority is the address that controls the module (defaults to x/gov unless overwritten) + // or the current proposer address. + Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty"` + BridgeId uint64 `protobuf:"varint,2,opt,name=bridge_id,json=bridgeId,proto3" json:"bridge_id,omitempty"` + OracleEnabled bool `protobuf:"varint,3,opt,name=oracle_enabled,json=oracleEnabled,proto3" json:"oracle_enabled,omitempty"` +} + +func (x *MsgUpdateOracleConfig) Reset() { + *x = MsgUpdateOracleConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgUpdateOracleConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgUpdateOracleConfig) ProtoMessage() {} + +// Deprecated: Use MsgUpdateOracleConfig.ProtoReflect.Descriptor instead. +func (*MsgUpdateOracleConfig) Descriptor() ([]byte, []int) { + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{18} +} + +func (x *MsgUpdateOracleConfig) GetAuthority() string { + if x != nil { + return x.Authority + } + return "" +} + +func (x *MsgUpdateOracleConfig) GetBridgeId() uint64 { + if x != nil { + return x.BridgeId + } + return 0 +} + +func (x *MsgUpdateOracleConfig) GetOracleEnabled() bool { + if x != nil { + return x.OracleEnabled + } + return false +} + +// MsgUpdateOracleFlagResponse returns a message handle result. +type MsgUpdateOracleConfigResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *MsgUpdateOracleConfigResponse) Reset() { + *x = MsgUpdateOracleConfigResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MsgUpdateOracleConfigResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MsgUpdateOracleConfigResponse) ProtoMessage() {} + +// Deprecated: Use MsgUpdateOracleConfigResponse.ProtoReflect.Descriptor instead. +func (*MsgUpdateOracleConfigResponse) Descriptor() ([]byte, []int) { + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{19} +} + // MsgUpdateMetadata is a message to change metadata type MsgUpdateMetadata struct { state protoimpl.MessageState @@ -11912,7 +12871,7 @@ type MsgUpdateMetadata struct { func (x *MsgUpdateMetadata) Reset() { *x = MsgUpdateMetadata{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[18] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11926,7 +12885,7 @@ func (*MsgUpdateMetadata) ProtoMessage() {} // Deprecated: Use MsgUpdateMetadata.ProtoReflect.Descriptor instead. func (*MsgUpdateMetadata) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{18} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{20} } func (x *MsgUpdateMetadata) GetAuthority() string { @@ -11965,7 +12924,7 @@ type MsgUpdateMetadataResponse struct { func (x *MsgUpdateMetadataResponse) Reset() { *x = MsgUpdateMetadataResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[19] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11979,7 +12938,7 @@ func (*MsgUpdateMetadataResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateMetadataResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateMetadataResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{19} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{21} } func (x *MsgUpdateMetadataResponse) GetOutputIndex() uint64 { @@ -12012,7 +12971,7 @@ type MsgUpdateParams struct { func (x *MsgUpdateParams) Reset() { *x = MsgUpdateParams{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[20] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12026,7 +12985,7 @@ func (*MsgUpdateParams) ProtoMessage() {} // Deprecated: Use MsgUpdateParams.ProtoReflect.Descriptor instead. func (*MsgUpdateParams) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{20} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{22} } func (x *MsgUpdateParams) GetAuthority() string { @@ -12053,7 +13012,7 @@ type MsgUpdateParamsResponse struct { func (x *MsgUpdateParamsResponse) Reset() { *x = MsgUpdateParamsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_opinit_ophost_v1_tx_proto_msgTypes[21] + mi := &file_opinit_ophost_v1_tx_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12067,7 +13026,7 @@ func (*MsgUpdateParamsResponse) ProtoMessage() {} // Deprecated: Use MsgUpdateParamsResponse.ProtoReflect.Descriptor instead. func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) { - return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{21} + return file_opinit_ophost_v1_tx_proto_rawDescGZIP(), []int{23} } var File_opinit_ophost_v1_tx_proto protoreflect.FileDescriptor @@ -12310,127 +13269,146 @@ var file_opinit_ophost_v1_tx_proto_rawDesc = []byte{ 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x22, 0xf0, 0x01, 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, - 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, - 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 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, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, - 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x13, 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, - 0x6c, 0x3a, 0x22, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x52, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x2b, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, - 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x18, 0x6f, 0x70, 0x68, 0x6f, 0x73, - 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x22, 0x66, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, - 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xcd, 0x01, 0x0a, 0x0f, - 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, - 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, - 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 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, 0x43, 0x0a, 0x06, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x11, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, - 0x22, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x3a, 0x29, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, - 0x8a, 0xe7, 0xb0, 0x2a, 0x16, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 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, 0x32, 0xf3, 0x08, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x59, - 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x20, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x1a, - 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, - 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x1a, 0x29, 0x2e, 0x6f, - 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x6f, - 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, - 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x50, - 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x1a, 0x2a, 0x2e, 0x6f, + 0x22, 0x89, 0x02, 0x0a, 0x15, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, + 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, + 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x74, 0x79, 0x22, 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, 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, + 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, + 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x6f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x19, 0xf2, 0xde, 0x1f, 0x15, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x6f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x52, 0x0d, 0x6f, 0x72, + 0x61, 0x63, 0x6c, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x3a, 0x2f, 0x82, 0xe7, 0xb0, + 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x1c, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x1f, 0x0a, 0x1d, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xf0, 0x01, + 0x0a, 0x11, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x4a, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, + 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 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, + 0x31, 0x0a, 0x09, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x04, 0x42, 0x14, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x62, 0x72, + 0x69, 0x64, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x08, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, + 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0c, 0x42, 0x13, 0xf2, 0xde, 0x1f, 0x0f, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x3a, 0x2b, 0x82, 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, + 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x18, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x66, 0x0a, 0x19, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, + 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x49, 0x6e, 0x64, 0x65, 0x78, + 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, + 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xcd, 0x01, 0x0a, 0x0f, 0x4d, 0x73, 0x67, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x4a, 0x0a, 0x09, + 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x2c, 0xf2, 0xde, 0x1f, 0x10, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x61, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x74, 0x79, 0x22, 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, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, + 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x42, 0x11, 0xf2, 0xde, 0x1f, 0x0d, 0x79, 0x61, 0x6d, 0x6c, 0x3a, 0x22, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x22, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3a, 0x29, 0x82, + 0xe7, 0xb0, 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, + 0x2a, 0x16, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 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, 0x32, 0xf3, 0x08, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x59, 0x0a, 0x0b, 0x52, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x20, 0x2e, 0x6f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, + 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x28, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, + 0x4d, 0x73, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x22, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, + 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x50, 0x72, 0x6f, 0x70, + 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x1a, 0x2a, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, + 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, + 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, + 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x1a, 0x29, 0x2e, 0x6f, 0x70, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x14, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, - 0x73, 0x67, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x14, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, - 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x12, 0x29, - 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x1a, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x73, 0x67, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, + 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x1a, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x49, 0x6e, 0x69, + 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x17, 0x46, 0x69, 0x6e, + 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, + 0x61, 0x77, 0x61, 0x6c, 0x12, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, + 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, + 0x61, 0x6c, 0x1a, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, + 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, + 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x1a, + 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, + 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, + 0x6f, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x11, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, + 0x73, 0x12, 0x26, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, + 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, + 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x1a, 0x2e, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x65, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x17, - 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, - 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x12, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, - 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, - 0x72, 0x61, 0x77, 0x61, 0x6c, 0x1a, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x46, 0x69, 0x6e, 0x61, - 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x64, 0x72, 0x61, - 0x77, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x12, 0x23, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, - 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x6f, 0x73, - 0x65, 0x72, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x6b, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x72, 0x73, 0x12, 0x26, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x1a, 0x2e, 0x2e, 0x6f, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0f, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x0f, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x24, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, - 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, - 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, - 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, + 0x66, 0x6f, 0x1a, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x62, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x12, 0x23, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x2b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, - 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, - 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xc2, 0x01, 0xc8, - 0xe1, 0x1e, 0x00, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, - 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, - 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, - 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x76, - 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x4f, 0x70, 0x69, - 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, - 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, - 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x4f, - 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x3a, 0x3a, 0x56, - 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x12, 0x21, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x29, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, 0x01, 0x42, 0xc2, 0x01, 0xc8, 0xe1, 0x1e, 0x00, + 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, + 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, + 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, + 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x68, 0x6f, + 0x73, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x76, 0x31, 0xa2, 0x02, + 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, + 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, + 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x4f, 0x70, 0x69, + 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, + 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x4f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -12445,7 +13423,7 @@ func file_opinit_ophost_v1_tx_proto_rawDescGZIP() []byte { return file_opinit_ophost_v1_tx_proto_rawDescData } -var file_opinit_ophost_v1_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 22) +var file_opinit_ophost_v1_tx_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_opinit_ophost_v1_tx_proto_goTypes = []interface{}{ (*MsgRecordBatch)(nil), // 0: opinit.ophost.v1.MsgRecordBatch (*MsgRecordBatchResponse)(nil), // 1: opinit.ophost.v1.MsgRecordBatchResponse @@ -12465,21 +13443,23 @@ var file_opinit_ophost_v1_tx_proto_goTypes = []interface{}{ (*MsgUpdateChallengersResponse)(nil), // 15: opinit.ophost.v1.MsgUpdateChallengersResponse (*MsgUpdateBatchInfo)(nil), // 16: opinit.ophost.v1.MsgUpdateBatchInfo (*MsgUpdateBatchInfoResponse)(nil), // 17: opinit.ophost.v1.MsgUpdateBatchInfoResponse - (*MsgUpdateMetadata)(nil), // 18: opinit.ophost.v1.MsgUpdateMetadata - (*MsgUpdateMetadataResponse)(nil), // 19: opinit.ophost.v1.MsgUpdateMetadataResponse - (*MsgUpdateParams)(nil), // 20: opinit.ophost.v1.MsgUpdateParams - (*MsgUpdateParamsResponse)(nil), // 21: opinit.ophost.v1.MsgUpdateParamsResponse - (*BridgeConfig)(nil), // 22: opinit.ophost.v1.BridgeConfig - (*v1beta1.Coin)(nil), // 23: cosmos.base.v1beta1.Coin - (*BatchInfo)(nil), // 24: opinit.ophost.v1.BatchInfo - (*Params)(nil), // 25: opinit.ophost.v1.Params + (*MsgUpdateOracleConfig)(nil), // 18: opinit.ophost.v1.MsgUpdateOracleConfig + (*MsgUpdateOracleConfigResponse)(nil), // 19: opinit.ophost.v1.MsgUpdateOracleConfigResponse + (*MsgUpdateMetadata)(nil), // 20: opinit.ophost.v1.MsgUpdateMetadata + (*MsgUpdateMetadataResponse)(nil), // 21: opinit.ophost.v1.MsgUpdateMetadataResponse + (*MsgUpdateParams)(nil), // 22: opinit.ophost.v1.MsgUpdateParams + (*MsgUpdateParamsResponse)(nil), // 23: opinit.ophost.v1.MsgUpdateParamsResponse + (*BridgeConfig)(nil), // 24: opinit.ophost.v1.BridgeConfig + (*v1beta1.Coin)(nil), // 25: cosmos.base.v1beta1.Coin + (*BatchInfo)(nil), // 26: opinit.ophost.v1.BatchInfo + (*Params)(nil), // 27: opinit.ophost.v1.Params } var file_opinit_ophost_v1_tx_proto_depIdxs = []int32{ - 22, // 0: opinit.ophost.v1.MsgCreateBridge.config:type_name -> opinit.ophost.v1.BridgeConfig - 23, // 1: opinit.ophost.v1.MsgInitiateTokenDeposit.amount:type_name -> cosmos.base.v1beta1.Coin - 23, // 2: opinit.ophost.v1.MsgFinalizeTokenWithdrawal.amount:type_name -> cosmos.base.v1beta1.Coin - 24, // 3: opinit.ophost.v1.MsgUpdateBatchInfo.new_batch_info:type_name -> opinit.ophost.v1.BatchInfo - 25, // 4: opinit.ophost.v1.MsgUpdateParams.params:type_name -> opinit.ophost.v1.Params + 24, // 0: opinit.ophost.v1.MsgCreateBridge.config:type_name -> opinit.ophost.v1.BridgeConfig + 25, // 1: opinit.ophost.v1.MsgInitiateTokenDeposit.amount:type_name -> cosmos.base.v1beta1.Coin + 25, // 2: opinit.ophost.v1.MsgFinalizeTokenWithdrawal.amount:type_name -> cosmos.base.v1beta1.Coin + 26, // 3: opinit.ophost.v1.MsgUpdateBatchInfo.new_batch_info:type_name -> opinit.ophost.v1.BatchInfo + 27, // 4: opinit.ophost.v1.MsgUpdateParams.params:type_name -> opinit.ophost.v1.Params 0, // 5: opinit.ophost.v1.Msg.RecordBatch:input_type -> opinit.ophost.v1.MsgRecordBatch 2, // 6: opinit.ophost.v1.Msg.CreateBridge:input_type -> opinit.ophost.v1.MsgCreateBridge 4, // 7: opinit.ophost.v1.Msg.ProposeOutput:input_type -> opinit.ophost.v1.MsgProposeOutput @@ -12489,8 +13469,8 @@ var file_opinit_ophost_v1_tx_proto_depIdxs = []int32{ 12, // 11: opinit.ophost.v1.Msg.UpdateProposer:input_type -> opinit.ophost.v1.MsgUpdateProposer 14, // 12: opinit.ophost.v1.Msg.UpdateChallengers:input_type -> opinit.ophost.v1.MsgUpdateChallengers 16, // 13: opinit.ophost.v1.Msg.UpdateBatchInfo:input_type -> opinit.ophost.v1.MsgUpdateBatchInfo - 18, // 14: opinit.ophost.v1.Msg.UpdateMetadata:input_type -> opinit.ophost.v1.MsgUpdateMetadata - 20, // 15: opinit.ophost.v1.Msg.UpdateParams:input_type -> opinit.ophost.v1.MsgUpdateParams + 20, // 14: opinit.ophost.v1.Msg.UpdateMetadata:input_type -> opinit.ophost.v1.MsgUpdateMetadata + 22, // 15: opinit.ophost.v1.Msg.UpdateParams:input_type -> opinit.ophost.v1.MsgUpdateParams 1, // 16: opinit.ophost.v1.Msg.RecordBatch:output_type -> opinit.ophost.v1.MsgRecordBatchResponse 3, // 17: opinit.ophost.v1.Msg.CreateBridge:output_type -> opinit.ophost.v1.MsgCreateBridgeResponse 5, // 18: opinit.ophost.v1.Msg.ProposeOutput:output_type -> opinit.ophost.v1.MsgProposeOutputResponse @@ -12500,8 +13480,8 @@ var file_opinit_ophost_v1_tx_proto_depIdxs = []int32{ 13, // 22: opinit.ophost.v1.Msg.UpdateProposer:output_type -> opinit.ophost.v1.MsgUpdateProposerResponse 15, // 23: opinit.ophost.v1.Msg.UpdateChallengers:output_type -> opinit.ophost.v1.MsgUpdateChallengersResponse 17, // 24: opinit.ophost.v1.Msg.UpdateBatchInfo:output_type -> opinit.ophost.v1.MsgUpdateBatchInfoResponse - 19, // 25: opinit.ophost.v1.Msg.UpdateMetadata:output_type -> opinit.ophost.v1.MsgUpdateMetadataResponse - 21, // 26: opinit.ophost.v1.Msg.UpdateParams:output_type -> opinit.ophost.v1.MsgUpdateParamsResponse + 21, // 25: opinit.ophost.v1.Msg.UpdateMetadata:output_type -> opinit.ophost.v1.MsgUpdateMetadataResponse + 23, // 26: opinit.ophost.v1.Msg.UpdateParams:output_type -> opinit.ophost.v1.MsgUpdateParamsResponse 16, // [16:27] is the sub-list for method output_type 5, // [5:16] is the sub-list for method input_type 5, // [5:5] is the sub-list for extension type_name @@ -12733,7 +13713,7 @@ func file_opinit_ophost_v1_tx_proto_init() { } } file_opinit_ophost_v1_tx_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgUpdateMetadata); i { + switch v := v.(*MsgUpdateOracleConfig); i { case 0: return &v.state case 1: @@ -12745,7 +13725,7 @@ func file_opinit_ophost_v1_tx_proto_init() { } } file_opinit_ophost_v1_tx_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgUpdateMetadataResponse); i { + switch v := v.(*MsgUpdateOracleConfigResponse); i { case 0: return &v.state case 1: @@ -12757,7 +13737,7 @@ func file_opinit_ophost_v1_tx_proto_init() { } } file_opinit_ophost_v1_tx_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MsgUpdateParams); i { + switch v := v.(*MsgUpdateMetadata); i { case 0: return &v.state case 1: @@ -12769,6 +13749,30 @@ func file_opinit_ophost_v1_tx_proto_init() { } } file_opinit_ophost_v1_tx_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgUpdateMetadataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_opinit_ophost_v1_tx_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MsgUpdateParams); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_opinit_ophost_v1_tx_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MsgUpdateParamsResponse); i { case 0: return &v.state @@ -12787,7 +13791,7 @@ func file_opinit_ophost_v1_tx_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_opinit_ophost_v1_tx_proto_rawDesc, NumEnums: 0, - NumMessages: 22, + NumMessages: 24, NumExtensions: 0, NumServices: 1, }, diff --git a/api/opinit/ophost/v1/types.pulsar.go b/api/opinit/ophost/v1/types.pulsar.go index df057442..79895e70 100644 --- a/api/opinit/ophost/v1/types.pulsar.go +++ b/api/opinit/ophost/v1/types.pulsar.go @@ -566,6 +566,7 @@ var ( fd_BridgeConfig_submission_interval protoreflect.FieldDescriptor fd_BridgeConfig_finalization_period protoreflect.FieldDescriptor fd_BridgeConfig_submission_start_height protoreflect.FieldDescriptor + fd_BridgeConfig_oracle_enabled protoreflect.FieldDescriptor fd_BridgeConfig_metadata protoreflect.FieldDescriptor ) @@ -578,6 +579,7 @@ func init() { fd_BridgeConfig_submission_interval = md_BridgeConfig.Fields().ByName("submission_interval") fd_BridgeConfig_finalization_period = md_BridgeConfig.Fields().ByName("finalization_period") fd_BridgeConfig_submission_start_height = md_BridgeConfig.Fields().ByName("submission_start_height") + fd_BridgeConfig_oracle_enabled = md_BridgeConfig.Fields().ByName("oracle_enabled") fd_BridgeConfig_metadata = md_BridgeConfig.Fields().ByName("metadata") } @@ -682,6 +684,12 @@ func (x *fastReflection_BridgeConfig) Range(f func(protoreflect.FieldDescriptor, return } } + if x.OracleEnabled != false { + value := protoreflect.ValueOfBool(x.OracleEnabled) + if !f(fd_BridgeConfig_oracle_enabled, value) { + return + } + } if len(x.Metadata) != 0 { value := protoreflect.ValueOfBytes(x.Metadata) if !f(fd_BridgeConfig_metadata, value) { @@ -715,6 +723,8 @@ func (x *fastReflection_BridgeConfig) Has(fd protoreflect.FieldDescriptor) bool return x.FinalizationPeriod != nil case "opinit.ophost.v1.BridgeConfig.submission_start_height": return x.SubmissionStartHeight != uint64(0) + case "opinit.ophost.v1.BridgeConfig.oracle_enabled": + return x.OracleEnabled != false case "opinit.ophost.v1.BridgeConfig.metadata": return len(x.Metadata) != 0 default: @@ -745,6 +755,8 @@ func (x *fastReflection_BridgeConfig) Clear(fd protoreflect.FieldDescriptor) { x.FinalizationPeriod = nil case "opinit.ophost.v1.BridgeConfig.submission_start_height": x.SubmissionStartHeight = uint64(0) + case "opinit.ophost.v1.BridgeConfig.oracle_enabled": + x.OracleEnabled = false case "opinit.ophost.v1.BridgeConfig.metadata": x.Metadata = nil default: @@ -784,6 +796,9 @@ func (x *fastReflection_BridgeConfig) Get(descriptor protoreflect.FieldDescripto case "opinit.ophost.v1.BridgeConfig.submission_start_height": value := x.SubmissionStartHeight return protoreflect.ValueOfUint64(value) + case "opinit.ophost.v1.BridgeConfig.oracle_enabled": + value := x.OracleEnabled + return protoreflect.ValueOfBool(value) case "opinit.ophost.v1.BridgeConfig.metadata": value := x.Metadata return protoreflect.ValueOfBytes(value) @@ -821,6 +836,8 @@ func (x *fastReflection_BridgeConfig) Set(fd protoreflect.FieldDescriptor, value x.FinalizationPeriod = value.Message().Interface().(*durationpb.Duration) case "opinit.ophost.v1.BridgeConfig.submission_start_height": x.SubmissionStartHeight = value.Uint() + case "opinit.ophost.v1.BridgeConfig.oracle_enabled": + x.OracleEnabled = value.Bool() case "opinit.ophost.v1.BridgeConfig.metadata": x.Metadata = value.Bytes() default: @@ -868,6 +885,8 @@ func (x *fastReflection_BridgeConfig) Mutable(fd protoreflect.FieldDescriptor) p panic(fmt.Errorf("field proposer of message opinit.ophost.v1.BridgeConfig is not mutable")) case "opinit.ophost.v1.BridgeConfig.submission_start_height": panic(fmt.Errorf("field submission_start_height of message opinit.ophost.v1.BridgeConfig is not mutable")) + case "opinit.ophost.v1.BridgeConfig.oracle_enabled": + panic(fmt.Errorf("field oracle_enabled of message opinit.ophost.v1.BridgeConfig is not mutable")) case "opinit.ophost.v1.BridgeConfig.metadata": panic(fmt.Errorf("field metadata of message opinit.ophost.v1.BridgeConfig is not mutable")) default: @@ -899,6 +918,8 @@ func (x *fastReflection_BridgeConfig) NewField(fd protoreflect.FieldDescriptor) return protoreflect.ValueOfMessage(m.ProtoReflect()) case "opinit.ophost.v1.BridgeConfig.submission_start_height": return protoreflect.ValueOfUint64(uint64(0)) + case "opinit.ophost.v1.BridgeConfig.oracle_enabled": + return protoreflect.ValueOfBool(false) case "opinit.ophost.v1.BridgeConfig.metadata": return protoreflect.ValueOfBytes(nil) default: @@ -995,6 +1016,9 @@ func (x *fastReflection_BridgeConfig) ProtoMethods() *protoiface.Methods { if x.SubmissionStartHeight != 0 { n += 1 + runtime.Sov(uint64(x.SubmissionStartHeight)) } + if x.OracleEnabled { + n += 2 + } l = len(x.Metadata) if l > 0 { n += 1 + l + runtime.Sov(uint64(l)) @@ -1033,7 +1057,17 @@ func (x *fastReflection_BridgeConfig) ProtoMethods() *protoiface.Methods { copy(dAtA[i:], x.Metadata) i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Metadata))) i-- - dAtA[i] = 0x3a + dAtA[i] = 0x42 + } + if x.OracleEnabled { + i-- + if x.OracleEnabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x38 } if x.SubmissionStartHeight != 0 { i = runtime.EncodeVarint(dAtA, i, uint64(x.SubmissionStartHeight)) @@ -1339,6 +1373,26 @@ func (x *fastReflection_BridgeConfig) ProtoMethods() *protoiface.Methods { } } case 7: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field OracleEnabled", wireType) + } + var v 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++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.OracleEnabled = bool(v != 0) + case 8: if wireType != 2 { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } @@ -3592,8 +3646,10 @@ type BridgeConfig struct { FinalizationPeriod *durationpb.Duration `protobuf:"bytes,5,opt,name=finalization_period,json=finalizationPeriod,proto3" json:"finalization_period,omitempty"` // The the first l2 block will be recorded on l1. SubmissionStartHeight uint64 `protobuf:"varint,6,opt,name=submission_start_height,json=submissionStartHeight,proto3" json:"submission_start_height,omitempty"` + // oracle_enabled is a flag to enable oracle. + OracleEnabled bool `protobuf:"varint,7,opt,name=oracle_enabled,json=oracleEnabled,proto3" json:"oracle_enabled,omitempty"` // Normally it is IBC channelID for permissioned IBC relayer. - Metadata []byte `protobuf:"bytes,7,opt,name=metadata,proto3" json:"metadata,omitempty"` + Metadata []byte `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (x *BridgeConfig) Reset() { @@ -3658,6 +3714,13 @@ func (x *BridgeConfig) GetSubmissionStartHeight() uint64 { return 0 } +func (x *BridgeConfig) GetOracleEnabled() bool { + if x != nil { + return x.OracleEnabled + } + return false +} + func (x *BridgeConfig) GetMetadata() []byte { if x != nil { return x.Metadata @@ -3889,7 +3952,7 @@ var file_opinit_ophost_v1_types_proto_rawDesc = []byte{ 0x73, 0x2e, 0x43, 0x6f, 0x69, 0x6e, 0x73, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x0f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x3a, 0x1a, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0d, 0x6f, 0x70, 0x68, 0x6f, - 0x73, 0x74, 0x2f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x93, 0x04, 0x0a, 0x0c, 0x42, 0x72, + 0x73, 0x74, 0x2f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xba, 0x04, 0x0a, 0x0c, 0x42, 0x72, 0x69, 0x64, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x72, @@ -3921,61 +3984,63 @@ var file_opinit_ophost_v1_types_proto_rawDesc = []byte{ 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x48, 0x65, 0x69, - 0x67, 0x68, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, - 0xc8, 0x01, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x0a, 0x63, - 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, - 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x68, 0x61, - 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, - 0x65, 0x22, 0x57, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, - 0x0a, 0x16, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, - 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x48, - 0x41, 0x49, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x10, - 0x01, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, - 0x43, 0x45, 0x4c, 0x45, 0x53, 0x54, 0x49, 0x41, 0x10, 0x02, 0x22, 0x41, 0x0a, 0x09, 0x54, 0x6f, - 0x6b, 0x65, 0x6e, 0x50, 0x61, 0x69, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x31, 0x5f, 0x64, 0x65, - 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x31, 0x44, 0x65, 0x6e, - 0x6f, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x32, 0x5f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x32, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0xc8, 0x01, - 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, - 0x75, 0x74, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, - 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x31, 0x5f, - 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x31, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x6c, 0x31, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x03, 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, 0x0b, 0x6c, 0x31, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, - 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x99, 0x01, 0x0a, 0x13, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x57, 0x69, 0x74, 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, - 0x12, 0x45, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, - 0x6f, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, - 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, - 0x74, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x6f, 0x75, - 0x74, 0x70, 0x75, 0x74, 0x42, 0xc9, 0x01, 0xc8, 0xe1, 0x1e, 0x00, 0xa8, 0xe2, 0x1e, 0x01, 0x0a, - 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, - 0x73, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, - 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, - 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x76, 0x31, - 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, - 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, - 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x4f, - 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x5c, - 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x4f, 0x70, - 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x3a, 0x3a, 0x56, 0x31, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x67, 0x68, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x72, 0x61, 0x63, 0x6c, 0x65, 0x5f, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6f, 0x72, 0x61, + 0x63, 0x6c, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xc8, 0x01, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, + 0x65, 0x72, 0x12, 0x44, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, + 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, + 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x63, + 0x68, 0x61, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x22, 0x57, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x69, + 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x48, 0x41, 0x49, 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x49, 0x4e, 0x49, 0x54, 0x49, 0x41, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x48, 0x41, 0x49, + 0x4e, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, 0x45, 0x4c, 0x45, 0x53, 0x54, 0x49, 0x41, 0x10, + 0x02, 0x22, 0x41, 0x0a, 0x09, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x61, 0x69, 0x72, 0x12, 0x19, + 0x0a, 0x08, 0x6c, 0x31, 0x5f, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6c, 0x31, 0x44, 0x65, 0x6e, 0x6f, 0x6d, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x32, 0x5f, + 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x32, 0x44, + 0x65, 0x6e, 0x6f, 0x6d, 0x22, 0xc8, 0x01, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, + 0x1f, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x6f, 0x6f, 0x74, + 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x31, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x6c, 0x31, 0x42, 0x6c, 0x6f, + 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x0d, 0x6c, 0x31, 0x5f, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 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, 0x0b, 0x6c, 0x31, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6c, 0x32, 0x5f, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, + 0x52, 0x0d, 0x6c, 0x32, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, + 0x99, 0x01, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x57, 0x69, 0x74, + 0x68, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, + 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, + 0xb0, 0x2a, 0x01, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, + 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, + 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x09, 0xc8, 0xde, 0x1f, 0x00, 0xa8, 0xe7, + 0xb0, 0x2a, 0x01, 0x52, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0xc9, 0x01, 0xc8, 0xe1, + 0x1e, 0x00, 0xa8, 0xe2, 0x1e, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x69, 0x74, 0x2e, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x54, 0x79, + 0x70, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x2d, 0x6c, 0x61, + 0x62, 0x73, 0x2f, 0x4f, 0x50, 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6f, 0x70, + 0x69, 0x6e, 0x69, 0x74, 0x2f, 0x6f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x6f, + 0x70, 0x68, 0x6f, 0x73, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4f, 0x4f, 0x58, 0xaa, 0x02, 0x10, + 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x2e, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, 0x2e, 0x56, 0x31, + 0xca, 0x02, 0x10, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, 0x6f, 0x73, 0x74, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x5c, 0x4f, 0x70, 0x68, + 0x6f, 0x73, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0xea, 0x02, 0x12, 0x4f, 0x70, 0x69, 0x6e, 0x69, 0x74, 0x3a, 0x3a, 0x4f, 0x70, 0x68, + 0x6f, 0x73, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/contrib/launchtools/cmd.go b/contrib/launchtools/cmd.go index abdb8e12..3205a588 100644 --- a/contrib/launchtools/cmd.go +++ b/contrib/launchtools/cmd.go @@ -25,16 +25,16 @@ func LaunchCmd( steps []LauncherStepFuncFactory[*Config], ) *cobra.Command { cmd := &cobra.Command{ - Use: "launch [target-chain-id]", + Use: "launch", Short: "Launch a new instance of the app", Long: `Launch a new instance of the app. This command will execute a series of steps to initialize the app and generate the necessary configuration files. The artifacts will be stored in the specified directory. The command will output the artifacts to stdout too. Example: -$ launchtools launch mahalo-3 --artifacts-dir ./ --with-config ./config.json +$ launchtools launch --artifacts-dir ./ --with-config ./config.json `, - Args: cobra.ExactArgs(1), + Args: cobra.ExactArgs(0), RunE: func(cmd *cobra.Command, args []string) error { sdk.SetAddrCacheEnabled(false) defer sdk.SetAddrCacheEnabled(true) @@ -42,11 +42,6 @@ $ launchtools launch mahalo-3 --artifacts-dir ./ --with-config ./config.json clientCtx := client.GetClientContextFromCmd(cmd) serverCtx := server.GetServerContextFromCmd(cmd) - targetNetwork := args[0] - if targetNetwork == "" { - return errors.New("target chain id is required") - } - artifactsDir, err := cmd.Flags().GetString(flagArtifactsDir) if err != nil { return errors.Wrap(err, "failed to get artifacts flag") @@ -62,7 +57,7 @@ $ launchtools launch mahalo-3 --artifacts-dir ./ --with-config ./config.json return err } - if err := config.Finalize(targetNetwork, bufio.NewReader(clientCtx.Input)); err != nil { + if err := config.Finalize(bufio.NewReader(clientCtx.Input)); err != nil { return errors.Wrap(err, "failed to finalize config") } diff --git a/contrib/launchtools/config.go b/contrib/launchtools/config.go index 5586b8f8..c87ec9be 100644 --- a/contrib/launchtools/config.go +++ b/contrib/launchtools/config.go @@ -47,7 +47,7 @@ func NewConfig(path string) (*Config, error) { return ret, nil } -func (i *Config) Finalize(targetNetwork string, buf *bufio.Reader) error { +func (i *Config) Finalize(buf *bufio.Reader) error { if i.L1Config == nil { i.L1Config = &L1Config{} } @@ -65,13 +65,13 @@ func (i *Config) Finalize(targetNetwork string, buf *bufio.Reader) error { } // finalize all fields - if err := i.L1Config.Finalize(targetNetwork); err != nil { + if err := i.L1Config.Finalize(buf); err != nil { return err } if err := i.L2Config.Finalize(); err != nil { return err } - if err := i.OpBridge.Finalize(); err != nil { + if err := i.OpBridge.Finalize(buf); err != nil { return err } if err := i.SystemKeys.Finalize(buf); err != nil { @@ -117,15 +117,27 @@ type OpBridge struct { // batch submission setup BatchSubmissionTarget ophosttypes.BatchInfo_ChainType `json:"batch_submission_target"` + + // oracle setup + EnableOracle *bool `json:"enable_oracle,omitempty"` } -func (opBridge *OpBridge) Finalize() error { +func (opBridge *OpBridge) Finalize(buf *bufio.Reader) error { if opBridge.OutputSubmissionStartHeight == 0 { opBridge.OutputSubmissionStartHeight = 1 } if opBridge.BatchSubmissionTarget == ophosttypes.BatchInfo_CHAIN_TYPE_UNSPECIFIED { - opBridge.BatchSubmissionTarget = ophosttypes.BatchInfo_CHAIN_TYPE_INITIA + useCelestia, err := input.GetConfirmation("Use Celestia as DA layer?", buf, os.Stderr) + if err != nil { + return err + } + + if useCelestia { + opBridge.BatchSubmissionTarget = ophosttypes.BatchInfo_CHAIN_TYPE_CELESTIA + } else { + opBridge.BatchSubmissionTarget = ophosttypes.BatchInfo_CHAIN_TYPE_INITIA + } } if opBridge.OutputSubmissionInterval == nil { @@ -138,6 +150,15 @@ func (opBridge *OpBridge) Finalize() error { opBridge.OutputFinalizationPeriod = &period } + if opBridge.EnableOracle == nil { + enableOracle, err := input.GetConfirmation("Enable oracle?", buf, os.Stderr) + if err != nil { + return err + } + + opBridge.EnableOracle = &enableOracle + } + return nil } @@ -205,13 +226,33 @@ type L1Config struct { GasPrices string `json:"gas_prices,omitempty"` } -func (l1config *L1Config) Finalize(targetNetwork string) error { +func (l1config *L1Config) Finalize(buf *bufio.Reader) error { if l1config.ChainID == "" { - l1config.ChainID = targetNetwork + chainID, err := input.GetString("Enter L1 chain id", buf) + if err != nil { + return err + } + l1config.ChainID = chainID } if l1config.RPC_URL == "" { - l1config.RPC_URL = fmt.Sprintf("https://rpc.%s.initia.xyz:443", targetNetwork) + defaultRPC := fmt.Sprintf("https://rpc.%s.initia.xyz:443", l1config.ChainID) + promt := fmt.Sprintf("Use default L1 rpc [%s]?", defaultRPC) + useDefault, err := input.GetConfirmation(promt, buf, os.Stderr) + if err != nil { + return err + } + + if useDefault { + l1config.RPC_URL = fmt.Sprintf("https://rpc.%s.initia.xyz:443", l1config.ChainID) + } else { + rpcURL, err := input.GetString("Enter L1 rpc url", buf) + if err != nil { + return err + } + + l1config.RPC_URL = rpcURL + } } if l1config.GasPrices == "" { diff --git a/contrib/launchtools/steps/opbridge.go b/contrib/launchtools/steps/opbridge.go index 5e2a2d13..09eaf708 100644 --- a/contrib/launchtools/steps/opbridge.go +++ b/contrib/launchtools/steps/opbridge.go @@ -49,6 +49,7 @@ func InitializeOpBridge( *config.OpBridge.OutputSubmissionInterval, *config.OpBridge.OutputFinalizationPeriod, config.OpBridge.OutputSubmissionStartHeight, + *config.OpBridge.EnableOracle, ) ctx.Logger().Info("creating op bridge...", "message", createOpBridgeMessage.String()) @@ -112,6 +113,7 @@ func createOpBridge( submissionInterval time.Duration, finalizationPeriod time.Duration, submissionStartHeight uint64, + enableOracle bool, ) (*ophosttypes.MsgCreateBridge, error) { // generate ophosthooktypes.PermsMetadata // assume that all channels in IBC keeper need to be permitted on OPChild @@ -144,6 +146,7 @@ func createOpBridge( FinalizationPeriod: finalizationPeriod, SubmissionStartHeight: submissionStartHeight, Metadata: permsMetadataJSON, + OracleEnabled: enableOracle, }, ), nil } diff --git a/proto/opinit/ophost/v1/tx.proto b/proto/opinit/ophost/v1/tx.proto index 0209850f..56ecde76 100644 --- a/proto/opinit/ophost/v1/tx.proto +++ b/proto/opinit/ophost/v1/tx.proto @@ -248,7 +248,7 @@ message MsgUpdateBatchInfo { option (amino.name) = "ophost/MsgUpdateBatchInfo"; // authority is the address that controls the module (defaults to x/gov unless overwritten) - // or the current challenger address. + // or the current proposer address. string authority = 1 [(gogoproto.moretags) = "yaml:\"authority\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; uint64 bridge_id = 2 [(gogoproto.moretags) = "yaml:\"bridge_id\""]; BatchInfo new_batch_info = 3 @@ -263,6 +263,21 @@ message MsgUpdateBatchInfoResponse { uint64 l2_block_number = 2; } +// MsgUpdateOracleFlag is a message to change oracle config +message MsgUpdateOracleConfig { + option (cosmos.msg.v1.signer) = "authority"; + option (amino.name) = "ophost/MsgUpdateOracleConfig"; + + // authority is the address that controls the module (defaults to x/gov unless overwritten) + // or the current proposer address. + string authority = 1 [(gogoproto.moretags) = "yaml:\"authority\"", (cosmos_proto.scalar) = "cosmos.AddressString"]; + uint64 bridge_id = 2 [(gogoproto.moretags) = "yaml:\"bridge_id\""]; + bool oracle_enabled = 3 [(gogoproto.moretags) = "yaml:\"oracle_enabled\""]; +} + +// MsgUpdateOracleFlagResponse returns a message handle result. +message MsgUpdateOracleConfigResponse {} + // MsgUpdateMetadata is a message to change metadata message MsgUpdateMetadata { option (cosmos.msg.v1.signer) = "authority"; diff --git a/proto/opinit/ophost/v1/types.proto b/proto/opinit/ophost/v1/types.proto index 6b345840..cf9b4df9 100644 --- a/proto/opinit/ophost/v1/types.proto +++ b/proto/opinit/ophost/v1/types.proto @@ -51,8 +51,12 @@ message BridgeConfig { ]; // The the first l2 block will be recorded on l1. uint64 submission_start_height = 6; + + // oracle_enabled is a flag to enable oracle. + bool oracle_enabled = 7; + // Normally it is IBC channelID for permissioned IBC relayer. - bytes metadata = 7; + bytes metadata = 8; } // BatchInfo defines the set of batch information. diff --git a/x/opchild/keeper/msg_server.go b/x/opchild/keeper/msg_server.go index d418bf8a..fe480c19 100644 --- a/x/opchild/keeper/msg_server.go +++ b/x/opchild/keeper/msg_server.go @@ -589,7 +589,16 @@ func (ms MsgServer) UpdateOracle(ctx context.Context, req *types.MsgUpdateOracle return nil, err } - err := ms.Keeper.ApplyOracleUpdate(ctx, req.Height, req.Data) + // config check + info, err := ms.Keeper.BridgeInfo.Get(ctx) + if err != nil { + return nil, err + } + if !info.BridgeConfig.OracleEnabled { + return nil, types.ErrOracleDisabled + } + + err = ms.Keeper.ApplyOracleUpdate(ctx, req.Height, req.Data) if err != nil { return nil, err } diff --git a/x/opchild/keeper/msg_server_test.go b/x/opchild/keeper/msg_server_test.go index 4c0539be..52331535 100644 --- a/x/opchild/keeper/msg_server_test.go +++ b/x/opchild/keeper/msg_server_test.go @@ -519,6 +519,9 @@ func Test_MsgServer_UpdateOracle(t *testing.T) { bridgeInfo := types.BridgeInfo{ L1ChainId: defaultHostChainId, L1ClientId: defaultClientId, + BridgeConfig: ophosttypes.BridgeConfig{ + OracleEnabled: true, + }, } err := opchildKeeper.BridgeInfo.Set(ctx, bridgeInfo) require.NoError(t, err) @@ -621,3 +624,24 @@ func Test_MsgServer_UpdateOracle(t *testing.T) { _, err = ms.UpdateOracle(ctx, types.NewMsgUpdateOracle(addrsStr[1], 11, extCommitBz)) require.Error(t, err) } + +func Test_MsgServer_UpdateOracleFail(t *testing.T) { + ctx, input := createDefaultTestInput(t) + opchildKeeper := input.OPChildKeeper + + defaultHostChainId := "test-host-1" + defaultClientId := "test-client-id" + bridgeInfo := types.BridgeInfo{ + L1ChainId: defaultHostChainId, + L1ClientId: defaultClientId, + BridgeConfig: ophosttypes.BridgeConfig{ + OracleEnabled: false, + }, + } + err := opchildKeeper.BridgeInfo.Set(ctx, bridgeInfo) + require.NoError(t, err) + + ms := keeper.NewMsgServerImpl(opchildKeeper) + _, err = ms.UpdateOracle(ctx, types.NewMsgUpdateOracle(addrsStr[0], 11, []byte{})) + require.EqualError(t, err, types.ErrOracleDisabled.Error()) +} diff --git a/x/opchild/types/errors.go b/x/opchild/types/errors.go index 1a85cdb9..7f486a68 100644 --- a/x/opchild/types/errors.go +++ b/x/opchild/types/errors.go @@ -32,7 +32,8 @@ var ( ErrOracleTimestampNotExists = errorsmod.Register(ModuleName, 25, "oracle timestamp does not exist") ErrInvalidOracleTimestamp = errorsmod.Register(ModuleName, 26, "oracle timestamp is old") ErrBridgeInfoNotExists = errorsmod.Register(ModuleName, 27, "bridge info does not exist") + ErrOracleDisabled = errorsmod.Register(ModuleName, 28, "oracle is disabled") // Antehandler error - ErrRedundantTx = errorsmod.Register(ModuleName, 28, "tx messages are all redundant") + ErrRedundantTx = errorsmod.Register(ModuleName, 29, "tx messages are all redundant") ) diff --git a/x/ophost/keeper/msg_server.go b/x/ophost/keeper/msg_server.go index e7706d55..e4ec5bc8 100644 --- a/x/ophost/keeper/msg_server.go +++ b/x/ophost/keeper/msg_server.go @@ -95,6 +95,7 @@ func (ms MsgServer) CreateBridge(ctx context.Context, req *types.MsgCreateBridge sdk.NewAttribute(types.AttributeKeyBatchChainType, req.Config.BatchInfo.ChainType.StringWithoutPrefix()), sdk.NewAttribute(types.AttributeKeyBatchSubmitter, req.Config.BatchInfo.Submitter), sdk.NewAttribute(types.AttributeKeyBridgeId, strconv.FormatUint(bridgeId, 10)), + sdk.NewAttribute(types.AttributeKeyOracleEnabled, strconv.FormatBool(req.Config.OracleEnabled)), )) if err := ms.bridgeHook.BridgeCreated(ctx, bridgeId, req.Config); err != nil { @@ -497,6 +498,36 @@ func (ms MsgServer) UpdateBatchInfo(ctx context.Context, req *types.MsgUpdateBat }, nil } +func (ms MsgServer) UpdateOracleConfig(ctx context.Context, req *types.MsgUpdateOracleConfig) (*types.MsgUpdateOracleConfigResponse, error) { + if err := req.Validate(ms.authKeeper.AddressCodec()); err != nil { + return nil, err + } + + bridgeId := req.BridgeId + config, err := ms.GetBridgeConfig(ctx, bridgeId) + if err != nil { + return nil, err + } + + // gov or current proposer can update metadata. + if ms.authority != req.Authority && config.Proposer != req.Authority { + return nil, govtypes.ErrInvalidSigner.Wrapf("invalid authority; expected %s or %s, got %s", ms.authority, config.Proposer, req.Authority) + } + + config.OracleEnabled = req.OracleEnabled + + if err := ms.SetBridgeConfig(ctx, bridgeId, config); err != nil { + return nil, err + } + + sdk.UnwrapSDKContext(ctx).EventManager().EmitEvent(sdk.NewEvent( + types.EventTypeUpdateBatchInfo, + sdk.NewAttribute(types.AttributeKeyBridgeId, strconv.FormatUint(bridgeId, 10)), + sdk.NewAttribute(types.AttributeKeyOracleEnabled, strconv.FormatBool(config.OracleEnabled)), + )) + return &types.MsgUpdateOracleConfigResponse{}, nil +} + func (ms MsgServer) UpdateMetadata(ctx context.Context, req *types.MsgUpdateMetadata) (*types.MsgUpdateMetadataResponse, error) { if err := req.Validate(ms.authKeeper.AddressCodec()); err != nil { return nil, err diff --git a/x/ophost/keeper/msg_server_test.go b/x/ophost/keeper/msg_server_test.go index 10e80e39..f9f6bce1 100644 --- a/x/ophost/keeper/msg_server_test.go +++ b/x/ophost/keeper/msg_server_test.go @@ -441,6 +441,51 @@ func Test_UpdateBatchInfo(t *testing.T) { require.Error(t, err) } +func Test_UpdateOracleConfig(t *testing.T) { + ctx, input := createDefaultTestInput(t) + ms := keeper.NewMsgServerImpl(input.OPHostKeeper) + + config := types.BridgeConfig{ + Proposer: addrsStr[0], + Challengers: []string{addrsStr[1]}, + SubmissionInterval: time.Second * 10, + FinalizationPeriod: time.Second * 60, + SubmissionStartHeight: 1, + Metadata: []byte{1, 2, 3}, + BatchInfo: types.BatchInfo{Submitter: addrsStr[0], ChainType: types.BatchInfo_CHAIN_TYPE_INITIA}, + OracleEnabled: true, + } + + _, err := ms.CreateBridge(ctx, types.NewMsgCreateBridge(addrsStr[0], config)) + require.NoError(t, err) + + // gov signer + govAddr, err := input.AccountKeeper.AddressCodec().BytesToString(authtypes.NewModuleAddress("gov")) + require.NoError(t, err) + msg := types.NewMsgUpdateOracleConfig(govAddr, 1, false) + _, err = ms.UpdateOracleConfig(ctx, msg) + require.NoError(t, err) + _config, err := ms.GetBridgeConfig(ctx, 1) + require.NoError(t, err) + require.Equal(t, false, _config.OracleEnabled) + + // current proposer signer + msg = types.NewMsgUpdateOracleConfig(addrsStr[0], 1, true) + _, err = ms.UpdateOracleConfig(ctx, msg) + require.NoError(t, err) + _config, err = ms.GetBridgeConfig(ctx, 1) + require.NoError(t, err) + require.Equal(t, true, _config.OracleEnabled) + + // invalid signer + invalidAddr, err := input.AccountKeeper.AddressCodec().BytesToString(authtypes.NewModuleAddress(types.ModuleName)) + require.NoError(t, err) + msg = types.NewMsgUpdateOracleConfig(invalidAddr, 1, false) + require.NoError(t, err) + + _, err = ms.UpdateOracleConfig(ctx, msg) + require.Error(t, err) +} func Test_UpdateMetadata(t *testing.T) { ctx, input := createDefaultTestInput(t) ms := keeper.NewMsgServerImpl(input.OPHostKeeper) @@ -469,7 +514,7 @@ func Test_UpdateMetadata(t *testing.T) { require.Equal(t, []byte{4, 5, 6}, _config.Metadata) require.Equal(t, []byte{4, 5, 6}, input.BridgeHook.metadata) - // current challenger + // current proposer msg = types.NewMsgUpdateMetadata(addrsStr[0], 1, []byte{7, 8, 9}) _, err = ms.UpdateMetadata(ctx, msg) require.NoError(t, err) diff --git a/x/ophost/types/event.go b/x/ophost/types/event.go index 61245166..18c418fd 100644 --- a/x/ophost/types/event.go +++ b/x/ophost/types/event.go @@ -31,4 +31,5 @@ const ( AttributeKeyL2Sequence = "l2_sequence" AttributeKeyFinalizedOutputIndex = "finalized_output_index" AttributeKeyFinalizedL2BlockNumber = "finalized_l2_block_number" + AttributeKeyOracleEnabled = "oracle_enabled" ) diff --git a/x/ophost/types/hook/bridge_hook.go b/x/ophost/types/hook/bridge_hook.go index d493ce8c..7cb50d26 100644 --- a/x/ophost/types/hook/bridge_hook.go +++ b/x/ophost/types/hook/bridge_hook.go @@ -4,7 +4,6 @@ import ( "context" "errors" - "cosmossdk.io/collections" "cosmossdk.io/core/address" sdk "github.com/cosmos/cosmos-sdk/types" @@ -70,10 +69,10 @@ func (h BridgeHook) BridgeCreated( } // check if the channel has a permissioned relayer - if _, err := h.IBCPermKeeper.GetPermissionedRelayers(ctx, portID, channelID); err == nil { - return channeltypes.ErrChannelExists.Wrap("cannot register permissioned relayers for the channel in use") - } else if !errors.Is(err, collections.ErrNotFound) { + if relayers, err := h.IBCPermKeeper.GetPermissionedRelayers(ctx, portID, channelID); err != nil { return err + } else if len(relayers) > 0 { + return channeltypes.ErrChannelExists.Wrap("cannot register permissioned relayers for the channel in use") } // register challengers as channel relayer diff --git a/x/ophost/types/tx.go b/x/ophost/types/tx.go index 2284f202..c40132e1 100644 --- a/x/ophost/types/tx.go +++ b/x/ophost/types/tx.go @@ -380,6 +380,33 @@ func (msg MsgUpdateBatchInfo) Validate(accAddressCodec address.Codec) error { return nil } +/* MsgUpdateOracleConfig */ + +// NewMsgUpdateOracleConfig creates a new MsgUpdateOracleConfig instance. +func NewMsgUpdateOracleConfig( + authority string, + bridgeId uint64, + oracleEnabled bool, +) *MsgUpdateOracleConfig { + return &MsgUpdateOracleConfig{ + Authority: authority, + BridgeId: bridgeId, + OracleEnabled: oracleEnabled, + } +} + +// Validate performs basic MsgUpdateOracleConfig message validation. +func (msg MsgUpdateOracleConfig) Validate(accAddressCodec address.Codec) error { + if _, err := accAddressCodec.StringToBytes(msg.Authority); err != nil { + return err + } + + if msg.BridgeId == 0 { + return ErrInvalidBridgeId + } + return nil +} + /* MsgUpdateMetadata */ // NewMsgUpdateMetadata creates a new MsgUpdateMetadata instance. diff --git a/x/ophost/types/tx.pb.go b/x/ophost/types/tx.pb.go index 10978409..c0a6d759 100644 --- a/x/ophost/types/tx.pb.go +++ b/x/ophost/types/tx.pb.go @@ -681,7 +681,7 @@ var xxx_messageInfo_MsgUpdateChallengersResponse proto.InternalMessageInfo // MsgUpdateBatchInfo is a message to change a batch info type MsgUpdateBatchInfo struct { // authority is the address that controls the module (defaults to x/gov unless overwritten) - // or the current challenger address. + // or the current proposer address. Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty" yaml:"authority"` BridgeId uint64 `protobuf:"varint,2,opt,name=bridge_id,json=bridgeId,proto3" json:"bridge_id,omitempty" yaml:"bridge_id"` NewBatchInfo BatchInfo `protobuf:"bytes,3,opt,name=new_batch_info,json=newBatchInfo,proto3" json:"new_batch_info" yaml:"new_batch_info"` @@ -761,6 +761,85 @@ func (m *MsgUpdateBatchInfoResponse) XXX_DiscardUnknown() { var xxx_messageInfo_MsgUpdateBatchInfoResponse proto.InternalMessageInfo +// MsgUpdateOracleFlag is a message to change oracle config +type MsgUpdateOracleConfig struct { + // authority is the address that controls the module (defaults to x/gov unless overwritten) + // or the current proposer address. + Authority string `protobuf:"bytes,1,opt,name=authority,proto3" json:"authority,omitempty" yaml:"authority"` + BridgeId uint64 `protobuf:"varint,2,opt,name=bridge_id,json=bridgeId,proto3" json:"bridge_id,omitempty" yaml:"bridge_id"` + OracleEnabled bool `protobuf:"varint,3,opt,name=oracle_enabled,json=oracleEnabled,proto3" json:"oracle_enabled,omitempty" yaml:"oracle_enabled"` +} + +func (m *MsgUpdateOracleConfig) Reset() { *m = MsgUpdateOracleConfig{} } +func (m *MsgUpdateOracleConfig) String() string { return proto.CompactTextString(m) } +func (*MsgUpdateOracleConfig) ProtoMessage() {} +func (*MsgUpdateOracleConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_d16af6eaf4088d05, []int{18} +} +func (m *MsgUpdateOracleConfig) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgUpdateOracleConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgUpdateOracleConfig.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 *MsgUpdateOracleConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgUpdateOracleConfig.Merge(m, src) +} +func (m *MsgUpdateOracleConfig) XXX_Size() int { + return m.Size() +} +func (m *MsgUpdateOracleConfig) XXX_DiscardUnknown() { + xxx_messageInfo_MsgUpdateOracleConfig.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgUpdateOracleConfig proto.InternalMessageInfo + +// MsgUpdateOracleFlagResponse returns a message handle result. +type MsgUpdateOracleConfigResponse struct { +} + +func (m *MsgUpdateOracleConfigResponse) Reset() { *m = MsgUpdateOracleConfigResponse{} } +func (m *MsgUpdateOracleConfigResponse) String() string { return proto.CompactTextString(m) } +func (*MsgUpdateOracleConfigResponse) ProtoMessage() {} +func (*MsgUpdateOracleConfigResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_d16af6eaf4088d05, []int{19} +} +func (m *MsgUpdateOracleConfigResponse) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *MsgUpdateOracleConfigResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_MsgUpdateOracleConfigResponse.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 *MsgUpdateOracleConfigResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_MsgUpdateOracleConfigResponse.Merge(m, src) +} +func (m *MsgUpdateOracleConfigResponse) XXX_Size() int { + return m.Size() +} +func (m *MsgUpdateOracleConfigResponse) XXX_DiscardUnknown() { + xxx_messageInfo_MsgUpdateOracleConfigResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_MsgUpdateOracleConfigResponse proto.InternalMessageInfo + // MsgUpdateMetadata is a message to change metadata type MsgUpdateMetadata struct { // authority is the address that controls the module (defaults to x/gov unless overwritten) @@ -777,7 +856,7 @@ func (m *MsgUpdateMetadata) Reset() { *m = MsgUpdateMetadata{} } func (m *MsgUpdateMetadata) String() string { return proto.CompactTextString(m) } func (*MsgUpdateMetadata) ProtoMessage() {} func (*MsgUpdateMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{18} + return fileDescriptor_d16af6eaf4088d05, []int{20} } func (m *MsgUpdateMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -818,7 +897,7 @@ func (m *MsgUpdateMetadataResponse) Reset() { *m = MsgUpdateMetadataResp func (m *MsgUpdateMetadataResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateMetadataResponse) ProtoMessage() {} func (*MsgUpdateMetadataResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{19} + return fileDescriptor_d16af6eaf4088d05, []int{21} } func (m *MsgUpdateMetadataResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -860,7 +939,7 @@ func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} } func (m *MsgUpdateParams) String() string { return proto.CompactTextString(m) } func (*MsgUpdateParams) ProtoMessage() {} func (*MsgUpdateParams) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{20} + return fileDescriptor_d16af6eaf4088d05, []int{22} } func (m *MsgUpdateParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -897,7 +976,7 @@ func (m *MsgUpdateParamsResponse) Reset() { *m = MsgUpdateParamsResponse func (m *MsgUpdateParamsResponse) String() string { return proto.CompactTextString(m) } func (*MsgUpdateParamsResponse) ProtoMessage() {} func (*MsgUpdateParamsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d16af6eaf4088d05, []int{21} + return fileDescriptor_d16af6eaf4088d05, []int{23} } func (m *MsgUpdateParamsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -945,6 +1024,8 @@ func init() { proto.RegisterType((*MsgUpdateChallengersResponse)(nil), "opinit.ophost.v1.MsgUpdateChallengersResponse") proto.RegisterType((*MsgUpdateBatchInfo)(nil), "opinit.ophost.v1.MsgUpdateBatchInfo") proto.RegisterType((*MsgUpdateBatchInfoResponse)(nil), "opinit.ophost.v1.MsgUpdateBatchInfoResponse") + proto.RegisterType((*MsgUpdateOracleConfig)(nil), "opinit.ophost.v1.MsgUpdateOracleConfig") + proto.RegisterType((*MsgUpdateOracleConfigResponse)(nil), "opinit.ophost.v1.MsgUpdateOracleConfigResponse") proto.RegisterType((*MsgUpdateMetadata)(nil), "opinit.ophost.v1.MsgUpdateMetadata") proto.RegisterType((*MsgUpdateMetadataResponse)(nil), "opinit.ophost.v1.MsgUpdateMetadataResponse") proto.RegisterType((*MsgUpdateParams)(nil), "opinit.ophost.v1.MsgUpdateParams") @@ -954,106 +1035,110 @@ func init() { func init() { proto.RegisterFile("opinit/ophost/v1/tx.proto", fileDescriptor_d16af6eaf4088d05) } var fileDescriptor_d16af6eaf4088d05 = []byte{ - // 1582 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xcd, 0x6f, 0x1b, 0x45, - 0x14, 0xb7, 0x9d, 0x8f, 0xc6, 0xe3, 0x34, 0x1f, 0xdb, 0x34, 0x71, 0xb6, 0x95, 0x37, 0x19, 0x4a, - 0x49, 0xd3, 0xd4, 0x56, 0x52, 0x28, 0x92, 0x25, 0x0e, 0xdd, 0x54, 0xb4, 0xa9, 0x64, 0x1a, 0x2d, - 0x20, 0x04, 0x54, 0xb2, 0xd6, 0xf6, 0x64, 0xbd, 0xaa, 0xbd, 0x63, 0x76, 0xc6, 0x49, 0x83, 0x84, - 0x84, 0x38, 0x21, 0x4e, 0x48, 0xfc, 0x03, 0x15, 0xa7, 0x1e, 0x7b, 0xe0, 0xc0, 0x9f, 0x90, 0x0b, - 0x52, 0x85, 0x38, 0x70, 0xb2, 0xa0, 0x3d, 0x94, 0x23, 0x32, 0x47, 0x2e, 0x68, 0x3e, 0x76, 0x76, - 0xbd, 0xfe, 0x68, 0x88, 0xfa, 0x71, 0x89, 0x32, 0xef, 0xfd, 0xde, 0xbc, 0x79, 0xbf, 0xf7, 0xfc, - 0xde, 0xcc, 0x82, 0x65, 0xdc, 0x72, 0x3d, 0x97, 0x16, 0x70, 0xab, 0x8e, 0x09, 0x2d, 0xec, 0x6f, - 0x16, 0xe8, 0xfd, 0x7c, 0xcb, 0xc7, 0x14, 0x6b, 0x73, 0x42, 0x95, 0x17, 0xaa, 0xfc, 0xfe, 0xa6, - 0x3e, 0x6f, 0x37, 0x5d, 0x0f, 0x17, 0xf8, 0x5f, 0x01, 0xd2, 0x73, 0x55, 0x4c, 0x9a, 0x98, 0x14, - 0x2a, 0x36, 0x41, 0x85, 0xfd, 0xcd, 0x0a, 0xa2, 0xf6, 0x66, 0xa1, 0x8a, 0x5d, 0x4f, 0xea, 0x97, - 0xa4, 0xbe, 0x49, 0x1c, 0xb6, 0x79, 0x93, 0x38, 0x52, 0xb1, 0x2c, 0x14, 0x65, 0xbe, 0x2a, 0x88, - 0x85, 0x54, 0x2d, 0x38, 0xd8, 0xc1, 0x42, 0xce, 0xfe, 0x93, 0xd2, 0xf3, 0xfd, 0x27, 0x3d, 0x6c, - 0x21, 0x69, 0x03, 0xbb, 0x49, 0x30, 0x53, 0x22, 0x8e, 0x85, 0xaa, 0xd8, 0xaf, 0x99, 0x36, 0xad, - 0xd6, 0xb5, 0xdb, 0x20, 0x4d, 0xda, 0x95, 0xa6, 0x4b, 0x29, 0xf2, 0xb3, 0xc9, 0x95, 0xe4, 0x5a, - 0xda, 0xdc, 0xe8, 0x76, 0x8c, 0xb9, 0x43, 0xbb, 0xd9, 0x28, 0x42, 0xa5, 0x82, 0xbf, 0xfe, 0x74, - 0x65, 0x41, 0xfa, 0xbf, 0x5e, 0xab, 0xf9, 0x88, 0x90, 0x0f, 0xa9, 0xef, 0x7a, 0x8e, 0x15, 0x9a, - 0x6b, 0x9b, 0x20, 0x5d, 0xf1, 0xdd, 0x9a, 0x83, 0xca, 0x6e, 0x2d, 0x9b, 0x5a, 0x49, 0xae, 0x8d, - 0x9b, 0x0b, 0xe1, 0x5e, 0x4a, 0x05, 0xad, 0x29, 0xf1, 0xff, 0x4e, 0x4d, 0x7b, 0x17, 0x64, 0x2a, - 0xec, 0x1c, 0xe5, 0xca, 0x21, 0x45, 0x24, 0x3b, 0xb6, 0x92, 0x5c, 0x9b, 0x36, 0x17, 0xbb, 0x1d, - 0x43, 0x93, 0x46, 0xa1, 0x12, 0x5a, 0x80, 0xaf, 0x4c, 0xb6, 0x28, 0xae, 0x7d, 0xf3, 0xec, 0xd1, - 0x7a, 0xe8, 0xfb, 0xbb, 0x67, 0x8f, 0xd6, 0xcf, 0xca, 0xa0, 0x7b, 0x23, 0x84, 0x59, 0xb0, 0xd8, - 0x2b, 0xb1, 0x10, 0x69, 0x61, 0x8f, 0x20, 0xf8, 0x5b, 0x12, 0xcc, 0x96, 0x88, 0xb3, 0xed, 0x23, - 0x9b, 0x22, 0x93, 0x1f, 0x49, 0xbb, 0x01, 0x4e, 0x55, 0xd9, 0x1a, 0x07, 0x6c, 0xac, 0x77, 0x3b, - 0xc6, 0x8c, 0x38, 0x8c, 0x54, 0x0c, 0xe7, 0x22, 0x30, 0xd5, 0x2c, 0x30, 0x59, 0xc5, 0xde, 0x9e, - 0xeb, 0x70, 0x1a, 0x32, 0x5b, 0xb9, 0x7c, 0xbc, 0x4c, 0xf2, 0xc2, 0xdf, 0x36, 0x47, 0x99, 0xfa, - 0x51, 0xc7, 0x48, 0x74, 0x3b, 0xc6, 0x69, 0xe9, 0x88, 0x4b, 0xe1, 0xc3, 0x67, 0x8f, 0xd6, 0x93, - 0x96, 0xdc, 0xa9, 0xf8, 0x16, 0x8b, 0x38, 0xf0, 0xc0, 0xe2, 0x5d, 0x0c, 0xe3, 0x8d, 0x86, 0x00, - 0xaf, 0x81, 0xa5, 0x98, 0x28, 0x88, 0x58, 0x3b, 0x17, 0xcd, 0x10, 0x8b, 0x6f, 0x3c, 0xcc, 0x05, - 0xec, 0xa6, 0xc0, 0x5c, 0x89, 0x38, 0xbb, 0x3e, 0x6e, 0x61, 0x82, 0xee, 0xb4, 0x69, 0xab, 0x4d, - 0xb5, 0x9b, 0x60, 0xaa, 0x25, 0x04, 0x01, 0x21, 0x97, 0xbb, 0x1d, 0x63, 0x56, 0x9c, 0x33, 0xd0, - 0x0c, 0x67, 0x44, 0x19, 0x9f, 0xa4, 0x38, 0x8a, 0x60, 0x1a, 0xf3, 0x53, 0x94, 0x5d, 0xaf, 0x86, - 0xee, 0xf3, 0xea, 0x18, 0x37, 0x97, 0xba, 0x1d, 0xe3, 0x8c, 0xb0, 0x8a, 0x6a, 0xa1, 0x95, 0x11, - 0xcb, 0x1d, 0xb6, 0xd2, 0x4c, 0x30, 0xdb, 0xd8, 0x2a, 0x57, 0x1a, 0xb8, 0x7a, 0xaf, 0xec, 0xb5, - 0x9b, 0x15, 0xe4, 0x67, 0xc7, 0xb9, 0xb9, 0xde, 0xed, 0x18, 0x8b, 0xc2, 0x3c, 0x06, 0x80, 0xd6, - 0xe9, 0xc6, 0x96, 0xc9, 0x04, 0x1f, 0xf0, 0x35, 0x2b, 0x4e, 0xe9, 0xc1, 0xc7, 0x98, 0x66, 0x27, - 0xe2, 0xc5, 0x19, 0x51, 0x42, 0x0b, 0x88, 0x95, 0x85, 0x31, 0x2d, 0x5e, 0x62, 0xa9, 0x52, 0xa1, - 0xb3, 0x5c, 0x2d, 0x85, 0xb9, 0xea, 0xe1, 0x17, 0xea, 0x20, 0x1b, 0x97, 0xa9, 0xfa, 0xfc, 0x57, - 0xd4, 0xe7, 0x0d, 0xd4, 0x40, 0x34, 0xc8, 0x47, 0x09, 0x80, 0x6a, 0xdd, 0x6e, 0x34, 0x90, 0xe7, - 0xa8, 0x8c, 0x5c, 0xe9, 0x76, 0x8c, 0x79, 0x59, 0x39, 0x4a, 0x37, 0x3c, 0x27, 0x91, 0x0d, 0x5e, - 0x71, 0x56, 0x8a, 0xeb, 0x8c, 0x98, 0x88, 0xff, 0x58, 0x19, 0x47, 0x23, 0x85, 0xcb, 0xbc, 0x8c, - 0xa3, 0xa2, 0x90, 0x98, 0x14, 0xd7, 0xed, 0x78, 0x2e, 0x75, 0x6d, 0x8a, 0x3e, 0xc2, 0xf7, 0x90, - 0x77, 0x03, 0xb5, 0x30, 0x71, 0xa9, 0x76, 0x1d, 0x4c, 0x12, 0xe4, 0xd5, 0x14, 0x39, 0x97, 0xc2, - 0x9f, 0x95, 0x90, 0x0f, 0x27, 0x46, 0x1a, 0x9e, 0x84, 0x94, 0x77, 0x40, 0x8a, 0x62, 0x4e, 0x45, - 0xda, 0x7c, 0xb3, 0xdb, 0x31, 0xd2, 0x02, 0x4b, 0xf1, 0x70, 0x6f, 0x29, 0x8a, 0xb5, 0x12, 0x98, - 0xb4, 0x9b, 0xb8, 0xed, 0x51, 0x5e, 0x9c, 0x99, 0xad, 0xe5, 0xbc, 0x84, 0xb2, 0x49, 0x91, 0x97, - 0x93, 0x22, 0xbf, 0x8d, 0x5d, 0x2f, 0xde, 0x22, 0x84, 0x59, 0xd0, 0x22, 0xc4, 0x4a, 0xdb, 0x00, - 0xe3, 0x35, 0x9b, 0xda, 0xb2, 0x52, 0xb3, 0x47, 0x1d, 0x23, 0xd9, 0xed, 0x18, 0x19, 0x61, 0xc1, - 0x34, 0x1c, 0x9f, 0xb0, 0x38, 0xaa, 0x78, 0xed, 0xdb, 0x07, 0x46, 0xe2, 0xaf, 0x07, 0x46, 0x82, - 0x25, 0x45, 0xc6, 0xce, 0x12, 0x92, 0x0b, 0x13, 0x32, 0x88, 0x61, 0xf8, 0x1e, 0x30, 0x86, 0xa8, - 0x54, 0x9f, 0xd1, 0xc1, 0x14, 0x41, 0x5f, 0xb4, 0x91, 0x57, 0x45, 0x41, 0x9b, 0x09, 0xd6, 0xf0, - 0xe7, 0x09, 0xa0, 0x97, 0x88, 0xf3, 0xbe, 0xeb, 0xd9, 0x0d, 0xf7, 0x4b, 0x61, 0xff, 0x89, 0x4b, - 0xeb, 0x35, 0xdf, 0x3e, 0xb0, 0x1b, 0xaf, 0xba, 0x4f, 0x5c, 0x03, 0xf3, 0x07, 0xca, 0x39, 0x9b, - 0xb3, 0x78, 0x8f, 0x64, 0xc7, 0x57, 0xc6, 0xd6, 0xa6, 0xcd, 0x34, 0xe3, 0x4f, 0x10, 0x36, 0x17, - 0x62, 0x76, 0x39, 0x24, 0x52, 0x66, 0x13, 0x27, 0x2d, 0xb3, 0x9b, 0x60, 0xca, 0x47, 0x55, 0xe4, - 0xee, 0x0f, 0x6a, 0xad, 0x81, 0x66, 0x44, 0x6b, 0x0d, 0x20, 0x5a, 0x21, 0xc2, 0xf6, 0x24, 0x8f, - 0xfd, 0x4c, 0xb8, 0x91, 0xe2, 0x3d, 0x4c, 0x41, 0xa4, 0xec, 0x4e, 0xbd, 0x98, 0xb2, 0x3b, 0xb5, - 0x8f, 0x7c, 0xe2, 0x62, 0x2f, 0x3b, 0xc5, 0x2b, 0x4f, 0x0b, 0x67, 0xa6, 0x54, 0x40, 0x2b, 0x80, - 0xb0, 0x6c, 0x11, 0x8a, 0x7d, 0xdb, 0x41, 0xa2, 0xad, 0xa6, 0xb9, 0x49, 0x24, 0x5b, 0x51, 0x2d, - 0xb4, 0x32, 0x72, 0xc9, 0x1a, 0xab, 0x76, 0x0b, 0xcc, 0x37, 0x6c, 0x8a, 0x08, 0x95, 0x8d, 0xbb, - 0x6e, 0x93, 0x7a, 0x16, 0xf0, 0x0d, 0xce, 0x77, 0x3b, 0x46, 0x56, 0xf6, 0xf5, 0x38, 0x04, 0x5a, - 0xb3, 0x42, 0xc6, 0xbb, 0xfb, 0x2d, 0x9b, 0xd4, 0x8b, 0x57, 0x79, 0x8b, 0x0e, 0x28, 0x64, 0x65, - 0xbf, 0x1a, 0x96, 0xfd, 0x90, 0xda, 0x84, 0x17, 0x00, 0x1c, 0xae, 0x55, 0xdd, 0xe9, 0x87, 0x14, - 0x98, 0x2f, 0x11, 0xe7, 0xe3, 0x56, 0xcd, 0xa6, 0x68, 0x37, 0x98, 0x7f, 0xb7, 0x41, 0xda, 0x6e, - 0xd3, 0x3a, 0xf6, 0x5d, 0x7a, 0xd8, 0x7f, 0xd1, 0x52, 0xaa, 0x11, 0x17, 0x2d, 0x85, 0x39, 0xc9, - 0x6f, 0xc4, 0x02, 0xd3, 0x1e, 0x3a, 0x28, 0xab, 0x59, 0x2e, 0x5a, 0x55, 0x21, 0x64, 0x3d, 0xaa, - 0x1d, 0x7e, 0x88, 0x8c, 0x87, 0x0e, 0x82, 0x90, 0x8a, 0x97, 0xf9, 0x1d, 0x4c, 0x1d, 0x8b, 0x91, - 0x98, 0x0d, 0x49, 0xec, 0x8d, 0x1f, 0xee, 0x81, 0xe5, 0x3e, 0xa1, 0xea, 0x17, 0xab, 0xb1, 0x5f, - 0xb0, 0xe8, 0x19, 0x3d, 0x3f, 0xd4, 0x8b, 0xfd, 0x03, 0x9d, 0x47, 0x1e, 0x1b, 0xda, 0xf0, 0xc7, - 0x14, 0x58, 0x50, 0x8e, 0xb6, 0xd5, 0xa4, 0x21, 0xaf, 0x3b, 0x01, 0x9f, 0x83, 0x59, 0x46, 0x71, - 0x38, 0xfb, 0xd8, 0x6d, 0x77, 0x6c, 0x2d, 0x6d, 0x6e, 0x85, 0x17, 0x92, 0x18, 0x60, 0xf8, 0x51, - 0x66, 0x3c, 0x74, 0x10, 0x89, 0xad, 0x98, 0xef, 0xcf, 0xc4, 0xb9, 0x78, 0x26, 0x22, 0x78, 0xe8, - 0x82, 0xf3, 0x83, 0xe4, 0x2f, 0x23, 0x1f, 0x0f, 0x53, 0x40, 0x53, 0xbe, 0xf8, 0xfd, 0x7b, 0xc7, - 0xdb, 0xc3, 0xaf, 0x3b, 0x1b, 0x08, 0x30, 0x0a, 0xcb, 0xe2, 0x79, 0xe1, 0x7a, 0x7b, 0x62, 0x76, - 0x67, 0xb6, 0xce, 0x0d, 0xb8, 0xa8, 0x07, 0x67, 0x36, 0xa1, 0xec, 0x85, 0x67, 0xc3, 0x6c, 0x85, - 0x1b, 0xc8, 0x9e, 0xc8, 0x7e, 0x65, 0xca, 0xa2, 0xb8, 0xd1, 0x9f, 0x97, 0xe5, 0x78, 0x5e, 0x14, - 0x1a, 0x3a, 0x7c, 0x30, 0xc6, 0xa4, 0x2f, 0x23, 0x27, 0x7f, 0x27, 0x23, 0x1d, 0xaa, 0x84, 0xa8, - 0xcd, 0xee, 0x03, 0xaf, 0x3b, 0x25, 0x05, 0x30, 0xd5, 0x94, 0x47, 0x91, 0xef, 0xc0, 0xc8, 0x14, - 0x0b, 0x34, 0xd0, 0x52, 0xa0, 0x63, 0xb5, 0x9f, 0x20, 0xb8, 0x9e, 0xf6, 0x13, 0x08, 0x5f, 0x06, - 0xb5, 0xbf, 0x88, 0x3b, 0xbb, 0xec, 0x73, 0xb6, 0x6f, 0x37, 0x5f, 0x6c, 0xe7, 0xd9, 0x06, 0x93, - 0x2d, 0xbe, 0xab, 0x7c, 0x59, 0x66, 0xfb, 0x0b, 0x56, 0x78, 0x35, 0xe7, 0xc3, 0xa9, 0x2d, 0x2c, - 0xa0, 0x25, 0x4d, 0xc5, 0xfb, 0xa4, 0x97, 0xb9, 0xc5, 0xbe, 0xc6, 0x2d, 0x6c, 0xc4, 0x2d, 0x3c, - 0x2a, 0x0a, 0x58, 0xdb, 0xfa, 0x67, 0x0a, 0x8c, 0x95, 0x88, 0xa3, 0x7d, 0x0a, 0x32, 0xd1, 0x2f, - 0x0a, 0x2b, 0xfd, 0x27, 0xea, 0x7d, 0x7f, 0xeb, 0x6b, 0xcf, 0x43, 0xa8, 0xc4, 0xdc, 0x05, 0xd3, - 0x3d, 0xaf, 0xf3, 0xd5, 0x81, 0x96, 0x51, 0x88, 0x7e, 0xe9, 0xb9, 0x10, 0xb5, 0x7b, 0x19, 0x9c, - 0xee, 0x7d, 0xec, 0xc2, 0x81, 0xb6, 0x3d, 0x18, 0x7d, 0xfd, 0xf9, 0x98, 0xe8, 0xf1, 0x7b, 0x1e, - 0x6f, 0x83, 0x8f, 0x1f, 0x85, 0x0c, 0x39, 0xfe, 0xa0, 0x57, 0x90, 0x46, 0xc1, 0xc2, 0xc0, 0x17, - 0xd0, 0xe0, 0x2d, 0x06, 0x41, 0xf5, 0xcd, 0x63, 0x43, 0x95, 0xd7, 0xaf, 0xc0, 0xd2, 0xb0, 0xab, - 0xfb, 0xc6, 0xc0, 0xdd, 0x86, 0xa0, 0xf5, 0xb7, 0xff, 0x0f, 0x5a, 0xb9, 0xaf, 0x80, 0x99, 0xd8, - 0xc5, 0xea, 0x8d, 0x81, 0xfb, 0xf4, 0x82, 0xf4, 0xcb, 0xc7, 0x00, 0x29, 0x1f, 0xf7, 0xc0, 0x7c, - 0xff, 0xf5, 0xe1, 0xe2, 0x88, 0x1d, 0x22, 0x38, 0x3d, 0x7f, 0x3c, 0x9c, 0x72, 0x86, 0xc0, 0x6c, - 0x7c, 0x36, 0x5e, 0x18, 0xb1, 0x85, 0x42, 0xe9, 0x1b, 0xc7, 0x41, 0xf5, 0xf3, 0xa6, 0xda, 0xfd, - 0x28, 0xde, 0x02, 0xd0, 0x48, 0xde, 0xfa, 0xda, 0xe8, 0x5d, 0x30, 0xdd, 0xd3, 0xf7, 0x56, 0x47, - 0x91, 0xce, 0x21, 0x43, 0xca, 0x7d, 0x50, 0xbb, 0xd1, 0x27, 0xbe, 0x66, 0x03, 0xd6, 0xbc, 0x7d, - 0xf4, 0x67, 0x2e, 0x71, 0xf4, 0x24, 0x97, 0x7c, 0xfc, 0x24, 0x97, 0xfc, 0xe3, 0x49, 0x2e, 0xf9, - 0xfd, 0xd3, 0x5c, 0xe2, 0xf1, 0xd3, 0x5c, 0xe2, 0xf7, 0xa7, 0xb9, 0xc4, 0x67, 0x1b, 0x8e, 0x4b, - 0xeb, 0xed, 0x4a, 0xbe, 0x8a, 0x9b, 0x05, 0x97, 0x97, 0xf1, 0x95, 0x86, 0x5d, 0x21, 0x85, 0x3b, - 0xbb, 0xfc, 0xb3, 0xe8, 0xfd, 0xe0, 0xc3, 0x28, 0xff, 0x2a, 0x5a, 0x99, 0xe4, 0x9f, 0x45, 0xaf, - 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0x03, 0xae, 0x51, 0x6d, 0xe0, 0x15, 0x00, 0x00, + // 1646 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xcb, 0x6f, 0x1b, 0x55, + 0x17, 0xb7, 0x9d, 0x47, 0xed, 0xeb, 0x3c, 0xa7, 0x69, 0xe2, 0x4c, 0xf3, 0x79, 0x92, 0xfb, 0xf5, + 0xeb, 0x97, 0xa6, 0xa9, 0xad, 0xa4, 0x50, 0x24, 0x4b, 0x48, 0x74, 0x52, 0x68, 0x53, 0xc9, 0x34, + 0x1a, 0x40, 0x08, 0xa8, 0x64, 0x8d, 0xed, 0x9b, 0xf1, 0xa8, 0xf6, 0x5c, 0x33, 0x73, 0x9d, 0x34, + 0x48, 0x48, 0x88, 0x15, 0xb0, 0x42, 0xe2, 0x1f, 0xa8, 0x58, 0x75, 0xd9, 0x05, 0x0b, 0xfe, 0x84, + 0x6c, 0x90, 0x2a, 0xc4, 0x82, 0x95, 0x05, 0xed, 0xa2, 0x2c, 0x91, 0x59, 0xb2, 0x41, 0xf7, 0x31, + 0x77, 0xc6, 0xe3, 0x71, 0x1a, 0xa2, 0xb6, 0xd9, 0x58, 0xbe, 0xe7, 0xfc, 0xce, 0x3d, 0xf7, 0xfc, + 0xce, 0x99, 0x73, 0x1f, 0x60, 0x11, 0xb7, 0x6d, 0xc7, 0x26, 0x45, 0xdc, 0x6e, 0x60, 0x8f, 0x14, + 0xf7, 0x36, 0x8a, 0xe4, 0x7e, 0xa1, 0xed, 0x62, 0x82, 0x95, 0x19, 0xae, 0x2a, 0x70, 0x55, 0x61, + 0x6f, 0x43, 0x9d, 0x35, 0x5b, 0xb6, 0x83, 0x8b, 0xec, 0x97, 0x83, 0xd4, 0x7c, 0x0d, 0x7b, 0x2d, + 0xec, 0x15, 0xab, 0xa6, 0x87, 0x8a, 0x7b, 0x1b, 0x55, 0x44, 0xcc, 0x8d, 0x62, 0x0d, 0xdb, 0x8e, + 0xd0, 0x2f, 0x08, 0x7d, 0xcb, 0xb3, 0xe8, 0xe4, 0x2d, 0xcf, 0x12, 0x8a, 0x45, 0xae, 0xa8, 0xb0, + 0x51, 0x91, 0x0f, 0x84, 0x6a, 0xce, 0xc2, 0x16, 0xe6, 0x72, 0xfa, 0x4f, 0x48, 0x97, 0x06, 0x57, + 0x7a, 0xd0, 0x46, 0xc2, 0x06, 0xf6, 0x92, 0x60, 0xaa, 0xec, 0x59, 0x06, 0xaa, 0x61, 0xb7, 0xae, + 0x9b, 0xa4, 0xd6, 0x50, 0x6e, 0x83, 0x8c, 0xd7, 0xa9, 0xb6, 0x6c, 0x42, 0x90, 0x9b, 0x4b, 0x2e, + 0x27, 0x57, 0x33, 0xfa, 0x7a, 0xaf, 0xab, 0xcd, 0x1c, 0x98, 0xad, 0x66, 0x09, 0x4a, 0x15, 0xfc, + 0xf9, 0x87, 0x2b, 0x73, 0xc2, 0xff, 0xf5, 0x7a, 0xdd, 0x45, 0x9e, 0xf7, 0x1e, 0x71, 0x6d, 0xc7, + 0x32, 0x02, 0x73, 0x65, 0x03, 0x64, 0xaa, 0xae, 0x5d, 0xb7, 0x50, 0xc5, 0xae, 0xe7, 0x52, 0xcb, + 0xc9, 0xd5, 0x51, 0x7d, 0x2e, 0x98, 0x4b, 0xaa, 0xa0, 0x91, 0xe6, 0xff, 0xb7, 0xeb, 0xca, 0x1b, + 0x20, 0x5b, 0xa5, 0xeb, 0xa8, 0x54, 0x0f, 0x08, 0xf2, 0x72, 0x23, 0xcb, 0xc9, 0xd5, 0x09, 0x7d, + 0xbe, 0xd7, 0xd5, 0x14, 0x61, 0x14, 0x28, 0xa1, 0x01, 0xd8, 0x48, 0xa7, 0x83, 0xd2, 0xea, 0x97, + 0xcf, 0x1e, 0xad, 0x05, 0xbe, 0xbf, 0x79, 0xf6, 0x68, 0xed, 0x9c, 0x08, 0xba, 0x3f, 0x42, 0x98, + 0x03, 0xf3, 0xfd, 0x12, 0x03, 0x79, 0x6d, 0xec, 0x78, 0x08, 0xfe, 0x92, 0x04, 0xd3, 0x65, 0xcf, + 0xda, 0x72, 0x91, 0x49, 0x90, 0xce, 0x96, 0xa4, 0xdc, 0x00, 0x67, 0x6a, 0x74, 0x8c, 0x7d, 0x36, + 0xd6, 0x7a, 0x5d, 0x6d, 0x8a, 0x2f, 0x46, 0x28, 0x86, 0x73, 0xe1, 0x9b, 0x2a, 0x06, 0x18, 0xaf, + 0x61, 0x67, 0xd7, 0xb6, 0x18, 0x0d, 0xd9, 0xcd, 0x7c, 0x21, 0x5a, 0x26, 0x05, 0xee, 0x6f, 0x8b, + 0xa1, 0x74, 0xf5, 0xb0, 0xab, 0x25, 0x7a, 0x5d, 0x6d, 0x52, 0x38, 0x62, 0x52, 0xf8, 0xf0, 0xd9, + 0xa3, 0xb5, 0xa4, 0x21, 0x66, 0x2a, 0xfd, 0x9f, 0x46, 0xec, 0x7b, 0xa0, 0xf1, 0xce, 0x07, 0xf1, + 0x86, 0x43, 0x80, 0xd7, 0xc0, 0x42, 0x44, 0xe4, 0x47, 0xac, 0x9c, 0x0f, 0x67, 0x88, 0xc6, 0x37, + 0x1a, 0xe4, 0x02, 0xf6, 0x52, 0x60, 0xa6, 0xec, 0x59, 0x3b, 0x2e, 0x6e, 0x63, 0x0f, 0xdd, 0xe9, + 0x90, 0x76, 0x87, 0x28, 0x37, 0x41, 0xba, 0xcd, 0x05, 0x3e, 0x21, 0x97, 0x7b, 0x5d, 0x6d, 0x9a, + 0xaf, 0xd3, 0xd7, 0x0c, 0x67, 0x44, 0x1a, 0x9f, 0xa4, 0x38, 0x4a, 0x60, 0x02, 0xb3, 0x55, 0x54, + 0x6c, 0xa7, 0x8e, 0xee, 0xb3, 0xea, 0x18, 0xd5, 0x17, 0x7a, 0x5d, 0xed, 0x2c, 0xb7, 0x0a, 0x6b, + 0xa1, 0x91, 0xe5, 0xc3, 0x6d, 0x3a, 0x52, 0x74, 0x30, 0xdd, 0xdc, 0xac, 0x54, 0x9b, 0xb8, 0x76, + 0xaf, 0xe2, 0x74, 0x5a, 0x55, 0xe4, 0xe6, 0x46, 0x99, 0xb9, 0xda, 0xeb, 0x6a, 0xf3, 0xdc, 0x3c, + 0x02, 0x80, 0xc6, 0x64, 0x73, 0x53, 0xa7, 0x82, 0x77, 0xd9, 0x98, 0x16, 0xa7, 0xf0, 0xe0, 0x62, + 0x4c, 0x72, 0x63, 0xd1, 0xe2, 0x0c, 0x29, 0xa1, 0x01, 0xf8, 0xc8, 0xc0, 0x98, 0x94, 0x2e, 0xd1, + 0x54, 0xc9, 0xd0, 0x69, 0xae, 0x16, 0x82, 0x5c, 0xf5, 0xf1, 0x0b, 0x55, 0x90, 0x8b, 0xca, 0x64, + 0x7d, 0xfe, 0xcd, 0xeb, 0xf3, 0x06, 0x6a, 0x22, 0xe2, 0xe7, 0xa3, 0x0c, 0x40, 0xad, 0x61, 0x36, + 0x9b, 0xc8, 0xb1, 0x64, 0x46, 0xae, 0xf4, 0xba, 0xda, 0xac, 0xa8, 0x1c, 0xa9, 0x1b, 0x9e, 0x93, + 0xd0, 0x04, 0xaf, 0x38, 0x2b, 0xa5, 0x35, 0x4a, 0x4c, 0xc8, 0x7f, 0xa4, 0x8c, 0xc3, 0x91, 0xc2, + 0x45, 0x56, 0xc6, 0x61, 0x51, 0x40, 0x4c, 0x8a, 0xe9, 0xb6, 0x1d, 0x9b, 0xd8, 0x26, 0x41, 0xef, + 0xe3, 0x7b, 0xc8, 0xb9, 0x81, 0xda, 0xd8, 0xb3, 0x89, 0x72, 0x1d, 0x8c, 0x7b, 0xc8, 0xa9, 0x4b, + 0x72, 0x2e, 0x05, 0x9f, 0x15, 0x97, 0x0f, 0x27, 0x46, 0x18, 0x9e, 0x84, 0x94, 0xd7, 0x41, 0x8a, + 0x60, 0x46, 0x45, 0x46, 0xff, 0x5f, 0xaf, 0xab, 0x65, 0x38, 0x96, 0xe0, 0xe1, 0xde, 0x52, 0x04, + 0x2b, 0x65, 0x30, 0x6e, 0xb6, 0x70, 0xc7, 0x21, 0xac, 0x38, 0xb3, 0x9b, 0x8b, 0x05, 0x01, 0xa5, + 0x3b, 0x45, 0x41, 0xec, 0x14, 0x85, 0x2d, 0x6c, 0x3b, 0xd1, 0x16, 0xc1, 0xcd, 0xfc, 0x16, 0xc1, + 0x47, 0xca, 0x3a, 0x18, 0xad, 0x9b, 0xc4, 0x14, 0x95, 0x9a, 0x3b, 0xec, 0x6a, 0xc9, 0x5e, 0x57, + 0xcb, 0x72, 0x0b, 0xaa, 0x61, 0xf8, 0x84, 0xc1, 0x50, 0xa5, 0x6b, 0x5f, 0x3d, 0xd0, 0x12, 0x7f, + 0x3c, 0xd0, 0x12, 0x34, 0x29, 0x22, 0x76, 0x9a, 0x90, 0x7c, 0x90, 0x90, 0x38, 0x86, 0xe1, 0x9b, + 0x40, 0x1b, 0xa2, 0x92, 0x7d, 0x46, 0x05, 0x69, 0x0f, 0x7d, 0xda, 0x41, 0x4e, 0x0d, 0xf9, 0x6d, + 0xc6, 0x1f, 0xc3, 0x1f, 0xc7, 0x80, 0x5a, 0xf6, 0xac, 0x77, 0x6c, 0xc7, 0x6c, 0xda, 0x9f, 0x71, + 0xfb, 0x0f, 0x6d, 0xd2, 0xa8, 0xbb, 0xe6, 0xbe, 0xd9, 0x7c, 0xd5, 0x7d, 0xe2, 0x1a, 0x98, 0xdd, + 0x97, 0xce, 0xe9, 0x3e, 0x8b, 0x77, 0xbd, 0xdc, 0xe8, 0xf2, 0xc8, 0xea, 0x84, 0x9e, 0xa1, 0xfc, + 0x71, 0xc2, 0x66, 0x02, 0xcc, 0x0e, 0x83, 0x84, 0xca, 0x6c, 0xec, 0xa4, 0x65, 0x76, 0x13, 0xa4, + 0x5d, 0x54, 0x43, 0xf6, 0x5e, 0x5c, 0x6b, 0xf5, 0x35, 0x47, 0xb4, 0x56, 0x1f, 0xa2, 0x14, 0x43, + 0x6c, 0x8f, 0xb3, 0xd8, 0xcf, 0x06, 0x13, 0x49, 0xde, 0x83, 0x14, 0x84, 0xca, 0xee, 0xcc, 0x8b, + 0x29, 0xbb, 0x33, 0x7b, 0xc8, 0xf5, 0x6c, 0xec, 0xe4, 0xd2, 0xac, 0xf2, 0x94, 0x60, 0xcf, 0x14, + 0x0a, 0x68, 0xf8, 0x10, 0x9a, 0x2d, 0x8f, 0x60, 0xd7, 0xb4, 0x10, 0x6f, 0xab, 0x19, 0x66, 0x12, + 0xca, 0x56, 0x58, 0x0b, 0x8d, 0xac, 0x18, 0xd2, 0xc6, 0xaa, 0xdc, 0x02, 0xb3, 0x4d, 0x93, 0x20, + 0x8f, 0x88, 0xc6, 0xdd, 0x30, 0xbd, 0x46, 0x0e, 0xb0, 0x09, 0x96, 0x7a, 0x5d, 0x2d, 0x27, 0xfa, + 0x7a, 0x14, 0x02, 0x8d, 0x69, 0x2e, 0x63, 0xdd, 0xfd, 0x96, 0xe9, 0x35, 0x4a, 0x57, 0x59, 0x8b, + 0xf6, 0x29, 0xa4, 0x65, 0xbf, 0x12, 0x94, 0xfd, 0x90, 0xda, 0x84, 0x17, 0x00, 0x1c, 0xae, 0x95, + 0xdd, 0xe9, 0xbb, 0x14, 0x98, 0x2d, 0x7b, 0xd6, 0x07, 0xed, 0xba, 0x49, 0xd0, 0x8e, 0xbf, 0xff, + 0xdd, 0x06, 0x19, 0xb3, 0x43, 0x1a, 0xd8, 0xb5, 0xc9, 0xc1, 0xe0, 0x41, 0x4b, 0xaa, 0x8e, 0x38, + 0x68, 0x49, 0xcc, 0x49, 0xbe, 0x11, 0x03, 0x4c, 0x38, 0x68, 0xbf, 0x22, 0xf7, 0x72, 0xde, 0xaa, + 0x8a, 0x01, 0xeb, 0x61, 0xed, 0xf0, 0x45, 0x64, 0x1d, 0xb4, 0xef, 0x87, 0x54, 0xba, 0xcc, 0xce, + 0x60, 0x72, 0x59, 0x94, 0xc4, 0x5c, 0x40, 0x62, 0x7f, 0xfc, 0x70, 0x17, 0x2c, 0x0e, 0x08, 0x65, + 0xbf, 0x58, 0x89, 0x7c, 0xc1, 0xbc, 0x67, 0xf4, 0x7d, 0xa8, 0x17, 0x07, 0x37, 0x74, 0x16, 0x79, + 0x64, 0xd3, 0x86, 0xdf, 0xa7, 0xc0, 0x9c, 0x74, 0xb4, 0x25, 0x77, 0x1a, 0xef, 0xb4, 0x13, 0xf0, + 0x09, 0x98, 0xa6, 0x14, 0x07, 0x7b, 0x1f, 0x3d, 0xed, 0x8e, 0xac, 0x66, 0xf4, 0xcd, 0xe0, 0x40, + 0x12, 0x01, 0x0c, 0x5f, 0xca, 0x94, 0x83, 0xf6, 0x43, 0xb1, 0x95, 0x0a, 0x83, 0x99, 0x38, 0x1f, + 0xcd, 0x44, 0x08, 0x0f, 0x6d, 0xb0, 0x14, 0x27, 0x7f, 0x19, 0xf9, 0x78, 0x98, 0x02, 0x8a, 0xf4, + 0xc5, 0xce, 0xdf, 0xdb, 0xce, 0x2e, 0x3e, 0xed, 0x6c, 0x20, 0x40, 0x29, 0xac, 0xf0, 0xeb, 0x85, + 0xed, 0xec, 0xf2, 0xbd, 0x3b, 0xbb, 0x79, 0x3e, 0xe6, 0xa0, 0xee, 0xaf, 0x59, 0x87, 0xa2, 0x17, + 0x9e, 0x0b, 0xb2, 0x15, 0x4c, 0x20, 0x7a, 0x22, 0xfd, 0xca, 0xa4, 0x45, 0x69, 0x7d, 0x30, 0x2f, + 0x8b, 0xd1, 0xbc, 0x48, 0x34, 0xb4, 0xd8, 0xc6, 0x18, 0x91, 0xbe, 0x8c, 0x9c, 0x7c, 0x9d, 0x02, + 0xe7, 0xa4, 0xa7, 0x3b, 0xae, 0x59, 0x6b, 0x8a, 0x8b, 0xc8, 0x69, 0xa7, 0xe5, 0x2d, 0x30, 0x85, + 0xd9, 0x72, 0x2a, 0xc8, 0x31, 0xab, 0x4d, 0x54, 0x67, 0x69, 0x49, 0xeb, 0x8b, 0x01, 0xeb, 0xfd, + 0x7a, 0x68, 0x4c, 0x72, 0xc1, 0xdb, 0x7c, 0x5c, 0x2a, 0x0e, 0x32, 0xbe, 0x14, 0x65, 0x3c, 0x1c, + 0x31, 0xd4, 0xc0, 0x7f, 0x62, 0x15, 0xb2, 0x9d, 0xff, 0x99, 0x0c, 0xb5, 0xf3, 0x32, 0x22, 0x26, + 0x3d, 0x3c, 0x9d, 0x36, 0x51, 0x45, 0x90, 0x6e, 0x89, 0xa5, 0x88, 0x4b, 0x73, 0x68, 0xcb, 0xf7, + 0x35, 0xd0, 0x90, 0xa0, 0x63, 0xf5, 0x6a, 0x3f, 0xb8, 0xbe, 0x5e, 0xed, 0x0b, 0x5f, 0x46, 0x1d, + 0xfe, 0xc4, 0x2f, 0x38, 0x62, 0x53, 0x30, 0x5d, 0xb3, 0xf5, 0x62, 0xdb, 0xf4, 0x16, 0x18, 0x6f, + 0xb3, 0x59, 0xc5, 0x35, 0x3c, 0x37, 0xf8, 0x75, 0x73, 0xaf, 0xfa, 0x6c, 0x70, 0xc4, 0xe1, 0x16, + 0xd0, 0x10, 0xa6, 0xfc, 0x32, 0xd7, 0xcf, 0xdc, 0xfc, 0xc0, 0x2e, 0xc7, 0x6d, 0xf8, 0x95, 0x25, + 0x2c, 0xf2, 0x59, 0xdb, 0xfc, 0x2b, 0x0d, 0x46, 0xca, 0x9e, 0xa5, 0x7c, 0x04, 0xb2, 0xe1, 0xe7, + 0x97, 0xe5, 0xc1, 0x15, 0xf5, 0x3f, 0x56, 0xa8, 0xab, 0xcf, 0x43, 0xc8, 0xc4, 0xdc, 0x05, 0x13, + 0x7d, 0x4f, 0x19, 0x2b, 0xb1, 0x96, 0x61, 0x88, 0x7a, 0xe9, 0xb9, 0x10, 0x39, 0x7b, 0x05, 0x4c, + 0xf6, 0xbf, 0x0c, 0xc0, 0x58, 0xdb, 0x3e, 0x8c, 0xba, 0xf6, 0x7c, 0x4c, 0x78, 0xf9, 0x7d, 0x37, + 0xdd, 0xf8, 0xe5, 0x87, 0x21, 0x43, 0x96, 0x1f, 0x77, 0x65, 0x54, 0x08, 0x98, 0x8b, 0xbd, 0x2e, + 0xc6, 0x4f, 0x11, 0x07, 0x55, 0x37, 0x8e, 0x0d, 0x95, 0x5e, 0x3f, 0x07, 0x0b, 0xc3, 0xee, 0x39, + 0xeb, 0xb1, 0xb3, 0x0d, 0x41, 0xab, 0xaf, 0xfd, 0x1b, 0xb4, 0x74, 0x5f, 0x05, 0x53, 0x91, 0x53, + 0xe8, 0x7f, 0x63, 0xe7, 0xe9, 0x07, 0xa9, 0x97, 0x8f, 0x01, 0x92, 0x3e, 0xee, 0x81, 0xd9, 0xc1, + 0xb3, 0xd6, 0xc5, 0x23, 0x66, 0x08, 0xe1, 0xd4, 0xc2, 0xf1, 0x70, 0xd2, 0x19, 0x02, 0xd3, 0xd1, + 0x83, 0xc4, 0x85, 0x23, 0xa6, 0x90, 0x28, 0x75, 0xfd, 0x38, 0xa8, 0x41, 0xde, 0x64, 0xbb, 0x3f, + 0x8a, 0x37, 0x1f, 0x74, 0x24, 0x6f, 0x03, 0x6d, 0xf4, 0x2e, 0x98, 0xe8, 0xeb, 0x7b, 0x2b, 0x47, + 0x91, 0xce, 0x20, 0x43, 0xca, 0x3d, 0xae, 0xdd, 0xa8, 0x63, 0x5f, 0xd0, 0xd3, 0x88, 0x7e, 0xfb, + 0xf0, 0xf7, 0x7c, 0xe2, 0xf0, 0x49, 0x3e, 0xf9, 0xf8, 0x49, 0x3e, 0xf9, 0xdb, 0x93, 0x7c, 0xf2, + 0xdb, 0xa7, 0xf9, 0xc4, 0xe3, 0xa7, 0xf9, 0xc4, 0xaf, 0x4f, 0xf3, 0x89, 0x8f, 0xd7, 0x2d, 0x9b, + 0x34, 0x3a, 0xd5, 0x42, 0x0d, 0xb7, 0x8a, 0x36, 0x2b, 0xe3, 0x2b, 0x4d, 0xb3, 0xea, 0x15, 0xef, + 0xec, 0xb0, 0x37, 0xe4, 0xfb, 0xfe, 0x2b, 0x32, 0x7b, 0x42, 0xae, 0x8e, 0xb3, 0x37, 0xe4, 0xab, + 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0x24, 0xa0, 0x18, 0x2e, 0x0d, 0x17, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -2223,6 +2308,74 @@ func (m *MsgUpdateBatchInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } +func (m *MsgUpdateOracleConfig) 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 *MsgUpdateOracleConfig) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgUpdateOracleConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.OracleEnabled { + i-- + if m.OracleEnabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x18 + } + if m.BridgeId != 0 { + i = encodeVarintTx(dAtA, i, uint64(m.BridgeId)) + i-- + dAtA[i] = 0x10 + } + if len(m.Authority) > 0 { + i -= len(m.Authority) + copy(dAtA[i:], m.Authority) + i = encodeVarintTx(dAtA, i, uint64(len(m.Authority))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *MsgUpdateOracleConfigResponse) 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 *MsgUpdateOracleConfigResponse) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *MsgUpdateOracleConfigResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + return len(dAtA) - i, nil +} + func (m *MsgUpdateMetadata) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -2691,6 +2844,34 @@ func (m *MsgUpdateBatchInfoResponse) Size() (n int) { return n } +func (m *MsgUpdateOracleConfig) 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)) + } + if m.BridgeId != 0 { + n += 1 + sovTx(uint64(m.BridgeId)) + } + if m.OracleEnabled { + n += 2 + } + return n +} + +func (m *MsgUpdateOracleConfigResponse) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + return n +} + func (m *MsgUpdateMetadata) Size() (n int) { if m == nil { return 0 @@ -4841,6 +5022,177 @@ func (m *MsgUpdateBatchInfoResponse) Unmarshal(dAtA []byte) error { } return nil } +func (m *MsgUpdateOracleConfig) 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: MsgUpdateOracleConfig: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgUpdateOracleConfig: 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 != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field BridgeId", wireType) + } + m.BridgeId = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.BridgeId |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field OracleEnabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.OracleEnabled = bool(v != 0) + 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 *MsgUpdateOracleConfigResponse) 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: MsgUpdateOracleConfigResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MsgUpdateOracleConfigResponse: 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 *MsgUpdateMetadata) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/x/ophost/types/types.pb.go b/x/ophost/types/types.pb.go index c90d3bdb..4b54902d 100644 --- a/x/ophost/types/types.pb.go +++ b/x/ophost/types/types.pb.go @@ -118,8 +118,10 @@ type BridgeConfig struct { FinalizationPeriod time.Duration `protobuf:"bytes,5,opt,name=finalization_period,json=finalizationPeriod,proto3,stdduration" json:"finalization_period,omitempty"` // The the first l2 block will be recorded on l1. SubmissionStartHeight uint64 `protobuf:"varint,6,opt,name=submission_start_height,json=submissionStartHeight,proto3" json:"submission_start_height,omitempty"` + // oracle_enabled is a flag to enable oracle. + OracleEnabled bool `protobuf:"varint,7,opt,name=oracle_enabled,json=oracleEnabled,proto3" json:"oracle_enabled,omitempty"` // Normally it is IBC channelID for permissioned IBC relayer. - Metadata []byte `protobuf:"bytes,7,opt,name=metadata,proto3" json:"metadata,omitempty"` + Metadata []byte `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"` } func (m *BridgeConfig) Reset() { *m = BridgeConfig{} } @@ -332,62 +334,63 @@ func init() { func init() { proto.RegisterFile("opinit/ophost/v1/types.proto", fileDescriptor_29cadbd84ee898dd) } var fileDescriptor_29cadbd84ee898dd = []byte{ - // 868 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0x4f, 0x6f, 0xdb, 0x36, - 0x14, 0x37, 0x53, 0xcf, 0x8d, 0xe9, 0x64, 0x4d, 0x99, 0x76, 0x55, 0xbc, 0x4e, 0x36, 0x0c, 0x6c, - 0x30, 0x8a, 0x46, 0x82, 0xbd, 0x3f, 0x87, 0xee, 0x14, 0x39, 0x2e, 0x6a, 0x60, 0x73, 0x0d, 0xc5, - 0x43, 0xb1, 0x5d, 0x04, 0xca, 0xa6, 0x65, 0x22, 0x92, 0x28, 0x90, 0x74, 0xb0, 0x74, 0xdf, 0x60, - 0xa7, 0x02, 0xbb, 0x74, 0xb7, 0xee, 0x56, 0xec, 0xd4, 0xc3, 0x3e, 0x44, 0x8e, 0xc5, 0x4e, 0x3b, - 0xb5, 0x5b, 0x72, 0xe8, 0xb0, 0x4f, 0x31, 0x90, 0xa2, 0x1d, 0xb5, 0x0d, 0x8a, 0x61, 0x17, 0x9b, - 0x7c, 0xbf, 0xdf, 0x7b, 0xbf, 0xc7, 0xf7, 0x1e, 0x29, 0x78, 0x93, 0x65, 0x34, 0xa5, 0xd2, 0x65, - 0xd9, 0x9c, 0x09, 0xe9, 0x1e, 0x75, 0x5c, 0x79, 0x9c, 0x11, 0xe1, 0x64, 0x9c, 0x49, 0x86, 0xb6, - 0x72, 0xd4, 0xc9, 0x51, 0xe7, 0xa8, 0x53, 0xbf, 0x8a, 0x13, 0x9a, 0x32, 0x57, 0xff, 0xe6, 0xa4, - 0xba, 0x3d, 0x61, 0x22, 0x61, 0xc2, 0x0d, 0xb1, 0x20, 0xee, 0x51, 0x27, 0x24, 0x12, 0x77, 0xdc, - 0x09, 0xa3, 0xa9, 0xc1, 0x77, 0x72, 0x3c, 0xd0, 0x3b, 0x37, 0xdf, 0x18, 0xe8, 0x5a, 0xc4, 0x22, - 0x96, 0xdb, 0xd5, 0xca, 0x58, 0x1b, 0x11, 0x63, 0x51, 0x4c, 0x5c, 0xbd, 0x0b, 0x17, 0x33, 0x57, - 0xd2, 0x84, 0x08, 0x89, 0x93, 0x6c, 0xa9, 0xf8, 0x26, 0x61, 0xba, 0xe0, 0x58, 0x52, 0x66, 0x14, - 0x5b, 0xbf, 0x00, 0x58, 0x19, 0x61, 0x8e, 0x13, 0x81, 0x7e, 0x80, 0x5b, 0x9c, 0x44, 0x54, 0xc8, - 0x9c, 0x10, 0xcc, 0x08, 0xb1, 0x40, 0xf3, 0x52, 0xbb, 0xd6, 0xdd, 0x71, 0x4c, 0x2a, 0x2a, 0x6f, - 0xc7, 0xe4, 0xed, 0xf4, 0x18, 0x4d, 0xbd, 0xcf, 0x4f, 0x5e, 0x34, 0x4a, 0xbf, 0xbe, 0x6c, 0xb4, - 0x23, 0x2a, 0xe7, 0x8b, 0xd0, 0x99, 0xb0, 0xc4, 0xe4, 0x6d, 0xfe, 0x76, 0xc5, 0xf4, 0xd0, 0x14, - 0x4a, 0x39, 0x88, 0xa7, 0xaf, 0x9e, 0xdd, 0x02, 0xfe, 0x95, 0xa2, 0xd2, 0x5d, 0x42, 0xee, 0xd4, - 0x1f, 0x3f, 0x69, 0x94, 0xfe, 0x7e, 0xd2, 0x00, 0x3f, 0xbe, 0x7a, 0x76, 0x6b, 0xd3, 0x94, 0x38, - 0x4f, 0xac, 0xf5, 0x53, 0x19, 0x6e, 0x78, 0x9c, 0x4e, 0x23, 0xd2, 0x63, 0xe9, 0x8c, 0x46, 0xe8, - 0x0e, 0xac, 0x4d, 0xe6, 0x38, 0x8e, 0x49, 0x1a, 0x11, 0x2e, 0x74, 0x92, 0x55, 0xcf, 0xfa, 0xfd, - 0xb7, 0xdd, 0x6b, 0x26, 0xcf, 0xbd, 0xe9, 0x94, 0x13, 0x21, 0x0e, 0x24, 0xa7, 0x69, 0xe4, 0x17, - 0xc9, 0xe8, 0x33, 0xb8, 0x9e, 0x71, 0x96, 0x31, 0x41, 0xb8, 0xb5, 0xd6, 0x04, 0xef, 0x74, 0x5c, - 0x31, 0x51, 0x1f, 0xc2, 0x10, 0xcb, 0xc9, 0x3c, 0xa0, 0xe9, 0x8c, 0x59, 0x97, 0x9a, 0xa0, 0x5d, - 0xeb, 0x7e, 0xe8, 0xbc, 0xd9, 0x72, 0xc7, 0x53, 0x9c, 0x41, 0x3a, 0x63, 0x5e, 0x55, 0xd5, 0x25, - 0x3f, 0x6b, 0x35, 0x5c, 0x5a, 0xd1, 0x43, 0xb8, 0x2d, 0x16, 0x61, 0x42, 0x85, 0x50, 0x05, 0xa6, - 0xa9, 0x24, 0xfc, 0x08, 0xc7, 0x56, 0x59, 0xc7, 0xdb, 0x71, 0xf2, 0x5e, 0x39, 0xcb, 0x5e, 0x39, - 0xfb, 0xa6, 0x57, 0x9e, 0xa3, 0xa2, 0xfd, 0xf3, 0xa2, 0xf1, 0xd1, 0x05, 0xde, 0xb7, 0x59, 0x42, - 0x25, 0x49, 0x32, 0x79, 0xfc, 0xf8, 0x65, 0x03, 0xe4, 0x92, 0xe8, 0x9c, 0x37, 0x30, 0x34, 0xa5, - 0x3d, 0xa3, 0x29, 0x8e, 0xe9, 0xc3, 0xbc, 0xbd, 0x19, 0xe1, 0x94, 0x4d, 0xad, 0xf7, 0xfe, 0xb3, - 0xf6, 0x05, 0xde, 0x17, 0x6a, 0x17, 0x79, 0x23, 0x4d, 0x43, 0x5f, 0xc0, 0x1b, 0x85, 0xcc, 0x85, - 0xc4, 0x5c, 0x06, 0x73, 0x42, 0xa3, 0xb9, 0xb4, 0x2a, 0x4d, 0xd0, 0x2e, 0xfb, 0xd7, 0xcf, 0xe1, - 0x03, 0x85, 0xde, 0xd3, 0x20, 0xaa, 0xc3, 0xf5, 0x84, 0x48, 0x3c, 0xc5, 0x12, 0x5b, 0x97, 0x9b, - 0xa0, 0xbd, 0xe1, 0xaf, 0xf6, 0xad, 0x13, 0x00, 0xab, 0xab, 0x7a, 0xa3, 0x9b, 0xb0, 0xaa, 0x43, - 0x48, 0x49, 0xb8, 0x05, 0x54, 0x5f, 0xfd, 0x73, 0x03, 0xda, 0x87, 0x70, 0x32, 0xc7, 0x34, 0x0d, - 0xd4, 0x20, 0xea, 0xb6, 0xbf, 0xdf, 0xfd, 0xf8, 0x1d, 0xed, 0x73, 0x7a, 0x8a, 0x3d, 0x3e, 0xce, - 0x88, 0x5f, 0x9d, 0x2c, 0x97, 0xad, 0x07, 0xb0, 0xba, 0xb2, 0xa3, 0x3a, 0xfc, 0xa0, 0x77, 0x6f, - 0x6f, 0x30, 0x0c, 0xc6, 0xdf, 0x8e, 0xfa, 0xc1, 0x37, 0xc3, 0x83, 0x51, 0xbf, 0x37, 0xb8, 0x3b, - 0xe8, 0xef, 0x6f, 0x95, 0xd0, 0x75, 0x78, 0xb5, 0x80, 0x0d, 0x86, 0x83, 0xf1, 0x60, 0x6f, 0x0b, - 0xa0, 0x1b, 0x70, 0xbb, 0x60, 0xee, 0xf5, 0xbf, 0xea, 0x1f, 0x28, 0x60, 0xad, 0xb5, 0x07, 0xab, - 0x63, 0x76, 0x48, 0xd2, 0x11, 0xa6, 0x1c, 0xed, 0xc0, 0xf5, 0xb8, 0x13, 0x4c, 0x49, 0xca, 0x12, - 0x73, 0x90, 0xcb, 0x71, 0x67, 0x5f, 0x6d, 0x35, 0xd4, 0x35, 0xd0, 0x9a, 0x81, 0xba, 0x1a, 0x52, - 0xd5, 0xa8, 0xdc, 0x5f, 0xc8, 0x6c, 0x21, 0x51, 0x03, 0xd6, 0x98, 0x5e, 0x05, 0x9c, 0x31, 0xa9, - 0x63, 0x6c, 0xf8, 0x30, 0x37, 0xf9, 0x8c, 0x49, 0xf4, 0x09, 0xbc, 0x12, 0x77, 0x82, 0x30, 0x66, - 0x93, 0xc3, 0x20, 0x5d, 0x24, 0xa1, 0xb9, 0x09, 0x65, 0x7f, 0x33, 0xee, 0x78, 0xca, 0x3a, 0xd4, - 0x46, 0xf4, 0x35, 0xdc, 0x5c, 0xf1, 0xd4, 0xbb, 0x62, 0xe6, 0xbe, 0xfe, 0xd6, 0xac, 0x8c, 0x97, - 0x8f, 0x8e, 0xb7, 0xa9, 0x86, 0xe5, 0xd1, 0x6a, 0x16, 0x6a, 0x26, 0xa0, 0x22, 0x68, 0xd9, 0xee, - 0xeb, 0xb2, 0x65, 0x23, 0xdb, 0x2d, 0xc8, 0xb6, 0x7e, 0x06, 0x70, 0x7b, 0xd5, 0x89, 0x07, 0x54, - 0xce, 0xcd, 0xb9, 0x5e, 0xbf, 0x83, 0xe0, 0xff, 0xde, 0xc1, 0x2f, 0x61, 0x25, 0xaf, 0x85, 0x3e, - 0x74, 0xad, 0x6b, 0xbd, 0x1d, 0x22, 0x17, 0x2c, 0xfa, 0x1b, 0x17, 0x6f, 0x78, 0xf2, 0x97, 0x5d, - 0x7a, 0x7a, 0x6a, 0x83, 0x93, 0x53, 0x1b, 0x3c, 0x3f, 0xb5, 0xc1, 0x9f, 0xa7, 0x36, 0x78, 0x74, - 0x66, 0x97, 0x9e, 0x9f, 0xd9, 0xa5, 0x3f, 0xce, 0xec, 0xd2, 0x77, 0xb7, 0x0b, 0x0f, 0xa1, 0x0a, - 0x4b, 0xf1, 0x6e, 0x8c, 0x43, 0xe1, 0xde, 0x1f, 0xe9, 0x8f, 0xc7, 0xf7, 0xcb, 0xcf, 0x87, 0x7e, - 0x12, 0xc3, 0x8a, 0xae, 0xe1, 0xa7, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x1a, 0x31, 0x44, 0xf1, - 0x5c, 0x06, 0x00, 0x00, + // 892 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0xcf, 0x6f, 0xdb, 0x36, + 0x14, 0x36, 0x5b, 0xcf, 0xb5, 0xe9, 0xb8, 0x4d, 0x99, 0x76, 0x55, 0xbc, 0xce, 0x36, 0x0c, 0x74, + 0x30, 0x8a, 0x46, 0x82, 0xbd, 0x1f, 0x87, 0xee, 0x14, 0x39, 0x2e, 0x6a, 0x60, 0x73, 0x0d, 0xc5, + 0x43, 0xb1, 0x5d, 0x04, 0x4a, 0xa2, 0x65, 0x22, 0x92, 0x28, 0x88, 0x74, 0xb0, 0x74, 0xff, 0xc1, + 0x4e, 0x3d, 0x76, 0xb7, 0xee, 0x56, 0xec, 0xd4, 0xc3, 0x4e, 0xfb, 0x0b, 0x72, 0x2c, 0x76, 0xda, + 0xa9, 0xdd, 0x92, 0x43, 0x87, 0xfd, 0x15, 0x03, 0x29, 0xda, 0x51, 0xdb, 0xa0, 0x18, 0x76, 0xb1, + 0xc9, 0xef, 0xfb, 0xf8, 0xbe, 0xc7, 0xf7, 0x48, 0x0a, 0xde, 0x64, 0x29, 0x4d, 0xa8, 0xb0, 0x58, + 0xba, 0x60, 0x5c, 0x58, 0x87, 0x7d, 0x4b, 0x1c, 0xa5, 0x84, 0x9b, 0x69, 0xc6, 0x04, 0x43, 0x9b, + 0x39, 0x6b, 0xe6, 0xac, 0x79, 0xd8, 0x6f, 0x5e, 0xc5, 0x31, 0x4d, 0x98, 0xa5, 0x7e, 0x73, 0x51, + 0xb3, 0xe5, 0x33, 0x1e, 0x33, 0x6e, 0x79, 0x98, 0x13, 0xeb, 0xb0, 0xef, 0x11, 0x81, 0xfb, 0x96, + 0xcf, 0x68, 0xa2, 0xf9, 0xed, 0x9c, 0x77, 0xd5, 0xcc, 0xca, 0x27, 0x9a, 0xba, 0x16, 0xb2, 0x90, + 0xe5, 0xb8, 0x1c, 0x69, 0xb4, 0x1d, 0x32, 0x16, 0x46, 0xc4, 0x52, 0x33, 0x6f, 0x39, 0xb7, 0x04, + 0x8d, 0x09, 0x17, 0x38, 0x4e, 0x57, 0x8e, 0x6f, 0x0b, 0x82, 0x65, 0x86, 0x05, 0x65, 0xda, 0xb1, + 0xfb, 0x33, 0x80, 0x95, 0x29, 0xce, 0x70, 0xcc, 0xd1, 0x0f, 0x70, 0x33, 0x23, 0x21, 0xe5, 0x22, + 0x17, 0xb8, 0x73, 0x42, 0x0c, 0xd0, 0xb9, 0xd8, 0xab, 0x0f, 0xb6, 0x4d, 0x9d, 0x8a, 0xcc, 0xdb, + 0xd4, 0x79, 0x9b, 0x43, 0x46, 0x13, 0xfb, 0xf3, 0xe3, 0x97, 0xed, 0xd2, 0x2f, 0xaf, 0xda, 0xbd, + 0x90, 0x8a, 0xc5, 0xd2, 0x33, 0x7d, 0x16, 0xeb, 0xbc, 0xf5, 0xdf, 0x0e, 0x0f, 0x0e, 0x74, 0xa1, + 0xe4, 0x02, 0xfe, 0xec, 0xf5, 0xf3, 0xdb, 0xc0, 0xb9, 0x52, 0x74, 0xba, 0x47, 0xc8, 0xdd, 0xe6, + 0x93, 0xa7, 0xed, 0xd2, 0xdf, 0x4f, 0xdb, 0xe0, 0xc7, 0xd7, 0xcf, 0x6f, 0x37, 0x74, 0x89, 0xf3, + 0xc4, 0xba, 0xbf, 0x95, 0xe1, 0x86, 0x9d, 0xd1, 0x20, 0x24, 0x43, 0x96, 0xcc, 0x69, 0x88, 0xee, + 0xc2, 0xba, 0xbf, 0xc0, 0x51, 0x44, 0x92, 0x90, 0x64, 0x5c, 0x25, 0x59, 0xb3, 0x8d, 0xdf, 0x7f, + 0xdd, 0xb9, 0xa6, 0xf3, 0xdc, 0x0d, 0x82, 0x8c, 0x70, 0xbe, 0x2f, 0x32, 0x9a, 0x84, 0x4e, 0x51, + 0x8c, 0x3e, 0x83, 0xd5, 0x34, 0x63, 0x29, 0xe3, 0x24, 0x33, 0x2e, 0x74, 0xc0, 0x7b, 0x17, 0xae, + 0x95, 0x68, 0x04, 0xa1, 0x87, 0x85, 0xbf, 0x70, 0x69, 0x32, 0x67, 0xc6, 0xc5, 0x0e, 0xe8, 0xd5, + 0x07, 0x1f, 0x99, 0x6f, 0xb7, 0xdc, 0xb4, 0xa5, 0x66, 0x9c, 0xcc, 0x99, 0x5d, 0x93, 0x75, 0xc9, + 0xf7, 0x5a, 0xf3, 0x56, 0x28, 0x7a, 0x04, 0xb7, 0xf8, 0xd2, 0x8b, 0x29, 0xe7, 0xb2, 0xc0, 0x34, + 0x11, 0x24, 0x3b, 0xc4, 0x91, 0x51, 0x56, 0xf1, 0xb6, 0xcd, 0xbc, 0x57, 0xe6, 0xaa, 0x57, 0xe6, + 0x9e, 0xee, 0x95, 0x6d, 0xca, 0x68, 0xff, 0xbc, 0x6c, 0x7f, 0x7c, 0xce, 0xea, 0x3b, 0x2c, 0xa6, + 0x82, 0xc4, 0xa9, 0x38, 0x7a, 0xf2, 0xaa, 0x0d, 0x72, 0x4b, 0x74, 0xa6, 0x1b, 0x6b, 0x99, 0xf4, + 0x9e, 0xd3, 0x04, 0x47, 0xf4, 0x51, 0xde, 0xde, 0x94, 0x64, 0x94, 0x05, 0xc6, 0x07, 0xff, 0xd9, + 0xfb, 0x9c, 0xd5, 0xe7, 0x7a, 0x17, 0x75, 0x53, 0x25, 0x43, 0x5f, 0xc0, 0x1b, 0x85, 0xcc, 0xb9, + 0xc0, 0x99, 0x70, 0x17, 0x84, 0x86, 0x0b, 0x61, 0x54, 0x3a, 0xa0, 0x57, 0x76, 0xae, 0x9f, 0xd1, + 0xfb, 0x92, 0xbd, 0xaf, 0x48, 0x74, 0x0b, 0x5e, 0x66, 0x19, 0xf6, 0x23, 0xe2, 0x92, 0x04, 0x7b, + 0x11, 0x09, 0x8c, 0x4b, 0x1d, 0xd0, 0xab, 0x3a, 0x8d, 0x1c, 0x1d, 0xe5, 0x20, 0x6a, 0xc2, 0x6a, + 0x4c, 0x04, 0x0e, 0xb0, 0xc0, 0x46, 0xb5, 0x03, 0x7a, 0x1b, 0xce, 0x7a, 0xde, 0x3d, 0x06, 0xb0, + 0xb6, 0x6e, 0x0b, 0xba, 0x09, 0x6b, 0xca, 0x49, 0x08, 0x92, 0x19, 0x40, 0xb6, 0xdf, 0x39, 0x03, + 0xd0, 0x1e, 0x84, 0xfe, 0x02, 0xd3, 0xc4, 0x95, 0xe7, 0x55, 0x9d, 0x8e, 0xcb, 0x83, 0x5b, 0xef, + 0xe9, 0xb2, 0x39, 0x94, 0xea, 0xd9, 0x51, 0x4a, 0x9c, 0x9a, 0xbf, 0x1a, 0x76, 0x1f, 0xc2, 0xda, + 0x1a, 0x47, 0x4d, 0xf8, 0xe1, 0xf0, 0xfe, 0xee, 0x78, 0xe2, 0xce, 0xbe, 0x9d, 0x8e, 0xdc, 0x6f, + 0x26, 0xfb, 0xd3, 0xd1, 0x70, 0x7c, 0x6f, 0x3c, 0xda, 0xdb, 0x2c, 0xa1, 0xeb, 0xf0, 0x6a, 0x81, + 0x1b, 0x4f, 0xc6, 0xb3, 0xf1, 0xee, 0x26, 0x40, 0x37, 0xe0, 0x56, 0x01, 0x1e, 0x8e, 0xbe, 0x1a, + 0xed, 0x4b, 0xe2, 0x42, 0x77, 0x17, 0xd6, 0x66, 0xec, 0x80, 0x24, 0x53, 0x4c, 0x33, 0xb4, 0x0d, + 0xab, 0x51, 0xdf, 0x0d, 0x48, 0xc2, 0x62, 0xbd, 0x91, 0x4b, 0x51, 0x7f, 0x4f, 0x4e, 0x15, 0x35, + 0xd0, 0xd4, 0x05, 0x4d, 0x0d, 0x14, 0x25, 0xab, 0x51, 0x79, 0xb0, 0x14, 0xe9, 0x52, 0xa0, 0x36, + 0xac, 0x33, 0x35, 0x72, 0x33, 0xc6, 0x84, 0x8a, 0xb1, 0xe1, 0xc0, 0x1c, 0x72, 0x18, 0x13, 0xe8, + 0x13, 0x78, 0x25, 0xea, 0xbb, 0x5e, 0xc4, 0xfc, 0x03, 0x37, 0x59, 0xc6, 0x9e, 0xbe, 0x30, 0x65, + 0xa7, 0x11, 0xf5, 0x6d, 0x89, 0x4e, 0x14, 0x88, 0xbe, 0x86, 0x8d, 0xb5, 0x4e, 0x3e, 0x3f, 0xfa, + 0x7a, 0x34, 0xdf, 0x39, 0x52, 0xb3, 0xd5, 0xdb, 0x64, 0x37, 0xe4, 0x99, 0x7a, 0xbc, 0x3e, 0x32, + 0x75, 0x1d, 0x50, 0x0a, 0x94, 0xed, 0xe0, 0x4d, 0xdb, 0xb2, 0xb6, 0x1d, 0x14, 0x6c, 0xbb, 0x3f, + 0x01, 0xb8, 0xb5, 0xee, 0xc4, 0x43, 0x2a, 0x16, 0x7a, 0x5f, 0x6f, 0x5e, 0x55, 0xf0, 0x7f, 0xaf, + 0xea, 0x97, 0xb0, 0x92, 0xd7, 0x42, 0x6d, 0xba, 0x3e, 0x30, 0xde, 0x0d, 0x91, 0x1b, 0x16, 0xd7, + 0xeb, 0x25, 0xf6, 0xe4, 0xf8, 0xaf, 0x56, 0xe9, 0xd9, 0x49, 0x0b, 0x1c, 0x9f, 0xb4, 0xc0, 0x8b, + 0x93, 0x16, 0xf8, 0xf3, 0xa4, 0x05, 0x1e, 0x9f, 0xb6, 0x4a, 0x2f, 0x4e, 0x5b, 0xa5, 0x3f, 0x4e, + 0x5b, 0xa5, 0xef, 0xee, 0x14, 0xde, 0x4b, 0x19, 0x96, 0xe2, 0x9d, 0x08, 0x7b, 0xdc, 0x7a, 0x30, + 0x55, 0xdf, 0x98, 0xef, 0x57, 0x5f, 0x19, 0xf5, 0x72, 0x7a, 0x15, 0x55, 0xc3, 0x4f, 0xff, 0x0d, + 0x00, 0x00, 0xff, 0xff, 0xa0, 0xb1, 0x1a, 0xa1, 0x83, 0x06, 0x00, 0x00, } func (this *Params) Equal(that interface{}) bool { @@ -461,6 +464,9 @@ func (this *BridgeConfig) Equal(that interface{}) bool { if this.SubmissionStartHeight != that1.SubmissionStartHeight { return false } + if this.OracleEnabled != that1.OracleEnabled { + return false + } if !bytes.Equal(this.Metadata, that1.Metadata) { return false } @@ -642,7 +648,17 @@ func (m *BridgeConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.Metadata) i = encodeVarintTypes(dAtA, i, uint64(len(m.Metadata))) i-- - dAtA[i] = 0x3a + dAtA[i] = 0x42 + } + if m.OracleEnabled { + i-- + if m.OracleEnabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x38 } if m.SubmissionStartHeight != 0 { i = encodeVarintTypes(dAtA, i, uint64(m.SubmissionStartHeight)) @@ -908,6 +924,9 @@ func (m *BridgeConfig) Size() (n int) { if m.SubmissionStartHeight != 0 { n += 1 + sovTypes(uint64(m.SubmissionStartHeight)) } + if m.OracleEnabled { + n += 2 + } l = len(m.Metadata) if l > 0 { n += 1 + l + sovTypes(uint64(l)) @@ -1284,6 +1303,26 @@ func (m *BridgeConfig) Unmarshal(dAtA []byte) error { } } case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field OracleEnabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.OracleEnabled = bool(v != 0) + case 8: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) }